@adea-ai/ui 0.128.2 → 0.128.4

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 (138) hide show
  1. package/dist/components/theme/appearance-panel.js +1 -1
  2. package/dist/components/theme/index.js +1 -1
  3. package/dist/components/theme/lazy.d.ts +15 -0
  4. package/dist/components/theme/lazy.d.ts.map +1 -0
  5. package/dist/components/theme/lazy.js +9 -0
  6. package/dist/components/theme/theme-catalogue-source.d.ts +15 -0
  7. package/dist/components/theme/theme-catalogue-source.d.ts.map +1 -0
  8. package/dist/components/theme/theme-catalogue-source.js +51 -0
  9. package/dist/components/theme/theme-catalogue-source.js.map +1 -0
  10. package/dist/components/theme/theme-document-core.d.ts +123 -0
  11. package/dist/components/theme/theme-document-core.d.ts.map +1 -0
  12. package/dist/components/theme/{theme-document.js → theme-document-core.js} +12 -12
  13. package/dist/components/theme/theme-document-core.js.map +1 -0
  14. package/dist/components/theme/theme-document.d.ts +8 -107
  15. package/dist/components/theme/theme-document.d.ts.map +1 -1
  16. package/dist/components/theme/theme-persistence.d.ts +1 -1
  17. package/dist/components/theme/theme-persistence.d.ts.map +1 -1
  18. package/dist/components/theme/theme-persistence.js +9 -6
  19. package/dist/components/theme/theme-persistence.js.map +1 -1
  20. package/dist/components/theme/theme-provider-core.d.ts +19 -0
  21. package/dist/components/theme/theme-provider-core.d.ts.map +1 -0
  22. package/dist/components/theme/theme-provider-core.js +28 -0
  23. package/dist/components/theme/theme-provider-core.js.map +1 -0
  24. package/dist/components/theme/theme-provider-lazy.d.ts +28 -0
  25. package/dist/components/theme/theme-provider-lazy.d.ts.map +1 -0
  26. package/dist/components/theme/theme-provider-lazy.js +36 -0
  27. package/dist/components/theme/theme-provider-lazy.js.map +1 -0
  28. package/dist/components/theme/theme-provider-value.d.ts +175 -0
  29. package/dist/components/theme/theme-provider-value.d.ts.map +1 -0
  30. package/dist/components/theme/theme-provider-value.js +200 -0
  31. package/dist/components/theme/theme-provider-value.js.map +1 -0
  32. package/dist/components/theme/theme-provider.d.ts +11 -136
  33. package/dist/components/theme/theme-provider.d.ts.map +1 -1
  34. package/dist/components/theme/theme-provider.js +27 -149
  35. package/dist/components/theme/theme-provider.js.map +1 -1
  36. package/dist/components/theme/theme-script.js +4 -3
  37. package/dist/components/theme/theme-script.js.map +1 -1
  38. package/dist/components/theme/theme-state-core.d.ts +248 -0
  39. package/dist/components/theme/theme-state-core.d.ts.map +1 -0
  40. package/dist/components/theme/{theme-state.js → theme-state-core.js} +8 -7
  41. package/dist/components/theme/theme-state-core.js.map +1 -0
  42. package/dist/components/theme/theme-state.d.ts +8 -214
  43. package/dist/components/theme/theme-state.d.ts.map +1 -1
  44. package/dist/components/theme/theme-toggle.js.map +1 -1
  45. package/dist/index.js +8 -4
  46. package/dist/lib/accent-presets.d.ts +35 -0
  47. package/dist/lib/accent-presets.d.ts.map +1 -0
  48. package/dist/lib/accent-presets.js +20 -0
  49. package/dist/lib/accent-presets.js.map +1 -0
  50. package/dist/lib/theme-catalogue.d.ts +3 -0
  51. package/dist/lib/theme-catalogue.d.ts.map +1 -0
  52. package/dist/lib/theme-catalogue.js +22 -0
  53. package/dist/lib/theme-catalogue.js.map +1 -0
  54. package/dist/lib/theme-css.d.ts +43 -0
  55. package/dist/lib/theme-css.d.ts.map +1 -0
  56. package/dist/lib/theme-css.js +167 -0
  57. package/dist/lib/theme-css.js.map +1 -0
  58. package/dist/lib/theme-defaults.d.ts +46 -0
  59. package/dist/lib/theme-defaults.d.ts.map +1 -0
  60. package/dist/lib/theme-defaults.generated.d.ts +13 -0
  61. package/dist/lib/theme-defaults.generated.d.ts.map +1 -0
  62. package/dist/lib/theme-defaults.generated.js +318 -0
  63. package/dist/lib/theme-defaults.generated.js.map +1 -0
  64. package/dist/lib/theme-defaults.js +47 -0
  65. package/dist/lib/theme-defaults.js.map +1 -0
  66. package/dist/lib/theme-engine-light.d.ts +3 -0
  67. package/dist/lib/theme-engine-light.d.ts.map +1 -0
  68. package/dist/lib/theme-engine-light.js +75 -0
  69. package/dist/lib/theme-engine-light.js.map +1 -0
  70. package/dist/lib/theme-engine.d.ts +69 -0
  71. package/dist/lib/theme-engine.d.ts.map +1 -0
  72. package/dist/lib/theme-engine.js +33 -0
  73. package/dist/lib/theme-engine.js.map +1 -0
  74. package/dist/lib/theme-records.d.ts +39 -0
  75. package/dist/lib/theme-records.d.ts.map +1 -0
  76. package/dist/lib/theme-records.js +178 -0
  77. package/dist/lib/theme-records.js.map +1 -0
  78. package/dist/lib/themes.d.ts +16 -60
  79. package/dist/lib/themes.d.ts.map +1 -1
  80. package/dist/lib/themes.js +23 -322
  81. package/dist/lib/themes.js.map +1 -1
  82. package/dist/lib/tokens.d.ts +1 -25
  83. package/dist/lib/tokens.d.ts.map +1 -1
  84. package/dist/lib/tokens.js +1 -24
  85. package/dist/lib/tokens.js.map +1 -1
  86. package/dist/r/lib.json +40 -0
  87. package/dist/r/registry.json +75 -0
  88. package/dist/r/src/components/theme/lazy.ts +35 -0
  89. package/dist/r/src/components/theme/theme-catalogue-source.ts +59 -0
  90. package/dist/r/src/components/theme/theme-document-core.ts +262 -0
  91. package/dist/r/src/components/theme/theme-document.ts +23 -240
  92. package/dist/r/src/components/theme/theme-persistence.ts +14 -6
  93. package/dist/r/src/components/theme/theme-provider-core.tsx +40 -0
  94. package/dist/r/src/components/theme/theme-provider-lazy.tsx +34 -0
  95. package/dist/r/src/components/theme/theme-provider-value.ts +445 -0
  96. package/dist/r/src/components/theme/theme-provider.tsx +23 -346
  97. package/dist/r/src/components/theme/theme-script.ts +3 -3
  98. package/dist/r/src/components/theme/theme-state-core.ts +364 -0
  99. package/dist/r/src/components/theme/theme-state.ts +10 -329
  100. package/dist/r/src/components/theme/theme-toggle.tsx +1 -1
  101. package/dist/r/src/lib/accent-presets.ts +54 -0
  102. package/dist/r/src/lib/theme-catalogue.ts +26 -0
  103. package/dist/r/src/lib/theme-css.ts +201 -0
  104. package/dist/r/src/lib/theme-defaults.generated.ts +319 -0
  105. package/dist/r/src/lib/theme-defaults.ts +79 -0
  106. package/dist/r/src/lib/theme-engine-light.ts +117 -0
  107. package/dist/r/src/lib/theme-engine.ts +111 -0
  108. package/dist/r/src/lib/theme-records.ts +205 -0
  109. package/dist/r/src/lib/themes.ts +30 -375
  110. package/dist/r/src/lib/tokens.ts +1 -35
  111. package/dist/r/theming.json +35 -0
  112. package/package.json +10 -2
  113. package/registry.json +75 -0
  114. package/src/components/theme/lazy.ts +35 -0
  115. package/src/components/theme/theme-catalogue-source.ts +59 -0
  116. package/src/components/theme/theme-document-core.ts +262 -0
  117. package/src/components/theme/theme-document.ts +23 -240
  118. package/src/components/theme/theme-persistence.ts +14 -6
  119. package/src/components/theme/theme-provider-core.tsx +40 -0
  120. package/src/components/theme/theme-provider-lazy.tsx +34 -0
  121. package/src/components/theme/theme-provider-value.ts +445 -0
  122. package/src/components/theme/theme-provider.tsx +23 -346
  123. package/src/components/theme/theme-script.ts +3 -3
  124. package/src/components/theme/theme-state-core.ts +364 -0
  125. package/src/components/theme/theme-state.ts +10 -329
  126. package/src/components/theme/theme-toggle.tsx +1 -1
  127. package/src/lib/accent-presets.ts +54 -0
  128. package/src/lib/theme-catalogue.ts +26 -0
  129. package/src/lib/theme-css.ts +201 -0
  130. package/src/lib/theme-defaults.generated.ts +319 -0
  131. package/src/lib/theme-defaults.ts +79 -0
  132. package/src/lib/theme-engine-light.ts +117 -0
  133. package/src/lib/theme-engine.ts +111 -0
  134. package/src/lib/theme-records.ts +205 -0
  135. package/src/lib/themes.ts +30 -375
  136. package/src/lib/tokens.ts +1 -35
  137. package/dist/components/theme/theme-document.js.map +0 -1
  138. package/dist/components/theme/theme-state.js.map +0 -1
@@ -0,0 +1,39 @@
1
+ /**
2
+ * One catalogue record, as this system's {@link ThemeVariant}.
3
+ *
4
+ * `variantFromRecord` and the lazy form the catalogue is built with live here, and not
5
+ * beside the 34-theme table in `lib/themes.ts`, because a bundler places a module
6
+ * whole: a host that imports `variantFromRecord` from the same module as the table
7
+ * ships the table with it. This module reads a record it is handed and imports no
8
+ * catalogue, so a start-up path that only turns a stored record into a variant
9
+ * (an imported theme, a reconstruction) stays small. `lib/themes.ts` re-exports
10
+ * `variantFromRecord`, so `@adea-ai/ui/lib/themes` keeps working; the lazy start-up
11
+ * gate (`check:theme-startup`) holds the split in place.
12
+ *
13
+ * It does import `@adea-ai/themes` for the projection helpers (`chartSeries`,
14
+ * `tint`, `shadcnVariables`…), none of which reads the table of themes.
15
+ */
16
+ import { type AdeaThemeRecord } from '@adea-ai/themes';
17
+ import type { ThemeVariant } from './themes';
18
+ /**
19
+ * The design system's view of one catalogue record, built in full and at once.
20
+ *
21
+ * For a host that holds a record the catalogue does not — an imported theme, a
22
+ * reconstruction from stored data — and wants a variant it can hand to
23
+ * `ThemeProvider`'s `themes`. It throws for a record the shadcn projection cannot
24
+ * map, here and now, rather than on first paint. The catalogue itself goes through
25
+ * {@link lazyVariantFromRecord} instead.
26
+ */
27
+ export declare function variantFromRecord(theme: AdeaThemeRecord): ThemeVariant;
28
+ /**
29
+ * {@link variantFromRecord} with the four derived palettes built on first read.
30
+ *
31
+ * Evaluating this module used to project all 34 catalogue themes up front, about
32
+ * 155 ms before a single one was needed, on the hydration path of every consumer.
33
+ * A page paints one variant, and a picker's labels and appearance are plain
34
+ * fields, so only a variant whose `colors`, `terminal`, `editor` or `chart` is read
35
+ * pays for them, once. The properties stay enumerable data-shaped accessors, so
36
+ * spreading, `Object.entries` and JSON see the same object they always did.
37
+ */
38
+ export declare function lazyVariantFromRecord(theme: AdeaThemeRecord): ThemeVariant;
39
+ //# sourceMappingURL=theme-records.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-records.d.ts","sourceRoot":"","sources":["../../src/lib/theme-records.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAML,KAAK,eAAe,EACrB,MAAM,iBAAiB,CAAA;AAExB,OAAO,KAAK,EAKV,YAAY,EACb,MAAM,UAAU,CAAA;AAuGjB;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CActE;AAoBD;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CAkB1E"}
@@ -0,0 +1,178 @@
1
+ import { chartSeries, shadcnDestructiveProjection, statusForeground, syntaxRoles, tint } from "@adea-ai/themes";
2
+ import { shadcnVariables } from "@adea-ai/themes/adapters/shadcn";
3
+ //#region src/lib/theme-records.ts
4
+ /**
5
+ * One catalogue record, as this system's {@link ThemeVariant}.
6
+ *
7
+ * `variantFromRecord` and the lazy form the catalogue is built with live here, and not
8
+ * beside the 34-theme table in `lib/themes.ts`, because a bundler places a module
9
+ * whole: a host that imports `variantFromRecord` from the same module as the table
10
+ * ships the table with it. This module reads a record it is handed and imports no
11
+ * catalogue, so a start-up path that only turns a stored record into a variant
12
+ * (an imported theme, a reconstruction) stays small. `lib/themes.ts` re-exports
13
+ * `variantFromRecord`, so `@adea-ai/ui/lib/themes` keeps working; the lazy start-up
14
+ * gate (`check:theme-startup`) holds the split in place.
15
+ *
16
+ * It does import `@adea-ai/themes` for the projection helpers (`chartSeries`,
17
+ * `tint`, `shadcnVariables`…), none of which reads the table of themes.
18
+ */
19
+ /**
20
+ * The shadcn-vocabulary roles of one catalogue entry.
21
+ *
22
+ * The expensive half of a variant: `shadcnVariables` projects the whole palette
23
+ * (about 4 ms a theme), which is why {@link lazyVariantFromRecord} defers it.
24
+ */
25
+ function colorsOf(theme) {
26
+ const projected = shadcnVariables(theme);
27
+ const token = (name) => {
28
+ const value = projected[`--${name}`];
29
+ if (!value) throw new Error(`${theme.id} has no shared shadcn projection for --${name}`);
30
+ return value;
31
+ };
32
+ const destructiveAction = shadcnDestructiveProjection(theme);
33
+ return {
34
+ background: token("background"),
35
+ foreground: token("foreground"),
36
+ card: token("card"),
37
+ cardForeground: token("card-foreground"),
38
+ popover: token("popover"),
39
+ popoverForeground: token("popover-foreground"),
40
+ primary: token("primary"),
41
+ primaryForeground: token("primary-foreground"),
42
+ secondary: token("secondary"),
43
+ secondaryForeground: token("secondary-foreground"),
44
+ muted: token("muted"),
45
+ mutedForeground: token("muted-foreground"),
46
+ accent: token("accent"),
47
+ accentForeground: token("accent-foreground"),
48
+ destructive: theme.colors.error,
49
+ destructiveForeground: statusForeground(theme, "error"),
50
+ destructiveSubtle: tint(theme.colors.error, theme.colors.background),
51
+ destructiveAction: destructiveAction.fill,
52
+ destructiveActionForeground: destructiveAction.foreground,
53
+ success: token("success"),
54
+ successForeground: statusForeground(theme, "success"),
55
+ successSubtle: tint(theme.colors.success, theme.colors.background),
56
+ warning: token("warning"),
57
+ warningForeground: statusForeground(theme, "warning"),
58
+ warningSubtle: tint(theme.colors.warning, theme.colors.background),
59
+ info: token("info"),
60
+ infoForeground: statusForeground(theme, "info"),
61
+ infoSubtle: tint(theme.colors.info, theme.colors.background),
62
+ border: token("border"),
63
+ input: token("input"),
64
+ ring: token("ring"),
65
+ sidebar: token("sidebar"),
66
+ sidebarForeground: token("sidebar-foreground"),
67
+ sidebarAccent: token("sidebar-accent"),
68
+ sidebarBorder: token("sidebar-border"),
69
+ sidebarMutedForeground: token("sidebar-muted-foreground")
70
+ };
71
+ }
72
+ function terminalOf(theme) {
73
+ return {
74
+ background: theme.colors.background,
75
+ foreground: theme.colors.foreground,
76
+ cursor: theme.cursor,
77
+ selection: theme.selection,
78
+ ...theme.ansi
79
+ };
80
+ }
81
+ function editorOf(theme) {
82
+ const syntax = syntaxRoles(theme);
83
+ return {
84
+ keyword: syntax.keyword,
85
+ string: syntax.string,
86
+ number: syntax.number,
87
+ comment: syntax.comment,
88
+ function: syntax.function,
89
+ variable: syntax.variable,
90
+ type: syntax.type,
91
+ tag: syntax.tag,
92
+ attribute: syntax.attribute,
93
+ operator: syntax.operator,
94
+ heading: syntax.heading,
95
+ link: syntax.link,
96
+ diffAdd: syntax.diffAdd,
97
+ diffDelete: syntax.diffDelete,
98
+ diffHunk: syntax.diffHunk,
99
+ searchMatch: syntax.searchMatch
100
+ };
101
+ }
102
+ function provenanceOf(theme) {
103
+ return {
104
+ source: theme.provenance.project,
105
+ url: theme.provenance.url,
106
+ license: theme.provenance.license
107
+ };
108
+ }
109
+ /**
110
+ * The design system's view of one catalogue record, built in full and at once.
111
+ *
112
+ * For a host that holds a record the catalogue does not — an imported theme, a
113
+ * reconstruction from stored data — and wants a variant it can hand to
114
+ * `ThemeProvider`'s `themes`. It throws for a record the shadcn projection cannot
115
+ * map, here and now, rather than on first paint. The catalogue itself goes through
116
+ * {@link lazyVariantFromRecord} instead.
117
+ */
118
+ function variantFromRecord(theme) {
119
+ return {
120
+ id: theme.id,
121
+ family: theme.family,
122
+ familyLabel: theme.familyLabel,
123
+ label: theme.label,
124
+ appearance: theme.appearance,
125
+ description: theme.description,
126
+ colors: colorsOf(theme),
127
+ terminal: terminalOf(theme),
128
+ editor: editorOf(theme),
129
+ chart: chartSeries(theme),
130
+ provenance: provenanceOf(theme)
131
+ };
132
+ }
133
+ /** Runs `build` on first call and returns that value from then on. A throw is not cached. */
134
+ function once(build) {
135
+ let built = false;
136
+ let value;
137
+ return () => {
138
+ if (!built) {
139
+ value = build();
140
+ built = true;
141
+ }
142
+ return value;
143
+ };
144
+ }
145
+ var lazy = (build) => ({
146
+ get: once(build),
147
+ enumerable: true
148
+ });
149
+ /**
150
+ * {@link variantFromRecord} with the four derived palettes built on first read.
151
+ *
152
+ * Evaluating this module used to project all 34 catalogue themes up front, about
153
+ * 155 ms before a single one was needed, on the hydration path of every consumer.
154
+ * A page paints one variant, and a picker's labels and appearance are plain
155
+ * fields, so only a variant whose `colors`, `terminal`, `editor` or `chart` is read
156
+ * pays for them, once. The properties stay enumerable data-shaped accessors, so
157
+ * spreading, `Object.entries` and JSON see the same object they always did.
158
+ */
159
+ function lazyVariantFromRecord(theme) {
160
+ return Object.defineProperties({
161
+ id: theme.id,
162
+ family: theme.family,
163
+ familyLabel: theme.familyLabel,
164
+ label: theme.label,
165
+ appearance: theme.appearance,
166
+ description: theme.description,
167
+ provenance: provenanceOf(theme)
168
+ }, {
169
+ colors: lazy(() => colorsOf(theme)),
170
+ terminal: lazy(() => terminalOf(theme)),
171
+ editor: lazy(() => editorOf(theme)),
172
+ chart: lazy(() => chartSeries(theme))
173
+ });
174
+ }
175
+ //#endregion
176
+ export { lazyVariantFromRecord, variantFromRecord };
177
+
178
+ //# sourceMappingURL=theme-records.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-records.js","names":[],"sources":["../../src/lib/theme-records.ts"],"sourcesContent":["/**\n * One catalogue record, as this system's {@link ThemeVariant}.\n *\n * `variantFromRecord` and the lazy form the catalogue is built with live here, and not\n * beside the 34-theme table in `lib/themes.ts`, because a bundler places a module\n * whole: a host that imports `variantFromRecord` from the same module as the table\n * ships the table with it. This module reads a record it is handed and imports no\n * catalogue, so a start-up path that only turns a stored record into a variant\n * (an imported theme, a reconstruction) stays small. `lib/themes.ts` re-exports\n * `variantFromRecord`, so `@adea-ai/ui/lib/themes` keeps working; the lazy start-up\n * gate (`check:theme-startup`) holds the split in place.\n *\n * It does import `@adea-ai/themes` for the projection helpers (`chartSeries`,\n * `tint`, `shadcnVariables`…), none of which reads the table of themes.\n */\nimport {\n chartSeries,\n shadcnDestructiveProjection,\n statusForeground,\n syntaxRoles,\n tint,\n type AdeaThemeRecord,\n} from '@adea-ai/themes'\nimport { shadcnVariables } from '@adea-ai/themes/adapters/shadcn'\nimport type {\n ThemeColors,\n ThemeEditorPalette,\n ThemeProvenance,\n ThemeTerminalPalette,\n ThemeVariant,\n} from './themes'\n\n/**\n * The shadcn-vocabulary roles of one catalogue entry.\n *\n * The expensive half of a variant: `shadcnVariables` projects the whole palette\n * (about 4 ms a theme), which is why {@link lazyVariantFromRecord} defers it.\n */\nfunction colorsOf(theme: AdeaThemeRecord): ThemeColors {\n const projected = shadcnVariables(theme)\n const token = (name: string): string => {\n const value = projected[`--${name}`]\n if (!value) throw new Error(`${theme.id} has no shared shadcn projection for --${name}`)\n return value\n }\n const destructiveAction = shadcnDestructiveProjection(theme)\n return {\n background: token('background'),\n foreground: token('foreground'),\n card: token('card'),\n cardForeground: token('card-foreground'),\n popover: token('popover'),\n popoverForeground: token('popover-foreground'),\n primary: token('primary'),\n primaryForeground: token('primary-foreground'),\n secondary: token('secondary'),\n secondaryForeground: token('secondary-foreground'),\n muted: token('muted'),\n mutedForeground: token('muted-foreground'),\n accent: token('accent'),\n accentForeground: token('accent-foreground'),\n // Preserve the UI's semantic error token. The Themes projection uses its\n // contrast-safe solid-action fill for --destructive; UI keeps that fill in\n // the separate destructiveAction pair below.\n destructive: theme.colors.error,\n destructiveForeground: statusForeground(theme, 'error'),\n destructiveSubtle: tint(theme.colors.error, theme.colors.background),\n destructiveAction: destructiveAction.fill,\n destructiveActionForeground: destructiveAction.foreground,\n success: token('success'),\n successForeground: statusForeground(theme, 'success'),\n successSubtle: tint(theme.colors.success, theme.colors.background),\n warning: token('warning'),\n warningForeground: statusForeground(theme, 'warning'),\n warningSubtle: tint(theme.colors.warning, theme.colors.background),\n info: token('info'),\n infoForeground: statusForeground(theme, 'info'),\n infoSubtle: tint(theme.colors.info, theme.colors.background),\n border: token('border'),\n input: token('input'),\n ring: token('ring'),\n sidebar: token('sidebar'),\n sidebarForeground: token('sidebar-foreground'),\n sidebarAccent: token('sidebar-accent'),\n sidebarBorder: token('sidebar-border'),\n sidebarMutedForeground: token('sidebar-muted-foreground'),\n }\n}\n\n// The embedded terminal uses the theme's own canvas rather than a palette of its\n// own. The ANSI colours came from the palette that produced the canvas, so they\n// were chosen against it; a terminal on a different background would be the one\n// surface in the application not lit by the active theme.\nfunction terminalOf(theme: AdeaThemeRecord): ThemeTerminalPalette {\n return {\n background: theme.colors.background,\n foreground: theme.colors.foreground,\n cursor: theme.cursor,\n selection: theme.selection,\n ...theme.ansi,\n }\n}\n\nfunction editorOf(theme: AdeaThemeRecord): ThemeEditorPalette {\n const syntax = syntaxRoles(theme)\n return {\n keyword: syntax.keyword,\n string: syntax.string,\n number: syntax.number,\n comment: syntax.comment,\n function: syntax.function,\n variable: syntax.variable,\n type: syntax.type,\n tag: syntax.tag,\n attribute: syntax.attribute,\n operator: syntax.operator,\n heading: syntax.heading,\n link: syntax.link,\n diffAdd: syntax.diffAdd,\n diffDelete: syntax.diffDelete,\n diffHunk: syntax.diffHunk,\n searchMatch: syntax.searchMatch,\n }\n}\n\nfunction provenanceOf(theme: AdeaThemeRecord): ThemeProvenance {\n return {\n source: theme.provenance.project,\n url: theme.provenance.url,\n license: theme.provenance.license,\n }\n}\n\n/**\n * The design system's view of one catalogue record, built in full and at once.\n *\n * For a host that holds a record the catalogue does not — an imported theme, a\n * reconstruction from stored data — and wants a variant it can hand to\n * `ThemeProvider`'s `themes`. It throws for a record the shadcn projection cannot\n * map, here and now, rather than on first paint. The catalogue itself goes through\n * {@link lazyVariantFromRecord} instead.\n */\nexport function variantFromRecord(theme: AdeaThemeRecord): ThemeVariant {\n return {\n id: theme.id,\n family: theme.family,\n familyLabel: theme.familyLabel,\n label: theme.label,\n appearance: theme.appearance,\n description: theme.description,\n colors: colorsOf(theme),\n terminal: terminalOf(theme),\n editor: editorOf(theme),\n chart: chartSeries(theme),\n provenance: provenanceOf(theme),\n }\n}\n\n/** Runs `build` on first call and returns that value from then on. A throw is not cached. */\nfunction once<T>(build: () => T): () => T {\n let built = false\n let value: T\n return () => {\n if (!built) {\n value = build()\n built = true\n }\n return value\n }\n}\n\nconst lazy = <T>(build: () => T): PropertyDescriptor => ({\n get: once(build),\n enumerable: true,\n})\n\n/**\n * {@link variantFromRecord} with the four derived palettes built on first read.\n *\n * Evaluating this module used to project all 34 catalogue themes up front, about\n * 155 ms before a single one was needed, on the hydration path of every consumer.\n * A page paints one variant, and a picker's labels and appearance are plain\n * fields, so only a variant whose `colors`, `terminal`, `editor` or `chart` is read\n * pays for them, once. The properties stay enumerable data-shaped accessors, so\n * spreading, `Object.entries` and JSON see the same object they always did.\n */\nexport function lazyVariantFromRecord(theme: AdeaThemeRecord): ThemeVariant {\n return Object.defineProperties(\n {\n id: theme.id,\n family: theme.family,\n familyLabel: theme.familyLabel,\n label: theme.label,\n appearance: theme.appearance,\n description: theme.description,\n provenance: provenanceOf(theme),\n },\n {\n colors: lazy(() => colorsOf(theme)),\n terminal: lazy(() => terminalOf(theme)),\n editor: lazy(() => editorOf(theme)),\n chart: lazy(() => chartSeries(theme)),\n }\n ) as ThemeVariant\n}\n"],"mappings":"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"}
@@ -34,7 +34,11 @@
34
34
  */
35
35
  import { type AccentPreset, type AdeaTheme, type AdeaThemeRecord } from '@adea-ai/themes';
36
36
  import { type AccentRoles } from './accent-roles';
37
+ export { accents } from './accent-presets';
37
38
  export { isThemeAccentId } from './theme-accents';
39
+ export { terminalCssVariables, tokensAsHex } from './theme-css';
40
+ export { defaultDarkThemeId, defaultLightThemeId, resolveVariant } from './theme-defaults';
41
+ export { variantFromRecord } from './theme-records';
38
42
  export type ThemeAppearance = 'light' | 'dark';
39
43
  /**
40
44
  * The surface and text roles, in shadcn's vocabulary.
@@ -158,43 +162,21 @@ export type ThemeVariant = {
158
162
  */
159
163
  tokens?: Readonly<Record<string, string>>;
160
164
  };
161
- /**
162
- * The design system's view of one catalogue record, built in full and at once.
163
- *
164
- * For a host that holds a record the catalogue does not — an imported theme, a
165
- * reconstruction from stored data — and wants a variant it can hand to
166
- * `ThemeProvider`'s `themes`. It throws for a record the shadcn projection cannot
167
- * map, here and now, rather than on first paint. The catalogue itself goes through
168
- * {@link lazyVariant} instead.
169
- */
170
- export declare function variantFromRecord(theme: AdeaThemeRecord): ThemeVariant;
171
165
  /**
172
166
  * A variant's `--primary-subtle`: the tint over `var(--primary)` at the strength its
173
167
  * catalogue record measures (`primarySubtleAlpha`). A variant that is not in the
174
168
  * catalogue has nothing to measure, and gets its appearance's ceiling.
175
169
  */
176
170
  export declare function primarySubtleFor(theme: Pick<ThemeVariant, 'id' | 'appearance'>): string;
177
- /** The catalogue, in catalogue order. */
178
- export declare const builtinThemes: readonly ThemeVariant[];
179
- export declare function themeById(id: string): ThemeVariant | undefined;
180
171
  /**
181
- * The variant a stored id means, or the default of the same appearance.
182
- *
183
- * An id the registry does not hold — an imported theme that was deleted, a
184
- * catalogue entry that was renamed — must still paint *something of the appearance
185
- * being shown*. Falling back to whichever variant happens to be first in the
186
- * registry painted a dark palette under a light `color-scheme` for a light id, so
187
- * the fallback is the appearance's own default, then any variant of that
188
- * appearance, then the registry's first entry only when it holds nothing else.
172
+ * The catalogue, in catalogue order.
189
173
  *
190
- * `registry` is the builtin catalogue plus whatever extras the host supplies; the
191
- * stored id is never rewritten, only resolved, so a host that keeps an unknown id
192
- * keeps resolving it if the theme comes back.
193
- *
194
- * The fallback order is translated from Zeron's `ThemeRegistry::resolve` (MIT,
195
- * Copyright (c) 2026 Wing); see NOTICE.
174
+ * The `@__PURE__` marks let a bundler drop the whole table, and with it the catalogue,
175
+ * from a consumer that imports only this module's catalogue-free helpers
176
+ * (`tokensAsHex`, `isThemeAccentId`, `resolveVariant`…) and never reads it.
196
177
  */
197
- export declare function resolveVariant(registry: readonly ThemeVariant[], id: string, appearance: ThemeAppearance): ThemeVariant;
178
+ export declare const builtinThemes: readonly ThemeVariant[];
179
+ export declare function themeById(id: string): ThemeVariant | undefined;
198
180
  /** The variants of one appearance, which is what a picker for that mode shows. */
199
181
  export declare function themesForAppearance(appearance: ThemeAppearance): readonly ThemeVariant[];
200
182
  /** The families in the catalogue, in catalogue order. */
@@ -203,8 +185,6 @@ export declare function themeFamilies(): {
203
185
  label: string;
204
186
  themes: ThemeVariant[];
205
187
  }[];
206
- /** The accent presets, in the order a picker should show them. */
207
- export declare const accents: readonly AccentPreset[];
208
188
  /**
209
189
  * The canonical catalogue records, in catalogue order.
210
190
  *
@@ -358,36 +338,14 @@ export declare function editorPaletteFor(theme: ThemeVariant, mode?: EditorRoles
358
338
  /**
359
339
  * The roles a variant sets, as CSS custom properties.
360
340
  *
361
- * The one place that knows the mapping from a theme's roles to this system's variable
362
- * names. A provider applies this; nothing else repeats it. The `--terminal-*` and
363
- * `--editor-*` ramps are presentations of the catalogue's ANSI and syntax data rather
364
- * than separate roles, which is why they are built here and not in the catalogue.
365
- *
366
- * `options.editor` picks the `--editor-*` projection ({@link EditorRolesMode}).
367
- * Absent it, the result is what it has always been; the generated `theme-variants.css`
368
- * and the design-system artifact are built without it.
341
+ * The mapping itself is `themeCssVariablesWith` in `theme-css.ts`; this binds it to
342
+ * the catalogue, which measures a theme's `--primary-subtle` strength
343
+ * ({@link primarySubtleFor}) and projects its floor editor ramp
344
+ * ({@link editorPaletteFor}). Absent `options`, the result is what it has always
345
+ * been; the generated `theme-variants.css` and the design-system artifact are built
346
+ * without it.
369
347
  */
370
348
  export declare function themeCssVariables(theme: ThemeVariant, options?: ThemeCssVariableOptions): Record<string, string>;
371
- /**
372
- * The `--terminal-*` properties of a variant: the palette a terminal paints.
373
- *
374
- * What a pinned terminal theme writes over the interface variant's own. Taken from
375
- * {@link themeCssVariables} rather than rebuilt, so the names, and a custom
376
- * variant's verbatim `tokens`, can never drift from what the interface variant
377
- * would have written for the same palette.
378
- */
379
- export declare function terminalCssVariables(theme: ThemeVariant): Record<string, string>;
380
- /**
381
- * Token values with every `oklch()` colour written as `#rrggbb`.
382
- *
383
- * For a host whose stylesheet, tests or native shell speak hex: the catalogue's
384
- * roles are `oklch()` strings, and this is the one conversion, gamut-mapped by the
385
- * catalogue's own `oklchToHex`. A value that is already hex, carries alpha
386
- * (`rgba()`), or is not a plain colour (`color-mix()`, `var()`) is left byte for
387
- * byte, because converting would either lose the alpha or be a guess. Suitable as
388
- * `ThemeProvider`'s `transformTokens`.
389
- */
390
- export declare function tokensAsHex(tokens: Readonly<Record<string, string>>): Record<string, string>;
391
349
  export type ThemeFinding = {
392
350
  themeId: string;
393
351
  role: string;
@@ -397,8 +355,6 @@ export type ThemeFinding = {
397
355
  export declare function validateTheme(theme: ThemeVariant): ThemeFinding[];
398
356
  /** Validates the whole registry, including the catalogue-level invariants. */
399
357
  export declare function validateThemeRegistry(themes?: readonly ThemeVariant[]): ThemeFinding[];
400
- export declare const defaultLightThemeId = "adea-light";
401
- export declare const defaultDarkThemeId = "adea-dark";
402
358
  /** Re-exported so a consumer measuring a colour does not need a second import. */
403
359
  export { contrastRatio } from '@adea-ai/themes';
404
360
  //# sourceMappingURL=themes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"themes.d.ts","sourceRoot":"","sources":["../../src/lib/themes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"themes.d.ts","sourceRoot":"","sources":["../../src/lib/themes.ts"],"names":[],"mappings":"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"}