@react-hive/honey-style 2.8.0 → 2.11.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.
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:()=>b,HONEY_BREAKPOINTS:()=>c,HONEY_GLOBAL_STYLE_ATTR:()=>i,HONEY_STYLED_COMPONENT_ID_PROP:()=>a,HONEY_STYLE_ATTR:()=>s,HoneyStyleContext:()=>h,HoneyStyleProvider:()=>_e,VALID_DOM_ELEMENT_ATTRS:()=>f,__DEV__:()=>r,checkIsThemeColorValue:()=>Ee,combineClassNames:()=>xe,convertHexToHexWithAlpha:()=>Me,createAbsoluteFillAtRuleMiddleware:()=>de,createCenterAtRuleMiddleware:()=>pe,createEllipsisAtRuleMiddleware:()=>fe,createGlobalStyle:()=>je,createInlineAtRuleMiddleware:()=>ue,createSpacingMiddleware:()=>w,createStackAtRuleMiddleware:()=>le,css:()=>ve,filterNonHtmlAttrs:()=>ke,generateId:()=>Se,isStyledComponent:()=>Ce,mediaQuery:()=>be,processCss:()=>ge,pxToRem:()=>$e,resolveClassName:()=>we,resolveColor:()=>Oe,resolveDimension:()=>Pe,resolveFont:()=>Ae,resolveSpacing:()=>Te,styled:()=>Be,suggestAtRuleMiddleware:()=>he,useHoneyStyle:()=>Re});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"]),f=new Set([...l,...u,...p,...d]),m=require("react"),h=(0,m.createContext)(void 0);var g=n(848);const y=e=>"string"==typeof e,v=e=>"function"==typeof e,b=["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"],x=b.map(e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),w=({spacing:e=0})=>t=>{if("decl"===t.type&&"string"==typeof t.props&&x.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 C="comm",k="rule",$="decl",E=Math.abs,T=String.fromCharCode;function A(e){return e.trim()}function M(e,t,n){return e.replace(t,n)}function O(e,t,n){return e.indexOf(t,n)}function P(e,t){return 0|e.charCodeAt(t)}function _(e,t,n){return e.slice(t,n)}function R(e){return e.length}function j(e){return e.length}function L(e,t){return t.push(e),e}function D(e,t){for(var n="",o=0;o<e.length;o++)n+=t(e[o],o,e,t)||"";return n}function H(e,t,n,o){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case"@namespace":case $:return e.return=e.return||e.value;case C:return"";case"@keyframes":return e.return=e.value+"{"+D(e.children,o)+"}";case k:if(!R(e.value=e.props.join(",")))return""}return R(n=D(e.children,o))?e.return=e.value+"{"+n+"}":""}Object.assign;var I=1,N=1,B=0,W=0,F=0,Y="";function z(e,t,n,o,r,a,i,s){return{value:e,root:t,parent:n,type:o,props:r,children:a,line:I,column:N,length:i,return:"",siblings:s}}function G(){return F=W>0?P(Y,--W):0,N--,10===F&&(N=1,I--),F}function K(){return F=W<B?P(Y,W++):0,N++,10===F&&(N=1,I++),F}function U(){return P(Y,W)}function V(){return W}function q(e,t){return _(Y,e,t)}function Z(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 J(e){return A(q(W-1,ee(91===e?e+2:40===e?e+1:e)))}function Q(e){for(;(F=U())&&F<33;)K();return Z(e)>2||Z(F)>3?"":" "}function X(e,t){for(;--t&&K()&&!(F<48||F>102||F>57&&F<65||F>70&&F<97););return q(e,V()+(t<6&&32==U()&&32==K()))}function ee(e){for(;K();)switch(F){case e:return W;case 34:case 39:34!==e&&39!==e&&ee(F);break;case 40:41===e&&ee(e);break;case 92:K()}return W}function te(e,t){for(;K()&&e+F!==57&&(e+F!==84||47!==U()););return"/*"+q(t,W-1)+"*"+T(47===e?e:K())}function ne(e){for(;!Z(U());)K();return q(e,W)}function oe(e){return function(e){return Y="",e}(re("",null,null,null,[""],e=function(e){return I=N=1,B=R(Y=e),W=0,[]}(e),0,[0],e))}function re(e,t,n,o,r,a,i,s,c){for(var l=0,u=0,p=i,d=0,f=0,m=0,h=1,g=1,y=1,v=0,b="",S=r,x=a,w=o,C=b;g;)switch(m=v,v=K()){case 40:if(108!=m&&58==P(C,p-1)){-1!=O(C+=M(J(v),"&","&\f"),"&\f",E(l?s[l-1]:0))&&(y=-1);break}case 34:case 39:case 91:C+=J(v);break;case 9:case 10:case 13:case 32:C+=Q(m);break;case 92:C+=X(V()-1,7);continue;case 47:switch(U()){case 42:case 47:L(ie(te(K(),V()),t,n,c),c),5!=Z(m||1)&&5!=Z(U()||1)||!R(C)||" "===_(C,-1,void 0)||(C+=" ");break;default:C+="/"}break;case 123*h:s[l++]=R(C)*y;case 125*h:case 59:case 0:switch(v){case 0:case 125:g=0;case 59+u:-1==y&&(C=M(C,/\f/g,"")),f>0&&(R(C)-p||0===h&&47===m)&&L(f>32?se(C+";",o,n,p-1,c):se(M(C," ","")+";",o,n,p-2,c),c);break;case 59:C+=";";default:if(L(w=ae(C,t,n,l,u,r,s,b,S=[],x=[],p,a),a),123===v)if(0===u)re(C,t,w,w,S,a,p,s,x);else{switch(d){case 99:if(110===P(C,3))break;case 108:if(97===P(C,2))break;default:u=0;case 100:case 109:case 115:}u?re(e,w,w,o&&L(ae(e,w,w,0,0,r,s,b,r,S=[],p,x),x),r,x,p,s,o?S:x):re(C,w,w,w,[""],x,0,s,x)}}l=u=f=0,h=y=1,b=C="",p=i;break;case 58:p=1+R(C),f=m;default:if(h<1)if(123==v)--h;else if(125==v&&0==h++&&125==G())continue;switch(C+=T(v),v*h){case 38:y=u>0?1:(C+="\f",-1);break;case 44:s[l++]=(R(C)-1)*y,y=1;break;case 64:45===U()&&(C+=J(K())),d=U(),u=p=R(b=C+=ne(V())),v++;break;case 45:45===m&&2==R(C)&&(h=0)}}return a}function ae(e,t,n,o,r,a,i,s,c,l,u,p){for(var d=r-1,f=0===r?a:[""],m=j(f),h=0,g=0,y=0;h<o;++h)for(var v=0,b=_(e,d+1,d=E(g=i[h])),S=e;v<m;++v)(S=A(g>0?f[v]+" "+b:M(b,/&\f/g,f[v])))&&(c[y++]=S);return z(e,t,n,0===r?k:s,c,l,u,p)}function ie(e,t,n,o){return z(e,t,n,C,T(F),_(e,2,-2),0,o)}function se(e,t,n,o,r){return z(e,t,n,$,_(e,0,o),_(e,o+1,-1),o,r)}const ce=({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)?D(n.children,a):"";n.type="decl",n.return=D(oe(`${i}{${l}${u}}`),a)},le=({spacing:e=0})=>ce({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("")}}),ue=({spacing:e=0}={})=>ce({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("")}}),pe=()=>ce({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("")}}),de=()=>ce({name:"absolute-fill",transform:()=>["position:absolute;","inset:0;"].join("")}),fe=()=>ce({name:"ellipsis",transform:()=>["white-space:nowrap;","overflow:hidden;","text-overflow:ellipsis;"].join("")}),me=[{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)}],he=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 me)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}},ge=(e,t,{spacing:n}={})=>{const o=t?`${t}{${e}}`:e,r=[];return r.push(le({spacing:n}),ue({spacing:n}),pe(),fe(),de(),w({spacing:n}),H),D(oe(o),(i=j(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},ye=(e,t)=>""===e||!1===e||null==e?"":v(e)?Ce(e)?`.${e[a]}`:ye(e(t),t):Array.isArray(e)?e.map(e=>ye(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?.()??"",ve=(e,...t)=>n=>e.reduce((e,o,r)=>e+o+ye(t[r],n),""),be=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=>`(${e[0]}: ${e[1]})`).join(" and "),o=n?` and ${n}`:"";var r;return`${e.operator?`${e.operator} `:""}${e.mediaType??"screen"}${o}`}).join(", ")}`,Se=e=>`${e}-${Math.random().toString(36).slice(2,8)}`,xe=e=>e.filter(Boolean).join(" ").trim(),we=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)}`,Ce=e=>a in e,ke=e=>Object.entries(e).reduce((e,[t,n])=>((f.has(t)||t.startsWith("data-")||t.startsWith("aria-"))&&(e[t]=n),e),{}),$e=(e,t=16)=>e/t+"rem",Ee=e=>2===e.split(".").length,Te=(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(" ")},Ae=e=>({theme:t})=>{const n=t.fonts[e];return ve`
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:()=>f,__DEV__:()=>r,checkIsThemeColorValue:()=>Te,combineClassNames:()=>we,convertHexToHexWithAlpha:()=>Pe,createAbsoluteFillAtRuleMiddleware:()=>fe,createCenterAtRuleMiddleware:()=>de,createEllipsisAtRuleMiddleware:()=>me,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"]),f=new Set([...l,...u,...p,...d]),m=require("react"),h=(0,m.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=>"function"==typeof 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 I(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 N=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:N,column:B,length:i,return:"",siblings:s}}function K(){return Y=F>0?_(z,--F):0,B--,10===Y&&(B=1,N--),Y}function U(){return Y=F<W?_(z,F++):0,B++,10===Y&&(B=1,N++),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 N=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,f=0,m=0,h=1,g=1,y=1,v=0,b="",S=r,x=a,w=o,C=b;g;)switch(m=v,v=U()){case 40:if(108!=m&&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(m);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(m||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,"")),f>0&&(j(C)-p||0===h&&47===m)&&D(f>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=f=0,h=y=1,b=C="",p=i;break;case 58:p=1+j(C),f=m;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===m&&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,f=0===r?a:[""],m=L(f),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<m;++v)(S=O(g>0?f[v]+" "+b:P(b,/&\f/g,f[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("")}}),fe=()=>le({name:"absolute-fill",transform:()=>["position:absolute;","inset:0;"].join("")}),me=()=>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(),me(),fe(),C({spacing:n}),I),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)?"":v(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])=>((f.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`
3
3
  font-family: ${n.family};
4
- font-size: ${$e(n.size)};
4
+ font-size: ${Ee(n.size)};
5
5
  font-weight: ${n.weight};
6
- line-height: ${void 0!==n.lineHeight&&$e(n.lineHeight)};
7
- letter-spacing: ${void 0!==n.letterSpacing&&$e(n.letterSpacing)};
8
- `},Me=(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")}`},Oe=(e,t)=>({theme:n})=>{const[o,r]=e.split("."),a=r?n.colors[o][r]:o;return void 0===t?a:Me(a,t)},Pe=e=>({theme:t})=>t.dimensions[e],_e=({children:e,theme:t})=>{const n=(0,m.useMemo)(()=>({theme:t,resolveSpacing:(...e)=>Te(...e)({theme:t}),resolveColor:(...e)=>Oe(...e)({theme:t}),resolveFont:(...e)=>Ae(...e)({theme:t}),resolveDimension:(...e)=>Pe(...e)({theme:t})}),[t]);return(0,g.jsx)(h,{value:n,children:e})},Re=()=>{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},je=(e,...t)=>{const n=Se("hsg"),o=ve(e,...t);return()=>{const{theme:e}=Re();return(0,m.useInsertionEffect)(()=>{const t=o({theme:e}),r=ge(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}},Le=(window.__honeyStyleRegistry||(window.__honeyStyleRegistry=new Map),window.__honeyStyleRegistry);let De=null;const He=()=>{const e=(De||(De=document.querySelector(`style[${s}="true"]`),De||(De=document.createElement("style"),De.setAttribute(s,"true"),document.head.appendChild(De))),De),t=Array.from(Le.entries()).sort(([,e],[,t])=>e.priority-t.priority).map(([,e])=>e.css).join("\n");e.textContent=t},Ie=e=>()=>{const t=Le.get(e);t&&(t.usages--,t.usages<=0&&(Le.delete(e),He()))},Ne=(e,t,n=0)=>{const o=Le.get(e);return o?(o.usages++,Ie(e)):(Le.set(e,{css:t,priority:n,usages:1}),He(),Ie(e))},Be=(e,t)=>(n,...o)=>{const i=Se("hsc"),s=ve(n,...o),c=({as:n,className:o,__compositionDepth:a=0,css:c,...l})=>{r&&c&&console.warn('[@react-hive/honey-style]: The "css" prop is deprecated. Please use inheritance or composition instead.');const{theme:u}=Re(),p=Object.fromEntries(Object.entries(l).filter(([,e])=>void 0!==e)),d=v(t)?t({theme:u,as:n,className:o,...p}):t??{},f={...d,...p,theme:u},h=s(f),g=we(h);(0,m.useInsertionEffect)(()=>{const e=ge(h,`.${g}`,{spacing:u.spacings.base});return Ne(g,e,a)},[g]);const b=((e,t)=>e?y(e)?e:ve([""],[e])(t):"")(v(c)?c(f):c,f),S=b?we(b):"";(0,m.useInsertionEffect)(()=>{if(S){const e=ge(b,`.${S}`,{spacing:u.spacings.base});return Ne(S,e,1)}},[S]);const x={...d,...p,className:xe([i,g,o,S])},w=n||e;if(y(e)){const e=y(w)?ke(x):x;return(0,m.createElement)(w,e)}return(0,m.createElement)(e,{...x,...n&&{as:n},...Ce(e)&&{__compositionDepth:a-1}})};if(c[a]=i,r){const t=y(e)?e:e.displayName||e.name||"Component";c.displayName=`HoneyStyledComponent(${t})`}return c};module.exports=o})();
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,m.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,m.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,m.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 Ie=()=>{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},Ne=e=>()=>{const t=De.get(e);t&&(t.usages--,t.usages<=0&&(De.delete(e),Ie()))},Be=(e,t,n=0)=>{const o=De.get(e);return o?(o.usages++,Ne(e)):(De.set(e,{css:t,priority:n,usages:1}),Ie(),Ne(e))},We=(e,t)=>(n,...o)=>{const i=xe("hsc"),s=be(n,...o),c=({as:n,className:o,__compositionDepth:a=0,css:c,...l})=>{r&&c&&console.warn('[@react-hive/honey-style]: The "css" prop is deprecated. Please use inheritance or composition instead.');const{theme:u}=je(),p=Object.fromEntries(Object.entries(l).filter(([,e])=>void 0!==e)),d=v(t)?t({theme:u,as:n,className:o,...p}):t??{},f={...d,...p,theme:u},h=s(f),g=Ce(h);(0,m.useInsertionEffect)(()=>{const e=ye(h,`.${g}`,{spacing:u.spacings.base});return Be(g,e,a)},[g]);const y=((e,t)=>e?b(e)?e:be([""],[e])(t):"")(v(c)?c(f):c,f),S=y?Ce(y):"";(0,m.useInsertionEffect)(()=>{if(S){const e=ye(y,`.${S}`,{spacing:u.spacings.base});return Be(S,e,1)}},[S]);const x={...d,...p,className:we([i,g,o,S])},w=n||e;if(b(e)){const e=b(w)?$e(x):x;return(0,m.createElement)(w,e)}return(0,m.createElement)(e,{...x,...n&&{as:n},...ke(e)&&{__compositionDepth:a-1}})};if(c[a]=i,r){const t=b(e)?e:e.displayName||e.name||"Component";c.displayName=`HoneyStyledComponent(${t})`}return c};module.exports=o})();
9
9
  //# sourceMappingURL=index.cjs.map