sid-ui 0.0.0-stage → 0.1.1

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 (122) hide show
  1. package/README.md +54 -2
  2. package/package.json +51 -4
  3. package/src/brand/BrandFooter.tsx +45 -0
  4. package/src/brand/BrandHeading.tsx +24 -0
  5. package/src/brand/BrandLockup.tsx +47 -0
  6. package/src/brand/JoinedLogo.tsx +67 -0
  7. package/src/brand/JoinedMark.tsx +76 -0
  8. package/src/brand/geometry.ts +26 -0
  9. package/src/brand/index.ts +11 -0
  10. package/src/brand/name.ts +5 -0
  11. package/src/brand/paint.tsx +56 -0
  12. package/src/components/Action.tsx +44 -0
  13. package/src/components/AddressSelector.tsx +99 -0
  14. package/src/components/BarChart.tsx +132 -0
  15. package/src/components/Calendar.tsx +284 -0
  16. package/src/components/CalendarAgenda.tsx +87 -0
  17. package/src/components/CalendarMonth.tsx +223 -0
  18. package/src/components/CalendarSchedule.tsx +210 -0
  19. package/src/components/Card.tsx +80 -0
  20. package/src/components/Charts.tsx +64 -0
  21. package/src/components/Chat.tsx +35 -0
  22. package/src/components/CitySelector.tsx +81 -0
  23. package/src/components/Clock.tsx +196 -0
  24. package/src/components/CodeInput.tsx +183 -0
  25. package/src/components/Container.tsx +20 -0
  26. package/src/components/Content.tsx +50 -0
  27. package/src/components/Data.tsx +43 -0
  28. package/src/components/DataInput.tsx +107 -0
  29. package/src/components/DateField.tsx +162 -0
  30. package/src/components/DonutChart.tsx +123 -0
  31. package/src/components/Drawer.tsx +110 -0
  32. package/src/components/Feedback.tsx +37 -0
  33. package/src/components/FileUploader.tsx +377 -0
  34. package/src/components/FunnelChart.tsx +83 -0
  35. package/src/components/Glyph.tsx +330 -0
  36. package/src/components/GoogleSignIn.tsx +67 -0
  37. package/src/components/GridSystem.tsx +131 -0
  38. package/src/components/HeatmapCalendar.tsx +167 -0
  39. package/src/components/KanbanBoard.tsx +421 -0
  40. package/src/components/Kpi.tsx +61 -0
  41. package/src/components/LayoutPrimitives.tsx +86 -0
  42. package/src/components/Lists.tsx +19 -0
  43. package/src/components/LocationSelector.tsx +49 -0
  44. package/src/components/MessageList.tsx +80 -0
  45. package/src/components/Nav.tsx +69 -0
  46. package/src/components/Navigation.tsx +52 -0
  47. package/src/components/Notification.tsx +115 -0
  48. package/src/components/NotificationTrigger.tsx +248 -0
  49. package/src/components/Overlay.tsx +50 -0
  50. package/src/components/Page.tsx +143 -0
  51. package/src/components/PageTabs.tsx +28 -0
  52. package/src/components/PickerShell.tsx +138 -0
  53. package/src/components/PillNav.tsx +194 -0
  54. package/src/components/Primitives.tsx +30 -0
  55. package/src/components/Rating.tsx +78 -0
  56. package/src/components/Responsive.tsx +128 -0
  57. package/src/components/ResponsiveFrame.tsx +122 -0
  58. package/src/components/Segment.tsx +190 -0
  59. package/src/components/Sparkline.tsx +52 -0
  60. package/src/components/StateSelector.tsx +39 -0
  61. package/src/components/Sticky.tsx +95 -0
  62. package/src/components/Table.tsx +344 -0
  63. package/src/components/ThemeToggle.tsx +48 -0
  64. package/src/components/Tile.tsx +23 -0
  65. package/src/components/TimeColumns.tsx +155 -0
  66. package/src/components/TimeDial.tsx +260 -0
  67. package/src/components/TimeField.tsx +196 -0
  68. package/src/components/TimeInput.tsx +213 -0
  69. package/src/components/TimeSlots.tsx +83 -0
  70. package/src/components/Timeline.tsx +111 -0
  71. package/src/components/TokenDemo.tsx +378 -0
  72. package/src/components/Tree.tsx +283 -0
  73. package/src/components/TrendChart.tsx +211 -0
  74. package/src/components/breakpoints.ts +42 -0
  75. package/src/components/calendarTypes.ts +26 -0
  76. package/src/components/chartMath.ts +125 -0
  77. package/src/components/chartParts.tsx +116 -0
  78. package/src/components/codeInputRules.ts +58 -0
  79. package/src/components/date.ts +87 -0
  80. package/src/components/hooks.ts +53 -0
  81. package/src/components/index.ts +195 -0
  82. package/src/components/kanban.ts +78 -0
  83. package/src/components/motion.ts +78 -0
  84. package/src/components/places-search.tsx +73 -0
  85. package/src/components/places.ts +209 -0
  86. package/src/components/size.ts +3 -0
  87. package/src/components/time.ts +83 -0
  88. package/src/components/useFileDrop.ts +104 -0
  89. package/src/places/geoapify.ts +129 -0
  90. package/src/styles/astryx.css +5 -0
  91. package/src/styles/components/brand.css +98 -0
  92. package/src/styles/components/calendar.css +680 -0
  93. package/src/styles/components/charts.css +659 -0
  94. package/src/styles/components/code-input.css +233 -0
  95. package/src/styles/components/google.css +11 -0
  96. package/src/styles/components/message-list.css +153 -0
  97. package/src/styles/components/notification.css +350 -0
  98. package/src/styles/components/picker.css +114 -0
  99. package/src/styles/components/pill-nav.css +179 -0
  100. package/src/styles/components/responsive.css +419 -0
  101. package/src/styles/components/sticky.css +23 -0
  102. package/src/styles/components/table.css +267 -0
  103. package/src/styles/components/time.css +526 -0
  104. package/src/styles/components/timeline.css +426 -0
  105. package/src/styles/components/tree.css +269 -0
  106. package/src/styles/components.css +423 -0
  107. package/src/styles/joined.css +4 -0
  108. package/src/styles/theme.css +79 -0
  109. package/src/styles/tokens.css +338 -0
  110. package/src/theme/JoinedProvider.tsx +50 -0
  111. package/src/theme/index.ts +3 -0
  112. package/src/theme/joined.d.ts +11 -0
  113. package/src/theme/joined.js +569 -0
  114. package/src/theme/joined.theme.ts +74 -0
  115. package/src/theme/joined.variants.d.ts +16 -0
  116. package/src/theme/theme.css +786 -0
  117. package/styles/astryx.css +1 -0
  118. package/styles/components.css +1 -0
  119. package/styles/joined.css +1 -0
  120. package/styles/theme.css +1 -0
  121. package/styles/tokens.css +1 -0
  122. package/styles.css +1 -0
@@ -0,0 +1,569 @@
1
+ /**
2
+ * @generated by `astryx theme build` — do not edit manually.
3
+ * Source: src/theme/joined.theme.ts
4
+ * Command: astryx theme build src/theme/joined.theme.ts --out src/theme/theme.css
5
+ * CLI: @astryxdesign/cli@0.6.2
6
+ * Core: @astryxdesign/core@0.6.2
7
+ */
8
+
9
+ /**
10
+ * joined theme — built by `npx astryx theme build`
11
+ * Import the CSS file alongside this module:
12
+ *
13
+ * import { joinedTheme } from './joined';
14
+ * import './joined.css';
15
+ */
16
+ export const joinedTheme = {
17
+ name: "joined",
18
+ __built: true,
19
+ tokens: {
20
+ "--font-size-4xs": "0.375rem",
21
+ "--font-size-3xs": "0.4375rem",
22
+ "--font-size-2xs": "0.5rem",
23
+ "--font-size-xs": "0.625rem",
24
+ "--font-size-sm": "0.75rem",
25
+ "--font-size-base": "0.875rem",
26
+ "--font-size-lg": "1.0625rem",
27
+ "--font-size-xl": "1.25rem",
28
+ "--font-size-2xl": "1.5rem",
29
+ "--font-size-3xl": "1.8125rem",
30
+ "--font-size-4xl": "2.1875rem",
31
+ "--font-size-5xl": "2.625rem",
32
+ "--text-heading-1-size": "var(--font-size-2xl)",
33
+ "--text-heading-1-weight": "var(--font-weight-semibold)",
34
+ "--text-heading-1-leading": "1.3333",
35
+ "--text-heading-2-size": "var(--font-size-xl)",
36
+ "--text-heading-2-weight": "var(--font-weight-semibold)",
37
+ "--text-heading-2-leading": "1.4",
38
+ "--text-heading-3-size": "var(--font-size-lg)",
39
+ "--text-heading-3-weight": "var(--font-weight-bold)",
40
+ "--text-heading-3-leading": "1.4118",
41
+ "--text-heading-4-size": "var(--font-size-base)",
42
+ "--text-heading-4-weight": "var(--font-weight-bold)",
43
+ "--text-heading-4-leading": "1.4286",
44
+ "--text-heading-5-size": "var(--font-size-sm)",
45
+ "--text-heading-5-weight": "var(--font-weight-semibold)",
46
+ "--text-heading-5-leading": "1.6667",
47
+ "--text-heading-6-size": "var(--font-size-xs)",
48
+ "--text-heading-6-weight": "var(--font-weight-semibold)",
49
+ "--text-heading-6-leading": "1.6",
50
+ "--text-body-size": "var(--font-size-base)",
51
+ "--text-body-weight": "var(--font-weight-normal)",
52
+ "--text-body-leading": "1.4286",
53
+ "--text-large-size": "var(--font-size-lg)",
54
+ "--text-large-weight": "var(--font-weight-semibold)",
55
+ "--text-large-leading": "1.4118",
56
+ "--text-label-size": "var(--font-size-base)",
57
+ "--text-label-weight": "var(--font-weight-medium)",
58
+ "--text-label-leading": "1.4286",
59
+ "--text-code-size": "var(--font-size-base)",
60
+ "--text-code-weight": "var(--font-weight-normal)",
61
+ "--text-code-leading": "1.4286",
62
+ "--text-supporting-size": "var(--font-size-sm)",
63
+ "--text-supporting-weight": "var(--font-weight-normal)",
64
+ "--text-supporting-leading": "1.6667",
65
+ "--text-display-1-size": "var(--font-size-5xl)",
66
+ "--text-display-1-weight": "var(--font-weight-normal)",
67
+ "--text-display-1-leading": "1.2381",
68
+ "--text-display-2-size": "var(--font-size-4xl)",
69
+ "--text-display-2-weight": "var(--font-weight-normal)",
70
+ "--text-display-2-leading": "1.2571",
71
+ "--text-display-3-size": "var(--font-size-3xl)",
72
+ "--text-display-3-weight": "var(--font-weight-normal)",
73
+ "--text-display-3-leading": "1.3793",
74
+ "--duration-fast-min": "95ms",
75
+ "--duration-fast": "125ms",
76
+ "--duration-fast-max": "165ms",
77
+ "--duration-medium-min": "225ms",
78
+ "--duration-medium": "300ms",
79
+ "--duration-medium-max": "400ms",
80
+ "--duration-slow-min": "525ms",
81
+ "--duration-slow": "700ms",
82
+ "--duration-slow-max": "935ms",
83
+ "--font-family-body":
84
+ 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif',
85
+ "--font-family-heading":
86
+ 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif',
87
+ "--font-family-code":
88
+ 'ui-monospace, "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
89
+ "--color-syntax-keyword": "light-dark(#6b187c, #efa8ff)",
90
+ "--color-syntax-string": "light-dark(#0b5615, #a4d6a3)",
91
+ "--color-syntax-comment": "light-dark(#6a6a6a, #9e9e9e)",
92
+ "--color-syntax-number": "light-dark(#733100, #ffb37e)",
93
+ "--color-syntax-function": "light-dark(#00458c, #a1caff)",
94
+ "--color-syntax-type": "light-dark(#6b187c, #efa8ff)",
95
+ "--color-syntax-variable": "light-dark(#111111, #e2e2e2)",
96
+ "--color-syntax-operator": "light-dark(#6a6a6a, #9e9e9e)",
97
+ "--color-syntax-constant": "light-dark(#733100, #ffb37e)",
98
+ "--color-syntax-tag": "light-dark(#8a0011, #ffaea7)",
99
+ "--color-syntax-attribute": "light-dark(#584400, #eec448)",
100
+ "--color-syntax-property": "light-dark(#005348, #90d7c8)",
101
+ "--color-syntax-punctuation": "light-dark(#6a6a6a, #9e9e9e)",
102
+ "--color-syntax-background": "light-dark(#ffffff, #111111)",
103
+ "--color-background-surface": "light-dark(#FBFCFF, #1A1B22)",
104
+ "--color-background-body": "light-dark(#EFF0FA, #0F1118)",
105
+ "--color-background-card": "light-dark(#FBFCFF, #1A1B22)",
106
+ "--color-background-popover": "light-dark(#FBFCFF, #2E3037)",
107
+ "--color-background-muted": "light-dark(#1A1B220D, #1A1B2280)",
108
+ "--color-accent": "light-dark(#1877F2, #2E89FF)",
109
+ "--color-accent-muted": "light-dark(#E7F3FF, #253C5A)",
110
+ "--color-neutral": "light-dark(#1A1B221A, #E0E2EC33)",
111
+ "--color-overlay": "light-dark(#1A1B2266, #1A1B2299)",
112
+ "--color-overlay-hover": "light-dark(#1A1B220D, #FFFFFF0D)",
113
+ "--color-overlay-pressed": "light-dark(#1A1B221A, #FFFFFF1A)",
114
+ "--color-text-primary": "light-dark(#1A1B22, #E0E2EC)",
115
+ "--color-text-secondary": "light-dark(#444652, #A8ABB9)",
116
+ "--color-text-disabled": "light-dark(#8E909E, #5B5E6B)",
117
+ "--color-text-accent": "light-dark(#003978, #A1CAFF)",
118
+ "--color-on-dark": "#ffffff",
119
+ "--color-on-light": "#111111",
120
+ "--color-on-accent": "#FFFFFF",
121
+ "--color-on-success": "light-dark(#ffffff, #111111)",
122
+ "--color-on-error": "light-dark(#ffffff, #111111)",
123
+ "--color-on-warning": "#111111",
124
+ "--color-icon-accent": "light-dark(#003978, #88BCFF)",
125
+ "--color-icon-primary": "light-dark(#1A1B22, #E0E2EC)",
126
+ "--color-icon-secondary": "light-dark(#444652, #A8ABB9)",
127
+ "--color-icon-disabled": "light-dark(#8E909E, #5B5E6B)",
128
+ "--color-success": "light-dark(#00490b, #a4d6a3)",
129
+ "--color-error": "light-dark(#76000c, #ffc4be)",
130
+ "--color-warning": "light-dark(#4b3900, #f8d36a)",
131
+ "--color-success-muted": "light-dark(#bce0bb, #90ca903D)",
132
+ "--color-error-muted": "light-dark(#ffc4be, #ff98903D)",
133
+ "--color-warning-muted": "light-dark(#fae19e, #e2b6233D)",
134
+ "--color-border": "light-dark(#1A1B221A, #EEF0FA1A)",
135
+ "--color-border-emphasized": "light-dark(#8E909E, #656875)",
136
+ "--color-skeleton": "light-dark(#A9AAB9, #434653)",
137
+ "--color-shadow": "light-dark(#0000001A, #0000004D)",
138
+ "--color-tint-hover": "light-dark(black, white)",
139
+ "--color-background-red": "light-dark(#ffc4be, #5b2b28)",
140
+ "--color-border-red": "light-dark(#ffaea7, #fa6762)",
141
+ "--color-icon-red": "light-dark(#76000c, #ff9890)",
142
+ "--color-text-red": "light-dark(#76000c, #ffaea7)",
143
+ "--color-background-orange": "light-dark(#ffc7a1, #503424)",
144
+ "--color-border-orange": "light-dark(#ffc7a1, #df843f)",
145
+ "--color-icon-orange": "light-dark(#622700, #ff9e55)",
146
+ "--color-text-orange": "light-dark(#622700, #ffb37e)",
147
+ "--color-background-yellow": "light-dark(#fae19e, #453a1c)",
148
+ "--color-border-yellow": "light-dark(#e3c36c, #c29900)",
149
+ "--color-icon-yellow": "light-dark(#4b3900, #e2b623)",
150
+ "--color-text-yellow": "light-dark(#4b3900, #eec448)",
151
+ "--color-background-green": "light-dark(#bce0bb, #2b422b)",
152
+ "--color-border-green": "light-dark(#aad4a9, #6ab26b)",
153
+ "--color-icon-green": "light-dark(#00490b, #90ca90)",
154
+ "--color-text-green": "light-dark(#00490b, #90ca90)",
155
+ "--color-background-teal": "light-dark(#a9e2d6, #28413c)",
156
+ "--color-border-teal": "light-dark(#90d7c8, #4fb1a0)",
157
+ "--color-icon-teal": "light-dark(#00463d, #81c9bb)",
158
+ "--color-text-teal": "light-dark(#00463d, #90d7c8)",
159
+ "--color-background-cyan": "light-dark(#9ae2f4, #274046)",
160
+ "--color-border-cyan": "light-dark(#85d5e9, #49adc4)",
161
+ "--color-icon-cyan": "light-dark(#004351, #71c7dd)",
162
+ "--color-text-cyan": "light-dark(#004351, #85d5e9)",
163
+ "--color-background-blue": "light-dark(#b9d7ff, #253c5a)",
164
+ "--color-border-blue": "light-dark(#a1caff, #5aa0f8)",
165
+ "--color-icon-blue": "light-dark(#003978, #88bcff)",
166
+ "--color-text-blue": "light-dark(#003978, #a1caff)",
167
+ "--color-background-purple": "light-dark(#f7d5ff, #4a2f51)",
168
+ "--color-border-purple": "light-dark(#f3bfff, #d885eb)",
169
+ "--color-icon-purple": "light-dark(#5c0e6c, #e496f6)",
170
+ "--color-text-purple": "light-dark(#5c0e6c, #eaacf8)",
171
+ "--color-background-pink": "light-dark(#ffc0d7, #572b3d)",
172
+ "--color-border-pink": "light-dark(#ffc0d7, #fc78b1)",
173
+ "--color-icon-pink": "light-dark(#70003f, #fd92bd)",
174
+ "--color-text-pink": "light-dark(#70003f, #ffa9ca)",
175
+ "--color-background-gray": "light-dark(#e2e2e2, #303030)",
176
+ "--color-border-gray": "light-dark(#d4d4d4, #262626)",
177
+ "--color-icon-gray": "light-dark(#474747, #9e9e9e)",
178
+ "--color-text-gray": "light-dark(#1b1b1b, #d4d4d4)",
179
+ "--radius-none": "0px",
180
+ "--radius-inner": "0.375rem",
181
+ "--radius-element": "0.625rem",
182
+ "--radius-container": "0.75rem",
183
+ "--radius-page": "1.75rem",
184
+ "--radius-full": "9999px",
185
+ "--shadow-low":
186
+ "0 2px 4px light-dark(oklch(0 0 0 / 5%), oklch(0 0 0 / 25%)), 0 4px 8px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 40%)), inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 8%))",
187
+ "--shadow-med":
188
+ "0 2px 4px light-dark(oklch(0 0 0 / 5%), oklch(0 0 0 / 35%)), 0 4px 12px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 50%)), inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 12%))",
189
+ "--shadow-high":
190
+ "0 4px 6px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 50%)), 0 12px 24px light-dark(oklch(0 0 0 / 15%), oklch(0 0 0 / 70%)), inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 15%))",
191
+ "--shadow-inset-hover": "inset 0px 0px 0px 2px #0074e24D",
192
+ "--shadow-inset-selected": "inset 0px 0px 0px 2px #0074e280",
193
+ "--shadow-inset-success": "inset 0px 0px 0px 2px #2f7d334D",
194
+ "--shadow-inset-warning": "inset 0px 0px 0px 2px #f8d36a4D",
195
+ "--shadow-inset-error": "inset 0px 0px 0px 2px #de47454D",
196
+ "--color-background-inverted": "light-dark(#1A1B22, #FBFCFF)",
197
+ "--color-track": "light-dark(#A9AAB9, #434653)",
198
+ },
199
+ localTokens: {
200
+ "--astryx-theme-neutral-color-status-fill-accent": "light-dark(#0074e2, #6d9cfe)",
201
+ "--astryx-theme-neutral-color-status-fill-success": "light-dark(#198100, #64af4c)",
202
+ "--astryx-theme-neutral-color-status-fill-warning": "#ffce2f",
203
+ "--astryx-theme-neutral-color-status-fill-error": "light-dark(#c9303a, #ff705d)",
204
+ "--astryx-theme-neutral-color-status-muted-accent": "light-dark(#b9d7ff, #88bcff3D)",
205
+ "--astryx-theme-neutral-color-on-tint-neutral": "light-dark(#fafafa4D, #0a0a0a4D)",
206
+ "--astryx-theme-neutral-color-on-tint-overlay-hover": "light-dark(#fafafa1A, #0a0a0a1A)",
207
+ "--astryx-theme-neutral-color-on-tint-overlay-pressed": "light-dark(#fafafa33, #0a0a0a33)",
208
+ "--astryx-theme-neutral-color-destructive-overlay-hover": "light-dark(#ff7f770D, #ee736c0D)",
209
+ "--astryx-theme-neutral-color-destructive-overlay-pressed": "light-dark(#ff7f771A, #ee736c1A)",
210
+ },
211
+ __localTokenOwners: {
212
+ "--astryx-theme-neutral-color-status-fill-accent": "neutral",
213
+ "--astryx-theme-neutral-color-status-fill-success": "neutral",
214
+ "--astryx-theme-neutral-color-status-fill-warning": "neutral",
215
+ "--astryx-theme-neutral-color-status-fill-error": "neutral",
216
+ "--astryx-theme-neutral-color-status-muted-accent": "neutral",
217
+ "--astryx-theme-neutral-color-on-tint-neutral": "neutral",
218
+ "--astryx-theme-neutral-color-on-tint-overlay-hover": "neutral",
219
+ "--astryx-theme-neutral-color-on-tint-overlay-pressed": "neutral",
220
+ "--astryx-theme-neutral-color-destructive-overlay-hover": "neutral",
221
+ "--astryx-theme-neutral-color-destructive-overlay-pressed": "neutral",
222
+ },
223
+ __localTokenLineage: ["neutral", "joined"],
224
+ components: {
225
+ heading: {
226
+ "level:1": {
227
+ fontFamily: "var(--font-family-heading)",
228
+ fontSize: "var(--text-heading-1-size)",
229
+ fontWeight: "var(--text-heading-1-weight)",
230
+ lineHeight: "var(--text-heading-1-leading)",
231
+ },
232
+ "level:2": {
233
+ fontFamily: "var(--font-family-heading)",
234
+ fontSize: "var(--text-heading-2-size)",
235
+ fontWeight: "var(--text-heading-2-weight)",
236
+ lineHeight: "var(--text-heading-2-leading)",
237
+ },
238
+ "level:3": {
239
+ fontFamily: "var(--font-family-heading)",
240
+ fontSize: "var(--text-heading-3-size)",
241
+ fontWeight: "var(--text-heading-3-weight)",
242
+ lineHeight: "var(--text-heading-3-leading)",
243
+ },
244
+ "level:4": {
245
+ fontFamily: "var(--font-family-heading)",
246
+ fontSize: "var(--text-heading-4-size)",
247
+ fontWeight: "var(--text-heading-4-weight)",
248
+ lineHeight: "var(--text-heading-4-leading)",
249
+ },
250
+ "level:5": {
251
+ fontFamily: "var(--font-family-heading)",
252
+ fontSize: "var(--text-heading-5-size)",
253
+ fontWeight: "var(--text-heading-5-weight)",
254
+ lineHeight: "var(--text-heading-5-leading)",
255
+ },
256
+ "level:6": {
257
+ fontFamily: "var(--font-family-heading)",
258
+ fontSize: "var(--text-heading-6-size)",
259
+ fontWeight: "var(--text-heading-6-weight)",
260
+ lineHeight: "var(--text-heading-6-leading)",
261
+ },
262
+ "type:display-1": {
263
+ fontFamily: "var(--font-family-heading)",
264
+ fontSize: "var(--text-display-1-size)",
265
+ lineHeight: "var(--text-display-1-leading)",
266
+ },
267
+ "type:display-2": {
268
+ fontFamily: "var(--font-family-heading)",
269
+ fontSize: "var(--text-display-2-size)",
270
+ lineHeight: "var(--text-display-2-leading)",
271
+ },
272
+ "type:display-3": {
273
+ fontFamily: "var(--font-family-heading)",
274
+ fontSize: "var(--text-display-3-size)",
275
+ lineHeight: "var(--text-display-3-leading)",
276
+ },
277
+ },
278
+ text: {
279
+ "type:body": {
280
+ fontFamily: "var(--font-family-body)",
281
+ fontSize: "var(--text-body-size)",
282
+ lineHeight: "var(--text-body-leading)",
283
+ },
284
+ "type:large": {
285
+ fontFamily: "var(--font-family-body)",
286
+ fontSize: "var(--text-large-size)",
287
+ lineHeight: "var(--text-large-leading)",
288
+ },
289
+ "type:label": {
290
+ fontFamily: "var(--font-family-body)",
291
+ fontSize: "var(--text-label-size)",
292
+ lineHeight: "var(--text-label-leading)",
293
+ },
294
+ "type:code": {
295
+ fontFamily: "var(--font-family-code)",
296
+ fontSize: "var(--text-code-size)",
297
+ lineHeight: "var(--text-code-leading)",
298
+ },
299
+ "type:supporting": {
300
+ fontFamily: "var(--font-family-body)",
301
+ fontSize: "var(--text-supporting-size)",
302
+ lineHeight: "var(--text-supporting-leading)",
303
+ },
304
+ "type:display-1": {
305
+ fontFamily: "var(--font-family-heading)",
306
+ fontSize: "var(--text-display-1-size)",
307
+ lineHeight: "var(--text-display-1-leading)",
308
+ },
309
+ "type:display-2": {
310
+ fontFamily: "var(--font-family-heading)",
311
+ fontSize: "var(--text-display-2-size)",
312
+ lineHeight: "var(--text-display-2-leading)",
313
+ },
314
+ "type:display-3": {
315
+ fontFamily: "var(--font-family-heading)",
316
+ fontSize: "var(--text-display-3-size)",
317
+ lineHeight: "var(--text-display-3-leading)",
318
+ },
319
+ },
320
+ button: {
321
+ "variant:destructive": {
322
+ backgroundColor: "var(--color-error-muted)",
323
+ color: "var(--color-error)",
324
+ "--color-overlay-hover": "var(--astryx-theme-neutral-color-destructive-overlay-hover)",
325
+ "--color-overlay-pressed": "var(--astryx-theme-neutral-color-destructive-overlay-pressed)",
326
+ },
327
+ },
328
+ badge: {
329
+ "variant:info": {
330
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-accent)",
331
+ color: "var(--color-on-accent)",
332
+ },
333
+ "variant:neutral": {
334
+ backgroundColor: "var(--color-background-gray)",
335
+ color: "var(--color-text-gray)",
336
+ },
337
+ "variant:success": {
338
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-success)",
339
+ color: "var(--color-on-success)",
340
+ },
341
+ "variant:warning": {
342
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-warning)",
343
+ color: "var(--color-on-warning)",
344
+ },
345
+ "variant:error": {
346
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-error)",
347
+ color: "var(--color-on-error)",
348
+ },
349
+ "variant:red": {
350
+ backgroundColor: "var(--color-background-red)",
351
+ color: "var(--color-text-red)",
352
+ },
353
+ "variant:orange": {
354
+ backgroundColor: "var(--color-background-orange)",
355
+ color: "var(--color-text-orange)",
356
+ },
357
+ "variant:yellow": {
358
+ backgroundColor: "var(--color-background-yellow)",
359
+ color: "var(--color-text-yellow)",
360
+ },
361
+ "variant:green": {
362
+ backgroundColor: "var(--color-background-green)",
363
+ color: "var(--color-text-green)",
364
+ },
365
+ "variant:teal": {
366
+ backgroundColor: "var(--color-background-teal)",
367
+ color: "var(--color-text-teal)",
368
+ },
369
+ "variant:cyan": {
370
+ backgroundColor: "var(--color-background-cyan)",
371
+ color: "var(--color-text-cyan)",
372
+ },
373
+ "variant:blue": {
374
+ backgroundColor: "var(--color-background-blue)",
375
+ color: "var(--color-text-blue)",
376
+ },
377
+ "variant:purple": {
378
+ backgroundColor: "var(--color-background-purple)",
379
+ color: "var(--color-text-purple)",
380
+ },
381
+ "variant:pink": {
382
+ backgroundColor: "var(--color-background-pink)",
383
+ color: "var(--color-text-pink)",
384
+ },
385
+ "variant:gray": {
386
+ backgroundColor: "var(--color-background-gray)",
387
+ color: "var(--color-text-gray)",
388
+ },
389
+ },
390
+ "status-dot": {
391
+ "variant:success": {
392
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-success)",
393
+ },
394
+ "variant:warning": {
395
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-warning)",
396
+ },
397
+ "variant:error": {
398
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-error)",
399
+ },
400
+ "variant:accent": {
401
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-accent)",
402
+ },
403
+ },
404
+ "avatar-status-dot": {
405
+ "variant:success": {
406
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-success)",
407
+ },
408
+ "variant:error": {
409
+ backgroundColor: "var(--astryx-theme-neutral-color-status-fill-error)",
410
+ },
411
+ },
412
+ "segmented-control": {
413
+ base: {
414
+ padding: "var(--spacing-1)",
415
+ borderRadius: "var(--radius-full)",
416
+ },
417
+ },
418
+ "segmented-control-item": {
419
+ "size:sm": {
420
+ height: "var(--size-element-sm)",
421
+ },
422
+ "size:md": {
423
+ height: "var(--size-element-md)",
424
+ },
425
+ "size:lg": {
426
+ height: "var(--size-element-lg)",
427
+ },
428
+ selected: {
429
+ boxShadow: "none",
430
+ },
431
+ },
432
+ banner: {
433
+ base: {
434
+ "--color-neutral": "var(--astryx-theme-neutral-color-on-tint-neutral)",
435
+ "--color-overlay-hover": "var(--astryx-theme-neutral-color-on-tint-overlay-hover)",
436
+ "--color-overlay-pressed": "var(--astryx-theme-neutral-color-on-tint-overlay-pressed)",
437
+ },
438
+ "status:info": {
439
+ "--color-accent-muted": "var(--astryx-theme-neutral-color-status-muted-accent)",
440
+ "--color-text-primary": "var(--color-text-blue)",
441
+ "--color-text-secondary": "var(--color-text-blue)",
442
+ "--color-accent": "var(--color-text-blue)",
443
+ },
444
+ "status:success": {
445
+ "--color-text-primary": "var(--color-text-green)",
446
+ "--color-text-secondary": "var(--color-text-green)",
447
+ "--color-success": "var(--color-text-green)",
448
+ },
449
+ "status:warning": {
450
+ "--color-text-primary": "var(--color-text-yellow)",
451
+ "--color-text-secondary": "var(--color-text-yellow)",
452
+ "--color-warning": "var(--color-text-yellow)",
453
+ },
454
+ "status:error": {
455
+ "--color-text-primary": "var(--color-text-red)",
456
+ "--color-text-secondary": "var(--color-text-red)",
457
+ "--color-error": "var(--color-text-red)",
458
+ },
459
+ },
460
+ "step-indicator": {
461
+ "status:accent": {
462
+ "--color-accent": "var(--astryx-theme-neutral-color-status-fill-accent)",
463
+ },
464
+ "status:success": {
465
+ "--color-success": "var(--astryx-theme-neutral-color-status-fill-success)",
466
+ },
467
+ "status:warning": {
468
+ "--color-warning": "var(--astryx-theme-neutral-color-status-fill-warning)",
469
+ },
470
+ "status:error": {
471
+ "--color-error": "var(--astryx-theme-neutral-color-status-fill-error)",
472
+ },
473
+ },
474
+ switch: {
475
+ base: {
476
+ "--color-background-gray": "var(--color-border-emphasized)",
477
+ },
478
+ },
479
+ "progress-bar": {
480
+ base: {
481
+ "--color-background-muted": "var(--color-border-emphasized)",
482
+ },
483
+ "variant:accent": {
484
+ "--color-accent": "var(--astryx-theme-neutral-color-status-fill-accent)",
485
+ },
486
+ "variant:success": {
487
+ "--color-success": "var(--astryx-theme-neutral-color-status-fill-success)",
488
+ },
489
+ "variant:warning": {
490
+ "--color-warning": "var(--astryx-theme-neutral-color-status-fill-warning)",
491
+ },
492
+ "variant:error": {
493
+ "--color-error": "var(--astryx-theme-neutral-color-status-fill-error)",
494
+ },
495
+ },
496
+ card: {
497
+ base: {
498
+ padding: "var(--spacing-3)",
499
+ },
500
+ },
501
+ section: {
502
+ base: {
503
+ padding: "var(--spacing-3)",
504
+ },
505
+ },
506
+ },
507
+ __onDark: {
508
+ tokens: {
509
+ "color-scheme": "dark",
510
+ "--color-text-primary": "var(--color-on-dark)",
511
+ "--color-icon-primary": "var(--color-on-dark)",
512
+ "--color-accent": "var(--color-on-dark)",
513
+ },
514
+ },
515
+ __onLight: {
516
+ tokens: {
517
+ "color-scheme": "light",
518
+ "--color-text-primary": "var(--color-on-light)",
519
+ "--color-icon-primary": "var(--color-on-light)",
520
+ "--color-accent": "var(--color-on-light)",
521
+ },
522
+ },
523
+ __adaptations: {
524
+ widthBreakpoints: {
525
+ sm: 640,
526
+ md: 768,
527
+ lg: 1024,
528
+ xl: 1280,
529
+ "2xl": 1536,
530
+ },
531
+ rules: [],
532
+ },
533
+ __axes: {
534
+ typography: {
535
+ scale: {
536
+ base: 14,
537
+ ratio: 1.2,
538
+ },
539
+ body: {
540
+ family: "system-ui",
541
+ fallbacks:
542
+ '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif',
543
+ },
544
+ heading: {
545
+ family: "system-ui",
546
+ fallbacks:
547
+ '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif',
548
+ weights: {
549
+ 3: "bold",
550
+ 4: "bold",
551
+ },
552
+ },
553
+ code: {
554
+ family: "ui-monospace",
555
+ fallbacks: '"SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
556
+ },
557
+ },
558
+ color: {
559
+ accent: ["#1877F2", "#2E89FF"],
560
+ neutralStyle: "cool",
561
+ },
562
+ motion: {
563
+ fast: 125,
564
+ medium: 300,
565
+ slow: 700,
566
+ ratio: 0.75,
567
+ },
568
+ },
569
+ };
@@ -0,0 +1,74 @@
1
+ import { defineTheme } from "@astryxdesign/core/theme";
2
+ import { neutralTheme } from "@astryxdesign/theme-neutral/built";
3
+
4
+ /** Meta / Facebook blue — light scheme primary */
5
+ export const ACCENT_LIGHT = "#1877F2";
6
+ /** Meta / Facebook blue — dark scheme primary */
7
+ export const ACCENT_DARK = "#2E89FF";
8
+
9
+ /** Soft Meta blue surfaces — light / dark */
10
+ export const ACCENT_MUTED_LIGHT = "#E7F3FF";
11
+ export const ACCENT_MUTED_DARK = "#253C5A";
12
+
13
+ /** Text / icon on blue series — light / dark */
14
+ export const ACCENT_INK_LIGHT = "#003978";
15
+ export const ACCENT_INK_DARK = "#A1CAFF";
16
+ export const ACCENT_ICON_DARK = "#88BCFF";
17
+
18
+ /** Platform system UI stack (no webfont). */
19
+ export const FONT_FAMILY_SYSTEM =
20
+ 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif';
21
+
22
+ /**
23
+ * Joined theme: Neutral structure with Meta blue primary and system fonts.
24
+ * Explicit accent tokens match the Joined blue series; `color.accent` keeps
25
+ * related neutrals cool-tinted from the same seed.
26
+ */
27
+ export const joinedTheme = defineTheme({
28
+ name: "joined",
29
+ extends: neutralTheme,
30
+ color: {
31
+ accent: [ACCENT_LIGHT, ACCENT_DARK],
32
+ neutralStyle: "cool",
33
+ },
34
+ typography: {
35
+ body: {
36
+ family: "system-ui",
37
+ fallbacks:
38
+ '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif',
39
+ },
40
+ heading: {
41
+ family: "system-ui",
42
+ fallbacks:
43
+ '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif',
44
+ weights: { 3: "bold", 4: "bold" },
45
+ },
46
+ code: {
47
+ family: "ui-monospace",
48
+ fallbacks: '"SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
49
+ },
50
+ },
51
+ tokens: {
52
+ "--color-accent": [ACCENT_LIGHT, ACCENT_DARK],
53
+ "--color-accent-muted": [ACCENT_MUTED_LIGHT, ACCENT_MUTED_DARK],
54
+ "--color-on-accent": "#FFFFFF",
55
+ "--color-text-accent": [ACCENT_INK_LIGHT, ACCENT_INK_DARK],
56
+ "--color-icon-accent": [ACCENT_INK_LIGHT, ACCENT_ICON_DARK],
57
+ "--font-family-body": FONT_FAMILY_SYSTEM,
58
+ "--font-family-heading": FONT_FAMILY_SYSTEM,
59
+ },
60
+ components: {
61
+ "segmented-control": {
62
+ base: {
63
+ padding: "var(--spacing-1)",
64
+ borderRadius: "var(--radius-full)",
65
+ },
66
+ },
67
+ "segmented-control-item": {
68
+ "size:sm": { height: "var(--size-element-sm)" },
69
+ "size:md": { height: "var(--size-element-md)" },
70
+ "size:lg": { height: "var(--size-element-lg)" },
71
+ selected: { boxShadow: "none" },
72
+ },
73
+ },
74
+ });
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @generated by `astryx theme build` — do not edit manually.
3
+ * Source: src/theme/joined.theme.ts
4
+ * Command: astryx theme build src/theme/joined.theme.ts --out src/theme/theme.css
5
+ * CLI: @astryxdesign/cli@0.6.2
6
+ * Core: @astryxdesign/core@0.6.2
7
+ */
8
+
9
+ // Generated by astryx theme build
10
+ export {};
11
+
12
+ declare module "@astryxdesign/core/Badge" {
13
+ interface BadgeVariantMap {
14
+ gray: true;
15
+ }
16
+ }