@schlessera/brain-ui-react 0.4.0 → 0.5.1

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/components/chat/chat-page.d.ts.map +1 -1
  2. package/dist/components/chat/chat-page.js +10 -5
  3. package/dist/components/chat/chat-page.js.map +1 -1
  4. package/dist/components/layout/mobile-tab-bar.d.ts.map +1 -1
  5. package/dist/components/layout/mobile-tab-bar.js +41 -4
  6. package/dist/components/layout/mobile-tab-bar.js.map +1 -1
  7. package/dist/components/layout/side-rail.js +3 -3
  8. package/dist/components/layout/side-rail.js.map +1 -1
  9. package/dist/components/settings/models-tab.d.ts +11 -0
  10. package/dist/components/settings/models-tab.d.ts.map +1 -0
  11. package/dist/components/settings/models-tab.js +116 -0
  12. package/dist/components/settings/models-tab.js.map +1 -0
  13. package/dist/components/settings/passkey-tab.d.ts +13 -0
  14. package/dist/components/settings/passkey-tab.d.ts.map +1 -0
  15. package/dist/components/settings/{passkey-panel.js → passkey-tab.js} +14 -11
  16. package/dist/components/settings/passkey-tab.js.map +1 -0
  17. package/dist/components/settings/settings-panel.d.ts +10 -0
  18. package/dist/components/settings/settings-panel.d.ts.map +1 -0
  19. package/dist/components/settings/settings-panel.js +24 -0
  20. package/dist/components/settings/settings-panel.js.map +1 -0
  21. package/dist/lib/api-client.d.ts +7 -1
  22. package/dist/lib/api-client.d.ts.map +1 -1
  23. package/dist/lib/api-client.js +9 -0
  24. package/dist/lib/api-client.js.map +1 -1
  25. package/dist/stores/provider-store.d.ts.map +1 -1
  26. package/dist/stores/provider-store.js +10 -1
  27. package/dist/stores/provider-store.js.map +1 -1
  28. package/dist/stores/ui-store.d.ts +9 -3
  29. package/dist/stores/ui-store.d.ts.map +1 -1
  30. package/dist/stores/ui-store.js +6 -3
  31. package/dist/stores/ui-store.js.map +1 -1
  32. package/dist/styles.css +1 -1
  33. package/package.json +2 -2
  34. package/src/components/chat/chat-page.tsx +13 -7
  35. package/src/components/layout/mobile-tab-bar.tsx +95 -8
  36. package/src/components/layout/side-rail.tsx +6 -6
  37. package/src/components/settings/models-tab.tsx +214 -0
  38. package/src/components/settings/{passkey-panel.tsx → passkey-tab.tsx} +74 -79
  39. package/src/components/settings/settings-panel.tsx +61 -0
  40. package/src/lib/api-client.ts +15 -0
  41. package/src/stores/provider-store.ts +12 -1
  42. package/src/stores/ui-store.ts +18 -7
  43. package/dist/components/settings/passkey-panel.d.ts +0 -10
  44. package/dist/components/settings/passkey-panel.d.ts.map +0 -1
  45. package/dist/components/settings/passkey-panel.js.map +0 -1
@@ -1,22 +1,29 @@
1
1
  import { create } from "zustand";
2
2
 
3
+ /** Which tab the settings panel opens on. */
4
+ export type SettingsTab = "models" | "security";
5
+
3
6
  interface UIState {
4
7
  sessionPanelOpen: boolean;
5
8
  syncPanelOpen: boolean;
6
9
  whatsupPanelOpen: boolean;
7
10
  filePanelOpen: boolean;
8
- securityPanelOpen: boolean;
11
+ settingsPanelOpen: boolean;
12
+ settingsTab: SettingsTab;
9
13
  toggleSessionPanel: () => void;
10
14
  toggleSyncPanel: () => void;
11
15
  toggleWhatsupPanel: () => void;
12
16
  toggleFilePanel: () => void;
13
- toggleSecurityPanel: () => void;
17
+ toggleSettingsPanel: () => void;
14
18
  closeAllPanels: () => void;
15
19
  setSyncPanelOpen: (open: boolean) => void;
16
20
  setWhatsupPanelOpen: (open: boolean) => void;
17
21
  setSessionPanelOpen: (open: boolean) => void;
18
22
  setFilePanelOpen: (open: boolean) => void;
19
- setSecurityPanelOpen: (open: boolean) => void;
23
+ setSettingsPanelOpen: (open: boolean) => void;
24
+ /** Open settings straight onto a tab (menu entries, deep links). */
25
+ openSettings: (tab: SettingsTab) => void;
26
+ setSettingsTab: (tab: SettingsTab) => void;
20
27
  }
21
28
 
22
29
  const CLOSED = {
@@ -24,11 +31,12 @@ const CLOSED = {
24
31
  syncPanelOpen: false,
25
32
  whatsupPanelOpen: false,
26
33
  filePanelOpen: false,
27
- securityPanelOpen: false,
34
+ settingsPanelOpen: false,
28
35
  };
29
36
 
30
37
  export const useUIStore = create<UIState>((set) => ({
31
38
  ...CLOSED,
39
+ settingsTab: "models",
32
40
  toggleSessionPanel: () =>
33
41
  set((s) => ({ ...CLOSED, sessionPanelOpen: !s.sessionPanelOpen })),
34
42
  toggleSyncPanel: () =>
@@ -37,12 +45,15 @@ export const useUIStore = create<UIState>((set) => ({
37
45
  set((s) => ({ ...CLOSED, whatsupPanelOpen: !s.whatsupPanelOpen })),
38
46
  toggleFilePanel: () =>
39
47
  set((s) => ({ ...CLOSED, filePanelOpen: !s.filePanelOpen })),
40
- toggleSecurityPanel: () =>
41
- set((s) => ({ ...CLOSED, securityPanelOpen: !s.securityPanelOpen })),
48
+ toggleSettingsPanel: () =>
49
+ set((s) => ({ ...CLOSED, settingsPanelOpen: !s.settingsPanelOpen })),
42
50
  closeAllPanels: () => set({ ...CLOSED }),
43
51
  setSyncPanelOpen: (open) => set({ syncPanelOpen: open }),
44
52
  setWhatsupPanelOpen: (open) => set({ whatsupPanelOpen: open }),
45
53
  setSessionPanelOpen: (open) => set({ sessionPanelOpen: open }),
46
54
  setFilePanelOpen: (open) => set({ filePanelOpen: open }),
47
- setSecurityPanelOpen: (open) => set({ securityPanelOpen: open }),
55
+ setSettingsPanelOpen: (open) => set({ settingsPanelOpen: open }),
56
+ openSettings: (tab) =>
57
+ set({ ...CLOSED, settingsPanelOpen: true, settingsTab: tab }),
58
+ setSettingsTab: (tab) => set({ settingsTab: tab }),
48
59
  }));
@@ -1,10 +0,0 @@
1
- /**
2
- * Passkey management + sign out. Registration requires the current session
3
- * (routes are behind the auth guard); credentials are RP-scoped, so entries
4
- * registered on another hostname are badged and only useful there.
5
- */
6
- export declare function PasskeyPanel({ open, onClose, }: {
7
- open: boolean;
8
- onClose: () => void;
9
- }): import("react").JSX.Element;
10
- //# sourceMappingURL=passkey-panel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"passkey-panel.d.ts","sourceRoot":"","sources":["../../../src/components/settings/passkey-panel.tsx"],"names":[],"mappings":"AAkBA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,OAAO,GACR,EAAE;IACD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,+BAyJA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"passkey-panel.js","sourceRoot":"","sources":["../../../src/components/settings/passkey-panel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EACL,KAAK,EACL,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,MAAM,EACN,IAAI,EACJ,MAAM,EACN,CAAC,GACF,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,IAAI,EACJ,OAAO,GAIR;IACC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAmB,EAAE,CAAC,CAAC;IACrE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,iBAAiB,GAAG,gBAAgB,EAAE,CAAC;IAE7C,KAAK,UAAU,OAAO;QACpB,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;YACrC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACjC,cAAc,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,0EAA0E;YAC1E,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,cAAc,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,EAAE,CAAC;YACT,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,KAAK,OAAO,EAAE,CAAC;QACjB,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,KAAK,UAAU,KAAK;QAClB,IAAI,IAAI;YAAE,OAAO;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,eAAe,EAAE,CAAC;YACxB,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,EAAU;QAChC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,2CAA2C,CAAC;YAAE,OAAO;QACzE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC5B,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,EAAU,EAAE,KAAa;QAC/C,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACnC,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAC7D,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,KAAK,UAAU,SAAS;QACtB,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;QACrB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,CACL,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAC,UAAU,YACxD,eAAK,SAAS,EAAC,sBAAsB,aACnC,eAAK,SAAS,EAAC,4BAA4B,aACzC,aAAI,SAAS,EAAC,mEAAmE,yBAE5E,EACL,YAAG,SAAS,EAAC,oCAAoC,iJAG7C,EAEH,OAAO,CAAC,CAAC,CAAC,CACT,cAAK,SAAS,EAAC,0BAA0B,YACvC,KAAC,OAAO,IAAC,SAAS,EAAC,4CAA4C,GAAG,GAC9D,CACP,CAAC,CAAC,CAAC,CACF,cAAI,SAAS,EAAC,0BAA0B,aACrC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAC/B,KAAC,UAAU,IAET,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,EACvC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,IAH9C,UAAU,CAAC,EAAE,CAIlB,CACH,CAAC,EACD,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,IAAI,CAC1C,aAAI,SAAS,EAAC,oGAAoG,iCAE7G,CACN,IACE,CACN,EAEA,KAAK,IAAI,CACR,YAAG,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,+BAA+B,YACtD,KAAK,GACJ,CACL,EAEA,WAAW,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAClC,kBACE,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,IAAI,EACd,SAAS,EAAC,2LAA2L,aAEpM,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,OAAO,IAAC,SAAS,EAAC,sBAAsB,GAAG,CAC7C,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,SAAS,EAAC,SAAS,GAAG,CAC7B,qBAEM,CACV,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAC,oCAAoC,YAC9C,WAAW;gCACV,CAAC,CAAC,yCAAyC;gCAC3C,CAAC,CAAC,iDAAiD,GACnD,CACL,IACG,EAGN,cAAK,SAAS,EAAC,4BAA4B,YACzC,kBACE,OAAO,EAAE,SAAS,EAClB,SAAS,EAAC,iNAAiN,aAE3N,KAAC,MAAM,IAAC,SAAS,EAAC,SAAS,GAAG,gBAEvB,GACL,IACF,GACK,CACd,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,UAAU,EACV,QAAQ,EACR,QAAQ,GAKT;IACC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,SAAS,GACb,OAAO,MAAM,KAAK,WAAW,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAEhF,MAAM,WAAW,GACf,UAAU,CAAC,KAAK;QAChB,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;IAErE,SAAS,MAAM;QACb,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,UAAU,CAAC,KAAK;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,CACL,cAAI,SAAS,EAAC,uDAAuD,aACnE,eAAK,SAAS,EAAC,yBAAyB,aACtC,KAAC,WAAW,IAAC,SAAS,EAAC,+BAA+B,GAAG,EACxD,OAAO,CAAC,CAAC,CAAC,CACT,gBAAM,SAAS,EAAC,gCAAgC,aAC9C,gBACE,SAAS,QACT,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACzC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;oCACf,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO;wCAAE,MAAM,EAAE,CAAC;oCAChC,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ;wCAAE,UAAU,CAAC,KAAK,CAAC,CAAC;gCAC5C,CAAC,EACD,SAAS,EAAC,gIAAgI,GAC1I,EACF,iBAAQ,OAAO,EAAE,MAAM,EAAE,KAAK,EAAC,MAAM,EAAC,SAAS,EAAC,iDAAiD,YAC/F,KAAC,KAAK,IAAC,SAAS,EAAC,aAAa,GAAG,GAC1B,EACT,iBAAQ,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAC,QAAQ,EAAC,SAAS,EAAC,iDAAiD,YAClH,KAAC,CAAC,IAAC,SAAS,EAAC,aAAa,GAAG,GACtB,IACJ,CACR,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,yCAAyC,YAAE,WAAW,GAAQ,CAC/E,EACA,CAAC,OAAO,IAAI,CACX,8BACE,iBACE,OAAO,EAAE,GAAG,EAAE;oCACZ,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;oCAC3B,UAAU,CAAC,IAAI,CAAC,CAAC;gCACnB,CAAC,EACD,KAAK,EAAC,QAAQ,EACd,SAAS,EAAC,mEAAmE,YAE7E,KAAC,MAAM,IAAC,SAAS,EAAC,aAAa,GAAG,GAC3B,EACT,iBACE,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAC,QAAQ,EACd,SAAS,EAAC,oEAAoE,YAE9E,KAAC,MAAM,IAAC,SAAS,EAAC,aAAa,GAAG,GAC3B,IACR,CACJ,IACG,EACN,eAAK,SAAS,EAAC,2FAA2F,aACvG,UAAU,CAAC,QAAQ,IAAI,CACtB,gBAAM,SAAS,EAAC,yBAAyB,aACvC,KAAC,KAAK,IAAC,SAAS,EAAC,SAAS,GAAG,eACxB,CACR,EACA,SAAS,IAAI,CACZ,eACE,SAAS,EAAE,EAAE,CACX,wEAAwE,CACzE,EACD,KAAK,EAAE,iBAAiB,UAAU,CAAC,IAAI,sBAAsB,YAE5D,UAAU,CAAC,IAAI,GACX,CACR,EACD,yBACG,UAAU,CAAC,UAAU;4BACpB,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,kBAAkB,EAAE,EAAE;4BACrE,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE,EAAE,GAC7D,IACH,IACH,CACN,CAAC;AACJ,CAAC"}