@shellui/core 0.0.11 → 0.0.13

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 (172) hide show
  1. package/README.md +0 -11
  2. package/dist/ContentView-CZG-ro_B.js +146 -0
  3. package/dist/ContentView-CZG-ro_B.js.map +1 -0
  4. package/dist/CookiePreferencesView-Bb3hFqw1.js +213 -0
  5. package/dist/CookiePreferencesView-Bb3hFqw1.js.map +1 -0
  6. package/dist/DefaultLayout-D3IpgS4j.js +406 -0
  7. package/dist/DefaultLayout-D3IpgS4j.js.map +1 -0
  8. package/dist/FullscreenLayout-Do9vAfl8.js +30 -0
  9. package/dist/FullscreenLayout-Do9vAfl8.js.map +1 -0
  10. package/dist/HomeView-DwckTuxz.js +21 -0
  11. package/dist/HomeView-DwckTuxz.js.map +1 -0
  12. package/dist/NotFoundView-DD7azhz-.js +52 -0
  13. package/dist/NotFoundView-DD7azhz-.js.map +1 -0
  14. package/dist/OverlayShell-kDY56DaN.js +642 -0
  15. package/dist/OverlayShell-kDY56DaN.js.map +1 -0
  16. package/dist/SettingsView-Bt4I-KDT.js +2207 -0
  17. package/dist/SettingsView-Bt4I-KDT.js.map +1 -0
  18. package/dist/ViewRoute-ChSPabOy.js +32 -0
  19. package/dist/ViewRoute-ChSPabOy.js.map +1 -0
  20. package/dist/WindowsLayout-CEqkRKyk.js +633 -0
  21. package/dist/WindowsLayout-CEqkRKyk.js.map +1 -0
  22. package/dist/app.d.ts +3 -0
  23. package/dist/app.d.ts.map +1 -0
  24. package/dist/components/ContentView.d.ts +10 -0
  25. package/dist/components/ContentView.d.ts.map +1 -0
  26. package/dist/components/HomeView.d.ts +2 -0
  27. package/dist/components/HomeView.d.ts.map +1 -0
  28. package/dist/components/LoadingOverlay.d.ts +2 -0
  29. package/dist/components/LoadingOverlay.d.ts.map +1 -0
  30. package/dist/components/NotFoundView.d.ts +2 -0
  31. package/dist/components/NotFoundView.d.ts.map +1 -0
  32. package/dist/components/RouteErrorBoundary.d.ts +2 -0
  33. package/dist/components/RouteErrorBoundary.d.ts.map +1 -0
  34. package/dist/components/ViewRoute.d.ts +7 -0
  35. package/dist/components/ViewRoute.d.ts.map +1 -0
  36. package/dist/components/ui/alert-dialog.d.ts +32 -0
  37. package/dist/components/ui/alert-dialog.d.ts.map +1 -0
  38. package/dist/components/ui/breadcrumb.d.ts +20 -0
  39. package/dist/components/ui/breadcrumb.d.ts.map +1 -0
  40. package/dist/components/ui/button-group.d.ts +7 -0
  41. package/dist/components/ui/button-group.d.ts.map +1 -0
  42. package/dist/components/ui/button.d.ts +12 -0
  43. package/dist/components/ui/button.d.ts.map +1 -0
  44. package/dist/components/ui/dialog.d.ts +24 -0
  45. package/dist/components/ui/dialog.d.ts.map +1 -0
  46. package/dist/components/ui/drawer.d.ts +38 -0
  47. package/dist/components/ui/drawer.d.ts.map +1 -0
  48. package/dist/components/ui/select.d.ts +5 -0
  49. package/dist/components/ui/select.d.ts.map +1 -0
  50. package/dist/components/ui/sidebar.d.ts +46 -0
  51. package/dist/components/ui/sidebar.d.ts.map +1 -0
  52. package/dist/components/ui/sonner.d.ts +6 -0
  53. package/dist/components/ui/sonner.d.ts.map +1 -0
  54. package/dist/components/ui/switch.d.ts +8 -0
  55. package/dist/components/ui/switch.d.ts.map +1 -0
  56. package/dist/constants/urls.d.ts +6 -0
  57. package/dist/constants/urls.d.ts.map +1 -0
  58. package/dist/constants/urls.js +8 -0
  59. package/dist/constants/urls.js.map +1 -0
  60. package/dist/features/alertDialog/DialogContext.d.ts +12 -0
  61. package/dist/features/alertDialog/DialogContext.d.ts.map +1 -0
  62. package/dist/features/config/ConfigProvider.d.ts +15 -0
  63. package/dist/features/config/ConfigProvider.d.ts.map +1 -0
  64. package/dist/features/config/types.d.ts +177 -0
  65. package/dist/features/config/types.d.ts.map +1 -0
  66. package/dist/features/config/useConfig.d.ts +8 -0
  67. package/dist/features/config/useConfig.d.ts.map +1 -0
  68. package/dist/features/cookieConsent/CookieConsentModal.d.ts +6 -0
  69. package/dist/features/cookieConsent/CookieConsentModal.d.ts.map +1 -0
  70. package/dist/features/cookieConsent/CookiePreferencesView.d.ts +2 -0
  71. package/dist/features/cookieConsent/CookiePreferencesView.d.ts.map +1 -0
  72. package/dist/features/cookieConsent/cookieConsent.d.ts +22 -0
  73. package/dist/features/cookieConsent/cookieConsent.d.ts.map +1 -0
  74. package/dist/features/cookieConsent/useCookieConsent.d.ts +15 -0
  75. package/dist/features/cookieConsent/useCookieConsent.d.ts.map +1 -0
  76. package/dist/features/drawer/DrawerContext.d.ts +24 -0
  77. package/dist/features/drawer/DrawerContext.d.ts.map +1 -0
  78. package/dist/features/layouts/AppLayout.d.ts +12 -0
  79. package/dist/features/layouts/AppLayout.d.ts.map +1 -0
  80. package/dist/features/layouts/DefaultLayout.d.ts +10 -0
  81. package/dist/features/layouts/DefaultLayout.d.ts.map +1 -0
  82. package/dist/features/layouts/FullscreenLayout.d.ts +9 -0
  83. package/dist/features/layouts/FullscreenLayout.d.ts.map +1 -0
  84. package/dist/features/layouts/LayoutProviders.d.ts +9 -0
  85. package/dist/features/layouts/LayoutProviders.d.ts.map +1 -0
  86. package/dist/features/layouts/OverlayShell.d.ts +10 -0
  87. package/dist/features/layouts/OverlayShell.d.ts.map +1 -0
  88. package/dist/features/layouts/WindowsLayout.d.ts +24 -0
  89. package/dist/features/layouts/WindowsLayout.d.ts.map +1 -0
  90. package/dist/features/layouts/utils.d.ts +16 -0
  91. package/dist/features/layouts/utils.d.ts.map +1 -0
  92. package/dist/features/modal/ModalContext.d.ts +20 -0
  93. package/dist/features/modal/ModalContext.d.ts.map +1 -0
  94. package/dist/features/sentry/initSentry.d.ts +14 -0
  95. package/dist/features/sentry/initSentry.d.ts.map +1 -0
  96. package/dist/features/settings/SettingsContext.d.ts +10 -0
  97. package/dist/features/settings/SettingsContext.d.ts.map +1 -0
  98. package/dist/features/settings/SettingsIcons.d.ts +22 -0
  99. package/dist/features/settings/SettingsIcons.d.ts.map +1 -0
  100. package/dist/features/settings/SettingsProvider.d.ts +5 -0
  101. package/dist/features/settings/SettingsProvider.d.ts.map +1 -0
  102. package/dist/features/settings/SettingsRoutes.d.ts +7 -0
  103. package/dist/features/settings/SettingsRoutes.d.ts.map +1 -0
  104. package/dist/features/settings/SettingsView.d.ts +2 -0
  105. package/dist/features/settings/SettingsView.d.ts.map +1 -0
  106. package/dist/features/settings/components/Advanced.d.ts +2 -0
  107. package/dist/features/settings/components/Advanced.d.ts.map +1 -0
  108. package/dist/features/settings/components/Appearance.d.ts +2 -0
  109. package/dist/features/settings/components/Appearance.d.ts.map +1 -0
  110. package/dist/features/settings/components/DataPrivacy.d.ts +2 -0
  111. package/dist/features/settings/components/DataPrivacy.d.ts.map +1 -0
  112. package/dist/features/settings/components/Develop.d.ts +2 -0
  113. package/dist/features/settings/components/Develop.d.ts.map +1 -0
  114. package/dist/features/settings/components/LanguageAndRegion.d.ts +2 -0
  115. package/dist/features/settings/components/LanguageAndRegion.d.ts.map +1 -0
  116. package/dist/features/settings/components/ServiceWorker.d.ts +2 -0
  117. package/dist/features/settings/components/ServiceWorker.d.ts.map +1 -0
  118. package/dist/features/settings/components/UpdateApp.d.ts +2 -0
  119. package/dist/features/settings/components/UpdateApp.d.ts.map +1 -0
  120. package/dist/features/settings/components/develop/DialogTestButtons.d.ts +2 -0
  121. package/dist/features/settings/components/develop/DialogTestButtons.d.ts.map +1 -0
  122. package/dist/features/settings/components/develop/DrawerTestButtons.d.ts +2 -0
  123. package/dist/features/settings/components/develop/DrawerTestButtons.d.ts.map +1 -0
  124. package/dist/features/settings/components/develop/ModalTestButtons.d.ts +2 -0
  125. package/dist/features/settings/components/develop/ModalTestButtons.d.ts.map +1 -0
  126. package/dist/features/settings/components/develop/ToastTestButtons.d.ts +2 -0
  127. package/dist/features/settings/components/develop/ToastTestButtons.d.ts.map +1 -0
  128. package/dist/features/settings/hooks/useSettings.d.ts +2 -0
  129. package/dist/features/settings/hooks/useSettings.d.ts.map +1 -0
  130. package/dist/features/sonner/SonnerContext.d.ts +29 -0
  131. package/dist/features/sonner/SonnerContext.d.ts.map +1 -0
  132. package/dist/features/theme/ThemeProvider.d.ts +11 -0
  133. package/dist/features/theme/ThemeProvider.d.ts.map +1 -0
  134. package/dist/features/theme/themes.d.ts +114 -0
  135. package/dist/features/theme/themes.d.ts.map +1 -0
  136. package/dist/features/theme/useTheme.d.ts +10 -0
  137. package/dist/features/theme/useTheme.d.ts.map +1 -0
  138. package/dist/i18n/I18nProvider.d.ts +9 -0
  139. package/dist/i18n/I18nProvider.d.ts.map +1 -0
  140. package/dist/i18n/config.d.ts +23 -0
  141. package/dist/i18n/config.d.ts.map +1 -0
  142. package/dist/i18n/translations/en/common.json.d.ts +19 -0
  143. package/dist/i18n/translations/en/cookieConsent.json.d.ts +53 -0
  144. package/dist/i18n/translations/en/settings.json.d.ts +358 -0
  145. package/dist/i18n/translations/fr/common.json.d.ts +19 -0
  146. package/dist/i18n/translations/fr/cookieConsent.json.d.ts +53 -0
  147. package/dist/i18n/translations/fr/settings.json.d.ts +358 -0
  148. package/dist/index-CfvdAI_Y.js +2168 -0
  149. package/dist/index-CfvdAI_Y.js.map +1 -0
  150. package/dist/index.d.ts +7 -0
  151. package/dist/index.d.ts.map +1 -0
  152. package/dist/index.js +12 -0
  153. package/dist/index.js.map +1 -0
  154. package/dist/lib/utils.d.ts +3 -0
  155. package/dist/lib/utils.d.ts.map +1 -0
  156. package/dist/lib/z-index.d.ts +29 -0
  157. package/dist/lib/z-index.d.ts.map +1 -0
  158. package/dist/router/router.d.ts +3 -0
  159. package/dist/router/router.d.ts.map +1 -0
  160. package/dist/router/routes.d.ts +4 -0
  161. package/dist/router/routes.d.ts.map +1 -0
  162. package/dist/sidebar-Dt-gibIZ.js +336 -0
  163. package/dist/sidebar-Dt-gibIZ.js.map +1 -0
  164. package/dist/style.css +1 -0
  165. package/dist/switch-CuKXfl3x.js +44 -0
  166. package/dist/switch-CuKXfl3x.js.map +1 -0
  167. package/dist/types.js +2 -0
  168. package/dist/types.js.map +1 -0
  169. package/package.json +16 -14
  170. package/src/features/config/ConfigProvider.ts +20 -5
  171. package/src/features/config/useConfig.ts +14 -1
  172. package/src/index.ts +2 -2
package/package.json CHANGED
@@ -1,30 +1,31 @@
1
1
  {
2
2
  "name": "@shellui/core",
3
- "version": "0.0.11",
3
+ "version": "0.0.13",
4
4
  "description": "ShellUI Core - Core React application runtime",
5
- "main": "src/index.ts",
6
- "types": "src/index.ts",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
7
  "type": "module",
8
8
  "exports": {
9
9
  ".": {
10
- "types": "./src/index.ts",
11
- "import": "./src/index.ts",
12
- "default": "./src/index.ts"
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js",
12
+ "default": "./dist/index.js"
13
13
  },
14
14
  "./types": {
15
- "types": "./src/features/config/types.ts",
16
- "import": "./src/features/config/types.ts",
17
- "default": "./src/features/config/types.ts"
15
+ "types": "./dist/types.d.ts",
16
+ "import": "./dist/types.js",
17
+ "default": "./dist/types.js"
18
18
  },
19
19
  "./constants/urls": {
20
- "types": "./src/constants/urls.ts",
21
- "import": "./src/constants/urls.ts",
22
- "default": "./src/constants/urls.ts"
20
+ "types": "./dist/constants/urls.d.ts",
21
+ "import": "./dist/constants/urls.js",
22
+ "default": "./dist/constants/urls.js"
23
23
  },
24
- "./style.css": "./src/index.css",
24
+ "./style.css": "./dist/style.css",
25
25
  "./package.json": "./package.json"
26
26
  },
27
27
  "files": [
28
+ "dist",
28
29
  "src",
29
30
  "postcss.config.js",
30
31
  "tailwind.config.js",
@@ -63,7 +64,7 @@
63
64
  "workbox-strategies": "^7.1.0",
64
65
  "workbox-cacheable-response": "^7.1.0",
65
66
  "workbox-expiration": "^7.1.0",
66
- "@shellui/sdk": "0.0.11"
67
+ "@shellui/sdk": "0.0.13"
67
68
  },
68
69
  "peerDependencies": {
69
70
  "react": "^18.0.0 || ^19.0.0",
@@ -86,6 +87,7 @@
86
87
  "vite-plugin-dts": "^4.5.0"
87
88
  },
88
89
  "scripts": {
90
+ "build": "vite build",
89
91
  "clean": "rm -rf dist",
90
92
  "test": "echo \"No tests specified for @shellui/core\""
91
93
  }
@@ -31,7 +31,17 @@ export function ConfigProvider(props: ConfigProviderProps): ReturnType<typeof cr
31
31
  // Vite's define inserts the string value directly, so we only need to parse once
32
32
  // Access it directly (no typeof check) so Vite can statically analyze and replace it
33
33
  // @ts-expect-error - __SHELLUI_CONFIG__ is injected by Vite at build time
34
- const configValue: unknown = __SHELLUI_CONFIG__;
34
+ let configValue: unknown = __SHELLUI_CONFIG__;
35
+
36
+ // In development, if __SHELLUI_CONFIG__ is undefined, it might not have been replaced by Vite
37
+ // This can happen if the Vite define configuration isn't working properly
38
+ if (configValue === undefined && typeof window !== 'undefined') {
39
+ // Try to get it from window (fallback for dev mode issues)
40
+ const g = window as unknown as { __SHELLUI_CONFIG__?: unknown };
41
+ if (g.__SHELLUI_CONFIG__ !== undefined) {
42
+ configValue = g.__SHELLUI_CONFIG__;
43
+ }
44
+ }
35
45
 
36
46
  // After Vite replacement, configValue will be a JSON string
37
47
  // Example: "{\"title\":\"shellui\"}" -> parse -> {title: "shellui"}
@@ -61,8 +71,9 @@ export function ConfigProvider(props: ConfigProviderProps): ReturnType<typeof cr
61
71
  }
62
72
 
63
73
  // Fallback: try to read from globalThis (for edge cases or if define didn't work)
74
+ // This handles cases where Vite's define didn't work or config needs to be injected at runtime
64
75
  const g = globalThis as unknown as { __SHELLUI_CONFIG__?: unknown };
65
- if (typeof g.__SHELLUI_CONFIG__ !== 'undefined') {
76
+ if (typeof g.__SHELLUI_CONFIG__ !== 'undefined' && configValue === undefined) {
66
77
  const fallbackValue = g.__SHELLUI_CONFIG__;
67
78
  const parsedConfig: ShellUIConfig =
68
79
  typeof fallbackValue === 'string'
@@ -80,9 +91,12 @@ export function ConfigProvider(props: ConfigProviderProps): ReturnType<typeof cr
80
91
  }
81
92
 
82
93
  // Return empty config if __SHELLUI_CONFIG__ is undefined (fallback for edge cases)
83
- logger.warn(
84
- 'Config not found. Using empty config. Make sure shellui.config.ts is properly loaded during build.',
85
- );
94
+ // This ensures the provider always provides a value, preventing "useConfig must be used within ConfigProvider" errors
95
+ if (process.env.NODE_ENV === 'development') {
96
+ logger.warn(
97
+ 'Config not found. Using empty config. Make sure shellui.config.ts is properly loaded and Vite define is configured correctly.',
98
+ );
99
+ }
86
100
  return {} as ShellUIConfig;
87
101
  } catch (err) {
88
102
  logger.error('Failed to load ShellUI config:', { error: err });
@@ -91,6 +105,7 @@ export function ConfigProvider(props: ConfigProviderProps): ReturnType<typeof cr
91
105
  }
92
106
  });
93
107
 
108
+ // Always provide a value - never null - to prevent "useConfig must be used within ConfigProvider" errors
94
109
  const value: ConfigContextValue = { config };
95
110
  return createElement(ConfigContext.Provider, { value }, props.children);
96
111
  }
@@ -9,7 +9,20 @@ import { ConfigContext, type ConfigContextValue } from './ConfigProvider';
9
9
  export function useConfig(): ConfigContextValue {
10
10
  const context = useContext(ConfigContext);
11
11
  if (context === null) {
12
- throw new Error('useConfig must be used within a ConfigProvider');
12
+ // This error should never happen if ConfigProvider is properly wrapping the app
13
+ // If you see this error, check that:
14
+ // 1. Your component is rendered inside a <ConfigProvider> tree
15
+ // 2. The ConfigProvider is mounted before components that use useConfig()
16
+ // 3. Vite's define configuration is working correctly (check __SHELLUI_CONFIG__)
17
+ const error = new Error(
18
+ 'useConfig must be used within a ConfigProvider. ' +
19
+ 'Make sure your app is wrapped with <ConfigProvider> and that Vite define is configured correctly.'
20
+ );
21
+ if (typeof window !== 'undefined' && process.env.NODE_ENV === 'development') {
22
+ console.error('[ShellUI] ConfigProvider error:', error);
23
+ console.error('[ShellUI] Check that __SHELLUI_CONFIG__ is defined:', typeof (window as any).__SHELLUI_CONFIG__);
24
+ }
25
+ throw error;
13
26
  }
14
27
  return context;
15
28
  }
package/src/index.ts CHANGED
@@ -2,8 +2,8 @@
2
2
  * ShellUI Core - Main entry point
3
3
  * Exports the App component, types, and utilities for use in config files and other packages.
4
4
  *
5
- * CSS is imported as a side effect. Consumers must import '@shellui/core/style.css'
6
- * (or include it in their build) for styles to apply.
5
+ * CSS is imported as a side effect and extracted to dist/style.css during the library build.
6
+ * Consumers must import '@shellui/core/style.css' (or include it in their build) for styles to apply.
7
7
  */
8
8
  import './index.css';
9
9