tyrell-components 1.0.0-RC12 → 1.0.0-RC14

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 (354) hide show
  1. package/README.md +2 -1
  2. package/css/tyrell-colors-static.css +316 -0
  3. package/css/tyrell-theme.css +1443 -0
  4. package/css/tyrell.css +127 -423
  5. package/dist/tyrell-colors-static.css +316 -0
  6. package/dist/tyrell-theme.css +1443 -0
  7. package/dist/tyrell.css +127 -423
  8. package/dist/tyrell.js +1 -1
  9. package/lib/base/ty-component.d.ts +20 -10
  10. package/lib/base/ty-component.js +21 -144
  11. package/lib/components/button.d.ts +9 -16
  12. package/lib/components/button.js +12 -37
  13. package/lib/components/calendar-month.d.ts +17 -46
  14. package/lib/components/calendar-month.js +97 -145
  15. package/lib/components/calendar-navigation.d.ts +3 -48
  16. package/lib/components/calendar-navigation.js +3 -126
  17. package/lib/components/calendar.d.ts +6 -81
  18. package/lib/components/calendar.js +24 -236
  19. package/lib/components/checkbox.d.ts +8 -74
  20. package/lib/components/checkbox.js +21 -177
  21. package/lib/components/copy.d.ts +7 -59
  22. package/lib/components/copy.js +19 -137
  23. package/lib/components/date-picker.d.ts +23 -161
  24. package/lib/components/date-picker.js +127 -588
  25. package/lib/components/file-upload.d.ts +9 -15
  26. package/lib/components/file-upload.js +19 -41
  27. package/lib/components/icon.d.ts +3 -24
  28. package/lib/components/icon.js +1 -90
  29. package/lib/components/input.d.ts +10 -109
  30. package/lib/components/input.js +24 -209
  31. package/lib/components/modal.d.ts +17 -26
  32. package/lib/components/modal.js +67 -192
  33. package/lib/components/option.d.ts +2 -20
  34. package/lib/components/option.js +1 -148
  35. package/lib/components/popup.d.ts +2 -17
  36. package/lib/components/popup.js +35 -132
  37. package/lib/components/radio.d.ts +7 -24
  38. package/lib/components/radio.js +24 -68
  39. package/lib/components/resize-observer.d.ts +3 -30
  40. package/lib/components/resize-observer.js +12 -46
  41. package/lib/components/scroll-container.d.ts +2 -12
  42. package/lib/components/scroll-container.js +3 -46
  43. package/lib/components/select.d.ts +130 -151
  44. package/lib/components/select.js +327 -516
  45. package/lib/components/selected-tags.d.ts +8 -38
  46. package/lib/components/selected-tags.js +20 -78
  47. package/lib/components/step.d.ts +1 -6
  48. package/lib/components/step.js +0 -6
  49. package/lib/components/switch.d.ts +4 -14
  50. package/lib/components/switch.js +15 -61
  51. package/lib/components/tab.d.ts +1 -6
  52. package/lib/components/tab.js +0 -7
  53. package/lib/components/tabs.d.ts +5 -63
  54. package/lib/components/tabs.js +159 -267
  55. package/lib/components/tag.d.ts +2 -36
  56. package/lib/components/tag.js +5 -105
  57. package/lib/components/textarea.d.ts +6 -86
  58. package/lib/components/textarea.js +2 -173
  59. package/lib/components/tooltip.d.ts +7 -13
  60. package/lib/components/tooltip.js +83 -180
  61. package/lib/components/wizard.d.ts +6 -54
  62. package/lib/components/wizard.js +27 -221
  63. package/lib/icons/fontawesome/brands.d.ts +0 -1
  64. package/lib/icons/fontawesome/brands.js +0 -8
  65. package/lib/icons/fontawesome/regular.d.ts +0 -1
  66. package/lib/icons/fontawesome/regular.js +0 -8
  67. package/lib/icons/fontawesome/solid.d.ts +0 -1
  68. package/lib/icons/fontawesome/solid.js +0 -8
  69. package/lib/icons/heroicons/micro.d.ts +0 -1
  70. package/lib/icons/heroicons/micro.js +0 -8
  71. package/lib/icons/heroicons/mini.d.ts +0 -1
  72. package/lib/icons/heroicons/mini.js +0 -8
  73. package/lib/icons/heroicons/outline.d.ts +0 -1
  74. package/lib/icons/heroicons/outline.js +0 -8
  75. package/lib/icons/heroicons/solid.d.ts +0 -1
  76. package/lib/icons/heroicons/solid.js +0 -8
  77. package/lib/icons/lucide.d.ts +0 -1
  78. package/lib/icons/lucide.js +0 -1872
  79. package/lib/icons/material/filled.d.ts +0 -1
  80. package/lib/icons/material/filled.js +0 -10
  81. package/lib/icons/material/outlined.d.ts +0 -1
  82. package/lib/icons/material/outlined.js +0 -10
  83. package/lib/icons/material/round.d.ts +0 -1
  84. package/lib/icons/material/round.js +0 -10
  85. package/lib/icons/material/sharp.d.ts +0 -1
  86. package/lib/icons/material/sharp.js +0 -10
  87. package/lib/icons/material/two-tone.d.ts +0 -1
  88. package/lib/icons/material/two-tone.js +0 -10
  89. package/lib/index.d.ts +2 -2
  90. package/lib/index.js +2 -21
  91. package/lib/styles/button.d.ts +19 -7
  92. package/lib/styles/button.js +180 -77
  93. package/lib/styles/calendar-month.d.ts +4 -6
  94. package/lib/styles/calendar-month.js +57 -59
  95. package/lib/styles/calendar-navigation.d.ts +2 -6
  96. package/lib/styles/calendar-navigation.js +3 -28
  97. package/lib/styles/calendar.d.ts +1 -2
  98. package/lib/styles/calendar.js +1 -14
  99. package/lib/styles/checkbox.d.ts +3 -2
  100. package/lib/styles/checkbox.js +24 -68
  101. package/lib/styles/copy.d.ts +3 -2
  102. package/lib/styles/copy.js +25 -17
  103. package/lib/styles/custom-scrollbar.d.ts +1 -2
  104. package/lib/styles/custom-scrollbar.js +5 -20
  105. package/lib/styles/date-picker.d.ts +4 -6
  106. package/lib/styles/date-picker.js +80 -130
  107. package/lib/styles/file-upload.d.ts +1 -2
  108. package/lib/styles/file-upload.js +4 -19
  109. package/lib/styles/icon.d.ts +2 -6
  110. package/lib/styles/icon.js +7 -21
  111. package/lib/styles/input.d.ts +4 -7
  112. package/lib/styles/input.js +55 -160
  113. package/lib/styles/modal.d.ts +1 -2
  114. package/lib/styles/modal.js +21 -23
  115. package/lib/styles/option.d.ts +2 -6
  116. package/lib/styles/option.js +17 -63
  117. package/lib/styles/popup.d.ts +1 -2
  118. package/lib/styles/popup.js +26 -30
  119. package/lib/styles/radio.d.ts +3 -2
  120. package/lib/styles/radio.js +21 -32
  121. package/lib/styles/resize-observer.d.ts +1 -2
  122. package/lib/styles/resize-observer.js +0 -7
  123. package/lib/styles/scroll-container.d.ts +1 -2
  124. package/lib/styles/scroll-container.js +0 -19
  125. package/lib/styles/select-base.d.ts +8 -0
  126. package/lib/styles/{multiselect.js → select-base.js} +264 -127
  127. package/lib/styles/select.d.ts +3 -4
  128. package/lib/styles/select.js +103 -43
  129. package/lib/styles/step.d.ts +1 -2
  130. package/lib/styles/step.js +0 -4
  131. package/lib/styles/switch.d.ts +3 -2
  132. package/lib/styles/switch.js +20 -23
  133. package/lib/styles/tab.d.ts +1 -2
  134. package/lib/styles/tab.js +0 -5
  135. package/lib/styles/tabs.d.ts +3 -11
  136. package/lib/styles/tabs.js +77 -45
  137. package/lib/styles/tag.d.ts +1 -5
  138. package/lib/styles/tag.js +6 -32
  139. package/lib/styles/textarea.d.ts +1 -2
  140. package/lib/styles/textarea.js +7 -50
  141. package/lib/styles/tooltip.d.ts +4 -3
  142. package/lib/styles/tooltip.js +0 -125
  143. package/lib/styles/wizard.d.ts +5 -21
  144. package/lib/styles/wizard.js +23 -91
  145. package/lib/types/common.d.ts +1 -3
  146. package/lib/types/common.js +0 -10
  147. package/lib/utils/calendar-utils.d.ts +4 -21
  148. package/lib/utils/calendar-utils.js +4 -177
  149. package/lib/utils/custom-scrollbar.d.ts +6 -20
  150. package/lib/utils/custom-scrollbar.js +1 -45
  151. package/lib/utils/flavor-sheet.d.ts +0 -1
  152. package/lib/utils/flavor-sheet.js +0 -23
  153. package/lib/utils/icon-registry.d.ts +0 -2
  154. package/lib/utils/icon-registry.js +1 -107
  155. package/lib/utils/icons.d.ts +9 -0
  156. package/lib/utils/icons.js +1 -0
  157. package/lib/utils/loader-registry.d.ts +2 -3
  158. package/lib/utils/loader-registry.js +0 -32
  159. package/lib/utils/locale.d.ts +2 -23
  160. package/lib/utils/locale.js +0 -86
  161. package/lib/utils/mobile.d.ts +0 -1
  162. package/lib/utils/mobile.js +0 -17
  163. package/lib/utils/number-format.d.ts +6 -3
  164. package/lib/utils/number-format.js +11 -67
  165. package/lib/utils/positioning.d.ts +77 -3
  166. package/lib/utils/positioning.js +67 -58
  167. package/lib/utils/property-capture.d.ts +5 -27
  168. package/lib/utils/property-capture.js +0 -108
  169. package/lib/utils/property-manager.d.ts +0 -1
  170. package/lib/utils/property-manager.js +0 -70
  171. package/lib/utils/resize-observer.d.ts +0 -1
  172. package/lib/utils/resize-observer.js +0 -36
  173. package/lib/utils/scroll-lock.d.ts +4 -11
  174. package/lib/utils/scroll-lock.js +0 -107
  175. package/lib/utils/styles.d.ts +0 -1
  176. package/lib/utils/styles.js +0 -24
  177. package/lib/version.d.ts +1 -2
  178. package/lib/version.js +1 -11
  179. package/package.json +8 -5
  180. package/css/tyrell-brand.css +0 -1015
  181. package/dist/tyrell-brand.css +0 -1015
  182. package/lib/base/ty-component.d.ts.map +0 -1
  183. package/lib/base/ty-component.js.map +0 -1
  184. package/lib/components/button.d.ts.map +0 -1
  185. package/lib/components/button.js.map +0 -1
  186. package/lib/components/calendar-month.d.ts.map +0 -1
  187. package/lib/components/calendar-month.js.map +0 -1
  188. package/lib/components/calendar-navigation.d.ts.map +0 -1
  189. package/lib/components/calendar-navigation.js.map +0 -1
  190. package/lib/components/calendar.d.ts.map +0 -1
  191. package/lib/components/calendar.js.map +0 -1
  192. package/lib/components/checkbox.d.ts.map +0 -1
  193. package/lib/components/checkbox.js.map +0 -1
  194. package/lib/components/copy.d.ts.map +0 -1
  195. package/lib/components/copy.js.map +0 -1
  196. package/lib/components/date-picker.d.ts.map +0 -1
  197. package/lib/components/date-picker.js.map +0 -1
  198. package/lib/components/file-upload.d.ts.map +0 -1
  199. package/lib/components/file-upload.js.map +0 -1
  200. package/lib/components/icon.d.ts.map +0 -1
  201. package/lib/components/icon.js.map +0 -1
  202. package/lib/components/input.d.ts.map +0 -1
  203. package/lib/components/input.js.map +0 -1
  204. package/lib/components/modal.d.ts.map +0 -1
  205. package/lib/components/modal.js.map +0 -1
  206. package/lib/components/option.d.ts.map +0 -1
  207. package/lib/components/option.js.map +0 -1
  208. package/lib/components/popup.d.ts.map +0 -1
  209. package/lib/components/popup.js.map +0 -1
  210. package/lib/components/radio.d.ts.map +0 -1
  211. package/lib/components/radio.js.map +0 -1
  212. package/lib/components/resize-observer.d.ts.map +0 -1
  213. package/lib/components/resize-observer.js.map +0 -1
  214. package/lib/components/scroll-container.d.ts.map +0 -1
  215. package/lib/components/scroll-container.js.map +0 -1
  216. package/lib/components/select.d.ts.map +0 -1
  217. package/lib/components/select.js.map +0 -1
  218. package/lib/components/selected-tags.d.ts.map +0 -1
  219. package/lib/components/selected-tags.js.map +0 -1
  220. package/lib/components/step.d.ts.map +0 -1
  221. package/lib/components/step.js.map +0 -1
  222. package/lib/components/switch.d.ts.map +0 -1
  223. package/lib/components/switch.js.map +0 -1
  224. package/lib/components/tab.d.ts.map +0 -1
  225. package/lib/components/tab.js.map +0 -1
  226. package/lib/components/tabs.d.ts.map +0 -1
  227. package/lib/components/tabs.js.map +0 -1
  228. package/lib/components/tag.d.ts.map +0 -1
  229. package/lib/components/tag.js.map +0 -1
  230. package/lib/components/textarea.d.ts.map +0 -1
  231. package/lib/components/textarea.js.map +0 -1
  232. package/lib/components/tooltip.d.ts.map +0 -1
  233. package/lib/components/tooltip.js.map +0 -1
  234. package/lib/components/wizard.d.ts.map +0 -1
  235. package/lib/components/wizard.js.map +0 -1
  236. package/lib/icons/fontawesome/brands.d.ts.map +0 -1
  237. package/lib/icons/fontawesome/brands.js.map +0 -1
  238. package/lib/icons/fontawesome/regular.d.ts.map +0 -1
  239. package/lib/icons/fontawesome/regular.js.map +0 -1
  240. package/lib/icons/fontawesome/solid.d.ts.map +0 -1
  241. package/lib/icons/fontawesome/solid.js.map +0 -1
  242. package/lib/icons/heroicons/micro.d.ts.map +0 -1
  243. package/lib/icons/heroicons/micro.js.map +0 -1
  244. package/lib/icons/heroicons/mini.d.ts.map +0 -1
  245. package/lib/icons/heroicons/mini.js.map +0 -1
  246. package/lib/icons/heroicons/outline.d.ts.map +0 -1
  247. package/lib/icons/heroicons/outline.js.map +0 -1
  248. package/lib/icons/heroicons/solid.d.ts.map +0 -1
  249. package/lib/icons/heroicons/solid.js.map +0 -1
  250. package/lib/icons/lucide.d.ts.map +0 -1
  251. package/lib/icons/lucide.js.map +0 -1
  252. package/lib/icons/material/filled.d.ts.map +0 -1
  253. package/lib/icons/material/filled.js.map +0 -1
  254. package/lib/icons/material/outlined.d.ts.map +0 -1
  255. package/lib/icons/material/outlined.js.map +0 -1
  256. package/lib/icons/material/round.d.ts.map +0 -1
  257. package/lib/icons/material/round.js.map +0 -1
  258. package/lib/icons/material/sharp.d.ts.map +0 -1
  259. package/lib/icons/material/sharp.js.map +0 -1
  260. package/lib/icons/material/two-tone.d.ts.map +0 -1
  261. package/lib/icons/material/two-tone.js.map +0 -1
  262. package/lib/index.d.ts.map +0 -1
  263. package/lib/index.js.map +0 -1
  264. package/lib/styles/button.d.ts.map +0 -1
  265. package/lib/styles/button.js.map +0 -1
  266. package/lib/styles/calendar-month.d.ts.map +0 -1
  267. package/lib/styles/calendar-month.js.map +0 -1
  268. package/lib/styles/calendar-navigation.d.ts.map +0 -1
  269. package/lib/styles/calendar-navigation.js.map +0 -1
  270. package/lib/styles/calendar.d.ts.map +0 -1
  271. package/lib/styles/calendar.js.map +0 -1
  272. package/lib/styles/checkbox.d.ts.map +0 -1
  273. package/lib/styles/checkbox.js.map +0 -1
  274. package/lib/styles/copy.d.ts.map +0 -1
  275. package/lib/styles/copy.js.map +0 -1
  276. package/lib/styles/custom-scrollbar.d.ts.map +0 -1
  277. package/lib/styles/custom-scrollbar.js.map +0 -1
  278. package/lib/styles/date-picker.d.ts.map +0 -1
  279. package/lib/styles/date-picker.js.map +0 -1
  280. package/lib/styles/file-upload.d.ts.map +0 -1
  281. package/lib/styles/file-upload.js.map +0 -1
  282. package/lib/styles/icon.d.ts.map +0 -1
  283. package/lib/styles/icon.js.map +0 -1
  284. package/lib/styles/input.d.ts.map +0 -1
  285. package/lib/styles/input.js.map +0 -1
  286. package/lib/styles/modal.d.ts.map +0 -1
  287. package/lib/styles/modal.js.map +0 -1
  288. package/lib/styles/multiselect.d.ts +0 -6
  289. package/lib/styles/multiselect.d.ts.map +0 -1
  290. package/lib/styles/multiselect.js.map +0 -1
  291. package/lib/styles/option.d.ts.map +0 -1
  292. package/lib/styles/option.js.map +0 -1
  293. package/lib/styles/popup.d.ts.map +0 -1
  294. package/lib/styles/popup.js.map +0 -1
  295. package/lib/styles/radio.d.ts.map +0 -1
  296. package/lib/styles/radio.js.map +0 -1
  297. package/lib/styles/resize-observer.d.ts.map +0 -1
  298. package/lib/styles/resize-observer.js.map +0 -1
  299. package/lib/styles/scroll-container.d.ts.map +0 -1
  300. package/lib/styles/scroll-container.js.map +0 -1
  301. package/lib/styles/select.d.ts.map +0 -1
  302. package/lib/styles/select.js.map +0 -1
  303. package/lib/styles/step.d.ts.map +0 -1
  304. package/lib/styles/step.js.map +0 -1
  305. package/lib/styles/switch.d.ts.map +0 -1
  306. package/lib/styles/switch.js.map +0 -1
  307. package/lib/styles/tab.d.ts.map +0 -1
  308. package/lib/styles/tab.js.map +0 -1
  309. package/lib/styles/tabs.d.ts.map +0 -1
  310. package/lib/styles/tabs.js.map +0 -1
  311. package/lib/styles/tag.d.ts.map +0 -1
  312. package/lib/styles/tag.js.map +0 -1
  313. package/lib/styles/textarea.d.ts.map +0 -1
  314. package/lib/styles/textarea.js.map +0 -1
  315. package/lib/styles/tooltip.d.ts.map +0 -1
  316. package/lib/styles/tooltip.js.map +0 -1
  317. package/lib/styles/wizard.d.ts.map +0 -1
  318. package/lib/styles/wizard.js.map +0 -1
  319. package/lib/types/common.d.ts.map +0 -1
  320. package/lib/types/common.js.map +0 -1
  321. package/lib/utils/calendar-utils.d.ts.map +0 -1
  322. package/lib/utils/calendar-utils.js.map +0 -1
  323. package/lib/utils/custom-scrollbar.d.ts.map +0 -1
  324. package/lib/utils/custom-scrollbar.js.map +0 -1
  325. package/lib/utils/flavor-sheet.d.ts.map +0 -1
  326. package/lib/utils/flavor-sheet.js.map +0 -1
  327. package/lib/utils/icon-registry.d.ts.map +0 -1
  328. package/lib/utils/icon-registry.js.map +0 -1
  329. package/lib/utils/loader-registry.d.ts.map +0 -1
  330. package/lib/utils/loader-registry.js.map +0 -1
  331. package/lib/utils/locale.d.ts.map +0 -1
  332. package/lib/utils/locale.js.map +0 -1
  333. package/lib/utils/mobile.d.ts.map +0 -1
  334. package/lib/utils/mobile.js.map +0 -1
  335. package/lib/utils/number-format.d.ts.map +0 -1
  336. package/lib/utils/number-format.js.map +0 -1
  337. package/lib/utils/parse-boolean.d.ts +0 -39
  338. package/lib/utils/parse-boolean.d.ts.map +0 -1
  339. package/lib/utils/parse-boolean.js +0 -58
  340. package/lib/utils/parse-boolean.js.map +0 -1
  341. package/lib/utils/positioning.d.ts.map +0 -1
  342. package/lib/utils/positioning.js.map +0 -1
  343. package/lib/utils/property-capture.d.ts.map +0 -1
  344. package/lib/utils/property-capture.js.map +0 -1
  345. package/lib/utils/property-manager.d.ts.map +0 -1
  346. package/lib/utils/property-manager.js.map +0 -1
  347. package/lib/utils/resize-observer.d.ts.map +0 -1
  348. package/lib/utils/resize-observer.js.map +0 -1
  349. package/lib/utils/scroll-lock.d.ts.map +0 -1
  350. package/lib/utils/scroll-lock.js.map +0 -1
  351. package/lib/utils/styles.d.ts.map +0 -1
  352. package/lib/utils/styles.js.map +0 -1
  353. package/lib/version.d.ts.map +0 -1
  354. package/lib/version.js.map +0 -1
@@ -1,133 +1,8 @@
1
- /**
2
- * Tooltip Styles
3
- *
4
- * Bold, button-like tooltips with high contrast and semantic colors.
5
- * Designed to grab attention and provide clear, readable information.
6
- */
7
1
  export const tooltipStyles = {
8
2
  id: 'ty-tooltip',
9
3
  css: `
10
- /* Tooltip host element - display contents to not affect layout */
11
4
  :host {
12
5
  display: contents;
13
6
  }
14
-
15
- /* Tooltip container - positioned element */
16
- #tooltip-container {
17
- position: fixed;
18
- top: var(--y, 0px);
19
- left: var(--x, 0px);
20
- z-index: var(--ty-z-tooltip, 9999);
21
-
22
- /* Hidden by default */
23
- visibility: hidden;
24
- opacity: 0;
25
- transition: opacity 200ms, visibility 200ms;
26
-
27
- /* Prevent interaction */
28
- pointer-events: none;
29
- user-select: none;
30
- -webkit-user-select: none;
31
-
32
- /* Bold shadow for depth */
33
- box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2),
34
- 0 4px 6px -4px rgba(0, 0, 0, 0.1);
35
- }
36
-
37
- /* When open */
38
- #tooltip-container.open {
39
- visibility: visible;
40
- opacity: 1;
41
- }
42
-
43
- /* Base tooltip styling - Dark inverted style (like buttons) */
44
- #tooltip-container {
45
- /* Bold, high-contrast styling. Defaults route through the neutral ramp
46
- * so the tooltip inverts cleanly: dark in light mode, light in dark mode.
47
- * Consumers can pin it to a fixed look via --ty-tooltip-bg/-color. */
48
- background: var(--ty-tooltip-bg, var(--ty-color-neutral-strong));
49
- color: var(--ty-tooltip-color, var(--ty-color-neutral-faint));
50
-
51
- /* Comfortable padding */
52
- padding: var(--ty-tooltip-padding, 8px 12px);
53
- border-radius: var(--ty-tooltip-radius, 6px);
54
-
55
- /* No border - solid color provides contrast */
56
- border: none;
57
-
58
- /* Sizing */
59
- max-width: var(--ty-tooltip-max-width, 250px);
60
-
61
- /* Typography - clear and readable */
62
- font-size: var(--ty-font-sm, 14px);
63
- font-weight: var(--ty-font-semibold, 600);
64
- line-height: 1.5;
65
- text-align: center;
66
- }
67
-
68
- /* Content slot */
69
- #tooltip-container ::slotted(*) {
70
- /* Ensure slotted content inherits styles */
71
- color: inherit;
72
- font-size: inherit;
73
- line-height: inherit;
74
- }
75
-
76
- /* ============================================ */
77
- /* Flavor Variants - Bold, Button-like Colors */
78
- /* ============================================ */
79
-
80
- /* Primary - Bold blue (like primary button) */
81
- #tooltip-container[data-flavor="primary"] {
82
- background: var(--ty-color-primary, #3b82f6);
83
- color: #ffffff;
84
- }
85
-
86
- /* Success - Bold green */
87
- #tooltip-container[data-flavor="success"] {
88
- background: var(--ty-color-success, #10b981);
89
- color: #ffffff;
90
- }
91
-
92
- /* Danger - Bold red */
93
- #tooltip-container[data-flavor="danger"] {
94
- background: var(--ty-color-danger, #ef4444);
95
- color: #ffffff;
96
- }
97
-
98
- /* Warning - Bold orange/amber */
99
- #tooltip-container[data-flavor="warning"] {
100
- background: var(--ty-color-warning, #f59e0b);
101
- color: #ffffff;
102
- }
103
-
104
- /* Neutral - Medium gray (default alternative) */
105
- #tooltip-container[data-flavor="neutral"] {
106
- background: var(--ty-color-neutral, #6b7280);
107
- color: #ffffff;
108
- }
109
-
110
- /* Light - For dark backgrounds */
111
- #tooltip-container[data-flavor="light"] {
112
- background: var(--ty-surface-floating, var(--ty-surface-elevated, #ffffff));
113
- color: var(--ty-color-neutral-strong, #111827);
114
- box-shadow: var(--ty-shadow-lg,
115
- 0 10px 15px -3px rgba(0, 0, 0, 0.15),
116
- 0 4px 6px -4px rgba(0, 0, 0, 0.1),
117
- 0 0 0 1px rgba(0, 0, 0, 0.05));
118
- }
119
-
120
- /* Dark - Inverted style (default) */
121
- #tooltip-container[data-flavor="dark"] {
122
- background: var(--ty-tooltip-bg, var(--ty-color-neutral-strong));
123
- color: var(--ty-color-neutral-faint);
124
- }
125
-
126
- /* Secondary - Purple/indigo */
127
- #tooltip-container[data-flavor="secondary"] {
128
- background: var(--ty-color-secondary, #8b5cf6);
129
- color: #ffffff;
130
- }
131
7
  `,
132
8
  };
133
- //# sourceMappingURL=tooltip.js.map
@@ -1,25 +1,9 @@
1
1
  /**
2
2
  * Wizard Component Styles
3
3
  *
4
- * CSS Parts (for styling via ::part):
5
- * - indicators-wrapper: The header containing step indicators
6
- * - progress-line: The background progress track
7
- * - step-circle: Individual step circle indicators
8
- * - panels-container: The content viewport
9
- *
10
- * Theming: four accent-alias knobs (one per state), four surface knobs
11
- * (container chrome), and a small set of geometry/motion overrides.
12
- *
13
- * Per-state circles read their colors directly from the matching accent
14
- * variable — no per-state `-bg` indirection. Override one of:
15
- * --ty-wizard-active-accent (default: --ty-color-primary)
16
- * --ty-wizard-completed-accent (default: --ty-color-success)
17
- * --ty-wizard-error-accent (default: --ty-color-danger)
18
- * --ty-wizard-pending-accent (default: --ty-color-neutral)
19
- *
20
- * For per-shade fine control, override the brand-layer's flavor seeds
21
- * (--ty-color-primary, --ty-color-success-strong, etc.) — they cascade
22
- * through here.
4
+ * CSS Parts (::part): indicators-wrapper, progress-line, step-circle,
5
+ * panels-container. Theming knobs are declared on :host below; per-state
6
+ * circles read the matching accent var directly (no `-bg` indirection), and
7
+ * the brand-layer flavor seeds cascade through for per-shade control.
23
8
  */
24
- export declare const wizardStyles = "\n/* ============================================================================\n Theming Tokens \u2014 see file header for the override surface.\n Every default chains back to the brand layer / global scale tokens.\n ============================================================================ */\n\n:host {\n display: block;\n width: var(--ty-wizard-width, 100%); /* set by width attribute \u2014 not a public token */\n height: var(--ty-wizard-height, 700px); /* set by height attribute \u2014 not a public token */\n box-sizing: border-box;\n\n /* State accents \u2014 the primary override surface. One variable retints the\n * matching circle background, border, and glow. */\n --ty-wizard-active-accent: var(--ty-color-primary);\n --ty-wizard-completed-accent: var(--ty-color-success);\n --ty-wizard-error-accent: var(--ty-color-danger);\n --ty-wizard-pending-accent: var(--ty-color-neutral);\n\n /* Container chrome \u2014 routes through global scales. Override --ty-radius-lg\n * or --ty-shadow-md app-wide and the wizard follows; override these locally\n * to give the wizard a distinct look. */\n --ty-wizard-bg: var(--ty-surface-floating);\n --ty-wizard-border: var(--ty-border);\n --ty-wizard-radius: var(--ty-radius-lg, 12px);\n --ty-wizard-shadow: var(--ty-shadow-md, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1));\n\n /* Header strip */\n --ty-wizard-header-bg: var(--ty-surface-content);\n --ty-wizard-header-border: var(--ty-border-soft, var(--ty-border));\n --ty-wizard-header-padding: 24px 24px 16px;\n\n /* Progress line */\n --ty-wizard-progress-track: var(--ty-border);\n --ty-wizard-progress-fill: var(--ty-wizard-completed-accent);\n --ty-wizard-progress-height: 2px;\n\n /* Motion \u2014 routes through global motion tokens if defined. */\n --ty-wizard-transition-duration: var(--ty-transition-duration, 300ms);\n --ty-wizard-transition-easing: var(--ty-transition-easing, ease-in-out);\n\n /* Circle geometry */\n --ty-wizard-circle-size: 32px;\n --ty-wizard-circle-border-width: 2px;\n\n /* Panels viewport */\n --ty-wizard-panels-bg: var(--ty-surface-elevated);\n\n /* Focus */\n --ty-wizard-focus-outline: var(--ty-wizard-active-accent);\n}\n\n.wizard-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n box-sizing: border-box;\n border-radius: var(--ty-wizard-radius);\n border: 1px solid var(--ty-wizard-border);\n background: var(--ty-wizard-bg);\n box-shadow: var(--ty-wizard-shadow);\n overflow: hidden;\n}\n\n/* ===================================== */\n/* Step Indicators Wrapper */\n/* ===================================== */\n\n.step-indicators-wrapper {\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n position: relative;\n padding: var(--ty-wizard-header-padding);\n border-bottom: 1px solid var(--ty-wizard-header-border);\n background: var(--ty-wizard-header-bg);\n}\n\n/* ===================================== */\n/* Progress Line (behind step circles) */\n/* ===================================== */\n\n.progress-line {\n position: absolute;\n /*\n * With equal-width indicators (flex: 1), each takes 100%/N of the width.\n * Circle centers sit at 50%/N from the left edge of each indicator.\n * Inset = 50% / step-count from each side keeps the line between circle centres.\n */\n left: calc(50% / var(--ty-wizard-step-count, 4));\n right: calc(50% / var(--ty-wizard-step-count, 4));\n top: calc(var(--ty-wizard-circle-size, 32px) / 2 - 1px);\n height: var(--ty-wizard-progress-height);\n background: var(--ty-wizard-progress-track);\n z-index: 0;\n pointer-events: none;\n transition: opacity var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n}\n\n.progress-overlay {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: var(--ty-wizard-progress-fill);\n transition: width var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: width;\n}\n\n/* ===================================== */\n/* Step Indicators Container */\n/* ===================================== */\n\n.step-indicators {\n display: flex;\n align-items: flex-start;\n position: relative;\n}\n\n/* ===================================== */\n/* Individual Step Indicator */\n/* ===================================== */\n\n.step-indicator {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n background: transparent;\n border: none;\n padding: 0;\n font: inherit;\n transition: opacity 200ms;\n flex: 1;\n min-width: 0;\n}\n\n.step-indicator[aria-disabled=\"true\"] {\n opacity: 0.4;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n.step-indicator:focus-visible {\n outline: 2px solid var(--ty-wizard-focus-outline);\n outline-offset: 4px;\n border-radius: 50%;\n}\n\n/* ===================================== */\n/* Step Circle */\n/* ===================================== */\n\n.step-circle {\n width: var(--ty-wizard-circle-size);\n height: var(--ty-wizard-circle-size);\n border-radius: 50%;\n border: var(--ty-wizard-circle-border-width) solid;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 10;\n transition: all var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n box-sizing: border-box;\n flex-shrink: 0;\n}\n\n.step-circle[data-state=\"completed\"] {\n background: var(--ty-wizard-completed-accent);\n border-color: var(--ty-color-success-strong);\n color: var(--ty-solid-success-fg, white);\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-completed-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"active\"] {\n background: var(--ty-wizard-active-accent);\n border-color: var(--ty-color-primary-strong);\n color: var(--ty-solid-primary-fg, white);\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-active-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"pending\"] {\n background: var(--ty-surface-elevated);\n border-color: var(--ty-border);\n color: var(--ty-color-neutral);\n}\n\n.step-circle[data-state=\"error\"] {\n background: var(--ty-wizard-error-accent);\n border-color: var(--ty-color-danger-strong);\n color: var(--ty-solid-danger-fg, white);\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-error-accent) 12%, transparent);\n}\n\n/* ===================================== */\n/* Step Text Container */\n/* ===================================== */\n\n.step-text {\n display: flex;\n flex-direction: column;\n gap: 2px;\n align-items: center;\n}\n\n/* ===================================== */\n/* Step Label */\n/* ===================================== */\n\n.step-label {\n font-size: var(--ty-font-sm, 14px);\n font-weight: var(--ty-font-semibold, 600);\n color: var(--ty-color-neutral);\n transition: color 200ms;\n}\n\n.step-indicator[aria-selected=\"true\"] .step-label {\n color: var(--ty-color-neutral-strong);\n}\n\n.step-indicator[aria-selected=\"false\"] .step-label {\n color: var(--ty-color-neutral);\n}\n\n/* ===================================== */\n/* Step Description */\n/* ===================================== */\n\n.step-description {\n font-size: var(--ty-font-xs, 12px);\n font-weight: var(--ty-font-normal, 400);\n color: var(--ty-color-neutral);\n transition: color 200ms;\n text-align: center;\n max-width: 120px;\n}\n\n.step-indicator[aria-selected=\"true\"] .step-description {\n color: var(--ty-color-neutral-bold);\n}\n\n/* ===================================== */\n/* Custom Indicator Content via Slots */\n/* ===================================== */\n\n::slotted([slot^=\"indicator-\"]) {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n/* ===================================== */\n/* Panels Viewport */\n/* ===================================== */\n\n.panels-viewport {\n position: relative;\n flex: 1;\n overflow: hidden;\n min-height: 0;\n background: var(--ty-wizard-panels-bg);\n}\n\n/* ===================================== */\n/* Panels Wrapper (slides horizontally) */\n/* ===================================== */\n\n.panels-wrapper {\n display: flex;\n height: 100%;\n transition: transform var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: transform;\n}\n\n/* ===================================== */\n/* Slotted Step Panels */\n/* ===================================== */\n\n::slotted(ty-step) {\n width: var(--ty-wizard-width, 100%);\n height: 100%;\n flex-shrink: 0;\n}\n\n/* ===================================== */\n/* Accessibility & Motion Preferences */\n/* ===================================== */\n\n@media (prefers-reduced-motion: reduce) {\n .panels-wrapper {\n transition-duration: 0ms !important;\n }\n\n .progress-overlay {\n transition-duration: 0ms !important;\n }\n\n .step-circle {\n transition-duration: 0ms !important;\n }\n\n .progress-line {\n transition-duration: 0ms !important;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n";
25
- //# sourceMappingURL=wizard.d.ts.map
9
+ export declare const wizardStyles = "\n/* Theming tokens \u2014 every default chains back to the brand layer / global\n scale tokens. */\n\n:host {\n display: block;\n width: var(--ty-wizard-width, 100%); /* set by width attribute \u2014 not a public token */\n height: var(--ty-wizard-height, 700px); /* set by height attribute \u2014 not a public token */\n box-sizing: border-box;\n\n /* State accents \u2014 the primary override surface. One variable retints the\n * matching circle background, border, and glow. */\n --ty-wizard-active-accent: var(--ty-color-primary);\n --ty-wizard-completed-accent: var(--ty-color-success);\n --ty-wizard-error-accent: var(--ty-color-danger);\n --ty-wizard-pending-accent: var(--ty-color-neutral);\n\n /* Container chrome \u2014 routes through global scales. Override --ty-radius-lg\n * or --ty-shadow-md app-wide and the wizard follows; override these locally\n * to give the wizard a distinct look. */\n --ty-wizard-bg: var(--ty-surface-floating);\n --ty-wizard-border: var(--ty-border);\n --ty-wizard-radius: var(--ty-radius-lg, 12px);\n --ty-wizard-shadow: var(--ty-shadow-md, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1));\n\n --ty-wizard-header-bg: var(--ty-surface-content);\n --ty-wizard-header-border: var(--ty-border-soft, var(--ty-border));\n --ty-wizard-header-padding: 24px 24px 16px;\n\n --ty-wizard-progress-track: var(--ty-border);\n --ty-wizard-progress-fill: var(--ty-wizard-completed-accent);\n --ty-wizard-progress-height: 2px;\n\n /* Motion \u2014 routes through global motion tokens if defined. */\n --ty-wizard-transition-duration: var(--ty-transition-duration, 300ms);\n --ty-wizard-transition-easing: var(--ty-transition-easing, ease-in-out);\n\n --ty-wizard-circle-size: 32px;\n --ty-wizard-circle-border-width: 2px;\n\n --ty-wizard-panels-bg: var(--ty-surface-elevated);\n\n --ty-wizard-focus-outline: var(--ty-wizard-active-accent);\n}\n\n.wizard-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n box-sizing: border-box;\n border-radius: var(--ty-wizard-radius);\n border: 1px solid var(--ty-wizard-border);\n background: var(--ty-wizard-bg);\n box-shadow: var(--ty-wizard-shadow);\n overflow: hidden;\n}\n\n.step-indicators-wrapper {\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n position: relative;\n padding: var(--ty-wizard-header-padding);\n border-bottom: 1px solid var(--ty-wizard-header-border);\n background: var(--ty-wizard-header-bg);\n}\n\n/* Progress line, behind the step circles */\n.progress-line {\n position: absolute;\n /*\n * With equal-width indicators (flex: 1), each takes 100%/N of the width.\n * Circle centers sit at 50%/N from the left edge of each indicator.\n * Inset = 50% / step-count from each side keeps the line between circle centres.\n */\n left: calc(50% / var(--ty-wizard-step-count, 4));\n right: calc(50% / var(--ty-wizard-step-count, 4));\n top: calc(var(--ty-wizard-circle-size, 32px) / 2 - 1px);\n height: var(--ty-wizard-progress-height);\n background: var(--ty-wizard-progress-track);\n z-index: 0;\n pointer-events: none;\n transition: opacity var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n}\n\n.progress-overlay {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: var(--ty-wizard-progress-fill);\n transition: width var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: width;\n}\n\n.step-indicators {\n display: flex;\n align-items: flex-start;\n position: relative;\n}\n\n.step-indicator {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n background: transparent;\n border: none;\n padding: 0;\n font: inherit;\n transition: opacity 200ms;\n flex: 1;\n min-width: 0;\n}\n\n.step-indicator[aria-disabled=\"true\"] {\n opacity: 0.4;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n.step-indicator:focus-visible {\n outline: 2px solid var(--ty-wizard-focus-outline);\n outline-offset: 4px;\n border-radius: 50%;\n}\n\n.step-circle {\n width: var(--ty-wizard-circle-size);\n height: var(--ty-wizard-circle-size);\n border-radius: 50%;\n border: var(--ty-wizard-circle-border-width) solid;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 10;\n transition: var(--ty-local-transition, all var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing));\n box-sizing: border-box;\n flex-shrink: 0;\n}\n\n.step-circle[data-state=\"completed\"] {\n background: var(--ty-wizard-completed-accent);\n border-color: var(--ty-color-success-strong);\n /* Derived from the accent this circle actually paints, not from\n --ty-solid-success-fg: the two diverge in dark mode (--ty-solid-l\n dims solid fills by 0.25 L), which stranded white text at 3.5:1. */\n color: oklch(\n from var(--ty-wizard-completed-accent)\n clamp(0, (var(--ty-solid-fg-threshold, 0.57) - l) * 1000, 1) 0 0\n );\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-completed-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"active\"] {\n background: var(--ty-wizard-active-accent);\n border-color: var(--ty-color-primary-strong);\n color: oklch(\n from var(--ty-wizard-active-accent)\n clamp(0, (var(--ty-solid-fg-threshold, 0.57) - l) * 1000, 1) 0 0\n );\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-active-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"pending\"] {\n background: var(--ty-surface-elevated);\n border-color: var(--ty-border);\n color: var(--ty-color-neutral);\n}\n\n.step-circle[data-state=\"error\"] {\n background: var(--ty-wizard-error-accent);\n border-color: var(--ty-color-danger-strong);\n color: oklch(\n from var(--ty-wizard-error-accent)\n clamp(0, (var(--ty-solid-fg-threshold, 0.57) - l) * 1000, 1) 0 0\n );\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-error-accent) 12%, transparent);\n}\n\n.step-text {\n display: flex;\n flex-direction: column;\n gap: 2px;\n align-items: center;\n}\n\n.step-label {\n font-size: var(--ty-font-sm, 14px);\n font-weight: var(--ty-font-semibold, 600);\n color: var(--ty-color-neutral);\n transition: var(--ty-local-transition, color 200ms);\n}\n\n.step-indicator[aria-selected=\"true\"] .step-label {\n color: var(--ty-color-neutral-strong);\n}\n\n.step-indicator[aria-selected=\"false\"] .step-label {\n color: var(--ty-color-neutral);\n}\n\n.step-description {\n font-size: var(--ty-font-xs, 12px);\n font-weight: var(--ty-font-normal, 400);\n color: var(--ty-color-neutral);\n transition: var(--ty-local-transition, color 200ms);\n text-align: center;\n max-width: 120px;\n}\n\n.step-indicator[aria-selected=\"true\"] .step-description {\n color: var(--ty-color-neutral-bold);\n}\n\n/* Custom indicator content via slots */\n::slotted([slot^=\"indicator-\"]) {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n.panels-viewport {\n position: relative;\n flex: 1;\n overflow: hidden;\n min-height: 0;\n background: var(--ty-wizard-panels-bg);\n}\n\n/* Panels wrapper slides horizontally */\n.panels-wrapper {\n display: flex;\n height: 100%;\n transition: transform var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: transform;\n}\n\n::slotted(ty-step) {\n width: var(--ty-wizard-width, 100%);\n height: 100%;\n flex-shrink: 0;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .panels-wrapper {\n transition-duration: 0ms !important;\n }\n\n .progress-overlay {\n transition-duration: 0ms !important;\n }\n\n .step-circle {\n transition-duration: 0ms !important;\n }\n\n .progress-line {\n transition-duration: 0ms !important;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n";
@@ -1,31 +1,6 @@
1
- /**
2
- * Wizard Component Styles
3
- *
4
- * CSS Parts (for styling via ::part):
5
- * - indicators-wrapper: The header containing step indicators
6
- * - progress-line: The background progress track
7
- * - step-circle: Individual step circle indicators
8
- * - panels-container: The content viewport
9
- *
10
- * Theming: four accent-alias knobs (one per state), four surface knobs
11
- * (container chrome), and a small set of geometry/motion overrides.
12
- *
13
- * Per-state circles read their colors directly from the matching accent
14
- * variable — no per-state `-bg` indirection. Override one of:
15
- * --ty-wizard-active-accent (default: --ty-color-primary)
16
- * --ty-wizard-completed-accent (default: --ty-color-success)
17
- * --ty-wizard-error-accent (default: --ty-color-danger)
18
- * --ty-wizard-pending-accent (default: --ty-color-neutral)
19
- *
20
- * For per-shade fine control, override the brand-layer's flavor seeds
21
- * (--ty-color-primary, --ty-color-success-strong, etc.) — they cascade
22
- * through here.
23
- */
24
1
  export const wizardStyles = `
25
- /* ============================================================================
26
- Theming Tokens — see file header for the override surface.
27
- Every default chains back to the brand layer / global scale tokens.
28
- ============================================================================ */
2
+ /* Theming tokens — every default chains back to the brand layer / global
3
+ scale tokens. */
29
4
 
30
5
  :host {
31
6
  display: block;
@@ -48,12 +23,10 @@ export const wizardStyles = `
48
23
  --ty-wizard-radius: var(--ty-radius-lg, 12px);
49
24
  --ty-wizard-shadow: var(--ty-shadow-md, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1));
50
25
 
51
- /* Header strip */
52
26
  --ty-wizard-header-bg: var(--ty-surface-content);
53
27
  --ty-wizard-header-border: var(--ty-border-soft, var(--ty-border));
54
28
  --ty-wizard-header-padding: 24px 24px 16px;
55
29
 
56
- /* Progress line */
57
30
  --ty-wizard-progress-track: var(--ty-border);
58
31
  --ty-wizard-progress-fill: var(--ty-wizard-completed-accent);
59
32
  --ty-wizard-progress-height: 2px;
@@ -62,14 +35,11 @@ export const wizardStyles = `
62
35
  --ty-wizard-transition-duration: var(--ty-transition-duration, 300ms);
63
36
  --ty-wizard-transition-easing: var(--ty-transition-easing, ease-in-out);
64
37
 
65
- /* Circle geometry */
66
38
  --ty-wizard-circle-size: 32px;
67
39
  --ty-wizard-circle-border-width: 2px;
68
40
 
69
- /* Panels viewport */
70
41
  --ty-wizard-panels-bg: var(--ty-surface-elevated);
71
42
 
72
- /* Focus */
73
43
  --ty-wizard-focus-outline: var(--ty-wizard-active-accent);
74
44
  }
75
45
 
@@ -87,10 +57,6 @@ export const wizardStyles = `
87
57
  overflow: hidden;
88
58
  }
89
59
 
90
- /* ===================================== */
91
- /* Step Indicators Wrapper */
92
- /* ===================================== */
93
-
94
60
  .step-indicators-wrapper {
95
61
  display: flex;
96
62
  flex-direction: column;
@@ -101,10 +67,7 @@ export const wizardStyles = `
101
67
  background: var(--ty-wizard-header-bg);
102
68
  }
103
69
 
104
- /* ===================================== */
105
- /* Progress Line (behind step circles) */
106
- /* ===================================== */
107
-
70
+ /* Progress line, behind the step circles */
108
71
  .progress-line {
109
72
  position: absolute;
110
73
  /*
@@ -132,20 +95,12 @@ export const wizardStyles = `
132
95
  will-change: width;
133
96
  }
134
97
 
135
- /* ===================================== */
136
- /* Step Indicators Container */
137
- /* ===================================== */
138
-
139
98
  .step-indicators {
140
99
  display: flex;
141
100
  align-items: flex-start;
142
101
  position: relative;
143
102
  }
144
103
 
145
- /* ===================================== */
146
- /* Individual Step Indicator */
147
- /* ===================================== */
148
-
149
104
  .step-indicator {
150
105
  display: flex;
151
106
  flex-direction: column;
@@ -173,10 +128,6 @@ export const wizardStyles = `
173
128
  border-radius: 50%;
174
129
  }
175
130
 
176
- /* ===================================== */
177
- /* Step Circle */
178
- /* ===================================== */
179
-
180
131
  .step-circle {
181
132
  width: var(--ty-wizard-circle-size);
182
133
  height: var(--ty-wizard-circle-size);
@@ -187,7 +138,7 @@ export const wizardStyles = `
187
138
  justify-content: center;
188
139
  position: relative;
189
140
  z-index: 10;
190
- transition: all var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);
141
+ transition: var(--ty-local-transition, all var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing));
191
142
  box-sizing: border-box;
192
143
  flex-shrink: 0;
193
144
  }
@@ -195,14 +146,23 @@ export const wizardStyles = `
195
146
  .step-circle[data-state="completed"] {
196
147
  background: var(--ty-wizard-completed-accent);
197
148
  border-color: var(--ty-color-success-strong);
198
- color: var(--ty-solid-success-fg, white);
149
+ /* Derived from the accent this circle actually paints, not from
150
+ --ty-solid-success-fg: the two diverge in dark mode (--ty-solid-l
151
+ dims solid fills by 0.25 L), which stranded white text at 3.5:1. */
152
+ color: oklch(
153
+ from var(--ty-wizard-completed-accent)
154
+ clamp(0, (var(--ty-solid-fg-threshold, 0.57) - l) * 1000, 1) 0 0
155
+ );
199
156
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-completed-accent) 12%, transparent);
200
157
  }
201
158
 
202
159
  .step-circle[data-state="active"] {
203
160
  background: var(--ty-wizard-active-accent);
204
161
  border-color: var(--ty-color-primary-strong);
205
- color: var(--ty-solid-primary-fg, white);
162
+ color: oklch(
163
+ from var(--ty-wizard-active-accent)
164
+ clamp(0, (var(--ty-solid-fg-threshold, 0.57) - l) * 1000, 1) 0 0
165
+ );
206
166
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-active-accent) 12%, transparent);
207
167
  }
208
168
 
@@ -215,14 +175,13 @@ export const wizardStyles = `
215
175
  .step-circle[data-state="error"] {
216
176
  background: var(--ty-wizard-error-accent);
217
177
  border-color: var(--ty-color-danger-strong);
218
- color: var(--ty-solid-danger-fg, white);
178
+ color: oklch(
179
+ from var(--ty-wizard-error-accent)
180
+ clamp(0, (var(--ty-solid-fg-threshold, 0.57) - l) * 1000, 1) 0 0
181
+ );
219
182
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-error-accent) 12%, transparent);
220
183
  }
221
184
 
222
- /* ===================================== */
223
- /* Step Text Container */
224
- /* ===================================== */
225
-
226
185
  .step-text {
227
186
  display: flex;
228
187
  flex-direction: column;
@@ -230,15 +189,11 @@ export const wizardStyles = `
230
189
  align-items: center;
231
190
  }
232
191
 
233
- /* ===================================== */
234
- /* Step Label */
235
- /* ===================================== */
236
-
237
192
  .step-label {
238
193
  font-size: var(--ty-font-sm, 14px);
239
194
  font-weight: var(--ty-font-semibold, 600);
240
195
  color: var(--ty-color-neutral);
241
- transition: color 200ms;
196
+ transition: var(--ty-local-transition, color 200ms);
242
197
  }
243
198
 
244
199
  .step-indicator[aria-selected="true"] .step-label {
@@ -249,15 +204,11 @@ export const wizardStyles = `
249
204
  color: var(--ty-color-neutral);
250
205
  }
251
206
 
252
- /* ===================================== */
253
- /* Step Description */
254
- /* ===================================== */
255
-
256
207
  .step-description {
257
208
  font-size: var(--ty-font-xs, 12px);
258
209
  font-weight: var(--ty-font-normal, 400);
259
210
  color: var(--ty-color-neutral);
260
- transition: color 200ms;
211
+ transition: var(--ty-local-transition, color 200ms);
261
212
  text-align: center;
262
213
  max-width: 120px;
263
214
  }
@@ -266,10 +217,7 @@ export const wizardStyles = `
266
217
  color: var(--ty-color-neutral-bold);
267
218
  }
268
219
 
269
- /* ===================================== */
270
- /* Custom Indicator Content via Slots */
271
- /* ===================================== */
272
-
220
+ /* Custom indicator content via slots */
273
221
  ::slotted([slot^="indicator-"]) {
274
222
  display: flex;
275
223
  align-items: center;
@@ -278,10 +226,6 @@ export const wizardStyles = `
278
226
  height: 100%;
279
227
  }
280
228
 
281
- /* ===================================== */
282
- /* Panels Viewport */
283
- /* ===================================== */
284
-
285
229
  .panels-viewport {
286
230
  position: relative;
287
231
  flex: 1;
@@ -290,10 +234,7 @@ export const wizardStyles = `
290
234
  background: var(--ty-wizard-panels-bg);
291
235
  }
292
236
 
293
- /* ===================================== */
294
- /* Panels Wrapper (slides horizontally) */
295
- /* ===================================== */
296
-
237
+ /* Panels wrapper slides horizontally */
297
238
  .panels-wrapper {
298
239
  display: flex;
299
240
  height: 100%;
@@ -301,20 +242,12 @@ export const wizardStyles = `
301
242
  will-change: transform;
302
243
  }
303
244
 
304
- /* ===================================== */
305
- /* Slotted Step Panels */
306
- /* ===================================== */
307
-
308
245
  ::slotted(ty-step) {
309
246
  width: var(--ty-wizard-width, 100%);
310
247
  height: 100%;
311
248
  flex-shrink: 0;
312
249
  }
313
250
 
314
- /* ===================================== */
315
- /* Accessibility & Motion Preferences */
316
- /* ===================================== */
317
-
318
251
  @media (prefers-reduced-motion: reduce) {
319
252
  .panels-wrapper {
320
253
  transition-duration: 0ms !important;
@@ -345,4 +278,3 @@ export const wizardStyles = `
345
278
  border-width: 0;
346
279
  }
347
280
  `;
348
- //# sourceMappingURL=wizard.js.map
@@ -6,7 +6,7 @@
6
6
  * for a softer shade — e.g. `primary`, `primary+`, `primary-`. Matches the
7
7
  * design system's `ty-bg-primary+` / `ty-text-primary-` class convention.
8
8
  */
9
- export declare const FLAVORS: readonly ["primary", "secondary", "success", "danger", "warning", "neutral"];
9
+ export declare const FLAVORS: readonly ["primary", "success", "danger", "warning", "neutral"];
10
10
  export type FlavorBase = (typeof FLAVORS)[number];
11
11
  /**
12
12
  * A flavor with optional shade suffix: `primary | primary+ | primary-`.
@@ -50,7 +50,6 @@ export interface TyButtonElement extends TyBaseElement {
50
50
  /** Button type for forms */
51
51
  type?: 'button' | 'submit' | 'reset';
52
52
  }
53
- /** CSS style content */
54
53
  /** Icon size variants */
55
54
  export type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '12' | '14' | '16' | '18' | '20' | '24' | '32' | '48' | '64' | '80' | '96';
56
55
  /** Icon animation tempo */
@@ -141,4 +140,3 @@ export interface StyleContent {
141
140
  /** Optional style ID for caching */
142
141
  id?: string;
143
142
  }
144
- //# sourceMappingURL=common.d.ts.map
@@ -1,17 +1,7 @@
1
- /**
2
- * Ty Component Common Types
3
- */
4
- /**
5
- * Built-in semantic color flavor names. Append `+` for a stronger shade or `-`
6
- * for a softer shade — e.g. `primary`, `primary+`, `primary-`. Matches the
7
- * design system's `ty-bg-primary+` / `ty-text-primary-` class convention.
8
- */
9
1
  export const FLAVORS = [
10
2
  'primary',
11
- 'secondary',
12
3
  'success',
13
4
  'danger',
14
5
  'warning',
15
6
  'neutral',
16
7
  ];
17
- //# sourceMappingURL=common.js.map
@@ -1,25 +1,9 @@
1
1
  /**
2
- * Calendar Utilities
2
+ * Calendar month generation and localization (native Date API only).
3
3
  *
4
- * Pure TypeScript utilities for calendar month generation and localization.
5
- * Ported from ClojureScript ty/date/core.cljs
6
- *
7
- * Key Features:
8
- * - 42-day calendar grid generation (6 weeks × 7 days)
9
- * - Monday-first week ordering
10
- * - Rich day context with metadata
11
- * - Localized weekday names
12
- * - No external dependencies (native Date API only)
13
- *
14
- * Note on Timestamps:
15
- * - `value`: UTC timestamp at midnight UTC (timezone-independent, use for storage/server)
16
- * - `localValue`: Local timestamp at midnight local time (use for display/local calculations)
17
- * - `year/month/dayInMonth`: Calendar date components (user's mental model)
18
- *
19
- * Example for October 13, 2025:
20
- * - value = Date.UTC(2025, 9, 13) = consistent worldwide
21
- * - localValue = new Date(2025, 9, 13).getTime() = varies by timezone
22
- * - Both represent the same calendar date, different moments in time
4
+ * Timestamps: `value` is UTC midnight (timezone-independent, for storage/server),
5
+ * `localValue` is local midnight (for display/local math). Both denote the same
6
+ * calendar date but are different moments in time.
23
7
  */
24
8
  /**
25
9
  * Rich context for a single calendar day
@@ -125,4 +109,3 @@ export declare function parseISODate(isoString: string): {
125
109
  month: number;
126
110
  day: number;
127
111
  } | null;
128
- //# sourceMappingURL=calendar-utils.d.ts.map