@master/css 2.0.0-beta.16 → 2.0.0-beta.160

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 (253) hide show
  1. package/README.md +113 -109
  2. package/dist/bin/index.bundle.js +45 -0
  3. package/dist/bin/index.d.ts +2 -0
  4. package/dist/config/breakpoints.d.ts +1 -2
  5. package/dist/config/colors.d.ts +3 -4
  6. package/dist/config/functions.d.ts +7 -0
  7. package/dist/config/important.d.ts +1 -0
  8. package/dist/config/index.d.ts +58 -25
  9. package/dist/config/keyframes.d.ts +109 -0
  10. package/dist/config/override.d.ts +1 -0
  11. package/dist/config/root-size.d.ts +1 -2
  12. package/dist/config/rules.d.ts +267 -3
  13. package/dist/config/scope.d.ts +1 -0
  14. package/dist/config/selectors.d.ts +1 -2
  15. package/dist/config/semantics.d.ts +147 -43
  16. package/dist/config/themeDriver.d.ts +1 -0
  17. package/dist/constants/config-esm-text.d.ts +1 -0
  18. package/dist/constants/config-text.d.ts +1 -0
  19. package/dist/constants/config-ts-text.d.ts +1 -0
  20. package/dist/constants/selector-symbols.d.ts +1 -0
  21. package/dist/constants/start-symbol.d.ts +2 -1
  22. package/dist/core.d.ts +92 -0
  23. package/dist/functions/extract-classes-from-html.d.ts +5 -0
  24. package/dist/functions/generate-from-classes.d.ts +8 -0
  25. package/dist/functions/generate-from-html.d.ts +8 -0
  26. package/dist/functions/init-runtime.d.ts +9 -0
  27. package/dist/functions/render-html.d.ts +8 -0
  28. package/dist/index.browser.bundle.js +1 -0
  29. package/dist/index.browser.d.ts +6 -1
  30. package/dist/index.bundle.js +44 -0
  31. package/dist/index.bundle.mjs +44 -0
  32. package/dist/index.d.ts +13 -21
  33. package/dist/polyfills/css-escape.d.ts +0 -1
  34. package/dist/rule.d.ts +59 -46
  35. package/dist/utils/is-plain-object.d.ts +1 -1
  36. package/dist/utils/parse-rule-value.d.ts +5 -0
  37. package/package.json +1 -162
  38. package/LICENSE +0 -21
  39. package/dist/apis/extend.d.ts +0 -5
  40. package/dist/apis/render-from-html.d.ts +0 -3
  41. package/dist/apis/render-into-html.d.ts +0 -3
  42. package/dist/apis/render.d.ts +0 -3
  43. package/dist/config/scheme.d.ts +0 -7
  44. package/dist/config/themes.d.ts +0 -2
  45. package/dist/config/values.d.ts +0 -126
  46. package/dist/css.d.ts +0 -81
  47. package/dist/index.browser.js +0 -2
  48. package/dist/index.browser.js.map +0 -7
  49. package/dist/index.cjs +0 -2
  50. package/dist/index.cjs.map +0 -7
  51. package/dist/index.mjs +0 -2
  52. package/dist/index.mjs.map +0 -7
  53. package/dist/rules/accent-color.d.ts +0 -7
  54. package/dist/rules/align-content.d.ts +0 -6
  55. package/dist/rules/align-items.d.ts +0 -6
  56. package/dist/rules/align-self.d.ts +0 -6
  57. package/dist/rules/animation-delay.d.ts +0 -7
  58. package/dist/rules/animation-direction.d.ts +0 -6
  59. package/dist/rules/animation-duration.d.ts +0 -7
  60. package/dist/rules/animation-fill-mode.d.ts +0 -6
  61. package/dist/rules/animation-iteration-count.d.ts +0 -7
  62. package/dist/rules/animation-name.d.ts +0 -6
  63. package/dist/rules/animation-play-state.d.ts +0 -6
  64. package/dist/rules/animation-timing-function.d.ts +0 -6
  65. package/dist/rules/animation.d.ts +0 -8
  66. package/dist/rules/appearance.d.ts +0 -5
  67. package/dist/rules/aspect-radio.d.ts +0 -7
  68. package/dist/rules/backdrop-filter.d.ts +0 -11
  69. package/dist/rules/background-attachment.d.ts +0 -6
  70. package/dist/rules/background-blend-mode.d.ts +0 -5
  71. package/dist/rules/background-clip.d.ts +0 -9
  72. package/dist/rules/background-color.d.ts +0 -8
  73. package/dist/rules/background-image.d.ts +0 -7
  74. package/dist/rules/background-origin.d.ts +0 -6
  75. package/dist/rules/background-position.d.ts +0 -7
  76. package/dist/rules/background-repeat.d.ts +0 -6
  77. package/dist/rules/background-size.d.ts +0 -6
  78. package/dist/rules/background.d.ts +0 -8
  79. package/dist/rules/border-collapse.d.ts +0 -6
  80. package/dist/rules/border-color.d.ts +0 -11
  81. package/dist/rules/border-image-outset.d.ts +0 -5
  82. package/dist/rules/border-image-repeat.d.ts +0 -6
  83. package/dist/rules/border-image-slice.d.ts +0 -6
  84. package/dist/rules/border-image-source.d.ts +0 -6
  85. package/dist/rules/border-image-width.d.ts +0 -6
  86. package/dist/rules/border-image.d.ts +0 -6
  87. package/dist/rules/border-radius.d.ts +0 -9
  88. package/dist/rules/border-spacing.d.ts +0 -5
  89. package/dist/rules/border-style.d.ts +0 -9
  90. package/dist/rules/border-width.d.ts +0 -9
  91. package/dist/rules/border.d.ts +0 -10
  92. package/dist/rules/box-decoration-break.d.ts +0 -9
  93. package/dist/rules/box-shadow.d.ts +0 -7
  94. package/dist/rules/box-sizing.d.ts +0 -6
  95. package/dist/rules/break-after.d.ts +0 -5
  96. package/dist/rules/break-before.d.ts +0 -5
  97. package/dist/rules/break-inside.d.ts +0 -5
  98. package/dist/rules/caret-color.d.ts +0 -7
  99. package/dist/rules/clear.d.ts +0 -5
  100. package/dist/rules/clip-path.d.ts +0 -6
  101. package/dist/rules/color.d.ts +0 -8
  102. package/dist/rules/column-span.d.ts +0 -6
  103. package/dist/rules/columns.d.ts +0 -8
  104. package/dist/rules/contain.d.ts +0 -5
  105. package/dist/rules/content.d.ts +0 -5
  106. package/dist/rules/counter-increment.d.ts +0 -6
  107. package/dist/rules/cursor.d.ts +0 -5
  108. package/dist/rules/cx.d.ts +0 -6
  109. package/dist/rules/cy.d.ts +0 -6
  110. package/dist/rules/direction.d.ts +0 -5
  111. package/dist/rules/display.d.ts +0 -6
  112. package/dist/rules/fill.d.ts +0 -7
  113. package/dist/rules/filter.d.ts +0 -8
  114. package/dist/rules/flex-basis.d.ts +0 -5
  115. package/dist/rules/flex-direction.d.ts +0 -6
  116. package/dist/rules/flex-grow.d.ts +0 -6
  117. package/dist/rules/flex-shrink.d.ts +0 -6
  118. package/dist/rules/flex-wrap.d.ts +0 -6
  119. package/dist/rules/flex.d.ts +0 -7
  120. package/dist/rules/float.d.ts +0 -5
  121. package/dist/rules/font-family.d.ts +0 -6
  122. package/dist/rules/font-size.d.ts +0 -6
  123. package/dist/rules/font-smoothing.d.ts +0 -9
  124. package/dist/rules/font-style.d.ts +0 -7
  125. package/dist/rules/font-variant-numeric.d.ts +0 -6
  126. package/dist/rules/font-weight.d.ts +0 -7
  127. package/dist/rules/font.d.ts +0 -8
  128. package/dist/rules/gap.d.ts +0 -9
  129. package/dist/rules/grid-area.d.ts +0 -7
  130. package/dist/rules/grid-auto-columns.d.ts +0 -6
  131. package/dist/rules/grid-auto-flow.d.ts +0 -6
  132. package/dist/rules/grid-auto-rows.d.ts +0 -5
  133. package/dist/rules/grid-column-end.d.ts +0 -7
  134. package/dist/rules/grid-column-start.d.ts +0 -7
  135. package/dist/rules/grid-column.d.ts +0 -9
  136. package/dist/rules/grid-columns.d.ts +0 -10
  137. package/dist/rules/grid-row-end.d.ts +0 -6
  138. package/dist/rules/grid-row-start.d.ts +0 -6
  139. package/dist/rules/grid-row.d.ts +0 -9
  140. package/dist/rules/grid-rows.d.ts +0 -9
  141. package/dist/rules/grid-template-areas.d.ts +0 -5
  142. package/dist/rules/grid-template-columns.d.ts +0 -6
  143. package/dist/rules/grid-template-rows.d.ts +0 -5
  144. package/dist/rules/grid-template.d.ts +0 -6
  145. package/dist/rules/grid.d.ts +0 -6
  146. package/dist/rules/group.d.ts +0 -9
  147. package/dist/rules/height.d.ts +0 -6
  148. package/dist/rules/inset.d.ts +0 -9
  149. package/dist/rules/isolation.d.ts +0 -5
  150. package/dist/rules/justify-content.d.ts +0 -6
  151. package/dist/rules/justify-items.d.ts +0 -6
  152. package/dist/rules/justify-self.d.ts +0 -6
  153. package/dist/rules/letter-spacing.d.ts +0 -7
  154. package/dist/rules/line-clamp.d.ts +0 -9
  155. package/dist/rules/line-height.d.ts +0 -7
  156. package/dist/rules/lines.d.ts +0 -9
  157. package/dist/rules/list-style-image.d.ts +0 -6
  158. package/dist/rules/list-style-position.d.ts +0 -6
  159. package/dist/rules/list-style-type.d.ts +0 -6
  160. package/dist/rules/list-style.d.ts +0 -6
  161. package/dist/rules/margin.d.ts +0 -9
  162. package/dist/rules/mask-image.d.ts +0 -8
  163. package/dist/rules/max-height.d.ts +0 -6
  164. package/dist/rules/max-width.d.ts +0 -6
  165. package/dist/rules/min-height.d.ts +0 -6
  166. package/dist/rules/min-width.d.ts +0 -6
  167. package/dist/rules/mix-blend-mode.d.ts +0 -6
  168. package/dist/rules/object-fit.d.ts +0 -6
  169. package/dist/rules/object-position.d.ts +0 -6
  170. package/dist/rules/opacity.d.ts +0 -6
  171. package/dist/rules/order.d.ts +0 -7
  172. package/dist/rules/outline-color.d.ts +0 -7
  173. package/dist/rules/outline-offset.d.ts +0 -5
  174. package/dist/rules/outline-style.d.ts +0 -6
  175. package/dist/rules/outline-width.d.ts +0 -6
  176. package/dist/rules/outline.d.ts +0 -7
  177. package/dist/rules/overflow.d.ts +0 -9
  178. package/dist/rules/overscroll-behavior.d.ts +0 -8
  179. package/dist/rules/padding.d.ts +0 -9
  180. package/dist/rules/place-content.d.ts +0 -6
  181. package/dist/rules/place-items.d.ts +0 -6
  182. package/dist/rules/place-self.d.ts +0 -6
  183. package/dist/rules/placement.d.ts +0 -8
  184. package/dist/rules/pointer-events.d.ts +0 -5
  185. package/dist/rules/position.d.ts +0 -5
  186. package/dist/rules/quotes.d.ts +0 -5
  187. package/dist/rules/resize.d.ts +0 -5
  188. package/dist/rules/rx.d.ts +0 -6
  189. package/dist/rules/ry.d.ts +0 -6
  190. package/dist/rules/scroll-behavior.d.ts +0 -5
  191. package/dist/rules/scroll-margin.d.ts +0 -9
  192. package/dist/rules/scroll-padding.d.ts +0 -9
  193. package/dist/rules/scroll-snap-align.d.ts +0 -6
  194. package/dist/rules/scroll-snap-stop.d.ts +0 -6
  195. package/dist/rules/scroll-snap-type.d.ts +0 -6
  196. package/dist/rules/shape-image-threshold.d.ts +0 -6
  197. package/dist/rules/shape-margin.d.ts +0 -6
  198. package/dist/rules/shape-outside.d.ts +0 -6
  199. package/dist/rules/spacing.d.ts +0 -9
  200. package/dist/rules/stroke-dasharray.d.ts +0 -5
  201. package/dist/rules/stroke-dashoffset.d.ts +0 -5
  202. package/dist/rules/stroke-width.d.ts +0 -6
  203. package/dist/rules/stroke.d.ts +0 -6
  204. package/dist/rules/table-layout.d.ts +0 -5
  205. package/dist/rules/text-align.d.ts +0 -6
  206. package/dist/rules/text-decoration-color.d.ts +0 -7
  207. package/dist/rules/text-decoration-line.d.ts +0 -6
  208. package/dist/rules/text-decoration-style.d.ts +0 -6
  209. package/dist/rules/text-decoration-thickness.d.ts +0 -7
  210. package/dist/rules/text-decoration.d.ts +0 -8
  211. package/dist/rules/text-fill-color.d.ts +0 -10
  212. package/dist/rules/text-indent.d.ts +0 -5
  213. package/dist/rules/text-orientation.d.ts +0 -6
  214. package/dist/rules/text-overflow.d.ts +0 -6
  215. package/dist/rules/text-rendering.d.ts +0 -6
  216. package/dist/rules/text-shadow.d.ts +0 -6
  217. package/dist/rules/text-size.d.ts +0 -8
  218. package/dist/rules/text-stroke-color.d.ts +0 -10
  219. package/dist/rules/text-stroke-width.d.ts +0 -8
  220. package/dist/rules/text-stroke.d.ts +0 -8
  221. package/dist/rules/text-transform.d.ts +0 -6
  222. package/dist/rules/text-underline-offset.d.ts +0 -5
  223. package/dist/rules/touch-action.d.ts +0 -5
  224. package/dist/rules/transform-box.d.ts +0 -6
  225. package/dist/rules/transform-origin.d.ts +0 -7
  226. package/dist/rules/transform-style.d.ts +0 -6
  227. package/dist/rules/transform.d.ts +0 -9
  228. package/dist/rules/transition-delay.d.ts +0 -7
  229. package/dist/rules/transition-duration.d.ts +0 -7
  230. package/dist/rules/transition-property.d.ts +0 -6
  231. package/dist/rules/transition-timing-function.d.ts +0 -6
  232. package/dist/rules/transition.d.ts +0 -7
  233. package/dist/rules/user-drag.d.ts +0 -8
  234. package/dist/rules/user-select.d.ts +0 -8
  235. package/dist/rules/variable.d.ts +0 -9
  236. package/dist/rules/vertical-align.d.ts +0 -6
  237. package/dist/rules/visibility.d.ts +0 -5
  238. package/dist/rules/white-space.d.ts +0 -6
  239. package/dist/rules/width.d.ts +0 -6
  240. package/dist/rules/will-change.d.ts +0 -5
  241. package/dist/rules/word-break.d.ts +0 -6
  242. package/dist/rules/word-spacing.d.ts +0 -6
  243. package/dist/rules/writing-mode.d.ts +0 -6
  244. package/dist/rules/x.d.ts +0 -6
  245. package/dist/rules/y.d.ts +0 -6
  246. package/dist/rules/z-index.d.ts +0 -7
  247. package/dist/utils/get-border-props.d.ts +0 -3
  248. package/dist/utils/get-css-property-text.d.ts +0 -5
  249. package/dist/utils/normalize-css-calc-text.d.ts +0 -5
  250. package/dist/utils/parse-value-unit.d.ts +0 -2
  251. package/dist/utils/parse-value.d.ts +0 -6
  252. package/readme.md +0 -118
  253. /package/dist/{apis → functions}/fill-color-scale.d.ts +0 -0
@@ -0,0 +1,44 @@
1
+ function ve(e){let t=typeof Buffer<"u"?Buffer:null;return!!(t&&e instanceof t||e instanceof Date||e instanceof RegExp)}function xe(e){if(typeof Buffer<"u"&&Buffer&&e instanceof Buffer){let t=Buffer.alloc(e.length);return e.copy(t),t}else{if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp)return new RegExp(e);throw new Error("Unexpected situation")}}function ye(e){let t=[];return e.forEach(function(i,o){typeof i=="object"&&i!==null?Array.isArray(i)?t[o]=ye(i):ve(i)?t[o]=xe(i):t[o]=Z({},i):t[o]=i}),t}function be(e,t){return t==="__proto__"?void 0:e[t]}function Z(...e){let t={},i,o;return e.forEach(function(h){typeof h!="object"||h===null||Array.isArray(h)||Object.keys(h).forEach(function(s){if(o=be(t,s),i=be(h,s),i!==t)if(typeof i!="object"||i===null){t[s]=i;return}else if(Array.isArray(i)){t[s]=ye(i);return}else if(ve(i)){t[s]=xe(i);return}else if(typeof o!="object"||o===null||Array.isArray(o)){t[s]=Z({},i);return}else{t[s]=Z(o,i);return}})}),t}var re={"(":")","'":"'",'"':'"',"{":"}"};function ie(e){if(typeof CSS<"u")return CSS.escape(e);if(arguments.length==0)throw new TypeError("`CSS.escape` requires an argument.");let t=String(e),i=t.length,o=-1,h="",s,x=t.charCodeAt(0);if(i==1&&x==45)return"\\"+t;for(;++o<i;){if(s=t.charCodeAt(o),s==0){h+="\uFFFD";continue}if(s>=1&&s<=31||s==127||o==0&&s>=48&&s<=57||o==1&&s>=48&&s<=57&&x==45){h+="\\"+s.toString(16)+" ";continue}if(s>=128||s==45||s==95||s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122){h+=t.charAt(o);continue}h+="\\"+t.charAt(o)}return h}var We={unit:"",order:0,separators:[","]},ze=/^(media|supports|page|font-face|keyframes|counter-style|font-feature-values|property|layer)(?=\||{|\(|$)/,ne=class{constructor(t,i={},o){this.className=t;this.meta=i;this.css=o;this.config=Z(We,i.config);let{unit:h,order:s,colored:x,native:f,analyze:S,transform:b,declare:g,create:l}=this.config,{scope:u,important:d,functions:m,themeDriver:p,keyframes:c}=o.config,{themeNames:n,colorNames:r,colorThemesMap:a,selectors:v,breakpoints:k,mediaQueries:$,classesBy:O,globalValues:F}=o,_=O[t];l&&l.call(this,t);let Q,le,fe,te,U;if(i.origin==="semantics"){let[N,E]=i.value;te=t.slice(N.length),Q=E}else{let N;if(S)[N,fe]=S.call(this,t);else{let B=t.indexOf(":");this.prefix=t.slice(0,B+1),N=t.slice(B+1)}U=[];let E=this,I=this.values,D=[","];this.config.separators.length&&D.push(...this.config.separators);let C="",y=0;(function B(R,w,T,M=void 0,j=[],V=[],L){let A=M===void 0,Y,ee=W=>W==="'"||W==='"',K=()=>Y=C.length,q=()=>{if(C){let W=C,P=A?W:C.slice(Y);if(C="",H="",I&&P in I&&!j.includes(P)){let X=y;y=0,B(I[P].toString(),w,void 0,M,[...j,P],V,L),y=X,A||(C=C.slice(0,Y)+C)}else if(F&&P in F&&!V.includes(P)){let X=y;y=0,B(F[P].toString(),w,void 0,M,j,[...V,P],L),y=X,A||(C=C.slice(0,Y)+C)}else if(A){let X=!L&&E.analyzeUnitValue(P,w);U.push({value:X?.value??P,unit:X?.unit})}else{let X=!L&&E.analyzeUnitValue(P,w);C=X?W.slice(0,Y)+X.value+X.unit:W}K()}},G=ee(T);K();let H="";for(;y<R.length;y++){let W=R[y];if(W===T){if(G){C+=W;let P=0;for(let X=C.length-2;C[X]==="\\";X--)P++;if(P%2)continue}else q(),C+=W;return}else if(!G&&W in re){let P=W==="("&&H&&m?.[H];P?.name&&(C=C.slice(0,C.length-H.length)+P.name,H=P.name),C+=W,y++;let X=re[W];B(R,P?.unit??w,X,H||M||"",j,V,L||!!P?.transform),P?.transform&&(C=C.slice(0,Y+H.length+1)+P.transform.call(E,C.slice(Y+H.length+1,-1))+C.slice(-1)),A&&(ee(X)?(U.push(C),C=""):q()),H=""}else if((W==="|"||W===" ")&&T!=="}"&&(!G||M==="path"))q(),A||(C+=" ",Y++);else{if(!G){if(W==="."){if(isNaN(+R[y+1]))break;R[y-1]==="-"&&(C+="0")}else if(D.includes(W)){q(),A?U.push(W):(C+=W,Y++);continue}else if(A&&(W==="#"&&(C||U.length&&R[y-1]!=="|"&&U[y-1]!==" ")||["!","*",">","+","~",":","[","@","_"].includes(W)))break;H+=W}C+=W}}M===void 0&&q()})(N,h),te=N.slice(y)}this.order=typeof s=="function"?s.call(this,this.prefix):s,te[0]==="!"&&(this.important=!0,te=te.slice(1));let pe=N=>{let E=N.split(/(\\'(?:.*?)[^\\]\\')(?=[*_>~+,)])|(\[[^=]+='(?:.*?)[^\\]'\])/).map((y,B)=>B%3?y:y.replace(/(^|[^_])_(?!_)/g,"$1 ")).join(""),I=[],D="",C=0;for(let y=0;y<E.length;y++){let B=E[y];if(B==="\\"){D+=B+E[++y];continue}!C&&B===","?(I.push(D),D=""):(D+=B,C&&B===")"?C--:B==="("&&C++)}return D&&I.push(D),I};this.prefixSelectors=fe?pe(fe):[""];let me=te.split("@"),he=me[0];if(he){this.vendorSuffixSelectors={};let N=(y,B,R,w)=>{for(let[T,M]of B)if(T.test(y)){for(let j of M)N(y.replace(T,j),B,R,!0);return}w&&R.push(y)},E=[];""in v?N(he,v[""],E,!0):E.push(he);let I={};for(let[y,B]of Object.entries(v)){if(!y)continue;let R=[];for(let w of E)N(w,B,R,!1);R.length&&(I[y]=R)}let D=(y,B)=>{let R=B.reduce((w,T)=>(w.push(...pe(T)),w),[]);y in this.vendorSuffixSelectors?this.vendorSuffixSelectors[y].push(...R):this.vendorSuffixSelectors[y]=R},C=Object.keys(I);if(C.length)for(let y of C)D(y,I[y]);else D("",E);for(let y of Object.values(this.vendorSuffixSelectors))for(let B of y){this.hasWhere!==!1&&(this.hasWhere=B.includes(":where("));let R=[":disabled",":active",":focus",":hover"];for(let w=0;w<R.length;w++)if(B.includes(R[w])){(this.priority===-1||this.priority>w)&&(this.priority=w);break}}}else this.vendorSuffixSelectors={"":[""]};for(let N=1;N<me.length;N++){let E=me[N];if(E)if(E==="rtl"||E==="ltr")this.direction=E;else{let I,D,C=ze.exec(E);if(C)I=C[1],D=E.slice(I.length);else{this.media={token:E,features:{}};let y=[],B=w=>{if(w==="all"||w==="print"||w==="screen"||w==="speech")this.media.type=w;else if(w==="\u{1F5A8}")this.media.type="print";else if(w==="landscape"||w==="portrait")y.push("(orientation:"+w+")");else if(w==="motion"||w==="reduced-motion")y.push("(prefers-reduced-motion:"+(w==="motion"?"no-preference":"reduce")+")");else if($&&w in $)y.push($[w]);else{let T={token:w},M="",j="",V=0;w.startsWith("<=")?(j="<=",M="max-width"):w.startsWith(">=")||k[w]?(j=">=",M="min-width"):w.startsWith(">")?(j=">",M="min-width",V=.02):w.startsWith("<")&&(j="<",M="max-width",V=-.02);let L=j?w.replace(j,""):w,A=k[L];switch(M){case"max-width":case"min-width":A?Object.assign(T,this.analyzeUnitValue(A.toString(),"px")):Object.assign(T,this.analyzeUnitValue(L,"px")),T.unit==="px"&&(T.value+=V),this.media.features[M]=T,y.push("("+M+":"+(T.value+T.unit)+")");break}}},R=E.includes("&");if(R){let w=E.split("&");for(let T of w)B(T)}else B(E);if(this.media.type&&(D=this.media.type),y.length&&(D=y.join(" and ")),D)I="media";else if(!R){this.theme=E;continue}}D&&(this.at[I]=(I in this.at?this.at[I]+" and ":"")+D.replace(/\|/g," "))}}let ge=(N,E)=>{let I,D=(B,R,w)=>{let T="";this.direction&&(T+="[dir="+this.direction+"] ");let M=this.prefixSelectors.map(L=>L+T),j=(L,A)=>M.map(Y=>(L&&p!=="media"?p==="host"?`:host(.${L}) `:`.${L} `:"")+(u?u+" ":"")+Y).reduce((Y,ee)=>(Y.push(w.reduce((K,q)=>(K.push(ee+"."+ie(A)+q),K),[]).join(",")),Y),[]).join(","),V=j(R,t)+(_&&(this.theme||!x||!R)?_.reduce((L,A)=>L+","+j(this.theme??(x||le?R:""),A),""):"")+"{"+B+"}";for(let L of Object.keys(this.at).sort((A,Y)=>Y==="supports"?-1:1))V="@"+L+(L.includes(" ")?"":" ")+this.at[L]+"{"+V+"}";return R&&p==="media"&&(V=`@media(prefers-color-scheme:${R}){`+V+"}"),V},C=[];if(U){let B=[this.theme??N,""],R,w=!1;for(let T of U)if(typeof T=="string")C.push(T);else{let M=T.value;if(T.unit)M+=T.unit;else if(x&&a&&r){let j=!1;M=M.replace(new RegExp(`(^|,| |\\()((?:${r.join("|")})(?:-(?:[0-9A-Za-z-]+))?)(?:\\/(\\.?[0-9]+%?))?(?=(\\)|\\}|,| |$))`,"gm"),(V,L,A,Y)=>{let ee=a[A];if(ee){let K,q;for(let G of B)if(K=ee[G]){q=G;break}if(K){j=!E||q===N,R||(R=j);let G=K;if(Y){let H=Y.endsWith("%")?parseFloat(Y)/100:+Y;H=isNaN(H)?1:Math.min(Math.max(H,0),1),G+=Math.round(H*255).toString(16).toUpperCase().padStart(2,"0")}return L+G}else w=!0}return V})}C.push(M)}if(E&&(w||(R===void 0?N:!R)))return;if(I=C.reduce((T,M,j)=>T+M+(M===","||U[j+1]===","||j===U.length-1?"":" "),""),b&&(I=b.call(this,I,this.css.config)),x&&I==="current"&&(I="currentColor"),g){let T,M;if(U.length===1){let j=U[0];typeof j=="object"&&(T=j.value,M=j.unit)}Q=g.call(this,M?T:I,M||"")}else Q={[f]:I}}let y={};for(let B in Q){let R=(M,j)=>{if(c&&(j.startsWith("animation")||j.startsWith("animation-name"))){let L=j.split(":")[1].split("!important")[0].split(" ").filter(A=>A in this.css.config.keyframes&&(!this.keyframeNames||!this.keyframeNames.includes(A)));L.length&&(this.keyframeNames||(this.keyframeNames=[]),this.keyframeNames.push(...L))}let V=j+((this.important||d)&&!j.endsWith("!important")?"!important":"");M in y?y[M].push(V):y[M]=[V]},w=B+":",T=Q[B];if(typeof T=="object")if(Array.isArray(T))for(let M of T)R(N,w+M.toString());else{le=!0;for(let M in T)R(M,w+T[M])}else R(N,w+T.toString())}for(let B of Object.values(this.vendorSuffixSelectors))for(let R in y)this.natives.push({text:D(y[R].join(";"),R,B),theme:R})};if(this.theme)ge(this.theme,!1);else if(x)for(let N of n)ge(N,!0);else ge("",!1)}at={};priority=-1;natives=[];keyframeNames;config;get values(){return this.css.values[this.config.id]}get text(){return this.natives.map(t=>t.text).join("")}resolveValue(t,i){return Number.isNaN(+t)?t:t/(i==="rem"||i==="em"?this.css.config.rootSize:1)+i}analyzeUnitValue(t,i){let o=i??this.config.unit;if(o){let h="",s=t.match(/^([+-.]?\d+(\.?\d+)?)(.*)?/);if(s)if(t.includes("/")){let[x,f]=t.split("/");return{value:+x/+f*100+"%",unit:h}}else{let x=+s[1];return h=s[3]||"",h||((o==="rem"||o==="em")&&(x=x/this.css.config.rootSize),h=o||""),{value:x,unit:h}}}}};var we={"3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560};function oe(e){e.startsWith("#")&&(e=e.slice(1));let t=e.match(/.{1,2}/g);return[parseInt(t[0],16),parseInt(t[1],16),parseInt(t[2],16)]}function ce(e,t,i){return((1<<24)+(e<<16)+(t<<8)+i).toString(16).slice(1)}function z(e){typeof e=="string"&&(e={"":e});let t=""in e,i=!1;for(let o in e)if(o&&+o>=100){i=!0;break}if(!i&&(!t||Object.keys(e).length>1)){let o=0,h="0"in e?oe(e[0]):[0,0,0],s,x,f=[],S=()=>{let b=s-o,g=x.map((l,u)=>(l-h[u])/b);for(let l of f){let u=l-o,d=h.map((m,p)=>Math.round(m+g[p]*u));e[l]="#"+ce.call(this,...d)}};for(let b=1;b<100;b++)b in e?(f.length?(s=b,x=oe(e[b]),S(),f.length=0,h=x):h=oe(e[b]),o=b):f.push(b);f.length&&(s=100,x="100"in e?oe(e[100]):[255,255,255],S())}return t||(e[""]=e[i?"500":"50"]),e}var Se={black:"#000000",white:"#ffffff",slate:z({5:"#141e2b",10:"#19212d",20:"#262f3e",30:"#323e52",40:"#41516b",50:"#616a84",55:"#6c7693",60:"#959db3",70:"#a3abbf",80:"#d7dae3",95:"#f6f7f8"}),gray:z({5:"#1e1d1f",10:"#212022",20:"#2f2e30",30:"#3e3d40",40:"#504f52",50:"#6b6a6d",55:"#777679",60:"#9e9da0",70:"#abaaae",80:"#dad9db",95:"#f5f4f7"}),brown:z({5:"#271b15",10:"#2b1e18",20:"#3c2b22",30:"#50382c",40:"#694839",50:"#8d604b",55:"#9d6b53",60:"#b79788",70:"#c1a598",80:"#efd5c9",95:"#faf2ef"}),orange:z({5:"#2e1907",10:"#331b07",20:"#47260b",30:"#5d320e",40:"#7a4111",50:"#a15717",55:"#b4611a",60:"#e38739",70:"#e79855",80:"#f7d4b5",95:"#fcf1e7"}),gold:z({5:"#281b00",10:"#2d1e01",20:"#3f2a00",30:"#543800",40:"#6d4900",50:"#906000",55:"#9c6d00",60:"#d09100",70:"#dca000",80:"#fbd67f",95:"#fff3d8"}),yellow:z({5:"#251d00",10:"#282000",20:"#3a2e01",30:"#4b3b00",40:"#624e00",50:"#806700",55:"#8e7200",60:"#be9900",70:"#d0a700",80:"#edda8f",95:"#fff5ca"}),grass:z({5:"#162106",10:"#182406",20:"#223308",30:"#2c4408",40:"#3a570b",50:"#4e750e",60:"#74ae15",70:"#7dbc17",80:"#bfe87c",95:"#ebfad4"}),green:z({5:"#042311",10:"#032611",20:"#023717",30:"#03481f",40:"#025d26",50:"#067b34",55:"#07883a",60:"#09b64d",70:"#0ac553",80:"#80f1a4",95:"#e0fae8"}),beryl:z({5:"#002319",10:"#00271c",20:"#003626",30:"#004732",40:"#005c41",50:"#007954",55:"#00875e",60:"#00b37c",70:"#00c387",80:"#72f0c5",95:"#d6fcef"}),teal:z({5:"#012220",10:"#012624",20:"#003532",30:"#004541",40:"#005a54",50:"#00776f",55:"#00857c",60:"#00b1a5",70:"#00bfb2",80:"#6aeee5",95:"#d4fcf8"}),cyan:z({5:"#00222b",10:"#00252e",20:"#013340",30:"#004457",40:"#00576f",50:"#007391",55:"#0080a1",60:"#00abd7",70:"#00b9e9",80:"#97e6fa",95:"#dff8ff"}),sky:z({5:"#031f34",10:"#032339",20:"#04314e",30:"#044169",40:"#065386",50:"#086eb3",55:"#097ac5",60:"#29a4f5",70:"#4db3f7",80:"#b3e0ff",95:"#eaf6fe"}),blue:z({5:"#07194a",10:"#081c53",20:"#0a2773",30:"#0e3496",40:"#1146b6",50:"#175fe9",55:"#2671ea",60:"#6b9ef1",70:"#81acf3",80:"#c6dbfe",95:"#edf4fe"}),indigo:z({5:"#1f1645",10:"#20174f",20:"#2b1f74",30:"#37289d",40:"#463fb1",50:"#5a5bd5",55:"#6464f1",60:"#9393f5",70:"#a1a5ee",80:"#d5d7fe",95:"#f1f2ff"}),violet:z({5:"#2b0a4e",10:"#2e0b57",20:"#3d1179",30:"#4e169f",40:"#5f2eba",50:"#7949e5",55:"#8755f5",60:"#ac8af8",70:"#b89bf9",80:"#e1d4fe",95:"#f5f1ff"}),purple:z({5:"#2e0c47",10:"#330c4e",20:"#460f6c",30:"#5b1390",40:"#7421b1",50:"#9832e4",55:"#a348e7",60:"#c184ef",70:"#ca96f1",80:"#ead1fe",95:"#f9f0ff"}),fuchsia:z({5:"#39092a",10:"#400932",20:"#560d4a",30:"#6f1165",40:"#8c158a",50:"#b61cbb",55:"#ca1fce",60:"#e66ee9",70:"#ea86ed",80:"#facbfb",95:"#feefff"}),pink:z({5:"#3d0722",10:"#430725",20:"#5d0933",30:"#790d44",40:"#9a1058",50:"#ca1473",55:"#e11681",60:"#f170b4",70:"#f388c0",80:"#fdcde6",95:"#fff0f8"}),crimson:z({5:"#430213",10:"#470314",20:"#62041c",30:"#800524",40:"#9f1036",50:"#ce1a4b",55:"#e8144c",60:"#f37596",70:"#f58ba7",80:"#fdceda",95:"#fff1f4"}),red:z({5:"#450001",10:"#490102",20:"#640304",30:"#800506",40:"#a11012",50:"#d11a1e",55:"#ed0a0e",60:"#f97476",70:"#fa8b8d",80:"#fdcfcf",95:"#fff1f1"})};var ke=16;var Ce="";var Re={"::scrollbar":"::-webkit-scrollbar","::scrollbar-button":"::-webkit-scrollbar-button","::scrollbar-thumb":"::-webkit-scrollbar-thumb","::scrollbar-track":"::-webkit-scrollbar-track","::scrollbar-track-piece":"::-webkit-scrollbar-track-piece","::scrollbar-corner":"::-webkit-scrollbar-corner","::slider-thumb":["::-webkit-slider-thumb","::-moz-range-thumb"],"::slider-runnable-track":["::-webkit-slider-runnable-track","::-moz-range-track"],"::meter":"::-webkit-meter","::resizer":"::-webkit-resizer","::progress":"::-webkit-progress",":first":":first-child",":last":":last-child",":even":":nth-child(2n)",":odd":":nth-child(odd)",":nth(":":nth-child("};var $e={square:{"aspect-ratio":"1/1"},video:{"aspect-ratio":"16/9"},rounded:{"border-radius":"1e9em"},round:{"border-radius":"50%"},hidden:{display:"none"},hide:{display:"none"},block:{display:"block"},table:{display:"table"},flex:{display:"flex"},grid:{display:"grid"},contents:{display:"contents"},inline:{display:"inline"},"inline-block":{display:"inline-block"},"inline-flex":{display:"inline-flex"},"inline-grid":{display:"inline-grid"},"inline-table":{display:"inline-table"},"table-cell":{display:"table-cell"},"table-caption":{display:"table-caption"},"flow-root":{display:"flow-root"},"list-item":{display:"list-item"},"table-row":{display:"table-row"},"table-column":{display:"table-column"},"table-row-group":{display:"table-row-group"},"table-column-group":{display:"table-column-group"},"table-header-group":{display:"table-header-group"},"table-footer-group":{display:"table-footer-group"},italic:{"font-style":"italic"},oblique:{"font-style":"oblique"},isolate:{isolation:"isolate"},overflowed:{overflow:"visible"},untouchable:{"pointer-events":"none"},static:{position:"static"},fixed:{position:"fixed"},abs:{position:"absolute"},rel:{position:"relative"},sticky:{position:"sticky"},uppercase:{"text-transform":"uppercase"},lowercase:{"text-transform":"lowercase"},capitalize:{"text-transform":"capitalize"},visible:{visibility:"visible"},invisible:{visibility:"hidden"},vw:{width:"100vw"},vh:{height:"100vh"},"max-vw":{"max-width":"100vw"},"max-vh":{"max-height":"100vh"},"min-vw":{"min-width":"100vw"},"min-vh":{"min-height":"100vh"},"center-content":{"justify-content":"center","align-items":"center"},"sr-only":{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0,0,0,0)","white-space":"nowrap","border-width":"0"},full:{width:"100%",height:"100%"},center:{left:0,right:0,"margin-left":"auto","margin-right":"auto"},middle:{top:0,bottom:0,"margin-top":"auto","margin-bottom":"auto"},"break-spaces":{"white-space":"break-spaces"},"break-word":{"overflow-wrap":"break-word",overflow:"hidden"},"gradient-text":{"-webkit-text-fill-color":"transparent","-webkit-background-clip":"text","background-clip":"text"}};var Pe={group:{match:"^(?:.+?[*_>~+])?\\{.+?\\}",analyze(e){let t=0;for(;t<e.length&&!(e[t]==="{"&&e[t-1]!=="\\");t++);return[e.slice(t),e.slice(0,t)]},declare(e){let t={},i=(b,g)=>{let l=g.indexOf(":");if(l!==-1){b in t||(t[b]={});let u=t[b],d=g.slice(0,l);d in u||(u[d]=g.slice(l+1))}},o=b=>{let g=(l,u)=>{let d=u.slice(ie(b.className).length).match(/\{(.*)\}/)[1].split(";");for(let m of d)i(l,m)};if(this.theme){let l=b.natives.find(u=>u.theme===this.theme)??b.natives.find(u=>!u.theme);l&&g(this.theme,l.text)}else for(let l of b.natives)g(l.theme,l.text);if(b.keyframeNames){this.keyframeNames||(this.keyframeNames=[]);for(let l of b.keyframeNames)this.keyframeNames.includes(l)||this.keyframeNames.push(l)}},h=[],s="",x=()=>{s&&(h.push(s.replace(/ /g,"|")),s="")},f=1;(function b(g){for(;f<e.length;f++){let l=e[f];if(!g){if(l===";"){x();continue}if(l==="}")break}if(s+=l,g===l){if(g==="'"||g==='"'){let u=0;for(let d=s.length-2;s[d]==="\\";d--)u++;if(u%2)continue}break}else l in re&&g!=="'"&&g!=='"'&&(f++,b(re[l]))}})(void 0),x();for(let b of h){let g=this.css.create(b);if(Array.isArray(g))if(g.length)for(let l of g)o(l);else i(this.theme??"",b);else o(g)}let S={};for(let b in t)for(let[g,l]of Object.entries(t[b]))g in S?S[g][b]=l:S[g]={[b]:l};return S}},variable:{match:"^\\$[^ (){}A-Z]+:[^ ]",declare(e){return{["--"+this.prefix.slice(1,-1)]:e}}},fontSize:{match:"^f(?:ont)?:(?:[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},fontWeight:{match:"^f(?:ont)?:(?:bolder|$values)(?!\\|)",native:!0,values:{thin:100,extralight:200,light:300,regular:400,medium:500,semibold:600,bold:700,extrabold:800,heavy:900}},fontFamily:{match:"^f(?:ont)?:(?:$values)(?!\\|)",native:!0,values:{mono:"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace",sans:"ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji",serif:"ui-serif,Georgia,Cambria,Times New Roman,Times,serif"}},fontSmoothing:{match:"^f(?:ont)?:(?:antialiased|subpixel-antialiased|$values)(?!\\|)",declare(e){switch(e){case"subpixel-antialiased":return{"-webkit-font-smoothing":"auto","-moz-osx-font-smoothing":"auto"};case"antialiased":return{"-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"}}}},fontStyle:{match:"^f(?:ont)?:(?:normal|italic|oblique|$values)(?!\\|)",native:!0,unit:"deg"},fontVariantNumeric:{match:"^f(?:ont)?:(?:ordinal|slashed-zero|lining-nums|oldstyle-nums|proportional-nums|tabular-nums|diagonal-fractions|stacked-fractions|$values)(?!\\|)",native:!0},fontFeatureSettings:{match:"^font-feature:.",native:!0},font:{match:"^f:.",native:!0,order:-1},color:{match:"^(?:color|fg|foreground):.",native:!0,colored:!0,values:{current:"currentColor"}},marginLeft:{match:"^ml:.",native:!0,unit:"rem"},marginRight:{match:"^mr:.",native:!0,unit:"rem"},marginTop:{match:"^mt:.",native:!0,unit:"rem"},marginBottom:{match:"^mb:.",native:!0,unit:"rem"},marginX:{match:"^(?:mx|margin-x):.",unit:"rem",order:-.5,declare(e,t){return{"margin-left":e+t,"margin-right":e+t}}},marginY:{match:"^(?:my|margin-y):.",unit:"rem",order:-.5,declare(e,t){return{"margin-top":e+t,"margin-bottom":e+t}}},margin:{match:"^m:.",native:!0,unit:"rem",order:-1},paddingLeft:{match:"^pl:.",native:!0,unit:"rem"},paddingRight:{match:"^pr:.",native:!0,unit:"rem"},paddingTop:{match:"^pt:.",native:!0,unit:"rem"},paddingBottom:{match:"^pb:.",native:!0,unit:"rem"},paddingX:{match:"^(?:px|padding-x):.",unit:"rem",order:-.5,declare(e,t){return{"padding-left":e+t,"padding-right":e+t}}},paddingY:{match:"^(?:py|padding-y):.",unit:"rem",order:-.5,declare(e,t){return{"padding-top":e+t,"padding-bottom":e+t}}},padding:{match:"^p:.",native:!0,unit:"rem",order:-1},flexBasis:{values:{full:"100%",fit:"fit-content",max:"max-content",min:"min-content","3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560},unit:"rem",native:!0},flexWrap:{match:"^flex:(?:wrap(?:-reverse)?|nowrap|$values)(?!\\|)",native:!0},flexGrow:{native:!0},flexShrink:{native:!0},flexDirection:{match:"^flex:(?:(?:row|column)(?:-reverse)?|$values)(?!\\|)",native:!0,values:{col:"column","col-reverse":"column-reverse"}},flex:{native:!0,order:-1},display:{match:"^d:.",native:!0},width:{match:"^w:.",unit:"rem",native:!0,values:{full:"100%",fit:"fit-content",max:"max-content",min:"min-content","3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560}},height:{match:"^h:.",unit:"rem",native:!0,values:{full:"100%",fit:"fit-content",max:"max-content",min:"min-content","3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560}},minWidth:{match:"^min-w:.",unit:"rem",native:!0,values:{full:"100%",fit:"fit-content",max:"max-content",min:"min-content","3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560}},minHeight:{match:"^min-h:.",unit:"rem",native:!0,values:{full:"100%",fit:"fit-content",max:"max-content",min:"min-content","3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560}},box:{match:"^(?:(?:max|min|clamp|calc)\\(.+\\)|[0-9]+[a-z]*?)x(?:(?:max|min|clamp|calc)\\(.+\\)|[0-9]+[a-z]*?)",unit:"rem",separators:["x"],analyze(e){return[e]},declare(e){let[t,i]=e.split(" x ");return{width:t,height:i}}},minBox:{match:"^min:(?:(?:max|min|clamp|calc)\\(.+\\)|[0-9]+[a-z]*?)x(?:(?:max|min|clamp|calc)\\(.+\\)|[0-9]+[a-z]*?)",unit:"rem",separators:["x"],analyze(e){return[e.slice(4)]},declare(e){let[t,i]=e.split(" x ");return{"min-width":t,"min-height":i}}},maxBox:{match:"^max:(?:(?:max|min|clamp|calc)\\(.+\\)|[0-9]+[a-z]*?)x(?:(?:max|min|clamp|calc)\\(.+\\)|[0-9]+[a-z]*?)",unit:"rem",separators:["x"],analyze(e){return[e.slice(4)]},declare(e){let[t,i]=e.split(" x ");return{"max-width":t,"max-height":i}}},contain:{native:!0},content:{native:!0},counterIncrement:{native:!0},counterReset:{native:!0},letterSpacing:{match:"^ls:.",native:!0,unit:"em"},lineHeight:{match:"^lh:.",native:!0},objectFit:{match:"^(?:object|obj):(?:contain|cover|fill|scale-down|$values)",native:!0},objectPosition:{match:"^(?:object|obj):(?:top|bottom|right|left|center|$values)",native:!0},textAlign:{match:"^t(?:ext)?:(?:justify|center|left|right|start|end|$values)(?!\\|)",native:!0},textDecorationColor:{match:"^text-decoration:(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},textDecorationStyle:{match:"^t(?:ext)?:(?:solid|double|dotted|dashed|wavy|$values)(?!\\|)",native:!0},textDecorationThickness:{match:"^text-decoration:(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|from-font|$values)[^|]*$",native:!0,unit:"em"},textDecorationLine:{match:"^t(?:ext)?:(?:none|underline|overline|line-through|$values)(?!\\|)",native:!0},textDecoration:{match:"^t(?:ext)?:(?:underline|line-through|overline)",unit:"rem",native:!0,colored:!0,values:{current:"currentColor"},order:-1},textUnderlineOffset:{unit:"rem",native:!0},textOverflow:{match:"^(?:text-(?:overflow|ovf):.|t(?:ext)?:(?:ellipsis|clip|$values)(?!\\|))",native:!0},textOrientation:{match:"^t(?:ext)?:(?:mixed|upright|sideways-right|sideways|use-glyph-orientation|$values)(?!\\|)",native:!0},textTransform:{match:"^t(?:ext)?:(?:uppercase|lowercase|capitalize|$values)(?!\\|)",native:!0},textRendering:{match:"^t(?:ext)?:(?:optimizeSpeed|optimizeLegibility|geometricPrecision|$values)(?!\\|)",native:!0},textIndent:{unit:"rem",native:!0},verticalAlign:{match:"^(?:v|vertical):.",native:!0},columns:{match:"^(?:columns|cols):.",native:!0,order:-1},whiteSpace:{native:!0},top:{native:!0,unit:"rem"},bottom:{native:!0,unit:"rem"},left:{native:!0,unit:"rem"},right:{native:!0,unit:"rem"},inset:{native:!0,unit:"rem",order:-1},lines:{match:"^lines:.",declare(e,t){return{overflow:"hidden",display:"-webkit-box","overflow-wrap":"break-word","text-overflow":"ellipsis","-webkit-box-orient":"vertical","-webkit-line-clamp":e+t}}},maxHeight:{match:"^max-h:.",unit:"rem",native:!0,values:{full:"100%",fit:"fit-content",max:"max-content",min:"min-content","3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560}},maxWidth:{match:"^max-w:.",unit:"rem",native:!0,values:{full:"100%",fit:"fit-content",max:"max-content",min:"min-content","3xs":360,"2xs":480,xs:600,sm:768,md:1024,lg:1280,xl:1440,"2xl":1600,"3xl":1920,"4xl":2560}},boxSizing:{match:"^box:(?:$values)(?!\\|)",native:!0,values:{content:"content-box",border:"border-box"}},opacity:{native:!0},visibility:{native:!0},clear:{native:!0},float:{native:!0},isolation:{native:!0},overflowX:{native:!0,declare(e,t){return e==="overlay"?{"overflow-x":["auto",e]}:{"overflow-x":e}}},overflowY:{native:!0,declare(e,t){return e==="overlay"?{"overflow-y":["auto",e]}:{"overflow-y":e}}},overflow:{native:!0,order:-1,declare(e,t){return e==="overlay"?{overflow:["auto",e]}:{overflow:e}}},overscrollBehaviorX:{native:!0},overscrollBehaviorY:{native:!0},overscrollBehavior:{native:!0,order:-1},zIndex:{match:"^z:.",native:!0},position:{native:!0,values:{abs:"absolute",rel:"relative"}},cursor:{native:!0},pointerEvents:{native:!0},resize:{native:!0},touchAction:{native:!0},wordBreak:{native:!0},wordSpacing:{native:!0,unit:"em"},userDrag:{native:!0,declare(e,t){return{"user-drag":e+t,"-webkit-user-drag":e+t}}},userSelect:{native:!0,declare(e,t){return{"user-select":e+t,"-webkit-user-select":e+t}}},textShadow:{unit:"rem",native:!0,colored:!0,values:{current:"currentColor"}},textSize:{match:"^t(?:ext)?:(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",declare(e,t){return{"font-size":e+t,"line-height":t==="em"?e+.875+t:`calc(${e}${t} + ${.875}em)`}}},textFillColor:{native:!0,match:"^(?:text-fill|text|t):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",colored:!0,values:{current:"currentColor"},declare(e,t){return{"-webkit-text-fill-color":e+t}}},textStrokeWidth:{match:"^text-stroke(:(thin|medium|thick|\\.?[0-9]+|$values)(?!\\|)|-width:.)",unit:"rem",declare(e,t){return{"-webkit-text-stroke-width":e+t}}},textStrokeColor:{match:"^text-stroke:(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"},declare(e,t){return{"-webkit-text-stroke-color":e+t}}},textStroke:{unit:"rem",native:!0,declare(e,t){return{"-webkit-text-stroke":e+t}}},boxShadow:{match:"^s(?:hadow)?:.",unit:"rem",native:!0,colored:!0,values:{current:"currentColor"}},tableLayout:{native:!0},transformBox:{match:"^transform:(?:$values)(?!\\|)",native:!0,values:{content:"content-box",border:"border-box",padding:"padding-box",fill:"fill-box",stroke:"stroke-box",view:"view-box"}},transformStyle:{match:"^transform:(?:flat|preserve-3d|$values)(?!\\|)",native:!0},transformOrigin:{match:"^transform:(?:top|bottom|right|left|center|[0-9]|$values)",native:!0,unit:"px"},transform:{match:"^(?:translate|scale|skew|rotate|perspective|matrix)(?:3d|[XYZ])?\\(",native:!0,analyze(e){return[e.startsWith("transform")?e.slice(10):e]}},transitionProperty:{match:"^~property:.",native:!0},transitionTimingFunction:{match:"^~easing:.",native:!0},transitionDuration:{match:"^~duration:.",native:!0,unit:"ms"},transitionDelay:{match:"^~delay:.",native:!0,unit:"ms"},transition:{match:"^~[^!*>+~:[@_]+\\|",native:!0,analyze(e){if(e.startsWith("~"))return[e.slice(1)];{let t=e.indexOf(":");return this.prefix=e.slice(0,t+1),[e.slice(t+1)]}},order:-1},animationDelay:{match:"^@delay:.",native:!0,unit:"ms"},animationDirection:{match:"^@direction:.",native:!0,values:{alt:"alternate","alt-reverse":"alternate-reverse"}},animationDuration:{match:"^@duration:.",native:!0,unit:"ms"},animationFillMode:{match:"^@fill:.",native:!0},animationIterationCount:{match:"^@iteration:.",native:!0},animationName:{match:"^@name:.",native:!0},animationPlayState:{match:"^@play:.",native:!0},animationTimingFunction:{match:"^@easing:.",native:!0},animation:{match:"^@[^!*>+~:[@_]+\\|",native:!0,order:-1,analyze(e){if(e.startsWith("@"))return[e.slice(1)];{let t=e.indexOf(":");return this.prefix=e.slice(0,t+1),[e.slice(t+1)]}}},borderCollapse:{match:"^b(?:order)?:(?:collapse|separate|$values)(?!\\|)",native:!0},borderSpacing:{unit:"rem",native:!0},borderTopColor:{match:"^b(?:t|order-top(?:-color)?):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},borderBottomColor:{match:"^b(?:b|order-bottom(?:-color)?):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},borderLeftColor:{match:"^b(?:l|order-left(?:-color)?):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},borderRightColor:{match:"^b(?:r|order-right(?:-color)?):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},borderXColor:{match:"^b(?:x|order-x(?:-color)?):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",order:-.5,colored:!0,values:{current:"currentColor"},declare(e,t){return{"border-left-color":e+t,"border-right-color":e+t}}},borderYColor:{match:"^b(?:y|order-y(?:-color)?):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",order:-.5,colored:!0,values:{current:"currentColor"},declare(e,t){return{"border-top-color":e+t,"border-bottom-color":e+t}}},borderColor:{match:"^b(?:order)?(?:-color)?:(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,order:-1,colored:!0,values:{current:"currentColor"}},borderTopLeftRadius:{match:"^r(?:tl|lt):.",unit:"rem",native:!0},borderTopRightRadius:{match:"^r(?:tr|rt):.",unit:"rem",native:!0},borderBottomLeftRadius:{match:"^r(?:bl|lb):.",unit:"rem",native:!0},borderBottomRightRadius:{match:"^r(?:br|rb):.",unit:"rem",native:!0},borderTopRadius:{match:"^rt:.",unit:"rem",order:-.5,declare(e,t){return{"border-top-left-radius":e+t,"border-top-right-radius":e+t}}},borderBottomRadius:{match:"^rb:.",unit:"rem",order:-.5,declare(e,t){return{"border-bottom-left-radius":e+t,"border-bottom-right-radius":e+t}}},borderLeftRadius:{match:"^rl:.",unit:"rem",order:-.5,declare(e,t){return{"border-top-left-radius":e+t,"border-bottom-left-radius":e+t}}},borderRightRadius:{match:"^rr:.",unit:"rem",order:-.5,declare(e,t){return{"border-top-right-radius":e+t,"border-bottom-right-radius":e+t}}},borderRadius:{match:"^r:.",unit:"rem",native:!0,order:-1},borderTopStyle:{match:"^b(?:t|order-top(?:-style)?):(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",native:!0},borderBottomStyle:{match:"^b(?:b|order-bottom(?:-style)?):(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",native:!0},borderLeftStyle:{match:"^b(?:l|order-left(?:-style)?):(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",native:!0},borderRightStyle:{match:"^b(?:r|order-right(?:-style)?):(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",native:!0},borderXStyle:{match:"^b(?:x|order-x(?:-style)?):(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",order:-.5,declare(e,t){return{"border-left-style":e+t,"border-right-style":e+t}}},borderYStyle:{match:"^b(?:y|order-y(?:-style)?):(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",order:-.5,declare(e,t){return{"border-top-style":e+t,"border-bottom-style":e+t}}},borderStyle:{match:"^b(?:order)?(?:-style)?:(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",native:!0,order:-1},borderTopWidth:{match:"^b(?:t|order-top(?:-width)?):(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},borderBottomWidth:{match:"^b(?:b|order-bottom(?:-width)?):(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},borderLeftWidth:{match:"^b(?:l|order-left(?:-width)?):(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},borderRightWidth:{match:"^b(?:r|order-right(?:-width)?):(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},borderXWidth:{match:"^b(?:x|order-x(?:-width)?):(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",order:-.5,declare(e,t){return{"border-left-width":e+t,"border-right-width":e+t}}},borderYWidth:{match:"^b(?:y|order-y(?:-width)?):(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",order:-.5,declare(e,t){return{"border-top-width":e+t,"border-bottom-width":e+t}}},borderWidth:{match:"^b(?:order)?(?:-width)?:(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0,order:-1},borderImageOutset:{unit:"rem",native:!0},borderImageRepeat:{match:"^border-image:(?:stretch|repeat|round|space|$values)(?!\\|)",native:!0},borderImageSlice:{native:!0},borderImageSource:{match:"^border-image:(?:(?:url|linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient|conic-gradient)\\(.*\\)|$values)(?!\\|)",native:!0},borderImageWidth:{match:"^border-image:(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},borderImage:{native:!0,order:-1},borderTop:{match:"^bt:.",native:!0,unit:"rem",colored:!0,values:{current:"currentColor"}},borderBottom:{match:"^bb:.",native:!0,unit:"rem",colored:!0,values:{current:"currentColor"}},borderLeft:{match:"^bl:.",native:!0,unit:"rem",colored:!0,values:{current:"currentColor"}},borderRight:{match:"^br:.",native:!0,unit:"rem",colored:!0,values:{current:"currentColor"}},borderX:{match:"^(?:bx|border-x):.",unit:"rem",colored:!0,order:-.5,values:{current:"currentColor"},declare(e){return{"border-left":e,"border-right":e}}},borderY:{match:"^(?:by|border-y):.",unit:"rem",colored:!0,order:-.5,values:{current:"currentColor"},declare(e){return{"border-top":e,"border-bottom":e}}},border:{match:"^b:.",native:!0,unit:"rem",colored:!0,values:{current:"currentColor"},order:-2},backgroundAttachment:{match:"^(?:bg|background):(?:fixed|local|scroll|$values)(?!\\|)",native:!0},backgroundBlendMode:{native:!0},backgroundColor:{match:"^(?:bg|background):(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},backgroundClip:{match:"^(?:bg|background):(?:text|$values)(?!\\|)",native:!0,declare(e,t){return{"-webkit-background-clip":e+t,"background-clip":e+t}},values:{content:"content-box",border:"border-box",padding:"padding-box"}},backgroundOrigin:{match:"^(?:bg|background):(?:$values)(?!\\|)",native:!0,values:{content:"content-box",border:"border-box",padding:"padding-box"}},backgroundPosition:{match:"^(?:bg|background):(?:top|bottom|right|left|center|$values)(?!\\|)",native:!0,unit:"px"},backgroundRepeat:{match:"^(?:bg|background):(?:space|round|repeat|no-repeat|repeat-x|repeat-y|$values)(?![|a-zA-Z])",native:!0},backgroundSize:{match:"^(?:bg|background):(?:\\.?\\[0-9]+|auto|cover|contain|$values)(?!\\|)",unit:"rem",native:!0},backgroundImage:{match:"^(?:(?:bg|background):(?:(?:url|linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient|conic-gradient)\\(.*\\)|$values)|gradient\\(.*\\))(?!\\|)",native:!0,colored:!0,values:{current:"currentColor"},analyze(e){if(e.startsWith("gradient"))return["linear-"+e];let t=e.indexOf(":");return this.prefix=e.slice(0,t+1),[e.slice(t+1)]}},background:{match:"^bg:.",native:!0,colored:!0,values:{current:"currentColor"},order:-1},mixBlendMode:{match:"^blend:.",native:!0},backdropFilter:{match:"^bd:.",native:!0,colored:!0,values:{current:"currentColor"},declare(e,t){return{"backdrop-filter":e+t,"-webkit-backdrop-filter":e+t}}},filter:{match:"^(?:blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|opacity|saturate|sepia)\\(",native:!0,colored:!0,values:{current:"currentColor"}},fill:{match:"^fill:(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},strokeDasharray:{native:!0},strokeDashoffset:{native:!0},strokeWidth:{match:"^stroke:(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",native:!0},stroke:{native:!0,colored:!0,values:{current:"currentColor"}},x:{native:!0},y:{native:!0},cx:{native:!0},cy:{native:!0},rx:{native:!0},ry:{native:!0},gridColumnStart:{match:"^grid-col-start:.",native:!0},gridColumnEnd:{match:"^grid-col-end:.",native:!0},gridColumn:{match:"^grid-col(?:umn)?(?:-span)?:.",native:!0,order:-1,transform(e){return this.prefix.slice(-5,-1)==="span"&&e!=="auto"?"span "+e+"/span "+e:e}},gridColumns:{match:"^grid-cols:.",declare(e,t){return{display:"grid","grid-template-columns":"repeat("+e+t+",minmax(0,1fr))"}}},gridRowStart:{native:!0},gridRowEnd:{native:!0},gridRow:{match:"^grid-row-span:.",native:!0,order:-1,transform(e){return this.prefix.slice(-5,-1)==="span"&&e!=="auto"?"span "+e+"/span "+e:e}},gridRows:{match:"^grid-rows:.",declare(e,t){return{display:"grid","grid-auto-flow":"column","grid-template-rows":"repeat("+e+t+",minmax(0,1fr))"}}},gridAutoColumns:{match:"^grid-auto-cols:.",native:!0,values:{min:"min-content",max:"max-content"}},gridAutoFlow:{match:"^grid-flow:.",native:!0},gridAutoRows:{values:{min:"min-content",max:"max-content"},native:!0},gridTemplateAreas:{native:!0},gridTemplateColumns:{match:"^grid-template-cols:.",native:!0,unit:"rem",values:{min:"min-content",max:"max-content"}},gridTemplateRows:{native:!0,unit:"rem",values:{min:"min-content",max:"max-content"}},gridTemplate:{native:!0,order:-1},gridArea:{native:!0,order:-1},grid:{native:!0,order:-1},columnGap:{match:"^gap-x:.",unit:"rem",native:!0},rowGap:{match:"^gap-y:.",unit:"rem",native:!0},gap:{unit:"rem",native:!0,order:-1},order:{match:"^o:.",native:!0,values:{first:-999999,last:999999}},breakInside:{native:!0},breakBefore:{native:!0},breakAfter:{native:!0},boxDecorationBreak:{match:"^box:(?:slice|clone|$values)(?!\\|)",native:!0,declare(e,t){return{"box-decoration-break":e+t,"-webkit-box-decoration-break":e+t}}},aspectRatio:{match:"^aspect:.",native:!0},columnSpan:{match:"^col-span:.",native:!0},alignContent:{match:"^ac:.",native:!0},alignItems:{match:"^ai:.",native:!0},alignSelf:{match:"^as:",native:!0},justifyContent:{match:"^jc:.",native:!0},justifyItems:{match:"^ji:.",native:!0},justifySelf:{match:"^js:.",native:!0},placeContent:{native:!0,order:-1},placeItems:{native:!0,order:-1},placeSelf:{native:!0,order:-1},listStylePosition:{match:"^list-style:(?:inside|outside|$values)(?!\\|)",native:!0},listStyleType:{match:"^list-style:(?:disc|decimal|$values)(?!\\|)",native:!0},listStyleImage:{match:"^list-style:(?:(?:url|linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient|conic-gradient)\\(.*\\)|$values)(?!\\|)",native:!0},listStyle:{native:!0,order:-1},outlineColor:{match:"^outline:(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},outlineOffset:{unit:"rem",native:!0},outlineStyle:{match:"^outline:(?:none|dotted|dashed|solid|double|groove|ridge|inset|outset|$values)(?!\\|)",native:!0},outlineWidth:{match:"^outline:(?:\\.?[0-9]|medium|thick|thin|(max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},outline:{native:!0,unit:"rem",order:-1,colored:!0,values:{current:"currentColor"}},accentColor:{match:"^accent:(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},appearance:{native:!0},caretColor:{match:"^caret:(?:#|(?:rgb|hsl)\\(.*\\)|transparent|currentColor|inherit|$values|$colors)[^|]*$",native:!0,colored:!0,values:{current:"currentColor"}},scrollBehavior:{native:!0},scrollMarginLeft:{match:"^scroll-ml:.",native:!0,unit:"rem"},scrollMarginRight:{match:"^scroll-mr:.",native:!0,unit:"rem"},scrollMarginTop:{match:"^scroll-mt:.",native:!0,unit:"rem"},scrollMarginBottom:{match:"^scroll-mb:.",native:!0,unit:"rem"},scrollMarginX:{match:"^(?:scroll-margin-x|scroll-mx):.",unit:"rem",order:-.5,declare(e,t){return{"scroll-margin-left":e+t,"scroll-margin-right":e+t}}},scrollMarginY:{match:"^(?:scroll-margin-y|scroll-my):.",unit:"rem",order:-.5,declare(e,t){return{"scroll-margin-top":e+t,"scroll-margin-bottom":e+t}}},scrollMargin:{match:"^scroll-m:.",native:!0,unit:"rem",order:-1},scrollPaddingLeft:{match:"^scroll-pl:.",native:!0,unit:"rem"},scrollPaddingRight:{match:"^scroll-pr:.",native:!0,unit:"rem"},scrollPaddingTop:{match:"^scroll-pt:.",native:!0,unit:"rem"},scrollPaddingBottom:{match:"^scroll-pb:.",native:!0,unit:"rem"},scrollPaddingX:{match:"^(?:scroll-padding-x|scroll-px):.",unit:"rem",order:-.5,declare(e,t){return{"scroll-padding-left":e+t,"scroll-padding-right":e+t}}},scrollPaddingY:{match:"^(?:scroll-padding-y|scroll-py):.",unit:"rem",order:-.5,declare(e,t){return{"scroll-padding-top":e+t,"scroll-padding-bottom":e+t}}},scrollPadding:{match:"^scroll-p:.",native:!0,unit:"rem",order:-1},scrollSnapAlign:{match:"^scroll-snap:(?:start|end|center|$values)",native:!0},scrollSnapStop:{match:"^scroll-snap:(?:normal|always|$values)(?!\\|)",native:!0},scrollSnapType:{match:"^scroll-snap:(?:(?:[xy]|block|inline|both)(?:\\|(?:proximity|mandatory))?|$values)(?!\\|)",native:!0},willChange:{native:!0},writingMode:{match:"^writing:.",native:!0},direction:{native:!0},shapeOutside:{match:"^shape:(?:(?:inset|circle|ellipse|polygon|url|linear-gradient)\\(.*\\)|$values)(?!\\|)",native:!0,values:{content:"content-box",border:"border-box",padding:"padding-box",margin:"margin-box"}},shapeMargin:{match:"^shape:(?:\\.?[0-9]|(?:max|min|calc|clamp)\\(.*\\)|$values)[^|]*$",unit:"rem",native:!0},shapeImageThreshold:{native:!0},clipPath:{match:"^clip:.",native:!0,values:{content:"content-box",border:"border-box",padding:"padding-box",margin:"margin-box",fill:"fill-box",stroke:"stroke-box",view:"view-box"}},quotes:{native:!0},maskImage:{native:!0,declare(e,t){return{"mask-image":e+t,"-webkit-mask-image":e+t}}}},Te=Pe;var Me=!1;var Be=!1;var Oe={fade:{"0%":{opacity:0},to:{opacity:1}},flash:{"0%,50%,to":{opacity:1},"25%,75%":{opacity:0}},float:{"0%":{transform:"none"},"50%":{transform:"translateY(-1.25rem)"},to:{transform:"none"}},heart:{"0%":{transform:"scale(1)"},"14%":{transform:"scale(1.3)"},"28%":{transform:"scale(1)"},"42%":{transform:"scale(1.3)"},"70%":{transform:"scale(1)"}},jump:{"0%,to":{transform:"translateY(-25%)","animation-timing-function":"cubic-bezier(.8,0,1,1)"},"50%":{transform:"translateY(0)","animation-timing-function":"cubic-bezier(0,0,.2,1)"}},ping:{"75%,to":{transform:"scale(2)",opacity:0}},pulse:{"0%":{transform:"none"},"50%":{transform:"scale(1.05)"},to:{transform:"none"}},rotate:{"0%":{transform:"rotate(-360deg)"},to:{transform:"none"}},shake:{"0%":{transform:"none"},"6.5%":{transform:"translateX(-6px) rotateY(-9deg)"},"18.5%":{transform:"translateX(5px) rotateY(7deg)"},"31.5%":{transform:"translateX(-3px) rotateY(-5deg)"},"43.5%":{transform:"translateX(2px) rotateY(3deg)"},"50%":{transform:"none"}},zoom:{"0%":{transform:"scale(0)"},to:{transform:"none"}}};var je={$:{name:"var",transform(e){return"--"+e}},calc:{transform(e){let t=this.values,i=this.css.globalValues,o=this.css.config.functions,h=this,s=0,x="",f="";return function S(b,g){let l=!1,u=(d,m=!1,p=!1)=>{if(d!=="("&&(t&&f in t?f=t[f].toString():i&&f in i&&(f=i[f].toString())),f&&!l&&!g){let c=h.analyzeUnitValue(f,o.calc.unit);c&&(f=c.value+c.unit)}x+=f+(m&&e[s-1]!==" "?" ":"")+d+(p&&e[s+1]!==" "?" ":""),f="",l=!1};for(;s<e.length;s++){let d=e[s];if(d==="("){let m=f,p=l,c=x.length;if(u(d),s++,S(m,p||g),m!=="calc"){let n=o[m];if(n){let r=x.slice(c+2,x.length-1);x=x.slice(0,c-m.length+1)+(n.name??m)+"("+(n.transform?.(r)??r)+")"}}}else if(d===")"){u(d);break}else if(d===",")u(d,!1,!0);else if(d===" ")u(d);else{let m=e[s-1];switch(d){case"+":!f&&m!==")"?f+=d:u(d,!0,!0);break;case"-":b==="var"||!f&&m!==")"?f+=d:u(d,!0,!0);break;case"*":u(d,!0,!0);break;case"/":u(d,!0,!0),l=!0;break;default:f+=d;break}}}s>=e.length-1&&u("")}("",!1),x}},translate:{unit:"rem"},translateX:{unit:"rem"},translateY:{unit:"rem"},translateZ:{unit:"rem"},translate3d:{unit:"rem"},skew:{unit:"deg"},skewX:{unit:"deg"},skewY:{unit:"deg"},skewZ:{unit:"deg"},skew3d:{unit:"deg"},rotate:{unit:"deg"},rotateX:{unit:"deg"},rotateY:{unit:"deg"},rotateZ:{unit:"deg"},rotate3d:{unit:"deg"},blur:{unit:"rem"},"drop-shadow":{unit:"rem"},"hue-rotate":{unit:"deg"},rgb:{unit:""},rgba:{unit:""},hsl:{unit:""},hsla:{unit:""},repeat:{unit:""}};var Ee="class";var se={breakpoints:we,colors:Se,rootSize:16,scope:Ce,selectors:Re,semantics:$e,rules:Te,override:!1,important:!1,functions:je,keyframes:Oe,themeDriver:Ee};var Ie=[",",".","#","[","!","*",">","+","~",":","@"];var J=class e{constructor(t=se){this.config=t;if(!t?.override){let i=(o,h)=>{let s=h.extends?.length?Z({},h,...h.extends.map(f=>i(h,"config"in f?f.config:f))):h,x=Z(o,s);return Object.prototype.hasOwnProperty.call(s,"keyframes")&&Object.assign(x.keyframes,s.keyframes),x};this.config=i(se,t)}this.cache(),e.instances.push(this)}static root;static config=se;static instances=[];static refresh=t=>{for(let i of this.instances)i.refresh(t)};rules=[];ruleBy={};countBy={};observing=!1;observer;cache(){this.semantics=[],this.classes={},this.colorThemesMap={},this.classesBy={},this.themeNames=[""],this.selectors={},this.values={},this.globalValues={},this.breakpoints={},this.mediaQueries={},this.matches={},this.keyframes={};let{semantics:t,classes:i,selectors:o,colors:h,values:s,breakpoints:x,mediaQueries:f,rules:S}=this.config;function b(n){return n.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&")}function g(n,r,a="",v={}){let k=_=>_?(a?a+"-":"")+_:a,$=Object.entries(n),O=[],F=[];for(let _ of $){let Q=_[1];(typeof Q=="object"&&!Array.isArray(Q)?O:F).push(_)}for(let[_,Q]of O)g(Q,r,k(_),v);if(r&&a)F.length&&(v[a]=F.reduce((_,[Q,le])=>(_[Q]=le,_),{}));else for(let[_,Q]of F)v[k(_)]=Q;return v}function l(n){for(let[r,a]of Object.entries(n))/^[0-9]+x$/.test(r)&&typeof a=="number"&&(n["-"+r]=a*-1);return n}if(t)for(let[n,r]of Object.entries(g(t,!0)))this.semantics.push([new RegExp("^"+b(n)+"(?=!|\\*|>|\\+|~|:|\\[|@|_|\\.|$)","m"),[n,r]]);if(o)for(let[n,r]of Object.entries(g(o,!1))){let a=new RegExp(b(n)+"(?![a-z-])");for(let v of Array.isArray(r)?r:[r]){let k=v.match(/^::-[a-z]+-/m)?.[0]??"",$=this.selectors[k];$||($=this.selectors[k]=[]);let O=$.find(([F])=>F===a);O||(O=[a,[]],$.push(O)),O[1].push(v)}}s&&(this.globalValues=l(g(s,!1))),x&&(this.breakpoints=g(x,!1)),f&&(this.mediaQueries=g(f,!1));let u=i?g(i,!1):{},d=Object.keys(u),m=n=>{if(Object.prototype.hasOwnProperty.call(this.classes,n))return;let r=this.classes[n]=[],a=u[n];if(!a)return;let v=a.replace(/(?:\n(?:\s*))+/g," ").trim().split(" ");for(let k of v){let $=O=>{if(Object.prototype.hasOwnProperty.call(this.classesBy,O)){let F=this.classesBy[O];F.includes(n)||F.push(n)}else this.classesBy[O]=[n];r.includes(O)||r.push(O)};if(d.includes(k)){m(k);for(let O of this.classes[k])$(O)}else $(k)}};for(let n of d)m(n);let p=h?g(h,!0):{};for(let[n,r]of Object.entries(p)){let a=typeof r=="string"?{"":r}:r;for(let[v,k]of Object.entries(a)){let $=(O,F)=>{Object.prototype.hasOwnProperty.call(this.colorThemesMap,F)?this.colorThemesMap[F][O]=k:this.colorThemesMap[F]={[O]:k}};if(v.startsWith("@")){let O=v.slice(1);$(O,n),this.themeNames.includes(O)||this.themeNames.push(O)}else $("",n+(v?"-"+v:""))}}this.colorNames=h?Object.keys(h):[];let c=n=>{for(let[r,a]of Object.entries(this.colorThemesMap))for(let[v,k]of Object.entries(a))k.startsWith("#")||n(r,a,v,k)};if(c((n,r,a,v)=>{let k=/^rgba?\( *([0-9]{1,3}) *(?: |,) *([0-9]{1,3}) *(?: |,) *([0-9]{1,3}) *(?:(?:\/|,) *0?(\.[0-9]))?\)$/.exec(v);if(k){let $="#"+ce(+k[1],+k[2],+k[3]);k[4]&&($+=Math.round(255*+k[4]).toString(16)),r[a]=$}}),c((n,r,a,v)=>{let[k,$]=v.split("/"),O=this.colorThemesMap[k];if(O){let F=(a?O[a]:void 0)??O[""];r[a]=$?F.slice(0,7)+Math.round(255*+$).toString(16):F}else console.warn(`\`${v}\` doesn't exist in the extended config \`.colors\``),delete r[a],Object.keys(r).length||delete this.colorThemesMap[n]}),S)for(let n in S){let r=S[n],{native:a,values:v,colored:k}=r,$=r.match;if(r.id=n,r.native=a===!0?n.replace(/(?!^)[A-Z]/g,O=>"-"+O).toLowerCase():void 0,v&&(this.values[n]=l(g(v,!1))),$){let O=Object.keys(this.values[n]??{});$.includes("$values")&&($=O.length?$.replace(/\$values/,O.join("|")):$.replace(/(?:\|)?\$values/,"")),k&&$.includes("$colors")&&($=this.colorNames.length?$.replace(/\$colors/,"(?:"+this.colorNames.join("|")+")(?![0-9A-Za-z])"):$.replace(/(?:\|)?\$colors/,"")),this.matches[n]=new RegExp($)}}}observe(t,i={subtree:!0,childList:!0}){if(typeof window<"u"){if(t||(t=document),this.root===t)return this;this.root=t;let o=t===document;o&&(e.root=this),this.host=o?document.documentElement:this.root.host;let h=o?document.head:t,s=o?document.styleSheets:t.styleSheets;for(let f of s){let{ownerNode:S}=f;if(S&&S.id==="master"){this.style=S;break}}if(this.style)for(let f=0;f<this.style.sheet.cssRules.length;f++){let S=this.style.sheet.cssRules[f];if(S.constructor.name==="CSSKeyframesRule")continue;let b=l=>{if(l.selectorText){let d=l.selectorText.split(", ")[0].split(" ");for(let m=0;m<d.length;m++){let p=d[m];if(p[0]==="."){let c=p.slice(1),n="";for(let r=0;r<c.length;r++){let a=c[r],v=c[r+1];if(a==="\\"){if(r++,v!=="\\"){n+=v;continue}}else if(Ie.includes(a))break;n+=a}if(!Object.prototype.hasOwnProperty.call(this.ruleBy,n)&&!Object.prototype.hasOwnProperty.call(this.classes,n)){let r=this.create(n)[0];if(r)return r}}}}else if(l.cssRules)for(let u=0;u<l.cssRules.length;u++){let d=b(l.cssRules[u]);if(d)return d}},g=b(S);if(g){this.rules.push(g),this.ruleBy[g.className]=g;for(let l=0;l<g.natives.length;l++)g.natives[l].cssRule=this.style.sheet.cssRules[f+l];f+=g.natives.length-1,g.config.insert?.call(g)}}else this.style=document.createElement("style"),this.style.id="master",h.append(this.style);let x=f=>{f.forEach(S=>{Object.prototype.hasOwnProperty.call(this.countBy,S)?this.countBy[S]++:(this.countBy[S]=1,this.insert(S))})};x(this.host.classList),i.subtree&&this.host.querySelectorAll("[class]").forEach(f=>x(f.classList)),this.observer=new MutationObserver(f=>{let S={},b=[],g=[],l=[],u=(c,n)=>{n?c.classList.forEach(m):c.classList.forEach(d);let r=c.children;for(let a=0;a<r.length;a++){let v=r[a];v.classList&&(g.push(v),u(v,n))}},d=c=>{Object.prototype.hasOwnProperty.call(S,c)?S[c]++:S[c]=1},m=c=>{Object.prototype.hasOwnProperty.call(S,c)?S[c]--:Object.prototype.hasOwnProperty.call(this.countBy,c)&&(S[c]=-1)},p=(c,n)=>{for(let r=0;r<c.length;r++){let a=c[r];a.classList&&!g.includes(a)&&!l.includes(a)&&(a.isConnected!==n?(g.push(a),u(a,n)):l.push(a))}};for(let c=0;c<f.length;c++){let n=f[c],{addedNodes:r,removedNodes:a,type:v,target:k}=n;if(v==="attributes"){if(b.find($=>$.target===k))continue;b.push(n)}else p(r,!1),(!k.isConnected||!g.includes(k))&&p(a,!0)}if(!(!b.length&&!Object.keys(S).length)){for(let{oldValue:c,target:n}of b){let r=g.includes(n),a=n.classList,v=c?c.split(" "):[];if(r){if(n.isConnected)continue;for(let k of v)a.contains(k)||m(k)}else if(n.isConnected){a.forEach(k=>{v.includes(k)||d(k)});for(let k of v)a.contains(k)||m(k)}}for(let c in S){let n=S[c],r=(this.countBy[c]||0)+n;r===0?(delete this.countBy[c],this.delete(c)):(Object.prototype.hasOwnProperty.call(this.countBy,c)||this.insert(c),this.countBy[c]=r)}}}),this.observer.observe(t,{...i,attributes:!0,attributeOldValue:!0,attributeFilter:["class"]}),this.host.style.display=null,this.observing=!0}return this}disconnect(){this.observer&&(this.observer.disconnect(),this.observer=null),this.observing=!1,this.ruleBy={},this.countBy={},this.rules.length=0;let t=this.style?.sheet;if(t?.cssRules)for(let i=t.cssRules.length-1;i>=0;i--)t.deleteRule(i);this.style?.remove(),this.style=null,this.root=null}match(t){for(let i in this.config.rules){let o=this.config.rules[i],h=this.matches[i],{native:s}=o;if(h&&h.test(t))return{origin:"match",config:o};if(s&&t.startsWith(s+":"))return{origin:"match",config:o}}for(let i of this.semantics)if(t.match(i[0]))return{origin:"semantics",value:i[1]}}create(t){let i=o=>{if(Object.prototype.hasOwnProperty.call(this.ruleBy,o))return this.ruleBy[o];let h=this.match(o);if(h)return new ne(o,h,this)};return(Object.prototype.hasOwnProperty.call(this.classes,t)?this.classes[t].map(o=>i(o)):[i(t)]).filter(o=>o&&o.text)}refresh(t){if(t?.override?this.config=t:this.config=Z(se,t),this.cache(),!this.style)return;let i=document.createElement("style");i.id="master",this.style.replaceWith(i),this.style=i,this.rules.length=0,this.ruleBy={};for(let o in this.countBy)this.insert(o)}destroy(){let t=e.instances;this.disconnect(),t.splice(t.indexOf(this),1)}delete(t){let i=this.style?.sheet,o=h=>{let s=this.ruleBy[h];if(!(!s||Object.prototype.hasOwnProperty.call(this.classesBy,h)&&this.classesBy[h].some(x=>Object.prototype.hasOwnProperty.call(this.countBy,x)))){if(i&&s.natives.length){let x=s.natives[0];for(let f=0;f<i.cssRules.length;f++)if(i.cssRules[f]===x.cssRule){for(let b=0;b<s.natives.length;b++)i.deleteRule(f);break}}if(this.rules.splice(this.rules.indexOf(s),1),delete this.ruleBy[h],s.keyframeNames){let x=this.rules[0];for(let f of s.keyframeNames){let S=this.keyframes[f];if(!--S.count){let b=x.natives.indexOf(S.native);this.style.sheet.deleteRule(b),x.natives.splice(b,1),delete this.keyframes[f]}}x.natives.length||this.rules.splice(0,1)}s.config.delete?.call(s,h)}};if(Object.prototype.hasOwnProperty.call(this.classes,t)){for(let h of this.classes[t])Object.prototype.hasOwnProperty.call(this.countBy,h)||o(h);delete this.ruleBy[t]}else o(t)}insert(t){let i=this.create(t);return i.length?(this.insertRules(i),!0):!1}insertRules(t){for(let i of t){if(this.ruleBy[i.className])continue;let o,h=Object.keys(this.keyframes).length,s=this.rules.length-1,{media:x,order:f,priority:S,hasWhere:b,className:g}=i,l=(m,p,c)=>{let n=m;for(;n<=s;n++){let r=this.rules[n];if(p?.(r))return c?-1:n-1;if(c?.(r))return n}return c?-1:n-1},u,d;if(x){let m=this.rules.findIndex(p=>p.media);if(m===-1)o=s+1;else{let{"max-width":p,"min-width":c}=x.features;if(p||c){let n=this.rules.findIndex(r=>r.media?.features["max-width"]||r.media?.features["min-width"]);if(n===-1)o=s+1;else if(p&&c){if(S===-1?(u=l(n,r=>r.priority!==-1,r=>r.media.features["max-width"]&&r.media.features["min-width"]),d=l(n,r=>r.priority!==-1)):(u=l(n,void 0,r=>r.media.features["max-width"]&&r.media.features["min-width"]&&r.priority!==-1),d=s),u!==-1){let r=p.value-c.value,a=d,v=u;for(u=void 0;a>=v;a--){let{"max-width":k,"min-width":$}=this.rules[a].media.features,O=k.value-$.value;if(O<r)d=a-1;else if(O===r)u=a;else break}}if(u!==-1){let r=p.value-c.value;for(let a=d;a>=u;a--){let{"max-width":v,"min-width":k}=this.rules[a].media.features,$=v.value-k.value;if($<r)d=a-1;else if($>r){u=a+1;break}}}}else if(c){if(S===-1?(u=l(n,r=>r.media.features["max-width"]&&r.media.features["min-width"]||r.priority!==-1,r=>!r.media.features["max-width"]&&r.media.features["min-width"]),d=l(n,r=>r.media.features["max-width"]&&r.media.features["min-width"]||r.priority!==-1)):(u=l(n,r=>r.media.features["max-width"]&&r.media.features["min-width"]&&r.priority!==-1,r=>!r.media.features["max-width"]&&r.media.features["min-width"]&&r.priority!==-1),d=l(n,r=>r.media.features["max-width"]&&r.media.features["min-width"]&&r.priority!==-1)),u!==-1)for(let r=d;r>=u;r--){let a=this.rules[r].media.features["min-width"].value;if(a>c.value)d=r-1;else if(a<c.value){u=r+1;break}}}else if(S===-1?(u=l(n,r=>r.media.features["min-width"]||r.priority!==-1,r=>r.media.features["max-width"]),d=l(n,r=>r.media.features["min-width"]||r.priority!==-1)):(u=l(n,r=>r.media.features["min-width"]&&r.priority!==-1,r=>r.media.features["max-width"]&&r.priority!==-1),d=l(n,r=>r.media.features["min-width"]&&r.priority!==-1)),u!==-1)for(let r=d;r>=u;r--){let a=this.rules[r].media.features["max-width"].value;if(a<p.value)d=r-1;else if(a>p.value){u=r+1;break}}}else S===-1?(u=m,d=l(m,n=>n.media?.features["max-width"]||n.media?.features["min-width"]||n.priority!==-1)):(u=l(m,n=>n.media?.features["max-width"]||n.media?.features["min-width"],n=>n.priority!==-1),d=l(m,n=>n.media?.features["max-width"]||n.media?.features["min-width"]))}}else{let m=h?1:0;S===-1?(u=m,d=l(m,p=>p.media||p.priority!==-1)):(u=l(m,p=>p.media,p=>p.priority!==-1),d=l(m,p=>p.media))}if(o===void 0)if(u===-1)o=d+1;else{if(S===-1)for(let m=u;m<=d;m++){let p=this.rules[m];if(!(!b&&p.hasWhere)&&(b&&!p.hasWhere||p.order>=f)){o=m;break}}else for(let m=u;m<=d;m++){let p=this.rules[m];if(!(!b&&p.hasWhere)){if(b&&!p.hasWhere){o=m;break}if(p.priority<S){o=m;break}else if(p.priority===S){if(p.order>=f){o=m;break}}else o=m+1}}o===void 0&&(o=d+1)}if(this.rules.splice(o,0,i),this.ruleBy[g]=i,this.style){let m=this.style.sheet,p=0,c=n=>{let r=this.rules[n];if(r){if(!r.natives.length)return c(n-1);let a=r.natives[r.natives.length-1].cssRule;for(let v=0;v<m.cssRules.length;v++)if(m.cssRules[v]===a){p=v+1;break}}};c(o-1);for(let n=0;n<i.natives.length;)try{let r=i.natives[n];m.insertRule(r.text,p),r.cssRule=m.cssRules[p++],n++}catch(r){console.error(r),i.natives.splice(n,1)}}if(i.keyframeNames){let m=this.style?.sheet;for(let p of i.keyframeNames)if(Object.prototype.hasOwnProperty.call(this.keyframes,p))this.keyframes[p].count++;else{let c={text:`@keyframes ${p}{`+Object.entries(this.config.keyframes[p]).map(([r,a])=>`${r}{${Object.entries(a).map(([v,k])=>v+":"+k).join(";")}}`).join("")+"}",theme:""},n;if(Object.keys(this.keyframes).length?(n=this.rules[0]).natives.push(c):this.rules.splice(0,0,n={natives:[c],get text(){return this.natives.map(r=>r.text).join("")}}),m){let r;for(let a=0;a<m.cssRules.length;a++){let v=m.cssRules[a];if(v.constructor.name!=="CSSKeyframesRule")break;if(v.name===p){r=v;break}}if(r)c.cssRule=r;else{let a=n.natives.length-1;m.insertRule(c.text,a),c.cssRule=m.cssRules[a]}}this.keyframes[p]={native:c,count:1}}}i.config.insert?.call(i)}}get text(){return this.rules.map(t=>t.text).join("")}};typeof window<"u"&&(window.MasterCSS=J);var De=`/** @type {import('@master/css').Config} */
2
+ module.exports = {
3
+ classes: {},
4
+ colors: {},
5
+ themes: {},
6
+ rules: {},
7
+ values: {},
8
+ semantics: {},
9
+ breakpoints: {},
10
+ mediaQueries: {},
11
+ keyframes: {},
12
+ selectors: {},
13
+ functions: {}
14
+ }
15
+ `;var Ae=`/** @type {import('@master/css').Config} */
16
+ export default {
17
+ classes: {},
18
+ colors: {},
19
+ themes: {},
20
+ rules: {},
21
+ values: {},
22
+ semantics: {},
23
+ breakpoints: {},
24
+ mediaQueries: {},
25
+ keyframes: {},
26
+ selectors: {},
27
+ functions: {}
28
+ }
29
+ `;var Ye=`import type { Config } from '@master/css'
30
+
31
+ export default {
32
+ classes: {},
33
+ colors: {},
34
+ themes: {},
35
+ rules: {},
36
+ values: {},
37
+ semantics: {},
38
+ breakpoints: {},
39
+ mediaQueries: {},
40
+ keyframes: {},
41
+ selectors: {},
42
+ functions: {}
43
+ } as Config
44
+ `;function ue(e){if(!e)return;let t=/&(amp|#38|lt|#60|gt|#62|apos|#39|#x27|quot|#34);/g,i={amp:"&","#38":"&",lt:"<","#60":"<",gt:">","#62":">",apos:"'","#39":"'","#x27":"'",quot:'"',"#34":'"'};return e.split(/\sclass="([^"]*)"/gm).filter((o,h)=>h%2===1).map(o=>o.split(" ")).flat().map(o=>o.replace(t,(h,s)=>i[s]))}function de(e,t){if(!e.length)return;let i=new J(t);for(let o of e)i.insert(o);return i.text}function ae(e,t){if(!e)return;let i=ue(e);if(i.length)return de(i,t)}function Le(e,t){return new J(e).observe(t)}function Ne(e,t){if(!e)return;let i=!1;if(e=e.replace(/(<style id="master">).*?(<\/style>)/,(h,s,x)=>(i=!0,s+ae(e,t)+x)),i)return e;let o=`<style id="master">${ae(e,t)}</style>`;return e.replace(/<\/head>/,`${o}$&`)}export{Ae as CONFIG_ESM_TEXT,De as CONFIG_TEXT,Ye as CONFIG_TS_TEXT,J as MasterCSS,ne as Rule,we as breakpoints,Se as colors,se as config,J as default,Z as extend,ue as extractClassesFromHTML,z as fillColorScale,je as functions,de as generateFromClasses,ae as generateFromHTML,Be as important,Le as initRuntime,Oe as keyframes,Me as override,Ne as renderHTML,ke as rootSize,Te as rules,Ce as scope,Re as selectors,$e as semantics,Ee as themeDriver};
package/dist/index.d.ts CHANGED
@@ -1,21 +1,13 @@
1
- export { default } from './css';
2
- export { default as MasterCSSRule } from './rule';
3
- export { default as extend } from './apis/extend';
4
- export { default as render } from './apis/render';
5
- export { default as renderFromHTML } from './apis/render-from-html';
6
- export { default as renderIntoHTML } from './apis/render-into-html';
7
- export { default as fillColorScale } from './apis/fill-color-scale';
8
- export { default as defaultConfig } from './config';
9
- export { default as defaultBreakpoints } from './config/breakpoints';
10
- export { default as defaultColors } from './config/colors';
11
- export { default as defaultRootSize } from './config/root-size';
12
- export { default as defaultSelectors } from './config/selectors';
13
- export { default as defaultSemantics } from './config/semantics';
14
- export { default as defaultThemes } from './config/themes';
15
- export { default as defaultScheme } from './config/scheme';
16
- export { default as defaultValues } from './config/values';
17
- export { default as DefaultRules } from './config/rules';
18
- export declare const root: Document;
19
- export type { MasterCSSConfig } from './config';
20
- export type { MasterCSSDeclaration, MasterCSSMedia, MasterCSSMediaFeatureRule, MasterCSSRuleMatching } from './rule';
21
- export type { MasterCSSOptions } from './css';
1
+ export { MasterCSS, MasterCSS as default } from './core';
2
+ export { Rule, RuleConfig, RuleMeta, RuleNative, MediaFeatureRule, MediaQuery, PropValue, Declarations } from './rule';
3
+ export { CONFIG_TEXT } from './constants/config-text';
4
+ export { CONFIG_ESM_TEXT } from './constants/config-esm-text';
5
+ export { CONFIG_TS_TEXT } from './constants/config-ts-text';
6
+ export { default as extend } from '@techor/extend';
7
+ export { default as extractClassesFromHTML } from './functions/extract-classes-from-html';
8
+ export { default as fillColorScale } from './functions/fill-color-scale';
9
+ export { default as generateFromClasses } from './functions/generate-from-classes';
10
+ export { default as generateFromHTML } from './functions/generate-from-html';
11
+ export { default as initRuntime } from './functions/init-runtime';
12
+ export { default as renderHTML } from './functions/render-html';
13
+ export * from './config';
@@ -1 +0,0 @@
1
- declare const root: typeof globalThis;
package/dist/rule.d.ts CHANGED
@@ -1,65 +1,78 @@
1
- import MasterCSS from './css';
2
- import type { MasterCSSConfig } from './config';
3
- export default class MasterCSSRule {
1
+ import type { Values } from './config';
2
+ import type { MasterCSS } from './core';
3
+ export declare class Rule {
4
4
  readonly className: string;
5
- readonly matching: MasterCSSRuleMatching;
5
+ readonly meta: RuleMeta;
6
6
  css: MasterCSS;
7
- readonly prefix: string;
8
- readonly symbol: string;
9
- readonly token: string;
10
- readonly prefixSelectors: string[];
11
- readonly vendorSuffixSelectors: Record<string, string[]>;
12
- readonly important: boolean;
13
- readonly media: MasterCSSMedia;
14
7
  readonly at: Record<string, string>;
15
- readonly direction: string;
16
- readonly themeName: string;
17
- readonly unitToken: string;
18
- readonly hasWhere: boolean;
19
- readonly prioritySelectorIndex: number;
20
- readonly natives: {
8
+ readonly priority: number;
9
+ readonly natives: RuleNative[];
10
+ keyframeNames: string[];
11
+ config: RuleConfig;
12
+ constructor(className: string, meta: RuleMeta, css: MasterCSS);
13
+ get values(): Record<string, string | number>;
14
+ get text(): string;
15
+ resolveValue(value: any, unit: any): any;
16
+ analyzeUnitValue(token: string, unit?: string): {
17
+ value: string;
21
18
  unit: string;
22
- value: string | Record<string, string | number>;
23
- text: string;
24
- themeName: string;
25
- cssRule?: CSSRule;
26
- }[];
27
- static id: string;
28
- static propName: string;
29
- static matches: RegExp;
30
- static colorStarts: string;
31
- static symbol: string;
32
- static unit: string;
33
- static colorful: boolean;
34
- static match(name: string, colorNames: string[]): MasterCSSRuleMatching;
35
- constructor(className: string, matching: MasterCSSRuleMatching, css: MasterCSS);
19
+ };
20
+ }
21
+ export interface Rule {
22
+ prefix?: string;
23
+ token?: string;
24
+ prefixSelectors?: string[];
25
+ vendorSuffixSelectors?: Record<string, string[]>;
26
+ important?: boolean;
27
+ media?: MediaQuery;
28
+ direction?: string;
29
+ theme?: string;
30
+ unitToken?: string;
31
+ hasWhere?: boolean;
32
+ order?: number;
33
+ constructor: {
34
+ match?(name: string, matches: RegExp, colorThemesMap: Record<string, Record<string, string>>, colorNames: string[]): RuleMeta;
35
+ };
36
36
  }
37
- export default interface MasterCSSRule {
38
- readonly order?: number;
39
- parseValue(value: string, config: MasterCSSConfig): string;
40
- get(declaration: MasterCSSDeclaration): Record<string, any>;
41
- getThemeProps(declaration: MasterCSSDeclaration, css: MasterCSS): Record<string, Record<string, string>>;
37
+ export interface RuleNative {
38
+ text: string;
39
+ theme: string;
40
+ cssRule?: CSSRule;
42
41
  }
43
- export interface MasterCSSMediaFeatureRule {
42
+ export interface MediaFeatureRule {
44
43
  token: string;
45
44
  tokenType?: string;
46
45
  operator?: string;
47
46
  value?: number;
48
47
  unit?: string;
49
48
  }
50
- export interface MasterCSSMedia {
49
+ export interface MediaQuery {
51
50
  token: string;
52
51
  features?: {
53
- [key: string]: MasterCSSMediaFeatureRule;
52
+ [key: string]: MediaFeatureRule;
54
53
  };
55
54
  type?: string;
56
55
  }
57
- export interface MasterCSSDeclaration {
58
- value: any;
59
- unit: string;
60
- important: boolean;
56
+ export declare type PropValue = string | number;
57
+ export declare type Declarations = Record<string, PropValue | PropValue[] | Record<string, PropValue>>;
58
+ export interface RuleMeta {
59
+ origin?: 'match' | 'semantics';
60
+ value?: [string, string | Record<string, string>];
61
+ config?: RuleConfig;
61
62
  }
62
- export interface MasterCSSRuleMatching {
63
- origin: 'matches' | 'semantics' | 'symbol';
64
- value?: string;
63
+ export interface RuleConfig {
64
+ id?: string;
65
+ match?: string;
66
+ separators?: string[];
67
+ colored?: boolean;
68
+ unit?: any;
69
+ native?: string | true;
70
+ order?: number | ((this: Rule, prefix: string) => number);
71
+ values?: Values;
72
+ analyze?(this: Rule, className: string): [valueToken: string, prefixToken?: string];
73
+ transform?(this: Rule, value: string): string;
74
+ declare?(this: Rule, value: string, unit: string): Record<string, any>;
75
+ delete?(this: Rule, className: string): void;
76
+ create?(this: Rule, className: string): void;
77
+ insert?(this: Rule): void;
65
78
  }
@@ -1,4 +1,4 @@
1
- export declare type PlainObject = Record<string | number | symbol, any>;
1
+ export type PlainObject = Record<string | number | symbol, any>;
2
2
  /**
3
3
  * Returns whether the payload is a plain JavaScript object (excluding special classes or objects with other prototypes)
4
4
  *
@@ -0,0 +1,5 @@
1
+ export declare function parseRuleValue(token: string | number, defaultUnit?: string, colorNames?: string[], colorThemesMap?: Record<string, Record<string, string>>, rootSize?: number, themes?: string[]): {
2
+ value: string;
3
+ unit: string;
4
+ colorMatched?: boolean;
5
+ };
package/package.json CHANGED
@@ -1,162 +1 @@
1
- {
2
- "name": "@master/css",
3
- "license": "MIT",
4
- "description": "A Virtual CSS language with enhanced syntax. ( ~13KB )",
5
- "author": "Aoyue Design LLC.",
6
- "funding": "https://docs.master.co/css/donate",
7
- "homepage": "https://css.master.co",
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/master-co/css.git"
11
- },
12
- "keywords": [
13
- "style",
14
- "styles",
15
- "html",
16
- "variants",
17
- "virtual",
18
- "virtual-css",
19
- "utility",
20
- "css",
21
- "ui",
22
- "lightweight",
23
- "class",
24
- "webpack",
25
- "plugin",
26
- "integration",
27
- "vite",
28
- "parcel",
29
- "build-tools",
30
- "mastercss"
31
- ],
32
- "sideEffects": [
33
- "./src/polyfills/css-escape.ts"
34
- ],
35
- "scripts": {
36
- "build:iife": "esbuild src/index.browser.ts --bundle --outfile=dist/index.browser.js --format=iife",
37
- "build:cjs": "esbuild src/index.ts --bundle --outfile=dist/index.cjs --format=cjs --platform=node",
38
- "build:esm": "esbuild src/index.ts --bundle --outfile=dist/index.mjs --format=esm --platform=node",
39
- "build:css": "esbuild src/index.css --bundle --outfile=dist/index.css",
40
- "dev:iife": "npm run build:iife -- --watch",
41
- "dev:cjs": "npm run build:cjs -- --watch",
42
- "dev:esm": "npm run build:esm -- --watch",
43
- "prod": "rm -rf dist && npm run build:cjs -- --minify --sourcemap && npm run build:iife -- --minify --sourcemap && npm run build:esm -- --minify --sourcemap && tsc --emitDeclarationOnly",
44
- "test": "jest",
45
- "lint": "eslint ./src"
46
- },
47
- "main": "./dist/index.cjs",
48
- "jsnext:main": "./dist/index.mjs",
49
- "browser": "./dist/index.browser.js",
50
- "esnext": "./dist/index.mjs",
51
- "module": "./dist/index.mjs",
52
- "types": "./dist/index.d.ts",
53
- "exports": {
54
- ".": {
55
- "require": "./dist/index.cjs",
56
- "import": "./dist/index.mjs",
57
- "types": "./dist/index.d.ts"
58
- }
59
- },
60
- "jest": {
61
- "testEnvironment": "node",
62
- "transform": {
63
- "^.+\\.(t|j)sx?$": "@swc/jest"
64
- },
65
- "testMatch": [
66
- "<rootDir>/tests/*.ts",
67
- "<rootDir>/src/**/*.test.ts"
68
- ]
69
- },
70
- "private": false,
71
- "publishConfig": {
72
- "access": "public"
73
- },
74
- "engines": {
75
- "node": ">=14"
76
- },
77
- "release": {
78
- "plugins": [
79
- [
80
- "@semantic-release/commit-analyzer",
81
- {
82
- "preset": "angular",
83
- "releaseRules": [
84
- {
85
- "type": "docs",
86
- "scope": "README",
87
- "release": "patch"
88
- },
89
- {
90
- "type": "refactor",
91
- "release": "patch"
92
- },
93
- {
94
- "type": "style",
95
- "release": "patch"
96
- }
97
- ],
98
- "parserOpts": {
99
- "noteKeywords": [
100
- "BREAKING CHANGE",
101
- "BREAKING CHANGES"
102
- ]
103
- }
104
- }
105
- ],
106
- "@semantic-release/release-notes-generator",
107
- [
108
- "@semantic-release/exec",
109
- {
110
- "prepareCmd": "npm run prod"
111
- }
112
- ],
113
- [
114
- "@semantic-release/github",
115
- {
116
- "assets": [
117
- {
118
- "path": "dist/index.browser.js",
119
- "label": "master-css.min.js"
120
- }
121
- ]
122
- }
123
- ],
124
- [
125
- "@semantic-release/npm"
126
- ]
127
- ],
128
- "branches": [
129
- "+([0-9])?(.{+([0-9]),x}).x",
130
- "main",
131
- "next",
132
- "next-major",
133
- {
134
- "name": "beta",
135
- "prerelease": true
136
- },
137
- {
138
- "name": "alpha",
139
- "prerelease": true
140
- }
141
- ]
142
- },
143
- "files": [
144
- "dist"
145
- ],
146
- "devDependencies": {
147
- "@semantic-release/exec": "^6.0.3",
148
- "@swc/core": "^1.3.9",
149
- "@swc/jest": "^0.2.23",
150
- "@types/jest": "^29.2.0",
151
- "@types/node": "^18.11.0",
152
- "@typescript-eslint/eslint-plugin": "^5.40.1",
153
- "@typescript-eslint/parser": "^5.40.1",
154
- "esbuild": "^0.15.10",
155
- "eslint": "^8.25.0",
156
- "jest": "^29.2.2",
157
- "semantic-release": "^19.0.5",
158
- "typescript": "^4.8.4",
159
- "dedent": "^0.7.0"
160
- },
161
- "version": "2.0.0-beta.16"
162
- }
1
+ {"name":"@master/css","scripts":{"build":"techor pack --external @master/css-renderer @master/css-extractor","dev":"npm run build -- --watch","test":"jest","type-check":"tsc --noEmit","lint":"eslint src"},"license":"MIT","description":"A markup-driven CSS language with enhanced syntax","author":"Aoyue Design LLC.","funding":"https://docs.master.co/css/donate","homepage":"https://css.master.co","bugs":{"url":"https://github.com/master-co/css/issues"},"repository":{"type":"git","url":"https://github.com/master-co/css.git","directory":"packages/css"},"keywords":["style","styles","html","variants","virtual","virtual-css","utility","css","ui","lightweight","class","webpack","plugin","integration","vite","parcel","build-tools","mastercss"],"sideEffects":false,"main":"./dist/index.bundle.js","jsnext:main":"./dist/index.bundle.mjs","esnext":"./dist/index.bundle.mjs","module":"./dist/index.bundle.mjs","browser":"./dist/index.browser.bundle.js","types":"./dist/index.d.ts","exports":{".":{"browser":{"import":"./dist/index.bundle.mjs","types":"./dist/index.browser.d.ts"},"require":"./dist/index.bundle.js","import":"./dist/index.bundle.mjs","types":"./dist/index.d.ts"}},"files":["dist"],"bin":{"mcss":"./dist/bin/index.bundle.js","mastercss":"./dist/bin/index.bundle.js"},"publishConfig":{"access":"public"},"dependencies":{"@master/normal.css":"^2.0.0-beta.160","@techor/fs":"^2.4.1","@techor/log":"^2.4.1","commander":"^11.0.0"},"devDependencies":{"@techor/extend":"^2.4.1","shared":"","vite":"^4.2.1"},"version":"2.0.0-beta.160"}
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License
2
-
3
- Copyright (c) Aoyue Design LLC.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
@@ -1,5 +0,0 @@
1
- declare type ExpandDeep<T> = T extends Record<string | number | symbol, unknown> ? {
2
- [K in keyof T]: ExpandDeep<T[K]>;
3
- } : T extends Array<infer E> ? Array<ExpandDeep<E>> : T;
4
- export default function extend<T extends Record<string, any>>(object: T, ...otherObjects: any[]): ExpandDeep<any>;
5
- export {};
@@ -1,3 +0,0 @@
1
- import MasterCSS from '../css';
2
- import '../polyfills/css-escape';
3
- export default function renderFromHTML(html: string, css?: MasterCSS): string;
@@ -1,3 +0,0 @@
1
- import MasterCSS from '../css';
2
- import '../polyfills/css-escape';
3
- export default function renderIntoHTML(html: string, css?: MasterCSS): string;
@@ -1,3 +0,0 @@
1
- import MasterCSS from '../css';
2
- import '../polyfills/css-escape';
3
- export default function render(classes: string[], css?: MasterCSS): string;
@@ -1,7 +0,0 @@
1
- declare const defaultScheme: {
2
- storage: {
3
- sync: boolean;
4
- key: string;
5
- };
6
- };
7
- export default defaultScheme;
@@ -1,2 +0,0 @@
1
- declare const defaultThemes: string[];
2
- export default defaultThemes;