@aziontech/theme 2.6.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/README.md +73 -66
  2. package/dist/v4/globals.css +799 -79
  3. package/dist/v4/globals.scss +799 -79
  4. package/package.json +6 -23
  5. package/src/scripts/build-tokens.mjs +197 -230
  6. package/src/scripts/compile-primitives.js +79 -79
  7. package/src/scripts/compile-theme.js +70 -63
  8. package/src/scripts/css-vars.d.ts.map +1 -1
  9. package/src/scripts/css-vars.js +20 -16
  10. package/src/scripts/refs.js +2 -2
  11. package/src/scripts/resolve.d.ts.map +1 -1
  12. package/src/scripts/resolve.js +50 -47
  13. package/src/tokens/README.md +53 -74
  14. package/src/tokens/index.js +5 -5
  15. package/src/tokens/primitives/animations/animate.d.ts +10 -0
  16. package/src/tokens/primitives/animations/animate.d.ts.map +1 -1
  17. package/src/tokens/primitives/animations/animate.js +15 -5
  18. package/src/tokens/primitives/animations/ease.d.ts.map +1 -1
  19. package/src/tokens/primitives/animations/ease.js +3 -3
  20. package/src/tokens/primitives/animations/keyframes.d.ts +63 -0
  21. package/src/tokens/primitives/animations/keyframes.d.ts.map +1 -0
  22. package/src/tokens/primitives/animations/keyframes.js +69 -0
  23. package/src/tokens/primitives/border-widths.d.ts.map +1 -1
  24. package/src/tokens/primitives/border-widths.js +3 -3
  25. package/src/tokens/primitives/breakpoints.d.ts.map +1 -1
  26. package/src/tokens/primitives/breakpoints.js +3 -3
  27. package/src/tokens/primitives/colors/alpha.d.ts +80 -80
  28. package/src/tokens/primitives/colors/alpha.js +84 -84
  29. package/src/tokens/primitives/colors/brand.d.ts +22 -22
  30. package/src/tokens/primitives/colors/brand.js +28 -28
  31. package/src/tokens/primitives/colors/colors.d.ts +88 -88
  32. package/src/tokens/primitives/colors/colors.js +107 -107
  33. package/src/tokens/primitives/effects/blur.d.ts.map +1 -1
  34. package/src/tokens/primitives/effects/blur.js +3 -3
  35. package/src/tokens/primitives/effects/drop-shadow.d.ts.map +1 -1
  36. package/src/tokens/primitives/effects/drop-shadow.js +3 -3
  37. package/src/tokens/primitives/effects/inset-shadow.d.ts.map +1 -1
  38. package/src/tokens/primitives/effects/inset-shadow.js +3 -3
  39. package/src/tokens/primitives/effects/opacity.d.ts.map +1 -1
  40. package/src/tokens/primitives/effects/opacity.js +3 -3
  41. package/src/tokens/primitives/effects/perspective.js +3 -3
  42. package/src/tokens/primitives/effects/shadow.d.ts.map +1 -1
  43. package/src/tokens/primitives/effects/shadow.js +3 -3
  44. package/src/{azion/_fonts.scss → tokens/primitives/fonts.css} +19 -4
  45. package/src/tokens/primitives/ring-offset.d.ts.map +1 -1
  46. package/src/tokens/primitives/ring-offset.js +3 -3
  47. package/src/tokens/primitives/shape/aspect-video.d.ts.map +1 -1
  48. package/src/tokens/primitives/shape/aspect-video.js +2 -2
  49. package/src/tokens/primitives/shape/container.d.ts.map +1 -1
  50. package/src/tokens/primitives/shape/container.js +3 -3
  51. package/src/tokens/primitives/shape/height.d.ts.map +1 -1
  52. package/src/tokens/primitives/shape/height.js +3 -3
  53. package/src/tokens/primitives/shape/radius.d.ts.map +1 -1
  54. package/src/tokens/primitives/shape/radius.js +3 -3
  55. package/src/tokens/primitives/shape/size.d.ts.map +1 -1
  56. package/src/tokens/primitives/shape/size.js +3 -3
  57. package/src/tokens/primitives/shape/spacing.d.ts.map +1 -1
  58. package/src/tokens/primitives/shape/spacing.js +3 -3
  59. package/src/tokens/primitives/shape/width.d.ts.map +1 -1
  60. package/src/tokens/primitives/shape/width.js +4 -4
  61. package/src/tokens/primitives/typography/font-size.d.ts.map +1 -1
  62. package/src/tokens/primitives/typography/font-size.js +4 -4
  63. package/src/tokens/primitives/typography/font-weight.js +3 -3
  64. package/src/tokens/primitives/typography/leading.js +3 -3
  65. package/src/tokens/primitives/typography/line-height.d.ts.map +1 -1
  66. package/src/tokens/primitives/typography/line-height.js +3 -3
  67. package/src/tokens/primitives/typography/tracking.js +3 -3
  68. package/src/tokens/semantic/colors.js +17 -17
  69. package/src/tokens/semantic/containers.data.d.ts.map +1 -1
  70. package/src/tokens/semantic/containers.data.js +3 -3
  71. package/src/tokens/semantic/containers.js +25 -25
  72. package/src/tokens/semantic/spacings.data.d.ts.map +1 -1
  73. package/src/tokens/semantic/spacings.data.js +3 -3
  74. package/src/tokens/semantic/texts.data.d.ts +59 -28
  75. package/src/tokens/semantic/texts.data.d.ts.map +1 -1
  76. package/src/tokens/semantic/texts.data.js +90 -56
  77. package/src/tokens/theme/accent.js +6 -6
  78. package/src/tokens/theme/border.js +6 -6
  79. package/src/tokens/theme/code-sintax.d.ts +53 -0
  80. package/src/tokens/theme/code-sintax.d.ts.map +1 -0
  81. package/src/tokens/theme/code-sintax.js +28 -0
  82. package/src/tokens/theme/feedback/danger.js +6 -6
  83. package/src/tokens/theme/feedback/info.js +6 -6
  84. package/src/tokens/theme/feedback/success.js +6 -6
  85. package/src/tokens/theme/feedback/warning.js +6 -6
  86. package/src/tokens/theme/primary.js +6 -6
  87. package/src/tokens/theme/ring.js +6 -6
  88. package/src/tokens/theme/secondary.js +6 -6
  89. package/src/tokens/theme/surfaces.d.ts.map +1 -1
  90. package/src/tokens/theme/surfaces.js +6 -6
  91. package/src/tokens/theme/text.d.ts +6 -0
  92. package/src/tokens/theme/text.js +2 -0
  93. package/src/tokens/theme.d.ts +110 -110
  94. package/src/tokens/theme.js +9 -9
  95. package/default.js +0 -1
  96. package/dist/v3/globals.css +0 -855
  97. package/dist/v3/globals.scss +0 -855
  98. package/dist/v3/tailwind-preset.js +0 -510
  99. package/dist/v3/tailwind.config.js +0 -518
  100. package/src/azion/_custom.scss +0 -3
  101. package/src/azion/_extensions.scss +0 -37
  102. package/src/azion/_variables-widget.scss +0 -400
  103. package/src/azion/_variables.scss +0 -407
  104. package/src/azion/custom/_code.scss +0 -11
  105. package/src/azion/custom/_focus.scss +0 -5
  106. package/src/azion/custom/_scrollbehavior.scss +0 -6
  107. package/src/azion/custom/_selection.scss +0 -4
  108. package/src/azion/custom/_special-button.scss +0 -57
  109. package/src/azion/extended-components/_autocomplete.scss +0 -13
  110. package/src/azion/extended-components/_badge.scss +0 -53
  111. package/src/azion/extended-components/_breadcumb.scss +0 -18
  112. package/src/azion/extended-components/_button.scss +0 -134
  113. package/src/azion/extended-components/_calendar.scss +0 -310
  114. package/src/azion/extended-components/_carousel.scss +0 -9
  115. package/src/azion/extended-components/_checkbox.scss +0 -33
  116. package/src/azion/extended-components/_datatable.scss +0 -130
  117. package/src/azion/extended-components/_dialog.scss +0 -45
  118. package/src/azion/extended-components/_divider.scss +0 -37
  119. package/src/azion/extended-components/_dropdown.scss +0 -10
  120. package/src/azion/extended-components/_dropdownitem.scss +0 -13
  121. package/src/azion/extended-components/_inlinemessage.scss +0 -10
  122. package/src/azion/extended-components/_inputnumber.scss +0 -40
  123. package/src/azion/extended-components/_inputpassword.scss +0 -4
  124. package/src/azion/extended-components/_inputswitch.scss +0 -53
  125. package/src/azion/extended-components/_listbox.scss +0 -35
  126. package/src/azion/extended-components/_markdown.scss +0 -135
  127. package/src/azion/extended-components/_menuitem.scss +0 -22
  128. package/src/azion/extended-components/_multiselect.scss +0 -167
  129. package/src/azion/extended-components/_overlaypanel.scss +0 -18
  130. package/src/azion/extended-components/_picklist.scss +0 -25
  131. package/src/azion/extended-components/_progressbar.scss +0 -6
  132. package/src/azion/extended-components/_radiobutton.scss +0 -63
  133. package/src/azion/extended-components/_selectbutton.scss +0 -36
  134. package/src/azion/extended-components/_sidebar.scss +0 -28
  135. package/src/azion/extended-components/_splitbutton.scss +0 -22
  136. package/src/azion/extended-components/_tabmenu.scss +0 -21
  137. package/src/azion/extended-components/_tabview.scss +0 -41
  138. package/src/azion/extended-components/_tag.scss +0 -47
  139. package/src/azion/extended-components/_toast.scss +0 -9
  140. package/src/azion/extended-components/_tooltip.scss +0 -7
  141. package/src/azion/extended-components/_treeselect.scss +0 -10
  142. package/src/azion/extended-components/jsonform/_inputcheckbox.scss +0 -41
  143. package/src/azion/extended-components/jsonform/_inputtext.scss +0 -26
  144. package/src/azion/extended-components/jsonform/_label.scss +0 -185
  145. package/src/azion/extended-components/jsonform/_select.scss +0 -34
  146. package/src/azion/theme-base/_colors.scss +0 -18
  147. package/src/azion/theme-base/_common.scss +0 -75
  148. package/src/azion/theme-base/_components.scss +0 -103
  149. package/src/azion/theme-base/_mixins.scss +0 -250
  150. package/src/azion/theme-base/components/button/_button.scss +0 -567
  151. package/src/azion/theme-base/components/button/_speeddial.scss +0 -97
  152. package/src/azion/theme-base/components/button/_splitbutton.scss +0 -390
  153. package/src/azion/theme-base/components/data/_carousel.scss +0 -37
  154. package/src/azion/theme-base/components/data/_datatable.scss +0 -347
  155. package/src/azion/theme-base/components/data/_dataview.scss +0 -47
  156. package/src/azion/theme-base/components/data/_filter.scss +0 -138
  157. package/src/azion/theme-base/components/data/_orderlist.scss +0 -70
  158. package/src/azion/theme-base/components/data/_organizationchart.scss +0 -50
  159. package/src/azion/theme-base/components/data/_paginator.scss +0 -92
  160. package/src/azion/theme-base/components/data/_picklist.scss +0 -70
  161. package/src/azion/theme-base/components/data/_timeline.scss +0 -38
  162. package/src/azion/theme-base/components/data/_tree.scss +0 -90
  163. package/src/azion/theme-base/components/data/_treetable.scss +0 -251
  164. package/src/azion/theme-base/components/file/_fileupload.scss +0 -82
  165. package/src/azion/theme-base/components/input/_autocomplete.scss +0 -114
  166. package/src/azion/theme-base/components/input/_calendar.scss +0 -251
  167. package/src/azion/theme-base/components/input/_cascadeselect.scss +0 -106
  168. package/src/azion/theme-base/components/input/_checkbox.scss +0 -86
  169. package/src/azion/theme-base/components/input/_chips.scss +0 -53
  170. package/src/azion/theme-base/components/input/_colorpicker.scss +0 -18
  171. package/src/azion/theme-base/components/input/_dropdown.scss +0 -147
  172. package/src/azion/theme-base/components/input/_editor.scss +0 -122
  173. package/src/azion/theme-base/components/input/_inputgroup.scss +0 -74
  174. package/src/azion/theme-base/components/input/_inputnumber.scss +0 -5
  175. package/src/azion/theme-base/components/input/_inputswitch.scss +0 -62
  176. package/src/azion/theme-base/components/input/_inputtext.scss +0 -100
  177. package/src/azion/theme-base/components/input/_listbox.scss +0 -89
  178. package/src/azion/theme-base/components/input/_multiselect.scss +0 -166
  179. package/src/azion/theme-base/components/input/_password.scss +0 -33
  180. package/src/azion/theme-base/components/input/_radiobutton.scss +0 -78
  181. package/src/azion/theme-base/components/input/_rating.scss +0 -60
  182. package/src/azion/theme-base/components/input/_selectbutton.scss +0 -50
  183. package/src/azion/theme-base/components/input/_slider.scss +0 -49
  184. package/src/azion/theme-base/components/input/_togglebutton.scss +0 -52
  185. package/src/azion/theme-base/components/input/_treeselect.scss +0 -91
  186. package/src/azion/theme-base/components/menu/_breadcrumb.scss +0 -42
  187. package/src/azion/theme-base/components/menu/_contextmenu.scss +0 -39
  188. package/src/azion/theme-base/components/menu/_dock.scss +0 -95
  189. package/src/azion/theme-base/components/menu/_megamenu.scss +0 -55
  190. package/src/azion/theme-base/components/menu/_menu.scss +0 -33
  191. package/src/azion/theme-base/components/menu/_menubar.scss +0 -141
  192. package/src/azion/theme-base/components/menu/_panelmenu.scss +0 -153
  193. package/src/azion/theme-base/components/menu/_steps.scss +0 -56
  194. package/src/azion/theme-base/components/menu/_tabmenu.scss +0 -49
  195. package/src/azion/theme-base/components/menu/_tieredmenu.scss +0 -43
  196. package/src/azion/theme-base/components/messages/_inlinemessage.scss +0 -64
  197. package/src/azion/theme-base/components/messages/_message.scss +0 -100
  198. package/src/azion/theme-base/components/messages/_toast.scss +0 -100
  199. package/src/azion/theme-base/components/misc/_avatar.scss +0 -30
  200. package/src/azion/theme-base/components/misc/_badge.scss +0 -48
  201. package/src/azion/theme-base/components/misc/_blockui.scss +0 -0
  202. package/src/azion/theme-base/components/misc/_chip.scss +0 -39
  203. package/src/azion/theme-base/components/misc/_inplace.scss +0 -17
  204. package/src/azion/theme-base/components/misc/_progressbar.scss +0 -17
  205. package/src/azion/theme-base/components/misc/_progressspinner.scss +0 -49
  206. package/src/azion/theme-base/components/misc/_scrolltop.scss +0 -25
  207. package/src/azion/theme-base/components/misc/_skeleton.scss +0 -8
  208. package/src/azion/theme-base/components/misc/_tag.scss +0 -40
  209. package/src/azion/theme-base/components/misc/_terminal.scss +0 -12
  210. package/src/azion/theme-base/components/multimedia/_galleria.scss +0 -151
  211. package/src/azion/theme-base/components/multimedia/_image.scss +0 -54
  212. package/src/azion/theme-base/components/overlay/_confirmpopup.scss +0 -72
  213. package/src/azion/theme-base/components/overlay/_dialog.scss +0 -64
  214. package/src/azion/theme-base/components/overlay/_overlaypanel.scss +0 -38
  215. package/src/azion/theme-base/components/overlay/_sidebar.scss +0 -23
  216. package/src/azion/theme-base/components/overlay/_tooltip.scss +0 -33
  217. package/src/azion/theme-base/components/panel/_accordion.scss +0 -118
  218. package/src/azion/theme-base/components/panel/_card.scss +0 -30
  219. package/src/azion/theme-base/components/panel/_divider.scss +0 -40
  220. package/src/azion/theme-base/components/panel/_fieldset.scss +0 -51
  221. package/src/azion/theme-base/components/panel/_panel.scss +0 -47
  222. package/src/azion/theme-base/components/panel/_scrollpanel.scss +0 -11
  223. package/src/azion/theme-base/components/panel/_splitter.scss +0 -24
  224. package/src/azion/theme-base/components/panel/_tabview.scss +0 -66
  225. package/src/azion/theme-base/components/panel/_toolbar.scss +0 -11
  226. package/src/azion/theme-widget.scss +0 -9
  227. package/src/azion/theme.scss +0 -9
  228. package/src/azion/variables/_button.scss +0 -438
  229. package/src/azion/variables/_data.scss +0 -346
  230. package/src/azion/variables/_form.scss +0 -570
  231. package/src/azion/variables/_general.scss +0 -149
  232. package/src/azion/variables/_media.scss +0 -231
  233. package/src/azion/variables/_menu.scss +0 -287
  234. package/src/azion/variables/_message.scss +0 -145
  235. package/src/azion/variables/_misc.scss +0 -143
  236. package/src/azion/variables/_overlay.scss +0 -67
  237. package/src/azion/variables/_panel.scss +0 -327
  238. package/src/tests/primitives.html +0 -293
  239. package/src/tests/theme.html +0 -310
  240. package/src/tests/tokens.html +0 -87
  241. package/src/tokens/semantic/animations.d.ts +0 -3
  242. package/src/tokens/semantic/animations.d.ts.map +0 -1
  243. package/src/tokens/semantic/animations.js +0 -80
  244. package/src/tokens/semantic/spacings.d.ts +0 -3
  245. package/src/tokens/semantic/spacings.d.ts.map +0 -1
  246. package/src/tokens/semantic/spacings.js +0 -163
  247. package/src/tokens/semantic/texts.d.ts +0 -3
  248. package/src/tokens/semantic/texts.d.ts.map +0 -1
  249. package/src/tokens/semantic/texts.js +0 -299
  250. package/tokens.js +0 -7
  251. package/widget.js +0 -1
@@ -140,14 +140,14 @@ Plain JS objects with literal values. Theme-invariant.
140
140
  // tokens/primitives/colors/brand.js
141
141
  export const brandPrimitives = {
142
142
  primary: { 50: '#FFF5EF', 100: '#FFE7D8', /* … */ 500: '#FE601F', /* … */ 950: '#401602' },
143
- accent: { 50: '#F6F6FF', /* … */ 500: '#8A84EC', /* … */ 950: '#0B0A19' },
144
- absolute: { black: '#0A0A0A', white: '#FCFCFC' },
145
- };
143
+ accent: { 50: '#F6F6FF', /* … */ 500: '#8A84EC', /* … */ 950: '#0B0A19' },
144
+ absolute: { black: '#0A0A0A', white: '#FCFCFC' }
145
+ }
146
146
  ```
147
147
 
148
148
  ```js
149
149
  // tokens/primitives/shape/spacing.js
150
- export const spacing = { 1: '4px', 2: '8px', /* … */ 96: '384px' };
150
+ export const spacing = { 1: '4px', 2: '8px', /* … */ 96: '384px' }
151
151
  ```
152
152
 
153
153
  ### Semantic / theme
@@ -156,22 +156,22 @@ Objects with `light` / `dark` variants. Values are `tokenRef(...)` calls that po
156
156
 
157
157
  ```js
158
158
  // tokens/theme/primary.js
159
- import { tokenRef } from '../../scripts/refs.js';
159
+ import { tokenRef } from '../../scripts/refs.js'
160
160
 
161
161
  export const primary = {
162
162
  light: {
163
- primary: tokenRef('brand.primary.primary-500'),
164
- 'primary-mask': tokenRef('primitives.alpha.orange.100'),
165
- 'primary-hover': tokenRef('brand.primary.primary-600'),
166
- 'primary-contrast': tokenRef('primitives.base.black'),
163
+ primary: tokenRef('brand.primary.primary-500'),
164
+ 'primary-mask': tokenRef('primitives.alpha.orange.100'),
165
+ 'primary-hover': tokenRef('brand.primary.primary-600'),
166
+ 'primary-contrast': tokenRef('primitives.base.black')
167
167
  },
168
168
  dark: {
169
- primary: tokenRef('brand.primary.primary-500'),
170
- 'primary-mask': tokenRef('primitives.alpha.orange.100'),
171
- 'primary-hover': tokenRef('brand.primary.primary-600'),
172
- 'primary-contrast': tokenRef('primitives.base.white'),
173
- },
174
- };
169
+ primary: tokenRef('brand.primary.primary-500'),
170
+ 'primary-mask': tokenRef('primitives.alpha.orange.100'),
171
+ 'primary-hover': tokenRef('brand.primary.primary-600'),
172
+ 'primary-contrast': tokenRef('primitives.base.white')
173
+ }
174
+ }
175
175
  ```
176
176
 
177
177
  ### Responsive semantic data (`*.data.js`)
@@ -182,9 +182,9 @@ Containers, spacings, and texts use a per-breakpoint table that `build-tokens.mj
182
182
  // tokens/semantic/spacings.data.js
183
183
  export const spacingsData = {
184
184
  'gap-sm': { _: '8px', md: '12px', xl: '16px' },
185
- 'gap-md': { _: '12px', md: '16px', xl: '24px' },
185
+ 'gap-md': { _: '12px', md: '16px', xl: '24px' }
186
186
  // …
187
- };
187
+ }
188
188
  ```
189
189
 
190
190
  `_` is the base value emitted in `:root`; the breakpoint keys (`sm`, `md`, `lg`, `xl`, `2xl`) become media-query overrides.
@@ -196,63 +196,38 @@ export const spacingsData = {
196
196
  ### Building the package
197
197
 
198
198
  ```bash
199
- # emit both v3 and v4 bundles
199
+ # emit the v4 bundle
200
200
  pnpm --filter @aziontech/theme build:tokens
201
-
202
- # only one target
203
- pnpm --filter @aziontech/theme build:tokens:v3
204
- pnpm --filter @aziontech/theme build:tokens:v4
205
-
206
- # v3 + compile final CSS with tailwindcss
207
- pnpm --filter @aziontech/theme build:css:v3
208
201
  ```
209
202
 
210
- Outputs land in `packages/theme/dist/v3/` and `packages/theme/dist/v4/`.
211
-
212
- ### Consuming in a Tailwind v3 project
203
+ Output lands in `packages/theme/dist/v4/`.
213
204
 
214
- ```js
215
- // tailwind.config.js
216
- import themePreset from '@aziontech/theme/tailwind-preset/v3'
217
-
218
- export default {
219
- presets: [themePreset],
220
- content: ['./src/**/*.{vue,js,ts,jsx,tsx}'],
221
- darkMode: ['class'],
222
- }
223
- ```
205
+ ### Consuming (Tailwind v4)
224
206
 
225
207
  ```css
226
208
  /* main.css */
227
- @import '@aziontech/theme/v3/globals.css';
228
- ```
229
-
230
- Utilities like `text-default`, `bg-surface`, `border-default`, `text-primary`, `gap-md`, `p-md`, `.text-heading-lg`, etc. are then available everywhere.
231
-
232
- ### Consuming in a Tailwind v4 project
233
-
234
- ```css
235
- /* main.css */
236
- @import '@aziontech/theme/v4/globals.css';
209
+ @import '@aziontech/theme/globals.css';
237
210
  ```
238
211
 
239
212
  No `tailwind.config.js` needed — v4 reads `@theme { … }` directly from the imported CSS.
240
213
 
214
+ Utilities like `text-default`, `bg-surface`, `border-default`, `text-primary`, `gap-md`, `p-md`, `.text-heading-lg`, `animate-popup-scale-in`, etc. are then available everywhere.
215
+
241
216
  ### As JS objects (Node / build steps)
242
217
 
243
218
  ```js
244
- import { createCssVars, cssVarsString } from '@aziontech/theme';
219
+ import { createCssVars, cssVarsString } from '@aziontech/theme'
245
220
 
246
- createCssVars(); // → { light: { '--text-default': '#1A1A1A', … }, dark: { … } }
247
- cssVarsString(); // → ':root, [data-theme=light], .azion.azion-light { … } [data-theme=dark], … { … }'
221
+ createCssVars() // → { light: { '--text-default': '#1A1A1A', … }, dark: { … } }
222
+ cssVarsString() // → ':root, [data-theme=light], .azion.azion-light { … } [data-theme=dark], … { … }'
248
223
  ```
249
224
 
250
225
  ### Injecting at runtime (browser)
251
226
 
252
227
  ```js
253
- import { injectCssVars } from '@aziontech/theme';
228
+ import { injectCssVars } from '@aziontech/theme'
254
229
 
255
- injectCssVars(); // appends a <style data-azion-tokens> element to <head>
230
+ injectCssVars() // appends a <style data-azion-tokens> element to <head>
256
231
  ```
257
232
 
258
233
  Only useful if you can't precompile and import `globals.css` — production usage should prefer the static stylesheet.
@@ -269,8 +244,8 @@ Only useful if you can't precompile and import `globals.css` — production usag
269
244
  ```js
270
245
  export const spacing = {
271
246
  /* … */
272
- 128: '512px', // new
273
- };
247
+ 128: '512px' // new
248
+ }
274
249
  ```
275
250
 
276
251
  3. Rebuild (`pnpm --filter @aziontech/theme build:tokens`). The compiler picks it up and emits `--spacing-128: 512px`.
@@ -285,13 +260,13 @@ Only useful if you can't precompile and import `globals.css` — production usag
285
260
  export const border = {
286
261
  light: {
287
262
  /* … */
288
- 'border-emphasis': tokenRef('primitives.gray.400'),
263
+ 'border-emphasis': tokenRef('primitives.gray.400')
289
264
  },
290
265
  dark: {
291
266
  /* … */
292
- 'border-emphasis': tokenRef('primitives.gray.500'),
293
- },
294
- };
267
+ 'border-emphasis': tokenRef('primitives.gray.500')
268
+ }
269
+ }
295
270
  ```
296
271
 
297
272
  3. Rebuild. The new variable lands in both `:root` and `[data-theme=dark]` blocks.
@@ -304,8 +279,8 @@ Only useful if you can't precompile and import `globals.css` — production usag
304
279
  // tokens/semantic/spacings.data.js
305
280
  export const spacingsData = {
306
281
  /* … */
307
- 'gap-2xl': { _: '32px', md: '40px', xl: '56px' },
308
- };
282
+ 'gap-2xl': { _: '32px', md: '40px', xl: '56px' }
283
+ }
309
284
  ```
310
285
 
311
286
  2. Rebuild. `build-tokens.mjs` emits the base var in `:root`, per-breakpoint `@media` overrides, **and** a matching `.gap-2xl { gap: var(--gap-2xl) }` utility.
@@ -333,14 +308,14 @@ Bundles with `fontSize: 'inherit'` are omitted from the Tailwind `fontSize` pres
333
308
 
334
309
  `tokenRef(path)` returns a marker object `{ __ref: path }` that the compiler resolves at build time. Supported path prefixes (see `scripts/resolve.js`):
335
310
 
336
- | Prefix | Looks up |
337
- |---|---|
338
- | `primitives.X.Y.Z` | `tokens/primitives/colors/colors.js` tree (e.g., `primitives.gray.900`, `primitives.alpha.orange.100`) |
339
- | `surfacePrimitives.surface.N` | the surface palette (used internally; usually referenced via `brand.surfaces.…`) |
340
- | `brand.surfaces.surface-N` | `surfacePrimitives.surface[N]` (e.g., `brand.surfaces.surface-100` → `#F5F5F5`) |
341
- | `brand.primary.primary-N` | `brandPrimitives.primary[N]` (e.g., `brand.primary.primary-500` → `#FE601F`) |
342
- | `brand.accent.accent-N` | `brandPrimitives.accent[N]` |
343
- | `brand.absolute.X` | `brandPrimitives.absolute.X` (`black` / `white`) |
311
+ | Prefix | Looks up |
312
+ | ----------------------------- | ------------------------------------------------------------------------------------------------------ |
313
+ | `primitives.X.Y.Z` | `tokens/primitives/colors/colors.js` tree (e.g., `primitives.gray.900`, `primitives.alpha.orange.100`) |
314
+ | `surfacePrimitives.surface.N` | the surface palette (used internally; usually referenced via `brand.surfaces.…`) |
315
+ | `brand.surfaces.surface-N` | `surfacePrimitives.surface[N]` (e.g., `brand.surfaces.surface-100` → `#F5F5F5`) |
316
+ | `brand.primary.primary-N` | `brandPrimitives.primary[N]` (e.g., `brand.primary.primary-500` → `#FE601F`) |
317
+ | `brand.accent.accent-N` | `brandPrimitives.accent[N]` |
318
+ | `brand.absolute.X` | `brandPrimitives.absolute.X` (`black` / `white`) |
344
319
 
345
320
  Refs of unknown prefixes are left as the raw path string in the output — flag for "this needs resolver support".
346
321
 
@@ -365,11 +340,15 @@ npx http-server packages/theme/src -p 8080
365
340
  The compiled CSS targets multiple hooks so the runtime can pick whichever convention the consumer uses:
366
341
 
367
342
  ```css
368
- :root, [data-theme=light], .azion.azion-light {
343
+ :root,
344
+ [data-theme='light'],
345
+ .azion.azion-light {
369
346
  /* light theme vars */
370
347
  }
371
348
 
372
- [data-theme=dark], .dark, .azion.azion-dark {
349
+ [data-theme='dark'],
350
+ .dark,
351
+ .azion.azion-dark {
373
352
  /* dark theme vars */
374
353
  }
375
354
  ```
@@ -378,13 +357,13 @@ Switching is a one-liner:
378
357
 
379
358
  ```js
380
359
  // data-attribute strategy
381
- document.documentElement.setAttribute('data-theme', 'dark'); // or 'light'
360
+ document.documentElement.setAttribute('data-theme', 'dark') // or 'light'
382
361
 
383
362
  // Tailwind class strategy
384
- document.documentElement.classList.toggle('dark');
363
+ document.documentElement.classList.toggle('dark')
385
364
 
386
365
  // Azion namespaced classes (use one or the other)
387
- document.documentElement.classList.add('azion', 'azion-dark');
366
+ document.documentElement.classList.add('azion', 'azion-dark')
388
367
  ```
389
368
 
390
369
  All three strategies hit the same set of CSS variables.
@@ -2,8 +2,8 @@
2
2
  * Tokens public exports.
3
3
  */
4
4
 
5
- export { createCssVars, cssVarsString, injectCssVars } from '../scripts/css-vars.js';
6
- export * from './primitives/colors/colors.js';
7
- export * from './semantic/colors.js';
8
- export { textsData } from './semantic/texts.data.js';
9
- export * from './theme.js';
5
+ export { createCssVars, cssVarsString, injectCssVars } from '../scripts/css-vars.js'
6
+ export * from './primitives/colors/colors.js'
7
+ export * from './semantic/colors.js'
8
+ export { textsData } from './semantic/texts.data.js'
9
+ export * from './theme.js'
@@ -11,14 +11,24 @@ export const duration: {
11
11
  'moderate-02': string;
12
12
  'slow-01': string;
13
13
  'slow-02': string;
14
+ 'slow-03': string;
15
+ 'slow-04': string;
14
16
  };
15
17
  export const animate: {
16
18
  spin: string;
17
19
  ping: string;
18
20
  pulse: string;
19
21
  bounce: string;
22
+ shimmer: string;
23
+ blink: string;
24
+ 'fade-in': string;
25
+ 'fade-out': string;
26
+ 'slide-down': string;
27
+ 'highlight-fade': string;
20
28
  'popup-scale-in': string;
21
29
  'popup-scale-out': string;
30
+ 'progress-indeterminate': string;
31
+ 'progress-indeterminate-short': string;
22
32
  };
23
33
  declare namespace _default {
24
34
  export { animate };
@@ -1 +1 @@
1
- {"version":3,"file":"animate.d.ts","sourceRoot":"","sources":["animate.js"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF;;;;;;;EAOE;AAEF;;;;;;;EAOE"}
1
+ {"version":3,"file":"animate.d.ts","sourceRoot":"","sources":["animate.js"],"names":[],"mappings":"AAAA;;;;;EAKC;AAED;;;;;;;;;EASC;AAED;;;;;;;;;;;;;;;EAeC"}
@@ -2,8 +2,8 @@ export const curve = {
2
2
  'productive-entrance': 'cubic-bezier(0.39, 0.57, 0.56, 1)',
3
3
  'productive-exit': 'cubic-bezier(0.55, 0.09, 0.68, 0.53)',
4
4
  'expressive-entrance': 'cubic-bezier(0.17, 0.84, 0.44, 1)',
5
- 'expressive-exit': 'cubic-bezier(0.95, 0.05, 0.8, 0.04)',
6
- };
5
+ 'expressive-exit': 'cubic-bezier(0.95, 0.05, 0.8, 0.04)'
6
+ }
7
7
 
8
8
  export const duration = {
9
9
  'fast-01': '70ms',
@@ -12,15 +12,25 @@ export const duration = {
12
12
  'moderate-02': '240ms',
13
13
  'slow-01': '400ms',
14
14
  'slow-02': '700ms',
15
- };
15
+ 'slow-03': '1100ms',
16
+ 'slow-04': '2100ms'
17
+ }
16
18
 
17
19
  export const animate = {
18
20
  spin: 'spin 1s linear infinite',
19
21
  ping: 'ping 1s cubic-bezier(0, 0, 0.2, 1) infinite',
20
22
  pulse: 'pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite',
21
23
  bounce: 'bounce 1s infinite',
24
+ shimmer: 'shimmer 1.6s linear infinite',
25
+ blink: 'blink 1s step-end infinite',
26
+ 'fade-in': 'fadeIn 220ms ease-in-out',
27
+ 'fade-out': 'fadeOut 220ms ease-in-out',
28
+ 'slide-down': 'slideDown 220ms ease-in-out',
29
+ 'highlight-fade': 'highlight ease-in forwards',
22
30
  'popup-scale-in': `popupScaleIn ${duration['moderate-01']} ${curve['productive-entrance']}`,
23
31
  'popup-scale-out': `popupScaleOut ${duration['fast-02']} ${curve['productive-exit']}`,
24
- };
32
+ 'progress-indeterminate': `progressIndeterminate ${duration['slow-04']} ${curve['productive-entrance']} infinite`,
33
+ 'progress-indeterminate-short': `progressIndeterminateShort ${duration['slow-04']} ${curve['expressive-entrance']} ${duration['slow-03']} infinite`
34
+ }
25
35
 
26
- export default { animate, curve, duration };
36
+ export default { animate, curve, duration }
@@ -1 +1 @@
1
- {"version":3,"file":"ease.d.ts","sourceRoot":"","sources":["ease.js"],"names":[],"mappings":"AAAA;;;;EAIE"}
1
+ {"version":3,"file":"ease.d.ts","sourceRoot":"","sources":["ease.js"],"names":[],"mappings":"AAAA;;;;EAIC"}
@@ -1,7 +1,7 @@
1
1
  export const ease = {
2
2
  in: 'cubic-bezier(0.4, 0, 1, 1)',
3
3
  out: 'cubic-bezier(0, 0, 0.2, 1)',
4
- 'in-out': 'cubic-bezier(0.4, 0, 0.2, 1)',
5
- };
4
+ 'in-out': 'cubic-bezier(0.4, 0, 0.2, 1)'
5
+ }
6
6
 
7
- export default { ease };
7
+ export default { ease }
@@ -0,0 +1,63 @@
1
+ export namespace keyframes {
2
+ let fadeIn: {
3
+ '0%': string;
4
+ '100%': string;
5
+ };
6
+ let fadeOut: {
7
+ '0%': string;
8
+ '100%': string;
9
+ };
10
+ let slideDown: {
11
+ '0%': string;
12
+ '100%': string;
13
+ };
14
+ let blink: {
15
+ '0%, 100%': string;
16
+ '50%': string;
17
+ };
18
+ let highlight: {
19
+ '0%': string;
20
+ '100%': string;
21
+ };
22
+ let shimmer: {
23
+ '0%': string;
24
+ '100%': string;
25
+ };
26
+ let popupScaleIn: {
27
+ '0%': string;
28
+ '100%': string;
29
+ };
30
+ let popupScaleOut: {
31
+ '0%': string;
32
+ '100%': string;
33
+ };
34
+ let progressIndeterminate: {
35
+ '0%': string;
36
+ '60%': string;
37
+ '100%': string;
38
+ };
39
+ let progressIndeterminateShort: {
40
+ '0%': string;
41
+ '60%': string;
42
+ '100%': string;
43
+ };
44
+ }
45
+ /**
46
+ * Utilities that need CSS properties beyond the `animation` shorthand
47
+ * emitted by Tailwind v4 from `--animate-*`. Serialized into
48
+ * `@layer components` in `dist/v4/globals.css`.
49
+ */
50
+ export const animateExtras: {
51
+ 'animate-popup-scale-in': {
52
+ 'transform-origin': string;
53
+ };
54
+ 'animate-popup-scale-out': {
55
+ 'transform-origin': string;
56
+ };
57
+ };
58
+ declare namespace _default {
59
+ export { keyframes };
60
+ export { animateExtras };
61
+ }
62
+ export default _default;
63
+ //# sourceMappingURL=keyframes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyframes.d.ts","sourceRoot":"","sources":["keyframes.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DA;;;;GAIG;AACH;;;;;;;EAGE"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Raw `@keyframes` definitions used by `--animate-*` in `animate.js`.
3
+ *
4
+ * Consumed by `scripts/build-tokens.mjs` to emit real `@keyframes` blocks
5
+ * in the Tailwind v4 `dist/v4/globals.css` output. Tailwind v4 registers
6
+ * the utility via `@theme { --animate-<name>: ... }`, but does not
7
+ * generate the `@keyframes` — those live here.
8
+ *
9
+ * Values are plain CSS-style declarations (strings), not the camelCase
10
+ * object form used by the legacy v3 plugin — this way the build script
11
+ * can serialize them verbatim.
12
+ */
13
+
14
+ export const keyframes = {
15
+ fadeIn: {
16
+ '0%': 'opacity: 0',
17
+ '100%': 'opacity: 1',
18
+ },
19
+ fadeOut: {
20
+ '0%': 'opacity: 1',
21
+ '100%': 'opacity: 0',
22
+ },
23
+ slideDown: {
24
+ '0%': 'height: 0',
25
+ '100%': 'height: auto',
26
+ },
27
+ blink: {
28
+ '0%, 100%': 'opacity: 1',
29
+ '50%': 'opacity: 0',
30
+ },
31
+ highlight: {
32
+ '0%': 'background-color: var(--surface-hover); font-weight: 500',
33
+ '100%': 'background-color: var(--surface-hover); font-weight: 500',
34
+ },
35
+ shimmer: {
36
+ '0%': 'background-position: 200% 0',
37
+ '100%': 'background-position: -200% 0',
38
+ },
39
+ popupScaleIn: {
40
+ '0%': 'opacity: 0; transform: scale(0.95)',
41
+ '100%': 'opacity: 1; transform: scale(1)',
42
+ },
43
+ popupScaleOut: {
44
+ '0%': 'opacity: 1; transform: scale(1)',
45
+ '100%': 'opacity: 0; transform: scale(0.95)',
46
+ },
47
+ progressIndeterminate: {
48
+ '0%': 'inset-inline-start: -35%; inset-inline-end: 100%',
49
+ '60%': 'inset-inline-start: 100%; inset-inline-end: -90%',
50
+ '100%': 'inset-inline-start: 100%; inset-inline-end: -90%',
51
+ },
52
+ progressIndeterminateShort: {
53
+ '0%': 'inset-inline-start: -200%; inset-inline-end: 100%',
54
+ '60%': 'inset-inline-start: 107%; inset-inline-end: -8%',
55
+ '100%': 'inset-inline-start: 107%; inset-inline-end: -8%',
56
+ },
57
+ };
58
+
59
+ /**
60
+ * Utilities that need CSS properties beyond the `animation` shorthand
61
+ * emitted by Tailwind v4 from `--animate-*`. Serialized into
62
+ * `@layer components` in `dist/v4/globals.css`.
63
+ */
64
+ export const animateExtras = {
65
+ 'animate-popup-scale-in': { 'transform-origin': 'var(--popup-origin, center)' },
66
+ 'animate-popup-scale-out': { 'transform-origin': 'var(--popup-origin, center)' },
67
+ };
68
+
69
+ export default { keyframes, animateExtras };
@@ -1 +1 @@
1
- {"version":3,"file":"border-widths.d.ts","sourceRoot":"","sources":["border-widths.js"],"names":[],"mappings":"AAAA;;;;;;EAME"}
1
+ {"version":3,"file":"border-widths.d.ts","sourceRoot":"","sources":["border-widths.js"],"names":[],"mappings":"AAAA;;;;;;EAMC"}
@@ -3,7 +3,7 @@ export const borderWidths = {
3
3
  1: '0.8px',
4
4
  2: '2px',
5
5
  3: '3px',
6
- 4: '4px',
7
- };
6
+ 4: '4px'
7
+ }
8
8
 
9
- export default { borderWidths };
9
+ export default { borderWidths }
@@ -1 +1 @@
1
- {"version":3,"file":"breakpoints.d.ts","sourceRoot":"","sources":["breakpoints.js"],"names":[],"mappings":"AAAA;;;;;;EAME"}
1
+ {"version":3,"file":"breakpoints.d.ts","sourceRoot":"","sources":["breakpoints.js"],"names":[],"mappings":"AAAA;;;;;;EAMC"}
@@ -3,7 +3,7 @@ export const breakpoints = {
3
3
  md: '768px',
4
4
  lg: '1024px',
5
5
  xl: '1280px',
6
- '2xl': '1536px',
7
- };
6
+ '2xl': '1536px'
7
+ }
8
8
 
9
- export default { breakpoints };
9
+ export default { breakpoints }