kaafil-react-uikit 0.10.3 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/dist/admin/index.cjs +471 -363
  3. package/dist/admin/index.cjs.map +1 -1
  4. package/dist/admin/index.d.cts +4 -4
  5. package/dist/admin/index.d.ts +4 -4
  6. package/dist/admin/index.js +116 -8
  7. package/dist/admin/index.js.map +1 -1
  8. package/dist/{chunk-2OWH2KDY.cjs → chunk-2JNB5A6Z.cjs} +90 -84
  9. package/dist/chunk-2JNB5A6Z.cjs.map +1 -0
  10. package/dist/{chunk-S53XNHRU.cjs → chunk-4TTDAOOG.cjs} +18 -4
  11. package/dist/chunk-4TTDAOOG.cjs.map +1 -0
  12. package/dist/{chunk-AFWZFFEM.js → chunk-4WXIR6FD.js} +5 -5
  13. package/dist/{chunk-AFWZFFEM.js.map → chunk-4WXIR6FD.js.map} +1 -1
  14. package/dist/{chunk-NCHZLGEE.cjs → chunk-6MD4QTZZ.cjs} +9 -9
  15. package/dist/{chunk-NCHZLGEE.cjs.map → chunk-6MD4QTZZ.cjs.map} +1 -1
  16. package/dist/{chunk-7V2XJIXD.js → chunk-7CLYTDSC.js} +18 -4
  17. package/dist/chunk-7CLYTDSC.js.map +1 -0
  18. package/dist/{chunk-AJE2RNOR.cjs → chunk-DRUTYOTN.cjs} +4 -4
  19. package/dist/{chunk-AJE2RNOR.cjs.map → chunk-DRUTYOTN.cjs.map} +1 -1
  20. package/dist/{chunk-K5Z6N2FY.js → chunk-DTVRWYVN.js} +5 -5
  21. package/dist/{chunk-K5Z6N2FY.js.map → chunk-DTVRWYVN.js.map} +1 -1
  22. package/dist/{chunk-VCROLPO3.js → chunk-EGEVXI5K.js} +3 -3
  23. package/dist/{chunk-VCROLPO3.js.map → chunk-EGEVXI5K.js.map} +1 -1
  24. package/dist/{chunk-7752B4NM.js → chunk-F6SN6CEC.js} +3 -3
  25. package/dist/{chunk-7752B4NM.js.map → chunk-F6SN6CEC.js.map} +1 -1
  26. package/dist/{chunk-KV7ODN2X.js → chunk-HC4PLK4E.js} +3 -3
  27. package/dist/{chunk-KV7ODN2X.js.map → chunk-HC4PLK4E.js.map} +1 -1
  28. package/dist/{chunk-F4GGHUMX.cjs → chunk-KY752BBA.cjs} +55 -55
  29. package/dist/{chunk-F4GGHUMX.cjs.map → chunk-KY752BBA.cjs.map} +1 -1
  30. package/dist/chunk-PMXQQFQN.cjs +12 -0
  31. package/dist/{chunk-ZZK7USFC.cjs.map → chunk-PMXQQFQN.cjs.map} +1 -1
  32. package/dist/{chunk-TGP4GTIY.js → chunk-RK3CWJ56.js} +10 -4
  33. package/dist/chunk-RK3CWJ56.js.map +1 -0
  34. package/dist/{chunk-64R4ZJTA.cjs → chunk-UG4Z23IJ.cjs} +12 -12
  35. package/dist/{chunk-64R4ZJTA.cjs.map → chunk-UG4Z23IJ.cjs.map} +1 -1
  36. package/dist/{chunk-UUID3H4R.js → chunk-VWFNUQDH.js} +3 -3
  37. package/dist/{chunk-UUID3H4R.js.map → chunk-VWFNUQDH.js.map} +1 -1
  38. package/dist/{chunk-3AF2M2JD.cjs → chunk-W63ZEIC2.cjs} +17 -17
  39. package/dist/{chunk-3AF2M2JD.cjs.map → chunk-W63ZEIC2.cjs.map} +1 -1
  40. package/dist/core/index.cjs +107 -107
  41. package/dist/core/index.d.cts +5 -5
  42. package/dist/core/index.d.ts +5 -5
  43. package/dist/core/index.js +10 -10
  44. package/dist/index.css +1 -1
  45. package/dist/manager/index.cjs +256 -256
  46. package/dist/manager/index.d.cts +4 -4
  47. package/dist/manager/index.d.ts +4 -4
  48. package/dist/manager/index.js +6 -6
  49. package/dist/tokens.json +4 -1
  50. package/dist/traveller/index.cjs +35 -35
  51. package/dist/traveller/index.js +5 -5
  52. package/dist/{useAgencyTrip-gZB0NILH.d.ts → useAgencyTrip-BgQ4gkyy.d.ts} +1 -1
  53. package/dist/{useAgencyTrip-C1YmfuQq.d.cts → useAgencyTrip-CtUMpC-J.d.cts} +1 -1
  54. package/dist/{useNotifications-D262i5BQ.d.ts → useNotifications-B9t5jUQc.d.ts} +1 -1
  55. package/dist/{useNotifications-BZW1Z_ur.d.cts → useNotifications-xn08Oypa.d.cts} +1 -1
  56. package/dist/{useVendors-DXOuZWhZ.d.cts → useVendors-B827YIDs.d.cts} +20 -0
  57. package/dist/{useVendors-DXOuZWhZ.d.ts → useVendors-B827YIDs.d.ts} +20 -0
  58. package/package.json +2 -2
  59. package/dist/chunk-2OWH2KDY.cjs.map +0 -1
  60. package/dist/chunk-7V2XJIXD.js.map +0 -1
  61. package/dist/chunk-S53XNHRU.cjs.map +0 -1
  62. package/dist/chunk-TGP4GTIY.js.map +0 -1
  63. package/dist/chunk-ZZK7USFC.cjs +0 -12
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkF4GGHUMX_cjs = require('../chunk-F4GGHUMX.cjs');
4
- var chunk2OWH2KDY_cjs = require('../chunk-2OWH2KDY.cjs');
5
- require('../chunk-AJE2RNOR.cjs');
6
- var chunk64R4ZJTA_cjs = require('../chunk-64R4ZJTA.cjs');
7
- var chunkS53XNHRU_cjs = require('../chunk-S53XNHRU.cjs');
3
+ var chunkKY752BBA_cjs = require('../chunk-KY752BBA.cjs');
4
+ var chunk2JNB5A6Z_cjs = require('../chunk-2JNB5A6Z.cjs');
5
+ require('../chunk-DRUTYOTN.cjs');
6
+ var chunkUG4Z23IJ_cjs = require('../chunk-UG4Z23IJ.cjs');
7
+ var chunk4TTDAOOG_cjs = require('../chunk-4TTDAOOG.cjs');
8
8
  var react = require('react');
9
9
  var jsxRuntime = require('react/jsx-runtime');
10
10
 
@@ -109,13 +109,13 @@ function CloseIcon(props) {
109
109
  );
110
110
  }
111
111
  function StatusPill({ tone, children, style }) {
112
- return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-admin-shared-patterns-pill", "data-tone": tone, style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
112
+ return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-admin-shared-patterns-pill", "data-tone": tone, style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
113
113
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-pill-dot", "aria-hidden": "true" }),
114
114
  children
115
115
  ] });
116
116
  }
117
117
  function Tag({ tone, children, style }) {
118
- return /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-tag", "data-tone": tone, style: chunkS53XNHRU_cjs.tokenStyle(style), children });
118
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-tag", "data-tone": tone, style: chunk4TTDAOOG_cjs.tokenStyle(style), children });
119
119
  }
120
120
 
121
121
  // src/admin/composite/office/AgencySettingsScreen/internal/fieldDisplayValue.ts
@@ -183,7 +183,7 @@ function SheetDialog({
183
183
  role: "dialog",
184
184
  "aria-modal": "true",
185
185
  "aria-labelledby": titleId,
186
- style: chunkS53XNHRU_cjs.tokenStyle(style),
186
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
187
187
  children: [
188
188
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-sheet-header", children: [
189
189
  eyebrow === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-admin-shared-patterns-sheet-eyebrow", children: eyebrow }),
@@ -479,7 +479,7 @@ function TriStateToggle({ entry, onChange, t }) {
479
479
  function NoRender() {
480
480
  return null;
481
481
  }
482
- var fieldKindRegistry = chunkS53XNHRU_cjs.createRegistry({
482
+ var fieldKindRegistry = chunk4TTDAOOG_cjs.createRegistry({
483
483
  fallback: { render: NoRender }
484
484
  });
485
485
  fieldKindRegistry.register("toggle", {
@@ -629,11 +629,11 @@ function SectionCard({
629
629
  onDismissError,
630
630
  style
631
631
  }) {
632
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
632
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
633
633
  const [dialogOpen, setDialogOpen] = react.useState(false);
634
634
  const setFields = section.fields.filter((field) => stored?.[field.key] !== void 0);
635
635
  const isCustomized = setFields.length > 0;
636
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__panel-inner", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
636
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__panel-inner", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
637
637
  /* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-agency-settings-screen__panel-head", children: [
638
638
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__panel-head-copy", children: [
639
639
  /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "kf-agency-settings-screen__panel-eyebrow", children: [
@@ -1000,7 +1000,7 @@ function orderSectionsByCustomized(sections, isCustomized) {
1000
1000
  ];
1001
1001
  }
1002
1002
  function AgencySettingsScreen(props) {
1003
- const session = chunkS53XNHRU_cjs.useSession();
1003
+ const session = chunk4TTDAOOG_cjs.useSession();
1004
1004
  if (session.status !== "authenticated") {
1005
1005
  return null;
1006
1006
  }
@@ -1012,8 +1012,8 @@ function ReadyAgencySettingsScreen({
1012
1012
  components,
1013
1013
  style
1014
1014
  }) {
1015
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
1016
- const { document: document2, loaded, lastFetchFailed, refresh, patchSettings } = chunkF4GGHUMX_cjs.useAgencySettings();
1015
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
1016
+ const { document: document2, loaded, lastFetchFailed, refresh, patchSettings } = chunkKY752BBA_cjs.useAgencySettings();
1017
1017
  const [selectedSectionId, setSelectedSectionId] = react.useState(AGENCY_SETTINGS_SECTIONS[0]?.id);
1018
1018
  const [savingSectionId, setSavingSectionId] = react.useState(void 0);
1019
1019
  const [sectionError, setSectionError] = react.useState(void 0);
@@ -1030,13 +1030,13 @@ function ReadyAgencySettingsScreen({
1030
1030
  try {
1031
1031
  await patchSettings({ version: document2.version, [sectionId]: patch });
1032
1032
  } catch (error) {
1033
- const kind = chunk2OWH2KDY_cjs.classifyError(error).code === "CONFLICT_VERSION" ? "conflict" : "failed";
1033
+ const kind = chunk2JNB5A6Z_cjs.classifyError(error).code === "CONFLICT_VERSION" ? "conflict" : "failed";
1034
1034
  setSectionError({ sectionId, kind });
1035
1035
  } finally {
1036
1036
  setSavingSectionId(void 0);
1037
1037
  }
1038
1038
  }
1039
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
1039
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
1040
1040
  title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__heading", children: [
1041
1041
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-agency-settings-screen__eyebrow", children: t("chrome.agencySettingsScreen.eyebrow") }),
1042
1042
  /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "kf-agency-settings-screen__title", children: title }),
@@ -1153,7 +1153,7 @@ function summaryFor(t, selected, everyLabelKey, optionLabelKey) {
1153
1153
  return selected.length === 0 ? t(everyLabelKey) : selected.map(optionLabelKey).join(", ");
1154
1154
  }
1155
1155
  function AutoAttachPanel({ template, saving, onSave }) {
1156
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
1156
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
1157
1157
  const titleId = react.useId();
1158
1158
  const [dialogOpen, setDialogOpen] = react.useState(false);
1159
1159
  const [draft, setDraft] = react.useState(() => draftFromTemplate(template));
@@ -1389,9 +1389,9 @@ function TemplateEditorHeader({
1389
1389
  onPublish,
1390
1390
  style
1391
1391
  }) {
1392
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
1392
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
1393
1393
  const statusLabelKey5 = template.status === "PUBLISHED" ? "chrome.checklistTemplateEditor.status.published" : "chrome.checklistTemplateEditor.status.draft";
1394
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
1394
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
1395
1395
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header-identity", children: [
1396
1396
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header-top", children: [
1397
1397
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1460,7 +1460,7 @@ function TemplateItemEditDialog({
1460
1460
  onRemove,
1461
1461
  onClose
1462
1462
  }) {
1463
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
1463
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
1464
1464
  const titleId = react.useId();
1465
1465
  return /* @__PURE__ */ jsxRuntime.jsxs(
1466
1466
  SheetDialog,
@@ -1610,7 +1610,7 @@ function TemplateItemRow({
1610
1610
  onReorder,
1611
1611
  style
1612
1612
  }) {
1613
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
1613
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
1614
1614
  const dayOffset = item.dayOffset.trim().length > 0 ? Number.parseInt(item.dayOffset, 10) : null;
1615
1615
  const dayLabel = dayOffset === null ? "\u2014" : dayOffset > 0 ? `D+${dayOffset}` : `D${dayOffset}`;
1616
1616
  return (
@@ -1638,7 +1638,7 @@ function TemplateItemRow({
1638
1638
  onReorder(draggedDraftId, item.draftId);
1639
1639
  }
1640
1640
  },
1641
- style: chunkS53XNHRU_cjs.tokenStyle(style),
1641
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
1642
1642
  children: [
1643
1643
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__item-drag", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(DragHandleIcon, {}) }),
1644
1644
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__item-index", children: String(index + 1).padStart(2, "0") }),
@@ -1710,8 +1710,8 @@ function ChecklistTemplateEditor({
1710
1710
  components,
1711
1711
  style
1712
1712
  }) {
1713
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
1714
- const { templates, loaded, lastFetchFailed, refresh, patchTemplate, publishTemplate } = chunkF4GGHUMX_cjs.useAgencyChecklistTemplates();
1713
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
1714
+ const { templates, loaded, lastFetchFailed, refresh, patchTemplate, publishTemplate } = chunkKY752BBA_cjs.useAgencyChecklistTemplates();
1715
1715
  const template = templates.find((candidate) => candidate.id === templateId);
1716
1716
  const [title, setTitle] = react.useState("");
1717
1717
  const [items, setItems] = react.useState([]);
@@ -1828,7 +1828,7 @@ function ChecklistTemplateEditor({
1828
1828
  }
1829
1829
  };
1830
1830
  if (lastFetchFailed && !loaded) {
1831
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", role: "alert", children: [
1831
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", role: "alert", children: [
1832
1832
  /* @__PURE__ */ jsxRuntime.jsx(WarningIcon2, { className: "kf-checklist-template-editor__status-icon kf-checklist-template-editor__status-icon--danger" }),
1833
1833
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-editor__status-title", children: t("chrome.checklistTemplateEditor.errorTitle") }),
1834
1834
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1843,20 +1843,20 @@ function ChecklistTemplateEditor({
1843
1843
  ] }) });
1844
1844
  }
1845
1845
  if (!loaded) {
1846
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__skeleton", "aria-hidden": "true", children: [
1846
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__skeleton", "aria-hidden": "true", children: [
1847
1847
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" }),
1848
1848
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" }),
1849
1849
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" })
1850
1850
  ] }) });
1851
1851
  }
1852
1852
  if (template === void 0) {
1853
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", children: [
1853
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", children: [
1854
1854
  /* @__PURE__ */ jsxRuntime.jsx(EmptyStateIcon2, { className: "kf-checklist-template-editor__status-icon" }),
1855
1855
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-editor__status-title", children: t("chrome.checklistTemplateEditor.notFoundTitle") })
1856
1856
  ] }) });
1857
1857
  }
1858
1858
  const editingItem = items.find((item) => item.draftId === editingDraftId);
1859
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
1859
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
1860
1860
  /* @__PURE__ */ jsxRuntime.jsx(
1861
1861
  TemplateEditorHeader2,
1862
1862
  {
@@ -1959,7 +1959,7 @@ var AUDIENCE_HINT_KEY = {
1959
1959
  EXTERNAL: "chrome.checklistTemplateLibrary.audience.externalHint"
1960
1960
  };
1961
1961
  function CreateTemplateSheet({ onSubmit, onClose }) {
1962
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
1962
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
1963
1963
  const titleId = react.useId();
1964
1964
  const [locale, setLocale] = react.useState("en");
1965
1965
  const [title, setTitle] = react.useState("");
@@ -2076,7 +2076,7 @@ function DeleteTemplateConfirmSheet({
2076
2076
  onConfirm,
2077
2077
  onClose
2078
2078
  }) {
2079
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
2079
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
2080
2080
  const titleId = react.useId();
2081
2081
  if (template === void 0) {
2082
2082
  return null;
@@ -2195,7 +2195,7 @@ function TemplateRow({
2195
2195
  onDelete,
2196
2196
  style
2197
2197
  }) {
2198
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
2198
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
2199
2199
  const statusLabelKey5 = template.status === "PUBLISHED" ? "chrome.checklistTemplateLibrary.status.published" : "chrome.checklistTemplateLibrary.status.draft";
2200
2200
  return /* @__PURE__ */ jsxRuntime.jsxs(
2201
2201
  "tr",
@@ -2204,7 +2204,7 @@ function TemplateRow({
2204
2204
  className: "kf-checklist-template-library__table-row",
2205
2205
  "data-selectable": onSelect !== void 0 ? "true" : void 0,
2206
2206
  "data-selected": selected === true ? "true" : void 0,
2207
- style: chunkS53XNHRU_cjs.tokenStyle(style),
2207
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
2208
2208
  children: [
2209
2209
  /* @__PURE__ */ jsxRuntime.jsx(
2210
2210
  "td",
@@ -2294,7 +2294,7 @@ function TemplateLibrarySkeleton() {
2294
2294
  ] }, rowIndex)) }) }) });
2295
2295
  }
2296
2296
  function CardHeading({ count }) {
2297
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
2297
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
2298
2298
  return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-library__card-title", children: t(
2299
2299
  count === 1 ? "chrome.checklistTemplateLibrary.countLabelOne" : "chrome.checklistTemplateLibrary.countLabel"
2300
2300
  ).replace("{count}", String(count)) });
@@ -2310,8 +2310,8 @@ function ChecklistTemplateLibrary({
2310
2310
  components,
2311
2311
  style
2312
2312
  }) {
2313
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
2314
- const { templates, loaded, lastFetchFailed, refresh, createTemplate, removeTemplate } = chunkF4GGHUMX_cjs.useAgencyChecklistTemplates();
2313
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
2314
+ const { templates, loaded, lastFetchFailed, refresh, createTemplate, removeTemplate } = chunkKY752BBA_cjs.useAgencyChecklistTemplates();
2315
2315
  const isControlled = controlledCreating !== void 0 && onCreatingChange !== void 0;
2316
2316
  const [internalCreating, setInternalCreating] = react.useState(false);
2317
2317
  const creating = isControlled ? controlledCreating : internalCreating;
@@ -2347,7 +2347,7 @@ function ChecklistTemplateLibrary({
2347
2347
  ]
2348
2348
  }
2349
2349
  );
2350
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
2350
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
2351
2351
  title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library__heading", children: [
2352
2352
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library__heading-copy", children: [
2353
2353
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-checklist-template-library__title", children: title }),
@@ -2642,8 +2642,8 @@ function BuilderHeader({
2642
2642
  pending,
2643
2643
  style
2644
2644
  }) {
2645
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
2646
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
2645
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
2646
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
2647
2647
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header-identity", children: [
2648
2648
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header-top", children: [
2649
2649
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -2839,7 +2839,7 @@ var fallback = {
2839
2839
  preview: ({ field }) => /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-form-builder__preview-unsupported", children: field.label }),
2840
2840
  configFields: NoConfigFields
2841
2841
  };
2842
- var fieldRegistry = chunkS53XNHRU_cjs.createRegistry({ fallback });
2842
+ var fieldRegistry = chunk4TTDAOOG_cjs.createRegistry({ fallback });
2843
2843
  fieldRegistry.register("HEADING", {
2844
2844
  preview: ({ field }) => /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-form-builder__preview-heading", children: field.label }),
2845
2845
  configFields: NoConfigFields
@@ -3311,7 +3311,7 @@ fieldRegistry.register("ADDRESS", {
3311
3311
  }
3312
3312
  });
3313
3313
  function FieldEditDialog(props) {
3314
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
3314
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
3315
3315
  const titleId = react.useId();
3316
3316
  const { bindings, saving, onClose } = props;
3317
3317
  const isEdit = props.mode === "edit";
@@ -3548,7 +3548,7 @@ function FieldEditDialog(props) {
3548
3548
  );
3549
3549
  }
3550
3550
  function LivePreviewPane({ title, sections, fields }) {
3551
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
3551
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
3552
3552
  const [frame, setFrame] = react.useState("desktop");
3553
3553
  const [answers, setAnswers] = react.useState({});
3554
3554
  function setAnswer(fieldId, value) {
@@ -3637,7 +3637,7 @@ function FieldRow({
3637
3637
  onDragEnd,
3638
3638
  style
3639
3639
  }) {
3640
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
3640
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
3641
3641
  const hasHelp = field.helpText !== null && field.helpText.length > 0;
3642
3642
  return /* @__PURE__ */ jsxRuntime.jsxs(
3643
3643
  "li",
@@ -3645,7 +3645,7 @@ function FieldRow({
3645
3645
  className: "kf-form-builder__field-row",
3646
3646
  "data-dragging": dragging ? "true" : void 0,
3647
3647
  "data-drag-over": dragOver ? "true" : void 0,
3648
- style: chunkS53XNHRU_cjs.tokenStyle(style),
3648
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
3649
3649
  onDragOver: (event) => {
3650
3650
  event.preventDefault();
3651
3651
  onDragOverRow();
@@ -3707,7 +3707,7 @@ function SectionBlock({
3707
3707
  onOpenField,
3708
3708
  onReorderField
3709
3709
  }) {
3710
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
3710
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
3711
3711
  const [title, setTitle] = react.useState(section.title ?? "");
3712
3712
  const [draggedFieldId, setDraggedFieldId] = react.useState(void 0);
3713
3713
  const [dragOverFieldId, setDragOverFieldId] = react.useState(void 0);
@@ -3841,7 +3841,7 @@ function draftFromForm(form) {
3841
3841
  };
3842
3842
  }
3843
3843
  function TargetingSummary({ form }) {
3844
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
3844
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
3845
3845
  const anchorLabel = (anchor) => t(`chrome.formBuilder.summary.anchor.${anchor}`);
3846
3846
  const eventTypes = form.appliesToEventTypes.length === 0 ? t("chrome.formBuilder.summary.everyEventType") : form.appliesToEventTypes.map((type) => t(`chrome.formBuilder.targeting.eventType.${type}`)).join(" \xB7 ");
3847
3847
  const tripModes = form.appliesToTripModes.length === 0 ? t("chrome.formBuilder.summary.everyTripMode") : form.appliesToTripModes.map((mode) => t(`chrome.formBuilder.targeting.tripMode.${mode}`)).join(" \xB7 ");
@@ -3902,7 +3902,7 @@ function TargetingSummary({ form }) {
3902
3902
  ] }, cell.key)) });
3903
3903
  }
3904
3904
  function TargetingPanel({ form, saving, onSave }) {
3905
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
3905
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
3906
3906
  const [editing, setEditing] = react.useState(false);
3907
3907
  const [submitted, setSubmitted] = react.useState(false);
3908
3908
  const [draft, setDraft] = react.useState(() => draftFromForm(form));
@@ -4198,7 +4198,7 @@ function buildReorderSections(sections, fieldsBySection) {
4198
4198
  }));
4199
4199
  }
4200
4200
  function FormBuilder({ formId, onBack, components, style }) {
4201
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
4201
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
4202
4202
  const {
4203
4203
  getForm,
4204
4204
  patchForm,
@@ -4216,7 +4216,7 @@ function FormBuilder({ formId, onBack, components, style }) {
4216
4216
  deleteField,
4217
4217
  reorderForm,
4218
4218
  listBindings
4219
- } = chunkF4GGHUMX_cjs.useAgencyForms();
4219
+ } = chunkKY752BBA_cjs.useAgencyForms();
4220
4220
  const [form, setForm] = react.useState(void 0);
4221
4221
  const [loadFailed, setLoadFailed] = react.useState(false);
4222
4222
  const [bindings, setBindings] = react.useState([]);
@@ -4427,7 +4427,7 @@ function FormBuilder({ formId, onBack, components, style }) {
4427
4427
  }
4428
4428
  }
4429
4429
  if (loadFailed && form === void 0) {
4430
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__status-block", role: "alert", children: [
4430
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__status-block", role: "alert", children: [
4431
4431
  /* @__PURE__ */ jsxRuntime.jsx(WarningIcon4, { className: "kf-form-builder__status-icon kf-form-builder__status-icon--danger" }),
4432
4432
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-form-builder__status-title", children: t("chrome.formBuilder.errorTitle") }),
4433
4433
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -4442,13 +4442,13 @@ function FormBuilder({ formId, onBack, components, style }) {
4442
4442
  ] }) });
4443
4443
  }
4444
4444
  if (form === void 0) {
4445
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__skeleton", "aria-hidden": "true", children: [
4445
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__skeleton", "aria-hidden": "true", children: [
4446
4446
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" }),
4447
4447
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" }),
4448
4448
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" })
4449
4449
  ] }) });
4450
4450
  }
4451
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
4451
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
4452
4452
  onBack !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", onClick: onBack, className: "kf-form-builder__back-link", children: [
4453
4453
  /* @__PURE__ */ jsxRuntime.jsx(BackIcon, {}),
4454
4454
  t("chrome.formBuilder.backToLibrary")
@@ -4602,7 +4602,7 @@ var AUDIENCE_LABEL_KEY2 = {
4602
4602
  MANAGER: "chrome.formsLibrary.audience.manager"
4603
4603
  };
4604
4604
  function CreateFormSheet({ onSubmit, onClose }) {
4605
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
4605
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
4606
4606
  const titleId = react.useId();
4607
4607
  const [locale, setLocale] = react.useState("en");
4608
4608
  const [title, setTitle] = react.useState("");
@@ -4630,7 +4630,7 @@ function CreateFormSheet({ onSubmit, onClose }) {
4630
4630
  });
4631
4631
  onClose();
4632
4632
  } catch (error) {
4633
- setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
4633
+ setErrorCode(chunk2JNB5A6Z_cjs.classifyError(error).code ?? "unknown");
4634
4634
  } finally {
4635
4635
  setPending(false);
4636
4636
  }
@@ -4818,7 +4818,7 @@ function formatDate2(iso) {
4818
4818
  });
4819
4819
  }
4820
4820
  function FormRow({ form, selected, onSelect, style }) {
4821
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
4821
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
4822
4822
  return /* @__PURE__ */ jsxRuntime.jsxs(
4823
4823
  "tr",
4824
4824
  {
@@ -4826,7 +4826,7 @@ function FormRow({ form, selected, onSelect, style }) {
4826
4826
  className: "kf-forms-library__table-row",
4827
4827
  "data-selectable": onSelect !== void 0 ? "true" : void 0,
4828
4828
  "data-selected": selected === true ? "true" : void 0,
4829
- style: chunkS53XNHRU_cjs.tokenStyle(style),
4829
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
4830
4830
  children: [
4831
4831
  /* @__PURE__ */ jsxRuntime.jsx(
4832
4832
  "td",
@@ -4882,7 +4882,7 @@ function FormsLibrarySkeleton() {
4882
4882
  ] }, rowIndex)) }) }) });
4883
4883
  }
4884
4884
  function CardHeading2({ count }) {
4885
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
4885
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
4886
4886
  return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-forms-library__card-title", children: t(
4887
4887
  count === 1 ? "chrome.formsLibrary.countLabelOne" : "chrome.formsLibrary.countLabel"
4888
4888
  ).replace("{count}", String(count)) });
@@ -4897,7 +4897,7 @@ function StatusFilterBar({
4897
4897
  active,
4898
4898
  onChange
4899
4899
  }) {
4900
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
4900
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
4901
4901
  return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-forms-library__filter-bar", children: [
4902
4902
  /* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.formsLibrary.filter.legend") }),
4903
4903
  STATUS_FILTERS.map((filter) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -4923,8 +4923,8 @@ function FormsLibrary({
4923
4923
  components,
4924
4924
  style
4925
4925
  }) {
4926
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
4927
- const { forms, loaded, lastFetchFailed, refresh, createForm } = chunkF4GGHUMX_cjs.useAgencyForms();
4926
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
4927
+ const { forms, loaded, lastFetchFailed, refresh, createForm } = chunkKY752BBA_cjs.useAgencyForms();
4928
4928
  const isControlled = controlledCreating !== void 0 && onCreatingChange !== void 0;
4929
4929
  const [internalCreating, setInternalCreating] = react.useState(false);
4930
4930
  const creating = isControlled ? controlledCreating : internalCreating;
@@ -4935,7 +4935,7 @@ function FormsLibrary({
4935
4935
  await createForm(input);
4936
4936
  };
4937
4937
  const visibleForms = statusFilter === "ALL" ? forms : forms.filter((form) => form.status === statusFilter);
4938
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
4938
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
4939
4939
  title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library__heading", children: [
4940
4940
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-forms-library__title", children: title }),
4941
4941
  subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-forms-library__subtitle", children: subtitle }) : null
@@ -5011,9 +5011,9 @@ function FormsAuthoringFlow({ initialFormId, style }) {
5011
5011
  setSelectedFormId(void 0);
5012
5012
  }
5013
5013
  if (selectedFormId === void 0) {
5014
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormsLibrary, { onSelectForm: handleSelect }) });
5014
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormsLibrary, { onSelectForm: handleSelect }) });
5015
5015
  }
5016
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormBuilder, { formId: selectedFormId, onBack: handleBack }) });
5016
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormBuilder, { formId: selectedFormId, onBack: handleBack }) });
5017
5017
  }
5018
5018
  function SearchIcon(props) {
5019
5019
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -5164,7 +5164,7 @@ function AdminAvatar({
5164
5164
  className: "kf-admin-shared-patterns-avatar",
5165
5165
  "data-size": size,
5166
5166
  "aria-hidden": "true",
5167
- style: chunkS53XNHRU_cjs.tokenStyle(style, {
5167
+ style: chunk4TTDAOOG_cjs.tokenStyle(style, {
5168
5168
  "--kf-admin-shared-patterns-avatar-computed-size": SIZE_VAR[size],
5169
5169
  "--kf-admin-shared-patterns-avatar-computed-bg": `var(--kf-color-avatar-${step})`
5170
5170
  }),
@@ -5184,7 +5184,7 @@ function ManagerResultRow({
5184
5184
  onSelect,
5185
5185
  style
5186
5186
  }) {
5187
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5187
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5188
5188
  const initials = initialsFromName(manager.fullName);
5189
5189
  return /* @__PURE__ */ jsxRuntime.jsxs(
5190
5190
  "tr",
@@ -5192,7 +5192,7 @@ function ManagerResultRow({
5192
5192
  role: "row",
5193
5193
  className: "kf-manager-directory-flow__table-row",
5194
5194
  "data-selectable": onSelect !== void 0 ? "true" : void 0,
5195
- style: chunkS53XNHRU_cjs.tokenStyle(style),
5195
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
5196
5196
  children: [
5197
5197
  /* @__PURE__ */ jsxRuntime.jsx(
5198
5198
  "td",
@@ -5301,8 +5301,8 @@ function ManagerResultsListBody({
5301
5301
  onCountChange,
5302
5302
  onRetry
5303
5303
  }) {
5304
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5305
- const directories = chunkF4GGHUMX_cjs.useDirectories();
5304
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5305
+ const directories = chunkKY752BBA_cjs.useDirectories();
5306
5306
  const [errorMessage, setErrorMessage] = react.useState(void 0);
5307
5307
  const [hasSettled, setHasSettled] = react.useState(false);
5308
5308
  const ManagerRow = ManagerResultRowComponent ?? ManagerResultRow;
@@ -5313,7 +5313,7 @@ function ManagerResultsListBody({
5313
5313
  setErrorMessage(void 0);
5314
5314
  return page;
5315
5315
  } catch (error) {
5316
- setErrorMessage(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
5316
+ setErrorMessage(chunk2JNB5A6Z_cjs.classifyError(error).code ?? "unknown");
5317
5317
  return { rows: [], nextCursor: void 0 };
5318
5318
  } finally {
5319
5319
  setHasSettled(true);
@@ -5321,7 +5321,7 @@ function ManagerResultsListBody({
5321
5321
  },
5322
5322
  [directories, filters]
5323
5323
  );
5324
- const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
5324
+ const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkKY752BBA_cjs.usePaginatedList(fetch);
5325
5325
  const isLoading = !hasSettled;
5326
5326
  const reportedCount = isLoading || errorMessage !== void 0 ? void 0 : rows.length;
5327
5327
  react.useEffect(() => {
@@ -5418,7 +5418,7 @@ function ManagerSearchInput({
5418
5418
  debounceMs,
5419
5419
  onDebouncedChange
5420
5420
  }) {
5421
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5421
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5422
5422
  const [value, setValue] = react.useState("");
5423
5423
  react.useEffect(() => {
5424
5424
  const timer = setTimeout(() => onDebouncedChange(value), debounceMs);
@@ -5457,12 +5457,12 @@ function ManagerDirectoryFlow({
5457
5457
  components,
5458
5458
  style
5459
5459
  }) {
5460
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5460
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5461
5461
  const [query, setQuery] = react.useState("");
5462
5462
  const [count, setCount] = react.useState(void 0);
5463
5463
  const trimmedQuery = query.trim();
5464
5464
  const handleCountChange = react.useCallback((next) => setCount(next), []);
5465
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
5465
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
5466
5466
  title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow__heading", children: [
5467
5467
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-manager-directory-flow__title", children: title }),
5468
5468
  subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-directory-flow__subtitle", children: subtitle }) : null
@@ -5534,7 +5534,7 @@ function formatDate3(iso) {
5534
5534
  return new Date(iso).toLocaleDateString("en-GB", { day: "2-digit", month: "short" });
5535
5535
  }
5536
5536
  function ManagerAssignmentsCard({ trips }) {
5537
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5537
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5538
5538
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-manager-profile-section__card", children: [
5539
5539
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section__card-head", children: [
5540
5540
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-manager-profile-section__card-title", children: t("chrome.managerProfileSection.trips.title") }),
@@ -5598,7 +5598,7 @@ function HeroProfileHeader({
5598
5598
  glowTone,
5599
5599
  style
5600
5600
  }) {
5601
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero", "data-glow": glowTone, style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
5601
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero", "data-glow": glowTone, style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
5602
5602
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-hero-glow", "aria-hidden": "true" }),
5603
5603
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero-row", children: [
5604
5604
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-hero-avatar", "aria-hidden": "true", children: avatarInitials }),
@@ -5631,7 +5631,7 @@ function initialsFromName2(name) {
5631
5631
  return `${first}${last}`.toUpperCase();
5632
5632
  }
5633
5633
  function ManagerProfileHero({ profile, onBack }) {
5634
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5634
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5635
5635
  const initials = initialsFromName2(profile.fullName);
5636
5636
  const stats = [
5637
5637
  { key: "trips", label: t("chrome.managerProfileSection.hero.trips"), value: profile.tripCount },
@@ -5690,12 +5690,12 @@ function ManagerProfileSection({
5690
5690
  components,
5691
5691
  style
5692
5692
  }) {
5693
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5694
- const { read, readFailed, refresh } = chunkF4GGHUMX_cjs.useAgencyManagerProfile(managerRef);
5693
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5694
+ const { read, readFailed, refresh } = chunkKY752BBA_cjs.useAgencyManagerProfile(managerRef);
5695
5695
  const Hero = components?.Hero ?? ManagerProfileHero;
5696
5696
  const AssignmentsCard = components?.AssignmentsCard ?? ManagerAssignmentsCard;
5697
5697
  if (readFailed) {
5698
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section__status-block", role: "alert", children: [
5698
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section__status-block", role: "alert", children: [
5699
5699
  /* @__PURE__ */ jsxRuntime.jsx(WarningIcon7, { className: "kf-manager-profile-section__status-icon kf-manager-profile-section__status-icon--danger" }),
5700
5700
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-profile-section__status-title", children: t("chrome.managerProfileSection.errorTitle") }),
5701
5701
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-profile-section__status-body", children: t("chrome.managerProfileSection.errorBody") }),
@@ -5711,9 +5711,9 @@ function ManagerProfileSection({
5711
5711
  ] }) });
5712
5712
  }
5713
5713
  if (read === void 0) {
5714
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ManagerProfileSkeleton, {}) });
5714
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ManagerProfileSkeleton, {}) });
5715
5715
  }
5716
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
5716
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
5717
5717
  /* @__PURE__ */ jsxRuntime.jsx(Hero, { profile: read, onBack }),
5718
5718
  /* @__PURE__ */ jsxRuntime.jsx(AssignmentsCard, { trips: read.trips })
5719
5719
  ] });
@@ -5740,7 +5740,7 @@ function TemplateAuthoringFlow({
5740
5740
  initialTemplateId,
5741
5741
  style
5742
5742
  }) {
5743
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5743
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5744
5744
  const [selectedTemplateId, setSelectedTemplateId] = react.useState(
5745
5745
  initialTemplateId
5746
5746
  );
@@ -5751,9 +5751,9 @@ function TemplateAuthoringFlow({
5751
5751
  setSelectedTemplateId(void 0);
5752
5752
  }
5753
5753
  if (selectedTemplateId === void 0) {
5754
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-template-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ChecklistTemplateLibrary, { onSelectTemplate: handleSelect }) });
5754
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-template-authoring-flow", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ChecklistTemplateLibrary, { onSelectTemplate: handleSelect }) });
5755
5755
  }
5756
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-template-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
5756
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-template-authoring-flow", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
5757
5757
  /* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", onClick: handleBack, className: "kf-template-authoring-flow__back-link", children: [
5758
5758
  /* @__PURE__ */ jsxRuntime.jsx(BackIcon3, {}),
5759
5759
  t("chrome.templateAuthoringFlow.backToLibrary")
@@ -5762,8 +5762,8 @@ function TemplateAuthoringFlow({
5762
5762
  ] });
5763
5763
  }
5764
5764
  function AddTravellerModal({ onClose, onCreated }) {
5765
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
5766
- const directories = chunkF4GGHUMX_cjs.useDirectories();
5765
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
5766
+ const directories = chunkKY752BBA_cjs.useDirectories();
5767
5767
  const titleId = react.useId();
5768
5768
  const [fullName, setFullName] = react.useState("");
5769
5769
  const [phone, setPhone] = react.useState("");
@@ -5787,7 +5787,7 @@ function AddTravellerModal({ onClose, onCreated }) {
5787
5787
  });
5788
5788
  onCreated(created);
5789
5789
  } catch (error) {
5790
- setErrorMessage(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
5790
+ setErrorMessage(chunk2JNB5A6Z_cjs.classifyError(error).code ?? "unknown");
5791
5791
  } finally {
5792
5792
  setIsSubmitting(false);
5793
5793
  }
@@ -6001,7 +6001,7 @@ function TravellerResultRow({
6001
6001
  onSelect,
6002
6002
  style
6003
6003
  }) {
6004
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6004
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6005
6005
  const initials = initialsFromName3(traveller.fullName);
6006
6006
  return /* @__PURE__ */ jsxRuntime.jsxs(
6007
6007
  "tr",
@@ -6009,7 +6009,7 @@ function TravellerResultRow({
6009
6009
  role: "row",
6010
6010
  className: "kf-traveller-directory__table-row",
6011
6011
  "data-selectable": onSelect !== void 0 ? "true" : void 0,
6012
- style: chunkS53XNHRU_cjs.tokenStyle(style),
6012
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
6013
6013
  children: [
6014
6014
  /* @__PURE__ */ jsxRuntime.jsx(
6015
6015
  "td",
@@ -6137,8 +6137,8 @@ function TravellerResultsListBody({
6137
6137
  onCountChange,
6138
6138
  onRetry
6139
6139
  }) {
6140
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6141
- const directories = chunkF4GGHUMX_cjs.useDirectories();
6140
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6141
+ const directories = chunkKY752BBA_cjs.useDirectories();
6142
6142
  const [errorMessage, setErrorMessage] = react.useState(void 0);
6143
6143
  const [hasSettled, setHasSettled] = react.useState(false);
6144
6144
  const fetch = react.useCallback(
@@ -6149,7 +6149,7 @@ function TravellerResultsListBody({
6149
6149
  setErrorMessage(void 0);
6150
6150
  return page;
6151
6151
  } catch (error) {
6152
- setErrorMessage(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
6152
+ setErrorMessage(chunk2JNB5A6Z_cjs.classifyError(error).code ?? "unknown");
6153
6153
  return { rows: [], nextCursor: void 0 };
6154
6154
  } finally {
6155
6155
  setHasSettled(true);
@@ -6157,7 +6157,7 @@ function TravellerResultsListBody({
6157
6157
  },
6158
6158
  [directories, query]
6159
6159
  );
6160
- const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
6160
+ const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkKY752BBA_cjs.usePaginatedList(fetch);
6161
6161
  const isLoading = !hasSettled;
6162
6162
  const reportedCount = isLoading || errorMessage !== void 0 ? void 0 : rows.length;
6163
6163
  react.useEffect(() => {
@@ -6252,7 +6252,7 @@ function TravellerSearchInput({
6252
6252
  debounceMs,
6253
6253
  onDebouncedChange
6254
6254
  }) {
6255
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6255
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6256
6256
  const [value, setValue] = react.useState("");
6257
6257
  react.useEffect(() => {
6258
6258
  const timer = setTimeout(() => onDebouncedChange(value), debounceMs);
@@ -6292,13 +6292,13 @@ function TravellerSearchBox({
6292
6292
  trailingAction,
6293
6293
  style
6294
6294
  }) {
6295
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6295
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6296
6296
  const [query, setQuery] = react.useState("");
6297
6297
  const [count, setCount] = react.useState(void 0);
6298
6298
  const trimmed = query.trim();
6299
6299
  const handleCountChange = react.useCallback((next) => setCount(next), []);
6300
6300
  const isBelowFloor = minQueryLength > 0 && trimmed.length < minQueryLength;
6301
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
6301
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
6302
6302
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box-input-row", children: [
6303
6303
  /* @__PURE__ */ jsxRuntime.jsx(TravellerSearchInput, { debounceMs, onDebouncedChange: setQuery }),
6304
6304
  count !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-traveller-directory__count", children: t(
@@ -6330,7 +6330,7 @@ function TravellerDirectoryFlow({
6330
6330
  components,
6331
6331
  style
6332
6332
  }) {
6333
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6333
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6334
6334
  const [uncontrolledOpen, setUncontrolledOpen] = react.useState(false);
6335
6335
  const isControlled = adding !== void 0 && onAddingChange !== void 0;
6336
6336
  const isAddModalOpen = isControlled ? adding : uncontrolledOpen;
@@ -6353,7 +6353,7 @@ function TravellerDirectoryFlow({
6353
6353
  );
6354
6354
  const SearchBox = components?.TravellerSearchBox ?? TravellerSearchBox;
6355
6355
  const AddModal = components?.AddTravellerModal ?? AddTravellerModal;
6356
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
6356
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
6357
6357
  title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow__heading", children: [
6358
6358
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-directory-flow__title", children: title }),
6359
6359
  subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-directory-flow__subtitle", children: subtitle }) : null
@@ -6379,7 +6379,7 @@ function TravellerDirectoryFlow({
6379
6379
  ] });
6380
6380
  }
6381
6381
  function useAgencyTravellerProfile(travellerRef) {
6382
- const client = chunkS53XNHRU_cjs.useKaafilClient();
6382
+ const client = chunk4TTDAOOG_cjs.useKaafilClient();
6383
6383
  const [read, setRead] = react.useState(void 0);
6384
6384
  const [readFailed, setReadFailed] = react.useState(false);
6385
6385
  const refresh = react.useCallback(async () => {
@@ -6436,7 +6436,7 @@ function formatMinor(minor, currency) {
6436
6436
  }).format(minor / 100);
6437
6437
  }
6438
6438
  function TravellerLifetimeCard({ lifetime }) {
6439
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6439
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6440
6440
  if (lifetime.currency === null) {
6441
6441
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
6442
6442
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
@@ -6484,7 +6484,7 @@ function formatTimestamp(iso) {
6484
6484
  });
6485
6485
  }
6486
6486
  function TravellerNotesList({ notes }) {
6487
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6487
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6488
6488
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
6489
6489
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
6490
6490
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-profile-section__card-title", children: t("chrome.travellerProfileSection.notes.title") }),
@@ -6530,7 +6530,7 @@ function formatDateOfBirth(iso) {
6530
6530
  });
6531
6531
  }
6532
6532
  function TravellerPersonalCard({ profile }) {
6533
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6533
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6534
6534
  const p = profile.profile;
6535
6535
  const dob = formatDateOfBirth(p.dateOfBirth);
6536
6536
  const email = p.email ?? profile.email;
@@ -6645,7 +6645,7 @@ function formatMinor2(minor, currency) {
6645
6645
  }).format(minor / 100);
6646
6646
  }
6647
6647
  function TravellerProfileHero({ profile, onBack }) {
6648
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6648
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6649
6649
  const initials = initialsFromName4(profile.fullName);
6650
6650
  const { lifetime } = profile;
6651
6651
  const stats = lifetime.currency !== null ? [
@@ -6736,7 +6736,7 @@ function formatMinor3(minor, currency) {
6736
6736
  }).format(minor / 100);
6737
6737
  }
6738
6738
  function TravellerTripHistoryTable({ trips }) {
6739
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6739
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6740
6740
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
6741
6741
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
6742
6742
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-profile-section__card-title", children: t("chrome.travellerProfileSection.trips.title") }),
@@ -6787,7 +6787,7 @@ function TravellerProfileSection({
6787
6787
  components,
6788
6788
  style
6789
6789
  }) {
6790
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
6790
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
6791
6791
  const { read, readFailed, refresh } = useAgencyTravellerProfile(travellerRef);
6792
6792
  const Hero = components?.Hero ?? TravellerProfileHero;
6793
6793
  const PersonalCard = components?.PersonalCard ?? TravellerPersonalCard;
@@ -6795,7 +6795,7 @@ function TravellerProfileSection({
6795
6795
  const TripHistoryTable = components?.TripHistoryTable ?? TravellerTripHistoryTable;
6796
6796
  const NotesList = components?.NotesList ?? TravellerNotesList;
6797
6797
  if (readFailed) {
6798
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__status-block", role: "alert", children: [
6798
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__status-block", role: "alert", children: [
6799
6799
  /* @__PURE__ */ jsxRuntime.jsx(WarningIcon9, { className: "kf-traveller-profile-section__status-icon kf-traveller-profile-section__status-icon--danger" }),
6800
6800
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-profile-section__status-title", children: t("chrome.travellerProfileSection.errorTitle") }),
6801
6801
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-profile-section__status-body", children: t("chrome.travellerProfileSection.errorBody") }),
@@ -6811,9 +6811,9 @@ function TravellerProfileSection({
6811
6811
  ] }) });
6812
6812
  }
6813
6813
  if (read === void 0) {
6814
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TravellerProfileSkeleton, {}) });
6814
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TravellerProfileSkeleton, {}) });
6815
6815
  }
6816
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
6816
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
6817
6817
  /* @__PURE__ */ jsxRuntime.jsx(Hero, { profile: read, onBack }),
6818
6818
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__body", children: [
6819
6819
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__column", children: [
@@ -6905,7 +6905,7 @@ function ToggleSwitch({
6905
6905
  disabled,
6906
6906
  className: "kf-admin-shared-patterns-toggle-row",
6907
6907
  onClick: () => onChange(!checked),
6908
- style: chunkS53XNHRU_cjs.tokenStyle(style),
6908
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
6909
6909
  children: /* @__PURE__ */ jsxRuntime.jsx(
6910
6910
  "span",
6911
6911
  {
@@ -7343,7 +7343,7 @@ function TriggerDetailPanel({
7343
7343
  style
7344
7344
  }) {
7345
7345
  const [dialogOpen, setDialogOpen] = react.useState(false);
7346
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
7346
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
7347
7347
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail-head", children: [
7348
7348
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trigger-template-editor__detail-eyebrow", children: t("chrome.triggerTemplateEditor.selected") }),
7349
7349
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -7427,8 +7427,8 @@ function TriggerTemplateEditor({
7427
7427
  onTriggerPatched,
7428
7428
  style
7429
7429
  }) {
7430
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7431
- const { triggers, loaded, lastFetchFailed, refresh, patchTrigger } = chunkF4GGHUMX_cjs.useAgencyJourneyTriggers();
7430
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7431
+ const { triggers, loaded, lastFetchFailed, refresh, patchTrigger } = chunkKY752BBA_cjs.useAgencyJourneyTriggers();
7432
7432
  const [savingId, setSavingId] = react.useState(void 0);
7433
7433
  const [selectedId, setSelectedId] = react.useState(void 0);
7434
7434
  const filtered = tripModeFilter === void 0 ? triggers : triggers.filter((trigger) => trigger.tripMode === tripModeFilter);
@@ -7463,7 +7463,7 @@ function TriggerTemplateEditor({
7463
7463
  setSavingId(void 0);
7464
7464
  }
7465
7465
  }
7466
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
7466
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
7467
7467
  title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__heading", children: [
7468
7468
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trigger-template-editor__title", children: title }),
7469
7469
  subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trigger-template-editor__subtitle", children: subtitle }) : null
@@ -7611,14 +7611,14 @@ function BookingsSkeleton() {
7611
7611
  ] }, id)) });
7612
7612
  }
7613
7613
  function BookingsEmpty() {
7614
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7614
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7615
7615
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", children: [
7616
7616
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t("chrome.tripBookings.emptyTitle") }),
7617
7617
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__state-body", children: t("chrome.tripBookings.emptyBody") })
7618
7618
  ] });
7619
7619
  }
7620
7620
  function BookingsFailed({ onRetry }) {
7621
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7621
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7622
7622
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", role: "alert", children: [
7623
7623
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t("chrome.tripBookings.failedTitle") }),
7624
7624
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__state-body", children: t("chrome.tripBookings.failedBody") }),
@@ -7626,7 +7626,7 @@ function BookingsFailed({ onRetry }) {
7626
7626
  ] });
7627
7627
  }
7628
7628
  function BookingsDark({ reason }) {
7629
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7629
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7630
7630
  if (reason === "mode") return null;
7631
7631
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", "data-dark": reason, children: [
7632
7632
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t(
@@ -7667,7 +7667,7 @@ function voucherCount(row) {
7667
7667
  }
7668
7668
  var DAY = { day: "numeric", month: "short", year: "numeric" };
7669
7669
  function TripBookingsSection(props) {
7670
- const session = chunkS53XNHRU_cjs.useSession();
7670
+ const session = chunk4TTDAOOG_cjs.useSession();
7671
7671
  if (session.status !== "authenticated") {
7672
7672
  return null;
7673
7673
  }
@@ -7678,8 +7678,8 @@ function ReadyTripBookingsSection({
7678
7678
  onOpenDocuments,
7679
7679
  style
7680
7680
  }) {
7681
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7682
- const bookings = chunkF4GGHUMX_cjs.useBookings(tripRef);
7681
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7682
+ const bookings = chunkKY752BBA_cjs.useBookings(tripRef);
7683
7683
  const ready = bookings.status === "ready" ? bookings : null;
7684
7684
  const groups = react.useMemo(
7685
7685
  () => ready === null ? [] : groupByKind(liveBookings(ready.bookings)),
@@ -7689,7 +7689,7 @@ function ReadyTripBookingsSection({
7689
7689
  const unreadable = ready !== null && ready.syncedAt === void 0;
7690
7690
  const refreshLive = ready?.refreshLive;
7691
7691
  if (bookings.status === "dark") return /* @__PURE__ */ jsxRuntime.jsx(BookingsDark, { reason: bookings.reason });
7692
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-bookings-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
7692
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-bookings-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
7693
7693
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-bookings-section__head", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__head-text", children: [
7694
7694
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-bookings-section__title", children: t("chrome.tripBookings.panelLabel") }),
7695
7695
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__subtitle", children: t("chrome.tripBookings.subtitle").replace("{count}", String(total)) })
@@ -7761,7 +7761,7 @@ function LockIcon2() {
7761
7761
  );
7762
7762
  }
7763
7763
  function CloseoutLockNotice({ whatKey }) {
7764
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7764
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7765
7765
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-closeout-lock", role: "status", children: [
7766
7766
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-closeout-lock__glyph", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(LockIcon2, {}) }),
7767
7767
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-admin-closeout-lock__body", children: [
@@ -7865,7 +7865,7 @@ function ChecklistSkeleton() {
7865
7865
  ] }, column)) });
7866
7866
  }
7867
7867
  function ChecklistEmpty({ onPull }) {
7868
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7868
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7869
7869
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", children: [
7870
7870
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-checklist-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(ChecklistIcon, {}) }),
7871
7871
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-checklist-section__state-title", children: t("chrome.tripChecklist.emptyTitle") }),
@@ -7874,7 +7874,7 @@ function ChecklistEmpty({ onPull }) {
7874
7874
  ] });
7875
7875
  }
7876
7876
  function ChecklistFailed({ onRetry }) {
7877
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7877
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7878
7878
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", children: [
7879
7879
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-checklist-section__state-title", children: t("chrome.tripChecklist.failedTitle") }),
7880
7880
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-checklist-section__state-body", children: t("chrome.tripChecklist.failedBody") }),
@@ -7882,7 +7882,7 @@ function ChecklistFailed({ onRetry }) {
7882
7882
  ] });
7883
7883
  }
7884
7884
  function ChecklistDark({ reason }) {
7885
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7885
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7886
7886
  if (reason === "mode") return null;
7887
7887
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", "data-dark": reason, children: [
7888
7888
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-checklist-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(LockIcon3, {}) }),
@@ -7982,7 +7982,7 @@ function ItemDialog({
7982
7982
  onClose,
7983
7983
  onSubmit
7984
7984
  }) {
7985
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
7985
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
7986
7986
  const titleId = react.useId();
7987
7987
  const [values, setValues] = react.useState(initial);
7988
7988
  const [sectionChoice, setSectionChoice] = react.useState(
@@ -8179,7 +8179,7 @@ function ChecklistItemRow({
8179
8179
  onToggle,
8180
8180
  onEdit
8181
8181
  }) {
8182
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
8182
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
8183
8183
  const complete = item.status === "COMPLETE";
8184
8184
  const day = dayOffsetLabel(item.dayOffset);
8185
8185
  const actorKey = actorLabelKey(item.performedByKind);
@@ -8231,7 +8231,7 @@ function SectionCard2({
8231
8231
  onAddToSection,
8232
8232
  ItemRow: ItemRow2 = ChecklistItemRow
8233
8233
  }) {
8234
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
8234
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
8235
8235
  const openMandatory = items.filter((one) => one.isMandatory && one.status === "OPEN").length;
8236
8236
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section__section", children: [
8237
8237
  /* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-trip-checklist-section__section-head", children: [
@@ -8285,7 +8285,7 @@ function PhasePanel({
8285
8285
  onAddToPhase,
8286
8286
  ItemRow: ItemRow2
8287
8287
  }) {
8288
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
8288
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
8289
8289
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: sections.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__phase-empty", children: [
8290
8290
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: t("chrome.tripChecklist.phaseEmpty") }),
8291
8291
  readOnly ? null : /* @__PURE__ */ jsxRuntime.jsx(
@@ -8321,7 +8321,7 @@ function PhaseSwitcher({
8321
8321
  value,
8322
8322
  onChange
8323
8323
  }) {
8324
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
8324
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
8325
8325
  return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-checklist-section__segment", children: [
8326
8326
  /* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.tripChecklist.phaseLabel") }),
8327
8327
  OPTIONS.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -8354,7 +8354,7 @@ function TemplatePickerDialog({
8354
8354
  onClose,
8355
8355
  onPull
8356
8356
  }) {
8357
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
8357
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
8358
8358
  const titleId = react.useId();
8359
8359
  const [selectedId, setSelectedId] = react.useState(null);
8360
8360
  const [mode, setMode] = react.useState("append");
@@ -8476,7 +8476,7 @@ function codeOf(error) {
8476
8476
  return classification?.code ?? "unknown";
8477
8477
  }
8478
8478
  function TripChecklistSection(props) {
8479
- const session = chunkS53XNHRU_cjs.useSession();
8479
+ const session = chunk4TTDAOOG_cjs.useSession();
8480
8480
  if (session.status !== "authenticated") {
8481
8481
  return null;
8482
8482
  }
@@ -8490,8 +8490,8 @@ function ReadyTripChecklistSection({
8490
8490
  components,
8491
8491
  style
8492
8492
  }) {
8493
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
8494
- const checklists = chunk2OWH2KDY_cjs.useChecklists(tripRef);
8493
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
8494
+ const checklists = chunk2JNB5A6Z_cjs.useChecklists(tripRef);
8495
8495
  const [overlay, setOverlay] = react.useState({ kind: "none" });
8496
8496
  const [pending, setPending] = react.useState(false);
8497
8497
  const [busyItemId, setBusyItemId] = react.useState(null);
@@ -8658,7 +8658,7 @@ function ReadyTripChecklistSection({
8658
8658
  const inert = readOnly || locked;
8659
8659
  const unreadable = aggregate?.lastFetchFailed === true && aggregate.loaded === false;
8660
8660
  const percent = overallPercent(aggregate?.progress);
8661
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
8661
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
8662
8662
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__head", children: [
8663
8663
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__head-text", children: [
8664
8664
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-checklist-section__title", children: t("chrome.tripChecklist.panelLabel") }),
@@ -9047,7 +9047,7 @@ var STATUS_LABEL_KEY5 = {
9047
9047
  CANCELLED: "chrome.tripDirectory.status.cancelled"
9048
9048
  };
9049
9049
  function TripRow({ trip, index, onOpen, style }) {
9050
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9050
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9051
9051
  const derived = deriveTripRow(trip, index);
9052
9052
  return /* @__PURE__ */ jsxRuntime.jsxs(
9053
9053
  "tr",
@@ -9055,7 +9055,7 @@ function TripRow({ trip, index, onOpen, style }) {
9055
9055
  role: "row",
9056
9056
  className: "kf-trip-directory-flow__row",
9057
9057
  "data-dimming": derived.dimming === "none" ? void 0 : derived.dimming,
9058
- style: chunkS53XNHRU_cjs.tokenStyle(style),
9058
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
9059
9059
  children: [
9060
9060
  /* @__PURE__ */ jsxRuntime.jsxs(
9061
9061
  "td",
@@ -9174,8 +9174,8 @@ function TripResultsListBody({
9174
9174
  hasActiveFilter,
9175
9175
  onRetry
9176
9176
  }) {
9177
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9178
- const { makeTripsFetch } = chunkF4GGHUMX_cjs.useAgencyTrips();
9177
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9178
+ const { makeTripsFetch } = chunkKY752BBA_cjs.useAgencyTrips();
9179
9179
  const [errorCode, setErrorCode] = react.useState(void 0);
9180
9180
  const [hasSettled, setHasSettled] = react.useState(false);
9181
9181
  const Row = TripRowComponent ?? TripRow;
@@ -9186,7 +9186,7 @@ function TripResultsListBody({
9186
9186
  setErrorCode(void 0);
9187
9187
  return page;
9188
9188
  } catch (error) {
9189
- setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
9189
+ setErrorCode(chunk2JNB5A6Z_cjs.classifyError(error).code ?? "unknown");
9190
9190
  return { rows: [], nextCursor: void 0 };
9191
9191
  } finally {
9192
9192
  setHasSettled(true);
@@ -9194,7 +9194,7 @@ function TripResultsListBody({
9194
9194
  },
9195
9195
  [makeTripsFetch, filters]
9196
9196
  );
9197
- const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
9197
+ const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkKY752BBA_cjs.usePaginatedList(fetch);
9198
9198
  const isLoading = !hasSettled;
9199
9199
  const reportedCount = isLoading || errorCode !== void 0 ? void 0 : rows.length;
9200
9200
  react.useEffect(() => {
@@ -9296,7 +9296,7 @@ function TripSearchInput({
9296
9296
  debounceMs,
9297
9297
  onDebouncedChange
9298
9298
  }) {
9299
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9299
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9300
9300
  const [value, setValue] = react.useState("");
9301
9301
  react.useEffect(() => {
9302
9302
  const timer = setTimeout(() => onDebouncedChange(value.trim()), debounceMs);
@@ -9366,7 +9366,7 @@ function TripDirectoryFlow({
9366
9366
  components,
9367
9367
  style
9368
9368
  }) {
9369
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9369
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9370
9370
  const [eventType, setEventType] = react.useState(initialEventType ?? "TRIP");
9371
9371
  const [segment, setSegment] = react.useState("all");
9372
9372
  const [q, setQ] = react.useState("");
@@ -9386,7 +9386,7 @@ function TripDirectoryFlow({
9386
9386
  );
9387
9387
  const filterKey = react.useMemo(() => JSON.stringify(filters), [filters]);
9388
9388
  const hasActiveFilter = segment !== "all" || q.length > 0 || status !== void 0;
9389
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
9389
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
9390
9390
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow__toolbar", children: [
9391
9391
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow__toolbar-row", children: [
9392
9392
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -9646,8 +9646,13 @@ function KindIcon({
9646
9646
  if (kind === "pdf") return /* @__PURE__ */ jsxRuntime.jsx(PdfFileIcon, {});
9647
9647
  return /* @__PURE__ */ jsxRuntime.jsx(GenericFileIcon, {});
9648
9648
  }
9649
- function DocumentRow({ row, onOpen }) {
9650
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9649
+ function DocumentRow({
9650
+ row,
9651
+ onOpen,
9652
+ onWithdraw,
9653
+ withdrawing = false
9654
+ }) {
9655
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9651
9656
  const { file, spend } = row;
9652
9657
  const purged = file.status === "purged";
9653
9658
  const retention = retentionStateOf(file);
@@ -9697,7 +9702,20 @@ function DocumentRow({ row, onOpen }) {
9697
9702
  ) }),
9698
9703
  classKey === null ? null : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-documents-section__retention-class", children: t(classKey) })
9699
9704
  ] }),
9700
- /* @__PURE__ */ jsxRuntime.jsx("td", { className: "kf-trip-documents-section__actions-cell", children: isBrowsable(file.status) ? /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", className: "kf-trip-documents-section__link-button", onClick: onOpen, children: t("chrome.tripDocuments.open") }) : null })
9705
+ /* @__PURE__ */ jsxRuntime.jsxs("td", { className: "kf-trip-documents-section__actions-cell", children: [
9706
+ isBrowsable(file.status) ? /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", className: "kf-trip-documents-section__link-button", onClick: onOpen, children: t("chrome.tripDocuments.open") }) : null,
9707
+ onWithdraw === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(
9708
+ "button",
9709
+ {
9710
+ type: "button",
9711
+ className: "kf-trip-documents-section__link-button",
9712
+ "data-destructive": "true",
9713
+ onClick: onWithdraw,
9714
+ disabled: withdrawing,
9715
+ children: t(withdrawing ? "chrome.tripDocuments.withdrawing" : "chrome.tripDocuments.withdraw")
9716
+ }
9717
+ )
9718
+ ] })
9701
9719
  ] });
9702
9720
  }
9703
9721
  var SKELETON_ROWS3 = ["s1", "s2", "s3", "s4"];
@@ -9708,7 +9726,7 @@ function DocumentsSkeleton() {
9708
9726
  ] }, id)) });
9709
9727
  }
9710
9728
  function DocumentsEmpty() {
9711
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9729
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9712
9730
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", children: [
9713
9731
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-documents-section__state-mark", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(EmptyDocumentsIcon, {}) }),
9714
9732
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t("chrome.tripDocuments.emptyTitle") }),
@@ -9716,7 +9734,7 @@ function DocumentsEmpty() {
9716
9734
  ] });
9717
9735
  }
9718
9736
  function DocumentsFailed({ onRetry }) {
9719
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9737
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9720
9738
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", role: "alert", children: [
9721
9739
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t("chrome.tripDocuments.failedTitle") }),
9722
9740
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__state-body", children: t("chrome.tripDocuments.failedBody") }),
@@ -9724,7 +9742,7 @@ function DocumentsFailed({ onRetry }) {
9724
9742
  ] });
9725
9743
  }
9726
9744
  function DocumentsDark({ reason }) {
9727
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9745
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9728
9746
  if (reason === "mode") return null;
9729
9747
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", "data-dark": reason, children: [
9730
9748
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t(
@@ -9747,7 +9765,7 @@ function DocumentViewer({
9747
9765
  failed,
9748
9766
  onClose
9749
9767
  }) {
9750
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9768
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9751
9769
  const titleId = react.useId();
9752
9770
  const { file } = row;
9753
9771
  const classKey = retentionClassLabelKey(file.retentionClass);
@@ -9828,7 +9846,7 @@ function DocumentViewer({
9828
9846
  );
9829
9847
  }
9830
9848
  function PurposeChips({ counts, value, onChange }) {
9831
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9849
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9832
9850
  const options = [
9833
9851
  {
9834
9852
  key: "all",
@@ -9898,7 +9916,7 @@ function UploadDialog({
9898
9916
  onClose,
9899
9917
  onSubmit
9900
9918
  }) {
9901
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
9919
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
9902
9920
  const titleId = react.useId();
9903
9921
  const nameId = react.useId();
9904
9922
  const fileId = react.useId();
@@ -10059,20 +10077,68 @@ function UploadDialog({
10059
10077
  }
10060
10078
  );
10061
10079
  }
10080
+ function WithdrawDialog({
10081
+ documentName,
10082
+ busy,
10083
+ failed,
10084
+ onClose,
10085
+ onConfirm
10086
+ }) {
10087
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10088
+ const titleId = react.useId();
10089
+ return /* @__PURE__ */ jsxRuntime.jsxs(
10090
+ SheetDialog,
10091
+ {
10092
+ titleId,
10093
+ eyebrow: t("chrome.tripDocuments.withdraw"),
10094
+ title: t("chrome.tripDocuments.withdrawTitle"),
10095
+ onClose,
10096
+ closeLabel: t("chrome.tripDocuments.withdrawCancel"),
10097
+ footer: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10098
+ /* @__PURE__ */ jsxRuntime.jsx(
10099
+ "button",
10100
+ {
10101
+ type: "button",
10102
+ className: "kf-trip-documents-section__dialog-secondary",
10103
+ onClick: onClose,
10104
+ disabled: busy,
10105
+ children: t("chrome.tripDocuments.withdrawCancel")
10106
+ }
10107
+ ),
10108
+ /* @__PURE__ */ jsxRuntime.jsx(
10109
+ "button",
10110
+ {
10111
+ type: "button",
10112
+ className: "kf-trip-documents-section__dialog-primary",
10113
+ "data-destructive": "true",
10114
+ onClick: onConfirm,
10115
+ disabled: busy,
10116
+ children: t(busy ? "chrome.tripDocuments.withdrawing" : "chrome.tripDocuments.withdrawConfirm")
10117
+ }
10118
+ )
10119
+ ] }),
10120
+ children: [
10121
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__withdraw-name", children: documentName }),
10122
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__withdraw-body", children: t("chrome.tripDocuments.withdrawBody") }),
10123
+ failed ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__error", role: "alert", children: t("chrome.tripDocuments.withdrawFailed") }) : null
10124
+ ]
10125
+ }
10126
+ );
10127
+ }
10062
10128
  function TripDocumentsSection(props) {
10063
- const session = chunkS53XNHRU_cjs.useSession();
10129
+ const session = chunk4TTDAOOG_cjs.useSession();
10064
10130
  if (session.status !== "authenticated") {
10065
10131
  return null;
10066
10132
  }
10067
10133
  return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripDocumentsSection, { ...props });
10068
10134
  }
10069
10135
  function ReadyTripDocumentsSection({ tripRef, style }) {
10070
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10071
- const files = chunk2OWH2KDY_cjs.useFiles({ tripRef });
10072
- const expenses = chunk2OWH2KDY_cjs.useExpenses(tripRef);
10073
- const bookings = chunkF4GGHUMX_cjs.useBookings(tripRef);
10074
- const { listTripManifest } = chunkF4GGHUMX_cjs.useDirectories();
10075
- const { statuses, loaded: capabilityLoaded } = chunkF4GGHUMX_cjs.useCapabilityStatuses(tripRef);
10136
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10137
+ const files = chunk2JNB5A6Z_cjs.useFiles({ tripRef });
10138
+ const expenses = chunk2JNB5A6Z_cjs.useExpenses(tripRef);
10139
+ const bookings = chunkKY752BBA_cjs.useBookings(tripRef);
10140
+ const { listTripManifest } = chunkKY752BBA_cjs.useDirectories();
10141
+ const { statuses, loaded: capabilityLoaded } = chunkKY752BBA_cjs.useCapabilityStatuses(tripRef);
10076
10142
  const capability = statuses.get("files");
10077
10143
  const [state, setState] = react.useState({ kind: "loading" });
10078
10144
  const [purpose, setPurpose] = react.useState(null);
@@ -10082,9 +10148,13 @@ function ReadyTripDocumentsSection({ tripRef, style }) {
10082
10148
  const [uploadErrorKey, setUploadErrorKey] = react.useState(void 0);
10083
10149
  const [travellers, setTravellers] = react.useState([]);
10084
10150
  const [view, setView] = react.useState(void 0);
10151
+ const [withdrawRow, setWithdrawRow] = react.useState(null);
10152
+ const [withdrawingId, setWithdrawingId] = react.useState(null);
10153
+ const [withdrawFailed, setWithdrawFailed] = react.useState(false);
10085
10154
  const [viewFailed, setViewFailed] = react.useState(false);
10086
10155
  const list = files.list;
10087
10156
  const managerView = files.managerView;
10157
+ const removeFile = files.remove;
10088
10158
  const load = react.useCallback(async () => {
10089
10159
  setState({ kind: "loading" });
10090
10160
  try {
@@ -10093,6 +10163,22 @@ function ReadyTripDocumentsSection({ tripRef, style }) {
10093
10163
  setState({ kind: "failed" });
10094
10164
  }
10095
10165
  }, [list]);
10166
+ const confirmWithdraw = react.useCallback(async () => {
10167
+ if (withdrawRow === null) return;
10168
+ const { id, version } = withdrawRow.file;
10169
+ setWithdrawingId(id);
10170
+ setWithdrawFailed(false);
10171
+ try {
10172
+ await removeFile(id, version);
10173
+ setWithdrawRow(null);
10174
+ setOpen((current) => current?.file.id === id ? null : current);
10175
+ await load();
10176
+ } catch {
10177
+ setWithdrawFailed(true);
10178
+ } finally {
10179
+ setWithdrawingId(null);
10180
+ }
10181
+ }, [withdrawRow, removeFile, load]);
10096
10182
  react.useEffect(() => {
10097
10183
  let cancelled = false;
10098
10184
  setState({ kind: "loading" });
@@ -10219,7 +10305,7 @@ function ReadyTripDocumentsSection({ tripRef, style }) {
10219
10305
  if (capabilityLoaded && capability === "mode-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "mode" });
10220
10306
  if (capabilityLoaded && capability === "flag-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "flag" });
10221
10307
  if (capabilityLoaded && capability === "data-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "data" });
10222
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-documents-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
10308
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-documents-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
10223
10309
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__head", children: [
10224
10310
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__head-text", children: [
10225
10311
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-documents-section__title", children: t("chrome.tripDocuments.panelLabel") }),
@@ -10258,10 +10344,32 @@ function ReadyTripDocumentsSection({ tripRef, style }) {
10258
10344
  /* @__PURE__ */ jsxRuntime.jsx("th", { scope: "col", children: t("chrome.tripDocuments.columnRetention") }),
10259
10345
  /* @__PURE__ */ jsxRuntime.jsx("th", { scope: "col", children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-visually-hidden", children: t("chrome.tripDocuments.columnActions") }) })
10260
10346
  ] }) }),
10261
- /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: shown.map((row) => /* @__PURE__ */ jsxRuntime.jsx(DocumentRow, { row, onOpen: () => setOpen(row) }, row.file.id)) })
10347
+ /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: shown.map((row) => /* @__PURE__ */ jsxRuntime.jsx(
10348
+ DocumentRow,
10349
+ {
10350
+ row,
10351
+ onOpen: () => setOpen(row),
10352
+ onWithdraw: row.file.purpose === "trip_document" && row.file.status !== "purged" ? () => {
10353
+ setWithdrawFailed(false);
10354
+ setWithdrawRow(row);
10355
+ } : void 0,
10356
+ withdrawing: withdrawingId === row.file.id
10357
+ },
10358
+ row.file.id
10359
+ )) })
10262
10360
  ] }) }) : null,
10263
10361
  state.kind === "ready" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__hint", children: t("chrome.tripDocuments.howDocumentsArrive") }) : null,
10264
10362
  state.kind === "ready" && counts.expenseReceipt > 0 && spends === void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__hint", "data-tone": "warn", children: t("chrome.tripDocuments.ledgerUnread") }) : null,
10363
+ withdrawRow === null ? null : /* @__PURE__ */ jsxRuntime.jsx(
10364
+ WithdrawDialog,
10365
+ {
10366
+ documentName: withdrawRow.file.title !== null && withdrawRow.file.title !== "" ? withdrawRow.file.title : t("chrome.tripDocuments.chipTripDocuments"),
10367
+ busy: withdrawingId === withdrawRow.file.id,
10368
+ failed: withdrawFailed,
10369
+ onClose: () => setWithdrawRow(null),
10370
+ onConfirm: () => void confirmWithdraw()
10371
+ }
10372
+ ),
10265
10373
  uploadOpen ? /* @__PURE__ */ jsxRuntime.jsx(
10266
10374
  UploadDialog,
10267
10375
  {
@@ -10508,7 +10616,7 @@ function ExpensesSkeleton() {
10508
10616
  ] }, id)) });
10509
10617
  }
10510
10618
  function ExpensesEmpty({ onLog }) {
10511
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10619
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10512
10620
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__state", children: [
10513
10621
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(WalletIcon, {}) }),
10514
10622
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-expenses-section__state-title", children: t("chrome.tripExpenses.emptyTitle") }),
@@ -10517,7 +10625,7 @@ function ExpensesEmpty({ onLog }) {
10517
10625
  ] });
10518
10626
  }
10519
10627
  function ExpensesFailed({ onRetry }) {
10520
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10628
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10521
10629
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__state", role: "alert", children: [
10522
10630
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-expenses-section__state-title", children: t("chrome.tripExpenses.failedTitle") }),
10523
10631
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-expenses-section__state-body", children: t("chrome.tripExpenses.failedBody") }),
@@ -10525,7 +10633,7 @@ function ExpensesFailed({ onRetry }) {
10525
10633
  ] });
10526
10634
  }
10527
10635
  function ExpensesDark({ reason }) {
10528
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10636
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10529
10637
  if (reason === "mode") {
10530
10638
  return null;
10531
10639
  }
@@ -10546,7 +10654,7 @@ function ExpensesTable({
10546
10654
  onVoid,
10547
10655
  onViewReceipt
10548
10656
  }) {
10549
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10657
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10550
10658
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-expenses-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-expenses-section__table", children: [
10551
10659
  /* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripExpenses.tableCaption") }),
10552
10660
  /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
@@ -10606,7 +10714,7 @@ function LogExpenseDialog({
10606
10714
  onClose,
10607
10715
  onSubmit
10608
10716
  }) {
10609
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10717
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10610
10718
  const titleId = react.useId();
10611
10719
  const [category, setCategory] = react.useState("MISC");
10612
10720
  const [amount, setAmount] = react.useState("");
@@ -10769,9 +10877,9 @@ function ReceiptDialog({
10769
10877
  description,
10770
10878
  onClose
10771
10879
  }) {
10772
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10880
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10773
10881
  const titleId = react.useId();
10774
- const files = chunk2OWH2KDY_cjs.useFiles({ tripRef });
10882
+ const files = chunk2JNB5A6Z_cjs.useFiles({ tripRef });
10775
10883
  const [phase, setPhase] = react.useState({ kind: "loading" });
10776
10884
  const [imageBroke, setImageBroke] = react.useState(false);
10777
10885
  const readUrl = files.url;
@@ -10845,7 +10953,7 @@ function VoidExpenseDialog({
10845
10953
  onClose,
10846
10954
  onSubmit
10847
10955
  }) {
10848
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10956
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
10849
10957
  const titleId = react.useId();
10850
10958
  const [reason, setReason] = react.useState("");
10851
10959
  const trimmed = reason.trim();
@@ -10919,16 +11027,16 @@ function isCloseoutLocked2(error) {
10919
11027
  return classification?.status === 423 || classification?.code === "TRIP_CLOSED_OUT";
10920
11028
  }
10921
11029
  function TripExpensesSection(props) {
10922
- const session = chunkS53XNHRU_cjs.useSession();
11030
+ const session = chunk4TTDAOOG_cjs.useSession();
10923
11031
  if (session.status !== "authenticated") {
10924
11032
  return null;
10925
11033
  }
10926
11034
  return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripExpensesSection, { ...props });
10927
11035
  }
10928
11036
  function ReadyTripExpensesSection({ tripRef, style }) {
10929
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
10930
- const expenses = chunk2OWH2KDY_cjs.useExpenses(tripRef);
10931
- const vendors = chunk2OWH2KDY_cjs.useVendors(tripRef, "");
11037
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
11038
+ const expenses = chunk2JNB5A6Z_cjs.useExpenses(tripRef);
11039
+ const vendors = chunk2JNB5A6Z_cjs.useVendors(tripRef, "");
10932
11040
  const [category, setCategory] = react.useState(null);
10933
11041
  const [paymentMode, setPaymentMode] = react.useState(null);
10934
11042
  const [missingReceiptOnly, setMissingReceiptOnly] = react.useState(false);
@@ -10997,7 +11105,7 @@ function ReadyTripExpensesSection({ tripRef, style }) {
10997
11105
  return /* @__PURE__ */ jsxRuntime.jsx(ExpensesDark, { reason: expenses.reason });
10998
11106
  }
10999
11107
  const filtered = category !== null || paymentMode !== null || missingReceiptOnly;
11000
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-expenses-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
11108
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-expenses-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
11001
11109
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__toolbar", children: [
11002
11110
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__toolbar-title", children: t("chrome.tripExpenses.panelLabel") }),
11003
11111
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__toolbar-spacer" }),
@@ -11277,7 +11385,7 @@ function FloatMovementDialog({
11277
11385
  onClose,
11278
11386
  onSubmit
11279
11387
  }) {
11280
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
11388
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
11281
11389
  const titleId = react.useId();
11282
11390
  const [managerId, setManagerId] = react.useState(manager?.managerId ?? null);
11283
11391
  const [amount, setAmount] = react.useState(
@@ -11510,7 +11618,7 @@ function FloatSkeleton() {
11510
11618
  ] }, id)) });
11511
11619
  }
11512
11620
  function FloatEmpty({ onIssue }) {
11513
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
11621
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
11514
11622
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__state", children: [
11515
11623
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(SafeIcon, {}) }),
11516
11624
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-float-section__state-title", children: t("chrome.tripFloat.emptyTitle") }),
@@ -11519,7 +11627,7 @@ function FloatEmpty({ onIssue }) {
11519
11627
  ] });
11520
11628
  }
11521
11629
  function FloatFailed({ onRetry }) {
11522
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
11630
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
11523
11631
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__state", role: "alert", children: [
11524
11632
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-float-section__state-title", children: t("chrome.tripFloat.failedTitle") }),
11525
11633
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-float-section__state-body", children: t("chrome.tripFloat.failedBody") }),
@@ -11527,7 +11635,7 @@ function FloatFailed({ onRetry }) {
11527
11635
  ] });
11528
11636
  }
11529
11637
  function FloatDark({ reason }) {
11530
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
11638
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
11531
11639
  if (reason === "mode") {
11532
11640
  return null;
11533
11641
  }
@@ -11550,7 +11658,7 @@ function ManagerFloatCard({
11550
11658
  onAdjust,
11551
11659
  onSettle
11552
11660
  }) {
11553
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
11661
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
11554
11662
  const bodyId = `kf-float-${row.managerId}`;
11555
11663
  const summary = row.summary;
11556
11664
  const shares = summary === void 0 ? void 0 : usageShares(summary);
@@ -11756,16 +11864,16 @@ function refusedBalanceOf(error) {
11756
11864
  return details?.currentBalanceMinor;
11757
11865
  }
11758
11866
  function TripFloatSection(props) {
11759
- const session = chunkS53XNHRU_cjs.useSession();
11867
+ const session = chunk4TTDAOOG_cjs.useSession();
11760
11868
  if (session.status !== "authenticated") {
11761
11869
  return null;
11762
11870
  }
11763
11871
  return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripFloatSection, { ...props });
11764
11872
  }
11765
11873
  function ReadyTripFloatSection({ tripRef, style }) {
11766
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
11767
- const float = chunk2OWH2KDY_cjs.useFloat(tripRef);
11768
- const managers = chunk2OWH2KDY_cjs.useManagers(tripRef);
11874
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
11875
+ const float = chunk2JNB5A6Z_cjs.useFloat(tripRef);
11876
+ const managers = chunk2JNB5A6Z_cjs.useManagers(tripRef);
11769
11877
  const [openManagerId, setOpenManagerId] = react.useState(null);
11770
11878
  const [ledgers, setLedgers] = react.useState({});
11771
11879
  const [overlay, setOverlay] = react.useState({ kind: "none" });
@@ -11891,7 +11999,7 @@ function ReadyTripFloatSection({ tripRef, style }) {
11891
11999
  if (float.status === "dark") {
11892
12000
  return /* @__PURE__ */ jsxRuntime.jsx(FloatDark, { reason: float.reason });
11893
12001
  }
11894
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-float-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
12002
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-float-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
11895
12003
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__toolbar", children: [
11896
12004
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__toolbar-title", children: t("chrome.tripFloat.panelLabel") }),
11897
12005
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__toolbar-spacer" }),
@@ -12006,7 +12114,7 @@ function DispatchDialog({
12006
12114
  onClose,
12007
12115
  onSend
12008
12116
  }) {
12009
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12117
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12010
12118
  const titleId = react.useId();
12011
12119
  const [everyone, setEveryone] = react.useState(true);
12012
12120
  const [picked, setPicked] = react.useState(/* @__PURE__ */ new Set());
@@ -12154,7 +12262,7 @@ function FormRow2({
12154
12262
  onExport,
12155
12263
  onOpenMissing
12156
12264
  }) {
12157
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12265
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12158
12266
  const canSeeMissing = supportsWhoIsMissing(form);
12159
12267
  return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-forms-section__row", children: [
12160
12268
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-trip-forms-section__row-body", children: [
@@ -12207,14 +12315,14 @@ function FormsSkeleton() {
12207
12315
  ] }, id)) });
12208
12316
  }
12209
12317
  function FormsEmpty() {
12210
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12318
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12211
12319
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", children: [
12212
12320
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t("chrome.tripForms.emptyTitle") }),
12213
12321
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-forms-section__state-body", children: t("chrome.tripForms.emptyBody") })
12214
12322
  ] });
12215
12323
  }
12216
12324
  function FormsFailed({ onRetry }) {
12217
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12325
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12218
12326
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", role: "alert", children: [
12219
12327
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t("chrome.tripForms.failedTitle") }),
12220
12328
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-forms-section__state-body", children: t("chrome.tripForms.failedBody") }),
@@ -12222,7 +12330,7 @@ function FormsFailed({ onRetry }) {
12222
12330
  ] });
12223
12331
  }
12224
12332
  function FormsDark({ reason }) {
12225
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12333
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12226
12334
  if (reason === "mode") return null;
12227
12335
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", "data-dark": reason, children: [
12228
12336
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t(reason === "flag" ? "chrome.tripForms.flagDarkTitle" : "chrome.tripForms.dataDarkTitle") }),
@@ -12267,7 +12375,7 @@ function OnBehalfDialog({
12267
12375
  onClose,
12268
12376
  onSubmit
12269
12377
  }) {
12270
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12378
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12271
12379
  const titleId = react.useId();
12272
12380
  const [values, setValues] = react.useState({});
12273
12381
  const answerable = react.useMemo(
@@ -12405,7 +12513,7 @@ function ParticipantRow({
12405
12513
  onFillOnBehalf,
12406
12514
  onOpenResponse
12407
12515
  }) {
12408
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12516
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12409
12517
  const status = row.response?.status;
12410
12518
  const submitted = status === "SUBMITTED";
12411
12519
  return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-forms-section__row", "data-done": submitted ? "true" : void 0, children: [
@@ -12458,7 +12566,7 @@ function ResponseViewer({
12458
12566
  failed,
12459
12567
  onClose
12460
12568
  }) {
12461
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12569
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12462
12570
  const titleId = react.useId();
12463
12571
  return /* @__PURE__ */ jsxRuntime.jsx(
12464
12572
  SheetDialog,
@@ -12489,7 +12597,7 @@ function codeOf4(error) {
12489
12597
  return classification?.code ?? "unknown";
12490
12598
  }
12491
12599
  function TripFormsSection(props) {
12492
- const session = chunkS53XNHRU_cjs.useSession();
12600
+ const session = chunk4TTDAOOG_cjs.useSession();
12493
12601
  if (session.status !== "authenticated") {
12494
12602
  return null;
12495
12603
  }
@@ -12501,9 +12609,9 @@ function ReadyTripFormsSection({
12501
12609
  components,
12502
12610
  style
12503
12611
  }) {
12504
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12505
- const forms = chunk2OWH2KDY_cjs.useForms(tripRef);
12506
- const { listTripManifest } = chunkF4GGHUMX_cjs.useDirectories();
12612
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12613
+ const forms = chunk2JNB5A6Z_cjs.useForms(tripRef);
12614
+ const { listTripManifest } = chunkKY752BBA_cjs.useDirectories();
12507
12615
  const [openFormId, setOpenFormId] = react.useState(null);
12508
12616
  const [completion, setCompletion] = react.useState(void 0);
12509
12617
  const [manifest, setManifest] = react.useState(void 0);
@@ -12625,7 +12733,7 @@ function ReadyTripFormsSection({
12625
12733
  if (forms.status === "dark") return /* @__PURE__ */ jsxRuntime.jsx(FormsDark, { reason: forms.reason });
12626
12734
  const inert = readOnly;
12627
12735
  const unreadable = ready !== null && ready.syncedAt === void 0 && rows.length === 0;
12628
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-forms-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
12736
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-forms-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
12629
12737
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__head", children: [
12630
12738
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__head-text", children: [
12631
12739
  /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-forms-section__title", children: openForm === null ? t("chrome.tripForms.panelLabel") : openForm.title }),
@@ -12775,7 +12883,7 @@ function ChangeLogDialog({
12775
12883
  onRetry,
12776
12884
  onClose
12777
12885
  }) {
12778
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
12886
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
12779
12887
  const titleId = react.useId();
12780
12888
  return /* @__PURE__ */ jsxRuntime.jsx(
12781
12889
  SheetDialog,
@@ -13122,7 +13230,7 @@ function ItemRow({
13122
13230
  onMoveBy,
13123
13231
  onOpenVendor
13124
13232
  }) {
13125
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13233
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13126
13234
  const derived = deriveItineraryItem(item, timeZone, serverTime);
13127
13235
  const isDone = item.status === "COMPLETED";
13128
13236
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -13244,7 +13352,7 @@ function DayCard({
13244
13352
  onSwitchToTimeline,
13245
13353
  onOpenVendor
13246
13354
  }) {
13247
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13355
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13248
13356
  const { draggingId, overIndex, rowProps, moveBy } = useListReorder({
13249
13357
  enabled: canEdit,
13250
13358
  onMove: onReorder
@@ -13295,7 +13403,7 @@ function DayCard({
13295
13403
  ] });
13296
13404
  }
13297
13405
  function DayPillStrip({ pills, activeIso, onSelect }) {
13298
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13406
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13299
13407
  return /* @__PURE__ */ jsxRuntime.jsx(
13300
13408
  "div",
13301
13409
  {
@@ -13372,7 +13480,7 @@ function EditDayDialog({
13372
13480
  onClose,
13373
13481
  onSubmit
13374
13482
  }) {
13375
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13483
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13376
13484
  const titleId = react.useId();
13377
13485
  const [cardTitle, setCardTitle] = react.useState(group.day.cardTitle);
13378
13486
  const [hasSummary, setHasSummary] = react.useState(
@@ -13515,7 +13623,7 @@ function ItemFormDialog({
13515
13623
  onSubmit,
13516
13624
  onDelete
13517
13625
  }) {
13518
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13626
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13519
13627
  const titleId = react.useId();
13520
13628
  const isEdit = item !== null;
13521
13629
  const [isoDate, setIsoDate] = react.useState(
@@ -13770,7 +13878,7 @@ function ItinerarySkeleton({ view }) {
13770
13878
  ] });
13771
13879
  }
13772
13880
  function ItineraryEmpty() {
13773
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13881
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13774
13882
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__state", children: [
13775
13883
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(CalendarIcon, {}) }),
13776
13884
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-itinerary-section__state-title", children: t("chrome.tripItinerary.emptyTitle") }),
@@ -13778,7 +13886,7 @@ function ItineraryEmpty() {
13778
13886
  ] });
13779
13887
  }
13780
13888
  function ItineraryFailed({ onRetry }) {
13781
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13889
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13782
13890
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__state", role: "alert", children: [
13783
13891
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-itinerary-section__state-title", children: t("chrome.tripItinerary.failedTitle") }),
13784
13892
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-itinerary-section__state-body", children: t("chrome.tripItinerary.failedBody") }),
@@ -13786,7 +13894,7 @@ function ItineraryFailed({ onRetry }) {
13786
13894
  ] });
13787
13895
  }
13788
13896
  function TimelineView({ entries, onOpenDay }) {
13789
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13897
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13790
13898
  return /* @__PURE__ */ jsxRuntime.jsx("section", { className: "kf-trip-itinerary-section__timeline", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__timeline-grid", children: [
13791
13899
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__timeline-line", "aria-hidden": "true" }),
13792
13900
  entries.map((entry, index) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -13873,7 +13981,7 @@ var OPTIONS2 = [
13873
13981
  { value: "timeline", labelKey: "chrome.tripItinerary.viewTimeline" }
13874
13982
  ];
13875
13983
  function ViewSegment({ value, onChange }) {
13876
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13984
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
13877
13985
  return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-itinerary-section__segment", children: [
13878
13986
  /* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.tripItinerary.viewLabel") }),
13879
13987
  OPTIONS2.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -13895,7 +14003,7 @@ function codeOf5(error) {
13895
14003
  return classification?.code ?? "unknown";
13896
14004
  }
13897
14005
  function TripItinerarySection(props) {
13898
- const session = chunkS53XNHRU_cjs.useSession();
14006
+ const session = chunk4TTDAOOG_cjs.useSession();
13899
14007
  if (session.status !== "authenticated") {
13900
14008
  return null;
13901
14009
  }
@@ -13906,8 +14014,8 @@ function ReadyTripItinerarySection({
13906
14014
  onOpenVendor,
13907
14015
  style
13908
14016
  }) {
13909
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
13910
- const itinerary = chunk2OWH2KDY_cjs.useItinerary(tripRef);
14017
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
14018
+ const itinerary = chunk2JNB5A6Z_cjs.useItinerary(tripRef);
13911
14019
  const [view, setView] = react.useState("days");
13912
14020
  const [activeIso, setActiveIso] = react.useState(null);
13913
14021
  const [overlay, setOverlay] = react.useState({ kind: "none" });
@@ -14080,7 +14188,7 @@ function ReadyTripItinerarySection({
14080
14188
  setActiveIso(isoDate);
14081
14189
  setView("days");
14082
14190
  }
14083
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-itinerary-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
14191
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-itinerary-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
14084
14192
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__toolbar", children: [
14085
14193
  /* @__PURE__ */ jsxRuntime.jsx(ViewSegment, { value: view, onChange: setView }),
14086
14194
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__toolbar-spacer" }),
@@ -14265,9 +14373,9 @@ function AddTravellerDialog({
14265
14373
  onClose,
14266
14374
  onAdded
14267
14375
  }) {
14268
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
14376
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
14269
14377
  const titleId = react.useId();
14270
- const { makeTravellersFetch, addTraveller, createAgencyTraveller } = chunkF4GGHUMX_cjs.useDirectories();
14378
+ const { makeTravellersFetch, addTraveller, createAgencyTraveller } = chunkKY752BBA_cjs.useDirectories();
14271
14379
  const [mode, setMode] = react.useState("search");
14272
14380
  const [term, setTerm] = react.useState("");
14273
14381
  const [debounced, setDebounced] = react.useState("");
@@ -14281,7 +14389,7 @@ function AddTravellerDialog({
14281
14389
  return () => clearTimeout(timer);
14282
14390
  }, [term]);
14283
14391
  function reportFailure(error) {
14284
- setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
14392
+ setErrorCode(chunk2JNB5A6Z_cjs.classifyError(error).code ?? "unknown");
14285
14393
  }
14286
14394
  async function addExisting(externalTravellerId, fullName) {
14287
14395
  setPending(true);
@@ -14433,8 +14541,8 @@ function DirectoryResults({
14433
14541
  pendingId,
14434
14542
  onPick
14435
14543
  }) {
14436
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
14437
- const { rows, hasNext, loadNext, settled, error } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
14544
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
14545
+ const { rows, hasNext, loadNext, settled, error } = chunkKY752BBA_cjs.usePaginatedList(fetch);
14438
14546
  if (!settled) {
14439
14547
  return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-manifest-section__dialog-note", "aria-live": "polite", children: t("chrome.tripManifest.addSearching") });
14440
14548
  }
@@ -14519,9 +14627,9 @@ function ManageGroupsDialog({
14519
14627
  onClose,
14520
14628
  onSaved
14521
14629
  }) {
14522
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
14630
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
14523
14631
  const titleId = react.useId();
14524
- const { createParty, patchParty, deleteParty } = chunkF4GGHUMX_cjs.useDirectories();
14632
+ const { createParty, patchParty, deleteParty } = chunkKY752BBA_cjs.useDirectories();
14525
14633
  const groups = deriveManifestGroups(rows).filter(
14526
14634
  (group) => group.id !== SOLO_GROUP_ID && group.party !== null
14527
14635
  );
@@ -14749,7 +14857,7 @@ function ManageGroupsDialog({
14749
14857
  }
14750
14858
  var DIET_BUCKET_CAP = 4;
14751
14859
  function ManifestFacetTiles({ facets, filtered }) {
14752
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
14860
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
14753
14861
  const dietEntries = Object.entries(facets.dietCounts).filter(([, count]) => count > 0).sort((a, b) => b[1] - a[1]);
14754
14862
  const shown = dietEntries.slice(0, DIET_BUCKET_CAP);
14755
14863
  const hiddenCount = dietEntries.length - shown.length;
@@ -14831,7 +14939,7 @@ function ManifestFiltersPopover({
14831
14939
  value,
14832
14940
  onChange
14833
14941
  }) {
14834
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
14942
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
14835
14943
  const [open, setOpen] = react.useState(false);
14836
14944
  const rootRef = react.useRef(null);
14837
14945
  const triggerRef = react.useRef(null);
@@ -14971,7 +15079,7 @@ var KIND_LABEL_KEY2 = {
14971
15079
  OTHER: "chrome.tripManifest.partyKind.other"
14972
15080
  };
14973
15081
  function ManifestGroupCard({ group, onEdit, children }) {
14974
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15082
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
14975
15083
  const party = group.party;
14976
15084
  const isSolo = party === null;
14977
15085
  const heading = isSolo ? t("chrome.tripManifest.soloHeading") : party.label ?? t(KIND_LABEL_KEY2[party.kind] ?? "chrome.tripManifest.partyKind.other");
@@ -15059,7 +15167,7 @@ function ManifestRowKebab({
15059
15167
  onShareLink,
15060
15168
  onOpenProfile
15061
15169
  }) {
15062
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15170
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
15063
15171
  const [open, setOpen] = react.useState(false);
15064
15172
  const rootRef = react.useRef(null);
15065
15173
  const triggerRef = react.useRef(null);
@@ -15158,10 +15266,10 @@ function ManifestRow({
15158
15266
  onOpenProfile,
15159
15267
  style
15160
15268
  }) {
15161
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15269
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
15162
15270
  const derived = deriveManifestRow(row, index, serverTime);
15163
15271
  const traveller = row.traveller;
15164
- return /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__row", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
15272
+ return /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__row", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
15165
15273
  /* @__PURE__ */ jsxRuntime.jsxs(
15166
15274
  "td",
15167
15275
  {
@@ -15235,7 +15343,7 @@ function ManifestTable({
15235
15343
  onOpenProfile,
15236
15344
  RowComponent
15237
15345
  }) {
15238
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15346
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
15239
15347
  const Row = RowComponent ?? ManifestRow;
15240
15348
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-manifest-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { role: "table", className: "kf-trip-manifest-section__table", children: [
15241
15349
  showHead ? /* @__PURE__ */ jsxRuntime.jsx("thead", { role: "rowgroup", children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__head-row", children: [
@@ -15282,8 +15390,8 @@ function ManifestResultsBody({
15282
15390
  RowComponent,
15283
15391
  onRetry
15284
15392
  }) {
15285
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15286
- const { makeManifestFetch, facets, groupedPageSize } = chunkF4GGHUMX_cjs.useAgencyTripManifest(tripRef);
15393
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
15394
+ const { makeManifestFetch, facets, groupedPageSize } = chunkKY752BBA_cjs.useAgencyTripManifest(tripRef);
15287
15395
  const [errorCode, setErrorCode] = react.useState(void 0);
15288
15396
  const [hasSettled, setHasSettled] = react.useState(false);
15289
15397
  const [serverTime, setServerTime] = react.useState(void 0);
@@ -15300,7 +15408,7 @@ function ManifestResultsBody({
15300
15408
  if (meta?.serverTime !== void 0) setServerTime(meta.serverTime);
15301
15409
  return page;
15302
15410
  } catch (error) {
15303
- setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
15411
+ setErrorCode(chunk2JNB5A6Z_cjs.classifyError(error).code ?? "unknown");
15304
15412
  return { rows: [], nextCursor: void 0 };
15305
15413
  } finally {
15306
15414
  setHasSettled(true);
@@ -15308,7 +15416,7 @@ function ManifestResultsBody({
15308
15416
  },
15309
15417
  [makeManifestFetch, filters, grouped, groupedPageSize]
15310
15418
  );
15311
- const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch, {
15419
+ const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkKY752BBA_cjs.usePaginatedList(fetch, {
15312
15420
  accumulate: grouped
15313
15421
  });
15314
15422
  react.useEffect(() => {
@@ -15469,7 +15577,7 @@ function ManifestSearchInput({
15469
15577
  debounceMs,
15470
15578
  onDebouncedChange
15471
15579
  }) {
15472
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15580
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
15473
15581
  const [value, setValue] = react.useState("");
15474
15582
  react.useEffect(() => {
15475
15583
  const timer = setTimeout(() => onDebouncedChange(value.trim()), debounceMs);
@@ -15496,8 +15604,8 @@ function RemoveTravellerDialog({
15496
15604
  onClose,
15497
15605
  onRemoved
15498
15606
  }) {
15499
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15500
- const { removeFromManifest } = chunkF4GGHUMX_cjs.useDirectories();
15607
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
15608
+ const { removeFromManifest } = chunkKY752BBA_cjs.useDirectories();
15501
15609
  const titleId = react.useId();
15502
15610
  const [pending, setPending] = react.useState(false);
15503
15611
  const [errorCode, setErrorCode] = react.useState(void 0);
@@ -15584,7 +15692,7 @@ function shareAddress(build, token) {
15584
15692
  }
15585
15693
  var warnedNoShareUrl = false;
15586
15694
  function warnMissingShareUrl() {
15587
- if (warnedNoShareUrl || !chunkS53XNHRU_cjs.isDevelopment()) return;
15695
+ if (warnedNoShareUrl || !chunk4TTDAOOG_cjs.isDevelopment()) return;
15588
15696
  warnedNoShareUrl = true;
15589
15697
  console.warn(
15590
15698
  "[kaafil-react-uikit] No `buildShareUrl` on <KaafilUIKitProvider>, so the share dialog is showing operators a bare token instead of a sendable address. Kaafil returns a token, never a URL \u2014 the traveller page is on your domain. Fix: buildShareUrl={(token) => `${window.location.origin}/share/${token}`}"
@@ -15596,14 +15704,14 @@ function ShareLinkDialog({
15596
15704
  travellerName,
15597
15705
  onClose
15598
15706
  }) {
15599
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
15707
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
15600
15708
  const titleId = react.useId();
15601
- const buildShareUrl = chunkF4GGHUMX_cjs.useBuildShareUrl();
15709
+ const buildShareUrl = chunkKY752BBA_cjs.useBuildShareUrl();
15602
15710
  const showsBareToken = buildShareUrl === null;
15603
15711
  if (showsBareToken) warnMissingShareUrl();
15604
15712
  const isFamily = travellerRef === null;
15605
- const offerable = chunkF4GGHUMX_cjs.familySafeSections(isFamily);
15606
- const { links, readFailed, mint, revoke, regenerate, reveal } = chunkF4GGHUMX_cjs.useShareLinks(
15713
+ const offerable = chunkKY752BBA_cjs.familySafeSections(isFamily);
15714
+ const { links, readFailed, mint, revoke, regenerate, reveal } = chunkKY752BBA_cjs.useShareLinks(
15607
15715
  tripRef,
15608
15716
  travellerRef
15609
15717
  );
@@ -15942,7 +16050,7 @@ function SideDrawer({
15942
16050
  "aria-modal": "true",
15943
16051
  "aria-labelledby": titleId,
15944
16052
  tabIndex: -1,
15945
- style: chunkS53XNHRU_cjs.tokenStyle(style),
16053
+ style: chunk4TTDAOOG_cjs.tokenStyle(style),
15946
16054
  children: [
15947
16055
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-admin-side-drawer__header", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-side-drawer__header-row", children: [
15948
16056
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-side-drawer__identity", children: [
@@ -16010,11 +16118,11 @@ function TravellerDetailDialog({
16010
16118
  onClose,
16011
16119
  onRemove
16012
16120
  }) {
16013
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16121
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16014
16122
  const titleId = react.useId();
16015
- const { read, readFailed, refresh } = chunk2OWH2KDY_cjs.useTravellerProfile(tripRef, travellerRef);
16016
- const forms = chunkF4GGHUMX_cjs.useTravellerFormResponses(tripRef, travellerRef);
16017
- const { addTravellerNote } = chunkF4GGHUMX_cjs.useDirectories();
16123
+ const { read, readFailed, refresh } = chunk2JNB5A6Z_cjs.useTravellerProfile(tripRef, travellerRef);
16124
+ const forms = chunkKY752BBA_cjs.useTravellerFormResponses(tripRef, travellerRef);
16125
+ const { addTravellerNote } = chunkKY752BBA_cjs.useDirectories();
16018
16126
  const [noteDraft, setNoteDraft] = react.useState("");
16019
16127
  const [notePending, setNotePending] = react.useState(false);
16020
16128
  const [noteFailed, setNoteFailed] = react.useState(false);
@@ -16243,7 +16351,7 @@ function DetailRow({
16243
16351
  absentLabel,
16244
16352
  meta
16245
16353
  }) {
16246
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16354
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16247
16355
  const has = value !== null && value !== void 0 && value.length > 0;
16248
16356
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section__detail-row", children: [
16249
16357
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-manifest-section__detail-label", children: label }),
@@ -16266,7 +16374,7 @@ function TripManifestSection({
16266
16374
  components,
16267
16375
  style
16268
16376
  }) {
16269
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16377
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16270
16378
  const [q, setQ] = react.useState("");
16271
16379
  const [groupBy, setGroupBy] = react.useState("booking_group");
16272
16380
  const [filters, setFilters] = react.useState({});
@@ -16295,7 +16403,7 @@ function TripManifestSection({
16295
16403
  [groupBy, writeToken, wireFilters]
16296
16404
  );
16297
16405
  const hasActiveFilter = q.length > 0 || Object.keys(filters).length > 0;
16298
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
16406
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
16299
16407
  facets === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(ManifestFacetTiles, { facets, filtered: hasActiveFilter }),
16300
16408
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section__toolbar", children: [
16301
16409
  /* @__PURE__ */ jsxRuntime.jsx(ManifestSearchInput, { debounceMs: DEBOUNCE_MS, onDebouncedChange: setQ }),
@@ -16514,7 +16622,7 @@ function PaymentsSkeleton() {
16514
16622
  ] }, id)) });
16515
16623
  }
16516
16624
  function PaymentsEmpty({ onRecord }) {
16517
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16625
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16518
16626
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__state", children: [
16519
16627
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(ReceiptIcon, {}) }),
16520
16628
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-payments-section__state-title", children: t("chrome.tripPayments.emptyTitle") }),
@@ -16523,7 +16631,7 @@ function PaymentsEmpty({ onRecord }) {
16523
16631
  ] });
16524
16632
  }
16525
16633
  function PaymentsFailed({ onRetry }) {
16526
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16634
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16527
16635
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__state", role: "alert", children: [
16528
16636
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-payments-section__state-title", children: t("chrome.tripPayments.failedTitle") }),
16529
16637
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-payments-section__state-body", children: t("chrome.tripPayments.failedBody") }),
@@ -16531,7 +16639,7 @@ function PaymentsFailed({ onRetry }) {
16531
16639
  ] });
16532
16640
  }
16533
16641
  function PaymentsDark({ reason }) {
16534
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16642
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16535
16643
  if (reason === "mode") {
16536
16644
  return null;
16537
16645
  }
@@ -16552,7 +16660,7 @@ function PaymentsTable({
16552
16660
  locked,
16553
16661
  onVoid
16554
16662
  }) {
16555
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16663
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16556
16664
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-payments-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-payments-section__table", children: [
16557
16665
  /* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripPayments.tableCaption") }),
16558
16666
  /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
@@ -16611,7 +16719,7 @@ function RecordPaymentDialog({
16611
16719
  onClose,
16612
16720
  onSubmit
16613
16721
  }) {
16614
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16722
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16615
16723
  const titleId = react.useId();
16616
16724
  const [travellerId, setTravellerId] = react.useState(null);
16617
16725
  const [amount, setAmount] = react.useState("");
@@ -16786,7 +16894,7 @@ function VoidPaymentDialog({
16786
16894
  onClose,
16787
16895
  onSubmit
16788
16896
  }) {
16789
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16897
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16790
16898
  const titleId = react.useId();
16791
16899
  const [reason, setReason] = react.useState("");
16792
16900
  const trimmed = reason.trim();
@@ -16860,7 +16968,7 @@ function isCloseoutLocked4(error) {
16860
16968
  return classification?.status === 423 || classification?.code === "TRIP_CLOSED_OUT";
16861
16969
  }
16862
16970
  function TripPaymentsSection(props) {
16863
- const session = chunkS53XNHRU_cjs.useSession();
16971
+ const session = chunk4TTDAOOG_cjs.useSession();
16864
16972
  if (session.status !== "authenticated") {
16865
16973
  return null;
16866
16974
  }
@@ -16871,9 +16979,9 @@ function ReadyTripPaymentsSection({
16871
16979
  balance,
16872
16980
  style
16873
16981
  }) {
16874
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
16875
- const collections = chunk2OWH2KDY_cjs.useCollections(tripRef);
16876
- const parties = chunk2OWH2KDY_cjs.useParties(tripRef);
16982
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
16983
+ const collections = chunk2JNB5A6Z_cjs.useCollections(tripRef);
16984
+ const parties = chunk2JNB5A6Z_cjs.useParties(tripRef);
16877
16985
  const [overlay, setOverlay] = react.useState({ kind: "none" });
16878
16986
  const [pending, setPending] = react.useState(false);
16879
16987
  const [errorCode, setErrorCode] = react.useState(void 0);
@@ -16953,7 +17061,7 @@ function ReadyTripPaymentsSection({
16953
17061
  }
16954
17062
  const currency = balance?.currency ?? rows[0]?.currency ?? "INR";
16955
17063
  const owingCount = eligibleRows.filter((row) => row.outstandingMinor > 0).length;
16956
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-payments-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
17064
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-payments-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
16957
17065
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__toolbar", children: [
16958
17066
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__toolbar-title", children: t("chrome.tripPayments.panelLabel") }),
16959
17067
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__toolbar-spacer" }),
@@ -17094,7 +17202,7 @@ function AssignTravellerDialog({
17094
17202
  onSubmit,
17095
17203
  onClose
17096
17204
  }) {
17097
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17205
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17098
17206
  const titleId = react.useId();
17099
17207
  const [pointId, setPointId] = react.useState(stops[0]?.id ?? "");
17100
17208
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -17165,7 +17273,7 @@ function BoardingRoster({
17165
17273
  onRetry,
17166
17274
  stops
17167
17275
  }) {
17168
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17276
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17169
17277
  if (failed) {
17170
17278
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", role: "alert", children: [
17171
17279
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.boardingFailedTitle") }),
@@ -17225,7 +17333,7 @@ function TravellerBoardRow({
17225
17333
  busy,
17226
17334
  onCorrect
17227
17335
  }) {
17228
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17336
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17229
17337
  const correctable = occupant.status !== "PENDING";
17230
17338
  const next = occupant.status === "BOARDED" ? "NO_SHOW" : "BOARDED";
17231
17339
  return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-pickups-section__roster-row", children: [
@@ -17263,7 +17371,7 @@ function DeleteStopDialog({
17263
17371
  onDelete,
17264
17372
  onClose
17265
17373
  }) {
17266
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17374
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17267
17375
  const titleId = react.useId();
17268
17376
  const [target, setTarget] = react.useState(siblings[0]?.id ?? "");
17269
17377
  const occupied = stop.expectedCount > 0;
@@ -17517,7 +17625,7 @@ function PickupsEmpty({
17517
17625
  kindLabel,
17518
17626
  onAdd
17519
17627
  }) {
17520
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17628
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17521
17629
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", children: [
17522
17630
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-pickups-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BusIcon, {}) }),
17523
17631
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.emptyTitle").replace("{kind}", kindLabel) }),
@@ -17526,7 +17634,7 @@ function PickupsEmpty({
17526
17634
  ] });
17527
17635
  }
17528
17636
  function PickupsFailed({ onRetry }) {
17529
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17637
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17530
17638
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", role: "alert", children: [
17531
17639
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.failedTitle") }),
17532
17640
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-pickups-section__state-body", children: t("chrome.tripPickups.failedBody") }),
@@ -17534,7 +17642,7 @@ function PickupsFailed({ onRetry }) {
17534
17642
  ] });
17535
17643
  }
17536
17644
  function PickupsDark({ reason }) {
17537
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17645
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17538
17646
  if (reason === "mode") {
17539
17647
  return null;
17540
17648
  }
@@ -17568,7 +17676,7 @@ function StopFormDialog({
17568
17676
  onClose,
17569
17677
  onSubmit
17570
17678
  }) {
17571
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17679
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17572
17680
  const titleId = react.useId();
17573
17681
  const isEdit = stop !== null;
17574
17682
  const [kind, setKind] = react.useState(stop?.kind ?? defaultKind);
@@ -17715,7 +17823,7 @@ function StopFormDialog({
17715
17823
  );
17716
17824
  }
17717
17825
  function StopKebab({ stopName, onEdit, onDelete }) {
17718
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17826
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17719
17827
  const [open, setOpen] = react.useState(false);
17720
17828
  const rootRef = react.useRef(null);
17721
17829
  const triggerRef = react.useRef(null);
@@ -17792,7 +17900,7 @@ function StopCard({
17792
17900
  onDelete,
17793
17901
  onMoveBy
17794
17902
  }) {
17795
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
17903
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17796
17904
  const isClosed = stop.status === "CLOSED";
17797
17905
  const canReorder = !isClosed;
17798
17906
  const percent = boardedPercent(stop);
@@ -17940,7 +18048,7 @@ function Segment({
17940
18048
  value,
17941
18049
  onChange
17942
18050
  }) {
17943
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18051
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
17944
18052
  return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-pickups-section__segment", children: [
17945
18053
  /* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t(legendKey) }),
17946
18054
  options.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -17998,7 +18106,7 @@ function codeOf7(error) {
17998
18106
  return classification?.code ?? "unknown";
17999
18107
  }
18000
18108
  function TripPickupsSection(props) {
18001
- const session = chunkS53XNHRU_cjs.useSession();
18109
+ const session = chunk4TTDAOOG_cjs.useSession();
18002
18110
  if (session.status !== "authenticated") {
18003
18111
  return null;
18004
18112
  }
@@ -18010,8 +18118,8 @@ function ReadyTripPickupsSection({
18010
18118
  tripStartIso,
18011
18119
  style
18012
18120
  }) {
18013
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18014
- const pickups = chunk2OWH2KDY_cjs.usePickups(tripRef);
18121
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
18122
+ const pickups = chunk2JNB5A6Z_cjs.usePickups(tripRef);
18015
18123
  const [kind, setKind] = react.useState("PICKUP");
18016
18124
  const [view, setView] = react.useState("stops");
18017
18125
  const [overlay, setOverlay] = react.useState({ kind: "none" });
@@ -18171,7 +18279,7 @@ function ReadyTripPickupsSection({
18171
18279
  const kindLabel = t(
18172
18280
  kind === "PICKUP" ? "chrome.tripPickups.kindPickupOne" : "chrome.tripPickups.kindDropOne"
18173
18281
  );
18174
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-pickups-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
18282
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-pickups-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
18175
18283
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__toolbar", children: [
18176
18284
  /* @__PURE__ */ jsxRuntime.jsx(ViewSwitcher, { value: view, onChange: setView }),
18177
18285
  /* @__PURE__ */ jsxRuntime.jsx(KindSwitcher, { value: kind, onChange: setKind }),
@@ -18394,7 +18502,7 @@ function AutoAssignDialog({
18394
18502
  onApply,
18395
18503
  onClose
18396
18504
  }) {
18397
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18505
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
18398
18506
  const titleId = react.useId();
18399
18507
  const [reassignAll, setReassignAll] = react.useState(false);
18400
18508
  const roomCodeById = new Map(group.rooms.map((room) => [room.id, room.code]));
@@ -18489,7 +18597,7 @@ function AutoAssignDialog({
18489
18597
  /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section__plan", children: [
18490
18598
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__plan-title", children: t("chrome.tripRooming.rulesTitle") }),
18491
18599
  /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "kf-trip-rooming-section__rule-list", children: preview.perRule.map((entry) => {
18492
- const severity = chunk2OWH2KDY_cjs.roomingHeuristicSeverity(entry.rule);
18600
+ const severity = chunk2JNB5A6Z_cjs.roomingHeuristicSeverity(entry.rule);
18493
18601
  const relaxed = entry.outcome === "relaxed";
18494
18602
  const violation = relaxed && severity === "never";
18495
18603
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -18535,7 +18643,7 @@ function DeleteShell({
18535
18643
  onConfirm,
18536
18644
  onClose
18537
18645
  }) {
18538
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18646
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
18539
18647
  const titleId = react.useId();
18540
18648
  return /* @__PURE__ */ jsxRuntime.jsxs(
18541
18649
  SheetDialog,
@@ -18581,7 +18689,7 @@ function DeleteRoomDialog({
18581
18689
  onConfirm,
18582
18690
  onClose
18583
18691
  }) {
18584
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18692
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
18585
18693
  const occupied = room.beds.filter((bed) => bed.occupant !== null).length;
18586
18694
  return /* @__PURE__ */ jsxRuntime.jsx(
18587
18695
  DeleteShell,
@@ -18607,7 +18715,7 @@ function DeleteWindowDialog({
18607
18715
  onConfirm,
18608
18716
  onClose
18609
18717
  }) {
18610
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18718
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
18611
18719
  return /* @__PURE__ */ jsxRuntime.jsx(
18612
18720
  DeleteShell,
18613
18721
  {
@@ -18705,15 +18813,15 @@ function roomTypeLabelKey(roomType) {
18705
18813
  return ROOM_TYPE_LABEL_KEY[roomType] ?? "chrome.tripRooming.roomType.shared";
18706
18814
  }
18707
18815
  function toneAttrs(tone) {
18708
- const parsed = chunk2OWH2KDY_cjs.parseRoomingTone(tone);
18816
+ const parsed = chunk2JNB5A6Z_cjs.parseRoomingTone(tone);
18709
18817
  if (parsed === void 0) {
18710
- return { family: chunk2OWH2KDY_cjs.TONE_FAMILIES.UNKNOWN, shade: 0 };
18818
+ return { family: chunk2JNB5A6Z_cjs.TONE_FAMILIES.UNKNOWN, shade: 0 };
18711
18819
  }
18712
- const shade = parsed.shade < chunk2OWH2KDY_cjs.SHADES_PER_FAMILY ? parsed.shade : parsed.shade % chunk2OWH2KDY_cjs.SHADES_PER_FAMILY;
18820
+ const shade = parsed.shade < chunk2JNB5A6Z_cjs.SHADES_PER_FAMILY ? parsed.shade : parsed.shade % chunk2JNB5A6Z_cjs.SHADES_PER_FAMILY;
18713
18821
  return { family: parsed.family, shade };
18714
18822
  }
18715
18823
  function glyphOf(occupant) {
18716
- return occupant.glyph === "" ? chunk2OWH2KDY_cjs.FALLBACK_GLYPH : occupant.glyph;
18824
+ return occupant.glyph === "" ? chunk2JNB5A6Z_cjs.FALLBACK_GLYPH : occupant.glyph;
18717
18825
  }
18718
18826
  function TravellerGlyph({
18719
18827
  occupant,
@@ -18751,7 +18859,7 @@ var COLLAPSED_COUNT = 10;
18751
18859
  function IdentityLegend({
18752
18860
  occupants
18753
18861
  }) {
18754
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18862
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
18755
18863
  const [open, setOpen] = react.useState(false);
18756
18864
  if (occupants.length === 0) {
18757
18865
  return null;
@@ -18878,7 +18986,7 @@ function RoomFormDialog({
18878
18986
  onClose,
18879
18987
  onSubmit
18880
18988
  }) {
18881
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
18989
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
18882
18990
  const titleId = react.useId();
18883
18991
  const isEdit = room !== null;
18884
18992
  const [code, setCode] = react.useState(room?.code ?? "");
@@ -19002,7 +19110,7 @@ function RoomingSkeleton() {
19002
19110
  ] }, id)) });
19003
19111
  }
19004
19112
  function RoomingEmpty({ onAddWindow }) {
19005
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19113
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19006
19114
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__state", children: [
19007
19115
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BedIcon, {}) }),
19008
19116
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__state-title", children: t("chrome.tripRooming.emptyTitle") }),
@@ -19011,7 +19119,7 @@ function RoomingEmpty({ onAddWindow }) {
19011
19119
  ] });
19012
19120
  }
19013
19121
  function RoomingFailed({ onRetry }) {
19014
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19122
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19015
19123
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__state", role: "alert", children: [
19016
19124
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__state-title", children: t("chrome.tripRooming.failedTitle") }),
19017
19125
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-rooming-section__state-body", children: t("chrome.tripRooming.failedBody") }),
@@ -19019,7 +19127,7 @@ function RoomingFailed({ onRetry }) {
19019
19127
  ] });
19020
19128
  }
19021
19129
  function RoomingDark({ reason }) {
19022
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19130
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19023
19131
  if (reason === "mode") {
19024
19132
  return null;
19025
19133
  }
@@ -19034,7 +19142,7 @@ function RoomingDark({ reason }) {
19034
19142
  ] });
19035
19143
  }
19036
19144
  function RoomKebab({ roomCode, onEdit, onDelete }) {
19037
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19145
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19038
19146
  const [open, setOpen] = react.useState(false);
19039
19147
  const rootRef = react.useRef(null);
19040
19148
  const triggerRef = react.useRef(null);
@@ -19099,7 +19207,7 @@ function RoomKebab({ roomCode, onEdit, onDelete }) {
19099
19207
  ] });
19100
19208
  }
19101
19209
  function RoomCard({ room, drag, busy, onEdit, onDelete }) {
19102
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19210
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19103
19211
  const occupied = room.beds.filter((bed) => bed.occupant !== null).length;
19104
19212
  return /* @__PURE__ */ jsxRuntime.jsxs("article", { className: "kf-trip-rooming-section__room", "data-busy": busy ? "true" : void 0, children: [
19105
19213
  /* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-trip-rooming-section__room-head", children: [
@@ -19149,7 +19257,7 @@ function UnassignedStrip({
19149
19257
  drag,
19150
19258
  busy
19151
19259
  }) {
19152
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19260
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19153
19261
  return /* @__PURE__ */ jsxRuntime.jsxs(
19154
19262
  "div",
19155
19263
  {
@@ -19223,7 +19331,7 @@ function WindowAccordion({
19223
19331
  onEditRoom,
19224
19332
  onDeleteRoom
19225
19333
  }) {
19226
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19334
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19227
19335
  const percent = fillPercent(group);
19228
19336
  const bodyId = `kf-rooming-window-${group.window.id}`;
19229
19337
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -19373,7 +19481,7 @@ function WindowFormDialog({
19373
19481
  onClose,
19374
19482
  onSubmit
19375
19483
  }) {
19376
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19484
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19377
19485
  const titleId = react.useId();
19378
19486
  const isEdit = window !== null;
19379
19487
  const [label, setLabel] = react.useState(window?.label ?? "");
@@ -19480,7 +19588,7 @@ function codeOf8(error) {
19480
19588
  return classification?.code ?? "unknown";
19481
19589
  }
19482
19590
  function TripRoomingSection(props) {
19483
- const session = chunkS53XNHRU_cjs.useSession();
19591
+ const session = chunk4TTDAOOG_cjs.useSession();
19484
19592
  if (session.status !== "authenticated") {
19485
19593
  return null;
19486
19594
  }
@@ -19493,8 +19601,8 @@ function ReadyTripRoomingSection({
19493
19601
  tripEndIso,
19494
19602
  style
19495
19603
  }) {
19496
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19497
- const rooming = chunk2OWH2KDY_cjs.useRooming(tripRef);
19604
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19605
+ const rooming = chunk2JNB5A6Z_cjs.useRooming(tripRef);
19498
19606
  const [openWindowId, setOpenWindowId] = react.useState(null);
19499
19607
  const [overlay, setOverlay] = react.useState({ kind: "none" });
19500
19608
  const [pending, setPending] = react.useState(false);
@@ -19632,7 +19740,7 @@ function ReadyTripRoomingSection({
19632
19740
  return /* @__PURE__ */ jsxRuntime.jsx(RoomingDark, { reason: rooming.reason });
19633
19741
  }
19634
19742
  const pool = ready?.unassignedPool;
19635
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
19743
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
19636
19744
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__toolbar", children: [
19637
19745
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__toolbar-title", children: t("chrome.tripRooming.panelLabel") }),
19638
19746
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__toolbar-spacer" }),
@@ -19866,7 +19974,7 @@ function isAgencyAuthored(vendor) {
19866
19974
  return vendor.externalId.startsWith("kf-");
19867
19975
  }
19868
19976
  function CategoryTabs({ selected, counts, total, onSelect }) {
19869
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
19977
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19870
19978
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__chips", children: [
19871
19979
  /* @__PURE__ */ jsxRuntime.jsxs(
19872
19980
  "button",
@@ -19909,7 +20017,7 @@ function DeleteSupplierDialog({
19909
20017
  onConfirm,
19910
20018
  onClose
19911
20019
  }) {
19912
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20020
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
19913
20021
  const titleId = react.useId();
19914
20022
  const blockers = deleteBlockers(usage);
19915
20023
  const blockedLocally = blockers !== void 0 && blockers.vehicles + blockers.expenses > 0;
@@ -20062,7 +20170,7 @@ function SupplierFormDialog({
20062
20170
  onClose,
20063
20171
  onSubmit
20064
20172
  }) {
20065
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20173
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20066
20174
  const titleId = react.useId();
20067
20175
  const isEdit = supplier !== null;
20068
20176
  const [name, setName] = react.useState(supplier?.name ?? "");
@@ -20184,7 +20292,7 @@ function SuppliersSkeleton() {
20184
20292
  ] }, id)) });
20185
20293
  }
20186
20294
  function SuppliersEmpty({ onAdd }) {
20187
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20295
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20188
20296
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", children: [
20189
20297
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(StorefrontIcon, {}) }),
20190
20298
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.emptyTitle") }),
@@ -20193,7 +20301,7 @@ function SuppliersEmpty({ onAdd }) {
20193
20301
  ] });
20194
20302
  }
20195
20303
  function SuppliersNoMatch({ onClear }) {
20196
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20304
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20197
20305
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", children: [
20198
20306
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.noMatchTitle") }),
20199
20307
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-suppliers-section__state-body", children: t("chrome.tripSuppliers.noMatchBody") }),
@@ -20201,7 +20309,7 @@ function SuppliersNoMatch({ onClear }) {
20201
20309
  ] });
20202
20310
  }
20203
20311
  function SuppliersFailed({ onRetry }) {
20204
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20312
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20205
20313
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", role: "alert", children: [
20206
20314
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.failedTitle") }),
20207
20315
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-suppliers-section__state-body", children: t("chrome.tripSuppliers.failedBody") }),
@@ -20209,7 +20317,7 @@ function SuppliersFailed({ onRetry }) {
20209
20317
  ] });
20210
20318
  }
20211
20319
  function SuppliersDark({ reason }) {
20212
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20320
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20213
20321
  if (reason === "mode") {
20214
20322
  return null;
20215
20323
  }
@@ -20224,7 +20332,7 @@ function SuppliersDark({ reason }) {
20224
20332
  ] });
20225
20333
  }
20226
20334
  function SupplierKebab({ name, busy, onEdit, onDelete }) {
20227
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20335
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20228
20336
  const [open, setOpen] = react.useState(false);
20229
20337
  const rootRef = react.useRef(null);
20230
20338
  const triggerRef = react.useRef(null);
@@ -20291,7 +20399,7 @@ function SupplierKebab({ name, busy, onEdit, onDelete }) {
20291
20399
  ] });
20292
20400
  }
20293
20401
  function SupplierUsageCell({ usage }) {
20294
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20402
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20295
20403
  const parts = [];
20296
20404
  if (usage.vehicles !== void 0 && usage.vehicles > 0) {
20297
20405
  parts.push(
@@ -20335,7 +20443,7 @@ function SupplierTable({
20335
20443
  onEdit,
20336
20444
  onDelete
20337
20445
  }) {
20338
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20446
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20339
20447
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-suppliers-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-suppliers-section__table", children: [
20340
20448
  /* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripSuppliers.tableCaption") }),
20341
20449
  /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
@@ -20403,18 +20511,18 @@ function serverBlockOf(error) {
20403
20511
  return { vehicles: details.vehicleCount ?? 0, expenses: details.expenseCount ?? 0 };
20404
20512
  }
20405
20513
  function TripSuppliersSection(props) {
20406
- const session = chunkS53XNHRU_cjs.useSession();
20514
+ const session = chunk4TTDAOOG_cjs.useSession();
20407
20515
  if (session.status !== "authenticated") {
20408
20516
  return null;
20409
20517
  }
20410
20518
  return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripSuppliersSection, { ...props });
20411
20519
  }
20412
20520
  function ReadyTripSuppliersSection({ tripRef, style }) {
20413
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20414
- const vendors = chunk2OWH2KDY_cjs.useVendors(tripRef, "");
20415
- const seating = chunk2OWH2KDY_cjs.useSeating(tripRef);
20416
- const itinerary = chunk2OWH2KDY_cjs.useItinerary(tripRef);
20417
- const expenses = chunk2OWH2KDY_cjs.useExpenses(tripRef);
20521
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20522
+ const vendors = chunk2JNB5A6Z_cjs.useVendors(tripRef, "");
20523
+ const seating = chunk2JNB5A6Z_cjs.useSeating(tripRef);
20524
+ const itinerary = chunk2JNB5A6Z_cjs.useItinerary(tripRef);
20525
+ const expenses = chunk2JNB5A6Z_cjs.useExpenses(tripRef);
20418
20526
  const [category, setCategory] = react.useState(null);
20419
20527
  const [query, setQuery] = react.useState("");
20420
20528
  const [sortKey, setSortKey] = react.useState("name");
@@ -20497,7 +20605,7 @@ function ReadyTripSuppliersSection({ tripRef, style }) {
20497
20605
  return /* @__PURE__ */ jsxRuntime.jsx(SuppliersDark, { reason: vendors.reason });
20498
20606
  }
20499
20607
  const filtered = category !== null || query.trim() !== "";
20500
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-suppliers-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
20608
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-suppliers-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
20501
20609
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__toolbar", children: [
20502
20610
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__toolbar-title", children: t("chrome.tripSuppliers.panelLabel") }),
20503
20611
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__toolbar-spacer" }),
@@ -20636,7 +20744,7 @@ function AutoAssignDialog2({
20636
20744
  onApply,
20637
20745
  onClose
20638
20746
  }) {
20639
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20747
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20640
20748
  const titleId = react.useId();
20641
20749
  const [reassignAll, setReassignAll] = react.useState(false);
20642
20750
  const [genderAdjacency, setGenderAdjacency] = react.useState("AVOID_UNRELATED");
@@ -20798,7 +20906,7 @@ function DayFilter({
20798
20906
  countByDay,
20799
20907
  onSelect
20800
20908
  }) {
20801
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
20909
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20802
20910
  const days = Array.from({ length: durationDays }, (_unused, index) => index);
20803
20911
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__days", children: [
20804
20912
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__days-label", children: t("chrome.tripVehicles.showDay") }),
@@ -20931,7 +21039,7 @@ function DeleteVehicleDialog({
20931
21039
  onConfirm,
20932
21040
  onClose
20933
21041
  }) {
20934
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21042
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
20935
21043
  const titleId = react.useId();
20936
21044
  const released = occupantsOf(vehicle).length;
20937
21045
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -21108,7 +21216,7 @@ function ManagerLinkDialog({
21108
21216
  onClose,
21109
21217
  onSubmit
21110
21218
  }) {
21111
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21219
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21112
21220
  const titleId = react.useId();
21113
21221
  const [chosen, setChosen] = react.useState(null);
21114
21222
  const demotedFrom = chosen === null ? void 0 : managerVehicleByRef.get(chosen);
@@ -21185,7 +21293,7 @@ function UnassignedStrip2({
21185
21293
  drag,
21186
21294
  busy
21187
21295
  }) {
21188
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21296
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21189
21297
  return /* @__PURE__ */ jsxRuntime.jsxs(
21190
21298
  "div",
21191
21299
  {
@@ -21252,7 +21360,7 @@ function OccupantRoster({
21252
21360
  variant,
21253
21361
  emptyKey
21254
21362
  }) {
21255
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21363
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21256
21364
  const target = { containerId: vehicleId, slotLabel: "" };
21257
21365
  const isOver = drag.overSlot !== null && drag.overSlot.containerId === vehicleId && drag.overSlot.slotLabel === "";
21258
21366
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -21296,7 +21404,7 @@ function OccupantRoster({
21296
21404
  );
21297
21405
  }
21298
21406
  function SeatTile({ seat, vehicleId, drag, busy }) {
21299
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21407
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21300
21408
  const target = { containerId: vehicleId, slotLabel: seat.seatLabel };
21301
21409
  const isOver = drag.overSlot !== null && drag.overSlot.containerId === target.containerId && drag.overSlot.slotLabel === target.slotLabel;
21302
21410
  const occupant = seat.occupant;
@@ -21359,7 +21467,7 @@ function VehicleKebab({
21359
21467
  onUnlinkManager,
21360
21468
  onDelete
21361
21469
  }) {
21362
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21470
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21363
21471
  const [open, setOpen] = react.useState(false);
21364
21472
  const rootRef = react.useRef(null);
21365
21473
  const triggerRef = react.useRef(null);
@@ -21469,7 +21577,7 @@ function VehicleCard({
21469
21577
  onUnlinkManager,
21470
21578
  onDelete
21471
21579
  }) {
21472
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21580
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21473
21581
  const percent = fillPercent2(vehicle);
21474
21582
  const days = daysLabel(vehicle.days);
21475
21583
  const bodyId = `kf-vehicle-${vehicle.id}`;
@@ -21604,7 +21712,7 @@ function VehicleDaysDialog({
21604
21712
  onClose,
21605
21713
  onSubmit
21606
21714
  }) {
21607
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21715
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21608
21716
  const titleId = react.useId();
21609
21717
  const [selected, setSelected] = react.useState(vehicle.days);
21610
21718
  const wholeTrip = selected.length === 0;
@@ -21703,7 +21811,7 @@ function VehicleFormDialog({
21703
21811
  onClose,
21704
21812
  onSubmit
21705
21813
  }) {
21706
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21814
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21707
21815
  const titleId = react.useId();
21708
21816
  const isEdit = vehicle !== null;
21709
21817
  const [regNo, setRegNo] = react.useState(vehicle?.regNo ?? "");
@@ -21898,7 +22006,7 @@ function VehiclesSkeleton() {
21898
22006
  ] }, id)) });
21899
22007
  }
21900
22008
  function VehiclesEmpty({ onAddVehicle }) {
21901
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
22009
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21902
22010
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__state", children: [
21903
22011
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BusIcon2, {}) }),
21904
22012
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-vehicles-section__state-title", children: t("chrome.tripVehicles.emptyTitle") }),
@@ -21907,7 +22015,7 @@ function VehiclesEmpty({ onAddVehicle }) {
21907
22015
  ] });
21908
22016
  }
21909
22017
  function VehiclesFailed({ onRetry }) {
21910
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
22018
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21911
22019
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__state", role: "alert", children: [
21912
22020
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-vehicles-section__state-title", children: t("chrome.tripVehicles.failedTitle") }),
21913
22021
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-vehicles-section__state-body", children: t("chrome.tripVehicles.failedBody") }),
@@ -21915,7 +22023,7 @@ function VehiclesFailed({ onRetry }) {
21915
22023
  ] });
21916
22024
  }
21917
22025
  function VehiclesDark({ reason }) {
21918
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
22026
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
21919
22027
  if (reason === "mode") {
21920
22028
  return null;
21921
22029
  }
@@ -21934,7 +22042,7 @@ function codeOf10(error) {
21934
22042
  return classification?.code ?? "unknown";
21935
22043
  }
21936
22044
  function TripVehiclesSection(props) {
21937
- const session = chunkS53XNHRU_cjs.useSession();
22045
+ const session = chunk4TTDAOOG_cjs.useSession();
21938
22046
  if (session.status !== "authenticated") {
21939
22047
  return null;
21940
22048
  }
@@ -21945,9 +22053,9 @@ function ReadyTripVehiclesSection({
21945
22053
  durationDays,
21946
22054
  style
21947
22055
  }) {
21948
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
21949
- const seating = chunk2OWH2KDY_cjs.useSeating(tripRef);
21950
- const managers = chunk2OWH2KDY_cjs.useManagers(tripRef);
22056
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
22057
+ const seating = chunk2JNB5A6Z_cjs.useSeating(tripRef);
22058
+ const managers = chunk2JNB5A6Z_cjs.useManagers(tripRef);
21951
22059
  const [openVehicleId, setOpenVehicleId] = react.useState(null);
21952
22060
  const [day, setDay] = react.useState(null);
21953
22061
  const [overlay, setOverlay] = react.useState({ kind: "none" });
@@ -22081,7 +22189,7 @@ function ReadyTripVehiclesSection({
22081
22189
  return /* @__PURE__ */ jsxRuntime.jsx(VehiclesDark, { reason: seating.reason });
22082
22190
  }
22083
22191
  const pool = ready?.unassignedPool;
22084
- return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-vehicles-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
22192
+ return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-vehicles-section", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
22085
22193
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__toolbar", children: [
22086
22194
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__toolbar-title", children: t("chrome.tripVehicles.panelLabel") }),
22087
22195
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__toolbar-spacer" }),
@@ -22374,7 +22482,7 @@ function WarningIcon13(props) {
22374
22482
 
22375
22483
  // src/admin/composite/office/TripWorkspace/internal/panels/deriveCloseout.ts
22376
22484
  function tabForBlocker(row) {
22377
- return chunkF4GGHUMX_cjs.resolveBlockerDeepLink({ actionKey: row.actionKey })?.tab;
22485
+ return chunkKY752BBA_cjs.resolveBlockerDeepLink({ actionKey: row.actionKey })?.tab;
22378
22486
  }
22379
22487
  function orderedBlockers(rows) {
22380
22488
  return [...rows].sort((a, b) => {
@@ -22414,8 +22522,8 @@ function codeOf11(error) {
22414
22522
  return classification?.code ?? "unknown";
22415
22523
  }
22416
22524
  function CloseoutCard({ tripRef, onOpenTab, litTabs }) {
22417
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
22418
- const closeout = chunk2OWH2KDY_cjs.useCloseout(tripRef);
22525
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
22526
+ const closeout = chunk2JNB5A6Z_cjs.useCloseout(tripRef);
22419
22527
  const [note, setNote] = react.useState(null);
22420
22528
  const [pending, setPending] = react.useState(void 0);
22421
22529
  const [errorCode, setErrorCode] = react.useState(void 0);
@@ -22622,7 +22730,7 @@ function AssignManagerDialog({
22622
22730
  onClose,
22623
22731
  onAssign
22624
22732
  }) {
22625
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
22733
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
22626
22734
  const titleId = react.useId();
22627
22735
  const [query, setQuery] = react.useState("");
22628
22736
  const [selected, setSelected] = react.useState(null);
@@ -22754,8 +22862,8 @@ var ROLE_LABEL_KEY = {
22754
22862
  COORDINATOR: "chrome.tripWorkspace.managers.roleCoordinator"
22755
22863
  };
22756
22864
  function OverviewManagersCard({ trip, onChanged }) {
22757
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
22758
- const { promoteManager, assignManager, unassignManager, makeManagersFetch } = chunkF4GGHUMX_cjs.useDirectories();
22865
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
22866
+ const { promoteManager, assignManager, unassignManager, makeManagersFetch } = chunkKY752BBA_cjs.useDirectories();
22759
22867
  const [pendingId, setPendingId] = react.useState(void 0);
22760
22868
  const [errorCode, setErrorCode] = react.useState(void 0);
22761
22869
  const [assignOpen, setAssignOpen] = react.useState(false);
@@ -22916,13 +23024,13 @@ function TripOverviewPanel({
22916
23024
  onOpenTab,
22917
23025
  onTripChanged
22918
23026
  }) {
22919
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
22920
- const today = chunk2OWH2KDY_cjs.useManagerToday(trip.ref);
22921
- const expenses = chunk2OWH2KDY_cjs.useExpenses(trip.ref);
23027
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
23028
+ const today = chunk2JNB5A6Z_cjs.useManagerToday(trip.ref);
23029
+ const expenses = chunk2JNB5A6Z_cjs.useExpenses(trip.ref);
22922
23030
  const spendTotalMinor = expenses.status === "ready" && expenses.totals.loaded && !expenses.totals.lastFetchFailed ? expenses.totals.spendTotalMinor : void 0;
22923
23031
  const finance = deriveFinance(trip, spendTotalMinor);
22924
23032
  const quickActions = QUICK_ACTION_TABS.filter((key) => litTabs.has(key));
22925
- const closeoutProbe = chunk2OWH2KDY_cjs.useCloseout(trip.ref);
23033
+ const closeoutProbe = chunk2JNB5A6Z_cjs.useCloseout(trip.ref);
22926
23034
  const closeoutStage = closeoutProbe.status === "ready" && hasReturned(closeoutProbe.aggregate) ? closeoutProbe.aggregate?.stage ?? null : null;
22927
23035
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__overview", children: [
22928
23036
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__overview-main", children: [
@@ -22961,7 +23069,7 @@ function TripOverviewPanel({
22961
23069
  function TodayCard({
22962
23070
  today
22963
23071
  }) {
22964
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23072
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
22965
23073
  if (today.kind === "idle") return null;
22966
23074
  const openChecklist = today.checklist ?? [];
22967
23075
  const itinerary = today.itinerary ?? [];
@@ -22985,7 +23093,7 @@ function TodayCard({
22985
23093
  function FinanceCard({
22986
23094
  finance
22987
23095
  }) {
22988
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23096
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
22989
23097
  return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-workspace__card", children: [
22990
23098
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace__card-head", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-workspace__card-title", children: t("chrome.tripWorkspace.overview.financeTitle") }) }),
22991
23099
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__finance-body", children: [
@@ -23248,7 +23356,7 @@ var BLOCKER_BODY_KEY = {
23248
23356
  capabilityDark: "chrome.tripWorkspace.blocker.capabilityDarkBody"
23249
23357
  };
23250
23358
  function TripTabPlaceholder({ tabKey, blocker }) {
23251
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23359
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
23252
23360
  const label = t(TAB_LABEL_KEY[tabKey]);
23253
23361
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__placeholder", children: [
23254
23362
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-workspace__placeholder-glyph", children: blocker === "deferred" ? /* @__PURE__ */ jsxRuntime.jsx(ClockIcon2, {}) : /* @__PURE__ */ jsxRuntime.jsx(LockIcon11, {}) }),
@@ -23258,7 +23366,7 @@ function TripTabPlaceholder({ tabKey, blocker }) {
23258
23366
  ] });
23259
23367
  }
23260
23368
  function TripKpiStrip({ cells }) {
23261
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23369
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
23262
23370
  if (cells.length === 0) return null;
23263
23371
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace__kpi-strip", "data-columns": cells.length, children: cells.map((cell) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__kpi-card", children: [
23264
23372
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace__kpi-label", children: t(cell.labelKey) }),
@@ -23267,7 +23375,7 @@ function TripKpiStrip({ cells }) {
23267
23375
  ] }, cell.key)) });
23268
23376
  }
23269
23377
  function TripTabRail({ tabs, activeKey, onSelect }) {
23270
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23378
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
23271
23379
  return /* @__PURE__ */ jsxRuntime.jsx(
23272
23380
  "div",
23273
23381
  {
@@ -23301,7 +23409,7 @@ var STATUS_LABEL_KEY9 = {
23301
23409
  CANCELLED: "chrome.tripDirectory.status.cancelled"
23302
23410
  };
23303
23411
  function TripWorkspaceHead({ trip, onBack, style }) {
23304
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23412
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
23305
23413
  const head = deriveTripHead(trip);
23306
23414
  const subLabelParts = [
23307
23415
  head.dateRangeLabel,
@@ -23312,7 +23420,7 @@ function TripWorkspaceHead({ trip, onBack, style }) {
23312
23420
  trip.manifestCount === 1 ? "chrome.tripWorkspace.travellerCountOne" : "chrome.tripWorkspace.travellerCount"
23313
23421
  ).replace("{count}", String(trip.manifestCount))
23314
23422
  ];
23315
- return /* @__PURE__ */ jsxRuntime.jsx("header", { className: "kf-trip-workspace__head", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__head-identity", children: [
23423
+ return /* @__PURE__ */ jsxRuntime.jsx("header", { className: "kf-trip-workspace__head", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__head-identity", children: [
23316
23424
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__eyebrow", children: [
23317
23425
  onBack === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(
23318
23426
  "button",
@@ -23344,7 +23452,7 @@ function TripWorkspaceHead({ trip, onBack, style }) {
23344
23452
  ] }) });
23345
23453
  }
23346
23454
  function TripWorkspace(props) {
23347
- const session = chunkS53XNHRU_cjs.useSession();
23455
+ const session = chunk4TTDAOOG_cjs.useSession();
23348
23456
  if (session.status !== "authenticated") {
23349
23457
  return /* @__PURE__ */ jsxRuntime.jsx(TripWorkspaceSkeleton, {});
23350
23458
  }
@@ -23359,10 +23467,10 @@ function ReadyTripWorkspace({
23359
23467
  components,
23360
23468
  style
23361
23469
  }) {
23362
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23363
- const { read, readFailed, refresh } = chunkF4GGHUMX_cjs.useAgencyTrip(tripRef);
23470
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
23471
+ const { read, readFailed, refresh } = chunkKY752BBA_cjs.useAgencyTrip(tripRef);
23364
23472
  if (readFailed) {
23365
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__status-block", role: "alert", children: [
23473
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__status-block", role: "alert", children: [
23366
23474
  /* @__PURE__ */ jsxRuntime.jsx(WarningIcon13, { className: "kf-trip-workspace__status-icon" }),
23367
23475
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-workspace__status-title", children: t("chrome.tripWorkspace.errorTitle") }),
23368
23476
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-workspace__status-body", children: t("chrome.tripWorkspace.errorBody") }),
@@ -23378,7 +23486,7 @@ function ReadyTripWorkspace({
23378
23486
  ] }) });
23379
23487
  }
23380
23488
  if (read === void 0) {
23381
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TripWorkspaceSkeleton, {}) });
23489
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TripWorkspaceSkeleton, {}) });
23382
23490
  }
23383
23491
  return /* @__PURE__ */ jsxRuntime.jsx(
23384
23492
  TripWorkspaceBody,
@@ -23406,7 +23514,7 @@ function TripWorkspaceBody({
23406
23514
  components,
23407
23515
  style
23408
23516
  }) {
23409
- const { statuses, loaded } = chunkF4GGHUMX_cjs.useCapabilityStatuses(tripRef);
23517
+ const { statuses, loaded } = chunkKY752BBA_cjs.useCapabilityStatuses(tripRef);
23410
23518
  const Head = components?.TripWorkspaceHead ?? TripWorkspaceHead;
23411
23519
  const tabs = react.useMemo(() => resolveTripTabs(trip.eventType, statuses), [trip.eventType, statuses]);
23412
23520
  const [requestedTab, setRequestedTab] = react.useState(initialTab ?? "overview");
@@ -23490,7 +23598,7 @@ function TripWorkspaceBody({
23490
23598
  }),
23491
23599
  [trip, litTabs, tripRef, onTripChanged, onOpenTravellerProfile]
23492
23600
  );
23493
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
23601
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
23494
23602
  /* @__PURE__ */ jsxRuntime.jsx(Head, { trip, ...onBack !== void 0 ? { onBack } : {} }),
23495
23603
  /* @__PURE__ */ jsxRuntime.jsx(TripKpiStrip, { cells: kpis }),
23496
23604
  loaded ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -23687,7 +23795,7 @@ function AdminShell({
23687
23795
  function renderNavIcon(iconKey) {
23688
23796
  return NavIcon !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx(NavIcon, { iconKey }) : navIcon(iconKey);
23689
23797
  }
23690
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
23798
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell", style: chunk4TTDAOOG_cjs.tokenStyle(style), children: [
23691
23799
  /* @__PURE__ */ jsxRuntime.jsxs("aside", { className: "kf-admin-shell__sidebar", children: [
23692
23800
  brand !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell__brand", children: [
23693
23801
  brand.logo !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shell__brand-logo", children: brand.logo }) : null,
@@ -23791,7 +23899,7 @@ function AdminShell({
23791
23899
  ] });
23792
23900
  }
23793
23901
  function KaafilAgencyWorkspace(props) {
23794
- const session = chunkS53XNHRU_cjs.useSession();
23902
+ const session = chunk4TTDAOOG_cjs.useSession();
23795
23903
  if (session.status !== "authenticated") {
23796
23904
  return null;
23797
23905
  }
@@ -23816,8 +23924,8 @@ function ReadyKaafilAgencyWorkspace(props) {
23816
23924
  components,
23817
23925
  style
23818
23926
  } = props;
23819
- const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
23820
- const agencyAdminMe = chunkF4GGHUMX_cjs.useAgencyAdminMe();
23927
+ const { t } = chunk4TTDAOOG_cjs.useKaafilChrome();
23928
+ const agencyAdminMe = chunkKY752BBA_cjs.useAgencyAdminMe();
23821
23929
  const [internalPane, setInternalPane] = react.useState(
23822
23930
  initialPane ?? "trips"
23823
23931
  );
@@ -24078,27 +24186,27 @@ function ReadyKaafilAgencyWorkspace(props) {
24078
24186
 
24079
24187
  Object.defineProperty(exports, "BootErrorScreen", {
24080
24188
  enumerable: true,
24081
- get: function () { return chunk64R4ZJTA_cjs.BootErrorScreen; }
24189
+ get: function () { return chunkUG4Z23IJ_cjs.BootErrorScreen; }
24082
24190
  });
24083
24191
  Object.defineProperty(exports, "LockedTripScreen", {
24084
24192
  enumerable: true,
24085
- get: function () { return chunk64R4ZJTA_cjs.LockedTripScreen; }
24193
+ get: function () { return chunkUG4Z23IJ_cjs.LockedTripScreen; }
24086
24194
  });
24087
24195
  Object.defineProperty(exports, "NotFoundScreen", {
24088
24196
  enumerable: true,
24089
- get: function () { return chunk64R4ZJTA_cjs.NotFoundScreen; }
24197
+ get: function () { return chunkUG4Z23IJ_cjs.NotFoundScreen; }
24090
24198
  });
24091
24199
  Object.defineProperty(exports, "OfflineFallbackScreen", {
24092
24200
  enumerable: true,
24093
- get: function () { return chunk64R4ZJTA_cjs.OfflineFallbackScreen; }
24201
+ get: function () { return chunkUG4Z23IJ_cjs.OfflineFallbackScreen; }
24094
24202
  });
24095
24203
  Object.defineProperty(exports, "PlanLockedScreen", {
24096
24204
  enumerable: true,
24097
- get: function () { return chunk64R4ZJTA_cjs.PlanLockedScreen; }
24205
+ get: function () { return chunkUG4Z23IJ_cjs.PlanLockedScreen; }
24098
24206
  });
24099
24207
  Object.defineProperty(exports, "SessionExpiredScreen", {
24100
24208
  enumerable: true,
24101
- get: function () { return chunk64R4ZJTA_cjs.SessionExpiredScreen; }
24209
+ get: function () { return chunkUG4Z23IJ_cjs.SessionExpiredScreen; }
24102
24210
  });
24103
24211
  exports.AdminShell = AdminShell;
24104
24212
  exports.AgencySettingsScreen = AgencySettingsScreen;