@react-hive/honey-style 3.1.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/css/compile-css.d.ts +2 -0
  2. package/dist/css/create-at-rule-transformer.d.ts +2 -0
  3. package/dist/css/create-media-at-rule-transformer.d.ts +6 -0
  4. package/dist/css/create-spacing-transformer.d.ts +7 -0
  5. package/dist/css/css.d.ts +0 -14
  6. package/dist/css/flatten-css-rules.d.ts +2 -0
  7. package/dist/css/index.d.ts +1 -2
  8. package/dist/css/process-css.d.ts +7 -0
  9. package/dist/css/resolve-spacing-value.d.ts +1 -0
  10. package/dist/css/transform-absolute-fill-at-rule.d.ts +1 -0
  11. package/dist/css/transform-center-at-rule.d.ts +10 -0
  12. package/dist/css/transform-ellipsis-at-rule.d.ts +1 -0
  13. package/dist/css/transform-inline-at-rule.d.ts +1 -0
  14. package/dist/css/transform-stack-at-rule.d.ts +1 -0
  15. package/dist/css/unwrap-params.d.ts +1 -0
  16. package/dist/index.cjs +7 -7
  17. package/dist/index.cjs.map +1 -1
  18. package/dist/index.dev.cjs +729 -1700
  19. package/dist/index.dev.cjs.map +1 -1
  20. package/dist/index.mjs +7 -7
  21. package/dist/index.mjs.map +1 -1
  22. package/package.json +19 -20
  23. package/dist/css/middlewares/absolute-fill-at-rule.d.ts +0 -1
  24. package/dist/css/middlewares/center-at-rule.d.ts +0 -1
  25. package/dist/css/middlewares/ellipsis-at-rule.d.ts +0 -1
  26. package/dist/css/middlewares/factory.d.ts +0 -70
  27. package/dist/css/middlewares/index.d.ts +0 -8
  28. package/dist/css/middlewares/inline-at-rule.d.ts +0 -6
  29. package/dist/css/middlewares/media-at-rule.d.ts +0 -6
  30. package/dist/css/middlewares/spacing.d.ts +0 -7
  31. package/dist/css/middlewares/stack-at-rule.d.ts +0 -6
  32. package/dist/css/middlewares/suggest.d.ts +0 -2
  33. package/dist/css/middlewares/types.d.ts +0 -1
  34. package/dist/css/processor.d.ts +0 -6
@@ -0,0 +1,2 @@
1
+ import type { HoneyCssAstStylesheetNode } from '@react-hive/honey-css';
2
+ export declare const compileCss: (ast: HoneyCssAstStylesheetNode, scope?: string) => string;
@@ -0,0 +1,2 @@
1
+ import type { HoneyCssAstAtRuleNode, HoneyCssAstNode, HoneyCssAstStylesheetNode } from '@react-hive/honey-css';
2
+ export declare const createAtRuleTransformer: (name: string, handler: (node: HoneyCssAstAtRuleNode) => HoneyCssAstNode[]) => (ast: HoneyCssAstStylesheetNode) => HoneyCssAstStylesheetNode;
@@ -0,0 +1,6 @@
1
+ import type { HoneyTheme } from '../types';
2
+ interface CreateMediaAtRuleTransformerOptions {
3
+ theme?: HoneyTheme;
4
+ }
5
+ export declare const createMediaAtRuleTransformer: ({ theme }: CreateMediaAtRuleTransformerOptions) => (ast: import("@react-hive/honey-css").HoneyCssAstStylesheetNode) => import("@react-hive/honey-css").HoneyCssAstStylesheetNode;
6
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { HoneyCssAstStylesheetNode } from '@react-hive/honey-css';
2
+ import type { HoneyTheme } from '../types';
3
+ interface CreateSpacingTransformerOptions {
4
+ theme?: HoneyTheme;
5
+ }
6
+ export declare const createSpacingTransformer: ({ theme }: CreateSpacingTransformerOptions) => (ast: HoneyCssAstStylesheetNode) => HoneyCssAstStylesheetNode;
7
+ export {};
package/dist/css/css.d.ts CHANGED
@@ -1,17 +1,3 @@
1
- import type { Middleware, Element } from 'stylis';
2
1
  import type { HoneyStyledInterpolation, HoneyStyledContext } from '../types';
3
2
  export declare const css: <Props extends object>(strings: TemplateStringsArray, ...interpolations: HoneyStyledInterpolation<Props>[]) => (context: HoneyStyledContext<Props>) => string;
4
3
  export declare const createCssRule: (selector: string, css: string) => string;
5
- export declare const getChildrenCss: (element: Element, callback: Middleware) => string;
6
- interface StylisChildrenGroups {
7
- pseudoRules: Element[];
8
- otherRules: Element[];
9
- }
10
- /**
11
- * Splits Stylis children into:
12
- *
13
- * - pseudoRules: rules that start with a pseudo selector (e.g. ":hover", ":not(...)")
14
- * - otherRules: everything else
15
- */
16
- export declare const splitStylisChildren: (children: string | Element[]) => StylisChildrenGroups;
17
- export {};
@@ -0,0 +1,2 @@
1
+ import type { HoneyCssAstStylesheetNode } from '@react-hive/honey-css';
2
+ export declare const flattenCssRules: (ast: HoneyCssAstStylesheetNode) => HoneyCssAstStylesheetNode;
@@ -1,6 +1,5 @@
1
1
  export * from './types';
2
2
  export * from './constants';
3
- export * from './middlewares';
4
- export * from './processor';
3
+ export * from './process-css';
5
4
  export * from './css';
6
5
  export * from './at-rules';
@@ -0,0 +1,7 @@
1
+ import type { HoneyTheme } from '../types';
2
+ interface ProcessCssOptions {
3
+ theme?: HoneyTheme;
4
+ selector?: string;
5
+ }
6
+ export declare const processCss: (rawCss: string, { theme, selector }?: ProcessCssOptions) => string;
7
+ export {};
@@ -0,0 +1 @@
1
+ export declare const resolveSpacingValue: (value: string, spacingFactor: number) => string;
@@ -0,0 +1 @@
1
+ export declare const transformAbsoluteFillAtRule: (ast: import("@react-hive/honey-css").HoneyCssAstStylesheetNode) => import("@react-hive/honey-css").HoneyCssAstStylesheetNode;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Transforms:
3
+ *
4
+ * @honey-center();
5
+ * @honey-center(horizontal);
6
+ * @honey-center(vertical);
7
+ * @honey-center(block);
8
+ * @honey-center(inline);
9
+ */
10
+ export declare const transformCenterAtRule: (ast: import("@react-hive/honey-css").HoneyCssAstStylesheetNode) => import("@react-hive/honey-css").HoneyCssAstStylesheetNode;
@@ -0,0 +1 @@
1
+ export declare const transformEllipsisAtRule: (ast: import("@react-hive/honey-css").HoneyCssAstStylesheetNode) => import("@react-hive/honey-css").HoneyCssAstStylesheetNode;
@@ -0,0 +1 @@
1
+ export declare const transformInlineAtRule: (ast: import("@react-hive/honey-css").HoneyCssAstStylesheetNode) => import("@react-hive/honey-css").HoneyCssAstStylesheetNode;
@@ -0,0 +1 @@
1
+ export declare const transformStackAtRule: (ast: import("@react-hive/honey-css").HoneyCssAstStylesheetNode) => import("@react-hive/honey-css").HoneyCssAstStylesheetNode;
@@ -0,0 +1 @@
1
+ export declare const unwrapParams: (params?: string) => string;
package/dist/index.cjs CHANGED
@@ -1,9 +1,9 @@
1
1
  /*! For license information please see index.cjs.LICENSE.txt */
2
- (()=>{"use strict";var e={698(e,t){var n=Symbol.for("react.transitional.element");Symbol.for("react.fragment"),t.jsx=function(e,t,o){var r=null;if(void 0!==o&&(r=""+o),void 0!==t.key&&(r=""+t.key),"key"in t)for(var a in o={},t)"key"!==a&&(o[a]=t[a]);else o=t;return t=o.ref,{$$typeof:n,type:e,key:r,ref:void 0!==t?t:null,props:o}}},848(e,t,n){e.exports=n(698)}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var a=t[o]={exports:{}};return e[o](a,a.exports,n),a.exports}n.d=(e,t)=>{for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};n.r(o),n.d(o,{CSS_COLOR_PROPERTIES:()=>S,CSS_SPACING_PROPERTIES:()=>$,HONEY_BREAKPOINTS:()=>l,HONEY_GLOBAL_STYLE_ATTR:()=>i,HONEY_STYLED_COMPONENT_ID_PROP:()=>a,HONEY_STYLE_ATTR:()=>s,HoneyStyleContext:()=>f,HoneyStyleProvider:()=>We,VALID_DOM_ELEMENT_ATTRS:()=>h,__DEV__:()=>r,checkIsThemeColorValue:()=>Le,combineClassNames:()=>Ae,convertHexToHexWithAlpha:()=>Ne,createAbsoluteFillAtRuleMiddleware:()=>ve,createCenterAtRuleMiddleware:()=>ge,createCssRule:()=>de,createEllipsisAtRuleMiddleware:()=>be,createGlobalStyle:()=>ze,createInlineAtRuleMiddleware:()=>ye,createMediaAtRuleMiddleware:()=>Ce,createSpacingMiddleware:()=>x,createStackAtRuleMiddleware:()=>fe,css:()=>pe,filterNonHtmlAttrs:()=>_e,generateId:()=>Me,getChildrenCss:()=>he,isStyledComponent:()=>Oe,mediaQuery:()=>$e,processCss:()=>Te,pxToRem:()=>je,resolveClassName:()=>Pe,resolveColor:()=>Ie,resolveDimension:()=>Be,resolveFont:()=>He,resolveSpacing:()=>De,splitStylisChildren:()=>me,styled:()=>qe,suggestAtRuleMiddleware:()=>Re,useHoneyStyle:()=>Fe});const r=!1;r&&console.info("[@react-hive/honey-style]: You are running in development mode. This build is not optimized for production and may include extra checks or logs.");const a="$$ComponentId",i="data-honey-global-style",s="data-honey-style",l=["xs","sm","md","lg","xl"],c=new Set(["accept","accessKey","autoCapitalize","autoComplete","autoFocus","capture","class","className","contentEditable","contextMenu","dir","draggable","hidden","id","inert","inputMode","is","lang","nonce","part","slot","spellCheck","style","tabIndex","title","translate","unselectable","checked","disabled","form","formAction","formEncType","formMethod","formNoValidate","formTarget","list","max","maxLength","min","minLength","multiple","name","pattern","placeholder","readOnly","required","size","step","type","value","alt","controls","crossOrigin","height","isMap","loop","media","muted","poster","preload","role","src","srcSet","useMap","width","download","href","hrefLang","referrerPolicy","rel","target","dangerouslySetInnerHTML","key","ref","children","char","charOff","exportparts","popover","popoverTarget","popoverTargetAction","virtualkeyboardpolicy","writingsuggestions"]),u=new Set(["colSpan","rowSpan","headers","abbr","scope","align","valign"]),p=new Set(["viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","strokeDasharray","strokeDashoffset","strokeOpacity","fillOpacity","opacity","pointerEvents","focusable","x","y","x1","x2","y1","y2","cx","cy","r","rx","ry","d","points","height","transform","xmlns","preserveAspectRatio","mask","clipPath","pathLength","markerStart","markerMid","markerEnd","refX","refY","dominantBaseline","textAnchor"]),d=new Set(["onCopy","onCut","onPaste","onCompositionEnd","onCompositionStart","onCompositionUpdate","onFocus","onBlur","onChange","onInput","onInvalid","onReset","onSubmit","onKeyDown","onKeyPress","onKeyUp","onClick","onContextMenu","onDoubleClick","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onPointerDown","onPointerMove","onPointerUp","onPointerCancel","onPointerEnter","onPointerLeave","onPointerOver","onPointerOut","onGotPointerCapture","onLostPointerCapture","onSelect","onTouchCancel","onTouchEnd","onTouchMove","onTouchStart","onScroll","onWheel","onAbort","onCanPlay","onCanPlayThrough","onDurationChange","onEmptied","onEncrypted","onEnded","onLoadedData","onLoadedMetadata","onLoadStart","onPause","onPlay","onPlaying","onProgress","onRateChange","onSeeked","onSeeking","onStalled","onSuspend","onTimeUpdate","onVolumeChange","onWaiting","onLoad","onError","onTransitionEnd","onTransitionStart","onTransitionRun","onTransitionCancel","onAnimationStart","onAnimationEnd","onAnimationIteration","onAnimationCancel"]),h=new Set([...c,...u,...p,...d]),m=require("react"),f=(0,m.createContext)(void 0);var y=n(848);const g=e=>Array.isArray(e),v=e=>"string"==typeof e,b=(e,...t)=>"function"==typeof e?e(...t):e,$=["margin","marginTop","marginRight","marginBottom","marginLeft","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingBlock","paddingBlockStart","paddingBlockEnd","top","right","bottom","left","inset","gap","rowGap","columnGap"],S=["color","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","outlineColor","textDecorationColor","fill","stroke"],k=$.map(e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),x=({theme:e})=>t=>{if("decl"===t.type&&v(t.props)&&k.includes(t.props)&&v(t.children)){if(/[()]/.test(t.children))return;const n=[],o=e?.spacings.base??0,r=t.children.trim().split(/\s+/);for(const e of r)n.push(/^-?\d*\.?\d+$/.test(e)?parseFloat(e)*o+"px":e);const a=n.join(" ");t.return=`${t.props}:${a};`}};var w="comm",C="rule",E="decl",R=Math.abs,T=String.fromCharCode;function M(e){return e.trim()}function A(e,t,n){return e.replace(t,n)}function P(e,t,n){return e.indexOf(t,n)}function O(e,t){return 0|e.charCodeAt(t)}function _(e,t,n){return e.slice(t,n)}function j(e){return e.length}function L(e){return e.length}function D(e,t){return t.push(e),e}function H(e,t){for(var n="",o=0;o<e.length;o++)n+=t(e[o],o,e,t)||"";return n}function N(e,t,n,o){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case"@namespace":case E:return e.return=e.return||e.value;case w:return"";case"@keyframes":return e.return=e.value+"{"+H(e.children,o)+"}";case C:if(!j(e.value=e.props.join(",")))return""}return j(n=H(e.children,o))?e.return=e.value+"{"+n+"}":""}Object.assign;var I=1,B=1,W=0,F=0,z=0,Y="";function U(e,t,n,o,r,a,i,s){return{value:e,root:t,parent:n,type:o,props:r,children:a,line:I,column:B,length:i,return:"",siblings:s}}function G(){return z=F>0?O(Y,--F):0,B--,10===z&&(B=1,I--),z}function K(){return z=F<W?O(Y,F++):0,B++,10===z&&(B=1,I++),z}function V(){return O(Y,F)}function q(){return F}function Z(e,t){return _(Y,e,t)}function Q(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function X(e){return M(Z(F-1,te(91===e?e+2:40===e?e+1:e)))}function J(e){for(;(z=V())&&z<33;)K();return Q(e)>2||Q(z)>3?"":" "}function ee(e,t){for(;--t&&K()&&!(z<48||z>102||z>57&&z<65||z>70&&z<97););return Z(e,q()+(t<6&&32==V()&&32==K()))}function te(e){for(;K();)switch(z){case e:return F;case 34:case 39:34!==e&&39!==e&&te(z);break;case 40:41===e&&te(e);break;case 92:K()}return F}function ne(e,t){for(;K()&&e+z!==57&&(e+z!==84||47!==V()););return"/*"+Z(t,F-1)+"*"+T(47===e?e:K())}function oe(e){for(;!Q(V());)K();return Z(e,F)}function re(e){return function(e){return Y="",e}(ae("",null,null,null,[""],e=function(e){return I=B=1,W=j(Y=e),F=0,[]}(e),0,[0],e))}function ae(e,t,n,o,r,a,i,s,l){for(var c=0,u=0,p=i,d=0,h=0,m=0,f=1,y=1,g=1,v=0,b="",$=r,S=a,k=o,x=b;y;)switch(m=v,v=K()){case 40:if(108!=m&&58==O(x,p-1)){-1!=P(x+=A(X(v),"&","&\f"),"&\f",R(c?s[c-1]:0))&&(g=-1);break}case 34:case 39:case 91:x+=X(v);break;case 9:case 10:case 13:case 32:x+=J(m);break;case 92:x+=ee(q()-1,7);continue;case 47:switch(V()){case 42:case 47:D(se(ne(K(),q()),t,n,l),l),5!=Q(m||1)&&5!=Q(V()||1)||!j(x)||" "===_(x,-1,void 0)||(x+=" ");break;default:x+="/"}break;case 123*f:s[c++]=j(x)*g;case 125*f:case 59:case 0:switch(v){case 0:case 125:y=0;case 59+u:-1==g&&(x=A(x,/\f/g,"")),h>0&&(j(x)-p||0===f&&47===m)&&D(h>32?le(x+";",o,n,p-1,l):le(A(x," ","")+";",o,n,p-2,l),l);break;case 59:x+=";";default:if(D(k=ie(x,t,n,c,u,r,s,b,$=[],S=[],p,a),a),123===v)if(0===u)ae(x,t,k,k,$,a,p,s,S);else{switch(d){case 99:if(110===O(x,3))break;case 108:if(97===O(x,2))break;default:u=0;case 100:case 109:case 115:}u?ae(e,k,k,o&&D(ie(e,k,k,0,0,r,s,b,r,$=[],p,S),S),r,S,p,s,o?$:S):ae(x,k,k,k,[""],S,0,s,S)}}c=u=h=0,f=g=1,b=x="",p=i;break;case 58:p=1+j(x),h=m;default:if(f<1)if(123==v)--f;else if(125==v&&0==f++&&125==G())continue;switch(x+=T(v),v*f){case 38:g=u>0?1:(x+="\f",-1);break;case 44:s[c++]=(j(x)-1)*g,g=1;break;case 64:45===V()&&(x+=X(K())),d=V(),u=p=j(b=x+=oe(q())),v++;break;case 45:45===m&&2==j(x)&&(f=0)}}return a}function ie(e,t,n,o,r,a,i,s,l,c,u,p){for(var d=r-1,h=0===r?a:[""],m=L(h),f=0,y=0,g=0;f<o;++f)for(var v=0,b=_(e,d+1,d=R(y=i[f])),$=e;v<m;++v)($=M(y>0?h[v]+" "+b:A(b,/&\f/g,h[v])))&&(l[g++]=$);return U(e,t,n,0===r?C:s,l,c,u,p)}function se(e,t,n,o){return U(e,t,n,w,T(z),_(e,2,-2),0,o)}function le(e,t,n,o,r){return U(e,t,n,E,_(e,0,o),_(e,o+1,-1),o,r)}const ce=({name:e,transform:t})=>(n,o,r,a)=>{const{parent:i}=n;if(!i||!i.value||"rule"!==i.type)return;if(n.type!==`@honey-${e}`)return;const s=n.value.trim().match(new RegExp(`^${n.type}\\s*\\(\\s*([^)]+?)\\s*\\)\\s*;?$`,"i"));n.type="decl";const l=s?s[1].split(" ").filter(Boolean):[],c=t(l,n,a);c?n.return=H(re(c),a):n.value=""},ue=(e,t)=>{return!1===e||(""===(n=e)||(e=>null==e)(n))?"":(e=>"function"==typeof e)(e)?Oe(e)?`.${e[a]}`:ue(e(t),t):g(e)?e.map(e=>ue(e,t)).join("\n"):(e=>"object"==typeof e)(e)?Object.entries(e).filter(([,e])=>void 0!==e&&!1!==e).map(([e,t])=>`${(e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase())(e)}: ${t};`).join("\n"):e.toString?.()??"";var n},pe=(e,...t)=>n=>e.reduce((e,o,r)=>e+o+ue(t[r],n),""),de=(e,t)=>`${e}{${t}}`,he=(e,t)=>g(e.children)?H(e.children,t):e.children,me=e=>g(e)&&0!==e.length?e.reduce((e,t)=>(t.value.startsWith("&")?e.pseudoRules.push(t):e.otherRules.push(t),e),{pseudoRules:[],otherRules:[]}):{pseudoRules:[],otherRules:[]},fe=({theme:e})=>ce({name:"stack",transform:(t,n,o)=>{const{parent:r}=n;if(!r)return null;const a=["display:flex;","flex-direction:column;"];if(t.length){const n=e?.spacings.base??0,o=/^-?\d*\.?\d+$/.test(t[0])?parseFloat(t[0])*n+"px":t;a.push(`gap:${o};`)}const i=he(n,o);return de(r.value,`${a.join("")}${i}`)}}),ye=({theme:e}={})=>ce({name:"inline",transform:(t,n,o)=>{const{parent:r}=n;if(!r)return null;const a=["display:flex;","align-items:center;"];if(t.length){const n=e?.spacings.base??0,o=/^-?\d*\.?\d+$/.test(t[0])?parseFloat(t[0])*n+"px":t;a.push(`gap:${o};`)}const i=he(n,o);return de(r.value,`${a.join("")}${i}`)}}),ge=()=>ce({name:"center",transform:(e,t,n)=>{const{parent:o}=t;if(!o)return null;const r=[];switch(e[0]){case"horizontal":case"x":r.push("display:flex;","justify-content:center;");break;case"vertical":case"y":r.push("display:flex;","align-items:center;");break;case"block":r.push("display:block;","text-align:center;");break;case"inline":r.push("display:inline-flex;","align-items:center;","justify-content:center;");break;default:r.push("display:flex;","align-items:center;","justify-content:center;")}const a=he(t,n);return de(o.value,`${r.join("")}${a}`)}}),ve=()=>ce({name:"absolute-fill",transform:(e,t,n)=>{const{parent:o}=t;if(!o)return null;const r=he(t,n);return de(o.value,`${["position:absolute;","inset:0;"].join("")}${r}`)}}),be=()=>ce({name:"ellipsis",transform:(e,t,n)=>{const{parent:o}=t;if(!o)return null;const r=he(t,n);return de(o.value,`${["white-space:nowrap;","overflow:hidden;","text-overflow:ellipsis;"].join("")}${r}`)}}),$e=e=>`@media ${e.map(e=>{const t=[e.width&&["width",e.width],e.minWidth&&["min-width",e.minWidth],e.maxWidth&&["max-width",e.maxWidth],e.height&&["height",e.height],e.minHeight&&["min-height",e.minHeight],e.maxHeight&&["max-height",e.maxHeight],e.orientation&&["orientation",e.orientation],e.minResolution&&["min-resolution",e.minResolution],e.maxResolution&&["max-resolution",e.maxResolution],e.resolution&&["resolution",e.resolution],e.update&&["update",e.update]],n=(r=t,r.filter(Boolean)).map(([e,t])=>`(${e}: ${t})`).join(" and "),o=n?` and ${n}`:"";var r;return`${e.operator?`${e.operator} `:""}${e.mediaType??"screen"}${o}`}).join(", ")}`,Se=e=>/^[a-z]+\b(:up|:down)?$/i.test(e),ke=e=>"portrait"===e||"landscape"===e,xe=e=>"all"===e||"print"===e||"screen"===e||"speech"===e,we=e=>{const[t,n]=e.split(":");return{key:t,direction:n??"up"}},Ce=({theme:e})=>ce({name:"media",transform:(t,n,o)=>{const{parent:a}=n;if(!a||!t.length||!e?.breakpoints)return null;const i=me(n.children);if(!i.pseudoRules.length&&!i.otherRules.length)return null;const s=[];let l,c;for(const n of t){if(ke(n)){l=n;continue}if(xe(n)){c=n;continue}if(!Se(n)){r&&console.warn(`[@react-hive/honey-style]: Unknown @honey-media token: "${n}".`);continue}const t=we(n),o=t.key in e.breakpoints?e.breakpoints[t.key]:null;if(!o){r&&console.warn(`[@react-hive/honey-style]: Unknown breakpoint "${t.key}" in @honey-media.`);continue}let a;"up"===t.direction?a={minWidth:`${o}px`}:"down"===t.direction&&(a={maxWidth:`${o}px`}),a&&s.push(a)}if(!s.length)return null;const u=s.map(e=>({...e,orientation:l,mediaType:c})),p=i.pseudoRules.length>0?`${a.value}${H(i.pseudoRules,o)}`:"",d=i.otherRules.length>0?de(a.value,H(i.otherRules,o)):"";return de($e(u),`${p}${d}`)}}),Ee=[{name:"@honey-center",match:e=>e.some(e=>"display"===e.prop&&"flex"===e.value)&&e.some(e=>"align-items"===e.prop&&"center"===e.value)&&e.some(e=>"justify-content"===e.prop&&"center"===e.value)},{name:"@honey-stack",match:e=>e.some(e=>"display"===e.prop&&"flex"===e.value)&&e.some(e=>"flex-direction"===e.prop&&"column"===e.value)},{name:"@honey-inline",match:e=>e.some(e=>"display"===e.prop&&"flex"===e.value)&&e.some(e=>"align-items"===e.prop&&"center"===e.value)}],Re=e=>{if("rule"!==e.type||!e.children)return;const t=g((n=e).children)?n.children.filter(e=>"decl"===e.type&&v(e.props)&&v(e.children)).map(e=>({prop:e.props,value:e.children})):[];var n;for(const n of Ee)if(n.match(t)){console.info(`[@react-hive/honey-style]: The CSS rule "${e.value}" can be simplified using the shorthand at-rule "${n.name}".`);break}},Te=(e,t,{theme:n}={})=>{const o=t?de(t,e):e,r=[];return r.push(Ce({theme:n}),x({theme:n}),fe({theme:n}),ye({theme:n}),ge(),be(),ve(),N),H(re(o),(i=L(a=r),function(e,t,n,o){for(var r="",s=0;s<i;s++)r+=a[s](e,t,n,o)||"";return r}));var a,i},Me=e=>`${e}-${Math.random().toString(36).slice(2,8)}`,Ae=e=>e.filter(Boolean).join(" ").trim(),Pe=e=>`hscn-${(e=>{let t=5381;for(let n=0;n<e.length;n++)t=33*t^e.charCodeAt(n);return(t>>>0).toString(36)})(e)}`,Oe=e=>a in e,_e=e=>Object.entries(e).reduce((e,[t,n])=>((h.has(t)||t.startsWith("data-")||t.startsWith("aria-"))&&(e[t]=n),e),{}),je=(e,t=16)=>e/t+"rem",Le=e=>2===e.split(".").length,De=(e,t="px",n="base")=>({theme:o})=>{if("string"==typeof e)return e;const r=o.spacings[n]??0;if("number"==typeof e){const n=e*r;return t?`${n}${t}`:n}return e.map(e=>{if("string"==typeof e)return e;const n=e*r;return t?`${n}${t}`:n}).join(" ")},He=e=>({theme:t})=>{const n=t.fonts[e];return pe`
3
- font-family: ${n.family};
4
- font-size: ${je(n.size)};
5
- font-weight: ${n.weight};
6
- line-height: ${void 0!==n.lineHeight&&je(n.lineHeight)};
7
- letter-spacing: ${void 0!==n.letterSpacing&&je(n.letterSpacing)};
8
- `},Ne=(e,t)=>{if(t<0||t>1)throw new Error(`[honey-layout]: Alpha "${t}" is not a valid hex format.`);const n=e.match(/^#?([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/);if(!n)throw new Error("[honey-layout]: Invalid hex format.");const o=n[1];return`#${(3===o.length?o[0]+o[0]+o[1]+o[1]+o[2]+o[2]:o)+Math.round(255*t).toString(16).toUpperCase().padStart(2,"0")}`},Ie=(e,t)=>({theme:n})=>{const[o,r]=e.split("."),a=r?n.colors[o][r]:o;return void 0===t?a:Ne(a,t)},Be=e=>({theme:t})=>t.dimensions[e],We=({children:e,theme:t})=>{const n=(0,m.useMemo)(()=>({theme:t,resolveSpacing:(...e)=>De(...e)({theme:t}),resolveColor:(...e)=>Ie(...e)({theme:t}),resolveFont:(...e)=>He(...e)({theme:t}),resolveDimension:(...e)=>Be(...e)({theme:t})}),[t]);return(0,y.jsx)(f,{value:n,children:e})},Fe=()=>{const e=(0,m.useContext)(f);return function(e,t){if(!e)throw new Error(t)}(e,"The `useHoneyStyle()` hook must be used inside <HoneyStyleProvider/> component!"),e},ze=(e,...t)=>{const n=Me("hsg"),o=pe(e,...t);return()=>{const{theme:e}=Fe();return(0,m.useInsertionEffect)(()=>{const t=o({theme:e}),r=Te(t),a=document.createElement("style");return a.id=n,a.innerHTML=r,a.setAttribute(i,"true"),document.head.insertBefore(a,document.head.firstChild),()=>{a.remove()}},[e]),null}},Ye=(window.__honeyStyleRegistry||(window.__honeyStyleRegistry=new Map),window.__honeyStyleRegistry);let Ue=null;const Ge=()=>{const e=(Ue||(Ue=document.querySelector(`style[${s}="true"]`),Ue||(Ue=document.createElement("style"),Ue.setAttribute(s,"true"),document.head.appendChild(Ue))),Ue),t=Array.from(Ye.entries()).sort(([,e],[,t])=>e.priority-t.priority).map(([,e])=>e.css).join("\n");e.textContent=t},Ke=e=>()=>{const t=Ye.get(e);t&&(t.usages--,t.usages<=0&&(Ye.delete(e),Ge()))},Ve=(e,t,n=0)=>{const o=Ye.get(e);return o?(o.usages++,Ke(e)):(Ye.set(e,{css:t,priority:n,usages:1}),Ge(),Ke(e))},qe=(e,t,{omitProps:n}={})=>(o,...i)=>{const s=Me("hsc"),l=pe(o,...i),c=({as:o,className:a,__compositionDepth:i=0,css:c,...u})=>{r&&c&&console.warn('[@react-hive/honey-style]: The "css" prop is deprecated. Please use inheritance or composition instead.');const{theme:p}=Fe(),d=($=u,Object.entries($).reduce((e,[t,n])=>(void 0!==n&&(e[t]=n),e),{})),h={...b(t,{theme:p,as:o,className:a,...d})??{},...a&&{className:a}},f={...h,...d,theme:p},y=l(f),g=Pe(y);var $;(0,m.useInsertionEffect)(()=>{const e=Te(y,`.${g}`,{theme:p});return Ve(g,e,i)},[g]);const S=((e,t)=>e?v(e)?e:pe([""],[e])(t):"")(b(c,f),f),k=S?Pe(S):"";(0,m.useInsertionEffect)(()=>{if(k){const e=Te(S,`.${k}`,{theme:p});return Ve(k,e,1)}},[k]);const x=Ae([s,g,h.className,k]),w={...h,...d,className:x},C=n?Object.entries(w).reduce((e,[t,o])=>n(t)?e:{...e,[t]:o},{}):w,E=o||e;if(v(e)){const e=v(E)?_e(C):C;return(0,m.createElement)(E,e)}return(0,m.createElement)(e,{...C,...o&&{as:o},...Oe(e)&&{__compositionDepth:i-1}})};if(c[a]=s,r){const t=v(e)?e:e.displayName||e.name||"Component";c.displayName=`HoneyStyledComponent(${t})`}return c};module.exports=o})();
2
+ (()=>{"use strict";var e={131(e,t){var o=Symbol.for("react.transitional.element");Symbol.for("react.fragment"),t.jsx=function(e,t,n){var r=null;if(void 0!==n&&(r=""+n),void 0!==t.key&&(r=""+t.key),"key"in t)for(var a in n={},t)"key"!==a&&(n[a]=t[a]);else n=t;return t=n.ref,{$$typeof:o,type:e,key:r,ref:void 0!==t?t:null,props:n}}},615(e,t,o){e.exports=o(131)}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,o),a.exports}o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};o.r(n),o.d(n,{CSS_COLOR_PROPERTIES:()=>k,CSS_SPACING_PROPERTIES:()=>x,HONEY_BREAKPOINTS:()=>l,HONEY_GLOBAL_STYLE_ATTR:()=>i,HONEY_STYLED_COMPONENT_ID_PROP:()=>a,HONEY_STYLE_ATTR:()=>s,HoneyStyleContext:()=>h,HoneyStyleProvider:()=>fe,VALID_DOM_ELEMENT_ATTRS:()=>y,__DEV__:()=>r,checkIsThemeColorValue:()=>ce,combineClassNames:()=>ae,convertHexToHexWithAlpha:()=>ye,createCssRule:()=>D,createGlobalStyle:()=>ge,css:()=>L,filterNonHtmlAttrs:()=>le,generateId:()=>re,isStyledComponent:()=>se,mediaQuery:()=>X,processCss:()=>ne,pxToRem:()=>pe,resolveClassName:()=>ie,resolveColor:()=>me,resolveDimension:()=>he,resolveFont:()=>de,resolveSpacing:()=>ue,styled:()=>Se,useHoneyStyle:()=>be});const r=!1;r&&console.info("[@react-hive/honey-style]: You are running in development mode. This build is not optimized for production and may include extra checks or logs.");const a="$$ComponentId",i="data-honey-global-style",s="data-honey-style",l=["xs","sm","md","lg","xl"],p=new Set(["accept","accessKey","autoCapitalize","autoComplete","autoFocus","capture","class","className","contentEditable","contextMenu","dir","draggable","hidden","id","inert","inputMode","is","lang","nonce","part","slot","spellCheck","style","tabIndex","title","translate","unselectable","checked","disabled","form","formAction","formEncType","formMethod","formNoValidate","formTarget","list","max","maxLength","min","minLength","multiple","name","pattern","placeholder","readOnly","required","size","step","type","value","alt","controls","crossOrigin","height","isMap","loop","media","muted","poster","preload","role","src","srcSet","useMap","width","download","href","hrefLang","referrerPolicy","rel","target","dangerouslySetInnerHTML","key","ref","children","char","charOff","exportparts","popover","popoverTarget","popoverTargetAction","virtualkeyboardpolicy","writingsuggestions"]),c=new Set(["colSpan","rowSpan","headers","abbr","scope","align","valign"]),u=new Set(["viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","strokeDasharray","strokeDashoffset","strokeOpacity","fillOpacity","opacity","pointerEvents","focusable","x","y","x1","x2","y1","y2","cx","cy","r","rx","ry","d","points","height","transform","xmlns","preserveAspectRatio","mask","clipPath","pathLength","markerStart","markerMid","markerEnd","refX","refY","dominantBaseline","textAnchor"]),d=new Set(["onCopy","onCut","onPaste","onCompositionEnd","onCompositionStart","onCompositionUpdate","onFocus","onBlur","onChange","onInput","onInvalid","onReset","onSubmit","onKeyDown","onKeyPress","onKeyUp","onClick","onContextMenu","onDoubleClick","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onPointerDown","onPointerMove","onPointerUp","onPointerCancel","onPointerEnter","onPointerLeave","onPointerOver","onPointerOut","onGotPointerCapture","onLostPointerCapture","onSelect","onTouchCancel","onTouchEnd","onTouchMove","onTouchStart","onScroll","onWheel","onAbort","onCanPlay","onCanPlayThrough","onDurationChange","onEmptied","onEncrypted","onEnded","onLoadedData","onLoadedMetadata","onLoadStart","onPause","onPlay","onPlaying","onProgress","onRateChange","onSeeked","onSeeking","onStalled","onSuspend","onTimeUpdate","onVolumeChange","onWaiting","onLoad","onError","onTransitionEnd","onTransitionStart","onTransitionRun","onTransitionCancel","onAnimationStart","onAnimationEnd","onAnimationIteration","onAnimationCancel"]),y=new Set([...p,...c,...u,...d]),m=require("react"),h=(0,m.createContext)(void 0);var f=o(615);const b=e=>"string"==typeof e,g=(e,...t)=>"function"==typeof e?e(...t):e,v=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),x=["margin","marginTop","marginRight","marginBottom","marginLeft","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingBlock","paddingBlockStart","paddingBlockEnd","top","right","bottom","left","inset","gap","rowGap","columnGap"],k=["color","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","outlineColor","textDecorationColor","fill","stroke"],$=e=>"{"===e||"}"===e||":"===e||";"===e||"@"===e||"("===e||'"'===e||"'"===e||"/"===e;function C(e,t){if(!e)throw new Error(t)}const S=e=>{const t=[],o=()=>t.join("").trim();for(;!e.isEof();){const n=e.peek();if(!n)break;switch(n.type){case"braceOpen":case"braceClose":default:return o();case"colon":t.push(":");break;case"text":case"params":t.push(n.value);break;case"string":t.push(`"${n.value}"`)}e.next()}return o()},w=e=>{const t=e.peek();if(!t)return"";if("colon"===t.type)return S(e);const o=e.mark(),n=S(e);return"braceOpen"===e.peek()?.type?n:(e.reset(o),e.readUntil(["colon","braceOpen","semicolon","braceClose","at"]))},E=(e,t)=>{e.expect("colon");const o=e.readUntil(["semicolon","braceClose"]);return"semicolon"===e.peek()?.type&&e.next(),{type:"declaration",prop:t,value:o}},O=(e,t)=>{let o=0,n=0,r=0,a=null,i=!1;for(let s=0;s<e.length;s++){const l=e.charCodeAt(s);if(i)i=!1;else if(92!==l)if(null===a)if(34!==l&&39!==l)if(40!==l)if(41!==l)if(91!==l)if(93!==l){if(44===l&&0===n&&0===r){const n=e.slice(o,s).trim();n&&t(n),o=s+1}}else r--;else r++;else n--;else n++;else a=l;else l===a&&(a=null);else i=!0}const s=e.slice(o).trim();s&&t(s)},T=(e,t)=>{const o=e.trim();if(!o)return"";const n=t.trim();if(!n)return o;const r=-1!==n.indexOf(","),a=-1!==o.indexOf(","),i=-1!==o.indexOf("&");if(!r&&!a)return i?o.replaceAll("&",n):`${n} ${o}`;const s=[];return O(n,e=>{O(o,t=>{t.includes("&")?s.push(t.replaceAll("&",e)):s.push(`${e} ${t}`)})}),s.join(", ")},P=e=>{switch(e.type){case"declaration":return(e=>{const t=e.value.trim();return t?`${e.prop}:${t};`:""})(e);case"rule":return(e=>{const t=e.body.map(P).join("");return t?`${e.selector}{${t}}`:""})(e);case"atRule":return(e=>{const t=e.params?` ${e.params}`:"";if(null===e.body)return`@${e.name}${t};`;const o=e.body.map(P).join("");return o?`@${e.name}${t}{${o}}`:""})(e);default:return""}},R=(e,t)=>(e.expect("braceOpen"),{type:"rule",selector:t,body:_(e)}),A=(e,{stopAtBraceClose:t})=>{const o=[];for(;!e.isEof();){const n=e.peek();if(!n)break;if(t&&"braceClose"===n.type){e.next();break}if("semicolon"===n.type){e.next();continue}if("at"===n.type){o.push(M(e));continue}const r=w(e);r?"colon"!==e.peek()?.type?"braceOpen"!==e.peek()?.type?e.next():o.push(R(e,r)):o.push(E(e,r)):e.next()}return o},_=e=>A(e,{stopAtBraceClose:!0}),M=e=>{e.expect("at");const t=e.readUntil(["semicolon","braceOpen"]),{name:o,params:n}=(e=>{const t=e.trim();if(!t)return{name:"",params:void 0};let o=0;const n=t.length;for(;o<n;){const e=t[o];if(" "===e||"\t"===e||"\n"===e||"\r"===e||"\f"===e||"("===e)break;o++}const r=t.slice(0,o);for(;o<n;){const e=t[o];if(" "!==e&&"\t"!==e&&"\n"!==e&&"\r"!==e&&"\f"!==e)break;o++}return{name:r,params:t.slice(o)||void 0}})(t);let r=n;if("params"===e.peek()?.type){const t=e.expect("params").value;r=r?`${r}${t}`:t}return"braceOpen"===e.peek()?.type?{type:"atRule",name:o,params:r,body:_(e)}:("semicolon"===e.peek()?.type&&e.next(),{type:"atRule",name:o,params:r,body:null})},j=(e,t)=>{return!1===e||(""===(o=e)||(e=>null==e)(o))?"":(e=>"function"==typeof e)(e)?se(e)?`.${e[a]}`:j(e(t),t):(e=>Array.isArray(e))(e)?e.map(e=>j(e,t)).join("\n"):(e=>"object"==typeof e)(e)?Object.entries(e).filter(([,e])=>void 0!==e&&!1!==e).map(([e,t])=>`${v(e)}: ${t};`).join("\n"):e.toString?.()??"";var o},L=(e,...t)=>o=>e.reduce((e,n,r)=>e+n+j(t[r],o),""),D=(e,t)=>`${e}{${t}}`,H={media:!0,supports:!0,container:!0,layer:!0},N=(e,t)=>{const o=t?T(e.selector,t):e.selector;return B(e.body,o)},B=(e,t)=>{const o=[],n=[],r=()=>{t&&0!==n.length&&(o.push({type:"rule",selector:t,body:n.slice()}),n.length=0)};for(let a=0;a<e.length;a++){const i=e[a];if("declaration"!==i.type)if("rule"!==i.type)if("atRule"!==i.type)r(),o.push(i);else{if(r(),!H[i.name]){o.push(i);continue}o.push({...i,body:i.body&&i.body.length>0?B(i.body,t):i.body})}else r(),o.push(...N(i,t));else n.push(i)}return r(),o},I={media:!0,supports:!0,container:!0,layer:!0},W=(e,t)=>e.map(e=>"rule"===e.type?{...e,selector:T(e.selector,t)}:"atRule"===e.type&&I[e.name]?{...e,body:null===e.body?null:W(e.body,t)}:e),U=(e,t)=>o=>{const n=o=>{const r=[];for(const a of o){if("atRule"===a.type&&a.name===e){const e=n(a.body??[]),o=t({...a,body:e});r.push(...o);continue}"rule"!==a.type?"atRule"!==a.type?r.push(a):r.push({...a,body:null===a.body?null:n(a.body)}):r.push({...a,body:n(a.body)})}return r};return{...o,body:n(o.body)}},z=U("honey-absolute-fill",e=>[{type:"declaration",prop:"position",value:"absolute"},{type:"declaration",prop:"inset",value:"0"},...e.body??[]]),Y=e=>{if(!e)return"";const t=e.trim();return t.startsWith("(")&&t.endsWith(")")?t.slice(1,-1).trim():t},F=U("honey-center",e=>{const t=[];switch(Y(e.params)){case"horizontal":case"x":t.push({type:"declaration",prop:"display",value:"flex"},{type:"declaration",prop:"justify-content",value:"center"});break;case"vertical":case"y":t.push({type:"declaration",prop:"display",value:"flex"},{type:"declaration",prop:"align-items",value:"center"});break;case"block":t.push({type:"declaration",prop:"display",value:"block"},{type:"declaration",prop:"text-align",value:"center"});break;case"inline":t.push({type:"declaration",prop:"display",value:"inline-flex"},{type:"declaration",prop:"align-items",value:"center"},{type:"declaration",prop:"justify-content",value:"center"});break;default:t.push({type:"declaration",prop:"display",value:"flex"},{type:"declaration",prop:"align-items",value:"center"},{type:"declaration",prop:"justify-content",value:"center"})}return[...t,...e.body??[]]}),G=U("honey-stack",e=>{const t=Y(e.params),o=[{type:"declaration",prop:"display",value:"flex"},{type:"declaration",prop:"flex-direction",value:"column"}];return t&&o.push({type:"declaration",prop:"gap",value:t}),[...o,...e.body??[]]}),K=x.map(v),V=({theme:e})=>{const t=e?.spacings?.base??0,o=e=>e.map(e=>{if("rule"===e.type)return{...e,body:o(e.body)};if("atRule"===e.type)return{...e,body:null===e.body?null:o(e.body)};if("declaration"===e.type){if(!K.includes(e.prop))return e;if(/[()]/.test(e.value))return e;const o=e.value.trim().split(/\s+/);return{...e,value:o.map(e=>((e,t)=>{const o=e.trim();return/[a-z%]+$/i.test(o)?o:/^-?\d*\.?\d+$/.test(o)?parseFloat(o)*t+"px":o})(e,t)).join(" ")}}return e});return e=>({...e,body:o(e.body)})},q=U("honey-ellipsis",e=>[{type:"declaration",prop:"white-space",value:"nowrap"},{type:"declaration",prop:"overflow",value:"hidden"},{type:"declaration",prop:"text-overflow",value:"ellipsis"},...e.body??[]]),Q=U("honey-inline",e=>{const t=Y(e.params),o=[{type:"declaration",prop:"display",value:"flex"},{type:"declaration",prop:"align-items",value:"center"}];return t&&o.push({type:"declaration",prop:"gap",value:t}),[...o,...e.body??[]]}),X=e=>`@media ${e.map(e=>{const t=[e.width&&["width",e.width],e.minWidth&&["min-width",e.minWidth],e.maxWidth&&["max-width",e.maxWidth],e.height&&["height",e.height],e.minHeight&&["min-height",e.minHeight],e.maxHeight&&["max-height",e.maxHeight],e.orientation&&["orientation",e.orientation],e.minResolution&&["min-resolution",e.minResolution],e.maxResolution&&["max-resolution",e.maxResolution],e.resolution&&["resolution",e.resolution],e.update&&["update",e.update]],o=(r=t,r.filter(Boolean)).map(([e,t])=>`(${e}: ${t})`).join(" and "),n=o?` and ${o}`:"";var r;return`${e.operator?`${e.operator} `:""}${e.mediaType??"screen"}${n}`}).join(", ")}`,Z=e=>"portrait"===e||"landscape"===e,J=e=>"all"===e||"print"===e||"screen"===e||"speech"===e,ee=e=>/^[a-z]+\b(:up|:down)?$/i.test(e),te=e=>{const[t,o]=e.split(":");return{key:t,direction:o??"up"}},oe=({theme:e})=>U("honey-media",t=>{if(!e?.breakpoints)return[];const o=Y(t.params);if(!o)return[];const n=o.split(/\s+/);let a,i;const s=[];for(const t of n){if(Z(t)){a=t;continue}if(J(t)){i=t;continue}if(!ee(t)){r&&console.warn(`[@react-hive/honey-style]: Unknown @honey-media token: "${t}".`);continue}const o=te(t),n=o.key in e.breakpoints?e.breakpoints[o.key]:null;if(!n){r&&console.warn(`[@react-hive/honey-style]: Unknown breakpoint "${o.key}" in @honey-media.`);continue}let l;"up"===o.direction?l={minWidth:`${n}px`}:"down"===o.direction&&(l={maxWidth:`${n}px`}),l&&s.push(l)}if(!s.length)return[];const l=s.map(e=>({...e,orientation:a,mediaType:i}));return[{type:"atRule",name:"media",params:X(l).replace(/^@media\s*/,""),body:t.body}]}),ne=(e,{theme:t,selector:o}={})=>{const n=(e=>{const t=(e=>{const t=[];let o=0;const n=()=>o>=e.length,r=()=>n()?void 0:e[o],a=()=>o+1>=e.length?void 0:e[o+1],i=()=>{for(;;){const e=r();if(!e||!/\s/.test(e))return;o++}},s=()=>{if("/"!==r()||"/"!==a())return!1;for(o+=2;!n();){if("\n"===r()){o++;break}o++}return!0},l=()=>{if("/"!==r()||"*"!==a())return!1;for(o+=2;!n();){if("*"===r()&&"/"===a())return o+=2,!0;o++}return!0},p=()=>{const e=r();if(!e)return"";o++;let t="";for(;!n();){const n=r();if(!n)break;if("\\"===n){t+=n,o++;const e=r();e&&(t+=e,o++);continue}if(n===e){o++;break}t+=n,o++}return t},c=()=>{let e=0,t="";for(;!n();){const n=r();if(!n)break;if("("===n?e++:")"===n&&e--,t+=n,o++,0===e)break}return t},u=()=>{let e="";for(;!n();){const t=r();if(!t)break;if($(t))break;e+=t,o++}return e.trim()};for(;!n()&&(i(),!n());){if(s()||l())continue;const e=r();if(!e)break;if("{"===e){t.push({type:"braceOpen"}),o++;continue}if("}"===e){t.push({type:"braceClose"}),o++;continue}if(":"===e){t.push({type:"colon"}),o++;continue}if(";"===e){t.push({type:"semicolon"}),o++;continue}if("@"===e){t.push({type:"at"}),o++;continue}if("("===e){t.push({type:"params",value:c()});continue}if('"'===e||"'"===e){t.push({type:"string",value:p()});continue}const n=u();n?t.push({type:"text",value:n}):o++}return t})(e),o=(e=>{let t=0;const o=()=>t>=e.length,n=()=>o()?void 0:e[t],r=()=>o()?void 0:e[t++];return{isEof:o,peek:n,next:r,mark:()=>t,reset:e=>{t=e},expect:e=>{const t=r();return C(t,`[@react-hive/honey-css]: Expected "${e}" but reached end of input.`),C(t.type===e,`[@react-hive/honey-css]: Expected "${e}" but got "${t.type}".`),t},readUntil:e=>{let t,a="";for(;!o();){const o=n();if(!o||e.includes(o.type))break;"text"===o.type?("text"===t&&a&&(a+=" "),a+=o.value):"string"===o.type?a+=`"${o.value}"`:"params"===o.type&&(a+=o.value),t=o.type,r()}return a.trim()},skipUntil:e=>{for(;!o();){const t=n();if(!t||e.includes(t.type))break;r()}}}})(t);return{type:"stylesheet",body:A(o,{stopAtBraceClose:!1})}})(o?D(o,e):e);return((e,t)=>{const o=(e=>({...e,body:B(e.body)}))(t?{...e,body:W(e.body,t)}:e);return o.body.map(P).filter(Boolean).join("")})([G,Q,F,z,q,oe({theme:t}),V({theme:t})].reduce((e,t)=>t(e),n))},re=e=>`${e}-${Math.floor(1e3*performance.now()).toString(36)}${Math.random().toString(36).slice(2,10)}`,ae=e=>e.filter(Boolean).join(" ").trim(),ie=e=>`hscn-${(e=>{let t=5381;for(let o=0;o<e.length;o++)t=33*t^e.charCodeAt(o);return(t>>>0).toString(36)})(e)}`,se=e=>a in e,le=e=>Object.entries(e).reduce((e,[t,o])=>((y.has(t)||t.startsWith("data-")||t.startsWith("aria-"))&&(e[t]=o),e),{}),pe=(e,t=16)=>e/t+"rem",ce=e=>2===e.split(".").length,ue=(e,t="px",o="base")=>({theme:n})=>{if("string"==typeof e)return e;const r=n.spacings[o]??0;if("number"==typeof e){const o=e*r;return t?`${o}${t}`:o}return e.map(e=>{if("string"==typeof e)return e;const o=e*r;return t?`${o}${t}`:o}).join(" ")},de=e=>({theme:t})=>{const o=t.fonts[e];return L`
3
+ font-family: ${o.family};
4
+ font-size: ${pe(o.size)};
5
+ font-weight: ${o.weight};
6
+ line-height: ${void 0!==o.lineHeight&&pe(o.lineHeight)};
7
+ letter-spacing: ${void 0!==o.letterSpacing&&pe(o.letterSpacing)};
8
+ `},ye=(e,t)=>{if(t<0||t>1)throw new Error(`[honey-layout]: Alpha "${t}" is not a valid hex format.`);const o=e.match(/^#?([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/);if(!o)throw new Error("[honey-layout]: Invalid hex format.");const n=o[1];return`#${(3===n.length?n[0]+n[0]+n[1]+n[1]+n[2]+n[2]:n)+Math.round(255*t).toString(16).toUpperCase().padStart(2,"0")}`},me=(e,t)=>({theme:o})=>{const[n,r]=e.split("."),a=r?o.colors[n][r]:n;return void 0===t?a:ye(a,t)},he=e=>({theme:t})=>t.dimensions[e],fe=({children:e,theme:t})=>{const o=(0,m.useMemo)(()=>({theme:t,resolveSpacing:(...e)=>ue(...e)({theme:t}),resolveColor:(...e)=>me(...e)({theme:t}),resolveFont:(...e)=>de(...e)({theme:t}),resolveDimension:(...e)=>he(...e)({theme:t})}),[t]);return(0,f.jsx)(h,{value:o,children:e})},be=()=>{const e=(0,m.useContext)(h);return function(e,t){if(!e)throw new Error(t)}(e,"The `useHoneyStyle()` hook must be used inside <HoneyStyleProvider/> component!"),e},ge=(e,...t)=>{const o=re("hsg"),n=L(e,...t);return()=>{const{theme:e}=be();return(0,m.useInsertionEffect)(()=>{const t=n({theme:e}),r=ne(t,{theme:e}),a=document.createElement("style");return a.id=o,a.innerHTML=r,a.setAttribute(i,"true"),document.head.insertBefore(a,document.head.firstChild),()=>{a.remove()}},[e]),null}},ve=(window.__honeyStyleRegistry||(window.__honeyStyleRegistry=new Map),window.__honeyStyleRegistry);let xe=null;const ke=()=>{const e=(xe||(xe=document.querySelector(`style[${s}="true"]`),xe||(xe=document.createElement("style"),xe.setAttribute(s,"true"),document.head.appendChild(xe))),xe),t=Array.from(ve.entries()).sort(([,e],[,t])=>e.priority-t.priority).map(([,e])=>e.css).join("\n");e.textContent=t},$e=e=>()=>{const t=ve.get(e);t&&(t.usages--,t.usages<=0&&(ve.delete(e),ke()))},Ce=(e,t,o=0)=>{const n=ve.get(e);return n?(n.usages++,$e(e)):(ve.set(e,{css:t,priority:o,usages:1}),ke(),$e(e))},Se=(e,t,{omitProps:o}={})=>(n,...i)=>{const s=re("hsc"),l=L(n,...i),p=({as:n,className:a,__compositionDepth:i=0,css:p,...c})=>{r&&p&&console.warn('[@react-hive/honey-style]: The "css" prop is deprecated. Please use inheritance or composition instead.');const{theme:u}=be(),d=(x=c,Object.entries(x).reduce((e,[t,o])=>(void 0!==o&&(e[t]=o),e),{})),y={...g(t,{theme:u,as:n,className:a,...d})??{},...a&&{className:a}},h={...y,...d,theme:u},f=l(h),v=ie(f);var x;(0,m.useInsertionEffect)(()=>{const e=ne(f,{theme:u,selector:`.${v}`});return Ce(v,e,i)},[v]);const k=((e,t)=>e?b(e)?e:L([""],[e])(t):"")(g(p,h),h),$=k?ie(k):"";(0,m.useInsertionEffect)(()=>{if($){const e=ne(k,{theme:u,selector:`.${$}`});return Ce($,e,1)}},[$]);const C=ae([s,v,y.className,$]),S={...y,...d,className:C},w=o?Object.entries(S).reduce((e,[t,n])=>o(t)?e:{...e,[t]:n},{}):S,E=n||e;if(b(e)){const e=b(E)?le(w):w;return(0,m.createElement)(E,e)}return(0,m.createElement)(e,{...w,...n&&{as:n},...se(e)&&{__compositionDepth:i-1}})};if(p[a]=s,r){const t=b(e)?e:e.displayName||e.name||"Component";p.displayName=`HoneyStyledComponent(${t})`}return p};module.exports=n})();
9
9
  //# sourceMappingURL=index.cjs.map