@tamagui/style-grammar 3.0.0-beta.924.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/dist/cjs/ast/payloadShape.cjs +45 -17
  2. package/dist/cjs/ast/payloadShape.native.cjs +45 -17
  3. package/dist/cjs/ast/payloadShape.native.js +45 -17
  4. package/dist/cjs/ast/payloadShape.native.js.map +1 -1
  5. package/dist/cjs/ast/resolvePayload.cjs +16 -9
  6. package/dist/cjs/ast/resolvePayload.native.cjs +16 -9
  7. package/dist/cjs/ast/resolvePayload.native.js +16 -9
  8. package/dist/cjs/ast/resolvePayload.native.js.map +1 -1
  9. package/dist/cjs/programs/lowerProgram.cjs +2 -2
  10. package/dist/cjs/programs/lowerProgram.native.cjs +2 -2
  11. package/dist/cjs/programs/lowerProgram.native.js +2 -2
  12. package/dist/cjs/programs/lowerProgram.native.js.map +1 -1
  13. package/dist/cjs/runtime/clauseIdentity.cjs +9 -28
  14. package/dist/cjs/runtime/clauseIdentity.native.cjs +9 -28
  15. package/dist/cjs/runtime/clauseIdentity.native.js +9 -28
  16. package/dist/cjs/runtime/clauseIdentity.native.js.map +1 -1
  17. package/dist/cjs/runtime/clausePrecedence.cjs +2 -2
  18. package/dist/cjs/runtime/clausePrecedence.native.cjs +3 -10
  19. package/dist/cjs/runtime/clausePrecedence.native.js +3 -10
  20. package/dist/cjs/runtime/clausePrecedence.native.js.map +1 -1
  21. package/dist/cjs/runtime/modifierVocabulary.native.cjs +1 -8
  22. package/dist/cjs/runtime/modifierVocabulary.native.js +1 -8
  23. package/dist/cjs/runtime/modifierVocabulary.native.js.map +1 -1
  24. package/dist/cjs/runtime/scanFlatValue.cjs +58 -7
  25. package/dist/cjs/runtime/scanFlatValue.native.cjs +58 -7
  26. package/dist/cjs/runtime/scanFlatValue.native.js +58 -7
  27. package/dist/cjs/runtime/scanFlatValue.native.js.map +1 -1
  28. package/dist/cjs/runtime/spring.cjs +123 -0
  29. package/dist/cjs/runtime/spring.native.cjs +131 -0
  30. package/dist/cjs/runtime/spring.native.js +133 -0
  31. package/dist/cjs/runtime/spring.native.js.map +1 -0
  32. package/dist/cjs/runtime/stateModifiers.cjs +23 -1
  33. package/dist/cjs/runtime/stateModifiers.native.cjs +23 -1
  34. package/dist/cjs/runtime/stateModifiers.native.js +23 -1
  35. package/dist/cjs/runtime/stateModifiers.native.js.map +1 -1
  36. package/dist/cjs/runtime/tokenCategories.cjs +3 -0
  37. package/dist/cjs/runtime/tokenCategories.native.cjs +3 -0
  38. package/dist/cjs/runtime/tokenCategories.native.js +3 -0
  39. package/dist/cjs/runtime/tokenCategories.native.js.map +1 -1
  40. package/dist/cjs/runtime/unitlessNumbers.cjs +0 -5
  41. package/dist/cjs/runtime/unitlessNumbers.native.cjs +0 -5
  42. package/dist/cjs/runtime/unitlessNumbers.native.js +0 -5
  43. package/dist/cjs/runtime/unitlessNumbers.native.js.map +1 -1
  44. package/dist/cjs/runtime.cjs +11 -0
  45. package/dist/cjs/runtime.native.cjs +11 -0
  46. package/dist/cjs/runtime.native.js +11 -0
  47. package/dist/cjs/runtime.native.js.map +1 -1
  48. package/dist/cjs/shorthands/transition.cjs +111 -36
  49. package/dist/cjs/shorthands/transition.native.cjs +113 -36
  50. package/dist/cjs/shorthands/transition.native.js +113 -36
  51. package/dist/cjs/shorthands/transition.native.js.map +1 -1
  52. package/dist/cjs/shorthands/transitionAlign.cjs +13 -10
  53. package/dist/cjs/shorthands/transitionAlign.native.cjs +14 -11
  54. package/dist/cjs/shorthands/transitionAlign.native.js +14 -11
  55. package/dist/cjs/shorthands/transitionAlign.native.js.map +1 -1
  56. package/dist/cjs/shorthands/transitionLegacy.cjs +263 -126
  57. package/dist/cjs/shorthands/transitionLegacy.native.cjs +333 -155
  58. package/dist/cjs/shorthands/transitionLegacy.native.js +333 -155
  59. package/dist/cjs/shorthands/transitionLegacy.native.js.map +1 -1
  60. package/dist/cjs/shorthands/transitionNative.cjs +5 -5
  61. package/dist/cjs/shorthands/transitionNative.native.cjs +8 -7
  62. package/dist/cjs/shorthands/transitionNative.native.js +8 -7
  63. package/dist/cjs/shorthands/transitionNative.native.js.map +1 -1
  64. package/dist/cjs/shorthands/transitionObject.cjs +302 -0
  65. package/dist/cjs/shorthands/transitionObject.native.cjs +347 -0
  66. package/dist/cjs/shorthands/transitionObject.native.js +349 -0
  67. package/dist/cjs/shorthands/transitionObject.native.js.map +1 -0
  68. package/dist/cjs/tooling/candidate.cjs +254 -15
  69. package/dist/cjs/tooling/candidate.native.cjs +314 -62
  70. package/dist/cjs/tooling/candidate.native.js +314 -62
  71. package/dist/cjs/tooling/candidate.native.js.map +1 -1
  72. package/dist/cjs/tooling/config.cjs +19 -9
  73. package/dist/cjs/tooling/config.native.cjs +25 -26
  74. package/dist/cjs/tooling/config.native.js +25 -26
  75. package/dist/cjs/tooling/config.native.js.map +1 -1
  76. package/dist/cjs/tooling/registry.cjs +579 -11
  77. package/dist/cjs/tooling/registry.native.cjs +579 -11
  78. package/dist/cjs/tooling/registry.native.js +579 -11
  79. package/dist/cjs/tooling/registry.native.js.map +1 -1
  80. package/dist/cjs/tooling/toolingDiagnostics.cjs +306 -10
  81. package/dist/cjs/tooling/toolingDiagnostics.native.cjs +408 -48
  82. package/dist/cjs/tooling/toolingDiagnostics.native.js +408 -48
  83. package/dist/cjs/tooling/toolingDiagnostics.native.js.map +1 -1
  84. package/dist/cjs/tooling/toolingRegistry.cjs +6 -1
  85. package/dist/cjs/tooling/toolingRegistry.native.cjs +9 -1
  86. package/dist/cjs/tooling/toolingRegistry.native.js +9 -1
  87. package/dist/cjs/tooling/toolingRegistry.native.js.map +1 -1
  88. package/dist/cjs/tooling.cjs +1 -0
  89. package/dist/cjs/tooling.native.cjs +1 -0
  90. package/dist/cjs/tooling.native.js +1 -0
  91. package/dist/cjs/tooling.native.js.map +1 -1
  92. package/dist/cjs/transitions.cjs +38 -0
  93. package/dist/cjs/transitions.native.cjs +40 -0
  94. package/dist/cjs/transitions.native.js +42 -0
  95. package/dist/cjs/transitions.native.js.map +1 -0
  96. package/dist/esm/ast/payloadShape.mjs +45 -17
  97. package/dist/esm/ast/payloadShape.mjs.map +1 -1
  98. package/dist/esm/ast/payloadShape.native.js +45 -17
  99. package/dist/esm/ast/payloadShape.native.js.map +1 -1
  100. package/dist/esm/ast/resolvePayload.mjs +16 -9
  101. package/dist/esm/ast/resolvePayload.mjs.map +1 -1
  102. package/dist/esm/ast/resolvePayload.native.js +16 -9
  103. package/dist/esm/ast/resolvePayload.native.js.map +1 -1
  104. package/dist/esm/programs/lowerProgram.mjs +2 -2
  105. package/dist/esm/programs/lowerProgram.mjs.map +1 -1
  106. package/dist/esm/programs/lowerProgram.native.js +2 -2
  107. package/dist/esm/programs/lowerProgram.native.js.map +1 -1
  108. package/dist/esm/runtime/clauseIdentity.mjs +2 -22
  109. package/dist/esm/runtime/clauseIdentity.mjs.map +1 -1
  110. package/dist/esm/runtime/clauseIdentity.native.js +2 -22
  111. package/dist/esm/runtime/clauseIdentity.native.js.map +1 -1
  112. package/dist/esm/runtime/clausePrecedence.mjs +2 -2
  113. package/dist/esm/runtime/clausePrecedence.mjs.map +1 -1
  114. package/dist/esm/runtime/clausePrecedence.native.js +3 -10
  115. package/dist/esm/runtime/clausePrecedence.native.js.map +1 -1
  116. package/dist/esm/runtime/modifierVocabulary.native.js +1 -8
  117. package/dist/esm/runtime/modifierVocabulary.native.js.map +1 -1
  118. package/dist/esm/runtime/scanFlatValue.mjs +59 -7
  119. package/dist/esm/runtime/scanFlatValue.mjs.map +1 -1
  120. package/dist/esm/runtime/scanFlatValue.native.js +59 -7
  121. package/dist/esm/runtime/scanFlatValue.native.js.map +1 -1
  122. package/dist/esm/runtime/spring.mjs +93 -0
  123. package/dist/esm/runtime/spring.mjs.map +1 -0
  124. package/dist/esm/runtime/spring.native.js +99 -0
  125. package/dist/esm/runtime/spring.native.js.map +1 -0
  126. package/dist/esm/runtime/stateModifiers.mjs +22 -2
  127. package/dist/esm/runtime/stateModifiers.mjs.map +1 -1
  128. package/dist/esm/runtime/stateModifiers.native.js +22 -2
  129. package/dist/esm/runtime/stateModifiers.native.js.map +1 -1
  130. package/dist/esm/runtime/tokenCategories.mjs +3 -0
  131. package/dist/esm/runtime/tokenCategories.mjs.map +1 -1
  132. package/dist/esm/runtime/tokenCategories.native.js +3 -0
  133. package/dist/esm/runtime/tokenCategories.native.js.map +1 -1
  134. package/dist/esm/runtime/unitlessNumbers.mjs +0 -5
  135. package/dist/esm/runtime/unitlessNumbers.mjs.map +1 -1
  136. package/dist/esm/runtime/unitlessNumbers.native.js +0 -5
  137. package/dist/esm/runtime/unitlessNumbers.native.js.map +1 -1
  138. package/dist/esm/runtime.mjs +4 -2
  139. package/dist/esm/runtime.native.js +4 -2
  140. package/dist/esm/shorthands/transition.mjs +111 -36
  141. package/dist/esm/shorthands/transition.mjs.map +1 -1
  142. package/dist/esm/shorthands/transition.native.js +113 -36
  143. package/dist/esm/shorthands/transition.native.js.map +1 -1
  144. package/dist/esm/shorthands/transitionAlign.mjs +13 -10
  145. package/dist/esm/shorthands/transitionAlign.mjs.map +1 -1
  146. package/dist/esm/shorthands/transitionAlign.native.js +14 -11
  147. package/dist/esm/shorthands/transitionAlign.native.js.map +1 -1
  148. package/dist/esm/shorthands/transitionLegacy.mjs +260 -126
  149. package/dist/esm/shorthands/transitionLegacy.mjs.map +1 -1
  150. package/dist/esm/shorthands/transitionLegacy.native.js +330 -155
  151. package/dist/esm/shorthands/transitionLegacy.native.js.map +1 -1
  152. package/dist/esm/shorthands/transitionNative.mjs +5 -5
  153. package/dist/esm/shorthands/transitionNative.mjs.map +1 -1
  154. package/dist/esm/shorthands/transitionNative.native.js +8 -7
  155. package/dist/esm/shorthands/transitionNative.native.js.map +1 -1
  156. package/dist/esm/shorthands/transitionObject.mjs +280 -0
  157. package/dist/esm/shorthands/transitionObject.mjs.map +1 -0
  158. package/dist/esm/shorthands/transitionObject.native.js +323 -0
  159. package/dist/esm/shorthands/transitionObject.native.js.map +1 -0
  160. package/dist/esm/tooling/candidate.mjs +250 -16
  161. package/dist/esm/tooling/candidate.mjs.map +1 -1
  162. package/dist/esm/tooling/candidate.native.js +310 -63
  163. package/dist/esm/tooling/candidate.native.js.map +1 -1
  164. package/dist/esm/tooling/config.mjs +18 -9
  165. package/dist/esm/tooling/config.mjs.map +1 -1
  166. package/dist/esm/tooling/config.native.js +24 -26
  167. package/dist/esm/tooling/config.native.js.map +1 -1
  168. package/dist/esm/tooling/registry.mjs +579 -11
  169. package/dist/esm/tooling/registry.mjs.map +1 -1
  170. package/dist/esm/tooling/registry.native.js +579 -11
  171. package/dist/esm/tooling/registry.native.js.map +1 -1
  172. package/dist/esm/tooling/toolingDiagnostics.mjs +306 -11
  173. package/dist/esm/tooling/toolingDiagnostics.mjs.map +1 -1
  174. package/dist/esm/tooling/toolingDiagnostics.native.js +408 -49
  175. package/dist/esm/tooling/toolingDiagnostics.native.js.map +1 -1
  176. package/dist/esm/tooling/toolingRegistry.mjs +6 -1
  177. package/dist/esm/tooling/toolingRegistry.mjs.map +1 -1
  178. package/dist/esm/tooling/toolingRegistry.native.js +9 -1
  179. package/dist/esm/tooling/toolingRegistry.native.js.map +1 -1
  180. package/dist/esm/tooling.mjs +2 -0
  181. package/dist/esm/tooling.native.js +2 -0
  182. package/dist/esm/transitions.mjs +5 -0
  183. package/dist/esm/transitions.native.js +5 -0
  184. package/package.json +13 -3
  185. package/src/ast/payloadShape.ts +44 -16
  186. package/src/ast/resolvePayload.ts +28 -13
  187. package/src/programs/lowerProgram.ts +9 -4
  188. package/src/runtime/clauseIdentity.ts +8 -31
  189. package/src/runtime/clausePrecedence.ts +2 -10
  190. package/src/runtime/scanFlatValue.ts +81 -9
  191. package/src/runtime/spring.ts +208 -0
  192. package/src/runtime/stateModifiers.ts +31 -1
  193. package/src/runtime/tokenCategories.ts +3 -0
  194. package/src/runtime/unitlessNumbers.ts +0 -5
  195. package/src/runtime.ts +13 -0
  196. package/src/shorthands/transition.ts +159 -44
  197. package/src/shorthands/transitionAlign.ts +22 -12
  198. package/src/shorthands/transitionLegacy.ts +376 -156
  199. package/src/shorthands/transitionNative.ts +8 -11
  200. package/src/shorthands/transitionObject.ts +369 -0
  201. package/src/tooling/candidate.ts +269 -14
  202. package/src/tooling/config.ts +25 -9
  203. package/src/tooling/registry.ts +339 -12
  204. package/src/tooling/toolingDiagnostics.ts +474 -9
  205. package/src/tooling/toolingRegistry.ts +6 -1
  206. package/src/tooling.ts +1 -0
  207. package/src/transitions.ts +42 -0
  208. package/types/ast/payloadShape.d.ts.map +2 -2
  209. package/types/ast/resolvePayload.d.ts +5 -4
  210. package/types/ast/resolvePayload.d.ts.map +2 -2
  211. package/types/programs/lowerProgram.d.ts +4 -2
  212. package/types/programs/lowerProgram.d.ts.map +2 -2
  213. package/types/runtime/clauseIdentity.d.ts +1 -4
  214. package/types/runtime/clauseIdentity.d.ts.map +2 -2
  215. package/types/runtime/clausePrecedence.d.ts.map +2 -2
  216. package/types/runtime/scanFlatValue.d.ts +1 -1
  217. package/types/runtime/scanFlatValue.d.ts.map +2 -2
  218. package/types/runtime/spring.d.ts +61 -0
  219. package/types/runtime/spring.d.ts.map +11 -0
  220. package/types/runtime/stateModifiers.d.ts +4 -0
  221. package/types/runtime/stateModifiers.d.ts.map +2 -2
  222. package/types/runtime/tokenCategories.d.ts.map +2 -2
  223. package/types/runtime/unitlessNumbers.d.ts.map +2 -2
  224. package/types/runtime.d.ts +3 -1
  225. package/types/runtime.d.ts.map +2 -2
  226. package/types/shorthands/transition.d.ts +26 -5
  227. package/types/shorthands/transition.d.ts.map +2 -2
  228. package/types/shorthands/transitionAlign.d.ts.map +2 -2
  229. package/types/shorthands/transitionLegacy.d.ts +19 -4
  230. package/types/shorthands/transitionLegacy.d.ts.map +2 -2
  231. package/types/shorthands/transitionNative.d.ts.map +1 -1
  232. package/types/shorthands/transitionObject.d.ts +49 -0
  233. package/types/shorthands/transitionObject.d.ts.map +11 -0
  234. package/types/tooling/candidate.d.ts +13 -0
  235. package/types/tooling/candidate.d.ts.map +2 -2
  236. package/types/tooling/config.d.ts +8 -1
  237. package/types/tooling/config.d.ts.map +2 -2
  238. package/types/tooling/registry.d.ts +4 -2
  239. package/types/tooling/registry.d.ts.map +2 -2
  240. package/types/tooling/toolingDiagnostics.d.ts +3 -1
  241. package/types/tooling/toolingDiagnostics.d.ts.map +2 -2
  242. package/types/tooling/toolingRegistry.d.ts.map +2 -2
  243. package/types/tooling.d.ts +1 -0
  244. package/types/tooling.d.ts.map +2 -2
  245. package/types/transitions.d.ts +5 -0
  246. package/types/transitions.d.ts.map +11 -0
@@ -23,37 +23,65 @@ __export(payloadShape_exports, { validatePayloadShape: () => validatePayloadShap
23
23
  module.exports = __toCommonJS(payloadShape_exports);
24
24
  var import_backgroundFamily = require("../shorthands/backgroundFamily.cjs");
25
25
  const listValuedLonghands = /* @__PURE__ */ new Set([
26
- "boxShadow",
27
- "textShadow",
28
- "transform",
29
- "transition",
30
- "transitionProperty",
26
+ "aspectRatio",
31
27
  "animation",
32
28
  "animationName",
29
+ "backdropFilter",
33
30
  "backgroundImage",
34
31
  "backgroundPosition",
35
- "backgroundSize",
32
+ "backgroundPositionX",
33
+ "backgroundPositionY",
36
34
  "backgroundRepeat",
35
+ "backgroundSize",
36
+ "borderSpacing",
37
+ "boxShadow",
38
+ "clipPath",
39
+ "containIntrinsicSize",
40
+ "filter",
41
+ "flex",
42
+ "flexFlow",
37
43
  "fontFamily",
44
+ "fontFeatureSettings",
38
45
  "fontVariant",
39
- "filter",
40
- "backdropFilter",
41
- "willChange",
42
- "quotes",
43
- "textDecorationLine",
44
- "containIntrinsicSize",
45
- "strokeDasharray",
46
- "gridTemplateColumns",
47
- "gridTemplateRows",
48
- "gridTemplateAreas",
46
+ "fontVariationSettings",
47
+ "gap",
49
48
  "gridArea",
50
49
  "gridColumn",
51
50
  "gridRow",
51
+ "gridTemplateAreas",
52
+ "gridTemplateColumns",
53
+ "gridTemplateRows",
52
54
  "inset",
53
55
  "mask",
56
+ "maskBorder",
57
+ "maskBorderOutset",
58
+ "maskBorderRepeat",
59
+ "maskBorderSlice",
60
+ "maskBorderWidth",
54
61
  "maskImage",
55
62
  "maskPosition",
56
- "maskSize"
63
+ "maskRepeat",
64
+ "maskSize",
65
+ "objectPosition",
66
+ "overscrollBehavior",
67
+ "paintOrder",
68
+ "perspectiveOrigin",
69
+ "placeContent",
70
+ "placeItems",
71
+ "placeSelf",
72
+ "quotes",
73
+ "scrollSnapAlign",
74
+ "strokeDasharray",
75
+ "textDecorationLine",
76
+ "textEmphasis",
77
+ "textEmphasisPosition",
78
+ "textShadow",
79
+ "touchAction",
80
+ "transform",
81
+ "transformOrigin",
82
+ "transition",
83
+ "transitionProperty",
84
+ "willChange"
57
85
  ]);
58
86
  function validatePayloadShape(property, payload, hasBase) {
59
87
  if (listValuedLonghands.has(property)) return null;
@@ -25,37 +25,65 @@ __export(payloadShape_exports, { validatePayloadShape: () => validatePayloadShap
25
25
  module.exports = __toCommonJS(payloadShape_exports);
26
26
  var import_backgroundFamily = require("../shorthands/backgroundFamily.native.js");
27
27
  var listValuedLonghands = /* @__PURE__ */ new Set([
28
- "boxShadow",
29
- "textShadow",
30
- "transform",
31
- "transition",
32
- "transitionProperty",
28
+ "aspectRatio",
33
29
  "animation",
34
30
  "animationName",
31
+ "backdropFilter",
35
32
  "backgroundImage",
36
33
  "backgroundPosition",
37
- "backgroundSize",
34
+ "backgroundPositionX",
35
+ "backgroundPositionY",
38
36
  "backgroundRepeat",
37
+ "backgroundSize",
38
+ "borderSpacing",
39
+ "boxShadow",
40
+ "clipPath",
41
+ "containIntrinsicSize",
42
+ "filter",
43
+ "flex",
44
+ "flexFlow",
39
45
  "fontFamily",
46
+ "fontFeatureSettings",
40
47
  "fontVariant",
41
- "filter",
42
- "backdropFilter",
43
- "willChange",
44
- "quotes",
45
- "textDecorationLine",
46
- "containIntrinsicSize",
47
- "strokeDasharray",
48
- "gridTemplateColumns",
49
- "gridTemplateRows",
50
- "gridTemplateAreas",
48
+ "fontVariationSettings",
49
+ "gap",
51
50
  "gridArea",
52
51
  "gridColumn",
53
52
  "gridRow",
53
+ "gridTemplateAreas",
54
+ "gridTemplateColumns",
55
+ "gridTemplateRows",
54
56
  "inset",
55
57
  "mask",
58
+ "maskBorder",
59
+ "maskBorderOutset",
60
+ "maskBorderRepeat",
61
+ "maskBorderSlice",
62
+ "maskBorderWidth",
56
63
  "maskImage",
57
64
  "maskPosition",
58
- "maskSize"
65
+ "maskRepeat",
66
+ "maskSize",
67
+ "objectPosition",
68
+ "overscrollBehavior",
69
+ "paintOrder",
70
+ "perspectiveOrigin",
71
+ "placeContent",
72
+ "placeItems",
73
+ "placeSelf",
74
+ "quotes",
75
+ "scrollSnapAlign",
76
+ "strokeDasharray",
77
+ "textDecorationLine",
78
+ "textEmphasis",
79
+ "textEmphasisPosition",
80
+ "textShadow",
81
+ "touchAction",
82
+ "transform",
83
+ "transformOrigin",
84
+ "transition",
85
+ "transitionProperty",
86
+ "willChange"
59
87
  ]);
60
88
  function validatePayloadShape(property, payload, hasBase) {
61
89
  if (listValuedLonghands.has(property)) return null;
@@ -25,37 +25,65 @@ __export(payloadShape_exports, { validatePayloadShape: () => validatePayloadShap
25
25
  module.exports = __toCommonJS(payloadShape_exports);
26
26
  var import_backgroundFamily = require("../shorthands/backgroundFamily.native.js");
27
27
  var listValuedLonghands = /* @__PURE__ */ new Set([
28
- "boxShadow",
29
- "textShadow",
30
- "transform",
31
- "transition",
32
- "transitionProperty",
28
+ "aspectRatio",
33
29
  "animation",
34
30
  "animationName",
31
+ "backdropFilter",
35
32
  "backgroundImage",
36
33
  "backgroundPosition",
37
- "backgroundSize",
34
+ "backgroundPositionX",
35
+ "backgroundPositionY",
38
36
  "backgroundRepeat",
37
+ "backgroundSize",
38
+ "borderSpacing",
39
+ "boxShadow",
40
+ "clipPath",
41
+ "containIntrinsicSize",
42
+ "filter",
43
+ "flex",
44
+ "flexFlow",
39
45
  "fontFamily",
46
+ "fontFeatureSettings",
40
47
  "fontVariant",
41
- "filter",
42
- "backdropFilter",
43
- "willChange",
44
- "quotes",
45
- "textDecorationLine",
46
- "containIntrinsicSize",
47
- "strokeDasharray",
48
- "gridTemplateColumns",
49
- "gridTemplateRows",
50
- "gridTemplateAreas",
48
+ "fontVariationSettings",
49
+ "gap",
51
50
  "gridArea",
52
51
  "gridColumn",
53
52
  "gridRow",
53
+ "gridTemplateAreas",
54
+ "gridTemplateColumns",
55
+ "gridTemplateRows",
54
56
  "inset",
55
57
  "mask",
58
+ "maskBorder",
59
+ "maskBorderOutset",
60
+ "maskBorderRepeat",
61
+ "maskBorderSlice",
62
+ "maskBorderWidth",
56
63
  "maskImage",
57
64
  "maskPosition",
58
- "maskSize"
65
+ "maskRepeat",
66
+ "maskSize",
67
+ "objectPosition",
68
+ "overscrollBehavior",
69
+ "paintOrder",
70
+ "perspectiveOrigin",
71
+ "placeContent",
72
+ "placeItems",
73
+ "placeSelf",
74
+ "quotes",
75
+ "scrollSnapAlign",
76
+ "strokeDasharray",
77
+ "textDecorationLine",
78
+ "textEmphasis",
79
+ "textEmphasisPosition",
80
+ "textShadow",
81
+ "touchAction",
82
+ "transform",
83
+ "transformOrigin",
84
+ "transition",
85
+ "transitionProperty",
86
+ "willChange"
59
87
  ]);
60
88
  function validatePayloadShape(property, payload, hasBase) {
61
89
  if (listValuedLonghands.has(property)) return null;
@@ -1 +1 @@
1
- {"version":3,"file":"payloadShape.native.js","names":[],"sources":["cjs/ast/payloadShape.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar payloadShape_exports = {};\n__export(payloadShape_exports, {\n validatePayloadShape: () => validatePayloadShape\n});\nmodule.exports = __toCommonJS(payloadShape_exports);\nvar import_backgroundFamily = require(\"../shorthands/backgroundFamily\");\nvar listValuedLonghands = /* @__PURE__ */ new Set([\n \"boxShadow\",\n \"textShadow\",\n \"transform\",\n \"transition\",\n \"transitionProperty\",\n \"animation\",\n \"animationName\",\n \"backgroundImage\",\n \"backgroundPosition\",\n \"backgroundSize\",\n \"backgroundRepeat\",\n \"fontFamily\",\n \"fontVariant\",\n \"filter\",\n \"backdropFilter\",\n \"willChange\",\n \"quotes\",\n \"textDecorationLine\",\n \"containIntrinsicSize\",\n \"strokeDasharray\",\n \"gridTemplateColumns\",\n \"gridTemplateRows\",\n \"gridTemplateAreas\",\n \"gridArea\",\n \"gridColumn\",\n \"gridRow\",\n \"inset\",\n \"mask\",\n \"maskImage\",\n \"maskPosition\",\n \"maskSize\"\n]);\nfunction validatePayloadShape(property, payload, hasBase) {\n if (listValuedLonghands.has(property)) return null;\n var components = (0, import_backgroundFamily.splitTopLevelComponents)(payload);\n if (components.length <= 1) return null;\n return {\n code: \"multi-component-single-value\",\n property,\n payload,\n message: `\"${payload}\" holds ${components.length} values but \"${property}\" takes one.` + (hasBase ? \"\" : ` A value written after a conditional joins that conditional's payload \\u2014 write the base value before the first conditional.`)\n };\n}\n//# sourceMappingURL=payloadShape.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,uBAAuB,CAAC;AAC5B,SAAS,sBAAsB,EAC7B,4BAA4B,qBAC9B,CAAC;AACD,OAAO,UAAU,aAAa,oBAAoB;AAClD,IAAI,0BAA0B,QAAQ,0CAAgC;AACtE,IAAI,sCAAsC,IAAI,IAAI;CAChD;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AACD,SAAS,qBAAqB,UAAU,SAAS,SAAS;CACxD,IAAI,oBAAoB,IAAI,QAAQ,GAAG,OAAO;CAC9C,IAAI,cAAc,GAAG,wBAAwB,wBAAuB,CAAE,OAAO;CAC7E,IAAI,WAAW,UAAU,GAAG,OAAO;CACnC,OAAO;EACL,MAAM;EACN;EACA;EACA,SAAS,IAAI,QAAQ,UAAU,WAAW,OAAO,eAAe,SAAS,iBAAiB,UAAU,KAAK;CAC3G;AACF"}
1
+ {"version":3,"file":"payloadShape.native.js","names":[],"sources":["cjs/ast/payloadShape.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar payloadShape_exports = {};\n__export(payloadShape_exports, {\n validatePayloadShape: () => validatePayloadShape\n});\nmodule.exports = __toCommonJS(payloadShape_exports);\nvar import_backgroundFamily = require(\"../shorthands/backgroundFamily\");\nvar listValuedLonghands = /* @__PURE__ */ new Set([\n \"aspectRatio\",\n \"animation\",\n \"animationName\",\n \"backdropFilter\",\n \"backgroundImage\",\n \"backgroundPosition\",\n \"backgroundPositionX\",\n \"backgroundPositionY\",\n \"backgroundRepeat\",\n \"backgroundSize\",\n \"borderSpacing\",\n \"boxShadow\",\n \"clipPath\",\n \"containIntrinsicSize\",\n \"filter\",\n \"flex\",\n \"flexFlow\",\n \"fontFamily\",\n \"fontFeatureSettings\",\n \"fontVariant\",\n \"fontVariationSettings\",\n \"gap\",\n \"gridArea\",\n \"gridColumn\",\n \"gridRow\",\n \"gridTemplateAreas\",\n \"gridTemplateColumns\",\n \"gridTemplateRows\",\n \"inset\",\n \"mask\",\n \"maskBorder\",\n \"maskBorderOutset\",\n \"maskBorderRepeat\",\n \"maskBorderSlice\",\n \"maskBorderWidth\",\n \"maskImage\",\n \"maskPosition\",\n \"maskRepeat\",\n \"maskSize\",\n \"objectPosition\",\n \"overscrollBehavior\",\n \"paintOrder\",\n \"perspectiveOrigin\",\n \"placeContent\",\n \"placeItems\",\n \"placeSelf\",\n \"quotes\",\n \"scrollSnapAlign\",\n \"strokeDasharray\",\n \"textDecorationLine\",\n \"textEmphasis\",\n \"textEmphasisPosition\",\n \"textShadow\",\n \"touchAction\",\n \"transform\",\n \"transformOrigin\",\n \"transition\",\n \"transitionProperty\",\n \"willChange\"\n]);\nfunction validatePayloadShape(property, payload, hasBase) {\n if (listValuedLonghands.has(property)) return null;\n var components = (0, import_backgroundFamily.splitTopLevelComponents)(payload);\n if (components.length <= 1) return null;\n return {\n code: \"multi-component-single-value\",\n property,\n payload,\n message: `\"${payload}\" holds ${components.length} values but \"${property}\" takes one.` + (hasBase ? \"\" : ` A value written after a conditional joins that conditional's payload \\u2014 write the base value before the first conditional.`)\n };\n}\n//# sourceMappingURL=payloadShape.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,uBAAuB,CAAC;AAC5B,SAAS,sBAAsB,EAC7B,4BAA4B,qBAC9B,CAAC;AACD,OAAO,UAAU,aAAa,oBAAoB;AAClD,IAAI,0BAA0B,QAAQ,0CAAgC;AACtE,IAAI,sCAAsC,IAAI,IAAI;CAChD;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AACD,SAAS,qBAAqB,UAAU,SAAS,SAAS;CACxD,IAAI,oBAAoB,IAAI,QAAQ,GAAG,OAAO;CAC9C,IAAI,cAAc,GAAG,wBAAwB,wBAAuB,CAAE,OAAO;CAC7E,IAAI,WAAW,UAAU,GAAG,OAAO;CACnC,OAAO;EACL,MAAM;EACN;EACA;EACA,SAAS,IAAI,QAAQ,UAAU,WAAW,OAAO,eAAe,SAAS,iBAAiB,UAAU,KAAK;CAC3G;AACF"}
@@ -74,6 +74,7 @@ function resolvePayload(payload, options) {
74
74
  let references = null;
75
75
  let errors = null;
76
76
  let staticStart = 0;
77
+ let functionDepth = 0;
77
78
  const codeAt = (index2) => index2 >= 0 && index2 < length ? payload.charCodeAt(index2) : -1;
78
79
  const pushReference = (start, end, reference) => {
79
80
  if (start > staticStart) segments.push(payload.slice(staticStart, start));
@@ -100,7 +101,7 @@ function resolvePayload(payload, options) {
100
101
  const start = index;
101
102
  index++;
102
103
  while (index < length && isIdentPart(payload.charCodeAt(index))) index++;
103
- onCandidate?.(start, index, payload.slice(start, index), void 0);
104
+ onCandidate?.(start, index, payload.slice(start, index), void 0, functionDepth);
104
105
  continue;
105
106
  }
106
107
  if (isIdentStart(code) && !(code === CHAR_MINUS && isDigit(codeAt(index + 1)))) {
@@ -111,7 +112,12 @@ function resolvePayload(payload, options) {
111
112
  }
112
113
  const name = payload.slice(start, Math.min(end, length));
113
114
  if (codeAt(end) === CHAR_PAREN_OPEN) {
114
- index = name.toLowerCase() === "url" ? skipParens(payload, end) : end + 1;
115
+ if (name.toLowerCase() === "url") {
116
+ index = skipParens(payload, end);
117
+ } else {
118
+ functionDepth++;
119
+ index = end + 1;
120
+ }
115
121
  continue;
116
122
  }
117
123
  if (name.startsWith("--")) {
@@ -130,7 +136,7 @@ function resolvePayload(payload, options) {
130
136
  name,
131
137
  opacity: Number(payload.slice(end + 1, suffix.end))
132
138
  });
133
- onCandidate?.(start, suffix.end, name, { ...resolved });
139
+ onCandidate?.(start, suffix.end, name, { ...resolved }, functionDepth);
134
140
  index = suffix.end;
135
141
  continue;
136
142
  }
@@ -139,7 +145,7 @@ function resolvePayload(payload, options) {
139
145
  opacity: suffix.percentage
140
146
  };
141
147
  pushReference(start, suffix.end, reference2);
142
- onCandidate?.(start, suffix.end, name, reference2);
148
+ onCandidate?.(start, suffix.end, name, reference2, functionDepth);
143
149
  index = suffix.end;
144
150
  continue;
145
151
  }
@@ -152,18 +158,18 @@ function resolvePayload(payload, options) {
152
158
  name,
153
159
  opacity: suffix.percentage
154
160
  });
155
- onCandidate?.(start, end, name, resolved ? { ...resolved } : void 0);
161
+ onCandidate?.(start, end, name, resolved ? { ...resolved } : void 0, functionDepth);
156
162
  index = suffix.end;
157
163
  continue;
158
164
  }
159
165
  if (!resolved) {
160
- onCandidate?.(start, end, name, void 0);
166
+ onCandidate?.(start, end, name, void 0, functionDepth);
161
167
  index = end;
162
168
  continue;
163
169
  }
164
170
  const reference = { ...resolved };
165
171
  pushReference(start, end, reference);
166
- onCandidate?.(start, end, name, reference);
172
+ onCandidate?.(start, end, name, reference, functionDepth);
167
173
  index = end;
168
174
  continue;
169
175
  }
@@ -202,13 +208,14 @@ function resolvePayload(payload, options) {
202
208
  if (resolved) {
203
209
  const reference = { ...resolved };
204
210
  pushReference(start, numberEnd, reference);
205
- onCandidate?.(start, numberEnd, name, reference);
211
+ onCandidate?.(start, numberEnd, name, reference, functionDepth);
206
212
  } else {
207
- onCandidate?.(start, numberEnd, name, void 0);
213
+ onCandidate?.(start, numberEnd, name, void 0, functionDepth);
208
214
  }
209
215
  index = numberEnd;
210
216
  continue;
211
217
  }
218
+ if (code === CHAR_PAREN_CLOSE && functionDepth > 0) functionDepth--;
212
219
  index++;
213
220
  }
214
221
  if (staticStart < length) segments.push(payload.slice(staticStart));
@@ -78,6 +78,7 @@ function resolvePayload(payload, options) {
78
78
  var references = null;
79
79
  var errors = null;
80
80
  var staticStart = 0;
81
+ var functionDepth = 0;
81
82
  var codeAt = function(index2) {
82
83
  return index2 >= 0 && index2 < length ? payload.charCodeAt(index2) : -1;
83
84
  };
@@ -106,7 +107,7 @@ function resolvePayload(payload, options) {
106
107
  var start = index;
107
108
  index++;
108
109
  while (index < length && isIdentPart(payload.charCodeAt(index))) index++;
109
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start, index, payload.slice(start, index), void 0);
110
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start, index, payload.slice(start, index), void 0, functionDepth);
110
111
  continue;
111
112
  }
112
113
  if (isIdentStart(code) && !(code === CHAR_MINUS && isDigit(codeAt(index + 1)))) {
@@ -117,7 +118,12 @@ function resolvePayload(payload, options) {
117
118
  }
118
119
  var name = payload.slice(start1, Math.min(end, length));
119
120
  if (codeAt(end) === CHAR_PAREN_OPEN) {
120
- index = name.toLowerCase() === "url" ? skipParens(payload, end) : end + 1;
121
+ if (name.toLowerCase() === "url") {
122
+ index = skipParens(payload, end);
123
+ } else {
124
+ functionDepth++;
125
+ index = end + 1;
126
+ }
121
127
  continue;
122
128
  }
123
129
  if (name.startsWith("--")) {
@@ -136,7 +142,7 @@ function resolvePayload(payload, options) {
136
142
  name,
137
143
  opacity: Number(payload.slice(end + 1, suffix.end))
138
144
  });
139
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, { ...resolved });
145
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, { ...resolved }, functionDepth);
140
146
  index = suffix.end;
141
147
  continue;
142
148
  }
@@ -145,7 +151,7 @@ function resolvePayload(payload, options) {
145
151
  opacity: suffix.percentage
146
152
  };
147
153
  pushReference(start1, suffix.end, reference);
148
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, reference);
154
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, reference, functionDepth);
149
155
  index = suffix.end;
150
156
  continue;
151
157
  }
@@ -158,18 +164,18 @@ function resolvePayload(payload, options) {
158
164
  name,
159
165
  opacity: suffix.percentage
160
166
  });
161
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, resolved ? { ...resolved } : void 0);
167
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, resolved ? { ...resolved } : void 0, functionDepth);
162
168
  index = suffix.end;
163
169
  continue;
164
170
  }
165
171
  if (!resolved) {
166
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, void 0);
172
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, void 0, functionDepth);
167
173
  index = end;
168
174
  continue;
169
175
  }
170
176
  var reference1 = { ...resolved };
171
177
  pushReference(start1, end, reference1);
172
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, reference1);
178
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, reference1, functionDepth);
173
179
  index = end;
174
180
  continue;
175
181
  }
@@ -208,13 +214,14 @@ function resolvePayload(payload, options) {
208
214
  if (resolved1) {
209
215
  var reference2 = { ...resolved1 };
210
216
  pushReference(start2, numberEnd, reference2);
211
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, reference2);
217
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, reference2, functionDepth);
212
218
  } else {
213
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, void 0);
219
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, void 0, functionDepth);
214
220
  }
215
221
  index = numberEnd;
216
222
  continue;
217
223
  }
224
+ if (code === CHAR_PAREN_CLOSE && functionDepth > 0) functionDepth--;
218
225
  index++;
219
226
  }
220
227
  if (staticStart < length) segments.push(payload.slice(staticStart));
@@ -78,6 +78,7 @@ function resolvePayload(payload, options) {
78
78
  var references = null;
79
79
  var errors = null;
80
80
  var staticStart = 0;
81
+ var functionDepth = 0;
81
82
  var codeAt = function(index2) {
82
83
  return index2 >= 0 && index2 < length ? payload.charCodeAt(index2) : -1;
83
84
  };
@@ -106,7 +107,7 @@ function resolvePayload(payload, options) {
106
107
  var start = index;
107
108
  index++;
108
109
  while (index < length && isIdentPart(payload.charCodeAt(index))) index++;
109
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start, index, payload.slice(start, index), void 0);
110
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start, index, payload.slice(start, index), void 0, functionDepth);
110
111
  continue;
111
112
  }
112
113
  if (isIdentStart(code) && !(code === CHAR_MINUS && isDigit(codeAt(index + 1)))) {
@@ -117,7 +118,12 @@ function resolvePayload(payload, options) {
117
118
  }
118
119
  var name = payload.slice(start1, Math.min(end, length));
119
120
  if (codeAt(end) === CHAR_PAREN_OPEN) {
120
- index = name.toLowerCase() === "url" ? skipParens(payload, end) : end + 1;
121
+ if (name.toLowerCase() === "url") {
122
+ index = skipParens(payload, end);
123
+ } else {
124
+ functionDepth++;
125
+ index = end + 1;
126
+ }
121
127
  continue;
122
128
  }
123
129
  if (name.startsWith("--")) {
@@ -136,7 +142,7 @@ function resolvePayload(payload, options) {
136
142
  name,
137
143
  opacity: Number(payload.slice(end + 1, suffix.end))
138
144
  });
139
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, { ...resolved });
145
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, { ...resolved }, functionDepth);
140
146
  index = suffix.end;
141
147
  continue;
142
148
  }
@@ -145,7 +151,7 @@ function resolvePayload(payload, options) {
145
151
  opacity: suffix.percentage
146
152
  };
147
153
  pushReference(start1, suffix.end, reference);
148
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, reference);
154
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, reference, functionDepth);
149
155
  index = suffix.end;
150
156
  continue;
151
157
  }
@@ -158,18 +164,18 @@ function resolvePayload(payload, options) {
158
164
  name,
159
165
  opacity: suffix.percentage
160
166
  });
161
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, resolved ? { ...resolved } : void 0);
167
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, resolved ? { ...resolved } : void 0, functionDepth);
162
168
  index = suffix.end;
163
169
  continue;
164
170
  }
165
171
  if (!resolved) {
166
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, void 0);
172
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, void 0, functionDepth);
167
173
  index = end;
168
174
  continue;
169
175
  }
170
176
  var reference1 = { ...resolved };
171
177
  pushReference(start1, end, reference1);
172
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, reference1);
178
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, reference1, functionDepth);
173
179
  index = end;
174
180
  continue;
175
181
  }
@@ -208,13 +214,14 @@ function resolvePayload(payload, options) {
208
214
  if (resolved1) {
209
215
  var reference2 = { ...resolved1 };
210
216
  pushReference(start2, numberEnd, reference2);
211
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, reference2);
217
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, reference2, functionDepth);
212
218
  } else {
213
- onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, void 0);
219
+ onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, void 0, functionDepth);
214
220
  }
215
221
  index = numberEnd;
216
222
  continue;
217
223
  }
224
+ if (code === CHAR_PAREN_CLOSE && functionDepth > 0) functionDepth--;
218
225
  index++;
219
226
  }
220
227
  if (staticStart < length) segments.push(payload.slice(staticStart));
@@ -1 +1 @@
1
- {"version":3,"file":"resolvePayload.native.js","names":[],"sources":["cjs/ast/resolvePayload.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar resolvePayload_exports = {};\n__export(resolvePayload_exports, {\n resolvePayload: () => resolvePayload,\n splitColorOpacitySuffix: () => import_colorOpacity.splitColorOpacitySuffix\n});\nmodule.exports = __toCommonJS(resolvePayload_exports);\nvar import_valueTypes = require(\"./valueTypes\");\nvar import_colorOpacity = require(\"../runtime/colorOpacity\");\nvar reservedFolded = new Set(Array.from(import_valueTypes.reservedCssIdents, function(ident) {\n return ident.toLowerCase();\n}));\nvar noReferences = Object.freeze([]);\nvar noErrors = Object.freeze([]);\nvar CHAR_TAB = 9;\nvar CHAR_LF = 10;\nvar CHAR_FF = 12;\nvar CHAR_CR = 13;\nvar CHAR_SPACE = 32;\nvar CHAR_PERCENT = 37;\nvar CHAR_HASH = 35;\nvar CHAR_DOUBLE_QUOTE = 34;\nvar CHAR_SINGLE_QUOTE = 39;\nvar CHAR_PAREN_OPEN = 40;\nvar CHAR_PAREN_CLOSE = 41;\nvar CHAR_PLUS = 43;\nvar CHAR_COMMA = 44;\nvar CHAR_MINUS = 45;\nvar CHAR_DOT = 46;\nvar CHAR_SLASH = 47;\nvar CHAR_UNDERSCORE = 95;\nvar CHAR_BACKSLASH = 92;\nvar CHAR_E_LOWER = 101;\nvar CHAR_E_UPPER = 69;\nfunction isWhitespace(code) {\n return code === CHAR_SPACE || code === CHAR_TAB || code === CHAR_LF || code === CHAR_CR || code === CHAR_FF;\n}\nfunction isDigit(code) {\n return code >= 48 && code <= 57;\n}\nfunction isLetter(code) {\n return code >= 97 && code <= 122 || code >= 65 && code <= 90;\n}\nfunction isIdentStart(code) {\n return isLetter(code) || code === CHAR_UNDERSCORE || code === CHAR_MINUS || code === CHAR_BACKSLASH || // non-ascii idents are legal CSS and may name a configured token\n code > 127;\n}\nfunction isIdentPart(code) {\n return isIdentStart(code) || isDigit(code);\n}\nfunction isBoundary(code) {\n return code === -1 || isWhitespace(code) || code === CHAR_COMMA || code === CHAR_PAREN_OPEN || code === CHAR_PAREN_CLOSE;\n}\nfunction resolvePayload(payload, options) {\n var { lookup, resolveNumbers = false, onCandidate } = options;\n var length = payload.length;\n var segments = [];\n var references = null;\n var errors = null;\n var staticStart = 0;\n var codeAt = function(index2) {\n return index2 >= 0 && index2 < length ? payload.charCodeAt(index2) : -1;\n };\n var pushReference = function(start3, end2, reference3) {\n if (start3 > staticStart) segments.push(payload.slice(staticStart, start3));\n segments.push(reference3);\n (references || (references = [])).push(reference3);\n staticStart = end2;\n };\n var index = 0;\n while (index < length) {\n var code = payload.charCodeAt(index);\n if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n index++;\n while (index < length) {\n var inner = payload.charCodeAt(index);\n if (inner === CHAR_BACKSLASH) index += 2;\n else if (inner === code) {\n index++;\n break;\n } else index++;\n }\n continue;\n }\n if (code === CHAR_HASH) {\n var start = index;\n index++;\n while (index < length && isIdentPart(payload.charCodeAt(index))) index++;\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start, index, payload.slice(start, index), void 0);\n continue;\n }\n if (isIdentStart(code) && !(code === CHAR_MINUS && isDigit(codeAt(index + 1)))) {\n var start1 = index;\n var end = index;\n while (end < length && isIdentPart(payload.charCodeAt(end))) {\n end += payload.charCodeAt(end) === CHAR_BACKSLASH ? 2 : 1;\n }\n var name = payload.slice(start1, Math.min(end, length));\n if (codeAt(end) === CHAR_PAREN_OPEN) {\n index = name.toLowerCase() === \"url\" ? skipParens(payload, end) : end + 1;\n continue;\n }\n if (name.startsWith(\"--\")) {\n index = end;\n continue;\n }\n var resolved = reservedFolded.has(name.toLowerCase()) ? void 0 : lookup(name);\n var suffix = readOpacitySuffix(payload, end, codeAt);\n if (suffix !== null && (resolved === null || resolved === void 0 ? void 0 : resolved.kind) === \"color\") {\n if (suffix.percentage === null) {\n ;\n (errors || (errors = [])).push({\n code: \"opacity-out-of-range\",\n index: start1,\n message: `\"${name}${payload.slice(end, suffix.end)}\" is not an opacity suffix: it must be an integer percentage from 0 through 100`,\n name,\n opacity: Number(payload.slice(end + 1, suffix.end))\n });\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, {\n ...resolved\n });\n index = suffix.end;\n continue;\n }\n var reference = (\n // 100% is the identity, so it never reaches a serializer\n suffix.percentage === 100 ? {\n ...resolved\n } : {\n ...resolved,\n opacity: suffix.percentage\n }\n );\n pushReference(start1, suffix.end, reference);\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, reference);\n index = suffix.end;\n continue;\n }\n if (suffix !== null && suffix.percentage !== null) {\n ;\n (errors || (errors = [])).push({\n code: \"opacity-on-non-color\",\n index: start1,\n message: resolved ? `\"${name}\" is not a color token (kind: ${resolved.kind}), so the /${suffix.percentage} opacity suffix does not apply` : `\"${name}\" is not a resolved color token, so the /${suffix.percentage} opacity suffix does not apply`,\n name,\n opacity: suffix.percentage\n });\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, resolved ? {\n ...resolved\n } : void 0);\n index = suffix.end;\n continue;\n }\n if (!resolved) {\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, void 0);\n index = end;\n continue;\n }\n var reference1 = {\n ...resolved\n };\n pushReference(start1, end, reference1);\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, reference1);\n index = end;\n continue;\n }\n if (isDigit(code) || code === CHAR_DOT || (code === CHAR_PLUS || code === CHAR_MINUS) && isDigit(codeAt(index + 1))) {\n var start2 = index;\n var end1 = index;\n if (code === CHAR_PLUS || code === CHAR_MINUS) end1++;\n while (end1 < length) {\n var digit = payload.charCodeAt(end1);\n if (isDigit(digit) || digit === CHAR_DOT) end1++;\n else break;\n }\n if (codeAt(end1) === CHAR_E_LOWER || codeAt(end1) === CHAR_E_UPPER) {\n var exponent = end1 + 1;\n if (codeAt(exponent) === CHAR_PLUS || codeAt(exponent) === CHAR_MINUS) exponent++;\n if (isDigit(codeAt(exponent))) {\n exponent++;\n while (exponent < length && isDigit(payload.charCodeAt(exponent))) exponent++;\n end1 = exponent;\n }\n }\n var numberEnd = end1;\n var unitEnd = numberEnd;\n if (codeAt(unitEnd) === CHAR_PERCENT) unitEnd++;\n else while (unitEnd < length && isIdentPart(payload.charCodeAt(unitEnd))) unitEnd++;\n if (unitEnd > numberEnd) {\n index = unitEnd;\n continue;\n }\n if (!resolveNumbers || !isBoundary(codeAt(start2 - 1)) || !isBoundary(codeAt(numberEnd))) {\n index = numberEnd;\n continue;\n }\n var name1 = payload.slice(start2, numberEnd);\n var resolved1 = lookup(name1);\n if (resolved1) {\n var reference2 = {\n ...resolved1\n };\n pushReference(start2, numberEnd, reference2);\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, reference2);\n } else {\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, void 0);\n }\n index = numberEnd;\n continue;\n }\n index++;\n }\n if (staticStart < length) segments.push(payload.slice(staticStart));\n return {\n segments,\n references: references !== null && references !== void 0 ? references : noReferences,\n errors: errors !== null && errors !== void 0 ? errors : noErrors\n };\n}\nfunction readOpacitySuffix(payload, identEnd, codeAt) {\n if (codeAt(identEnd) !== CHAR_SLASH) return null;\n var cursor = identEnd + 1;\n var signed = false;\n if (codeAt(cursor) === CHAR_MINUS || codeAt(cursor) === CHAR_PLUS) {\n signed = true;\n cursor++;\n }\n var digitsStart = cursor;\n while (isDigit(codeAt(cursor))) cursor++;\n if (cursor === digitsStart) return null;\n var fractional = false;\n if (codeAt(cursor) === CHAR_DOT && isDigit(codeAt(cursor + 1))) {\n fractional = true;\n cursor++;\n while (isDigit(codeAt(cursor))) cursor++;\n }\n if (!isBoundary(codeAt(cursor))) return null;\n var value = Number(payload.slice(identEnd + 1, cursor));\n var valid = !signed && !fractional && value >= 0 && value <= 100;\n return {\n end: cursor,\n percentage: valid ? value : null\n };\n}\nfunction skipParens(payload, open) {\n var depth = 0;\n var index = open;\n while (index < payload.length) {\n var code = payload.charCodeAt(index);\n if (code === CHAR_BACKSLASH) {\n index += 2;\n continue;\n }\n if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n index++;\n while (index < payload.length) {\n var inner = payload.charCodeAt(index);\n if (inner === CHAR_BACKSLASH) index += 2;\n else if (inner === code) {\n index++;\n break;\n } else index++;\n }\n continue;\n }\n if (code === CHAR_PAREN_OPEN) depth++;\n else if (code === CHAR_PAREN_CLOSE) {\n depth--;\n if (depth === 0) return index + 1;\n }\n index++;\n }\n return payload.length;\n}\n//# sourceMappingURL=resolvePayload.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"resolvePayload.native.js","names":[],"sources":["cjs/ast/resolvePayload.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar resolvePayload_exports = {};\n__export(resolvePayload_exports, {\n resolvePayload: () => resolvePayload,\n splitColorOpacitySuffix: () => import_colorOpacity.splitColorOpacitySuffix\n});\nmodule.exports = __toCommonJS(resolvePayload_exports);\nvar import_valueTypes = require(\"./valueTypes\");\nvar import_colorOpacity = require(\"../runtime/colorOpacity\");\nvar reservedFolded = new Set(Array.from(import_valueTypes.reservedCssIdents, function(ident) {\n return ident.toLowerCase();\n}));\nvar noReferences = Object.freeze([]);\nvar noErrors = Object.freeze([]);\nvar CHAR_TAB = 9;\nvar CHAR_LF = 10;\nvar CHAR_FF = 12;\nvar CHAR_CR = 13;\nvar CHAR_SPACE = 32;\nvar CHAR_PERCENT = 37;\nvar CHAR_HASH = 35;\nvar CHAR_DOUBLE_QUOTE = 34;\nvar CHAR_SINGLE_QUOTE = 39;\nvar CHAR_PAREN_OPEN = 40;\nvar CHAR_PAREN_CLOSE = 41;\nvar CHAR_PLUS = 43;\nvar CHAR_COMMA = 44;\nvar CHAR_MINUS = 45;\nvar CHAR_DOT = 46;\nvar CHAR_SLASH = 47;\nvar CHAR_UNDERSCORE = 95;\nvar CHAR_BACKSLASH = 92;\nvar CHAR_E_LOWER = 101;\nvar CHAR_E_UPPER = 69;\nfunction isWhitespace(code) {\n return code === CHAR_SPACE || code === CHAR_TAB || code === CHAR_LF || code === CHAR_CR || code === CHAR_FF;\n}\nfunction isDigit(code) {\n return code >= 48 && code <= 57;\n}\nfunction isLetter(code) {\n return code >= 97 && code <= 122 || code >= 65 && code <= 90;\n}\nfunction isIdentStart(code) {\n return isLetter(code) || code === CHAR_UNDERSCORE || code === CHAR_MINUS || code === CHAR_BACKSLASH || // non-ascii idents are legal CSS and may name a configured token\n code > 127;\n}\nfunction isIdentPart(code) {\n return isIdentStart(code) || isDigit(code);\n}\nfunction isBoundary(code) {\n return code === -1 || isWhitespace(code) || code === CHAR_COMMA || code === CHAR_PAREN_OPEN || code === CHAR_PAREN_CLOSE;\n}\nfunction resolvePayload(payload, options) {\n var { lookup, resolveNumbers = false, onCandidate } = options;\n var length = payload.length;\n var segments = [];\n var references = null;\n var errors = null;\n var staticStart = 0;\n var functionDepth = 0;\n var codeAt = function(index2) {\n return index2 >= 0 && index2 < length ? payload.charCodeAt(index2) : -1;\n };\n var pushReference = function(start3, end2, reference3) {\n if (start3 > staticStart) segments.push(payload.slice(staticStart, start3));\n segments.push(reference3);\n (references || (references = [])).push(reference3);\n staticStart = end2;\n };\n var index = 0;\n while (index < length) {\n var code = payload.charCodeAt(index);\n if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n index++;\n while (index < length) {\n var inner = payload.charCodeAt(index);\n if (inner === CHAR_BACKSLASH) index += 2;\n else if (inner === code) {\n index++;\n break;\n } else index++;\n }\n continue;\n }\n if (code === CHAR_HASH) {\n var start = index;\n index++;\n while (index < length && isIdentPart(payload.charCodeAt(index))) index++;\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start, index, payload.slice(start, index), void 0, functionDepth);\n continue;\n }\n if (isIdentStart(code) && !(code === CHAR_MINUS && isDigit(codeAt(index + 1)))) {\n var start1 = index;\n var end = index;\n while (end < length && isIdentPart(payload.charCodeAt(end))) {\n end += payload.charCodeAt(end) === CHAR_BACKSLASH ? 2 : 1;\n }\n var name = payload.slice(start1, Math.min(end, length));\n if (codeAt(end) === CHAR_PAREN_OPEN) {\n if (name.toLowerCase() === \"url\") {\n index = skipParens(payload, end);\n } else {\n functionDepth++;\n index = end + 1;\n }\n continue;\n }\n if (name.startsWith(\"--\")) {\n index = end;\n continue;\n }\n var resolved = reservedFolded.has(name.toLowerCase()) ? void 0 : lookup(name);\n var suffix = readOpacitySuffix(payload, end, codeAt);\n if (suffix !== null && (resolved === null || resolved === void 0 ? void 0 : resolved.kind) === \"color\") {\n if (suffix.percentage === null) {\n ;\n (errors || (errors = [])).push({\n code: \"opacity-out-of-range\",\n index: start1,\n message: `\"${name}${payload.slice(end, suffix.end)}\" is not an opacity suffix: it must be an integer percentage from 0 through 100`,\n name,\n opacity: Number(payload.slice(end + 1, suffix.end))\n });\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, {\n ...resolved\n }, functionDepth);\n index = suffix.end;\n continue;\n }\n var reference = (\n // 100% is the identity, so it never reaches a serializer\n suffix.percentage === 100 ? {\n ...resolved\n } : {\n ...resolved,\n opacity: suffix.percentage\n }\n );\n pushReference(start1, suffix.end, reference);\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, suffix.end, name, reference, functionDepth);\n index = suffix.end;\n continue;\n }\n if (suffix !== null && suffix.percentage !== null) {\n ;\n (errors || (errors = [])).push({\n code: \"opacity-on-non-color\",\n index: start1,\n message: resolved ? `\"${name}\" is not a color token (kind: ${resolved.kind}), so the /${suffix.percentage} opacity suffix does not apply` : `\"${name}\" is not a resolved color token, so the /${suffix.percentage} opacity suffix does not apply`,\n name,\n opacity: suffix.percentage\n });\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, resolved ? {\n ...resolved\n } : void 0, functionDepth);\n index = suffix.end;\n continue;\n }\n if (!resolved) {\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, void 0, functionDepth);\n index = end;\n continue;\n }\n var reference1 = {\n ...resolved\n };\n pushReference(start1, end, reference1);\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start1, end, name, reference1, functionDepth);\n index = end;\n continue;\n }\n if (isDigit(code) || code === CHAR_DOT || (code === CHAR_PLUS || code === CHAR_MINUS) && isDigit(codeAt(index + 1))) {\n var start2 = index;\n var end1 = index;\n if (code === CHAR_PLUS || code === CHAR_MINUS) end1++;\n while (end1 < length) {\n var digit = payload.charCodeAt(end1);\n if (isDigit(digit) || digit === CHAR_DOT) end1++;\n else break;\n }\n if (codeAt(end1) === CHAR_E_LOWER || codeAt(end1) === CHAR_E_UPPER) {\n var exponent = end1 + 1;\n if (codeAt(exponent) === CHAR_PLUS || codeAt(exponent) === CHAR_MINUS) exponent++;\n if (isDigit(codeAt(exponent))) {\n exponent++;\n while (exponent < length && isDigit(payload.charCodeAt(exponent))) exponent++;\n end1 = exponent;\n }\n }\n var numberEnd = end1;\n var unitEnd = numberEnd;\n if (codeAt(unitEnd) === CHAR_PERCENT) unitEnd++;\n else while (unitEnd < length && isIdentPart(payload.charCodeAt(unitEnd))) unitEnd++;\n if (unitEnd > numberEnd) {\n index = unitEnd;\n continue;\n }\n if (!resolveNumbers || !isBoundary(codeAt(start2 - 1)) || !isBoundary(codeAt(numberEnd))) {\n index = numberEnd;\n continue;\n }\n var name1 = payload.slice(start2, numberEnd);\n var resolved1 = lookup(name1);\n if (resolved1) {\n var reference2 = {\n ...resolved1\n };\n pushReference(start2, numberEnd, reference2);\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, reference2, functionDepth);\n } else {\n onCandidate === null || onCandidate === void 0 ? void 0 : onCandidate(start2, numberEnd, name1, void 0, functionDepth);\n }\n index = numberEnd;\n continue;\n }\n if (code === CHAR_PAREN_CLOSE && functionDepth > 0) functionDepth--;\n index++;\n }\n if (staticStart < length) segments.push(payload.slice(staticStart));\n return {\n segments,\n references: references !== null && references !== void 0 ? references : noReferences,\n errors: errors !== null && errors !== void 0 ? errors : noErrors\n };\n}\nfunction readOpacitySuffix(payload, identEnd, codeAt) {\n if (codeAt(identEnd) !== CHAR_SLASH) return null;\n var cursor = identEnd + 1;\n var signed = false;\n if (codeAt(cursor) === CHAR_MINUS || codeAt(cursor) === CHAR_PLUS) {\n signed = true;\n cursor++;\n }\n var digitsStart = cursor;\n while (isDigit(codeAt(cursor))) cursor++;\n if (cursor === digitsStart) return null;\n var fractional = false;\n if (codeAt(cursor) === CHAR_DOT && isDigit(codeAt(cursor + 1))) {\n fractional = true;\n cursor++;\n while (isDigit(codeAt(cursor))) cursor++;\n }\n if (!isBoundary(codeAt(cursor))) return null;\n var value = Number(payload.slice(identEnd + 1, cursor));\n var valid = !signed && !fractional && value >= 0 && value <= 100;\n return {\n end: cursor,\n percentage: valid ? value : null\n };\n}\nfunction skipParens(payload, open) {\n var depth = 0;\n var index = open;\n while (index < payload.length) {\n var code = payload.charCodeAt(index);\n if (code === CHAR_BACKSLASH) {\n index += 2;\n continue;\n }\n if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n index++;\n while (index < payload.length) {\n var inner = payload.charCodeAt(index);\n if (inner === CHAR_BACKSLASH) index += 2;\n else if (inner === code) {\n index++;\n break;\n } else index++;\n }\n continue;\n }\n if (code === CHAR_PAREN_OPEN) depth++;\n else if (code === CHAR_PAREN_CLOSE) {\n depth--;\n if (depth === 0) return index + 1;\n }\n index++;\n }\n return payload.length;\n}\n//# sourceMappingURL=resolvePayload.js.map\n"],"mappings":"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"}
@@ -39,7 +39,7 @@ const defaultStateSelectors = Object.freeze({
39
39
  focus: { fragment: ":focus" },
40
40
  "focus-visible": { fragment: ":focus-visible" },
41
41
  "focus-within": { fragment: ":focus-within" },
42
- disabled: { fragment: "[aria-disabled]" },
42
+ disabled: { fragment: "[aria-disabled=\"true\"]" },
43
43
  enter: {
44
44
  fragment: ".t_unmounted",
45
45
  scope: "is-or-within"
@@ -92,7 +92,7 @@ function lowerProgram(program, options) {
92
92
  if (pointerEventsProgram && isPointerEventsMode(value)) {
93
93
  const pointerEvents = pointerEventsCSS(value);
94
94
  rules.push(wrapAtRules(`${selector}{${declaration}:${pointerEvents.subject}}`, wrappers));
95
- rules.push(wrapAtRules(`${selector}>*{${declaration}:${pointerEvents.children}}`, wrappers));
95
+ rules.push(wrapAtRules(`:where(${selector})>*{${declaration}:${pointerEvents.children}}`, wrappers));
96
96
  return;
97
97
  }
98
98
  rules.push(wrapAtRules(`${selector}{${declaration}:${value}}`, wrappers));
@@ -41,7 +41,7 @@ var defaultStateSelectors = Object.freeze({
41
41
  focus: { fragment: ":focus" },
42
42
  "focus-visible": { fragment: ":focus-visible" },
43
43
  "focus-within": { fragment: ":focus-within" },
44
- disabled: { fragment: "[aria-disabled]" },
44
+ disabled: { fragment: "[aria-disabled=\"true\"]" },
45
45
  enter: {
46
46
  fragment: ".t_unmounted",
47
47
  scope: "is-or-within"
@@ -98,7 +98,7 @@ function lowerProgram(program, options) {
98
98
  if (pointerEventsProgram && isPointerEventsMode(value)) {
99
99
  var pointerEvents = pointerEventsCSS(value);
100
100
  rules.push(wrapAtRules(`${selector2}{${declaration}:${pointerEvents.subject}}`, wrappers2));
101
- rules.push(wrapAtRules(`${selector2}>*{${declaration}:${pointerEvents.children}}`, wrappers2));
101
+ rules.push(wrapAtRules(`:where(${selector2})>*{${declaration}:${pointerEvents.children}}`, wrappers2));
102
102
  return;
103
103
  }
104
104
  rules.push(wrapAtRules(`${selector2}{${declaration}:${value}}`, wrappers2));