@elevasis/ui 1.12.0 → 1.14.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 (45) hide show
  1. package/dist/{CoreAuthKitInner-3J4RVQO6.js → CoreAuthKitInner-I32JCNE7.js} +1 -1
  2. package/dist/auth/context.js +1 -1
  3. package/dist/auth/index.js +5 -5
  4. package/dist/charts/index.js +7 -7
  5. package/dist/{chunk-WUQWCUCB.js → chunk-3VTC7OWU.js} +2 -2
  6. package/dist/{chunk-FWZJH3TL.js → chunk-ALA56RGZ.js} +1 -1
  7. package/dist/{chunk-GZVH423C.js → chunk-BK4EIWNU.js} +11 -5
  8. package/dist/{chunk-7PLEQFHO.js → chunk-BRJ3QZ4E.js} +1 -1
  9. package/dist/{chunk-I427OSNH.js → chunk-BUN337J3.js} +37 -32
  10. package/dist/{chunk-3PURTICE.js → chunk-CKFTPEBC.js} +2 -2
  11. package/dist/{chunk-ARZM3OTI.js → chunk-EQNXEBGZ.js} +1 -1
  12. package/dist/{chunk-VUFYYNTF.js → chunk-F5BVI434.js} +11 -5
  13. package/dist/{chunk-3I2LOKQU.js → chunk-GU46QC4Z.js} +2 -2
  14. package/dist/{chunk-2YBPRE6H.js → chunk-HGNP6EVB.js} +3 -4
  15. package/dist/{chunk-C27QFR3V.js → chunk-LP6CQOHV.js} +6 -6
  16. package/dist/{chunk-7RAT54LF.js → chunk-M3WZAG5D.js} +1 -1
  17. package/dist/{chunk-MHQ42SD2.js → chunk-MJ7SDCIL.js} +4 -4
  18. package/dist/{chunk-JGJSZ3UE.js → chunk-NJJ3NQ7B.js} +1 -1
  19. package/dist/chunk-QJ2KCHKX.js +17 -0
  20. package/dist/{chunk-CC6BRHQK.js → chunk-RM6ACTB3.js} +2 -2
  21. package/dist/{chunk-HRG3KPL6.js → chunk-TBRTRBJV.js} +3 -15
  22. package/dist/{chunk-6TMW6VQ2.js → chunk-V5GGPIDD.js} +2 -2
  23. package/dist/components/index.js +20 -19
  24. package/dist/hooks/index.css +45 -45
  25. package/dist/hooks/index.d.ts +2 -2
  26. package/dist/hooks/index.js +14 -13
  27. package/dist/hooks/published.css +45 -45
  28. package/dist/hooks/published.js +13 -12
  29. package/dist/index.css +45 -45
  30. package/dist/index.d.ts +45 -50
  31. package/dist/index.js +16 -15
  32. package/dist/initialization/index.js +4 -4
  33. package/dist/layout/index.js +3 -2
  34. package/dist/organization/index.d.ts +5 -2
  35. package/dist/organization/index.js +4 -4
  36. package/dist/profile/index.d.ts +14 -4
  37. package/dist/profile/index.js +2 -2
  38. package/dist/provider/index.css +45 -45
  39. package/dist/provider/index.d.ts +26 -44
  40. package/dist/provider/index.js +8 -7
  41. package/dist/provider/published.d.ts +18 -38
  42. package/dist/provider/published.js +6 -7
  43. package/dist/supabase/index.js +2 -2
  44. package/package.json +1 -1
  45. package/dist/provider/published.css +0 -44
@@ -2345,6 +2345,7 @@ type Tables<DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables
2345
2345
 
2346
2346
  type SupabaseUserProfile = Tables<'users'>;
2347
2347
 
2348
+ type ApiRequestFn$1 = <T>(endpoint: string, options?: RequestInit) => Promise<T>;
2348
2349
  interface ProfileContextValue {
2349
2350
  profile: SupabaseUserProfile | null;
2350
2351
  loading: boolean;
@@ -2363,13 +2364,16 @@ declare function useProfile(): ProfileContextValue;
2363
2364
  * Wraps useUserProfile so that all consumers share one profile fetch
2364
2365
  * instead of each triggering an independent sync call.
2365
2366
  *
2366
- * Must be rendered inside the auth and service provider layers so that
2367
- * the underlying hook can access useAuthContext and useElevasisServices.
2367
+ * Must be rendered inside the auth provider layer so that the underlying
2368
+ * hook can access useAuthContext. Receives apiRequest as a prop so it
2369
+ * can mount before ElevasisServiceProvider.
2368
2370
  */
2369
- declare function ProfileProvider({ children }: {
2371
+ declare function ProfileProvider({ apiRequest, children }: {
2372
+ apiRequest: ApiRequestFn$1;
2370
2373
  children: ReactNode;
2371
2374
  }): react.FunctionComponentElement<react.ProviderProps<ProfileContextValue | null>>;
2372
2375
 
2376
+ type ApiRequestFn = <T>(endpoint: string, options?: RequestInit) => Promise<T>;
2373
2377
  interface UseUserProfileOptions {
2374
2378
  /**
2375
2379
  * Optional error handler for profile sync failures
@@ -2379,6 +2383,12 @@ interface UseUserProfileOptions {
2379
2383
  phase: 'profile-sync';
2380
2384
  userId?: string;
2381
2385
  }, error: Error) => void;
2386
+ /**
2387
+ * Pre-built apiRequest function. When provided, used directly instead of
2388
+ * reading from ElevasisServiceContext. Required when calling from ProfileProvider
2389
+ * (which mounts before ElevasisServiceProvider).
2390
+ */
2391
+ apiRequest?: ApiRequestFn;
2382
2392
  }
2383
2393
  interface UseUserProfileReturn {
2384
2394
  profile: SupabaseUserProfile | null;
@@ -2395,7 +2405,7 @@ interface UseUserProfileReturn {
2395
2405
  * 3. Handles loading states and errors
2396
2406
  * 4. Includes a refetch function for manual updates
2397
2407
  *
2398
- * @param options - Optional configuration including error handler
2408
+ * @param options - Optional configuration including error handler and apiRequest
2399
2409
  */
2400
2410
  declare const useUserProfile: (options?: UseUserProfileOptions) => UseUserProfileReturn;
2401
2411
 
@@ -1,3 +1,3 @@
1
1
  import '../chunk-RNP5R5I3.js';
2
- export { ProfileProvider, UserProfileService, useProfile, useUserProfile } from '../chunk-GZVH423C.js';
3
- import '../chunk-7PLEQFHO.js';
2
+ export { ProfileProvider, UserProfileService, useProfile, useUserProfile } from '../chunk-BK4EIWNU.js';
3
+ import '../chunk-BRJ3QZ4E.js';
@@ -1,48 +1,3 @@
1
- /* src/components/display/ElevasisLoader.module.css */
2
- .wrapper {
3
- display: inline-flex;
4
- align-items: center;
5
- justify-content: center;
6
- width: var(--loader-size);
7
- height: var(--loader-size);
8
- overflow: visible;
9
- }
10
- .loader {
11
- width: 100%;
12
- height: 100%;
13
- display: block;
14
- overflow: visible;
15
- }
16
- .chevron {
17
- stroke: var(--loader-color);
18
- stroke-width: 2;
19
- stroke-linecap: square;
20
- stroke-linejoin: miter;
21
- fill: none;
22
- opacity: 0.15;
23
- animation: chevronPulse 2s ease-in-out infinite;
24
- filter: drop-shadow(0 0 1.5px var(--loader-color));
25
- }
26
- .c1 {
27
- animation-delay: 0s;
28
- }
29
- .c2 {
30
- animation-delay: 0.2s;
31
- }
32
- .c3 {
33
- animation-delay: 0.4s;
34
- }
35
- @keyframes chevronPulse {
36
- 0%, 100% {
37
- opacity: 0.12;
38
- filter: drop-shadow(0 0 1px var(--loader-color));
39
- }
40
- 40%, 60% {
41
- opacity: 1;
42
- filter: drop-shadow(0 0 3px var(--loader-color));
43
- }
44
- }
45
-
46
1
  /* src/theme/custom.css */
47
2
  .mantine-Accordion-control:hover {
48
3
  background-color: var(--color-surface-hover);
@@ -107,3 +62,48 @@
107
62
  .recharts-surface:focus {
108
63
  outline: none;
109
64
  }
65
+
66
+ /* src/components/display/ElevasisLoader.module.css */
67
+ .wrapper {
68
+ display: inline-flex;
69
+ align-items: center;
70
+ justify-content: center;
71
+ width: var(--loader-size);
72
+ height: var(--loader-size);
73
+ overflow: visible;
74
+ }
75
+ .loader {
76
+ width: 100%;
77
+ height: 100%;
78
+ display: block;
79
+ overflow: visible;
80
+ }
81
+ .chevron {
82
+ stroke: var(--loader-color);
83
+ stroke-width: 2;
84
+ stroke-linecap: square;
85
+ stroke-linejoin: miter;
86
+ fill: none;
87
+ opacity: 0.15;
88
+ animation: chevronPulse 2s ease-in-out infinite;
89
+ filter: drop-shadow(0 0 1.5px var(--loader-color));
90
+ }
91
+ .c1 {
92
+ animation-delay: 0s;
93
+ }
94
+ .c2 {
95
+ animation-delay: 0.2s;
96
+ }
97
+ .c3 {
98
+ animation-delay: 0.4s;
99
+ }
100
+ @keyframes chevronPulse {
101
+ 0%, 100% {
102
+ opacity: 0.12;
103
+ filter: drop-shadow(0 0 1px var(--loader-color));
104
+ }
105
+ 40%, 60% {
106
+ opacity: 1;
107
+ filter: drop-shadow(0 0 3px var(--loader-color));
108
+ }
109
+ }
@@ -88,18 +88,6 @@ declare function NotificationProvider({ adapter, children }: {
88
88
  */
89
89
  declare function useNotificationAdapter(): NotificationAdapter;
90
90
 
91
- interface AppearanceConfig {
92
- /** Background layers rendered behind app content. Defaults to Elevasis background. */
93
- background?: ReactNode;
94
- /** Loader element rendered during loading states. Defaults to Elevasis chevron loader. */
95
- loader?: ReactNode;
96
- }
97
- declare function AppearanceProvider({ value, children }: {
98
- value: Required<AppearanceConfig>;
99
- children: ReactNode;
100
- }): react_jsx_runtime.JSX.Element;
101
- declare function useAppearance(): Required<AppearanceConfig>;
102
-
103
91
  /** Flat + per-scheme override pattern. Flat values apply to both; `light`/`dark` win over flat. */
104
92
  type WithSchemes<T> = T & {
105
93
  light?: T;
@@ -219,12 +207,6 @@ interface ElevasisCoreProviderProps {
219
207
  * Headless/SDK consumers can pass a custom adapter or omit for console output.
220
208
  */
221
209
  notifications?: NotificationAdapter;
222
- /**
223
- * Appearance configuration for background and loader.
224
- * When omitted, defaults to the Elevasis background (PerspectiveGrid + RadiantGlow +
225
- * FloatingOrbs + FilmGrain) and the Elevasis chevron loader.
226
- */
227
- appearance?: AppearanceConfig;
228
210
  /**
229
211
  * Whether to inject CSS variables, `data-elevasis-scheme` attribute, and font links.
230
212
  * Set to `false` when the consumer has its own complete design system and only
@@ -238,7 +220,7 @@ interface ElevasisCoreProviderProps {
238
220
  * Provides a ready-to-use apiRequest function and organization state.
239
221
  *
240
222
  * For standalone usage (testing, embedding), use ElevasisServiceProvider directly.
241
- * For standard SDK usage, ElevasisProvider composes this automatically when apiUrl is provided.
223
+ * For standard SDK usage, ElevasisUIProvider composes this automatically when apiUrl is provided.
242
224
  */
243
225
  interface ElevasisServiceContextValue {
244
226
  apiRequest: <T>(endpoint: string, options?: RequestInit) => Promise<T>;
@@ -257,16 +239,13 @@ interface ElevasisServiceProviderProps {
257
239
  *
258
240
  * Pure auth + API provider with no style side-effects. Does not inject CSS
259
241
  * variables, set `data-elevasis-scheme`, or load fonts. Consumers that need
260
- * Elevasis theming should use `ElevasisProvider` (Mantine) instead.
242
+ * Elevasis theming should use `ElevasisUIProvider` (Mantine) instead.
261
243
  *
262
244
  * When `apiUrl` is provided, composes the full provider stack:
263
245
  * QueryClientProvider -> AuthProvider -> ApiClientProvider ->
264
- * ElevasisServiceProvider -> ProfileProvider -> OrganizationProvider ->
246
+ * ProfileProvider -> OrganizationProvider -> ElevasisServiceProvider ->
265
247
  * NotificationProvider -> InitializationProvider
266
248
  *
267
- * The `notifications` prop wires a custom adapter
268
- * into the NotificationProvider. When omitted, the console fallback is used.
269
- *
270
249
  * @example Headless SDK consumer
271
250
  * ```tsx
272
251
  * <ElevasisCoreProvider
@@ -276,32 +255,33 @@ interface ElevasisServiceProviderProps {
276
255
  * <Dashboard />
277
256
  * </ElevasisCoreProvider>
278
257
  * ```
279
- *
280
- * @example With custom notification adapter
281
- * ```tsx
282
- * <ElevasisCoreProvider
283
- * auth={{ mode: 'authkit', clientId: '...', redirectUri: '/' }}
284
- * apiUrl="https://api.elevasis.com"
285
- * notifications={myNotificationAdapter}
286
- * >
287
- * <Dashboard />
288
- * </ElevasisCoreProvider>
289
- * ```
290
258
  */
291
- declare function ElevasisCoreProvider({ auth, queryClient, apiUrl, onError, notifications, appearance, children }: ElevasisCoreProviderProps): react_jsx_runtime.JSX.Element;
259
+ declare function ElevasisCoreProvider({ auth, queryClient, apiUrl, onError, notifications, children }: ElevasisCoreProviderProps): react_jsx_runtime.JSX.Element;
260
+
261
+ interface AppearanceConfig {
262
+ /** Background layers rendered behind app content. Defaults to Elevasis background. */
263
+ background?: ReactNode;
264
+ /** Loader element rendered during loading states. Defaults to Elevasis chevron loader. */
265
+ loader?: ReactNode;
266
+ }
267
+ declare function AppearanceProvider({ value, children }: {
268
+ value: Required<AppearanceConfig>;
269
+ children: ReactNode;
270
+ }): react_jsx_runtime.JSX.Element;
271
+ declare function useAppearance(): Required<AppearanceConfig>;
292
272
 
293
273
  /**
294
274
  * Hook to access the ElevasisServiceProvider context.
295
275
  * Provides apiRequest, organizationId, and isReady.
296
276
  *
297
- * Throws if used outside of an ElevasisServiceProvider or ElevasisProvider (with apiUrl).
277
+ * Throws if used outside of an ElevasisServiceProvider or ElevasisUIProvider (with apiUrl).
298
278
  */
299
279
  declare function useElevasisServices(): ElevasisServiceContextValue;
300
280
  /**
301
281
  * Standalone service provider for testing, embedding, or advanced consumers.
302
282
  *
303
283
  * Accepts apiRequest, organizationId, and isReady directly as props.
304
- * ElevasisProvider composes this internally when apiUrl is provided.
284
+ * ElevasisUIProvider composes this internally when apiUrl is provided.
305
285
  *
306
286
  * @example Testing
307
287
  * ```tsx
@@ -321,22 +301,24 @@ declare function ElevasisServiceProvider({ apiRequest, organizationId, isReady,
321
301
 
322
302
  /**
323
303
  * Mantine-specific theme config — extends the headless core config with
324
- * a full Mantine theme override escape hatch.
304
+ * visual appearance and a full Mantine theme override escape hatch.
325
305
  */
326
306
  interface ElevasisThemeConfig extends ElevasisCoreThemeConfig {
327
307
  /** Full Mantine theme override — merged on top of Elevasis defaults. */
328
308
  mantine?: MantineThemeOverride;
309
+ /** Background layers rendered behind app content. Defaults to Elevasis background (PerspectiveGrid + RadiantGlow + FloatingOrbs + FilmGrain). */
310
+ background?: ReactNode;
311
+ /** Loader element rendered during loading states. Defaults to Elevasis chevron loader (xl). */
312
+ loader?: ReactNode;
329
313
  }
330
314
  /**
331
315
  * Props for ElevasisUIProvider (Mantine variant).
332
316
  * Extends ElevasisCoreProviderProps with Mantine-aware theme config.
333
317
  */
334
- interface ElevasisProviderProps extends Omit<ElevasisCoreProviderProps, 'theme' | 'notifications'> {
318
+ interface ElevasisUIProviderProps extends Omit<ElevasisCoreProviderProps, 'theme' | 'notifications'> {
335
319
  theme?: ElevasisThemeConfig;
336
320
  }
337
- declare function ElevasisUIProvider({ theme, children, ...coreProps }: ElevasisProviderProps): react_jsx_runtime.JSX.Element;
338
- /** @deprecated Use ElevasisUIProvider instead. Alias kept for backwards compatibility. */
339
- declare const ElevasisProvider: typeof ElevasisUIProvider;
321
+ declare function ElevasisUIProvider({ theme, children, ...coreProps }: ElevasisUIProviderProps): react_jsx_runtime.JSX.Element;
340
322
 
341
- export { AppearanceProvider, ElevasisCoreProvider, ElevasisProvider, ElevasisServiceProvider, ElevasisUIProvider, NotificationProvider, useAppearance, useElevasisServices, useNotificationAdapter };
323
+ export { AppearanceProvider, ElevasisCoreProvider, ElevasisServiceProvider, ElevasisUIProvider, NotificationProvider, useAppearance, useElevasisServices, useNotificationAdapter };
342
324
  export type { ApiKeyConfig, AppearanceConfig, AuthConfig, AuthKitConfig, ElevasisCoreProviderProps, ElevasisCoreThemeConfig, ElevasisServiceContextValue, ElevasisServiceProviderProps, ElevasisThemeConfig, ElevasisTokenOverrides, NotificationAdapter, PresetName, WithSchemes };
@@ -1,12 +1,13 @@
1
- export { ElevasisProvider, ElevasisUIProvider } from '../chunk-VUFYYNTF.js';
1
+ export { ElevasisUIProvider } from '../chunk-F5BVI434.js';
2
2
  import '../chunk-WNRHQAJA.js';
3
- export { ElevasisCoreProvider, NotificationProvider, useNotificationAdapter } from '../chunk-I427OSNH.js';
4
- export { AppearanceProvider, useAppearance } from '../chunk-HRG3KPL6.js';
3
+ import '../chunk-TBRTRBJV.js';
5
4
  import '../chunk-SZHARWKU.js';
6
- import '../chunk-2YBPRE6H.js';
5
+ export { ElevasisCoreProvider, NotificationProvider, useNotificationAdapter } from '../chunk-BUN337J3.js';
6
+ export { AppearanceProvider, useAppearance } from '../chunk-QJ2KCHKX.js';
7
+ import '../chunk-HGNP6EVB.js';
7
8
  import '../chunk-RULQSZYX.js';
8
9
  import '../chunk-FCFLBMVI.js';
9
- import '../chunk-WUQWCUCB.js';
10
- export { ElevasisServiceProvider, useElevasisServices } from '../chunk-GZVH423C.js';
10
+ import '../chunk-3VTC7OWU.js';
11
+ export { ElevasisServiceProvider, useElevasisServices } from '../chunk-BK4EIWNU.js';
11
12
  import '../chunk-DD3CCMCZ.js';
12
- import '../chunk-7PLEQFHO.js';
13
+ import '../chunk-BRJ3QZ4E.js';
@@ -87,18 +87,6 @@ declare function NotificationProvider({ adapter, children }: {
87
87
  */
88
88
  declare function useNotificationAdapter(): NotificationAdapter;
89
89
 
90
- interface AppearanceConfig {
91
- /** Background layers rendered behind app content. Defaults to Elevasis background. */
92
- background?: ReactNode;
93
- /** Loader element rendered during loading states. Defaults to Elevasis chevron loader. */
94
- loader?: ReactNode;
95
- }
96
- declare function AppearanceProvider({ value, children }: {
97
- value: Required<AppearanceConfig>;
98
- children: ReactNode;
99
- }): react_jsx_runtime.JSX.Element;
100
- declare function useAppearance(): Required<AppearanceConfig>;
101
-
102
90
  /** Flat + per-scheme override pattern. Flat values apply to both; `light`/`dark` win over flat. */
103
91
  type WithSchemes<T> = T & {
104
92
  light?: T;
@@ -218,12 +206,6 @@ interface ElevasisCoreProviderProps {
218
206
  * Headless/SDK consumers can pass a custom adapter or omit for console output.
219
207
  */
220
208
  notifications?: NotificationAdapter;
221
- /**
222
- * Appearance configuration for background and loader.
223
- * When omitted, defaults to the Elevasis background (PerspectiveGrid + RadiantGlow +
224
- * FloatingOrbs + FilmGrain) and the Elevasis chevron loader.
225
- */
226
- appearance?: AppearanceConfig;
227
209
  /**
228
210
  * Whether to inject CSS variables, `data-elevasis-scheme` attribute, and font links.
229
211
  * Set to `false` when the consumer has its own complete design system and only
@@ -237,7 +219,7 @@ interface ElevasisCoreProviderProps {
237
219
  * Provides a ready-to-use apiRequest function and organization state.
238
220
  *
239
221
  * For standalone usage (testing, embedding), use ElevasisServiceProvider directly.
240
- * For standard SDK usage, ElevasisProvider composes this automatically when apiUrl is provided.
222
+ * For standard SDK usage, ElevasisUIProvider composes this automatically when apiUrl is provided.
241
223
  */
242
224
  interface ElevasisServiceContextValue {
243
225
  apiRequest: <T>(endpoint: string, options?: RequestInit) => Promise<T>;
@@ -256,16 +238,13 @@ interface ElevasisServiceProviderProps {
256
238
  *
257
239
  * Pure auth + API provider with no style side-effects. Does not inject CSS
258
240
  * variables, set `data-elevasis-scheme`, or load fonts. Consumers that need
259
- * Elevasis theming should use `ElevasisProvider` (Mantine) instead.
241
+ * Elevasis theming should use `ElevasisUIProvider` (Mantine) instead.
260
242
  *
261
243
  * When `apiUrl` is provided, composes the full provider stack:
262
244
  * QueryClientProvider -> AuthProvider -> ApiClientProvider ->
263
- * ElevasisServiceProvider -> ProfileProvider -> OrganizationProvider ->
245
+ * ProfileProvider -> OrganizationProvider -> ElevasisServiceProvider ->
264
246
  * NotificationProvider -> InitializationProvider
265
247
  *
266
- * The `notifications` prop wires a custom adapter
267
- * into the NotificationProvider. When omitted, the console fallback is used.
268
- *
269
248
  * @example Headless SDK consumer
270
249
  * ```tsx
271
250
  * <ElevasisCoreProvider
@@ -275,32 +254,33 @@ interface ElevasisServiceProviderProps {
275
254
  * <Dashboard />
276
255
  * </ElevasisCoreProvider>
277
256
  * ```
278
- *
279
- * @example With custom notification adapter
280
- * ```tsx
281
- * <ElevasisCoreProvider
282
- * auth={{ mode: 'authkit', clientId: '...', redirectUri: '/' }}
283
- * apiUrl="https://api.elevasis.com"
284
- * notifications={myNotificationAdapter}
285
- * >
286
- * <Dashboard />
287
- * </ElevasisCoreProvider>
288
- * ```
289
257
  */
290
- declare function ElevasisCoreProvider({ auth, queryClient, apiUrl, onError, notifications, appearance, children }: ElevasisCoreProviderProps): react_jsx_runtime.JSX.Element;
258
+ declare function ElevasisCoreProvider({ auth, queryClient, apiUrl, onError, notifications, children }: ElevasisCoreProviderProps): react_jsx_runtime.JSX.Element;
259
+
260
+ interface AppearanceConfig {
261
+ /** Background layers rendered behind app content. Defaults to Elevasis background. */
262
+ background?: ReactNode;
263
+ /** Loader element rendered during loading states. Defaults to Elevasis chevron loader. */
264
+ loader?: ReactNode;
265
+ }
266
+ declare function AppearanceProvider({ value, children }: {
267
+ value: Required<AppearanceConfig>;
268
+ children: ReactNode;
269
+ }): react_jsx_runtime.JSX.Element;
270
+ declare function useAppearance(): Required<AppearanceConfig>;
291
271
 
292
272
  /**
293
273
  * Hook to access the ElevasisServiceProvider context.
294
274
  * Provides apiRequest, organizationId, and isReady.
295
275
  *
296
- * Throws if used outside of an ElevasisServiceProvider or ElevasisProvider (with apiUrl).
276
+ * Throws if used outside of an ElevasisServiceProvider or ElevasisUIProvider (with apiUrl).
297
277
  */
298
278
  declare function useElevasisServices(): ElevasisServiceContextValue;
299
279
  /**
300
280
  * Standalone service provider for testing, embedding, or advanced consumers.
301
281
  *
302
282
  * Accepts apiRequest, organizationId, and isReady directly as props.
303
- * ElevasisProvider composes this internally when apiUrl is provided.
283
+ * ElevasisUIProvider composes this internally when apiUrl is provided.
304
284
  *
305
285
  * @example Testing
306
286
  * ```tsx
@@ -1,10 +1,9 @@
1
- export { ElevasisCoreProvider, NotificationProvider, useNotificationAdapter } from '../chunk-I427OSNH.js';
2
- export { AppearanceProvider, useAppearance } from '../chunk-HRG3KPL6.js';
3
- import '../chunk-SZHARWKU.js';
4
- import '../chunk-2YBPRE6H.js';
1
+ export { ElevasisCoreProvider, NotificationProvider, useNotificationAdapter } from '../chunk-BUN337J3.js';
2
+ export { AppearanceProvider, useAppearance } from '../chunk-QJ2KCHKX.js';
3
+ import '../chunk-HGNP6EVB.js';
5
4
  import '../chunk-RULQSZYX.js';
6
5
  import '../chunk-FCFLBMVI.js';
7
- import '../chunk-WUQWCUCB.js';
8
- export { ElevasisServiceProvider, useElevasisServices } from '../chunk-GZVH423C.js';
6
+ import '../chunk-3VTC7OWU.js';
7
+ export { ElevasisServiceProvider, useElevasisServices } from '../chunk-BK4EIWNU.js';
9
8
  import '../chunk-DD3CCMCZ.js';
10
- import '../chunk-7PLEQFHO.js';
9
+ import '../chunk-BRJ3QZ4E.js';
@@ -1,2 +1,2 @@
1
- export { getSupabaseClient, useSupabase } from '../chunk-JGJSZ3UE.js';
2
- import '../chunk-7PLEQFHO.js';
1
+ export { getSupabaseClient, useSupabase } from '../chunk-NJJ3NQ7B.js';
2
+ import '../chunk-BRJ3QZ4E.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elevasis/ui",
3
- "version": "1.12.0",
3
+ "version": "1.14.0",
4
4
  "description": "UI components and platform-aware hooks for building custom frontends on the Elevasis platform",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -1,44 +0,0 @@
1
- /* src/components/display/ElevasisLoader.module.css */
2
- .wrapper {
3
- display: inline-flex;
4
- align-items: center;
5
- justify-content: center;
6
- width: var(--loader-size);
7
- height: var(--loader-size);
8
- overflow: visible;
9
- }
10
- .loader {
11
- width: 100%;
12
- height: 100%;
13
- display: block;
14
- overflow: visible;
15
- }
16
- .chevron {
17
- stroke: var(--loader-color);
18
- stroke-width: 2;
19
- stroke-linecap: square;
20
- stroke-linejoin: miter;
21
- fill: none;
22
- opacity: 0.15;
23
- animation: chevronPulse 2s ease-in-out infinite;
24
- filter: drop-shadow(0 0 1.5px var(--loader-color));
25
- }
26
- .c1 {
27
- animation-delay: 0s;
28
- }
29
- .c2 {
30
- animation-delay: 0.2s;
31
- }
32
- .c3 {
33
- animation-delay: 0.4s;
34
- }
35
- @keyframes chevronPulse {
36
- 0%, 100% {
37
- opacity: 0.12;
38
- filter: drop-shadow(0 0 1px var(--loader-color));
39
- }
40
- 40%, 60% {
41
- opacity: 1;
42
- filter: drop-shadow(0 0 3px var(--loader-color));
43
- }
44
- }