@syncular/console 0.0.5-42 → 0.0.6-100

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 (66) hide show
  1. package/dist/App.d.ts +3 -7
  2. package/dist/App.d.ts.map +1 -1
  3. package/dist/App.js +3 -3
  4. package/dist/App.js.map +1 -1
  5. package/dist/hooks/ConnectionContext.d.ts +4 -1
  6. package/dist/hooks/ConnectionContext.d.ts.map +1 -1
  7. package/dist/hooks/ConnectionContext.js +111 -14
  8. package/dist/hooks/ConnectionContext.js.map +1 -1
  9. package/dist/hooks/useLiveEvents.d.ts.map +1 -1
  10. package/dist/hooks/useLiveEvents.js +22 -3
  11. package/dist/hooks/useLiveEvents.js.map +1 -1
  12. package/dist/layout.d.ts +4 -1
  13. package/dist/layout.d.ts.map +1 -1
  14. package/dist/layout.js +7 -7
  15. package/dist/layout.js.map +1 -1
  16. package/dist/mount.d.ts +1 -0
  17. package/dist/mount.d.ts.map +1 -1
  18. package/dist/mount.js +1 -1
  19. package/dist/mount.js.map +1 -1
  20. package/dist/pages/Config.js +22 -14
  21. package/dist/pages/Config.js.map +1 -1
  22. package/dist/pages/Ops.js.map +1 -1
  23. package/dist/pages/Stream.d.ts.map +1 -1
  24. package/dist/pages/Stream.js +2 -3
  25. package/dist/pages/Stream.js.map +1 -1
  26. package/dist/routeTree.d.ts +1 -1
  27. package/dist/routeTree.d.ts.map +1 -1
  28. package/dist/routes/__root.d.ts +1 -1
  29. package/dist/routes/__root.d.ts.map +1 -1
  30. package/dist/routes/config.d.ts +1 -1
  31. package/dist/routes/config.d.ts.map +1 -1
  32. package/dist/routes/fleet.d.ts +1 -1
  33. package/dist/routes/fleet.d.ts.map +1 -1
  34. package/dist/routes/index.d.ts +1 -1
  35. package/dist/routes/index.d.ts.map +1 -1
  36. package/dist/routes/investigate-commit.d.ts +1 -1
  37. package/dist/routes/investigate-commit.d.ts.map +1 -1
  38. package/dist/routes/investigate-event.d.ts +1 -1
  39. package/dist/routes/investigate-event.d.ts.map +1 -1
  40. package/dist/routes/ops.d.ts +1 -1
  41. package/dist/routes/ops.d.ts.map +1 -1
  42. package/dist/routes/storage.d.ts +1 -1
  43. package/dist/routes/storage.d.ts.map +1 -1
  44. package/dist/routes/stream.d.ts +1 -1
  45. package/dist/routes/stream.d.ts.map +1 -1
  46. package/dist/static-server.d.ts.map +1 -1
  47. package/dist/static-server.js +6 -1
  48. package/dist/static-server.js.map +1 -1
  49. package/dist/styles.css +1 -1
  50. package/package.json +8 -8
  51. package/src/App.tsx +12 -10
  52. package/src/__tests__/static-server.test.ts +193 -0
  53. package/src/hooks/ConnectionContext.tsx +130 -14
  54. package/src/hooks/useLiveEvents.ts +27 -3
  55. package/src/layout.tsx +27 -4
  56. package/src/mount.tsx +6 -1
  57. package/src/pages/Config.tsx +55 -48
  58. package/src/pages/Stream.tsx +6 -3
  59. package/src/static-server.ts +12 -1
  60. package/web-dist/assets/index-D8JLMM1I.js +86 -0
  61. package/web-dist/assets/index-D_fQabjS.css +1 -0
  62. package/web-dist/console.css +1 -1
  63. package/web-dist/index.html +2 -2
  64. package/web-dist/site.webmanifest +2 -2
  65. package/web-dist/assets/index-BhPtRvK0.css +0 -1
  66. package/web-dist/assets/index-Fyq7dTrO.js +0 -86
package/dist/App.d.ts CHANGED
@@ -1,14 +1,10 @@
1
+ import { type ConnectionStorageMode } from './hooks/ConnectionContext';
1
2
  import type { ConnectionConfig } from './lib/api';
2
- declare const routerForTypes: import("@tanstack/router-core").RouterCore<import("@tanstack/router-core").Route<Register, any, "/", "/", string, "__root__", undefined, {}, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, readonly [import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/", "/", string, "/", undefined, import("@tanstack/react-router").ResolveParams<"/">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/stream", "/stream", string, "/stream", undefined, import("@tanstack/react-router").ResolveParams<"/stream">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/investigate/commit/$seq", "/investigate/commit/$seq", string, "/investigate/commit/$seq", undefined, import("@tanstack/react-router").ResolveParams<"/investigate/commit/$seq">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/investigate/event/$id", "/investigate/event/$id", string, "/investigate/event/$id", undefined, import("@tanstack/react-router").ResolveParams<"/investigate/event/$id">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/fleet", "/fleet", string, "/fleet", undefined, import("@tanstack/react-router").ResolveParams<"/fleet">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/ops", "/ops", string, "/ops", undefined, import("@tanstack/react-router").ResolveParams<"/ops">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/storage", "/storage", string, "/storage", undefined, import("@tanstack/react-router").ResolveParams<"/storage">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, import("@tanstack/react-router").Route<unknown, import("@tanstack/react-router").RootRoute<Register, undefined, {}, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>, "/config", "/config", string, "/config", undefined, import("@tanstack/react-router").ResolveParams<"/config">, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, import("@tanstack/react-router").AnyContext, {}, undefined, unknown, unknown, unknown, unknown, undefined>], unknown, unknown, unknown, undefined>, "never", false, import("@tanstack/history").RouterHistory, Record<string, any>>;
3
- declare module '@tanstack/react-router' {
4
- interface Register {
5
- router: typeof routerForTypes;
6
- }
7
- }
8
3
  export interface SyncularConsoleProps {
9
4
  basePath?: string;
10
5
  defaultConfig?: ConnectionConfig | null;
6
+ autoConnect?: boolean;
7
+ storageMode?: ConnectionStorageMode;
11
8
  }
12
9
  export declare function App(props: SyncularConsoleProps): import("react/jsx-runtime").JSX.Element;
13
- export {};
14
10
  //# sourceMappingURL=App.d.ts.map
package/dist/App.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AASlD,QAAA,MAAM,cAAc,y+JAA6C,CAAC;AAElE,OAAO,QAAQ,wBAAwB,CAAC,CAAC;IACvC,UAAU,QAAQ;QAChB,MAAM,EAAE,OAAO,cAAc,CAAC;KAC/B;CACF;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACzC;AAuCD,wBAAgB,GAAG,CAAC,KAAK,EAAE,oBAAoB,2CAM9C"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AASlD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACrC;AA4CD,wBAAgB,GAAG,CAAC,KAAK,EAAE,oBAAoB,2CAM9C"}
package/dist/App.js CHANGED
@@ -2,11 +2,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
3
3
  import { createRouter, RouterProvider } from '@tanstack/react-router';
4
4
  import { useMemo, useState } from 'react';
5
- import { ConnectionProvider } from './hooks/ConnectionContext.js';
5
+ import { ConnectionProvider, } from './hooks/ConnectionContext.js';
6
6
  import { routeTree } from './routeTree.js';
7
7
  import { normalizeBasePath, resolveConsoleBasePathFromMeta, resolveConsoleConnectionConfigFromMeta, } from './runtime-config.js';
8
8
  import { SYNCULAR_CONSOLE_ROOT_CLASS } from './theme-scope.js';
9
- const routerForTypes = createRouter({ routeTree, basepath: '/' });
10
9
  function createDefaultQueryClient() {
11
10
  return new QueryClient({
12
11
  defaultOptions: {
@@ -26,7 +25,8 @@ function SyncularConsole(props) {
26
25
  const defaultConfig = props.defaultConfig === undefined
27
26
  ? resolveConsoleConnectionConfigFromMeta()
28
27
  : props.defaultConfig;
29
- return (_jsx(QueryClientProvider, { client: queryClient, children: _jsx(ConnectionProvider, { defaultConfig: defaultConfig, children: _jsx(RouterProvider, { router: router }) }) }));
28
+ const autoConnect = props.autoConnect ?? props.defaultConfig === undefined;
29
+ return (_jsx(QueryClientProvider, { client: queryClient, children: _jsx(ConnectionProvider, { defaultConfig: defaultConfig, autoConnect: autoConnect, storageMode: props.storageMode, children: _jsx(RouterProvider, { router: router }) }) }));
30
30
  }
31
31
  export function App(props) {
32
32
  return (_jsx("div", { className: SYNCULAR_CONSOLE_ROOT_CLASS, children: _jsx(SyncularConsole, { ...props }) }));
package/dist/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,iBAAiB,EACjB,8BAA8B,EAC9B,sCAAsC,GACvC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAE5D,MAAM,cAAc,GAAG,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;AAalE,SAAS,wBAAwB,GAAgB;IAC/C,OAAO,IAAI,WAAW,CAAC;QACrB,cAAc,EAAE;YACd,OAAO,EAAE;gBACP,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,CAAC;aACT;SACF;KACF,CAAC,CAAC;AAAA,CACJ;AAED,SAAS,eAAe,CAAC,QAA4B,EAAU;IAC7D,OAAO,iBAAiB,CAAC,QAAQ,IAAI,8BAA8B,EAAE,CAAC,CAAC;AAAA,CACxE;AAED,SAAS,eAAe,CAAC,KAA2B,EAAE;IACpD,MAAM,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CACH,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EACxE,CAAC,KAAK,CAAC,QAAQ,CAAC,CACjB,CAAC;IAEF,MAAM,aAAa,GACjB,KAAK,CAAC,aAAa,KAAK,SAAS;QAC/B,CAAC,CAAC,sCAAsC,EAAE;QAC1C,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;IAE1B,OAAO,CACL,KAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW,YACtC,KAAC,kBAAkB,IAAC,aAAa,EAAE,aAAa,YAC9C,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,GACf,GACD,CACvB,CAAC;AAAA,CACH;AAED,MAAM,UAAU,GAAG,CAAC,KAA2B,EAAE;IAC/C,OAAO,CACL,cAAK,SAAS,EAAE,2BAA2B,YACzC,KAAC,eAAe,OAAK,KAAK,GAAI,GAC1B,CACP,CAAC;AAAA,CACH"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EACL,kBAAkB,GAEnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,iBAAiB,EACjB,8BAA8B,EAC9B,sCAAsC,GACvC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAS5D,SAAS,wBAAwB,GAAgB;IAC/C,OAAO,IAAI,WAAW,CAAC;QACrB,cAAc,EAAE;YACd,OAAO,EAAE;gBACP,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,CAAC;aACT;SACF;KACF,CAAC,CAAC;AAAA,CACJ;AAED,SAAS,eAAe,CAAC,QAA4B,EAAU;IAC7D,OAAO,iBAAiB,CAAC,QAAQ,IAAI,8BAA8B,EAAE,CAAC,CAAC;AAAA,CACxE;AAED,SAAS,eAAe,CAAC,KAA2B,EAAE;IACpD,MAAM,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CACH,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EACxE,CAAC,KAAK,CAAC,QAAQ,CAAC,CACjB,CAAC;IAEF,MAAM,aAAa,GACjB,KAAK,CAAC,aAAa,KAAK,SAAS;QAC/B,CAAC,CAAC,sCAAsC,EAAE;QAC1C,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;IAC1B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC;IAE3E,OAAO,CACL,KAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW,YACtC,KAAC,kBAAkB,IACjB,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,KAAK,CAAC,WAAW,YAE9B,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,GACf,GACD,CACvB,CAAC;AAAA,CACH;AAED,MAAM,UAAU,GAAG,CAAC,KAA2B,EAAE;IAC/C,OAAO,CACL,cAAK,SAAS,EAAE,2BAA2B,YACzC,KAAC,eAAe,OAAK,KAAK,GAAI,GAC1B,CACP,CAAC;AAAA,CACH"}
@@ -4,6 +4,7 @@
4
4
  import type { SyncClient } from '@syncular/transport-http';
5
5
  import { type ReactNode } from 'react';
6
6
  import { type ConnectionConfig } from '../lib/api';
7
+ export type ConnectionStorageMode = 'memory' | 'session' | 'local';
7
8
  interface ConnectionContextValue {
8
9
  config: ConnectionConfig | null;
9
10
  setConfig: (config: ConnectionConfig | null) => void;
@@ -22,8 +23,10 @@ interface ConnectionContextValue {
22
23
  interface ConnectionProviderProps {
23
24
  children: ReactNode;
24
25
  defaultConfig?: ConnectionConfig | null;
26
+ autoConnect?: boolean;
27
+ storageMode?: ConnectionStorageMode;
25
28
  }
26
- export declare function ConnectionProvider({ children, defaultConfig }: ConnectionProviderProps): import("react/jsx-runtime").JSX.Element;
29
+ export declare function ConnectionProvider({ children, defaultConfig, autoConnect, storageMode }: ConnectionProviderProps): import("react/jsx-runtime").JSX.Element;
27
30
  export declare function useConnection(): ConnectionContextValue;
28
31
  export declare function useApiClient(): SyncClient | null;
29
32
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionContext.d.ts","sourceRoot":"","sources":["../../src/hooks/ConnectionContext.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAEL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AACf,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,YAAY,CAAC;AAUpB,UAAU,sBAAsB;IAC9B,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,KAAK,IAAI,CAAC;IACrD,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,CACP,cAAc,CAAC,EAAE,gBAAgB,EACjC,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,KACpC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IAC/D,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACzC;AAID,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,aAAoB,EACrB,EAAE,uBAAuB,2CAwIzB;AAED,wBAAgB,aAAa,IAAI,sBAAsB,CAMtD;AAED,wBAAgB,YAAY,IAAI,UAAU,GAAG,IAAI,CAGhD"}
1
+ {"version":3,"file":"ConnectionContext.d.ts","sourceRoot":"","sources":["../../src/hooks/ConnectionContext.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAEL,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AACf,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AA2DnE,UAAU,sBAAsB;IAC9B,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,KAAK,IAAI,CAAC;IACrD,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,CACP,cAAc,CAAC,EAAE,gBAAgB,EACjC,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,KACpC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IAC/D,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACrC;AAID,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,aAAoB,EACpB,WAAmB,EACnB,WAAuB,EACxB,EAAE,uBAAuB,2CAwLzB;AAcD,wBAAgB,aAAa,IAAI,sBAAsB,CAMtD;AAED,wBAAgB,YAAY,IAAI,UAAU,GAAG,IAAI,CAGhD"}
@@ -1,16 +1,83 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { createContext, useCallback, useContext, useEffect, useMemo, useState, } from 'react';
2
+ import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState, } from 'react';
3
3
  import { createConsoleClient, testConnection, } from '../lib/api.js';
4
- import { useLocalStorage } from './useLocalStorage.js';
4
+ const CONNECTION_STORAGE_KEY = 'sync-console-connection';
5
+ function normalizeConfig(config) {
6
+ if (!config)
7
+ return null;
8
+ const serverUrl = config.serverUrl?.trim() ?? '';
9
+ const token = config.token?.trim() ?? '';
10
+ if (!serverUrl || !token)
11
+ return null;
12
+ return { serverUrl, token };
13
+ }
14
+ function getStorageForMode(mode) {
15
+ if (typeof window === 'undefined')
16
+ return null;
17
+ if (mode === 'local')
18
+ return window.localStorage;
19
+ if (mode === 'session')
20
+ return window.sessionStorage;
21
+ return null;
22
+ }
23
+ function readStoredConfig(mode) {
24
+ const storage = getStorageForMode(mode);
25
+ if (!storage)
26
+ return null;
27
+ try {
28
+ const raw = storage.getItem(CONNECTION_STORAGE_KEY);
29
+ if (!raw)
30
+ return null;
31
+ return normalizeConfig(JSON.parse(raw));
32
+ }
33
+ catch {
34
+ return null;
35
+ }
36
+ }
37
+ function writeStoredConfig(mode, config) {
38
+ const storage = getStorageForMode(mode);
39
+ if (!storage)
40
+ return;
41
+ try {
42
+ if (!config) {
43
+ storage.removeItem(CONNECTION_STORAGE_KEY);
44
+ return;
45
+ }
46
+ storage.setItem(CONNECTION_STORAGE_KEY, JSON.stringify(config));
47
+ }
48
+ catch {
49
+ // Ignore storage write errors.
50
+ }
51
+ }
5
52
  const ConnectionContext = createContext(null);
6
- export function ConnectionProvider({ children, defaultConfig = null, }) {
7
- const [config, setConfigStorage] = useLocalStorage('sync-console-connection', null);
53
+ export function ConnectionProvider({ children, defaultConfig = null, autoConnect = false, storageMode = 'session', }) {
54
+ const [config, setConfigState] = useState(() => readStoredConfig(storageMode));
55
+ useEffect(() => {
56
+ const storedConfig = readStoredConfig(storageMode);
57
+ setConfigState(storedConfig);
58
+ }, [storageMode]);
59
+ useEffect(() => {
60
+ if (typeof window === 'undefined')
61
+ return;
62
+ if (storageMode !== 'local') {
63
+ window.localStorage.removeItem(CONNECTION_STORAGE_KEY);
64
+ }
65
+ if (storageMode === 'memory') {
66
+ window.sessionStorage.removeItem(CONNECTION_STORAGE_KEY);
67
+ }
68
+ }, [storageMode]);
69
+ const setConfigStorage = useCallback((nextConfig) => {
70
+ const normalized = normalizeConfig(nextConfig);
71
+ setConfigState(normalized);
72
+ writeStoredConfig(storageMode, normalized);
73
+ }, [storageMode]);
8
74
  const [state, setState] = useState({
9
75
  isConnected: false,
10
76
  isConnecting: false,
11
77
  error: null,
12
78
  client: null,
13
79
  });
80
+ const lastAutoConnectConfigKeyRef = useRef(null);
14
81
  // Resolve initial config: saved config -> provided defaults
15
82
  useEffect(() => {
16
83
  if (config?.serverUrl?.trim() && config.token?.trim()) {
@@ -30,17 +97,14 @@ export function ConnectionProvider({ children, defaultConfig = null, }) {
30
97
  setState((s) => ({ ...s, error: 'No connection configured' }));
31
98
  return false;
32
99
  }
33
- const normalizedConfig = {
34
- serverUrl: effectiveConfig.serverUrl?.trim() ?? '',
35
- token: effectiveConfig.token?.trim() ?? '',
36
- };
100
+ const normalizedConfig = normalizeConfig(effectiveConfig);
37
101
  // Validate config has required fields
38
- if (!normalizedConfig.serverUrl) {
39
- setState((s) => ({ ...s, error: 'Server URL is required' }));
40
- return false;
41
- }
42
- if (!normalizedConfig.token) {
43
- setState((s) => ({ ...s, error: 'Token is required' }));
102
+ if (!normalizedConfig) {
103
+ const hasServerUrl = (effectiveConfig.serverUrl?.trim() ?? '').length > 0;
104
+ setState((s) => ({
105
+ ...s,
106
+ error: hasServerUrl ? 'Token is required' : 'Server URL is required',
107
+ }));
44
108
  return false;
45
109
  }
46
110
  if (overrideConfig && (options?.persistOverride ?? true)) {
@@ -102,8 +166,41 @@ export function ConnectionProvider({ children, defaultConfig = null, }) {
102
166
  disconnect,
103
167
  clearError,
104
168
  }), [config, setConfig, state, connect, disconnect, clearError]);
169
+ useEffect(() => {
170
+ if (!autoConnect || state.isConnected || state.isConnecting) {
171
+ return;
172
+ }
173
+ const candidate = config ?? defaultConfig;
174
+ const key = normalizeConfigKey(candidate);
175
+ if (!candidate || !key) {
176
+ return;
177
+ }
178
+ if (lastAutoConnectConfigKeyRef.current === key) {
179
+ return;
180
+ }
181
+ lastAutoConnectConfigKeyRef.current = key;
182
+ void connect(candidate, { persistOverride: true });
183
+ }, [
184
+ autoConnect,
185
+ config,
186
+ defaultConfig,
187
+ state.isConnected,
188
+ state.isConnecting,
189
+ connect,
190
+ ]);
105
191
  return (_jsx(ConnectionContext.Provider, { value: value, children: children }));
106
192
  }
193
+ function normalizeConfigKey(config) {
194
+ if (!config) {
195
+ return null;
196
+ }
197
+ const serverUrl = config.serverUrl?.trim() ?? '';
198
+ const token = config.token?.trim() ?? '';
199
+ if (!serverUrl || !token) {
200
+ return null;
201
+ }
202
+ return `${serverUrl}\u0000${token}`;
203
+ }
107
204
  export function useConnection() {
108
205
  const context = useContext(ConnectionContext);
109
206
  if (!context) {
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionContext.js","sourceRoot":"","sources":["../../src/hooks/ConnectionContext.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConnectionContext.js","sourceRoot":"","sources":["../../src/hooks/ConnectionContext.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLiveEvents.d.ts","sourceRoot":"","sources":["../../src/hooks/useLiveEvents.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAuB,SAAS,EAAE,MAAM,cAAc,CAAC;AAInE,UAAU,oBAAoB;IAC5B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,mBAAmB;IAC3B,mCAAmC;IACnC,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,mDAAmD;IACnD,WAAW,EAAE,OAAO,CAAC;IACrB,iCAAiC;IACjC,eAAe,EAAE,YAAY,GAAG,WAAW,GAAG,OAAO,GAAG,cAAc,CAAC;IACvE,8BAA8B;IAC9B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,uCAAuC;IACvC,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAOD,wBAAgB,aAAa,CAC3B,OAAO,GAAE,oBAAyB,GACjC,mBAAmB,CAgVrB"}
1
+ {"version":3,"file":"useLiveEvents.d.ts","sourceRoot":"","sources":["../../src/hooks/useLiveEvents.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAuB,SAAS,EAAE,MAAM,cAAc,CAAC;AAInE,UAAU,oBAAoB;IAC5B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,mBAAmB;IAC3B,mCAAmC;IACnC,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,mDAAmD;IACnD,WAAW,EAAE,OAAO,CAAC;IACrB,iCAAiC;IACjC,eAAe,EAAE,YAAY,GAAG,WAAW,GAAG,OAAO,GAAG,cAAc,CAAC;IACvE,8BAA8B;IAC9B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,uCAAuC;IACvC,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAOD,wBAAgB,aAAa,CAC3B,OAAO,GAAE,oBAAyB,GACjC,mBAAmB,CAwWrB"}
@@ -169,7 +169,6 @@ export function useLiveEvents(options = {}) {
169
169
  : baseUrl.pathname;
170
170
  baseUrl.pathname = `${normalizedPath}/console/events/live`;
171
171
  baseUrl.search = '';
172
- baseUrl.searchParams.set('token', config.token);
173
172
  if (lastEventTimestampRef.current) {
174
173
  baseUrl.searchParams.set('since', lastEventTimestampRef.current);
175
174
  }
@@ -190,8 +189,19 @@ export function useLiveEvents(options = {}) {
190
189
  return;
191
190
  }
192
191
  reconnectAttemptsRef.current = 0;
193
- markActivity();
194
192
  setError(null);
193
+ setConnectionState('connecting');
194
+ setIsConnected(false);
195
+ try {
196
+ ws.send(JSON.stringify({
197
+ type: 'auth',
198
+ token: config.token,
199
+ }));
200
+ }
201
+ catch {
202
+ ws.close();
203
+ return;
204
+ }
195
205
  clearStaleInterval();
196
206
  staleCheckIntervalRef.current = setInterval(() => {
197
207
  const socket = wsRef.current;
@@ -227,7 +237,16 @@ export function useLiveEvents(options = {}) {
227
237
  const eventType = data.type;
228
238
  markActivity();
229
239
  // Skip control events
230
- if (eventType === 'connected' || eventType === 'heartbeat') {
240
+ if (eventType === 'connected' ||
241
+ eventType === 'heartbeat' ||
242
+ eventType === 'auth_required') {
243
+ return;
244
+ }
245
+ if (eventType === 'error') {
246
+ const message = typeof data.message === 'string'
247
+ ? data.message
248
+ : 'Live events authentication failed';
249
+ setError(new Error(message));
231
250
  return;
232
251
  }
233
252
  const liveEvent = {
@@ -1 +1 @@
1
- {"version":3,"file":"useLiveEvents.js","sourceRoot":"","sources":["../../src/hooks/useLiveEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useLiveEvents.js","sourceRoot":"","sources":["../../src/hooks/useLiveEvents.ts"],"names":[],"mappings":"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"}
package/dist/layout.d.ts CHANGED
@@ -1,6 +1,9 @@
1
+ import type { ReactNode } from 'react';
1
2
  interface ConsoleLayoutProps {
2
3
  basePath?: string;
4
+ appHref?: string;
5
+ modeBadge?: ReactNode;
3
6
  }
4
- export declare function ConsoleLayout({ basePath }: ConsoleLayoutProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function ConsoleLayout({ basePath, appHref, modeBadge }: ConsoleLayoutProps): import("react/jsx-runtime").JSX.Element;
5
8
  export {};
6
9
  //# sourceMappingURL=layout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.tsx"],"names":[],"mappings":"AAoBA,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAoCD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,kBAAkB,2CAiK7D"}
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AASvC,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAoCD,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,OAAO,EACP,SAAS,EACV,EAAE,kBAAkB,2CA+KpB"}
package/dist/layout.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { BottomBar, Button, ConnectionStatusBadge, Input, NavPill, NavPillGroup, SyncularBrand, TopNavigation, } from '@syncular/ui';
2
+ import { Badge, BottomBar, Button, ConnectionStatusBadge, Input, NavPill, NavPillGroup, navActionLinkClassName, SyncularBrand, TopNavigation, } from '@syncular/ui';
3
3
  import { Link, Outlet, useRouterState } from '@tanstack/react-router';
4
- import { Settings } from 'lucide-react';
4
+ import { ArrowLeft, Settings } from 'lucide-react';
5
5
  import { useMemo } from 'react';
6
6
  import { useConnection } from './hooks/ConnectionContext.js';
7
7
  import { useStats } from './hooks/useConsoleApi.js';
@@ -29,7 +29,7 @@ function resolvePath(basePath, suffix) {
29
29
  return suffix || '/';
30
30
  return suffix ? `${basePath}${suffix}` : basePath;
31
31
  }
32
- export function ConsoleLayout({ basePath }) {
32
+ export function ConsoleLayout({ basePath, appHref, modeBadge, }) {
33
33
  const { connect, config, isConnected, isConnecting } = useConnection();
34
34
  const { preferences } = usePreferences();
35
35
  const { instanceId, rawInstanceId, setInstanceId, clearInstanceId } = useInstanceContext();
@@ -70,11 +70,11 @@ export function ConsoleLayout({ basePath }) {
70
70
  },
71
71
  ]
72
72
  : [];
73
- return (_jsxs("div", { className: `${SYNCULAR_CONSOLE_ROOT_CLASS} h-screen bg-background text-foreground flex flex-col`, children: [_jsx(TopNavigation, { brand: _jsx(Link, { to: commandPath, children: _jsx(SyncularBrand, { label: "console" }) }), center: _jsx(NavPillGroup, { items: resolvedNavItems, activeId: activeId, renderItem: (item, { active }) => (_jsx(Link, { to: item.id, children: _jsx(NavPill, { active: active, children: item.label }) }, item.id)) }), right: _jsxs("div", { className: "flex items-center gap-2", children: [
74
- _jsxs("div", { className: "flex items-center gap-1", children: [
73
+ return (_jsxs("div", { className: `${SYNCULAR_CONSOLE_ROOT_CLASS} h-screen bg-background text-foreground flex flex-col`, children: [_jsx(TopNavigation, { brand: _jsx(Link, { to: commandPath, children: _jsx(SyncularBrand, { label: "console" }) }), center: _jsx(NavPillGroup, { items: resolvedNavItems, activeId: activeId, renderItem: (item, { active }) => (_jsx(Link, { to: item.id, children: _jsx(NavPill, { active: active, children: item.label }) }, item.id)) }), right: _jsxs("div", { className: "flex items-center gap-2", children: [modeBadge ? (_jsx(Badge, { variant: "flow", className: "hidden md:inline-flex px-2 py-1 text-[10px]", children: modeBadge })) : null, _jsxs("div", { className: "flex items-center gap-1", children: [
75
74
  _jsx("span", { className: "font-mono text-[9px] text-neutral-500 uppercase tracking-wide", children: "Instance" }), _jsx(Input, { variant: "mono", value: rawInstanceId, onChange: (event) => setInstanceId(event.target.value), onBlur: (event) => setInstanceId(event.target.value.trim()), placeholder: "all", className: "h-7 w-[110px] px-2 py-1" }), instanceId ? (_jsx(Button, { variant: "ghost", size: "sm", className: "h-7 px-2 text-[10px]", onClick: clearInstanceId, children: "All" })) : null] }), _jsxs("div", { className: "flex items-center gap-1", children: [
76
- _jsx("span", { className: "font-mono text-[9px] text-neutral-500 uppercase tracking-wide", children: "Partition" }), _jsx(Input, { variant: "mono", value: rawPartitionId, onChange: (event) => setPartitionId(event.target.value), onBlur: (event) => setPartitionId(event.target.value.trim()), placeholder: "all", className: "h-7 w-[110px] px-2 py-1" }), partitionId ? (_jsx(Button, { variant: "ghost", size: "sm", className: "h-7 px-2 text-[10px]", onClick: clearPartitionId, children: "All" })) : null] }), _jsx(ConnectionStatusBadge, { state: connectionState }), _jsx(Link, { to: configPath, children: _jsx(Button, { variant: pathname === configPath ? 'secondary' : 'ghost', size: "icon", children: _jsx(Settings, {}) }) })
77
- ] }) }), _jsx("main", { className: "flex-1 overflow-auto pt-[42px] pb-[32px]", children: _jsx("div", { className: "min-h-full", children: isConnected || pathname === configPath ? (_jsx("div", { style: { animation: 'pageIn 0.3s ease-out' }, children: _jsx(Outlet, {}) }, pathname)) : (_jsx(NotConnectedFallback, { configPath: configPath, hasSavedConfig: Boolean(config), isConnecting: isConnecting, onConnect: () => {
75
+ _jsx("span", { className: "font-mono text-[9px] text-neutral-500 uppercase tracking-wide", children: "Partition" }), _jsx(Input, { variant: "mono", value: rawPartitionId, onChange: (event) => setPartitionId(event.target.value), onBlur: (event) => setPartitionId(event.target.value.trim()), placeholder: "all", className: "h-7 w-[110px] px-2 py-1" }), partitionId ? (_jsx(Button, { variant: "ghost", size: "sm", className: "h-7 px-2 text-[10px]", onClick: clearPartitionId, children: "All" })) : null] }), _jsx(ConnectionStatusBadge, { state: connectionState }), _jsx(Link, { to: configPath, children: _jsx(Button, { variant: pathname === configPath ? 'secondary' : 'ghost', size: "icon", children: _jsx(Settings, { className: "h-3 w-3" }) }) }), appHref ? (_jsxs("a", { href: appHref, className: navActionLinkClassName, children: [
76
+ _jsx(ArrowLeft, { className: "h-3 w-3" }),
77
+ "Go to app"] })) : null] }) }), _jsx("main", { className: "flex-1 overflow-auto pb-[32px]", children: _jsx("div", { className: "min-h-full", children: isConnected || pathname === configPath ? (_jsx("div", { style: { animation: 'pageIn 0.3s ease-out' }, children: _jsx(Outlet, {}) }, pathname)) : (_jsx(NotConnectedFallback, { configPath: configPath, hasSavedConfig: Boolean(config), isConnecting: isConnecting, onConnect: () => {
78
78
  void connect();
79
79
  } })) }) }), isConnected && (_jsx(BottomBar, { isLive: isConnected, metrics: bottomMetrics, uptime: "--" }))] }));
80
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../src/layout.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../src/layout.tsx"],"names":[],"mappings":"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"}
package/dist/mount.d.ts CHANGED
@@ -4,6 +4,7 @@ interface MountSyncularConsoleOptions {
4
4
  strictMode?: boolean;
5
5
  basePath?: SyncularConsoleProps['basePath'];
6
6
  defaultConfig?: SyncularConsoleProps['defaultConfig'];
7
+ autoConnect?: SyncularConsoleProps['autoConnect'];
7
8
  }
8
9
  export declare function mountSyncularConsoleApp(containerOrSelector: Element | string, options?: MountSyncularConsoleOptions): Root;
9
10
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"mount.d.ts","sourceRoot":"","sources":["../src/mount.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAO,KAAK,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAGvD,UAAU,2BAA2B;IACnC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAC5C,aAAa,CAAC,EAAE,oBAAoB,CAAC,eAAe,CAAC,CAAC;CACvD;AAiBD,wBAAgB,uBAAuB,CACrC,mBAAmB,EAAE,OAAO,GAAG,MAAM,EACrC,OAAO,GAAE,2BAAgC,GACxC,IAAI,CAgBN"}
1
+ {"version":3,"file":"mount.d.ts","sourceRoot":"","sources":["../src/mount.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAO,KAAK,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAGvD,UAAU,2BAA2B;IACnC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAC5C,aAAa,CAAC,EAAE,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACtD,WAAW,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;CACnD;AAiBD,wBAAgB,uBAAuB,CACrC,mBAAmB,EAAE,OAAO,GAAG,MAAM,EACrC,OAAO,GAAE,2BAAgC,GACxC,IAAI,CAoBN"}
package/dist/mount.js CHANGED
@@ -17,7 +17,7 @@ export function mountSyncularConsoleApp(containerOrSelector, options = {}) {
17
17
  const container = resolveContainer(containerOrSelector);
18
18
  applyConsoleThemeScope(container);
19
19
  const root = createRoot(container);
20
- const app = (_jsx(App, { basePath: options.basePath, defaultConfig: options.defaultConfig }));
20
+ const app = (_jsx(App, { basePath: options.basePath, defaultConfig: options.defaultConfig, autoConnect: options.autoConnect }));
21
21
  if (options.strictMode === false) {
22
22
  root.render(app);
23
23
  return root;
package/dist/mount.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mount.js","sourceRoot":"","sources":["../src/mount.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAa,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,GAAG,EAA6B,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAQvD,SAAS,gBAAgB,CAAC,mBAAqC,EAAW;IACxE,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC9D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,4BAA4B,mBAAmB,YAAY,CAC5D,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AAAA,CAClB;AAED,MAAM,UAAU,uBAAuB,CACrC,mBAAqC,EACrC,OAAO,GAAgC,EAAE,EACnC;IACN,MAAM,SAAS,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IACxD,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAElC,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,CACV,KAAC,GAAG,IAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,GAAI,CAC1E,CAAC;IAEF,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,KAAC,UAAU,cAAE,GAAG,GAAc,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC;AAAA,CACb"}
1
+ {"version":3,"file":"mount.js","sourceRoot":"","sources":["../src/mount.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAa,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,GAAG,EAA6B,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AASvD,SAAS,gBAAgB,CAAC,mBAAqC,EAAW;IACxE,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC9D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,4BAA4B,mBAAmB,YAAY,CAC5D,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AAAA,CAClB;AAED,MAAM,UAAU,uBAAuB,CACrC,mBAAqC,EACrC,OAAO,GAAgC,EAAE,EACnC;IACN,MAAM,SAAS,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IACxD,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAElC,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,CACV,KAAC,GAAG,IACF,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAC1B,aAAa,EAAE,OAAO,CAAC,aAAa,EACpC,WAAW,EAAE,OAAO,CAAC,WAAW,GAChC,CACH,CAAC;IAEF,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,KAAC,UAAU,cAAE,GAAG,GAAc,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC;AAAA,CACb"}
@@ -17,14 +17,23 @@ function ConnectionTab() {
17
17
  const [clearSavedConfigOnDisconnect, setClearSavedConfigOnDisconnect] = useLocalStorage('console:disconnect-clear-saved-config', false);
18
18
  useEffect(() => {
19
19
  const params = new URLSearchParams(window.location.search);
20
- const urlToken = params.get('token');
21
20
  const urlServer = params.get('server');
22
- if (urlToken) {
23
- setToken(urlToken);
24
- window.history.replaceState({}, '', window.location.pathname);
25
- }
21
+ let shouldReplaceUrl = false;
26
22
  if (urlServer) {
27
23
  setServerUrl(urlServer);
24
+ params.delete('server');
25
+ shouldReplaceUrl = true;
26
+ }
27
+ if (params.has('token')) {
28
+ params.delete('token');
29
+ shouldReplaceUrl = true;
30
+ }
31
+ if (shouldReplaceUrl) {
32
+ const nextQuery = params.toString();
33
+ const nextUrl = nextQuery
34
+ ? `${window.location.pathname}?${nextQuery}`
35
+ : window.location.pathname;
36
+ window.history.replaceState({}, '', nextUrl);
28
37
  }
29
38
  }, []);
30
39
  useEffect(() => {
@@ -331,7 +340,7 @@ function ApiKeysTab() {
331
340
  expiringWithinDaysInput.trim().length > 0 ? (_jsx("p", { className: "font-mono text-[10px] text-offline", children: "Enter a positive whole number." })) : null] })
332
341
  ] }), data?.items.length === 0 ? (_jsx(EmptyState, { message: "No API keys match the current filters." })) : (_jsxs(Table, { children: [
333
342
  _jsx(TableHeader, { children: _jsxs(TableRow, { children: [
334
- _jsx(TableHead, { children: _jsx(Checkbox, { checked: allSelectableChecked, indeterminate: !allSelectableChecked &&
343
+ _jsx(TableHead, { className: "w-[28px]", children: _jsx(Checkbox, { checked: allSelectableChecked, indeterminate: !allSelectableChecked &&
335
344
  someSelectableChecked &&
336
345
  selectableKeyIds.length > 0, onCheckedChange: (checked) => {
337
346
  if (checked) {
@@ -340,22 +349,21 @@ function ApiKeysTab() {
340
349
  else {
341
350
  setSelectedKeyIds([]);
342
351
  }
343
- }, "aria-label": "Select all active keys" }) }), _jsx(TableHead, { children: "NAME" }), _jsx(TableHead, { children: "TYPE" }), _jsx(TableHead, { children: "KEY PREFIX" }), _jsx(TableHead, { children: "ACTOR" }), _jsx(TableHead, { children: "SCOPES" }), _jsx(TableHead, { children: "CREATED" }), _jsx(TableHead, { children: "LAST USED" }), _jsx(TableHead, { children: "EXPIRES" }), _jsx(TableHead, { children: "STATUS" }), _jsx(TableHead, { children: "ACTIONS" })
352
+ }, "aria-label": "Select all active keys" }) }), _jsx(TableHead, { className: "w-[100px]", children: "NAME" }), _jsx(TableHead, { className: "w-[55px]", children: "TYPE" }), _jsx(TableHead, { className: "w-[90px]", children: "KEY PREFIX" }), _jsx(TableHead, { className: "w-[80px]", children: "ACTOR" }), _jsx(TableHead, { className: "w-[100px]", children: "SCOPES" }), _jsx(TableHead, { className: "w-[120px]", children: "CREATED" }), _jsx(TableHead, { className: "w-[120px]", children: "LAST USED" }), _jsx(TableHead, { className: "w-[120px]", children: "EXPIRES" }), _jsx(TableHead, { className: "flex-1", children: "STATUS" })
344
353
  ] }) }), _jsx(TableBody, { children: (data?.items ?? []).map((apiKey) => {
345
354
  const lifecycleStatus = getApiKeyLifecycleStatus(apiKey, effectiveExpiringWithinDays);
346
- return (_jsxs(TableRow, { children: [
347
- _jsx(TableCell, { children: _jsx(Checkbox, { checked: selectedKeyIds.includes(apiKey.keyId), onCheckedChange: (checked) => {
355
+ return (_jsxs(TableRow, { className: "group relative", children: [
356
+ _jsx(TableCell, { className: "w-[28px]", children: _jsx(Checkbox, { checked: selectedKeyIds.includes(apiKey.keyId), onCheckedChange: (checked) => {
348
357
  setSelectedKeyIds((current) => checked
349
358
  ? [...new Set([...current, apiKey.keyId])]
350
359
  : current.filter((keyId) => keyId !== apiKey.keyId));
351
- }, "aria-label": `Select ${apiKey.name}`, disabled: apiKey.revokedAt !== null }) }), _jsx(TableCell, { className: "font-medium", children: apiKey.name }), _jsx(TableCell, { children: _jsx(Badge, { variant: apiKey.keyType === 'admin'
360
+ }, "aria-label": `Select ${apiKey.name}`, disabled: apiKey.revokedAt !== null }) }), _jsx(TableCell, { className: "w-[100px] font-medium", children: apiKey.name }), _jsx(TableCell, { className: "w-[55px]", children: _jsx(Badge, { variant: apiKey.keyType === 'admin'
352
361
  ? 'flow'
353
362
  : apiKey.keyType === 'proxy'
354
363
  ? 'ghost'
355
- : 'relay', children: apiKey.keyType }) }), _jsx(TableCell, { children: _jsxs("code", { className: "font-mono text-[11px]", children: [apiKey.keyPrefix, "..."] }) }), _jsx(TableCell, { className: "text-neutral-500", children: apiKey.actorId ?? '-' }), _jsx(TableCell, { className: "max-w-[220px] text-neutral-500", children: _jsx("code", { className: "font-mono text-[10px]", children: summarizeScopeKeys(apiKey.scopeKeys) }) }), _jsx(TableCell, { className: "text-neutral-500", children: formatOptionalDateTime(apiKey.createdAt) }), _jsx(TableCell, { className: "text-neutral-500", children: formatOptionalDateTime(apiKey.lastUsedAt) }), _jsx(TableCell, { className: "text-neutral-500", children: formatOptionalDateTime(apiKey.expiresAt) }), _jsx(TableCell, { children: _jsx(Badge, { variant: getApiKeyStatusBadgeVariant(lifecycleStatus), children: lifecycleStatus }) }), _jsx(TableCell, { children: _jsxs("div", { className: "flex items-center gap-1", children: [
356
- _jsx(Button, { variant: "default", size: "sm", onClick: () => setStagingRotateKey(apiKey), disabled: apiKey.revokedAt !== null, children: "Stage" }), _jsx(Button, { variant: "default", size: "sm", onClick: () => setRotatingKeyId(apiKey.keyId), disabled: apiKey.revokedAt !== null, children: "Rotate" }), _jsx(Button, { variant: "destructive", size: "sm", onClick: () => setRevokingKeyId(apiKey.keyId), disabled: apiKey.revokedAt !== null, children: "Revoke" })
357
- ] }) })
358
- ] }, apiKey.keyId));
364
+ : 'relay', children: apiKey.keyType }) }), _jsx(TableCell, { className: "w-[90px]", children: _jsxs("code", { className: "font-mono text-[11px]", children: [apiKey.keyPrefix, "..."] }) }), _jsx(TableCell, { className: "w-[80px] text-neutral-500", children: apiKey.actorId ?? '-' }), _jsx(TableCell, { className: "w-[100px] text-neutral-500", children: _jsx("code", { className: "font-mono text-[10px]", children: summarizeScopeKeys(apiKey.scopeKeys) }) }), _jsx(TableCell, { className: "w-[120px] text-neutral-500", children: formatOptionalDateTime(apiKey.createdAt) }), _jsx(TableCell, { className: "w-[120px] text-neutral-500", children: formatOptionalDateTime(apiKey.lastUsedAt) }), _jsx(TableCell, { className: "w-[120px] text-neutral-500", children: formatOptionalDateTime(apiKey.expiresAt) }), _jsx(TableCell, { className: "flex-1", children: _jsx(Badge, { variant: getApiKeyStatusBadgeVariant(lifecycleStatus), children: lifecycleStatus }) }), apiKey.revokedAt === null && (_jsxs("div", { className: "absolute right-2 top-1/2 -translate-y-1/2 flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity", children: [
365
+ _jsx("button", { type: "button", onClick: () => setStagingRotateKey(apiKey), className: "px-1.5 py-0.5 rounded text-[9px] font-mono text-neutral-600 hover:text-white hover:bg-white/[0.05] cursor-pointer transition-colors", children: "stage" }), _jsx("button", { type: "button", onClick: () => setRotatingKeyId(apiKey.keyId), className: "px-1.5 py-0.5 rounded text-[9px] font-mono text-neutral-600 hover:text-white hover:bg-white/[0.05] cursor-pointer transition-colors", children: "rotate" }), _jsx("button", { type: "button", onClick: () => setRevokingKeyId(apiKey.keyId), className: "px-1.5 py-0.5 rounded text-[9px] font-mono text-neutral-600 hover:text-offline hover:bg-offline/10 cursor-pointer transition-colors", children: "revoke" })
366
+ ] }))] }, apiKey.keyId));
359
367
  }) })
360
368
  ] }))] }), _jsx(Dialog, { open: showCreateDialog, onOpenChange: setShowCreateDialog, children: _jsxs(DialogContent, { children: [
361
369
  _jsx(DialogHeader, { children: _jsx(DialogTitle, { children: "Create API Key" }) }), createdSecretKey ? (_jsx(SecretKeyReveal, { copiedKeyId: copiedKeyId, onClose: () => {