@react-hive/honey-style 2.13.0 → 3.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.
@@ -32,7 +32,7 @@ interface MediaQueryRuleResolutionProperties {
32
32
  maxResolution?: MediaQueryRuleResolutionValue;
33
33
  }
34
34
  type MediaQueryRuleOperator = 'not' | 'only';
35
- type MediaQueryRuleType = 'all' | 'print' | 'screen' | 'speech';
35
+ export type MediaQueryRuleType = 'all' | 'print' | 'screen' | 'speech';
36
36
  /**
37
37
  * Represents the possible values for media query orientation.
38
38
  *
@@ -41,7 +41,7 @@ type MediaQueryRuleType = 'all' | 'print' | 'screen' | 'speech';
41
41
  * - `'landscape'` – Width is greater than height.
42
42
  * - `'portrait'` – Height is greater than width.
43
43
  */
44
- type MediaQueryRuleOrientation = 'landscape' | 'portrait';
44
+ export type MediaQueryRuleOrientation = 'landscape' | 'portrait';
45
45
  type MediaQueryRuleUpdate = 'none' | 'slow' | 'fast';
46
46
  /**
47
47
  * Options for CSS @media at-rule.
@@ -66,7 +66,7 @@ export interface HoneyMediaQueryRule extends MediaQueryRuleDimensionProperties,
66
66
  *
67
67
  * @example
68
68
  * ```ts
69
- * atMedia([
69
+ * mediaQuery([
70
70
  * { minWidth: '768px', orientation: 'landscape' },
71
71
  * { mediaType: 'print' }
72
72
  * ]);
package/dist/css/css.d.ts CHANGED
@@ -1,2 +1,17 @@
1
+ import type { Middleware, Element } from 'stylis';
1
2
  import type { HoneyStyledInterpolation, HoneyStyledContext } from '../types';
2
3
  export declare const css: <Props extends object>(strings: TemplateStringsArray, ...interpolations: HoneyStyledInterpolation<Props>[]) => (context: HoneyStyledContext<Props>) => string;
4
+ 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 {};
@@ -1,4 +1,5 @@
1
1
  import type { Element, Middleware } from 'stylis';
2
+ import type { Nullable } from '../../types';
2
3
  interface AtRuleMiddlewareOptions {
3
4
  /**
4
5
  * The suffix name of the custom at-rule without the `@honey-` prefix.
@@ -13,8 +14,7 @@ interface AtRuleMiddlewareOptions {
13
14
  * in place of the custom at-rule.
14
15
  *
15
16
  * @param args - An array of parsed arguments inside the at-rule parentheses.
16
- * Arguments are split by spaces. If no arguments are provided,
17
- * this will be `undefined`.
17
+ * Arguments are split by spaces.
18
18
  *
19
19
  * For example:
20
20
  * - `@honey-stack(2)` → `args = ['2']`
@@ -23,12 +23,10 @@ interface AtRuleMiddlewareOptions {
23
23
  * @param element - The Stylis AST element representing the current at-rule node.
24
24
  * Can be useful for accessing raw content or children.
25
25
  *
26
- * @param name - The same name as passed in `options.name`, for convenience.
27
- *
28
26
  * @returns A string of one or more CSS declarations (e.g., `display:flex;gap:8px;`).
29
27
  * This string will be injected into the compiled output in place of the at-rule.
30
28
  */
31
- transform: (args: string[] | undefined, element: Element, name: string) => string;
29
+ transform: (args: string[], element: Element, callback: Middleware) => Nullable<string>;
32
30
  }
33
31
  /**
34
32
  * Creates a Stylis middleware for transforming custom `@honey-*` at-rules into
@@ -48,7 +46,7 @@ interface AtRuleMiddlewareOptions {
48
46
  * createAtRuleMiddleware({
49
47
  * name: 'stack',
50
48
  * transform: args => {
51
- * const gap = parseFloat(args?.[0] ?? '0') * 8;
49
+ * const gap = parseFloat(args[0] ?? '0') * 8;
52
50
  *
53
51
  * return `display:flex;flex-direction:column;gap:${gap}px;`;
54
52
  * }
@@ -68,5 +66,5 @@ interface AtRuleMiddlewareOptions {
68
66
  *
69
67
  * @returns A Stylis `Middleware` function that replaces the matched at-rule with the generated CSS.
70
68
  */
71
- export declare const createAtRuleMiddleware: ({ name, transform, }: AtRuleMiddlewareOptions) => Middleware;
69
+ export declare const createAtRuleMiddleware: ({ name, transform }: AtRuleMiddlewareOptions) => Middleware;
72
70
  export {};
@@ -4,4 +4,5 @@ export * from './inline-at-rule';
4
4
  export * from './center-at-rule';
5
5
  export * from './absolute-fill-at-rule';
6
6
  export * from './ellipsis-at-rule';
7
+ export * from './media-at-rule';
7
8
  export * from './suggest';
@@ -1,8 +1,6 @@
1
+ import type { HoneyTheme } from '../../types';
1
2
  interface CreateInlineAtRuleMiddlewareOptions {
2
- /**
3
- * @default 0
4
- */
5
- spacing?: number;
3
+ theme?: HoneyTheme;
6
4
  }
7
- export declare const createInlineAtRuleMiddleware: ({ spacing, }?: CreateInlineAtRuleMiddlewareOptions) => import("stylis").Middleware;
5
+ export declare const createInlineAtRuleMiddleware: ({ theme }?: CreateInlineAtRuleMiddlewareOptions) => import("stylis").Middleware;
8
6
  export {};
@@ -0,0 +1,6 @@
1
+ import type { HoneyTheme } from '../../types';
2
+ interface CreateMediaAtRuleMiddlewareOptions {
3
+ theme?: HoneyTheme;
4
+ }
5
+ export declare const createMediaAtRuleMiddleware: ({ theme }: CreateMediaAtRuleMiddlewareOptions) => import("stylis").Middleware;
6
+ export {};
@@ -1,9 +1,7 @@
1
1
  import type { Middleware } from 'stylis';
2
+ import type { HoneyTheme } from '../../types';
2
3
  interface SpacingMiddlewareOptions {
3
- /**
4
- * @default 0
5
- */
6
- spacing?: number;
4
+ theme?: HoneyTheme;
7
5
  }
8
- export declare const createSpacingMiddleware: ({ spacing }: SpacingMiddlewareOptions) => Middleware;
6
+ export declare const createSpacingMiddleware: ({ theme }: SpacingMiddlewareOptions) => Middleware;
9
7
  export {};
@@ -1,8 +1,6 @@
1
+ import type { HoneyTheme } from '../../types';
1
2
  interface CreateStackAtRuleMiddlewareOptions {
2
- /**
3
- * @default 0
4
- */
5
- spacing?: number;
3
+ theme?: HoneyTheme;
6
4
  }
7
- export declare const createStackAtRuleMiddleware: ({ spacing }: CreateStackAtRuleMiddlewareOptions) => import("stylis").Middleware;
5
+ export declare const createStackAtRuleMiddleware: ({ theme }: CreateStackAtRuleMiddlewareOptions) => import("stylis").Middleware;
8
6
  export {};
@@ -1,5 +1,6 @@
1
+ import type { HoneyTheme } from '../types';
1
2
  interface ProcessCssOptions {
2
- spacing?: number;
3
+ theme?: HoneyTheme;
3
4
  }
4
- export declare const processCss: (rawCss: string, selector?: string, { spacing }?: ProcessCssOptions) => string;
5
+ export declare const processCss: (rawCss: string, selector?: string, { theme }?: ProcessCssOptions) => string;
5
6
  export {};
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:()=>x,CSS_SPACING_PROPERTIES:()=>S,HONEY_BREAKPOINTS:()=>c,HONEY_GLOBAL_STYLE_ATTR:()=>i,HONEY_STYLED_COMPONENT_ID_PROP:()=>a,HONEY_STYLE_ATTR:()=>s,HoneyStyleContext:()=>h,HoneyStyleProvider:()=>Re,VALID_DOM_ELEMENT_ATTRS:()=>m,__DEV__:()=>r,checkIsThemeColorValue:()=>Te,combineClassNames:()=>we,convertHexToHexWithAlpha:()=>Pe,createAbsoluteFillAtRuleMiddleware:()=>me,createCenterAtRuleMiddleware:()=>de,createEllipsisAtRuleMiddleware:()=>fe,createGlobalStyle:()=>Le,createInlineAtRuleMiddleware:()=>pe,createSpacingMiddleware:()=>C,createStackAtRuleMiddleware:()=>ue,css:()=>be,filterNonHtmlAttrs:()=>$e,generateId:()=>xe,isStyledComponent:()=>ke,mediaQuery:()=>Se,processCss:()=>ye,pxToRem:()=>Ee,resolveClassName:()=>Ce,resolveColor:()=>Me,resolveDimension:()=>_e,resolveFont:()=>Oe,resolveSpacing:()=>Ae,styled:()=>We,suggestAtRuleMiddleware:()=>ge,useHoneyStyle:()=>je});const r=!1;r&&"undefined"!=typeof window&&!process.env.JEST_WORKER_ID&&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",c=["xs","sm","md","lg","xl"],l=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"]),m=new Set([...l,...u,...p,...d]),f=require("react"),h=(0,f.createContext)(void 0);var g=n(848),y={};y.d=(e,t)=>{for(var n in t)y.o(t,n)&&!y.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},y.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);const v=(e,...t)=>"function"==typeof e?e(...t):e,b=e=>"string"==typeof e,S=["margin","marginTop","marginRight","marginBottom","marginLeft","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingBlock","paddingBlockStart","paddingBlockEnd","top","right","bottom","left","inset","gap","rowGap","columnGap"],x=["color","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","outlineColor","textDecorationColor","fill","stroke"],w=S.map(e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),C=({spacing:e=0})=>t=>{if("decl"===t.type&&"string"==typeof t.props&&w.includes(t.props)&&"string"==typeof t.children){if(/[()]/.test(t.children))return;const n=[],o=t.children.trim().split(/\s+/);for(const t of o)n.push(/^-?\d*\.?\d+$/.test(t)?parseFloat(t)*e+"px":t);const r=n.join(" ");t.return=`${t.props}:${r};`}};var k="comm",$="rule",E="decl",T=Math.abs,A=String.fromCharCode;function O(e){return e.trim()}function P(e,t,n){return e.replace(t,n)}function M(e,t,n){return e.indexOf(t,n)}function _(e,t){return 0|e.charCodeAt(t)}function R(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 k:return"";case"@keyframes":return e.return=e.value+"{"+H(e.children,o)+"}";case $: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,Y=0,z="";function G(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 K(){return Y=F>0?_(z,--F):0,B--,10===Y&&(B=1,I--),Y}function U(){return Y=F<W?_(z,F++):0,B++,10===Y&&(B=1,I++),Y}function V(){return _(z,F)}function q(){return F}function Z(e,t){return R(z,e,t)}function J(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 Q(e){return O(Z(F-1,te(91===e?e+2:40===e?e+1:e)))}function X(e){for(;(Y=V())&&Y<33;)U();return J(e)>2||J(Y)>3?"":" "}function ee(e,t){for(;--t&&U()&&!(Y<48||Y>102||Y>57&&Y<65||Y>70&&Y<97););return Z(e,q()+(t<6&&32==V()&&32==U()))}function te(e){for(;U();)switch(Y){case e:return F;case 34:case 39:34!==e&&39!==e&&te(Y);break;case 40:41===e&&te(e);break;case 92:U()}return F}function ne(e,t){for(;U()&&e+Y!==57&&(e+Y!==84||47!==V()););return"/*"+Z(t,F-1)+"*"+A(47===e?e:U())}function oe(e){for(;!J(V());)U();return Z(e,F)}function re(e){return function(e){return z="",e}(ae("",null,null,null,[""],e=function(e){return I=B=1,W=j(z=e),F=0,[]}(e),0,[0],e))}function ae(e,t,n,o,r,a,i,s,c){for(var l=0,u=0,p=i,d=0,m=0,f=0,h=1,g=1,y=1,v=0,b="",S=r,x=a,w=o,C=b;g;)switch(f=v,v=U()){case 40:if(108!=f&&58==_(C,p-1)){-1!=M(C+=P(Q(v),"&","&\f"),"&\f",T(l?s[l-1]:0))&&(y=-1);break}case 34:case 39:case 91:C+=Q(v);break;case 9:case 10:case 13:case 32:C+=X(f);break;case 92:C+=ee(q()-1,7);continue;case 47:switch(V()){case 42:case 47:D(se(ne(U(),q()),t,n,c),c),5!=J(f||1)&&5!=J(V()||1)||!j(C)||" "===R(C,-1,void 0)||(C+=" ");break;default:C+="/"}break;case 123*h:s[l++]=j(C)*y;case 125*h:case 59:case 0:switch(v){case 0:case 125:g=0;case 59+u:-1==y&&(C=P(C,/\f/g,"")),m>0&&(j(C)-p||0===h&&47===f)&&D(m>32?ce(C+";",o,n,p-1,c):ce(P(C," ","")+";",o,n,p-2,c),c);break;case 59:C+=";";default:if(D(w=ie(C,t,n,l,u,r,s,b,S=[],x=[],p,a),a),123===v)if(0===u)ae(C,t,w,w,S,a,p,s,x);else{switch(d){case 99:if(110===_(C,3))break;case 108:if(97===_(C,2))break;default:u=0;case 100:case 109:case 115:}u?ae(e,w,w,o&&D(ie(e,w,w,0,0,r,s,b,r,S=[],p,x),x),r,x,p,s,o?S:x):ae(C,w,w,w,[""],x,0,s,x)}}l=u=m=0,h=y=1,b=C="",p=i;break;case 58:p=1+j(C),m=f;default:if(h<1)if(123==v)--h;else if(125==v&&0==h++&&125==K())continue;switch(C+=A(v),v*h){case 38:y=u>0?1:(C+="\f",-1);break;case 44:s[l++]=(j(C)-1)*y,y=1;break;case 64:45===V()&&(C+=Q(U())),d=V(),u=p=j(b=C+=oe(q())),v++;break;case 45:45===f&&2==j(C)&&(h=0)}}return a}function ie(e,t,n,o,r,a,i,s,c,l,u,p){for(var d=r-1,m=0===r?a:[""],f=L(m),h=0,g=0,y=0;h<o;++h)for(var v=0,b=R(e,d+1,d=T(g=i[h])),S=e;v<f;++v)(S=O(g>0?m[v]+" "+b:P(b,/&\f/g,m[v])))&&(c[y++]=S);return G(e,t,n,0===r?$:s,c,l,u,p)}function se(e,t,n,o){return G(e,t,n,k,A(Y),R(e,2,-2),0,o)}function ce(e,t,n,o,r){return G(e,t,n,E,R(e,0,o),R(e,o+1,-1),o,r)}const le=({name:e,transform:t})=>(n,o,r,a)=>{if("rule"!==n.parent?.type||n.type!==`@honey-${e}`)return;const i=n.parent?.value;if(!i)return;const s=n.value.trim().match(new RegExp(`^${n.type}\\s*\\(\\s*([^)]+?)\\s*\\)\\s*;?$`,"i")),c=s?s[1].split(" ").filter(Boolean):void 0,l=t(c,n,e),u=Array.isArray(n.children)?H(n.children,a):"";n.type="decl",n.return=H(re(`${i}{${l}${u}}`),a)},ue=({spacing:e=0})=>le({name:"stack",transform:t=>{const n=["display:flex;","flex-direction:column;"];if(t?.length){const o=/^-?\d*\.?\d+$/.test(t[0])?parseFloat(t[0])*e+"px":t;n.push(`gap:${o};`)}return n.join("")}}),pe=({spacing:e=0}={})=>le({name:"inline",transform:t=>{const n=["display:flex;","align-items:center;"];if(t?.length){const o=/^-?\d*\.?\d+$/.test(t[0])?parseFloat(t[0])*e+"px":t;n.push(`gap:${o};`)}return n.join("")}}),de=()=>le({name:"center",transform:(e=[])=>{const t=[];switch(e[0]){case"horizontal":case"x":t.push("display:flex;","justify-content:center;");break;case"vertical":case"y":t.push("display:flex;","align-items:center;");break;case"block":t.push("display:block;","text-align:center;");break;case"inline":t.push("display:inline-flex;","align-items:center;","justify-content:center;");break;default:t.push("display:flex;","align-items:center;","justify-content:center;")}return t.join("")}}),me=()=>le({name:"absolute-fill",transform:()=>["position:absolute;","inset:0;"].join("")}),fe=()=>le({name:"ellipsis",transform:()=>["white-space:nowrap;","overflow:hidden;","text-overflow:ellipsis;"].join("")}),he=[{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)}],ge=e=>{if("rule"!==e.type||!e.children)return;const t=(n=e).children&&Array.isArray(n.children)?n.children.filter(e=>"decl"===e.type&&"string"==typeof e.props&&"string"==typeof e.children).map(e=>({prop:e.props,value:e.children})):[];var n;for(const n of he)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}},ye=(e,t,{spacing:n}={})=>{const o=t?`${t}{${e}}`:e,r=[];return r.push(ue({spacing:n}),pe({spacing:n}),de(),fe(),me(),C({spacing:n}),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},ve=(e,t)=>""===e||!1===e||(e=>null==e)(e)?"":(e=>"function"==typeof e)(e)?ke(e)?`.${e[a]}`:ve(e(t),t):Array.isArray(e)?e.map(e=>ve(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?.()??"",be=(e,...t)=>n=>e.reduce((e,o,r)=>e+o+ve(t[r],n),""),Se=e=>`@media ${e.map(e=>{const t=(e=>e.filter(Boolean))([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]]).map(e=>`(${e[0]}: ${e[1]})`).join(" and "),n=t?` and ${t}`:"";return`${e.operator?`${e.operator} `:""}${e.mediaType??"screen"}${n}`}).join(", ")}`,xe=e=>`${e}-${Math.random().toString(36).slice(2,8)}`,we=e=>e.filter(Boolean).join(" ").trim(),Ce=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)}`,ke=e=>a in e,$e=e=>Object.entries(e).reduce((e,[t,n])=>((m.has(t)||t.startsWith("data-")||t.startsWith("aria-"))&&(e[t]=n),e),{}),Ee=(e,t=16)=>e/t+"rem",Te=e=>2===e.split(".").length,Ae=(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(" ")},Oe=e=>({theme:t})=>{const n=t.fonts[e];return be`
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
3
  font-family: ${n.family};
4
- font-size: ${Ee(n.size)};
4
+ font-size: ${je(n.size)};
5
5
  font-weight: ${n.weight};
6
- line-height: ${void 0!==n.lineHeight&&Ee(n.lineHeight)};
7
- letter-spacing: ${void 0!==n.letterSpacing&&Ee(n.letterSpacing)};
8
- `},Pe=(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")}`},Me=(e,t)=>({theme:n})=>{const[o,r]=e.split("."),a=r?n.colors[o][r]:o;return void 0===t?a:Pe(a,t)},_e=e=>({theme:t})=>t.dimensions[e],Re=({children:e,theme:t})=>{const n=(0,f.useMemo)(()=>({theme:t,resolveSpacing:(...e)=>Ae(...e)({theme:t}),resolveColor:(...e)=>Me(...e)({theme:t}),resolveFont:(...e)=>Oe(...e)({theme:t}),resolveDimension:(...e)=>_e(...e)({theme:t})}),[t]);return(0,g.jsx)(h,{value:n,children:e})},je=()=>{const e=(0,f.useContext)(h);return function(e,t){if(!e)throw new Error(t)}(e,"The `useHoneyStyle()` hook must be used inside <HoneyStyleProvider/> component!"),e},Le=(e,...t)=>{const n=xe("hsg"),o=be(e,...t);return()=>{const{theme:e}=je();return(0,f.useInsertionEffect)(()=>{const t=o({theme:e}),r=ye(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}},De=(window.__honeyStyleRegistry||(window.__honeyStyleRegistry=new Map),window.__honeyStyleRegistry);let He=null;const Ne=()=>{const e=(He||(He=document.querySelector(`style[${s}="true"]`),He||(He=document.createElement("style"),He.setAttribute(s,"true"),document.head.appendChild(He))),He),t=Array.from(De.entries()).sort(([,e],[,t])=>e.priority-t.priority).map(([,e])=>e.css).join("\n");e.textContent=t},Ie=e=>()=>{const t=De.get(e);t&&(t.usages--,t.usages<=0&&(De.delete(e),Ne()))},Be=(e,t,n=0)=>{const o=De.get(e);return o?(o.usages++,Ie(e)):(De.set(e,{css:t,priority:n,usages:1}),Ne(),Ie(e))},We=(e,t,{omitProps:n}={})=>(o,...i)=>{const s=xe("hsc"),c=be(o,...i),l=({as:o,className:a,__compositionDepth:i=0,css:l,...u})=>{r&&l&&console.warn('[@react-hive/honey-style]: The "css" prop is deprecated. Please use inheritance or composition instead.');const{theme:p}=je(),d=(e=>Object.entries(e).reduce((e,[t,n])=>(void 0!==n&&(e[t]=n),e),{}))(u),m={...v(t,{theme:p,as:o,className:a,...d})??{},...a&&{className:a}},h={...m,...d,theme:p},g=c(h),y=Ce(g);(0,f.useInsertionEffect)(()=>{const e=ye(g,`.${y}`,{spacing:p.spacings.base});return Be(y,e,i)},[y]);const S=((e,t)=>e?b(e)?e:be([""],[e])(t):"")(v(l,h),h),x=S?Ce(S):"";(0,f.useInsertionEffect)(()=>{if(x){const e=ye(S,`.${x}`,{spacing:p.spacings.base});return Be(x,e,1)}},[x]);const w=we([s,y,m.className,x]),C={...m,...d,className:w},k=n?Object.entries(C).reduce((e,[t,o])=>n(t)?e:{...e,[t]:o},{}):C,$=o||e;if(b(e)){const e=b($)?$e(k):k;return(0,f.createElement)($,e)}return(0,f.createElement)(e,{...k,...o&&{as:o},...ke(e)&&{__compositionDepth:i-1}})};if(l[a]=s,r){const t=b(e)?e:e.displayName||e.name||"Component";l.displayName=`HoneyStyledComponent(${t})`}return l};module.exports=o})();
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})();
9
9
  //# sourceMappingURL=index.cjs.map