@tenphi/tasty 0.0.0-snapshot.bbd10c7 → 0.0.0-snapshot.bbfcd75

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 (370) hide show
  1. package/README.md +196 -140
  2. package/dist/babel-Zs1Q03qt.d.ts +83 -0
  3. package/dist/chunks/async-storage-CG5HnUT5.js +20 -0
  4. package/dist/chunks/async-storage-CG5HnUT5.js.map +1 -0
  5. package/dist/chunks/build-config-CUQVwdWF.js +42 -0
  6. package/dist/chunks/build-config-CUQVwdWF.js.map +1 -0
  7. package/dist/chunks/collector-B0LTHw6Z.js +208 -0
  8. package/dist/chunks/collector-B0LTHw6Z.js.map +1 -0
  9. package/dist/chunks/config-engine-C3pF9EK9.js +267 -0
  10. package/dist/chunks/config-engine-C3pF9EK9.js.map +1 -0
  11. package/dist/chunks/css-definitions-D_it4XZH.js +875 -0
  12. package/dist/chunks/css-definitions-D_it4XZH.js.map +1 -0
  13. package/dist/chunks/css-resources-BN8apgxt.js +142 -0
  14. package/dist/chunks/css-resources-BN8apgxt.js.map +1 -0
  15. package/dist/{debug.js → chunks/debug-C9LeNVoJ.js} +187 -139
  16. package/dist/chunks/debug-C9LeNVoJ.js.map +1 -0
  17. package/dist/chunks/dsl-C5yuAn41.js +1373 -0
  18. package/dist/chunks/dsl-C5yuAn41.js.map +1 -0
  19. package/dist/chunks/hydration-TRcz5vnk.js +41 -0
  20. package/dist/chunks/hydration-TRcz5vnk.js.map +1 -0
  21. package/dist/chunks/react-runtime-O-OUrKLH.js +557 -0
  22. package/dist/chunks/react-runtime-O-OUrKLH.js.map +1 -0
  23. package/dist/chunks/runtime-engine-DvnE2g-E.js +2437 -0
  24. package/dist/chunks/runtime-engine-DvnE2g-E.js.map +1 -0
  25. package/dist/chunks/runtime-state-BTDqSYBk.js +127 -0
  26. package/dist/chunks/runtime-state-BTDqSYBk.js.map +1 -0
  27. package/dist/{utils/merge-styles.js → chunks/shared-utils-DWA4LjIa.js} +55 -55
  28. package/dist/chunks/shared-utils-DWA4LjIa.js.map +1 -0
  29. package/dist/chunks/style-engine-C1ECBZxR.js +5131 -0
  30. package/dist/chunks/style-engine-C1ECBZxR.js.map +1 -0
  31. package/dist/{zero/extractor.js → chunks/zero-engine-B6EnYcXY.js} +89 -82
  32. package/dist/chunks/zero-engine-B6EnYcXY.js.map +1 -0
  33. package/dist/collector-hl5KNH7k.d.ts +165 -0
  34. package/dist/config-DWL1ZYue.d.ts +1358 -0
  35. package/dist/core/index.d.ts +5 -34
  36. package/dist/core/index.js +9 -27
  37. package/dist/index-D9N9GV24.d.ts +1947 -0
  38. package/dist/index.d.ts +5 -51
  39. package/dist/index.js +11 -36
  40. package/dist/{utils/merge-styles.d.ts → merge-styles-C_oMoJVd.d.ts} +3 -3
  41. package/dist/ssr/astro-client.js +6 -0
  42. package/dist/ssr/astro-client.js.map +1 -0
  43. package/dist/ssr/astro-middleware-extract-static.d.ts +11 -0
  44. package/dist/ssr/astro-middleware-extract-static.js +9 -0
  45. package/dist/ssr/astro-middleware-extract-static.js.map +1 -0
  46. package/dist/ssr/astro-middleware-extract.d.ts +11 -0
  47. package/dist/ssr/astro-middleware-extract.js +9 -0
  48. package/dist/ssr/astro-middleware-extract.js.map +1 -0
  49. package/dist/ssr/astro-middleware-static.d.ts +18 -0
  50. package/dist/ssr/astro-middleware-static.js +7 -0
  51. package/dist/ssr/astro-middleware-static.js.map +1 -0
  52. package/dist/ssr/astro-middleware.d.ts +19 -0
  53. package/dist/ssr/astro-middleware.js +7 -0
  54. package/dist/ssr/astro-middleware.js.map +1 -0
  55. package/dist/ssr/astro.d.ts +117 -11
  56. package/dist/ssr/astro.js +204 -48
  57. package/dist/ssr/astro.js.map +1 -1
  58. package/dist/ssr/index.d.ts +37 -4
  59. package/dist/ssr/index.js +6 -6
  60. package/dist/ssr/index.js.map +1 -1
  61. package/dist/ssr/next-config.d.ts +66 -0
  62. package/dist/ssr/next-config.js +124 -0
  63. package/dist/ssr/next-config.js.map +1 -0
  64. package/dist/ssr/next.d.ts +14 -5
  65. package/dist/ssr/next.js +31 -46
  66. package/dist/ssr/next.js.map +1 -1
  67. package/dist/static/index.d.ts +91 -5
  68. package/dist/static/index.js +31 -3
  69. package/dist/static/index.js.map +1 -0
  70. package/dist/static/inject.js.map +1 -1
  71. package/dist/types-jKZNpias.d.ts +1616 -0
  72. package/dist/zero/babel.d.ts +2 -182
  73. package/dist/zero/babel.js +82 -113
  74. package/dist/zero/babel.js.map +1 -1
  75. package/dist/zero/index.d.ts +81 -3
  76. package/dist/zero/index.js +2 -3
  77. package/dist/zero/next.d.ts +1 -1
  78. package/dist/zero/next.js +0 -31
  79. package/dist/zero/next.js.map +1 -1
  80. package/docs/README.md +20 -12
  81. package/docs/adoption.md +59 -32
  82. package/docs/ai-agents.md +229 -0
  83. package/docs/comparison.md +76 -48
  84. package/docs/configuration.md +566 -69
  85. package/docs/debug.md +37 -23
  86. package/docs/design-system.md +63 -32
  87. package/docs/dsl.md +527 -179
  88. package/docs/getting-started.md +62 -41
  89. package/docs/injector.md +157 -51
  90. package/docs/methodology.md +69 -37
  91. package/docs/migration-v3.md +285 -0
  92. package/docs/pipeline.md +744 -0
  93. package/docs/plugins.md +353 -0
  94. package/docs/{runtime.md → react-api.md} +176 -67
  95. package/docs/runtime-benchmarks.md +377 -0
  96. package/docs/ssr.md +350 -94
  97. package/docs/styles.md +108 -27
  98. package/docs/tasty-static.md +149 -87
  99. package/package.json +121 -23
  100. package/tasty.config.ts +6 -0
  101. package/dist/_virtual/_rolldown/runtime.js +0 -7
  102. package/dist/chunks/cacheKey.js +0 -77
  103. package/dist/chunks/cacheKey.js.map +0 -1
  104. package/dist/chunks/definitions.d.ts +0 -37
  105. package/dist/chunks/definitions.js +0 -258
  106. package/dist/chunks/definitions.js.map +0 -1
  107. package/dist/chunks/index.d.ts +0 -1
  108. package/dist/chunks/renderChunk.d.ts +0 -1
  109. package/dist/chunks/renderChunk.js +0 -59
  110. package/dist/chunks/renderChunk.js.map +0 -1
  111. package/dist/compute-styles.d.ts +0 -31
  112. package/dist/compute-styles.js +0 -356
  113. package/dist/compute-styles.js.map +0 -1
  114. package/dist/config.d.ts +0 -372
  115. package/dist/config.js +0 -507
  116. package/dist/config.js.map +0 -1
  117. package/dist/counter-style/index.js +0 -51
  118. package/dist/counter-style/index.js.map +0 -1
  119. package/dist/debug.d.ts +0 -89
  120. package/dist/debug.js.map +0 -1
  121. package/dist/font-face/index.js +0 -63
  122. package/dist/font-face/index.js.map +0 -1
  123. package/dist/hooks/index.d.ts +0 -7
  124. package/dist/hooks/useCounterStyle.d.ts +0 -50
  125. package/dist/hooks/useCounterStyle.js +0 -45
  126. package/dist/hooks/useCounterStyle.js.map +0 -1
  127. package/dist/hooks/useFontFace.d.ts +0 -43
  128. package/dist/hooks/useFontFace.js +0 -69
  129. package/dist/hooks/useFontFace.js.map +0 -1
  130. package/dist/hooks/useGlobalStyles.d.ts +0 -30
  131. package/dist/hooks/useGlobalStyles.js +0 -77
  132. package/dist/hooks/useGlobalStyles.js.map +0 -1
  133. package/dist/hooks/useKeyframes.d.ts +0 -56
  134. package/dist/hooks/useKeyframes.js +0 -63
  135. package/dist/hooks/useKeyframes.js.map +0 -1
  136. package/dist/hooks/useProperty.d.ts +0 -79
  137. package/dist/hooks/useProperty.js +0 -108
  138. package/dist/hooks/useProperty.js.map +0 -1
  139. package/dist/hooks/useRawCSS.d.ts +0 -53
  140. package/dist/hooks/useRawCSS.js +0 -34
  141. package/dist/hooks/useRawCSS.js.map +0 -1
  142. package/dist/hooks/useStyles.d.ts +0 -40
  143. package/dist/hooks/useStyles.js +0 -29
  144. package/dist/hooks/useStyles.js.map +0 -1
  145. package/dist/injector/index.d.ts +0 -166
  146. package/dist/injector/index.js +0 -166
  147. package/dist/injector/index.js.map +0 -1
  148. package/dist/injector/injector.d.ts +0 -166
  149. package/dist/injector/injector.js +0 -464
  150. package/dist/injector/injector.js.map +0 -1
  151. package/dist/injector/sheet-manager.d.ts +0 -136
  152. package/dist/injector/sheet-manager.js +0 -733
  153. package/dist/injector/sheet-manager.js.map +0 -1
  154. package/dist/injector/types.d.ts +0 -204
  155. package/dist/keyframes/index.js +0 -206
  156. package/dist/keyframes/index.js.map +0 -1
  157. package/dist/parser/classify.js +0 -319
  158. package/dist/parser/classify.js.map +0 -1
  159. package/dist/parser/const.js +0 -60
  160. package/dist/parser/const.js.map +0 -1
  161. package/dist/parser/lru.js +0 -109
  162. package/dist/parser/lru.js.map +0 -1
  163. package/dist/parser/parser.d.ts +0 -25
  164. package/dist/parser/parser.js +0 -115
  165. package/dist/parser/parser.js.map +0 -1
  166. package/dist/parser/tokenizer.js +0 -69
  167. package/dist/parser/tokenizer.js.map +0 -1
  168. package/dist/parser/types.d.ts +0 -51
  169. package/dist/parser/types.js +0 -46
  170. package/dist/parser/types.js.map +0 -1
  171. package/dist/pipeline/conditions.d.ts +0 -134
  172. package/dist/pipeline/conditions.js +0 -406
  173. package/dist/pipeline/conditions.js.map +0 -1
  174. package/dist/pipeline/exclusive.js +0 -230
  175. package/dist/pipeline/exclusive.js.map +0 -1
  176. package/dist/pipeline/index.d.ts +0 -55
  177. package/dist/pipeline/index.js +0 -708
  178. package/dist/pipeline/index.js.map +0 -1
  179. package/dist/pipeline/materialize.js +0 -1103
  180. package/dist/pipeline/materialize.js.map +0 -1
  181. package/dist/pipeline/parseStateKey.d.ts +0 -15
  182. package/dist/pipeline/parseStateKey.js +0 -446
  183. package/dist/pipeline/parseStateKey.js.map +0 -1
  184. package/dist/pipeline/simplify.js +0 -515
  185. package/dist/pipeline/simplify.js.map +0 -1
  186. package/dist/pipeline/warnings.js +0 -18
  187. package/dist/pipeline/warnings.js.map +0 -1
  188. package/dist/plugins/index.d.ts +0 -2
  189. package/dist/plugins/okhsl-plugin.d.ts +0 -35
  190. package/dist/plugins/okhsl-plugin.js +0 -97
  191. package/dist/plugins/okhsl-plugin.js.map +0 -1
  192. package/dist/plugins/types.d.ts +0 -76
  193. package/dist/properties/index.js +0 -222
  194. package/dist/properties/index.js.map +0 -1
  195. package/dist/properties/property-type-resolver.d.ts +0 -24
  196. package/dist/properties/property-type-resolver.js +0 -90
  197. package/dist/properties/property-type-resolver.js.map +0 -1
  198. package/dist/ssr/async-storage.d.ts +0 -17
  199. package/dist/ssr/async-storage.js +0 -34
  200. package/dist/ssr/async-storage.js.map +0 -1
  201. package/dist/ssr/collect-auto-properties.js +0 -39
  202. package/dist/ssr/collect-auto-properties.js.map +0 -1
  203. package/dist/ssr/collector.d.ts +0 -102
  204. package/dist/ssr/collector.js +0 -219
  205. package/dist/ssr/collector.js.map +0 -1
  206. package/dist/ssr/format-global-rules.js +0 -22
  207. package/dist/ssr/format-global-rules.js.map +0 -1
  208. package/dist/ssr/format-keyframes.js +0 -69
  209. package/dist/ssr/format-keyframes.js.map +0 -1
  210. package/dist/ssr/format-property.js +0 -49
  211. package/dist/ssr/format-property.js.map +0 -1
  212. package/dist/ssr/format-rules.js +0 -73
  213. package/dist/ssr/format-rules.js.map +0 -1
  214. package/dist/ssr/hydrate.d.ts +0 -22
  215. package/dist/ssr/hydrate.js +0 -49
  216. package/dist/ssr/hydrate.js.map +0 -1
  217. package/dist/ssr/ssr-collector-ref.js +0 -12
  218. package/dist/ssr/ssr-collector-ref.js.map +0 -1
  219. package/dist/states/index.d.ts +0 -49
  220. package/dist/states/index.js +0 -170
  221. package/dist/states/index.js.map +0 -1
  222. package/dist/static/tastyStatic.d.ts +0 -46
  223. package/dist/static/tastyStatic.js +0 -30
  224. package/dist/static/tastyStatic.js.map +0 -1
  225. package/dist/static/types.d.ts +0 -49
  226. package/dist/static/types.js +0 -24
  227. package/dist/static/types.js.map +0 -1
  228. package/dist/styles/border.d.ts +0 -25
  229. package/dist/styles/border.js +0 -120
  230. package/dist/styles/border.js.map +0 -1
  231. package/dist/styles/color.d.ts +0 -14
  232. package/dist/styles/color.js +0 -26
  233. package/dist/styles/color.js.map +0 -1
  234. package/dist/styles/const.js +0 -17
  235. package/dist/styles/const.js.map +0 -1
  236. package/dist/styles/createStyle.js +0 -79
  237. package/dist/styles/createStyle.js.map +0 -1
  238. package/dist/styles/dimension.js +0 -109
  239. package/dist/styles/dimension.js.map +0 -1
  240. package/dist/styles/directional.js +0 -133
  241. package/dist/styles/directional.js.map +0 -1
  242. package/dist/styles/display.d.ts +0 -30
  243. package/dist/styles/display.js +0 -73
  244. package/dist/styles/display.js.map +0 -1
  245. package/dist/styles/fade.d.ts +0 -15
  246. package/dist/styles/fade.js +0 -62
  247. package/dist/styles/fade.js.map +0 -1
  248. package/dist/styles/fill.d.ts +0 -42
  249. package/dist/styles/fill.js +0 -51
  250. package/dist/styles/fill.js.map +0 -1
  251. package/dist/styles/flow.d.ts +0 -16
  252. package/dist/styles/flow.js +0 -12
  253. package/dist/styles/flow.js.map +0 -1
  254. package/dist/styles/gap.d.ts +0 -31
  255. package/dist/styles/gap.js +0 -38
  256. package/dist/styles/gap.js.map +0 -1
  257. package/dist/styles/height.d.ts +0 -17
  258. package/dist/styles/height.js +0 -19
  259. package/dist/styles/height.js.map +0 -1
  260. package/dist/styles/index.d.ts +0 -1
  261. package/dist/styles/index.js +0 -8
  262. package/dist/styles/index.js.map +0 -1
  263. package/dist/styles/inset.d.ts +0 -24
  264. package/dist/styles/inset.js +0 -34
  265. package/dist/styles/inset.js.map +0 -1
  266. package/dist/styles/list.d.ts +0 -16
  267. package/dist/styles/list.js +0 -100
  268. package/dist/styles/list.js.map +0 -1
  269. package/dist/styles/margin.d.ts +0 -24
  270. package/dist/styles/margin.js +0 -32
  271. package/dist/styles/margin.js.map +0 -1
  272. package/dist/styles/outline.d.ts +0 -29
  273. package/dist/styles/outline.js +0 -55
  274. package/dist/styles/outline.js.map +0 -1
  275. package/dist/styles/padding.d.ts +0 -24
  276. package/dist/styles/padding.js +0 -32
  277. package/dist/styles/padding.js.map +0 -1
  278. package/dist/styles/placement.d.ts +0 -37
  279. package/dist/styles/placement.js +0 -74
  280. package/dist/styles/placement.js.map +0 -1
  281. package/dist/styles/predefined.d.ts +0 -71
  282. package/dist/styles/predefined.js +0 -237
  283. package/dist/styles/predefined.js.map +0 -1
  284. package/dist/styles/preset.d.ts +0 -52
  285. package/dist/styles/preset.js +0 -127
  286. package/dist/styles/preset.js.map +0 -1
  287. package/dist/styles/radius.d.ts +0 -12
  288. package/dist/styles/radius.js +0 -83
  289. package/dist/styles/radius.js.map +0 -1
  290. package/dist/styles/scrollMargin.d.ts +0 -24
  291. package/dist/styles/scrollMargin.js +0 -32
  292. package/dist/styles/scrollMargin.js.map +0 -1
  293. package/dist/styles/scrollbar.d.ts +0 -25
  294. package/dist/styles/scrollbar.js +0 -51
  295. package/dist/styles/scrollbar.js.map +0 -1
  296. package/dist/styles/shadow.d.ts +0 -14
  297. package/dist/styles/shadow.js +0 -25
  298. package/dist/styles/shadow.js.map +0 -1
  299. package/dist/styles/shared.js +0 -17
  300. package/dist/styles/shared.js.map +0 -1
  301. package/dist/styles/transition.d.ts +0 -14
  302. package/dist/styles/transition.js +0 -159
  303. package/dist/styles/transition.js.map +0 -1
  304. package/dist/styles/types.d.ts +0 -564
  305. package/dist/styles/width.d.ts +0 -17
  306. package/dist/styles/width.js +0 -19
  307. package/dist/styles/width.js.map +0 -1
  308. package/dist/tasty.d.ts +0 -134
  309. package/dist/tasty.js +0 -240
  310. package/dist/tasty.js.map +0 -1
  311. package/dist/types.d.ts +0 -184
  312. package/dist/utils/cache-wrapper.js +0 -21
  313. package/dist/utils/cache-wrapper.js.map +0 -1
  314. package/dist/utils/case-converter.js +0 -8
  315. package/dist/utils/case-converter.js.map +0 -1
  316. package/dist/utils/color-math.d.ts +0 -46
  317. package/dist/utils/color-math.js +0 -749
  318. package/dist/utils/color-math.js.map +0 -1
  319. package/dist/utils/color-space.d.ts +0 -5
  320. package/dist/utils/color-space.js +0 -228
  321. package/dist/utils/color-space.js.map +0 -1
  322. package/dist/utils/colors.d.ts +0 -5
  323. package/dist/utils/colors.js +0 -10
  324. package/dist/utils/colors.js.map +0 -1
  325. package/dist/utils/css-types.d.ts +0 -7
  326. package/dist/utils/dotize.d.ts +0 -26
  327. package/dist/utils/dotize.js +0 -122
  328. package/dist/utils/dotize.js.map +0 -1
  329. package/dist/utils/filter-base-props.d.ts +0 -15
  330. package/dist/utils/filter-base-props.js +0 -45
  331. package/dist/utils/filter-base-props.js.map +0 -1
  332. package/dist/utils/get-display-name.d.ts +0 -7
  333. package/dist/utils/get-display-name.js +0 -10
  334. package/dist/utils/get-display-name.js.map +0 -1
  335. package/dist/utils/has-keys.js +0 -13
  336. package/dist/utils/has-keys.js.map +0 -1
  337. package/dist/utils/is-dev-env.js +0 -19
  338. package/dist/utils/is-dev-env.js.map +0 -1
  339. package/dist/utils/is-valid-element-type.js +0 -15
  340. package/dist/utils/is-valid-element-type.js.map +0 -1
  341. package/dist/utils/merge-styles.js.map +0 -1
  342. package/dist/utils/mod-attrs.d.ts +0 -6
  343. package/dist/utils/mod-attrs.js +0 -20
  344. package/dist/utils/mod-attrs.js.map +0 -1
  345. package/dist/utils/process-tokens.d.ts +0 -17
  346. package/dist/utils/process-tokens.js +0 -83
  347. package/dist/utils/process-tokens.js.map +0 -1
  348. package/dist/utils/resolve-recipes.d.ts +0 -17
  349. package/dist/utils/resolve-recipes.js +0 -146
  350. package/dist/utils/resolve-recipes.js.map +0 -1
  351. package/dist/utils/selector-transform.js +0 -32
  352. package/dist/utils/selector-transform.js.map +0 -1
  353. package/dist/utils/string.js +0 -8
  354. package/dist/utils/string.js.map +0 -1
  355. package/dist/utils/styles.d.ts +0 -99
  356. package/dist/utils/styles.js +0 -220
  357. package/dist/utils/styles.js.map +0 -1
  358. package/dist/utils/typography.d.ts +0 -47
  359. package/dist/utils/typography.js +0 -51
  360. package/dist/utils/typography.js.map +0 -1
  361. package/dist/utils/warnings.d.ts +0 -16
  362. package/dist/utils/warnings.js +0 -16
  363. package/dist/utils/warnings.js.map +0 -1
  364. package/dist/zero/css-writer.d.ts +0 -45
  365. package/dist/zero/css-writer.js +0 -73
  366. package/dist/zero/css-writer.js.map +0 -1
  367. package/dist/zero/extractor.d.ts +0 -24
  368. package/dist/zero/extractor.js.map +0 -1
  369. package/docs/PIPELINE.md +0 -519
  370. /package/dist/{chunks/cacheKey.d.ts → ssr/astro-client.d.ts} +0 -0
@@ -0,0 +1,557 @@
1
+ import { n as isSelector, t as mergeStyles } from "./shared-utils-DWA4LjIa.js";
2
+ import { D as makeKeyframeName, E as makeCounterStyleName, U as parseFunctionName, V as formatFunctionRule, W as registerFunctionPolyfill, a as formatPropertyCSS, b as formatFontFaceRule, h as formatCounterStyleRule, i as formatKeyframesCSS, j as hashString, n as formatGlobalRules, v as fontFaceContentHash } from "./css-definitions-D_it4XZH.js";
3
+ import { U as isFunctionsPolyfillEnabled, b as renderStyles, i as baseStylePropsRegistry, s as BASE_STYLES } from "./style-engine-C1ECBZxR.js";
4
+ import { $ as propHandlerRegistry, B as getNamePrefix, E as injectRawCSS, I as getConfig, J as closeBatchWindow, L as getGlobalInjector, M as touch, T as injectGlobal, Z as openBatchWindow, c as hasKeys, d as getStyleTarget, f as pushRSCCSS, i as modAttrs, k as keyframes, l as collectAutoInferredProperties, n as createClientState, o as computeStyles, r as processTokens, s as resolveRecipes, t as depsEqual, u as collectAutoInferredPropertiesRSC } from "./runtime-engine-DvnE2g-E.js";
5
+ import { Fragment, createContext, createElement, forwardRef, useContext, useInsertionEffect } from "react";
6
+ //#region src/utils/get-display-name.ts
7
+ const DEFAULT_NAME = "Anonymous";
8
+ function getDisplayName(Component, fallbackName = DEFAULT_NAME) {
9
+ if (typeof Component === "function") return Component.displayName ?? Component.name ?? fallbackName;
10
+ return fallbackName;
11
+ }
12
+ //#endregion
13
+ //#region src/utils/is-valid-element-type.ts
14
+ function isValidElementType(value) {
15
+ if (typeof value === "string" || typeof value === "function") return true;
16
+ if (typeof value === "object" && value !== null) return typeof value.$$typeof === "symbol";
17
+ return false;
18
+ }
19
+ //#endregion
20
+ //#region src/tasty.tsx
21
+ function handleIsProperty(props, isProperty, targetAttribute, dataAttribute) {
22
+ if (isProperty in props) {
23
+ props[targetAttribute] = props[isProperty];
24
+ delete props[isProperty];
25
+ }
26
+ if (!(dataAttribute in props) && props[targetAttribute]) props[dataAttribute] = "";
27
+ }
28
+ function handleIsProperties(props) {
29
+ handleIsProperty(props, "isDisabled", "disabled", "data-disabled");
30
+ handleIsProperty(props, "isHidden", "hidden", "data-hidden");
31
+ handleIsProperty(props, "isChecked", "checked", "data-checked");
32
+ }
33
+ function createSubElement(elementName, definition) {
34
+ const config = typeof definition === "string" ? { as: definition } : definition;
35
+ const tag = config.as ?? "div";
36
+ const defaultQa = config.qa;
37
+ const defaultQaVal = config.qaVal;
38
+ const SubElement = forwardRef((props, ref) => {
39
+ const { qa, qaVal, mods, tokens, isDisabled, isHidden, isChecked, className, style, ...htmlProps } = props;
40
+ let modDataAttrs;
41
+ if (mods) modDataAttrs = modAttrs(mods);
42
+ const tokenStyle = tokens ? processTokens(tokens) : void 0;
43
+ let mergedStyle;
44
+ if (tokenStyle || style) mergedStyle = tokenStyle && style ? {
45
+ ...tokenStyle,
46
+ ...style
47
+ } : tokenStyle ?? style;
48
+ const elementProps = {
49
+ "data-element": elementName,
50
+ "data-qa": qa ?? defaultQa,
51
+ "data-qaval": qaVal ?? defaultQaVal,
52
+ ...modDataAttrs || {},
53
+ ...htmlProps,
54
+ className,
55
+ style: mergedStyle,
56
+ isDisabled: isDisabled ?? htmlProps.disabled,
57
+ isHidden: isHidden ?? htmlProps.hidden,
58
+ isChecked: isChecked ?? htmlProps.checked,
59
+ ref
60
+ };
61
+ handleIsProperties(elementProps);
62
+ if (elementProps["data-qa"] === void 0) delete elementProps["data-qa"];
63
+ if (elementProps["data-qaval"] === void 0) delete elementProps["data-qaval"];
64
+ return createElement(tag, elementProps);
65
+ });
66
+ SubElement.displayName = `SubElement(${elementName})`;
67
+ return SubElement;
68
+ }
69
+ function buildTokenPropsMapping(def) {
70
+ if (Array.isArray(def)) return def.map((propName) => {
71
+ if (propName.endsWith("Color") && propName.length > 5) return [propName, `#${propName.slice(0, -5)}`];
72
+ return [propName, `$${propName}`];
73
+ });
74
+ return Object.entries(def);
75
+ }
76
+ function tasty(Component, options) {
77
+ if (isValidElementType(Component)) return tastyWrap(Component, options);
78
+ return tastyElement(Component);
79
+ }
80
+ function tastyWrap(Component, options) {
81
+ const { as: extendTag, element: extendElement, styleProps: _styleProps, modProps: _modProps, tokenProps: _tokenProps, variants: _variants, elements: _elements, ...defaultProps } = options ?? {};
82
+ const propsWithStyles = ["styles"];
83
+ for (const prop of Object.keys(defaultProps)) if (prop.endsWith("Styles")) propsWithStyles.push(prop);
84
+ const _WrappedComponent = forwardRef((props, ref) => {
85
+ const { as, element, ...restProps } = props;
86
+ const mergedStylesMap = {};
87
+ for (const prop of propsWithStyles) {
88
+ const restValue = restProps[prop];
89
+ const defaultValue = defaultProps[prop];
90
+ mergedStylesMap[prop] = restValue != null && defaultValue != null ? mergeStyles(defaultValue, restValue) : restValue ?? defaultValue;
91
+ }
92
+ return createElement(Component, {
93
+ ...defaultProps,
94
+ ...restProps,
95
+ ...mergedStylesMap,
96
+ as: as ?? extendTag,
97
+ element: element || extendElement,
98
+ ref
99
+ });
100
+ });
101
+ _WrappedComponent.displayName = `TastyWrappedComponent(${getDisplayName(Component, defaultProps.qa ?? extendTag ?? "Anonymous")})`;
102
+ return _WrappedComponent;
103
+ }
104
+ function tastyElement(tastyOptions) {
105
+ const { as: originalAs = "div", element: defaultElement, styles: defaultStyles, styleProps, modProps: modPropsDef, tokenProps: tokenPropsDef, variants, tokens: defaultTokens, elements, ...defaultProps } = tastyOptions;
106
+ let variantStylesMap;
107
+ if (variants) {
108
+ let baseStyles = defaultStyles;
109
+ let extensionStyles;
110
+ if (defaultStyles) for (const key of Object.keys(defaultStyles)) {
111
+ if (isSelector(key)) continue;
112
+ const value = defaultStyles[key];
113
+ if (typeof value === "object" && value !== null && !Array.isArray(value) && !("" in value)) {
114
+ if (!extensionStyles) {
115
+ baseStyles = { ...defaultStyles };
116
+ extensionStyles = {};
117
+ }
118
+ extensionStyles[key] = value;
119
+ delete baseStyles[key];
120
+ }
121
+ }
122
+ variantStylesMap = {};
123
+ for (const [variant, variantStyles] of Object.entries(variants)) variantStylesMap[variant] = extensionStyles ? mergeStyles(baseStyles, variantStyles, extensionStyles) : mergeStyles(baseStyles, variantStyles);
124
+ if (!variantStylesMap["default"]) variantStylesMap["default"] = defaultStyles;
125
+ }
126
+ const { qa: defaultQa, qaVal: defaultQaVal, ...otherDefaultProps } = defaultProps;
127
+ const ownPropsToCheck = styleProps ? styleProps.concat(BASE_STYLES) : BASE_STYLES;
128
+ let propsToCheck = ownPropsToCheck;
129
+ let propsToCheckVersion = -1;
130
+ const modPropsKeys = modPropsDef ? Array.isArray(modPropsDef) ? modPropsDef : Object.keys(modPropsDef) : void 0;
131
+ const tokenPropsMapping = tokenPropsDef ? buildTokenPropsMapping(tokenPropsDef) : void 0;
132
+ const classNameCache = /* @__PURE__ */ new Map();
133
+ const STABLE_STYLES = { stableStyles: true };
134
+ const _TastyComponent = forwardRef((incomingProps, ref) => {
135
+ const applyPropHandlers = propHandlerRegistry.apply;
136
+ const { as, styles: rawStyles, variant, mods, element, qa, qaVal, className: userClassName, tokens, style, theme, ...otherProps } = applyPropHandlers ? applyPropHandlers(incomingProps) : incomingProps;
137
+ const styles = rawStyles;
138
+ let propStyles = null;
139
+ if (propsToCheckVersion !== baseStylePropsRegistry.version) {
140
+ const promoted = baseStylePropsRegistry.list;
141
+ propsToCheck = promoted.length === 0 ? ownPropsToCheck : ownPropsToCheck.concat(promoted);
142
+ propsToCheckVersion = baseStylePropsRegistry.version;
143
+ }
144
+ for (const prop of propsToCheck) {
145
+ const key = prop;
146
+ if (key in otherProps) {
147
+ if (!propStyles) propStyles = {};
148
+ const value = otherProps[key];
149
+ propStyles[key] = value;
150
+ delete otherProps[key];
151
+ }
152
+ }
153
+ let propMods;
154
+ if (modPropsKeys) {
155
+ for (const key of modPropsKeys) if (key in otherProps) {
156
+ if (!propMods) propMods = {};
157
+ propMods[key] = otherProps[key];
158
+ delete otherProps[key];
159
+ }
160
+ }
161
+ let propTokens;
162
+ if (tokenPropsMapping) {
163
+ for (const [propName, tokenKey] of tokenPropsMapping) if (propName in otherProps) {
164
+ if (!propTokens) propTokens = {};
165
+ propTokens[tokenKey] = otherProps[propName];
166
+ delete otherProps[propName];
167
+ }
168
+ }
169
+ const baseStyles = variantStylesMap ? variantStylesMap[variant || "default"] ?? variantStylesMap["default"] : defaultStyles;
170
+ const allStyles = styles && hasKeys(styles) || !!propStyles ? mergeStyles(baseStyles, styles, propStyles) : baseStyles;
171
+ const useFactoryCache = typeof document !== "undefined";
172
+ let generatedClassName = useFactoryCache && allStyles === baseStyles ? classNameCache.get(allStyles) : void 0;
173
+ let rscCSS;
174
+ if (generatedClassName !== void 0) touch(generatedClassName);
175
+ else {
176
+ const result = computeStyles(allStyles, !useFactoryCache && allStyles === baseStyles ? STABLE_STYLES : void 0);
177
+ generatedClassName = result.className;
178
+ rscCSS = result.css;
179
+ if (useFactoryCache && allStyles === baseStyles) classNameCache.set(allStyles, generatedClassName);
180
+ }
181
+ let mergedTokens;
182
+ if (defaultTokens || tokens || propTokens) if (!defaultTokens && !propTokens) mergedTokens = tokens;
183
+ else if (!tokens && !propTokens) mergedTokens = defaultTokens;
184
+ else mergedTokens = {
185
+ ...defaultTokens,
186
+ ...tokens,
187
+ ...propTokens
188
+ };
189
+ const processedTokenStyle = processTokens(mergedTokens);
190
+ let mergedStyle;
191
+ if (processedTokenStyle || style) if (!processedTokenStyle) mergedStyle = style;
192
+ else if (!style) mergedStyle = processedTokenStyle;
193
+ else mergedStyle = {
194
+ ...processedTokenStyle,
195
+ ...style
196
+ };
197
+ const mergedMods = propMods ? {
198
+ ...mods,
199
+ ...propMods
200
+ } : mods;
201
+ let modDataAttrs;
202
+ if (mergedMods) modDataAttrs = modAttrs(mergedMods);
203
+ let finalClassName = generatedClassName;
204
+ if (userClassName) finalClassName = finalClassName ? `${userClassName} ${finalClassName}` : userClassName;
205
+ const elementProps = {
206
+ "data-element": element || defaultElement,
207
+ "data-qa": qa || defaultQa,
208
+ "data-qaval": qaVal || defaultQaVal,
209
+ "data-theme": theme,
210
+ ...otherDefaultProps,
211
+ ...modDataAttrs || {},
212
+ ...otherProps,
213
+ className: finalClassName,
214
+ style: mergedStyle,
215
+ ref
216
+ };
217
+ handleIsProperties(elementProps);
218
+ if (elementProps["data-theme"] === void 0) delete elementProps["data-theme"];
219
+ const el = createElement(as ?? originalAs, elementProps);
220
+ if (rscCSS) {
221
+ const nonce = getConfig().nonce;
222
+ return createElement(Fragment, null, createElement("style", {
223
+ "data-tasty-rsc": "",
224
+ nonce,
225
+ dangerouslySetInnerHTML: { __html: rscCSS }
226
+ }), el);
227
+ }
228
+ return el;
229
+ });
230
+ _TastyComponent.displayName = `TastyComponent(${defaultProps.qa || originalAs})`;
231
+ if (elements) {
232
+ const subElements = {};
233
+ for (const [name, definition] of Object.entries(elements)) subElements[name] = createSubElement(name, definition);
234
+ return Object.assign(_TastyComponent, subElements);
235
+ }
236
+ return _TastyComponent;
237
+ }
238
+ const Element = /* @__PURE__ */ tasty({});
239
+ //#endregion
240
+ //#region src/ssr/context.ts
241
+ let _ctx;
242
+ function getTastySSRContext() {
243
+ if (!_ctx) _ctx = createContext(null);
244
+ return _ctx;
245
+ }
246
+ //#endregion
247
+ //#region src/hooks/useStyles.ts
248
+ function useStyles(styles, options) {
249
+ return computeStyles(styles, {
250
+ ssrCollector: useContext(getTastySSRContext()),
251
+ root: options?.root
252
+ });
253
+ }
254
+ //#endregion
255
+ //#region src/hooks/useGlobalStyles.ts
256
+ const getClientGlobalSlots = /* @__PURE__ */ createClientState(() => /* @__PURE__ */ new Map());
257
+ const noop = () => {};
258
+ function useGlobalStyles(selector, styles, options) {
259
+ if (!styles) return;
260
+ if (!selector) {
261
+ console.warn("[Tasty] useGlobalStyles: selector is required and cannot be empty. Styles will not be injected.");
262
+ return;
263
+ }
264
+ const target = getStyleTarget();
265
+ const slots = target.mode === "client" ? getClientGlobalSlots(options?.root ?? document) : null;
266
+ const slotKey = options?.id ?? selector;
267
+ const stylesKey = slots ? JSON.stringify(styles) : "";
268
+ const existing = slots?.get(slotKey);
269
+ if (existing && existing.stylesKey === stylesKey) return;
270
+ const resolvedStyles = resolveRecipes(styles);
271
+ const styleResults = renderStyles(resolvedStyles, selector);
272
+ if (styleResults.length === 0) {
273
+ if (slots) {
274
+ existing?.dispose();
275
+ slots.set(slotKey, {
276
+ stylesKey,
277
+ dispose: noop
278
+ });
279
+ }
280
+ return;
281
+ }
282
+ if (target.mode === "ssr") {
283
+ target.collector.collectInternals();
284
+ const css = formatGlobalRules(styleResults);
285
+ if (css) {
286
+ const key = options?.id ? `global:${options.id}` : `global:${selector}:${hashString(css)}`;
287
+ target.collector.collectGlobalStyles(key, css, options?.id != null);
288
+ }
289
+ if (getConfig().autoPropertyTypes !== false) collectAutoInferredProperties(styleResults, target.collector, resolvedStyles);
290
+ return;
291
+ }
292
+ if (target.mode === "rsc") {
293
+ const css = formatGlobalRules(styleResults);
294
+ if (css) {
295
+ const key = options?.id ? `__global:${options.id}` : `__global:${selector}:${hashString(css)}`;
296
+ pushRSCCSS(target.cache, key, css, options?.id != null);
297
+ }
298
+ if (getConfig().autoPropertyTypes !== false) collectAutoInferredPropertiesRSC(styleResults, target.cache, resolvedStyles);
299
+ return;
300
+ }
301
+ if (slots) {
302
+ existing?.dispose();
303
+ const { dispose } = injectGlobal(styleResults, { root: options?.root });
304
+ slots.set(slotKey, {
305
+ stylesKey,
306
+ dispose
307
+ });
308
+ }
309
+ }
310
+ //#endregion
311
+ //#region src/hooks/useRawCSS.ts
312
+ const getClientState$1 = /* @__PURE__ */ createClientState(() => ({
313
+ entries: /* @__PURE__ */ new Map(),
314
+ dedup: /* @__PURE__ */ new Set(),
315
+ deps: /* @__PURE__ */ new Map()
316
+ }));
317
+ function useRawCSS(cssOrFactory, depsOrOptions, options) {
318
+ const isFactory = typeof cssOrFactory === "function";
319
+ const deps = isFactory && Array.isArray(depsOrOptions) ? depsOrOptions : void 0;
320
+ const opts = isFactory ? options : depsOrOptions;
321
+ const id = opts?.id;
322
+ const target = getStyleTarget();
323
+ const state = target.mode === "client" ? getClientState$1(opts?.root ?? document) : null;
324
+ if (isFactory && deps && id && state) {
325
+ const cachedDeps = state.deps.get(id);
326
+ if (cachedDeps && depsEqual(cachedDeps, deps)) return;
327
+ }
328
+ const css = isFactory ? cssOrFactory() : cssOrFactory;
329
+ if (!css.trim()) return;
330
+ if (target.mode !== "client") {
331
+ const key = `${target.mode === "rsc" ? "__" : ""}raw:${id || hashString(css)}`;
332
+ const replace = id != null;
333
+ if (target.mode === "ssr") target.collector.collectRawCSS(key, css, replace);
334
+ else pushRSCCSS(target.cache, key, css, replace);
335
+ return;
336
+ }
337
+ if (!state) return;
338
+ if (id) {
339
+ const existing = state.entries.get(id);
340
+ if (existing) {
341
+ if (existing.css === css) return;
342
+ existing.dispose();
343
+ }
344
+ const { dispose } = injectRawCSS(css, opts);
345
+ state.entries.set(id, {
346
+ css,
347
+ dispose
348
+ });
349
+ if (deps) state.deps.set(id, deps);
350
+ } else {
351
+ const contentKey = hashString(css);
352
+ if (state.dedup.has(contentKey)) return;
353
+ state.dedup.add(contentKey);
354
+ injectRawCSS(css, opts);
355
+ }
356
+ }
357
+ //#endregion
358
+ //#region src/hooks/useKeyframes.ts
359
+ const getClientState = /* @__PURE__ */ createClientState(() => ({
360
+ contentToName: /* @__PURE__ */ new Map(),
361
+ namedSlots: /* @__PURE__ */ new Map(),
362
+ factoryDeps: /* @__PURE__ */ new Map()
363
+ }));
364
+ function useKeyframes(stepsOrFactory, depsOrOptions, options) {
365
+ const isFactory = typeof stepsOrFactory === "function";
366
+ const deps = isFactory && Array.isArray(depsOrOptions) ? depsOrOptions : void 0;
367
+ const opts = isFactory ? options : depsOrOptions;
368
+ const target = getStyleTarget();
369
+ const clientState = target.mode === "client" ? getClientState(opts?.root ?? document) : null;
370
+ if (isFactory && deps && opts?.name && clientState) {
371
+ const cached = clientState.factoryDeps.get(opts.name);
372
+ if (cached && depsEqual(cached.deps, deps)) return cached.name;
373
+ }
374
+ const steps = isFactory ? stepsOrFactory() : stepsOrFactory;
375
+ if (!steps || Object.keys(steps).length === 0) return "";
376
+ if (target.mode === "ssr") {
377
+ const actualName = target.collector.allocateKeyframeName(opts?.name);
378
+ const css = formatKeyframesCSS(actualName, steps);
379
+ target.collector.collectKeyframes(actualName, css);
380
+ return actualName;
381
+ }
382
+ if (target.mode === "rsc") {
383
+ const serializedContent = JSON.stringify(steps);
384
+ const key = `__kf:${opts?.name ?? ""}:${serializedContent}`;
385
+ const existingName = target.cache.generatedNames.get(key);
386
+ if (existingName) return existingName;
387
+ const actualName = opts?.name ?? makeKeyframeName(getNamePrefix(), hashString(serializedContent));
388
+ const css = formatKeyframesCSS(actualName, steps);
389
+ pushRSCCSS(target.cache, key, css);
390
+ target.cache.generatedNames.set(key, actualName);
391
+ return actualName;
392
+ }
393
+ const state = clientState ?? getClientState(opts?.root ?? document);
394
+ const serializedContent = JSON.stringify(steps);
395
+ const cacheKey = `${opts?.name ?? ""}:${serializedContent}`;
396
+ const cachedName = state.contentToName.get(cacheKey);
397
+ if (cachedName) return cachedName;
398
+ const providedName = opts?.name;
399
+ if (providedName) {
400
+ const slot = state.namedSlots.get(providedName);
401
+ if (slot && slot.cacheKey !== cacheKey) {
402
+ slot.dispose();
403
+ state.contentToName.delete(slot.cacheKey);
404
+ state.namedSlots.delete(providedName);
405
+ }
406
+ }
407
+ const result = keyframes(steps, {
408
+ name: providedName,
409
+ root: opts?.root
410
+ });
411
+ const name = result.toString();
412
+ state.contentToName.set(cacheKey, name);
413
+ if (providedName) {
414
+ state.namedSlots.set(providedName, {
415
+ cacheKey,
416
+ dispose: result.dispose
417
+ });
418
+ if (deps) state.factoryDeps.set(providedName, {
419
+ deps,
420
+ name
421
+ });
422
+ }
423
+ return name;
424
+ }
425
+ //#endregion
426
+ //#region src/hooks/useProperty.ts
427
+ function useProperty(name, options) {
428
+ if (!name) {
429
+ console.warn(`[Tasty] useProperty: property name is required`);
430
+ return;
431
+ }
432
+ const target = getStyleTarget();
433
+ if (target.mode === "ssr") {
434
+ target.collector.collectInternals();
435
+ const css = formatPropertyCSS(name, {
436
+ syntax: options?.syntax,
437
+ inherits: options?.inherits,
438
+ initialValue: options?.initialValue
439
+ });
440
+ if (css) target.collector.collectProperty(name, css);
441
+ return;
442
+ }
443
+ if (target.mode === "rsc") {
444
+ const css = formatPropertyCSS(name, {
445
+ syntax: options?.syntax,
446
+ inherits: options?.inherits,
447
+ initialValue: options?.initialValue
448
+ });
449
+ if (css) pushRSCCSS(target.cache, `__prop:${name}`, css);
450
+ return;
451
+ }
452
+ const injector = getGlobalInjector();
453
+ if (injector.isPropertyDefined(name, { root: options?.root })) return;
454
+ injector.property(name, {
455
+ syntax: options?.syntax,
456
+ inherits: options?.inherits,
457
+ initialValue: options?.initialValue,
458
+ root: options?.root
459
+ });
460
+ }
461
+ //#endregion
462
+ //#region src/hooks/useFontFace.ts
463
+ function useFontFace(family, input, options) {
464
+ if (!family) return;
465
+ const descriptors = Array.isArray(input) ? input : [input];
466
+ const target = getStyleTarget();
467
+ if (target.mode === "ssr") {
468
+ for (const desc of descriptors) {
469
+ const hash = fontFaceContentHash(family, desc);
470
+ const css = formatFontFaceRule(family, desc);
471
+ target.collector.collectFontFace(hash, css);
472
+ }
473
+ return;
474
+ }
475
+ if (target.mode === "rsc") {
476
+ for (const desc of descriptors) {
477
+ const hash = fontFaceContentHash(family, desc);
478
+ const css = formatFontFaceRule(family, desc);
479
+ pushRSCCSS(target.cache, `__ff:${hash}`, css);
480
+ }
481
+ return;
482
+ }
483
+ const injector = getGlobalInjector();
484
+ for (const desc of descriptors) injector.fontFace(family, desc, { root: options?.root });
485
+ }
486
+ //#endregion
487
+ //#region src/hooks/useCounterStyle.ts
488
+ let clientCounterStyleCounter = 0;
489
+ const getClientContentToName = /* @__PURE__ */ createClientState(() => /* @__PURE__ */ new Map());
490
+ function useCounterStyle(descriptors, options) {
491
+ if (!descriptors || !descriptors.system) return "";
492
+ const target = getStyleTarget();
493
+ if (target.mode === "ssr") {
494
+ const actualName = target.collector.allocateCounterStyleName(options?.name);
495
+ const css = formatCounterStyleRule(actualName, descriptors);
496
+ target.collector.collectCounterStyle(actualName, css);
497
+ return actualName;
498
+ }
499
+ if (target.mode === "rsc") {
500
+ const serializedContent = JSON.stringify(descriptors);
501
+ const key = `__cs:${options?.name ?? ""}:${serializedContent}`;
502
+ const existingName = target.cache.generatedNames.get(key);
503
+ if (existingName) return existingName;
504
+ const actualName = options?.name ?? makeCounterStyleName(getNamePrefix(), hashString(serializedContent));
505
+ const css = formatCounterStyleRule(actualName, descriptors);
506
+ pushRSCCSS(target.cache, key, css);
507
+ target.cache.generatedNames.set(key, actualName);
508
+ return actualName;
509
+ }
510
+ const contentToName = getClientContentToName(options?.root ?? document);
511
+ const serializedContent = JSON.stringify(descriptors);
512
+ const cacheKey = `${options?.name ?? ""}:${serializedContent}`;
513
+ const existingName = contentToName.get(cacheKey);
514
+ if (existingName) return existingName;
515
+ const name = options?.name ?? makeCounterStyleName(getNamePrefix(), String(clientCounterStyleCounter++));
516
+ contentToName.set(cacheKey, name);
517
+ getGlobalInjector().counterStyle(name, descriptors, { root: options?.root });
518
+ return name;
519
+ }
520
+ //#endregion
521
+ //#region src/hooks/useFunction.ts
522
+ function useFunction(name, definition, options) {
523
+ if (!name) {
524
+ console.warn(`[Tasty] useFunction: function name is required`);
525
+ return;
526
+ }
527
+ if (isFunctionsPolyfillEnabled()) {
528
+ registerFunctionPolyfill(name, definition);
529
+ return;
530
+ }
531
+ const target = getStyleTarget();
532
+ if (target.mode === "ssr") {
533
+ target.collector.collectInternals();
534
+ const css = formatFunctionRule(name, definition);
535
+ if (css) target.collector.collectFunction(parseFunctionName(name), css);
536
+ return;
537
+ }
538
+ if (target.mode === "rsc") {
539
+ const css = formatFunctionRule(name, definition);
540
+ if (css) pushRSCCSS(target.cache, `__func:${parseFunctionName(name)}`, css);
541
+ return;
542
+ }
543
+ getGlobalInjector().func(name, definition, { root: options?.root });
544
+ }
545
+ //#endregion
546
+ //#region src/batch-provider.tsx
547
+ function TastyBatchProvider({ children }) {
548
+ openBatchWindow();
549
+ useInsertionEffect(() => {
550
+ closeBatchWindow();
551
+ });
552
+ return children;
553
+ }
554
+ //#endregion
555
+ export { useProperty as a, useGlobalStyles as c, Element as d, tasty as f, useFontFace as i, useStyles as l, useFunction as n, useKeyframes as o, getDisplayName as p, useCounterStyle as r, useRawCSS as s, TastyBatchProvider as t, getTastySSRContext as u };
556
+
557
+ //# sourceMappingURL=react-runtime-O-OUrKLH.js.map