@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.js CHANGED
@@ -25954,47 +25954,27 @@ var init_enhanced_mobile_conversations_modal = __esm({
25954
25954
  }
25955
25955
  }
25956
25956
  ),
25957
- syncEnabled && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
25958
- import_material26.IconButton,
25957
+ syncEnabled && syncStatus === "syncing" && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
25958
+ import_material26.Box,
25959
25959
  {
25960
- onClick: () => {
25961
- if (syncStatus !== "syncing") void runSync({ force: true });
25962
- },
25963
- "aria-label": "Sync conversations",
25960
+ component: "span",
25964
25961
  sx: {
25965
- color: syncStatus === "error" ? theme.palette.error.main : theme.palette.text.secondary,
25966
- ...syncStatus === "syncing" && {
25967
- animation: "bandit-sync-spin 1s linear infinite",
25968
- "@keyframes bandit-sync-spin": {
25969
- "0%": { transform: "rotate(0deg)" },
25970
- "100%": { transform: "rotate(360deg)" }
25971
- }
25962
+ display: "inline-flex",
25963
+ mr: 0.5,
25964
+ animation: "bandit-sync-spin 1s linear infinite",
25965
+ "@keyframes bandit-sync-spin": {
25966
+ "0%": { transform: "rotate(0deg)" },
25967
+ "100%": { transform: "rotate(360deg)" }
25972
25968
  }
25973
25969
  },
25974
- children: syncStatus === "error" ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.CircleAlert, {}) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.RefreshCw, {})
25975
- }
25976
- ),
25977
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
25978
- import_material26.IconButton,
25979
- {
25980
- onClick: () => setMemoryModalOpen(true),
25981
- "aria-label": "Memory",
25982
- sx: { color: theme.palette.text.secondary },
25983
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.Brain, {})
25984
- }
25985
- ),
25986
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
25987
- import_material26.IconButton,
25988
- {
25989
- onClick: () => setProjectManagementOpen(true),
25990
- sx: { color: theme.palette.text.secondary },
25991
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.Folder, {})
25970
+ children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.RefreshCw, { size: 18, color: theme.palette.text.secondary })
25992
25971
  }
25993
25972
  ),
25994
25973
  /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
25995
25974
  import_material26.IconButton,
25996
25975
  {
25997
25976
  onClick: handleMenuOpen,
25977
+ "aria-label": "Conversation options",
25998
25978
  sx: { color: theme.palette.text.secondary },
25999
25979
  children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.MoreVertical, {})
26000
25980
  }
@@ -26523,46 +26503,27 @@ var init_enhanced_mobile_conversations_modal = __esm({
26523
26503
  children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.SlidersHorizontal, { size: 16 })
26524
26504
  }
26525
26505
  ),
26526
- user2 && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_jsx_runtime28.Fragment, { children: [
26527
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
26528
- import_material26.Box,
26529
- {
26530
- sx: {
26531
- flexShrink: 0,
26532
- display: "flex",
26533
- alignItems: "center",
26534
- justifyContent: "center",
26535
- width: 30,
26536
- height: 30,
26537
- borderRadius: "50%",
26538
- border: `1px solid ${(0, import_styles17.alpha)(theme.palette.divider, 0.8)}`,
26539
- color: theme.palette.text.secondary
26540
- },
26541
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.Settings, { size: 16 })
26542
- }
26543
- ),
26544
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
26545
- import_material26.IconButton,
26546
- {
26547
- "aria-label": "Sign out",
26548
- title: "Sign out",
26549
- onClick: (event) => {
26550
- event.stopPropagation();
26551
- authenticationService.clearToken();
26552
- window.location.href = "/login";
26553
- },
26554
- sx: {
26555
- flexShrink: 0,
26556
- width: 30,
26557
- height: 30,
26558
- border: `1px solid ${(0, import_styles17.alpha)(theme.palette.error.main, 0.4)}`,
26559
- color: theme.palette.error.main,
26560
- "&:hover": { bgcolor: (0, import_styles17.alpha)(theme.palette.error.main, 0.1) }
26561
- },
26562
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.LogOut, { size: 16 })
26563
- }
26564
- )
26565
- ] })
26506
+ user2 && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_jsx_runtime28.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
26507
+ import_material26.IconButton,
26508
+ {
26509
+ "aria-label": "Sign out",
26510
+ title: "Sign out",
26511
+ onClick: (event) => {
26512
+ event.stopPropagation();
26513
+ authenticationService.clearToken();
26514
+ window.location.href = "/login";
26515
+ },
26516
+ sx: {
26517
+ flexShrink: 0,
26518
+ width: 30,
26519
+ height: 30,
26520
+ border: `1px solid ${(0, import_styles17.alpha)(theme.palette.error.main, 0.4)}`,
26521
+ color: theme.palette.error.main,
26522
+ "&:hover": { bgcolor: (0, import_styles17.alpha)(theme.palette.error.main, 0.1) }
26523
+ },
26524
+ children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.LogOut, { size: 16 })
26525
+ }
26526
+ ) })
26566
26527
  ]
26567
26528
  }
26568
26529
  )
@@ -26588,7 +26549,7 @@ var init_enhanced_mobile_conversations_modal = __esm({
26588
26549
  currentProjectId: conversationToMove.projectId
26589
26550
  }
26590
26551
  ),
26591
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
26552
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
26592
26553
  import_material26.Menu,
26593
26554
  {
26594
26555
  anchorEl: menuAnchorEl,
@@ -26602,21 +26563,62 @@ var init_enhanced_mobile_conversations_modal = __esm({
26602
26563
  vertical: "bottom",
26603
26564
  horizontal: "right"
26604
26565
  },
26605
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
26606
- import_material26.MenuItem,
26607
- {
26608
- onClick: () => {
26609
- setClearConfirmOpen(true);
26610
- handleMenuClose();
26611
- },
26612
- disabled: visibleConversationCount === 0,
26613
- sx: { color: theme.palette.error.main },
26614
- children: [
26615
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.Trash2, { size: 16, color: theme.palette.error.main }) }),
26616
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemText, { children: "Clear All Conversations" })
26617
- ]
26618
- }
26619
- )
26566
+ children: [
26567
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
26568
+ import_material26.MenuItem,
26569
+ {
26570
+ onClick: () => {
26571
+ setMemoryModalOpen(true);
26572
+ handleMenuClose();
26573
+ },
26574
+ children: [
26575
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.Brain, { size: 16 }) }),
26576
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemText, { children: "Memories" })
26577
+ ]
26578
+ }
26579
+ ),
26580
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
26581
+ import_material26.MenuItem,
26582
+ {
26583
+ onClick: () => {
26584
+ setProjectManagementOpen(true);
26585
+ handleMenuClose();
26586
+ },
26587
+ children: [
26588
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.Folder, { size: 16 }) }),
26589
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemText, { children: "Manage projects" })
26590
+ ]
26591
+ }
26592
+ ),
26593
+ syncEnabled && /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
26594
+ import_material26.MenuItem,
26595
+ {
26596
+ onClick: () => {
26597
+ if (syncStatus !== "syncing") void runSync({ force: true });
26598
+ handleMenuClose();
26599
+ },
26600
+ children: [
26601
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.RefreshCw, { size: 16 }) }),
26602
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemText, { children: "Sync now" })
26603
+ ]
26604
+ }
26605
+ ),
26606
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
26607
+ import_material26.MenuItem,
26608
+ {
26609
+ onClick: () => {
26610
+ setClearConfirmOpen(true);
26611
+ handleMenuClose();
26612
+ },
26613
+ disabled: visibleConversationCount === 0,
26614
+ sx: { color: theme.palette.error.main },
26615
+ children: [
26616
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemIcon, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react12.Trash2, { size: 16, color: theme.palette.error.main }) }),
26617
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_material26.ListItemText, { children: "Clear All Conversations" })
26618
+ ]
26619
+ }
26620
+ )
26621
+ ]
26620
26622
  }
26621
26623
  ),
26622
26624
  /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
@@ -31533,7 +31535,7 @@ var init_chat2 = __esm({
31533
31535
  // reads as full physical height with the rounded corner visible
31534
31536
  // where it overlaps the drawer.
31535
31537
  transform: isMobile && mobileConversationsOpen ? "translateX(calc(min(calc(100vw - 56px), 360px) - 12px))" : "none",
31536
- borderRadius: isMobile && mobileConversationsOpen ? "36px" : 0,
31538
+ borderRadius: isMobile && mobileConversationsOpen ? "44px" : 0,
31537
31539
  zIndex: isMobile && mobileConversationsOpen ? theme.zIndex.modal + 1 : 0,
31538
31540
  // Hairline border so the rounded card reads even when the backdrop
31539
31541
  // is the same near-black as the shell.