"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@klass/core"),v=require("preact");var b=0;function y(s,t,n,o,a,i){var l,e,r={};for(e in t)e=="ref"?l=t[e]:r[e]=t[e];var c={type:s,props:r,key:n,ref:l,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:--b,__i:-1,__u:0,__source:a,__self:i};if(typeof s=="function"&&(l=s.defaultProps))for(e in l)r[e]===void 0&&(r[e]=l[e]);return v.options.vnode&&v.options.vnode(c),c}const g=s=>s!=="class"&&s!=="className",C=s=>Object.keys(s).filter(g),N=(s,t)=>{let n={},o={},a;for(a in s)(t.includes(a)?o:n)[a]=s[a];return[n,o]};function F(s,t,n={}){const{dp:{class:o,className:a,...i}={},it:l}=n,e=m.klass(t,{it:l}),r=C(t.variants),c=({as:u=s,class:d=o,className:_=a,...f})=>{const[k,p]=N(f,r);return y(u,{...i,...k,class:e(p,d??_)})};return c.klass=e,c}function j(s,t,n={}){const{dp:{class:o,className:a,...i}={},as:l,it:e}=n,r=m.reklass(t,{as:l,it:e}),c=C(t.variants),u=({as:d=s,class:_=o,className:f=a,...k})=>{const[p,P]=N(k,c);return y(d,{...i,...p,class:r(P,_??f)})};return u.reklass=r,u}exports.klassed=F;exports.reklassed=j;