@promptctl/rich-js 0.1.0 → 0.3.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 (158) hide show
  1. package/README.md +29 -15
  2. package/dist/core/cells.d.ts +83 -3
  3. package/dist/core/cells.d.ts.map +1 -1
  4. package/dist/core/cells.js +113 -1
  5. package/dist/core/cells.js.map +1 -1
  6. package/dist/core/console.d.ts +0 -1
  7. package/dist/core/console.d.ts.map +1 -1
  8. package/dist/core/console.js +20 -16
  9. package/dist/core/console.js.map +1 -1
  10. package/dist/core/highlighter.d.ts.map +1 -1
  11. package/dist/core/highlighter.js.map +1 -1
  12. package/dist/core/oklch.d.ts +106 -0
  13. package/dist/core/oklch.d.ts.map +1 -0
  14. package/dist/core/oklch.js +221 -0
  15. package/dist/core/oklch.js.map +1 -0
  16. package/dist/core/render.d.ts +26 -7
  17. package/dist/core/render.d.ts.map +1 -1
  18. package/dist/core/render.js +83 -15
  19. package/dist/core/render.js.map +1 -1
  20. package/dist/core/segment.d.ts +14 -1
  21. package/dist/core/segment.d.ts.map +1 -1
  22. package/dist/core/segment.js +28 -3
  23. package/dist/core/segment.js.map +1 -1
  24. package/dist/core/style.d.ts +11 -2
  25. package/dist/core/style.d.ts.map +1 -1
  26. package/dist/core/style.js +31 -18
  27. package/dist/core/style.js.map +1 -1
  28. package/dist/core/text.d.ts +20 -0
  29. package/dist/core/text.d.ts.map +1 -1
  30. package/dist/core/text.js +31 -0
  31. package/dist/core/text.js.map +1 -1
  32. package/dist/index.d.ts +11 -4
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +12 -3
  35. package/dist/index.js.map +1 -1
  36. package/dist/renderables/columns.d.ts.map +1 -1
  37. package/dist/renderables/columns.js +15 -22
  38. package/dist/renderables/columns.js.map +1 -1
  39. package/dist/renderables/layout.d.ts.map +1 -1
  40. package/dist/renderables/layout.js +8 -29
  41. package/dist/renderables/layout.js.map +1 -1
  42. package/dist/renderables/live.d.ts.map +1 -1
  43. package/dist/renderables/live.js +8 -7
  44. package/dist/renderables/live.js.map +1 -1
  45. package/dist/renderables/panel.d.ts +34 -0
  46. package/dist/renderables/panel.d.ts.map +1 -1
  47. package/dist/renderables/panel.js +66 -23
  48. package/dist/renderables/panel.js.map +1 -1
  49. package/dist/template-bindings/helpers.d.ts +25 -0
  50. package/dist/template-bindings/helpers.d.ts.map +1 -0
  51. package/dist/template-bindings/helpers.js +31 -0
  52. package/dist/template-bindings/helpers.js.map +1 -0
  53. package/dist/template-bindings/index.d.ts +57 -18
  54. package/dist/template-bindings/index.d.ts.map +1 -1
  55. package/dist/template-bindings/index.js +83 -18
  56. package/dist/template-bindings/index.js.map +1 -1
  57. package/dist/template-bindings/palette-funcs.d.ts +76 -0
  58. package/dist/template-bindings/palette-funcs.d.ts.map +1 -0
  59. package/dist/template-bindings/palette-funcs.js +157 -0
  60. package/dist/template-bindings/palette-funcs.js.map +1 -0
  61. package/dist/template-bindings/style-funcs.d.ts.map +1 -1
  62. package/dist/template-bindings/style-funcs.js +33 -27
  63. package/dist/template-bindings/style-funcs.js.map +1 -1
  64. package/dist/themes/colorMath.d.ts +40 -0
  65. package/dist/themes/colorMath.d.ts.map +1 -1
  66. package/dist/themes/colorMath.js +82 -1
  67. package/dist/themes/colorMath.js.map +1 -1
  68. package/dist/themes/data/catppuccin-frappe.d.ts +4 -0
  69. package/dist/themes/data/catppuccin-frappe.d.ts.map +1 -0
  70. package/dist/themes/data/catppuccin-frappe.js +159 -0
  71. package/dist/themes/data/catppuccin-frappe.js.map +1 -0
  72. package/dist/themes/data/catppuccin-macchiato.d.ts +4 -0
  73. package/dist/themes/data/catppuccin-macchiato.d.ts.map +1 -0
  74. package/dist/themes/data/catppuccin-macchiato.js +159 -0
  75. package/dist/themes/data/catppuccin-macchiato.js.map +1 -0
  76. package/dist/themes/data/cyberpunk.d.ts +18 -0
  77. package/dist/themes/data/cyberpunk.d.ts.map +1 -0
  78. package/dist/themes/data/cyberpunk.js +192 -0
  79. package/dist/themes/data/cyberpunk.js.map +1 -0
  80. package/dist/themes/data/default.d.ts +4 -0
  81. package/dist/themes/data/default.d.ts.map +1 -0
  82. package/dist/themes/data/default.js +159 -0
  83. package/dist/themes/data/default.js.map +1 -0
  84. package/dist/themes/data/index.d.ts +10 -3
  85. package/dist/themes/data/index.d.ts.map +1 -1
  86. package/dist/themes/data/index.js +24 -7
  87. package/dist/themes/data/index.js.map +1 -1
  88. package/dist/themes/data/svg-export.d.ts +4 -0
  89. package/dist/themes/data/svg-export.d.ts.map +1 -0
  90. package/dist/themes/data/svg-export.js +159 -0
  91. package/dist/themes/data/svg-export.js.map +1 -0
  92. package/dist/themes/data/types.d.ts +4 -3
  93. package/dist/themes/data/types.d.ts.map +1 -1
  94. package/dist/themes/registry.d.ts +29 -2
  95. package/dist/themes/registry.d.ts.map +1 -1
  96. package/dist/themes/registry.js +62 -12
  97. package/dist/themes/registry.js.map +1 -1
  98. package/dist/themes/terminalThemes.d.ts +29 -20
  99. package/dist/themes/terminalThemes.d.ts.map +1 -1
  100. package/dist/themes/terminalThemes.js +50 -249
  101. package/dist/themes/terminalThemes.js.map +1 -1
  102. package/dist/themes/transpose.d.ts +88 -0
  103. package/dist/themes/transpose.d.ts.map +1 -0
  104. package/dist/themes/transpose.js +139 -0
  105. package/dist/themes/transpose.js.map +1 -0
  106. package/dist/widgets/button.d.ts +8 -5
  107. package/dist/widgets/button.d.ts.map +1 -1
  108. package/dist/widgets/button.js +36 -11
  109. package/dist/widgets/button.js.map +1 -1
  110. package/dist/widgets/checkbox.d.ts +1 -2
  111. package/dist/widgets/checkbox.d.ts.map +1 -1
  112. package/dist/widgets/checkbox.js +20 -7
  113. package/dist/widgets/checkbox.js.map +1 -1
  114. package/dist/widgets/dropdown.d.ts +4 -3
  115. package/dist/widgets/dropdown.d.ts.map +1 -1
  116. package/dist/widgets/dropdown.js +109 -27
  117. package/dist/widgets/dropdown.js.map +1 -1
  118. package/dist/widgets/event-router.d.ts +6 -3
  119. package/dist/widgets/event-router.d.ts.map +1 -1
  120. package/dist/widgets/event-router.js +179 -68
  121. package/dist/widgets/event-router.js.map +1 -1
  122. package/dist/widgets/focus-manager.d.ts +2 -1
  123. package/dist/widgets/focus-manager.d.ts.map +1 -1
  124. package/dist/widgets/focus-manager.js +28 -9
  125. package/dist/widgets/focus-manager.js.map +1 -1
  126. package/dist/widgets/index.d.ts +2 -2
  127. package/dist/widgets/index.d.ts.map +1 -1
  128. package/dist/widgets/index.js +1 -1
  129. package/dist/widgets/index.js.map +1 -1
  130. package/dist/widgets/screen.d.ts +2 -0
  131. package/dist/widgets/screen.d.ts.map +1 -1
  132. package/dist/widgets/screen.js +148 -45
  133. package/dist/widgets/screen.js.map +1 -1
  134. package/dist/widgets/slider.d.ts +6 -3
  135. package/dist/widgets/slider.d.ts.map +1 -1
  136. package/dist/widgets/slider.js +34 -10
  137. package/dist/widgets/slider.js.map +1 -1
  138. package/dist/widgets/static-item.d.ts +1 -1
  139. package/dist/widgets/static-item.d.ts.map +1 -1
  140. package/dist/widgets/static-item.js +12 -13
  141. package/dist/widgets/static-item.js.map +1 -1
  142. package/dist/widgets/text-input.d.ts +239 -13
  143. package/dist/widgets/text-input.d.ts.map +1 -1
  144. package/dist/widgets/text-input.js +1004 -74
  145. package/dist/widgets/text-input.js.map +1 -1
  146. package/dist/widgets/toggle.d.ts +1 -2
  147. package/dist/widgets/toggle.d.ts.map +1 -1
  148. package/dist/widgets/toggle.js +20 -8
  149. package/dist/widgets/toggle.js.map +1 -1
  150. package/dist/widgets/types.d.ts +21 -4
  151. package/dist/widgets/types.d.ts.map +1 -1
  152. package/dist/widgets/types.js +19 -0
  153. package/dist/widgets/types.js.map +1 -1
  154. package/dist/widgets/widget-base.d.ts +1 -0
  155. package/dist/widgets/widget-base.d.ts.map +1 -1
  156. package/dist/widgets/widget-base.js +24 -7
  157. package/dist/widgets/widget-base.js.map +1 -1
  158. package/package.json +5 -3
@@ -1,37 +1,43 @@
1
1
  /**
2
- * Pre-built `TerminalTheme` constants — default + 18 Textual-derived themes.
2
+ * Pre-built `TerminalTheme` constants — every theme in the registry has a
3
+ * matching `<NAME>` export here. There is no inline-only theme; the data
4
+ * file is the single source of truth for every theme's hex values.
3
5
  *
4
- * Lives here (not in `core/color.ts`) because each theme uses `buildPalette` to
5
- * derive its semantic palette, and `buildPalette` itself depends on
6
- * `core/color.ts`. Keeping presets out of core breaks the cycle while
7
- * preserving a single one-way edge `core/color → themes/palette` (used only
8
- * for the small `INTERNAL_DEFAULT_THEME` substrate inside `getTruecolor`).
6
+ * Editing `data/<name>.ts` updates both the registry's full ~150-var
7
+ * palette (via `getThemePalette(name)`) AND the matching `TerminalTheme`
8
+ * constant exported below (via `getThemeBaseColors(name)`, which pulls
9
+ * just the 8 substrate keys). The two views never drift because both
10
+ * derive from the same authored data.
9
11
  *
10
- * [LAW:one-way-deps] core/color → themes/palette is the only edge into themes/.
11
- * The reverse cycle through `TerminalTheme` presets has been broken by
12
- * extracting them here; nothing in `core/color.ts` imports this file.
12
+ * [LAW:one-source-of-truth] Hex values live in `data/<name>.ts`. This
13
+ * module is a derived view that builds a `TerminalTheme` from each
14
+ * theme's eight base colors via `buildPalette` for the substrate palette
15
+ * and `STANDARD_TABLE` for the ANSI substrate.
13
16
  *
14
- * [LAW:one-source-of-truth] Each preset's background and foreground are stated
15
- * once and forwarded by `defineTheme` to both the `TerminalTheme` constructor
16
- * (substrate colours) and the `buildPalette` base (semantic-palette baseline).
17
- * This forecloses the drift the previous shape allowed, where the two copies
18
- * could be edited independently.
17
+ * [LAW:one-type-per-behavior] Every theme has the same shape — name,
18
+ * `dark` flag, full Palette in the registry, `TerminalTheme` constant
19
+ * here. Consumers can pick any theme by name without branching on which
20
+ * APIs work for it.
19
21
  *
20
- * Note on `ansiColors`: every preset theme uses `STANDARD_TABLE` for its
21
- * `ansiColors` field. Theme identity in this codebase lives in the semantic
22
- * `palette` (primary, accent, text-*, surface, ...), not in the standard ANSI
23
- * 16/256 LUT. `ColorSpec.parse("red")` is intentionally canonical across
24
- * themes — the same way Textual itself models theming.
22
+ * [LAW:one-way-deps] `core/color → themes/palette` remains the only edge
23
+ * into themes/. This file imports only sibling theme modules and core
24
+ * color primitives; nothing in `core/` imports back.
25
+ *
26
+ * Note on `ansiColors`: every preset theme uses `STANDARD_TABLE`. Theme
27
+ * identity lives in the semantic `palette`, not in the standard ANSI
28
+ * 16/256 LUT — `ColorSpec.parse("red")` is intentionally canonical across
29
+ * themes, matching Textual's model.
25
30
  */
26
31
  import { TerminalTheme } from "../core/color.js";
27
32
  export declare const DEFAULT_TERMINAL_THEME: TerminalTheme;
28
- export declare const MONOKAI: TerminalTheme;
29
33
  export declare const SVG_EXPORT_THEME: TerminalTheme;
34
+ export declare const MONOKAI: TerminalTheme;
30
35
  export declare const NORD: TerminalTheme;
31
36
  export declare const GRUVBOX: TerminalTheme;
32
37
  export declare const DRACULA: TerminalTheme;
33
38
  export declare const TOKYO_NIGHT: TerminalTheme;
34
39
  export declare const FLEXOKI: TerminalTheme;
40
+ export declare const CYBERPUNK: TerminalTheme;
35
41
  export declare const CATPPUCCIN_MOCHA: TerminalTheme;
36
42
  export declare const CATPPUCCIN_LATTE: TerminalTheme;
37
43
  export declare const CATPPUCCIN_FRAPPE: TerminalTheme;
@@ -43,4 +49,7 @@ export declare const ROSE_PINE_MOON: TerminalTheme;
43
49
  export declare const ROSE_PINE_DAWN: TerminalTheme;
44
50
  export declare const ATOM_ONE_DARK: TerminalTheme;
45
51
  export declare const ATOM_ONE_LIGHT: TerminalTheme;
52
+ export declare const TEXTUAL_DARK: TerminalTheme;
53
+ export declare const TEXTUAL_LIGHT: TerminalTheme;
54
+ export declare const TEXTUAL_ANSI: TerminalTheme;
46
55
  //# sourceMappingURL=terminalThemes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminalThemes.d.ts","sourceRoot":"","sources":["../../src/themes/terminalThemes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAGL,aAAa,EACd,MAAM,kBAAkB,CAAC;AAkC1B,eAAO,MAAM,sBAAsB,eAWjC,CAAC;AAEH,eAAO,MAAM,OAAO,eAWlB,CAAC;AAEH,eAAO,MAAM,gBAAgB,eAW3B,CAAC;AAEH,eAAO,MAAM,IAAI,eAWf,CAAC;AAEH,eAAO,MAAM,OAAO,eAWlB,CAAC;AAEH,eAAO,MAAM,OAAO,eAWlB,CAAC;AAEH,eAAO,MAAM,WAAW,eAWtB,CAAC;AAEH,eAAO,MAAM,OAAO,eAWlB,CAAC;AAEH,eAAO,MAAM,gBAAgB,eAW3B,CAAC;AAEH,eAAO,MAAM,gBAAgB,eAW3B,CAAC;AAEH,eAAO,MAAM,iBAAiB,eAW5B,CAAC;AAEH,eAAO,MAAM,oBAAoB,eAW/B,CAAC;AAEH,eAAO,MAAM,cAAc,eAWzB,CAAC;AAEH,eAAO,MAAM,eAAe,eAW1B,CAAC;AAEH,eAAO,MAAM,SAAS,eAWpB,CAAC;AAEH,eAAO,MAAM,cAAc,eAWzB,CAAC;AAEH,eAAO,MAAM,cAAc,eAWzB,CAAC;AAEH,eAAO,MAAM,aAAa,eAWxB,CAAC;AAEH,eAAO,MAAM,cAAc,eAWzB,CAAC"}
1
+ {"version":3,"file":"terminalThemes.d.ts","sourceRoot":"","sources":["../../src/themes/terminalThemes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAEL,aAAa,EACd,MAAM,kBAAkB,CAAC;AAsB1B,eAAO,MAAM,sBAAsB,eAA6C,CAAC;AACjF,eAAO,MAAM,gBAAgB,eAAgD,CAAC;AAC9E,eAAO,MAAM,OAAO,eAA6C,CAAC;AAClE,eAAO,MAAM,IAAI,eAA0C,CAAC;AAC5D,eAAO,MAAM,OAAO,eAA6C,CAAC;AAClE,eAAO,MAAM,OAAO,eAA6C,CAAC;AAClE,eAAO,MAAM,WAAW,eAAiD,CAAC;AAC1E,eAAO,MAAM,OAAO,eAA6C,CAAC;AAClE,eAAO,MAAM,SAAS,eAA+C,CAAC;AACtE,eAAO,MAAM,gBAAgB,eAAsD,CAAC;AACpF,eAAO,MAAM,gBAAgB,eAAsD,CAAC;AACpF,eAAO,MAAM,iBAAiB,eAAuD,CAAC;AACtF,eAAO,MAAM,oBAAoB,eAA0D,CAAC;AAC5F,eAAO,MAAM,cAAc,eAAoD,CAAC;AAChF,eAAO,MAAM,eAAe,eAAqD,CAAC;AAClF,eAAO,MAAM,SAAS,eAA+C,CAAC;AACtE,eAAO,MAAM,cAAc,eAAoD,CAAC;AAChF,eAAO,MAAM,cAAc,eAAoD,CAAC;AAChF,eAAO,MAAM,aAAa,eAAmD,CAAC;AAC9E,eAAO,MAAM,cAAc,eAAoD,CAAC;AAChF,eAAO,MAAM,YAAY,eAAkD,CAAC;AAC5E,eAAO,MAAM,aAAa,eAAmD,CAAC;AAC9E,eAAO,MAAM,YAAY,eAAkD,CAAC"}
@@ -1,32 +1,38 @@
1
1
  /**
2
- * Pre-built `TerminalTheme` constants — default + 18 Textual-derived themes.
2
+ * Pre-built `TerminalTheme` constants — every theme in the registry has a
3
+ * matching `<NAME>` export here. There is no inline-only theme; the data
4
+ * file is the single source of truth for every theme's hex values.
3
5
  *
4
- * Lives here (not in `core/color.ts`) because each theme uses `buildPalette` to
5
- * derive its semantic palette, and `buildPalette` itself depends on
6
- * `core/color.ts`. Keeping presets out of core breaks the cycle while
7
- * preserving a single one-way edge `core/color → themes/palette` (used only
8
- * for the small `INTERNAL_DEFAULT_THEME` substrate inside `getTruecolor`).
6
+ * Editing `data/<name>.ts` updates both the registry's full ~150-var
7
+ * palette (via `getThemePalette(name)`) AND the matching `TerminalTheme`
8
+ * constant exported below (via `getThemeBaseColors(name)`, which pulls
9
+ * just the 8 substrate keys). The two views never drift because both
10
+ * derive from the same authored data.
9
11
  *
10
- * [LAW:one-way-deps] core/color → themes/palette is the only edge into themes/.
11
- * The reverse cycle through `TerminalTheme` presets has been broken by
12
- * extracting them here; nothing in `core/color.ts` imports this file.
12
+ * [LAW:one-source-of-truth] Hex values live in `data/<name>.ts`. This
13
+ * module is a derived view that builds a `TerminalTheme` from each
14
+ * theme's eight base colors via `buildPalette` for the substrate palette
15
+ * and `STANDARD_TABLE` for the ANSI substrate.
13
16
  *
14
- * [LAW:one-source-of-truth] Each preset's background and foreground are stated
15
- * once and forwarded by `defineTheme` to both the `TerminalTheme` constructor
16
- * (substrate colours) and the `buildPalette` base (semantic-palette baseline).
17
- * This forecloses the drift the previous shape allowed, where the two copies
18
- * could be edited independently.
17
+ * [LAW:one-type-per-behavior] Every theme has the same shape — name,
18
+ * `dark` flag, full Palette in the registry, `TerminalTheme` constant
19
+ * here. Consumers can pick any theme by name without branching on which
20
+ * APIs work for it.
19
21
  *
20
- * Note on `ansiColors`: every preset theme uses `STANDARD_TABLE` for its
21
- * `ansiColors` field. Theme identity in this codebase lives in the semantic
22
- * `palette` (primary, accent, text-*, surface, ...), not in the standard ANSI
23
- * 16/256 LUT. `ColorSpec.parse("red")` is intentionally canonical across
24
- * themes — the same way Textual itself models theming.
22
+ * [LAW:one-way-deps] `core/color → themes/palette` remains the only edge
23
+ * into themes/. This file imports only sibling theme modules and core
24
+ * color primitives; nothing in `core/` imports back.
25
+ *
26
+ * Note on `ansiColors`: every preset theme uses `STANDARD_TABLE`. Theme
27
+ * identity lives in the semantic `palette`, not in the standard ANSI
28
+ * 16/256 LUT — `ColorSpec.parse("red")` is intentionally canonical across
29
+ * themes, matching Textual's model.
25
30
  */
26
- import { ColorRgba, STANDARD_TABLE, TerminalTheme, } from "../core/color.js";
31
+ import { STANDARD_TABLE, TerminalTheme, } from "../core/color.js";
27
32
  import { buildPalette } from "./buildPalette.js";
33
+ import { getThemeBaseColors } from "./registry.js";
28
34
  function defineTheme(d) {
29
- return new TerminalTheme(d.bg, d.fg, STANDARD_TABLE, buildPalette(d.name, d.isDark, {
35
+ return new TerminalTheme(d.bg, d.fg, STANDARD_TABLE, buildPalette(d.name, d.dark, {
30
36
  primary: d.primary,
31
37
  secondary: d.secondary,
32
38
  accent: d.accent,
@@ -37,232 +43,27 @@ function defineTheme(d) {
37
43
  foreground: d.fg,
38
44
  }));
39
45
  }
40
- export const DEFAULT_TERMINAL_THEME = defineTheme({
41
- name: "default",
42
- isDark: true,
43
- bg: new ColorRgba(0, 0, 0),
44
- fg: new ColorRgba(255, 255, 255),
45
- primary: new ColorRgba(0, 111, 184),
46
- secondary: new ColorRgba(118, 38, 113),
47
- accent: new ColorRgba(0, 111, 184),
48
- success: new ColorRgba(0, 128, 0),
49
- warning: new ColorRgba(128, 128, 0),
50
- error: new ColorRgba(128, 0, 0),
51
- });
52
- export const MONOKAI = defineTheme({
53
- name: "monokai",
54
- isDark: true,
55
- bg: new ColorRgba(39, 40, 34),
56
- fg: new ColorRgba(214, 214, 214),
57
- primary: new ColorRgba(174, 129, 255),
58
- secondary: new ColorRgba(249, 38, 114),
59
- accent: new ColorRgba(102, 217, 239),
60
- success: new ColorRgba(166, 226, 46),
61
- warning: new ColorRgba(253, 151, 31),
62
- error: new ColorRgba(249, 38, 114),
63
- });
64
- export const SVG_EXPORT_THEME = defineTheme({
65
- name: "svg-export",
66
- isDark: true,
67
- bg: new ColorRgba(41, 41, 41),
68
- fg: new ColorRgba(197, 200, 198),
69
- primary: new ColorRgba(97, 175, 239),
70
- secondary: new ColorRgba(198, 120, 221),
71
- accent: new ColorRgba(86, 182, 194),
72
- success: new ColorRgba(152, 195, 121),
73
- warning: new ColorRgba(229, 192, 123),
74
- error: new ColorRgba(204, 85, 90),
75
- });
76
- export const NORD = defineTheme({
77
- name: "nord",
78
- isDark: true,
79
- bg: new ColorRgba(46, 52, 64),
80
- fg: new ColorRgba(216, 222, 233),
81
- primary: new ColorRgba(136, 192, 208),
82
- secondary: new ColorRgba(129, 161, 193),
83
- accent: new ColorRgba(180, 142, 173),
84
- success: new ColorRgba(163, 190, 140),
85
- warning: new ColorRgba(235, 203, 139),
86
- error: new ColorRgba(191, 97, 106),
87
- });
88
- export const GRUVBOX = defineTheme({
89
- name: "gruvbox",
90
- isDark: true,
91
- bg: new ColorRgba(40, 40, 40),
92
- fg: new ColorRgba(251, 241, 199),
93
- primary: new ColorRgba(133, 165, 152),
94
- secondary: new ColorRgba(168, 154, 133),
95
- accent: new ColorRgba(250, 189, 47),
96
- success: new ColorRgba(184, 187, 38),
97
- warning: new ColorRgba(254, 128, 25),
98
- error: new ColorRgba(251, 73, 52),
99
- });
100
- export const DRACULA = defineTheme({
101
- name: "dracula",
102
- isDark: true,
103
- bg: new ColorRgba(40, 42, 54),
104
- fg: new ColorRgba(248, 248, 242),
105
- primary: new ColorRgba(189, 147, 249),
106
- secondary: new ColorRgba(98, 114, 164),
107
- accent: new ColorRgba(255, 121, 198),
108
- success: new ColorRgba(80, 250, 123),
109
- warning: new ColorRgba(255, 184, 108),
110
- error: new ColorRgba(255, 85, 85),
111
- });
112
- export const TOKYO_NIGHT = defineTheme({
113
- name: "tokyo-night",
114
- isDark: true,
115
- bg: new ColorRgba(26, 27, 38),
116
- fg: new ColorRgba(169, 177, 214),
117
- primary: new ColorRgba(187, 154, 247),
118
- secondary: new ColorRgba(122, 162, 247),
119
- accent: new ColorRgba(255, 158, 100),
120
- success: new ColorRgba(158, 206, 106),
121
- warning: new ColorRgba(224, 175, 104),
122
- error: new ColorRgba(247, 118, 142),
123
- });
124
- export const FLEXOKI = defineTheme({
125
- name: "flexoki",
126
- isDark: true,
127
- bg: new ColorRgba(16, 15, 15),
128
- fg: new ColorRgba(255, 252, 240),
129
- primary: new ColorRgba(32, 94, 166),
130
- secondary: new ColorRgba(36, 131, 123),
131
- accent: new ColorRgba(155, 118, 200),
132
- success: new ColorRgba(102, 128, 11),
133
- warning: new ColorRgba(173, 131, 1),
134
- error: new ColorRgba(175, 48, 41),
135
- });
136
- export const CATPPUCCIN_MOCHA = defineTheme({
137
- name: "catppuccin-mocha",
138
- isDark: true,
139
- bg: new ColorRgba(24, 24, 37),
140
- fg: new ColorRgba(205, 214, 244),
141
- primary: new ColorRgba(245, 194, 231),
142
- secondary: new ColorRgba(203, 166, 247),
143
- accent: new ColorRgba(250, 179, 135),
144
- success: new ColorRgba(171, 233, 179),
145
- warning: new ColorRgba(250, 227, 176),
146
- error: new ColorRgba(242, 143, 173),
147
- });
148
- export const CATPPUCCIN_LATTE = defineTheme({
149
- name: "catppuccin-latte",
150
- isDark: false,
151
- bg: new ColorRgba(239, 241, 245),
152
- fg: new ColorRgba(76, 79, 105),
153
- primary: new ColorRgba(136, 57, 239),
154
- secondary: new ColorRgba(220, 138, 120),
155
- accent: new ColorRgba(254, 100, 11),
156
- success: new ColorRgba(64, 160, 43),
157
- warning: new ColorRgba(223, 142, 29),
158
- error: new ColorRgba(210, 15, 57),
159
- });
160
- export const CATPPUCCIN_FRAPPE = defineTheme({
161
- name: "catppuccin-frappe",
162
- isDark: true,
163
- bg: new ColorRgba(48, 52, 70),
164
- fg: new ColorRgba(198, 208, 245),
165
- primary: new ColorRgba(202, 158, 230),
166
- secondary: new ColorRgba(239, 159, 118),
167
- accent: new ColorRgba(244, 184, 228),
168
- success: new ColorRgba(166, 209, 137),
169
- warning: new ColorRgba(229, 200, 144),
170
- error: new ColorRgba(231, 130, 132),
171
- });
172
- export const CATPPUCCIN_MACCHIATO = defineTheme({
173
- name: "catppuccin-macchiato",
174
- isDark: true,
175
- bg: new ColorRgba(36, 39, 58),
176
- fg: new ColorRgba(202, 211, 245),
177
- primary: new ColorRgba(198, 160, 246),
178
- secondary: new ColorRgba(245, 169, 127),
179
- accent: new ColorRgba(245, 189, 230),
180
- success: new ColorRgba(166, 218, 149),
181
- warning: new ColorRgba(238, 212, 159),
182
- error: new ColorRgba(237, 135, 150),
183
- });
184
- export const SOLARIZED_DARK = defineTheme({
185
- name: "solarized-dark",
186
- isDark: true,
187
- bg: new ColorRgba(0, 43, 54),
188
- fg: new ColorRgba(131, 148, 150),
189
- primary: new ColorRgba(38, 139, 210),
190
- secondary: new ColorRgba(42, 161, 152),
191
- accent: new ColorRgba(108, 113, 196),
192
- success: new ColorRgba(133, 153, 0),
193
- warning: new ColorRgba(203, 75, 22),
194
- error: new ColorRgba(220, 50, 47),
195
- });
196
- export const SOLARIZED_LIGHT = defineTheme({
197
- name: "solarized-light",
198
- isDark: false,
199
- bg: new ColorRgba(253, 246, 227),
200
- fg: new ColorRgba(88, 110, 117),
201
- primary: new ColorRgba(38, 139, 210),
202
- secondary: new ColorRgba(42, 161, 152),
203
- accent: new ColorRgba(108, 113, 196),
204
- success: new ColorRgba(133, 153, 0),
205
- warning: new ColorRgba(203, 75, 22),
206
- error: new ColorRgba(220, 50, 47),
207
- });
208
- export const ROSE_PINE = defineTheme({
209
- name: "rose-pine",
210
- isDark: true,
211
- bg: new ColorRgba(25, 23, 36),
212
- fg: new ColorRgba(224, 222, 244),
213
- primary: new ColorRgba(196, 167, 231),
214
- secondary: new ColorRgba(49, 116, 143),
215
- accent: new ColorRgba(235, 188, 186),
216
- success: new ColorRgba(156, 207, 216),
217
- warning: new ColorRgba(246, 193, 119),
218
- error: new ColorRgba(235, 111, 146),
219
- });
220
- export const ROSE_PINE_MOON = defineTheme({
221
- name: "rose-pine-moon",
222
- isDark: true,
223
- bg: new ColorRgba(35, 33, 54),
224
- fg: new ColorRgba(224, 222, 244),
225
- primary: new ColorRgba(196, 167, 231),
226
- secondary: new ColorRgba(62, 143, 176),
227
- accent: new ColorRgba(234, 154, 151),
228
- success: new ColorRgba(156, 207, 216),
229
- warning: new ColorRgba(246, 193, 119),
230
- error: new ColorRgba(235, 111, 146),
231
- });
232
- export const ROSE_PINE_DAWN = defineTheme({
233
- name: "rose-pine-dawn",
234
- isDark: false,
235
- bg: new ColorRgba(250, 244, 237),
236
- fg: new ColorRgba(87, 82, 121),
237
- primary: new ColorRgba(144, 122, 169),
238
- secondary: new ColorRgba(40, 105, 131),
239
- accent: new ColorRgba(215, 130, 126),
240
- success: new ColorRgba(86, 148, 159),
241
- warning: new ColorRgba(234, 157, 52),
242
- error: new ColorRgba(180, 99, 122),
243
- });
244
- export const ATOM_ONE_DARK = defineTheme({
245
- name: "atom-one-dark",
246
- isDark: true,
247
- bg: new ColorRgba(40, 44, 52),
248
- fg: new ColorRgba(171, 178, 191),
249
- primary: new ColorRgba(97, 175, 239),
250
- secondary: new ColorRgba(198, 120, 221),
251
- accent: new ColorRgba(163, 120, 194),
252
- success: new ColorRgba(98, 240, 98),
253
- warning: new ColorRgba(222, 178, 91),
254
- error: new ColorRgba(240, 98, 98),
255
- });
256
- export const ATOM_ONE_LIGHT = defineTheme({
257
- name: "atom-one-light",
258
- isDark: false,
259
- bg: new ColorRgba(250, 250, 250),
260
- fg: new ColorRgba(56, 58, 66),
261
- primary: new ColorRgba(64, 120, 242),
262
- secondary: new ColorRgba(166, 38, 164),
263
- accent: new ColorRgba(191, 146, 50),
264
- success: new ColorRgba(108, 242, 63),
265
- warning: new ColorRgba(216, 217, 56),
266
- error: new ColorRgba(242, 63, 63),
267
- });
46
+ export const DEFAULT_TERMINAL_THEME = defineTheme(getThemeBaseColors("default"));
47
+ export const SVG_EXPORT_THEME = defineTheme(getThemeBaseColors("svg-export"));
48
+ export const MONOKAI = defineTheme(getThemeBaseColors("monokai"));
49
+ export const NORD = defineTheme(getThemeBaseColors("nord"));
50
+ export const GRUVBOX = defineTheme(getThemeBaseColors("gruvbox"));
51
+ export const DRACULA = defineTheme(getThemeBaseColors("dracula"));
52
+ export const TOKYO_NIGHT = defineTheme(getThemeBaseColors("tokyo-night"));
53
+ export const FLEXOKI = defineTheme(getThemeBaseColors("flexoki"));
54
+ export const CYBERPUNK = defineTheme(getThemeBaseColors("cyberpunk"));
55
+ export const CATPPUCCIN_MOCHA = defineTheme(getThemeBaseColors("catppuccin-mocha"));
56
+ export const CATPPUCCIN_LATTE = defineTheme(getThemeBaseColors("catppuccin-latte"));
57
+ export const CATPPUCCIN_FRAPPE = defineTheme(getThemeBaseColors("catppuccin-frappe"));
58
+ export const CATPPUCCIN_MACCHIATO = defineTheme(getThemeBaseColors("catppuccin-macchiato"));
59
+ export const SOLARIZED_DARK = defineTheme(getThemeBaseColors("solarized-dark"));
60
+ export const SOLARIZED_LIGHT = defineTheme(getThemeBaseColors("solarized-light"));
61
+ export const ROSE_PINE = defineTheme(getThemeBaseColors("rose-pine"));
62
+ export const ROSE_PINE_MOON = defineTheme(getThemeBaseColors("rose-pine-moon"));
63
+ export const ROSE_PINE_DAWN = defineTheme(getThemeBaseColors("rose-pine-dawn"));
64
+ export const ATOM_ONE_DARK = defineTheme(getThemeBaseColors("atom-one-dark"));
65
+ export const ATOM_ONE_LIGHT = defineTheme(getThemeBaseColors("atom-one-light"));
66
+ export const TEXTUAL_DARK = defineTheme(getThemeBaseColors("textual-dark"));
67
+ export const TEXTUAL_LIGHT = defineTheme(getThemeBaseColors("textual-light"));
68
+ export const TEXTUAL_ANSI = defineTheme(getThemeBaseColors("textual-ansi"));
268
69
  //# sourceMappingURL=terminalThemes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminalThemes.js","sourceRoot":"","sources":["../../src/themes/terminalThemes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EACL,SAAS,EACT,cAAc,EACd,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAejD,SAAS,WAAW,CAAC,CAAW;IAC9B,OAAO,IAAI,aAAa,CACtB,CAAC,CAAC,EAAE,EACJ,CAAC,CAAC,EAAE,EACJ,cAAc,EACd,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAC7B,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,UAAU,EAAE,CAAC,CAAC,EAAE;QAChB,UAAU,EAAE,CAAC,CAAC,EAAE;KACjB,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,WAAW,CAAC;IAChD,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IACnC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC;IAClC,OAAO,EAAE,IAAI,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACjC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;CAChC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC;IACjC,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;IAC1C,IAAI,EAAE,YAAY;IAClB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAC;IAC9B,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC;IACjC,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC;IACjC,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,WAAW,CAAC;IACrC,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC;IACjC,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IACnC,SAAS,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;IAC1C,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;IAC1C,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,KAAK;IACb,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IAC9B,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACpC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC;IAC3C,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;IAC9C,IAAI,EAAE,sBAAsB;IAC5B,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;IACxC,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;IAC5B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,SAAS,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACnC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;IACzC,IAAI,EAAE,iBAAiB;IACvB,MAAM,EAAE,KAAK;IACb,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IAC/B,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,SAAS,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IACnC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,WAAW,CAAC;IACnC,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;IACxC,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;IACxC,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,KAAK;IACb,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;IAC9B,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACrC,SAAS,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;IACvC,IAAI,EAAE,eAAe;IACrB,MAAM,EAAE,IAAI;IACZ,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACvC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC;IACxC,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,KAAK;IACb,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAChC,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7B,OAAO,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;IACpC,SAAS,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IACtC,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACnC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,OAAO,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACpC,KAAK,EAAE,IAAI,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;CAClC,CAAC,CAAC"}
1
+ {"version":3,"file":"terminalThemes.js","sourceRoot":"","sources":["../../src/themes/terminalThemes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Transpose a Palette to a new "key" — analogous to transposing a melody.
3
+ *
4
+ * melody / chord progression :: Palette (relationships between colors)
5
+ * key (signature) :: ThemeKey (hue / chroma / lightness deltas)
6
+ * "in C major" / "in D…" :: the resulting transposed Palette
7
+ *
8
+ * Because OKLCH is perceptually uniform, "+30° hue" looks like a
9
+ * consistent jump everywhere on the color wheel — the way a perfect-fifth
10
+ * interval sounds the same in every musical key. Transposition is closed
11
+ * under composition: `transpose(transpose(p, k1), k2)` produces the same
12
+ * colors as a single transpose with the combined deltas, modulo round-trip
13
+ * quantization.
14
+ *
15
+ * [LAW:dataflow-not-control-flow] A single uniform per-color transform
16
+ * runs for every var in the palette. Anchor protection selects *which*
17
+ * `ThemeKey` to apply (data), not *whether* to apply one (branch).
18
+ *
19
+ * [LAW:one-source-of-truth] Anchor classification lives only in
20
+ * `ANCHORED_ROOTS` below. The buildPalette derivation guarantees every
21
+ * variant of a semantic root shares the root as its hyphen prefix
22
+ * (`error`, `error-darken-1`, `error-lighten-2`, ...), so one set covers
23
+ * the whole family.
24
+ *
25
+ * [LAW:one-way-deps] Imports flow `core/oklch → themes/transpose`;
26
+ * nothing in core/ depends back on this file.
27
+ */
28
+ import { type ThemeKey } from "../core/oklch.js";
29
+ import { Palette } from "./palette.js";
30
+ /**
31
+ * Semantic roots whose hue is locked under transposition. `error` must
32
+ * look red-ish, `success` green-ish, `warning` amber-ish — rotating the
33
+ * hue would make the UI lie about meaning. Lightness and chroma *still*
34
+ * transform for these roles, so they invert correctly during dark↔light
35
+ * flips and respond to chroma scaling alongside everything else.
36
+ */
37
+ export declare const ANCHORED_ROOTS: ReadonlySet<string>;
38
+ /**
39
+ * Whether a palette var's hue is locked under transposition. The single
40
+ * predicate used by `transposePalette`. Exported so callers building
41
+ * higher-level theme machinery can stay consistent with the locking rule.
42
+ */
43
+ export declare function isAnchored(varName: string): boolean;
44
+ /**
45
+ * Return a new `Palette` whose colors are the transposition of `palette`'s
46
+ * colors by `key`. Pure. Identity (`IDENTITY`) returns a Palette with byte-exact
47
+ * colors — fast-pathed so identity does not pay the sRGB↔OKLCH round-trip
48
+ * quantization cost.
49
+ *
50
+ * The `dark` flag of the result is derived from the actual lightness of
51
+ * the resulting `background` var (`Oklch.fromRgba(bg).l < 0.5`) — *not*
52
+ * from the key's coefficients. The strongest theorem: "dark iff
53
+ * background is dark." This is honest under every transform — pure
54
+ * lightness shifts, mirror-inversions, hue rotations that don't touch L,
55
+ * and combinations of all three. [LAW:types-are-the-program]
56
+ *
57
+ * The transposing path throws if the palette has no `background` var (the
58
+ * `dark`-flag derivation has nothing to read). Failing loudly is preferred
59
+ * over a silent fallback because the alternative — trusting the source
60
+ * `palette.dark` after an arbitrary L-transform — produces flags that lie.
61
+ * The identity fast-path is exempt: it preserves the source `dark` flag
62
+ * verbatim (no derivation), so it needs no `background` and never throws.
63
+ *
64
+ * @param name Optional override for the resulting palette name. Defaults
65
+ * to the source palette's name. Callers building a family of transposed
66
+ * palettes (e.g. "gruvbox +60°") supply their own.
67
+ */
68
+ export declare function transposePalette(palette: Palette, key: ThemeKey, name?: string): Palette;
69
+ /**
70
+ * Build the `ThemeKey` that rotates `palette` so its *tonic* var lands on
71
+ * `targetHueDeg`. The musical operation directly: a key is the set of
72
+ * intervals from the tonic, so "play this theme in the key of <hue>" means
73
+ * "shift every color by exactly the interval that carries the tonic's
74
+ * current hue to the target." Pick the tonic's pitch and the rest follows.
75
+ *
76
+ * Returns a hue-only key (chroma and lightness untouched). Callers that also
77
+ * want to scale chroma or shift lightness spread their own axes over the
78
+ * result — those are independent transposition dimensions, not part of
79
+ * choosing the key. [LAW:one-type-per-behavior] a degree-shift key and a
80
+ * root-note key are the *same* transform; this is just a second constructor
81
+ * for it, so `transposePalette` stays untouched.
82
+ *
83
+ * Throws if `tonicVar` is absent — the interval has no anchor to measure
84
+ * from, so there is no honest key to return. Failing loudly beats inventing
85
+ * a zero shift that would silently mean "no transposition."
86
+ */
87
+ export declare function themeKeyForRoot(palette: Palette, tonicVar: string, targetHueDeg: number): ThemeKey;
88
+ //# sourceMappingURL=transpose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transpose.d.ts","sourceRoot":"","sources":["../../src/themes/transpose.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EAAwB,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC;;;;;;GAMG;AAKH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAI7C,CAAC;AAOH;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,QAAQ,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAsBT;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,QAAQ,CAoBV"}