@tamagui/style-grammar 0.0.0-bootstrap.0 → 3.0.0-beta.643.1

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 (458) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +33 -1
  3. package/dist/cjs/backgroundFamily.cjs +176 -0
  4. package/dist/cjs/backgroundFamily.native.cjs +195 -0
  5. package/dist/cjs/backgroundFamily.native.js +197 -0
  6. package/dist/cjs/backgroundFamily.native.js.map +1 -0
  7. package/dist/cjs/borderFamily.cjs +169 -0
  8. package/dist/cjs/borderFamily.native.cjs +247 -0
  9. package/dist/cjs/borderFamily.native.js +249 -0
  10. package/dist/cjs/borderFamily.native.js.map +1 -0
  11. package/dist/cjs/candidate.cjs +608 -0
  12. package/dist/cjs/candidate.native.cjs +821 -0
  13. package/dist/cjs/candidate.native.js +823 -0
  14. package/dist/cjs/candidate.native.js.map +1 -0
  15. package/dist/cjs/candidateTarget.cjs +50 -0
  16. package/dist/cjs/candidateTarget.native.cjs +88 -0
  17. package/dist/cjs/candidateTarget.native.js +90 -0
  18. package/dist/cjs/candidateTarget.native.js.map +1 -0
  19. package/dist/cjs/clauseCapability.cjs +130 -0
  20. package/dist/cjs/clauseCapability.native.cjs +152 -0
  21. package/dist/cjs/clauseCapability.native.js +154 -0
  22. package/dist/cjs/clauseCapability.native.js.map +1 -0
  23. package/dist/cjs/clausePrecedence.cjs +153 -0
  24. package/dist/cjs/clausePrecedence.native.cjs +204 -0
  25. package/dist/cjs/clausePrecedence.native.js +206 -0
  26. package/dist/cjs/clausePrecedence.native.js.map +1 -0
  27. package/dist/cjs/clauseSources.cjs +47 -0
  28. package/dist/cjs/clauseSources.native.cjs +49 -0
  29. package/dist/cjs/clauseSources.native.js +51 -0
  30. package/dist/cjs/clauseSources.native.js.map +1 -0
  31. package/dist/cjs/config.cjs +130 -0
  32. package/dist/cjs/config.native.cjs +185 -0
  33. package/dist/cjs/config.native.js +187 -0
  34. package/dist/cjs/config.native.js.map +1 -0
  35. package/dist/cjs/evaluateProgram.cjs +65 -0
  36. package/dist/cjs/evaluateProgram.native.cjs +70 -0
  37. package/dist/cjs/evaluateProgram.native.js +72 -0
  38. package/dist/cjs/evaluateProgram.native.js.map +1 -0
  39. package/dist/cjs/fontShorthand.cjs +207 -0
  40. package/dist/cjs/fontShorthand.native.cjs +260 -0
  41. package/dist/cjs/fontShorthand.native.js +262 -0
  42. package/dist/cjs/fontShorthand.native.js.map +1 -0
  43. package/dist/cjs/geometricShorthand.cjs +122 -0
  44. package/dist/cjs/geometricShorthand.native.cjs +128 -0
  45. package/dist/cjs/geometricShorthand.native.js +130 -0
  46. package/dist/cjs/geometricShorthand.native.js.map +1 -0
  47. package/dist/cjs/index.cjs +19 -0
  48. package/dist/cjs/index.native.cjs +21 -0
  49. package/dist/cjs/index.native.js +23 -0
  50. package/dist/cjs/index.native.js.map +1 -0
  51. package/dist/cjs/lowerProgram.cjs +205 -0
  52. package/dist/cjs/lowerProgram.native.cjs +257 -0
  53. package/dist/cjs/lowerProgram.native.js +259 -0
  54. package/dist/cjs/lowerProgram.native.js.map +1 -0
  55. package/dist/cjs/mergeFlatValues.cjs +50 -0
  56. package/dist/cjs/mergeFlatValues.native.cjs +71 -0
  57. package/dist/cjs/mergeFlatValues.native.js +73 -0
  58. package/dist/cjs/mergeFlatValues.native.js.map +1 -0
  59. package/dist/cjs/modifierRegistry.cjs +246 -0
  60. package/dist/cjs/modifierRegistry.native.cjs +426 -0
  61. package/dist/cjs/modifierRegistry.native.js +428 -0
  62. package/dist/cjs/modifierRegistry.native.js.map +1 -0
  63. package/dist/cjs/payloadShape.cjs +69 -0
  64. package/dist/cjs/payloadShape.native.cjs +71 -0
  65. package/dist/cjs/payloadShape.native.js +73 -0
  66. package/dist/cjs/payloadShape.native.js.map +1 -0
  67. package/dist/cjs/programEligibility.cjs +46 -0
  68. package/dist/cjs/programEligibility.native.cjs +48 -0
  69. package/dist/cjs/programEligibility.native.js +50 -0
  70. package/dist/cjs/programEligibility.native.js.map +1 -0
  71. package/dist/cjs/programHash.cjs +86 -0
  72. package/dist/cjs/programHash.native.cjs +106 -0
  73. package/dist/cjs/programHash.native.js +108 -0
  74. package/dist/cjs/programHash.native.js.map +1 -0
  75. package/dist/cjs/programs.cjs +128 -0
  76. package/dist/cjs/programs.native.cjs +220 -0
  77. package/dist/cjs/programs.native.js +222 -0
  78. package/dist/cjs/programs.native.js.map +1 -0
  79. package/dist/cjs/registry.cjs +629 -0
  80. package/dist/cjs/registry.native.cjs +635 -0
  81. package/dist/cjs/registry.native.js +637 -0
  82. package/dist/cjs/registry.native.js.map +1 -0
  83. package/dist/cjs/resolvePayload.cjs +296 -0
  84. package/dist/cjs/resolvePayload.native.cjs +302 -0
  85. package/dist/cjs/resolvePayload.native.js +304 -0
  86. package/dist/cjs/resolvePayload.native.js.map +1 -0
  87. package/dist/cjs/runtime.cjs +50 -0
  88. package/dist/cjs/runtime.native.cjs +52 -0
  89. package/dist/cjs/runtime.native.js +54 -0
  90. package/dist/cjs/runtime.native.js.map +1 -0
  91. package/dist/cjs/safeAreaVariables.cjs +42 -0
  92. package/dist/cjs/safeAreaVariables.native.cjs +44 -0
  93. package/dist/cjs/safeAreaVariables.native.js +46 -0
  94. package/dist/cjs/safeAreaVariables.native.js.map +1 -0
  95. package/dist/cjs/scanFlatValue.cjs +181 -0
  96. package/dist/cjs/scanFlatValue.native.cjs +183 -0
  97. package/dist/cjs/scanFlatValue.native.js +185 -0
  98. package/dist/cjs/scanFlatValue.native.js.map +1 -0
  99. package/dist/cjs/serializePayload.cjs +149 -0
  100. package/dist/cjs/serializePayload.native.cjs +187 -0
  101. package/dist/cjs/serializePayload.native.js +189 -0
  102. package/dist/cjs/serializePayload.native.js.map +1 -0
  103. package/dist/cjs/stateModifiers.cjs +43 -0
  104. package/dist/cjs/stateModifiers.native.cjs +45 -0
  105. package/dist/cjs/stateModifiers.native.js +47 -0
  106. package/dist/cjs/stateModifiers.native.js.map +1 -0
  107. package/dist/cjs/states.cjs +97 -0
  108. package/dist/cjs/states.native.cjs +131 -0
  109. package/dist/cjs/states.native.js +133 -0
  110. package/dist/cjs/states.native.js.map +1 -0
  111. package/dist/cjs/table.cjs +54 -0
  112. package/dist/cjs/table.native.cjs +135 -0
  113. package/dist/cjs/table.native.js +137 -0
  114. package/dist/cjs/table.native.js.map +1 -0
  115. package/dist/cjs/textDecorationFamily.cjs +129 -0
  116. package/dist/cjs/textDecorationFamily.native.cjs +199 -0
  117. package/dist/cjs/textDecorationFamily.native.js +201 -0
  118. package/dist/cjs/textDecorationFamily.native.js.map +1 -0
  119. package/dist/cjs/tooling.cjs +26 -0
  120. package/dist/cjs/tooling.native.cjs +28 -0
  121. package/dist/cjs/tooling.native.js +30 -0
  122. package/dist/cjs/tooling.native.js.map +1 -0
  123. package/dist/cjs/toolingAnnotations.cjs +105 -0
  124. package/dist/cjs/toolingAnnotations.native.cjs +133 -0
  125. package/dist/cjs/toolingAnnotations.native.js +135 -0
  126. package/dist/cjs/toolingAnnotations.native.js.map +1 -0
  127. package/dist/cjs/toolingDiagnostics.cjs +459 -0
  128. package/dist/cjs/toolingDiagnostics.native.cjs +788 -0
  129. package/dist/cjs/toolingDiagnostics.native.js +790 -0
  130. package/dist/cjs/toolingDiagnostics.native.js.map +1 -0
  131. package/dist/cjs/toolingRegistry.cjs +159 -0
  132. package/dist/cjs/toolingRegistry.native.cjs +164 -0
  133. package/dist/cjs/toolingRegistry.native.js +166 -0
  134. package/dist/cjs/toolingRegistry.native.js.map +1 -0
  135. package/dist/cjs/transformFamily.cjs +425 -0
  136. package/dist/cjs/transformFamily.native.cjs +517 -0
  137. package/dist/cjs/transformFamily.native.js +519 -0
  138. package/dist/cjs/transformFamily.native.js.map +1 -0
  139. package/dist/cjs/transition.cjs +459 -0
  140. package/dist/cjs/transition.native.cjs +499 -0
  141. package/dist/cjs/transition.native.js +501 -0
  142. package/dist/cjs/transition.native.js.map +1 -0
  143. package/dist/cjs/transitionAlign.cjs +115 -0
  144. package/dist/cjs/transitionAlign.native.cjs +154 -0
  145. package/dist/cjs/transitionAlign.native.js +156 -0
  146. package/dist/cjs/transitionAlign.native.js.map +1 -0
  147. package/dist/cjs/transitionLegacy.cjs +217 -0
  148. package/dist/cjs/transitionLegacy.native.cjs +260 -0
  149. package/dist/cjs/transitionLegacy.native.js +262 -0
  150. package/dist/cjs/transitionLegacy.native.js.map +1 -0
  151. package/dist/cjs/transitionNative.cjs +281 -0
  152. package/dist/cjs/transitionNative.native.cjs +285 -0
  153. package/dist/cjs/transitionNative.native.js +287 -0
  154. package/dist/cjs/transitionNative.native.js.map +1 -0
  155. package/dist/cjs/unitlessNumbers.cjs +86 -0
  156. package/dist/cjs/unitlessNumbers.native.cjs +106 -0
  157. package/dist/cjs/unitlessNumbers.native.js +108 -0
  158. package/dist/cjs/unitlessNumbers.native.js.map +1 -0
  159. package/dist/cjs/v6ThemeNames.cjs +47 -0
  160. package/dist/cjs/v6ThemeNames.native.cjs +53 -0
  161. package/dist/cjs/v6ThemeNames.native.js +55 -0
  162. package/dist/cjs/v6ThemeNames.native.js.map +1 -0
  163. package/dist/cjs/valueParser.cjs +148 -0
  164. package/dist/cjs/valueParser.native.cjs +150 -0
  165. package/dist/cjs/valueParser.native.js +152 -0
  166. package/dist/cjs/valueParser.native.js.map +1 -0
  167. package/dist/cjs/valueTypes.cjs +38 -0
  168. package/dist/cjs/valueTypes.native.cjs +40 -0
  169. package/dist/cjs/valueTypes.native.js +42 -0
  170. package/dist/cjs/valueTypes.native.js.map +1 -0
  171. package/dist/esm/backgroundFamily.mjs +150 -0
  172. package/dist/esm/backgroundFamily.mjs.map +1 -0
  173. package/dist/esm/backgroundFamily.native.js +167 -0
  174. package/dist/esm/backgroundFamily.native.js.map +1 -0
  175. package/dist/esm/borderFamily.mjs +146 -0
  176. package/dist/esm/borderFamily.mjs.map +1 -0
  177. package/dist/esm/borderFamily.native.js +222 -0
  178. package/dist/esm/borderFamily.native.js.map +1 -0
  179. package/dist/esm/candidate.mjs +581 -0
  180. package/dist/esm/candidate.mjs.map +1 -0
  181. package/dist/esm/candidate.native.js +792 -0
  182. package/dist/esm/candidate.native.js.map +1 -0
  183. package/dist/esm/candidateTarget.mjs +29 -0
  184. package/dist/esm/candidateTarget.mjs.map +1 -0
  185. package/dist/esm/candidateTarget.native.js +65 -0
  186. package/dist/esm/candidateTarget.native.js.map +1 -0
  187. package/dist/esm/clauseCapability.mjs +107 -0
  188. package/dist/esm/clauseCapability.mjs.map +1 -0
  189. package/dist/esm/clauseCapability.native.js +127 -0
  190. package/dist/esm/clauseCapability.native.js.map +1 -0
  191. package/dist/esm/clausePrecedence.mjs +121 -0
  192. package/dist/esm/clausePrecedence.mjs.map +1 -0
  193. package/dist/esm/clausePrecedence.native.js +170 -0
  194. package/dist/esm/clausePrecedence.native.js.map +1 -0
  195. package/dist/esm/clauseSources.mjs +23 -0
  196. package/dist/esm/clauseSources.mjs.map +1 -0
  197. package/dist/esm/clauseSources.native.js +23 -0
  198. package/dist/esm/clauseSources.native.js.map +1 -0
  199. package/dist/esm/config.mjs +103 -0
  200. package/dist/esm/config.mjs.map +1 -0
  201. package/dist/esm/config.native.js +156 -0
  202. package/dist/esm/config.native.js.map +1 -0
  203. package/dist/esm/evaluateProgram.mjs +45 -0
  204. package/dist/esm/evaluateProgram.mjs.map +1 -0
  205. package/dist/esm/evaluateProgram.native.js +48 -0
  206. package/dist/esm/evaluateProgram.native.js.map +1 -0
  207. package/dist/esm/fontShorthand.mjs +184 -0
  208. package/dist/esm/fontShorthand.mjs.map +1 -0
  209. package/dist/esm/fontShorthand.native.js +235 -0
  210. package/dist/esm/fontShorthand.native.js.map +1 -0
  211. package/dist/esm/geometricShorthand.mjs +102 -0
  212. package/dist/esm/geometricShorthand.mjs.map +1 -0
  213. package/dist/esm/geometricShorthand.native.js +106 -0
  214. package/dist/esm/geometricShorthand.native.js.map +1 -0
  215. package/dist/esm/index.mjs +1 -0
  216. package/dist/esm/index.native.js +1 -0
  217. package/dist/esm/lowerProgram.mjs +182 -0
  218. package/dist/esm/lowerProgram.mjs.map +1 -0
  219. package/dist/esm/lowerProgram.native.js +232 -0
  220. package/dist/esm/lowerProgram.native.js.map +1 -0
  221. package/dist/esm/mergeFlatValues.mjs +27 -0
  222. package/dist/esm/mergeFlatValues.mjs.map +1 -0
  223. package/dist/esm/mergeFlatValues.native.js +46 -0
  224. package/dist/esm/mergeFlatValues.native.js.map +1 -0
  225. package/dist/esm/modifierRegistry.mjs +219 -0
  226. package/dist/esm/modifierRegistry.mjs.map +1 -0
  227. package/dist/esm/modifierRegistry.native.js +397 -0
  228. package/dist/esm/modifierRegistry.native.js.map +1 -0
  229. package/dist/esm/payloadShape.mjs +49 -0
  230. package/dist/esm/payloadShape.mjs.map +1 -0
  231. package/dist/esm/payloadShape.native.js +49 -0
  232. package/dist/esm/payloadShape.native.js.map +1 -0
  233. package/dist/esm/programEligibility.mjs +22 -0
  234. package/dist/esm/programEligibility.mjs.map +1 -0
  235. package/dist/esm/programEligibility.native.js +22 -0
  236. package/dist/esm/programEligibility.native.js.map +1 -0
  237. package/dist/esm/programHash.mjs +62 -0
  238. package/dist/esm/programHash.mjs.map +1 -0
  239. package/dist/esm/programHash.native.js +80 -0
  240. package/dist/esm/programHash.native.js.map +1 -0
  241. package/dist/esm/programs.mjs +103 -0
  242. package/dist/esm/programs.mjs.map +1 -0
  243. package/dist/esm/programs.native.js +193 -0
  244. package/dist/esm/programs.native.js.map +1 -0
  245. package/dist/esm/registry.mjs +595 -0
  246. package/dist/esm/registry.mjs.map +1 -0
  247. package/dist/esm/registry.native.js +599 -0
  248. package/dist/esm/registry.native.js.map +1 -0
  249. package/dist/esm/resolvePayload.mjs +273 -0
  250. package/dist/esm/resolvePayload.mjs.map +1 -0
  251. package/dist/esm/resolvePayload.native.js +277 -0
  252. package/dist/esm/resolvePayload.native.js.map +1 -0
  253. package/dist/esm/runtime.mjs +63 -0
  254. package/dist/esm/runtime.native.js +63 -0
  255. package/dist/esm/safeAreaVariables.mjs +18 -0
  256. package/dist/esm/safeAreaVariables.mjs.map +1 -0
  257. package/dist/esm/safeAreaVariables.native.js +18 -0
  258. package/dist/esm/safeAreaVariables.native.js.map +1 -0
  259. package/dist/esm/scanFlatValue.mjs +160 -0
  260. package/dist/esm/scanFlatValue.mjs.map +1 -0
  261. package/dist/esm/scanFlatValue.native.js +160 -0
  262. package/dist/esm/scanFlatValue.native.js.map +1 -0
  263. package/dist/esm/serializePayload.mjs +125 -0
  264. package/dist/esm/serializePayload.mjs.map +1 -0
  265. package/dist/esm/serializePayload.native.js +161 -0
  266. package/dist/esm/serializePayload.native.js.map +1 -0
  267. package/dist/esm/stateModifiers.mjs +19 -0
  268. package/dist/esm/stateModifiers.mjs.map +1 -0
  269. package/dist/esm/stateModifiers.native.js +19 -0
  270. package/dist/esm/stateModifiers.native.js.map +1 -0
  271. package/dist/esm/states.mjs +69 -0
  272. package/dist/esm/states.mjs.map +1 -0
  273. package/dist/esm/states.native.js +101 -0
  274. package/dist/esm/states.native.js.map +1 -0
  275. package/dist/esm/table.mjs +31 -0
  276. package/dist/esm/table.mjs.map +1 -0
  277. package/dist/esm/table.native.js +110 -0
  278. package/dist/esm/table.native.js.map +1 -0
  279. package/dist/esm/textDecorationFamily.mjs +106 -0
  280. package/dist/esm/textDecorationFamily.mjs.map +1 -0
  281. package/dist/esm/textDecorationFamily.native.js +174 -0
  282. package/dist/esm/textDecorationFamily.native.js.map +1 -0
  283. package/dist/esm/tooling.mjs +15 -0
  284. package/dist/esm/tooling.native.js +15 -0
  285. package/dist/esm/toolingAnnotations.mjs +85 -0
  286. package/dist/esm/toolingAnnotations.mjs.map +1 -0
  287. package/dist/esm/toolingAnnotations.native.js +111 -0
  288. package/dist/esm/toolingAnnotations.native.js.map +1 -0
  289. package/dist/esm/toolingDiagnostics.mjs +428 -0
  290. package/dist/esm/toolingDiagnostics.mjs.map +1 -0
  291. package/dist/esm/toolingDiagnostics.native.js +755 -0
  292. package/dist/esm/toolingDiagnostics.native.js.map +1 -0
  293. package/dist/esm/toolingRegistry.mjs +135 -0
  294. package/dist/esm/toolingRegistry.mjs.map +1 -0
  295. package/dist/esm/toolingRegistry.native.js +138 -0
  296. package/dist/esm/toolingRegistry.native.js.map +1 -0
  297. package/dist/esm/transformFamily.mjs +392 -0
  298. package/dist/esm/transformFamily.mjs.map +1 -0
  299. package/dist/esm/transformFamily.native.js +482 -0
  300. package/dist/esm/transformFamily.native.js.map +1 -0
  301. package/dist/esm/transition.mjs +434 -0
  302. package/dist/esm/transition.mjs.map +1 -0
  303. package/dist/esm/transition.native.js +472 -0
  304. package/dist/esm/transition.native.js.map +1 -0
  305. package/dist/esm/transitionAlign.mjs +95 -0
  306. package/dist/esm/transitionAlign.mjs.map +1 -0
  307. package/dist/esm/transitionAlign.native.js +132 -0
  308. package/dist/esm/transitionAlign.native.js.map +1 -0
  309. package/dist/esm/transitionLegacy.mjs +197 -0
  310. package/dist/esm/transitionLegacy.mjs.map +1 -0
  311. package/dist/esm/transitionLegacy.native.js +238 -0
  312. package/dist/esm/transitionLegacy.native.js.map +1 -0
  313. package/dist/esm/transitionNative.mjs +257 -0
  314. package/dist/esm/transitionNative.mjs.map +1 -0
  315. package/dist/esm/transitionNative.native.js +259 -0
  316. package/dist/esm/transitionNative.native.js.map +1 -0
  317. package/dist/esm/unitlessNumbers.mjs +65 -0
  318. package/dist/esm/unitlessNumbers.mjs.map +1 -0
  319. package/dist/esm/unitlessNumbers.native.js +83 -0
  320. package/dist/esm/unitlessNumbers.native.js.map +1 -0
  321. package/dist/esm/v6ThemeNames.mjs +23 -0
  322. package/dist/esm/v6ThemeNames.mjs.map +1 -0
  323. package/dist/esm/v6ThemeNames.native.js +27 -0
  324. package/dist/esm/v6ThemeNames.native.js.map +1 -0
  325. package/dist/esm/valueParser.mjs +125 -0
  326. package/dist/esm/valueParser.mjs.map +1 -0
  327. package/dist/esm/valueParser.native.js +125 -0
  328. package/dist/esm/valueParser.native.js.map +1 -0
  329. package/dist/esm/valueTypes.mjs +14 -0
  330. package/dist/esm/valueTypes.mjs.map +1 -0
  331. package/dist/esm/valueTypes.native.js +14 -0
  332. package/dist/esm/valueTypes.native.js.map +1 -0
  333. package/package.json +98 -4
  334. package/src/backgroundFamily.ts +182 -0
  335. package/src/borderFamily.ts +172 -0
  336. package/src/candidate.ts +691 -0
  337. package/src/candidateTarget.ts +67 -0
  338. package/src/clauseCapability.ts +209 -0
  339. package/src/clausePrecedence.ts +198 -0
  340. package/src/clauseSources.ts +29 -0
  341. package/src/config.ts +169 -0
  342. package/src/evaluateProgram.ts +91 -0
  343. package/src/fontShorthand.ts +177 -0
  344. package/src/geometricShorthand.ts +105 -0
  345. package/src/index.ts +1 -0
  346. package/src/lowerProgram.ts +398 -0
  347. package/src/modifierRegistry.ts +340 -0
  348. package/src/payloadShape.ts +92 -0
  349. package/src/programEligibility.ts +46 -0
  350. package/src/programHash.ts +128 -0
  351. package/src/programs.ts +95 -0
  352. package/src/registry.ts +367 -0
  353. package/src/resolvePayload.ts +480 -0
  354. package/src/runtime.ts +32 -0
  355. package/src/safeAreaVariables.ts +19 -0
  356. package/src/scanFlatValue.ts +327 -0
  357. package/src/serializePayload.ts +199 -0
  358. package/src/stateModifiers.ts +36 -0
  359. package/src/states.ts +128 -0
  360. package/src/table.ts +47 -0
  361. package/src/textDecorationFamily.ts +119 -0
  362. package/src/tooling.ts +8 -0
  363. package/src/toolingAnnotations.ts +151 -0
  364. package/src/toolingDiagnostics.ts +735 -0
  365. package/src/toolingRegistry.ts +130 -0
  366. package/src/transformFamily.ts +590 -0
  367. package/src/transition.ts +553 -0
  368. package/src/transitionAlign.ts +165 -0
  369. package/src/transitionLegacy.ts +237 -0
  370. package/src/transitionNative.ts +357 -0
  371. package/src/unitlessNumbers.ts +61 -0
  372. package/src/v6ThemeNames.ts +40 -0
  373. package/src/valueParser.ts +193 -0
  374. package/src/valueTypes.ts +136 -0
  375. package/types/backgroundFamily.d.ts +17 -0
  376. package/types/backgroundFamily.d.ts.map +11 -0
  377. package/types/borderFamily.d.ts +23 -0
  378. package/types/borderFamily.d.ts.map +11 -0
  379. package/types/candidate.d.ts +52 -0
  380. package/types/candidate.d.ts.map +11 -0
  381. package/types/candidateTarget.d.ts +32 -0
  382. package/types/candidateTarget.d.ts.map +11 -0
  383. package/types/clauseCapability.d.ts +69 -0
  384. package/types/clauseCapability.d.ts.map +11 -0
  385. package/types/clausePrecedence.d.ts +30 -0
  386. package/types/clausePrecedence.d.ts.map +11 -0
  387. package/types/clauseSources.d.ts +12 -0
  388. package/types/clauseSources.d.ts.map +11 -0
  389. package/types/config.d.ts +44 -0
  390. package/types/config.d.ts.map +11 -0
  391. package/types/evaluateProgram.d.ts +27 -0
  392. package/types/evaluateProgram.d.ts.map +11 -0
  393. package/types/fontShorthand.d.ts +25 -0
  394. package/types/fontShorthand.d.ts.map +11 -0
  395. package/types/geometricShorthand.d.ts +21 -0
  396. package/types/geometricShorthand.d.ts.map +11 -0
  397. package/types/index.d.ts +3 -0
  398. package/types/index.d.ts.map +11 -0
  399. package/types/lowerProgram.d.ts +73 -0
  400. package/types/lowerProgram.d.ts.map +11 -0
  401. package/types/mergeFlatValues.d.ts +14 -0
  402. package/types/mergeFlatValues.d.ts.map +11 -0
  403. package/types/modifierRegistry.d.ts +70 -0
  404. package/types/modifierRegistry.d.ts.map +11 -0
  405. package/types/payloadShape.d.ts +15 -0
  406. package/types/payloadShape.d.ts.map +11 -0
  407. package/types/programEligibility.d.ts +23 -0
  408. package/types/programEligibility.d.ts.map +11 -0
  409. package/types/programHash.d.ts +20 -0
  410. package/types/programHash.d.ts.map +11 -0
  411. package/types/programs.d.ts +18 -0
  412. package/types/programs.d.ts.map +11 -0
  413. package/types/registry.d.ts +24 -0
  414. package/types/registry.d.ts.map +11 -0
  415. package/types/resolvePayload.d.ts +75 -0
  416. package/types/resolvePayload.d.ts.map +11 -0
  417. package/types/runtime.d.ts +34 -0
  418. package/types/runtime.d.ts.map +11 -0
  419. package/types/safeAreaVariables.d.ts +5 -0
  420. package/types/safeAreaVariables.d.ts.map +11 -0
  421. package/types/scanFlatValue.d.ts +29 -0
  422. package/types/scanFlatValue.d.ts.map +11 -0
  423. package/types/serializePayload.d.ts +13 -0
  424. package/types/serializePayload.d.ts.map +11 -0
  425. package/types/stateModifiers.d.ts +14 -0
  426. package/types/stateModifiers.d.ts.map +11 -0
  427. package/types/states.d.ts +22 -0
  428. package/types/states.d.ts.map +11 -0
  429. package/types/table.d.ts +4 -0
  430. package/types/table.d.ts.map +11 -0
  431. package/types/textDecorationFamily.d.ts +23 -0
  432. package/types/textDecorationFamily.d.ts.map +11 -0
  433. package/types/tooling.d.ts +10 -0
  434. package/types/tooling.d.ts.map +11 -0
  435. package/types/toolingAnnotations.d.ts +29 -0
  436. package/types/toolingAnnotations.d.ts.map +11 -0
  437. package/types/toolingDiagnostics.d.ts +114 -0
  438. package/types/toolingDiagnostics.d.ts.map +11 -0
  439. package/types/toolingRegistry.d.ts +10 -0
  440. package/types/toolingRegistry.d.ts.map +11 -0
  441. package/types/transformFamily.d.ts +83 -0
  442. package/types/transformFamily.d.ts.map +11 -0
  443. package/types/transition.d.ts +65 -0
  444. package/types/transition.d.ts.map +11 -0
  445. package/types/transitionAlign.d.ts +15 -0
  446. package/types/transitionAlign.d.ts.map +11 -0
  447. package/types/transitionLegacy.d.ts +9 -0
  448. package/types/transitionLegacy.d.ts.map +11 -0
  449. package/types/transitionNative.d.ts +41 -0
  450. package/types/transitionNative.d.ts.map +11 -0
  451. package/types/unitlessNumbers.d.ts +3 -0
  452. package/types/unitlessNumbers.d.ts.map +11 -0
  453. package/types/v6ThemeNames.d.ts +7 -0
  454. package/types/v6ThemeNames.d.ts.map +11 -0
  455. package/types/valueParser.d.ts +36 -0
  456. package/types/valueParser.d.ts.map +11 -0
  457. package/types/valueTypes.d.ts +66 -0
  458. package/types/valueTypes.d.ts.map +11 -0
@@ -0,0 +1,459 @@
1
+
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all) __defProp(target, name, {
8
+ get: all[name],
9
+ enumerable: true
10
+ });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ }
19
+ return to;
20
+ };
21
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
+ var toolingDiagnostics_exports = {};
23
+ __export(toolingDiagnostics_exports, {
24
+ canonicalizeStyleValue: () => canonicalizeStyleValue,
25
+ completeStyleValue: () => completeStyleValue,
26
+ completeStyleValueAtCursor: () => completeStyleValueAtCursor,
27
+ createCandidatePropertyVocabulary: () => createCandidatePropertyVocabulary,
28
+ createGrammarConfigViewFromSerializedConfig: () => createGrammarConfigViewFromSerializedConfig,
29
+ createStylePropSet: () => createStylePropSet,
30
+ diagnoseStyleValue: () => diagnoseStyleValue,
31
+ diagnoseStyleValueProgram: () => diagnoseStyleValueProgram,
32
+ modifierChainBefore: () => modifierChainBefore,
33
+ referenceKindFor: () => referenceKindFor
34
+ });
35
+ module.exports = __toCommonJS(toolingDiagnostics_exports);
36
+ var import_candidateTarget = require("./candidateTarget.cjs");
37
+ var import_config = require("./config.cjs");
38
+ var import_geometricShorthand = require("./geometricShorthand.cjs");
39
+ var import_mergeFlatValues = require("./mergeFlatValues.cjs");
40
+ var import_payloadShape = require("./payloadShape.cjs");
41
+ var import_programEligibility = require("./programEligibility.cjs");
42
+ var import_resolvePayload = require("./resolvePayload.cjs");
43
+ var import_registry = require("./registry.cjs");
44
+ var import_valueParser = require("./valueParser.cjs");
45
+ var import_v6ThemeNames = require("./v6ThemeNames.cjs");
46
+ function canonicalizeStyleValue(input, registry) {
47
+ const parsed = (0, import_valueParser.parseValue)(input, registry);
48
+ if (!parsed.ok) return parsed;
49
+ return {
50
+ ok: true,
51
+ value: (0, import_mergeFlatValues.formatParsedValue)(parsed.value),
52
+ parsed: parsed.value
53
+ };
54
+ }
55
+ function forEachName(names, visit) {
56
+ if (!names) return;
57
+ if (Array.isArray(names)) {
58
+ for (const name of names) visit(name);
59
+ return;
60
+ }
61
+ if (names instanceof Set) {
62
+ for (const name of names) visit(name);
63
+ return;
64
+ }
65
+ for (const name in names) visit(name);
66
+ }
67
+ function createCandidatePropertyVocabulary(config) {
68
+ const byName = /* @__PURE__ */ new Map();
69
+ const entriesByCategory = /* @__PURE__ */ new Map();
70
+ for (const entry of import_registry.grammarEntries) {
71
+ if (!entry.tokenCategory) continue;
72
+ const contributions = entriesByCategory.get(entry.tokenCategory) || [];
73
+ contributions.push({
74
+ property: entry.prop,
75
+ tokenCategory: entry.tokenCategory
76
+ });
77
+ entriesByCategory.set(entry.tokenCategory, contributions);
78
+ }
79
+ for (const [category, contributions] of entriesByCategory) {
80
+ forEachName(config.tokenNames?.[category], (name) => {
81
+ const existing = byName.get(name) || [];
82
+ for (const contribution of contributions) {
83
+ if (!existing.some((item) => item.property === contribution.property)) {
84
+ existing.push(contribution);
85
+ }
86
+ }
87
+ byName.set(name, existing);
88
+ });
89
+ }
90
+ return byName;
91
+ }
92
+ function createGrammarConfigViewFromSerializedConfig(config, metadata) {
93
+ const isVersioned = typeof metadata === "object" && metadata !== null && metadata.themeFields === "values-only";
94
+ if (metadata !== void 0 && !isVersioned) {
95
+ throw new Error("@tamagui/style-grammar: unsupported serialized config themeFields format");
96
+ }
97
+ const themes = {};
98
+ for (const themeName in config.themes) {
99
+ const serializedTheme = config.themes[themeName];
100
+ if (!serializedTheme || typeof serializedTheme !== "object") continue;
101
+ const runtimeTheme = {};
102
+ for (const key in serializedTheme) {
103
+ if (isVersioned || key !== "id") {
104
+ runtimeTheme[key] = serializedTheme[key];
105
+ }
106
+ }
107
+ themes[themeName] = runtimeTheme;
108
+ }
109
+ return (0, import_config.createGrammarConfigView)({
110
+ shorthands: config.shorthands,
111
+ media: config.media,
112
+ themes,
113
+ tokensParsed: config.tokens,
114
+ fontsParsed: config.fonts
115
+ });
116
+ }
117
+ const removedThemeNames = new Set(import_v6ThemeNames.v6RemovedThemeNames);
118
+ const grammarProperties = new Set(import_registry.grammarEntries.map((entry) => entry.prop));
119
+ const categoryReferenceKind = {
120
+ color: "color",
121
+ space: "length",
122
+ size: "length",
123
+ radius: "length",
124
+ zIndex: "number",
125
+ fontFamily: "other",
126
+ fontSize: "length",
127
+ fontWeight: "number",
128
+ lineHeight: "length",
129
+ letterSpacing: "length"
130
+ };
131
+ function referenceKindFor(contributions, targetProperty) {
132
+ let fallback;
133
+ for (const contribution of contributions) {
134
+ const kind = contribution.tokenCategory ? categoryReferenceKind[contribution.tokenCategory] : "other";
135
+ if (contribution.property === targetProperty) return kind;
136
+ if (fallback !== "color") fallback = kind;
137
+ }
138
+ return fallback ?? "other";
139
+ }
140
+ function parseErrorSpan(input, error) {
141
+ const length = input.length;
142
+ if (error.code === "unregistered-modifier" && error.modifier) {
143
+ return {
144
+ start: error.index,
145
+ end: error.index + error.modifier.length
146
+ };
147
+ }
148
+ if (error.code === "unterminated-string" || error.code === "unterminated-function" || error.code === "unterminated-comment") {
149
+ return {
150
+ start: Math.max(0, Math.min(error.index, length - 1)),
151
+ end: length
152
+ };
153
+ }
154
+ const start = Math.max(0, Math.min(error.index, length - 1));
155
+ const width = error.code === "stray-comment-close" ? 2 : 1;
156
+ return {
157
+ start,
158
+ end: Math.min(length, start + width)
159
+ };
160
+ }
161
+ function candidateEndWithSuffix(payload, end) {
162
+ if (payload.charCodeAt(end) !== 47) return end;
163
+ let cursor = end + 1;
164
+ while (cursor < payload.length) {
165
+ const code = payload.charCodeAt(cursor);
166
+ if (code === 32 || code === 9 || code === 10 || code === 13 || code === 12) break;
167
+ if (code === 44 || code === 40 || code === 41) break;
168
+ cursor++;
169
+ }
170
+ return cursor;
171
+ }
172
+ function diagnoseStyleValue(property, input, options) {
173
+ const { result, spans } = (0, import_valueParser.parseValueWithSourceSpans)(input, options.registry);
174
+ if (!result.ok) {
175
+ return result.errors.map((error) => {
176
+ const span = parseErrorSpan(input, error);
177
+ return {
178
+ code: error.code,
179
+ index: span.start,
180
+ ...span,
181
+ message: error.message
182
+ };
183
+ });
184
+ }
185
+ const targetProperty = options.config.shorthands?.[property] || property;
186
+ const targetIsKnown = grammarProperties.has(targetProperty);
187
+ const candidates = options.candidates || createCandidatePropertyVocabulary(options.config);
188
+ const diagnostics = [];
189
+ const diagnosed = /* @__PURE__ */ new Set();
190
+ const push = (key, diagnostic) => {
191
+ if (diagnosed.has(key)) return;
192
+ diagnosed.add(key);
193
+ diagnostics.push({
194
+ index: diagnostic.start,
195
+ ...diagnostic
196
+ });
197
+ };
198
+ const diagnoseSegment = (payload, offset) => {
199
+ const sightings = [];
200
+ const resolved = (0, import_resolvePayload.resolvePayload)(payload, {
201
+ lookup(name) {
202
+ const contributions2 = candidates.get(name);
203
+ if (!contributions2) return void 0;
204
+ return {
205
+ name,
206
+ kind: referenceKindFor(contributions2, targetProperty)
207
+ };
208
+ },
209
+ onCandidate(start, end, name, reference) {
210
+ sightings.push({
211
+ start,
212
+ end,
213
+ name,
214
+ resolved: reference
215
+ });
216
+ if (reference) return;
217
+ const replacement = import_v6ThemeNames.v6ThemeNameReplacements[name];
218
+ if (replacement) {
219
+ push(`v6-theme-name-replaced:${name}`, {
220
+ code: "v6-theme-name-replaced",
221
+ start: offset + start,
222
+ end: offset + end,
223
+ candidate: name,
224
+ replacement,
225
+ message: `"${name}" is not a v6 built-in name; use "${replacement}"`
226
+ });
227
+ } else if (removedThemeNames.has(name)) {
228
+ push(`v6-theme-name-removed:${name}`, {
229
+ code: "v6-theme-name-removed",
230
+ start: offset + start,
231
+ end: offset + end,
232
+ candidate: name,
233
+ message: `"${name}" was removed from the v6 built-in theme vocabulary`
234
+ });
235
+ }
236
+ }
237
+ });
238
+ if (targetIsKnown) {
239
+ for (const error of resolved.errors) {
240
+ const sighting2 = sightings.find((entry) => entry.start === error.index);
241
+ if (!sighting2?.resolved) continue;
242
+ push(`${error.code}:${error.name}:${error.opacity}`, {
243
+ code: error.code,
244
+ start: offset + error.index,
245
+ end: offset + candidateEndWithSuffix(payload, sighting2.end),
246
+ candidate: error.name,
247
+ message: error.message
248
+ });
249
+ }
250
+ }
251
+ const candidate = resolved.segments.length === 1 && typeof resolved.segments[0] !== "string" ? resolved.segments[0].name : null;
252
+ if (candidate === null || !targetIsKnown) return;
253
+ const contributions = candidates.get(candidate);
254
+ if (!contributions) return;
255
+ const target = (0, import_candidateTarget.resolveCandidateTarget)(targetProperty, candidate, contributions);
256
+ if (target.ok) return;
257
+ const sighting = sightings.find((entry) => entry.name === candidate && entry.resolved);
258
+ push(`${target.diagnostic.code}:${candidate}:${targetProperty}`, {
259
+ ...target.diagnostic,
260
+ start: offset + (sighting?.start ?? 0),
261
+ end: offset + (sighting?.end ?? payload.length)
262
+ });
263
+ };
264
+ for (const span of spans) {
265
+ if (span.kind !== "base" && span.kind !== "payload") continue;
266
+ if (span.start >= span.end) continue;
267
+ diagnoseSegment(input.slice(span.start, span.end), span.start);
268
+ }
269
+ return diagnostics;
270
+ }
271
+ function modifierChainBefore(input, spans, start) {
272
+ const byEnd = /* @__PURE__ */ new Map();
273
+ for (const span of spans) {
274
+ if (span.kind === "modifier") byEnd.set(span.end, span);
275
+ }
276
+ const reversed = [];
277
+ let colon = start - 1;
278
+ while (colon >= 0 && input.charCodeAt(colon) === 58) {
279
+ const span = byEnd.get(colon);
280
+ if (!span) break;
281
+ reversed.push(input.slice(span.start, span.end));
282
+ colon = span.start - 1;
283
+ }
284
+ reversed.reverse();
285
+ return reversed;
286
+ }
287
+ function createStylePropSet(config) {
288
+ const styleProps = /* @__PURE__ */ new Set([...import_registry.grammarEntries.map((entry) => entry.prop), ...Object.keys(import_programEligibility.legacyPartComposite)]);
289
+ for (const shorthand in config.shorthands) {
290
+ styleProps.add(shorthand);
291
+ styleProps.add(config.shorthands[shorthand]);
292
+ }
293
+ return styleProps;
294
+ }
295
+ function payloadSpan(input, payload) {
296
+ const at = input.indexOf(payload);
297
+ return at === -1 ? {
298
+ start: 0,
299
+ end: input.length
300
+ } : {
301
+ start: at,
302
+ end: at + payload.length
303
+ };
304
+ }
305
+ function diagnoseStyleValueProgram(property, input, options) {
306
+ const candidates = options.candidates || createCandidatePropertyVocabulary(options.config);
307
+ const scoped = {
308
+ ...options,
309
+ candidates
310
+ };
311
+ const diagnostics = diagnoseStyleValue(property, input, scoped);
312
+ if (diagnostics.length > 0) return diagnostics;
313
+ const parsed = (0, import_valueParser.parseValue)(input, options.registry);
314
+ if (!parsed.ok) return diagnostics;
315
+ const targetProperty = options.config.shorthands?.[property] || property;
316
+ if (parsed.value.clauses.length > 0 && (0, import_programEligibility.programEligibility)(targetProperty) === "legacy-part") {
317
+ return [{
318
+ code: "legacy-part-conditional",
319
+ index: 0,
320
+ start: 0,
321
+ end: input.length,
322
+ property: targetProperty,
323
+ message: `conditional values are not supported on part prop "${targetProperty}"; move the condition onto \`${import_programEligibility.legacyPartComposite[targetProperty]}\``
324
+ }];
325
+ }
326
+ const results = [];
327
+ const reported = /* @__PURE__ */ new Set();
328
+ const geometric = (0, import_geometricShorthand.splitGeometricShorthandValue)(targetProperty, parsed.value);
329
+ const programs = geometric && geometric.errors.length === 0 ? geometric.entries : [{
330
+ property: targetProperty,
331
+ value: parsed.value
332
+ }];
333
+ for (const program of programs) {
334
+ const { base, clauses } = program.value;
335
+ const payloads = [...base === null ? [] : [base], ...clauses.map((clause) => clause.payload)];
336
+ for (const payload of payloads) {
337
+ for (const diagnostic of diagnoseStyleValueProgramSlot(program.property, payload, scoped)) {
338
+ const key = `${diagnostic.code}:${diagnostic.candidate}:${program.property}`;
339
+ if (reported.has(key)) continue;
340
+ reported.add(key);
341
+ const span = payloadSpan(input, payload);
342
+ results.push({
343
+ ...diagnostic,
344
+ index: span.start,
345
+ ...span
346
+ });
347
+ }
348
+ }
349
+ if (base !== null) {
350
+ pushShapeDiagnostic(results, reported, input, program.property, base, true);
351
+ }
352
+ for (const clause of clauses) {
353
+ pushShapeDiagnostic(results, reported, input, program.property, clause.payload, base !== null);
354
+ }
355
+ }
356
+ return results;
357
+ }
358
+ function diagnoseStyleValueProgramSlot(property, payload, options) {
359
+ const slotDiagnostics = diagnoseStyleValue(property, payload, options);
360
+ return slotDiagnostics.filter((diagnostic) => diagnostic.code === "candidate-property-mismatch");
361
+ }
362
+ function pushShapeDiagnostic(results, reported, input, property, payload, hasBase) {
363
+ const diagnostic = (0, import_payloadShape.validatePayloadShape)(property, payload, hasBase);
364
+ if (!diagnostic) return;
365
+ const key = `${diagnostic.code}:${diagnostic.payload}:${property}`;
366
+ if (reported.has(key)) return;
367
+ reported.add(key);
368
+ const span = payloadSpan(input, payload);
369
+ results.push({
370
+ code: diagnostic.code,
371
+ index: span.start,
372
+ ...span,
373
+ property,
374
+ message: diagnostic.message
375
+ });
376
+ }
377
+ function completeStyleValue(property, options) {
378
+ const candidates = options.candidates || createCandidatePropertyVocabulary(options.config);
379
+ const targetProperty = options.config.shorthands?.[property] || property;
380
+ if (!grammarProperties.has(targetProperty)) return [];
381
+ const byValue = /* @__PURE__ */ new Map();
382
+ for (const [value, contributions] of candidates) {
383
+ if ((0, import_candidateTarget.resolveCandidateTarget)(targetProperty, value, contributions).ok) {
384
+ byValue.set(value, "configured");
385
+ }
386
+ }
387
+ const standalone = import_registry.standaloneValueProps[targetProperty];
388
+ if (standalone) {
389
+ for (const value in standalone) {
390
+ if (!byValue.has(value)) byValue.set(value, "keyword");
391
+ }
392
+ }
393
+ if (targetProperty === "fontWeight") {
394
+ for (const value in import_registry.fontWeightNames) {
395
+ if (!byValue.has(value)) byValue.set(value, "keyword");
396
+ }
397
+ }
398
+ const completions = [];
399
+ for (const [value, kind] of byValue) {
400
+ if (diagnoseStyleValue(property, value, {
401
+ ...options,
402
+ candidates
403
+ }).length === 0) {
404
+ completions.push({
405
+ value,
406
+ kind
407
+ });
408
+ }
409
+ }
410
+ completions.sort((a, b) => a.value < b.value ? -1 : a.value > b.value ? 1 : 0);
411
+ return completions;
412
+ }
413
+ function completeStyleValueAtCursor(property, input, cursor, options) {
414
+ if (cursor < 0 || cursor > input.length) return null;
415
+ const parsed = (0, import_valueParser.parseValueWithSourceSpans)(input, options.registry);
416
+ const active = parsed.spans.find((span) => cursor >= span.start && cursor <= span.end && span.kind === "modifier") ?? parsed.spans.find((span) => cursor >= span.start && cursor <= span.end && span.kind === "word" && span.start > 0 && parsed.result.ok && parsed.spans.some((segment) => (segment.kind === "base" || segment.kind === "payload") && segment.start < span.start && segment.end >= span.end)) ?? parsed.spans.find((span) => cursor >= span.start && cursor <= span.end && span.kind !== "modifier" && span.kind !== "word");
417
+ if (active?.kind === "modifier" || active?.kind === "word") {
418
+ if (!parsed.result.ok && parsed.result.errors.some((error) => error.code !== "unregistered-modifier" && error.code !== "empty-modifier" && error.code !== "empty-payload")) {
419
+ return null;
420
+ }
421
+ return {
422
+ replaceStart: active.start,
423
+ replaceLength: active.end - active.start,
424
+ completions: completeModifiers(options, input.charCodeAt(active.end) !== 58, active.kind === "modifier" ? modifierChainBefore(input, parsed.spans, active.start) : [])
425
+ };
426
+ }
427
+ if (active) {
428
+ if (!parsed.result.ok && parsed.result.errors.some((error) => error.code !== "empty-payload")) {
429
+ return null;
430
+ }
431
+ return {
432
+ replaceStart: active.start,
433
+ replaceLength: active.end - active.start,
434
+ completions: active.kind === "payload" && input.charCodeAt(active.start - 1) === 58 ? [...completeModifiers(options, true, modifierChainBefore(input, parsed.spans, active.start)), ...completeStyleValue(property, options)] : completeStyleValue(property, options)
435
+ };
436
+ }
437
+ if (parsed.result.ok && cursor === input.length) {
438
+ return {
439
+ replaceStart: cursor,
440
+ replaceLength: 0,
441
+ completions: completeModifiers(options, true, [])
442
+ };
443
+ }
444
+ return null;
445
+ }
446
+ function completeModifiers(options, appendColon, modifiers) {
447
+ const names = options.registry.next?.(modifiers);
448
+ if (!names) return [];
449
+ const completions = [];
450
+ for (const name of names) {
451
+ completions.push({
452
+ value: name,
453
+ kind: "modifier",
454
+ insertText: appendColon ? `${name}:` : name
455
+ });
456
+ }
457
+ completions.sort((a, b) => a.value < b.value ? -1 : a.value > b.value ? 1 : 0);
458
+ return completions;
459
+ }