@tenphi/tasty 2.0.2 → 2.0.4

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 (321) hide show
  1. package/dist/{ssr/async-storage.js → async-storage-B7_o6FKt.js} +2 -2
  2. package/dist/async-storage-B7_o6FKt.js.map +1 -0
  3. package/dist/{ssr/collector.d.ts → collector-CkZ517g4.d.ts} +3 -3
  4. package/dist/{ssr/collector.js → collector-DXqvGOb1.js} +5 -10
  5. package/dist/collector-DXqvGOb1.js.map +1 -0
  6. package/dist/config-5jzS6k6B.js +10005 -0
  7. package/dist/config-5jzS6k6B.js.map +1 -0
  8. package/dist/config-DknGsfMo.d.ts +857 -0
  9. package/dist/{ssr/context.js → context-CkSg-kDT.js} +11 -3
  10. package/dist/context-CkSg-kDT.js.map +1 -0
  11. package/dist/core/index.d.ts +5 -34
  12. package/dist/core/index.js +5 -26
  13. package/dist/core-CtU6-9OC.js +1507 -0
  14. package/dist/core-CtU6-9OC.js.map +1 -0
  15. package/dist/{zero/extractor.js → css-writer-DHkX0JuE.js} +74 -11
  16. package/dist/css-writer-DHkX0JuE.js.map +1 -0
  17. package/dist/{ssr/format-global-rules.js → format-global-rules-Dbc_1tc3.js} +2 -2
  18. package/dist/format-global-rules-Dbc_1tc3.js.map +1 -0
  19. package/dist/format-rules-DH13ewDu.js +143 -0
  20. package/dist/format-rules-DH13ewDu.js.map +1 -0
  21. package/dist/{ssr/hydrate.js → hydrate-C1Gv-DoS.js} +3 -3
  22. package/dist/hydrate-C1Gv-DoS.js.map +1 -0
  23. package/dist/{styles/types.d.ts → index-PzENbpAq.d.ts} +701 -5
  24. package/dist/index-o7zV2yCr.d.ts +1561 -0
  25. package/dist/index.d.ts +5 -51
  26. package/dist/index.js +728 -35
  27. package/dist/index.js.map +1 -0
  28. package/dist/keyframes-b7X3UxDV.js +587 -0
  29. package/dist/keyframes-b7X3UxDV.js.map +1 -0
  30. package/dist/{utils/merge-styles.d.ts → merge-styles-C7KTy7MY.d.ts} +3 -3
  31. package/dist/{utils/merge-styles.js → merge-styles-Tgo3BbL2.js} +3 -4
  32. package/dist/merge-styles-Tgo3BbL2.js.map +1 -0
  33. package/dist/{utils/resolve-recipes.js → resolve-recipes-Ca2-5CxM.js} +4 -6
  34. package/dist/resolve-recipes-Ca2-5CxM.js.map +1 -0
  35. package/dist/ssr/astro-client.js +1 -1
  36. package/dist/ssr/astro.js +4 -4
  37. package/dist/ssr/index.d.ts +44 -4
  38. package/dist/ssr/index.js +4 -4
  39. package/dist/ssr/next.d.ts +1 -1
  40. package/dist/ssr/next.js +6 -6
  41. package/dist/ssr/next.js.map +1 -1
  42. package/dist/static/index.d.ts +91 -5
  43. package/dist/static/index.js +49 -3
  44. package/dist/static/index.js.map +1 -0
  45. package/dist/zero/babel.d.ts +1 -1
  46. package/dist/zero/babel.js +10 -6
  47. package/dist/zero/babel.js.map +1 -1
  48. package/dist/zero/index.d.ts +67 -3
  49. package/dist/zero/index.js +1 -2
  50. package/docs/pipeline.md +204 -50
  51. package/package.json +3 -3
  52. package/dist/_virtual/_rolldown/runtime.js +0 -7
  53. package/dist/chunks/cacheKey.d.ts +0 -1
  54. package/dist/chunks/cacheKey.js +0 -77
  55. package/dist/chunks/cacheKey.js.map +0 -1
  56. package/dist/chunks/definitions.d.ts +0 -37
  57. package/dist/chunks/definitions.js +0 -258
  58. package/dist/chunks/definitions.js.map +0 -1
  59. package/dist/chunks/index.d.ts +0 -1
  60. package/dist/chunks/renderChunk.d.ts +0 -1
  61. package/dist/chunks/renderChunk.js +0 -59
  62. package/dist/chunks/renderChunk.js.map +0 -1
  63. package/dist/compute-styles.d.ts +0 -31
  64. package/dist/compute-styles.js +0 -322
  65. package/dist/compute-styles.js.map +0 -1
  66. package/dist/config.d.ts +0 -407
  67. package/dist/config.js +0 -591
  68. package/dist/config.js.map +0 -1
  69. package/dist/counter-style/index.js +0 -51
  70. package/dist/counter-style/index.js.map +0 -1
  71. package/dist/debug.d.ts +0 -89
  72. package/dist/debug.js +0 -453
  73. package/dist/debug.js.map +0 -1
  74. package/dist/font-face/index.js +0 -63
  75. package/dist/font-face/index.js.map +0 -1
  76. package/dist/hooks/index.d.ts +0 -7
  77. package/dist/hooks/useCounterStyle.d.ts +0 -36
  78. package/dist/hooks/useCounterStyle.js +0 -65
  79. package/dist/hooks/useCounterStyle.js.map +0 -1
  80. package/dist/hooks/useFontFace.d.ts +0 -45
  81. package/dist/hooks/useFontFace.js +0 -66
  82. package/dist/hooks/useFontFace.js.map +0 -1
  83. package/dist/hooks/useGlobalStyles.d.ts +0 -46
  84. package/dist/hooks/useGlobalStyles.js +0 -88
  85. package/dist/hooks/useGlobalStyles.js.map +0 -1
  86. package/dist/hooks/useKeyframes.d.ts +0 -58
  87. package/dist/hooks/useKeyframes.js +0 -55
  88. package/dist/hooks/useKeyframes.js.map +0 -1
  89. package/dist/hooks/useProperty.d.ts +0 -81
  90. package/dist/hooks/useProperty.js +0 -96
  91. package/dist/hooks/useProperty.js.map +0 -1
  92. package/dist/hooks/useRawCSS.d.ts +0 -22
  93. package/dist/hooks/useRawCSS.js +0 -103
  94. package/dist/hooks/useRawCSS.js.map +0 -1
  95. package/dist/hooks/useStyles.d.ts +0 -40
  96. package/dist/hooks/useStyles.js +0 -31
  97. package/dist/hooks/useStyles.js.map +0 -1
  98. package/dist/injector/index.d.ts +0 -182
  99. package/dist/injector/index.js +0 -185
  100. package/dist/injector/index.js.map +0 -1
  101. package/dist/injector/injector.d.ts +0 -198
  102. package/dist/injector/injector.js +0 -651
  103. package/dist/injector/injector.js.map +0 -1
  104. package/dist/injector/sheet-manager.d.ts +0 -132
  105. package/dist/injector/sheet-manager.js +0 -699
  106. package/dist/injector/sheet-manager.js.map +0 -1
  107. package/dist/injector/types.d.ts +0 -235
  108. package/dist/keyframes/index.js +0 -206
  109. package/dist/keyframes/index.js.map +0 -1
  110. package/dist/parser/classify.js +0 -319
  111. package/dist/parser/classify.js.map +0 -1
  112. package/dist/parser/const.js +0 -60
  113. package/dist/parser/const.js.map +0 -1
  114. package/dist/parser/lru.js +0 -109
  115. package/dist/parser/lru.js.map +0 -1
  116. package/dist/parser/parser.d.ts +0 -25
  117. package/dist/parser/parser.js +0 -115
  118. package/dist/parser/parser.js.map +0 -1
  119. package/dist/parser/tokenizer.js +0 -69
  120. package/dist/parser/tokenizer.js.map +0 -1
  121. package/dist/parser/types.d.ts +0 -51
  122. package/dist/parser/types.js +0 -46
  123. package/dist/parser/types.js.map +0 -1
  124. package/dist/pipeline/conditions.d.ts +0 -134
  125. package/dist/pipeline/conditions.js +0 -406
  126. package/dist/pipeline/conditions.js.map +0 -1
  127. package/dist/pipeline/exclusive.js +0 -382
  128. package/dist/pipeline/exclusive.js.map +0 -1
  129. package/dist/pipeline/index.d.ts +0 -55
  130. package/dist/pipeline/index.js +0 -708
  131. package/dist/pipeline/index.js.map +0 -1
  132. package/dist/pipeline/materialize.js +0 -1157
  133. package/dist/pipeline/materialize.js.map +0 -1
  134. package/dist/pipeline/parseStateKey.d.ts +0 -15
  135. package/dist/pipeline/parseStateKey.js +0 -446
  136. package/dist/pipeline/parseStateKey.js.map +0 -1
  137. package/dist/pipeline/simplify.js +0 -690
  138. package/dist/pipeline/simplify.js.map +0 -1
  139. package/dist/pipeline/warnings.js +0 -18
  140. package/dist/pipeline/warnings.js.map +0 -1
  141. package/dist/plugins/index.d.ts +0 -2
  142. package/dist/plugins/okhsl-plugin.d.ts +0 -35
  143. package/dist/plugins/okhsl-plugin.js +0 -97
  144. package/dist/plugins/okhsl-plugin.js.map +0 -1
  145. package/dist/plugins/types.d.ts +0 -87
  146. package/dist/properties/index.js +0 -222
  147. package/dist/properties/index.js.map +0 -1
  148. package/dist/properties/property-type-resolver.d.ts +0 -24
  149. package/dist/properties/property-type-resolver.js +0 -90
  150. package/dist/properties/property-type-resolver.js.map +0 -1
  151. package/dist/rsc-cache.js +0 -79
  152. package/dist/rsc-cache.js.map +0 -1
  153. package/dist/ssr/async-storage.d.ts +0 -17
  154. package/dist/ssr/async-storage.js.map +0 -1
  155. package/dist/ssr/collect-auto-properties.js +0 -58
  156. package/dist/ssr/collect-auto-properties.js.map +0 -1
  157. package/dist/ssr/collector.js.map +0 -1
  158. package/dist/ssr/context.js.map +0 -1
  159. package/dist/ssr/format-global-rules.js.map +0 -1
  160. package/dist/ssr/format-keyframes.js +0 -69
  161. package/dist/ssr/format-keyframes.js.map +0 -1
  162. package/dist/ssr/format-property.js +0 -49
  163. package/dist/ssr/format-property.js.map +0 -1
  164. package/dist/ssr/format-rules.js +0 -73
  165. package/dist/ssr/format-rules.js.map +0 -1
  166. package/dist/ssr/hydrate.d.ts +0 -29
  167. package/dist/ssr/hydrate.js.map +0 -1
  168. package/dist/ssr/ssr-collector-ref.js +0 -29
  169. package/dist/ssr/ssr-collector-ref.js.map +0 -1
  170. package/dist/states/index.d.ts +0 -49
  171. package/dist/states/index.js +0 -170
  172. package/dist/states/index.js.map +0 -1
  173. package/dist/static/tastyStatic.d.ts +0 -46
  174. package/dist/static/tastyStatic.js +0 -30
  175. package/dist/static/tastyStatic.js.map +0 -1
  176. package/dist/static/types.d.ts +0 -49
  177. package/dist/static/types.js +0 -24
  178. package/dist/static/types.js.map +0 -1
  179. package/dist/styles/border.d.ts +0 -25
  180. package/dist/styles/border.js +0 -120
  181. package/dist/styles/border.js.map +0 -1
  182. package/dist/styles/color.d.ts +0 -14
  183. package/dist/styles/color.js +0 -26
  184. package/dist/styles/color.js.map +0 -1
  185. package/dist/styles/const.js +0 -17
  186. package/dist/styles/const.js.map +0 -1
  187. package/dist/styles/createStyle.js +0 -79
  188. package/dist/styles/createStyle.js.map +0 -1
  189. package/dist/styles/dimension.js +0 -109
  190. package/dist/styles/dimension.js.map +0 -1
  191. package/dist/styles/directional.js +0 -133
  192. package/dist/styles/directional.js.map +0 -1
  193. package/dist/styles/display.d.ts +0 -30
  194. package/dist/styles/display.js +0 -73
  195. package/dist/styles/display.js.map +0 -1
  196. package/dist/styles/fade.d.ts +0 -15
  197. package/dist/styles/fade.js +0 -62
  198. package/dist/styles/fade.js.map +0 -1
  199. package/dist/styles/fill.d.ts +0 -42
  200. package/dist/styles/fill.js +0 -51
  201. package/dist/styles/fill.js.map +0 -1
  202. package/dist/styles/flow.d.ts +0 -16
  203. package/dist/styles/flow.js +0 -12
  204. package/dist/styles/flow.js.map +0 -1
  205. package/dist/styles/gap.d.ts +0 -31
  206. package/dist/styles/gap.js +0 -38
  207. package/dist/styles/gap.js.map +0 -1
  208. package/dist/styles/height.d.ts +0 -17
  209. package/dist/styles/height.js +0 -19
  210. package/dist/styles/height.js.map +0 -1
  211. package/dist/styles/index.d.ts +0 -1
  212. package/dist/styles/index.js +0 -8
  213. package/dist/styles/index.js.map +0 -1
  214. package/dist/styles/inset.d.ts +0 -24
  215. package/dist/styles/inset.js +0 -34
  216. package/dist/styles/inset.js.map +0 -1
  217. package/dist/styles/list.d.ts +0 -16
  218. package/dist/styles/list.js +0 -100
  219. package/dist/styles/list.js.map +0 -1
  220. package/dist/styles/margin.d.ts +0 -24
  221. package/dist/styles/margin.js +0 -32
  222. package/dist/styles/margin.js.map +0 -1
  223. package/dist/styles/outline.d.ts +0 -29
  224. package/dist/styles/outline.js +0 -55
  225. package/dist/styles/outline.js.map +0 -1
  226. package/dist/styles/padding.d.ts +0 -24
  227. package/dist/styles/padding.js +0 -32
  228. package/dist/styles/padding.js.map +0 -1
  229. package/dist/styles/placement.d.ts +0 -37
  230. package/dist/styles/placement.js +0 -74
  231. package/dist/styles/placement.js.map +0 -1
  232. package/dist/styles/predefined.d.ts +0 -71
  233. package/dist/styles/predefined.js +0 -237
  234. package/dist/styles/predefined.js.map +0 -1
  235. package/dist/styles/preset.d.ts +0 -52
  236. package/dist/styles/preset.js +0 -127
  237. package/dist/styles/preset.js.map +0 -1
  238. package/dist/styles/radius.d.ts +0 -12
  239. package/dist/styles/radius.js +0 -83
  240. package/dist/styles/radius.js.map +0 -1
  241. package/dist/styles/scrollMargin.d.ts +0 -24
  242. package/dist/styles/scrollMargin.js +0 -32
  243. package/dist/styles/scrollMargin.js.map +0 -1
  244. package/dist/styles/scrollbar.d.ts +0 -25
  245. package/dist/styles/scrollbar.js +0 -51
  246. package/dist/styles/scrollbar.js.map +0 -1
  247. package/dist/styles/shadow.d.ts +0 -14
  248. package/dist/styles/shadow.js +0 -25
  249. package/dist/styles/shadow.js.map +0 -1
  250. package/dist/styles/shared.js +0 -17
  251. package/dist/styles/shared.js.map +0 -1
  252. package/dist/styles/transition.d.ts +0 -14
  253. package/dist/styles/transition.js +0 -159
  254. package/dist/styles/transition.js.map +0 -1
  255. package/dist/styles/width.d.ts +0 -17
  256. package/dist/styles/width.js +0 -19
  257. package/dist/styles/width.js.map +0 -1
  258. package/dist/tasty.d.ts +0 -134
  259. package/dist/tasty.js +0 -248
  260. package/dist/tasty.js.map +0 -1
  261. package/dist/types.d.ts +0 -184
  262. package/dist/utils/cache-wrapper.js +0 -21
  263. package/dist/utils/cache-wrapper.js.map +0 -1
  264. package/dist/utils/case-converter.js +0 -8
  265. package/dist/utils/case-converter.js.map +0 -1
  266. package/dist/utils/color-math.d.ts +0 -46
  267. package/dist/utils/color-math.js +0 -749
  268. package/dist/utils/color-math.js.map +0 -1
  269. package/dist/utils/color-space.d.ts +0 -5
  270. package/dist/utils/color-space.js +0 -228
  271. package/dist/utils/color-space.js.map +0 -1
  272. package/dist/utils/colors.d.ts +0 -5
  273. package/dist/utils/colors.js +0 -10
  274. package/dist/utils/colors.js.map +0 -1
  275. package/dist/utils/css-types.d.ts +0 -7
  276. package/dist/utils/deps-equal.js +0 -15
  277. package/dist/utils/deps-equal.js.map +0 -1
  278. package/dist/utils/dotize.d.ts +0 -26
  279. package/dist/utils/dotize.js +0 -122
  280. package/dist/utils/dotize.js.map +0 -1
  281. package/dist/utils/filter-base-props.d.ts +0 -15
  282. package/dist/utils/filter-base-props.js +0 -45
  283. package/dist/utils/filter-base-props.js.map +0 -1
  284. package/dist/utils/get-display-name.d.ts +0 -7
  285. package/dist/utils/get-display-name.js +0 -10
  286. package/dist/utils/get-display-name.js.map +0 -1
  287. package/dist/utils/has-keys.js +0 -13
  288. package/dist/utils/has-keys.js.map +0 -1
  289. package/dist/utils/hash.js +0 -14
  290. package/dist/utils/hash.js.map +0 -1
  291. package/dist/utils/is-dev-env.js +0 -19
  292. package/dist/utils/is-dev-env.js.map +0 -1
  293. package/dist/utils/is-valid-element-type.js +0 -15
  294. package/dist/utils/is-valid-element-type.js.map +0 -1
  295. package/dist/utils/merge-styles.js.map +0 -1
  296. package/dist/utils/mod-attrs.d.ts +0 -6
  297. package/dist/utils/mod-attrs.js +0 -20
  298. package/dist/utils/mod-attrs.js.map +0 -1
  299. package/dist/utils/process-tokens.d.ts +0 -17
  300. package/dist/utils/process-tokens.js +0 -83
  301. package/dist/utils/process-tokens.js.map +0 -1
  302. package/dist/utils/resolve-recipes.d.ts +0 -17
  303. package/dist/utils/resolve-recipes.js.map +0 -1
  304. package/dist/utils/selector-transform.js +0 -32
  305. package/dist/utils/selector-transform.js.map +0 -1
  306. package/dist/utils/string.js +0 -8
  307. package/dist/utils/string.js.map +0 -1
  308. package/dist/utils/styles.d.ts +0 -99
  309. package/dist/utils/styles.js +0 -220
  310. package/dist/utils/styles.js.map +0 -1
  311. package/dist/utils/typography.d.ts +0 -58
  312. package/dist/utils/typography.js +0 -51
  313. package/dist/utils/typography.js.map +0 -1
  314. package/dist/utils/warnings.d.ts +0 -16
  315. package/dist/utils/warnings.js +0 -16
  316. package/dist/utils/warnings.js.map +0 -1
  317. package/dist/zero/css-writer.d.ts +0 -45
  318. package/dist/zero/css-writer.js +0 -73
  319. package/dist/zero/css-writer.js.map +0 -1
  320. package/dist/zero/extractor.d.ts +0 -24
  321. package/dist/zero/extractor.js.map +0 -1
package/dist/types.d.ts DELETED
@@ -1,184 +0,0 @@
1
- import { CSSProperties as CSSProperties$1 } from "./utils/css-types.js";
2
- import { Styles } from "./styles/types.js";
3
- import { BASE_STYLES, BLOCK_INNER_STYLES, BLOCK_OUTER_STYLES, BLOCK_STYLES, COLOR_STYLES, CONTAINER_STYLES, DIMENSION_STYLES, FLOW_STYLES, INNER_STYLES, OUTER_STYLES, POSITION_STYLES, TEXT_STYLES } from "./styles/list.js";
4
- import { AllHTMLAttributes, ComponentType } from "react";
5
-
6
- //#region src/types.d.ts
7
- interface GlobalStyledProps {
8
- breakpoints?: number[];
9
- }
10
- /**
11
- * Extensible interface for theme names.
12
- * Augment this interface to register project-specific theme names for autocomplete.
13
- *
14
- * @example
15
- * ```typescript
16
- * declare module '@tenphi/tasty' {
17
- * interface TastyThemeNames {
18
- * danger: true;
19
- * success: true;
20
- * }
21
- * }
22
- * ```
23
- */
24
- interface TastyThemeNames {}
25
- type ThemeNameKey = Extract<keyof TastyThemeNames, string>;
26
- type ThemeName = [ThemeNameKey] extends [never] ? string : ThemeNameKey;
27
- /** Allowed mod value types */
28
- type ModValue = boolean | string | number | undefined | null;
29
- /**
30
- * Type for element modifiers (mods prop).
31
- * Can be used as a generic to define known modifiers with autocomplete:
32
- * @example
33
- * type ButtonMods = Mods<{
34
- * loading?: boolean;
35
- * selected?: boolean;
36
- * }>;
37
- */
38
- type Mods<T extends Record<string, ModValue> = Record<string, ModValue>> = T & Record<string, ModValue>;
39
- /**
40
- * Token value: string or number (processed), boolean for special handling, undefined/null (skipped).
41
- * For color tokens (#name), boolean `true` is converted to `transparent`.
42
- * For non-color tokens ($name), boolean `true` results in an empty string value.
43
- * Boolean `false` results in no CSS output (token is skipped).
44
- */
45
- type TokenValue = string | number | boolean | undefined | null;
46
- /**
47
- * Tokens definition for inline CSS custom properties.
48
- * - `$name` keys become `--name` CSS properties
49
- * - `#name` keys become `--name-color` and `--name-color-{colorSpace}` CSS properties
50
- */
51
- type Tokens = Record<`$${string}` | `#${string}`, TokenValue>;
52
- type Caps = 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z';
53
- interface BasePropsWithoutChildren<K extends TagName = TagName> extends Pick<AllHTMLAttributes<HTMLElement>, 'className' | 'role' | 'id'> {
54
- /** The HTML tag or React component to render as */
55
- as?: K | ComponentType<any>;
56
- /** QA ID for e2e testing. An alias for `data-qa` attribute. */
57
- qa?: string;
58
- /** QA value for e2e testing. An alias for `data-qaval` attribute. */
59
- qaVal?: string | number;
60
- /** Inner element name */
61
- element?: `${Caps}${string}`;
62
- /** The style map */
63
- styles?: Styles;
64
- /** The list of responsive points in pixels */
65
- breakpoints?: number[];
66
- /** Whether the element has the block layout outside */
67
- block?: boolean;
68
- /** Whether the element has the inline layout outside */
69
- inline?: boolean;
70
- /** The list of element modifiers **/
71
- mods?: Mods;
72
- /** Whether the element is hidden (`hidden` attribute is set) */
73
- isHidden?: boolean;
74
- /** Whether the element is disabled (`disabled` attribute is set) */
75
- isDisabled?: boolean;
76
- /** Plain css for the element */
77
- css?: string;
78
- /** The CSS style map */
79
- style?: CSSProperties$1 | (CSSProperties$1 & Record<string, string | number | null | undefined>);
80
- /** User-defined theme for the element. Mapped to `data-theme` attribute. Augment `TastyThemeNames` to register project-specific themes for autocomplete. */
81
- theme?: ThemeName | (string & {});
82
- /** CSS custom property tokens rendered as inline styles */
83
- tokens?: Tokens;
84
- }
85
- interface BaseProps<K extends TagName = TagName> extends BasePropsWithoutChildren<K>, Pick<AllHTMLAttributes<HTMLElementTagNameMap[K]>, 'children'> {}
86
- interface AllBaseProps<K extends TagName = TagName> extends BaseProps<K>, Omit<AllHTMLAttributes<HTMLElementTagNameMap[K]>, 'style' | 'disabled' | 'hidden' | 'css' | 'content' | 'translate' | 'as' | 'form' | 'bgcolor' | 'background' | 'align' | 'border' | 'color' | 'height' | 'size' | 'width' | 'prefix'> {}
87
- type BaseStyleProps = Pick<Styles, (typeof BASE_STYLES)[number]>;
88
- type PositionStyleProps = Pick<Styles, (typeof POSITION_STYLES)[number]>;
89
- type BlockStyleProps = Pick<Styles, (typeof BLOCK_STYLES)[number]>;
90
- type BlockInnerStyleProps = Pick<Styles, (typeof BLOCK_INNER_STYLES)[number]>;
91
- type BlockOuterStyleProps = Pick<Styles, (typeof BLOCK_OUTER_STYLES)[number]>;
92
- type ColorStyleProps = Pick<Styles, (typeof COLOR_STYLES)[number]>;
93
- type TextStyleProps = Pick<Styles, (typeof TEXT_STYLES)[number]>;
94
- type DimensionStyleProps = Pick<Styles, (typeof DIMENSION_STYLES)[number]>;
95
- type FlowStyleProps = Pick<Styles, (typeof FLOW_STYLES)[number]>;
96
- type ContainerStyleProps = Pick<Styles, (typeof CONTAINER_STYLES)[number]>;
97
- type OuterStyleProps = Pick<Styles, (typeof OUTER_STYLES)[number]>;
98
- type InnerStyleProps = Pick<Styles, (typeof INNER_STYLES)[number]>;
99
- interface ShortGridStyles {
100
- template?: Styles['gridTemplate'];
101
- columns?: Styles['gridColumns'];
102
- rows?: Styles['gridRows'];
103
- areas?: Styles['gridAreas'];
104
- }
105
- type Props = Record<string, any>;
106
- type TagName = keyof HTMLElementTagNameMap;
107
- /**
108
- * Configuration type for tasty.config.ts files.
109
- * Used by the Tasty VSCode extension for validation and autocomplete.
110
- *
111
- * @example
112
- * ```typescript
113
- * import type { TastyExtensionConfig } from '@tenphi/tasty';
114
- *
115
- * const config: TastyExtensionConfig = {
116
- * tokens: ['#primary', '#danger', '$spacing'],
117
- * units: ['x', 'r', 'bw'],
118
- * states: ['@mobile', '@tablet', '@dark'],
119
- * presets: ['h1', 'h2', 't1', 't2'],
120
- * };
121
- *
122
- * export default config;
123
- * ```
124
- */
125
- interface TastyExtensionConfig {
126
- /**
127
- * Extend another config file. Path is relative to this config file.
128
- * The extended config is merged first, then this config's values are added.
129
- * @example '../tasty.config.ts'
130
- */
131
- extends?: string;
132
- /**
133
- * Valid token names for validation and autocomplete.
134
- * Use # prefix for colors, $ prefix for custom properties.
135
- * Set to `false` to disable token validation (overrides parent).
136
- * @example ['#primary', '#danger', '$spacing', '$gap']
137
- */
138
- tokens?: false | string[];
139
- /**
140
- * Valid custom unit names.
141
- * Set to `false` to disable unit validation (overrides parent).
142
- * @example ['x', 'r', 'bw', 'cols']
143
- */
144
- units?: false | string[];
145
- /**
146
- * Valid custom function names.
147
- * Set to `false` to disable function validation (overrides parent).
148
- * @example ['clamp', 'double']
149
- */
150
- funcs?: false | string[];
151
- /**
152
- * State alias names for autocomplete.
153
- * Must start with @ prefix.
154
- * @example ['@mobile', '@tablet', '@dark']
155
- */
156
- states?: string[];
157
- /**
158
- * Valid preset names for the `preset` style property.
159
- * Tasty has no built-in presets - they are project-specific.
160
- * @example ['h1', 'h2', 'h3', 't1', 't2', 't3', 'tag']
161
- */
162
- presets?: string[];
163
- /**
164
- * Custom style property names added via configure({ handlers }).
165
- * Suppresses "unknown property" warnings for these names.
166
- * @example ['myGradient', 'customLayout', 'brandBorder']
167
- */
168
- styles?: string[];
169
- /**
170
- * Descriptions for presets, shown on hover in the extension.
171
- * Maps preset names to human-readable descriptions.
172
- * @example { h1: 'Heading 1 (36px/44px, semibold)', t1: 'Text large (18px/24px)' }
173
- */
174
- presetDescriptions?: Record<string, string>;
175
- /**
176
- * Descriptions for state aliases, shown on hover in the extension.
177
- * Maps state names to human-readable descriptions.
178
- * @example { '@mobile': 'Mobile viewport (width < 768px)' }
179
- */
180
- stateDescriptions?: Record<string, string>;
181
- }
182
- //#endregion
183
- export { AllBaseProps, BaseProps, BasePropsWithoutChildren, BaseStyleProps, BlockInnerStyleProps, BlockOuterStyleProps, BlockStyleProps, ColorStyleProps, ContainerStyleProps, DimensionStyleProps, FlowStyleProps, GlobalStyledProps, InnerStyleProps, ModValue, Mods, OuterStyleProps, PositionStyleProps, Props, ShortGridStyles, TagName, TastyExtensionConfig, TastyThemeNames, TextStyleProps, TokenValue, Tokens };
184
- //# sourceMappingURL=types.d.ts.map
@@ -1,21 +0,0 @@
1
- import { Lru } from "../parser/lru.js";
2
- //#region src/utils/cache-wrapper.ts
3
- /**
4
- * Create a function that caches the result with LRU eviction.
5
- */
6
- function cacheWrapper(handler, limit = 1e3) {
7
- const cache = new Lru(limit);
8
- return (firstArg, secondArg) => {
9
- const key = typeof firstArg === "string" && secondArg == null ? firstArg : JSON.stringify([firstArg, secondArg]);
10
- let result = cache.get(key);
11
- if (result === void 0) {
12
- result = secondArg == null ? handler(firstArg) : handler(firstArg, secondArg);
13
- cache.set(key, result);
14
- }
15
- return result;
16
- };
17
- }
18
- //#endregion
19
- export { cacheWrapper };
20
-
21
- //# sourceMappingURL=cache-wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache-wrapper.js","names":[],"sources":["../../src/utils/cache-wrapper.ts"],"sourcesContent":["import { Lru } from '../parser/lru';\n\n/**\n * Create a function that caches the result with LRU eviction.\n */\nexport function cacheWrapper<A, B, R>(\n handler: (firstArg: A, secondArg?: B) => R,\n limit = 1000,\n): (firstArg: A, secondArg?: B) => R {\n const cache = new Lru<string, R>(limit);\n\n return (firstArg: A, secondArg?: B) => {\n const key =\n typeof firstArg === 'string' && secondArg == null\n ? firstArg\n : JSON.stringify([firstArg, secondArg]);\n\n let result = cache.get(key);\n if (result === undefined) {\n result =\n secondArg == null ? handler(firstArg) : handler(firstArg, secondArg);\n cache.set(key, result);\n }\n return result;\n };\n}\n"],"mappings":";;;;;AAKA,SAAgB,aACd,SACA,QAAQ,KAC2B;CACnC,MAAM,QAAQ,IAAI,IAAe,MAAM;AAEvC,SAAQ,UAAa,cAAkB;EACrC,MAAM,MACJ,OAAO,aAAa,YAAY,aAAa,OACzC,WACA,KAAK,UAAU,CAAC,UAAU,UAAU,CAAC;EAE3C,IAAI,SAAS,MAAM,IAAI,IAAI;AAC3B,MAAI,WAAW,KAAA,GAAW;AACxB,YACE,aAAa,OAAO,QAAQ,SAAS,GAAG,QAAQ,UAAU,UAAU;AACtE,SAAM,IAAI,KAAK,OAAO;;AAExB,SAAO"}
@@ -1,8 +0,0 @@
1
- //#region src/utils/case-converter.ts
2
- function camelToKebab(str) {
3
- return str.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
4
- }
5
- //#endregion
6
- export { camelToKebab };
7
-
8
- //# sourceMappingURL=case-converter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"case-converter.js","names":[],"sources":["../../src/utils/case-converter.ts"],"sourcesContent":["export function camelToKebab(str: string): string {\n return str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();\n}\n"],"mappings":";AAAA,SAAgB,aAAa,KAAqB;AAChD,QAAO,IAAI,QAAQ,sBAAsB,QAAQ,CAAC,aAAa"}
@@ -1,46 +0,0 @@
1
- //#region src/utils/color-math.d.ts
2
- /**
3
- * Consolidated color conversion math.
4
- *
5
- * Single source of truth for all color space conversions used across the
6
- * library: sRGB gamma, HSL, OKLab, OKLCH, OKHSL, hex parsing, named
7
- * colors, and CSS string converters.
8
- *
9
- * This module has zero internal imports — it is a leaf dependency.
10
- *
11
- * Reference: https://bottosson.github.io/posts/oklab/
12
- */
13
- type Vec3 = [number, number, number];
14
- /**
15
- * HSL to RGB.
16
- * Algorithm from CSS Color 4 spec.
17
- *
18
- * @param h - Hue in degrees (0-360)
19
- * @param s - Saturation (0-1)
20
- * @param l - Lightness (0-1)
21
- * @returns RGB values in 0-255 range (may have fractional values)
22
- */
23
- declare function hslToRgbValues(h: number, s: number, l: number): Vec3;
24
- declare function getNamedColorHex(): Map<string, string>;
25
- /**
26
- * Convert hex color string to `rgb()` CSS string.
27
- * Supports 3, 4, 6, and 8 character hex values (with or without `#`).
28
- */
29
- declare function hexToRgb(hex: string): string | null;
30
- /**
31
- * Extract RGB values from an `rgb()`/`rgba()` string.
32
- * Supports comma-separated, space-separated, fractional, percentage,
33
- * and slash alpha notation.
34
- *
35
- * @returns Array of RGB values (0-255 range), converting percentages as needed.
36
- */
37
- declare function getRgbValuesFromRgbaString(str: string): number[];
38
- /**
39
- * Convert any recognized color string to an `rgb()` CSS string.
40
- * Handles hex, `okhsl()`, `hsl()`/`hsla()`, named CSS colors,
41
- * and `rgb()`/`rgba()` pass-through.
42
- */
43
- declare function strToRgb(color: string, _ignoreAlpha?: boolean): string | null | undefined;
44
- //#endregion
45
- export { getNamedColorHex, getRgbValuesFromRgbaString, hexToRgb, hslToRgbValues, strToRgb };
46
- //# sourceMappingURL=color-math.d.ts.map