@burtson-labs/bandit-engine 2.0.137 → 2.0.139

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.
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  chat_default
3
- } from "./chunk-YPIUO3IS.mjs";
3
+ } from "./chunk-E2SS643X.mjs";
4
4
  import "./chunk-ONQMRE2G.mjs";
5
5
  import "./chunk-BVYSGIWG.mjs";
6
6
  import "./chunk-K2JGFKEB.mjs";
@@ -13,4 +13,4 @@ import "./chunk-BJTO5JO5.mjs";
13
13
  export {
14
14
  chat_default as default
15
15
  };
16
- //# sourceMappingURL=chat-REZJEBRK.mjs.map
16
+ //# sourceMappingURL=chat-KR4S7YJ3.mjs.map
@@ -8267,8 +8267,10 @@ var EnhancedMobileConversationsModal = ({
8267
8267
  // Keep in sync with MOBILE_CONVERSATIONS_DRAWER_WIDTH in chat.tsx
8268
8268
  // (the chat shell translates by the same amount).
8269
8269
  width: "min(calc(100vw - 56px), 360px)",
8270
- // top/bottom stretch instead of 100dvh — iOS standalone
8271
- // under-reports dvh, leaving a dead band above the home bar.
8270
+ // Explicit 100lvh overflows iOS standalone's under-reported
8271
+ // viewport downward — bottom-anchoring alone stops short.
8272
+ height: "100dvh",
8273
+ "@supports (height: 100lvh)": { height: "100lvh" },
8272
8274
  bgcolor: theme.palette.background.paper,
8273
8275
  display: "flex",
8274
8276
  flexDirection: "column",
@@ -11235,18 +11237,20 @@ var ChatContent = () => {
11235
11237
  sx: (theme) => ({
11236
11238
  display: "flex",
11237
11239
  flexDirection: "column",
11238
- // Stretch via top/bottom instead of 100dvh — the iOS standalone
11239
- // webview under-reports dvh and left a dead band above the home
11240
- // indicator; inset-stretched fixed elements get the real viewport.
11240
+ // iOS standalone under-reports both dvh AND the fixed-position
11241
+ // containing block, stranding a dead band above the home bar.
11242
+ // An explicit 100lvh height can overflow that short viewport
11243
+ // downward, which bottom-anchoring cannot.
11241
11244
  overflow: "hidden",
11242
11245
  bgcolor: theme.palette.chat.shell,
11243
11246
  color: theme.palette.text.primary,
11244
11247
  position: "fixed",
11245
11248
  top: 0,
11246
11249
  bottom: 0,
11250
+ height: "100dvh",
11251
+ "@supports (height: 100lvh)": { height: "100lvh" },
11247
11252
  left: drawerOpen && !isMobile ? "340px" : 0,
11248
11253
  width: !isMobile && canvasOpen ? `calc(100vw - ${drawerOpen ? "340px" : "0px"} - ${CANVAS_WIDTH})` : drawerOpen && !isMobile ? "calc(100vw - 340px)" : "100vw",
11249
- zIndex: 0,
11250
11254
  // Claude-style push (mobile only; desktop stays flush): the chat
11251
11255
  // shell slides right as a full-height rounded card — exactly like
11252
11256
  // Claude iOS, where the card runs edge-to-edge vertically and the
@@ -11257,15 +11261,20 @@ var ChatContent = () => {
11257
11261
  // status area, the bottom stays flush with the screen edge, and the
11258
11262
  // motion reads as the native sheet-behind effect instead of the
11259
11263
  // content lurching downward.
11260
- transform: isMobile && mobileConversationsOpen ? "translateX(min(calc(100vw - 56px), 360px)) scale(0.93)" : "none",
11264
+ // Slides 12px OVER the drawer's edge (not edge-to-edge) and rides
11265
+ // above it in z-order, so the card's shadow falls on the drawer —
11266
+ // the overlapped-sheet look.
11267
+ transform: isMobile && mobileConversationsOpen ? "translateX(calc(min(calc(100vw - 56px), 360px) - 12px)) scale(0.93)" : "none",
11261
11268
  transformOrigin: "left bottom",
11262
11269
  borderRadius: isMobile && mobileConversationsOpen ? "36px" : 0,
11270
+ zIndex: isMobile && mobileConversationsOpen ? theme.zIndex.modal + 1 : 0,
11263
11271
  // Hairline border so the rounded card reads even when the backdrop
11264
11272
  // is the same near-black as the shell.
11265
11273
  border: isMobile && mobileConversationsOpen ? `1px solid ${theme.palette.mode === "dark" ? "rgba(255,255,255,0.14)" : "rgba(0,0,0,0.12)"}` : "none",
11266
11274
  boxShadow: isMobile && mobileConversationsOpen ? `0 12px 40px ${theme.palette.mode === "dark" ? "rgba(0,0,0,0.55)" : "rgba(0,0,0,0.25)"}` : "none",
11267
11275
  transition: "left 0.3s ease-in-out, width 0.3s ease-in-out, transform 0.3s ease-in-out, border-radius 0.3s ease-in-out"
11268
11276
  }),
11277
+ onClick: isMobile && mobileConversationsOpen ? () => setMobileConversationsOpen(false) : void 0,
11269
11278
  children: [
11270
11279
  /* @__PURE__ */ jsx23(
11271
11280
  chat_app_bar_default,
@@ -11282,14 +11291,14 @@ var ChatContent = () => {
11282
11291
  }
11283
11292
  ),
11284
11293
  isTemporaryChat && /* @__PURE__ */ jsxs18(Fragment13, { children: [
11285
- /* @__PURE__ */ jsx23(
11294
+ !isMobile && /* @__PURE__ */ jsx23(
11286
11295
  Box20,
11287
11296
  {
11288
11297
  sx: (theme) => ({
11289
11298
  position: "absolute",
11290
- inset: isMobile ? "3px" : 0,
11299
+ inset: 0,
11291
11300
  border: `3px solid ${theme.palette.mode === "dark" ? "rgba(255,255,255,0.55)" : "rgba(0,0,0,0.45)"}`,
11292
- borderRadius: isMobile ? "28px" : "inherit",
11301
+ borderRadius: "inherit",
11293
11302
  zIndex: 1400,
11294
11303
  pointerEvents: "none"
11295
11304
  })
@@ -11300,7 +11309,9 @@ var ChatContent = () => {
11300
11309
  {
11301
11310
  sx: (theme) => ({
11302
11311
  position: "absolute",
11303
- top: `calc(${theme.spacing(8)} + env(safe-area-inset-top, 0px))`,
11312
+ // Mobile: centered in the top-bar row between the two pills
11313
+ // (Claude's "Incognito chat" placement); desktop: below the bar.
11314
+ top: isMobile ? "calc(env(safe-area-inset-top, 0px) + 14px)" : `calc(${theme.spacing(8)} + env(safe-area-inset-top, 0px))`,
11304
11315
  left: "50%",
11305
11316
  transform: "translateX(-50%)",
11306
11317
  zIndex: 1401,
@@ -11309,14 +11320,15 @@ var ChatContent = () => {
11309
11320
  gap: 0.75,
11310
11321
  pl: 1.5,
11311
11322
  pr: 0.75,
11312
- py: 0.4,
11323
+ py: 0.6,
11313
11324
  borderRadius: 999,
11314
- fontSize: "0.78rem",
11315
- fontWeight: 600,
11316
- color: theme.palette.text.primary,
11317
- bgcolor: theme.palette.mode === "dark" ? "rgba(255,255,255,0.12)" : "rgba(0,0,0,0.08)",
11318
- border: `1px solid ${theme.palette.divider}`,
11319
- backdropFilter: "blur(8px)",
11325
+ fontSize: "0.82rem",
11326
+ fontWeight: 700,
11327
+ // Inverted, high-contrast — same treatment as the active
11328
+ // ghost toggle, so the mode is unmissable without a frame.
11329
+ color: theme.palette.getContrastText(theme.palette.text.primary),
11330
+ bgcolor: theme.palette.text.primary,
11331
+ boxShadow: `0 4px 16px ${theme.palette.mode === "dark" ? "rgba(0,0,0,0.5)" : "rgba(0,0,0,0.25)"}`,
11320
11332
  whiteSpace: "nowrap"
11321
11333
  }),
11322
11334
  children: [
@@ -11333,21 +11345,22 @@ var ChatContent = () => {
11333
11345
  display: "inline-flex",
11334
11346
  alignItems: "center",
11335
11347
  justifyContent: "center",
11336
- width: 20,
11337
- height: 20,
11348
+ width: 22,
11349
+ height: 22,
11338
11350
  ml: 0.25,
11339
11351
  p: 0,
11340
11352
  border: "none",
11341
11353
  borderRadius: "50%",
11342
11354
  cursor: "pointer",
11343
- color: theme.palette.text.secondary,
11355
+ color: "inherit",
11344
11356
  bgcolor: "transparent",
11345
11357
  font: "inherit",
11346
- fontSize: "0.85rem",
11358
+ fontSize: "0.9rem",
11347
11359
  lineHeight: 1,
11360
+ opacity: 0.75,
11348
11361
  "&:hover": {
11349
- bgcolor: theme.palette.mode === "dark" ? "rgba(255,255,255,0.15)" : "rgba(0,0,0,0.1)",
11350
- color: theme.palette.text.primary
11362
+ opacity: 1,
11363
+ bgcolor: theme.palette.mode === "dark" ? "rgba(0,0,0,0.12)" : "rgba(255,255,255,0.2)"
11351
11364
  }
11352
11365
  }),
11353
11366
  children: "\u2715"
@@ -11370,7 +11383,10 @@ var ChatContent = () => {
11370
11383
  px: isMobile ? 1 : 2,
11371
11384
  // Reduce padding on mobile for better width utilization
11372
11385
  pb: logoOnly ? 0 : `${inputHeight + 24}px`,
11373
- maxHeight: isMobile ? "calc(var(--vh, 1vh) * 100)" : "100%",
11386
+ // The flex column already bounds this; the old --vh cap (from
11387
+ // window.innerHeight) under-measured in iOS standalone and let
11388
+ // the composer's auto margins float it above the bottom.
11389
+ maxHeight: "100%",
11374
11390
  WebkitOverflowScrolling: "touch",
11375
11391
  overscrollBehavior: "contain",
11376
11392
  position: "relative",
@@ -11496,7 +11512,7 @@ var ChatContent = () => {
11496
11512
  display: "flex",
11497
11513
  flexDirection: "column",
11498
11514
  alignItems: "center",
11499
- margin: "auto",
11515
+ margin: "0 auto",
11500
11516
  width: "100vw",
11501
11517
  maxWidth: "768px"
11502
11518
  },
@@ -11572,4 +11588,4 @@ var chat_default = Chat;
11572
11588
  export {
11573
11589
  chat_default
11574
11590
  };
11575
- //# sourceMappingURL=chunk-YPIUO3IS.mjs.map
11591
+ //# sourceMappingURL=chunk-E2SS643X.mjs.map