@weeehaoooz/talos-ui 0.1.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 (180) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +85 -0
  3. package/fesm2022/weeehaoooz-talos-ui-button-button-group.mjs +237 -0
  4. package/fesm2022/weeehaoooz-talos-ui-button-button-group.mjs.map +1 -0
  5. package/fesm2022/weeehaoooz-talos-ui-button-button.mjs +93 -0
  6. package/fesm2022/weeehaoooz-talos-ui-button-button.mjs.map +1 -0
  7. package/fesm2022/weeehaoooz-talos-ui-core.mjs +438 -0
  8. package/fesm2022/weeehaoooz-talos-ui-core.mjs.map +1 -0
  9. package/fesm2022/weeehaoooz-talos-ui-data-display-badge.mjs +233 -0
  10. package/fesm2022/weeehaoooz-talos-ui-data-display-badge.mjs.map +1 -0
  11. package/fesm2022/weeehaoooz-talos-ui-data-display-status-tag.mjs +361 -0
  12. package/fesm2022/weeehaoooz-talos-ui-data-display-status-tag.mjs.map +1 -0
  13. package/fesm2022/weeehaoooz-talos-ui-data-display-timeline.mjs +312 -0
  14. package/fesm2022/weeehaoooz-talos-ui-data-display-timeline.mjs.map +1 -0
  15. package/fesm2022/weeehaoooz-talos-ui-data-display-trend-indicator.mjs +235 -0
  16. package/fesm2022/weeehaoooz-talos-ui-data-display-trend-indicator.mjs.map +1 -0
  17. package/fesm2022/weeehaoooz-talos-ui-data-viz-category-bar.mjs +462 -0
  18. package/fesm2022/weeehaoooz-talos-ui-data-viz-category-bar.mjs.map +1 -0
  19. package/fesm2022/weeehaoooz-talos-ui-data-viz-heatmap.mjs +805 -0
  20. package/fesm2022/weeehaoooz-talos-ui-data-viz-heatmap.mjs.map +1 -0
  21. package/fesm2022/weeehaoooz-talos-ui-data-viz-mini-donut.mjs +267 -0
  22. package/fesm2022/weeehaoooz-talos-ui-data-viz-mini-donut.mjs.map +1 -0
  23. package/fesm2022/weeehaoooz-talos-ui-data-viz-mini-gauge.mjs +351 -0
  24. package/fesm2022/weeehaoooz-talos-ui-data-viz-mini-gauge.mjs.map +1 -0
  25. package/fesm2022/weeehaoooz-talos-ui-data-viz-sparkline.mjs +566 -0
  26. package/fesm2022/weeehaoooz-talos-ui-data-viz-sparkline.mjs.map +1 -0
  27. package/fesm2022/weeehaoooz-talos-ui-feedback-alert.mjs +534 -0
  28. package/fesm2022/weeehaoooz-talos-ui-feedback-alert.mjs.map +1 -0
  29. package/fesm2022/weeehaoooz-talos-ui-feedback-dialog.mjs +446 -0
  30. package/fesm2022/weeehaoooz-talos-ui-feedback-dialog.mjs.map +1 -0
  31. package/fesm2022/weeehaoooz-talos-ui-feedback-snackbar.mjs +376 -0
  32. package/fesm2022/weeehaoooz-talos-ui-feedback-snackbar.mjs.map +1 -0
  33. package/fesm2022/weeehaoooz-talos-ui-feedback-tooltip.mjs +147 -0
  34. package/fesm2022/weeehaoooz-talos-ui-feedback-tooltip.mjs.map +1 -0
  35. package/fesm2022/weeehaoooz-talos-ui-form-affix.mjs +242 -0
  36. package/fesm2022/weeehaoooz-talos-ui-form-affix.mjs.map +1 -0
  37. package/fesm2022/weeehaoooz-talos-ui-form-autocomplete.mjs +514 -0
  38. package/fesm2022/weeehaoooz-talos-ui-form-autocomplete.mjs.map +1 -0
  39. package/fesm2022/weeehaoooz-talos-ui-form-checkbox.mjs +548 -0
  40. package/fesm2022/weeehaoooz-talos-ui-form-checkbox.mjs.map +1 -0
  41. package/fesm2022/weeehaoooz-talos-ui-form-chips.mjs +692 -0
  42. package/fesm2022/weeehaoooz-talos-ui-form-chips.mjs.map +1 -0
  43. package/fesm2022/weeehaoooz-talos-ui-form-color-picker.mjs +761 -0
  44. package/fesm2022/weeehaoooz-talos-ui-form-color-picker.mjs.map +1 -0
  45. package/fesm2022/weeehaoooz-talos-ui-form-date-picker.mjs +896 -0
  46. package/fesm2022/weeehaoooz-talos-ui-form-date-picker.mjs.map +1 -0
  47. package/fesm2022/weeehaoooz-talos-ui-form-date-range-picker.mjs +872 -0
  48. package/fesm2022/weeehaoooz-talos-ui-form-date-range-picker.mjs.map +1 -0
  49. package/fesm2022/weeehaoooz-talos-ui-form-date-time-picker.mjs +119 -0
  50. package/fesm2022/weeehaoooz-talos-ui-form-date-time-picker.mjs.map +1 -0
  51. package/fesm2022/weeehaoooz-talos-ui-form-date-time-range-picker.mjs +135 -0
  52. package/fesm2022/weeehaoooz-talos-ui-form-date-time-range-picker.mjs.map +1 -0
  53. package/fesm2022/weeehaoooz-talos-ui-form-drop-zone.mjs +666 -0
  54. package/fesm2022/weeehaoooz-talos-ui-form-drop-zone.mjs.map +1 -0
  55. package/fesm2022/weeehaoooz-talos-ui-form-form-field.mjs +147 -0
  56. package/fesm2022/weeehaoooz-talos-ui-form-form-field.mjs.map +1 -0
  57. package/fesm2022/weeehaoooz-talos-ui-form-input.mjs +33 -0
  58. package/fesm2022/weeehaoooz-talos-ui-form-input.mjs.map +1 -0
  59. package/fesm2022/weeehaoooz-talos-ui-form-otp.mjs +455 -0
  60. package/fesm2022/weeehaoooz-talos-ui-form-otp.mjs.map +1 -0
  61. package/fesm2022/weeehaoooz-talos-ui-form-password-input.mjs +379 -0
  62. package/fesm2022/weeehaoooz-talos-ui-form-password-input.mjs.map +1 -0
  63. package/fesm2022/weeehaoooz-talos-ui-form-radio.mjs +297 -0
  64. package/fesm2022/weeehaoooz-talos-ui-form-radio.mjs.map +1 -0
  65. package/fesm2022/weeehaoooz-talos-ui-form-range-input.mjs +661 -0
  66. package/fesm2022/weeehaoooz-talos-ui-form-range-input.mjs.map +1 -0
  67. package/fesm2022/weeehaoooz-talos-ui-form-rating.mjs +346 -0
  68. package/fesm2022/weeehaoooz-talos-ui-form-rating.mjs.map +1 -0
  69. package/fesm2022/weeehaoooz-talos-ui-form-select-input.mjs +896 -0
  70. package/fesm2022/weeehaoooz-talos-ui-form-select-input.mjs.map +1 -0
  71. package/fesm2022/weeehaoooz-talos-ui-form-slide-toggle.mjs +252 -0
  72. package/fesm2022/weeehaoooz-talos-ui-form-slide-toggle.mjs.map +1 -0
  73. package/fesm2022/weeehaoooz-talos-ui-form-transfer-list.mjs +916 -0
  74. package/fesm2022/weeehaoooz-talos-ui-form-transfer-list.mjs.map +1 -0
  75. package/fesm2022/weeehaoooz-talos-ui-layout.mjs +851 -0
  76. package/fesm2022/weeehaoooz-talos-ui-layout.mjs.map +1 -0
  77. package/fesm2022/weeehaoooz-talos-ui-nav.mjs +897 -0
  78. package/fesm2022/weeehaoooz-talos-ui-nav.mjs.map +1 -0
  79. package/fesm2022/weeehaoooz-talos-ui.mjs +17058 -0
  80. package/fesm2022/weeehaoooz-talos-ui.mjs.map +1 -0
  81. package/package.json +203 -0
  82. package/schematics/collection.json +10 -0
  83. package/schematics/ng-add/index.d.ts +3 -0
  84. package/schematics/ng-add/index.js +99 -0
  85. package/schematics/ng-add/schema.d.ts +10 -0
  86. package/schematics/ng-add/schema.js +2 -0
  87. package/schematics/ng-add/schema.json +52 -0
  88. package/styles/_alert.scss +56 -0
  89. package/styles/_badge.scss +279 -0
  90. package/styles/_button-group.scss +470 -0
  91. package/styles/_buttons.scss +442 -0
  92. package/styles/_card.scss +18 -0
  93. package/styles/_dialog.scss +116 -0
  94. package/styles/_drop-zone.scss +19 -0
  95. package/styles/_form-controls.scss +660 -0
  96. package/styles/_slide-toggle.scss +171 -0
  97. package/styles/_status-tag.scss +108 -0
  98. package/styles/_timeline.scss +19 -0
  99. package/styles/_tooltip.scss +32 -0
  100. package/styles/_typography.scss +279 -0
  101. package/styles/_variables.scss +590 -0
  102. package/styles/index.scss +15 -0
  103. package/types/weeehaoooz-talos-ui-button-button-group.d.ts +59 -0
  104. package/types/weeehaoooz-talos-ui-button-button-group.d.ts.map +1 -0
  105. package/types/weeehaoooz-talos-ui-button-button.d.ts +38 -0
  106. package/types/weeehaoooz-talos-ui-button-button.d.ts.map +1 -0
  107. package/types/weeehaoooz-talos-ui-core.d.ts +95 -0
  108. package/types/weeehaoooz-talos-ui-core.d.ts.map +1 -0
  109. package/types/weeehaoooz-talos-ui-data-display-badge.d.ts +119 -0
  110. package/types/weeehaoooz-talos-ui-data-display-badge.d.ts.map +1 -0
  111. package/types/weeehaoooz-talos-ui-data-display-status-tag.d.ts +135 -0
  112. package/types/weeehaoooz-talos-ui-data-display-status-tag.d.ts.map +1 -0
  113. package/types/weeehaoooz-talos-ui-data-display-timeline.d.ts +144 -0
  114. package/types/weeehaoooz-talos-ui-data-display-timeline.d.ts.map +1 -0
  115. package/types/weeehaoooz-talos-ui-data-display-trend-indicator.d.ts +83 -0
  116. package/types/weeehaoooz-talos-ui-data-display-trend-indicator.d.ts.map +1 -0
  117. package/types/weeehaoooz-talos-ui-data-viz-category-bar.d.ts +255 -0
  118. package/types/weeehaoooz-talos-ui-data-viz-category-bar.d.ts.map +1 -0
  119. package/types/weeehaoooz-talos-ui-data-viz-heatmap.d.ts +204 -0
  120. package/types/weeehaoooz-talos-ui-data-viz-heatmap.d.ts.map +1 -0
  121. package/types/weeehaoooz-talos-ui-data-viz-mini-donut.d.ts +101 -0
  122. package/types/weeehaoooz-talos-ui-data-viz-mini-donut.d.ts.map +1 -0
  123. package/types/weeehaoooz-talos-ui-data-viz-mini-gauge.d.ts +138 -0
  124. package/types/weeehaoooz-talos-ui-data-viz-mini-gauge.d.ts.map +1 -0
  125. package/types/weeehaoooz-talos-ui-data-viz-sparkline.d.ts +161 -0
  126. package/types/weeehaoooz-talos-ui-data-viz-sparkline.d.ts.map +1 -0
  127. package/types/weeehaoooz-talos-ui-feedback-alert.d.ts +212 -0
  128. package/types/weeehaoooz-talos-ui-feedback-alert.d.ts.map +1 -0
  129. package/types/weeehaoooz-talos-ui-feedback-dialog.d.ts +259 -0
  130. package/types/weeehaoooz-talos-ui-feedback-dialog.d.ts.map +1 -0
  131. package/types/weeehaoooz-talos-ui-feedback-snackbar.d.ts +147 -0
  132. package/types/weeehaoooz-talos-ui-feedback-snackbar.d.ts.map +1 -0
  133. package/types/weeehaoooz-talos-ui-feedback-tooltip.d.ts +32 -0
  134. package/types/weeehaoooz-talos-ui-feedback-tooltip.d.ts.map +1 -0
  135. package/types/weeehaoooz-talos-ui-form-affix.d.ts +88 -0
  136. package/types/weeehaoooz-talos-ui-form-affix.d.ts.map +1 -0
  137. package/types/weeehaoooz-talos-ui-form-autocomplete.d.ts +113 -0
  138. package/types/weeehaoooz-talos-ui-form-autocomplete.d.ts.map +1 -0
  139. package/types/weeehaoooz-talos-ui-form-checkbox.d.ts +165 -0
  140. package/types/weeehaoooz-talos-ui-form-checkbox.d.ts.map +1 -0
  141. package/types/weeehaoooz-talos-ui-form-chips.d.ts +152 -0
  142. package/types/weeehaoooz-talos-ui-form-chips.d.ts.map +1 -0
  143. package/types/weeehaoooz-talos-ui-form-color-picker.d.ts +144 -0
  144. package/types/weeehaoooz-talos-ui-form-color-picker.d.ts.map +1 -0
  145. package/types/weeehaoooz-talos-ui-form-date-picker.d.ts +138 -0
  146. package/types/weeehaoooz-talos-ui-form-date-picker.d.ts.map +1 -0
  147. package/types/weeehaoooz-talos-ui-form-date-range-picker.d.ts +148 -0
  148. package/types/weeehaoooz-talos-ui-form-date-range-picker.d.ts.map +1 -0
  149. package/types/weeehaoooz-talos-ui-form-date-time-picker.d.ts +44 -0
  150. package/types/weeehaoooz-talos-ui-form-date-time-picker.d.ts.map +1 -0
  151. package/types/weeehaoooz-talos-ui-form-date-time-range-picker.d.ts +48 -0
  152. package/types/weeehaoooz-talos-ui-form-date-time-range-picker.d.ts.map +1 -0
  153. package/types/weeehaoooz-talos-ui-form-drop-zone.d.ts +227 -0
  154. package/types/weeehaoooz-talos-ui-form-drop-zone.d.ts.map +1 -0
  155. package/types/weeehaoooz-talos-ui-form-form-field.d.ts +42 -0
  156. package/types/weeehaoooz-talos-ui-form-form-field.d.ts.map +1 -0
  157. package/types/weeehaoooz-talos-ui-form-input.d.ts +15 -0
  158. package/types/weeehaoooz-talos-ui-form-input.d.ts.map +1 -0
  159. package/types/weeehaoooz-talos-ui-form-otp.d.ts +111 -0
  160. package/types/weeehaoooz-talos-ui-form-otp.d.ts.map +1 -0
  161. package/types/weeehaoooz-talos-ui-form-password-input.d.ts +145 -0
  162. package/types/weeehaoooz-talos-ui-form-password-input.d.ts.map +1 -0
  163. package/types/weeehaoooz-talos-ui-form-radio.d.ts +84 -0
  164. package/types/weeehaoooz-talos-ui-form-radio.d.ts.map +1 -0
  165. package/types/weeehaoooz-talos-ui-form-range-input.d.ts +181 -0
  166. package/types/weeehaoooz-talos-ui-form-range-input.d.ts.map +1 -0
  167. package/types/weeehaoooz-talos-ui-form-rating.d.ts +110 -0
  168. package/types/weeehaoooz-talos-ui-form-rating.d.ts.map +1 -0
  169. package/types/weeehaoooz-talos-ui-form-select-input.d.ts +195 -0
  170. package/types/weeehaoooz-talos-ui-form-select-input.d.ts.map +1 -0
  171. package/types/weeehaoooz-talos-ui-form-slide-toggle.d.ts +79 -0
  172. package/types/weeehaoooz-talos-ui-form-slide-toggle.d.ts.map +1 -0
  173. package/types/weeehaoooz-talos-ui-form-transfer-list.d.ts +192 -0
  174. package/types/weeehaoooz-talos-ui-form-transfer-list.d.ts.map +1 -0
  175. package/types/weeehaoooz-talos-ui-layout.d.ts +286 -0
  176. package/types/weeehaoooz-talos-ui-layout.d.ts.map +1 -0
  177. package/types/weeehaoooz-talos-ui-nav.d.ts +384 -0
  178. package/types/weeehaoooz-talos-ui-nav.d.ts.map +1 -0
  179. package/types/weeehaoooz-talos-ui.d.ts +5050 -0
  180. package/types/weeehaoooz-talos-ui.d.ts.map +1 -0
@@ -0,0 +1,590 @@
1
+ /* ==========================================================================
2
+ Talos UI Design System - Modern 3-Tier Design Tokens
3
+ ========================================================================== */
4
+
5
+ :root {
6
+ /* ========================================================================
7
+ 1. Primitives & Scales
8
+ ======================================================================== */
9
+ --talos-font-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
10
+ --talos-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
11
+ --talos-font-display: var(--talos-font-sans);
12
+
13
+ /* Radii Scale */
14
+ --talos-radius-none: 0px;
15
+ --talos-radius-xs: 0.125rem; /* 2px */
16
+ --talos-radius-sm: 0.25rem; /* 4px */
17
+ --talos-radius-md: 0.375rem; /* 6px */
18
+ --talos-radius-lg: 0.5rem; /* 8px */
19
+ --talos-radius-xl: 0.75rem; /* 12px */
20
+ --talos-radius-2xl: 1rem; /* 16px */
21
+ --talos-radius-full: 9999px;
22
+
23
+ /* Metric & Sizing Scale */
24
+ --talos-height-sm: 2rem; /* 32px */
25
+ --talos-height-md: 2.25rem; /* 36px */
26
+ --talos-height-lg: 2.625rem; /* 42px */
27
+
28
+ /* Typography Scale */
29
+ --talos-font-size-2xs: 0.6875rem; /* 11px */
30
+ --talos-font-size-xs: 0.75rem; /* 12px */
31
+ --talos-font-size-sm: 0.8125rem; /* 13px */
32
+ --talos-font-size-base: 0.875rem; /* 14px */
33
+ --talos-font-size-md: 0.875rem; /* 14px */
34
+ --talos-font-size-lg: 1rem; /* 16px */
35
+ --talos-font-size-xl: 1.125rem; /* 18px */
36
+ --talos-font-size-2xl: 1.25rem; /* 20px */
37
+ --talos-font-size-3xl: 1.5rem; /* 24px */
38
+ --talos-font-size-4xl: 1.875rem; /* 30px */
39
+ --talos-font-size-5xl: 2.25rem; /* 36px */
40
+
41
+ --talos-font-weight-light: 300;
42
+ --talos-font-weight-regular: 400;
43
+ --talos-font-weight-medium: 500;
44
+ --talos-font-weight-semibold: 600;
45
+ --talos-font-weight-bold: 700;
46
+ --talos-font-weight-extrabold: 800;
47
+
48
+ --talos-line-height-none: 1;
49
+ --talos-line-height-tight: 1.25;
50
+ --talos-line-height-snug: 1.375;
51
+ --talos-line-height-normal: 1.5;
52
+ --talos-line-height-relaxed: 1.625;
53
+ --talos-line-height-loose: 2;
54
+
55
+ --talos-control-padding-x: 0.625rem;
56
+ --talos-control-font-size: var(--talos-font-size-sm);
57
+ --talos-control-height: var(--talos-height-md);
58
+ --talos-border-radius: var(--talos-radius-md);
59
+
60
+ /* Shadows & Elevation */
61
+ --talos-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
62
+ --talos-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.08), 0 1px 2px -1px rgba(0, 0, 0, 0.05);
63
+ --talos-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.04);
64
+ --talos-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -4px rgba(0, 0, 0, 0.04);
65
+ --talos-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
66
+ --talos-shadow-dialog: var(--talos-shadow-xl);
67
+ --talos-shadow-dropdown: 0 10px 25px -5px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
68
+
69
+ /* Motion & Animation */
70
+ --talos-transition: 0.18s cubic-bezier(0.4, 0, 0.2, 1);
71
+ --talos-transition-slow: 0.28s cubic-bezier(0.4, 0, 0.2, 1);
72
+
73
+ /* ========================================================================
74
+ 2. Semantic Surfaces, Typography & Borders (Light Mode)
75
+ ======================================================================== */
76
+ --talos-bg-canvas: #f8fafc;
77
+ --talos-bg-surface: #ffffff;
78
+ --talos-bg-subtle: #f1f5f9;
79
+ --talos-bg-overlay: rgba(15, 23, 42, 0.5);
80
+
81
+ --talos-border-subtle: #f1f5f9;
82
+ --talos-border-default: #cbd5e1;
83
+ --talos-border-hover: #94a3b8;
84
+ --talos-border-focus: #2563eb;
85
+ --talos-focus-ring: 0 0 0 3px rgba(37, 99, 235, 0.18);
86
+
87
+ --talos-text-primary: #0f172a;
88
+ --talos-text-secondary: #334155;
89
+ --talos-text-muted: #64748b;
90
+ --talos-text-inverse: #ffffff;
91
+
92
+ /* Aliases for global consistency */
93
+ --talos-bg-color: var(--talos-bg-canvas);
94
+ --talos-card-bg: var(--talos-bg-surface);
95
+ --talos-card-bg-subtle: var(--talos-bg-subtle);
96
+ --talos-border-color: var(--talos-border-default);
97
+ --talos-text-color: var(--talos-text-primary);
98
+ --talos-error-color: #ef4444;
99
+ --talos-warning-color: #d97706;
100
+ --talos-success-color: #16a34a;
101
+
102
+ /* Global Shorthand Aliases */
103
+ --bg-color: var(--talos-bg-canvas);
104
+ --bg-subtle: var(--talos-bg-subtle);
105
+ --card-bg: var(--talos-bg-surface);
106
+ --card-bg-subtle: var(--talos-bg-subtle);
107
+ --border-color: var(--talos-border-default);
108
+ --border-hover: var(--talos-border-hover);
109
+ --border-focus: var(--talos-border-focus);
110
+ --text-color: var(--talos-text-primary);
111
+ --text-muted: var(--talos-text-muted);
112
+ --primary-color: var(--talos-primary);
113
+ --primary-hover: var(--talos-primary-hover);
114
+ --primary-active: var(--talos-primary-active);
115
+ --primary-light: var(--talos-primary-subtle-bg);
116
+ --primary-light-hover: var(--talos-primary-subtle-bg-hover);
117
+
118
+ /* ========================================================================
119
+ 3. Semantic Intents Palette (Light Mode)
120
+ ======================================================================== */
121
+ /* Primary (Blue) */
122
+ --talos-primary: #2563eb;
123
+ --talos-primary-hover: #1d4ed8;
124
+ --talos-primary-active: #1e40af;
125
+ --talos-primary-subtle-bg: #eff6ff;
126
+ --talos-primary-subtle-bg-hover: #dbeafe;
127
+ --talos-primary-subtle-border: #bfdbfe;
128
+ --talos-primary-text: #1e40af;
129
+ --talos-primary-solid-bg: #2563eb;
130
+ --talos-primary-solid-text: #ffffff;
131
+ --talos-primary-color: var(--talos-primary);
132
+ --talos-primary-light: var(--talos-primary-subtle-bg);
133
+ --talos-primary-light-hover: var(--talos-primary-subtle-bg-hover);
134
+
135
+ /* Neutral / Secondary (Slate) */
136
+ --talos-neutral: #475569;
137
+ --talos-neutral-hover: #334155;
138
+ --talos-neutral-active: #1e293b;
139
+ --talos-neutral-subtle-bg: #f8fafc;
140
+ --talos-neutral-subtle-bg-hover: #f1f5f9;
141
+ --talos-neutral-subtle-border: #e2e8f0;
142
+ --talos-neutral-text: #334155;
143
+ --talos-neutral-solid-bg: #475569;
144
+ --talos-neutral-solid-text: #ffffff;
145
+
146
+ /* Success (Emerald) */
147
+ --talos-success: #16a34a;
148
+ --talos-success-hover: #15803d;
149
+ --talos-success-active: #166534;
150
+ --talos-success-subtle-bg: #f0fdf4;
151
+ --talos-success-subtle-bg-hover: #dcfce7;
152
+ --talos-success-subtle-border: #bbf7d0;
153
+ --talos-success-text: #166534;
154
+ --talos-success-solid-bg: #16a34a;
155
+ --talos-success-solid-text: #ffffff;
156
+
157
+ /* Warning (Amber) */
158
+ --talos-warning: #d97706;
159
+ --talos-warning-hover: #b45309;
160
+ --talos-warning-active: #92400e;
161
+ --talos-warning-subtle-bg: #fffbeb;
162
+ --talos-warning-subtle-bg-hover: #fef3c7;
163
+ --talos-warning-subtle-border: #fde68a;
164
+ --talos-warning-text: #92400e;
165
+ --talos-warning-solid-bg: #d97706;
166
+ --talos-warning-solid-text: #ffffff;
167
+
168
+ /* Danger / Error (Rose / Red) */
169
+ --talos-danger: #ef4444;
170
+ --talos-danger-hover: #dc2626;
171
+ --talos-danger-active: #b91c1c;
172
+ --talos-danger-subtle-bg: #fef2f2;
173
+ --talos-danger-subtle-bg-hover: #fee2e2;
174
+ --talos-danger-subtle-border: #fecaca;
175
+ --talos-danger-text: #991b1b;
176
+ --talos-danger-solid-bg: #dc2626;
177
+ --talos-danger-solid-text: #ffffff;
178
+
179
+ /* Info (Sky / Cyan) */
180
+ --talos-info: #0284c7;
181
+ --talos-info-hover: #0369a1;
182
+ --talos-info-active: #075985;
183
+ --talos-info-subtle-bg: #f0f9ff;
184
+ --talos-info-subtle-bg-hover: #e0f2fe;
185
+ --talos-info-subtle-border: #bae6fd;
186
+ --talos-info-text: #0369a1;
187
+ --talos-info-solid-bg: #0284c7;
188
+ --talos-info-solid-text: #ffffff;
189
+
190
+ /* Purple / Accent (Violet) */
191
+ --talos-purple: #7c3aed;
192
+ --talos-purple-hover: #6d28d9;
193
+ --talos-purple-active: #5b21b6;
194
+ --talos-purple-subtle-bg: #f5f3ff;
195
+ --talos-purple-subtle-bg-hover: #ede9fe;
196
+ --talos-purple-subtle-border: #ddd6fe;
197
+ --talos-purple-text: #6d28d9;
198
+ --talos-purple-solid-bg: #7c3aed;
199
+ --talos-purple-solid-text: #ffffff;
200
+
201
+ /* ========================================================================
202
+ 4. Form Control Tokens
203
+ ======================================================================== */
204
+ --talos-input-bg: var(--talos-bg-surface);
205
+ --talos-input-border: var(--talos-border-default);
206
+ --talos-input-border-hover: var(--talos-border-hover);
207
+ --talos-input-border-focus: var(--talos-border-focus);
208
+ --talos-input-color: var(--talos-text-primary);
209
+ --talos-input-placeholder-color: var(--talos-text-muted);
210
+ --talos-input-disabled-bg: var(--talos-bg-subtle);
211
+ --talos-input-disabled-border: var(--talos-border-default);
212
+ --talos-input-disabled-color: var(--talos-text-muted);
213
+ --talos-input-radius: var(--talos-radius-md);
214
+ --talos-input-height: var(--talos-height-md);
215
+
216
+ /* Affix Buttons & Action Tokens */
217
+ --talos-affix-btn-size-sm: 1.375rem; /* 22px */
218
+ --talos-affix-btn-size-md: 1.5rem; /* 24px */
219
+ --talos-affix-btn-size-lg: 1.75rem; /* 28px */
220
+ --talos-affix-btn-radius: var(--talos-radius-sm, 0.25rem);
221
+ --talos-affix-btn-icon-size-sm: 0.8125rem; /* 13px */
222
+ --talos-affix-btn-icon-size-md: 0.875rem; /* 14px */
223
+ --talos-affix-btn-icon-size-lg: 1rem; /* 16px */
224
+ --talos-affix-btn-color: var(--talos-text-muted, #64748b);
225
+ --talos-affix-btn-hover-color: var(--talos-text-color, #0f172a);
226
+ --talos-affix-btn-hover-bg: var(--talos-btn-ghost-hover-bg, var(--talos-bg-subtle, rgba(148, 163, 184, 0.15)));
227
+ --talos-affix-btn-active-bg: var(--talos-btn-ghost-active-bg, rgba(148, 163, 184, 0.25));
228
+
229
+ /* ========================================================================
230
+ 5. Component Tokens (Mapped to Semantic Tier)
231
+ ======================================================================== */
232
+ /* Navigation & Layout */
233
+ --talos-sidebar-width: 260px;
234
+ --talos-sidebar-collapsed-width: 68px;
235
+ --talos-nav-bg: var(--talos-bg-surface);
236
+ --talos-nav-border-color: var(--talos-border-subtle);
237
+ --talos-active-nav-bg: var(--talos-primary-subtle-bg);
238
+ --talos-active-nav-text: var(--talos-primary);
239
+ --talos-nav-hover-bg: var(--talos-bg-subtle);
240
+ --talos-nav-hover-text: var(--talos-text-primary);
241
+ --talos-avatar-bg: var(--talos-primary-subtle-bg);
242
+ --talos-avatar-text: var(--talos-primary-text);
243
+ --talos-badge-bg: var(--talos-primary-subtle-bg);
244
+ --talos-badge-text: var(--talos-primary-text);
245
+
246
+ --talos-header-bg: var(--talos-bg-surface);
247
+ --talos-header-border-color: var(--talos-border-subtle);
248
+ --talos-right-panel-bg: var(--talos-bg-surface);
249
+ --talos-right-panel-border: var(--talos-border-subtle);
250
+ --talos-loading-overlay-bg: rgba(255, 255, 255, 0.75);
251
+
252
+ /* Dropdown & Popover */
253
+ --talos-dropdown-bg: var(--talos-bg-surface);
254
+ --talos-dropdown-border: var(--talos-border-default);
255
+ --talos-dropdown-shadow: var(--talos-shadow-dropdown);
256
+ --talos-dropdown-hover-bg: var(--talos-bg-subtle);
257
+ --talos-dropdown-selected-bg: var(--talos-primary-subtle-bg);
258
+
259
+ /* Buttons */
260
+ --talos-btn-font-family: inherit;
261
+ --talos-btn-border-radius: var(--talos-radius-md);
262
+ --talos-btn-font-weight: 600;
263
+ --talos-btn-transition: background-color var(--talos-transition), border-color var(--talos-transition), color var(--talos-transition), box-shadow var(--talos-transition), opacity var(--talos-transition);
264
+ --talos-btn-ripple-color: rgba(255, 255, 255, 0.35);
265
+
266
+ --talos-btn-primary-bg: var(--talos-primary-solid-bg);
267
+ --talos-btn-primary-hover: var(--talos-primary-hover);
268
+ --talos-btn-primary-active: var(--talos-primary-active);
269
+ --talos-btn-primary-text: var(--talos-primary-solid-text);
270
+
271
+ --talos-btn-secondary-bg: var(--talos-neutral-solid-bg);
272
+ --talos-btn-secondary-hover: var(--talos-neutral-hover);
273
+ --talos-btn-secondary-active: var(--talos-neutral-active);
274
+ --talos-btn-secondary-text: var(--talos-neutral-solid-text);
275
+
276
+ --talos-btn-outline-bg: transparent;
277
+ --talos-btn-outline-border: var(--talos-border-default);
278
+ --talos-btn-outline-hover-bg: var(--talos-bg-subtle);
279
+ --talos-btn-outline-hover-border: var(--talos-border-hover);
280
+ --talos-btn-outline-text: var(--talos-text-secondary);
281
+
282
+ --talos-btn-ghost-bg: transparent;
283
+ --talos-btn-ghost-text: var(--talos-text-muted);
284
+ --talos-btn-ghost-hover-bg: var(--talos-bg-subtle);
285
+ --talos-btn-ghost-hover-text: var(--talos-text-primary);
286
+ --talos-btn-ghost-active-bg: var(--talos-neutral-subtle-bg-hover);
287
+
288
+ --talos-btn-danger-bg: var(--talos-danger-solid-bg);
289
+ --talos-btn-danger-hover: var(--talos-danger-hover);
290
+ --talos-btn-danger-active: var(--talos-danger-active);
291
+ --talos-btn-danger-text: var(--talos-danger-solid-text);
292
+
293
+ --talos-btn-success-bg: var(--talos-success-solid-bg);
294
+ --talos-btn-success-hover: var(--talos-success-hover);
295
+ --talos-btn-success-active: var(--talos-success-active);
296
+ --talos-btn-success-text: var(--talos-success-solid-text);
297
+
298
+ --talos-btn-height-sm: var(--talos-height-sm);
299
+ --talos-btn-height-md: var(--talos-height-md);
300
+ --talos-btn-height-lg: var(--talos-height-lg);
301
+
302
+ --talos-btn-padding-x-sm: 0.625rem;
303
+ --talos-btn-padding-x-md: 0.875rem;
304
+ --talos-btn-padding-x-lg: 1.125rem;
305
+
306
+ --talos-btn-font-size-sm: var(--talos-font-size-xs);
307
+ --talos-btn-font-size-md: var(--talos-font-size-sm);
308
+ --talos-btn-font-size-lg: var(--talos-font-size-md);
309
+
310
+ /* Category Bar */
311
+ --talos-category-bar-gap: 2px;
312
+ --talos-category-bar-track-bg: var(--talos-bg-subtle);
313
+ --talos-category-bar-border-radius: var(--talos-radius-md);
314
+ --talos-category-bar-height-xs: 0.25rem;
315
+ --talos-category-bar-height-sm: 0.375rem;
316
+ --talos-category-bar-height-md: 0.5rem;
317
+ --talos-category-bar-height-lg: 0.75rem;
318
+ --talos-category-bar-marker-ring: var(--talos-bg-surface);
319
+
320
+ /* Range Input */
321
+ --talos-range-track-bg: var(--talos-border-default);
322
+ --talos-range-track-fill: var(--talos-primary);
323
+ --talos-range-track-disabled-bg: var(--talos-border-subtle);
324
+ --talos-range-track-disabled-fill: var(--talos-text-muted);
325
+ --talos-range-track-height-sm: 0.25rem;
326
+ --talos-range-track-height-md: 0.375rem;
327
+ --talos-range-track-height-lg: 0.5rem;
328
+ --talos-range-thumb-size-sm: 1rem;
329
+ --talos-range-thumb-size-md: 1.25rem;
330
+ --talos-range-thumb-size-lg: 1.5rem;
331
+ --talos-range-thumb-bg: var(--talos-bg-surface);
332
+ --talos-range-thumb-border: var(--talos-primary);
333
+ --talos-range-thumb-shadow: var(--talos-shadow-sm);
334
+ --talos-range-thumb-hover-shadow: 0 0 0 4px rgba(37, 99, 235, 0.15);
335
+ --talos-range-thumb-active-shadow: 0 0 0 6px rgba(37, 99, 235, 0.25);
336
+ --talos-range-tick-color: var(--talos-text-muted);
337
+ --talos-range-tick-active-color: #ffffff;
338
+ --talos-range-tick-label-color: var(--talos-text-muted);
339
+ --talos-range-tooltip-bg: #0f172a;
340
+ --talos-range-tooltip-text: #ffffff;
341
+
342
+ /* Slide Toggle */
343
+ --talos-toggle-track-bg: var(--talos-border-default);
344
+ --talos-toggle-track-bg-hover: var(--talos-border-hover);
345
+ --talos-toggle-thumb-bg: var(--talos-bg-surface);
346
+
347
+ /* Snackbar */
348
+ --talos-snackbar-bg: var(--talos-bg-surface);
349
+ --talos-snackbar-text: var(--talos-text-primary);
350
+ --talos-snackbar-border: var(--talos-border-default);
351
+ --talos-snackbar-border-radius: var(--talos-radius-lg);
352
+
353
+ /* Dialog / Modal */
354
+ --talos-dialog-bg: var(--talos-bg-surface);
355
+ --talos-dialog-border: var(--talos-border-default);
356
+ --talos-dialog-radius: var(--talos-radius-xl);
357
+ --talos-dialog-shadow: var(--talos-shadow-dialog);
358
+ --talos-dialog-backdrop-bg: var(--talos-bg-overlay);
359
+ --talos-dialog-backdrop-blur-bg: rgba(15, 23, 42, 0.35);
360
+ --talos-dialog-title-color: var(--talos-text-primary);
361
+ --talos-dialog-subtitle-color: var(--talos-text-muted);
362
+
363
+ /* Tooltip */
364
+ --talos-tooltip-bg: #0f172a;
365
+ --talos-tooltip-text: #ffffff;
366
+
367
+ /* Drop Zone */
368
+ --talos-dropzone-bg: var(--talos-bg-surface);
369
+ --talos-dropzone-hover-bg: var(--talos-bg-subtle);
370
+ --talos-dropzone-drag-bg: var(--talos-primary-subtle-bg);
371
+ --talos-dropzone-border: var(--talos-border-default);
372
+ --talos-dropzone-hover-border: var(--talos-border-hover);
373
+ --talos-dropzone-drag-border: var(--talos-primary);
374
+ --talos-dropzone-radius: var(--talos-radius-lg);
375
+ --talos-dropzone-text: var(--talos-text-primary);
376
+ --talos-dropzone-subtext: var(--talos-text-muted);
377
+ --talos-dropzone-icon-color: var(--talos-primary);
378
+ --talos-dropzone-file-bg: var(--talos-bg-surface);
379
+ --talos-dropzone-file-border: var(--talos-border-default);
380
+
381
+ /* Rating / Star Review */
382
+ --talos-rating-fill-warning: var(--talos-warning);
383
+ --talos-rating-fill-primary: var(--talos-primary);
384
+ --talos-rating-fill-danger: var(--talos-danger);
385
+ --talos-rating-fill-success: var(--talos-success);
386
+ --talos-rating-fill-purple: var(--talos-purple);
387
+ --talos-rating-unfilled: var(--talos-border-default);
388
+ --talos-rating-size-sm: 1.125rem;
389
+ --talos-rating-size-md: 1.375rem;
390
+ --talos-rating-size-lg: 1.75rem;
391
+ --talos-rating-size-xl: 2.25rem;
392
+ }
393
+
394
+ /* ==========================================================================
395
+ Dark Mode Tokens (Consolidated Override Layer)
396
+ ========================================================================== */
397
+ :root[data-theme="dark"],
398
+ :root.dark,
399
+ [data-theme="dark"],
400
+ [data-mode="dark"],
401
+ .dark,
402
+ .dark-theme {
403
+ /* Surfaces & Backgrounds */
404
+ --talos-bg-canvas: #090d16;
405
+ --talos-bg-surface: #0f172a;
406
+ --talos-bg-subtle: #131d31;
407
+ --talos-bg-overlay: rgba(3, 7, 18, 0.75);
408
+
409
+ /* Borders & Focus */
410
+ --talos-border-subtle: rgba(255, 255, 255, 0.06);
411
+ --talos-border-default: rgba(255, 255, 255, 0.1);
412
+ --talos-border-hover: rgba(255, 255, 255, 0.2);
413
+ --talos-border-focus: #3b82f6;
414
+ --talos-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.35);
415
+
416
+ /* Typography */
417
+ --talos-text-primary: #f8fafc;
418
+ --talos-text-secondary: #e2e8f0;
419
+ --talos-text-muted: #94a3b8;
420
+ --talos-text-inverse: #090d16;
421
+
422
+ /* Shadows */
423
+ --talos-shadow-dropdown: 0 16px 32px -4px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(255, 255, 255, 0.08);
424
+ --talos-shadow-dialog: 0 25px 50px -12px rgba(0, 0, 0, 0.75), 0 0 0 1px rgba(255, 255, 255, 0.1);
425
+
426
+ /* Intents in Dark Mode */
427
+ --talos-primary: #3b82f6;
428
+ --talos-primary-hover: #60a5fa;
429
+ --talos-primary-active: #2563eb;
430
+ --talos-primary-subtle-bg: rgba(59, 130, 246, 0.16);
431
+ --talos-primary-subtle-bg-hover: rgba(59, 130, 246, 0.26);
432
+ --talos-primary-subtle-border: rgba(59, 130, 246, 0.35);
433
+ --talos-primary-text: #93c5fd;
434
+ --talos-primary-solid-bg: #2563eb;
435
+ --talos-primary-solid-text: #ffffff;
436
+
437
+ --talos-neutral: #94a3b8;
438
+ --talos-neutral-hover: #cbd5e1;
439
+ --talos-neutral-active: #f1f5f9;
440
+ --talos-neutral-subtle-bg: rgba(148, 163, 184, 0.12);
441
+ --talos-neutral-subtle-bg-hover: rgba(148, 163, 184, 0.2);
442
+ --talos-neutral-subtle-border: rgba(148, 163, 184, 0.25);
443
+ --talos-neutral-text: #e2e8f0;
444
+ --talos-neutral-solid-bg: #334155;
445
+ --talos-neutral-solid-text: #f8fafc;
446
+
447
+ --talos-success: #22c55e;
448
+ --talos-success-hover: #4ade80;
449
+ --talos-success-active: #16a34a;
450
+ --talos-success-subtle-bg: rgba(34, 197, 94, 0.16);
451
+ --talos-success-subtle-bg-hover: rgba(34, 197, 94, 0.26);
452
+ --talos-success-subtle-border: rgba(34, 197, 94, 0.35);
453
+ --talos-success-text: #86efac;
454
+ --talos-success-solid-bg: #16a34a;
455
+ --talos-success-solid-text: #ffffff;
456
+
457
+ --talos-warning: #f59e0b;
458
+ --talos-warning-hover: #fbbf24;
459
+ --talos-warning-active: #d97706;
460
+ --talos-warning-subtle-bg: rgba(245, 158, 11, 0.16);
461
+ --talos-warning-subtle-bg-hover: rgba(245, 158, 11, 0.26);
462
+ --talos-warning-subtle-border: rgba(245, 158, 11, 0.35);
463
+ --talos-warning-text: #fde047;
464
+ --talos-warning-solid-bg: #d97706;
465
+ --talos-warning-solid-text: #ffffff;
466
+
467
+ --talos-danger: #ef4444;
468
+ --talos-danger-hover: #f87171;
469
+ --talos-danger-active: #dc2626;
470
+ --talos-danger-subtle-bg: rgba(239, 68, 68, 0.16);
471
+ --talos-danger-subtle-bg-hover: rgba(239, 68, 68, 0.26);
472
+ --talos-danger-subtle-border: rgba(239, 68, 68, 0.35);
473
+ --talos-danger-text: #fca5a5;
474
+ --talos-danger-solid-bg: #dc2626;
475
+ --talos-danger-solid-text: #ffffff;
476
+
477
+ --talos-info: #0ea5e9;
478
+ --talos-info-hover: #38bdf8;
479
+ --talos-info-active: #0284c7;
480
+ --talos-info-subtle-bg: rgba(14, 165, 233, 0.16);
481
+ --talos-info-subtle-bg-hover: rgba(14, 165, 233, 0.26);
482
+ --talos-info-subtle-border: rgba(14, 165, 233, 0.35);
483
+ --talos-info-text: #7dd3fc;
484
+ --talos-info-solid-bg: #0284c7;
485
+ --talos-info-solid-text: #ffffff;
486
+
487
+ --talos-purple: #8b5cf6;
488
+ --talos-purple-hover: #a78bfa;
489
+ --talos-purple-active: #7c3aed;
490
+ --talos-purple-subtle-bg: rgba(139, 92, 246, 0.16);
491
+ --talos-purple-subtle-bg-hover: rgba(139, 92, 246, 0.26);
492
+ --talos-purple-subtle-border: rgba(139, 92, 246, 0.35);
493
+ --talos-purple-text: #c4b5fd;
494
+ --talos-purple-solid-bg: #7c3aed;
495
+ --talos-purple-solid-text: #ffffff;
496
+
497
+ /* Tooltip in Dark Mode */
498
+ --talos-tooltip-bg: #1e293b;
499
+ --talos-tooltip-text: #f8fafc;
500
+ --talos-range-tooltip-bg: #1e293b;
501
+ --talos-range-tooltip-text: #f8fafc;
502
+ --talos-range-tick-active-color: #f8fafc;
503
+
504
+ /* Component adjustments for Dark Mode */
505
+ --talos-loading-overlay-bg: rgba(9, 13, 22, 0.8);
506
+ --talos-range-thumb-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
507
+ }
508
+
509
+ /* System Dark Mode Fallback */
510
+ @media (prefers-color-scheme: dark) {
511
+ :root:not([data-theme="light"]):not(.light) {
512
+ --talos-bg-canvas: #090d16;
513
+ --talos-bg-surface: #0f172a;
514
+ --talos-bg-subtle: #131d31;
515
+ --talos-bg-overlay: rgba(3, 7, 18, 0.75);
516
+
517
+ --talos-border-subtle: rgba(255, 255, 255, 0.06);
518
+ --talos-border-default: rgba(255, 255, 255, 0.1);
519
+ --talos-border-hover: rgba(255, 255, 255, 0.2);
520
+ --talos-border-focus: #3b82f6;
521
+ --talos-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.35);
522
+
523
+ --talos-text-primary: #f8fafc;
524
+ --talos-text-secondary: #e2e8f0;
525
+ --talos-text-muted: #94a3b8;
526
+ --talos-text-inverse: #090d16;
527
+
528
+ --talos-primary: #3b82f6;
529
+ --talos-primary-hover: #60a5fa;
530
+ --talos-primary-active: #2563eb;
531
+ --talos-primary-subtle-bg: rgba(59, 130, 246, 0.16);
532
+ --talos-primary-subtle-bg-hover: rgba(59, 130, 246, 0.26);
533
+ --talos-primary-subtle-border: rgba(59, 130, 246, 0.35);
534
+ --talos-primary-text: #93c5fd;
535
+
536
+ --talos-neutral: #94a3b8;
537
+ --talos-neutral-hover: #cbd5e1;
538
+ --talos-neutral-active: #f1f5f9;
539
+ --talos-neutral-subtle-bg: rgba(148, 163, 184, 0.12);
540
+ --talos-neutral-subtle-bg-hover: rgba(148, 163, 184, 0.2);
541
+ --talos-neutral-subtle-border: rgba(148, 163, 184, 0.25);
542
+ --talos-neutral-text: #e2e8f0;
543
+
544
+ --talos-success: #22c55e;
545
+ --talos-success-hover: #4ade80;
546
+ --talos-success-active: #16a34a;
547
+ --talos-success-subtle-bg: rgba(34, 197, 94, 0.16);
548
+ --talos-success-subtle-bg-hover: rgba(34, 197, 94, 0.26);
549
+ --talos-success-subtle-border: rgba(34, 197, 94, 0.35);
550
+ --talos-success-text: #86efac;
551
+
552
+ --talos-warning: #f59e0b;
553
+ --talos-warning-hover: #fbbf24;
554
+ --talos-warning-active: #d97706;
555
+ --talos-warning-subtle-bg: rgba(245, 158, 11, 0.16);
556
+ --talos-warning-subtle-bg-hover: rgba(245, 158, 11, 0.26);
557
+ --talos-warning-subtle-border: rgba(245, 158, 11, 0.35);
558
+ --talos-warning-text: #fde047;
559
+
560
+ --talos-danger: #ef4444;
561
+ --talos-danger-hover: #f87171;
562
+ --talos-danger-active: #dc2626;
563
+ --talos-danger-subtle-bg: rgba(239, 68, 68, 0.16);
564
+ --talos-danger-subtle-bg-hover: rgba(239, 68, 68, 0.26);
565
+ --talos-danger-subtle-border: rgba(239, 68, 68, 0.35);
566
+ --talos-danger-text: #fca5a5;
567
+
568
+ --talos-info: #0ea5e9;
569
+ --talos-info-hover: #38bdf8;
570
+ --talos-info-active: #0284c7;
571
+ --talos-info-subtle-bg: rgba(14, 165, 233, 0.16);
572
+ --talos-info-subtle-bg-hover: rgba(14, 165, 233, 0.26);
573
+ --talos-info-subtle-border: rgba(14, 165, 233, 0.35);
574
+ --talos-info-text: #7dd3fc;
575
+
576
+ --talos-purple: #8b5cf6;
577
+ --talos-purple-hover: #a78bfa;
578
+ --talos-purple-active: #7c3aed;
579
+ --talos-purple-subtle-bg: rgba(139, 92, 246, 0.16);
580
+ --talos-purple-subtle-bg-hover: rgba(139, 92, 246, 0.26);
581
+ --talos-purple-subtle-border: rgba(139, 92, 246, 0.35);
582
+ --talos-purple-text: #c4b5fd;
583
+
584
+ --talos-tooltip-bg: #1e293b;
585
+ --talos-tooltip-text: #f8fafc;
586
+ --talos-range-tooltip-bg: #1e293b;
587
+ --talos-range-tooltip-text: #f8fafc;
588
+ --talos-range-tick-active-color: #f8fafc;
589
+ }
590
+ }
@@ -0,0 +1,15 @@
1
+ /* Main Theme Entrypoint for @talos/components */
2
+ @use './variables';
3
+ @use './typography';
4
+ @use './form-controls';
5
+ @use './buttons';
6
+ @use './button-group';
7
+ @use './tooltip';
8
+ @use './slide-toggle';
9
+ @use './status-tag';
10
+ @use './card';
11
+ @use './dialog';
12
+ @use './drop-zone';
13
+ @use './badge';
14
+ @use './alert';
15
+ @use './timeline';
@@ -0,0 +1,59 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { ElementRef } from '@angular/core';
3
+ import * as i4 from '@weeehaoooz/talos-ui/button/button';
4
+ import { ButtonSize, TalosButtonDirective } from '@weeehaoooz/talos-ui/button/button';
5
+ import * as i3 from '@weeehaoooz/talos-ui/feedback/tooltip';
6
+
7
+ declare class TalosButtonGroupItemDirective {
8
+ readonly elementRef: ElementRef<HTMLElement>;
9
+ /** Value associated with this button item in selection mode */
10
+ readonly value: _angular_core.InputSignal<any>;
11
+ /** Explicit selected / active state override */
12
+ readonly selected: _angular_core.WritableSignal<boolean>;
13
+ /** Focus target method */
14
+ focus(): void;
15
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TalosButtonGroupItemDirective, never>;
16
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TalosButtonGroupItemDirective, "button[talosButtonGroupItem], a[talosButtonGroupItem], [talos-button-group-item]", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
17
+ }
18
+
19
+ type ButtonGroupOrientation = 'horizontal' | 'vertical';
20
+ type ButtonGroupVariant = 'attached' | 'segmented' | 'outline' | 'subtle' | 'pill';
21
+ type ButtonGroupSelectionMode = 'none' | 'single' | 'multiple';
22
+ declare class TalosButtonGroupComponent {
23
+ private readonly elementRef;
24
+ /** Layout orientation: horizontal or vertical */
25
+ readonly orientation: _angular_core.InputSignal<ButtonGroupOrientation>;
26
+ /** Visual variant style */
27
+ readonly variant: _angular_core.InputSignal<ButtonGroupVariant>;
28
+ /** Button size propagation */
29
+ readonly size: _angular_core.InputSignal<ButtonSize>;
30
+ /** Selection behavior: none, single (radio), or multiple (checkbox) */
31
+ readonly selectionMode: _angular_core.InputSignal<ButtonGroupSelectionMode>;
32
+ /** Model value for single or multiple selection */
33
+ readonly value: _angular_core.ModelSignal<any>;
34
+ /** Apply fully rounded pill shape */
35
+ readonly pill: _angular_core.InputSignal<boolean>;
36
+ /** Disable all buttons in group */
37
+ readonly disabled: _angular_core.InputSignal<boolean>;
38
+ /** Child items using TalosButtonGroupItemDirective */
39
+ readonly items: _angular_core.Signal<readonly TalosButtonGroupItemDirective[]>;
40
+ /** Child directives using TalosButtonDirective */
41
+ readonly buttons: _angular_core.Signal<readonly TalosButtonDirective[]>;
42
+ private selectionModel;
43
+ constructor();
44
+ private syncChildSelectionStates;
45
+ onClick(event: MouseEvent): void;
46
+ onKeydown(event: KeyboardEvent): void;
47
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TalosButtonGroupComponent, never>;
48
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TalosButtonGroupComponent, "talos-button-group", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "pill": { "alias": "pill"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, ["items", "buttons"], ["*"], true, never>;
49
+ }
50
+
51
+ declare class TalosButtonGroupModule {
52
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TalosButtonGroupModule, never>;
53
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<TalosButtonGroupModule, never, [typeof TalosButtonGroupComponent, typeof TalosButtonGroupItemDirective, typeof i3.TalosTooltipDirective, typeof i3.TalosTooltipComponent, typeof i4.TalosButtonDirective], [typeof TalosButtonGroupComponent, typeof TalosButtonGroupItemDirective, typeof i3.TalosTooltipDirective, typeof i3.TalosTooltipComponent, typeof i4.TalosButtonDirective]>;
54
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<TalosButtonGroupModule>;
55
+ }
56
+
57
+ export { TalosButtonGroupComponent, TalosButtonGroupItemDirective, TalosButtonGroupModule };
58
+ export type { ButtonGroupOrientation, ButtonGroupSelectionMode, ButtonGroupVariant };
59
+ //# sourceMappingURL=weeehaoooz-talos-ui-button-button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weeehaoooz-talos-ui-button-button-group.d.ts","sources":["../../../projects/talos-ui/button/button-group/button-group-item/button-group-item.directive.ts","../../../projects/talos-ui/button/button-group/button-group/button-group.component.ts","../../../projects/talos-ui/button/button-group/button-group.module.ts"],"mappings":";;;;;;AAEA,cASa,6BAA6B;yBACrB,UAAA,CAAA,WAAA;;oBAGL,aAAA,CAAA,WAAA;;uBAGG,aAAA,CAAA,cAAA;;AAGjB;oDAVW,6BAA6B;sDAA7B,6BAA6B;AAazC;;KCTW,sBAAsB;AAC5B,KAAM,kBAAkB;AACxB,KAAM,wBAAwB;AAEpC,cAqBa,yBAAyB;AACpC;;0BAGoB,aAAA,CAAA,WAAA,CAAA,sBAAA;;sBAGJ,aAAA,CAAA,WAAA,CAAA,kBAAA;;mBAGH,aAAA,CAAA,WAAA,CAAA,UAAA;;4BAGS,aAAA,CAAA,WAAA,CAAA,wBAAA;;oBAGR,aAAA,CAAA,WAAA;;mBAGD,aAAA,CAAA,WAAA;;uBAGI,aAAA,CAAA,WAAA;;oBAGH,aAAA,CAAA,MAAA,UAAA,6BAAA;;sBAGE,aAAA,CAAA,MAAA,UAAA,oBAAA;;;AAqChB;AAWA,mBAAe,UAAU;AA8CzB,qBAAiB,aAAa;oDA1HnB,yBAAyB;sDAAzB,yBAAyB;AAwJrC;;AC1LD,cAgBa,sBAAsB;oDAAtB,sBAAsB;qDAAtB,sBAAsB,iBAAAA,yBAAA,SAAAC,6BAAA,SAAA,EAAA,CAAA,qBAAA,SAAA,EAAA,CAAA,qBAAA,SAAA,EAAA,CAAA,oBAAA,WAAAD,yBAAA,SAAAC,6BAAA,SAAA,EAAA,CAAA,qBAAA,SAAA,EAAA,CAAA,qBAAA,SAAA,EAAA,CAAA,oBAAA;qDAAtB,sBAAsB;AAAI;;;;","names":["i1.TalosButtonGroupComponent","i2.TalosButtonGroupItemDirective"]}