@homebound/beam 4.14.3 → 4.14.4

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
@@ -9760,12 +9760,27 @@ function isGridStyleDef(style) {
9760
9760
  const defKeys = safeKeys(gridStyleDefKeysRecord);
9761
9761
  return keys.length === 0 || keys.some((k) => defKeys.includes(k));
9762
9762
  }
9763
- function resolveStyles(style) {
9764
- if (isGridStyleDef(style)) {
9765
- return getTableStyles(style);
9766
- }
9763
+ function resolveStyles(style, insetHandled = false, inDocumentScrollLayout = false) {
9764
+ const layoutDefaults = getLayoutDefaults(insetHandled, inDocumentScrollLayout);
9765
+ if (isGridStyleDef(style)) return getTableStyles({
9766
+ ...layoutDefaults,
9767
+ ...style
9768
+ });
9769
+ if (style === defaultStyle) return getTableStyles(layoutDefaults);
9767
9770
  return style;
9768
9771
  }
9772
+ function getLayoutDefaults(insetHandled, inDocumentScrollLayout) {
9773
+ if (insetHandled) return {
9774
+ allWhite: true,
9775
+ bordered: true,
9776
+ roundedHeader: true
9777
+ };
9778
+ if (inDocumentScrollLayout) return {
9779
+ allWhite: true,
9780
+ roundedHeader: false
9781
+ };
9782
+ return {};
9783
+ }
9769
9784
 
9770
9785
  // src/components/Table/utils/maybeApplyFunction.ts
9771
9786
  function maybeApplyFunction(row, maybeFn) {
@@ -9784,15 +9799,26 @@ function useRenderCount() {
9784
9799
  return { getCount };
9785
9800
  }
9786
9801
 
9802
+ // src/layouts/ContentInsetContext.tsx
9803
+ import { createContext as createContext6, useContext as useContext11 } from "react";
9804
+ import { jsx as jsx26 } from "react/jsx-runtime";
9805
+ var ContentInsetContext = createContext6(false);
9806
+ function ContentInsetProvider({ children }) {
9807
+ return /* @__PURE__ */ jsx26(ContentInsetContext.Provider, { value: true, children });
9808
+ }
9809
+ function useContentInsetHandled() {
9810
+ return useContext11(ContentInsetContext);
9811
+ }
9812
+
9787
9813
  // src/components/Table/components/Row.tsx
9788
9814
  import { observer as observer2 } from "mobx-react";
9789
- import React5, { useCallback as useCallback9, useContext as useContext13, useRef as useRef12 } from "react";
9815
+ import React5, { useCallback as useCallback9, useContext as useContext14, useRef as useRef12 } from "react";
9790
9816
  import { mergeProps as mergeProps6 } from "react-aria";
9791
9817
 
9792
9818
  // src/components/Table/components/cell.tsx
9793
9819
  import { Link as Link2 } from "react-router-dom";
9794
9820
  import { mergeProps as mergeProps5 } from "@homebound/truss/runtime";
9795
- import { jsx as jsx26 } from "react/jsx-runtime";
9821
+ import { jsx as jsx27 } from "react/jsx-runtime";
9796
9822
  function fieldCell(cell) {
9797
9823
  if (typeof cell === "object" && cell !== null && "content" in cell) {
9798
9824
  return {
@@ -9807,7 +9833,7 @@ function fieldCell(cell) {
9807
9833
  }
9808
9834
  var defaultRenderFn = (as, colSpan) => (key, css2, content2, row, rowStyle, classNames, onClick, tooltip) => {
9809
9835
  const Cell = as === "table" ? "td" : "div";
9810
- return /* @__PURE__ */ jsx26(Cell, { ...mergeProps5(classNames, void 0, {
9836
+ return /* @__PURE__ */ jsx27(Cell, { ...mergeProps5(classNames, void 0, {
9811
9837
  ...css2,
9812
9838
  ...{
9813
9839
  cursor: "cur_default"
@@ -9818,7 +9844,7 @@ var defaultRenderFn = (as, colSpan) => (key, css2, content2, row, rowStyle, clas
9818
9844
  };
9819
9845
  var headerRenderFn = (column2, as, colSpan) => (key, css2, content2, row, rowStyle, classNames, onClick, tooltip) => {
9820
9846
  const Cell = as === "table" ? "th" : "div";
9821
- return /* @__PURE__ */ jsx26(Cell, { ...mergeProps5(classNames, void 0, {
9847
+ return /* @__PURE__ */ jsx27(Cell, { ...mergeProps5(classNames, void 0, {
9822
9848
  ...css2
9823
9849
  }), ...as === "table" && {
9824
9850
  colSpan
@@ -9827,15 +9853,15 @@ var headerRenderFn = (column2, as, colSpan) => (key, css2, content2, row, rowSty
9827
9853
  var rowLinkRenderFn = (as, colSpan) => (key, css2, content2, row, rowStyle, classNames, onClick, tooltip) => {
9828
9854
  const to = rowStyle.rowLink(row);
9829
9855
  if (as === "table") {
9830
- return /* @__PURE__ */ jsx26("td", { ...mergeProps5(classNames, void 0, {
9856
+ return /* @__PURE__ */ jsx27("td", { ...mergeProps5(classNames, void 0, {
9831
9857
  ...css2
9832
- }), colSpan, children: /* @__PURE__ */ jsx26(Link2, { to, ...mergeProps5(navLink, void 0, {
9858
+ }), colSpan, children: /* @__PURE__ */ jsx27(Link2, { to, ...mergeProps5(navLink, void 0, {
9833
9859
  textDecoration: "tdn",
9834
9860
  color: "c_unset",
9835
9861
  display: "db"
9836
9862
  }), children: content2 }) }, key);
9837
9863
  }
9838
- return /* @__PURE__ */ jsx26(Link2, { to, ...mergeProps5(`${navLink} ${classNames}`, void 0, {
9864
+ return /* @__PURE__ */ jsx27(Link2, { to, ...mergeProps5(`${navLink} ${classNames}`, void 0, {
9839
9865
  ...{
9840
9866
  textDecoration: "tdn",
9841
9867
  color: "c_unset"
@@ -9845,7 +9871,7 @@ var rowLinkRenderFn = (as, colSpan) => (key, css2, content2, row, rowStyle, clas
9845
9871
  };
9846
9872
  var rowClickRenderFn = (as, api, colSpan) => (key, css2, content2, row, rowStyle, classNames, onClick, tooltip) => {
9847
9873
  const Cell = as === "table" ? "td" : "div";
9848
- return /* @__PURE__ */ jsx26(Cell, { ...mergeProps5(classNames, void 0, {
9874
+ return /* @__PURE__ */ jsx27(Cell, { ...mergeProps5(classNames, void 0, {
9849
9875
  ...css2
9850
9876
  }), onClick: (e) => {
9851
9877
  rowStyle.onClick(row, api);
@@ -9856,9 +9882,9 @@ var rowClickRenderFn = (as, api, colSpan) => (key, css2, content2, row, rowStyle
9856
9882
  };
9857
9883
 
9858
9884
  // src/components/Table/components/ColumnResizeHandle.tsx
9859
- import { useCallback as useCallback8, useContext as useContext11, useEffect as useEffect7, useRef as useRef11, useState as useState9 } from "react";
9885
+ import { useCallback as useCallback8, useContext as useContext12, useEffect as useEffect7, useRef as useRef11, useState as useState9 } from "react";
9860
9886
  import { trussProps as trussProps16, maybeCssVar as maybeCssVar14 } from "@homebound/truss/runtime";
9861
- import { Fragment as Fragment7, jsx as jsx27, jsxs as jsxs12 } from "react/jsx-runtime";
9887
+ import { Fragment as Fragment7, jsx as jsx28, jsxs as jsxs12 } from "react/jsx-runtime";
9862
9888
  function findScrollableParent(element) {
9863
9889
  if (!element) return null;
9864
9890
  let parent = element.parentElement;
@@ -9885,7 +9911,7 @@ function ColumnResizeHandle({
9885
9911
  }) {
9886
9912
  const {
9887
9913
  tableContainerRef
9888
- } = useContext11(TableStateContext);
9914
+ } = useContext12(TableStateContext);
9889
9915
  const {
9890
9916
  scrollableEl
9891
9917
  } = useScrollableParent();
@@ -10022,7 +10048,7 @@ function ColumnResizeHandle({
10022
10048
  };
10023
10049
  }, []);
10024
10050
  return /* @__PURE__ */ jsxs12(Fragment7, { children: [
10025
- /* @__PURE__ */ jsx27("div", { ref: handleRef, onMouseDown: handleMouseDown, onMouseEnter: () => setIsHovering(true), onMouseLeave: () => !isDragging && setIsHovering(false), ...trussProps16({
10051
+ /* @__PURE__ */ jsx28("div", { ref: handleRef, onMouseDown: handleMouseDown, onMouseEnter: () => setIsHovering(true), onMouseLeave: () => !isDragging && setIsHovering(false), ...trussProps16({
10026
10052
  position: "absolute",
10027
10053
  top: "top0",
10028
10054
  bottom: "bot_0",
@@ -10037,7 +10063,7 @@ function ColumnResizeHandle({
10037
10063
  }]
10038
10064
  } : {}
10039
10065
  }), ...tid.handle, "data-column-id": columnId, "data-column-index": columnIndex }),
10040
- isDragging && guideLineX !== null && /* @__PURE__ */ jsx27("div", { ...trussProps16({
10066
+ isDragging && guideLineX !== null && /* @__PURE__ */ jsx28("div", { ...trussProps16({
10041
10067
  position: "fixed",
10042
10068
  top: ["top_var", {
10043
10069
  "--top": `${guideLineTop}px`
@@ -10062,9 +10088,9 @@ function ColumnResizeHandle({
10062
10088
  }
10063
10089
 
10064
10090
  // src/components/Table/components/KeptGroupRow.tsx
10065
- import { useContext as useContext12 } from "react";
10091
+ import { useContext as useContext13 } from "react";
10066
10092
  import { trussProps as trussProps17, maybeCssVar as maybeCssVar15 } from "@homebound/truss/runtime";
10067
- import { jsx as jsx28, jsxs as jsxs13 } from "react/jsx-runtime";
10093
+ import { jsx as jsx29, jsxs as jsxs13 } from "react/jsx-runtime";
10068
10094
  var __maybeInc8 = (inc) => {
10069
10095
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
10070
10096
  };
@@ -10080,9 +10106,9 @@ function KeptGroupRow(props) {
10080
10106
  const CellTag = as === "table" ? "td" : "div";
10081
10107
  const {
10082
10108
  tableState
10083
- } = useContext12(TableStateContext);
10109
+ } = useContext13(TableStateContext);
10084
10110
  const numHiddenSelectedRows = useComputed(() => tableState.keptRows.length, [tableState]);
10085
- return /* @__PURE__ */ jsx28(CellTag, { ...trussProps17({
10111
+ return /* @__PURE__ */ jsx29(CellTag, { ...trussProps17({
10086
10112
  ...style.cellCss,
10087
10113
  ...style.betweenRowsCss,
10088
10114
  ...isLastBodyRow && style.lastRowCellCss,
@@ -10098,9 +10124,9 @@ function KeptGroupRow(props) {
10098
10124
  }), ...as === "table" ? {
10099
10125
  colSpan
10100
10126
  } : {}, children: /* @__PURE__ */ jsxs13("div", { className: "df aic g_12px", children: [
10101
- /* @__PURE__ */ jsx28("div", { className: "w_38px df jcc", children: /* @__PURE__ */ jsx28(CollapseToggle, { row, compact: true }) }),
10127
+ /* @__PURE__ */ jsx29("div", { className: "w_38px df jcc", children: /* @__PURE__ */ jsx29(CollapseToggle, { row, compact: true }) }),
10102
10128
  /* @__PURE__ */ jsxs13("div", { className: "df aic g_1", children: [
10103
- /* @__PURE__ */ jsx28(Icon, { icon: "infoCircle", inc: 2 }),
10129
+ /* @__PURE__ */ jsx29(Icon, { icon: "infoCircle", inc: 2 }),
10104
10130
  `${numHiddenSelectedRows} selected ${pluralize(numHiddenSelectedRows, "row")} hidden due to filters`
10105
10131
  ] })
10106
10132
  ] }) });
@@ -10109,7 +10135,7 @@ function KeptGroupRow(props) {
10109
10135
  // src/components/Table/components/Row.tsx
10110
10136
  import { useDebouncedCallback as useDebouncedCallback3 } from "use-debounce";
10111
10137
  import { trussProps as trussProps18, mergeProps as mergeProps_12, maybeCssVar as maybeCssVar_12 } from "@homebound/truss/runtime";
10112
- import { Fragment as Fragment8, jsx as jsx29, jsxs as jsxs14 } from "react/jsx-runtime";
10138
+ import { Fragment as Fragment8, jsx as jsx30, jsxs as jsxs14 } from "react/jsx-runtime";
10113
10139
  var __maybeInc9 = (inc) => {
10114
10140
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
10115
10141
  };
@@ -10201,7 +10227,7 @@ function RowImpl(props) {
10201
10227
  } = props;
10202
10228
  const {
10203
10229
  tableState
10204
- } = useContext13(TableStateContext);
10230
+ } = useContext14(TableStateContext);
10205
10231
  const {
10206
10232
  api,
10207
10233
  visibleColumns: columns
@@ -10282,12 +10308,12 @@ function RowImpl(props) {
10282
10308
  const ref = useRef12(null);
10283
10309
  const dragOverCallback = useCallback9((row2, evt) => onDragOver?.(row2, evt), [onDragOver]);
10284
10310
  const onDragOverDebounced = useDebouncedCallback3(dragOverCallback, 100);
10285
- const RowContent = () => /* @__PURE__ */ jsx29(RowTag, { ...mergeProps_12(`${BorderHoverParent}${showRowHoverColor ? ` ${RowHoverClass}` : ""}`, void 0, rowCss), ...others, "data-gridrow": true, ...getCount(row.id), ref, children: isKeptGroupRow ? /* @__PURE__ */ jsx29(KeptGroupRow, { as, style, columnSizes, row, colSpan: columns.length, isLastBodyRow }) : columns.map((column2, columnIndex) => {
10311
+ const RowContent = () => /* @__PURE__ */ jsx30(RowTag, { ...mergeProps_12(`${BorderHoverParent}${showRowHoverColor ? ` ${RowHoverClass}` : ""}`, void 0, rowCss), ...others, "data-gridrow": true, ...getCount(row.id), ref, children: isKeptGroupRow ? /* @__PURE__ */ jsx30(KeptGroupRow, { as, style, columnSizes, row, colSpan: columns.length, isLastBodyRow }) : columns.map((column2, columnIndex) => {
10286
10312
  const maybeExpandedColumn = expandColumnHidden ? columns[columnIndex - 1] : column2;
10287
10313
  const isExpanded = tableState.isExpandedColumn(maybeExpandedColumn.id);
10288
10314
  if (column2.hideOnExpand && isExpanded) {
10289
10315
  expandColumnHidden = true;
10290
- return /* @__PURE__ */ jsx29(Fragment8, {});
10316
+ return /* @__PURE__ */ jsx30(Fragment8, {});
10291
10317
  }
10292
10318
  const numExpandedColumns = isExpanded ? tableState.numberOfExpandedChildren(maybeExpandedColumn.id) ? (
10293
10319
  // Subtract 1 if the column is hidden on expand, since we're not rendering it.
@@ -10476,14 +10502,14 @@ function RowImpl(props) {
10476
10502
  }), {
10477
10503
  children: /* @__PURE__ */ jsxs14(Fragment8, { children: [
10478
10504
  cellElement.props.children,
10479
- /* @__PURE__ */ jsx29(ColumnResizeHandle, { columnId: column2.id, columnIndex, currentWidth: currentWidthPx, minWidth: minWidthPx, onResize: (colId, width2) => setResizedWidth?.(colId, width2, columnIndex), calculatePreviewWidth })
10505
+ /* @__PURE__ */ jsx30(ColumnResizeHandle, { columnId: column2.id, columnIndex, currentWidth: currentWidthPx, minWidth: minWidthPx, onResize: (colId, width2) => setResizedWidth?.(colId, width2, columnIndex), calculatePreviewWidth })
10480
10506
  ] })
10481
10507
  }));
10482
10508
  return cellElementWithHandle;
10483
10509
  }
10484
10510
  return cellElement;
10485
10511
  }) });
10486
- return row.draggable ? /* @__PURE__ */ jsx29(
10512
+ return row.draggable ? /* @__PURE__ */ jsx30(
10487
10513
  "div",
10488
10514
  {
10489
10515
  ...trussProps18(containerCss),
@@ -10495,7 +10521,7 @@ function RowImpl(props) {
10495
10521
  },
10496
10522
  children: RowContent()
10497
10523
  }
10498
- ) : /* @__PURE__ */ jsx29(Fragment8, { children: RowContent() });
10524
+ ) : /* @__PURE__ */ jsx30(Fragment8, { children: RowContent() });
10499
10525
  }
10500
10526
  var Row = observer2(RowImpl);
10501
10527
  var BorderHoverParent = "beam-bhp";
@@ -10506,7 +10532,7 @@ var rowHoverBgVar = "--beam-row-hover-bg";
10506
10532
  // src/components/Table/components/RowGroup.tsx
10507
10533
  import { Fragment as Fragment9 } from "react";
10508
10534
  import { mergeProps as mergeProps7 } from "@homebound/truss/runtime";
10509
- import { jsx as jsx30 } from "react/jsx-runtime";
10535
+ import { jsx as jsx31 } from "react/jsx-runtime";
10510
10536
  function RowGroup(props) {
10511
10537
  const {
10512
10538
  as,
@@ -10516,11 +10542,11 @@ function RowGroup(props) {
10516
10542
  children
10517
10543
  } = props;
10518
10544
  if (as === "table" && inHead) {
10519
- return /* @__PURE__ */ jsx30(Fragment9, { children });
10545
+ return /* @__PURE__ */ jsx31(Fragment9, { children });
10520
10546
  }
10521
10547
  const Tag2 = as === "table" ? "tbody" : "div";
10522
10548
  const rowHoverBg = maybeCssVar(style.rowHoverColor !== void 0 && style.rowHoverColor !== "none" ? style.rowHoverColor : "--b-surface-hover" /* SurfaceHover */);
10523
- return /* @__PURE__ */ jsx30(Tag2, { ...mergeProps7(showRowHover ? `${BorderHoverParent} ${RowHoverClass}` : BorderHoverParent, void 0, {
10549
+ return /* @__PURE__ */ jsx31(Tag2, { ...mergeProps7(showRowHover ? `${BorderHoverParent} ${RowHoverClass}` : BorderHoverParent, void 0, {
10524
10550
  ...as === "table" ? tableRowPrintBreakCss : void 0,
10525
10551
  ...showRowHover && {
10526
10552
  style_rowHoverBgVar_rowHoverBg: {
@@ -10559,7 +10585,7 @@ import { Link as Link3, useNavigate } from "react-router-dom";
10559
10585
  // src/components/Avatar/Avatar.tsx
10560
10586
  import { useState as useState10 } from "react";
10561
10587
  import { trussProps as trussProps19 } from "@homebound/truss/runtime";
10562
- import { jsx as jsx31, jsxs as jsxs15 } from "react/jsx-runtime";
10588
+ import { jsx as jsx32, jsxs as jsxs15 } from "react/jsx-runtime";
10563
10589
  var __typography3 = {
10564
10590
  xs2: {
10565
10591
  fontWeight: "fw4",
@@ -10641,7 +10667,7 @@ function Avatar({
10641
10667
  }],
10642
10668
  overflow: "oh"
10643
10669
  };
10644
- const img = showFallback ? /* @__PURE__ */ jsx31("div", { ...trussProps19({
10670
+ const img = showFallback ? /* @__PURE__ */ jsx32("div", { ...trussProps19({
10645
10671
  ...styles,
10646
10672
  ...{
10647
10673
  ...__typography3[sizeToFallbackTypeScale[size]] ?? {},
@@ -10655,7 +10681,7 @@ function Avatar({
10655
10681
  alignItems: "aic",
10656
10682
  justifyContent: "jcc"
10657
10683
  }
10658
- }), ...tid, children: name ? nameToInitials(name) : /* @__PURE__ */ jsx31(Icon, { icon: "userCircle", inc: sizeToIconInc[size] }) }) : /* @__PURE__ */ jsx31("img", { src, alt: name, ...trussProps19({
10684
+ }), ...tid, children: name ? nameToInitials(name) : /* @__PURE__ */ jsx32(Icon, { icon: "userCircle", inc: sizeToIconInc[size] }) }) : /* @__PURE__ */ jsx32("img", { src, alt: name, ...trussProps19({
10659
10685
  ...styles,
10660
10686
  ...{
10661
10687
  objectFit: "obf_cover"
@@ -10670,7 +10696,7 @@ function Avatar({
10670
10696
  } : {}
10671
10697
  }), children: [
10672
10698
  img,
10673
- /* @__PURE__ */ jsx31("span", { ...trussProps19({
10699
+ /* @__PURE__ */ jsx32("span", { ...trussProps19({
10674
10700
  ...__typography3[sizeToTypeScale[size]] ?? {}
10675
10701
  }), children: name })
10676
10702
  ] }) : maybeTooltip({
@@ -10709,7 +10735,7 @@ function nameToInitials(name) {
10709
10735
 
10710
10736
  // src/components/internal/MenuItem.tsx
10711
10737
  import { trussProps as trussProps20, mergeProps as mergeProps8, maybeCssVar as maybeCssVar16 } from "@homebound/truss/runtime";
10712
- import { Fragment as Fragment10, jsx as jsx32, jsxs as jsxs16 } from "react/jsx-runtime";
10738
+ import { Fragment as Fragment10, jsx as jsx33, jsxs as jsxs16 } from "react/jsx-runtime";
10713
10739
  function MenuItemImpl(props) {
10714
10740
  const {
10715
10741
  item,
@@ -10764,7 +10790,7 @@ function MenuItemImpl(props) {
10764
10790
  const isDisabled = Boolean(disabled);
10765
10791
  const isSelected = state.selectionManager.selectedKeys.has(label);
10766
10792
  const isFocused = state.selectionManager.focusedKey === item.key;
10767
- return /* @__PURE__ */ jsx32(
10793
+ return /* @__PURE__ */ jsx33(
10768
10794
  "li",
10769
10795
  {
10770
10796
  ...menuItemProps,
@@ -10837,12 +10863,12 @@ function renderMenuItem(menuItem, isSelected, isDisabled, itemTid) {
10837
10863
  display: "df",
10838
10864
  alignItems: "aic"
10839
10865
  }), children: [
10840
- menuItem.ai ? /* @__PURE__ */ jsx32(AiMenuItem, { label: menuItem.label, isDisabled }) : isIconMenuItem(menuItem) ? /* @__PURE__ */ jsx32(IconMenuItem, { ...menuItem }) : isImageMenuItem(menuItem) ? /* @__PURE__ */ jsx32(ImageMenuItem, { ...menuItem }) : menuItem.label,
10841
- showDescription && /* @__PURE__ */ jsx32("div", { className: "fw4 fz_10px lh_14px", ...itemTid.description, children: menuItem.description })
10866
+ menuItem.ai ? /* @__PURE__ */ jsx33(AiMenuItem, { label: menuItem.label, isDisabled }) : isIconMenuItem(menuItem) ? /* @__PURE__ */ jsx33(IconMenuItem, { ...menuItem }) : isImageMenuItem(menuItem) ? /* @__PURE__ */ jsx33(ImageMenuItem, { ...menuItem }) : menuItem.label,
10867
+ showDescription && /* @__PURE__ */ jsx33("div", { className: "fw4 fz_10px lh_14px", ...itemTid.description, children: menuItem.description })
10842
10868
  ] });
10843
10869
  return /* @__PURE__ */ jsxs16("div", { className: "df w100 aic jcsb g_2", children: [
10844
10870
  maybeWrapInLink(menuItem.onClick, body, isDisabled),
10845
- isSelected && /* @__PURE__ */ jsx32(Icon, { icon: "check", color: isDisabled ? "--b-text-disabled" /* TextDisabled */ : "--b-selection-indicator" /* SelectionIndicator */ })
10871
+ isSelected && /* @__PURE__ */ jsx33(Icon, { icon: "check", color: isDisabled ? "--b-text-disabled" /* TextDisabled */ : "--b-selection-indicator" /* SelectionIndicator */ })
10846
10872
  ] });
10847
10873
  }
10848
10874
  function ImageMenuItem(item) {
@@ -10853,7 +10879,7 @@ function ImageMenuItem(item) {
10853
10879
  isAvatar = false
10854
10880
  } = item;
10855
10881
  return /* @__PURE__ */ jsxs16(Fragment10, { children: [
10856
- /* @__PURE__ */ jsx32("span", { className: "fs0 mr2", children: isAvatar ? /* @__PURE__ */ jsx32(Avatar, { src, name: label, size: size === 24 ? "sm" : "lg" }) : /* @__PURE__ */ jsx32("img", { width: size, src, className: "br4", alt: label }) }),
10882
+ /* @__PURE__ */ jsx33("span", { className: "fs0 mr2", children: isAvatar ? /* @__PURE__ */ jsx33(Avatar, { src, name: label, size: size === 24 ? "sm" : "lg" }) : /* @__PURE__ */ jsx33("img", { width: size, src, className: "br4", alt: label }) }),
10857
10883
  label
10858
10884
  ] });
10859
10885
  }
@@ -10862,8 +10888,8 @@ function AiMenuItem({
10862
10888
  isDisabled
10863
10889
  }) {
10864
10890
  return /* @__PURE__ */ jsxs16(Fragment10, { children: [
10865
- /* @__PURE__ */ jsx32("span", { className: "df aic jcc fs0 h_24px w_24px mr2", children: /* @__PURE__ */ jsx32(Icon, { icon: "aiStar" }) }),
10866
- /* @__PURE__ */ jsx32("span", { ...trussProps20({
10891
+ /* @__PURE__ */ jsx33("span", { className: "df aic jcc fs0 h_24px w_24px mr2", children: /* @__PURE__ */ jsx33(Icon, { icon: "aiStar" }) }),
10892
+ /* @__PURE__ */ jsx33("span", { ...trussProps20({
10867
10893
  ...!isDisabled ? {
10868
10894
  color: ["color_var", {
10869
10895
  "--color": maybeCssVar16("rgba(124, 58, 237, 1)" /* Purple600 */)
@@ -10878,13 +10904,13 @@ function IconMenuItem(item) {
10878
10904
  label
10879
10905
  } = item;
10880
10906
  return /* @__PURE__ */ jsxs16(Fragment10, { children: [
10881
- /* @__PURE__ */ jsx32("span", { className: "fs0 mr2", children: /* @__PURE__ */ jsx32(Icon, { icon }) }),
10907
+ /* @__PURE__ */ jsx33("span", { className: "fs0 mr2", children: /* @__PURE__ */ jsx33(Icon, { icon }) }),
10882
10908
  label
10883
10909
  ] });
10884
10910
  }
10885
10911
  function maybeWrapInLink(onClick, content2, disabled) {
10886
10912
  if (disabled || typeof onClick !== "string") {
10887
- return /* @__PURE__ */ jsx32(Fragment10, { children: content2 });
10913
+ return /* @__PURE__ */ jsx33(Fragment10, { children: content2 });
10888
10914
  }
10889
10915
  return isAbsoluteUrl(onClick) ? /* @__PURE__ */ jsxs16("a", { href: onClick, target: "_blank", rel: "noopener noreferrer", ...mergeProps8("navLink", void 0, {
10890
10916
  display: "df",
@@ -10893,8 +10919,8 @@ function maybeWrapInLink(onClick, content2, disabled) {
10893
10919
  width: "w100"
10894
10920
  }), children: [
10895
10921
  content2,
10896
- /* @__PURE__ */ jsx32("span", { className: "fs0 ml2", children: /* @__PURE__ */ jsx32(Icon, { icon: "linkExternal" }) })
10897
- ] }) : /* @__PURE__ */ jsx32(Link3, { ...mergeProps8("navLink", void 0, {
10922
+ /* @__PURE__ */ jsx33("span", { className: "fs0 ml2", children: /* @__PURE__ */ jsx33(Icon, { icon: "linkExternal" }) })
10923
+ ] }) : /* @__PURE__ */ jsx33(Link3, { ...mergeProps8("navLink", void 0, {
10898
10924
  display: "df",
10899
10925
  alignItems: "aic",
10900
10926
  width: "w100"
@@ -10912,7 +10938,7 @@ function isImageMenuItem(item) {
10912
10938
 
10913
10939
  // src/components/internal/MenuSection.tsx
10914
10940
  import { trussProps as trussProps21 } from "@homebound/truss/runtime";
10915
- import { Fragment as Fragment11, jsx as jsx33, jsxs as jsxs17 } from "react/jsx-runtime";
10941
+ import { Fragment as Fragment11, jsx as jsx34, jsxs as jsxs17 } from "react/jsx-runtime";
10916
10942
  function MenuSectionImpl(props) {
10917
10943
  const {
10918
10944
  section,
@@ -10931,21 +10957,21 @@ function MenuSectionImpl(props) {
10931
10957
  const isPersistentSection = section.key !== state.collection.getFirstKey();
10932
10958
  const tid = useTestIds(props);
10933
10959
  return /* @__PURE__ */ jsxs17(Fragment11, { children: [
10934
- isPersistentSection && /* @__PURE__ */ jsx33("li", { ...separatorProps, ...trussProps21({
10960
+ isPersistentSection && /* @__PURE__ */ jsx34("li", { ...separatorProps, ...trussProps21({
10935
10961
  borderTopStyle: "bts_solid",
10936
10962
  borderTopWidth: "btw_1px",
10937
10963
  borderColor: ["bc_var", {
10938
10964
  "--borderColor": "var(--b-surface-separator)"
10939
10965
  }]
10940
10966
  }) }),
10941
- /* @__PURE__ */ jsx33("li", { ...itemProps, ...trussProps21({
10967
+ /* @__PURE__ */ jsx34("li", { ...itemProps, ...trussProps21({
10942
10968
  color: ["color_var", {
10943
10969
  "--color": "var(--b-on-surface)"
10944
10970
  }],
10945
10971
  ...!isPersistentSection ? {
10946
10972
  overflow: "oa"
10947
10973
  } : {}
10948
- }), children: /* @__PURE__ */ jsx33("ul", { className: "p_0 m_0 listNone", ...groupProps, ...tid[isPersistentSection ? "persistentItems" : "menuItems"], children: [...section.childNodes].map((item) => /* @__PURE__ */ jsx33(MenuItemImpl, { item, state, onClose, ...tid }, item.key)) }) })
10974
+ }), children: /* @__PURE__ */ jsx34("ul", { className: "p_0 m_0 listNone", ...groupProps, ...tid[isPersistentSection ? "persistentItems" : "menuItems"], children: [...section.childNodes].map((item) => /* @__PURE__ */ jsx34(MenuItemImpl, { item, state, onClose, ...tid }, item.key)) }) })
10949
10975
  ] });
10950
10976
  }
10951
10977
 
@@ -10985,7 +11011,7 @@ import { chain, mergeProps as mergeProps9, useFocusWithin, useHover as useHover5
10985
11011
  import React6 from "react";
10986
11012
  import { VisuallyHidden as VisuallyHidden3 } from "react-aria";
10987
11013
  import { trussProps as trussProps22 } from "@homebound/truss/runtime";
10988
- import { jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
11014
+ import { jsx as jsx35, jsxs as jsxs18 } from "react/jsx-runtime";
10989
11015
  function LabelComponent(props) {
10990
11016
  const {
10991
11017
  labelProps,
@@ -11019,9 +11045,9 @@ function LabelComponent(props) {
11019
11045
  }), children: [
11020
11046
  label,
11021
11047
  suffix && ` ${suffix}`,
11022
- tooltip && /* @__PURE__ */ jsx34("span", { className: "fs0", children: /* @__PURE__ */ jsx34(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "--b-text-label" /* TextLabel */ }) })
11048
+ tooltip && /* @__PURE__ */ jsx35("span", { className: "fs0", children: /* @__PURE__ */ jsx35(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "--b-text-label" /* TextLabel */ }) })
11023
11049
  ] });
11024
- return hidden ? /* @__PURE__ */ jsx34(VisuallyHidden3, { children: labelEl }) : labelEl;
11050
+ return hidden ? /* @__PURE__ */ jsx35(VisuallyHidden3, { children: labelEl }) : labelEl;
11025
11051
  }
11026
11052
  var Label = React6.memo(LabelComponent);
11027
11053
  function InlineLabel({
@@ -11050,7 +11076,7 @@ function InlineLabel({
11050
11076
 
11051
11077
  // src/components/ProposedValue.tsx
11052
11078
  import { trussProps as trussProps23 } from "@homebound/truss/runtime";
11053
- import { Fragment as Fragment12, jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
11079
+ import { Fragment as Fragment12, jsx as jsx36, jsxs as jsxs19 } from "react/jsx-runtime";
11054
11080
  function ProposedValue(props) {
11055
11081
  const {
11056
11082
  original,
@@ -11059,7 +11085,7 @@ function ProposedValue(props) {
11059
11085
  const tid = useTestIds(props, "proposedValue");
11060
11086
  return /* @__PURE__ */ jsxs19("span", { ...tid, children: [
11061
11087
  original && /* @__PURE__ */ jsxs19(Fragment12, { children: [
11062
- /* @__PURE__ */ jsx35("span", { ...trussProps23({
11088
+ /* @__PURE__ */ jsx36("span", { ...trussProps23({
11063
11089
  textDecoration: "tdlt",
11064
11090
  color: ["color_var", {
11065
11091
  "--color": "var(--b-on-surface)"
@@ -11067,7 +11093,7 @@ function ProposedValue(props) {
11067
11093
  }), ...tid.original, children: original }),
11068
11094
  " "
11069
11095
  ] }),
11070
- /* @__PURE__ */ jsx35("span", { ...trussProps23({
11096
+ /* @__PURE__ */ jsx36("span", { ...trussProps23({
11071
11097
  fontWeight: "fw6",
11072
11098
  color: ["color_var", {
11073
11099
  "--color": "var(--b-ai-field-fg)"
@@ -11103,7 +11129,7 @@ function getFieldWidth(fullWidth) {
11103
11129
 
11104
11130
  // src/inputs/TextFieldBase.tsx
11105
11131
  import { trussProps as trussProps24, mergeProps as mergeProps_13, maybeCssVar as maybeCssVar17 } from "@homebound/truss/runtime";
11106
- import { Fragment as Fragment13, jsx as jsx36, jsxs as jsxs20 } from "react/jsx-runtime";
11132
+ import { Fragment as Fragment13, jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
11107
11133
  var __maybeInc10 = (inc) => {
11108
11134
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
11109
11135
  };
@@ -11507,7 +11533,7 @@ function TextFieldBase(props) {
11507
11533
  };
11508
11534
  return /* @__PURE__ */ jsxs20(Fragment13, { children: [
11509
11535
  /* @__PURE__ */ jsxs20("div", { ...trussProps24(fieldStyles.container), ...groupProps, ...focusWithinProps, children: [
11510
- label && labelStyle !== "inline" && /* @__PURE__ */ jsx36(Label, { labelProps, hidden: labelStyle === "hidden" || compound, label, inline: labelStyle !== "above", suffix: labelSuffix, ...tid.label }),
11536
+ label && labelStyle !== "inline" && /* @__PURE__ */ jsx37(Label, { labelProps, hidden: labelStyle === "hidden" || compound, label, inline: labelStyle !== "above", suffix: labelSuffix, ...tid.label }),
11511
11537
  maybeTooltip({
11512
11538
  title: tooltip,
11513
11539
  placement: "top",
@@ -11527,14 +11553,14 @@ function TextFieldBase(props) {
11527
11553
  },
11528
11554
  ...xss
11529
11555
  }), "data-readonly": "true", "data-ai-mode": showProposal ? "true" : void 0, ...tid, children: [
11530
- labelStyle === "inline" && label && /* @__PURE__ */ jsx36(InlineLabel, { multiline, labelProps, label, ...tid.label }),
11556
+ labelStyle === "inline" && label && /* @__PURE__ */ jsx37(InlineLabel, { multiline, labelProps, label, ...tid.label }),
11531
11557
  showProposal ? (
11532
11558
  // Read-only renders no input at all, so both halves are drawn as text here. Checked
11533
11559
  // before `multiline` so a read-only TextAreaField still shows the struck-through original.
11534
- /* @__PURE__ */ jsx36(ProposedValue, { original: showOriginal ? originalValue : void 0, proposed: proposedValue, ...tid.proposedValue })
11535
- ) : multiline ? inputProps.value?.split("\n\n").map((p, i) => /* @__PURE__ */ jsx36("p", { className: "pt1 pb1", children: p.split("\n").map((sentence, j) => /* @__PURE__ */ jsxs20("span", { children: [
11560
+ /* @__PURE__ */ jsx37(ProposedValue, { original: showOriginal ? originalValue : void 0, proposed: proposedValue, ...tid.proposedValue })
11561
+ ) : multiline ? inputProps.value?.split("\n\n").map((p, i) => /* @__PURE__ */ jsx37("p", { className: "pt1 pb1", children: p.split("\n").map((sentence, j) => /* @__PURE__ */ jsxs20("span", { children: [
11536
11562
  sentence,
11537
- /* @__PURE__ */ jsx36("br", {})
11563
+ /* @__PURE__ */ jsx37("br", {})
11538
11564
  ] }, j)) }, i)) : inputProps.value
11539
11565
  ] }) : /* @__PURE__ */ jsxs20(
11540
11566
  "div",
@@ -11560,9 +11586,9 @@ function TextFieldBase(props) {
11560
11586
  ref: inputWrapRef,
11561
11587
  onClick: unfocusedPlaceholder ? handleUnfocusedPlaceholderClick : void 0,
11562
11588
  children: [
11563
- labelStyle === "inline" && label && /* @__PURE__ */ jsx36(InlineLabel, { multiline, labelProps, label, ...tid.label }),
11564
- startAdornment && /* @__PURE__ */ jsx36("span", { className: "df aic asc fs0 br4 pr1", children: startAdornment }),
11565
- unfocusedPlaceholder && /* @__PURE__ */ jsx36(
11589
+ labelStyle === "inline" && label && /* @__PURE__ */ jsx37(InlineLabel, { multiline, labelProps, label, ...tid.label }),
11590
+ startAdornment && /* @__PURE__ */ jsx37("span", { className: "df aic asc fs0 br4 pr1", children: startAdornment }),
11591
+ unfocusedPlaceholder && /* @__PURE__ */ jsx37(
11566
11592
  "div",
11567
11593
  {
11568
11594
  tabIndex: -1,
@@ -11599,32 +11625,32 @@ function TextFieldBase(props) {
11599
11625
  children: unfocusedPlaceholder
11600
11626
  }
11601
11627
  ),
11602
- multiline ? /* @__PURE__ */ jsx36("textarea", { ...fieldElementProps, ...errorMessageProps, ref: fieldRef, rows: 1, ...trussProps24(fieldElementCss), ...tid }) : /* @__PURE__ */ jsx36("input", { ...fieldElementProps, ...errorMessageProps, ref: fieldRef, ...trussProps24(fieldElementCss), ...tid }),
11603
- isFocused && clearable && onChange && inputProps.value && /* @__PURE__ */ jsx36(IconButton, { icon: "xCircle", color: "--b-on-surface-muted" /* OnSurfaceMuted */, onClick: () => {
11628
+ multiline ? /* @__PURE__ */ jsx37("textarea", { ...fieldElementProps, ...errorMessageProps, ref: fieldRef, rows: 1, ...trussProps24(fieldElementCss), ...tid }) : /* @__PURE__ */ jsx37("input", { ...fieldElementProps, ...errorMessageProps, ref: fieldRef, ...trussProps24(fieldElementCss), ...tid }),
11629
+ isFocused && clearable && onChange && inputProps.value && /* @__PURE__ */ jsx37(IconButton, { icon: "xCircle", color: "--b-on-surface-muted" /* OnSurfaceMuted */, onClick: () => {
11604
11630
  maybeCall(onUserEdit);
11605
11631
  onChange(void 0);
11606
11632
  fieldRef.current?.focus();
11607
11633
  } }),
11608
- errorInTooltip && errorMsg && !hideErrorMessage && /* @__PURE__ */ jsx36("span", { className: "df aic asc pl1 fs0", children: /* @__PURE__ */ jsx36(Icon, { icon: "error", color: "--b-danger" /* Danger */, tooltip: errorMsg }) }),
11609
- endAdornment && /* @__PURE__ */ jsx36("span", { className: "df aic asc pl1 fs0", children: endAdornment })
11634
+ errorInTooltip && errorMsg && !hideErrorMessage && /* @__PURE__ */ jsx37("span", { className: "df aic asc pl1 fs0", children: /* @__PURE__ */ jsx37(Icon, { icon: "error", color: "--b-danger" /* Danger */, tooltip: errorMsg }) }),
11635
+ endAdornment && /* @__PURE__ */ jsx37("span", { className: "df aic asc pl1 fs0", children: endAdornment })
11610
11636
  ]
11611
11637
  }
11612
11638
  )
11613
11639
  }),
11614
11640
  labelStyle !== "left" && /* @__PURE__ */ jsxs20(Fragment13, { children: [
11615
- originalBelow && /* @__PURE__ */ jsx36(OriginalValue, { originalValue: originalBelow, ...tid.originalValue }),
11641
+ originalBelow && /* @__PURE__ */ jsx37(OriginalValue, { originalValue: originalBelow, ...tid.originalValue }),
11616
11642
  showErrorAndHelper && /* @__PURE__ */ jsxs20(Fragment13, { children: [
11617
- errorMsg && !errorInTooltip && /* @__PURE__ */ jsx36(ErrorMessage, { id: errorMessageId, errorMsg, hidden: hideErrorMessage, ...tid.errorMsg }),
11618
- helperText && /* @__PURE__ */ jsx36(HelperText, { helperText, ...tid.helperText })
11643
+ errorMsg && !errorInTooltip && /* @__PURE__ */ jsx37(ErrorMessage, { id: errorMessageId, errorMsg, hidden: hideErrorMessage, ...tid.errorMsg }),
11644
+ helperText && /* @__PURE__ */ jsx37(HelperText, { helperText, ...tid.helperText })
11619
11645
  ] })
11620
11646
  ] })
11621
11647
  ] }),
11622
11648
  labelStyle === "left" && (originalBelow || alwaysShowHelperText || !compound && !inputProps.disabled && !inputProps.readOnly && (errorMsg && !errorInTooltip || helperText)) && // Reduces the margin between the error/helper text and input field
11623
11649
  /* @__PURE__ */ jsxs20("div", { className: "mt_neg8px ml_50", children: [
11624
- originalBelow && /* @__PURE__ */ jsx36(OriginalValue, { originalValue: originalBelow, ...tid.originalValue }),
11650
+ originalBelow && /* @__PURE__ */ jsx37(OriginalValue, { originalValue: originalBelow, ...tid.originalValue }),
11625
11651
  showErrorAndHelper && /* @__PURE__ */ jsxs20(Fragment13, { children: [
11626
- errorMsg && !errorInTooltip && /* @__PURE__ */ jsx36(ErrorMessage, { id: errorMessageId, errorMsg, hidden: hideErrorMessage, ...tid.errorMsg }),
11627
- helperText && /* @__PURE__ */ jsx36(HelperText, { helperText, ...tid.helperText })
11652
+ errorMsg && !errorInTooltip && /* @__PURE__ */ jsx37(ErrorMessage, { id: errorMessageId, errorMsg, hidden: hideErrorMessage, ...tid.errorMsg }),
11653
+ helperText && /* @__PURE__ */ jsx37(HelperText, { helperText, ...tid.helperText })
11628
11654
  ] })
11629
11655
  ] })
11630
11656
  ] });
@@ -11634,7 +11660,7 @@ function OriginalValue(props) {
11634
11660
  originalValue,
11635
11661
  ...others
11636
11662
  } = props;
11637
- return /* @__PURE__ */ jsx36("div", { ...trussProps24({
11663
+ return /* @__PURE__ */ jsx37("div", { ...trussProps24({
11638
11664
  color: ["color_var", {
11639
11665
  "--color": "var(--b-text-helper)"
11640
11666
  }],
@@ -11663,20 +11689,20 @@ var textFieldBasePadding = increment(1);
11663
11689
  var textFieldBaseMultilineTopPadding = 11;
11664
11690
 
11665
11691
  // src/inputs/internal/MenuSearchField.tsx
11666
- import { jsx as jsx37 } from "react/jsx-runtime";
11692
+ import { jsx as jsx38 } from "react/jsx-runtime";
11667
11693
  function MenuSearchField(props) {
11668
11694
  const { value, proposedValue } = props;
11669
11695
  const { effectiveValue, proposalProps } = useAiProposal(value, proposedValue);
11670
11696
  const tid = useTestIds(props);
11671
11697
  const inputRef = useRef15(null);
11672
11698
  const { labelProps, inputProps } = useTextField({ ...props, value: effectiveValue }, inputRef);
11673
- return /* @__PURE__ */ jsx37(
11699
+ return /* @__PURE__ */ jsx38(
11674
11700
  TextFieldBase,
11675
11701
  {
11676
11702
  label: "",
11677
11703
  labelProps,
11678
11704
  inputProps,
11679
- startAdornment: /* @__PURE__ */ jsx37(Icon, { icon: "search" }),
11705
+ startAdornment: /* @__PURE__ */ jsx38(Icon, { icon: "search" }),
11680
11706
  ...proposalProps,
11681
11707
  ...tid.search
11682
11708
  }
@@ -11685,7 +11711,7 @@ function MenuSearchField(props) {
11685
11711
 
11686
11712
  // src/components/internal/Menu.tsx
11687
11713
  import { trussProps as trussProps25 } from "@homebound/truss/runtime";
11688
- import { jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
11714
+ import { jsx as jsx39, jsxs as jsxs21 } from "react/jsx-runtime";
11689
11715
  function Menu(props) {
11690
11716
  const {
11691
11717
  ariaMenuProps,
@@ -11742,7 +11768,7 @@ function Menu(props) {
11742
11768
  const menuChildren = useMemo8(() => {
11743
11769
  return filteredTree.items.map(({
11744
11770
  value: s
11745
- }) => /* @__PURE__ */ jsx38(Section, { title: s.label, items: s.items, children: (item) => /* @__PURE__ */ jsx38(Item, { children: item.label }, item.label.replace(/"/g, "")) }, s.label.replace(/"/g, "")));
11771
+ }) => /* @__PURE__ */ jsx39(Section, { title: s.label, items: s.items, children: (item) => /* @__PURE__ */ jsx39(Item, { children: item.label }, item.label.replace(/"/g, "")) }, s.label.replace(/"/g, "")));
11746
11772
  }, [filteredTree]);
11747
11773
  const state = useTreeState({
11748
11774
  children: menuChildren,
@@ -11766,7 +11792,7 @@ function Menu(props) {
11766
11792
  label: "items",
11767
11793
  items
11768
11794
  }), [items]);
11769
- return /* @__PURE__ */ jsx38(FocusScope, { children: /* @__PURE__ */ jsxs21(
11795
+ return /* @__PURE__ */ jsx39(FocusScope, { children: /* @__PURE__ */ jsxs21(
11770
11796
  "div",
11771
11797
  {
11772
11798
  ...trussProps25({
@@ -11784,7 +11810,7 @@ function Menu(props) {
11784
11810
  overflow: "h_oa"
11785
11811
  }),
11786
11812
  children: [
11787
- header && /* @__PURE__ */ jsx38("div", { ...trussProps25({
11813
+ header && /* @__PURE__ */ jsx39("div", { ...trussProps25({
11788
11814
  paddingLeft: "pl2",
11789
11815
  paddingRight: "pr2",
11790
11816
  paddingTop: "pt_12px",
@@ -11796,8 +11822,8 @@ function Menu(props) {
11796
11822
  }],
11797
11823
  minWidth: "mw_240px"
11798
11824
  }), ...tid.header, children: header }),
11799
- searchable && /* @__PURE__ */ jsx38(MenuSearchField, { label: "", value: search, placeholder: "Search...", labelStyle: "inline", onChange: setSearch, ...tid }),
11800
- /* @__PURE__ */ jsx38("ul", { className: "p_0 m_0 listNone ol_0", ...menuProps, ref: menuRef, ...tid.menu, children: [...state.collection].map((item) => /* @__PURE__ */ jsx38(MenuSectionImpl, { section: item, state, onClose, ...tid }, item.key)) })
11825
+ searchable && /* @__PURE__ */ jsx39(MenuSearchField, { label: "", value: search, placeholder: "Search...", labelStyle: "inline", onChange: setSearch, ...tid }),
11826
+ /* @__PURE__ */ jsx39("ul", { className: "p_0 m_0 listNone ol_0", ...menuProps, ref: menuRef, ...tid.menu, children: [...state.collection].map((item) => /* @__PURE__ */ jsx39(MenuSectionImpl, { section: item, state, onClose, ...tid }, item.key)) })
11801
11827
  ]
11802
11828
  }
11803
11829
  ) });
@@ -11811,7 +11837,7 @@ import { useOverlayPosition } from "react-aria";
11811
11837
  import { useMemo as useMemo9 } from "react";
11812
11838
  import { useButton as useButton2, useFocusRing as useFocusRing3, useHover as useHover6 } from "react-aria";
11813
11839
  import { trussProps as trussProps26, mergeProps as mergeProps10 } from "@homebound/truss/runtime";
11814
- import { Fragment as Fragment14, jsx as jsx39, jsxs as jsxs22 } from "react/jsx-runtime";
11840
+ import { Fragment as Fragment14, jsx as jsx40, jsxs as jsxs22 } from "react/jsx-runtime";
11815
11841
  function AvatarButton(props) {
11816
11842
  const {
11817
11843
  onClick: onPress,
@@ -11870,8 +11896,8 @@ function AvatarButton(props) {
11870
11896
  ...mergeProps10(typeof onPress === "string" ? navLink : void 0, void 0, styles)
11871
11897
  };
11872
11898
  const content2 = /* @__PURE__ */ jsxs22(Fragment14, { children: [
11873
- /* @__PURE__ */ jsx39(Avatar, { ...avatarProps, ...tid, preventTooltip: true }),
11874
- isPressed && /* @__PURE__ */ jsx39("span", { ...trussProps26(pressedOverlayCss) })
11899
+ /* @__PURE__ */ jsx40(Avatar, { ...avatarProps, ...tid, preventTooltip: true }),
11900
+ isPressed && /* @__PURE__ */ jsx40("span", { ...trussProps26(pressedOverlayCss) })
11875
11901
  ] });
11876
11902
  return maybeTooltip({
11877
11903
  title: resolveTooltip(disabled, tooltip ?? (preventTooltip ? void 0 : avatarProps.name)),
@@ -11913,7 +11939,7 @@ var pressedOverlayCss = {
11913
11939
  import { useMemo as useMemo10, useState as useState14 } from "react";
11914
11940
  import { useButton as useButton3, useFocusRing as useFocusRing4, useHover as useHover7 } from "react-aria";
11915
11941
  import { mergeProps as mergeProps11, maybeCssVar as maybeCssVar18 } from "@homebound/truss/runtime";
11916
- import { Fragment as Fragment15, jsx as jsx40, jsxs as jsxs23 } from "react/jsx-runtime";
11942
+ import { Fragment as Fragment15, jsx as jsx41, jsxs as jsxs23 } from "react/jsx-runtime";
11917
11943
  function Button(props) {
11918
11944
  const {
11919
11945
  onClick: onPress,
@@ -11980,9 +12006,9 @@ function Button(props) {
11980
12006
  focusStyles: focusStyles2
11981
12007
  } = useMemo10(() => getButtonStyles(variant, size, colorScheme), [variant, size, colorScheme]);
11982
12008
  const buttonContent = /* @__PURE__ */ jsxs23(Fragment15, { children: [
11983
- icon && /* @__PURE__ */ jsx40(Icon, { xss: iconStyles[size], icon }),
12009
+ icon && /* @__PURE__ */ jsx41(Icon, { xss: iconStyles[size], icon }),
11984
12010
  labelInFlight && asyncInProgress ? labelInFlight : label,
11985
- (endAdornment || asyncInProgress) && /* @__PURE__ */ jsx40("span", { className: "ml1", children: asyncInProgress ? /* @__PURE__ */ jsx40(Loader, { size: "xs" }) : endAdornment })
12011
+ (endAdornment || asyncInProgress) && /* @__PURE__ */ jsx41("span", { className: "ml1", children: asyncInProgress ? /* @__PURE__ */ jsx41(Loader, { size: "xs" }) : endAdornment })
11986
12012
  ] });
11987
12013
  const buttonAttrs = {
11988
12014
  ref,
@@ -12499,7 +12525,7 @@ var iconStyles = {
12499
12525
  // src/components/internal/Popover.tsx
12500
12526
  import "react";
12501
12527
  import { DismissButton, OverlayContainer, useOverlay } from "react-aria";
12502
- import { jsx as jsx41, jsxs as jsxs24 } from "react/jsx-runtime";
12528
+ import { jsx as jsx42, jsxs as jsxs24 } from "react/jsx-runtime";
12503
12529
  function Popover(props) {
12504
12530
  const { triggerRef, popoverRef, positionProps, children, onClose, isOpen: isOpen2, ...others } = props;
12505
12531
  const contrastScopeActive = useContrastScope();
@@ -12518,7 +12544,7 @@ function Popover(props) {
12518
12544
  },
12519
12545
  popoverRef
12520
12546
  );
12521
- return /* @__PURE__ */ jsx41(OverlayContainer, { children: /* @__PURE__ */ jsxs24(
12547
+ return /* @__PURE__ */ jsx42(OverlayContainer, { children: /* @__PURE__ */ jsxs24(
12522
12548
  "div",
12523
12549
  {
12524
12550
  ...{ ...overlayProps, ...positionProps },
@@ -12526,7 +12552,7 @@ function Popover(props) {
12526
12552
  "data-theme": contrastScopeActive ? contrastDataTheme : void 0,
12527
12553
  children: [
12528
12554
  children,
12529
- /* @__PURE__ */ jsx41(DismissButton, { onDismiss: () => onClose() })
12555
+ /* @__PURE__ */ jsx42(DismissButton, { onDismiss: () => onClose() })
12530
12556
  ]
12531
12557
  }
12532
12558
  ) });
@@ -12536,7 +12562,7 @@ function Popover(props) {
12536
12562
  import { useMemo as useMemo11 } from "react";
12537
12563
  import { mergeProps as mergeProps12, useButton as useButton4, useFocusRing as useFocusRing5, useHover as useHover8, VisuallyHidden as VisuallyHidden4 } from "react-aria";
12538
12564
  import { trussProps as trussProps27 } from "@homebound/truss/runtime";
12539
- import { Fragment as Fragment16, jsx as jsx42, jsxs as jsxs25 } from "react/jsx-runtime";
12565
+ import { Fragment as Fragment16, jsx as jsx43, jsxs as jsxs25 } from "react/jsx-runtime";
12540
12566
  function NavLink(props) {
12541
12567
  const {
12542
12568
  disabled: isDisabled,
@@ -12555,7 +12581,7 @@ function NavLink(props) {
12555
12581
  } = props;
12556
12582
  const asLink = typeof onClick === "string";
12557
12583
  const isIconOnly = !!iconOnly && !!icon;
12558
- const labelContent = isIconOnly ? /* @__PURE__ */ jsx42(VisuallyHidden4, { children: label }) : label;
12584
+ const labelContent = isIconOnly ? /* @__PURE__ */ jsx43(VisuallyHidden4, { children: label }) : label;
12559
12585
  const ariaProps = {
12560
12586
  children: labelContent,
12561
12587
  isDisabled,
@@ -12619,7 +12645,7 @@ function NavLink(props) {
12619
12645
  };
12620
12646
  const linkContent = /* @__PURE__ */ jsxs25(Fragment16, { children: [
12621
12647
  labelContent,
12622
- icon && /* @__PURE__ */ jsx42("span", { className: "fs0", children: /* @__PURE__ */ jsx42(Icon, { icon }) })
12648
+ icon && /* @__PURE__ */ jsx43("span", { className: "fs0", children: /* @__PURE__ */ jsx43(Icon, { icon }) })
12623
12649
  ] });
12624
12650
  return getButtonOrLink(linkContent, onClick, mergeProps12(buttonProps, focusProps, hoverProps, linkAttributes, {
12625
12651
  className: navLink
@@ -12757,7 +12783,7 @@ var navLinkVariantStyles = {
12757
12783
  };
12758
12784
 
12759
12785
  // src/components/internal/OverlayTrigger.tsx
12760
- import { jsx as jsx43, jsxs as jsxs26 } from "react/jsx-runtime";
12786
+ import { jsx as jsx44, jsxs as jsxs26 } from "react/jsx-runtime";
12761
12787
  function OverlayTrigger(props) {
12762
12788
  const {
12763
12789
  trigger,
@@ -12805,8 +12831,8 @@ function OverlayTrigger(props) {
12805
12831
  return (
12806
12832
  // Add `line-height: 0` to prevent the Icon button and Avatar buttons from inheriting the line-height, causing them to be taller than they should.
12807
12833
  /* @__PURE__ */ jsxs26("div", { className: "dib lh_0", children: [
12808
- isTextButton(trigger) ? /* @__PURE__ */ jsx43(Button, { variant: variant ? variant : "secondary", ...trigger, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, endAdornment: !hideEndAdornment ? /* @__PURE__ */ jsx43(Icon, { icon: state.isOpen ? "chevronUp" : "chevronDown" }) : null, disabled, tooltip, onClick: wrappedMenuTriggerProps.onPress ?? noop, forceFocusStyles: showActiveBorder && state.isOpen, ...tid }) : isNavLinkButton(trigger) ? /* @__PURE__ */ jsx43(NavLink, { active: trigger.active, variant: trigger.variant, icon: trigger.icon, label: trigger.navLabel, disabled: !!disabled, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, ...tid }) : isIconButton(trigger) ? /* @__PURE__ */ jsx43(IconButton, { ...trigger, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, ...tid, disabled, tooltip, onClick: wrappedMenuTriggerProps.onPress ?? noop, forceFocusStyles: showActiveBorder && state.isOpen }) : /* @__PURE__ */ jsx43(AvatarButton, { ...trigger, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, ...tid, disabled, tooltip, onClick: wrappedMenuTriggerProps.onPress ?? noop, forceFocusStyles: showActiveBorder && state.isOpen }),
12809
- state.isOpen && /* @__PURE__ */ jsx43(Popover, { triggerRef: buttonRef, popoverRef, positionProps, onClose: () => state.close(), isOpen: state.isOpen, children })
12834
+ isTextButton(trigger) ? /* @__PURE__ */ jsx44(Button, { variant: variant ? variant : "secondary", ...trigger, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, endAdornment: !hideEndAdornment ? /* @__PURE__ */ jsx44(Icon, { icon: state.isOpen ? "chevronUp" : "chevronDown" }) : null, disabled, tooltip, onClick: wrappedMenuTriggerProps.onPress ?? noop, forceFocusStyles: showActiveBorder && state.isOpen, ...tid }) : isNavLinkButton(trigger) ? /* @__PURE__ */ jsx44(NavLink, { active: trigger.active, variant: trigger.variant, icon: trigger.icon, label: trigger.navLabel, disabled: !!disabled, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, ...tid }) : isIconButton(trigger) ? /* @__PURE__ */ jsx44(IconButton, { ...trigger, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, ...tid, disabled, tooltip, onClick: wrappedMenuTriggerProps.onPress ?? noop, forceFocusStyles: showActiveBorder && state.isOpen }) : /* @__PURE__ */ jsx44(AvatarButton, { ...trigger, menuTriggerProps: wrappedMenuTriggerProps, buttonRef, ...tid, disabled, tooltip, onClick: wrappedMenuTriggerProps.onPress ?? noop, forceFocusStyles: showActiveBorder && state.isOpen }),
12835
+ state.isOpen && /* @__PURE__ */ jsx44(Popover, { triggerRef: buttonRef, popoverRef, positionProps, onClose: () => state.close(), isOpen: state.isOpen, children })
12810
12836
  ] })
12811
12837
  );
12812
12838
  }
@@ -12824,7 +12850,7 @@ function labelOr(trigger, fallback) {
12824
12850
  }
12825
12851
 
12826
12852
  // src/components/ButtonMenu.tsx
12827
- import { jsx as jsx44 } from "react/jsx-runtime";
12853
+ import { jsx as jsx45 } from "react/jsx-runtime";
12828
12854
  function ButtonMenu(props) {
12829
12855
  const { defaultOpen, disabled, items, persistentItems, trigger, searchable, header } = props;
12830
12856
  let selectedItem, onChange;
@@ -12839,7 +12865,7 @@ function ButtonMenu(props) {
12839
12865
  props,
12840
12866
  isTextButton(trigger) ? labelOr(trigger, "buttonMenu") : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
12841
12867
  );
12842
- return /* @__PURE__ */ jsx44(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx44(
12868
+ return /* @__PURE__ */ jsx45(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx45(
12843
12869
  Menu,
12844
12870
  {
12845
12871
  ariaMenuProps: menuProps,
@@ -12862,7 +12888,7 @@ function isSelectionButtonMenuProps(props) {
12862
12888
  import { useResizeObserver as useResizeObserver3 } from "@react-aria/utils";
12863
12889
  import { useRef as useRef19, useState as useState15 } from "react";
12864
12890
  import { trussProps as trussProps28 } from "@homebound/truss/runtime";
12865
- import { jsx as jsx45, jsxs as jsxs27 } from "react/jsx-runtime";
12891
+ import { jsx as jsx46, jsxs as jsxs27 } from "react/jsx-runtime";
12866
12892
  function Tag(props) {
12867
12893
  const {
12868
12894
  text,
@@ -12919,13 +12945,13 @@ function Tag(props) {
12919
12945
  } : {},
12920
12946
  ...xss
12921
12947
  }), children: [
12922
- icon && /* @__PURE__ */ jsx45("span", { className: "fs0", children: /* @__PURE__ */ jsx45(Icon, { icon, inc: isAiStar ? 2.5 : 1.75, xss: isAiStar ? {
12948
+ icon && /* @__PURE__ */ jsx46("span", { className: "fs0", children: /* @__PURE__ */ jsx46(Icon, { icon, inc: isAiStar ? 2.5 : 1.75, xss: isAiStar ? {
12923
12949
  marginTop: "mt_neg3px",
12924
12950
  marginBottom: "mb_neg3px",
12925
12951
  marginRight: "mr_neg3px",
12926
12952
  marginLeft: "ml_neg3px"
12927
12953
  } : {}, color: iconColor }) }),
12928
- isIconOnly ? /* @__PURE__ */ jsx45("span", { className: "absolute oh cli_inset_50 clp_none bd_0 h_1px m_neg1px w_1px p_0 wsnw o0", children: text }) : /* @__PURE__ */ jsx45("span", { ref, ...trussProps28({
12954
+ isIconOnly ? /* @__PURE__ */ jsx46("span", { className: "absolute oh cli_inset_50 clp_none bd_0 h_1px m_neg1px w_1px p_0 wsnw o0", children: text }) : /* @__PURE__ */ jsx46("span", { ref, ...trussProps28({
12929
12955
  overflow: "oh",
12930
12956
  display: "d_negwebkit_box",
12931
12957
  WebkitBoxOrient: "wbo_vertical",
@@ -13043,7 +13069,7 @@ function getPrimaryStyles(type) {
13043
13069
 
13044
13070
  // src/components/BaseCard.tsx
13045
13071
  import { trussProps as trussProps29, maybeCssVar as maybeCssVar19 } from "@homebound/truss/runtime";
13046
- import { Fragment as Fragment17, jsx as jsx46, jsxs as jsxs28 } from "react/jsx-runtime";
13072
+ import { Fragment as Fragment17, jsx as jsx47, jsxs as jsxs28 } from "react/jsx-runtime";
13047
13073
  function BaseCard(props) {
13048
13074
  const {
13049
13075
  imgSrc,
@@ -13090,16 +13116,16 @@ function BaseCard(props) {
13090
13116
  }]
13091
13117
  }
13092
13118
  }), ...tid.hero, children: [
13093
- /* @__PURE__ */ jsx46("img", { ...trussProps29({
13119
+ /* @__PURE__ */ jsx47("img", { ...trussProps29({
13094
13120
  height: "h100",
13095
13121
  width: "w100",
13096
13122
  objectFit: ["objectFit_var", {
13097
13123
  "--objectFit": maybeCssVar19(imageFit)
13098
13124
  }]
13099
13125
  }), src: imgSrc, alt: imgAlt, "aria-hidden": imgAlt === "" || void 0, loading: "lazy", ...tid.image }),
13100
- tag && /* @__PURE__ */ jsx46("div", { className: "absolute top1 l_1 df", ...tid.tag, children: /* @__PURE__ */ jsx46(Tag, { ...tag }) })
13126
+ tag && /* @__PURE__ */ jsx47("div", { className: "absolute top1 l_1 df", ...tid.tag, children: /* @__PURE__ */ jsx47(Tag, { ...tag }) })
13101
13127
  ] }),
13102
- /* @__PURE__ */ jsx46("div", { ...trussProps29({
13128
+ /* @__PURE__ */ jsx47("div", { ...trussProps29({
13103
13129
  display: "df",
13104
13130
  flexDirection: "fdc",
13105
13131
  flexGrow: "fg1",
@@ -13156,9 +13182,9 @@ function BaseCard(props) {
13156
13182
  }]
13157
13183
  } : {}
13158
13184
  }), ...tid, children: [
13159
- onClick ? getButtonOrLink(content2, onClick, actionAttrs) : /* @__PURE__ */ jsx46("div", { ...trussProps29(contentStyles), children: content2 }),
13160
- action && /* @__PURE__ */ jsx46("div", { className: "absolute top2 r_2", ...tid.heroAction, children: "items" in action ? /* @__PURE__ */ jsx46(ButtonMenu, { ...action }) : /* @__PURE__ */ jsx46(IconButton, { ...action }) }),
13161
- footer && /* @__PURE__ */ jsx46("div", { ...tid.footer, children: footer })
13185
+ onClick ? getButtonOrLink(content2, onClick, actionAttrs) : /* @__PURE__ */ jsx47("div", { ...trussProps29(contentStyles), children: content2 }),
13186
+ action && /* @__PURE__ */ jsx47("div", { className: "absolute top2 r_2", ...tid.heroAction, children: "items" in action ? /* @__PURE__ */ jsx47(ButtonMenu, { ...action }) : /* @__PURE__ */ jsx47(IconButton, { ...action }) }),
13187
+ footer && /* @__PURE__ */ jsx47("div", { ...tid.footer, children: footer })
13162
13188
  ] });
13163
13189
  }
13164
13190
  var heroHeight = 184;
@@ -13184,7 +13210,7 @@ var contentStyles = {
13184
13210
  // src/components/CardBody.tsx
13185
13211
  import { useMemo as useMemo13 } from "react";
13186
13212
  import { trussProps as trussProps30, maybeCssVar as maybeCssVar20 } from "@homebound/truss/runtime";
13187
- import { jsx as jsx47, jsxs as jsxs29 } from "react/jsx-runtime";
13213
+ import { jsx as jsx48, jsxs as jsxs29 } from "react/jsx-runtime";
13188
13214
  var __maybeInc11 = (inc) => {
13189
13215
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
13190
13216
  };
@@ -13218,11 +13244,11 @@ function CardBody(props) {
13218
13244
  "--color": "var(--b-on-surface)"
13219
13245
  }]
13220
13246
  }), ...tid.eyebrow, children: [
13221
- /* @__PURE__ */ jsx47("span", { className: "wsnw oh to_ellipsis", ...tid.leftEyebrow, children: renderMaybeProposed(leftEyebrow, tid.leftEyebrowProposal) }),
13222
- rightEyebrow && /* @__PURE__ */ jsx47("span", { className: "fs0", ...tid.rightEyebrow, children: renderMaybeProposed(rightEyebrow, tid.rightEyebrowProposal) })
13247
+ /* @__PURE__ */ jsx48("span", { className: "wsnw oh to_ellipsis", ...tid.leftEyebrow, children: renderMaybeProposed(leftEyebrow, tid.leftEyebrowProposal) }),
13248
+ rightEyebrow && /* @__PURE__ */ jsx48("span", { className: "fs0", ...tid.rightEyebrow, children: renderMaybeProposed(rightEyebrow, tid.rightEyebrowProposal) })
13223
13249
  ] }),
13224
13250
  /* @__PURE__ */ jsxs29("div", { className: "dif w100 jcsb aic", children: [
13225
- /* @__PURE__ */ jsx47("h4", { ...trussProps30({
13251
+ /* @__PURE__ */ jsx48("h4", { ...trussProps30({
13226
13252
  fontWeight: "fw6",
13227
13253
  fontSize: "fz_20px",
13228
13254
  lineHeight: "lh_28px",
@@ -13236,37 +13262,37 @@ function CardBody(props) {
13236
13262
  }]
13237
13263
  }), ...tid.title, children: renderMaybeProposed(title, tid.titleProposal) }),
13238
13264
  (badge || badgeTags?.length) && /* @__PURE__ */ jsxs29("div", { className: "dif aic g_1 fs0", ...tid.badge, children: [
13239
- badge && /* @__PURE__ */ jsx47("span", { className: "fw4 fz_14px lh_20px wsnw", children: badge }),
13240
- badgeTags?.map((tag) => /* @__PURE__ */ jsx47(Tag, { ...tag }, tag.text))
13265
+ badge && /* @__PURE__ */ jsx48("span", { className: "fw4 fz_14px lh_20px wsnw", children: badge }),
13266
+ badgeTags?.map((tag) => /* @__PURE__ */ jsx48(Tag, { ...tag }, tag.text))
13241
13267
  ] })
13242
13268
  ] })
13243
13269
  ] }),
13244
13270
  hasDetails && /* @__PURE__ */ jsxs29("div", { className: "df fdc g_2 mta", children: [
13245
13271
  data.length > 0 && /* @__PURE__ */ jsxs29("dl", { className: "df g_2 fw4 fz_14px lh_20px", children: [
13246
- /* @__PURE__ */ jsx47("div", { className: "df fdc fg1 fb2 mw0", children: col1.map((d) => /* @__PURE__ */ jsxs29("div", { className: "df g_4px", ...tid[defaultTestId(d.label)], children: [
13272
+ /* @__PURE__ */ jsx48("div", { className: "df fdc fg1 fb2 mw0", children: col1.map((d) => /* @__PURE__ */ jsxs29("div", { className: "df g_4px", ...tid[defaultTestId(d.label)], children: [
13247
13273
  /* @__PURE__ */ jsxs29("dt", { className: "fs0", children: [
13248
13274
  d.label,
13249
13275
  ":"
13250
13276
  ] }),
13251
- /* @__PURE__ */ jsx47("dd", { className: "mw0", children: d.value })
13277
+ /* @__PURE__ */ jsx48("dd", { className: "mw0", children: d.value })
13252
13278
  ] }, d.label)) }),
13253
- /* @__PURE__ */ jsx47("div", { className: "df fdc fg1 fb2 mw0", children: col2.map((d) => /* @__PURE__ */ jsxs29("div", { className: "df g_4px", ...tid[defaultTestId(d.label)], children: [
13279
+ /* @__PURE__ */ jsx48("div", { className: "df fdc fg1 fb2 mw0", children: col2.map((d) => /* @__PURE__ */ jsxs29("div", { className: "df g_4px", ...tid[defaultTestId(d.label)], children: [
13254
13280
  /* @__PURE__ */ jsxs29("dt", { className: "fs0", children: [
13255
13281
  d.label,
13256
13282
  ":"
13257
13283
  ] }),
13258
- /* @__PURE__ */ jsx47("dd", { className: "mw0", children: d.value })
13284
+ /* @__PURE__ */ jsx48("dd", { className: "mw0", children: d.value })
13259
13285
  ] }, d.label)) })
13260
13286
  ] }),
13261
13287
  progress !== void 0 && /* @__PURE__ */ jsxs29("div", { className: "df aic g_1 fs_10px lh_14px", children: [
13262
- /* @__PURE__ */ jsx47("div", { ...trussProps30({
13288
+ /* @__PURE__ */ jsx48("div", { ...trussProps30({
13263
13289
  width: "w25",
13264
13290
  height: "h_8px",
13265
13291
  borderRadius: "br4",
13266
13292
  backgroundColor: ["bgColor_var", {
13267
13293
  "--backgroundColor": maybeCssVar20(aiMode ? "rgba(221, 214, 254, 1)" /* Purple200 */ : "--b-surface-subtle" /* SurfaceSubtle */)
13268
13294
  }]
13269
- }), ...tid.progressTrack, children: /* @__PURE__ */ jsx47("div", { ...trussProps30({
13295
+ }), ...tid.progressTrack, children: /* @__PURE__ */ jsx48("div", { ...trussProps30({
13270
13296
  height: "h100",
13271
13297
  borderRadius: "br4",
13272
13298
  backgroundColor: "bgBlue500",
@@ -13284,7 +13310,7 @@ function CardBody(props) {
13284
13310
  ] });
13285
13311
  }
13286
13312
  function renderMaybeProposed(value, tid) {
13287
- return typeof value === "string" || value === void 0 ? value : /* @__PURE__ */ jsx47(ProposedValue, { ...value, ...tid });
13313
+ return typeof value === "string" || value === void 0 ? value : /* @__PURE__ */ jsx48(ProposedValue, { ...value, ...tid });
13288
13314
  }
13289
13315
  function clampProgress(value) {
13290
13316
  if (process.env.NODE_ENV !== "production" && (value < 0 || value > 100)) {
@@ -13297,7 +13323,7 @@ function clampProgress(value) {
13297
13323
  import { useResizeObserver as useResizeObserver4 } from "@react-aria/utils";
13298
13324
  import { Children, useCallback as useCallback11, useLayoutEffect as useLayoutEffect3, useRef as useRef20, useState as useState16 } from "react";
13299
13325
  import { trussProps as trussProps31, maybeCssVar as maybeCssVar21 } from "@homebound/truss/runtime";
13300
- import { jsx as jsx48, jsxs as jsxs30 } from "react/jsx-runtime";
13326
+ import { jsx as jsx49, jsxs as jsxs30 } from "react/jsx-runtime";
13301
13327
  function Carousel(props) {
13302
13328
  const {
13303
13329
  children,
@@ -13349,8 +13375,8 @@ function Carousel(props) {
13349
13375
  return (
13350
13376
  // The chevrons overlay the strip's edges, rather than taking a gutter that sits empty whenever they are hidden.
13351
13377
  /* @__PURE__ */ jsxs30("div", { className: "df aic relative", ...tid, children: [
13352
- /* @__PURE__ */ jsx48(ScrollButton, { direction: "back", label: prevLabel, inc: chevronInc, visible: canScrollBack, onClick: () => scrollByPage(-1), ...tid.prev }),
13353
- /* @__PURE__ */ jsx48("div", { ref: stripRef, ...trussProps31({
13378
+ /* @__PURE__ */ jsx49(ScrollButton, { direction: "back", label: prevLabel, inc: chevronInc, visible: canScrollBack, onClick: () => scrollByPage(-1), ...tid.prev }),
13379
+ /* @__PURE__ */ jsx49("div", { ref: stripRef, ...trussProps31({
13354
13380
  display: "df",
13355
13381
  flexGrow: "fg1",
13356
13382
  minWidth: "mw0",
@@ -13372,8 +13398,8 @@ function Carousel(props) {
13372
13398
  maskImage: ["maskImage_var", {
13373
13399
  "--maskImage": maybeCssVar21(maskImage)
13374
13400
  }]
13375
- }), ...tid.items, children: Children.map(children, (child) => /* @__PURE__ */ jsx48("div", { className: "fs0 ssa_start", children: child })) }),
13376
- /* @__PURE__ */ jsx48(ScrollButton, { direction: "forward", label: nextLabel, inc: chevronInc, visible: canScrollForward, onClick: () => scrollByPage(1), ...tid.next })
13401
+ }), ...tid.items, children: Children.map(children, (child) => /* @__PURE__ */ jsx49("div", { className: "fs0 ssa_start", children: child })) }),
13402
+ /* @__PURE__ */ jsx49(ScrollButton, { direction: "forward", label: nextLabel, inc: chevronInc, visible: canScrollForward, onClick: () => scrollByPage(1), ...tid.next })
13377
13403
  ] })
13378
13404
  );
13379
13405
  }
@@ -13391,7 +13417,7 @@ function ScrollButton(props) {
13391
13417
  } = chevronSizes(inc);
13392
13418
  const back = direction === "back";
13393
13419
  if (!visible) return null;
13394
- return /* @__PURE__ */ jsx48("button", { type: "button", "aria-label": label, onClick, ...trussProps31({
13420
+ return /* @__PURE__ */ jsx49("button", { type: "button", "aria-label": label, onClick, ...trussProps31({
13395
13421
  position: "absolute",
13396
13422
  top: "top0",
13397
13423
  bottom: "bot_0",
@@ -13420,7 +13446,7 @@ function ScrollButton(props) {
13420
13446
  right: "r_0"
13421
13447
  },
13422
13448
  boxShadow: "fv_bshFocus"
13423
- }), ...others, children: /* @__PURE__ */ jsx48(Icon, { icon: back ? "chevronLeft" : "chevronRight", inc, color: "--b-on-surface" /* OnSurface */ }) });
13449
+ }), ...others, children: /* @__PURE__ */ jsx49(Icon, { icon: back ? "chevronLeft" : "chevronRight", inc, color: "--b-on-surface" /* OnSurface */ }) });
13424
13450
  }
13425
13451
  function chevronSizes(inc) {
13426
13452
  const iconSize = increment(inc);
@@ -13436,7 +13462,7 @@ function chevronSizes(inc) {
13436
13462
 
13437
13463
  // src/components/Table/components/TableCard.tsx
13438
13464
  import { mergeProps as mergeProps13 } from "@homebound/truss/runtime";
13439
- import { Fragment as Fragment18, jsx as jsx49, jsxs as jsxs31 } from "react/jsx-runtime";
13465
+ import { Fragment as Fragment18, jsx as jsx50, jsxs as jsxs31 } from "react/jsx-runtime";
13440
13466
  function TableCardImpl(props) {
13441
13467
  const {
13442
13468
  rs,
@@ -13494,7 +13520,7 @@ function TableCardImpl(props) {
13494
13520
  }
13495
13521
  if (!title) return null;
13496
13522
  const onClick = rowStyle?.onClick;
13497
- return /* @__PURE__ */ jsx49(TableCardView, { ...tid, imgSrc: rs.row.imgSrc ?? "", title, leftEyebrow, rightEyebrow, badge, badgeTags, status, data: dataBlocks, progress, interactiveFooter, to: rowStyle?.rowLink?.(rs.row), onClick: onClick ? () => onClick(rs.row, api) : void 0, height, imageFit, aiMode: rs.aiMode });
13523
+ return /* @__PURE__ */ jsx50(TableCardView, { ...tid, imgSrc: rs.row.imgSrc ?? "", title, leftEyebrow, rightEyebrow, badge, badgeTags, status, data: dataBlocks, progress, interactiveFooter, to: rowStyle?.rowLink?.(rs.row), onClick: onClick ? () => onClick(rs.row, api) : void 0, height, imageFit, aiMode: rs.aiMode });
13498
13524
  }
13499
13525
  var TableCard = observer3(TableCardImpl);
13500
13526
  function TableCardView(props) {
@@ -13519,7 +13545,7 @@ function TableCardView(props) {
13519
13545
  const titleText = typeof title === "string" ? title : title.proposed;
13520
13546
  const shownFooter = shownInteractiveFooter(interactiveFooter);
13521
13547
  const action = to || onClick;
13522
- return /* @__PURE__ */ jsx49(BaseCard, { ...tid, imgSrc, imgAlt: titleText, imageFit, tag: status, onClick: action, height, aiMode, footer: shownFooter && /* @__PURE__ */ jsx49("div", { className: "df fdc g_2 pl3 pr3 pb3 pt2", ...tid.interactiveFooter, children: /* @__PURE__ */ jsx49(InteractiveFooter, { footer: shownFooter, tid }) }), children: /* @__PURE__ */ jsx49(CardBody, { ...tid, title, leftEyebrow, rightEyebrow, badge, badgeTags, data, progress, aiMode }) });
13548
+ return /* @__PURE__ */ jsx50(BaseCard, { ...tid, imgSrc, imgAlt: titleText, imageFit, tag: status, onClick: action, height, aiMode, footer: shownFooter && /* @__PURE__ */ jsx50("div", { className: "df fdc g_2 pl3 pr3 pb3 pt2", ...tid.interactiveFooter, children: /* @__PURE__ */ jsx50(InteractiveFooter, { footer: shownFooter, tid }) }), children: /* @__PURE__ */ jsx50(CardBody, { ...tid, title, leftEyebrow, rightEyebrow, badge, badgeTags, data, progress, aiMode }) });
13523
13549
  }
13524
13550
  function InteractiveFooter(props) {
13525
13551
  const {
@@ -13528,7 +13554,7 @@ function InteractiveFooter(props) {
13528
13554
  } = props;
13529
13555
  switch (footer.kind) {
13530
13556
  case "carousel":
13531
- return /* @__PURE__ */ jsx49(CarouselFooter, { footer, tid });
13557
+ return /* @__PURE__ */ jsx50(CarouselFooter, { footer, tid });
13532
13558
  }
13533
13559
  }
13534
13560
  function CarouselFooter(props) {
@@ -13537,8 +13563,8 @@ function CarouselFooter(props) {
13537
13563
  tid
13538
13564
  } = props;
13539
13565
  return /* @__PURE__ */ jsxs31(Fragment18, { children: [
13540
- /* @__PURE__ */ jsx49("div", { className: "fw4 fz_14px lh_20px", ...tid.carouselTitle, children: footer.title }),
13541
- /* @__PURE__ */ jsx49(Carousel, { ...tid.carousel, children: footer.thumbnails.map((item) => /* @__PURE__ */ jsx49(Thumbnail, { item, tid: tid.carousel_item }, item.id)) })
13566
+ /* @__PURE__ */ jsx50("div", { className: "fw4 fz_14px lh_20px", ...tid.carouselTitle, children: footer.title }),
13567
+ /* @__PURE__ */ jsx50(Carousel, { ...tid.carousel, children: footer.thumbnails.map((item) => /* @__PURE__ */ jsx50(Thumbnail, { item, tid: tid.carousel_item }, item.id)) })
13542
13568
  ] });
13543
13569
  }
13544
13570
  function shownInteractiveFooter(footer) {
@@ -13553,7 +13579,7 @@ function Thumbnail(props) {
13553
13579
  item,
13554
13580
  tid
13555
13581
  } = props;
13556
- return /* @__PURE__ */ jsx49(Tooltip, { title: item.label, placement: "top", children: /* @__PURE__ */ jsx49(Link4, { to: item.to, "aria-label": item.label, ...tid, ...mergeProps13(navLink, void 0, {
13582
+ return /* @__PURE__ */ jsx50(Tooltip, { title: item.label, placement: "top", children: /* @__PURE__ */ jsx50(Link4, { to: item.to, "aria-label": item.label, ...tid, ...mergeProps13(navLink, void 0, {
13557
13583
  position: "relative after_a_absolute",
13558
13584
  display: "db",
13559
13585
  flexShrink: "fs0",
@@ -13571,12 +13597,12 @@ function Thumbnail(props) {
13571
13597
  left: "after_a_l_0",
13572
13598
  opacity: "after_a_o_0_28",
13573
13599
  pointerEvents: "after_a_pen"
13574
- }), children: /* @__PURE__ */ jsx49("span", { className: "db w100 h100 oh br8", children: /* @__PURE__ */ jsx49("img", { className: "w100 h100 obf_cover db", src: item.imgUrl, alt: "", loading: "lazy" }) }) }) });
13600
+ }), children: /* @__PURE__ */ jsx50("span", { className: "db w100 h100 oh br8", children: /* @__PURE__ */ jsx50("img", { className: "w100 h100 obf_cover db", src: item.imgUrl, alt: "", loading: "lazy" }) }) }) });
13575
13601
  }
13576
13602
 
13577
13603
  // src/components/Table/GridTableEmptyState.tsx
13578
13604
  import { trussProps as trussProps32 } from "@homebound/truss/runtime";
13579
- import { jsx as jsx50, jsxs as jsxs32 } from "react/jsx-runtime";
13605
+ import { jsx as jsx51, jsxs as jsxs32 } from "react/jsx-runtime";
13580
13606
  function GridTableEmptyState(props) {
13581
13607
  const {
13582
13608
  title = "No results found",
@@ -13585,8 +13611,8 @@ function GridTableEmptyState(props) {
13585
13611
  } = props;
13586
13612
  const tid = useTestIds(props, "gridTableEmptyState");
13587
13613
  return /* @__PURE__ */ jsxs32("div", { className: "df fdc aic pt_12 pb_12 g_2", ...tid, children: [
13588
- /* @__PURE__ */ jsx50("div", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }),
13589
- description && /* @__PURE__ */ jsx50("div", { ...trussProps32({
13614
+ /* @__PURE__ */ jsx51("div", { className: "fw6 fz_20px lh_28px", ...tid.title, children: title }),
13615
+ description && /* @__PURE__ */ jsx51("div", { ...trussProps32({
13590
13616
  fontWeight: "fw4",
13591
13617
  fontSize: "fz_14px",
13592
13618
  lineHeight: "lh_20px",
@@ -13594,13 +13620,13 @@ function GridTableEmptyState(props) {
13594
13620
  "--color": "var(--b-on-surface-muted)"
13595
13621
  }]
13596
13622
  }), ...tid.description, children: description }),
13597
- actions && /* @__PURE__ */ jsx50("div", { ...tid.actions, children: actions })
13623
+ actions && /* @__PURE__ */ jsx51("div", { ...tid.actions, children: actions })
13598
13624
  ] });
13599
13625
  }
13600
13626
 
13601
13627
  // src/components/Table/GridTable.tsx
13602
13628
  import { trussProps as trussProps33, mergeProps as mergeProps14, maybeCssVar as maybeCssVar22 } from "@homebound/truss/runtime";
13603
- import { jsx as jsx51, jsxs as jsxs33 } from "react/jsx-runtime";
13629
+ import { jsx as jsx52, jsxs as jsxs33 } from "react/jsx-runtime";
13604
13630
  import { createElement } from "react";
13605
13631
  var __maybeInc12 = (inc) => {
13606
13632
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
@@ -13655,13 +13681,15 @@ function GridTable(props) {
13655
13681
  cardImageFit
13656
13682
  } = props;
13657
13683
  const inDocumentScrollLayout = useDocumentScrollLayout();
13684
+ const insetHandled = useContentInsetHandled();
13685
+ const withGutters = columnGutter && inDocumentScrollLayout && !insetHandled;
13658
13686
  const tid = useTestIds({
13659
13687
  "data-testid": id
13660
13688
  }, "gridTable");
13661
13689
  const columnsWithIds = useMemo14(() => {
13662
- const columns2 = columnGutter && inDocumentScrollLayout ? withColumnGutters(_columns) : _columns;
13690
+ const columns2 = withGutters ? withColumnGutters(_columns) : _columns;
13663
13691
  return assignDefaultColumnIds(columns2);
13664
- }, [_columns, columnGutter, inDocumentScrollLayout]);
13692
+ }, [_columns, withGutters]);
13665
13693
  const virtuosoRef = useRef21(null);
13666
13694
  const virtuosoRangeRef = useRef21(null);
13667
13695
  const resizeRef = useRef21(null);
@@ -13685,7 +13713,7 @@ function GridTable(props) {
13685
13713
  draggedRowRef.current = row;
13686
13714
  _setDraggedRow(row);
13687
13715
  };
13688
- const style = resolveStyles(maybeStyle);
13716
+ const style = resolveStyles(maybeStyle, insetHandled, inDocumentScrollLayout);
13689
13717
  const {
13690
13718
  tableState
13691
13719
  } = api;
@@ -13800,7 +13828,7 @@ function GridTable(props) {
13800
13828
  };
13801
13829
  const [tableHeadRows, visibleDataRows, keptSelectedRows, pinnedRows, tooManyClientSideRows] = useComputed(() => {
13802
13830
  if (as === "card") {
13803
- const cardElements = tableState.visibleRows.filter((rs) => ![HEADER, EXPANDABLE_HEADER, TOTALS, KEPT_GROUP].includes(rs.kind)).map((rs) => /* @__PURE__ */ jsx51(TableCard, { rs, columns, rowStyle: rowStyles?.[rs.row.kind], api: tableState.api, height: cardHeight, imageFit: cardImageFit }, rs.key));
13831
+ const cardElements = tableState.visibleRows.filter((rs) => ![HEADER, EXPANDABLE_HEADER, TOTALS, KEPT_GROUP].includes(rs.kind)).map((rs) => /* @__PURE__ */ jsx52(TableCard, { rs, columns, rowStyle: rowStyles?.[rs.row.kind], api: tableState.api, height: cardHeight, imageFit: cardImageFit }, rs.key));
13804
13832
  return [[], cardElements, [], [], false];
13805
13833
  }
13806
13834
  const headerRows = [];
@@ -13814,7 +13842,7 @@ function GridTable(props) {
13814
13842
  const hasExpandableHeader = visibleRows.some((rs) => rs.row.id === EXPANDABLE_HEADER);
13815
13843
  const omitRowHover = "rowHover" in maybeStyle && maybeStyle.rowHover === false;
13816
13844
  const isHeadKind = (kind) => [HEADER, EXPANDABLE_HEADER, TOTALS].includes(kind);
13817
- const makeRow = (rs, isFirstHeadRow, isFirstBodyRow, isLastBodyRow, hasTrailingCompanion) => /* @__PURE__ */ jsx51(Row, { onDragStart, onDragOver, onDragEnd, onDrop, onDragEnter, ...{
13845
+ const makeRow = (rs, isFirstHeadRow, isFirstBodyRow, isLastBodyRow, hasTrailingCompanion) => /* @__PURE__ */ jsx52(Row, { onDragStart, onDragOver, onDragEnd, onDrop, onDragEnter, ...{
13818
13846
  as,
13819
13847
  rs,
13820
13848
  style,
@@ -13836,7 +13864,7 @@ function GridTable(props) {
13836
13864
  const makeCompanionRow = (rs, resolved, isFirstBodyRow, isLastBodyRow) => {
13837
13865
  const levelStyle = style.levels && (typeof style.levels === "function" ? style.levels(rs.level) : style.levels[rs.level]);
13838
13866
  const rowStyle = rowStyles?.[rs.row.kind];
13839
- return /* @__PURE__ */ jsx51(CompanionRow, { as, style, columnSizes, rowId: rs.row.id, colSpan: columns.length, isFirstBodyRow, isLastBodyRow, position: resolved.position, companion: resolved.content, levelIndent: levelStyle?.rowIndent, rowCss: maybeApplyFunction(rs.row, rowStyle?.rowCss), cellCss: maybeApplyFunction(rs.row, rowStyle?.cellCss) }, `${rs.key}-companion`);
13867
+ return /* @__PURE__ */ jsx52(CompanionRow, { as, style, columnSizes, rowId: rs.row.id, colSpan: columns.length, isFirstBodyRow, isLastBodyRow, position: resolved.position, companion: resolved.content, levelIndent: levelStyle?.rowIndent, rowCss: maybeApplyFunction(rs.row, rowStyle?.rowCss), cellCss: maybeApplyFunction(rs.row, rowStyle?.cellCss) }, `${rs.key}-companion`);
13840
13868
  };
13841
13869
  const makeRowGroup = (rs, isFirstBodyRow, isLastBodyRow, inHead) => {
13842
13870
  const resolved = rs.companion;
@@ -13847,7 +13875,7 @@ function GridTable(props) {
13847
13875
  const rowStyle = rowStyles?.[rs.row.kind];
13848
13876
  const hasRowAction = !!(rowStyle?.rowLink || rowStyle?.onClick);
13849
13877
  const showRowHover = hasRowAction && !reservedRowKinds.includes(rs.kind) && !omitRowHover && style.rowHoverColor !== "none";
13850
- return /* @__PURE__ */ jsx51(RowGroup, { as, inHead, showRowHover, style, children }, rs.key);
13878
+ return /* @__PURE__ */ jsx52(RowGroup, { as, inHead, showRowHover, style, children }, rs.key);
13851
13879
  };
13852
13880
  const bodyRowStates = visibleRows.filter((rs) => !isHeadKind(rs.kind));
13853
13881
  const onlyKeptBodyRows = bodyRowStates.length > 0 && bodyRowStates.every((rs) => rs.isKept || rs.kind === KEPT_GROUP);
@@ -13918,12 +13946,12 @@ function GridTable(props) {
13918
13946
  };
13919
13947
  }, [contentWidth, inDocumentScrollLayout, style, tableWidth]);
13920
13948
  if (noData && emptyState && tableStateSyncedFromPropsRef.current) {
13921
- return /* @__PURE__ */ jsx51(GridTableEmptyState, { ...emptyState });
13949
+ return /* @__PURE__ */ jsx52(GridTableEmptyState, { ...emptyState });
13922
13950
  }
13923
- return /* @__PURE__ */ jsx51(TableStateContext.Provider, { value: rowStateContext, children: /* @__PURE__ */ jsxs33(PresentationProvider, { fieldProps, wrap: style?.presentationSettings?.wrap, children: [
13924
- /* @__PURE__ */ jsx51("div", { ref: resizeRef, ...trussProps33(getTableRefWidthStyles(as === "virtual", inDocumentScrollLayout)), ...tid.probe }),
13925
- loading && /* @__PURE__ */ jsx51("div", { ...trussProps33(loadingOverlayCss), ...tid.loadingOverlay, children: /* @__PURE__ */ jsx51(Loader, { ...tid.loadingSpinner }) }),
13926
- as === "card" ? /* @__PURE__ */ jsx51(CardView, { cardRows: visibleDataRows, id, virtuosoRangeRef, infiniteScroll, persistScrollPosition, loading }) : _as === "virtual" ? /* @__PURE__ */ jsx51(VirtualGridTableView, { style: tableStyle, id, columns, visibleDataRows, keptSelectedRows, pinnedRows, firstRowMessage, stickyHeader, xss, virtuosoRef, virtuosoRangeRef, tableHeadRows, stickyOffset, infiniteScroll, persistScrollPosition, loading }) : renders[_as](tableStyle, id, columns, visibleDataRows, keptSelectedRows, pinnedRows, firstRowMessage, stickyHeader, xss, virtuosoRef, virtuosoRangeRef, tableHeadRows, stickyOffset, loading, infiniteScroll, tableContainerRef, persistScrollPosition)
13951
+ return /* @__PURE__ */ jsx52(TableStateContext.Provider, { value: rowStateContext, children: /* @__PURE__ */ jsxs33(PresentationProvider, { fieldProps, wrap: style?.presentationSettings?.wrap, children: [
13952
+ /* @__PURE__ */ jsx52("div", { ref: resizeRef, ...trussProps33(getTableRefWidthStyles(as === "virtual", inDocumentScrollLayout)), ...tid.probe }),
13953
+ loading && /* @__PURE__ */ jsx52("div", { ...trussProps33(loadingOverlayCss), ...tid.loadingOverlay, children: /* @__PURE__ */ jsx52(Loader, { ...tid.loadingSpinner }) }),
13954
+ as === "card" ? /* @__PURE__ */ jsx52(CardView, { cardRows: visibleDataRows, id, virtuosoRangeRef, infiniteScroll, persistScrollPosition, loading }) : _as === "virtual" ? /* @__PURE__ */ jsx52(VirtualGridTableView, { style: tableStyle, id, columns, visibleDataRows, keptSelectedRows, pinnedRows, firstRowMessage, stickyHeader, xss, virtuosoRef, virtuosoRangeRef, tableHeadRows, stickyOffset, infiniteScroll, persistScrollPosition, loading }) : renders[_as](tableStyle, id, columns, visibleDataRows, keptSelectedRows, pinnedRows, firstRowMessage, stickyHeader, xss, virtuosoRef, virtuosoRangeRef, tableHeadRows, stickyOffset, loading, infiniteScroll, tableContainerRef, persistScrollPosition)
13927
13955
  ] }) });
13928
13956
  }
13929
13957
  var loadingOverlayCss = {
@@ -13987,7 +14015,7 @@ function renderDiv(style, id, columns, visibleDataRows, keptSelectedRows, pinned
13987
14015
  ] }),
13988
14016
  /* @__PURE__ */ jsxs33("div", { children: [
13989
14017
  keptSelectedRows,
13990
- firstRowMessage && /* @__PURE__ */ jsx51("div", { ...trussProps33({
14018
+ firstRowMessage && /* @__PURE__ */ jsx52("div", { ...trussProps33({
13991
14019
  ...keptSelectedRows.length === 0 && style.firstBodyRowCss,
13992
14020
  ...style.firstRowMessageCss,
13993
14021
  ...visibleDataRows.length === 0 && style.lastRowCss,
@@ -14031,11 +14059,11 @@ function renderTable(style, id, columns, visibleDataRows, keptSelectedRows, pinn
14031
14059
  pinnedRows
14032
14060
  ] }),
14033
14061
  keptSelectedRows,
14034
- firstRowMessage && /* @__PURE__ */ jsx51("tbody", { children: /* @__PURE__ */ jsx51("tr", { ...trussProps33({
14062
+ firstRowMessage && /* @__PURE__ */ jsx52("tbody", { children: /* @__PURE__ */ jsx52("tr", { ...trussProps33({
14035
14063
  ...tableRowPrintBreakCss,
14036
14064
  ...keptSelectedRows.length === 0 && style.firstBodyRowCss,
14037
14065
  ...visibleDataRows.length === 0 && style.lastRowCss
14038
- }), children: /* @__PURE__ */ jsx51("td", { colSpan: columns.length, ...trussProps33({
14066
+ }), children: /* @__PURE__ */ jsx52("td", { colSpan: columns.length, ...trussProps33({
14039
14067
  ...style.betweenRowsCss,
14040
14068
  ...style.firstRowMessageCss,
14041
14069
  ...visibleDataRows.length === 0 && style.lastRowCellCss,
@@ -14076,7 +14104,7 @@ function VirtualGridTableView({
14076
14104
  const components = useMemo14(() => ({
14077
14105
  // zIndex keeps the pinned head above sticky columns; `top` matches the offsets used by
14078
14106
  // the div/table render paths so virtualized tables pin below the global nav + page header.
14079
- TopItemList: React9.forwardRef((props, ref) => /* @__PURE__ */ jsx51("div", { ...props, ref, ...mergeProps14(void 0, {
14107
+ TopItemList: React9.forwardRef((props, ref) => /* @__PURE__ */ jsx52("div", { ...props, ref, ...mergeProps14(void 0, {
14080
14108
  ...props.style,
14081
14109
  ...style.minWidthPx !== void 0 ? {
14082
14110
  minWidth: style.minWidthPx
@@ -14088,17 +14116,17 @@ function VirtualGridTableView({
14088
14116
  }) })),
14089
14117
  List: VirtualRoot(style, columns, id, xss),
14090
14118
  Footer: () => {
14091
- return /* @__PURE__ */ jsx51("div", { ...trussProps33({
14119
+ return /* @__PURE__ */ jsx52("div", { ...trussProps33({
14092
14120
  ...style.virtualFooterPaddingBottomPx !== void 0 ? {
14093
14121
  paddingBottom: ["pb_var", {
14094
14122
  "--paddingBottom": `${style.virtualFooterPaddingBottomPx ?? 0}px`
14095
14123
  }]
14096
14124
  } : {}
14097
- }), children: fetchMoreInProgress && /* @__PURE__ */ jsx51("div", { className: "h5 df aic jcc", children: /* @__PURE__ */ jsx51(Loader, { size: "xs" }) }) });
14125
+ }), children: fetchMoreInProgress && /* @__PURE__ */ jsx52("div", { className: "h5 df aic jcc", children: /* @__PURE__ */ jsx52(Loader, { size: "xs" }) }) });
14098
14126
  }
14099
14127
  }), [columns, fetchMoreInProgress, id, stickyOffset, style, xss]);
14100
14128
  const virtuosoKey = !!validatedScrollIndex && visibleDataRows.length > 0 ? "with-data" : "virtuoso";
14101
- return /* @__PURE__ */ jsx51(
14129
+ return /* @__PURE__ */ jsx52(
14102
14130
  Virtuoso,
14103
14131
  {
14104
14132
  useWindowScroll: inDocumentScrollLayout && !customScrollParent,
@@ -14130,11 +14158,11 @@ function VirtualGridTableView({
14130
14158
  if (index === 0) {
14131
14159
  return (
14132
14160
  // Ensure the fallback message is the same width as the table
14133
- /* @__PURE__ */ jsx51("div", { ...trussProps33({
14161
+ /* @__PURE__ */ jsx52("div", { ...trussProps33({
14134
14162
  ...getTableRefWidthStyles(true, inDocumentScrollLayout),
14135
14163
  ...keptSelectedRows.length === 0 && style.firstBodyRowCss,
14136
14164
  ...visibleDataRows.length === 0 && style.lastRowCss
14137
- }), children: /* @__PURE__ */ jsx51("div", { ...trussProps33({
14165
+ }), children: /* @__PURE__ */ jsx52("div", { ...trussProps33({
14138
14166
  ...style.firstRowMessageCss,
14139
14167
  ...visibleDataRows.length === 0 && style.lastRowCellCss,
14140
14168
  ...visibleDataRows.length === 0 && style.lastRowFirstCellCss,
@@ -14193,13 +14221,13 @@ function CardView({
14193
14221
  const validatedScrollIndex = savedScrollIndex !== void 0 && savedScrollIndex > 0 && savedScrollIndex < cardRows.length ? savedScrollIndex : void 0;
14194
14222
  const virtuosoKey = !!validatedScrollIndex && cardRows.length > 0 ? "with-data" : "virtuoso";
14195
14223
  if (runningInJest) {
14196
- return /* @__PURE__ */ jsx51("div", { ...trussProps33({
14224
+ return /* @__PURE__ */ jsx52("div", { ...trussProps33({
14197
14225
  ...{
14198
14226
  paddingTop: "pt2",
14199
14227
  paddingBottom: "pb2"
14200
14228
  },
14201
14229
  ...loading && loadingTableCss
14202
- }), children: /* @__PURE__ */ jsx51("div", { ...trussProps33({
14230
+ }), children: /* @__PURE__ */ jsx52("div", { ...trussProps33({
14203
14231
  display: "dg",
14204
14232
  gridTemplateColumns: ["gtc_var", {
14205
14233
  "--gridTemplateColumns": maybeCssVar22(`repeat(auto-fill, minmax(${CARD_MIN_WIDTH_PX}px, 1fr))`)
@@ -14212,7 +14240,7 @@ function CardView({
14212
14240
  paddingLeft: "pl3"
14213
14241
  }), children: cardRows }) });
14214
14242
  }
14215
- return /* @__PURE__ */ jsx51("div", { ...trussProps33({
14243
+ return /* @__PURE__ */ jsx52("div", { ...trussProps33({
14216
14244
  ...{
14217
14245
  paddingBottom: "pb2",
14218
14246
  height: "h100"
@@ -14227,7 +14255,7 @@ function CardView({
14227
14255
  style,
14228
14256
  children
14229
14257
  }, ref) {
14230
- return /* @__PURE__ */ jsx51("div", { ref, ...mergeProps14(void 0, style, {
14258
+ return /* @__PURE__ */ jsx52("div", { ref, ...mergeProps14(void 0, style, {
14231
14259
  display: "dg",
14232
14260
  gridTemplateColumns: ["gtc_var", {
14233
14261
  "--gridTemplateColumns": maybeCssVar22(`repeat(auto-fill, minmax(${CARD_MIN_WIDTH_PX}px, 1fr))`)
@@ -14240,7 +14268,7 @@ function CardView({
14240
14268
  paddingLeft: "pl3"
14241
14269
  }), children });
14242
14270
  }),
14243
- Footer: () => /* @__PURE__ */ jsx51("div", { children: fetchMoreInProgress && /* @__PURE__ */ jsx51("div", { className: "h5 df aic jcc", children: /* @__PURE__ */ jsx51(Loader, { size: "xs" }) }) })
14271
+ Footer: () => /* @__PURE__ */ jsx52("div", { children: fetchMoreInProgress && /* @__PURE__ */ jsx52("div", { className: "h5 df aic jcc", children: /* @__PURE__ */ jsx52(Loader, { size: "xs" }) }) })
14244
14272
  }, rangeChanged: (newRange) => {
14245
14273
  virtuosoRangeRef.current = newRange;
14246
14274
  if (!infiniteScroll && cardRows.length > 0) {
@@ -14266,7 +14294,7 @@ var VirtualRoot = memoizeOne((gs, _columns, id, xss) => {
14266
14294
  style,
14267
14295
  children
14268
14296
  }, ref) {
14269
- return /* @__PURE__ */ jsx51("div", { ref, ...mergeProps14(void 0, style, {
14297
+ return /* @__PURE__ */ jsx52("div", { ref, ...mergeProps14(void 0, style, {
14270
14298
  ...gs.rootCss,
14271
14299
  ...gs.minWidthPx ? {
14272
14300
  minWidth: ["mw_var", {
@@ -14284,7 +14312,7 @@ var CARD_MIN_WIDTH_PX = 330;
14284
14312
 
14285
14313
  // src/components/ToggleChip.tsx
14286
14314
  import { trussProps as trussProps34 } from "@homebound/truss/runtime";
14287
- import { jsx as jsx52, jsxs as jsxs34 } from "react/jsx-runtime";
14315
+ import { jsx as jsx53, jsxs as jsxs34 } from "react/jsx-runtime";
14288
14316
  function ToggleChip(props) {
14289
14317
  const {
14290
14318
  text,
@@ -14317,8 +14345,8 @@ function ToggleChip(props) {
14317
14345
  },
14318
14346
  ...xss
14319
14347
  }), disabled, onClick, ...hoverProps, ...tid, children: [
14320
- icon && /* @__PURE__ */ jsx52("span", { className: "fs0", ...tid.icon, children: /* @__PURE__ */ jsx52(Icon, { icon, color: "rgba(36, 36, 36, 1)" /* Gray900 */, inc: 2 }) }),
14321
- /* @__PURE__ */ jsx52("span", { ...trussProps34({
14348
+ icon && /* @__PURE__ */ jsx53("span", { className: "fs0", ...tid.icon, children: /* @__PURE__ */ jsx53(Icon, { icon, color: "rgba(36, 36, 36, 1)" /* Gray900 */, inc: 2 }) }),
14349
+ /* @__PURE__ */ jsx53("span", { ...trussProps34({
14322
14350
  textAlign: "tal",
14323
14351
  overflow: "oh",
14324
14352
  display: "d_negwebkit_box",
@@ -14330,14 +14358,14 @@ function ToggleChip(props) {
14330
14358
  paddingRight: "pr0"
14331
14359
  } : {}
14332
14360
  }), title: text, children: text }),
14333
- !disabled && /* @__PURE__ */ jsx52("span", { ...trussProps34({
14361
+ !disabled && /* @__PURE__ */ jsx53("span", { ...trussProps34({
14334
14362
  ...{
14335
14363
  flexShrink: "fs0",
14336
14364
  borderRadius: "br16",
14337
14365
  backgroundColor: "bgGray200"
14338
14366
  },
14339
14367
  ...isHovered && chipHoverStyles
14340
- }), ...tid.x, children: /* @__PURE__ */ jsx52(Icon, { icon: "x", color: "rgba(141, 141, 141, 1)" /* Gray600 */, inc: 2 }) })
14368
+ }), ...tid.x, children: /* @__PURE__ */ jsx53(Icon, { icon: "x", color: "rgba(141, 141, 141, 1)" /* Gray600 */, inc: 2 }) })
14341
14369
  ] });
14342
14370
  }
14343
14371
  var chipHoverStyles = {
@@ -14353,7 +14381,7 @@ var chipDisabledStyles = {
14353
14381
 
14354
14382
  // src/components/ToggleChips.tsx
14355
14383
  import { trussProps as trussProps35 } from "@homebound/truss/runtime";
14356
- import { jsx as jsx53 } from "react/jsx-runtime";
14384
+ import { jsx as jsx54 } from "react/jsx-runtime";
14357
14385
  function ToggleChips(props) {
14358
14386
  const {
14359
14387
  values,
@@ -14362,14 +14390,14 @@ function ToggleChips(props) {
14362
14390
  xss
14363
14391
  } = props;
14364
14392
  const tid = useTestIds(props, "toggleChips");
14365
- return /* @__PURE__ */ jsx53("div", { ...trussProps35({
14393
+ return /* @__PURE__ */ jsx54("div", { ...trussProps35({
14366
14394
  ...{
14367
14395
  display: "df",
14368
14396
  flexWrap: "fww",
14369
14397
  gap: "g_1"
14370
14398
  },
14371
14399
  ...xss
14372
- }), ...tid, children: values.map((value) => /* @__PURE__ */ jsx53(ToggleChip, { text: getLabel(value), onClick: () => onRemove(value), ...tid.chip }, getLabel(value))) });
14400
+ }), ...tid, children: values.map((value) => /* @__PURE__ */ jsx54(ToggleChip, { text: getLabel(value), onClick: () => onRemove(value), ...tid.chip }, getLabel(value))) });
14373
14401
  }
14374
14402
 
14375
14403
  // src/components/Accordion.tsx
@@ -14377,7 +14405,7 @@ import { useId, useResizeObserver as useResizeObserver5 } from "@react-aria/util
14377
14405
  import { useCallback as useCallback12, useEffect as useEffect10, useMemo as useMemo15, useState as useState18 } from "react";
14378
14406
  import { useFocusRing as useFocusRing7 } from "react-aria";
14379
14407
  import { trussProps as trussProps36, maybeCssVar as maybeCssVar23 } from "@homebound/truss/runtime";
14380
- import { jsx as jsx54, jsxs as jsxs35 } from "react/jsx-runtime";
14408
+ import { jsx as jsx55, jsxs as jsxs35 } from "react/jsx-runtime";
14381
14409
  var __maybeInc13 = (inc) => {
14382
14410
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
14383
14411
  };
@@ -14502,13 +14530,13 @@ function Accordion(props) {
14502
14530
  } : {}
14503
14531
  }), children: [
14504
14532
  titleOnClick ? /* @__PURE__ */ jsxs35("div", { ...focusProps, "aria-controls": id, "aria-expanded": expanded, className: "df", children: [
14505
- /* @__PURE__ */ jsx54("button", { ...tid.title, disabled, ...trussProps36({
14533
+ /* @__PURE__ */ jsx55("button", { ...tid.title, disabled, ...trussProps36({
14506
14534
  ...touchableStyle,
14507
14535
  ...{
14508
14536
  flexGrow: "fg1"
14509
14537
  }
14510
14538
  }), onClick: titleOnClick, children: title }),
14511
- /* @__PURE__ */ jsx54("button", { ...tid.toggle, disabled, ...trussProps36({
14539
+ /* @__PURE__ */ jsx55("button", { ...tid.toggle, disabled, ...trussProps36({
14512
14540
  ...touchableStyle,
14513
14541
  ...{
14514
14542
  paddingLeft: "pl2",
@@ -14519,23 +14547,23 @@ function Accordion(props) {
14519
14547
  paddingRight: "pr_10px"
14520
14548
  } : {}
14521
14549
  }
14522
- }), onClick: toggle, children: /* @__PURE__ */ jsx54(RotatingChevronIcon, { expanded }) })
14550
+ }), onClick: toggle, children: /* @__PURE__ */ jsx55(RotatingChevronIcon, { expanded }) })
14523
14551
  ] }) : /* @__PURE__ */ jsxs35("button", { ...tid.title, ...focusProps, "aria-controls": id, "aria-expanded": expanded, disabled, ...trussProps36({
14524
14552
  ...{
14525
14553
  width: "w100"
14526
14554
  },
14527
14555
  ...touchableStyle
14528
14556
  }), onClick: toggle, children: [
14529
- /* @__PURE__ */ jsx54("span", { className: "fg1 tal", children: title }),
14530
- /* @__PURE__ */ jsx54(RotatingChevronIcon, { expanded })
14557
+ /* @__PURE__ */ jsx55("span", { className: "fg1 tal", children: title }),
14558
+ /* @__PURE__ */ jsx55(RotatingChevronIcon, { expanded })
14531
14559
  ] }),
14532
- /* @__PURE__ */ jsx54("div", { ...tid.details, id, "aria-hidden": !expanded, ...trussProps36({
14560
+ /* @__PURE__ */ jsx55("div", { ...tid.details, id, "aria-hidden": !expanded, ...trussProps36({
14533
14561
  overflow: "oh",
14534
14562
  height: ["h_var", {
14535
14563
  "--height": maybeCssVar23(__maybeInc13(contentHeight))
14536
14564
  }],
14537
14565
  transition: "tsn_height_250ms_ease_in_out"
14538
- }), children: expanded && /* @__PURE__ */ jsx54("div", { ...trussProps36({
14566
+ }), children: expanded && /* @__PURE__ */ jsx55("div", { ...trussProps36({
14539
14567
  paddingLeft: "pl2",
14540
14568
  paddingRight: "pr2",
14541
14569
  paddingBottom: "pb2",
@@ -14550,13 +14578,13 @@ function Accordion(props) {
14550
14578
  ] });
14551
14579
  }
14552
14580
  function RotatingChevronIcon(props) {
14553
- return /* @__PURE__ */ jsx54("span", { ...trussProps36({
14581
+ return /* @__PURE__ */ jsx55("span", { ...trussProps36({
14554
14582
  flexShrink: "fs0",
14555
14583
  transition: "tsn_transform_250ms_linear",
14556
14584
  transform: ["transform_var", {
14557
14585
  "--transform": maybeCssVar23(props.expanded ? "rotate(180deg)" : "rotate(0deg)")
14558
14586
  }]
14559
- }), children: /* @__PURE__ */ jsx54(Icon, { icon: "chevronDown" }) });
14587
+ }), children: /* @__PURE__ */ jsx55(Icon, { icon: "chevronDown" }) });
14560
14588
  }
14561
14589
  var accordionSizes = {
14562
14590
  xs: 240,
@@ -14567,14 +14595,14 @@ var accordionSizes = {
14567
14595
 
14568
14596
  // src/components/AccordionList.tsx
14569
14597
  import { useState as useState19 } from "react";
14570
- import { Fragment as Fragment19, jsx as jsx55 } from "react/jsx-runtime";
14598
+ import { Fragment as Fragment19, jsx as jsx56 } from "react/jsx-runtime";
14571
14599
  function AccordionList(props) {
14572
14600
  const { accordions, size, allowMultipleExpanded = true, compact = false } = props;
14573
14601
  const [expandedIndex, setExpandedIndex] = useState19(
14574
14602
  accordions.findIndex((a) => a.defaultExpanded)
14575
14603
  );
14576
14604
  const tid = useTestIds(props, "accordionList");
14577
- return /* @__PURE__ */ jsx55(Fragment19, { children: accordions.map((accordionProps, index, arr) => /* @__PURE__ */ jsx55(
14605
+ return /* @__PURE__ */ jsx56(Fragment19, { children: accordions.map((accordionProps, index, arr) => /* @__PURE__ */ jsx56(
14578
14606
  Accordion,
14579
14607
  {
14580
14608
  ...accordionProps,
@@ -14593,7 +14621,7 @@ function AccordionList(props) {
14593
14621
  // src/components/Logos/BlueprintAiLogo.tsx
14594
14622
  import { useId as useId2 } from "@react-aria/utils";
14595
14623
  import { trussProps as trussProps37, maybeCssVar as maybeCssVar24 } from "@homebound/truss/runtime";
14596
- import { jsx as jsx56, jsxs as jsxs36 } from "react/jsx-runtime";
14624
+ import { jsx as jsx57, jsxs as jsxs36 } from "react/jsx-runtime";
14597
14625
  var __maybeInc14 = (inc) => {
14598
14626
  return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
14599
14627
  };
@@ -14612,29 +14640,29 @@ function BlueprintAiLogo(props) {
14612
14640
  }]
14613
14641
  }), children: [
14614
14642
  /* @__PURE__ */ jsxs36("g", { transform: "translate(0.32171630859375, 3)", fill: `url(#${gradientId})`, children: [
14615
- /* @__PURE__ */ jsx56("path", { d: "M17.2834 12.4731L25.9591 3.79741C26.4761 3.2804 27.3148 3.28029 27.8319 3.79741L27.9224 3.89763C28.3464 4.41754 28.3169 5.18521 27.8319 5.67026L18.7856 14.7166H30.6756C31.4069 14.7166 32 15.3096 32 16.0409C31.9998 16.7719 31.407 17.3653 30.6756 17.3653H19.3545L27.5075 25.5183L27.5991 25.6196C27.9937 26.1046 27.9936 26.8039 27.5991 27.2888L27.5075 27.3901C26.9904 27.9072 26.1518 27.9072 25.6347 27.3901L17.2834 19.0388V30.6756C17.2834 31.4069 16.6904 32 15.9591 32C15.2281 31.9998 14.6347 31.407 14.6347 30.6756V18.8664L6.15733 27.3437C5.67242 27.8287 4.90483 27.8588 4.3847 27.4343L4.28448 27.3437C3.76784 26.8267 3.76779 25.989 4.28448 25.472L12.3912 17.3653H1.32435C0.638773 17.3653 0.0745504 16.8441 0.00646552 16.1767L0 16.0409C0 15.3096 0.593052 14.7166 1.32435 14.7166H12.9601L3.96013 5.71659C3.44299 5.19946 3.44322 4.3608 3.96013 3.84375L4.06034 3.75323C4.58047 3.32871 5.34806 3.35884 5.83297 3.84375L14.6347 12.6455V1.32435C14.6347 0.592974 15.2281 0.000199548 15.9591 0C16.6904 3.28853e-08 17.2834 0.593052 17.2834 1.32435V12.4731Z" }),
14616
- /* @__PURE__ */ jsx56("path", { d: "M202.994 28.2798V3.31983H206.322V28.2798H202.994Z" }),
14617
- /* @__PURE__ */ jsx56("path", { d: "M174.792 28.2798L185.928 3.31983H190.024L201.16 28.2798H197.48L194.664 21.9118H181.32L178.472 28.2798H174.792ZM182.696 18.7438H193.288L187.976 6.80783L182.696 18.7438Z" }),
14618
- /* @__PURE__ */ jsx56("path", { d: "M165.349 28.2478C160.581 28.6958 158.053 28.5038 158.149 23.7998V14.5198H154.597V11.6398H158.149V7.15983H161.413V11.6398H166.181V14.5198H161.413V22.5838C161.413 25.3358 161.541 25.6878 165.349 25.3998V28.2478Z" }),
14619
- /* @__PURE__ */ jsx56("path", { d: "M138.102 28.2798V11.6398H141.366V14.4878C142.55 12.4718 144.47 11.1278 147.222 11.1278C151.254 11.1278 153.334 13.5918 153.334 18.3598V28.2798H150.038V18.4558C150.038 15.6718 148.694 13.9118 146.262 13.9118C143.318 13.9118 141.366 16.5038 141.366 20.0558V28.2798H138.102Z" }),
14620
- /* @__PURE__ */ jsx56("path", { d: "M133.364 9.11183C132.052 9.11183 131.028 8.11983 131.028 6.80783C131.028 5.52783 132.052 4.50383 133.364 4.50383C134.676 4.50383 135.668 5.52783 135.668 6.80783C135.668 8.11983 134.612 9.11183 133.364 9.11183ZM131.764 28.2798V11.6398H134.996V28.2798H131.764Z" }),
14621
- /* @__PURE__ */ jsx56("path", { d: "M120.958 28.2798V11.6398H124.062V14.8078C125.15 12.5678 127.422 11.4478 130.718 11.4478V14.4878C126.782 14.4878 124.062 15.8958 124.062 18.9038V28.2798H120.958Z" }),
14622
- /* @__PURE__ */ jsx56("path", { d: "M102.558 34.6798V11.6398H105.822V14.2318C106.974 12.2798 108.894 11.0958 111.326 11.1278C115.678 11.1278 118.75 14.8078 118.75 20.0238C118.75 25.1438 115.678 28.7918 111.326 28.7918C108.894 28.7918 106.974 27.6078 105.822 25.6878V34.6798H102.558ZM110.622 26.0078C113.502 26.0078 115.518 23.5118 115.518 19.9918C115.518 16.4398 113.502 13.9118 110.622 13.9118C107.742 13.9118 105.694 16.4398 105.694 19.9918C105.694 23.5118 107.742 26.0078 110.622 26.0078Z" }),
14623
- /* @__PURE__ */ jsx56("path", { d: "M92.5547 28.7918C87.5947 28.7918 84.3307 25.1118 84.3307 19.9278C84.3307 14.7758 87.5947 11.1278 92.5547 11.1278C96.6187 11.1278 100.043 14.1678 100.043 19.7038V20.9838H87.6907C87.9147 24.0238 89.4827 26.1038 92.5547 26.1038C94.7947 26.1038 96.2987 24.7918 96.6187 23.4478H99.8507C99.3387 26.3918 96.4907 28.7918 92.5547 28.7918ZM87.6907 18.5518H96.7787C96.6507 15.8318 94.9227 13.9118 92.4587 13.9118C89.6107 13.9118 88.1067 15.7678 87.6907 18.5518Z" }),
14624
- /* @__PURE__ */ jsx56("path", { d: "M81.796 11.6398V28.2798H78.564V25.4318C77.38 27.4478 75.428 28.7918 72.676 28.7918C68.644 28.7918 66.596 26.3278 66.596 21.5598V11.6398H69.86V21.4638C69.86 24.2478 71.236 26.0078 73.636 26.0078C76.58 26.0078 78.564 23.4158 78.564 19.8638V11.6398H81.796Z" }),
14625
- /* @__PURE__ */ jsx56("path", { d: "M60.452 28.2798V2.99983H63.716V28.2798H60.452Z" }),
14626
- /* @__PURE__ */ jsx56("path", { d: "M53.104 15.2238C56.048 15.8638 57.68 18.2638 57.68 21.4318C57.68 25.4638 54.384 28.2798 49.68 28.2798H38V3.31983H48.848C53.68 3.31983 56.624 5.62383 56.624 9.65583C56.624 12.4078 55.248 14.4558 53.104 15.2238ZM41.328 6.48783V14.0398H47.952C51.312 14.0398 53.168 12.7278 53.168 10.1358C53.168 7.60783 51.28 6.48783 47.792 6.48783H41.328ZM48.72 25.1118C52.24 25.1118 54.16 23.5438 54.16 20.7598C54.16 18.2638 52.272 16.9838 48.848 16.9838H41.328V25.1118H48.72Z" })
14643
+ /* @__PURE__ */ jsx57("path", { d: "M17.2834 12.4731L25.9591 3.79741C26.4761 3.2804 27.3148 3.28029 27.8319 3.79741L27.9224 3.89763C28.3464 4.41754 28.3169 5.18521 27.8319 5.67026L18.7856 14.7166H30.6756C31.4069 14.7166 32 15.3096 32 16.0409C31.9998 16.7719 31.407 17.3653 30.6756 17.3653H19.3545L27.5075 25.5183L27.5991 25.6196C27.9937 26.1046 27.9936 26.8039 27.5991 27.2888L27.5075 27.3901C26.9904 27.9072 26.1518 27.9072 25.6347 27.3901L17.2834 19.0388V30.6756C17.2834 31.4069 16.6904 32 15.9591 32C15.2281 31.9998 14.6347 31.407 14.6347 30.6756V18.8664L6.15733 27.3437C5.67242 27.8287 4.90483 27.8588 4.3847 27.4343L4.28448 27.3437C3.76784 26.8267 3.76779 25.989 4.28448 25.472L12.3912 17.3653H1.32435C0.638773 17.3653 0.0745504 16.8441 0.00646552 16.1767L0 16.0409C0 15.3096 0.593052 14.7166 1.32435 14.7166H12.9601L3.96013 5.71659C3.44299 5.19946 3.44322 4.3608 3.96013 3.84375L4.06034 3.75323C4.58047 3.32871 5.34806 3.35884 5.83297 3.84375L14.6347 12.6455V1.32435C14.6347 0.592974 15.2281 0.000199548 15.9591 0C16.6904 3.28853e-08 17.2834 0.593052 17.2834 1.32435V12.4731Z" }),
14644
+ /* @__PURE__ */ jsx57("path", { d: "M202.994 28.2798V3.31983H206.322V28.2798H202.994Z" }),
14645
+ /* @__PURE__ */ jsx57("path", { d: "M174.792 28.2798L185.928 3.31983H190.024L201.16 28.2798H197.48L194.664 21.9118H181.32L178.472 28.2798H174.792ZM182.696 18.7438H193.288L187.976 6.80783L182.696 18.7438Z" }),
14646
+ /* @__PURE__ */ jsx57("path", { d: "M165.349 28.2478C160.581 28.6958 158.053 28.5038 158.149 23.7998V14.5198H154.597V11.6398H158.149V7.15983H161.413V11.6398H166.181V14.5198H161.413V22.5838C161.413 25.3358 161.541 25.6878 165.349 25.3998V28.2478Z" }),
14647
+ /* @__PURE__ */ jsx57("path", { d: "M138.102 28.2798V11.6398H141.366V14.4878C142.55 12.4718 144.47 11.1278 147.222 11.1278C151.254 11.1278 153.334 13.5918 153.334 18.3598V28.2798H150.038V18.4558C150.038 15.6718 148.694 13.9118 146.262 13.9118C143.318 13.9118 141.366 16.5038 141.366 20.0558V28.2798H138.102Z" }),
14648
+ /* @__PURE__ */ jsx57("path", { d: "M133.364 9.11183C132.052 9.11183 131.028 8.11983 131.028 6.80783C131.028 5.52783 132.052 4.50383 133.364 4.50383C134.676 4.50383 135.668 5.52783 135.668 6.80783C135.668 8.11983 134.612 9.11183 133.364 9.11183ZM131.764 28.2798V11.6398H134.996V28.2798H131.764Z" }),
14649
+ /* @__PURE__ */ jsx57("path", { d: "M120.958 28.2798V11.6398H124.062V14.8078C125.15 12.5678 127.422 11.4478 130.718 11.4478V14.4878C126.782 14.4878 124.062 15.8958 124.062 18.9038V28.2798H120.958Z" }),
14650
+ /* @__PURE__ */ jsx57("path", { d: "M102.558 34.6798V11.6398H105.822V14.2318C106.974 12.2798 108.894 11.0958 111.326 11.1278C115.678 11.1278 118.75 14.8078 118.75 20.0238C118.75 25.1438 115.678 28.7918 111.326 28.7918C108.894 28.7918 106.974 27.6078 105.822 25.6878V34.6798H102.558ZM110.622 26.0078C113.502 26.0078 115.518 23.5118 115.518 19.9918C115.518 16.4398 113.502 13.9118 110.622 13.9118C107.742 13.9118 105.694 16.4398 105.694 19.9918C105.694 23.5118 107.742 26.0078 110.622 26.0078Z" }),
14651
+ /* @__PURE__ */ jsx57("path", { d: "M92.5547 28.7918C87.5947 28.7918 84.3307 25.1118 84.3307 19.9278C84.3307 14.7758 87.5947 11.1278 92.5547 11.1278C96.6187 11.1278 100.043 14.1678 100.043 19.7038V20.9838H87.6907C87.9147 24.0238 89.4827 26.1038 92.5547 26.1038C94.7947 26.1038 96.2987 24.7918 96.6187 23.4478H99.8507C99.3387 26.3918 96.4907 28.7918 92.5547 28.7918ZM87.6907 18.5518H96.7787C96.6507 15.8318 94.9227 13.9118 92.4587 13.9118C89.6107 13.9118 88.1067 15.7678 87.6907 18.5518Z" }),
14652
+ /* @__PURE__ */ jsx57("path", { d: "M81.796 11.6398V28.2798H78.564V25.4318C77.38 27.4478 75.428 28.7918 72.676 28.7918C68.644 28.7918 66.596 26.3278 66.596 21.5598V11.6398H69.86V21.4638C69.86 24.2478 71.236 26.0078 73.636 26.0078C76.58 26.0078 78.564 23.4158 78.564 19.8638V11.6398H81.796Z" }),
14653
+ /* @__PURE__ */ jsx57("path", { d: "M60.452 28.2798V2.99983H63.716V28.2798H60.452Z" }),
14654
+ /* @__PURE__ */ jsx57("path", { d: "M53.104 15.2238C56.048 15.8638 57.68 18.2638 57.68 21.4318C57.68 25.4638 54.384 28.2798 49.68 28.2798H38V3.31983H48.848C53.68 3.31983 56.624 5.62383 56.624 9.65583C56.624 12.4078 55.248 14.4558 53.104 15.2238ZM41.328 6.48783V14.0398H47.952C51.312 14.0398 53.168 12.7278 53.168 10.1358C53.168 7.60783 51.28 6.48783 47.792 6.48783H41.328ZM48.72 25.1118C52.24 25.1118 54.16 23.5438 54.16 20.7598C54.16 18.2638 52.272 16.9838 48.848 16.9838H41.328V25.1118H48.72Z" })
14627
14655
  ] }),
14628
- /* @__PURE__ */ jsx56("defs", { children: /* @__PURE__ */ jsxs36("linearGradient", { id: gradientId, x1: "47.4999", y1: "35", x2: "51.8397", y2: "-28.0595", gradientUnits: "userSpaceOnUse", children: [
14629
- /* @__PURE__ */ jsx56("stop", { offset: "0.135528", stopColor: "rgba(91, 33, 182, 1)" /* Purple800 */ }),
14630
- /* @__PURE__ */ jsx56("stop", { offset: "0.705975", stopColor: "rgba(37, 99, 235, 1)" /* Blue600 */ })
14656
+ /* @__PURE__ */ jsx57("defs", { children: /* @__PURE__ */ jsxs36("linearGradient", { id: gradientId, x1: "47.4999", y1: "35", x2: "51.8397", y2: "-28.0595", gradientUnits: "userSpaceOnUse", children: [
14657
+ /* @__PURE__ */ jsx57("stop", { offset: "0.135528", stopColor: "rgba(91, 33, 182, 1)" /* Purple800 */ }),
14658
+ /* @__PURE__ */ jsx57("stop", { offset: "0.705975", stopColor: "rgba(37, 99, 235, 1)" /* Blue600 */ })
14631
14659
  ] }) })
14632
14660
  ] });
14633
14661
  }
14634
14662
 
14635
14663
  // src/components/AiPanel.tsx
14636
14664
  import { trussProps as trussProps38 } from "@homebound/truss/runtime";
14637
- import { jsx as jsx57, jsxs as jsxs37 } from "react/jsx-runtime";
14665
+ import { jsx as jsx58, jsxs as jsxs37 } from "react/jsx-runtime";
14638
14666
  function AiPanel(props) {
14639
14667
  const {
14640
14668
  rounded = false,
@@ -14643,7 +14671,7 @@ function AiPanel(props) {
14643
14671
  ...others
14644
14672
  } = props;
14645
14673
  const tid = useTestIds(others, "aiPanel");
14646
- return /* @__PURE__ */ jsx57("div", { ...trussProps38({
14674
+ return /* @__PURE__ */ jsx58("div", { ...trussProps38({
14647
14675
  ...{
14648
14676
  width: "w100",
14649
14677
  backgroundImage: "aiBackground",
@@ -14681,8 +14709,8 @@ function AiCard(props) {
14681
14709
  },
14682
14710
  ...gapCss
14683
14711
  }), ...tid.column, children: [
14684
- /* @__PURE__ */ jsx57(BlueprintAiLogo, { height: logoHeight }),
14685
- /* @__PURE__ */ jsx57("div", { ...trussProps38({
14712
+ /* @__PURE__ */ jsx58(BlueprintAiLogo, { height: logoHeight }),
14713
+ /* @__PURE__ */ jsx58("div", { ...trussProps38({
14686
14714
  display: "df",
14687
14715
  flexDirection: "fdc",
14688
14716
  width: "w100",
@@ -14726,7 +14754,7 @@ var aiCardChrome = {
14726
14754
 
14727
14755
  // src/components/AiBanner.tsx
14728
14756
  import { trussProps as trussProps39 } from "@homebound/truss/runtime";
14729
- import { jsx as jsx58, jsxs as jsxs38 } from "react/jsx-runtime";
14757
+ import { jsx as jsx59, jsxs as jsxs38 } from "react/jsx-runtime";
14730
14758
  function AiBanner(props) {
14731
14759
  const {
14732
14760
  title,
@@ -14735,10 +14763,10 @@ function AiBanner(props) {
14735
14763
  secondaryAction
14736
14764
  } = props;
14737
14765
  const tid = useTestIds(props, "aiBanner");
14738
- return /* @__PURE__ */ jsx58(AiPanel, { padding: "sm", ...tid, children: /* @__PURE__ */ jsx58(AiCard, { size: "sm", ...tid, children: /* @__PURE__ */ jsxs38("div", { className: "df aic jcsb g_2 w100 fww pt_12px pb2 pl2 pr2", children: [
14766
+ return /* @__PURE__ */ jsx59(AiPanel, { padding: "sm", ...tid, children: /* @__PURE__ */ jsx59(AiCard, { size: "sm", ...tid, children: /* @__PURE__ */ jsxs38("div", { className: "df aic jcsb g_2 w100 fww pt_12px pb2 pl2 pr2", children: [
14739
14767
  /* @__PURE__ */ jsxs38("div", { className: "df fdc g_4px fg1 fb_0 mw_240px", children: [
14740
- /* @__PURE__ */ jsx58("span", { className: "fw6 fz_14px lh_20px purple700 aiBoldBg bgcl_text WebkitBackgroundClip_text wktfc_transparent", ...tid.title, children: title }),
14741
- message && /* @__PURE__ */ jsx58("span", { ...trussProps39({
14768
+ /* @__PURE__ */ jsx59("span", { className: "fw6 fz_14px lh_20px purple700 aiBoldBg bgcl_text WebkitBackgroundClip_text wktfc_transparent", ...tid.title, children: title }),
14769
+ message && /* @__PURE__ */ jsx59("span", { ...trussProps39({
14742
14770
  fontWeight: "fw4",
14743
14771
  fontSize: "fz_12px",
14744
14772
  lineHeight: "lh_16px",
@@ -14748,15 +14776,15 @@ function AiBanner(props) {
14748
14776
  }), ...tid.message, children: message })
14749
14777
  ] }),
14750
14778
  (primaryAction || secondaryAction) && /* @__PURE__ */ jsxs38("div", { className: "df aic g_2 fs0", children: [
14751
- secondaryAction && /* @__PURE__ */ jsx58(Button, { ...secondaryAction, variant: "quaternary" }),
14752
- primaryAction && /* @__PURE__ */ jsx58(Button, { ...primaryAction, variant: "ai" })
14779
+ secondaryAction && /* @__PURE__ */ jsx59(Button, { ...secondaryAction, variant: "quaternary" }),
14780
+ primaryAction && /* @__PURE__ */ jsx59(Button, { ...primaryAction, variant: "ai" })
14753
14781
  ] })
14754
14782
  ] }) }) });
14755
14783
  }
14756
14784
 
14757
14785
  // src/components/LinkCard.tsx
14758
14786
  import { trussProps as trussProps40 } from "@homebound/truss/runtime";
14759
- import { jsx as jsx59, jsxs as jsxs39 } from "react/jsx-runtime";
14787
+ import { jsx as jsx60, jsxs as jsxs39 } from "react/jsx-runtime";
14760
14788
  function LinkCard(props) {
14761
14789
  const {
14762
14790
  title,
@@ -14788,7 +14816,7 @@ function LinkCard(props) {
14788
14816
  ...tid,
14789
14817
  children: [
14790
14818
  /* @__PURE__ */ jsxs39("div", { className: "df fdc g_4px fg1 mw0 wbbw", children: [
14791
- /* @__PURE__ */ jsx59("span", { ...trussProps40({
14819
+ /* @__PURE__ */ jsx60("span", { ...trussProps40({
14792
14820
  fontWeight: "fw6",
14793
14821
  fontSize: "fz_14px",
14794
14822
  lineHeight: "lh_20px",
@@ -14796,7 +14824,7 @@ function LinkCard(props) {
14796
14824
  "--color": "var(--b-on-surface)"
14797
14825
  }]
14798
14826
  }), ...tid.title, children: title }),
14799
- message && /* @__PURE__ */ jsx59("span", { ...trussProps40({
14827
+ message && /* @__PURE__ */ jsx60("span", { ...trussProps40({
14800
14828
  fontWeight: "fw4",
14801
14829
  fontSize: "fz_12px",
14802
14830
  lineHeight: "lh_16px",
@@ -14805,29 +14833,29 @@ function LinkCard(props) {
14805
14833
  }]
14806
14834
  }), ...tid.message, children: message })
14807
14835
  ] }),
14808
- /* @__PURE__ */ jsx59("div", { className: "df aic fs0 h5", children: /* @__PURE__ */ jsx59(IconButton, { icon: "arrowRight", color: "--b-text-link-default" /* TextLinkDefault */, ...action, label: title, preventTooltip: true, ...tid.action }) })
14836
+ /* @__PURE__ */ jsx60("div", { className: "df aic fs0 h5", children: /* @__PURE__ */ jsx60(IconButton, { icon: "arrowRight", color: "--b-text-link-default" /* TextLinkDefault */, ...action, label: title, preventTooltip: true, ...tid.action }) })
14809
14837
  ]
14810
14838
  }
14811
14839
  );
14812
14840
  }
14813
14841
 
14814
14842
  // src/components/AiLinkCardGroup.tsx
14815
- import { jsx as jsx60, jsxs as jsxs40 } from "react/jsx-runtime";
14843
+ import { jsx as jsx61, jsxs as jsxs40 } from "react/jsx-runtime";
14816
14844
  function AiLinkCardGroup(props) {
14817
14845
  const {
14818
14846
  cards
14819
14847
  } = props;
14820
14848
  const tid = useTestIds(props, "aiLinkCardGroup");
14821
14849
  if (cards.length === 0) return null;
14822
- return /* @__PURE__ */ jsx60(AiPanel, { padding: "lg", ...tid, children: /* @__PURE__ */ jsxs40("div", { className: "df fdc aifs g_2 w100", children: [
14823
- /* @__PURE__ */ jsx60(BlueprintAiLogo, { height: 3 }),
14824
- cards.map((card) => /* @__PURE__ */ jsx60(LinkCard, { ...card }, card.title))
14850
+ return /* @__PURE__ */ jsx61(AiPanel, { padding: "lg", ...tid, children: /* @__PURE__ */ jsxs40("div", { className: "df fdc aifs g_2 w100", children: [
14851
+ /* @__PURE__ */ jsx61(BlueprintAiLogo, { height: 3 }),
14852
+ cards.map((card) => /* @__PURE__ */ jsx61(LinkCard, { ...card }, card.title))
14825
14853
  ] }) });
14826
14854
  }
14827
14855
 
14828
14856
  // src/components/AiLoader.tsx
14829
14857
  import { trussProps as trussProps41, maybeCssVar as maybeCssVar25 } from "@homebound/truss/runtime";
14830
- import { jsx as jsx61 } from "react/jsx-runtime";
14858
+ import { jsx as jsx62 } from "react/jsx-runtime";
14831
14859
  function AiLoader(props) {
14832
14860
  const {
14833
14861
  inc = 3,
@@ -14836,7 +14864,7 @@ function AiLoader(props) {
14836
14864
  } = props;
14837
14865
  const tid = useTestIds(props, "aiLoader");
14838
14866
  const gap = increment(inc) / 6;
14839
- return /* @__PURE__ */ jsx61("div", { role: "img", "aria-label": label, ...trussProps41({
14867
+ return /* @__PURE__ */ jsx62("div", { role: "img", "aria-label": label, ...trussProps41({
14840
14868
  ...{
14841
14869
  display: "df",
14842
14870
  alignItems: "aic",
@@ -14853,7 +14881,7 @@ function AiLoader(props) {
14853
14881
  }]
14854
14882
  },
14855
14883
  ...xss
14856
- }), ...tid, children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx61("span", { ...trussProps41(starStyles(i, inc)), ...tid[`star${i + 1}`], children: /* @__PURE__ */ jsx61(Icon, { icon: "aiStar", inc: inc * 1.4, xss: {
14884
+ }), ...tid, children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx62("span", { ...trussProps41(starStyles(i, inc)), ...tid[`star${i + 1}`], children: /* @__PURE__ */ jsx62(Icon, { icon: "aiStar", inc: inc * 1.4, xss: {
14857
14885
  flexShrink: "fs0"
14858
14886
  } }) }, i)) });
14859
14887
  }
@@ -14878,7 +14906,7 @@ function starStyles(index, inc) {
14878
14906
 
14879
14907
  // src/components/AiLoadingPanel.tsx
14880
14908
  import { trussProps as trussProps42 } from "@homebound/truss/runtime";
14881
- import { jsx as jsx62, jsxs as jsxs41 } from "react/jsx-runtime";
14909
+ import { jsx as jsx63, jsxs as jsxs41 } from "react/jsx-runtime";
14882
14910
  function AiLoadingPanel(props) {
14883
14911
  const {
14884
14912
  title = "Importing Details...",
@@ -14890,10 +14918,10 @@ function AiLoadingPanel(props) {
14890
14918
  const card = (
14891
14919
  // `status` rather than `alert` so assistive tech waits for a pause instead of interrupting, and
14892
14920
  // `aria-busy` so it knows the surrounding content is still settling.
14893
- /* @__PURE__ */ jsx62(AiCard, { role: "status", "aria-busy": true, size: "lg", ...tid, children: /* @__PURE__ */ jsxs41("div", { className: "df fdc aic g_1 w100 pt2 pb2 pl3 pr3", children: [
14894
- /* @__PURE__ */ jsx62(AiLoader, {}),
14895
- /* @__PURE__ */ jsx62("span", { className: "fw6 fz_18px lh_28px purple700 aiBoldBg bgcl_text WebkitBackgroundClip_text wktfc_transparent", ...tid.title, children: title }),
14896
- /* @__PURE__ */ jsx62("span", { ...trussProps42({
14921
+ /* @__PURE__ */ jsx63(AiCard, { role: "status", "aria-busy": true, size: "lg", ...tid, children: /* @__PURE__ */ jsxs41("div", { className: "df fdc aic g_1 w100 pt2 pb2 pl3 pr3", children: [
14922
+ /* @__PURE__ */ jsx63(AiLoader, {}),
14923
+ /* @__PURE__ */ jsx63("span", { className: "fw6 fz_18px lh_28px purple700 aiBoldBg bgcl_text WebkitBackgroundClip_text wktfc_transparent", ...tid.title, children: title }),
14924
+ /* @__PURE__ */ jsx63("span", { ...trussProps42({
14897
14925
  fontWeight: "fw4",
14898
14926
  fontSize: "fz_14px",
14899
14927
  lineHeight: "lh_20px",
@@ -14919,16 +14947,16 @@ function AiLoadingPanel(props) {
14919
14947
  fontSize: "fz_12px",
14920
14948
  lineHeight: "lh_16px"
14921
14949
  }), children: [
14922
- /* @__PURE__ */ jsx62(Icon, { icon: "time", inc: 2 }),
14923
- /* @__PURE__ */ jsx62("span", { ...tid.progressText, children: progressText })
14950
+ /* @__PURE__ */ jsx63(Icon, { icon: "time", inc: 2 }),
14951
+ /* @__PURE__ */ jsx63("span", { ...tid.progressText, children: progressText })
14924
14952
  ] })
14925
14953
  ] }) })
14926
14954
  );
14927
- return omitBg ? card : /* @__PURE__ */ jsx62(AiPanel, { padding: "lg", ...tid, children: card });
14955
+ return omitBg ? card : /* @__PURE__ */ jsx63(AiPanel, { padding: "lg", ...tid, children: card });
14928
14956
  }
14929
14957
 
14930
14958
  // src/components/AiSlimBanner.tsx
14931
- import { jsx as jsx63, jsxs as jsxs42 } from "react/jsx-runtime";
14959
+ import { jsx as jsx64, jsxs as jsxs42 } from "react/jsx-runtime";
14932
14960
  function AiSlimBanner(props) {
14933
14961
  const {
14934
14962
  title,
@@ -14936,12 +14964,12 @@ function AiSlimBanner(props) {
14936
14964
  } = props;
14937
14965
  const tid = useTestIds(props, "aiSlimBanner");
14938
14966
  return /* @__PURE__ */ jsxs42("div", { className: "df ais g_2 w100 pl2 pr2 fw4 fz_12px lh_16px aiBackground", ...tid, children: [
14939
- /* @__PURE__ */ jsx63("span", { className: "df aic jcc fs0 pt1 pb1 w_12px h_32px", children: /* @__PURE__ */ jsx63(Icon, { icon: "aiStar", inc: 2.125, xss: {
14967
+ /* @__PURE__ */ jsx64("span", { className: "df aic jcc fs0 pt1 pb1 w_12px h_32px", children: /* @__PURE__ */ jsx64(Icon, { icon: "aiStar", inc: 2.125, xss: {
14940
14968
  flexShrink: "fs0"
14941
14969
  } }) }),
14942
14970
  /* @__PURE__ */ jsxs42("div", { className: "df aic jcsb g_2 fg1 mw0", children: [
14943
- /* @__PURE__ */ jsx63("span", { className: "fw6 fz_12px lh_16px purple700 aiBoldBg bgcl_text WebkitBackgroundClip_text wktfc_transparent pt1 pb1 mw0", ...tid.title, children: title }),
14944
- action && /* @__PURE__ */ jsx63("div", { className: "fs0", children: /* @__PURE__ */ jsx63(Button, { ...action, variant: "text" }) })
14971
+ /* @__PURE__ */ jsx64("span", { className: "fw6 fz_12px lh_16px purple700 aiBoldBg bgcl_text WebkitBackgroundClip_text wktfc_transparent pt1 pb1 mw0", ...tid.title, children: title }),
14972
+ action && /* @__PURE__ */ jsx64("div", { className: "fs0", children: /* @__PURE__ */ jsx64(Button, { ...action, variant: "text" }) })
14945
14973
  ] })
14946
14974
  ] });
14947
14975
  }
@@ -14951,7 +14979,7 @@ import { useEffect as useEffect12 } from "react";
14951
14979
 
14952
14980
  // src/components/AutoSaveStatus/AutoSaveStatusProvider.tsx
14953
14981
  import React10, { useCallback as useCallback13, useEffect as useEffect11, useMemo as useMemo16, useRef as useRef22, useState as useState20 } from "react";
14954
- import { jsx as jsx64 } from "react/jsx-runtime";
14982
+ import { jsx as jsx65 } from "react/jsx-runtime";
14955
14983
  var AutoSaveStatus = /* @__PURE__ */ ((AutoSaveStatus2) => {
14956
14984
  AutoSaveStatus2["IDLE"] = "idle";
14957
14985
  AutoSaveStatus2["SAVING"] = "saving";
@@ -15005,13 +15033,13 @@ function AutoSaveStatusProvider({ children, resetToIdleTimeout = 6e3 }) {
15005
15033
  () => ({ status, resetStatus, errors, triggerAutoSave, resolveAutoSave }),
15006
15034
  [errors, resetStatus, resolveAutoSave, status, triggerAutoSave]
15007
15035
  );
15008
- return /* @__PURE__ */ jsx64(AutoSaveStatusContext.Provider, { value, children });
15036
+ return /* @__PURE__ */ jsx65(AutoSaveStatusContext.Provider, { value, children });
15009
15037
  }
15010
15038
 
15011
15039
  // src/components/AutoSaveStatus/useAutoSaveStatus.ts
15012
- import { useContext as useContext14 } from "react";
15040
+ import { useContext as useContext15 } from "react";
15013
15041
  function useAutoSaveStatus() {
15014
- return useContext14(AutoSaveStatusContext);
15042
+ return useContext15(AutoSaveStatusContext);
15015
15043
  }
15016
15044
 
15017
15045
  // src/types.ts
@@ -15021,7 +15049,7 @@ function assertNever(x) {
15021
15049
 
15022
15050
  // src/components/AutoSaveIndicator.tsx
15023
15051
  import { trussProps as trussProps43 } from "@homebound/truss/runtime";
15024
- import { jsx as jsx65, jsxs as jsxs43 } from "react/jsx-runtime";
15052
+ import { jsx as jsx66, jsxs as jsxs43 } from "react/jsx-runtime";
15025
15053
  function AutoSaveIndicator({
15026
15054
  hideOnIdle,
15027
15055
  doNotReset
@@ -15042,11 +15070,11 @@ function AutoSaveIndicator({
15042
15070
  );
15043
15071
  switch (status) {
15044
15072
  case "idle" /* IDLE */:
15045
- return hideOnIdle ? null : /* @__PURE__ */ jsx65(Indicator, { icon: "cloudSave" });
15073
+ return hideOnIdle ? null : /* @__PURE__ */ jsx66(Indicator, { icon: "cloudSave" });
15046
15074
  case "saving" /* SAVING */:
15047
- return /* @__PURE__ */ jsx65(Indicator, { icon: "refresh", text: "Saving..." });
15075
+ return /* @__PURE__ */ jsx66(Indicator, { icon: "refresh", text: "Saving..." });
15048
15076
  case "done" /* DONE */:
15049
- return /* @__PURE__ */ jsx65(Indicator, { icon: "cloudSave", text: "Saved" });
15077
+ return /* @__PURE__ */ jsx66(Indicator, { icon: "cloudSave", text: "Saved" });
15050
15078
  case "error" /* ERROR */:
15051
15079
  return (
15052
15080
  /**
@@ -15054,7 +15082,7 @@ function AutoSaveIndicator({
15054
15082
  * rendering it far away from the Icon/Text. Wrap it with a div to constrain
15055
15083
  * it.
15056
15084
  */
15057
- /* @__PURE__ */ jsx65("div", { className: "dif", children: /* @__PURE__ */ jsx65(Tooltip, { title: String(errors), placement: "bottom", children: /* @__PURE__ */ jsx65(Indicator, { icon: "error", color: "--b-danger" /* Danger */, text: "Error saving" }) }) })
15085
+ /* @__PURE__ */ jsx66("div", { className: "dif", children: /* @__PURE__ */ jsx66(Tooltip, { title: String(errors), placement: "bottom", children: /* @__PURE__ */ jsx66(Indicator, { icon: "error", color: "--b-danger" /* Danger */, text: "Error saving" }) }) })
15058
15086
  );
15059
15087
  default:
15060
15088
  assertNever(status);
@@ -15076,7 +15104,7 @@ function Indicator({
15076
15104
  fontSize: "fz_14px",
15077
15105
  lineHeight: "lh_20px"
15078
15106
  }), children: [
15079
- /* @__PURE__ */ jsx65(Icon, { icon, color }),
15107
+ /* @__PURE__ */ jsx66(Icon, { icon, color }),
15080
15108
  text
15081
15109
  ] });
15082
15110
  }
@@ -15088,7 +15116,7 @@ import { useMenuTriggerState as useMenuTriggerState2 } from "react-stately";
15088
15116
 
15089
15117
  // src/components/internal/ContextualModal.tsx
15090
15118
  import { FocusScope as FocusScope2 } from "react-aria";
15091
- import { jsx as jsx66, jsxs as jsxs44 } from "react/jsx-runtime";
15119
+ import { jsx as jsx67, jsxs as jsxs44 } from "react/jsx-runtime";
15092
15120
  function ContextualModal(props) {
15093
15121
  const {
15094
15122
  content: content2,
@@ -15096,14 +15124,14 @@ function ContextualModal(props) {
15096
15124
  close
15097
15125
  } = props;
15098
15126
  const tid = useTestIds(props, "popup");
15099
- return /* @__PURE__ */ jsx66(FocusScope2, { restoreFocus: true, autoFocus: true, children: /* @__PURE__ */ jsxs44("div", { className: "pt3 pb3 pr3 pl3 df fdc g_3 bgWhite bshModal br4 maxh_inherit oa", ...tid, children: [
15100
- title && /* @__PURE__ */ jsx66("div", { className: "fw6 fz_18px lh_28px tac", ...tid.title, children: title }),
15101
- /* @__PURE__ */ jsx66("div", { ...tid.content, children: typeof content2 === "function" ? content2(close) : content2 })
15127
+ return /* @__PURE__ */ jsx67(FocusScope2, { restoreFocus: true, autoFocus: true, children: /* @__PURE__ */ jsxs44("div", { className: "pt3 pb3 pr3 pl3 df fdc g_3 bgWhite bshModal br4 maxh_inherit oa", ...tid, children: [
15128
+ title && /* @__PURE__ */ jsx67("div", { className: "fw6 fz_18px lh_28px tac", ...tid.title, children: title }),
15129
+ /* @__PURE__ */ jsx67("div", { ...tid.content, children: typeof content2 === "function" ? content2(close) : content2 })
15102
15130
  ] }) });
15103
15131
  }
15104
15132
 
15105
15133
  // src/components/ButtonModal.tsx
15106
- import { jsx as jsx67 } from "react/jsx-runtime";
15134
+ import { jsx as jsx68 } from "react/jsx-runtime";
15107
15135
  function ButtonModal(props) {
15108
15136
  const { storybookDefaultOpen, trigger, disabled, content: content2, title } = props;
15109
15137
  const state = useMenuTriggerState2({ isOpen: storybookDefaultOpen });
@@ -15113,12 +15141,12 @@ function ButtonModal(props) {
15113
15141
  props,
15114
15142
  isTextButton(trigger) ? labelOr(trigger, "buttonModal") : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
15115
15143
  );
15116
- return /* @__PURE__ */ jsx67(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx67(ContextualModal, { content: content2, title, close: state.close }) });
15144
+ return /* @__PURE__ */ jsx68(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx68(ContextualModal, { content: content2, title, close: state.close }) });
15117
15145
  }
15118
15146
 
15119
15147
  // src/components/Avatar/AvatarGroup.tsx
15120
15148
  import { trussProps as trussProps44 } from "@homebound/truss/runtime";
15121
- import { jsx as jsx68, jsxs as jsxs45 } from "react/jsx-runtime";
15149
+ import { jsx as jsx69, jsxs as jsxs45 } from "react/jsx-runtime";
15122
15150
  function AvatarGroup(props) {
15123
15151
  const {
15124
15152
  avatars,
@@ -15128,7 +15156,7 @@ function AvatarGroup(props) {
15128
15156
  const visibleAvatars = avatars.slice(0, maxVisibleAvatars);
15129
15157
  const menuAvatars = avatars.slice(maxVisibleAvatars);
15130
15158
  return /* @__PURE__ */ jsxs45("div", { className: "df aic g_1 fw6 fz_12px lh_16px", children: [
15131
- /* @__PURE__ */ jsx68("div", { className: "df aic", children: visibleAvatars.map((avatar, idx) => /* @__PURE__ */ jsx68("div", { ...trussProps44({
15159
+ /* @__PURE__ */ jsx69("div", { className: "df aic", children: visibleAvatars.map((avatar, idx) => /* @__PURE__ */ jsx69("div", { ...trussProps44({
15132
15160
  borderRadius: "br100",
15133
15161
  borderStyle: "bss",
15134
15162
  borderWidth: "bw_3px",
@@ -15138,11 +15166,11 @@ function AvatarGroup(props) {
15138
15166
  "--marginLeft": `${-1 * sizeToOverlap[size]}px`
15139
15167
  }]
15140
15168
  } : {}
15141
- }), children: /* @__PURE__ */ jsx68(Avatar, { src: avatar.src, name: avatar.name, size }) }, avatar.src ?? idx)) }),
15142
- menuAvatars.length > 0 && /* @__PURE__ */ jsx68(ButtonModal, { trigger: {
15169
+ }), children: /* @__PURE__ */ jsx69(Avatar, { src: avatar.src, name: avatar.name, size }) }, avatar.src ?? idx)) }),
15170
+ menuAvatars.length > 0 && /* @__PURE__ */ jsx69(ButtonModal, { trigger: {
15143
15171
  label: `+ ${menuAvatars.length} more`,
15144
15172
  variant: "text"
15145
- }, hideEndAdornment: true, content: /* @__PURE__ */ jsx68("div", { className: "df fdc g_1 mt_neg12px mb_neg12px mr_neg12px ml_neg12px", children: menuAvatars.map((a, idx) => /* @__PURE__ */ jsx68(Avatar, { src: a.src, name: a.name, showName: true, size: "md" }, a.src ?? idx)) }) })
15173
+ }, hideEndAdornment: true, content: /* @__PURE__ */ jsx69("div", { className: "df fdc g_1 mt_neg12px mb_neg12px mr_neg12px ml_neg12px", children: menuAvatars.map((a, idx) => /* @__PURE__ */ jsx69(Avatar, { src: a.src, name: a.name, showName: true, size: "md" }, a.src ?? idx)) }) })
15146
15174
  ] });
15147
15175
  }
15148
15176
  var sizeToOverlap = {
@@ -15154,7 +15182,7 @@ var sizeToOverlap = {
15154
15182
 
15155
15183
  // src/components/Banner.tsx
15156
15184
  import { trussProps as trussProps45 } from "@homebound/truss/runtime";
15157
- import { jsx as jsx69, jsxs as jsxs46 } from "react/jsx-runtime";
15185
+ import { jsx as jsx70, jsxs as jsxs46 } from "react/jsx-runtime";
15158
15186
  function Banner(props) {
15159
15187
  const {
15160
15188
  type,
@@ -15182,9 +15210,9 @@ function Banner(props) {
15182
15210
  boxShadow: "bshBasic"
15183
15211
  }
15184
15212
  }), ...tid, role: "alert", children: [
15185
- showIcon && /* @__PURE__ */ jsx69("span", { className: "fs0", children: /* @__PURE__ */ jsx69(Icon, { icon: typeToIcon[type], ...tid.type, color: "rgba(36, 36, 36, 1)" /* Gray900 */ }) }),
15186
- /* @__PURE__ */ jsx69("span", { className: "fg1", ...tid.message, children: message }),
15187
- onClose && /* @__PURE__ */ jsx69("span", { className: "lh_0", children: /* @__PURE__ */ jsx69(IconButton, { icon: "x", onClick: onClose, ...tid.close, color: "rgba(36, 36, 36, 1)" /* Gray900 */ }) })
15213
+ showIcon && /* @__PURE__ */ jsx70("span", { className: "fs0", children: /* @__PURE__ */ jsx70(Icon, { icon: typeToIcon[type], ...tid.type, color: "rgba(36, 36, 36, 1)" /* Gray900 */ }) }),
15214
+ /* @__PURE__ */ jsx70("span", { className: "fg1", ...tid.message, children: message }),
15215
+ onClose && /* @__PURE__ */ jsx70("span", { className: "lh_0", children: /* @__PURE__ */ jsx70(IconButton, { icon: "x", onClick: onClose, ...tid.close, color: "rgba(36, 36, 36, 1)" /* Gray900 */ }) })
15188
15216
  ] });
15189
15217
  }
15190
15218
  var typeToIcon = {
@@ -15248,7 +15276,7 @@ function matchMediaBreakpoints() {
15248
15276
  }
15249
15277
 
15250
15278
  // src/components/Breadcrumbs.tsx
15251
- import { Fragment as Fragment21, jsx as jsx70, jsxs as jsxs47 } from "react/jsx-runtime";
15279
+ import { Fragment as Fragment21, jsx as jsx71, jsxs as jsxs47 } from "react/jsx-runtime";
15252
15280
  function Breadcrumbs({
15253
15281
  breadcrumbs
15254
15282
  }) {
@@ -15264,8 +15292,8 @@ function Breadcrumbs({
15264
15292
  return (
15265
15293
  // Index is added to the key to prevent rendering issues when multiple items have the same label
15266
15294
  /* @__PURE__ */ jsxs47(Fragment20, { children: [
15267
- index > 0 && /* @__PURE__ */ jsx70("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
15268
- /* @__PURE__ */ jsx70(Link5, { ...tid.link, to: bc.href, title: bc.label, ...trussProps46({
15295
+ index > 0 && /* @__PURE__ */ jsx71("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
15296
+ /* @__PURE__ */ jsx71(Link5, { ...tid.link, to: bc.href, title: bc.label, ...trussProps46({
15269
15297
  ...{
15270
15298
  fontWeight: "fw4",
15271
15299
  fontSize: "fz_12px",
@@ -15284,10 +15312,10 @@ function Breadcrumbs({
15284
15312
  ] }, `${bc.label}-${index}`)
15285
15313
  );
15286
15314
  }
15287
- return /* @__PURE__ */ jsx70("div", { className: "df aic g_4px", children: shouldCollapse ? /* @__PURE__ */ jsxs47(Fragment21, { children: [
15315
+ return /* @__PURE__ */ jsx71("div", { className: "df aic g_4px", children: shouldCollapse ? /* @__PURE__ */ jsxs47(Fragment21, { children: [
15288
15316
  items.slice(0, leadCount).map((bc, i) => renderBreadcrumb(bc, i)),
15289
- /* @__PURE__ */ jsx70("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
15290
- /* @__PURE__ */ jsx70("button", { ...tid.expand, className: "fw4 fz_12px lh_16px gray900 h_gray600", onClick: () => setCollapsed(false), children: "..." }),
15317
+ /* @__PURE__ */ jsx71("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
15318
+ /* @__PURE__ */ jsx71("button", { ...tid.expand, className: "fw4 fz_12px lh_16px gray900 h_gray600", onClick: () => setCollapsed(false), children: "..." }),
15291
15319
  renderBreadcrumb(items[items.length - 1], items.length - 1, true)
15292
15320
  ] }) : items.map((bc, i) => renderBreadcrumb(bc, i, i === items.length - 1)) });
15293
15321
  }
@@ -15405,7 +15433,7 @@ function dateMatchersToDayPickerMatchers(matchers) {
15405
15433
  import { useRef as useRef24 } from "react";
15406
15434
  import { useDayRender } from "react-day-picker";
15407
15435
  import { trussProps as trussProps47, mergeProps as mergeProps15 } from "@homebound/truss/runtime";
15408
- import { Fragment as Fragment22, jsx as jsx71, jsxs as jsxs48 } from "react/jsx-runtime";
15436
+ import { Fragment as Fragment22, jsx as jsx72, jsxs as jsxs48 } from "react/jsx-runtime";
15409
15437
  function Day(props) {
15410
15438
  const tid = useTestIds(props, "datePickerDay");
15411
15439
  const buttonRef = useRef24(null);
@@ -15417,10 +15445,10 @@ function Day(props) {
15417
15445
  divProps
15418
15446
  } = useDayRender(props.date, props.displayMonth, buttonRef);
15419
15447
  if (isHidden) {
15420
- return /* @__PURE__ */ jsx71(Fragment22, {});
15448
+ return /* @__PURE__ */ jsx72(Fragment22, {});
15421
15449
  }
15422
15450
  if (!isButton) {
15423
- return /* @__PURE__ */ jsx71("div", { ...divProps });
15451
+ return /* @__PURE__ */ jsx72("div", { ...divProps });
15424
15452
  }
15425
15453
  const {
15426
15454
  className,
@@ -15484,8 +15512,8 @@ function Day(props) {
15484
15512
  }]
15485
15513
  }
15486
15514
  }), children: [
15487
- /* @__PURE__ */ jsx71("div", { className: "mt_neg2px", children }),
15488
- indicatorDot && /* @__PURE__ */ jsx71(
15515
+ /* @__PURE__ */ jsx72("div", { className: "mt_neg2px", children }),
15516
+ indicatorDot && /* @__PURE__ */ jsx72(
15489
15517
  "div",
15490
15518
  {
15491
15519
  ...trussProps47({
@@ -15507,21 +15535,21 @@ function Day(props) {
15507
15535
  }
15508
15536
  )
15509
15537
  ] }),
15510
- showRangeStyles && range_start && /* @__PURE__ */ jsx71("span", { ...trussProps47({
15538
+ showRangeStyles && range_start && /* @__PURE__ */ jsx72("span", { ...trussProps47({
15511
15539
  ...rangeBaseStyles,
15512
15540
  ...{
15513
15541
  right: "r_neg2px",
15514
15542
  width: "w_8px"
15515
15543
  }
15516
15544
  }) }),
15517
- showRangeStyles && range_end && /* @__PURE__ */ jsx71("span", { ...trussProps47({
15545
+ showRangeStyles && range_end && /* @__PURE__ */ jsx72("span", { ...trussProps47({
15518
15546
  ...rangeBaseStyles,
15519
15547
  ...{
15520
15548
  width: "w_8px",
15521
15549
  left: "l_neg2px"
15522
15550
  }
15523
15551
  }) }),
15524
- showRangeStyles && range_middle && /* @__PURE__ */ jsx71("span", { ...trussProps47({
15552
+ showRangeStyles && range_middle && /* @__PURE__ */ jsx72("span", { ...trussProps47({
15525
15553
  ...rangeBaseStyles,
15526
15554
  ...{
15527
15555
  left: "l_neg2px"
@@ -15543,7 +15571,7 @@ var rangeBaseStyles = {
15543
15571
  import { addMonths, addYears } from "date-fns";
15544
15572
  import { useNavigation } from "react-day-picker";
15545
15573
  import { trussProps as trussProps48 } from "@homebound/truss/runtime";
15546
- import { jsx as jsx72, jsxs as jsxs49 } from "react/jsx-runtime";
15574
+ import { jsx as jsx73, jsxs as jsxs49 } from "react/jsx-runtime";
15547
15575
  function Header(props) {
15548
15576
  const {
15549
15577
  displayMonth
@@ -15553,10 +15581,10 @@ function Header(props) {
15553
15581
  goToMonth
15554
15582
  } = useNavigation();
15555
15583
  return /* @__PURE__ */ jsxs49("div", { className: "df jcsb aic ml_12px mr_2px h_32px", children: [
15556
- /* @__PURE__ */ jsx72("h1", { className: "fw4 fz_16px lh_24px", children: formatPlainDate(displayMonthDate, "monthYear") }),
15584
+ /* @__PURE__ */ jsx73("h1", { className: "fw4 fz_16px lh_24px", children: formatPlainDate(displayMonthDate, "monthYear") }),
15557
15585
  /* @__PURE__ */ jsxs49("div", { children: [
15558
- /* @__PURE__ */ jsx72(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronLeft", onClick: () => goToMonth(addMonths(displayMonth, -1)) }),
15559
- /* @__PURE__ */ jsx72(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronRight", onClick: () => goToMonth(addMonths(displayMonth, 1)) })
15586
+ /* @__PURE__ */ jsx73(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronLeft", onClick: () => goToMonth(addMonths(displayMonth, -1)) }),
15587
+ /* @__PURE__ */ jsx73(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronRight", onClick: () => goToMonth(addMonths(displayMonth, 1)) })
15560
15588
  ] })
15561
15589
  ] });
15562
15590
  }
@@ -15570,8 +15598,8 @@ function YearSkipHeader(props) {
15570
15598
  } = useNavigation();
15571
15599
  return /* @__PURE__ */ jsxs49("div", { className: "df jcsb aic ml_12px mr_12px h_32px", children: [
15572
15600
  /* @__PURE__ */ jsxs49("div", { className: "df fdr jcsb", children: [
15573
- /* @__PURE__ */ jsx72(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronLeft", onClick: () => goToMonth(addMonths(displayMonth, -1)) }),
15574
- /* @__PURE__ */ jsx72("h1", { ...trussProps48({
15601
+ /* @__PURE__ */ jsx73(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronLeft", onClick: () => goToMonth(addMonths(displayMonth, -1)) }),
15602
+ /* @__PURE__ */ jsx73("h1", { ...trussProps48({
15575
15603
  fontWeight: "fw4",
15576
15604
  fontSize: "fz_16px",
15577
15605
  lineHeight: "lh_24px",
@@ -15579,11 +15607,11 @@ function YearSkipHeader(props) {
15579
15607
  "--color": "var(--b-on-surface)"
15580
15608
  }]
15581
15609
  }), children: formatPlainDate(displayMonthDate, "shortMonth") }),
15582
- /* @__PURE__ */ jsx72(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronRight", onClick: () => goToMonth(addMonths(displayMonth, 1)) })
15610
+ /* @__PURE__ */ jsx73(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronRight", onClick: () => goToMonth(addMonths(displayMonth, 1)) })
15583
15611
  ] }),
15584
15612
  /* @__PURE__ */ jsxs49("div", { className: "df fdr jcsb", children: [
15585
- /* @__PURE__ */ jsx72(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronLeft", onClick: () => goToMonth(addYears(displayMonth, -1)) }),
15586
- /* @__PURE__ */ jsx72("h1", { ...trussProps48({
15613
+ /* @__PURE__ */ jsx73(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronLeft", onClick: () => goToMonth(addYears(displayMonth, -1)) }),
15614
+ /* @__PURE__ */ jsx73("h1", { ...trussProps48({
15587
15615
  fontWeight: "fw4",
15588
15616
  fontSize: "fz_16px",
15589
15617
  lineHeight: "lh_24px",
@@ -15591,14 +15619,14 @@ function YearSkipHeader(props) {
15591
15619
  "--color": "var(--b-on-surface)"
15592
15620
  }]
15593
15621
  }), children: formatPlainDate(displayMonthDate, "year") }),
15594
- /* @__PURE__ */ jsx72(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronRight", onClick: () => goToMonth(addYears(displayMonth, 1)) })
15622
+ /* @__PURE__ */ jsx73(IconButton, { color: "--b-on-surface-muted" /* OnSurfaceMuted */, icon: "chevronRight", onClick: () => goToMonth(addYears(displayMonth, 1)) })
15595
15623
  ] })
15596
15624
  ] });
15597
15625
  }
15598
15626
 
15599
15627
  // src/components/internal/DatePicker/WeekHeader.tsx
15600
15628
  import { trussProps as trussProps49 } from "@homebound/truss/runtime";
15601
- import { jsx as jsx73 } from "react/jsx-runtime";
15629
+ import { jsx as jsx74 } from "react/jsx-runtime";
15602
15630
  import { createElement as createElement2 } from "react";
15603
15631
  function WeekHeader() {
15604
15632
  const today = todayPlainDate();
@@ -15611,7 +15639,7 @@ function WeekHeader() {
15611
15639
  days: i
15612
15640
  }));
15613
15641
  }
15614
- return /* @__PURE__ */ jsx73("thead", { className: "rdp-head", children: /* @__PURE__ */ jsx73("tr", { className: "rdp-head_row", children: days.map((day) => /* @__PURE__ */ createElement2("th", { scope: "col", ...trussProps49({
15642
+ return /* @__PURE__ */ jsx74("thead", { className: "rdp-head", children: /* @__PURE__ */ jsx74("tr", { className: "rdp-head_row", children: days.map((day) => /* @__PURE__ */ createElement2("th", { scope: "col", ...trussProps49({
15615
15643
  paddingTop: "pt1",
15616
15644
  paddingBottom: "pb_12px",
15617
15645
  paddingRight: "pr1",
@@ -15622,12 +15650,12 @@ function WeekHeader() {
15622
15650
  color: ["color_var", {
15623
15651
  "--color": "var(--b-on-surface-muted)"
15624
15652
  }]
15625
- }), key: formatPlainDate(day, "weekday") }, /* @__PURE__ */ jsx73("span", { "aria-hidden": "true", children: formatPlainDate(day, "weekdayInitial") }), /* @__PURE__ */ jsx73("span", { className: "rdp-vhidden", children: formatPlainDate(day, "weekday") }))) }) });
15653
+ }), key: formatPlainDate(day, "weekday") }, /* @__PURE__ */ jsx74("span", { "aria-hidden": "true", children: formatPlainDate(day, "weekdayInitial") }), /* @__PURE__ */ jsx74("span", { className: "rdp-vhidden", children: formatPlainDate(day, "weekday") }))) }) });
15626
15654
  }
15627
15655
 
15628
15656
  // src/components/internal/DatePicker/DatePicker.tsx
15629
15657
  import { trussProps as trussProps50 } from "@homebound/truss/runtime";
15630
- import { jsx as jsx74 } from "react/jsx-runtime";
15658
+ import { jsx as jsx75 } from "react/jsx-runtime";
15631
15659
  function DatePicker(props) {
15632
15660
  const {
15633
15661
  value,
@@ -15637,7 +15665,7 @@ function DatePicker(props) {
15637
15665
  useYearPicker
15638
15666
  } = props;
15639
15667
  const tid = useTestIds(props, "datePicker");
15640
- return /* @__PURE__ */ jsx74("div", { ...trussProps50({
15668
+ return /* @__PURE__ */ jsx75("div", { ...trussProps50({
15641
15669
  display: "dib",
15642
15670
  backgroundColor: ["bgColor_var", {
15643
15671
  "--backgroundColor": "var(--b-surface-raised)"
@@ -15645,7 +15673,7 @@ function DatePicker(props) {
15645
15673
  fontWeight: "fw4",
15646
15674
  fontSize: "fz_12px",
15647
15675
  lineHeight: "lh_16px"
15648
- }), ...tid, children: /* @__PURE__ */ jsx74(
15676
+ }), ...tid, children: /* @__PURE__ */ jsx75(
15649
15677
  DayPicker,
15650
15678
  {
15651
15679
  components: {
@@ -15668,16 +15696,16 @@ function DatePicker(props) {
15668
15696
  }
15669
15697
 
15670
15698
  // src/components/internal/DatePicker/DatePickerOverlay.tsx
15671
- import { jsx as jsx75 } from "react/jsx-runtime";
15699
+ import { jsx as jsx76 } from "react/jsx-runtime";
15672
15700
  function DatePickerOverlay({
15673
15701
  overlayProps,
15674
15702
  children
15675
15703
  }) {
15676
- return /* @__PURE__ */ jsx75("div", { className: "br4 bshModal", ...overlayProps, children });
15704
+ return /* @__PURE__ */ jsx76("div", { className: "br4 bshModal", ...overlayProps, children });
15677
15705
  }
15678
15706
 
15679
15707
  // src/components/ButtonDatePicker.tsx
15680
- import { jsx as jsx76 } from "react/jsx-runtime";
15708
+ import { jsx as jsx77 } from "react/jsx-runtime";
15681
15709
  function ButtonDatePicker(props) {
15682
15710
  const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
15683
15711
  const state = useMenuTriggerState3({ isOpen: defaultOpen });
@@ -15690,7 +15718,7 @@ function ButtonDatePicker(props) {
15690
15718
  props,
15691
15719
  isTextButton(trigger) ? defaultTestId(labelOr(trigger, "buttonDatePicker")) : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
15692
15720
  );
15693
- return /* @__PURE__ */ jsx76(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx76(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ jsx76(
15721
+ return /* @__PURE__ */ jsx77(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ jsx77(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ jsx77(
15694
15722
  DatePicker,
15695
15723
  {
15696
15724
  ...datePickerProps,
@@ -15707,7 +15735,7 @@ function ButtonDatePicker(props) {
15707
15735
  import { useRef as useRef26 } from "react";
15708
15736
  import { useButton as useButton5, useFocusRing as useFocusRing8, useHover as useHover9 } from "react-aria";
15709
15737
  import { trussProps as trussProps51 } from "@homebound/truss/runtime";
15710
- import { jsx as jsx77, jsxs as jsxs50 } from "react/jsx-runtime";
15738
+ import { jsx as jsx78, jsxs as jsxs50 } from "react/jsx-runtime";
15711
15739
  function ButtonGroup(props) {
15712
15740
  const {
15713
15741
  buttons,
@@ -15717,7 +15745,7 @@ function ButtonGroup(props) {
15717
15745
  const tid = useTestIds(props, "buttonGroup");
15718
15746
  return (
15719
15747
  // Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
15720
- /* @__PURE__ */ jsx77("div", { ...tid, ...trussProps51({
15748
+ /* @__PURE__ */ jsx78("div", { ...tid, ...trussProps51({
15721
15749
  ...{
15722
15750
  display: "df",
15723
15751
  lineHeight: "lh_0"
@@ -15728,7 +15756,7 @@ function ButtonGroup(props) {
15728
15756
  ...buttonProps
15729
15757
  }, i) => (
15730
15758
  // Disable the button if the ButtonGroup is disabled or if the current button is disabled.
15731
- /* @__PURE__ */ jsx77(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, isFirst: i === 0, isLast: i === buttons.length - 1, ...tid }, i)
15759
+ /* @__PURE__ */ jsx78(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, isFirst: i === 0, isLast: i === buttons.length - 1, ...tid }, i)
15732
15760
  )) })
15733
15761
  );
15734
15762
  }
@@ -15766,7 +15794,7 @@ function GroupButton(props) {
15766
15794
  isHovered
15767
15795
  } = useHover9(ariaProps);
15768
15796
  const tid = useTestIds(props);
15769
- return /* @__PURE__ */ jsx77("span", { ...trussProps51(getButtonStyles2(isFirst, isLast)), children: maybeTooltip({
15797
+ return /* @__PURE__ */ jsx78("span", { ...trussProps51(getButtonStyles2(isFirst, isLast)), children: maybeTooltip({
15770
15798
  title: resolveTooltip(disabled, tooltip),
15771
15799
  placement: "top",
15772
15800
  children: /* @__PURE__ */ jsxs50("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...trussProps51({
@@ -15796,7 +15824,7 @@ function GroupButton(props) {
15796
15824
  ...isPressed ? pressedStyles : isHovered ? hoverStyles2 : {},
15797
15825
  ...icon ? iconStyles2[size] : {}
15798
15826
  }), ...tid[defaultTestId(typeof text === "string" && text || icon || "button")], children: [
15799
- icon && /* @__PURE__ */ jsx77(Icon, { xss: {
15827
+ icon && /* @__PURE__ */ jsx78(Icon, { xss: {
15800
15828
  ...!!text ? {
15801
15829
  marginRight: "mr_4px"
15802
15830
  } : {}
@@ -15887,7 +15915,7 @@ var iconStyles2 = {
15887
15915
  import { useMemo as useMemo17 } from "react";
15888
15916
  import { useHover as useHover10 } from "react-aria";
15889
15917
  import { trussProps as trussProps52, maybeCssVar as maybeCssVar26 } from "@homebound/truss/runtime";
15890
- import { jsx as jsx78, jsxs as jsxs51 } from "react/jsx-runtime";
15918
+ import { jsx as jsx79, jsxs as jsxs51 } from "react/jsx-runtime";
15891
15919
  function Card(props) {
15892
15920
  const {
15893
15921
  title,
@@ -15920,7 +15948,7 @@ function Card(props) {
15920
15948
  ...isDisabled && disabledStyles2
15921
15949
  }), [isDisabled, isHovered, bordered, type, isList, fullWidth]);
15922
15950
  return /* @__PURE__ */ jsxs51("div", { ...trussProps52(styles), ...hoverProps, ...tid, children: [
15923
- /* @__PURE__ */ jsx78("div", { ...trussProps52({
15951
+ /* @__PURE__ */ jsx79("div", { ...trussProps52({
15924
15952
  ...{
15925
15953
  height: ["h_var", {
15926
15954
  "--height": `${imgHeight}px`
@@ -15943,14 +15971,14 @@ function Card(props) {
15943
15971
  flexShrink: "fs0"
15944
15972
  },
15945
15973
  ...isHovered && !isList && imageHoverStyles
15946
- }), children: /* @__PURE__ */ jsx78("img", { ...trussProps52({
15974
+ }), children: /* @__PURE__ */ jsx79("img", { ...trussProps52({
15947
15975
  width: "w100",
15948
15976
  height: "h100",
15949
15977
  objectFit: ["objectFit_var", {
15950
15978
  "--objectFit": maybeCssVar26(imageFit)
15951
15979
  }]
15952
15980
  }), src: imgSrc, alt: title, ...tid.img }) }),
15953
- isHovered && buttonMenuItems && /* @__PURE__ */ jsx78("div", { ...trussProps52({
15981
+ isHovered && buttonMenuItems && /* @__PURE__ */ jsx79("div", { ...trussProps52({
15954
15982
  position: "absolute",
15955
15983
  right: "r_1",
15956
15984
  top: "top1",
@@ -15958,15 +15986,15 @@ function Card(props) {
15958
15986
  right: "r_3",
15959
15987
  top: "top3"
15960
15988
  } : {}
15961
- }), children: /* @__PURE__ */ jsx78(ButtonMenu, { trigger: {
15989
+ }), children: /* @__PURE__ */ jsx79(ButtonMenu, { trigger: {
15962
15990
  icon: "verticalDots",
15963
15991
  color: isList ? "--b-on-surface-muted" /* OnSurfaceMuted */ : "--b-on-primary" /* OnPrimary */
15964
15992
  }, items: buttonMenuItems }) }),
15965
- tag && !isList && /* @__PURE__ */ jsx78("div", { className: "absolute l_1 tp_4px", children: /* @__PURE__ */ jsx78(Tag, { type: tag.type, text: tag.text, ...tid.tag }) }),
15993
+ tag && !isList && /* @__PURE__ */ jsx79("div", { className: "absolute l_1 tp_4px", children: /* @__PURE__ */ jsx79(Tag, { type: tag.type, text: tag.text, ...tid.tag }) }),
15966
15994
  /* @__PURE__ */ jsxs51("div", { className: "df fdc aifs g_1", children: [
15967
- tag && isList && /* @__PURE__ */ jsx78(Tag, { type: tag.type, text: tag.text, ...tid.tag }),
15995
+ tag && isList && /* @__PURE__ */ jsx79(Tag, { type: tag.type, text: tag.text, ...tid.tag }),
15968
15996
  /* @__PURE__ */ jsxs51("div", { children: [
15969
- /* @__PURE__ */ jsx78("div", { ...trussProps52({
15997
+ /* @__PURE__ */ jsx79("div", { ...trussProps52({
15970
15998
  fontWeight: "fw6",
15971
15999
  fontSize: "fz_12px",
15972
16000
  lineHeight: "lh_16px",
@@ -15974,7 +16002,7 @@ function Card(props) {
15974
16002
  "--color": "var(--b-on-surface-muted)"
15975
16003
  }]
15976
16004
  }), ...tid.subtitle, children: subtitle }),
15977
- /* @__PURE__ */ jsx78("div", { ...trussProps52({
16005
+ /* @__PURE__ */ jsx79("div", { ...trussProps52({
15978
16006
  fontWeight: "fw6",
15979
16007
  fontSize: "fz_14px",
15980
16008
  lineHeight: "lh_20px",
@@ -15988,7 +16016,7 @@ function Card(props) {
15988
16016
  } : {}
15989
16017
  }), ...tid.title, children: title })
15990
16018
  ] }),
15991
- /* @__PURE__ */ jsx78("div", { ...tid.details, children: detailContent })
16019
+ /* @__PURE__ */ jsx79("div", { ...tid.details, children: detailContent })
15992
16020
  ] })
15993
16021
  ] });
15994
16022
  }
@@ -16048,9 +16076,9 @@ var imageHoverStyles = {
16048
16076
 
16049
16077
  // src/components/Copy.tsx
16050
16078
  import { mergeProps as mergeProps16 } from "@homebound/truss/runtime";
16051
- import { jsx as jsx79 } from "react/jsx-runtime";
16079
+ import { jsx as jsx80 } from "react/jsx-runtime";
16052
16080
  function Copy(props) {
16053
- return /* @__PURE__ */ jsx79("div", { ...mergeProps16("beam-copy", void 0, {
16081
+ return /* @__PURE__ */ jsx80("div", { ...mergeProps16("beam-copy", void 0, {
16054
16082
  ...{
16055
16083
  fontWeight: "fw4",
16056
16084
  fontSize: "fz_14px",
@@ -16067,7 +16095,7 @@ function Copy(props) {
16067
16095
 
16068
16096
  // src/components/CountBadge.tsx
16069
16097
  import { trussProps as trussProps53, maybeCssVar as maybeCssVar27 } from "@homebound/truss/runtime";
16070
- import { jsx as jsx80 } from "react/jsx-runtime";
16098
+ import { jsx as jsx81 } from "react/jsx-runtime";
16071
16099
  function CountBadge(props) {
16072
16100
  const {
16073
16101
  count,
@@ -16078,7 +16106,7 @@ function CountBadge(props) {
16078
16106
  } = props;
16079
16107
  const tid = useTestIds(otherProps, "countBadge");
16080
16108
  if (hideIfZero && count === 0) return null;
16081
- return /* @__PURE__ */ jsx80("span", { ...tid, ...trussProps53({
16109
+ return /* @__PURE__ */ jsx81("span", { ...tid, ...trussProps53({
16082
16110
  ...{
16083
16111
  height: ["sq_var", {
16084
16112
  "--height": `${count > 100 ? 18 : 16}px`
@@ -16111,7 +16139,7 @@ function CountBadge(props) {
16111
16139
 
16112
16140
  // src/components/EnvironmentBanner/EnvironmentBanner.tsx
16113
16141
  import { trussProps as trussProps54, maybeCssVar as maybeCssVar_13 } from "@homebound/truss/runtime";
16114
- import { jsx as jsx81, jsxs as jsxs52 } from "react/jsx-runtime";
16142
+ import { jsx as jsx82, jsxs as jsxs52 } from "react/jsx-runtime";
16115
16143
  function EnvironmentBanner(props) {
16116
16144
  const {
16117
16145
  env,
@@ -16158,7 +16186,7 @@ function EnvironmentBanner(props) {
16158
16186
  ...headerContentPaddingX()
16159
16187
  }), ...tid.content, children: [
16160
16188
  /* @__PURE__ */ jsxs52("span", { className: "df aic g_2 fg1 mh0 oh", ...tid.left, children: [
16161
- /* @__PURE__ */ jsx81(Tag, { text: badgeLabel, xss: {
16189
+ /* @__PURE__ */ jsx82(Tag, { text: badgeLabel, xss: {
16162
16190
  backgroundColor: "bgColor_FFFFFF90"
16163
16191
  }, ...tid.badge }),
16164
16192
  /* @__PURE__ */ jsxs52("span", { ...trussProps54({
@@ -16179,7 +16207,7 @@ function EnvironmentBanner(props) {
16179
16207
  }
16180
16208
  }), ...tid.message, children: [
16181
16209
  message,
16182
- /* @__PURE__ */ jsx81("span", { className: "fs0", ...tid.info, children: /* @__PURE__ */ jsx81(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
16210
+ /* @__PURE__ */ jsx82("span", { className: "fs0", ...tid.info, children: /* @__PURE__ */ jsx82(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
16183
16211
  ] })
16184
16212
  ] }),
16185
16213
  impersonating != null && /* @__PURE__ */ jsxs52("span", { ...trussProps54({
@@ -16195,10 +16223,10 @@ function EnvironmentBanner(props) {
16195
16223
  flexShrink: "fs0"
16196
16224
  }), ...tid.impersonating, children: [
16197
16225
  (env !== "prod" || showProdWarning) && /* @__PURE__ */ jsxs52("span", { children: [
16198
- /* @__PURE__ */ jsx81("span", { className: "dn mdandup_dib", children: "Impersonating \xA0" }),
16226
+ /* @__PURE__ */ jsx82("span", { className: "dn mdandup_dib", children: "Impersonating \xA0" }),
16199
16227
  impersonating.name
16200
16228
  ] }),
16201
- /* @__PURE__ */ jsx81("span", { className: "df fs0", ...tid.impersonatingIcon, children: /* @__PURE__ */ jsx81(Icon, { icon: "impersonate", inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
16229
+ /* @__PURE__ */ jsx82("span", { className: "df fs0", ...tid.impersonatingIcon, children: /* @__PURE__ */ jsx82(Icon, { icon: "impersonate", inc: 2, color: "--b-on-primary" /* OnPrimary */ }) })
16202
16230
  ] })
16203
16231
  ] })
16204
16232
  ] });
@@ -16271,10 +16299,10 @@ function getInvertedCorner(side, bgColorVar) {
16271
16299
  right: "r_0"
16272
16300
  };
16273
16301
  const shadowXOffset = side === "left" ? -invertedCornerRadiusPx : invertedCornerRadiusPx;
16274
- return /* @__PURE__ */ jsx81("div", { "aria-hidden": true, ...trussProps54({
16302
+ return /* @__PURE__ */ jsx82("div", { "aria-hidden": true, ...trussProps54({
16275
16303
  ...shell,
16276
16304
  ...outerPosition
16277
- }), children: /* @__PURE__ */ jsx81("div", { ...trussProps54({
16305
+ }), children: /* @__PURE__ */ jsx82("div", { ...trussProps54({
16278
16306
  height: "h_200",
16279
16307
  width: "w_200",
16280
16308
  position: "absolute",
@@ -16313,8 +16341,8 @@ import { createPortal as createPortal5 } from "react-dom";
16313
16341
 
16314
16342
  // src/components/BeamContext.tsx
16315
16343
  import {
16316
- createContext as createContext10,
16317
- useContext as useContext19,
16344
+ createContext as createContext11,
16345
+ useContext as useContext20,
16318
16346
  useMemo as useMemo24,
16319
16347
  useReducer,
16320
16348
  useRef as useRef30
@@ -16322,20 +16350,20 @@ import {
16322
16350
  import { OverlayProvider } from "react-aria";
16323
16351
 
16324
16352
  // src/components/DocumentTitle/DocumentTitleContext.tsx
16325
- import { createContext as createContext6, useContext as useContext15, useMemo as useMemo18 } from "react";
16326
- import { jsx as jsx82 } from "react/jsx-runtime";
16327
- var DocumentTitleContext = createContext6(void 0);
16353
+ import { createContext as createContext7, useContext as useContext16, useMemo as useMemo18 } from "react";
16354
+ import { jsx as jsx83 } from "react/jsx-runtime";
16355
+ var DocumentTitleContext = createContext7(void 0);
16328
16356
  function DocumentTitleProvider(props) {
16329
16357
  const { children, env, suffix } = props;
16330
16358
  const value = useMemo18(() => ({ env, suffix }), [env, suffix]);
16331
- return /* @__PURE__ */ jsx82(DocumentTitleContext.Provider, { value, children });
16359
+ return /* @__PURE__ */ jsx83(DocumentTitleContext.Provider, { value, children });
16332
16360
  }
16333
16361
  function useDocumentTitleConfig() {
16334
- return useContext15(DocumentTitleContext);
16362
+ return useContext16(DocumentTitleContext);
16335
16363
  }
16336
16364
 
16337
16365
  // src/components/Snackbar/SnackbarContext.tsx
16338
- import { createContext as createContext7, useContext as useContext16, useMemo as useMemo19, useState as useState24 } from "react";
16366
+ import { createContext as createContext8, useContext as useContext17, useMemo as useMemo19, useState as useState24 } from "react";
16339
16367
 
16340
16368
  // src/components/Snackbar/Snackbar.tsx
16341
16369
  import { createPortal as createPortal3 } from "react-dom";
@@ -16344,7 +16372,7 @@ import { createPortal as createPortal3 } from "react-dom";
16344
16372
  import { useLayoutEffect as useLayoutEffect4, useResizeObserver as useResizeObserver6 } from "@react-aria/utils";
16345
16373
  import { useCallback as useCallback14, useRef as useRef27, useState as useState23 } from "react";
16346
16374
  import { trussProps as trussProps55, maybeCssVar as maybeCssVar28 } from "@homebound/truss/runtime";
16347
- import { jsx as jsx83, jsxs as jsxs53 } from "react/jsx-runtime";
16375
+ import { jsx as jsx84, jsxs as jsxs53 } from "react/jsx-runtime";
16348
16376
  function SnackbarNotice(props) {
16349
16377
  const {
16350
16378
  icon,
@@ -16394,7 +16422,7 @@ function SnackbarNotice(props) {
16394
16422
  }]
16395
16423
  } : void 0
16396
16424
  }), "data-theme": contrastDataTheme, ...tid, role: "alert", children: [
16397
- icon && /* @__PURE__ */ jsx83("span", { className: "fs0 pl_12px", children: /* @__PURE__ */ jsx83(Icon, { ...typeToIcon2[icon], ...tid.icon }) }),
16425
+ icon && /* @__PURE__ */ jsx84("span", { className: "fs0 pl_12px", children: /* @__PURE__ */ jsx84(Icon, { ...typeToIcon2[icon], ...tid.icon }) }),
16398
16426
  /* @__PURE__ */ jsxs53("div", { ...trussProps55({
16399
16427
  flexGrow: "fg1",
16400
16428
  minWidth: "mw0",
@@ -16407,7 +16435,7 @@ function SnackbarNotice(props) {
16407
16435
  "--paddingLeft": `${icon ? 8 : 16}px`
16408
16436
  }]
16409
16437
  }), children: [
16410
- /* @__PURE__ */ jsx83(
16438
+ /* @__PURE__ */ jsx84(
16411
16439
  "span",
16412
16440
  {
16413
16441
  ref: messageRef,
@@ -16427,10 +16455,10 @@ function SnackbarNotice(props) {
16427
16455
  children: message
16428
16456
  }
16429
16457
  ),
16430
- hasOverflow && /* @__PURE__ */ jsx83(Button, { variant: "text", size: "sm", label: expanded ? "Collapse" : "Expand", "aria-expanded": expanded, onClick: () => setExpanded((prev) => !prev), ...tid.expand })
16458
+ hasOverflow && /* @__PURE__ */ jsx84(Button, { variant: "text", size: "sm", label: expanded ? "Collapse" : "Expand", "aria-expanded": expanded, onClick: () => setExpanded((prev) => !prev), ...tid.expand })
16431
16459
  ] }),
16432
16460
  (action || !reallyHideClose) && /* @__PURE__ */ jsxs53("span", { className: "fs0 df aic", children: [
16433
- action && /* @__PURE__ */ jsx83("span", { ...trussProps55({
16461
+ action && /* @__PURE__ */ jsx84("span", { ...trussProps55({
16434
16462
  textTransform: "ttu",
16435
16463
  fontWeight: "fw4",
16436
16464
  fontSize: "fz_14px",
@@ -16438,8 +16466,8 @@ function SnackbarNotice(props) {
16438
16466
  paddingRight: ["pr_var", {
16439
16467
  "--paddingRight": `${!reallyHideClose && action.variant !== "text" ? 4 : 8}px`
16440
16468
  }]
16441
- }), children: /* @__PURE__ */ jsx83(Button, { ...action, ...tid.action }) }),
16442
- !reallyHideClose && /* @__PURE__ */ jsx83("span", { className: "pr1 lh_0", children: /* @__PURE__ */ jsx83(IconButton, { icon: "x", onClick: onClose, ...tid.close }) })
16469
+ }), children: /* @__PURE__ */ jsx84(Button, { ...action, ...tid.action }) }),
16470
+ !reallyHideClose && /* @__PURE__ */ jsx84("span", { className: "pr1 lh_0", children: /* @__PURE__ */ jsx84(IconButton, { icon: "x", onClick: onClose, ...tid.close }) })
16443
16471
  ] })
16444
16472
  ] });
16445
16473
  }
@@ -16471,13 +16499,13 @@ var typeToIcon2 = {
16471
16499
 
16472
16500
  // src/components/Snackbar/Snackbar.tsx
16473
16501
  import { trussProps as trussProps56, maybeCssVar as maybeCssVar29 } from "@homebound/truss/runtime";
16474
- import { jsx as jsx84 } from "react/jsx-runtime";
16502
+ import { jsx as jsx85 } from "react/jsx-runtime";
16475
16503
  function Snackbar({
16476
16504
  notices,
16477
16505
  offset
16478
16506
  }) {
16479
16507
  const tid = useTestIds({});
16480
- return createPortal3(/* @__PURE__ */ jsx84("div", { ...tid.snackbarWrapper, ...trussProps56({
16508
+ return createPortal3(/* @__PURE__ */ jsx85("div", { ...tid.snackbarWrapper, ...trussProps56({
16481
16509
  position: "fixed",
16482
16510
  zIndex: ["z_var", {
16483
16511
  "--zIndex": maybeCssVar29(zIndices.snackbar)
@@ -16490,15 +16518,15 @@ function Snackbar({
16490
16518
  flexDirection: "fdc",
16491
16519
  alignItems: "aifs",
16492
16520
  gap: "g_12px"
16493
- }), children: notices.map((data) => /* @__PURE__ */ jsx84(SnackbarNotice, { ...data }, data.id)) }), document.body);
16521
+ }), children: notices.map((data) => /* @__PURE__ */ jsx85(SnackbarNotice, { ...data }, data.id)) }), document.body);
16494
16522
  }
16495
16523
  var defaultOffset = {
16496
16524
  bottom: 24
16497
16525
  };
16498
16526
 
16499
16527
  // src/components/Snackbar/SnackbarContext.tsx
16500
- import { jsx as jsx85, jsxs as jsxs54 } from "react/jsx-runtime";
16501
- var SnackbarContext = createContext7({ setNotices: () => {
16528
+ import { jsx as jsx86, jsxs as jsxs54 } from "react/jsx-runtime";
16529
+ var SnackbarContext = createContext8({ setNotices: () => {
16502
16530
  }, setOffset: () => {
16503
16531
  } });
16504
16532
  function SnackbarProvider(props) {
@@ -16507,11 +16535,11 @@ function SnackbarProvider(props) {
16507
16535
  const contextValue = useMemo19(() => ({ setNotices, setOffset }), []);
16508
16536
  return /* @__PURE__ */ jsxs54(SnackbarContext.Provider, { value: contextValue, children: [
16509
16537
  props.children,
16510
- /* @__PURE__ */ jsx85(Snackbar, { notices, offset })
16538
+ /* @__PURE__ */ jsx86(Snackbar, { notices, offset })
16511
16539
  ] });
16512
16540
  }
16513
16541
  function useSnackbarContext() {
16514
- return useContext16(SnackbarContext);
16542
+ return useContext17(SnackbarContext);
16515
16543
  }
16516
16544
 
16517
16545
  // src/components/SuperDrawer/SuperDrawer.tsx
@@ -16523,7 +16551,7 @@ import { createPortal as createPortal4 } from "react-dom";
16523
16551
  import { useMemo as useMemo22 } from "react";
16524
16552
 
16525
16553
  // src/components/Modal/ConfirmCloseModal.tsx
16526
- import { Fragment as Fragment23, jsx as jsx86, jsxs as jsxs55 } from "react/jsx-runtime";
16554
+ import { Fragment as Fragment23, jsx as jsx87, jsxs as jsxs55 } from "react/jsx-runtime";
16527
16555
  function ConfirmCloseModal(props) {
16528
16556
  const {
16529
16557
  onClose,
@@ -16538,10 +16566,10 @@ function ConfirmCloseModal(props) {
16538
16566
  modalState.current = void 0;
16539
16567
  }
16540
16568
  return /* @__PURE__ */ jsxs55(Fragment23, { children: [
16541
- /* @__PURE__ */ jsx86(ModalHeader, { children: title }),
16542
- /* @__PURE__ */ jsx86(ModalBody, { children: /* @__PURE__ */ jsx86("p", { children: message }) }),
16569
+ /* @__PURE__ */ jsx87(ModalHeader, { children: title }),
16570
+ /* @__PURE__ */ jsx87(ModalBody, { children: /* @__PURE__ */ jsx87("p", { children: message }) }),
16543
16571
  /* @__PURE__ */ jsxs55(ModalFooter, { children: [
16544
- /* @__PURE__ */ jsx86(
16572
+ /* @__PURE__ */ jsx87(
16545
16573
  Button,
16546
16574
  {
16547
16575
  variant: "quaternary",
@@ -16552,7 +16580,7 @@ function ConfirmCloseModal(props) {
16552
16580
  }
16553
16581
  }
16554
16582
  ),
16555
- /* @__PURE__ */ jsx86(
16583
+ /* @__PURE__ */ jsx87(
16556
16584
  Button,
16557
16585
  {
16558
16586
  label: continueText,
@@ -16570,15 +16598,15 @@ function ConfirmCloseModal(props) {
16570
16598
  import { useEffect as useEffect14, useMemo as useMemo21, useRef as useRef28 } from "react";
16571
16599
 
16572
16600
  // src/components/Modal/ModalContext.tsx
16573
- import { createContext as createContext8, useContext as useContext17, useMemo as useMemo20 } from "react";
16574
- import { jsx as jsx87 } from "react/jsx-runtime";
16575
- var ModalContext = createContext8({ inModal: false });
16601
+ import { createContext as createContext9, useContext as useContext18, useMemo as useMemo20 } from "react";
16602
+ import { jsx as jsx88 } from "react/jsx-runtime";
16603
+ var ModalContext = createContext9({ inModal: false });
16576
16604
  function ModalProvider({ children }) {
16577
16605
  const value = useMemo20(() => ({ inModal: true }), []);
16578
- return /* @__PURE__ */ jsx87(ModalContext.Provider, { value, children });
16606
+ return /* @__PURE__ */ jsx88(ModalContext.Provider, { value, children });
16579
16607
  }
16580
16608
  function useModalContext() {
16581
- return useContext17(ModalContext);
16609
+ return useContext18(ModalContext);
16582
16610
  }
16583
16611
 
16584
16612
  // src/components/Modal/useModal.tsx
@@ -16627,7 +16655,7 @@ function useModal() {
16627
16655
  }
16628
16656
 
16629
16657
  // src/components/SuperDrawer/useSuperDrawer.tsx
16630
- import { jsx as jsx88 } from "react/jsx-runtime";
16658
+ import { jsx as jsx89 } from "react/jsx-runtime";
16631
16659
  function useSuperDrawer() {
16632
16660
  const {
16633
16661
  drawerContentStack: contentStack,
@@ -16639,7 +16667,7 @@ function useSuperDrawer() {
16639
16667
  function canCloseDrawerDetails(i, doChange) {
16640
16668
  for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
16641
16669
  if (!canClose(canCloseDrawerDetail)) {
16642
- openModal({ content: /* @__PURE__ */ jsx88(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
16670
+ openModal({ content: /* @__PURE__ */ jsx89(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
16643
16671
  return false;
16644
16672
  }
16645
16673
  }
@@ -16659,7 +16687,7 @@ function useSuperDrawer() {
16659
16687
  for (const canCloseDrawer of canCloseChecks.current) {
16660
16688
  if (!canClose(canCloseDrawer)) {
16661
16689
  openModal({
16662
- content: /* @__PURE__ */ jsx88(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
16690
+ content: /* @__PURE__ */ jsx89(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
16663
16691
  });
16664
16692
  return;
16665
16693
  }
@@ -16762,7 +16790,7 @@ var SuperDrawerWidth = /* @__PURE__ */ ((SuperDrawerWidth2) => {
16762
16790
 
16763
16791
  // src/components/SuperDrawer/SuperDrawer.tsx
16764
16792
  import { trussProps as trussProps57, maybeCssVar as maybeCssVar30 } from "@homebound/truss/runtime";
16765
- import { Fragment as Fragment24, jsx as jsx89, jsxs as jsxs56 } from "react/jsx-runtime";
16793
+ import { Fragment as Fragment24, jsx as jsx90, jsxs as jsxs56 } from "react/jsx-runtime";
16766
16794
  import { createElement as createElement3 } from "react";
16767
16795
  function SuperDrawer() {
16768
16796
  const {
@@ -16800,7 +16828,7 @@ function SuperDrawer() {
16800
16828
  // eslint-disable-next-line react-hooks/exhaustive-deps
16801
16829
  [headerRef, content2]
16802
16830
  );
16803
- return createPortal4(/* @__PURE__ */ jsx89(AnimatePresence, { children: content2 && /* @__PURE__ */ jsx89(Fragment24, { children: /* @__PURE__ */ createElement3(
16831
+ return createPortal4(/* @__PURE__ */ jsx90(AnimatePresence, { children: content2 && /* @__PURE__ */ jsx90(Fragment24, { children: /* @__PURE__ */ createElement3(
16804
16832
  motion.div,
16805
16833
  {
16806
16834
  ...testId,
@@ -16834,7 +16862,7 @@ function SuperDrawer() {
16834
16862
  },
16835
16863
  onClick: closeDrawer
16836
16864
  },
16837
- /* @__PURE__ */ jsx89(
16865
+ /* @__PURE__ */ jsx90(
16838
16866
  motion.aside,
16839
16867
  {
16840
16868
  ...trussProps57({
@@ -16885,13 +16913,13 @@ function SuperDrawer() {
16885
16913
  justifyContent: "jcsb",
16886
16914
  gap: "g_3"
16887
16915
  }), children: [
16888
- /* @__PURE__ */ jsx89("div", { ref: headerRef, ...trussProps57({
16916
+ /* @__PURE__ */ jsx90("div", { ref: headerRef, ...trussProps57({
16889
16917
  color: ["color_var", {
16890
16918
  "--color": "var(--b-on-surface)"
16891
16919
  }],
16892
16920
  flexGrow: "fg1"
16893
16921
  }) }),
16894
- /* @__PURE__ */ jsx89(IconButton, { icon: "x", onClick: closeDrawer, ...testId.close })
16922
+ /* @__PURE__ */ jsx90(IconButton, { icon: "x", onClick: closeDrawer, ...testId.close })
16895
16923
  ] }),
16896
16924
  content2
16897
16925
  ] })
@@ -16902,9 +16930,9 @@ function SuperDrawer() {
16902
16930
  }
16903
16931
 
16904
16932
  // src/components/Toast/ToastContext.tsx
16905
- import { createContext as createContext9, useCallback as useCallback15, useContext as useContext18, useMemo as useMemo23, useState as useState25 } from "react";
16906
- import { jsx as jsx90 } from "react/jsx-runtime";
16907
- var ToastContext = createContext9({
16933
+ import { createContext as createContext10, useCallback as useCallback15, useContext as useContext19, useMemo as useMemo23, useState as useState25 } from "react";
16934
+ import { jsx as jsx91 } from "react/jsx-runtime";
16935
+ var ToastContext = createContext10({
16908
16936
  setNotice: () => {
16909
16937
  throw new Error("Missing ToastProvider");
16910
16938
  },
@@ -16916,15 +16944,15 @@ function ToastProvider(props) {
16916
16944
  const [notice, setNotice] = useState25();
16917
16945
  const clear = useCallback15(() => setNotice(void 0), [setNotice]);
16918
16946
  const contextValue = useMemo23(() => ({ setNotice, notice, clear }), [notice, clear]);
16919
- return /* @__PURE__ */ jsx90(ToastContext.Provider, { value: contextValue, children: props.children });
16947
+ return /* @__PURE__ */ jsx91(ToastContext.Provider, { value: contextValue, children: props.children });
16920
16948
  }
16921
16949
  function useToastContext() {
16922
- return useContext18(ToastContext);
16950
+ return useContext19(ToastContext);
16923
16951
  }
16924
16952
 
16925
16953
  // src/components/BeamContext.tsx
16926
- import { jsx as jsx91, jsxs as jsxs57 } from "react/jsx-runtime";
16927
- var BeamContext = createContext10({
16954
+ import { jsx as jsx92, jsxs as jsxs57 } from "react/jsx-runtime";
16955
+ var BeamContext = createContext11({
16928
16956
  modalState: new EmptyRef(),
16929
16957
  modalCanCloseChecks: new EmptyRef(),
16930
16958
  modalHeaderDiv: void 0,
@@ -16968,14 +16996,14 @@ function BeamProvider({ children, documentTitleConfig, ...presentationProps }) {
16968
16996
  sdHeaderDiv
16969
16997
  };
16970
16998
  }, [modalBannerDiv, modalBodyDiv, modalFooterDiv, modalHeaderDiv, sdHeaderDiv]);
16971
- const beamTree = /* @__PURE__ */ jsx91(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ jsx91(AutoSaveStatusProvider, { children: /* @__PURE__ */ jsx91(SnackbarProvider, { children: /* @__PURE__ */ jsxs57(ToastProvider, { children: [
16999
+ const beamTree = /* @__PURE__ */ jsx92(PresentationProvider, { ...presentationProps, children: /* @__PURE__ */ jsx92(AutoSaveStatusProvider, { children: /* @__PURE__ */ jsx92(SnackbarProvider, { children: /* @__PURE__ */ jsxs57(ToastProvider, { children: [
16972
17000
  /* @__PURE__ */ jsxs57(OverlayProvider, { children: [
16973
17001
  children,
16974
- modalRef.current && /* @__PURE__ */ jsx91(Modal, { ...modalRef.current })
17002
+ modalRef.current && /* @__PURE__ */ jsx92(Modal, { ...modalRef.current })
16975
17003
  ] }),
16976
- /* @__PURE__ */ jsx91(SuperDrawer, {})
17004
+ /* @__PURE__ */ jsx92(SuperDrawer, {})
16977
17005
  ] }) }) }) });
16978
- return /* @__PURE__ */ jsx91(BeamContext.Provider, { value: { ...context }, children: documentTitleConfig ? /* @__PURE__ */ jsx91(DocumentTitleProvider, { ...documentTitleConfig, children: beamTree }) : beamTree });
17006
+ return /* @__PURE__ */ jsx92(BeamContext.Provider, { value: { ...context }, children: documentTitleConfig ? /* @__PURE__ */ jsx92(DocumentTitleProvider, { ...documentTitleConfig, children: beamTree }) : beamTree });
16979
17007
  }
16980
17008
  var PretendRefThatTicks = class {
16981
17009
  constructor(ref, tick) {
@@ -16991,12 +17019,12 @@ var PretendRefThatTicks = class {
16991
17019
  }
16992
17020
  };
16993
17021
  function useBeamContext() {
16994
- return useContext19(BeamContext);
17022
+ return useContext20(BeamContext);
16995
17023
  }
16996
17024
 
16997
17025
  // src/components/Modal/Modal.tsx
16998
17026
  import { trussProps as trussProps58, maybeCssVar as maybeCssVar31 } from "@homebound/truss/runtime";
16999
- import { Fragment as Fragment25, jsx as jsx92, jsxs as jsxs58 } from "react/jsx-runtime";
17027
+ import { Fragment as Fragment25, jsx as jsx93, jsxs as jsxs58 } from "react/jsx-runtime";
17000
17028
  function Modal(props) {
17001
17029
  const {
17002
17030
  size = "md",
@@ -17080,7 +17108,7 @@ function Modal(props) {
17080
17108
  // eslint-disable-next-line react-hooks/exhaustive-deps
17081
17109
  [modalBannerRef, modalBodyRef, modalFooterRef, modalHeaderRef]
17082
17110
  );
17083
- const title = /* @__PURE__ */ jsx92("h1", { ...trussProps58({
17111
+ const title = /* @__PURE__ */ jsx93("h1", { ...trussProps58({
17084
17112
  flexGrow: "fg1",
17085
17113
  fontWeight: "fw6",
17086
17114
  fontSize: "fz_24px",
@@ -17097,7 +17125,7 @@ function Modal(props) {
17097
17125
  }]
17098
17126
  }
17099
17127
  }), ref: modalHeaderRef, ...titleProps, ...testId.title });
17100
- return /* @__PURE__ */ jsx92(ModalProvider, { children: /* @__PURE__ */ jsx92(OverlayContainer2, { children: /* @__PURE__ */ jsx92(AutoSaveStatusProvider, { children: /* @__PURE__ */ jsx92("div", { ...trussProps58({
17128
+ return /* @__PURE__ */ jsx93(ModalProvider, { children: /* @__PURE__ */ jsx93(OverlayContainer2, { children: /* @__PURE__ */ jsx93(AutoSaveStatusProvider, { children: /* @__PURE__ */ jsx93("div", { ...trussProps58({
17101
17129
  position: "fixed",
17102
17130
  top: "tp_0",
17103
17131
  bottom: "bot_0",
@@ -17110,7 +17138,7 @@ function Modal(props) {
17110
17138
  zIndex: ["z_var", {
17111
17139
  "--zIndex": maybeCssVar31(zIndices.modalUnderlay)
17112
17140
  }]
17113
- }), ...underlayProps, ...testId.underlay, children: /* @__PURE__ */ jsx92(FocusScope3, { contain: true, restoreFocus: true, autoFocus: true, children: /* @__PURE__ */ jsxs58("div", { ...trussProps58({
17141
+ }), ...underlayProps, ...testId.underlay, children: /* @__PURE__ */ jsx93(FocusScope3, { contain: true, restoreFocus: true, autoFocus: true, children: /* @__PURE__ */ jsxs58("div", { ...trussProps58({
17114
17142
  borderRadius: "br24",
17115
17143
  backgroundColor: ["bgColor_var", {
17116
17144
  "--backgroundColor": "var(--b-surface)"
@@ -17154,14 +17182,14 @@ function Modal(props) {
17154
17182
  }]
17155
17183
  } : {}
17156
17184
  }), children: [
17157
- /* @__PURE__ */ jsx92("span", { className: "fs0 pl1", children: allowClosing && /* @__PURE__ */ jsx92(IconButton, { icon: "x", onClick: closeModal, ...testId.titleClose }) }),
17185
+ /* @__PURE__ */ jsx93("span", { className: "fs0 pl1", children: allowClosing && /* @__PURE__ */ jsx93(IconButton, { icon: "x", onClick: closeModal, ...testId.titleClose }) }),
17158
17186
  aiMode ? /* @__PURE__ */ jsxs58("div", { className: "df fdc aifs g_4px fg1 mw0", ...testId.aiTitle, children: [
17159
- /* @__PURE__ */ jsx92(BlueprintAiLogo, { height: 2 }),
17187
+ /* @__PURE__ */ jsx93(BlueprintAiLogo, { height: 2 }),
17160
17188
  title
17161
17189
  ] }) : title
17162
17190
  ] }),
17163
- /* @__PURE__ */ jsx92("div", { ref: modalBannerRef, className: "fs0" }),
17164
- /* @__PURE__ */ jsx92("main", { ref: modalBodyRef, ...trussProps58({
17191
+ /* @__PURE__ */ jsx93("div", { ref: modalBannerRef, className: "fs0" }),
17192
+ /* @__PURE__ */ jsx93("main", { ref: modalBodyRef, ...trussProps58({
17165
17193
  flexGrow: "fg1",
17166
17194
  overflowY: "oya",
17167
17195
  paddingTop: "pt_12px",
@@ -17176,7 +17204,7 @@ function Modal(props) {
17176
17204
  overflowY: "oys"
17177
17205
  } : {}
17178
17206
  }), children: content2 }),
17179
- /* @__PURE__ */ jsx92("footer", { className: "fs0", children: /* @__PURE__ */ jsx92("div", { ref: modalFooterRef }) })
17207
+ /* @__PURE__ */ jsx93("footer", { className: "fs0", children: /* @__PURE__ */ jsx93("div", { ref: modalFooterRef }) })
17180
17208
  ] }) }) }) }) }) });
17181
17209
  }
17182
17210
  function ModalHeader({
@@ -17185,7 +17213,7 @@ function ModalHeader({
17185
17213
  const {
17186
17214
  modalHeaderDiv
17187
17215
  } = useBeamContext();
17188
- return createPortal5(/* @__PURE__ */ jsx92(Fragment25, { children }), modalHeaderDiv);
17216
+ return createPortal5(/* @__PURE__ */ jsx93(Fragment25, { children }), modalHeaderDiv);
17189
17217
  }
17190
17218
  function ModalBanner({
17191
17219
  children
@@ -17194,7 +17222,7 @@ function ModalBanner({
17194
17222
  modalBannerDiv
17195
17223
  } = useBeamContext();
17196
17224
  const testId = useTestIds({}, testIdPrefix);
17197
- return createPortal5(/* @__PURE__ */ jsx92("div", { className: "mt_4px", ...testId.banner, children }), modalBannerDiv);
17225
+ return createPortal5(/* @__PURE__ */ jsx93("div", { className: "mt_4px", ...testId.banner, children }), modalBannerDiv);
17198
17226
  }
17199
17227
  function ModalBody({
17200
17228
  children,
@@ -17206,7 +17234,7 @@ function ModalBody({
17206
17234
  const testId = useTestIds({}, testIdPrefix);
17207
17235
  return createPortal5(
17208
17236
  // If `virtualized`, then we are expecting the `children` will handle their own scrollbar, so have the overflow hidden and adjust padding
17209
- /* @__PURE__ */ jsx92("div", { ...trussProps58({
17237
+ /* @__PURE__ */ jsx93("div", { ...trussProps58({
17210
17238
  height: "h100",
17211
17239
  ...virtualized ? {
17212
17240
  overflow: "oh",
@@ -17227,7 +17255,7 @@ function ModalFooter({
17227
17255
  modalFooterDiv
17228
17256
  } = useBeamContext();
17229
17257
  const testId = useTestIds({}, testIdPrefix);
17230
- return createPortal5(/* @__PURE__ */ jsx92("div", { ...trussProps58({
17258
+ return createPortal5(/* @__PURE__ */ jsx93("div", { ...trussProps58({
17231
17259
  ...{
17232
17260
  paddingTop: "pt3",
17233
17261
  paddingBottom: "pb3",
@@ -17260,7 +17288,7 @@ function getSize(size) {
17260
17288
 
17261
17289
  // src/components/Filters/FilterModal.tsx
17262
17290
  import { trussProps as trussProps59 } from "@homebound/truss/runtime";
17263
- import { Fragment as Fragment26, jsx as jsx93, jsxs as jsxs59 } from "react/jsx-runtime";
17291
+ import { Fragment as Fragment26, jsx as jsx94, jsxs as jsxs59 } from "react/jsx-runtime";
17264
17292
  function FilterModal(props) {
17265
17293
  const {
17266
17294
  filter,
@@ -17273,18 +17301,18 @@ function FilterModal(props) {
17273
17301
  } = useModal();
17274
17302
  const [modalFilter, setModalFilter] = useState27(filter);
17275
17303
  return /* @__PURE__ */ jsxs59(Fragment26, { children: [
17276
- /* @__PURE__ */ jsx93(ModalHeader, { children: "More Filters" }),
17277
- /* @__PURE__ */ jsx93(ModalBody, { children: /* @__PURE__ */ jsx93("div", { className: "df fdc", children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ jsx93(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(modalFilter[key], (value) => setModalFilter(updateFilter(modalFilter, key, value)), testId, true, false) }, key)) }) }),
17304
+ /* @__PURE__ */ jsx94(ModalHeader, { children: "More Filters" }),
17305
+ /* @__PURE__ */ jsx94(ModalBody, { children: /* @__PURE__ */ jsx94("div", { className: "df fdc", children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ jsx94(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(modalFilter[key], (value) => setModalFilter(updateFilter(modalFilter, key, value)), testId, true, false) }, key)) }) }),
17278
17306
  /* @__PURE__ */ jsxs59(ModalFooter, { xss: {
17279
17307
  justifyContent: "jcsb"
17280
17308
  }, children: [
17281
- /* @__PURE__ */ jsx93(Button, { label: "Clear", variant: "tertiary", disabled: safeKeys(filters).filter((fk) => modalFilter[fk] !== void 0).length === 0, onClick: () => (
17309
+ /* @__PURE__ */ jsx94(Button, { label: "Clear", variant: "tertiary", disabled: safeKeys(filters).filter((fk) => modalFilter[fk] !== void 0).length === 0, onClick: () => (
17282
17310
  // Only remove the filters keys that exist in the modal.
17283
17311
  setModalFilter(safeKeys(filters).reduce((acc, fk) => omitKey(fk, acc), modalFilter))
17284
17312
  ), ...testId.modalClear }),
17285
17313
  /* @__PURE__ */ jsxs59("div", { className: "df g_1", children: [
17286
- /* @__PURE__ */ jsx93(Button, { label: "Cancel", variant: "quaternary", onClick: closeModal, ...testId.modalClose }),
17287
- /* @__PURE__ */ jsx93(Button, { label: "Apply", onClick: () => {
17314
+ /* @__PURE__ */ jsx94(Button, { label: "Cancel", variant: "quaternary", onClick: closeModal, ...testId.modalClose }),
17315
+ /* @__PURE__ */ jsx94(Button, { label: "Apply", onClick: () => {
17288
17316
  onApply(modalFilter);
17289
17317
  closeModal();
17290
17318
  }, ...testId.modalApply })
@@ -17304,8 +17332,8 @@ function ModalFilterItem({
17304
17332
  borderColor: "bcGray200"
17305
17333
  } : {}
17306
17334
  }), children: [
17307
- label && /* @__PURE__ */ jsx93("h2", { className: "fw4 fz_16px lh_24px mb2", children: label }),
17308
- /* @__PURE__ */ jsx93("div", { ...trussProps59({
17335
+ label && /* @__PURE__ */ jsx94("h2", { className: "fw4 fz_16px lh_24px mb2", children: label }),
17336
+ /* @__PURE__ */ jsx94("div", { ...trussProps59({
17309
17337
  ...!label ? {
17310
17338
  paddingTop: "pt3"
17311
17339
  } : {}
@@ -17391,7 +17419,7 @@ function useGrowingTextField({ inputRef, inputWrapRef, value, disabled, maxLines
17391
17419
  }
17392
17420
 
17393
17421
  // src/inputs/TreeSelectField/TreeSelectField.tsx
17394
- import React14, { useCallback as useCallback18, useContext as useContext20, useEffect as useEffect21, useMemo as useMemo26, useRef as useRef38, useState as useState31 } from "react";
17422
+ import React14, { useCallback as useCallback18, useContext as useContext21, useEffect as useEffect21, useMemo as useMemo26, useRef as useRef38, useState as useState31 } from "react";
17395
17423
  import { useButton as useButton7, useComboBox, useFilter as useFilter2, useOverlayPosition as useOverlayPosition3 } from "react-aria";
17396
17424
  import { Item as Item3, useComboBoxState } from "react-stately";
17397
17425
  import { trussProps as trussProps68, maybeCssVar as maybeCssVar32 } from "@homebound/truss/runtime";
@@ -17421,7 +17449,7 @@ import { Item as Item2, Section as Section2, useListData, useSelectState } from
17421
17449
  import { useEffect as useEffect17, useRef as useRef32, useState as useState28 } from "react";
17422
17450
  import { useFocus } from "react-aria";
17423
17451
  import { trussProps as trussProps60 } from "@homebound/truss/runtime";
17424
- import { jsx as jsx94 } from "react/jsx-runtime";
17452
+ import { jsx as jsx95 } from "react/jsx-runtime";
17425
17453
  function ChipTextField(props) {
17426
17454
  const {
17427
17455
  autoFocus,
@@ -17467,7 +17495,7 @@ function ChipTextField(props) {
17467
17495
  // eslint-disable-next-line react-hooks/exhaustive-deps
17468
17496
  []
17469
17497
  );
17470
- return /* @__PURE__ */ jsx94("span", { ref: fieldRef, contentEditable: true, suppressContentEditableWarning: true, "aria-required": required, "aria-label": label, onKeyDown: (e) => {
17498
+ return /* @__PURE__ */ jsx95("span", { ref: fieldRef, contentEditable: true, suppressContentEditableWarning: true, "aria-required": required, "aria-label": label, onKeyDown: (e) => {
17471
17499
  if (e.key === "Enter") {
17472
17500
  e.preventDefault();
17473
17501
  maybeCall(onEnter);
@@ -17494,14 +17522,14 @@ function ChipTextField(props) {
17494
17522
 
17495
17523
  // src/inputs/internal/ListBoxChip.tsx
17496
17524
  import { trussProps as trussProps61 } from "@homebound/truss/runtime";
17497
- import { jsx as jsx95 } from "react/jsx-runtime";
17525
+ import { jsx as jsx96 } from "react/jsx-runtime";
17498
17526
  function ListBoxChip({
17499
17527
  label
17500
17528
  }) {
17501
17529
  const {
17502
17530
  fieldProps
17503
17531
  } = usePresentationContext();
17504
- return /* @__PURE__ */ jsx95("span", { ...trussProps61({
17532
+ return /* @__PURE__ */ jsx96("span", { ...trussProps61({
17505
17533
  ...chipBaseStyles(fieldProps?.compact),
17506
17534
  ...{
17507
17535
  whiteSpace: "wsnw",
@@ -17563,7 +17591,7 @@ function defaultOptionLabel(opt) {
17563
17591
 
17564
17592
  // src/inputs/ChipSelectField.tsx
17565
17593
  import { trussProps as trussProps62 } from "@homebound/truss/runtime";
17566
- import { Fragment as Fragment27, jsx as jsx96, jsxs as jsxs60 } from "react/jsx-runtime";
17594
+ import { Fragment as Fragment27, jsx as jsx97, jsxs as jsxs60 } from "react/jsx-runtime";
17567
17595
  function ChipSelectField(props) {
17568
17596
  const firstRender = useRef33(true);
17569
17597
  const {
@@ -17660,16 +17688,16 @@ function ChipSelectField(props) {
17660
17688
  );
17661
17689
  const selectChildren = useMemo25(() => listData.items.map((s) => {
17662
17690
  if (isListBoxSection(s)) {
17663
- return /* @__PURE__ */ jsx96(Section2, { title: s.title, items: s.options, children: (item) => {
17691
+ return /* @__PURE__ */ jsx97(Section2, { title: s.title, items: s.options, children: (item) => {
17664
17692
  if (isPersistentItem(item)) {
17665
- return /* @__PURE__ */ jsx96(Item2, { textValue: item.name, children: item.name }, item.id);
17693
+ return /* @__PURE__ */ jsx97(Item2, { textValue: item.name, children: item.name }, item.id);
17666
17694
  }
17667
17695
  const label3 = getOptionLabel(item);
17668
- return /* @__PURE__ */ jsx96(Item2, { textValue: label3, children: /* @__PURE__ */ jsx96(ListBoxChip, { label: label3 }) }, getOptionValue(item));
17696
+ return /* @__PURE__ */ jsx97(Item2, { textValue: label3, children: /* @__PURE__ */ jsx97(ListBoxChip, { label: label3 }) }, getOptionValue(item));
17669
17697
  } }, camelCase4(s.title));
17670
17698
  }
17671
17699
  const label2 = getOptionLabel(s);
17672
- return /* @__PURE__ */ jsx96(Item2, { textValue: label2, children: /* @__PURE__ */ jsx96(ListBoxChip, { label: label2 }) }, getOptionValue(s));
17700
+ return /* @__PURE__ */ jsx97(Item2, { textValue: label2, children: /* @__PURE__ */ jsx97(ListBoxChip, { label: label2 }) }, getOptionValue(s));
17673
17701
  }), [listData.items, getOptionLabel, getOptionValue]);
17674
17702
  const selectHookProps = {
17675
17703
  label,
@@ -17733,7 +17761,7 @@ function ChipSelectField(props) {
17733
17761
  };
17734
17762
  const [showInput, setShowInput] = useState29(false);
17735
17763
  return /* @__PURE__ */ jsxs60(Fragment27, { children: [
17736
- showInput && onCreateNew && /* @__PURE__ */ jsx96(CreateNewField, { onBlur: () => setShowInput(false), onEnter: async (value2) => {
17764
+ showInput && onCreateNew && /* @__PURE__ */ jsx97(CreateNewField, { onBlur: () => setShowInput(false), onEnter: async (value2) => {
17737
17765
  await onCreateNew(value2);
17738
17766
  setShowInput(false);
17739
17767
  }, ...tid.createNewField }),
@@ -17757,8 +17785,8 @@ function ChipSelectField(props) {
17757
17785
  display: "dn"
17758
17786
  } : {}
17759
17787
  }), children: [
17760
- /* @__PURE__ */ jsx96(Label, { label, labelProps, hidden: true, ...tid.label }),
17761
- /* @__PURE__ */ jsx96("button", { ...mergeProps17(focusProps, buttonProps), ref: buttonRef, ...trussProps62({
17788
+ /* @__PURE__ */ jsx97(Label, { label, labelProps, hidden: true, ...tid.label }),
17789
+ /* @__PURE__ */ jsx97("button", { ...mergeProps17(focusProps, buttonProps), ref: buttonRef, ...trussProps62({
17762
17790
  ...{
17763
17791
  textAlign: "tal",
17764
17792
  borderRadius: "br16",
@@ -17773,8 +17801,8 @@ function ChipSelectField(props) {
17773
17801
  } : {}
17774
17802
  },
17775
17803
  ...isDisabled ? chipDisabledStyles : chipHoverOnlyStyles
17776
- }), title: state.selectedItem ? state.selectedItem.textValue : placeholder, ...tid, children: /* @__PURE__ */ jsx96("span", { ...valueProps, className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wbba", children: state.selectedItem ? state.selectedItem.textValue : placeholder }) }),
17777
- showClearButton && /* @__PURE__ */ jsx96("button", { ...clearFocusProps, ...trussProps62({
17804
+ }), title: state.selectedItem ? state.selectedItem.textValue : placeholder, ...tid, children: /* @__PURE__ */ jsx97("span", { ...valueProps, className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wbba", children: state.selectedItem ? state.selectedItem.textValue : placeholder }) }),
17805
+ showClearButton && /* @__PURE__ */ jsx97("button", { ...clearFocusProps, ...trussProps62({
17778
17806
  ...{
17779
17807
  paddingRight: "pr_4px",
17780
17808
  borderRadius: "bra_0_16px_16px_0",
@@ -17787,10 +17815,10 @@ function ChipSelectField(props) {
17787
17815
  }), onClick: () => {
17788
17816
  onSelect(void 0, void 0);
17789
17817
  setIsClearFocused(false);
17790
- }, "aria-label": "Remove", ...tid.clearButton, children: /* @__PURE__ */ jsx96(Icon, { icon: "x", color: "rgba(141, 141, 141, 1)" /* Gray600 */, inc: typeScale === "xs" ? 2 : void 0 }) })
17818
+ }, "aria-label": "Remove", ...tid.clearButton, children: /* @__PURE__ */ jsx97(Icon, { icon: "x", color: "rgba(141, 141, 141, 1)" /* Gray600 */, inc: typeScale === "xs" ? 2 : void 0 }) })
17791
17819
  ] })
17792
17820
  }),
17793
- state.isOpen && /* @__PURE__ */ jsx96(Popover, { triggerRef: buttonRef, popoverRef, positionProps: overlayProps, onClose: state.close, isOpen: state.isOpen, shouldCloseOnBlur: true, children: /* @__PURE__ */ jsx96(ListBox, { ...menuProps, listBoxRef, state, getOptionLabel, getOptionValue, positionProps: overlayProps }) })
17821
+ state.isOpen && /* @__PURE__ */ jsx97(Popover, { triggerRef: buttonRef, popoverRef, positionProps: overlayProps, onClose: state.close, isOpen: state.isOpen, shouldCloseOnBlur: true, children: /* @__PURE__ */ jsx97(ListBox, { ...menuProps, listBoxRef, state, getOptionLabel, getOptionValue, positionProps: overlayProps }) })
17794
17822
  ] });
17795
17823
  }
17796
17824
  var persistentItemPrefix = "persistentItem:";
@@ -17814,12 +17842,12 @@ function CreateNewField(props) {
17814
17842
  } = props;
17815
17843
  const [value, setValue] = useState29("Add new");
17816
17844
  const tid = useTestIds(props);
17817
- return /* @__PURE__ */ jsx96(ChipTextField, { autoFocus: true, label: "Add new", value, onChange: setValue, onEnter: () => onEnter(value), onBlur, ...tid });
17845
+ return /* @__PURE__ */ jsx97(ChipTextField, { autoFocus: true, label: "Add new", value, onChange: setValue, onEnter: () => onEnter(value), onBlur, ...tid });
17818
17846
  }
17819
17847
 
17820
17848
  // src/inputs/internal/Option.tsx
17821
17849
  import { trussProps as trussProps63 } from "@homebound/truss/runtime";
17822
- import { jsx as jsx97, jsxs as jsxs61 } from "react/jsx-runtime";
17850
+ import { jsx as jsx98, jsxs as jsxs61 } from "react/jsx-runtime";
17823
17851
  function Option(props) {
17824
17852
  const {
17825
17853
  item,
@@ -17896,7 +17924,7 @@ function Option(props) {
17896
17924
  ...isDisabled ? themeStyles.disabled : {}
17897
17925
  }), children: [
17898
17926
  item.rendered,
17899
- isSelected && /* @__PURE__ */ jsx97("span", { className: "fs0", children: /* @__PURE__ */ jsx97(Icon, { icon: "check", color: isDisabled ? "--b-text-disabled" /* TextDisabled */ : "--b-selection-indicator" /* SelectionIndicator */ }) })
17927
+ isSelected && /* @__PURE__ */ jsx98("span", { className: "fs0", children: /* @__PURE__ */ jsx98(Icon, { icon: "check", color: isDisabled ? "--b-text-disabled" /* TextDisabled */ : "--b-selection-indicator" /* SelectionIndicator */ }) })
17900
17928
  ] })
17901
17929
  });
17902
17930
  }
@@ -17908,7 +17936,7 @@ import { Virtuoso as Virtuoso2 } from "react-virtuoso";
17908
17936
 
17909
17937
  // src/inputs/internal/LoadingDots.tsx
17910
17938
  import { trussProps as trussProps64 } from "@homebound/truss/runtime";
17911
- import { jsx as jsx98, jsxs as jsxs62 } from "react/jsx-runtime";
17939
+ import { jsx as jsx99, jsxs as jsxs62 } from "react/jsx-runtime";
17912
17940
  function LoadingDots() {
17913
17941
  const dotCss = {
17914
17942
  height: "h_8px",
@@ -17919,20 +17947,20 @@ function LoadingDots() {
17919
17947
  }]
17920
17948
  };
17921
17949
  const tid = useTestIds({});
17922
- return /* @__PURE__ */ jsx98("div", { className: "pt2 pb2 df jcc", ...tid.loadingDots, children: /* @__PURE__ */ jsxs62("div", { "aria-label": "Loading", className: "df g_4px", children: [
17923
- /* @__PURE__ */ jsx98("div", { ...trussProps64({
17950
+ return /* @__PURE__ */ jsx99("div", { className: "pt2 pb2 df jcc", ...tid.loadingDots, children: /* @__PURE__ */ jsxs62("div", { "aria-label": "Loading", className: "df g_4px", children: [
17951
+ /* @__PURE__ */ jsx99("div", { ...trussProps64({
17924
17952
  ...dotCss,
17925
17953
  ...{
17926
17954
  animation: "anim_loadingDots_800ms_linear_0ms_infinite_alternate"
17927
17955
  }
17928
17956
  }) }),
17929
- /* @__PURE__ */ jsx98("div", { ...trussProps64({
17957
+ /* @__PURE__ */ jsx99("div", { ...trussProps64({
17930
17958
  ...dotCss,
17931
17959
  ...{
17932
17960
  animation: "anim_loadingDots_800ms_linear_300ms_infinite_alternate"
17933
17961
  }
17934
17962
  }) }),
17935
- /* @__PURE__ */ jsx98("div", { ...trussProps64({
17963
+ /* @__PURE__ */ jsx99("div", { ...trussProps64({
17936
17964
  ...dotCss,
17937
17965
  ...{
17938
17966
  animation: "anim_loadingDots_800ms_linear_600ms_infinite_alternate"
@@ -17945,7 +17973,7 @@ function LoadingDots() {
17945
17973
  import { useRef as useRef35 } from "react";
17946
17974
  import { useHover as useHover12, useOption as useOption2 } from "react-aria";
17947
17975
  import { trussProps as trussProps65 } from "@homebound/truss/runtime";
17948
- import { jsx as jsx99, jsxs as jsxs63 } from "react/jsx-runtime";
17976
+ import { jsx as jsx100, jsxs as jsxs63 } from "react/jsx-runtime";
17949
17977
  function TreeOption(props) {
17950
17978
  const {
17951
17979
  item,
@@ -18034,15 +18062,15 @@ function TreeOption(props) {
18034
18062
  ...isFocused && !isGroup ? listItemStyles.focus : {},
18035
18063
  ...isDisabled && !isGroup ? listItemStyles.disabled : {}
18036
18064
  }), children: [
18037
- /* @__PURE__ */ jsx99("span", { className: "w_18px fs0 df aic", children: canCollapse && /* @__PURE__ */ jsx99("button", { onClick: (e) => {
18065
+ /* @__PURE__ */ jsx100("span", { className: "w_18px fs0 df aic", children: canCollapse && /* @__PURE__ */ jsx100("button", { onClick: (e) => {
18038
18066
  e.preventDefault();
18039
18067
  e.stopPropagation();
18040
18068
  toggleCollapsed();
18041
18069
  return false;
18042
- }, className: "br4 h_16px w_16px bgTransparent h_bgGray300", ...tid[`collapseToggle_${item.key}`], children: /* @__PURE__ */ jsx99(Icon, { icon: collapsedKeys.includes(item.key) ? "triangleRight" : "triangleDown", inc: 2 }) }) }),
18070
+ }, className: "br4 h_16px w_16px bgTransparent h_bgGray300", ...tid[`collapseToggle_${item.key}`], children: /* @__PURE__ */ jsx100(Icon, { icon: collapsedKeys.includes(item.key) ? "triangleRight" : "triangleDown", inc: 2 }) }) }),
18043
18071
  /* @__PURE__ */ jsxs63("span", { className: "df aic g_1 h100 fg1 pt1 pb1 pr2", ref, ...optionProps, "data-label": item.textValue, children: [
18044
- !isGroup && /* @__PURE__ */ jsx99(StyledCheckbox, { isDisabled, isSelected, isIndeterminate, ...tid[item.key.toString()] }),
18045
- /* @__PURE__ */ jsx99("div", { className: "pl1", children: item.rendered })
18072
+ !isGroup && /* @__PURE__ */ jsx100(StyledCheckbox, { isDisabled, isSelected, isIndeterminate, ...tid[item.key.toString()] }),
18073
+ /* @__PURE__ */ jsx100("div", { className: "pl1", children: item.rendered })
18046
18074
  ] })
18047
18075
  ] })
18048
18076
  });
@@ -18091,7 +18119,7 @@ function isLeveledNode(node) {
18091
18119
  }
18092
18120
 
18093
18121
  // src/inputs/internal/VirtualizedOptions.tsx
18094
- import { jsx as jsx100 } from "react/jsx-runtime";
18122
+ import { jsx as jsx101 } from "react/jsx-runtime";
18095
18123
  function VirtualizedOptions(props) {
18096
18124
  const { state, items, onListHeightChange, scrollOnFocus, loading, disabledOptionsWithReasons, isTree } = props;
18097
18125
  const virtuosoRef = useRef36(null);
@@ -18109,7 +18137,7 @@ function VirtualizedOptions(props) {
18109
18137
  [focusedItem]
18110
18138
  );
18111
18139
  const key = process.env.NODE_ENV === "test" ? items.length : "virtuoso";
18112
- return /* @__PURE__ */ jsx100(
18140
+ return /* @__PURE__ */ jsx101(
18113
18141
  Virtuoso2,
18114
18142
  {
18115
18143
  ref: virtuosoRef,
@@ -18129,7 +18157,7 @@ function VirtualizedOptions(props) {
18129
18157
  const item = items[idx];
18130
18158
  if (item) {
18131
18159
  if (isTree && isLeveledNode(item)) {
18132
- return /* @__PURE__ */ jsx100(
18160
+ return /* @__PURE__ */ jsx101(
18133
18161
  TreeOption,
18134
18162
  {
18135
18163
  item,
@@ -18140,7 +18168,7 @@ function VirtualizedOptions(props) {
18140
18168
  );
18141
18169
  }
18142
18170
  if (!isLeveledNode(item)) {
18143
- return /* @__PURE__ */ jsx100(
18171
+ return /* @__PURE__ */ jsx101(
18144
18172
  Option,
18145
18173
  {
18146
18174
  item,
@@ -18155,7 +18183,7 @@ function VirtualizedOptions(props) {
18155
18183
  return null;
18156
18184
  },
18157
18185
  components: !loading ? {} : {
18158
- Footer: typeof loading === "function" ? loading : () => /* @__PURE__ */ jsx100(LoadingDots, {})
18186
+ Footer: typeof loading === "function" ? loading : () => /* @__PURE__ */ jsx101(LoadingDots, {})
18159
18187
  }
18160
18188
  },
18161
18189
  key
@@ -18164,7 +18192,7 @@ function VirtualizedOptions(props) {
18164
18192
 
18165
18193
  // src/inputs/internal/ListBoxSection.tsx
18166
18194
  import { trussProps as trussProps66 } from "@homebound/truss/runtime";
18167
- import { Fragment as Fragment28, jsx as jsx101, jsxs as jsxs64 } from "react/jsx-runtime";
18195
+ import { Fragment as Fragment28, jsx as jsx102, jsxs as jsxs64 } from "react/jsx-runtime";
18168
18196
  function ListBoxSection(props) {
18169
18197
  const {
18170
18198
  section,
@@ -18186,18 +18214,18 @@ function ListBoxSection(props) {
18186
18214
  const isPersistentSection = section.key !== state.collection.getFirstKey();
18187
18215
  const childNodes = [...section.childNodes];
18188
18216
  return /* @__PURE__ */ jsxs64(Fragment28, { children: [
18189
- isPersistentSection && /* @__PURE__ */ jsx101("li", { ...separatorProps, ...trussProps66({
18217
+ isPersistentSection && /* @__PURE__ */ jsx102("li", { ...separatorProps, ...trussProps66({
18190
18218
  borderTopStyle: "bts_solid",
18191
18219
  borderTopWidth: "btw_1px",
18192
18220
  borderColor: ["bc_var", {
18193
18221
  "--borderColor": "var(--b-surface-separator)"
18194
18222
  }]
18195
18223
  }) }),
18196
- /* @__PURE__ */ jsx101("li", { ...itemProps, ...trussProps66({
18224
+ /* @__PURE__ */ jsx102("li", { ...itemProps, ...trussProps66({
18197
18225
  ...!isPersistentSection ? {
18198
18226
  overflow: "oa"
18199
18227
  } : {}
18200
- }), children: /* @__PURE__ */ jsx101("ul", { ...trussProps66({
18228
+ }), children: /* @__PURE__ */ jsx102("ul", { ...trussProps66({
18201
18229
  padding: "p_0",
18202
18230
  margin: "m_0",
18203
18231
  listStyle: "listNone",
@@ -18206,12 +18234,12 @@ function ListBoxSection(props) {
18206
18234
  "--height": `${popoverHeight - sectionSeparatorHeight - persistentItemHeight}px`
18207
18235
  }]
18208
18236
  } : {}
18209
- }), ...groupProps, children: isPersistentSection ? childNodes.map((item) => /* @__PURE__ */ jsx101(Option, { item, state, disabledReason: disabledOptionsWithReasons[item.key] }, item.key)) : /* @__PURE__ */ jsx101(VirtualizedOptions, { state, items: childNodes, onListHeightChange, scrollOnFocus, disabledOptionsWithReasons }) }) })
18237
+ }), ...groupProps, children: isPersistentSection ? childNodes.map((item) => /* @__PURE__ */ jsx102(Option, { item, state, disabledReason: disabledOptionsWithReasons[item.key] }, item.key)) : /* @__PURE__ */ jsx102(VirtualizedOptions, { state, items: childNodes, onListHeightChange, scrollOnFocus, disabledOptionsWithReasons }) }) })
18210
18238
  ] });
18211
18239
  }
18212
18240
 
18213
18241
  // src/inputs/internal/ListBoxToggleChip.tsx
18214
- import { jsx as jsx102 } from "react/jsx-runtime";
18242
+ import { jsx as jsx103 } from "react/jsx-runtime";
18215
18243
  function ListBoxToggleChip(props) {
18216
18244
  const {
18217
18245
  state,
@@ -18220,14 +18248,14 @@ function ListBoxToggleChip(props) {
18220
18248
  getOptionValue,
18221
18249
  disabled = false
18222
18250
  } = props;
18223
- return /* @__PURE__ */ jsx102("li", { className: "mr1 mb1", children: /* @__PURE__ */ jsx102(ToggleChip, { text: getOptionLabel(option), onClick: () => {
18251
+ return /* @__PURE__ */ jsx103("li", { className: "mr1 mb1", children: /* @__PURE__ */ jsx103(ToggleChip, { text: getOptionLabel(option), onClick: () => {
18224
18252
  state.selectionManager.toggleSelection(String(getOptionValue(option)));
18225
18253
  }, disabled }) });
18226
18254
  }
18227
18255
 
18228
18256
  // src/inputs/internal/ListBox.tsx
18229
18257
  import { trussProps as trussProps67 } from "@homebound/truss/runtime";
18230
- import { jsx as jsx103, jsxs as jsxs65 } from "react/jsx-runtime";
18258
+ import { jsx as jsx104, jsxs as jsxs65 } from "react/jsx-runtime";
18231
18259
  function ListBox(props) {
18232
18260
  const {
18233
18261
  state,
@@ -18297,7 +18325,7 @@ function ListBox(props) {
18297
18325
  boxShadow: "bshBasic h_bshHover"
18298
18326
  } : {}
18299
18327
  }), ref: listBoxRef, ...listBoxProps, children: [
18300
- isMultiSelect && !hideChips && selectedOptions.length > 0 && /* @__PURE__ */ jsx103("ul", { ...trussProps67({
18328
+ isMultiSelect && !hideChips && selectedOptions.length > 0 && /* @__PURE__ */ jsx104("ul", { ...trussProps67({
18301
18329
  padding: "p_0",
18302
18330
  margin: "m_0",
18303
18331
  listStyle: "listNone",
@@ -18314,8 +18342,8 @@ function ListBox(props) {
18314
18342
  flexWrap: "fww",
18315
18343
  maxHeight: "maxh50",
18316
18344
  overflow: "oa"
18317
- }), ref: selectedList, children: selectedOptions.map((o) => /* @__PURE__ */ jsx103(ListBoxToggleChip, { state, option: o, getOptionValue, getOptionLabel, disabled: state.disabledKeys.has(getOptionValue(o)) }, getOptionValue(o))) }),
18318
- /* @__PURE__ */ jsx103("ul", { className: "p_0 m_0 listNone fg1", children: hasSections ? [...state.collection].map((section) => /* @__PURE__ */ jsx103(
18345
+ }), ref: selectedList, children: selectedOptions.map((o) => /* @__PURE__ */ jsx104(ListBoxToggleChip, { state, option: o, getOptionValue, getOptionLabel, disabled: state.disabledKeys.has(getOptionValue(o)) }, getOptionValue(o))) }),
18346
+ /* @__PURE__ */ jsx104("ul", { className: "p_0 m_0 listNone fg1", children: hasSections ? [...state.collection].map((section) => /* @__PURE__ */ jsx104(
18319
18347
  ListBoxSection,
18320
18348
  {
18321
18349
  section,
@@ -18326,7 +18354,7 @@ function ListBox(props) {
18326
18354
  disabledOptionsWithReasons
18327
18355
  },
18328
18356
  section.key
18329
- )) : /* @__PURE__ */ jsx103(
18357
+ )) : /* @__PURE__ */ jsx104(
18330
18358
  VirtualizedOptions,
18331
18359
  {
18332
18360
  state,
@@ -18343,7 +18371,7 @@ function ListBox(props) {
18343
18371
  var maxPopoverHeight = 512;
18344
18372
 
18345
18373
  // src/inputs/TreeSelectField/TreeSelectField.tsx
18346
- import { jsx as jsx104, jsxs as jsxs66 } from "react/jsx-runtime";
18374
+ import { jsx as jsx105, jsxs as jsxs66 } from "react/jsx-runtime";
18347
18375
  function TreeSelectField(props) {
18348
18376
  const {
18349
18377
  getOptionValue = (opt) => opt.id,
@@ -18372,7 +18400,7 @@ function TreeSelectField(props) {
18372
18400
  // eslint-disable-next-line react-hooks/exhaustive-deps
18373
18401
  [collapsedKeys, setCollapsedKeys, groupKeys]
18374
18402
  );
18375
- return /* @__PURE__ */ jsx104(CollapsedContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx104(TreeSelectFieldBase, { ...otherProps, options, getOptionLabel, getOptionValue, values, onSelect: ({
18403
+ return /* @__PURE__ */ jsx105(CollapsedContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx105(TreeSelectFieldBase, { ...otherProps, options, getOptionLabel, getOptionValue, values, onSelect: ({
18376
18404
  all,
18377
18405
  leaf,
18378
18406
  root
@@ -18385,7 +18413,7 @@ function TreeSelectField(props) {
18385
18413
  } }) });
18386
18414
  }
18387
18415
  function useTreeSelectFieldProvider() {
18388
- return useContext20(CollapsedContext);
18416
+ return useContext21(CollapsedContext);
18389
18417
  }
18390
18418
  var CollapsedContext = React14.createContext({
18391
18419
  collapsedKeys: [],
@@ -18544,7 +18572,7 @@ function TreeSelectFieldBase(props) {
18544
18572
  }));
18545
18573
  }
18546
18574
  }
18547
- const comboBoxChildren = useCallback18(([item]) => /* @__PURE__ */ jsx104(Item3, { textValue: getOptionLabel(item), children: getOptionMenuLabel(item) }, valueToKey(getOptionValue(item))), [getOptionValue, getOptionLabel, getOptionMenuLabel]);
18575
+ const comboBoxChildren = useCallback18(([item]) => /* @__PURE__ */ jsx105(Item3, { textValue: getOptionLabel(item), children: getOptionMenuLabel(item) }, valueToKey(getOptionValue(item))), [getOptionValue, getOptionLabel, getOptionMenuLabel]);
18548
18576
  const comboBoxProps = {
18549
18577
  ...otherProps,
18550
18578
  disabledKeys,
@@ -18744,8 +18772,8 @@ function TreeSelectFieldBase(props) {
18744
18772
  maxWidth: "maxw100"
18745
18773
  } : {}
18746
18774
  }), ref: comboBoxRef, children: [
18747
- /* @__PURE__ */ jsx104(ComboBoxInput, { ...otherProps, fullWidth, labelStyle, buttonProps, buttonRef: triggerRef, inputProps, inputRef, inputWrapRef, listBoxRef, state, labelProps, selectedOptions: fieldState.selectedOptions, selectedOptionsLabels: fieldState.selectedOptionsLabels, getOptionValue, getOptionLabel, borderless, tooltip: resolveTooltip(disabled, void 0, readOnly), resetField, nothingSelectedText, isTree: true }),
18748
- state.isOpen && /* @__PURE__ */ jsx104(
18775
+ /* @__PURE__ */ jsx105(ComboBoxInput, { ...otherProps, fullWidth, labelStyle, buttonProps, buttonRef: triggerRef, inputProps, inputRef, inputWrapRef, listBoxRef, state, labelProps, selectedOptions: fieldState.selectedOptions, selectedOptionsLabels: fieldState.selectedOptionsLabels, getOptionValue, getOptionLabel, borderless, tooltip: resolveTooltip(disabled, void 0, readOnly), resetField, nothingSelectedText, isTree: true }),
18776
+ state.isOpen && /* @__PURE__ */ jsx105(
18749
18777
  Popover,
18750
18778
  {
18751
18779
  triggerRef,
@@ -18754,7 +18782,7 @@ function TreeSelectFieldBase(props) {
18754
18782
  onClose: () => state.toggle(),
18755
18783
  isOpen: state.isOpen,
18756
18784
  minWidth: 320,
18757
- children: /* @__PURE__ */ jsx104(ListBox, { ...listBoxProps, positionProps, state, listBoxRef, selectedOptions: fieldState.selectedChipOptions, getOptionLabel, getOptionValue: (o) => valueToKey(getOptionValue(o)), horizontalLayout: labelStyle === "left", loading: fieldState.optionsLoading, disabledOptionsWithReasons, isTree: true })
18785
+ children: /* @__PURE__ */ jsx105(ListBox, { ...listBoxProps, positionProps, state, listBoxRef, selectedOptions: fieldState.selectedChipOptions, getOptionLabel, getOptionValue: (o) => valueToKey(getOptionValue(o)), horizontalLayout: labelStyle === "left", loading: fieldState.optionsLoading, disabledOptionsWithReasons, isTree: true })
18758
18786
  }
18759
18787
  )
18760
18788
  ] });
@@ -18814,7 +18842,7 @@ function isLeafOption(option) {
18814
18842
 
18815
18843
  // src/inputs/internal/ComboBoxInput.tsx
18816
18844
  import { trussProps as trussProps69 } from "@homebound/truss/runtime";
18817
- import { jsx as jsx105 } from "react/jsx-runtime";
18845
+ import { jsx as jsx106 } from "react/jsx-runtime";
18818
18846
  function ComboBoxInput(props) {
18819
18847
  const {
18820
18848
  inputProps,
@@ -18867,9 +18895,9 @@ function ComboBoxInput(props) {
18867
18895
  inputWrapRef,
18868
18896
  value: inputProps.value
18869
18897
  });
18870
- return /* @__PURE__ */ jsx105(TextFieldBase, { ...otherProps, ...multilineProps, unfocusedPlaceholder: showChipSelection && /* @__PURE__ */ jsx105(Chips, { compact: otherProps.compact, values: chipLabels, wrap: allowWrap }), inputRef, inputWrapRef, errorMsg, xss: otherProps.labelStyle !== "inline" && !inputProps.readOnly ? {
18898
+ return /* @__PURE__ */ jsx106(TextFieldBase, { ...otherProps, ...multilineProps, unfocusedPlaceholder: showChipSelection && /* @__PURE__ */ jsx106(Chips, { compact: otherProps.compact, values: chipLabels, wrap: allowWrap }), inputRef, inputWrapRef, errorMsg, xss: otherProps.labelStyle !== "inline" && !inputProps.readOnly ? {
18871
18899
  fontWeight: "fw5"
18872
- } : void 0, startAdornment: showNumSelection && /* @__PURE__ */ jsx105(Tooltip, { title: /* @__PURE__ */ jsx105(SelectedOptionBullets, { labels: chipLabels }), children: /* @__PURE__ */ jsx105(CountBadge, { count: selectedChipCount, "data-testid": "selectedOptionsCount" }) }) || showFieldDecoration && fieldDecoration(selectedOptions[0]), endAdornment: !inputProps.readOnly && /* @__PURE__ */ jsx105("button", { ...buttonProps, disabled: inputProps.disabled, ref: buttonRef, ...trussProps69({
18900
+ } : void 0, startAdornment: showNumSelection && /* @__PURE__ */ jsx106(Tooltip, { title: /* @__PURE__ */ jsx106(SelectedOptionBullets, { labels: chipLabels }), children: /* @__PURE__ */ jsx106(CountBadge, { count: selectedChipCount, "data-testid": "selectedOptionsCount" }) }) || showFieldDecoration && fieldDecoration(selectedOptions[0]), endAdornment: !inputProps.readOnly && /* @__PURE__ */ jsx106("button", { ...buttonProps, disabled: inputProps.disabled, ref: buttonRef, ...trussProps69({
18873
18901
  ...{
18874
18902
  borderRadius: "br4",
18875
18903
  outline: "ol_0",
@@ -18883,7 +18911,7 @@ function ComboBoxInput(props) {
18883
18911
  "--color": "var(--b-field-text-disabled)"
18884
18912
  }]
18885
18913
  } : {}
18886
- }), "data-testid": "toggleListBox", children: /* @__PURE__ */ jsx105(Icon, { icon: state.isOpen ? "chevronUp" : "chevronDown" }) }), inputProps: {
18914
+ }), "data-testid": "toggleListBox", children: /* @__PURE__ */ jsx106(Icon, { icon: state.isOpen ? "chevronUp" : "chevronDown" }) }), inputProps: {
18887
18915
  ...mergeProps19(inputProps, {
18888
18916
  "aria-invalid": Boolean(errorMsg),
18889
18917
  onInput: () => state.open()
@@ -18962,12 +18990,12 @@ function ComboBoxInput(props) {
18962
18990
  function SelectedOptionBullets({
18963
18991
  labels = []
18964
18992
  }) {
18965
- return /* @__PURE__ */ jsx105("div", { children: labels?.map((label) => /* @__PURE__ */ jsx105("li", { children: label }, label)) });
18993
+ return /* @__PURE__ */ jsx106("div", { children: labels?.map((label) => /* @__PURE__ */ jsx106("li", { children: label }, label)) });
18966
18994
  }
18967
18995
 
18968
18996
  // src/inputs/internal/ComboBoxBase.tsx
18969
18997
  import { useDebounce } from "use-debounce";
18970
- import { jsx as jsx106, jsxs as jsxs67 } from "react/jsx-runtime";
18998
+ import { jsx as jsx107, jsxs as jsxs67 } from "react/jsx-runtime";
18971
18999
  function ComboBoxBase(props) {
18972
19000
  const {
18973
19001
  fieldProps
@@ -19015,7 +19043,7 @@ function ComboBoxBase(props) {
19015
19043
  return propOptionMenuLabel(o, Boolean(unsetLabel) && o === unsetOption, isAddNew);
19016
19044
  }
19017
19045
  const label = getOptionLabel(o);
19018
- return isAddNew ? /* @__PURE__ */ jsx106("span", { className: "fsyi", children: label }) : label;
19046
+ return isAddNew ? /* @__PURE__ */ jsx107("span", { className: "fsyi", children: label }) : label;
19019
19047
  },
19020
19048
  // propOptionMenuLabel is basically always a lambda, so don't dep on it
19021
19049
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -19102,7 +19130,7 @@ function ComboBoxBase(props) {
19102
19130
  const listBoxRef = useRef39(null);
19103
19131
  const popoverRef = useRef39(null);
19104
19132
  const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
19105
- const comboBoxChildren = useCallback19((item) => /* @__PURE__ */ jsx106(Item4, { textValue: getOptionLabel(item), children: getOptionMenuLabel(item) }, valueToKey(getOptionValue(item))), [getOptionValue, getOptionLabel, getOptionMenuLabel]);
19133
+ const comboBoxChildren = useCallback19((item) => /* @__PURE__ */ jsx107(Item4, { textValue: getOptionLabel(item), children: getOptionMenuLabel(item) }, valueToKey(getOptionValue(item))), [getOptionValue, getOptionLabel, getOptionMenuLabel]);
19106
19134
  const selectedKeys = useMemo27(() => {
19107
19135
  return selectedOptions.map((o) => valueToKey(getOptionValue(o)));
19108
19136
  }, [selectedOptions, getOptionValue]);
@@ -19225,8 +19253,8 @@ function ComboBoxBase(props) {
19225
19253
  maxWidth: "maxw100"
19226
19254
  } : {}
19227
19255
  }), ref: comboBoxRef, children: [
19228
- /* @__PURE__ */ jsx106(ComboBoxInput, { ...otherProps, inputStylePalette, fullWidth, buttonProps, buttonRef: triggerRef, inputProps, inputRef, inputWrapRef, listBoxRef, state, labelProps, selectedOptions, getOptionValue, getOptionLabel, nothingSelectedText, borderless, tooltip: resolveTooltip(disabled, void 0, readOnly), resetField, hideChips, ...proposalProps }),
19229
- state.isOpen && /* @__PURE__ */ jsx106(
19256
+ /* @__PURE__ */ jsx107(ComboBoxInput, { ...otherProps, inputStylePalette, fullWidth, buttonProps, buttonRef: triggerRef, inputProps, inputRef, inputWrapRef, listBoxRef, state, labelProps, selectedOptions, getOptionValue, getOptionLabel, nothingSelectedText, borderless, tooltip: resolveTooltip(disabled, void 0, readOnly), resetField, hideChips, ...proposalProps }),
19257
+ state.isOpen && /* @__PURE__ */ jsx107(
19230
19258
  Popover,
19231
19259
  {
19232
19260
  triggerRef,
@@ -19235,7 +19263,7 @@ function ComboBoxBase(props) {
19235
19263
  onClose: () => multiselect ? state.toggle() : state.close(),
19236
19264
  isOpen: state.isOpen,
19237
19265
  minWidth: 200,
19238
- children: /* @__PURE__ */ jsx106(ListBox, { ...listBoxProps, positionProps, state, listBoxRef, selectedOptions, getOptionLabel, getOptionValue: (o) => valueToKey(getOptionValue(o)), horizontalLayout: labelStyle === "left", loading: fieldState.optionsLoading, disabledOptionsWithReasons, hideChips })
19266
+ children: /* @__PURE__ */ jsx107(ListBox, { ...listBoxProps, positionProps, state, listBoxRef, selectedOptions, getOptionLabel, getOptionValue: (o) => valueToKey(getOptionValue(o)), horizontalLayout: labelStyle === "left", loading: fieldState.optionsLoading, disabledOptionsWithReasons, hideChips })
19239
19267
  }
19240
19268
  )
19241
19269
  ] });
@@ -19315,7 +19343,7 @@ function disabledOptionToKeyedTuple(disabledOption) {
19315
19343
  }
19316
19344
 
19317
19345
  // src/inputs/SelectField.tsx
19318
- import { jsx as jsx107 } from "react/jsx-runtime";
19346
+ import { jsx as jsx108 } from "react/jsx-runtime";
19319
19347
  function SelectField(props) {
19320
19348
  const {
19321
19349
  getOptionValue = defaultOptionValue,
@@ -19328,7 +19356,7 @@ function SelectField(props) {
19328
19356
  } = props;
19329
19357
  const values = useMemo28(() => [value], [value]);
19330
19358
  const proposedValues = useMemo28(() => proposedValue === void 0 ? void 0 : [proposedValue], [proposedValue]);
19331
- return /* @__PURE__ */ jsx107(
19359
+ return /* @__PURE__ */ jsx108(
19332
19360
  ComboBoxBase,
19333
19361
  {
19334
19362
  ...otherProps,
@@ -19348,7 +19376,7 @@ function SelectField(props) {
19348
19376
  }
19349
19377
 
19350
19378
  // src/components/Filters/Filters.tsx
19351
- import { jsx as jsx108, jsxs as jsxs68 } from "react/jsx-runtime";
19379
+ import { jsx as jsx109, jsxs as jsxs68 } from "react/jsx-runtime";
19352
19380
  function Filters(props) {
19353
19381
  const {
19354
19382
  filter,
@@ -19370,7 +19398,7 @@ function Filters(props) {
19370
19398
  return [Object.fromEntries(impls), {}];
19371
19399
  }, [numberOfInlineFilters, vertical, filterDefs]);
19372
19400
  const numModalFilters = safeKeys(modalFilters).filter((fk) => filter[fk] !== void 0).length;
19373
- const maybeGroupByField = groupBy ? /* @__PURE__ */ jsx108("div", { children: /* @__PURE__ */ jsx108(SelectField, { label: "Group by", labelStyle: !vertical ? "inline" : "above", sizeToContent: !vertical, options: groupBy.options, getOptionValue: (o) => o.id, getOptionLabel: (o) => o.name, value: groupBy.value, onSelect: (g) => g && groupBy.setValue(g) }) }) : null;
19401
+ const maybeGroupByField = groupBy ? /* @__PURE__ */ jsx109("div", { children: /* @__PURE__ */ jsx109(SelectField, { label: "Group by", labelStyle: !vertical ? "inline" : "above", sizeToContent: !vertical, options: groupBy.options, getOptionValue: (o) => o.id, getOptionLabel: (o) => o.name, value: groupBy.value, onSelect: (g) => g && groupBy.setValue(g) }) }) : null;
19374
19402
  return /* @__PURE__ */ jsxs68("div", { ...trussProps71({
19375
19403
  ...vertical ? {
19376
19404
  display: "df",
@@ -19383,19 +19411,19 @@ function Filters(props) {
19383
19411
  }
19384
19412
  }), ...testId, children: [
19385
19413
  maybeGroupByField,
19386
- safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ jsx108("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
19387
- Object.keys(modalFilters).length > 0 && /* @__PURE__ */ jsx108(Button, { label: "More Filters", endAdornment: /* @__PURE__ */ jsx108(CountBadge, { count: numModalFilters, hideIfZero: true }), variant: "secondary", onClick: () => openModal({
19414
+ safeEntries(pageFilters).map(([key, f]) => /* @__PURE__ */ jsx109("div", { children: f.render(filter[key], (value) => onChange(updateFilter(filter, key, value)), testId, false, vertical) }, key)),
19415
+ Object.keys(modalFilters).length > 0 && /* @__PURE__ */ jsx109(Button, { label: "More Filters", endAdornment: /* @__PURE__ */ jsx109(CountBadge, { count: numModalFilters, hideIfZero: true }), variant: "secondary", onClick: () => openModal({
19388
19416
  // Spreading `props` to pass along `data-testid`
19389
- content: /* @__PURE__ */ jsx108(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
19417
+ content: /* @__PURE__ */ jsx109(FilterModal, { ...props, filter, onApply: onChange, filters: modalFilters })
19390
19418
  }), ...testId.moreFiltersBtn }),
19391
- Object.keys(filter).length > 0 && /* @__PURE__ */ jsx108("div", { children: /* @__PURE__ */ jsx108(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
19419
+ Object.keys(filter).length > 0 && /* @__PURE__ */ jsx109("div", { children: /* @__PURE__ */ jsx109(Button, { label: "Clear", variant: "tertiary", onClick: () => onChange({}), ...testId.clearBtn }) })
19392
19420
  ] });
19393
19421
  }
19394
19422
  var _Filters = memo(Filters);
19395
19423
 
19396
19424
  // src/components/Headers/HeaderActions.tsx
19397
19425
  import { trussProps as trussProps72 } from "@homebound/truss/runtime";
19398
- import { jsx as jsx109 } from "react/jsx-runtime";
19426
+ import { jsx as jsx110 } from "react/jsx-runtime";
19399
19427
  function HeaderActions(props) {
19400
19428
  const {
19401
19429
  actions,
@@ -19408,12 +19436,12 @@ function HeaderActions(props) {
19408
19436
  } = useBreakpoint();
19409
19437
  const collapse = collapseOnSm && sm && actions.length > 1;
19410
19438
  if (collapse) {
19411
- return /* @__PURE__ */ jsx109("div", { ...trussProps72(actionRowCss), ...tid, children: /* @__PURE__ */ jsx109(ButtonMenu, { trigger: {
19439
+ return /* @__PURE__ */ jsx110("div", { ...trussProps72(actionRowCss), ...tid, children: /* @__PURE__ */ jsx110(ButtonMenu, { trigger: {
19412
19440
  icon: "verticalDots",
19413
19441
  variant: "outline"
19414
19442
  }, items: toMenuItems(actions) }) });
19415
19443
  }
19416
- return /* @__PURE__ */ jsx109("div", { ...trussProps72(actionRowCss), ...tid, children: actions.map(renderHeaderAction) });
19444
+ return /* @__PURE__ */ jsx110("div", { ...trussProps72(actionRowCss), ...tid, children: actions.map(renderHeaderAction) });
19417
19445
  }
19418
19446
  function splitHeaderActionsOnSm(actions, sm) {
19419
19447
  if (!sm) return {
@@ -19440,7 +19468,7 @@ function renderHeaderAction(action, index) {
19440
19468
  keepVisible: _keepVisible2,
19441
19469
  ...iconProps
19442
19470
  } = action;
19443
- return /* @__PURE__ */ jsx109(IconButton, { ...iconProps, variant: "outline" }, key);
19471
+ return /* @__PURE__ */ jsx110(IconButton, { ...iconProps, variant: "outline" }, key);
19444
19472
  }
19445
19473
  if (action.kind === "menu") {
19446
19474
  const {
@@ -19448,14 +19476,14 @@ function renderHeaderAction(action, index) {
19448
19476
  keepVisible: _keepVisible2,
19449
19477
  ...menuProps
19450
19478
  } = action;
19451
- return /* @__PURE__ */ jsx109(ButtonMenu, { ...menuProps }, key);
19479
+ return /* @__PURE__ */ jsx110(ButtonMenu, { ...menuProps }, key);
19452
19480
  }
19453
19481
  const {
19454
19482
  keepVisible: _keepVisible,
19455
19483
  kind: _kind,
19456
19484
  ...buttonProps
19457
19485
  } = action;
19458
- return /* @__PURE__ */ jsx109(Button, { ...buttonProps }, key);
19486
+ return /* @__PURE__ */ jsx110(Button, { ...buttonProps }, key);
19459
19487
  }
19460
19488
  function headerActionKey(action, index) {
19461
19489
  if (action.kind === "icon") return `${action.icon}-${index}`;
@@ -19494,17 +19522,6 @@ function toMenuItems(actions) {
19494
19522
  });
19495
19523
  }
19496
19524
 
19497
- // src/layouts/ContentInsetContext.tsx
19498
- import { createContext as createContext11, useContext as useContext21 } from "react";
19499
- import { jsx as jsx110 } from "react/jsx-runtime";
19500
- var ContentInsetContext = createContext11(false);
19501
- function ContentInsetProvider({ children }) {
19502
- return /* @__PURE__ */ jsx110(ContentInsetContext.Provider, { value: true, children });
19503
- }
19504
- function useContentInsetHandled() {
19505
- return useContext21(ContentInsetContext);
19506
- }
19507
-
19508
19525
  // src/components/Headers/ContentHeader.tsx
19509
19526
  import { trussProps as trussProps73 } from "@homebound/truss/runtime";
19510
19527
  import { jsx as jsx111, jsxs as jsxs69 } from "react/jsx-runtime";
@@ -24531,6 +24548,8 @@ function FilterPanelOpen({
24531
24548
  }) {
24532
24549
  const tid = useTestIds({}, filterTestIdPrefix);
24533
24550
  const inDocumentScrollLayout = useDocumentScrollLayout();
24551
+ const insetHandled = useContentInsetHandled();
24552
+ const withPagePadding = inDocumentScrollLayout && !insetHandled;
24534
24553
  const activeFilterCount = getActiveFilterCount(filter ?? {});
24535
24554
  const filterControls = filter && setFilter ? buildFilterControls(filterImpls, filter, setFilter, tid) : null;
24536
24555
  return /* @__PURE__ */ jsxs88("div", { ...trussProps99({
@@ -24547,7 +24566,7 @@ function FilterPanelOpen({
24547
24566
  ...{
24548
24567
  flexWrap: "mdandup_fww"
24549
24568
  },
24550
- ...inDocumentScrollLayout ? pageContentPaddingX : void 0
24569
+ ...withPagePadding ? pageContentPaddingX : void 0
24551
24570
  }), children: [
24552
24571
  groupBy && /* @__PURE__ */ jsx175("div", { children: /* @__PURE__ */ jsx175(GroupByField, { ...groupBy }) }),
24553
24572
  filterControls,
@@ -24562,6 +24581,8 @@ function FilterPanelClosed({
24562
24581
  }) {
24563
24582
  const tid = useTestIds({}, filterTestIdPrefix);
24564
24583
  const inDocumentScrollLayout = useDocumentScrollLayout();
24584
+ const insetHandled = useContentInsetHandled();
24585
+ const withPagePadding = inDocumentScrollLayout && !insetHandled;
24565
24586
  if (!filter || !setFilter) return null;
24566
24587
  const chips = safeEntries(filterImpls).flatMap(([key, f]) => chipsForFilterKey(key, f, filter, setFilter, tid));
24567
24588
  if (chips.length === 0) return null;
@@ -24573,7 +24594,7 @@ function FilterPanelClosed({
24573
24594
  minWidth: "mw0",
24574
24595
  flexWrap: "fww"
24575
24596
  },
24576
- ...inDocumentScrollLayout ? pageContentPaddingX : void 0
24597
+ ...withPagePadding ? pageContentPaddingX : void 0
24577
24598
  }), children: [
24578
24599
  chips,
24579
24600
  /* @__PURE__ */ jsx175(Button, { label: "Clear", variant: "tertiary", onClick: () => maybeCall(onClear), ...tid.clearBtn })
@@ -24631,6 +24652,8 @@ function GridTableLayoutActionsComponent(props) {
24631
24652
  sm
24632
24653
  } = useBreakpoint();
24633
24654
  const inDocumentScrollLayout = useDocumentScrollLayout();
24655
+ const insetHandled = useContentInsetHandled();
24656
+ const withPagePadding = inDocumentScrollLayout && !insetHandled;
24634
24657
  const [showSearch, setShowSearch] = useState47(false);
24635
24658
  const [showFilters, setShowFilters] = useState47(false);
24636
24659
  const [{
@@ -24683,11 +24706,10 @@ function GridTableLayoutActionsComponent(props) {
24683
24706
  ...{
24684
24707
  display: "df",
24685
24708
  gap: "g_1",
24686
- justifyContent: "jcsb",
24687
- paddingTop: "pt3"
24709
+ justifyContent: "jcsb"
24688
24710
  },
24689
- ...inDocumentScrollLayout ? pageContentPaddingX : void 0
24690
- }), children: [
24711
+ ...withPagePadding ? pageContentPaddingX : void 0
24712
+ }), ...testId.toolbar, children: [
24691
24713
  /* @__PURE__ */ jsxs89("div", { className: "df g_12px aic", children: [
24692
24714
  !sm && hasSearch && /* @__PURE__ */ jsx176("div", { className: "w_244px", children: searchTextField }),
24693
24715
  sm && hasSearch && /* @__PURE__ */ jsx176(IconButton, { variant: "outline", icon: searchValue ? "searchBadged" : "search", label: "Search", onClick: () => setShowSearch(!showSearch), active: showSearch, ...testId.searchButton }),
@@ -24704,7 +24726,7 @@ function GridTableLayoutActionsComponent(props) {
24704
24726
  !!actions?.length && /* @__PURE__ */ jsx176(HeaderActions, { actions, ...testId.actions })
24705
24727
  ] })
24706
24728
  ] }),
24707
- sm && showSearch && /* @__PURE__ */ jsx176("div", { ...trussProps100(pageContentPaddingX), children: searchTextField }),
24729
+ sm && showSearch && /* @__PURE__ */ jsx176("div", { ...trussProps100(withPagePadding ? pageContentPaddingX : void 0), children: searchTextField }),
24708
24730
  hasFilterControls && !showInlineControl && /* @__PURE__ */ jsx176(FilterPanel, { isOpen: showFilters, groupBy, filterImpls, filter, setFilter, onClear: clearFilters })
24709
24731
  ] });
24710
24732
  }
@@ -24821,12 +24843,11 @@ function GridTableLayoutComponent(props) {
24821
24843
  const emptyState = useMemo45(() => composeEmptyState(tableProps, layoutState, layoutEmptyFallback, clearFilters), [layoutEmptyFallback, layoutState, tableProps, clearFilters]);
24822
24844
  const tableActionsEl = /* @__PURE__ */ jsx178(_GridTableLayoutActions, { filterDefs: layoutState?.filterDefs, filter: layoutState?.filter, setFilter: layoutState?.setFilter, groupBy: layoutState?.groupBy, searchProps: filterSearchProps, hasHideableColumns, columns, api, withCardView, view, setView, clearFilters, searchApi: searchApiRef, actions });
24823
24845
  const cardAs = view === "card" ? "card" : void 0;
24824
- const tableStyle = useMemo45(() => resolveGridTableLayoutStyle(tableProps.style, inDocumentScrollLayout), [tableProps.style, inDocumentScrollLayout]);
24825
24846
  const tableBody = /* @__PURE__ */ jsx178(Fragment40, { children: isGridTableProps(tableProps) ? /* @__PURE__ */ jsx178(GridTable, { ...tableProps, ...cardAs ? {
24826
24847
  as: cardAs
24827
- } : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) : /* @__PURE__ */ jsx178(QueryTable, { ...tableProps, ...cardAs ? {
24848
+ } : {}, api, emptyState, filter: clientSearch, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) : /* @__PURE__ */ jsx178(QueryTable, { ...tableProps, ...cardAs ? {
24828
24849
  as: cardAs
24829
- } : {}, api, emptyState, filter: clientSearch, style: tableStyle, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) });
24850
+ } : {}, api, emptyState, filter: clientSearch, stickyHeader: true, disableColumnResizing: false, visibleColumnsStorageKey, columnGutter: inDocumentScrollLayout }) });
24830
24851
  const tableScrollContent = /* @__PURE__ */ jsxs91(Fragment40, { children: [
24831
24852
  showTableActions && /* @__PURE__ */ jsx178("div", { ref: tableActionsRef, ...trussProps101({
24832
24853
  ...inDocumentScrollLayout ? {
@@ -24860,7 +24881,15 @@ function GridTableLayoutComponent(props) {
24860
24881
  ] });
24861
24882
  return (
24862
24883
  /* Wrapper sets --beam-table-actions-height so sticky headers / the pane can read it. */
24863
- /* @__PURE__ */ jsx178("div", { ref: tableWrapperRef, className: "d_contents", ...tid.tableWrapper, children: tableScrollContent })
24884
+ /* @__PURE__ */ jsx178("div", { ref: tableWrapperRef, ...trussProps101(inDocumentScrollLayout ? {
24885
+ display: "df",
24886
+ flexDirection: "fdc",
24887
+ width: "wfc",
24888
+ minWidth: "mw100"
24889
+ } : {
24890
+ display: "df",
24891
+ flexDirection: "fdc"
24892
+ }), ...tid.tableWrapper, children: tableScrollContent })
24864
24893
  );
24865
24894
  }
24866
24895
  var GridTableLayout = React18.memo(GridTableLayoutComponent);
@@ -24949,22 +24978,6 @@ function useSetTableActionsHeight(tableWrapperRef, tableActionsRef, enabled) {
24949
24978
  };
24950
24979
  }, [tableWrapperRef, syncHeightVar]);
24951
24980
  }
24952
- function resolveGridTableLayoutStyle(userStyle, inDocumentScrollLayout) {
24953
- const layoutDefaults = {
24954
- allWhite: true,
24955
- roundedHeader: !inDocumentScrollLayout
24956
- };
24957
- if (userStyle === void 0) {
24958
- return layoutDefaults;
24959
- }
24960
- if (isGridStyleDef(userStyle)) {
24961
- return {
24962
- ...layoutDefaults,
24963
- ...userStyle
24964
- };
24965
- }
24966
- return userStyle;
24967
- }
24968
24981
 
24969
24982
  // src/components/Layout/PreventBrowserScroll.tsx
24970
24983
  import { jsx as jsx179 } from "react/jsx-runtime";
@@ -29537,7 +29550,7 @@ function PageHeaderLayout(props) {
29537
29550
  flexShrink: "fs0",
29538
29551
  width: "w100"
29539
29552
  }), children: /* @__PURE__ */ jsx236("div", { ref: headerMetricsRef, ...mergeProps42(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
29540
- /* @__PURE__ */ jsx236("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
29553
+ /* @__PURE__ */ jsx236("div", { className: "df fdc fg1 mh0 w100 mt3", ...tid.body, children })
29541
29554
  ] }) });
29542
29555
  }
29543
29556
 
@@ -30694,7 +30707,6 @@ export {
30694
30707
  recursivelyGetContainingRow,
30695
30708
  reservedRowKinds,
30696
30709
  resetRightPaneStore,
30697
- resolveGridTableLayoutStyle,
30698
30710
  resolveTableContentWidth,
30699
30711
  resolveTooltip,
30700
30712
  resolveWithRightPaneOptions,