@trinityui/design-system 2.1.3 → 2.2.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 (220) hide show
  1. package/CHANGELOG.md +628 -1
  2. package/MIGRATION.md +118 -0
  3. package/README.md +546 -136
  4. package/dist/Legend.js +873 -868
  5. package/dist/app-shell.js +5705 -5757
  6. package/dist/charts.js +2399 -2407
  7. package/dist/components/AI/AIActions.d.ts +3 -3
  8. package/dist/components/AI/AIActions.d.ts.map +1 -1
  9. package/dist/components/AI/AIAvatar.d.ts +1 -1
  10. package/dist/components/AI/AIAvatar.d.ts.map +1 -1
  11. package/dist/components/AI/AIChainOfThought.d.ts +63 -188
  12. package/dist/components/AI/AIChainOfThought.d.ts.map +1 -1
  13. package/dist/components/AI/AIChainOfThought.types.d.ts +195 -0
  14. package/dist/components/AI/AIChainOfThought.types.d.ts.map +1 -0
  15. package/dist/components/AI/AIChainOfThought.utils.d.ts +20 -0
  16. package/dist/components/AI/AIChainOfThought.utils.d.ts.map +1 -0
  17. package/dist/components/AI/AIChat.d.ts +5 -5
  18. package/dist/components/AI/AIChat.d.ts.map +1 -1
  19. package/dist/components/AI/AIContainer.d.ts +3 -3
  20. package/dist/components/AI/AIContainer.d.ts.map +1 -1
  21. package/dist/components/AI/AIExplainability.d.ts +1 -1
  22. package/dist/components/AI/AIExplainability.d.ts.map +1 -1
  23. package/dist/components/AI/AILabel.d.ts +1 -1
  24. package/dist/components/AI/AILabel.d.ts.map +1 -1
  25. package/dist/components/AI/AIMessage.d.ts +15 -2
  26. package/dist/components/AI/AIMessage.d.ts.map +1 -1
  27. package/dist/components/AI/AIRelatedQuestions.d.ts +1 -1
  28. package/dist/components/AI/AIRelatedQuestions.d.ts.map +1 -1
  29. package/dist/components/AI/AIResponseRenderer.d.ts +33 -26
  30. package/dist/components/AI/AIResponseRenderer.d.ts.map +1 -1
  31. package/dist/components/AI/AISources.d.ts +2 -2
  32. package/dist/components/AI/AISources.d.ts.map +1 -1
  33. package/dist/components/AI/AISourcesPanel.d.ts +2 -2
  34. package/dist/components/AI/AISourcesPanel.d.ts.map +1 -1
  35. package/dist/components/AI/AITextBlock.d.ts +59 -19
  36. package/dist/components/AI/AITextBlock.d.ts.map +1 -1
  37. package/dist/components/AI/AIVisuals.d.ts +4 -4
  38. package/dist/components/AI/AIVisuals.d.ts.map +1 -1
  39. package/dist/components/AI/AIVoiceInput.d.ts +2 -2
  40. package/dist/components/AI/AIVoiceInput.d.ts.map +1 -1
  41. package/dist/components/AI/ChatHeader.d.ts +1 -1
  42. package/dist/components/AI/ChatHeader.d.ts.map +1 -1
  43. package/dist/components/AI/ChatHistoryList.d.ts +1 -1
  44. package/dist/components/AI/ChatHistoryList.d.ts.map +1 -1
  45. package/dist/components/AI/ChatThread.d.ts +21 -1
  46. package/dist/components/AI/ChatThread.d.ts.map +1 -1
  47. package/dist/components/AI/InsightEngine.d.ts +29 -1
  48. package/dist/components/AI/InsightEngine.d.ts.map +1 -1
  49. package/dist/components/AI/InsightEngineInput.d.ts +1 -1
  50. package/dist/components/AI/InsightEngineInput.d.ts.map +1 -1
  51. package/dist/components/AI/QueryInput.d.ts +1 -1
  52. package/dist/components/AI/QueryInput.d.ts.map +1 -1
  53. package/dist/components/AI/UserAvatar.d.ts +1 -1
  54. package/dist/components/AI/UserAvatar.d.ts.map +1 -1
  55. package/dist/components/AI/UserMessage.d.ts +1 -1
  56. package/dist/components/AI/UserMessage.d.ts.map +1 -1
  57. package/dist/components/AI/tokens.d.ts +120 -10
  58. package/dist/components/AI/tokens.d.ts.map +1 -1
  59. package/dist/components/AppLayout/AIFab.d.ts +1 -1
  60. package/dist/components/AppLayout/AIFab.d.ts.map +1 -1
  61. package/dist/components/AppLayout/AIFabLayout.deprecated.d.ts +3 -2
  62. package/dist/components/AppLayout/AIFabLayout.deprecated.d.ts.map +1 -1
  63. package/dist/components/AppLayout/AppLayout.d.ts +45 -1
  64. package/dist/components/AppLayout/AppLayout.d.ts.map +1 -1
  65. package/dist/components/AppLayout/InsightEnginePanel.d.ts +1 -1
  66. package/dist/components/AppLayout/InsightEnginePanel.d.ts.map +1 -1
  67. package/dist/components/AppLayout/ResizablePanel.d.ts +1 -1
  68. package/dist/components/AppLayout/ResizablePanel.d.ts.map +1 -1
  69. package/dist/components/AppLayout/ThreadHistorySidebar.d.ts +1 -1
  70. package/dist/components/AppLayout/ThreadHistorySidebar.d.ts.map +1 -1
  71. package/dist/components/Autocomplete/Autocomplete.d.ts +10 -1
  72. package/dist/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  73. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +57 -0
  74. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -0
  75. package/dist/components/Breadcrumbs/index.d.ts +3 -0
  76. package/dist/components/Breadcrumbs/index.d.ts.map +1 -0
  77. package/dist/components/Carousel/Carousel.d.ts +26 -1
  78. package/dist/components/Carousel/Carousel.d.ts.map +1 -1
  79. package/dist/components/Carousel/index.d.ts +1 -1
  80. package/dist/components/Carousel/index.d.ts.map +1 -1
  81. package/dist/components/Charts/AreaChart.d.ts +1 -1
  82. package/dist/components/Charts/AreaChart.d.ts.map +1 -1
  83. package/dist/components/Charts/BarChart.d.ts +1 -1
  84. package/dist/components/Charts/BarChart.d.ts.map +1 -1
  85. package/dist/components/Charts/ChartWrapper.d.ts +1 -1
  86. package/dist/components/Charts/ChartWrapper.d.ts.map +1 -1
  87. package/dist/components/Charts/ComposedChart.d.ts +1 -1
  88. package/dist/components/Charts/ComposedChart.d.ts.map +1 -1
  89. package/dist/components/Charts/CustomLegend.d.ts +6 -8
  90. package/dist/components/Charts/CustomLegend.d.ts.map +1 -1
  91. package/dist/components/Charts/CustomTooltip.d.ts +4 -3
  92. package/dist/components/Charts/CustomTooltip.d.ts.map +1 -1
  93. package/dist/components/Charts/LineChart.d.ts +1 -1
  94. package/dist/components/Charts/LineChart.d.ts.map +1 -1
  95. package/dist/components/Charts/PieChart.d.ts +1 -1
  96. package/dist/components/Charts/PieChart.d.ts.map +1 -1
  97. package/dist/components/Charts/RadialChart.d.ts +2 -2
  98. package/dist/components/Charts/RadialChart.d.ts.map +1 -1
  99. package/dist/components/Charts/ScatterChart.d.ts +1 -1
  100. package/dist/components/Charts/ScatterChart.d.ts.map +1 -1
  101. package/dist/components/Charts/Sparkline.d.ts +1 -1
  102. package/dist/components/Charts/Sparkline.d.ts.map +1 -1
  103. package/dist/components/Charts/highchartsUtils.d.ts.map +1 -1
  104. package/dist/components/ChipsInput/ChipsInput.d.ts +1 -1
  105. package/dist/components/ChipsInput/ChipsInput.d.ts.map +1 -1
  106. package/dist/components/ClearableTextField/ClearableTextField.d.ts +7 -1
  107. package/dist/components/ClearableTextField/ClearableTextField.d.ts.map +1 -1
  108. package/dist/components/Combobox/Combobox.d.ts +1 -1
  109. package/dist/components/Combobox/Combobox.d.ts.map +1 -1
  110. package/dist/components/CommandPalette/CommandPalette.d.ts +10 -1
  111. package/dist/components/CommandPalette/CommandPalette.d.ts.map +1 -1
  112. package/dist/components/Cron/Cron.d.ts +1 -1
  113. package/dist/components/Cron/Cron.d.ts.map +1 -1
  114. package/dist/components/DataCard/DataCard.d.ts +1 -1
  115. package/dist/components/DataCard/DataCard.d.ts.map +1 -1
  116. package/dist/components/DiffViewer/DiffViewer.d.ts +1 -1
  117. package/dist/components/DiffViewer/DiffViewer.d.ts.map +1 -1
  118. package/dist/components/DockLayout/DockLayout.d.ts +1 -1
  119. package/dist/components/DockLayout/DockLayout.d.ts.map +1 -1
  120. package/dist/components/DocumentCard/DocumentCard.d.ts +77 -0
  121. package/dist/components/DocumentCard/DocumentCard.d.ts.map +1 -0
  122. package/dist/components/DocumentCard/index.d.ts +3 -0
  123. package/dist/components/DocumentCard/index.d.ts.map +1 -0
  124. package/dist/components/FileUpload/FileUpload.d.ts +1 -1
  125. package/dist/components/FileUpload/FileUpload.d.ts.map +1 -1
  126. package/dist/components/FilterBar/FilterBar.d.ts +42 -1
  127. package/dist/components/FilterBar/FilterBar.d.ts.map +1 -1
  128. package/dist/components/Footer.d.ts +17 -2
  129. package/dist/components/Footer.d.ts.map +1 -1
  130. package/dist/components/GoToTop/GoToTop.d.ts +1 -1
  131. package/dist/components/GoToTop/GoToTop.d.ts.map +1 -1
  132. package/dist/components/HtmlToMui/HtmlToMui.d.ts +39 -0
  133. package/dist/components/HtmlToMui/HtmlToMui.d.ts.map +1 -0
  134. package/dist/components/HtmlToMui/StreamingHtmlToMui.d.ts +35 -0
  135. package/dist/components/HtmlToMui/StreamingHtmlToMui.d.ts.map +1 -0
  136. package/dist/components/HtmlToMui/index.d.ts +4 -0
  137. package/dist/components/HtmlToMui/index.d.ts.map +1 -0
  138. package/dist/components/IllustratedMessage.d.ts +2 -2
  139. package/dist/components/IllustratedMessage.d.ts.map +1 -1
  140. package/dist/components/LandingPage/LandingPage.d.ts +1 -1
  141. package/dist/components/LandingPage/LandingPage.d.ts.map +1 -1
  142. package/dist/components/MentionsInput/MentionsInput.d.ts +1 -1
  143. package/dist/components/MentionsInput/MentionsInput.d.ts.map +1 -1
  144. package/dist/components/Modal/Modal.d.ts +1 -1
  145. package/dist/components/Modal/Modal.d.ts.map +1 -1
  146. package/dist/components/NestedMenu/NestedMenu.d.ts +6 -0
  147. package/dist/components/NestedMenu/NestedMenu.d.ts.map +1 -1
  148. package/dist/components/OverflowTooltip/OverflowTooltip.d.ts +7 -3
  149. package/dist/components/OverflowTooltip/OverflowTooltip.d.ts.map +1 -1
  150. package/dist/components/PageHeader/PageHeader.d.ts +23 -5
  151. package/dist/components/PageHeader/PageHeader.d.ts.map +1 -1
  152. package/dist/components/Popper/Popper.d.ts +1 -1
  153. package/dist/components/Popper/Popper.d.ts.map +1 -1
  154. package/dist/components/PredictiveTextInput/PredictiveTextInput.d.ts +1 -1
  155. package/dist/components/PredictiveTextInput/PredictiveTextInput.d.ts.map +1 -1
  156. package/dist/components/SandboxedIframeRenderer/SandboxedIframeRenderer.d.ts +62 -0
  157. package/dist/components/SandboxedIframeRenderer/SandboxedIframeRenderer.d.ts.map +1 -0
  158. package/dist/components/SandboxedIframeRenderer/index.d.ts +3 -0
  159. package/dist/components/SandboxedIframeRenderer/index.d.ts.map +1 -0
  160. package/dist/components/SearchInput/SearchInput.d.ts +1 -1
  161. package/dist/components/SearchInput/SearchInput.d.ts.map +1 -1
  162. package/dist/components/SimpleTable/SimpleTable.d.ts +7 -2
  163. package/dist/components/SimpleTable/SimpleTable.d.ts.map +1 -1
  164. package/dist/components/SplitPane/SplitPane.d.ts +51 -7
  165. package/dist/components/SplitPane/SplitPane.d.ts.map +1 -1
  166. package/dist/components/SplitPane/index.d.ts +1 -1
  167. package/dist/components/SplitPane/index.d.ts.map +1 -1
  168. package/dist/components/StatusIndicator/StatusIndicator.d.ts +1 -1
  169. package/dist/components/StatusIndicator/StatusIndicator.d.ts.map +1 -1
  170. package/dist/components/Timeline/Timeline.d.ts +1 -1
  171. package/dist/components/Timeline/Timeline.d.ts.map +1 -1
  172. package/dist/components/Toast/Toast.d.ts +1 -1
  173. package/dist/components/Toast/Toast.d.ts.map +1 -1
  174. package/dist/components/TopNavHeader.d.ts +14 -2
  175. package/dist/components/TopNavHeader.d.ts.map +1 -1
  176. package/dist/components/TopNavWithSidebar.d.ts +34 -4
  177. package/dist/components/TopNavWithSidebar.d.ts.map +1 -1
  178. package/dist/components/Tour/Tour.d.ts +1 -1
  179. package/dist/components/Tour/Tour.d.ts.map +1 -1
  180. package/dist/components/TransferList/TransferList.d.ts +1 -1
  181. package/dist/components/TransferList/TransferList.d.ts.map +1 -1
  182. package/dist/components/TreeView/TreeView.d.ts +1 -1
  183. package/dist/components/TreeView/TreeView.d.ts.map +1 -1
  184. package/dist/components/index.d.ts +2 -2
  185. package/dist/components/index.d.ts.map +1 -1
  186. package/dist/components/navigation/components.d.ts +5 -5
  187. package/dist/components/navigation/components.d.ts.map +1 -1
  188. package/dist/components/shared/NavBar.styles.d.ts +65 -0
  189. package/dist/components/shared/NavBar.styles.d.ts.map +1 -0
  190. package/dist/components/shared/useResizable.d.ts +82 -0
  191. package/dist/components/shared/useResizable.d.ts.map +1 -0
  192. package/dist/components/shared/warnDeprecated.d.ts +30 -0
  193. package/dist/components/shared/warnDeprecated.d.ts.map +1 -0
  194. package/dist/components/templates/Dashboard/DashboardTemplate.d.ts +1 -1
  195. package/dist/components/templates/Dashboard/DashboardTemplate.d.ts.map +1 -1
  196. package/dist/components/templates/ListDetail/ListDetailTemplate.d.ts +1 -1
  197. package/dist/components/templates/ListDetail/ListDetailTemplate.d.ts.map +1 -1
  198. package/dist/components/templates/Settings/SettingsTemplate.d.ts +1 -1
  199. package/dist/components/templates/Settings/SettingsTemplate.d.ts.map +1 -1
  200. package/dist/data-table2.js +18194 -15721
  201. package/dist/data.js +116 -114
  202. package/dist/essentials.js +91 -89
  203. package/dist/form.d.ts.map +1 -1
  204. package/dist/forms.js +358 -45092
  205. package/dist/index.d.ts +44 -11
  206. package/dist/index.d.ts.map +1 -1
  207. package/dist/index.js +30203 -29843
  208. package/dist/theme.d.ts +4 -1
  209. package/dist/theme.d.ts.map +1 -1
  210. package/dist/theme.js +188 -161
  211. package/dist/tokens.d.ts +16 -0
  212. package/dist/tokens.d.ts.map +1 -1
  213. package/dist/tokens.js +1 -1
  214. package/dist/trinity.css +862 -1014
  215. package/package.json +69 -27
  216. package/dist/assets/design-system.css +0 -1
  217. package/dist/components/RichTextEditor/RichTextEditor.d.ts +0 -39
  218. package/dist/components/RichTextEditor/RichTextEditor.d.ts.map +0 -1
  219. package/dist/components/RichTextEditor/index.d.ts +0 -3
  220. package/dist/components/RichTextEditor/index.d.ts.map +0 -1
package/MIGRATION.md CHANGED
@@ -4,6 +4,124 @@ This document outlines breaking changes and migration paths for the Trinity Desi
4
4
 
5
5
  ---
6
6
 
7
+ ## `@trinityui/design-system-css` v2.5.0 — CSS is now token-generated
8
+
9
+ **Non-breaking for the 602 variable names shipped in v2.4.x.** Every CSS variable that existed in the hand-maintained `trinity.css` is still present, at the same name, with the same or WCAG-improved value.
10
+
11
+ ### What changed
12
+
13
+ The `dist/trinity.css` shipped in `@trinityui/design-system-css` is now **generated from `src/tokens.ts`** via `scripts/generate-css-from-tokens.ts`. The previous hand-maintained `src/styles/trinity.css` is retired (kept as `trinity.css.legacy` in the repo for one release as a reference).
14
+
15
+ ### What you get as a consumer
16
+
17
+ 1. **Brand / semantic colors** are always current. Token changes in `tokens.ts` (including the v2.2 WCAG contrast updates — see the v3.0 section below) now reach CSS-only consumers automatically.
18
+ 2. **New tokens added in TS land in CSS on next release**. For example, v2.2 added `--trinity-on-dark-hover` (rgba 15% white) and `--trinity-on-dark-strong-emphasis` (rgba 90% white) — both now available via the CSS package.
19
+ 3. **CI-gated drift check** (`scripts/check-token-drift.ts`) prevents future drift between `tokens.ts` and the generated CSS.
20
+
21
+ ### Updated values (applied automatically on upgrade)
22
+
23
+ | Variable | v2.4.x | v2.5.0 | Why |
24
+ |---|---|---|---|
25
+ | `--trinity-text-disabled` (light) | `#D4D4D8` | `#6B7280` | WCAG AA (1.9:1 → 4.83:1) |
26
+ | `--trinity-text-link` | `#27AAE1` | `#0E62CA` | WCAG AA (~2.5:1 → ~5.9:1) |
27
+ | `--trinity-status-success-text` | `#16A34A` | `#15803D` | WCAG AA (3.3:1 → 4.6:1) |
28
+ | `--trinity-status-warning-text` | `#D97706` | `#B45309` | WCAG AA (2.6:1 → 4.8:1) |
29
+ | `--trinity-status-info-text` | `#27AAE1` | `#0E62CA` | Consistency with text-link |
30
+ | `--trinity-border-default` | `#E5E7EB` | `#D4D4D8` | Token system update |
31
+ | `--trinity-border-subtle` | `#F4F4F5` | `#E5E7EB` | Token system update |
32
+ | `--trinity-border-strong` | `#9CA3AF` | `#6B7280` | WCAG 1.4.11 (3:1 for UI) |
33
+
34
+ ### New variables in v2.5.0
35
+
36
+ - `--trinity-on-dark-hover: rgba(255, 255, 255, 0.15)` — interactive hover on dark surfaces
37
+ - `--trinity-on-dark-strong-emphasis: rgba(255, 255, 255, 0.9)` — pressed/active state on dark
38
+
39
+ ### Rollback
40
+
41
+ If a consumer hits unexpected visual regressions:
42
+ - Pin to `@trinityui/design-system-css@2.4.1` in `package.json`
43
+ - Or override the specific variable locally, e.g. `--trinity-text-link: #27AAE1` in your app CSS
44
+
45
+ ### For contributors
46
+
47
+ Edit tokens in `src/tokens.ts`, then regenerate:
48
+
49
+ ```bash
50
+ pnpm build:css:sync # regenerates src/styles/trinity-generated.css
51
+ npx tsx scripts/check-token-drift.ts # CI gate
52
+ ```
53
+
54
+ The hand-maintained `src/styles/trinity.css.legacy` is kept one release as a reference but is not built or shipped. It will be removed in v2.6.
55
+
56
+ ---
57
+
58
+ ## v3.0.0 — Planned removals (deprecations sunset)
59
+
60
+ The following already-deprecated exports will be removed in **v3.0.0 (target: Q4 2026)**. All have drop-in replacements today, and each emits a dev-mode console warning on first render so accidental usage surfaces immediately.
61
+
62
+ ### Deprecation summary
63
+
64
+ | Removed in v3.0 | Replace with | Why |
65
+ |---|---|---|
66
+ | `OverflowToolTip` (capital T) | `OverflowTooltip` | Casing aligned with component filename; the alias is a runtime wrapper emitting a dev warning. |
67
+ | `QueryInput`, `QueryInputProps` | `InsightEngineInput`, `InsightEngineInputProps` | `InsightEngineInput` is the canonical AI entry surface. |
68
+ | `AIChatMessage`, `AIChatInput`, `AITypingIndicator`, `AIQuickReply` | `AIMessage`, `ChatThread`, `AIShimmer`, `AISuggestedAction` | Consolidated AI chat primitives; richer block rendering, `aria-live` streaming support, better accessibility. |
69
+ | `AIChatMessageProps`, `AIChatInputProps`, `AITypingIndicatorProps`, `AIQuickReplyProps`, `MessageRole` | Prop types from `AIMessage` / `ChatThread` / `AIResponseRenderer` | — |
70
+ | `AIFabLayout` | `AppLayout` with `navStyle="topnav"` + `aiTrigger="fab"` | Single unified layout API; removes duplicate FAB-wrapper component. |
71
+ | `VirtualizedAutocomplete`, `VirtualizedAutocompleteProps`, `VirtualizedAutocompleteHandle` | `Autocomplete`, `AutocompleteProps`, `AutocompleteHandle` | MUI's built-in virtualization covers both paths; dedicated export is redundant. |
72
+
73
+ ### Migration snippets
74
+
75
+ ```tsx
76
+ // Before (deprecated)
77
+ import {
78
+ OverflowToolTip, QueryInput, AIChatMessage, AIChatInput,
79
+ AITypingIndicator, AIQuickReply, AIFabLayout, VirtualizedAutocomplete,
80
+ } from '@trinityui/design-system';
81
+
82
+ // After
83
+ import {
84
+ OverflowTooltip, InsightEngineInput, AIMessage, ChatThread,
85
+ AIShimmer, AISuggestedAction, AppLayout, Autocomplete,
86
+ } from '@trinityui/design-system';
87
+
88
+ // AIFabLayout → AppLayout
89
+ <AppLayout navStyle="topnav" aiTrigger="fab">{children}</AppLayout>
90
+
91
+ // AIChatMessage → AIMessage (richer API)
92
+ <AIMessage response={response} streaming={isStreaming} />
93
+ ```
94
+
95
+ ### Deprecation signals
96
+
97
+ Three overlapping warning channels so accidental usage can't slip through:
98
+
99
+ 1. **IDE hint** — every deprecated export has a `@deprecated` JSDoc tag. Your IDE strikes through the name on hover and in autocomplete.
100
+ 2. **TypeScript warning** — the same JSDoc tag triggers `ts(6385)` "'X' is deprecated" in tsc output.
101
+ 3. **Runtime console warning** — in development builds only, each deprecated component emits one `console.warn` per session on first render. Production builds strip the warning.
102
+
103
+ If you're an end-user consuming Trinity via a framework that hides deprecation warnings, check your console in `NODE_ENV=development` mode before upgrading to v3.0.
104
+
105
+ ### Accessibility token updates (non-breaking default, visual change)
106
+
107
+ Neutral tokens:
108
+ - `semanticTokens.colors.text.disabled` moved from `gray[300]` (1.9:1 on white — failed WCAG AA) to `gray[500]` (4.83:1). Disabled text will render darker.
109
+ - `semanticTokens.colors.border.default` moved from `gray[200]` to `gray[300]` for improved perceptibility.
110
+ - `semanticTokens.colors.border.subtle` moved from `gray[100]` to `gray[200]`. Still decorative; see `docs/TOKEN_USAGE_RULES.md`.
111
+ - `semanticTokens.colors.border.strong` moved from `gray[400]` to `gray[500]` so it meets WCAG 1.4.11 (3:1) for interactive component boundaries.
112
+
113
+ Brand-color tokens (Option A from `docs/BRAND_COLOR_CONTRAST_PROPOSAL.md`):
114
+ - `semanticTokens.colors.text.link` moved from `azure[500]` `#27AAE1` (~2.5:1) to `azure[900]` `#0E62CA` (~5.9:1).
115
+ - `semanticTokens.colors.text.success` and `semanticTokens.colors.status.success.text` moved from `#16A34A` (3.3:1) to `#15803D` (~4.6:1).
116
+ - `semanticTokens.colors.text.warning` and `semanticTokens.colors.status.warning.text` moved from `#D97706` (2.6:1) to `#B45309` (~4.8:1).
117
+ - `semanticTokens.colors.status.info.text` moved from `azure[500]` to `azure[900]` for consistency with `text.link`.
118
+
119
+ Expect deeper saturation on inline links, success/warning messages, alert text, and toast body copy. If consumer code relied on the brighter brand values, pin them via explicit hex or `baseTokens.colors.azure[500]` at the call site.
120
+
121
+ If consumer code relied on the exact prior colors, pin them via `baseTokens.colors.gray[N]` at the call site.
122
+
123
+ ---
124
+
7
125
  ## v1.2.0 - Build Optimization (Breaking Change)
8
126
 
9
127
  ### Overview