@burtson-labs/bandit-engine 2.0.109 → 2.0.111

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
@@ -36980,16 +36980,7 @@ var PreferencesTab = ({
36980
36980
  children: "Preferences"
36981
36981
  }
36982
36982
  ),
36983
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
36984
- import_material41.Typography,
36985
- {
36986
- variant: "body1",
36987
- color: "text.secondary",
36988
- paragraph: true,
36989
- sx: { opacity: 0.9, fontSize: { xs: "0.95rem", sm: "1rem" }, lineHeight: 1.5 },
36990
- children: "Control which AI features are enabled to optimize performance for your device. Disabling features can help reduce resource usage on machines with limited capabilities."
36991
- }
36992
- ),
36983
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material41.Typography, { variant: "body2", color: "text.secondary", sx: { mb: 1.5 }, children: "Turn features on or off to tune performance for your device." }),
36993
36984
  /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_material41.Paper, { sx: { p: { xs: 1.5, sm: 1.75 }, mb: { xs: 1.5, md: 1.75 }, border: "1px solid", borderColor: "divider", borderRadius: 2 }, children: [
36994
36985
  /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_material41.Box, { children: [
36995
36986
  /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_material41.Typography, { variant: "h6", sx: { fontWeight: 600, color: "text.primary" }, children: "Conversation Starters" }),
@@ -43214,7 +43205,7 @@ var ProviderTab = () => {
43214
43205
  }
43215
43206
  };
43216
43207
  return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_material49.Box, { sx: { p: { xs: 1.5, sm: 2.5, md: 3 } }, children: [
43217
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_material49.Box, { sx: { mb: { xs: 2.5, md: 3 } }, children: [
43208
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_material49.Box, { sx: { mb: { xs: 1.5, md: 2 } }, children: [
43218
43209
  /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
43219
43210
  import_material49.Typography,
43220
43211
  {
@@ -43223,18 +43214,9 @@ var ProviderTab = () => {
43223
43214
  children: "AI Provider Configuration"
43224
43215
  }
43225
43216
  ),
43226
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
43227
- import_material49.Typography,
43228
- {
43229
- variant: "body1",
43230
- color: "text.secondary",
43231
- paragraph: true,
43232
- sx: { opacity: 0.9, fontSize: { xs: "0.95rem", sm: "1rem" }, lineHeight: 1.5 },
43233
- children: "Configure your AI provider for chat, generation, and model services. This determines which backend service powers your AI interactions."
43234
- }
43235
- ),
43217
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material49.Typography, { variant: "body2", color: "text.secondary", sx: { mb: 1.5 }, children: "Choose the backend that powers your AI." }),
43236
43218
  /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_material49.Paper, { sx: { p: { xs: 1.5, sm: 1.75 }, mb: { xs: 1.5, md: 1.75 }, bgcolor: "background.paper", border: "1px solid", borderColor: "divider", borderRadius: 2 }, children: [
43237
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material49.Typography, { variant: "h6", sx: { mb: 2, fontWeight: 600, color: "text.primary" }, children: "Current Provider" }),
43219
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material49.Typography, { variant: "overline", sx: { fontWeight: 700, color: "text.secondary", letterSpacing: 0.6, display: "block", mb: 1 }, children: "Current Provider" }),
43238
43220
  currentProvider ? /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_material49.Box, { sx: { display: "flex", alignItems: "center", gap: 2 }, children: [
43239
43221
  /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
43240
43222
  import_material49.Chip,
@@ -43257,7 +43239,7 @@ var ProviderTab = () => {
43257
43239
  alignItems: { xs: "flex-start", sm: "center" },
43258
43240
  justifyContent: "space-between",
43259
43241
  gap: { xs: 1, sm: 2 },
43260
- mb: 3
43242
+ mb: 2
43261
43243
  },
43262
43244
  children: [
43263
43245
  /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material49.Typography, { variant: "h6", sx: { fontWeight: 600, color: "text.primary" }, children: "Provider Configuration" }),
@@ -43546,10 +43528,7 @@ var ProviderTab = () => {
43546
43528
  ] })
43547
43529
  ] })
43548
43530
  ] }),
43549
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_material49.Paper, { sx: { p: 3, bgcolor: "info.main", color: "info.contrastText", borderRadius: 2 }, children: [
43550
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material49.Typography, { variant: "h6", sx: { mb: 1, fontWeight: 600, color: "text.primary" }, children: "Gateway Provider Recommended" }),
43551
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material49.Typography, { variant: "body2", children: "For production deployments, we recommend using the Gateway provider which routes requests through your secure backend API. This approach keeps API keys secure, enables rate limiting, and provides better monitoring capabilities." })
43552
- ] })
43531
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_material49.Typography, { variant: "caption", color: "text.secondary", sx: { display: "block", mt: 0.5, lineHeight: 1.5 }, children: "Gateway is recommended for production \u2014 it routes through your secure backend, keeps API keys server-side, and enables rate limiting + monitoring." })
43553
43532
  ] }),
43554
43533
  /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
43555
43534
  import_material49.Snackbar,
@@ -45017,6 +44996,12 @@ var Management = () => {
45017
44996
  styleOverrides: {
45018
44997
  root: { borderRadius: 12 }
45019
44998
  }
44999
+ },
45000
+ MuiTextField: {
45001
+ defaultProps: { size: "small" }
45002
+ },
45003
+ MuiButton: {
45004
+ defaultProps: { size: "small" }
45020
45005
  }
45021
45006
  }
45022
45007
  });
@@ -45159,82 +45144,46 @@ var Management = () => {
45159
45144
  if (isMobile) setSidebarOpen(false);
45160
45145
  },
45161
45146
  sx: {
45162
- minHeight: 56,
45163
- borderRadius: 3,
45164
- mx: 1,
45165
- my: 0.5,
45166
- px: 2,
45167
- py: 1.5,
45168
- border: tabIndex === idx ? (theme2) => `2px solid ${theme2.palette.primary.main}40` : "2px solid transparent",
45169
- bgcolor: tabIndex === idx ? (theme2) => theme2.palette.mode === "dark" ? "rgba(25,118,210,0.12)" : "rgba(25,118,210,0.08)" : "transparent",
45147
+ minHeight: 36,
45148
+ borderRadius: 1.5,
45149
+ mx: 0.5,
45150
+ my: 0.125,
45151
+ px: 1.25,
45152
+ py: 0.5,
45153
+ bgcolor: tabIndex === idx ? (theme2) => theme2.palette.mode === "dark" ? "rgba(25,118,210,0.14)" : "rgba(25,118,210,0.10)" : "transparent",
45170
45154
  color: tabIndex === idx ? "primary.main" : "text.primary",
45171
- fontWeight: tabIndex === idx ? 700 : 500,
45172
- transition: "all 0.2s cubic-bezier(0.4, 0, 0.2, 1)",
45155
+ transition: "background-color 0.15s ease, color 0.15s ease",
45173
45156
  position: "relative",
45174
- overflow: "hidden",
45175
45157
  "&:before": {
45176
45158
  content: '""',
45177
45159
  position: "absolute",
45178
45160
  left: 0,
45179
- top: 0,
45180
- bottom: 0,
45181
- width: 4,
45161
+ top: 5,
45162
+ bottom: 5,
45163
+ width: 3,
45182
45164
  bgcolor: tabIndex === idx ? "primary.main" : "transparent",
45183
- borderRadius: "0 2px 2px 0",
45184
- transition: "all 0.2s"
45165
+ borderRadius: "0 2px 2px 0"
45185
45166
  },
45186
45167
  "&:hover": {
45187
- bgcolor: (theme2) => theme2.palette.mode === "dark" ? "rgba(25,118,210,0.15)" : "rgba(25,118,210,0.10)",
45188
- color: "primary.main",
45189
- transform: "translateX(4px)",
45190
- "&:before": {
45191
- bgcolor: "primary.main"
45192
- }
45193
- },
45194
- "&:active": {
45195
- transform: "translateX(2px) scale(0.98)"
45168
+ bgcolor: (theme2) => theme2.palette.mode === "dark" ? "rgba(255,255,255,0.06)" : "rgba(0,0,0,0.04)",
45169
+ color: "primary.main"
45196
45170
  },
45197
45171
  "& .MuiListItemIcon-root": {
45198
- minWidth: 44,
45199
- mr: 1.5
45200
- }
45172
+ minWidth: 28,
45173
+ mr: 1,
45174
+ color: tabIndex === idx ? "primary.main" : "text.secondary"
45175
+ },
45176
+ "& .MuiListItemIcon-root svg": { width: 17, height: 17 }
45201
45177
  },
45202
45178
  children: [
45203
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
45204
- import_material52.ListItemIcon,
45205
- {
45206
- sx: {
45207
- color: tabIndex === idx ? "primary.main" : "text.secondary",
45208
- fontSize: 24,
45209
- transition: "all 0.2s"
45210
- },
45211
- children: tab.icon
45212
- }
45213
- ),
45179
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_material52.ListItemIcon, { children: tab.icon }),
45214
45180
  /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
45215
45181
  import_material52.ListItemText,
45216
45182
  {
45217
45183
  primary: tab.label,
45218
45184
  primaryTypographyProps: {
45219
- fontWeight: tabIndex === idx ? 700 : 600,
45220
- fontSize: "1rem",
45221
- letterSpacing: "-0.01em"
45222
- }
45223
- }
45224
- ),
45225
- tabIndex === idx && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
45226
- import_material52.Box,
45227
- {
45228
- sx: {
45229
- position: "absolute",
45230
- right: -10,
45231
- top: -10,
45232
- width: 90,
45233
- height: 90,
45234
- bgcolor: (theme2) => theme2.palette.primary.main,
45235
- filter: "blur(45px)",
45236
- opacity: 0.35,
45237
- pointerEvents: "none"
45185
+ fontWeight: tabIndex === idx ? 700 : 500,
45186
+ fontSize: "0.85rem"
45238
45187
  }
45239
45188
  }
45240
45189
  )
@@ -45441,9 +45390,9 @@ var Management = () => {
45441
45390
  import_material52.Box,
45442
45391
  {
45443
45392
  sx: {
45444
- width: 280,
45445
- minWidth: 280,
45446
- maxWidth: 280,
45393
+ width: 240,
45394
+ minWidth: 240,
45395
+ maxWidth: 240,
45447
45396
  height: "100vh",
45448
45397
  display: "flex",
45449
45398
  flexDirection: "column",
@@ -45475,7 +45424,7 @@ var Management = () => {
45475
45424
  display: "flex",
45476
45425
  flexDirection: "column",
45477
45426
  bgcolor: "background.default",
45478
- ml: isMobile ? 0 : "280px",
45427
+ ml: isMobile ? 0 : "240px",
45479
45428
  // Fixed left margin only on desktop
45480
45429
  mt: 0,
45481
45430
  transition: "margin-left 0.2s"