@shepai/cli 1.2.0 → 1.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 (208) hide show
  1. package/README.md +29 -12
  2. package/dist/eslint.config.d.mts +3 -0
  3. package/dist/eslint.config.d.mts.map +1 -0
  4. package/dist/eslint.config.mjs +188 -0
  5. package/dist/src/application/ports/output/index.d.ts +8 -0
  6. package/dist/src/application/ports/output/index.d.ts.map +1 -0
  7. package/dist/src/application/ports/output/index.js +7 -0
  8. package/dist/src/application/ports/output/settings.repository.interface.d.ts +43 -0
  9. package/dist/src/application/ports/output/settings.repository.interface.d.ts.map +1 -0
  10. package/dist/src/application/ports/output/settings.repository.interface.js +11 -0
  11. package/dist/src/application/use-cases/settings/index.d.ts +9 -0
  12. package/dist/src/application/use-cases/settings/index.d.ts.map +1 -0
  13. package/dist/src/application/use-cases/settings/index.js +8 -0
  14. package/dist/src/application/use-cases/settings/initialize-settings.use-case.d.ts +33 -0
  15. package/dist/src/application/use-cases/settings/initialize-settings.use-case.d.ts.map +1 -0
  16. package/dist/src/application/use-cases/settings/initialize-settings.use-case.js +63 -0
  17. package/dist/src/application/use-cases/settings/load-settings.use-case.d.ts +33 -0
  18. package/dist/src/application/use-cases/settings/load-settings.use-case.d.ts.map +1 -0
  19. package/dist/src/application/use-cases/settings/load-settings.use-case.js +57 -0
  20. package/dist/src/application/use-cases/settings/update-settings.use-case.d.ts +33 -0
  21. package/dist/src/application/use-cases/settings/update-settings.use-case.d.ts.map +1 -0
  22. package/dist/src/application/use-cases/settings/update-settings.use-case.js +56 -0
  23. package/dist/src/domain/factories/index.d.ts +7 -0
  24. package/dist/src/domain/factories/index.d.ts.map +1 -0
  25. package/dist/src/domain/factories/index.js +6 -0
  26. package/dist/src/domain/factories/settings-defaults.factory.d.ts +36 -0
  27. package/dist/src/domain/factories/settings-defaults.factory.d.ts.map +1 -0
  28. package/dist/src/domain/factories/settings-defaults.factory.js +81 -0
  29. package/dist/src/domain/generated/output.d.ts +717 -0
  30. package/dist/src/domain/generated/output.d.ts.map +1 -0
  31. package/dist/src/domain/generated/output.js +93 -0
  32. package/dist/src/index.d.ts.map +1 -0
  33. package/dist/src/infrastructure/di/container.d.ts +27 -0
  34. package/dist/src/infrastructure/di/container.d.ts.map +1 -0
  35. package/dist/src/infrastructure/di/container.js +53 -0
  36. package/dist/src/infrastructure/persistence/sqlite/connection.d.ts +39 -0
  37. package/dist/src/infrastructure/persistence/sqlite/connection.d.ts.map +1 -0
  38. package/dist/src/infrastructure/persistence/sqlite/connection.js +76 -0
  39. package/dist/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +50 -0
  40. package/dist/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -0
  41. package/dist/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +80 -0
  42. package/dist/src/infrastructure/persistence/sqlite/migrations.d.ts +31 -0
  43. package/dist/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -0
  44. package/dist/src/infrastructure/persistence/sqlite/migrations.js +66 -0
  45. package/dist/src/infrastructure/repositories/sqlite-settings.repository.d.ts +40 -0
  46. package/dist/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -0
  47. package/dist/src/infrastructure/repositories/sqlite-settings.repository.js +123 -0
  48. package/dist/src/infrastructure/services/filesystem/shep-directory.service.d.ts +41 -0
  49. package/dist/src/infrastructure/services/filesystem/shep-directory.service.d.ts.map +1 -0
  50. package/dist/src/infrastructure/services/filesystem/shep-directory.service.js +64 -0
  51. package/dist/src/infrastructure/services/settings.service.d.ts +50 -0
  52. package/dist/src/infrastructure/services/settings.service.d.ts.map +1 -0
  53. package/dist/src/infrastructure/services/settings.service.js +67 -0
  54. package/dist/src/infrastructure/services/version.service.d.ts.map +1 -0
  55. package/dist/src/presentation/cli/commands/version.command.d.ts.map +1 -0
  56. package/dist/{presentation → src/presentation}/cli/index.d.ts +1 -1
  57. package/dist/src/presentation/cli/index.d.ts.map +1 -0
  58. package/dist/src/presentation/cli/index.js +86 -0
  59. package/dist/src/presentation/cli/ui/colors.d.ts.map +1 -0
  60. package/dist/src/presentation/cli/ui/formatters.d.ts.map +1 -0
  61. package/dist/src/presentation/cli/ui/index.d.ts.map +1 -0
  62. package/dist/src/presentation/cli/ui/messages.d.ts.map +1 -0
  63. package/dist/src/presentation/cli/ui/symbols.d.ts.map +1 -0
  64. package/dist/src/presentation/web/app/layout.d.ts +7 -0
  65. package/dist/src/presentation/web/app/layout.d.ts.map +1 -0
  66. package/dist/src/presentation/web/app/layout.js +21 -0
  67. package/dist/src/presentation/web/app/not-found.d.ts +2 -0
  68. package/dist/src/presentation/web/app/not-found.d.ts.map +1 -0
  69. package/dist/src/presentation/web/app/not-found.js +4 -0
  70. package/dist/src/presentation/web/app/page.d.ts +2 -0
  71. package/dist/src/presentation/web/app/page.d.ts.map +1 -0
  72. package/dist/src/presentation/web/app/page.js +6 -0
  73. package/dist/src/presentation/web/app/version/page.d.ts +2 -0
  74. package/dist/src/presentation/web/app/version/page.d.ts.map +1 -0
  75. package/dist/src/presentation/web/app/version/page.js +16 -0
  76. package/dist/src/presentation/web/components/features/index.d.ts +2 -0
  77. package/dist/src/presentation/web/components/features/index.d.ts.map +1 -0
  78. package/dist/src/presentation/web/components/features/index.js +2 -0
  79. package/dist/src/presentation/web/components/features/theme-toggle/index.d.ts +2 -0
  80. package/dist/src/presentation/web/components/features/theme-toggle/index.d.ts.map +1 -0
  81. package/dist/src/presentation/web/components/features/theme-toggle/index.js +1 -0
  82. package/dist/src/presentation/web/components/features/theme-toggle/theme-toggle.d.ts +2 -0
  83. package/dist/src/presentation/web/components/features/theme-toggle/theme-toggle.d.ts.map +1 -0
  84. package/dist/src/presentation/web/components/features/theme-toggle/theme-toggle.js +19 -0
  85. package/dist/src/presentation/web/components/features/theme-toggle/theme-toggle.stories.d.ts +8 -0
  86. package/dist/src/presentation/web/components/features/theme-toggle/theme-toggle.stories.d.ts.map +1 -0
  87. package/dist/src/presentation/web/components/features/theme-toggle/theme-toggle.stories.js +17 -0
  88. package/dist/src/presentation/web/components/ui/accordion.d.ts +8 -0
  89. package/dist/src/presentation/web/components/ui/accordion.d.ts.map +1 -0
  90. package/dist/src/presentation/web/components/ui/accordion.js +14 -0
  91. package/dist/src/presentation/web/components/ui/accordion.stories.d.ts +29 -0
  92. package/dist/src/presentation/web/components/ui/accordion.stories.d.ts.map +1 -0
  93. package/dist/src/presentation/web/components/ui/accordion.stories.js +35 -0
  94. package/dist/src/presentation/web/components/ui/alert.d.ts +9 -0
  95. package/dist/src/presentation/web/components/ui/alert.d.ts.map +1 -0
  96. package/dist/src/presentation/web/components/ui/alert.js +22 -0
  97. package/dist/src/presentation/web/components/ui/alert.stories.d.ts +10 -0
  98. package/dist/src/presentation/web/components/ui/alert.stories.d.ts.map +1 -0
  99. package/dist/src/presentation/web/components/ui/alert.stories.js +30 -0
  100. package/dist/src/presentation/web/components/ui/badge.d.ts +10 -0
  101. package/dist/src/presentation/web/components/ui/badge.d.ts.map +1 -0
  102. package/dist/src/presentation/web/components/ui/badge.js +20 -0
  103. package/dist/src/presentation/web/components/ui/badge.stories.d.ts +11 -0
  104. package/dist/src/presentation/web/components/ui/badge.stories.d.ts.map +1 -0
  105. package/dist/src/presentation/web/components/ui/badge.stories.js +44 -0
  106. package/dist/src/presentation/web/components/ui/button.d.ts +12 -0
  107. package/dist/src/presentation/web/components/ui/button.d.ts.map +1 -0
  108. package/dist/src/presentation/web/components/ui/button.js +33 -0
  109. package/dist/src/presentation/web/components/ui/button.stories.d.ts +17 -0
  110. package/dist/src/presentation/web/components/ui/button.stories.d.ts.map +1 -0
  111. package/dist/src/presentation/web/components/ui/button.stories.js +84 -0
  112. package/dist/src/presentation/web/components/ui/card.d.ts +9 -0
  113. package/dist/src/presentation/web/components/ui/card.d.ts.map +1 -0
  114. package/dist/src/presentation/web/components/ui/card.js +16 -0
  115. package/dist/src/presentation/web/components/ui/card.stories.d.ts +10 -0
  116. package/dist/src/presentation/web/components/ui/card.stories.d.ts.map +1 -0
  117. package/dist/src/presentation/web/components/ui/card.stories.js +24 -0
  118. package/dist/src/presentation/web/components/ui/dialog.d.ts +20 -0
  119. package/dist/src/presentation/web/components/ui/dialog.d.ts.map +1 -0
  120. package/dist/src/presentation/web/components/ui/dialog.js +23 -0
  121. package/dist/src/presentation/web/components/ui/dialog.stories.d.ts +9 -0
  122. package/dist/src/presentation/web/components/ui/dialog.stories.d.ts.map +1 -0
  123. package/dist/src/presentation/web/components/ui/dialog.stories.js +23 -0
  124. package/dist/src/presentation/web/components/ui/index.d.ts +13 -0
  125. package/dist/src/presentation/web/components/ui/index.d.ts.map +1 -0
  126. package/dist/src/presentation/web/components/ui/index.js +14 -0
  127. package/dist/src/presentation/web/components/ui/input.d.ts +4 -0
  128. package/dist/src/presentation/web/components/ui/input.d.ts.map +1 -0
  129. package/dist/src/presentation/web/components/ui/input.js +8 -0
  130. package/dist/src/presentation/web/components/ui/input.stories.d.ts +13 -0
  131. package/dist/src/presentation/web/components/ui/input.stories.d.ts.map +1 -0
  132. package/dist/src/presentation/web/components/ui/input.stories.js +55 -0
  133. package/dist/src/presentation/web/components/ui/label.d.ts +6 -0
  134. package/dist/src/presentation/web/components/ui/label.d.ts.map +1 -0
  135. package/dist/src/presentation/web/components/ui/label.js +10 -0
  136. package/dist/src/presentation/web/components/ui/label.stories.d.ts +9 -0
  137. package/dist/src/presentation/web/components/ui/label.stories.d.ts.map +1 -0
  138. package/dist/src/presentation/web/components/ui/label.stories.js +23 -0
  139. package/dist/src/presentation/web/components/ui/popover.d.ts +8 -0
  140. package/dist/src/presentation/web/components/ui/popover.d.ts.map +1 -0
  141. package/dist/src/presentation/web/components/ui/popover.js +11 -0
  142. package/dist/src/presentation/web/components/ui/popover.stories.d.ts +10 -0
  143. package/dist/src/presentation/web/components/ui/popover.stories.d.ts.map +1 -0
  144. package/dist/src/presentation/web/components/ui/popover.stories.js +26 -0
  145. package/dist/src/presentation/web/components/ui/select.d.ts +14 -0
  146. package/dist/src/presentation/web/components/ui/select.d.ts.map +1 -0
  147. package/dist/src/presentation/web/components/ui/select.js +26 -0
  148. package/dist/src/presentation/web/components/ui/select.stories.d.ts +10 -0
  149. package/dist/src/presentation/web/components/ui/select.stories.d.ts.map +1 -0
  150. package/dist/src/presentation/web/components/ui/select.stories.js +23 -0
  151. package/dist/src/presentation/web/components/ui/sonner.d.ts +5 -0
  152. package/dist/src/presentation/web/components/ui/sonner.d.ts.map +1 -0
  153. package/dist/src/presentation/web/components/ui/sonner.js +14 -0
  154. package/dist/src/presentation/web/components/ui/sonner.stories.d.ts +13 -0
  155. package/dist/src/presentation/web/components/ui/sonner.stories.d.ts.map +1 -0
  156. package/dist/src/presentation/web/components/ui/sonner.stories.js +51 -0
  157. package/dist/src/presentation/web/components/ui/tabs.d.ts +8 -0
  158. package/dist/src/presentation/web/components/ui/tabs.d.ts.map +1 -0
  159. package/dist/src/presentation/web/components/ui/tabs.js +13 -0
  160. package/dist/src/presentation/web/components/ui/tabs.stories.d.ts +9 -0
  161. package/dist/src/presentation/web/components/ui/tabs.stories.d.ts.map +1 -0
  162. package/dist/src/presentation/web/components/ui/tabs.stories.js +23 -0
  163. package/dist/src/presentation/web/eslint.config.d.mts +3 -0
  164. package/dist/src/presentation/web/eslint.config.d.mts.map +1 -0
  165. package/dist/src/presentation/web/eslint.config.mjs +15 -0
  166. package/dist/src/presentation/web/hooks/useTheme.d.ts +12 -0
  167. package/dist/src/presentation/web/hooks/useTheme.d.ts.map +1 -0
  168. package/dist/src/presentation/web/hooks/useTheme.js +73 -0
  169. package/dist/src/presentation/web/lib/utils.d.ts +11 -0
  170. package/dist/src/presentation/web/lib/utils.d.ts.map +1 -0
  171. package/dist/src/presentation/web/lib/utils.js +13 -0
  172. package/dist/src/presentation/web/next.config.d.ts +4 -0
  173. package/dist/src/presentation/web/next.config.d.ts.map +1 -0
  174. package/dist/src/presentation/web/next.config.js +9 -0
  175. package/dist/src/presentation/web/postcss.config.d.mts +4 -0
  176. package/dist/src/presentation/web/postcss.config.d.mts.map +1 -0
  177. package/dist/src/presentation/web/postcss.config.mjs +8 -0
  178. package/dist/src/presentation/web/types/theme.d.ts +12 -0
  179. package/dist/src/presentation/web/types/theme.d.ts.map +1 -0
  180. package/dist/src/presentation/web/types/theme.js +5 -0
  181. package/dist/tsconfig.build.tsbuildinfo +1 -0
  182. package/package.json +60 -12
  183. package/dist/index.d.ts.map +0 -1
  184. package/dist/infrastructure/services/version.service.d.ts.map +0 -1
  185. package/dist/presentation/cli/commands/version.command.d.ts.map +0 -1
  186. package/dist/presentation/cli/index.d.ts.map +0 -1
  187. package/dist/presentation/cli/index.js +0 -48
  188. package/dist/presentation/cli/ui/colors.d.ts.map +0 -1
  189. package/dist/presentation/cli/ui/formatters.d.ts.map +0 -1
  190. package/dist/presentation/cli/ui/index.d.ts.map +0 -1
  191. package/dist/presentation/cli/ui/messages.d.ts.map +0 -1
  192. package/dist/presentation/cli/ui/symbols.d.ts.map +0 -1
  193. /package/dist/{index.d.ts → src/index.d.ts} +0 -0
  194. /package/dist/{index.js → src/index.js} +0 -0
  195. /package/dist/{infrastructure → src/infrastructure}/services/version.service.d.ts +0 -0
  196. /package/dist/{infrastructure → src/infrastructure}/services/version.service.js +0 -0
  197. /package/dist/{presentation → src/presentation}/cli/commands/version.command.d.ts +0 -0
  198. /package/dist/{presentation → src/presentation}/cli/commands/version.command.js +0 -0
  199. /package/dist/{presentation → src/presentation}/cli/ui/colors.d.ts +0 -0
  200. /package/dist/{presentation → src/presentation}/cli/ui/colors.js +0 -0
  201. /package/dist/{presentation → src/presentation}/cli/ui/formatters.d.ts +0 -0
  202. /package/dist/{presentation → src/presentation}/cli/ui/formatters.js +0 -0
  203. /package/dist/{presentation → src/presentation}/cli/ui/index.d.ts +0 -0
  204. /package/dist/{presentation → src/presentation}/cli/ui/index.js +0 -0
  205. /package/dist/{presentation → src/presentation}/cli/ui/messages.d.ts +0 -0
  206. /package/dist/{presentation → src/presentation}/cli/ui/messages.js +0 -0
  207. /package/dist/{presentation → src/presentation}/cli/ui/symbols.d.ts +0 -0
  208. /package/dist/{presentation → src/presentation}/cli/ui/symbols.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/web/hooks/useTheme.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,KAAK,EAAqB,MAAM,eAAe,CAAC;AAE9D;;;GAGG;AACH,wBAAgB,QAAQ;;;yBAoCT,KAAK;;EA6CnB"}
@@ -0,0 +1,73 @@
1
+ 'use client';
2
+ import { useCallback, useEffect, useState } from 'react';
3
+ import { THEME_STORAGE_KEY } from '@/types/theme';
4
+ /**
5
+ * Hook to manage theme state with localStorage persistence
6
+ * and system preference detection.
7
+ */
8
+ export function useTheme() {
9
+ const [theme, setThemeState] = useState('system');
10
+ const [resolvedTheme, setResolvedTheme] = useState('light');
11
+ // Get the system preference
12
+ const getSystemTheme = useCallback(() => {
13
+ if (typeof window === 'undefined') {
14
+ return 'light';
15
+ }
16
+ return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
17
+ }, []);
18
+ // Resolve the actual theme based on current setting
19
+ const resolveTheme = useCallback((currentTheme) => {
20
+ if (currentTheme === 'system') {
21
+ return getSystemTheme();
22
+ }
23
+ return currentTheme;
24
+ }, [getSystemTheme]);
25
+ // Apply theme to document
26
+ const applyTheme = useCallback((resolved) => {
27
+ if (typeof document === 'undefined') {
28
+ return;
29
+ }
30
+ const root = document.documentElement;
31
+ root.classList.remove('light', 'dark');
32
+ root.classList.add(resolved);
33
+ setResolvedTheme(resolved);
34
+ }, []);
35
+ // Set theme and persist to localStorage
36
+ const setTheme = useCallback((newTheme) => {
37
+ setThemeState(newTheme);
38
+ if (typeof localStorage !== 'undefined') {
39
+ localStorage.setItem(THEME_STORAGE_KEY, newTheme);
40
+ }
41
+ const resolved = resolveTheme(newTheme);
42
+ applyTheme(resolved);
43
+ }, [resolveTheme, applyTheme]);
44
+ // Initialize theme from localStorage or system preference
45
+ useEffect(() => {
46
+ const stored = localStorage.getItem(THEME_STORAGE_KEY);
47
+ const initialTheme = stored ?? 'system';
48
+ setThemeState(initialTheme);
49
+ const resolved = resolveTheme(initialTheme);
50
+ applyTheme(resolved);
51
+ }, [resolveTheme, applyTheme]);
52
+ // Listen for system preference changes
53
+ useEffect(() => {
54
+ if (typeof window === 'undefined') {
55
+ return;
56
+ }
57
+ const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
58
+ const handleChange = () => {
59
+ if (theme === 'system') {
60
+ const resolved = resolveTheme('system');
61
+ applyTheme(resolved);
62
+ }
63
+ };
64
+ mediaQuery.addEventListener('change', handleChange);
65
+ return () => mediaQuery.removeEventListener('change', handleChange);
66
+ }, [theme, resolveTheme, applyTheme]);
67
+ return {
68
+ theme,
69
+ resolvedTheme,
70
+ setTheme,
71
+ systemTheme: getSystemTheme(),
72
+ };
73
+ }
@@ -0,0 +1,11 @@
1
+ import { type ClassValue } from 'clsx';
2
+ /**
3
+ * Combines class names using clsx and merges Tailwind classes intelligently
4
+ * with tailwind-merge to avoid conflicts.
5
+ *
6
+ * @example
7
+ * cn('px-2 py-1', 'px-4') // Returns 'py-1 px-4' (px-4 wins)
8
+ * cn('text-red-500', condition && 'text-blue-500') // Conditional classes
9
+ */
10
+ export declare function cn(...inputs: ClassValue[]): string;
11
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/web/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C;;;;;;;GAOG;AACH,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
@@ -0,0 +1,13 @@
1
+ import { clsx } from 'clsx';
2
+ import { twMerge } from 'tailwind-merge';
3
+ /**
4
+ * Combines class names using clsx and merges Tailwind classes intelligently
5
+ * with tailwind-merge to avoid conflicts.
6
+ *
7
+ * @example
8
+ * cn('px-2 py-1', 'px-4') // Returns 'py-1 px-4' (px-4 wins)
9
+ * cn('text-red-500', condition && 'text-blue-500') // Conditional classes
10
+ */
11
+ export function cn(...inputs) {
12
+ return twMerge(clsx(inputs));
13
+ }
@@ -0,0 +1,4 @@
1
+ import type { NextConfig } from 'next';
2
+ declare const nextConfig: NextConfig;
3
+ export default nextConfig;
4
+ //# sourceMappingURL=next.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next.config.d.ts","sourceRoot":"","sources":["../../../../src/presentation/web/next.config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAEvC,QAAA,MAAM,UAAU,EAAE,UASjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,9 @@
1
+ const nextConfig = {
2
+ // Enable Turbopack for faster development builds
3
+ turbopack: {},
4
+ // Enable typed routes (moved from experimental in Next.js 16)
5
+ typedRoutes: true,
6
+ // Configure the output directory
7
+ distDir: '.next',
8
+ };
9
+ export default nextConfig;
@@ -0,0 +1,4 @@
1
+ export default config;
2
+ /** @type {import('postcss-load-config').Config} */
3
+ declare const config: any;
4
+ //# sourceMappingURL=postcss.config.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postcss.config.d.mts","sourceRoot":"","sources":["../../../../src/presentation/web/postcss.config.mjs"],"names":[],"mappings":";AAAA,mDAAmD;AACnD,0BAKE"}
@@ -0,0 +1,8 @@
1
+ /** @type {import('postcss-load-config').Config} */
2
+ const config = {
3
+ plugins: {
4
+ '@tailwindcss/postcss': {},
5
+ autoprefixer: {},
6
+ },
7
+ };
8
+ export default config;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Theme type definitions for the Shep AI Web UI
3
+ */
4
+ export type Theme = 'light' | 'dark' | 'system';
5
+ export interface ThemeContextValue {
6
+ theme: Theme;
7
+ resolvedTheme: 'light' | 'dark';
8
+ setTheme: (theme: Theme) => void;
9
+ }
10
+ export declare const THEME_STORAGE_KEY = "shep-theme";
11
+ export declare const themes: Theme[];
12
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/web/types/theme.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEhD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,KAAK,CAAC;IACb,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAE9C,eAAO,MAAM,MAAM,EAAE,KAAK,EAAgC,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Theme type definitions for the Shep AI Web UI
3
+ */
4
+ export const THEME_STORAGE_KEY = 'shep-theme';
5
+ export const themes = ['light', 'dark', 'system'];