@flamingo-stack/openframe-frontend-core 0.0.561-1846.5000.1 → 0.0.561-1852.4997.2

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 (146) hide show
  1. package/dist/{chunk-GKGQ4DWE.js → chunk-3IBCKS3I.js} +49 -121
  2. package/dist/chunk-3IBCKS3I.js.map +1 -0
  3. package/dist/{chunk-ZENRHE55.cjs → chunk-5XPYQ7NU.cjs} +62 -62
  4. package/dist/{chunk-ZENRHE55.cjs.map → chunk-5XPYQ7NU.cjs.map} +1 -1
  5. package/dist/chunk-7J4DGFHZ.js +88 -0
  6. package/dist/chunk-7J4DGFHZ.js.map +1 -0
  7. package/dist/{chunk-UJ7MSY6F.cjs → chunk-BODITFZI.cjs} +31 -31
  8. package/dist/{chunk-UJ7MSY6F.cjs.map → chunk-BODITFZI.cjs.map} +1 -1
  9. package/dist/{chunk-ZJ7RI62F.js → chunk-CLQ6L4JG.js} +2 -2
  10. package/dist/{chunk-4LHEQMOV.cjs → chunk-DCB4EBA5.cjs} +3 -3
  11. package/dist/chunk-DCB4EBA5.cjs.map +1 -0
  12. package/dist/{chunk-YUAKZNK5.js → chunk-DQI2S2SY.js} +6 -6
  13. package/dist/{chunk-SUPBFRUK.cjs → chunk-ELFXMLSX.cjs} +5 -5
  14. package/dist/{chunk-SUPBFRUK.cjs.map → chunk-ELFXMLSX.cjs.map} +1 -1
  15. package/dist/{chunk-QGQ26NEE.js → chunk-FMQO7OMJ.js} +2 -2
  16. package/dist/{chunk-B6TM3QAL.js → chunk-HI3A5HFI.js} +4 -4
  17. package/dist/{chunk-GYC3OTBI.cjs → chunk-IJ6HBN2J.cjs} +9 -9
  18. package/dist/{chunk-GYC3OTBI.cjs.map → chunk-IJ6HBN2J.cjs.map} +1 -1
  19. package/dist/{chunk-UV53Z64O.cjs → chunk-INN323YY.cjs} +14 -14
  20. package/dist/{chunk-UV53Z64O.cjs.map → chunk-INN323YY.cjs.map} +1 -1
  21. package/dist/{chunk-AGQ4VTUX.cjs → chunk-K4UCFJNL.cjs} +29 -29
  22. package/dist/{chunk-AGQ4VTUX.cjs.map → chunk-K4UCFJNL.cjs.map} +1 -1
  23. package/dist/{chunk-D3OY4CJU.cjs → chunk-K535WIFS.cjs} +3 -3
  24. package/dist/{chunk-D3OY4CJU.cjs.map → chunk-K535WIFS.cjs.map} +1 -1
  25. package/dist/{chunk-44U25GD5.js → chunk-KGFCHGCW.js} +2 -2
  26. package/dist/{chunk-ONDI64M3.js → chunk-KKIAKLI6.js} +2 -2
  27. package/dist/{chunk-EK346HD7.cjs → chunk-LNWLK4TC.cjs} +39 -39
  28. package/dist/{chunk-EK346HD7.cjs.map → chunk-LNWLK4TC.cjs.map} +1 -1
  29. package/dist/{chunk-KWNVQZ5Y.js → chunk-LSWJ5QYP.js} +4 -4
  30. package/dist/chunk-MKPJYEOR.cjs +88 -0
  31. package/dist/chunk-MKPJYEOR.cjs.map +1 -0
  32. package/dist/{chunk-CR2CMLTQ.cjs → chunk-NISIZABN.cjs} +4 -4
  33. package/dist/{chunk-CR2CMLTQ.cjs.map → chunk-NISIZABN.cjs.map} +1 -1
  34. package/dist/{chunk-NGY4KET4.js → chunk-NTTSXF7Z.js} +2 -2
  35. package/dist/{chunk-KRYLVEXU.js → chunk-NZNKHIFA.js} +2 -2
  36. package/dist/{chunk-OCJG3X4U.js → chunk-O45VULK4.js} +2 -2
  37. package/dist/{chunk-5AEHCGQV.js → chunk-PYN65LCP.js} +6 -6
  38. package/dist/{chunk-RDKJCZHY.js → chunk-RSZXB6J2.js} +3 -3
  39. package/dist/chunk-RSZXB6J2.js.map +1 -0
  40. package/dist/{chunk-DAVVVBNL.cjs → chunk-RVHAX7VP.cjs} +26 -26
  41. package/dist/{chunk-DAVVVBNL.cjs.map → chunk-RVHAX7VP.cjs.map} +1 -1
  42. package/dist/{chunk-JCQUWIPT.js → chunk-SFU6A36Q.js} +3 -3
  43. package/dist/{chunk-FSWJCGRJ.cjs → chunk-SKQ7AMUD.cjs} +7 -7
  44. package/dist/{chunk-FSWJCGRJ.cjs.map → chunk-SKQ7AMUD.cjs.map} +1 -1
  45. package/dist/{chunk-WCM4BGHO.cjs → chunk-TCQ3VL5R.cjs} +97 -97
  46. package/dist/{chunk-WCM4BGHO.cjs.map → chunk-TCQ3VL5R.cjs.map} +1 -1
  47. package/dist/{chunk-DHRJFUBR.cjs → chunk-V5VJTNOG.cjs} +11 -11
  48. package/dist/{chunk-DHRJFUBR.cjs.map → chunk-V5VJTNOG.cjs.map} +1 -1
  49. package/dist/{chunk-GWRQ5EEI.cjs → chunk-XTDUFU5O.cjs} +882 -954
  50. package/dist/{chunk-GWRQ5EEI.cjs.map → chunk-XTDUFU5O.cjs.map} +1 -1
  51. package/dist/{chunk-MLSDBNKT.js → chunk-ZD5QQJH4.js} +2 -2
  52. package/dist/components/calendar.cjs +4 -81
  53. package/dist/components/calendar.cjs.map +1 -1
  54. package/dist/components/calendar.js +4 -81
  55. package/dist/components/calendar.js.map +1 -1
  56. package/dist/components/case-studies/index.cjs +9 -9
  57. package/dist/components/case-studies/index.js +3 -3
  58. package/dist/components/chat/index.cjs +3 -3
  59. package/dist/components/chat/index.js +2 -2
  60. package/dist/components/contact/index.cjs +4 -4
  61. package/dist/components/contact/index.js +3 -3
  62. package/dist/components/docs/index.cjs +6 -6
  63. package/dist/components/docs/index.js +5 -5
  64. package/dist/components/embeds/index.cjs +4 -4
  65. package/dist/components/embeds/index.js +3 -3
  66. package/dist/components/faq/index.cjs +4 -4
  67. package/dist/components/faq/index.js +3 -3
  68. package/dist/components/features/{walkthrough-video.d.ts → floating-walkthrough-video.d.ts} +7 -61
  69. package/dist/components/features/floating-walkthrough-video.d.ts.map +1 -0
  70. package/dist/components/features/index.cjs +3 -5
  71. package/dist/components/features/index.cjs.map +1 -1
  72. package/dist/components/features/index.d.ts +1 -1
  73. package/dist/components/features/index.d.ts.map +1 -1
  74. package/dist/components/features/index.js +2 -4
  75. package/dist/components/features/use-walkthrough-video.d.ts +1 -1
  76. package/dist/components/features/use-walkthrough-video.d.ts.map +1 -1
  77. package/dist/components/help-center-pages/index.cjs +23 -23
  78. package/dist/components/help-center-pages/index.js +14 -14
  79. package/dist/components/index.cjs +140 -144
  80. package/dist/components/index.cjs.map +1 -1
  81. package/dist/components/index.js +12 -16
  82. package/dist/components/index.js.map +1 -1
  83. package/dist/components/meeting-scheduler/booking-form.d.ts.map +1 -1
  84. package/dist/components/meeting-scheduler/context-panel.d.ts +6 -24
  85. package/dist/components/meeting-scheduler/context-panel.d.ts.map +1 -1
  86. package/dist/components/meeting-scheduler/index.cjs +425 -529
  87. package/dist/components/meeting-scheduler/index.cjs.map +1 -1
  88. package/dist/components/meeting-scheduler/index.d.ts +1 -54
  89. package/dist/components/meeting-scheduler/index.d.ts.map +1 -1
  90. package/dist/components/meeting-scheduler/index.js +403 -507
  91. package/dist/components/meeting-scheduler/index.js.map +1 -1
  92. package/dist/components/meeting-scheduler/slot-picker.d.ts +31 -35
  93. package/dist/components/meeting-scheduler/slot-picker.d.ts.map +1 -1
  94. package/dist/components/navigation/index.cjs +3 -3
  95. package/dist/components/navigation/index.js +2 -2
  96. package/dist/components/onboarding-guides/index.cjs +6 -6
  97. package/dist/components/onboarding-guides/index.js +5 -5
  98. package/dist/components/related-content/index.cjs +4 -4
  99. package/dist/components/related-content/index.js +3 -3
  100. package/dist/components/tickets/index.cjs +7 -7
  101. package/dist/components/tickets/index.js +6 -6
  102. package/dist/components/ui/date-picker.d.ts +1 -62
  103. package/dist/components/ui/date-picker.d.ts.map +1 -1
  104. package/dist/components/ui/field-wrapper.d.ts +0 -7
  105. package/dist/components/ui/field-wrapper.d.ts.map +1 -1
  106. package/dist/components/ui/file-manager/index.cjs +36 -36
  107. package/dist/components/ui/file-manager/index.js +1 -1
  108. package/dist/components/ui/index.cjs +3 -5
  109. package/dist/components/ui/index.cjs.map +1 -1
  110. package/dist/components/ui/index.js +2 -4
  111. package/dist/hooks/use-meeting-booking.d.ts +8 -31
  112. package/dist/hooks/use-meeting-booking.d.ts.map +1 -1
  113. package/dist/index.cjs +3 -7
  114. package/dist/index.cjs.map +1 -1
  115. package/dist/index.js +2 -6
  116. package/package.json +1 -1
  117. package/src/components/features/{.walkthrough-video.md → .floating-walkthrough-video.md} +5 -8
  118. package/src/components/features/board/types.ts +1 -1
  119. package/src/components/features/{walkthrough-video.tsx → floating-walkthrough-video.tsx} +22 -108
  120. package/src/components/features/index.ts +1 -1
  121. package/src/components/features/use-walkthrough-video.ts +1 -1
  122. package/src/components/meeting-scheduler/booking-form.tsx +51 -60
  123. package/src/components/meeting-scheduler/confirmation.tsx +1 -1
  124. package/src/components/meeting-scheduler/context-panel.tsx +68 -166
  125. package/src/components/meeting-scheduler/index.tsx +81 -227
  126. package/src/components/meeting-scheduler/slot-picker.tsx +127 -275
  127. package/src/components/ui/date-picker.tsx +47 -200
  128. package/src/components/ui/field-wrapper.tsx +2 -9
  129. package/src/hooks/use-meeting-booking.ts +73 -97
  130. package/dist/chunk-4LHEQMOV.cjs.map +0 -1
  131. package/dist/chunk-GKGQ4DWE.js.map +0 -1
  132. package/dist/chunk-RDKJCZHY.js.map +0 -1
  133. package/dist/components/features/walkthrough-video.d.ts.map +0 -1
  134. /package/dist/{chunk-ZJ7RI62F.js.map → chunk-CLQ6L4JG.js.map} +0 -0
  135. /package/dist/{chunk-YUAKZNK5.js.map → chunk-DQI2S2SY.js.map} +0 -0
  136. /package/dist/{chunk-QGQ26NEE.js.map → chunk-FMQO7OMJ.js.map} +0 -0
  137. /package/dist/{chunk-B6TM3QAL.js.map → chunk-HI3A5HFI.js.map} +0 -0
  138. /package/dist/{chunk-44U25GD5.js.map → chunk-KGFCHGCW.js.map} +0 -0
  139. /package/dist/{chunk-ONDI64M3.js.map → chunk-KKIAKLI6.js.map} +0 -0
  140. /package/dist/{chunk-KWNVQZ5Y.js.map → chunk-LSWJ5QYP.js.map} +0 -0
  141. /package/dist/{chunk-NGY4KET4.js.map → chunk-NTTSXF7Z.js.map} +0 -0
  142. /package/dist/{chunk-KRYLVEXU.js.map → chunk-NZNKHIFA.js.map} +0 -0
  143. /package/dist/{chunk-OCJG3X4U.js.map → chunk-O45VULK4.js.map} +0 -0
  144. /package/dist/{chunk-5AEHCGQV.js.map → chunk-PYN65LCP.js.map} +0 -0
  145. /package/dist/{chunk-JCQUWIPT.js.map → chunk-SFU6A36Q.js.map} +0 -0
  146. /package/dist/{chunk-MLSDBNKT.js.map → chunk-ZD5QQJH4.js.map} +0 -0
@@ -257,7 +257,7 @@ import {
257
257
  Skeleton,
258
258
  useCollisionBoundary,
259
259
  usePortalContainer
260
- } from "./chunk-RDKJCZHY.js";
260
+ } from "./chunk-RSZXB6J2.js";
261
261
  import {
262
262
  CheckboxCheckmarkIcon,
263
263
  SearchIcon
@@ -18402,7 +18402,6 @@ function CalendarNavButton({ direction, onClick, disabled, "aria-label": ariaLab
18402
18402
  type: "button",
18403
18403
  variant: "outline",
18404
18404
  size: "icon",
18405
- className: "shrink-0",
18406
18405
  onClick,
18407
18406
  disabled,
18408
18407
  "aria-label": ariaLabel,
@@ -18418,11 +18417,7 @@ function DatePickerCalendar({
18418
18417
  fromDate,
18419
18418
  toDate: toDate3,
18420
18419
  locale,
18421
- fluid = false,
18422
- bare = false,
18423
- disabledDays: extraDisabledDays,
18424
- month: monthProp,
18425
- onMonthChange
18420
+ fluid = false
18426
18421
  }) {
18427
18422
  const today = /* @__PURE__ */ new Date();
18428
18423
  const isMdUp = useMdUp() ?? true;
@@ -18458,43 +18453,18 @@ function DatePickerCalendar({
18458
18453
  setHoveredDate(void 0);
18459
18454
  onSelect(completed);
18460
18455
  };
18461
- const isFluid = fluid || bare;
18462
- const cellOuter = bare ? "flex-1 min-w-0 h-[32px]" : isFluid ? "flex-1 aspect-square min-w-0" : "size-10";
18463
- const cellInner = bare ? "h-full w-auto aspect-square rounded-[6px]" : isFluid ? "size-full" : "size-10";
18464
- const weekdayOuter = bare ? "flex-1 min-w-0 h-6" : cellOuter;
18465
- const hoverClass = bare ? "[&>button]:hover:bg-ods-bg-surface" : "hover:bg-ods-bg-surface hover:rounded-[6px]";
18466
- const todayClass = bare ? "[&>button]:bg-ods-bg-surface [&>button]:hover:!bg-ods-bg-surface" : "bg-ods-bg-surface rounded-[6px] hover:!bg-ods-bg-surface";
18467
- const dayNumber = (date) => date.getFullYear() * 1e4 + date.getMonth() * 100 + date.getDate();
18468
- const isSelectedDay = (date) => {
18469
- const n = dayNumber(date);
18470
- if (mode === "single") {
18471
- const picked = selected;
18472
- return !!picked && dayNumber(picked) === n;
18473
- }
18474
- const range = rangeSelected;
18475
- if (!range?.from) return false;
18476
- if (!range.to) return dayNumber(range.from) === n;
18477
- return n >= dayNumber(range.from) && n <= dayNumber(range.to);
18478
- };
18479
- const isUnclaimedToday = (date) => dayNumber(date) === dayNumber(today) && !isSelectedDay(date);
18480
- const selectedClass = bare ? "[&>button]:!bg-ods-accent [&>button]:!text-ods-card [&>button]:!font-bold [&>button]:hover:!bg-ods-accent" : "!bg-ods-accent !text-ods-card !font-bold !rounded-[6px] hover:!bg-ods-accent";
18481
- const surfaceClass = bare ? "flex w-full flex-col" : cn("bg-ods-card border border-ods-border rounded-[6px] overflow-hidden", isFluid && "w-full");
18482
- const captionRowClass = cn("flex items-center justify-between gap-1", bare ? "shrink-0" : "px-4 pt-4");
18483
- const captionClass = "min-w-0 flex-1 truncate text-center text-h4 text-ods-text-primary";
18456
+ const cellOuter = fluid ? "flex-1 aspect-square min-w-0" : "size-10";
18457
+ const cellInner = fluid ? "size-full" : "size-10";
18484
18458
  const classNames = {
18485
- root: cn(
18486
- "date-picker-calendar",
18487
- bare ? "flex w-full flex-col pt-[var(--spacing-system-xsf)]" : cn("p-4", isFluid && "w-full")
18488
- ),
18489
- months: cn("flex gap-8", bare && "w-full"),
18490
- month: cn("flex flex-col", bare ? "w-full" : cn("gap-2", isFluid && "w-full")),
18459
+ root: cn("p-4 date-picker-calendar", fluid && "w-full"),
18460
+ months: "flex gap-8",
18461
+ month: cn("flex flex-col gap-2", fluid && "w-full"),
18491
18462
  month_caption: "hidden",
18492
18463
  nav: "hidden",
18493
- month_grid: cn("border-collapse", bare ? "flex w-full flex-col" : isFluid && "w-full"),
18464
+ month_grid: cn("border-collapse", fluid && "w-full"),
18494
18465
  weekdays: "flex",
18495
- ...bare ? { weeks: "flex flex-col" } : {},
18496
18466
  weekday: cn(
18497
- weekdayOuter,
18467
+ cellOuter,
18498
18468
  "flex items-center justify-center",
18499
18469
  "text-h6 text-ods-text-secondary"
18500
18470
  ),
@@ -18505,7 +18475,7 @@ function DatePickerCalendar({
18505
18475
  "text-h4 text-ods-text-primary",
18506
18476
  "cursor-pointer",
18507
18477
  "transition-colors duration-150",
18508
- hoverClass
18478
+ "hover:bg-ods-bg-surface hover:rounded-[6px]"
18509
18479
  ),
18510
18480
  day_button: cn(
18511
18481
  cellInner,
@@ -18513,10 +18483,9 @@ function DatePickerCalendar({
18513
18483
  "cursor-pointer bg-transparent border-none outline-none",
18514
18484
  "text-inherit font-inherit"
18515
18485
  ),
18516
- // Painted through the `todayTint` modifier instead — see `isUnclaimedToday`.
18517
- today: "",
18486
+ today: "bg-ods-bg-surface rounded-[6px] hover:!bg-ods-bg-surface",
18518
18487
  selected: cn(
18519
- selectedClass,
18488
+ "!bg-ods-accent !text-ods-card !font-bold !rounded-[6px] hover:!bg-ods-accent",
18520
18489
  // In range mode, selected class should not override range_start/range_end/range_middle
18521
18490
  mode === "range" && "range-selected"
18522
18491
  ),
@@ -18534,19 +18503,7 @@ function DatePickerCalendar({
18534
18503
  // `disabled` <button> does not inherit the cell's cursor on its own.
18535
18504
  disabled: cn(
18536
18505
  "!text-ods-text-disabled !cursor-not-allowed hover:!bg-transparent",
18537
- "[&>button]:!cursor-not-allowed [&>button]:!text-ods-text-disabled",
18538
- // Also drop the `today` tint, or an unselectable today renders BLANK:
18539
- // `--color-text-disabled` and `--color-bg-surface` are the SAME token
18540
- // (`--ods-system-greys-soft-grey`), so the number disappears into the
18541
- // highlight — grey on identical grey. Reachable by any picker whose
18542
- // `fromDate` is in the future, and permanently by the meeting scheduler,
18543
- // where today usually has no bookable slots left.
18544
- //
18545
- // Dropping the tint rather than repainting the text: a disabled day is
18546
- // not actionable, so a highlight claiming otherwise is the wrong signal.
18547
- // The day still reads as today's position in the month by being the one
18548
- // dimmed cell between yesterday and tomorrow.
18549
- "!bg-transparent [&>button]:!bg-transparent"
18506
+ "[&>button]:!cursor-not-allowed [&>button]:!text-ods-text-disabled"
18550
18507
  ),
18551
18508
  hidden: "invisible",
18552
18509
  // Range styles matching Figma design:
@@ -18564,34 +18521,33 @@ function DatePickerCalendar({
18564
18521
  ),
18565
18522
  range_middle: "range-middle !bg-ods-open-yellow-light !text-ods-card !font-medium !rounded-none hover:!bg-ods-open-yellow-light"
18566
18523
  };
18567
- const [uncontrolledMonth, setUncontrolledMonth] = React48.useState(
18524
+ const [month, setMonth] = React48.useState(
18568
18525
  mode === "single" ? selected || today : selected?.from || today
18569
18526
  );
18570
- const month = monthProp ?? uncontrolledMonth;
18571
- const changeMonth = (next) => {
18572
- setUncontrolledMonth(next);
18573
- onMonthChange?.(next);
18574
- };
18575
18527
  const disabledDays = React48.useMemo(() => {
18576
18528
  const matchers = [];
18577
18529
  if (fromDate) matchers.push({ before: fromDate });
18578
18530
  if (toDate3) matchers.push({ after: toDate3 });
18579
- if (extraDisabledDays) {
18580
- matchers.push(...Array.isArray(extraDisabledDays) ? extraDisabledDays : [extraDisabledDays]);
18581
- }
18582
18531
  return matchers;
18583
- }, [fromDate, toDate3, extraDisabledDays]);
18532
+ }, [fromDate, toDate3]);
18584
18533
  const monthIndex = (date) => date.getFullYear() * 12 + date.getMonth();
18585
18534
  const lastVisibleMonth = monthIndex(month) + (monthsToShow === 2 ? 1 : 0);
18586
18535
  const canGoPrevious = !fromDate || monthIndex(month) > monthIndex(fromDate);
18587
18536
  const canGoNext = !toDate3 || lastVisibleMonth < monthIndex(toDate3);
18588
- const shiftMonth = (by) => {
18589
- const next = new Date(month);
18590
- next.setMonth(next.getMonth() + by);
18591
- changeMonth(next);
18537
+ const handlePreviousMonth = () => {
18538
+ setMonth((prev) => {
18539
+ const newMonth = new Date(prev);
18540
+ newMonth.setMonth(newMonth.getMonth() - 1);
18541
+ return newMonth;
18542
+ });
18543
+ };
18544
+ const handleNextMonth = () => {
18545
+ setMonth((prev) => {
18546
+ const newMonth = new Date(prev);
18547
+ newMonth.setMonth(newMonth.getMonth() + 1);
18548
+ return newMonth;
18549
+ });
18592
18550
  };
18593
- const handlePreviousMonth = () => shiftMonth(-1);
18594
- const handleNextMonth = () => shiftMonth(1);
18595
18551
  const formatMonthYear = (date) => {
18596
18552
  return date.toLocaleDateString("en-US", {
18597
18553
  month: "long",
@@ -18630,8 +18586,8 @@ function DatePickerCalendar({
18630
18586
  }
18631
18587
  `;
18632
18588
  if (mode === "single") {
18633
- return /* @__PURE__ */ jsxs88("div", { className: surfaceClass, children: [
18634
- /* @__PURE__ */ jsxs88("div", { className: captionRowClass, children: [
18589
+ return /* @__PURE__ */ jsxs88("div", { className: cn("bg-ods-card border border-ods-border rounded-[6px] overflow-hidden", fluid && "w-full"), children: [
18590
+ /* @__PURE__ */ jsxs88("div", { className: "flex items-center justify-between px-4 pt-4", children: [
18635
18591
  /* @__PURE__ */ jsx117(
18636
18592
  CalendarNavButton,
18637
18593
  {
@@ -18641,7 +18597,7 @@ function DatePickerCalendar({
18641
18597
  "aria-label": "Previous month"
18642
18598
  }
18643
18599
  ),
18644
- /* @__PURE__ */ jsx117("span", { className: captionClass, children: formatMonthYear(month) }),
18600
+ /* @__PURE__ */ jsx117("span", { className: "text-h4 text-ods-text-primary", children: formatMonthYear(month) }),
18645
18601
  /* @__PURE__ */ jsx117(
18646
18602
  CalendarNavButton,
18647
18603
  {
@@ -18659,10 +18615,8 @@ function DatePickerCalendar({
18659
18615
  selected,
18660
18616
  onSelect: (date) => onSelect(date),
18661
18617
  month,
18662
- onMonthChange: changeMonth,
18618
+ onMonthChange: setMonth,
18663
18619
  classNames,
18664
- modifiers: { todayTint: isUnclaimedToday },
18665
- modifiersClassNames: { todayTint: todayClass },
18666
18620
  showOutsideDays: true,
18667
18621
  fixedWeeks: true,
18668
18622
  disabled: disabledDays,
@@ -18675,7 +18629,7 @@ function DatePickerCalendar({
18675
18629
  return /* @__PURE__ */ jsxs88(
18676
18630
  "div",
18677
18631
  {
18678
- className: cn("bg-ods-card border border-ods-border rounded-md overflow-hidden", isFluid && "w-full"),
18632
+ className: cn("bg-ods-card border border-ods-border rounded-md overflow-hidden", fluid && "w-full"),
18679
18633
  onMouseLeave: () => setHoveredDate(void 0),
18680
18634
  children: [
18681
18635
  /* @__PURE__ */ jsx117("style", { children: rangeStyles }),
@@ -18691,7 +18645,7 @@ function DatePickerCalendar({
18691
18645
  "aria-label": "Previous month"
18692
18646
  }
18693
18647
  ),
18694
- /* @__PURE__ */ jsx117("span", { className: captionClass, children: formatMonthYear(month) }),
18648
+ /* @__PURE__ */ jsx117("span", { className: "text-h4 text-ods-text-primary", children: formatMonthYear(month) }),
18695
18649
  monthsToShow === 1 && /* @__PURE__ */ jsx117(
18696
18650
  CalendarNavButton,
18697
18651
  {
@@ -18710,10 +18664,10 @@ function DatePickerCalendar({
18710
18664
  selected: draftRange,
18711
18665
  onSelect: (_range, triggerDate) => handleRangeSelect(triggerDate),
18712
18666
  onDayMouseEnter: (day) => setHoveredDate(day),
18713
- modifiers: { preview: isPreviewDate, todayTint: isUnclaimedToday },
18714
- modifiersClassNames: { preview: "bg-ods-bg-surface", todayTint: todayClass },
18667
+ modifiers: { preview: isPreviewDate },
18668
+ modifiersClassNames: { preview: "bg-ods-bg-surface" },
18715
18669
  month,
18716
- onMonthChange: changeMonth,
18670
+ onMonthChange: setMonth,
18717
18671
  classNames,
18718
18672
  showOutsideDays: true,
18719
18673
  fixedWeeks: true,
@@ -18726,7 +18680,7 @@ function DatePickerCalendar({
18726
18680
  monthsToShow === 2 && /* @__PURE__ */ jsxs88("div", { className: "flex-1 border-l border-ods-border", children: [
18727
18681
  /* @__PURE__ */ jsxs88("div", { className: "flex items-center justify-between px-4 pt-4", children: [
18728
18682
  /* @__PURE__ */ jsx117("div", { className: "size-10 md:size-12" }),
18729
- /* @__PURE__ */ jsx117("span", { className: captionClass, children: formatMonthYear(getSecondMonth(month)) }),
18683
+ /* @__PURE__ */ jsx117("span", { className: "text-h4 text-ods-text-primary", children: formatMonthYear(getSecondMonth(month)) }),
18730
18684
  /* @__PURE__ */ jsx117(
18731
18685
  CalendarNavButton,
18732
18686
  {
@@ -18744,8 +18698,8 @@ function DatePickerCalendar({
18744
18698
  selected: draftRange,
18745
18699
  onSelect: (_range, triggerDate) => handleRangeSelect(triggerDate),
18746
18700
  onDayMouseEnter: (day) => setHoveredDate(day),
18747
- modifiers: { preview: isPreviewDate, todayTint: isUnclaimedToday },
18748
- modifiersClassNames: { preview: "bg-ods-bg-surface", todayTint: todayClass },
18701
+ modifiers: { preview: isPreviewDate },
18702
+ modifiersClassNames: { preview: "bg-ods-bg-surface" },
18749
18703
  month: getSecondMonth(month),
18750
18704
  classNames,
18751
18705
  showOutsideDays: true,
@@ -34964,7 +34918,7 @@ function VideoBitesDisplay({
34964
34918
  );
34965
34919
  }
34966
34920
 
34967
- // src/components/features/walkthrough-video.tsx
34921
+ // src/components/features/floating-walkthrough-video.tsx
34968
34922
  init_cn();
34969
34923
  init_button2();
34970
34924
  import { useCallback as useCallback28, useEffect as useEffect57, useMemo as useMemo35, useRef as useRef42, useState as useState75 } from "react";
@@ -34972,7 +34926,7 @@ import * as DialogPrimitive3 from "@radix-ui/react-dialog";
34972
34926
  import { Fragment as Fragment48, jsx as jsx261, jsxs as jsxs200 } from "react/jsx-runtime";
34973
34927
  var isAtEnd = (duration, time) => duration > 0 && duration - time < 1;
34974
34928
  var WALKTHROUGH_Z = "z-[9980]";
34975
- function WalkthroughVideo({
34929
+ function FloatingWalkthroughVideo({
34976
34930
  video,
34977
34931
  open: openProp,
34978
34932
  onOpenChange,
@@ -34980,17 +34934,12 @@ function WalkthroughVideo({
34980
34934
  defaultOpenPaused,
34981
34935
  deepLinkParam = WALKTHROUGH_OPEN_QUERY_PARAM,
34982
34936
  label = "Play Demo Video",
34983
- placement,
34984
- // Keeps the FLOATING card off the critical path. The inline preset passes 0:
34985
- // an in-page block is part of a page the visitor is already looking at, so
34986
- // staggering it in would only jump the layout.
34987
34937
  appearDelayMs = 3e3,
34988
34938
  dismissal = {},
34989
34939
  hideNearSelector = "footer",
34990
34940
  pathname,
34991
34941
  className
34992
34942
  }) {
34993
- const inline = placement === "inline";
34994
34943
  const dismissEnabled = dismissal !== false;
34995
34944
  const storageKey = dismissEnabled && dismissal.storageKey || WALKTHROUGH_VIDEO_DISMISS_KEY;
34996
34945
  const dismissalId = video?.id != null ? String(video.id) : "dismissed";
@@ -35062,10 +35011,6 @@ function WalkthroughVideo({
35062
35011
  const previewAllowed = !previewSuppressed && !isYouTube;
35063
35012
  useEffect57(() => {
35064
35013
  if (!mounted) return;
35065
- if (inline) {
35066
- setFooterHidden(false);
35067
- return;
35068
- }
35069
35014
  const el = typeof document !== "undefined" ? document.querySelector(hideNearSelector) : null;
35070
35015
  if (!el || typeof IntersectionObserver === "undefined") {
35071
35016
  setFooterHidden(false);
@@ -35077,7 +35022,7 @@ function WalkthroughVideo({
35077
35022
  );
35078
35023
  io.observe(el);
35079
35024
  return () => io.disconnect();
35080
- }, [mounted, inline, hideNearSelector, pathname]);
35025
+ }, [mounted, hideNearSelector, pathname]);
35081
35026
  useEffect57(() => {
35082
35027
  if (!resumeMode) return;
35083
35028
  const onVis = () => {
@@ -35327,10 +35272,7 @@ function WalkthroughVideo({
35327
35272
  // badge accents off it. It must live on an element that actually
35328
35273
  // receives pointer events — the media layer is pointer-events-none, so
35329
35274
  // a group inside it can never match :hover.
35330
- "group/card pointer-events-auto relative overflow-hidden rounded-md border border-ods-border bg-ods-card",
35331
- // The lift is what separates a FLOATING card from the page beneath it;
35332
- // an in-flow block sitting inside a host card needs no shadow at all.
35333
- !inline && "shadow-2xl",
35275
+ "group/card pointer-events-auto relative overflow-hidden rounded-lg border border-ods-border bg-ods-card shadow-2xl",
35334
35276
  // MOBILE = PiP dimensions, not a shrunken desktop card. This is an
35335
35277
  // UNINVITED overlay on the smallest screens, so it is sized against
35336
35278
  // the corner-PiP conventions, NOT against system PiP (which is
@@ -35346,9 +35288,7 @@ function WalkthroughVideo({
35346
35288
  // Do NOT go below ~150px: the corner chrome (32px transport pair +
35347
35289
  // 32px dismiss + the title pill) stops fitting, and the card's own
35348
35290
  // controls — not the poster — are what set the real floor here.
35349
- "aspect-video transition-opacity duration-200",
35350
- // Inline: the HOST owns the width — the card only keeps 16:9 within it.
35351
- inline ? "w-full" : "w-[min(52vw,192px)] sm:w-80",
35291
+ "aspect-video w-[min(52vw,192px)] sm:w-80 transition-opacity duration-200",
35352
35292
  footerHidden ? "opacity-0 pointer-events-none" : "opacity-100",
35353
35293
  className
35354
35294
  ),
@@ -35475,11 +35415,7 @@ function WalkthroughVideo({
35475
35415
  }
35476
35416
  );
35477
35417
  return /* @__PURE__ */ jsxs200(Fragment48, { children: [
35478
- showCard && (inline ? (
35479
- // No wrapper: a positioning / z-index / safe-area shell around an
35480
- // in-flow block is exactly what stops it sizing to its container.
35481
- collapsed
35482
- ) : /* @__PURE__ */ jsx261(
35418
+ showCard && /* @__PURE__ */ jsx261(
35483
35419
  "div",
35484
35420
  {
35485
35421
  className: cn(
@@ -35490,7 +35426,7 @@ function WalkthroughVideo({
35490
35426
  style: { paddingBottom: "max(var(--spacing-system-mf), env(safe-area-inset-bottom))" },
35491
35427
  children: collapsed
35492
35428
  }
35493
- )),
35429
+ ),
35494
35430
  /* @__PURE__ */ jsx261(DialogPrimitive3.Root, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxs200(DialogPortal, { children: [
35495
35431
  /* @__PURE__ */ jsx261(DialogOverlay, {}),
35496
35432
  /* @__PURE__ */ jsxs200(
@@ -35562,12 +35498,6 @@ function WalkthroughVideo({
35562
35498
  ] }) })
35563
35499
  ] });
35564
35500
  }
35565
- function FloatingWalkthroughVideo(props) {
35566
- return /* @__PURE__ */ jsx261(WalkthroughVideo, { ...props, placement: "floating" });
35567
- }
35568
- function InlineWalkthroughVideo(props) {
35569
- return /* @__PURE__ */ jsx261(WalkthroughVideo, { ...props, placement: "inline", appearDelayMs: 0, dismissal: false });
35570
- }
35571
35501
 
35572
35502
  // src/components/features/use-walkthrough-video.ts
35573
35503
  import { useQuery } from "@tanstack/react-query";
@@ -41033,7 +40963,7 @@ function Board({
41033
40963
  // src/components/features/board/types.ts
41034
40964
  var STATUS_DEFAULTS = {
41035
40965
  ACTIVE: { label: "Active", color: "#5ea62e" },
41036
- AI_ASSISTANCE: { label: "AI Assistance", color: "#888888" },
40966
+ AI_ASSISTANCE: { label: "AI Handling", color: "#888888" },
41037
40967
  TECH_REQUIRED: { label: "Tech Required", color: "#e1b32f" },
41038
40968
  ON_HOLD: { label: "On Hold", color: "#f36666" },
41039
40969
  RESOLVED: { label: "Resolved", color: "#888888" },
@@ -62592,7 +62522,6 @@ export {
62592
62522
  SelectLabel,
62593
62523
  SelectItem,
62594
62524
  SelectSeparator,
62595
- DatePickerCalendar,
62596
62525
  DatePicker,
62597
62526
  DatePickerInput,
62598
62527
  DatePickerInputSimple,
@@ -63500,7 +63429,6 @@ export {
63500
63429
  WarningBlock,
63501
63430
  VideoBitesDisplay,
63502
63431
  FloatingWalkthroughVideo,
63503
- InlineWalkthroughVideo,
63504
63432
  useWalkthroughVideo,
63505
63433
  VideoSourceSelector,
63506
63434
  ConfidenceBadge,
@@ -63687,4 +63615,4 @@ export {
63687
63615
  LogsList,
63688
63616
  assets
63689
63617
  };
63690
- //# sourceMappingURL=chunk-GKGQ4DWE.js.map
63618
+ //# sourceMappingURL=chunk-3IBCKS3I.js.map