@augmenting-integrations/themes 8.10.0 → 8.12.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.
package/dist/index.cjs CHANGED
@@ -22,10 +22,18 @@ var index_exports = {};
22
22
  __export(index_exports, {
23
23
  BASE_THEMES: () => BASE_THEMES,
24
24
  THEME_COOKIE_KEY: () => THEME_COOKIE_KEY,
25
- THEME_VARIANT_COOKIE_KEY: () => THEME_VARIANT_COOKIE_KEY
25
+ THEME_VARIANT_COOKIE_KEY: () => THEME_VARIANT_COOKIE_KEY,
26
+ defaultTheme: () => defaultTheme
26
27
  });
27
28
  module.exports = __toCommonJS(index_exports);
29
+ var defaultTheme = {
30
+ id: "default",
31
+ label: "Default",
32
+ description: "Platform default palette: deep navy with copper accents.",
33
+ swatch: { primary: "#1e3a5f", primaryDark: "#d97757" }
34
+ };
28
35
  var BASE_THEMES = [
36
+ defaultTheme,
29
37
  {
30
38
  id: "neutral",
31
39
  label: "Neutral",
@@ -69,6 +77,7 @@ var THEME_VARIANT_COOKIE_KEY = "x-theme-variant";
69
77
  0 && (module.exports = {
70
78
  BASE_THEMES,
71
79
  THEME_COOKIE_KEY,
72
- THEME_VARIANT_COOKIE_KEY
80
+ THEME_VARIANT_COOKIE_KEY,
81
+ defaultTheme
73
82
  });
74
83
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { ThemeName } from \"@augmenting-integrations/brand\";\n\nexport type ThemeMeta = {\n id: ThemeName;\n label: string;\n description: string;\n swatch: { primary: string; primaryDark: string };\n};\n\n/**\n * Base themes shipped with the platform. Each tenant app extends this list\n * with its own brand themes via the merged-registry pattern:\n *\n * import { BASE_THEMES } from \"@augmenting-integrations/themes\";\n * import { acmeTheme } from \"./styles/themes/acmeTheme\";\n * export const THEMES = [acmeTheme, ...BASE_THEMES];\n *\n * The CSS files for the base themes are exposed via the `./css/<id>.css`\n * subpath export — apps `@import` only the ones they want at globals.css.\n */\nexport const BASE_THEMES: ThemeMeta[] = [\n {\n id: \"neutral\",\n label: \"Neutral\",\n description: \"Cool grayscale, professional, restrained — shadcn defaults.\",\n swatch: { primary: \"#18181b\", primaryDark: \"#e5e5e5\" },\n },\n {\n id: \"woxom\",\n label: \"Woxom\",\n description: \"Navy + Tokyo Night neon dashboard. Reference brand-faithful theme.\",\n swatch: { primary: \"#1C4587\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"teal-pro\",\n label: \"Teal Pro\",\n description: \"Corporate teal — clean and slightly cool.\",\n swatch: { primary: \"#0f766e\", primaryDark: \"#14b8a6\" },\n },\n {\n id: \"warm-sun\",\n label: \"Warm Sun\",\n description: \"Energetic warm orange — friendly and approachable.\",\n swatch: { primary: \"#c2410c\", primaryDark: \"#fb923c\" },\n },\n {\n id: \"tokyo\",\n label: \"Tokyo\",\n description: \"Tokyo Night dark with neon accents; muted indigo when light.\",\n swatch: { primary: \"#3d59a1\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"vapor\",\n label: \"Vapor\",\n description: \"Pastel lavender light with vibrant accents; deep purple when dark.\",\n swatch: { primary: \"#6d4cff\", primaryDark: \"#a78bfa\" },\n },\n];\n\nexport const THEME_COOKIE_KEY = \"x-theme\";\n\n/**\n * Cookie name for the light/dark variant. Pair with `<ThemeBootScript />`\n * from `@augmenting-integrations/ui` to kill the SSR-mode-mismatch flash on\n * navigation. Default cookie value: `\"dark\"` or `\"light\"`.\n */\nexport const THEME_VARIANT_COOKIE_KEY = \"x-theme-variant\";\n\n/** Allowed values for the variant cookie. */\nexport type ThemeVariant = \"light\" | \"dark\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBO,IAAM,cAA2B;AAAA,EACtC;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AACF;AAEO,IAAM,mBAAmB;AAOzB,IAAM,2BAA2B;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { ThemeName } from \"@augmenting-integrations/brand\";\n\nexport type ThemeMeta = {\n id: ThemeName;\n label: string;\n description: string;\n swatch: { primary: string; primaryDark: string };\n};\n\n/**\n * Canonical platform default theme. Spokes that do not declare a custom\n * brand inherit this by setting `brand.defaults.theme = \"default\"` and\n * importing `@augmenting-integrations/themes/css/default.css`. No spoke\n * is allowed to register a custom theme under the id `\"default\"`.\n */\nexport const defaultTheme: ThemeMeta = {\n id: \"default\",\n label: \"Default\",\n description: \"Platform default palette: deep navy with copper accents.\",\n swatch: { primary: \"#1e3a5f\", primaryDark: \"#d97757\" },\n};\n\n/**\n * Base themes shipped with the platform. The canonical `default` theme is\n * always first so spokes can rely on its presence without further wiring.\n *\n * import { BASE_THEMES } from \"@augmenting-integrations/themes\";\n * import { acmeTheme } from \"./styles/themes/acmeTheme\";\n * export const THEMES = [acmeTheme, ...BASE_THEMES];\n *\n * The CSS files for the base themes are exposed via the `./css/<id>.css`\n * subpath export — apps `@import` only the ones they want at globals.css.\n */\nexport const BASE_THEMES: ThemeMeta[] = [\n defaultTheme,\n {\n id: \"neutral\",\n label: \"Neutral\",\n description: \"Cool grayscale, professional, restrained — shadcn defaults.\",\n swatch: { primary: \"#18181b\", primaryDark: \"#e5e5e5\" },\n },\n {\n id: \"woxom\",\n label: \"Woxom\",\n description: \"Navy + Tokyo Night neon dashboard. Reference brand-faithful theme.\",\n swatch: { primary: \"#1C4587\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"teal-pro\",\n label: \"Teal Pro\",\n description: \"Corporate teal — clean and slightly cool.\",\n swatch: { primary: \"#0f766e\", primaryDark: \"#14b8a6\" },\n },\n {\n id: \"warm-sun\",\n label: \"Warm Sun\",\n description: \"Energetic warm orange — friendly and approachable.\",\n swatch: { primary: \"#c2410c\", primaryDark: \"#fb923c\" },\n },\n {\n id: \"tokyo\",\n label: \"Tokyo\",\n description: \"Tokyo Night dark with neon accents; muted indigo when light.\",\n swatch: { primary: \"#3d59a1\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"vapor\",\n label: \"Vapor\",\n description: \"Pastel lavender light with vibrant accents; deep purple when dark.\",\n swatch: { primary: \"#6d4cff\", primaryDark: \"#a78bfa\" },\n },\n];\n\nexport const THEME_COOKIE_KEY = \"x-theme\";\n\n/**\n * Cookie name for the light/dark variant. Pair with `<ThemeBootScript />`\n * from `@augmenting-integrations/ui` to kill the SSR-mode-mismatch flash on\n * navigation. Default cookie value: `\"dark\"` or `\"light\"`.\n */\nexport const THEME_VARIANT_COOKIE_KEY = \"x-theme-variant\";\n\n/** Allowed values for the variant cookie. */\nexport type ThemeVariant = \"light\" | \"dark\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeO,IAAM,eAA0B;AAAA,EACrC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AACvD;AAaO,IAAM,cAA2B;AAAA,EACtC;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AACF;AAEO,IAAM,mBAAmB;AAOzB,IAAM,2BAA2B;","names":[]}
package/dist/index.d.ts CHANGED
@@ -9,8 +9,15 @@ export type ThemeMeta = {
9
9
  };
10
10
  };
11
11
  /**
12
- * Base themes shipped with the platform. Each tenant app extends this list
13
- * with its own brand themes via the merged-registry pattern:
12
+ * Canonical platform default theme. Spokes that do not declare a custom
13
+ * brand inherit this by setting `brand.defaults.theme = "default"` and
14
+ * importing `@augmenting-integrations/themes/css/default.css`. No spoke
15
+ * is allowed to register a custom theme under the id `"default"`.
16
+ */
17
+ export declare const defaultTheme: ThemeMeta;
18
+ /**
19
+ * Base themes shipped with the platform. The canonical `default` theme is
20
+ * always first so spokes can rely on its presence without further wiring.
14
21
  *
15
22
  * import { BASE_THEMES } from "@augmenting-integrations/themes";
16
23
  * import { acmeTheme } from "./styles/themes/acmeTheme";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAEhE,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAClD,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,EAAE,SAAS,EAqClC,CAAC;AAEF,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D,6CAA6C;AAC7C,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAEhE,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAClD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,SAK1B,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,EAAE,SAAS,EAsClC,CAAC;AAEF,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,oBAAoB,CAAC;AAE1D,6CAA6C;AAC7C,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,12 @@
1
1
  // src/index.ts
2
+ var defaultTheme = {
3
+ id: "default",
4
+ label: "Default",
5
+ description: "Platform default palette: deep navy with copper accents.",
6
+ swatch: { primary: "#1e3a5f", primaryDark: "#d97757" }
7
+ };
2
8
  var BASE_THEMES = [
9
+ defaultTheme,
3
10
  {
4
11
  id: "neutral",
5
12
  label: "Neutral",
@@ -42,6 +49,7 @@ var THEME_VARIANT_COOKIE_KEY = "x-theme-variant";
42
49
  export {
43
50
  BASE_THEMES,
44
51
  THEME_COOKIE_KEY,
45
- THEME_VARIANT_COOKIE_KEY
52
+ THEME_VARIANT_COOKIE_KEY,
53
+ defaultTheme
46
54
  };
47
55
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { ThemeName } from \"@augmenting-integrations/brand\";\n\nexport type ThemeMeta = {\n id: ThemeName;\n label: string;\n description: string;\n swatch: { primary: string; primaryDark: string };\n};\n\n/**\n * Base themes shipped with the platform. Each tenant app extends this list\n * with its own brand themes via the merged-registry pattern:\n *\n * import { BASE_THEMES } from \"@augmenting-integrations/themes\";\n * import { acmeTheme } from \"./styles/themes/acmeTheme\";\n * export const THEMES = [acmeTheme, ...BASE_THEMES];\n *\n * The CSS files for the base themes are exposed via the `./css/<id>.css`\n * subpath export — apps `@import` only the ones they want at globals.css.\n */\nexport const BASE_THEMES: ThemeMeta[] = [\n {\n id: \"neutral\",\n label: \"Neutral\",\n description: \"Cool grayscale, professional, restrained — shadcn defaults.\",\n swatch: { primary: \"#18181b\", primaryDark: \"#e5e5e5\" },\n },\n {\n id: \"woxom\",\n label: \"Woxom\",\n description: \"Navy + Tokyo Night neon dashboard. Reference brand-faithful theme.\",\n swatch: { primary: \"#1C4587\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"teal-pro\",\n label: \"Teal Pro\",\n description: \"Corporate teal — clean and slightly cool.\",\n swatch: { primary: \"#0f766e\", primaryDark: \"#14b8a6\" },\n },\n {\n id: \"warm-sun\",\n label: \"Warm Sun\",\n description: \"Energetic warm orange — friendly and approachable.\",\n swatch: { primary: \"#c2410c\", primaryDark: \"#fb923c\" },\n },\n {\n id: \"tokyo\",\n label: \"Tokyo\",\n description: \"Tokyo Night dark with neon accents; muted indigo when light.\",\n swatch: { primary: \"#3d59a1\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"vapor\",\n label: \"Vapor\",\n description: \"Pastel lavender light with vibrant accents; deep purple when dark.\",\n swatch: { primary: \"#6d4cff\", primaryDark: \"#a78bfa\" },\n },\n];\n\nexport const THEME_COOKIE_KEY = \"x-theme\";\n\n/**\n * Cookie name for the light/dark variant. Pair with `<ThemeBootScript />`\n * from `@augmenting-integrations/ui` to kill the SSR-mode-mismatch flash on\n * navigation. Default cookie value: `\"dark\"` or `\"light\"`.\n */\nexport const THEME_VARIANT_COOKIE_KEY = \"x-theme-variant\";\n\n/** Allowed values for the variant cookie. */\nexport type ThemeVariant = \"light\" | \"dark\";\n"],"mappings":";AAoBO,IAAM,cAA2B;AAAA,EACtC;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AACF;AAEO,IAAM,mBAAmB;AAOzB,IAAM,2BAA2B;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { ThemeName } from \"@augmenting-integrations/brand\";\n\nexport type ThemeMeta = {\n id: ThemeName;\n label: string;\n description: string;\n swatch: { primary: string; primaryDark: string };\n};\n\n/**\n * Canonical platform default theme. Spokes that do not declare a custom\n * brand inherit this by setting `brand.defaults.theme = \"default\"` and\n * importing `@augmenting-integrations/themes/css/default.css`. No spoke\n * is allowed to register a custom theme under the id `\"default\"`.\n */\nexport const defaultTheme: ThemeMeta = {\n id: \"default\",\n label: \"Default\",\n description: \"Platform default palette: deep navy with copper accents.\",\n swatch: { primary: \"#1e3a5f\", primaryDark: \"#d97757\" },\n};\n\n/**\n * Base themes shipped with the platform. The canonical `default` theme is\n * always first so spokes can rely on its presence without further wiring.\n *\n * import { BASE_THEMES } from \"@augmenting-integrations/themes\";\n * import { acmeTheme } from \"./styles/themes/acmeTheme\";\n * export const THEMES = [acmeTheme, ...BASE_THEMES];\n *\n * The CSS files for the base themes are exposed via the `./css/<id>.css`\n * subpath export — apps `@import` only the ones they want at globals.css.\n */\nexport const BASE_THEMES: ThemeMeta[] = [\n defaultTheme,\n {\n id: \"neutral\",\n label: \"Neutral\",\n description: \"Cool grayscale, professional, restrained — shadcn defaults.\",\n swatch: { primary: \"#18181b\", primaryDark: \"#e5e5e5\" },\n },\n {\n id: \"woxom\",\n label: \"Woxom\",\n description: \"Navy + Tokyo Night neon dashboard. Reference brand-faithful theme.\",\n swatch: { primary: \"#1C4587\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"teal-pro\",\n label: \"Teal Pro\",\n description: \"Corporate teal — clean and slightly cool.\",\n swatch: { primary: \"#0f766e\", primaryDark: \"#14b8a6\" },\n },\n {\n id: \"warm-sun\",\n label: \"Warm Sun\",\n description: \"Energetic warm orange — friendly and approachable.\",\n swatch: { primary: \"#c2410c\", primaryDark: \"#fb923c\" },\n },\n {\n id: \"tokyo\",\n label: \"Tokyo\",\n description: \"Tokyo Night dark with neon accents; muted indigo when light.\",\n swatch: { primary: \"#3d59a1\", primaryDark: \"#7aa2f7\" },\n },\n {\n id: \"vapor\",\n label: \"Vapor\",\n description: \"Pastel lavender light with vibrant accents; deep purple when dark.\",\n swatch: { primary: \"#6d4cff\", primaryDark: \"#a78bfa\" },\n },\n];\n\nexport const THEME_COOKIE_KEY = \"x-theme\";\n\n/**\n * Cookie name for the light/dark variant. Pair with `<ThemeBootScript />`\n * from `@augmenting-integrations/ui` to kill the SSR-mode-mismatch flash on\n * navigation. Default cookie value: `\"dark\"` or `\"light\"`.\n */\nexport const THEME_VARIANT_COOKIE_KEY = \"x-theme-variant\";\n\n/** Allowed values for the variant cookie. */\nexport type ThemeVariant = \"light\" | \"dark\";\n"],"mappings":";AAeO,IAAM,eAA0B;AAAA,EACrC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AACvD;AAaO,IAAM,cAA2B;AAAA,EACtC;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,QAAQ,EAAE,SAAS,WAAW,aAAa,UAAU;AAAA,EACvD;AACF;AAEO,IAAM,mBAAmB;AAOzB,IAAM,2BAA2B;","names":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@augmenting-integrations/themes",
3
- "version": "8.10.0",
3
+ "version": "8.12.0",
4
4
  "description": "Theme CSS files and registry. Each theme defines tokens for both data-theme attribute and .dark variant.",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -26,13 +26,13 @@
26
26
  "README.md"
27
27
  ],
28
28
  "peerDependencies": {
29
- "@augmenting-integrations/brand": "8.10.0"
29
+ "@augmenting-integrations/brand": "8.12.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "tsup": "^8.3.5",
33
33
  "typescript": "^5.7.2",
34
34
  "vitest": "^4.1.5",
35
- "@augmenting-integrations/brand": "8.10.0"
35
+ "@augmenting-integrations/brand": "8.12.0"
36
36
  },
37
37
  "scripts": {
38
38
  "build": "tsup",
@@ -0,0 +1,93 @@
1
+ /* ===================================================================== */
2
+ /* Default theme */
3
+ /* Canonical platform default. Deep navy + copper accents on warm-white */
4
+ /* surface (light). Navy depths + amber-copper highlights (dark). */
5
+ /* */
6
+ /* Spokes inherit this via `brand.defaults.theme = "default"` and */
7
+ /* `@import "@augmenting-integrations/themes/css/default.css"` in */
8
+ /* globals.css. Custom brand themes opt in by registering their own */
9
+ /* ThemeMeta + CSS file under a non-"default" id. */
10
+ /* ===================================================================== */
11
+
12
+ [data-theme="default"] {
13
+ --background: #fafaf7;
14
+ --foreground: #14213d;
15
+ --card: #ffffff;
16
+ --card-foreground: #14213d;
17
+ --popover: #ffffff;
18
+ --popover-foreground: #14213d;
19
+ --primary: #1e3a5f;
20
+ --primary-foreground: #ffffff;
21
+ --secondary: #fde6d4;
22
+ --secondary-foreground: #1e3a5f;
23
+ --muted: #ecedee;
24
+ --muted-foreground: #5b6478;
25
+ --accent: #d97757;
26
+ --accent-foreground: #ffffff;
27
+ --destructive: #b00020;
28
+ --destructive-foreground: #ffffff;
29
+ --success: #10b981;
30
+ --success-foreground: #064e3b;
31
+ --warning: #f59e0b;
32
+ --warning-foreground: #422006;
33
+ --info: #0284c7;
34
+ --info-foreground: #082f49;
35
+ --border: #d6d8df;
36
+ --input: #d6d8df;
37
+ --ring: #1e3a5f;
38
+ --chart-1: #1e3a5f;
39
+ --chart-2: #d97757;
40
+ --chart-3: #4a7d8c;
41
+ --chart-4: #c9a449;
42
+ --chart-5: #8a3a3a;
43
+ --radius: 0.5rem;
44
+ --sidebar: #f3f3ee;
45
+ --sidebar-foreground: #14213d;
46
+ --sidebar-primary: #1e3a5f;
47
+ --sidebar-primary-foreground: #ffffff;
48
+ --sidebar-accent: #fde6d4;
49
+ --sidebar-accent-foreground: #1e3a5f;
50
+ --sidebar-border: #d6d8df;
51
+ --sidebar-ring: #1e3a5f;
52
+ }
53
+
54
+ [data-theme="default"].dark {
55
+ --background: #0c1828;
56
+ --foreground: #e6e2d5;
57
+ --card: #14213d;
58
+ --card-foreground: #e6e2d5;
59
+ --popover: #14213d;
60
+ --popover-foreground: #e6e2d5;
61
+ --primary: #d97757;
62
+ --primary-foreground: #0c1828;
63
+ --secondary: #1f2f4d;
64
+ --secondary-foreground: #e6e2d5;
65
+ --muted: #1f2f4d;
66
+ --muted-foreground: #9aa3b9;
67
+ --accent: #f2c96b;
68
+ --accent-foreground: #0c1828;
69
+ --destructive: #f47174;
70
+ --destructive-foreground: #0c1828;
71
+ --success: #34d399;
72
+ --success-foreground: #052e1d;
73
+ --warning: #f2c96b;
74
+ --warning-foreground: #2b1d04;
75
+ --info: #6cc4d6;
76
+ --info-foreground: #0a2435;
77
+ --border: #2a3b5d;
78
+ --input: #1f2f4d;
79
+ --ring: #d97757;
80
+ --chart-1: #d97757;
81
+ --chart-2: #f2c96b;
82
+ --chart-3: #6cc4d6;
83
+ --chart-4: #b9c2d6;
84
+ --chart-5: #f47174;
85
+ --sidebar: #0a1422;
86
+ --sidebar-foreground: #e6e2d5;
87
+ --sidebar-primary: #d97757;
88
+ --sidebar-primary-foreground: #0c1828;
89
+ --sidebar-accent: #1f2f4d;
90
+ --sidebar-accent-foreground: #f2c96b;
91
+ --sidebar-border: #2a3b5d;
92
+ --sidebar-ring: #d97757;
93
+ }
@@ -0,0 +1,89 @@
1
+ /* ===================================================================== */
2
+ /* Neutral theme */
3
+ /* Cool grayscale, professional, restrained -- shadcn defaults. */
4
+ /* Light: near-white surfaces with deep zinc text. */
5
+ /* Dark: zinc-950 surface with light zinc text + a softer accent. */
6
+ /* ===================================================================== */
7
+
8
+ [data-theme="neutral"] {
9
+ --background: #ffffff;
10
+ --foreground: #09090b;
11
+ --card: #ffffff;
12
+ --card-foreground: #09090b;
13
+ --popover: #ffffff;
14
+ --popover-foreground: #09090b;
15
+ --primary: #18181b;
16
+ --primary-foreground: #fafafa;
17
+ --secondary: #f4f4f5;
18
+ --secondary-foreground: #18181b;
19
+ --muted: #f4f4f5;
20
+ --muted-foreground: #71717a;
21
+ --accent: #f4f4f5;
22
+ --accent-foreground: #18181b;
23
+ --destructive: #b91c1c;
24
+ --destructive-foreground: #fafafa;
25
+ --success: #15803d;
26
+ --success-foreground: #f0fdf4;
27
+ --warning: #b45309;
28
+ --warning-foreground: #fefce8;
29
+ --info: #1d4ed8;
30
+ --info-foreground: #eff6ff;
31
+ --border: #e4e4e7;
32
+ --input: #e4e4e7;
33
+ --ring: #18181b;
34
+ --chart-1: #18181b;
35
+ --chart-2: #52525b;
36
+ --chart-3: #a1a1aa;
37
+ --chart-4: #d4d4d8;
38
+ --chart-5: #e4e4e7;
39
+ --radius: 0.5rem;
40
+ --sidebar: #fafafa;
41
+ --sidebar-foreground: #09090b;
42
+ --sidebar-primary: #18181b;
43
+ --sidebar-primary-foreground: #fafafa;
44
+ --sidebar-accent: #f4f4f5;
45
+ --sidebar-accent-foreground: #18181b;
46
+ --sidebar-border: #e4e4e7;
47
+ --sidebar-ring: #18181b;
48
+ }
49
+
50
+ [data-theme="neutral"].dark {
51
+ --background: #09090b;
52
+ --foreground: #fafafa;
53
+ --card: #18181b;
54
+ --card-foreground: #fafafa;
55
+ --popover: #18181b;
56
+ --popover-foreground: #fafafa;
57
+ --primary: #e5e5e5;
58
+ --primary-foreground: #09090b;
59
+ --secondary: #27272a;
60
+ --secondary-foreground: #fafafa;
61
+ --muted: #27272a;
62
+ --muted-foreground: #a1a1aa;
63
+ --accent: #27272a;
64
+ --accent-foreground: #fafafa;
65
+ --destructive: #ef4444;
66
+ --destructive-foreground: #fafafa;
67
+ --success: #4ade80;
68
+ --success-foreground: #052e1d;
69
+ --warning: #fbbf24;
70
+ --warning-foreground: #1f1300;
71
+ --info: #60a5fa;
72
+ --info-foreground: #0a2540;
73
+ --border: #27272a;
74
+ --input: #27272a;
75
+ --ring: #d4d4d8;
76
+ --chart-1: #e5e5e5;
77
+ --chart-2: #a1a1aa;
78
+ --chart-3: #71717a;
79
+ --chart-4: #52525b;
80
+ --chart-5: #3f3f46;
81
+ --sidebar: #09090b;
82
+ --sidebar-foreground: #fafafa;
83
+ --sidebar-primary: #e5e5e5;
84
+ --sidebar-primary-foreground: #09090b;
85
+ --sidebar-accent: #27272a;
86
+ --sidebar-accent-foreground: #fafafa;
87
+ --sidebar-border: #27272a;
88
+ --sidebar-ring: #d4d4d8;
89
+ }