@burtson-labs/bandit-engine 2.0.147 → 2.0.148

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.
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  chat_default
3
- } from "./chunk-XHFMXI6Z.mjs";
3
+ } from "./chunk-NCZX5YKN.mjs";
4
4
  import {
5
5
  chat_provider_default
6
6
  } from "./chunk-PU74BI6Y.mjs";
@@ -10,7 +10,7 @@ import {
10
10
  useGatewayHealth,
11
11
  useGatewayMemory,
12
12
  useGatewayModels
13
- } from "./chunk-AW2Q3IOD.mjs";
13
+ } from "./chunk-3ADU3BFL.mjs";
14
14
  import "./chunk-P5IJLX6I.mjs";
15
15
  import "./chunk-F7JXIW6T.mjs";
16
16
  import "./chunk-K2JGFKEB.mjs";
@@ -28047,47 +28047,27 @@ var init_enhanced_mobile_conversations_modal = __esm({
28047
28047
  }
28048
28048
  }
28049
28049
  ),
28050
- syncEnabled && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28051
- import_material47.IconButton,
28050
+ syncEnabled && syncStatus === "syncing" && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28051
+ import_material47.Box,
28052
28052
  {
28053
- onClick: () => {
28054
- if (syncStatus !== "syncing") void runSync({ force: true });
28055
- },
28056
- "aria-label": "Sync conversations",
28053
+ component: "span",
28057
28054
  sx: {
28058
- color: syncStatus === "error" ? theme.palette.error.main : theme.palette.text.secondary,
28059
- ...syncStatus === "syncing" && {
28060
- animation: "bandit-sync-spin 1s linear infinite",
28061
- "@keyframes bandit-sync-spin": {
28062
- "0%": { transform: "rotate(0deg)" },
28063
- "100%": { transform: "rotate(360deg)" }
28064
- }
28055
+ display: "inline-flex",
28056
+ mr: 0.5,
28057
+ animation: "bandit-sync-spin 1s linear infinite",
28058
+ "@keyframes bandit-sync-spin": {
28059
+ "0%": { transform: "rotate(0deg)" },
28060
+ "100%": { transform: "rotate(360deg)" }
28065
28061
  }
28066
28062
  },
28067
- children: syncStatus === "error" ? /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.CircleAlert, {}) : /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.RefreshCw, {})
28068
- }
28069
- ),
28070
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28071
- import_material47.IconButton,
28072
- {
28073
- onClick: () => setMemoryModalOpen(true),
28074
- "aria-label": "Memory",
28075
- sx: { color: theme.palette.text.secondary },
28076
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.Brain, {})
28077
- }
28078
- ),
28079
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28080
- import_material47.IconButton,
28081
- {
28082
- onClick: () => setProjectManagementOpen(true),
28083
- sx: { color: theme.palette.text.secondary },
28084
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.Folder, {})
28063
+ children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.RefreshCw, { size: 18, color: theme.palette.text.secondary })
28085
28064
  }
28086
28065
  ),
28087
28066
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28088
28067
  import_material47.IconButton,
28089
28068
  {
28090
28069
  onClick: handleMenuOpen,
28070
+ "aria-label": "Conversation options",
28091
28071
  sx: { color: theme.palette.text.secondary },
28092
28072
  children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.MoreVertical, {})
28093
28073
  }
@@ -28616,46 +28596,27 @@ var init_enhanced_mobile_conversations_modal = __esm({
28616
28596
  children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.SlidersHorizontal, { size: 16 })
28617
28597
  }
28618
28598
  ),
28619
- user2 && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_jsx_runtime47.Fragment, { children: [
28620
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28621
- import_material47.Box,
28622
- {
28623
- sx: {
28624
- flexShrink: 0,
28625
- display: "flex",
28626
- alignItems: "center",
28627
- justifyContent: "center",
28628
- width: 30,
28629
- height: 30,
28630
- borderRadius: "50%",
28631
- border: `1px solid ${(0, import_styles31.alpha)(theme.palette.divider, 0.8)}`,
28632
- color: theme.palette.text.secondary
28633
- },
28634
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.Settings, { size: 16 })
28635
- }
28636
- ),
28637
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28638
- import_material47.IconButton,
28639
- {
28640
- "aria-label": "Sign out",
28641
- title: "Sign out",
28642
- onClick: (event) => {
28643
- event.stopPropagation();
28644
- authenticationService.clearToken();
28645
- window.location.href = "/login";
28646
- },
28647
- sx: {
28648
- flexShrink: 0,
28649
- width: 30,
28650
- height: 30,
28651
- border: `1px solid ${(0, import_styles31.alpha)(theme.palette.error.main, 0.4)}`,
28652
- color: theme.palette.error.main,
28653
- "&:hover": { bgcolor: (0, import_styles31.alpha)(theme.palette.error.main, 0.1) }
28654
- },
28655
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.LogOut, { size: 16 })
28656
- }
28657
- )
28658
- ] })
28599
+ user2 && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_jsx_runtime47.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28600
+ import_material47.IconButton,
28601
+ {
28602
+ "aria-label": "Sign out",
28603
+ title: "Sign out",
28604
+ onClick: (event) => {
28605
+ event.stopPropagation();
28606
+ authenticationService.clearToken();
28607
+ window.location.href = "/login";
28608
+ },
28609
+ sx: {
28610
+ flexShrink: 0,
28611
+ width: 30,
28612
+ height: 30,
28613
+ border: `1px solid ${(0, import_styles31.alpha)(theme.palette.error.main, 0.4)}`,
28614
+ color: theme.palette.error.main,
28615
+ "&:hover": { bgcolor: (0, import_styles31.alpha)(theme.palette.error.main, 0.1) }
28616
+ },
28617
+ children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.LogOut, { size: 16 })
28618
+ }
28619
+ ) })
28659
28620
  ]
28660
28621
  }
28661
28622
  )
@@ -28681,7 +28642,7 @@ var init_enhanced_mobile_conversations_modal = __esm({
28681
28642
  currentProjectId: conversationToMove.projectId
28682
28643
  }
28683
28644
  ),
28684
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
28645
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28685
28646
  import_material47.Menu,
28686
28647
  {
28687
28648
  anchorEl: menuAnchorEl,
@@ -28695,21 +28656,62 @@ var init_enhanced_mobile_conversations_modal = __esm({
28695
28656
  vertical: "bottom",
28696
28657
  horizontal: "right"
28697
28658
  },
28698
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28699
- import_material47.MenuItem,
28700
- {
28701
- onClick: () => {
28702
- setClearConfirmOpen(true);
28703
- handleMenuClose();
28704
- },
28705
- disabled: visibleConversationCount === 0,
28706
- sx: { color: theme.palette.error.main },
28707
- children: [
28708
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.Trash2, { size: 16, color: theme.palette.error.main }) }),
28709
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemText, { children: "Clear All Conversations" })
28710
- ]
28711
- }
28712
- )
28659
+ children: [
28660
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28661
+ import_material47.MenuItem,
28662
+ {
28663
+ onClick: () => {
28664
+ setMemoryModalOpen(true);
28665
+ handleMenuClose();
28666
+ },
28667
+ children: [
28668
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.Brain, { size: 16 }) }),
28669
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemText, { children: "Memories" })
28670
+ ]
28671
+ }
28672
+ ),
28673
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28674
+ import_material47.MenuItem,
28675
+ {
28676
+ onClick: () => {
28677
+ setProjectManagementOpen(true);
28678
+ handleMenuClose();
28679
+ },
28680
+ children: [
28681
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.Folder, { size: 16 }) }),
28682
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemText, { children: "Manage projects" })
28683
+ ]
28684
+ }
28685
+ ),
28686
+ syncEnabled && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28687
+ import_material47.MenuItem,
28688
+ {
28689
+ onClick: () => {
28690
+ if (syncStatus !== "syncing") void runSync({ force: true });
28691
+ handleMenuClose();
28692
+ },
28693
+ children: [
28694
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.RefreshCw, { size: 16 }) }),
28695
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemText, { children: "Sync now" })
28696
+ ]
28697
+ }
28698
+ ),
28699
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
28700
+ import_material47.MenuItem,
28701
+ {
28702
+ onClick: () => {
28703
+ setClearConfirmOpen(true);
28704
+ handleMenuClose();
28705
+ },
28706
+ disabled: visibleConversationCount === 0,
28707
+ sx: { color: theme.palette.error.main },
28708
+ children: [
28709
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react14.Trash2, { size: 16, color: theme.palette.error.main }) }),
28710
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_material47.ListItemText, { children: "Clear All Conversations" })
28711
+ ]
28712
+ }
28713
+ )
28714
+ ]
28713
28715
  }
28714
28716
  ),
28715
28717
  /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
@@ -31143,7 +31145,7 @@ var init_chat2 = __esm({
31143
31145
  // reads as full physical height with the rounded corner visible
31144
31146
  // where it overlaps the drawer.
31145
31147
  transform: isMobile && mobileConversationsOpen ? "translateX(calc(min(calc(100vw - 56px), 360px) - 12px))" : "none",
31146
- borderRadius: isMobile && mobileConversationsOpen ? "36px" : 0,
31148
+ borderRadius: isMobile && mobileConversationsOpen ? "44px" : 0,
31147
31149
  zIndex: isMobile && mobileConversationsOpen ? theme.zIndex.modal + 1 : 0,
31148
31150
  // Hairline border so the rounded card reads even when the backdrop
31149
31151
  // is the same near-black as the shell.