kaafil-react-uikit 0.1.0 → 0.2.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.
- package/dist/admin/index.cjs +342 -342
- package/dist/admin/index.js +5 -5
- package/dist/{chunk-YHOQRKDJ.cjs → chunk-57SUK3GD.cjs} +7 -7
- package/dist/{chunk-YHOQRKDJ.cjs.map → chunk-57SUK3GD.cjs.map} +1 -1
- package/dist/{chunk-WS2DKREI.cjs → chunk-6WV5VYT2.cjs} +111 -95
- package/dist/chunk-6WV5VYT2.cjs.map +1 -0
- package/dist/{chunk-CURTZGHY.js → chunk-7ISKFGLW.js} +18 -7
- package/dist/chunk-7ISKFGLW.js.map +1 -0
- package/dist/{chunk-W5PG3IUJ.cjs → chunk-7UFX3Y2U.cjs} +4 -4
- package/dist/{chunk-W5PG3IUJ.cjs.map → chunk-7UFX3Y2U.cjs.map} +1 -1
- package/dist/{chunk-2SRBJ4H7.js → chunk-A4Z2YBEF.js} +19 -5
- package/dist/chunk-A4Z2YBEF.js.map +1 -0
- package/dist/{chunk-PYETPKTT.js → chunk-GJ2J3PYN.js} +3 -3
- package/dist/{chunk-PYETPKTT.js.map → chunk-GJ2J3PYN.js.map} +1 -1
- package/dist/{chunk-M2D6CZK2.cjs → chunk-HTIY33UH.cjs} +37 -37
- package/dist/{chunk-M2D6CZK2.cjs.map → chunk-HTIY33UH.cjs.map} +1 -1
- package/dist/{chunk-PDQVVJCS.js → chunk-KW5LH6KV.js} +3 -3
- package/dist/{chunk-PDQVVJCS.js.map → chunk-KW5LH6KV.js.map} +1 -1
- package/dist/{chunk-JMWXQTE3.js → chunk-L3QEMEFM.js} +3 -3
- package/dist/{chunk-JMWXQTE3.js.map → chunk-L3QEMEFM.js.map} +1 -1
- package/dist/{chunk-E42K6UMM.js → chunk-LJJMNZ7B.js} +5 -5
- package/dist/{chunk-E42K6UMM.js.map → chunk-LJJMNZ7B.js.map} +1 -1
- package/dist/{chunk-TF3GCIDK.cjs → chunk-OZJ74DVQ.cjs} +23 -12
- package/dist/chunk-OZJ74DVQ.cjs.map +1 -0
- package/dist/{chunk-2MWTLYVP.cjs → chunk-RG4YDSCN.cjs} +17 -17
- package/dist/{chunk-2MWTLYVP.cjs.map → chunk-RG4YDSCN.cjs.map} +1 -1
- package/dist/{chunk-7WXE5SUS.js → chunk-RSC2ZJUP.js} +35 -19
- package/dist/chunk-RSC2ZJUP.js.map +1 -0
- package/dist/{chunk-FFXGZZGJ.js → chunk-SIAPCJ7G.js} +5 -5
- package/dist/{chunk-FFXGZZGJ.js.map → chunk-SIAPCJ7G.js.map} +1 -1
- package/dist/{chunk-V36WWMTF.cjs → chunk-UALMCHNW.cjs} +19 -5
- package/dist/chunk-UALMCHNW.cjs.map +1 -0
- package/dist/{chunk-PCDEJHWL.cjs → chunk-YNHOPYBK.cjs} +12 -12
- package/dist/{chunk-PCDEJHWL.cjs.map → chunk-YNHOPYBK.cjs.map} +1 -1
- package/dist/core/index.cjs +113 -113
- package/dist/core/index.js +11 -11
- package/dist/manager/index.cjs +239 -239
- package/dist/manager/index.js +6 -6
- package/dist/traveller/index.cjs +35 -35
- package/dist/traveller/index.js +5 -5
- package/package.json +2 -2
- package/dist/chunk-2SRBJ4H7.js.map +0 -1
- package/dist/chunk-7WXE5SUS.js.map +0 -1
- package/dist/chunk-CURTZGHY.js.map +0 -1
- package/dist/chunk-TF3GCIDK.cjs.map +0 -1
- package/dist/chunk-V36WWMTF.cjs.map +0 -1
- package/dist/chunk-WS2DKREI.cjs.map +0 -1
package/dist/admin/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
6
|
-
var
|
|
7
|
-
var
|
|
3
|
+
var chunkHTIY33UH_cjs = require('../chunk-HTIY33UH.cjs');
|
|
4
|
+
var chunk6WV5VYT2_cjs = require('../chunk-6WV5VYT2.cjs');
|
|
5
|
+
require('../chunk-7UFX3Y2U.cjs');
|
|
6
|
+
var chunkYNHOPYBK_cjs = require('../chunk-YNHOPYBK.cjs');
|
|
7
|
+
var chunkUALMCHNW_cjs = require('../chunk-UALMCHNW.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:
|
|
112
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-admin-shared-patterns-pill", "data-tone": tone, style: chunkUALMCHNW_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:
|
|
118
|
+
return /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-tag", "data-tone": tone, style: chunkUALMCHNW_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:
|
|
186
|
+
style: chunkUALMCHNW_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 =
|
|
482
|
+
var fieldKindRegistry = chunkUALMCHNW_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 } =
|
|
632
|
+
const { t } = chunkUALMCHNW_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:
|
|
636
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__panel-inner", style: chunkUALMCHNW_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: [
|
|
@@ -1005,8 +1005,8 @@ function AgencySettingsScreen({
|
|
|
1005
1005
|
components,
|
|
1006
1006
|
style
|
|
1007
1007
|
}) {
|
|
1008
|
-
const { t } =
|
|
1009
|
-
const { document: document2, loaded, lastFetchFailed, refresh, patchSettings } =
|
|
1008
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
1009
|
+
const { document: document2, loaded, lastFetchFailed, refresh, patchSettings } = chunkHTIY33UH_cjs.useAgencySettings();
|
|
1010
1010
|
const [selectedSectionId, setSelectedSectionId] = react.useState(AGENCY_SETTINGS_SECTIONS[0]?.id);
|
|
1011
1011
|
const [savingSectionId, setSavingSectionId] = react.useState(void 0);
|
|
1012
1012
|
const [sectionError, setSectionError] = react.useState(void 0);
|
|
@@ -1023,13 +1023,13 @@ function AgencySettingsScreen({
|
|
|
1023
1023
|
try {
|
|
1024
1024
|
await patchSettings({ version: document2.version, [sectionId]: patch });
|
|
1025
1025
|
} catch (error) {
|
|
1026
|
-
const kind =
|
|
1026
|
+
const kind = chunk6WV5VYT2_cjs.classifyError(error).code === "CONFLICT_VERSION" ? "conflict" : "failed";
|
|
1027
1027
|
setSectionError({ sectionId, kind });
|
|
1028
1028
|
} finally {
|
|
1029
1029
|
setSavingSectionId(void 0);
|
|
1030
1030
|
}
|
|
1031
1031
|
}
|
|
1032
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen", style:
|
|
1032
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
1033
1033
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__heading", children: [
|
|
1034
1034
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-agency-settings-screen__eyebrow", children: t("chrome.agencySettingsScreen.eyebrow") }),
|
|
1035
1035
|
/* @__PURE__ */ jsxRuntime.jsx("h1", { className: "kf-agency-settings-screen__title", children: title }),
|
|
@@ -1146,7 +1146,7 @@ function summaryFor(t, selected, everyLabelKey, optionLabelKey) {
|
|
|
1146
1146
|
return selected.length === 0 ? t(everyLabelKey) : selected.map(optionLabelKey).join(", ");
|
|
1147
1147
|
}
|
|
1148
1148
|
function AutoAttachPanel({ template, saving, onSave }) {
|
|
1149
|
-
const { t } =
|
|
1149
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
1150
1150
|
const titleId = react.useId();
|
|
1151
1151
|
const [dialogOpen, setDialogOpen] = react.useState(false);
|
|
1152
1152
|
const [draft, setDraft] = react.useState(() => draftFromTemplate(template));
|
|
@@ -1382,9 +1382,9 @@ function TemplateEditorHeader({
|
|
|
1382
1382
|
onPublish,
|
|
1383
1383
|
style
|
|
1384
1384
|
}) {
|
|
1385
|
-
const { t } =
|
|
1385
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
1386
1386
|
const statusLabelKey5 = template.status === "PUBLISHED" ? "chrome.checklistTemplateEditor.status.published" : "chrome.checklistTemplateEditor.status.draft";
|
|
1387
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header", style:
|
|
1387
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
1388
1388
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header-identity", children: [
|
|
1389
1389
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header-top", children: [
|
|
1390
1390
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1453,7 +1453,7 @@ function TemplateItemEditDialog({
|
|
|
1453
1453
|
onRemove,
|
|
1454
1454
|
onClose
|
|
1455
1455
|
}) {
|
|
1456
|
-
const { t } =
|
|
1456
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
1457
1457
|
const titleId = react.useId();
|
|
1458
1458
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1459
1459
|
SheetDialog,
|
|
@@ -1603,7 +1603,7 @@ function TemplateItemRow({
|
|
|
1603
1603
|
onReorder,
|
|
1604
1604
|
style
|
|
1605
1605
|
}) {
|
|
1606
|
-
const { t } =
|
|
1606
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
1607
1607
|
const dayOffset = item.dayOffset.trim().length > 0 ? Number.parseInt(item.dayOffset, 10) : null;
|
|
1608
1608
|
const dayLabel = dayOffset === null ? "\u2014" : dayOffset > 0 ? `D+${dayOffset}` : `D${dayOffset}`;
|
|
1609
1609
|
return (
|
|
@@ -1631,7 +1631,7 @@ function TemplateItemRow({
|
|
|
1631
1631
|
onReorder(draggedDraftId, item.draftId);
|
|
1632
1632
|
}
|
|
1633
1633
|
},
|
|
1634
|
-
style:
|
|
1634
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
1635
1635
|
children: [
|
|
1636
1636
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__item-drag", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(DragHandleIcon, {}) }),
|
|
1637
1637
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__item-index", children: String(index + 1).padStart(2, "0") }),
|
|
@@ -1703,8 +1703,8 @@ function ChecklistTemplateEditor({
|
|
|
1703
1703
|
components,
|
|
1704
1704
|
style
|
|
1705
1705
|
}) {
|
|
1706
|
-
const { t } =
|
|
1707
|
-
const { templates, loaded, lastFetchFailed, refresh, patchTemplate, publishTemplate } =
|
|
1706
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
1707
|
+
const { templates, loaded, lastFetchFailed, refresh, patchTemplate, publishTemplate } = chunkHTIY33UH_cjs.useAgencyChecklistTemplates();
|
|
1708
1708
|
const template = templates.find((candidate) => candidate.id === templateId);
|
|
1709
1709
|
const [title, setTitle] = react.useState("");
|
|
1710
1710
|
const [items, setItems] = react.useState([]);
|
|
@@ -1821,7 +1821,7 @@ function ChecklistTemplateEditor({
|
|
|
1821
1821
|
}
|
|
1822
1822
|
};
|
|
1823
1823
|
if (lastFetchFailed && !loaded) {
|
|
1824
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style:
|
|
1824
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", role: "alert", children: [
|
|
1825
1825
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon2, { className: "kf-checklist-template-editor__status-icon kf-checklist-template-editor__status-icon--danger" }),
|
|
1826
1826
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-editor__status-title", children: t("chrome.checklistTemplateEditor.errorTitle") }),
|
|
1827
1827
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1836,20 +1836,20 @@ function ChecklistTemplateEditor({
|
|
|
1836
1836
|
] }) });
|
|
1837
1837
|
}
|
|
1838
1838
|
if (!loaded) {
|
|
1839
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style:
|
|
1839
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__skeleton", "aria-hidden": "true", children: [
|
|
1840
1840
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" }),
|
|
1841
1841
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" }),
|
|
1842
1842
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" })
|
|
1843
1843
|
] }) });
|
|
1844
1844
|
}
|
|
1845
1845
|
if (template === void 0) {
|
|
1846
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style:
|
|
1846
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", children: [
|
|
1847
1847
|
/* @__PURE__ */ jsxRuntime.jsx(EmptyStateIcon2, { className: "kf-checklist-template-editor__status-icon" }),
|
|
1848
1848
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-editor__status-title", children: t("chrome.checklistTemplateEditor.notFoundTitle") })
|
|
1849
1849
|
] }) });
|
|
1850
1850
|
}
|
|
1851
1851
|
const editingItem = items.find((item) => item.draftId === editingDraftId);
|
|
1852
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor", style:
|
|
1852
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
1853
1853
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1854
1854
|
TemplateEditorHeader2,
|
|
1855
1855
|
{
|
|
@@ -1952,7 +1952,7 @@ var AUDIENCE_HINT_KEY = {
|
|
|
1952
1952
|
EXTERNAL: "chrome.checklistTemplateLibrary.audience.externalHint"
|
|
1953
1953
|
};
|
|
1954
1954
|
function CreateTemplateSheet({ onSubmit, onClose }) {
|
|
1955
|
-
const { t } =
|
|
1955
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
1956
1956
|
const titleId = react.useId();
|
|
1957
1957
|
const [locale, setLocale] = react.useState("en");
|
|
1958
1958
|
const [title, setTitle] = react.useState("");
|
|
@@ -2069,7 +2069,7 @@ function DeleteTemplateConfirmSheet({
|
|
|
2069
2069
|
onConfirm,
|
|
2070
2070
|
onClose
|
|
2071
2071
|
}) {
|
|
2072
|
-
const { t } =
|
|
2072
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
2073
2073
|
const titleId = react.useId();
|
|
2074
2074
|
if (template === void 0) {
|
|
2075
2075
|
return null;
|
|
@@ -2188,7 +2188,7 @@ function TemplateRow({
|
|
|
2188
2188
|
onDelete,
|
|
2189
2189
|
style
|
|
2190
2190
|
}) {
|
|
2191
|
-
const { t } =
|
|
2191
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
2192
2192
|
const statusLabelKey5 = template.status === "PUBLISHED" ? "chrome.checklistTemplateLibrary.status.published" : "chrome.checklistTemplateLibrary.status.draft";
|
|
2193
2193
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2194
2194
|
"tr",
|
|
@@ -2197,7 +2197,7 @@ function TemplateRow({
|
|
|
2197
2197
|
className: "kf-checklist-template-library__table-row",
|
|
2198
2198
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
2199
2199
|
"data-selected": selected === true ? "true" : void 0,
|
|
2200
|
-
style:
|
|
2200
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
2201
2201
|
children: [
|
|
2202
2202
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2203
2203
|
"td",
|
|
@@ -2287,7 +2287,7 @@ function TemplateLibrarySkeleton() {
|
|
|
2287
2287
|
] }, rowIndex)) }) }) });
|
|
2288
2288
|
}
|
|
2289
2289
|
function CardHeading({ count }) {
|
|
2290
|
-
const { t } =
|
|
2290
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
2291
2291
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-library__card-title", children: t(
|
|
2292
2292
|
count === 1 ? "chrome.checklistTemplateLibrary.countLabelOne" : "chrome.checklistTemplateLibrary.countLabel"
|
|
2293
2293
|
).replace("{count}", String(count)) });
|
|
@@ -2303,8 +2303,8 @@ function ChecklistTemplateLibrary({
|
|
|
2303
2303
|
components,
|
|
2304
2304
|
style
|
|
2305
2305
|
}) {
|
|
2306
|
-
const { t } =
|
|
2307
|
-
const { templates, loaded, lastFetchFailed, refresh, createTemplate, removeTemplate } =
|
|
2306
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
2307
|
+
const { templates, loaded, lastFetchFailed, refresh, createTemplate, removeTemplate } = chunkHTIY33UH_cjs.useAgencyChecklistTemplates();
|
|
2308
2308
|
const isControlled = controlledCreating !== void 0 && onCreatingChange !== void 0;
|
|
2309
2309
|
const [internalCreating, setInternalCreating] = react.useState(false);
|
|
2310
2310
|
const creating = isControlled ? controlledCreating : internalCreating;
|
|
@@ -2340,7 +2340,7 @@ function ChecklistTemplateLibrary({
|
|
|
2340
2340
|
]
|
|
2341
2341
|
}
|
|
2342
2342
|
);
|
|
2343
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library", style:
|
|
2343
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
2344
2344
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library__heading", children: [
|
|
2345
2345
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library__heading-copy", children: [
|
|
2346
2346
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-checklist-template-library__title", children: title }),
|
|
@@ -2635,8 +2635,8 @@ function BuilderHeader({
|
|
|
2635
2635
|
pending,
|
|
2636
2636
|
style
|
|
2637
2637
|
}) {
|
|
2638
|
-
const { t } =
|
|
2639
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header", style:
|
|
2638
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
2639
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
2640
2640
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header-identity", children: [
|
|
2641
2641
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header-top", children: [
|
|
2642
2642
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2832,7 +2832,7 @@ var fallback = {
|
|
|
2832
2832
|
preview: ({ field }) => /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-form-builder__preview-unsupported", children: field.label }),
|
|
2833
2833
|
configFields: NoConfigFields
|
|
2834
2834
|
};
|
|
2835
|
-
var fieldRegistry =
|
|
2835
|
+
var fieldRegistry = chunkUALMCHNW_cjs.createRegistry({ fallback });
|
|
2836
2836
|
fieldRegistry.register("HEADING", {
|
|
2837
2837
|
preview: ({ field }) => /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-form-builder__preview-heading", children: field.label }),
|
|
2838
2838
|
configFields: NoConfigFields
|
|
@@ -3304,7 +3304,7 @@ fieldRegistry.register("ADDRESS", {
|
|
|
3304
3304
|
}
|
|
3305
3305
|
});
|
|
3306
3306
|
function FieldEditDialog(props) {
|
|
3307
|
-
const { t } =
|
|
3307
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
3308
3308
|
const titleId = react.useId();
|
|
3309
3309
|
const { bindings, saving, onClose } = props;
|
|
3310
3310
|
const isEdit = props.mode === "edit";
|
|
@@ -3541,7 +3541,7 @@ function FieldEditDialog(props) {
|
|
|
3541
3541
|
);
|
|
3542
3542
|
}
|
|
3543
3543
|
function LivePreviewPane({ title, sections, fields }) {
|
|
3544
|
-
const { t } =
|
|
3544
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
3545
3545
|
const [frame, setFrame] = react.useState("desktop");
|
|
3546
3546
|
const [answers, setAnswers] = react.useState({});
|
|
3547
3547
|
function setAnswer(fieldId, value) {
|
|
@@ -3630,7 +3630,7 @@ function FieldRow({
|
|
|
3630
3630
|
onDragEnd,
|
|
3631
3631
|
style
|
|
3632
3632
|
}) {
|
|
3633
|
-
const { t } =
|
|
3633
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
3634
3634
|
const hasHelp = field.helpText !== null && field.helpText.length > 0;
|
|
3635
3635
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3636
3636
|
"li",
|
|
@@ -3638,7 +3638,7 @@ function FieldRow({
|
|
|
3638
3638
|
className: "kf-form-builder__field-row",
|
|
3639
3639
|
"data-dragging": dragging ? "true" : void 0,
|
|
3640
3640
|
"data-drag-over": dragOver ? "true" : void 0,
|
|
3641
|
-
style:
|
|
3641
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
3642
3642
|
onDragOver: (event) => {
|
|
3643
3643
|
event.preventDefault();
|
|
3644
3644
|
onDragOverRow();
|
|
@@ -3700,7 +3700,7 @@ function SectionBlock({
|
|
|
3700
3700
|
onOpenField,
|
|
3701
3701
|
onReorderField
|
|
3702
3702
|
}) {
|
|
3703
|
-
const { t } =
|
|
3703
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
3704
3704
|
const [title, setTitle] = react.useState(section.title ?? "");
|
|
3705
3705
|
const [draggedFieldId, setDraggedFieldId] = react.useState(void 0);
|
|
3706
3706
|
const [dragOverFieldId, setDragOverFieldId] = react.useState(void 0);
|
|
@@ -3834,7 +3834,7 @@ function draftFromForm(form) {
|
|
|
3834
3834
|
};
|
|
3835
3835
|
}
|
|
3836
3836
|
function TargetingSummary({ form }) {
|
|
3837
|
-
const { t } =
|
|
3837
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
3838
3838
|
const anchorLabel = (anchor) => t(`chrome.formBuilder.summary.anchor.${anchor}`);
|
|
3839
3839
|
const eventTypes = form.appliesToEventTypes.length === 0 ? t("chrome.formBuilder.summary.everyEventType") : form.appliesToEventTypes.map((type) => t(`chrome.formBuilder.targeting.eventType.${type}`)).join(" \xB7 ");
|
|
3840
3840
|
const tripModes = form.appliesToTripModes.length === 0 ? t("chrome.formBuilder.summary.everyTripMode") : form.appliesToTripModes.map((mode) => t(`chrome.formBuilder.targeting.tripMode.${mode}`)).join(" \xB7 ");
|
|
@@ -3895,7 +3895,7 @@ function TargetingSummary({ form }) {
|
|
|
3895
3895
|
] }, cell.key)) });
|
|
3896
3896
|
}
|
|
3897
3897
|
function TargetingPanel({ form, saving, onSave }) {
|
|
3898
|
-
const { t } =
|
|
3898
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
3899
3899
|
const [editing, setEditing] = react.useState(false);
|
|
3900
3900
|
const [submitted, setSubmitted] = react.useState(false);
|
|
3901
3901
|
const [draft, setDraft] = react.useState(() => draftFromForm(form));
|
|
@@ -4191,7 +4191,7 @@ function buildReorderSections(sections, fieldsBySection) {
|
|
|
4191
4191
|
}));
|
|
4192
4192
|
}
|
|
4193
4193
|
function FormBuilder({ formId, onBack, components, style }) {
|
|
4194
|
-
const { t } =
|
|
4194
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
4195
4195
|
const {
|
|
4196
4196
|
getForm,
|
|
4197
4197
|
patchForm,
|
|
@@ -4209,7 +4209,7 @@ function FormBuilder({ formId, onBack, components, style }) {
|
|
|
4209
4209
|
deleteField,
|
|
4210
4210
|
reorderForm,
|
|
4211
4211
|
listBindings
|
|
4212
|
-
} =
|
|
4212
|
+
} = chunkHTIY33UH_cjs.useAgencyForms();
|
|
4213
4213
|
const [form, setForm] = react.useState(void 0);
|
|
4214
4214
|
const [loadFailed, setLoadFailed] = react.useState(false);
|
|
4215
4215
|
const [bindings, setBindings] = react.useState([]);
|
|
@@ -4420,7 +4420,7 @@ function FormBuilder({ formId, onBack, components, style }) {
|
|
|
4420
4420
|
}
|
|
4421
4421
|
}
|
|
4422
4422
|
if (loadFailed && form === void 0) {
|
|
4423
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style:
|
|
4423
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__status-block", role: "alert", children: [
|
|
4424
4424
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon4, { className: "kf-form-builder__status-icon kf-form-builder__status-icon--danger" }),
|
|
4425
4425
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-form-builder__status-title", children: t("chrome.formBuilder.errorTitle") }),
|
|
4426
4426
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -4435,13 +4435,13 @@ function FormBuilder({ formId, onBack, components, style }) {
|
|
|
4435
4435
|
] }) });
|
|
4436
4436
|
}
|
|
4437
4437
|
if (form === void 0) {
|
|
4438
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style:
|
|
4438
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__skeleton", "aria-hidden": "true", children: [
|
|
4439
4439
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" }),
|
|
4440
4440
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" }),
|
|
4441
4441
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" })
|
|
4442
4442
|
] }) });
|
|
4443
4443
|
}
|
|
4444
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder", style:
|
|
4444
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
4445
4445
|
onBack !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", onClick: onBack, className: "kf-form-builder__back-link", children: [
|
|
4446
4446
|
/* @__PURE__ */ jsxRuntime.jsx(BackIcon, {}),
|
|
4447
4447
|
t("chrome.formBuilder.backToLibrary")
|
|
@@ -4590,7 +4590,7 @@ var AUDIENCE_LABEL_KEY2 = {
|
|
|
4590
4590
|
MANAGER: "chrome.formsLibrary.audience.manager"
|
|
4591
4591
|
};
|
|
4592
4592
|
function CreateFormSheet({ onSubmit, onClose }) {
|
|
4593
|
-
const { t } =
|
|
4593
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
4594
4594
|
const titleId = react.useId();
|
|
4595
4595
|
const [locale, setLocale] = react.useState("en");
|
|
4596
4596
|
const [title, setTitle] = react.useState("");
|
|
@@ -4792,7 +4792,7 @@ function formatDate2(iso) {
|
|
|
4792
4792
|
});
|
|
4793
4793
|
}
|
|
4794
4794
|
function FormRow({ form, selected, onSelect, style }) {
|
|
4795
|
-
const { t } =
|
|
4795
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
4796
4796
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4797
4797
|
"tr",
|
|
4798
4798
|
{
|
|
@@ -4800,7 +4800,7 @@ function FormRow({ form, selected, onSelect, style }) {
|
|
|
4800
4800
|
className: "kf-forms-library__table-row",
|
|
4801
4801
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
4802
4802
|
"data-selected": selected === true ? "true" : void 0,
|
|
4803
|
-
style:
|
|
4803
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
4804
4804
|
children: [
|
|
4805
4805
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4806
4806
|
"td",
|
|
@@ -4856,7 +4856,7 @@ function FormsLibrarySkeleton() {
|
|
|
4856
4856
|
] }, rowIndex)) }) }) });
|
|
4857
4857
|
}
|
|
4858
4858
|
function CardHeading2({ count }) {
|
|
4859
|
-
const { t } =
|
|
4859
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
4860
4860
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-forms-library__card-title", children: t(
|
|
4861
4861
|
count === 1 ? "chrome.formsLibrary.countLabelOne" : "chrome.formsLibrary.countLabel"
|
|
4862
4862
|
).replace("{count}", String(count)) });
|
|
@@ -4871,7 +4871,7 @@ function StatusFilterBar({
|
|
|
4871
4871
|
active,
|
|
4872
4872
|
onChange
|
|
4873
4873
|
}) {
|
|
4874
|
-
const { t } =
|
|
4874
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
4875
4875
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-forms-library__filter-bar", children: [
|
|
4876
4876
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.formsLibrary.filter.legend") }),
|
|
4877
4877
|
STATUS_FILTERS.map((filter) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -4897,8 +4897,8 @@ function FormsLibrary({
|
|
|
4897
4897
|
components,
|
|
4898
4898
|
style
|
|
4899
4899
|
}) {
|
|
4900
|
-
const { t } =
|
|
4901
|
-
const { forms, loaded, lastFetchFailed, refresh, createForm } =
|
|
4900
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
4901
|
+
const { forms, loaded, lastFetchFailed, refresh, createForm } = chunkHTIY33UH_cjs.useAgencyForms();
|
|
4902
4902
|
const isControlled = controlledCreating !== void 0 && onCreatingChange !== void 0;
|
|
4903
4903
|
const [internalCreating, setInternalCreating] = react.useState(false);
|
|
4904
4904
|
const creating = isControlled ? controlledCreating : internalCreating;
|
|
@@ -4909,7 +4909,7 @@ function FormsLibrary({
|
|
|
4909
4909
|
await createForm(input);
|
|
4910
4910
|
};
|
|
4911
4911
|
const visibleForms = statusFilter === "ALL" ? forms : forms.filter((form) => form.status === statusFilter);
|
|
4912
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library", style:
|
|
4912
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
4913
4913
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library__heading", children: [
|
|
4914
4914
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-forms-library__title", children: title }),
|
|
4915
4915
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-forms-library__subtitle", children: subtitle }) : null
|
|
@@ -4985,9 +4985,9 @@ function FormsAuthoringFlow({ initialFormId, style }) {
|
|
|
4985
4985
|
setSelectedFormId(void 0);
|
|
4986
4986
|
}
|
|
4987
4987
|
if (selectedFormId === void 0) {
|
|
4988
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style:
|
|
4988
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormsLibrary, { onSelectForm: handleSelect }) });
|
|
4989
4989
|
}
|
|
4990
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style:
|
|
4990
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormBuilder, { formId: selectedFormId, onBack: handleBack }) });
|
|
4991
4991
|
}
|
|
4992
4992
|
function SearchIcon(props) {
|
|
4993
4993
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -5138,7 +5138,7 @@ function AdminAvatar({
|
|
|
5138
5138
|
className: "kf-admin-shared-patterns-avatar",
|
|
5139
5139
|
"data-size": size,
|
|
5140
5140
|
"aria-hidden": "true",
|
|
5141
|
-
style:
|
|
5141
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style, {
|
|
5142
5142
|
"--kf-admin-shared-patterns-avatar-computed-size": SIZE_VAR[size],
|
|
5143
5143
|
"--kf-admin-shared-patterns-avatar-computed-bg": `var(--kf-color-avatar-${step})`
|
|
5144
5144
|
}),
|
|
@@ -5158,7 +5158,7 @@ function ManagerResultRow({
|
|
|
5158
5158
|
onSelect,
|
|
5159
5159
|
style
|
|
5160
5160
|
}) {
|
|
5161
|
-
const { t } =
|
|
5161
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5162
5162
|
const initials = initialsFromName(manager.fullName);
|
|
5163
5163
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5164
5164
|
"tr",
|
|
@@ -5166,7 +5166,7 @@ function ManagerResultRow({
|
|
|
5166
5166
|
role: "row",
|
|
5167
5167
|
className: "kf-manager-directory-flow__table-row",
|
|
5168
5168
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
5169
|
-
style:
|
|
5169
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
5170
5170
|
children: [
|
|
5171
5171
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5172
5172
|
"td",
|
|
@@ -5275,8 +5275,8 @@ function ManagerResultsListBody({
|
|
|
5275
5275
|
onCountChange,
|
|
5276
5276
|
onRetry
|
|
5277
5277
|
}) {
|
|
5278
|
-
const { t } =
|
|
5279
|
-
const directories =
|
|
5278
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5279
|
+
const directories = chunkHTIY33UH_cjs.useDirectories();
|
|
5280
5280
|
const [errorMessage, setErrorMessage] = react.useState(void 0);
|
|
5281
5281
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
5282
5282
|
const ManagerRow = ManagerResultRowComponent ?? ManagerResultRow;
|
|
@@ -5287,7 +5287,7 @@ function ManagerResultsListBody({
|
|
|
5287
5287
|
setErrorMessage(void 0);
|
|
5288
5288
|
return page;
|
|
5289
5289
|
} catch (error) {
|
|
5290
|
-
setErrorMessage(
|
|
5290
|
+
setErrorMessage(chunk6WV5VYT2_cjs.classifyError(error).code ?? "unknown");
|
|
5291
5291
|
return { rows: [], nextCursor: void 0 };
|
|
5292
5292
|
} finally {
|
|
5293
5293
|
setHasSettled(true);
|
|
@@ -5295,7 +5295,7 @@ function ManagerResultsListBody({
|
|
|
5295
5295
|
},
|
|
5296
5296
|
[directories, filters]
|
|
5297
5297
|
);
|
|
5298
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
5298
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkHTIY33UH_cjs.usePaginatedList(fetch);
|
|
5299
5299
|
const isLoading = !hasSettled;
|
|
5300
5300
|
const reportedCount = isLoading || errorMessage !== void 0 ? void 0 : rows.length;
|
|
5301
5301
|
react.useEffect(() => {
|
|
@@ -5392,7 +5392,7 @@ function ManagerSearchInput({
|
|
|
5392
5392
|
debounceMs,
|
|
5393
5393
|
onDebouncedChange
|
|
5394
5394
|
}) {
|
|
5395
|
-
const { t } =
|
|
5395
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5396
5396
|
const [value, setValue] = react.useState("");
|
|
5397
5397
|
react.useEffect(() => {
|
|
5398
5398
|
const timer = setTimeout(() => onDebouncedChange(value), debounceMs);
|
|
@@ -5431,12 +5431,12 @@ function ManagerDirectoryFlow({
|
|
|
5431
5431
|
components,
|
|
5432
5432
|
style
|
|
5433
5433
|
}) {
|
|
5434
|
-
const { t } =
|
|
5434
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5435
5435
|
const [query, setQuery] = react.useState("");
|
|
5436
5436
|
const [count, setCount] = react.useState(void 0);
|
|
5437
5437
|
const trimmedQuery = query.trim();
|
|
5438
5438
|
const handleCountChange = react.useCallback((next) => setCount(next), []);
|
|
5439
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow", style:
|
|
5439
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
5440
5440
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow__heading", children: [
|
|
5441
5441
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-manager-directory-flow__title", children: title }),
|
|
5442
5442
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-directory-flow__subtitle", children: subtitle }) : null
|
|
@@ -5508,7 +5508,7 @@ function formatDate3(iso) {
|
|
|
5508
5508
|
return new Date(iso).toLocaleDateString("en-GB", { day: "2-digit", month: "short" });
|
|
5509
5509
|
}
|
|
5510
5510
|
function ManagerAssignmentsCard({ trips }) {
|
|
5511
|
-
const { t } =
|
|
5511
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5512
5512
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-manager-profile-section__card", children: [
|
|
5513
5513
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section__card-head", children: [
|
|
5514
5514
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-manager-profile-section__card-title", children: t("chrome.managerProfileSection.trips.title") }),
|
|
@@ -5572,7 +5572,7 @@ function HeroProfileHeader({
|
|
|
5572
5572
|
glowTone,
|
|
5573
5573
|
style
|
|
5574
5574
|
}) {
|
|
5575
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero", "data-glow": glowTone, style:
|
|
5575
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero", "data-glow": glowTone, style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
5576
5576
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-hero-glow", "aria-hidden": "true" }),
|
|
5577
5577
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero-row", children: [
|
|
5578
5578
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-hero-avatar", "aria-hidden": "true", children: avatarInitials }),
|
|
@@ -5605,7 +5605,7 @@ function initialsFromName2(name) {
|
|
|
5605
5605
|
return `${first}${last}`.toUpperCase();
|
|
5606
5606
|
}
|
|
5607
5607
|
function ManagerProfileHero({ profile, onBack }) {
|
|
5608
|
-
const { t } =
|
|
5608
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5609
5609
|
const initials = initialsFromName2(profile.fullName);
|
|
5610
5610
|
const stats = [
|
|
5611
5611
|
{ key: "trips", label: t("chrome.managerProfileSection.hero.trips"), value: profile.tripCount },
|
|
@@ -5664,12 +5664,12 @@ function ManagerProfileSection({
|
|
|
5664
5664
|
components,
|
|
5665
5665
|
style
|
|
5666
5666
|
}) {
|
|
5667
|
-
const { t } =
|
|
5668
|
-
const { read, readFailed, refresh } =
|
|
5667
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5668
|
+
const { read, readFailed, refresh } = chunkHTIY33UH_cjs.useAgencyManagerProfile(managerRef);
|
|
5669
5669
|
const Hero = components?.Hero ?? ManagerProfileHero;
|
|
5670
5670
|
const AssignmentsCard = components?.AssignmentsCard ?? ManagerAssignmentsCard;
|
|
5671
5671
|
if (readFailed) {
|
|
5672
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style:
|
|
5672
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section__status-block", role: "alert", children: [
|
|
5673
5673
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon7, { className: "kf-manager-profile-section__status-icon kf-manager-profile-section__status-icon--danger" }),
|
|
5674
5674
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-profile-section__status-title", children: t("chrome.managerProfileSection.errorTitle") }),
|
|
5675
5675
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-profile-section__status-body", children: t("chrome.managerProfileSection.errorBody") }),
|
|
@@ -5685,9 +5685,9 @@ function ManagerProfileSection({
|
|
|
5685
5685
|
] }) });
|
|
5686
5686
|
}
|
|
5687
5687
|
if (read === void 0) {
|
|
5688
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style:
|
|
5688
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ManagerProfileSkeleton, {}) });
|
|
5689
5689
|
}
|
|
5690
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section", style:
|
|
5690
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
5691
5691
|
/* @__PURE__ */ jsxRuntime.jsx(Hero, { profile: read, onBack }),
|
|
5692
5692
|
/* @__PURE__ */ jsxRuntime.jsx(AssignmentsCard, { trips: read.trips })
|
|
5693
5693
|
] });
|
|
@@ -5714,7 +5714,7 @@ function TemplateAuthoringFlow({
|
|
|
5714
5714
|
initialTemplateId,
|
|
5715
5715
|
style
|
|
5716
5716
|
}) {
|
|
5717
|
-
const { t } =
|
|
5717
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5718
5718
|
const [selectedTemplateId, setSelectedTemplateId] = react.useState(
|
|
5719
5719
|
initialTemplateId
|
|
5720
5720
|
);
|
|
@@ -5725,9 +5725,9 @@ function TemplateAuthoringFlow({
|
|
|
5725
5725
|
setSelectedTemplateId(void 0);
|
|
5726
5726
|
}
|
|
5727
5727
|
if (selectedTemplateId === void 0) {
|
|
5728
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-template-authoring-flow", style:
|
|
5728
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-template-authoring-flow", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ChecklistTemplateLibrary, { onSelectTemplate: handleSelect }) });
|
|
5729
5729
|
}
|
|
5730
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-template-authoring-flow", style:
|
|
5730
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-template-authoring-flow", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
5731
5731
|
/* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", onClick: handleBack, className: "kf-template-authoring-flow__back-link", children: [
|
|
5732
5732
|
/* @__PURE__ */ jsxRuntime.jsx(BackIcon3, {}),
|
|
5733
5733
|
t("chrome.templateAuthoringFlow.backToLibrary")
|
|
@@ -5736,8 +5736,8 @@ function TemplateAuthoringFlow({
|
|
|
5736
5736
|
] });
|
|
5737
5737
|
}
|
|
5738
5738
|
function AddTravellerModal({ onClose, onCreated }) {
|
|
5739
|
-
const { t } =
|
|
5740
|
-
const directories =
|
|
5739
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5740
|
+
const directories = chunkHTIY33UH_cjs.useDirectories();
|
|
5741
5741
|
const titleId = react.useId();
|
|
5742
5742
|
const [fullName, setFullName] = react.useState("");
|
|
5743
5743
|
const [phone, setPhone] = react.useState("");
|
|
@@ -5761,7 +5761,7 @@ function AddTravellerModal({ onClose, onCreated }) {
|
|
|
5761
5761
|
});
|
|
5762
5762
|
onCreated(created);
|
|
5763
5763
|
} catch (error) {
|
|
5764
|
-
setErrorMessage(
|
|
5764
|
+
setErrorMessage(chunk6WV5VYT2_cjs.classifyError(error).code ?? "unknown");
|
|
5765
5765
|
} finally {
|
|
5766
5766
|
setIsSubmitting(false);
|
|
5767
5767
|
}
|
|
@@ -5975,7 +5975,7 @@ function TravellerResultRow({
|
|
|
5975
5975
|
onSelect,
|
|
5976
5976
|
style
|
|
5977
5977
|
}) {
|
|
5978
|
-
const { t } =
|
|
5978
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
5979
5979
|
const initials = initialsFromName3(traveller.fullName);
|
|
5980
5980
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5981
5981
|
"tr",
|
|
@@ -5983,7 +5983,7 @@ function TravellerResultRow({
|
|
|
5983
5983
|
role: "row",
|
|
5984
5984
|
className: "kf-traveller-directory__table-row",
|
|
5985
5985
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
5986
|
-
style:
|
|
5986
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
5987
5987
|
children: [
|
|
5988
5988
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5989
5989
|
"td",
|
|
@@ -6111,8 +6111,8 @@ function TravellerResultsListBody({
|
|
|
6111
6111
|
onCountChange,
|
|
6112
6112
|
onRetry
|
|
6113
6113
|
}) {
|
|
6114
|
-
const { t } =
|
|
6115
|
-
const directories =
|
|
6114
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6115
|
+
const directories = chunkHTIY33UH_cjs.useDirectories();
|
|
6116
6116
|
const [errorMessage, setErrorMessage] = react.useState(void 0);
|
|
6117
6117
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
6118
6118
|
const fetch = react.useCallback(
|
|
@@ -6123,7 +6123,7 @@ function TravellerResultsListBody({
|
|
|
6123
6123
|
setErrorMessage(void 0);
|
|
6124
6124
|
return page;
|
|
6125
6125
|
} catch (error) {
|
|
6126
|
-
setErrorMessage(
|
|
6126
|
+
setErrorMessage(chunk6WV5VYT2_cjs.classifyError(error).code ?? "unknown");
|
|
6127
6127
|
return { rows: [], nextCursor: void 0 };
|
|
6128
6128
|
} finally {
|
|
6129
6129
|
setHasSettled(true);
|
|
@@ -6131,7 +6131,7 @@ function TravellerResultsListBody({
|
|
|
6131
6131
|
},
|
|
6132
6132
|
[directories, query]
|
|
6133
6133
|
);
|
|
6134
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
6134
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkHTIY33UH_cjs.usePaginatedList(fetch);
|
|
6135
6135
|
const isLoading = !hasSettled;
|
|
6136
6136
|
const reportedCount = isLoading || errorMessage !== void 0 ? void 0 : rows.length;
|
|
6137
6137
|
react.useEffect(() => {
|
|
@@ -6226,7 +6226,7 @@ function TravellerSearchInput({
|
|
|
6226
6226
|
debounceMs,
|
|
6227
6227
|
onDebouncedChange
|
|
6228
6228
|
}) {
|
|
6229
|
-
const { t } =
|
|
6229
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6230
6230
|
const [value, setValue] = react.useState("");
|
|
6231
6231
|
react.useEffect(() => {
|
|
6232
6232
|
const timer = setTimeout(() => onDebouncedChange(value), debounceMs);
|
|
@@ -6266,13 +6266,13 @@ function TravellerSearchBox({
|
|
|
6266
6266
|
trailingAction,
|
|
6267
6267
|
style
|
|
6268
6268
|
}) {
|
|
6269
|
-
const { t } =
|
|
6269
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6270
6270
|
const [query, setQuery] = react.useState("");
|
|
6271
6271
|
const [count, setCount] = react.useState(void 0);
|
|
6272
6272
|
const trimmed = query.trim();
|
|
6273
6273
|
const handleCountChange = react.useCallback((next) => setCount(next), []);
|
|
6274
6274
|
const isBelowFloor = minQueryLength > 0 && trimmed.length < minQueryLength;
|
|
6275
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box", style:
|
|
6275
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
6276
6276
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box-input-row", children: [
|
|
6277
6277
|
/* @__PURE__ */ jsxRuntime.jsx(TravellerSearchInput, { debounceMs, onDebouncedChange: setQuery }),
|
|
6278
6278
|
count !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-traveller-directory__count", children: t(
|
|
@@ -6304,7 +6304,7 @@ function TravellerDirectoryFlow({
|
|
|
6304
6304
|
components,
|
|
6305
6305
|
style
|
|
6306
6306
|
}) {
|
|
6307
|
-
const { t } =
|
|
6307
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6308
6308
|
const [uncontrolledOpen, setUncontrolledOpen] = react.useState(false);
|
|
6309
6309
|
const isControlled = adding !== void 0 && onAddingChange !== void 0;
|
|
6310
6310
|
const isAddModalOpen = isControlled ? adding : uncontrolledOpen;
|
|
@@ -6327,7 +6327,7 @@ function TravellerDirectoryFlow({
|
|
|
6327
6327
|
);
|
|
6328
6328
|
const SearchBox = components?.TravellerSearchBox ?? TravellerSearchBox;
|
|
6329
6329
|
const AddModal = components?.AddTravellerModal ?? AddTravellerModal;
|
|
6330
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow", style:
|
|
6330
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
6331
6331
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow__heading", children: [
|
|
6332
6332
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-directory-flow__title", children: title }),
|
|
6333
6333
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-directory-flow__subtitle", children: subtitle }) : null
|
|
@@ -6353,7 +6353,7 @@ function TravellerDirectoryFlow({
|
|
|
6353
6353
|
] });
|
|
6354
6354
|
}
|
|
6355
6355
|
function useAgencyTravellerProfile(travellerRef) {
|
|
6356
|
-
const client =
|
|
6356
|
+
const client = chunkUALMCHNW_cjs.useKaafilClient();
|
|
6357
6357
|
const [read, setRead] = react.useState(void 0);
|
|
6358
6358
|
const [readFailed, setReadFailed] = react.useState(false);
|
|
6359
6359
|
const refresh = react.useCallback(async () => {
|
|
@@ -6410,7 +6410,7 @@ function formatMinor(minor, currency) {
|
|
|
6410
6410
|
}).format(minor / 100);
|
|
6411
6411
|
}
|
|
6412
6412
|
function TravellerLifetimeCard({ lifetime }) {
|
|
6413
|
-
const { t } =
|
|
6413
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6414
6414
|
if (lifetime.currency === null) {
|
|
6415
6415
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
|
|
6416
6416
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
|
|
@@ -6458,7 +6458,7 @@ function formatTimestamp(iso) {
|
|
|
6458
6458
|
});
|
|
6459
6459
|
}
|
|
6460
6460
|
function TravellerNotesList({ notes }) {
|
|
6461
|
-
const { t } =
|
|
6461
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6462
6462
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
|
|
6463
6463
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
|
|
6464
6464
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-profile-section__card-title", children: t("chrome.travellerProfileSection.notes.title") }),
|
|
@@ -6504,7 +6504,7 @@ function formatDateOfBirth(iso) {
|
|
|
6504
6504
|
});
|
|
6505
6505
|
}
|
|
6506
6506
|
function TravellerPersonalCard({ profile }) {
|
|
6507
|
-
const { t } =
|
|
6507
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6508
6508
|
const p = profile.profile;
|
|
6509
6509
|
const dob = formatDateOfBirth(p.dateOfBirth);
|
|
6510
6510
|
const email = p.email ?? profile.email;
|
|
@@ -6619,7 +6619,7 @@ function formatMinor2(minor, currency) {
|
|
|
6619
6619
|
}).format(minor / 100);
|
|
6620
6620
|
}
|
|
6621
6621
|
function TravellerProfileHero({ profile, onBack }) {
|
|
6622
|
-
const { t } =
|
|
6622
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6623
6623
|
const initials = initialsFromName4(profile.fullName);
|
|
6624
6624
|
const { lifetime } = profile;
|
|
6625
6625
|
const stats = lifetime.currency !== null ? [
|
|
@@ -6710,7 +6710,7 @@ function formatMinor3(minor, currency) {
|
|
|
6710
6710
|
}).format(minor / 100);
|
|
6711
6711
|
}
|
|
6712
6712
|
function TravellerTripHistoryTable({ trips }) {
|
|
6713
|
-
const { t } =
|
|
6713
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6714
6714
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
|
|
6715
6715
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
|
|
6716
6716
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-profile-section__card-title", children: t("chrome.travellerProfileSection.trips.title") }),
|
|
@@ -6761,7 +6761,7 @@ function TravellerProfileSection({
|
|
|
6761
6761
|
components,
|
|
6762
6762
|
style
|
|
6763
6763
|
}) {
|
|
6764
|
-
const { t } =
|
|
6764
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
6765
6765
|
const { read, readFailed, refresh } = useAgencyTravellerProfile(travellerRef);
|
|
6766
6766
|
const Hero = components?.Hero ?? TravellerProfileHero;
|
|
6767
6767
|
const PersonalCard = components?.PersonalCard ?? TravellerPersonalCard;
|
|
@@ -6769,7 +6769,7 @@ function TravellerProfileSection({
|
|
|
6769
6769
|
const TripHistoryTable = components?.TripHistoryTable ?? TravellerTripHistoryTable;
|
|
6770
6770
|
const NotesList = components?.NotesList ?? TravellerNotesList;
|
|
6771
6771
|
if (readFailed) {
|
|
6772
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style:
|
|
6772
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__status-block", role: "alert", children: [
|
|
6773
6773
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon9, { className: "kf-traveller-profile-section__status-icon kf-traveller-profile-section__status-icon--danger" }),
|
|
6774
6774
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-profile-section__status-title", children: t("chrome.travellerProfileSection.errorTitle") }),
|
|
6775
6775
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-profile-section__status-body", children: t("chrome.travellerProfileSection.errorBody") }),
|
|
@@ -6785,9 +6785,9 @@ function TravellerProfileSection({
|
|
|
6785
6785
|
] }) });
|
|
6786
6786
|
}
|
|
6787
6787
|
if (read === void 0) {
|
|
6788
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style:
|
|
6788
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TravellerProfileSkeleton, {}) });
|
|
6789
6789
|
}
|
|
6790
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section", style:
|
|
6790
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
6791
6791
|
/* @__PURE__ */ jsxRuntime.jsx(Hero, { profile: read, onBack }),
|
|
6792
6792
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__body", children: [
|
|
6793
6793
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__column", children: [
|
|
@@ -6879,7 +6879,7 @@ function ToggleSwitch({
|
|
|
6879
6879
|
disabled,
|
|
6880
6880
|
className: "kf-admin-shared-patterns-toggle-row",
|
|
6881
6881
|
onClick: () => onChange(!checked),
|
|
6882
|
-
style:
|
|
6882
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
6883
6883
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6884
6884
|
"span",
|
|
6885
6885
|
{
|
|
@@ -7317,7 +7317,7 @@ function TriggerDetailPanel({
|
|
|
7317
7317
|
style
|
|
7318
7318
|
}) {
|
|
7319
7319
|
const [dialogOpen, setDialogOpen] = react.useState(false);
|
|
7320
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail", style:
|
|
7320
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
7321
7321
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail-head", children: [
|
|
7322
7322
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trigger-template-editor__detail-eyebrow", children: t("chrome.triggerTemplateEditor.selected") }),
|
|
7323
7323
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -7401,8 +7401,8 @@ function TriggerTemplateEditor({
|
|
|
7401
7401
|
onTriggerPatched,
|
|
7402
7402
|
style
|
|
7403
7403
|
}) {
|
|
7404
|
-
const { t } =
|
|
7405
|
-
const { triggers, loaded, lastFetchFailed, refresh, patchTrigger } =
|
|
7404
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7405
|
+
const { triggers, loaded, lastFetchFailed, refresh, patchTrigger } = chunkHTIY33UH_cjs.useAgencyJourneyTriggers();
|
|
7406
7406
|
const [savingId, setSavingId] = react.useState(void 0);
|
|
7407
7407
|
const [selectedId, setSelectedId] = react.useState(void 0);
|
|
7408
7408
|
const filtered = tripModeFilter === void 0 ? triggers : triggers.filter((trigger) => trigger.tripMode === tripModeFilter);
|
|
@@ -7437,7 +7437,7 @@ function TriggerTemplateEditor({
|
|
|
7437
7437
|
setSavingId(void 0);
|
|
7438
7438
|
}
|
|
7439
7439
|
}
|
|
7440
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor", style:
|
|
7440
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
7441
7441
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__heading", children: [
|
|
7442
7442
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trigger-template-editor__title", children: title }),
|
|
7443
7443
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trigger-template-editor__subtitle", children: subtitle }) : null
|
|
@@ -7585,14 +7585,14 @@ function BookingsSkeleton() {
|
|
|
7585
7585
|
] }, id)) });
|
|
7586
7586
|
}
|
|
7587
7587
|
function BookingsEmpty() {
|
|
7588
|
-
const { t } =
|
|
7588
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7589
7589
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", children: [
|
|
7590
7590
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t("chrome.tripBookings.emptyTitle") }),
|
|
7591
7591
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__state-body", children: t("chrome.tripBookings.emptyBody") })
|
|
7592
7592
|
] });
|
|
7593
7593
|
}
|
|
7594
7594
|
function BookingsFailed({ onRetry }) {
|
|
7595
|
-
const { t } =
|
|
7595
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7596
7596
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", role: "alert", children: [
|
|
7597
7597
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t("chrome.tripBookings.failedTitle") }),
|
|
7598
7598
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__state-body", children: t("chrome.tripBookings.failedBody") }),
|
|
@@ -7600,7 +7600,7 @@ function BookingsFailed({ onRetry }) {
|
|
|
7600
7600
|
] });
|
|
7601
7601
|
}
|
|
7602
7602
|
function BookingsDark({ reason }) {
|
|
7603
|
-
const { t } =
|
|
7603
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7604
7604
|
if (reason === "mode") return null;
|
|
7605
7605
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", "data-dark": reason, children: [
|
|
7606
7606
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t(
|
|
@@ -7645,8 +7645,8 @@ function TripBookingsSection({
|
|
|
7645
7645
|
onOpenDocuments,
|
|
7646
7646
|
style
|
|
7647
7647
|
}) {
|
|
7648
|
-
const { t } =
|
|
7649
|
-
const bookings =
|
|
7648
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7649
|
+
const bookings = chunkHTIY33UH_cjs.useBookings(tripRef);
|
|
7650
7650
|
const ready = bookings.status === "ready" ? bookings : null;
|
|
7651
7651
|
const groups = react.useMemo(
|
|
7652
7652
|
() => ready === null ? [] : groupByKind(liveBookings(ready.bookings)),
|
|
@@ -7656,7 +7656,7 @@ function TripBookingsSection({
|
|
|
7656
7656
|
const unreadable = ready !== null && ready.syncedAt === void 0;
|
|
7657
7657
|
const refreshLive = ready?.refreshLive;
|
|
7658
7658
|
if (bookings.status === "dark") return /* @__PURE__ */ jsxRuntime.jsx(BookingsDark, { reason: bookings.reason });
|
|
7659
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-bookings-section", style:
|
|
7659
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-bookings-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
7660
7660
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-bookings-section__head", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__head-text", children: [
|
|
7661
7661
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-bookings-section__title", children: t("chrome.tripBookings.panelLabel") }),
|
|
7662
7662
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__subtitle", children: t("chrome.tripBookings.subtitle").replace("{count}", String(total)) })
|
|
@@ -7728,7 +7728,7 @@ function LockIcon2() {
|
|
|
7728
7728
|
);
|
|
7729
7729
|
}
|
|
7730
7730
|
function CloseoutLockNotice({ whatKey }) {
|
|
7731
|
-
const { t } =
|
|
7731
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7732
7732
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-closeout-lock", role: "status", children: [
|
|
7733
7733
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-closeout-lock__glyph", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(LockIcon2, {}) }),
|
|
7734
7734
|
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-admin-closeout-lock__body", children: [
|
|
@@ -7832,7 +7832,7 @@ function ChecklistSkeleton() {
|
|
|
7832
7832
|
] }, column)) });
|
|
7833
7833
|
}
|
|
7834
7834
|
function ChecklistEmpty({ onPull }) {
|
|
7835
|
-
const { t } =
|
|
7835
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7836
7836
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", children: [
|
|
7837
7837
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-checklist-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(ChecklistIcon, {}) }),
|
|
7838
7838
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-checklist-section__state-title", children: t("chrome.tripChecklist.emptyTitle") }),
|
|
@@ -7841,7 +7841,7 @@ function ChecklistEmpty({ onPull }) {
|
|
|
7841
7841
|
] });
|
|
7842
7842
|
}
|
|
7843
7843
|
function ChecklistFailed({ onRetry }) {
|
|
7844
|
-
const { t } =
|
|
7844
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7845
7845
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", children: [
|
|
7846
7846
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-checklist-section__state-title", children: t("chrome.tripChecklist.failedTitle") }),
|
|
7847
7847
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-checklist-section__state-body", children: t("chrome.tripChecklist.failedBody") }),
|
|
@@ -7849,7 +7849,7 @@ function ChecklistFailed({ onRetry }) {
|
|
|
7849
7849
|
] });
|
|
7850
7850
|
}
|
|
7851
7851
|
function ChecklistDark({ reason }) {
|
|
7852
|
-
const { t } =
|
|
7852
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7853
7853
|
if (reason === "mode") return null;
|
|
7854
7854
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", "data-dark": reason, children: [
|
|
7855
7855
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-checklist-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(LockIcon3, {}) }),
|
|
@@ -7949,7 +7949,7 @@ function ItemDialog({
|
|
|
7949
7949
|
onClose,
|
|
7950
7950
|
onSubmit
|
|
7951
7951
|
}) {
|
|
7952
|
-
const { t } =
|
|
7952
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
7953
7953
|
const titleId = react.useId();
|
|
7954
7954
|
const [values, setValues] = react.useState(initial);
|
|
7955
7955
|
const [sectionChoice, setSectionChoice] = react.useState(
|
|
@@ -8146,7 +8146,7 @@ function ChecklistItemRow({
|
|
|
8146
8146
|
onToggle,
|
|
8147
8147
|
onEdit
|
|
8148
8148
|
}) {
|
|
8149
|
-
const { t } =
|
|
8149
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
8150
8150
|
const complete = item.status === "COMPLETE";
|
|
8151
8151
|
const day = dayOffsetLabel(item.dayOffset);
|
|
8152
8152
|
const actorKey = actorLabelKey(item.performedByKind);
|
|
@@ -8198,7 +8198,7 @@ function SectionCard2({
|
|
|
8198
8198
|
onAddToSection,
|
|
8199
8199
|
ItemRow: ItemRow2 = ChecklistItemRow
|
|
8200
8200
|
}) {
|
|
8201
|
-
const { t } =
|
|
8201
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
8202
8202
|
const openMandatory = items.filter((one) => one.isMandatory && one.status === "OPEN").length;
|
|
8203
8203
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section__section", children: [
|
|
8204
8204
|
/* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-trip-checklist-section__section-head", children: [
|
|
@@ -8252,7 +8252,7 @@ function PhasePanel({
|
|
|
8252
8252
|
onAddToPhase,
|
|
8253
8253
|
ItemRow: ItemRow2
|
|
8254
8254
|
}) {
|
|
8255
|
-
const { t } =
|
|
8255
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
8256
8256
|
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: sections.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__phase-empty", children: [
|
|
8257
8257
|
/* @__PURE__ */ jsxRuntime.jsx("p", { children: t("chrome.tripChecklist.phaseEmpty") }),
|
|
8258
8258
|
readOnly ? null : /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8288,7 +8288,7 @@ function PhaseSwitcher({
|
|
|
8288
8288
|
value,
|
|
8289
8289
|
onChange
|
|
8290
8290
|
}) {
|
|
8291
|
-
const { t } =
|
|
8291
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
8292
8292
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-checklist-section__segment", children: [
|
|
8293
8293
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.tripChecklist.phaseLabel") }),
|
|
8294
8294
|
OPTIONS.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8321,7 +8321,7 @@ function TemplatePickerDialog({
|
|
|
8321
8321
|
onClose,
|
|
8322
8322
|
onPull
|
|
8323
8323
|
}) {
|
|
8324
|
-
const { t } =
|
|
8324
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
8325
8325
|
const titleId = react.useId();
|
|
8326
8326
|
const [selectedId, setSelectedId] = react.useState(null);
|
|
8327
8327
|
const [mode, setMode] = react.useState("append");
|
|
@@ -8450,8 +8450,8 @@ function TripChecklistSection({
|
|
|
8450
8450
|
components,
|
|
8451
8451
|
style
|
|
8452
8452
|
}) {
|
|
8453
|
-
const { t } =
|
|
8454
|
-
const checklists =
|
|
8453
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
8454
|
+
const checklists = chunk6WV5VYT2_cjs.useChecklists(tripRef);
|
|
8455
8455
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
8456
8456
|
const [pending, setPending] = react.useState(false);
|
|
8457
8457
|
const [busyItemId, setBusyItemId] = react.useState(null);
|
|
@@ -8618,7 +8618,7 @@ function TripChecklistSection({
|
|
|
8618
8618
|
const inert = readOnly || locked;
|
|
8619
8619
|
const unreadable = aggregate?.lastFetchFailed === true && aggregate.loaded === false;
|
|
8620
8620
|
const percent = overallPercent(aggregate?.progress);
|
|
8621
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section", style:
|
|
8621
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
8622
8622
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__head", children: [
|
|
8623
8623
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__head-text", children: [
|
|
8624
8624
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-checklist-section__title", children: t("chrome.tripChecklist.panelLabel") }),
|
|
@@ -9007,7 +9007,7 @@ var STATUS_LABEL_KEY5 = {
|
|
|
9007
9007
|
CANCELLED: "chrome.tripDirectory.status.cancelled"
|
|
9008
9008
|
};
|
|
9009
9009
|
function TripRow({ trip, index, onOpen, style }) {
|
|
9010
|
-
const { t } =
|
|
9010
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9011
9011
|
const derived = deriveTripRow(trip, index);
|
|
9012
9012
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9013
9013
|
"tr",
|
|
@@ -9015,7 +9015,7 @@ function TripRow({ trip, index, onOpen, style }) {
|
|
|
9015
9015
|
role: "row",
|
|
9016
9016
|
className: "kf-trip-directory-flow__row",
|
|
9017
9017
|
"data-dimming": derived.dimming === "none" ? void 0 : derived.dimming,
|
|
9018
|
-
style:
|
|
9018
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
9019
9019
|
children: [
|
|
9020
9020
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
9021
9021
|
"td",
|
|
@@ -9134,8 +9134,8 @@ function TripResultsListBody({
|
|
|
9134
9134
|
hasActiveFilter,
|
|
9135
9135
|
onRetry
|
|
9136
9136
|
}) {
|
|
9137
|
-
const { t } =
|
|
9138
|
-
const { makeTripsFetch } =
|
|
9137
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9138
|
+
const { makeTripsFetch } = chunkHTIY33UH_cjs.useAgencyTrips();
|
|
9139
9139
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
9140
9140
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
9141
9141
|
const Row = TripRowComponent ?? TripRow;
|
|
@@ -9146,7 +9146,7 @@ function TripResultsListBody({
|
|
|
9146
9146
|
setErrorCode(void 0);
|
|
9147
9147
|
return page;
|
|
9148
9148
|
} catch (error) {
|
|
9149
|
-
setErrorCode(
|
|
9149
|
+
setErrorCode(chunk6WV5VYT2_cjs.classifyError(error).code ?? "unknown");
|
|
9150
9150
|
return { rows: [], nextCursor: void 0 };
|
|
9151
9151
|
} finally {
|
|
9152
9152
|
setHasSettled(true);
|
|
@@ -9154,7 +9154,7 @@ function TripResultsListBody({
|
|
|
9154
9154
|
},
|
|
9155
9155
|
[makeTripsFetch, filters]
|
|
9156
9156
|
);
|
|
9157
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
9157
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkHTIY33UH_cjs.usePaginatedList(fetch);
|
|
9158
9158
|
const isLoading = !hasSettled;
|
|
9159
9159
|
const reportedCount = isLoading || errorCode !== void 0 ? void 0 : rows.length;
|
|
9160
9160
|
react.useEffect(() => {
|
|
@@ -9256,7 +9256,7 @@ function TripSearchInput({
|
|
|
9256
9256
|
debounceMs,
|
|
9257
9257
|
onDebouncedChange
|
|
9258
9258
|
}) {
|
|
9259
|
-
const { t } =
|
|
9259
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9260
9260
|
const [value, setValue] = react.useState("");
|
|
9261
9261
|
react.useEffect(() => {
|
|
9262
9262
|
const timer = setTimeout(() => onDebouncedChange(value.trim()), debounceMs);
|
|
@@ -9326,7 +9326,7 @@ function TripDirectoryFlow({
|
|
|
9326
9326
|
components,
|
|
9327
9327
|
style
|
|
9328
9328
|
}) {
|
|
9329
|
-
const { t } =
|
|
9329
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9330
9330
|
const [eventType, setEventType] = react.useState(initialEventType ?? "TRIP");
|
|
9331
9331
|
const [segment, setSegment] = react.useState("all");
|
|
9332
9332
|
const [q, setQ] = react.useState("");
|
|
@@ -9346,7 +9346,7 @@ function TripDirectoryFlow({
|
|
|
9346
9346
|
);
|
|
9347
9347
|
const filterKey = react.useMemo(() => JSON.stringify(filters), [filters]);
|
|
9348
9348
|
const hasActiveFilter = segment !== "all" || q.length > 0 || status !== void 0;
|
|
9349
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow", style:
|
|
9349
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
9350
9350
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow__toolbar", children: [
|
|
9351
9351
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow__toolbar-row", children: [
|
|
9352
9352
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -9607,7 +9607,7 @@ function KindIcon({
|
|
|
9607
9607
|
return /* @__PURE__ */ jsxRuntime.jsx(GenericFileIcon, {});
|
|
9608
9608
|
}
|
|
9609
9609
|
function DocumentRow({ row, onOpen }) {
|
|
9610
|
-
const { t } =
|
|
9610
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9611
9611
|
const { file, spend } = row;
|
|
9612
9612
|
const purged = file.status === "purged";
|
|
9613
9613
|
const retention = retentionStateOf(file);
|
|
@@ -9668,7 +9668,7 @@ function DocumentsSkeleton() {
|
|
|
9668
9668
|
] }, id)) });
|
|
9669
9669
|
}
|
|
9670
9670
|
function DocumentsEmpty() {
|
|
9671
|
-
const { t } =
|
|
9671
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9672
9672
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", children: [
|
|
9673
9673
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-documents-section__state-mark", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(EmptyDocumentsIcon, {}) }),
|
|
9674
9674
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t("chrome.tripDocuments.emptyTitle") }),
|
|
@@ -9676,7 +9676,7 @@ function DocumentsEmpty() {
|
|
|
9676
9676
|
] });
|
|
9677
9677
|
}
|
|
9678
9678
|
function DocumentsFailed({ onRetry }) {
|
|
9679
|
-
const { t } =
|
|
9679
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9680
9680
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", role: "alert", children: [
|
|
9681
9681
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t("chrome.tripDocuments.failedTitle") }),
|
|
9682
9682
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__state-body", children: t("chrome.tripDocuments.failedBody") }),
|
|
@@ -9684,7 +9684,7 @@ function DocumentsFailed({ onRetry }) {
|
|
|
9684
9684
|
] });
|
|
9685
9685
|
}
|
|
9686
9686
|
function DocumentsDark({ reason }) {
|
|
9687
|
-
const { t } =
|
|
9687
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9688
9688
|
if (reason === "mode") return null;
|
|
9689
9689
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", "data-dark": reason, children: [
|
|
9690
9690
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t(
|
|
@@ -9707,7 +9707,7 @@ function DocumentViewer({
|
|
|
9707
9707
|
failed,
|
|
9708
9708
|
onClose
|
|
9709
9709
|
}) {
|
|
9710
|
-
const { t } =
|
|
9710
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9711
9711
|
const titleId = react.useId();
|
|
9712
9712
|
const { file } = row;
|
|
9713
9713
|
const classKey = retentionClassLabelKey(file.retentionClass);
|
|
@@ -9788,7 +9788,7 @@ function DocumentViewer({
|
|
|
9788
9788
|
);
|
|
9789
9789
|
}
|
|
9790
9790
|
function PurposeChips({ counts, value, onChange }) {
|
|
9791
|
-
const { t } =
|
|
9791
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9792
9792
|
const options = [
|
|
9793
9793
|
{
|
|
9794
9794
|
key: "all",
|
|
@@ -9858,7 +9858,7 @@ function UploadDialog({
|
|
|
9858
9858
|
onClose,
|
|
9859
9859
|
onSubmit
|
|
9860
9860
|
}) {
|
|
9861
|
-
const { t } =
|
|
9861
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
9862
9862
|
const titleId = react.useId();
|
|
9863
9863
|
const nameId = react.useId();
|
|
9864
9864
|
const fileId = react.useId();
|
|
@@ -10020,12 +10020,12 @@ function UploadDialog({
|
|
|
10020
10020
|
);
|
|
10021
10021
|
}
|
|
10022
10022
|
function TripDocumentsSection({ tripRef, style }) {
|
|
10023
|
-
const { t } =
|
|
10024
|
-
const files =
|
|
10025
|
-
const expenses =
|
|
10026
|
-
const bookings =
|
|
10027
|
-
const { listTripManifest } =
|
|
10028
|
-
const { statuses, loaded: capabilityLoaded } =
|
|
10023
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10024
|
+
const files = chunk6WV5VYT2_cjs.useFiles({ tripRef });
|
|
10025
|
+
const expenses = chunk6WV5VYT2_cjs.useExpenses(tripRef);
|
|
10026
|
+
const bookings = chunkHTIY33UH_cjs.useBookings(tripRef);
|
|
10027
|
+
const { listTripManifest } = chunkHTIY33UH_cjs.useDirectories();
|
|
10028
|
+
const { statuses, loaded: capabilityLoaded } = chunkHTIY33UH_cjs.useCapabilityStatuses(tripRef);
|
|
10029
10029
|
const capability = statuses.get("files");
|
|
10030
10030
|
const [state, setState] = react.useState({ kind: "loading" });
|
|
10031
10031
|
const [purpose, setPurpose] = react.useState(null);
|
|
@@ -10172,7 +10172,7 @@ function TripDocumentsSection({ tripRef, style }) {
|
|
|
10172
10172
|
if (capabilityLoaded && capability === "mode-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "mode" });
|
|
10173
10173
|
if (capabilityLoaded && capability === "flag-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "flag" });
|
|
10174
10174
|
if (capabilityLoaded && capability === "data-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "data" });
|
|
10175
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-documents-section", style:
|
|
10175
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-documents-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
10176
10176
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__head", children: [
|
|
10177
10177
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__head-text", children: [
|
|
10178
10178
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-documents-section__title", children: t("chrome.tripDocuments.panelLabel") }),
|
|
@@ -10461,7 +10461,7 @@ function ExpensesSkeleton() {
|
|
|
10461
10461
|
] }, id)) });
|
|
10462
10462
|
}
|
|
10463
10463
|
function ExpensesEmpty({ onLog }) {
|
|
10464
|
-
const { t } =
|
|
10464
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10465
10465
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__state", children: [
|
|
10466
10466
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(WalletIcon, {}) }),
|
|
10467
10467
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-expenses-section__state-title", children: t("chrome.tripExpenses.emptyTitle") }),
|
|
@@ -10470,7 +10470,7 @@ function ExpensesEmpty({ onLog }) {
|
|
|
10470
10470
|
] });
|
|
10471
10471
|
}
|
|
10472
10472
|
function ExpensesFailed({ onRetry }) {
|
|
10473
|
-
const { t } =
|
|
10473
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10474
10474
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__state", role: "alert", children: [
|
|
10475
10475
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-expenses-section__state-title", children: t("chrome.tripExpenses.failedTitle") }),
|
|
10476
10476
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-expenses-section__state-body", children: t("chrome.tripExpenses.failedBody") }),
|
|
@@ -10478,7 +10478,7 @@ function ExpensesFailed({ onRetry }) {
|
|
|
10478
10478
|
] });
|
|
10479
10479
|
}
|
|
10480
10480
|
function ExpensesDark({ reason }) {
|
|
10481
|
-
const { t } =
|
|
10481
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10482
10482
|
if (reason === "mode") {
|
|
10483
10483
|
return null;
|
|
10484
10484
|
}
|
|
@@ -10499,7 +10499,7 @@ function ExpensesTable({
|
|
|
10499
10499
|
onVoid,
|
|
10500
10500
|
onViewReceipt
|
|
10501
10501
|
}) {
|
|
10502
|
-
const { t } =
|
|
10502
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10503
10503
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-expenses-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-expenses-section__table", children: [
|
|
10504
10504
|
/* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripExpenses.tableCaption") }),
|
|
10505
10505
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
@@ -10559,7 +10559,7 @@ function LogExpenseDialog({
|
|
|
10559
10559
|
onClose,
|
|
10560
10560
|
onSubmit
|
|
10561
10561
|
}) {
|
|
10562
|
-
const { t } =
|
|
10562
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10563
10563
|
const titleId = react.useId();
|
|
10564
10564
|
const [category, setCategory] = react.useState("MISC");
|
|
10565
10565
|
const [amount, setAmount] = react.useState("");
|
|
@@ -10722,9 +10722,9 @@ function ReceiptDialog({
|
|
|
10722
10722
|
description,
|
|
10723
10723
|
onClose
|
|
10724
10724
|
}) {
|
|
10725
|
-
const { t } =
|
|
10725
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10726
10726
|
const titleId = react.useId();
|
|
10727
|
-
const files =
|
|
10727
|
+
const files = chunk6WV5VYT2_cjs.useFiles({ tripRef });
|
|
10728
10728
|
const [phase, setPhase] = react.useState({ kind: "loading" });
|
|
10729
10729
|
const [imageBroke, setImageBroke] = react.useState(false);
|
|
10730
10730
|
const readUrl = files.url;
|
|
@@ -10798,7 +10798,7 @@ function VoidExpenseDialog({
|
|
|
10798
10798
|
onClose,
|
|
10799
10799
|
onSubmit
|
|
10800
10800
|
}) {
|
|
10801
|
-
const { t } =
|
|
10801
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10802
10802
|
const titleId = react.useId();
|
|
10803
10803
|
const [reason, setReason] = react.useState("");
|
|
10804
10804
|
const trimmed = reason.trim();
|
|
@@ -10872,9 +10872,9 @@ function isCloseoutLocked2(error) {
|
|
|
10872
10872
|
return classification?.status === 423 || classification?.code === "TRIP_CLOSED_OUT";
|
|
10873
10873
|
}
|
|
10874
10874
|
function TripExpensesSection({ tripRef, style }) {
|
|
10875
|
-
const { t } =
|
|
10876
|
-
const expenses =
|
|
10877
|
-
const vendors =
|
|
10875
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
10876
|
+
const expenses = chunk6WV5VYT2_cjs.useExpenses(tripRef);
|
|
10877
|
+
const vendors = chunk6WV5VYT2_cjs.useVendors(tripRef, "");
|
|
10878
10878
|
const [category, setCategory] = react.useState(null);
|
|
10879
10879
|
const [paymentMode, setPaymentMode] = react.useState(null);
|
|
10880
10880
|
const [missingReceiptOnly, setMissingReceiptOnly] = react.useState(false);
|
|
@@ -10943,7 +10943,7 @@ function TripExpensesSection({ tripRef, style }) {
|
|
|
10943
10943
|
return /* @__PURE__ */ jsxRuntime.jsx(ExpensesDark, { reason: expenses.reason });
|
|
10944
10944
|
}
|
|
10945
10945
|
const filtered = category !== null || paymentMode !== null || missingReceiptOnly;
|
|
10946
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-expenses-section", style:
|
|
10946
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-expenses-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
10947
10947
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__toolbar", children: [
|
|
10948
10948
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__toolbar-title", children: t("chrome.tripExpenses.panelLabel") }),
|
|
10949
10949
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__toolbar-spacer" }),
|
|
@@ -11223,7 +11223,7 @@ function FloatMovementDialog({
|
|
|
11223
11223
|
onClose,
|
|
11224
11224
|
onSubmit
|
|
11225
11225
|
}) {
|
|
11226
|
-
const { t } =
|
|
11226
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
11227
11227
|
const titleId = react.useId();
|
|
11228
11228
|
const [managerId, setManagerId] = react.useState(manager?.managerId ?? null);
|
|
11229
11229
|
const [amount, setAmount] = react.useState(
|
|
@@ -11456,7 +11456,7 @@ function FloatSkeleton() {
|
|
|
11456
11456
|
] }, id)) });
|
|
11457
11457
|
}
|
|
11458
11458
|
function FloatEmpty({ onIssue }) {
|
|
11459
|
-
const { t } =
|
|
11459
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
11460
11460
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__state", children: [
|
|
11461
11461
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(SafeIcon, {}) }),
|
|
11462
11462
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-float-section__state-title", children: t("chrome.tripFloat.emptyTitle") }),
|
|
@@ -11465,7 +11465,7 @@ function FloatEmpty({ onIssue }) {
|
|
|
11465
11465
|
] });
|
|
11466
11466
|
}
|
|
11467
11467
|
function FloatFailed({ onRetry }) {
|
|
11468
|
-
const { t } =
|
|
11468
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
11469
11469
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__state", role: "alert", children: [
|
|
11470
11470
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-float-section__state-title", children: t("chrome.tripFloat.failedTitle") }),
|
|
11471
11471
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-float-section__state-body", children: t("chrome.tripFloat.failedBody") }),
|
|
@@ -11473,7 +11473,7 @@ function FloatFailed({ onRetry }) {
|
|
|
11473
11473
|
] });
|
|
11474
11474
|
}
|
|
11475
11475
|
function FloatDark({ reason }) {
|
|
11476
|
-
const { t } =
|
|
11476
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
11477
11477
|
if (reason === "mode") {
|
|
11478
11478
|
return null;
|
|
11479
11479
|
}
|
|
@@ -11496,7 +11496,7 @@ function ManagerFloatCard({
|
|
|
11496
11496
|
onAdjust,
|
|
11497
11497
|
onSettle
|
|
11498
11498
|
}) {
|
|
11499
|
-
const { t } =
|
|
11499
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
11500
11500
|
const bodyId = `kf-float-${row.managerId}`;
|
|
11501
11501
|
const summary = row.summary;
|
|
11502
11502
|
const shares = summary === void 0 ? void 0 : usageShares(summary);
|
|
@@ -11702,9 +11702,9 @@ function refusedBalanceOf(error) {
|
|
|
11702
11702
|
return details?.currentBalanceMinor;
|
|
11703
11703
|
}
|
|
11704
11704
|
function TripFloatSection({ tripRef, style }) {
|
|
11705
|
-
const { t } =
|
|
11706
|
-
const float =
|
|
11707
|
-
const managers =
|
|
11705
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
11706
|
+
const float = chunk6WV5VYT2_cjs.useFloat(tripRef);
|
|
11707
|
+
const managers = chunk6WV5VYT2_cjs.useManagers(tripRef);
|
|
11708
11708
|
const [openManagerId, setOpenManagerId] = react.useState(null);
|
|
11709
11709
|
const [ledgers, setLedgers] = react.useState({});
|
|
11710
11710
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -11830,7 +11830,7 @@ function TripFloatSection({ tripRef, style }) {
|
|
|
11830
11830
|
if (float.status === "dark") {
|
|
11831
11831
|
return /* @__PURE__ */ jsxRuntime.jsx(FloatDark, { reason: float.reason });
|
|
11832
11832
|
}
|
|
11833
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-float-section", style:
|
|
11833
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-float-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
11834
11834
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__toolbar", children: [
|
|
11835
11835
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__toolbar-title", children: t("chrome.tripFloat.panelLabel") }),
|
|
11836
11836
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__toolbar-spacer" }),
|
|
@@ -11945,7 +11945,7 @@ function DispatchDialog({
|
|
|
11945
11945
|
onClose,
|
|
11946
11946
|
onSend
|
|
11947
11947
|
}) {
|
|
11948
|
-
const { t } =
|
|
11948
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
11949
11949
|
const titleId = react.useId();
|
|
11950
11950
|
const [everyone, setEveryone] = react.useState(true);
|
|
11951
11951
|
const [picked, setPicked] = react.useState(/* @__PURE__ */ new Set());
|
|
@@ -12093,7 +12093,7 @@ function FormRow2({
|
|
|
12093
12093
|
onExport,
|
|
12094
12094
|
onOpenMissing
|
|
12095
12095
|
}) {
|
|
12096
|
-
const { t } =
|
|
12096
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12097
12097
|
const canSeeMissing = supportsWhoIsMissing(form);
|
|
12098
12098
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-forms-section__row", children: [
|
|
12099
12099
|
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-trip-forms-section__row-body", children: [
|
|
@@ -12146,14 +12146,14 @@ function FormsSkeleton() {
|
|
|
12146
12146
|
] }, id)) });
|
|
12147
12147
|
}
|
|
12148
12148
|
function FormsEmpty() {
|
|
12149
|
-
const { t } =
|
|
12149
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12150
12150
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", children: [
|
|
12151
12151
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t("chrome.tripForms.emptyTitle") }),
|
|
12152
12152
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-forms-section__state-body", children: t("chrome.tripForms.emptyBody") })
|
|
12153
12153
|
] });
|
|
12154
12154
|
}
|
|
12155
12155
|
function FormsFailed({ onRetry }) {
|
|
12156
|
-
const { t } =
|
|
12156
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12157
12157
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", role: "alert", children: [
|
|
12158
12158
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t("chrome.tripForms.failedTitle") }),
|
|
12159
12159
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-forms-section__state-body", children: t("chrome.tripForms.failedBody") }),
|
|
@@ -12161,7 +12161,7 @@ function FormsFailed({ onRetry }) {
|
|
|
12161
12161
|
] });
|
|
12162
12162
|
}
|
|
12163
12163
|
function FormsDark({ reason }) {
|
|
12164
|
-
const { t } =
|
|
12164
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12165
12165
|
if (reason === "mode") return null;
|
|
12166
12166
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", "data-dark": reason, children: [
|
|
12167
12167
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t(reason === "flag" ? "chrome.tripForms.flagDarkTitle" : "chrome.tripForms.dataDarkTitle") }),
|
|
@@ -12206,7 +12206,7 @@ function OnBehalfDialog({
|
|
|
12206
12206
|
onClose,
|
|
12207
12207
|
onSubmit
|
|
12208
12208
|
}) {
|
|
12209
|
-
const { t } =
|
|
12209
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12210
12210
|
const titleId = react.useId();
|
|
12211
12211
|
const [values, setValues] = react.useState({});
|
|
12212
12212
|
const answerable = react.useMemo(
|
|
@@ -12344,7 +12344,7 @@ function ParticipantRow({
|
|
|
12344
12344
|
onFillOnBehalf,
|
|
12345
12345
|
onOpenResponse
|
|
12346
12346
|
}) {
|
|
12347
|
-
const { t } =
|
|
12347
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12348
12348
|
const status = row.response?.status;
|
|
12349
12349
|
const submitted = status === "SUBMITTED";
|
|
12350
12350
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-forms-section__row", "data-done": submitted ? "true" : void 0, children: [
|
|
@@ -12397,7 +12397,7 @@ function ResponseViewer({
|
|
|
12397
12397
|
failed,
|
|
12398
12398
|
onClose
|
|
12399
12399
|
}) {
|
|
12400
|
-
const { t } =
|
|
12400
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12401
12401
|
const titleId = react.useId();
|
|
12402
12402
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12403
12403
|
SheetDialog,
|
|
@@ -12433,9 +12433,9 @@ function TripFormsSection({
|
|
|
12433
12433
|
components,
|
|
12434
12434
|
style
|
|
12435
12435
|
}) {
|
|
12436
|
-
const { t } =
|
|
12437
|
-
const forms =
|
|
12438
|
-
const { listTripManifest } =
|
|
12436
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12437
|
+
const forms = chunk6WV5VYT2_cjs.useForms(tripRef);
|
|
12438
|
+
const { listTripManifest } = chunkHTIY33UH_cjs.useDirectories();
|
|
12439
12439
|
const [openFormId, setOpenFormId] = react.useState(null);
|
|
12440
12440
|
const [completion, setCompletion] = react.useState(void 0);
|
|
12441
12441
|
const [manifest, setManifest] = react.useState(void 0);
|
|
@@ -12557,7 +12557,7 @@ function TripFormsSection({
|
|
|
12557
12557
|
if (forms.status === "dark") return /* @__PURE__ */ jsxRuntime.jsx(FormsDark, { reason: forms.reason });
|
|
12558
12558
|
const inert = readOnly;
|
|
12559
12559
|
const unreadable = ready !== null && ready.syncedAt === void 0 && rows.length === 0;
|
|
12560
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-forms-section", style:
|
|
12560
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-forms-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
12561
12561
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__head", children: [
|
|
12562
12562
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__head-text", children: [
|
|
12563
12563
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-forms-section__title", children: openForm === null ? t("chrome.tripForms.panelLabel") : openForm.title }),
|
|
@@ -12707,7 +12707,7 @@ function ChangeLogDialog({
|
|
|
12707
12707
|
onRetry,
|
|
12708
12708
|
onClose
|
|
12709
12709
|
}) {
|
|
12710
|
-
const { t } =
|
|
12710
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
12711
12711
|
const titleId = react.useId();
|
|
12712
12712
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12713
12713
|
SheetDialog,
|
|
@@ -13054,7 +13054,7 @@ function ItemRow({
|
|
|
13054
13054
|
onMoveBy,
|
|
13055
13055
|
onOpenVendor
|
|
13056
13056
|
}) {
|
|
13057
|
-
const { t } =
|
|
13057
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13058
13058
|
const derived = deriveItineraryItem(item, timeZone, serverTime);
|
|
13059
13059
|
const isDone = item.status === "COMPLETED";
|
|
13060
13060
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -13176,7 +13176,7 @@ function DayCard({
|
|
|
13176
13176
|
onSwitchToTimeline,
|
|
13177
13177
|
onOpenVendor
|
|
13178
13178
|
}) {
|
|
13179
|
-
const { t } =
|
|
13179
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13180
13180
|
const { draggingId, overIndex, rowProps, moveBy } = useListReorder({
|
|
13181
13181
|
enabled: canEdit,
|
|
13182
13182
|
onMove: onReorder
|
|
@@ -13227,7 +13227,7 @@ function DayCard({
|
|
|
13227
13227
|
] });
|
|
13228
13228
|
}
|
|
13229
13229
|
function DayPillStrip({ pills, activeIso, onSelect }) {
|
|
13230
|
-
const { t } =
|
|
13230
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13231
13231
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13232
13232
|
"div",
|
|
13233
13233
|
{
|
|
@@ -13304,7 +13304,7 @@ function EditDayDialog({
|
|
|
13304
13304
|
onClose,
|
|
13305
13305
|
onSubmit
|
|
13306
13306
|
}) {
|
|
13307
|
-
const { t } =
|
|
13307
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13308
13308
|
const titleId = react.useId();
|
|
13309
13309
|
const [cardTitle, setCardTitle] = react.useState(group.day.cardTitle);
|
|
13310
13310
|
const [hasSummary, setHasSummary] = react.useState(
|
|
@@ -13447,7 +13447,7 @@ function ItemFormDialog({
|
|
|
13447
13447
|
onSubmit,
|
|
13448
13448
|
onDelete
|
|
13449
13449
|
}) {
|
|
13450
|
-
const { t } =
|
|
13450
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13451
13451
|
const titleId = react.useId();
|
|
13452
13452
|
const isEdit = item !== null;
|
|
13453
13453
|
const [isoDate, setIsoDate] = react.useState(
|
|
@@ -13702,7 +13702,7 @@ function ItinerarySkeleton({ view }) {
|
|
|
13702
13702
|
] });
|
|
13703
13703
|
}
|
|
13704
13704
|
function ItineraryEmpty() {
|
|
13705
|
-
const { t } =
|
|
13705
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13706
13706
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__state", children: [
|
|
13707
13707
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(CalendarIcon, {}) }),
|
|
13708
13708
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-itinerary-section__state-title", children: t("chrome.tripItinerary.emptyTitle") }),
|
|
@@ -13710,7 +13710,7 @@ function ItineraryEmpty() {
|
|
|
13710
13710
|
] });
|
|
13711
13711
|
}
|
|
13712
13712
|
function ItineraryFailed({ onRetry }) {
|
|
13713
|
-
const { t } =
|
|
13713
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13714
13714
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__state", role: "alert", children: [
|
|
13715
13715
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-itinerary-section__state-title", children: t("chrome.tripItinerary.failedTitle") }),
|
|
13716
13716
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-itinerary-section__state-body", children: t("chrome.tripItinerary.failedBody") }),
|
|
@@ -13718,7 +13718,7 @@ function ItineraryFailed({ onRetry }) {
|
|
|
13718
13718
|
] });
|
|
13719
13719
|
}
|
|
13720
13720
|
function TimelineView({ entries, onOpenDay }) {
|
|
13721
|
-
const { t } =
|
|
13721
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13722
13722
|
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: "kf-trip-itinerary-section__timeline", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__timeline-grid", children: [
|
|
13723
13723
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__timeline-line", "aria-hidden": "true" }),
|
|
13724
13724
|
entries.map((entry, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -13805,7 +13805,7 @@ var OPTIONS2 = [
|
|
|
13805
13805
|
{ value: "timeline", labelKey: "chrome.tripItinerary.viewTimeline" }
|
|
13806
13806
|
];
|
|
13807
13807
|
function ViewSegment({ value, onChange }) {
|
|
13808
|
-
const { t } =
|
|
13808
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13809
13809
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-itinerary-section__segment", children: [
|
|
13810
13810
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.tripItinerary.viewLabel") }),
|
|
13811
13811
|
OPTIONS2.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -13831,8 +13831,8 @@ function TripItinerarySection({
|
|
|
13831
13831
|
onOpenVendor,
|
|
13832
13832
|
style
|
|
13833
13833
|
}) {
|
|
13834
|
-
const { t } =
|
|
13835
|
-
const itinerary =
|
|
13834
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
13835
|
+
const itinerary = chunk6WV5VYT2_cjs.useItinerary(tripRef);
|
|
13836
13836
|
const [view, setView] = react.useState("days");
|
|
13837
13837
|
const [activeIso, setActiveIso] = react.useState(null);
|
|
13838
13838
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -14005,7 +14005,7 @@ function TripItinerarySection({
|
|
|
14005
14005
|
setActiveIso(isoDate);
|
|
14006
14006
|
setView("days");
|
|
14007
14007
|
}
|
|
14008
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-itinerary-section", style:
|
|
14008
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-itinerary-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
14009
14009
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__toolbar", children: [
|
|
14010
14010
|
/* @__PURE__ */ jsxRuntime.jsx(ViewSegment, { value: view, onChange: setView }),
|
|
14011
14011
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__toolbar-spacer" }),
|
|
@@ -14184,9 +14184,9 @@ function AddTravellerDialog({
|
|
|
14184
14184
|
onClose,
|
|
14185
14185
|
onAdded
|
|
14186
14186
|
}) {
|
|
14187
|
-
const { t } =
|
|
14187
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14188
14188
|
const titleId = react.useId();
|
|
14189
|
-
const { makeTravellersFetch, addTraveller, createAgencyTraveller } =
|
|
14189
|
+
const { makeTravellersFetch, addTraveller, createAgencyTraveller } = chunkHTIY33UH_cjs.useDirectories();
|
|
14190
14190
|
const [mode, setMode] = react.useState("search");
|
|
14191
14191
|
const [term, setTerm] = react.useState("");
|
|
14192
14192
|
const [debounced, setDebounced] = react.useState("");
|
|
@@ -14344,8 +14344,8 @@ function AddTravellerDialog({
|
|
|
14344
14344
|
);
|
|
14345
14345
|
}
|
|
14346
14346
|
function DirectoryResults({ fetch, disabled, onPick }) {
|
|
14347
|
-
const { t } =
|
|
14348
|
-
const { rows, hasNext, loadNext } =
|
|
14347
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14348
|
+
const { rows, hasNext, loadNext } = chunkHTIY33UH_cjs.usePaginatedList(fetch);
|
|
14349
14349
|
if (rows.length === 0) {
|
|
14350
14350
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-manifest-section__dialog-note", children: t("chrome.tripManifest.addNoMatches") });
|
|
14351
14351
|
}
|
|
@@ -14422,9 +14422,9 @@ function EditPartyDialog({
|
|
|
14422
14422
|
onClose,
|
|
14423
14423
|
onSaved
|
|
14424
14424
|
}) {
|
|
14425
|
-
const { t } =
|
|
14425
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14426
14426
|
const titleId = react.useId();
|
|
14427
|
-
const { patchParty, deleteParty } =
|
|
14427
|
+
const { patchParty, deleteParty } = chunkHTIY33UH_cjs.useDirectories();
|
|
14428
14428
|
const party = group.party;
|
|
14429
14429
|
const [kind, setKind] = react.useState(
|
|
14430
14430
|
party?.kind ?? "OTHER"
|
|
@@ -14585,7 +14585,7 @@ function EditPartyDialog({
|
|
|
14585
14585
|
}
|
|
14586
14586
|
var DIET_BUCKET_CAP = 4;
|
|
14587
14587
|
function ManifestFacetTiles({ facets, filtered }) {
|
|
14588
|
-
const { t } =
|
|
14588
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14589
14589
|
const dietEntries = Object.entries(facets.dietCounts).filter(([, count]) => count > 0).sort((a, b) => b[1] - a[1]);
|
|
14590
14590
|
const shown = dietEntries.slice(0, DIET_BUCKET_CAP);
|
|
14591
14591
|
const hiddenCount = dietEntries.length - shown.length;
|
|
@@ -14648,7 +14648,7 @@ function ManifestFiltersPopover({
|
|
|
14648
14648
|
value,
|
|
14649
14649
|
onChange
|
|
14650
14650
|
}) {
|
|
14651
|
-
const { t } =
|
|
14651
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14652
14652
|
const [open, setOpen] = react.useState(false);
|
|
14653
14653
|
const rootRef = react.useRef(null);
|
|
14654
14654
|
const triggerRef = react.useRef(null);
|
|
@@ -14788,7 +14788,7 @@ var KIND_LABEL_KEY2 = {
|
|
|
14788
14788
|
OTHER: "chrome.tripManifest.partyKind.other"
|
|
14789
14789
|
};
|
|
14790
14790
|
function ManifestGroupCard({ group, onEdit, children }) {
|
|
14791
|
-
const { t } =
|
|
14791
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14792
14792
|
const party = group.party;
|
|
14793
14793
|
const isSolo = party === null;
|
|
14794
14794
|
const heading = isSolo ? t("chrome.tripManifest.soloHeading") : party.label ?? t(KIND_LABEL_KEY2[party.kind] ?? "chrome.tripManifest.partyKind.other");
|
|
@@ -14876,7 +14876,7 @@ function ManifestRowKebab({
|
|
|
14876
14876
|
onShareLink,
|
|
14877
14877
|
onOpenProfile
|
|
14878
14878
|
}) {
|
|
14879
|
-
const { t } =
|
|
14879
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14880
14880
|
const [open, setOpen] = react.useState(false);
|
|
14881
14881
|
const rootRef = react.useRef(null);
|
|
14882
14882
|
const triggerRef = react.useRef(null);
|
|
@@ -14975,10 +14975,10 @@ function ManifestRow({
|
|
|
14975
14975
|
onOpenProfile,
|
|
14976
14976
|
style
|
|
14977
14977
|
}) {
|
|
14978
|
-
const { t } =
|
|
14978
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
14979
14979
|
const derived = deriveManifestRow(row, index, serverTime);
|
|
14980
14980
|
const traveller = row.traveller;
|
|
14981
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__row", style:
|
|
14981
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__row", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
14982
14982
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
14983
14983
|
"td",
|
|
14984
14984
|
{
|
|
@@ -15052,7 +15052,7 @@ function ManifestTable({
|
|
|
15052
15052
|
onOpenProfile,
|
|
15053
15053
|
RowComponent
|
|
15054
15054
|
}) {
|
|
15055
|
-
const { t } =
|
|
15055
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15056
15056
|
const Row = RowComponent ?? ManifestRow;
|
|
15057
15057
|
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: [
|
|
15058
15058
|
showHead ? /* @__PURE__ */ jsxRuntime.jsx("thead", { role: "rowgroup", children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__head-row", children: [
|
|
@@ -15099,8 +15099,8 @@ function ManifestResultsBody({
|
|
|
15099
15099
|
RowComponent,
|
|
15100
15100
|
onRetry
|
|
15101
15101
|
}) {
|
|
15102
|
-
const { t } =
|
|
15103
|
-
const { makeManifestFetch, facets, groupedPageSize } =
|
|
15102
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15103
|
+
const { makeManifestFetch, facets, groupedPageSize } = chunkHTIY33UH_cjs.useAgencyTripManifest(tripRef);
|
|
15104
15104
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
15105
15105
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
15106
15106
|
const [serverTime, setServerTime] = react.useState(void 0);
|
|
@@ -15117,7 +15117,7 @@ function ManifestResultsBody({
|
|
|
15117
15117
|
if (meta?.serverTime !== void 0) setServerTime(meta.serverTime);
|
|
15118
15118
|
return page;
|
|
15119
15119
|
} catch (error) {
|
|
15120
|
-
setErrorCode(
|
|
15120
|
+
setErrorCode(chunk6WV5VYT2_cjs.classifyError(error).code ?? "unknown");
|
|
15121
15121
|
return { rows: [], nextCursor: void 0 };
|
|
15122
15122
|
} finally {
|
|
15123
15123
|
setHasSettled(true);
|
|
@@ -15125,7 +15125,7 @@ function ManifestResultsBody({
|
|
|
15125
15125
|
},
|
|
15126
15126
|
[makeManifestFetch, filters, grouped, groupedPageSize]
|
|
15127
15127
|
);
|
|
15128
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
15128
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkHTIY33UH_cjs.usePaginatedList(fetch);
|
|
15129
15129
|
react.useEffect(() => {
|
|
15130
15130
|
onFacetsChange?.(facets);
|
|
15131
15131
|
}, [onFacetsChange, facets]);
|
|
@@ -15268,7 +15268,7 @@ function ManifestSearchInput({
|
|
|
15268
15268
|
debounceMs,
|
|
15269
15269
|
onDebouncedChange
|
|
15270
15270
|
}) {
|
|
15271
|
-
const { t } =
|
|
15271
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15272
15272
|
const [value, setValue] = react.useState("");
|
|
15273
15273
|
react.useEffect(() => {
|
|
15274
15274
|
const timer = setTimeout(() => onDebouncedChange(value.trim()), debounceMs);
|
|
@@ -15295,8 +15295,8 @@ function RemoveTravellerDialog({
|
|
|
15295
15295
|
onClose,
|
|
15296
15296
|
onRemoved
|
|
15297
15297
|
}) {
|
|
15298
|
-
const { t } =
|
|
15299
|
-
const { removeFromManifest } =
|
|
15298
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15299
|
+
const { removeFromManifest } = chunkHTIY33UH_cjs.useDirectories();
|
|
15300
15300
|
const titleId = react.useId();
|
|
15301
15301
|
const [pending, setPending] = react.useState(false);
|
|
15302
15302
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
@@ -15373,11 +15373,11 @@ function ShareLinkDialog({
|
|
|
15373
15373
|
travellerName,
|
|
15374
15374
|
onClose
|
|
15375
15375
|
}) {
|
|
15376
|
-
const { t } =
|
|
15376
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15377
15377
|
const titleId = react.useId();
|
|
15378
15378
|
const isFamily = travellerRef === null;
|
|
15379
|
-
const offerable =
|
|
15380
|
-
const { links, readFailed, mint, revoke, regenerate } =
|
|
15379
|
+
const offerable = chunkHTIY33UH_cjs.familySafeSections(isFamily);
|
|
15380
|
+
const { links, readFailed, mint, revoke, regenerate } = chunkHTIY33UH_cjs.useShareLinks(tripRef, travellerRef);
|
|
15381
15381
|
const [useAgencyDefault, setUseAgencyDefault] = react.useState(true);
|
|
15382
15382
|
const [chosen, setChosen] = react.useState(/* @__PURE__ */ new Set());
|
|
15383
15383
|
const [ttlDays, setTtlDays] = react.useState(null);
|
|
@@ -15616,7 +15616,7 @@ function SideDrawer({
|
|
|
15616
15616
|
"aria-modal": "true",
|
|
15617
15617
|
"aria-labelledby": titleId,
|
|
15618
15618
|
tabIndex: -1,
|
|
15619
|
-
style:
|
|
15619
|
+
style: chunkUALMCHNW_cjs.tokenStyle(style),
|
|
15620
15620
|
children: [
|
|
15621
15621
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-admin-side-drawer__header", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-side-drawer__header-row", children: [
|
|
15622
15622
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-side-drawer__identity", children: [
|
|
@@ -15684,11 +15684,11 @@ function TravellerDetailDialog({
|
|
|
15684
15684
|
onClose,
|
|
15685
15685
|
onRemove
|
|
15686
15686
|
}) {
|
|
15687
|
-
const { t } =
|
|
15687
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15688
15688
|
const titleId = react.useId();
|
|
15689
|
-
const { read, readFailed, refresh } =
|
|
15690
|
-
const forms =
|
|
15691
|
-
const { addTravellerNote } =
|
|
15689
|
+
const { read, readFailed, refresh } = chunk6WV5VYT2_cjs.useTravellerProfile(tripRef, travellerRef);
|
|
15690
|
+
const forms = chunkHTIY33UH_cjs.useTravellerFormResponses(tripRef, travellerRef);
|
|
15691
|
+
const { addTravellerNote } = chunkHTIY33UH_cjs.useDirectories();
|
|
15692
15692
|
const [noteDraft, setNoteDraft] = react.useState("");
|
|
15693
15693
|
const [notePending, setNotePending] = react.useState(false);
|
|
15694
15694
|
const [noteFailed, setNoteFailed] = react.useState(false);
|
|
@@ -15917,7 +15917,7 @@ function DetailRow({
|
|
|
15917
15917
|
absentLabel,
|
|
15918
15918
|
meta
|
|
15919
15919
|
}) {
|
|
15920
|
-
const { t } =
|
|
15920
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15921
15921
|
const has = value !== null && value !== void 0 && value.length > 0;
|
|
15922
15922
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section__detail-row", children: [
|
|
15923
15923
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-manifest-section__detail-label", children: label }),
|
|
@@ -15940,7 +15940,7 @@ function TripManifestSection({
|
|
|
15940
15940
|
components,
|
|
15941
15941
|
style
|
|
15942
15942
|
}) {
|
|
15943
|
-
const { t } =
|
|
15943
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
15944
15944
|
const [q, setQ] = react.useState("");
|
|
15945
15945
|
const [groupBy, setGroupBy] = react.useState("booking_group");
|
|
15946
15946
|
const [filters, setFilters] = react.useState({});
|
|
@@ -15969,7 +15969,7 @@ function TripManifestSection({
|
|
|
15969
15969
|
[groupBy, writeToken, wireFilters]
|
|
15970
15970
|
);
|
|
15971
15971
|
const hasActiveFilter = q.length > 0 || Object.keys(filters).length > 0;
|
|
15972
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section", style:
|
|
15972
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
15973
15973
|
facets === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(ManifestFacetTiles, { facets, filtered: hasActiveFilter }),
|
|
15974
15974
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section__toolbar", children: [
|
|
15975
15975
|
/* @__PURE__ */ jsxRuntime.jsx(ManifestSearchInput, { debounceMs: DEBOUNCE_MS, onDebouncedChange: setQ }),
|
|
@@ -16196,7 +16196,7 @@ function PaymentsSkeleton() {
|
|
|
16196
16196
|
] }, id)) });
|
|
16197
16197
|
}
|
|
16198
16198
|
function PaymentsEmpty({ onRecord }) {
|
|
16199
|
-
const { t } =
|
|
16199
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16200
16200
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__state", children: [
|
|
16201
16201
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(ReceiptIcon, {}) }),
|
|
16202
16202
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-payments-section__state-title", children: t("chrome.tripPayments.emptyTitle") }),
|
|
@@ -16205,7 +16205,7 @@ function PaymentsEmpty({ onRecord }) {
|
|
|
16205
16205
|
] });
|
|
16206
16206
|
}
|
|
16207
16207
|
function PaymentsFailed({ onRetry }) {
|
|
16208
|
-
const { t } =
|
|
16208
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16209
16209
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__state", role: "alert", children: [
|
|
16210
16210
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-payments-section__state-title", children: t("chrome.tripPayments.failedTitle") }),
|
|
16211
16211
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-payments-section__state-body", children: t("chrome.tripPayments.failedBody") }),
|
|
@@ -16213,7 +16213,7 @@ function PaymentsFailed({ onRetry }) {
|
|
|
16213
16213
|
] });
|
|
16214
16214
|
}
|
|
16215
16215
|
function PaymentsDark({ reason }) {
|
|
16216
|
-
const { t } =
|
|
16216
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16217
16217
|
if (reason === "mode") {
|
|
16218
16218
|
return null;
|
|
16219
16219
|
}
|
|
@@ -16234,7 +16234,7 @@ function PaymentsTable({
|
|
|
16234
16234
|
locked,
|
|
16235
16235
|
onVoid
|
|
16236
16236
|
}) {
|
|
16237
|
-
const { t } =
|
|
16237
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16238
16238
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-payments-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-payments-section__table", children: [
|
|
16239
16239
|
/* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripPayments.tableCaption") }),
|
|
16240
16240
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
@@ -16293,7 +16293,7 @@ function RecordPaymentDialog({
|
|
|
16293
16293
|
onClose,
|
|
16294
16294
|
onSubmit
|
|
16295
16295
|
}) {
|
|
16296
|
-
const { t } =
|
|
16296
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16297
16297
|
const titleId = react.useId();
|
|
16298
16298
|
const [travellerId, setTravellerId] = react.useState(null);
|
|
16299
16299
|
const [amount, setAmount] = react.useState("");
|
|
@@ -16468,7 +16468,7 @@ function VoidPaymentDialog({
|
|
|
16468
16468
|
onClose,
|
|
16469
16469
|
onSubmit
|
|
16470
16470
|
}) {
|
|
16471
|
-
const { t } =
|
|
16471
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16472
16472
|
const titleId = react.useId();
|
|
16473
16473
|
const [reason, setReason] = react.useState("");
|
|
16474
16474
|
const trimmed = reason.trim();
|
|
@@ -16546,9 +16546,9 @@ function TripPaymentsSection({
|
|
|
16546
16546
|
balance,
|
|
16547
16547
|
style
|
|
16548
16548
|
}) {
|
|
16549
|
-
const { t } =
|
|
16550
|
-
const collections =
|
|
16551
|
-
const parties =
|
|
16549
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16550
|
+
const collections = chunk6WV5VYT2_cjs.useCollections(tripRef);
|
|
16551
|
+
const parties = chunk6WV5VYT2_cjs.useParties(tripRef);
|
|
16552
16552
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
16553
16553
|
const [pending, setPending] = react.useState(false);
|
|
16554
16554
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
@@ -16628,7 +16628,7 @@ function TripPaymentsSection({
|
|
|
16628
16628
|
}
|
|
16629
16629
|
const currency = balance?.currency ?? rows[0]?.currency ?? "INR";
|
|
16630
16630
|
const owingCount = eligibleRows.filter((row) => row.outstandingMinor > 0).length;
|
|
16631
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-payments-section", style:
|
|
16631
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-payments-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
16632
16632
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__toolbar", children: [
|
|
16633
16633
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__toolbar-title", children: t("chrome.tripPayments.panelLabel") }),
|
|
16634
16634
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__toolbar-spacer" }),
|
|
@@ -16769,7 +16769,7 @@ function AssignTravellerDialog({
|
|
|
16769
16769
|
onSubmit,
|
|
16770
16770
|
onClose
|
|
16771
16771
|
}) {
|
|
16772
|
-
const { t } =
|
|
16772
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16773
16773
|
const titleId = react.useId();
|
|
16774
16774
|
const [pointId, setPointId] = react.useState(stops[0]?.id ?? "");
|
|
16775
16775
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -16840,7 +16840,7 @@ function BoardingRoster({
|
|
|
16840
16840
|
onRetry,
|
|
16841
16841
|
stops
|
|
16842
16842
|
}) {
|
|
16843
|
-
const { t } =
|
|
16843
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16844
16844
|
if (failed) {
|
|
16845
16845
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", role: "alert", children: [
|
|
16846
16846
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.boardingFailedTitle") }),
|
|
@@ -16900,7 +16900,7 @@ function TravellerBoardRow({
|
|
|
16900
16900
|
busy,
|
|
16901
16901
|
onCorrect
|
|
16902
16902
|
}) {
|
|
16903
|
-
const { t } =
|
|
16903
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16904
16904
|
const correctable = occupant.status !== "PENDING";
|
|
16905
16905
|
const next = occupant.status === "BOARDED" ? "NO_SHOW" : "BOARDED";
|
|
16906
16906
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-pickups-section__roster-row", children: [
|
|
@@ -16938,7 +16938,7 @@ function DeleteStopDialog({
|
|
|
16938
16938
|
onDelete,
|
|
16939
16939
|
onClose
|
|
16940
16940
|
}) {
|
|
16941
|
-
const { t } =
|
|
16941
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
16942
16942
|
const titleId = react.useId();
|
|
16943
16943
|
const [target, setTarget] = react.useState(siblings[0]?.id ?? "");
|
|
16944
16944
|
const occupied = stop.expectedCount > 0;
|
|
@@ -17192,7 +17192,7 @@ function PickupsEmpty({
|
|
|
17192
17192
|
kindLabel,
|
|
17193
17193
|
onAdd
|
|
17194
17194
|
}) {
|
|
17195
|
-
const { t } =
|
|
17195
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17196
17196
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", children: [
|
|
17197
17197
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-pickups-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BusIcon, {}) }),
|
|
17198
17198
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.emptyTitle").replace("{kind}", kindLabel) }),
|
|
@@ -17201,7 +17201,7 @@ function PickupsEmpty({
|
|
|
17201
17201
|
] });
|
|
17202
17202
|
}
|
|
17203
17203
|
function PickupsFailed({ onRetry }) {
|
|
17204
|
-
const { t } =
|
|
17204
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17205
17205
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", role: "alert", children: [
|
|
17206
17206
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.failedTitle") }),
|
|
17207
17207
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-pickups-section__state-body", children: t("chrome.tripPickups.failedBody") }),
|
|
@@ -17209,7 +17209,7 @@ function PickupsFailed({ onRetry }) {
|
|
|
17209
17209
|
] });
|
|
17210
17210
|
}
|
|
17211
17211
|
function PickupsDark({ reason }) {
|
|
17212
|
-
const { t } =
|
|
17212
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17213
17213
|
if (reason === "mode") {
|
|
17214
17214
|
return null;
|
|
17215
17215
|
}
|
|
@@ -17243,7 +17243,7 @@ function StopFormDialog({
|
|
|
17243
17243
|
onClose,
|
|
17244
17244
|
onSubmit
|
|
17245
17245
|
}) {
|
|
17246
|
-
const { t } =
|
|
17246
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17247
17247
|
const titleId = react.useId();
|
|
17248
17248
|
const isEdit = stop !== null;
|
|
17249
17249
|
const [kind, setKind] = react.useState(stop?.kind ?? defaultKind);
|
|
@@ -17390,7 +17390,7 @@ function StopFormDialog({
|
|
|
17390
17390
|
);
|
|
17391
17391
|
}
|
|
17392
17392
|
function StopKebab({ stopName, onEdit, onDelete }) {
|
|
17393
|
-
const { t } =
|
|
17393
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17394
17394
|
const [open, setOpen] = react.useState(false);
|
|
17395
17395
|
const rootRef = react.useRef(null);
|
|
17396
17396
|
const triggerRef = react.useRef(null);
|
|
@@ -17467,7 +17467,7 @@ function StopCard({
|
|
|
17467
17467
|
onDelete,
|
|
17468
17468
|
onMoveBy
|
|
17469
17469
|
}) {
|
|
17470
|
-
const { t } =
|
|
17470
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17471
17471
|
const isClosed = stop.status === "CLOSED";
|
|
17472
17472
|
const canReorder = !isClosed;
|
|
17473
17473
|
const percent = boardedPercent(stop);
|
|
@@ -17615,7 +17615,7 @@ function Segment({
|
|
|
17615
17615
|
value,
|
|
17616
17616
|
onChange
|
|
17617
17617
|
}) {
|
|
17618
|
-
const { t } =
|
|
17618
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17619
17619
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-pickups-section__segment", children: [
|
|
17620
17620
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t(legendKey) }),
|
|
17621
17621
|
options.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -17678,8 +17678,8 @@ function TripPickupsSection({
|
|
|
17678
17678
|
tripStartIso,
|
|
17679
17679
|
style
|
|
17680
17680
|
}) {
|
|
17681
|
-
const { t } =
|
|
17682
|
-
const pickups =
|
|
17681
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
17682
|
+
const pickups = chunk6WV5VYT2_cjs.usePickups(tripRef);
|
|
17683
17683
|
const [kind, setKind] = react.useState("PICKUP");
|
|
17684
17684
|
const [view, setView] = react.useState("stops");
|
|
17685
17685
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -17839,7 +17839,7 @@ function TripPickupsSection({
|
|
|
17839
17839
|
const kindLabel = t(
|
|
17840
17840
|
kind === "PICKUP" ? "chrome.tripPickups.kindPickupOne" : "chrome.tripPickups.kindDropOne"
|
|
17841
17841
|
);
|
|
17842
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-pickups-section", style:
|
|
17842
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-pickups-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
17843
17843
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__toolbar", children: [
|
|
17844
17844
|
/* @__PURE__ */ jsxRuntime.jsx(ViewSwitcher, { value: view, onChange: setView }),
|
|
17845
17845
|
/* @__PURE__ */ jsxRuntime.jsx(KindSwitcher, { value: kind, onChange: setKind }),
|
|
@@ -18062,7 +18062,7 @@ function AutoAssignDialog({
|
|
|
18062
18062
|
onApply,
|
|
18063
18063
|
onClose
|
|
18064
18064
|
}) {
|
|
18065
|
-
const { t } =
|
|
18065
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18066
18066
|
const titleId = react.useId();
|
|
18067
18067
|
const [reassignAll, setReassignAll] = react.useState(false);
|
|
18068
18068
|
const roomCodeById = new Map(group.rooms.map((room) => [room.id, room.code]));
|
|
@@ -18157,7 +18157,7 @@ function AutoAssignDialog({
|
|
|
18157
18157
|
/* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section__plan", children: [
|
|
18158
18158
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__plan-title", children: t("chrome.tripRooming.rulesTitle") }),
|
|
18159
18159
|
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "kf-trip-rooming-section__rule-list", children: preview.perRule.map((entry) => {
|
|
18160
|
-
const severity =
|
|
18160
|
+
const severity = chunk6WV5VYT2_cjs.roomingHeuristicSeverity(entry.rule);
|
|
18161
18161
|
const relaxed = entry.outcome === "relaxed";
|
|
18162
18162
|
const violation = relaxed && severity === "never";
|
|
18163
18163
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -18203,7 +18203,7 @@ function DeleteShell({
|
|
|
18203
18203
|
onConfirm,
|
|
18204
18204
|
onClose
|
|
18205
18205
|
}) {
|
|
18206
|
-
const { t } =
|
|
18206
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18207
18207
|
const titleId = react.useId();
|
|
18208
18208
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18209
18209
|
SheetDialog,
|
|
@@ -18249,7 +18249,7 @@ function DeleteRoomDialog({
|
|
|
18249
18249
|
onConfirm,
|
|
18250
18250
|
onClose
|
|
18251
18251
|
}) {
|
|
18252
|
-
const { t } =
|
|
18252
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18253
18253
|
const occupied = room.beds.filter((bed) => bed.occupant !== null).length;
|
|
18254
18254
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18255
18255
|
DeleteShell,
|
|
@@ -18275,7 +18275,7 @@ function DeleteWindowDialog({
|
|
|
18275
18275
|
onConfirm,
|
|
18276
18276
|
onClose
|
|
18277
18277
|
}) {
|
|
18278
|
-
const { t } =
|
|
18278
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18279
18279
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18280
18280
|
DeleteShell,
|
|
18281
18281
|
{
|
|
@@ -18373,15 +18373,15 @@ function roomTypeLabelKey(roomType) {
|
|
|
18373
18373
|
return ROOM_TYPE_LABEL_KEY[roomType] ?? "chrome.tripRooming.roomType.shared";
|
|
18374
18374
|
}
|
|
18375
18375
|
function toneAttrs(tone) {
|
|
18376
|
-
const parsed =
|
|
18376
|
+
const parsed = chunk6WV5VYT2_cjs.parseRoomingTone(tone);
|
|
18377
18377
|
if (parsed === void 0) {
|
|
18378
|
-
return { family:
|
|
18378
|
+
return { family: chunk6WV5VYT2_cjs.TONE_FAMILIES.UNKNOWN, shade: 0 };
|
|
18379
18379
|
}
|
|
18380
|
-
const shade = parsed.shade <
|
|
18380
|
+
const shade = parsed.shade < chunk6WV5VYT2_cjs.SHADES_PER_FAMILY ? parsed.shade : parsed.shade % chunk6WV5VYT2_cjs.SHADES_PER_FAMILY;
|
|
18381
18381
|
return { family: parsed.family, shade };
|
|
18382
18382
|
}
|
|
18383
18383
|
function glyphOf(occupant) {
|
|
18384
|
-
return occupant.glyph === "" ?
|
|
18384
|
+
return occupant.glyph === "" ? chunk6WV5VYT2_cjs.FALLBACK_GLYPH : occupant.glyph;
|
|
18385
18385
|
}
|
|
18386
18386
|
function TravellerGlyph({
|
|
18387
18387
|
occupant,
|
|
@@ -18419,7 +18419,7 @@ var COLLAPSED_COUNT = 10;
|
|
|
18419
18419
|
function IdentityLegend({
|
|
18420
18420
|
occupants
|
|
18421
18421
|
}) {
|
|
18422
|
-
const { t } =
|
|
18422
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18423
18423
|
const [open, setOpen] = react.useState(false);
|
|
18424
18424
|
if (occupants.length === 0) {
|
|
18425
18425
|
return null;
|
|
@@ -18546,7 +18546,7 @@ function RoomFormDialog({
|
|
|
18546
18546
|
onClose,
|
|
18547
18547
|
onSubmit
|
|
18548
18548
|
}) {
|
|
18549
|
-
const { t } =
|
|
18549
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18550
18550
|
const titleId = react.useId();
|
|
18551
18551
|
const isEdit = room !== null;
|
|
18552
18552
|
const [code, setCode] = react.useState(room?.code ?? "");
|
|
@@ -18670,7 +18670,7 @@ function RoomingSkeleton() {
|
|
|
18670
18670
|
] }, id)) });
|
|
18671
18671
|
}
|
|
18672
18672
|
function RoomingEmpty({ onAddWindow }) {
|
|
18673
|
-
const { t } =
|
|
18673
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18674
18674
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__state", children: [
|
|
18675
18675
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BedIcon, {}) }),
|
|
18676
18676
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__state-title", children: t("chrome.tripRooming.emptyTitle") }),
|
|
@@ -18679,7 +18679,7 @@ function RoomingEmpty({ onAddWindow }) {
|
|
|
18679
18679
|
] });
|
|
18680
18680
|
}
|
|
18681
18681
|
function RoomingFailed({ onRetry }) {
|
|
18682
|
-
const { t } =
|
|
18682
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18683
18683
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__state", role: "alert", children: [
|
|
18684
18684
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__state-title", children: t("chrome.tripRooming.failedTitle") }),
|
|
18685
18685
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-rooming-section__state-body", children: t("chrome.tripRooming.failedBody") }),
|
|
@@ -18687,7 +18687,7 @@ function RoomingFailed({ onRetry }) {
|
|
|
18687
18687
|
] });
|
|
18688
18688
|
}
|
|
18689
18689
|
function RoomingDark({ reason }) {
|
|
18690
|
-
const { t } =
|
|
18690
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18691
18691
|
if (reason === "mode") {
|
|
18692
18692
|
return null;
|
|
18693
18693
|
}
|
|
@@ -18702,7 +18702,7 @@ function RoomingDark({ reason }) {
|
|
|
18702
18702
|
] });
|
|
18703
18703
|
}
|
|
18704
18704
|
function RoomKebab({ roomCode, onEdit, onDelete }) {
|
|
18705
|
-
const { t } =
|
|
18705
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18706
18706
|
const [open, setOpen] = react.useState(false);
|
|
18707
18707
|
const rootRef = react.useRef(null);
|
|
18708
18708
|
const triggerRef = react.useRef(null);
|
|
@@ -18767,7 +18767,7 @@ function RoomKebab({ roomCode, onEdit, onDelete }) {
|
|
|
18767
18767
|
] });
|
|
18768
18768
|
}
|
|
18769
18769
|
function RoomCard({ room, drag, busy, onEdit, onDelete }) {
|
|
18770
|
-
const { t } =
|
|
18770
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18771
18771
|
const occupied = room.beds.filter((bed) => bed.occupant !== null).length;
|
|
18772
18772
|
return /* @__PURE__ */ jsxRuntime.jsxs("article", { className: "kf-trip-rooming-section__room", "data-busy": busy ? "true" : void 0, children: [
|
|
18773
18773
|
/* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-trip-rooming-section__room-head", children: [
|
|
@@ -18817,7 +18817,7 @@ function UnassignedStrip({
|
|
|
18817
18817
|
drag,
|
|
18818
18818
|
busy
|
|
18819
18819
|
}) {
|
|
18820
|
-
const { t } =
|
|
18820
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18821
18821
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18822
18822
|
"div",
|
|
18823
18823
|
{
|
|
@@ -18891,7 +18891,7 @@ function WindowAccordion({
|
|
|
18891
18891
|
onEditRoom,
|
|
18892
18892
|
onDeleteRoom
|
|
18893
18893
|
}) {
|
|
18894
|
-
const { t } =
|
|
18894
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
18895
18895
|
const percent = fillPercent(group);
|
|
18896
18896
|
const bodyId = `kf-rooming-window-${group.window.id}`;
|
|
18897
18897
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -19041,7 +19041,7 @@ function WindowFormDialog({
|
|
|
19041
19041
|
onClose,
|
|
19042
19042
|
onSubmit
|
|
19043
19043
|
}) {
|
|
19044
|
-
const { t } =
|
|
19044
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19045
19045
|
const titleId = react.useId();
|
|
19046
19046
|
const isEdit = window !== null;
|
|
19047
19047
|
const [label, setLabel] = react.useState(window?.label ?? "");
|
|
@@ -19154,8 +19154,8 @@ function TripRoomingSection({
|
|
|
19154
19154
|
tripEndIso,
|
|
19155
19155
|
style
|
|
19156
19156
|
}) {
|
|
19157
|
-
const { t } =
|
|
19158
|
-
const rooming =
|
|
19157
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19158
|
+
const rooming = chunk6WV5VYT2_cjs.useRooming(tripRef);
|
|
19159
19159
|
const [openWindowId, setOpenWindowId] = react.useState(null);
|
|
19160
19160
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
19161
19161
|
const [pending, setPending] = react.useState(false);
|
|
@@ -19293,7 +19293,7 @@ function TripRoomingSection({
|
|
|
19293
19293
|
return /* @__PURE__ */ jsxRuntime.jsx(RoomingDark, { reason: rooming.reason });
|
|
19294
19294
|
}
|
|
19295
19295
|
const pool = ready?.unassignedPool;
|
|
19296
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section", style:
|
|
19296
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
19297
19297
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__toolbar", children: [
|
|
19298
19298
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__toolbar-title", children: t("chrome.tripRooming.panelLabel") }),
|
|
19299
19299
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__toolbar-spacer" }),
|
|
@@ -19527,7 +19527,7 @@ function isAgencyAuthored(vendor) {
|
|
|
19527
19527
|
return vendor.externalId.startsWith("kf-");
|
|
19528
19528
|
}
|
|
19529
19529
|
function CategoryTabs({ selected, counts, total, onSelect }) {
|
|
19530
|
-
const { t } =
|
|
19530
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19531
19531
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__chips", children: [
|
|
19532
19532
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
19533
19533
|
"button",
|
|
@@ -19570,7 +19570,7 @@ function DeleteSupplierDialog({
|
|
|
19570
19570
|
onConfirm,
|
|
19571
19571
|
onClose
|
|
19572
19572
|
}) {
|
|
19573
|
-
const { t } =
|
|
19573
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19574
19574
|
const titleId = react.useId();
|
|
19575
19575
|
const blockers = deleteBlockers(usage);
|
|
19576
19576
|
const blockedLocally = blockers !== void 0 && blockers.vehicles + blockers.expenses > 0;
|
|
@@ -19723,7 +19723,7 @@ function SupplierFormDialog({
|
|
|
19723
19723
|
onClose,
|
|
19724
19724
|
onSubmit
|
|
19725
19725
|
}) {
|
|
19726
|
-
const { t } =
|
|
19726
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19727
19727
|
const titleId = react.useId();
|
|
19728
19728
|
const isEdit = supplier !== null;
|
|
19729
19729
|
const [name, setName] = react.useState(supplier?.name ?? "");
|
|
@@ -19845,7 +19845,7 @@ function SuppliersSkeleton() {
|
|
|
19845
19845
|
] }, id)) });
|
|
19846
19846
|
}
|
|
19847
19847
|
function SuppliersEmpty({ onAdd }) {
|
|
19848
|
-
const { t } =
|
|
19848
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19849
19849
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", children: [
|
|
19850
19850
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(StorefrontIcon, {}) }),
|
|
19851
19851
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.emptyTitle") }),
|
|
@@ -19854,7 +19854,7 @@ function SuppliersEmpty({ onAdd }) {
|
|
|
19854
19854
|
] });
|
|
19855
19855
|
}
|
|
19856
19856
|
function SuppliersNoMatch({ onClear }) {
|
|
19857
|
-
const { t } =
|
|
19857
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19858
19858
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", children: [
|
|
19859
19859
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.noMatchTitle") }),
|
|
19860
19860
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-suppliers-section__state-body", children: t("chrome.tripSuppliers.noMatchBody") }),
|
|
@@ -19862,7 +19862,7 @@ function SuppliersNoMatch({ onClear }) {
|
|
|
19862
19862
|
] });
|
|
19863
19863
|
}
|
|
19864
19864
|
function SuppliersFailed({ onRetry }) {
|
|
19865
|
-
const { t } =
|
|
19865
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19866
19866
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", role: "alert", children: [
|
|
19867
19867
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.failedTitle") }),
|
|
19868
19868
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-suppliers-section__state-body", children: t("chrome.tripSuppliers.failedBody") }),
|
|
@@ -19870,7 +19870,7 @@ function SuppliersFailed({ onRetry }) {
|
|
|
19870
19870
|
] });
|
|
19871
19871
|
}
|
|
19872
19872
|
function SuppliersDark({ reason }) {
|
|
19873
|
-
const { t } =
|
|
19873
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19874
19874
|
if (reason === "mode") {
|
|
19875
19875
|
return null;
|
|
19876
19876
|
}
|
|
@@ -19885,7 +19885,7 @@ function SuppliersDark({ reason }) {
|
|
|
19885
19885
|
] });
|
|
19886
19886
|
}
|
|
19887
19887
|
function SupplierKebab({ name, busy, onEdit, onDelete }) {
|
|
19888
|
-
const { t } =
|
|
19888
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19889
19889
|
const [open, setOpen] = react.useState(false);
|
|
19890
19890
|
const rootRef = react.useRef(null);
|
|
19891
19891
|
const triggerRef = react.useRef(null);
|
|
@@ -19952,7 +19952,7 @@ function SupplierKebab({ name, busy, onEdit, onDelete }) {
|
|
|
19952
19952
|
] });
|
|
19953
19953
|
}
|
|
19954
19954
|
function SupplierUsageCell({ usage }) {
|
|
19955
|
-
const { t } =
|
|
19955
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
19956
19956
|
const parts = [];
|
|
19957
19957
|
if (usage.vehicles !== void 0 && usage.vehicles > 0) {
|
|
19958
19958
|
parts.push(
|
|
@@ -19996,7 +19996,7 @@ function SupplierTable({
|
|
|
19996
19996
|
onEdit,
|
|
19997
19997
|
onDelete
|
|
19998
19998
|
}) {
|
|
19999
|
-
const { t } =
|
|
19999
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20000
20000
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-suppliers-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-suppliers-section__table", children: [
|
|
20001
20001
|
/* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripSuppliers.tableCaption") }),
|
|
20002
20002
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
@@ -20064,11 +20064,11 @@ function serverBlockOf(error) {
|
|
|
20064
20064
|
return { vehicles: details.vehicleCount ?? 0, expenses: details.expenseCount ?? 0 };
|
|
20065
20065
|
}
|
|
20066
20066
|
function TripSuppliersSection({ tripRef, style }) {
|
|
20067
|
-
const { t } =
|
|
20068
|
-
const vendors =
|
|
20069
|
-
const seating =
|
|
20070
|
-
const itinerary =
|
|
20071
|
-
const expenses =
|
|
20067
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20068
|
+
const vendors = chunk6WV5VYT2_cjs.useVendors(tripRef, "");
|
|
20069
|
+
const seating = chunk6WV5VYT2_cjs.useSeating(tripRef);
|
|
20070
|
+
const itinerary = chunk6WV5VYT2_cjs.useItinerary(tripRef);
|
|
20071
|
+
const expenses = chunk6WV5VYT2_cjs.useExpenses(tripRef);
|
|
20072
20072
|
const [category, setCategory] = react.useState(null);
|
|
20073
20073
|
const [query, setQuery] = react.useState("");
|
|
20074
20074
|
const [sortKey, setSortKey] = react.useState("name");
|
|
@@ -20151,7 +20151,7 @@ function TripSuppliersSection({ tripRef, style }) {
|
|
|
20151
20151
|
return /* @__PURE__ */ jsxRuntime.jsx(SuppliersDark, { reason: vendors.reason });
|
|
20152
20152
|
}
|
|
20153
20153
|
const filtered = category !== null || query.trim() !== "";
|
|
20154
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-suppliers-section", style:
|
|
20154
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-suppliers-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
20155
20155
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__toolbar", children: [
|
|
20156
20156
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__toolbar-title", children: t("chrome.tripSuppliers.panelLabel") }),
|
|
20157
20157
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__toolbar-spacer" }),
|
|
@@ -20290,7 +20290,7 @@ function AutoAssignDialog2({
|
|
|
20290
20290
|
onApply,
|
|
20291
20291
|
onClose
|
|
20292
20292
|
}) {
|
|
20293
|
-
const { t } =
|
|
20293
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20294
20294
|
const titleId = react.useId();
|
|
20295
20295
|
const [reassignAll, setReassignAll] = react.useState(false);
|
|
20296
20296
|
const [genderAdjacency, setGenderAdjacency] = react.useState("AVOID_UNRELATED");
|
|
@@ -20452,7 +20452,7 @@ function DayFilter({
|
|
|
20452
20452
|
countByDay,
|
|
20453
20453
|
onSelect
|
|
20454
20454
|
}) {
|
|
20455
|
-
const { t } =
|
|
20455
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20456
20456
|
const days = Array.from({ length: durationDays }, (_unused, index) => index);
|
|
20457
20457
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__days", children: [
|
|
20458
20458
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__days-label", children: t("chrome.tripVehicles.showDay") }),
|
|
@@ -20585,7 +20585,7 @@ function DeleteVehicleDialog({
|
|
|
20585
20585
|
onConfirm,
|
|
20586
20586
|
onClose
|
|
20587
20587
|
}) {
|
|
20588
|
-
const { t } =
|
|
20588
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20589
20589
|
const titleId = react.useId();
|
|
20590
20590
|
const released = occupantsOf(vehicle).length;
|
|
20591
20591
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -20762,7 +20762,7 @@ function ManagerLinkDialog({
|
|
|
20762
20762
|
onClose,
|
|
20763
20763
|
onSubmit
|
|
20764
20764
|
}) {
|
|
20765
|
-
const { t } =
|
|
20765
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20766
20766
|
const titleId = react.useId();
|
|
20767
20767
|
const [chosen, setChosen] = react.useState(null);
|
|
20768
20768
|
const demotedFrom = chosen === null ? void 0 : managerVehicleByRef.get(chosen);
|
|
@@ -20839,7 +20839,7 @@ function UnassignedStrip2({
|
|
|
20839
20839
|
drag,
|
|
20840
20840
|
busy
|
|
20841
20841
|
}) {
|
|
20842
|
-
const { t } =
|
|
20842
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20843
20843
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
20844
20844
|
"div",
|
|
20845
20845
|
{
|
|
@@ -20906,7 +20906,7 @@ function OccupantRoster({
|
|
|
20906
20906
|
variant,
|
|
20907
20907
|
emptyKey
|
|
20908
20908
|
}) {
|
|
20909
|
-
const { t } =
|
|
20909
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20910
20910
|
const target = { containerId: vehicleId, slotLabel: "" };
|
|
20911
20911
|
const isOver = drag.overSlot !== null && drag.overSlot.containerId === vehicleId && drag.overSlot.slotLabel === "";
|
|
20912
20912
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -20950,7 +20950,7 @@ function OccupantRoster({
|
|
|
20950
20950
|
);
|
|
20951
20951
|
}
|
|
20952
20952
|
function SeatTile({ seat, vehicleId, drag, busy }) {
|
|
20953
|
-
const { t } =
|
|
20953
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
20954
20954
|
const target = { containerId: vehicleId, slotLabel: seat.seatLabel };
|
|
20955
20955
|
const isOver = drag.overSlot !== null && drag.overSlot.containerId === target.containerId && drag.overSlot.slotLabel === target.slotLabel;
|
|
20956
20956
|
const occupant = seat.occupant;
|
|
@@ -21013,7 +21013,7 @@ function VehicleKebab({
|
|
|
21013
21013
|
onUnlinkManager,
|
|
21014
21014
|
onDelete
|
|
21015
21015
|
}) {
|
|
21016
|
-
const { t } =
|
|
21016
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21017
21017
|
const [open, setOpen] = react.useState(false);
|
|
21018
21018
|
const rootRef = react.useRef(null);
|
|
21019
21019
|
const triggerRef = react.useRef(null);
|
|
@@ -21123,7 +21123,7 @@ function VehicleCard({
|
|
|
21123
21123
|
onUnlinkManager,
|
|
21124
21124
|
onDelete
|
|
21125
21125
|
}) {
|
|
21126
|
-
const { t } =
|
|
21126
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21127
21127
|
const percent = fillPercent2(vehicle);
|
|
21128
21128
|
const days = daysLabel(vehicle.days);
|
|
21129
21129
|
const bodyId = `kf-vehicle-${vehicle.id}`;
|
|
@@ -21258,7 +21258,7 @@ function VehicleDaysDialog({
|
|
|
21258
21258
|
onClose,
|
|
21259
21259
|
onSubmit
|
|
21260
21260
|
}) {
|
|
21261
|
-
const { t } =
|
|
21261
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21262
21262
|
const titleId = react.useId();
|
|
21263
21263
|
const [selected, setSelected] = react.useState(vehicle.days);
|
|
21264
21264
|
const wholeTrip = selected.length === 0;
|
|
@@ -21357,7 +21357,7 @@ function VehicleFormDialog({
|
|
|
21357
21357
|
onClose,
|
|
21358
21358
|
onSubmit
|
|
21359
21359
|
}) {
|
|
21360
|
-
const { t } =
|
|
21360
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21361
21361
|
const titleId = react.useId();
|
|
21362
21362
|
const isEdit = vehicle !== null;
|
|
21363
21363
|
const [regNo, setRegNo] = react.useState(vehicle?.regNo ?? "");
|
|
@@ -21552,7 +21552,7 @@ function VehiclesSkeleton() {
|
|
|
21552
21552
|
] }, id)) });
|
|
21553
21553
|
}
|
|
21554
21554
|
function VehiclesEmpty({ onAddVehicle }) {
|
|
21555
|
-
const { t } =
|
|
21555
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21556
21556
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__state", children: [
|
|
21557
21557
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BusIcon2, {}) }),
|
|
21558
21558
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-vehicles-section__state-title", children: t("chrome.tripVehicles.emptyTitle") }),
|
|
@@ -21561,7 +21561,7 @@ function VehiclesEmpty({ onAddVehicle }) {
|
|
|
21561
21561
|
] });
|
|
21562
21562
|
}
|
|
21563
21563
|
function VehiclesFailed({ onRetry }) {
|
|
21564
|
-
const { t } =
|
|
21564
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21565
21565
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__state", role: "alert", children: [
|
|
21566
21566
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-vehicles-section__state-title", children: t("chrome.tripVehicles.failedTitle") }),
|
|
21567
21567
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-vehicles-section__state-body", children: t("chrome.tripVehicles.failedBody") }),
|
|
@@ -21569,7 +21569,7 @@ function VehiclesFailed({ onRetry }) {
|
|
|
21569
21569
|
] });
|
|
21570
21570
|
}
|
|
21571
21571
|
function VehiclesDark({ reason }) {
|
|
21572
|
-
const { t } =
|
|
21572
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21573
21573
|
if (reason === "mode") {
|
|
21574
21574
|
return null;
|
|
21575
21575
|
}
|
|
@@ -21592,9 +21592,9 @@ function TripVehiclesSection({
|
|
|
21592
21592
|
durationDays,
|
|
21593
21593
|
style
|
|
21594
21594
|
}) {
|
|
21595
|
-
const { t } =
|
|
21596
|
-
const seating =
|
|
21597
|
-
const managers =
|
|
21595
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
21596
|
+
const seating = chunk6WV5VYT2_cjs.useSeating(tripRef);
|
|
21597
|
+
const managers = chunk6WV5VYT2_cjs.useManagers(tripRef);
|
|
21598
21598
|
const [openVehicleId, setOpenVehicleId] = react.useState(null);
|
|
21599
21599
|
const [day, setDay] = react.useState(null);
|
|
21600
21600
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -21728,7 +21728,7 @@ function TripVehiclesSection({
|
|
|
21728
21728
|
return /* @__PURE__ */ jsxRuntime.jsx(VehiclesDark, { reason: seating.reason });
|
|
21729
21729
|
}
|
|
21730
21730
|
const pool = ready?.unassignedPool;
|
|
21731
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-vehicles-section", style:
|
|
21731
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-vehicles-section", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
21732
21732
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__toolbar", children: [
|
|
21733
21733
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__toolbar-title", children: t("chrome.tripVehicles.panelLabel") }),
|
|
21734
21734
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__toolbar-spacer" }),
|
|
@@ -22021,7 +22021,7 @@ function WarningIcon13(props) {
|
|
|
22021
22021
|
|
|
22022
22022
|
// src/admin/composite/office/TripWorkspace/internal/panels/deriveCloseout.ts
|
|
22023
22023
|
function tabForBlocker(row) {
|
|
22024
|
-
return
|
|
22024
|
+
return chunkHTIY33UH_cjs.resolveBlockerDeepLink({ actionKey: row.actionKey })?.tab;
|
|
22025
22025
|
}
|
|
22026
22026
|
function orderedBlockers(rows) {
|
|
22027
22027
|
return [...rows].sort((a, b) => {
|
|
@@ -22061,8 +22061,8 @@ function codeOf11(error) {
|
|
|
22061
22061
|
return classification?.code ?? "unknown";
|
|
22062
22062
|
}
|
|
22063
22063
|
function CloseoutCard({ tripRef, onOpenTab, litTabs }) {
|
|
22064
|
-
const { t } =
|
|
22065
|
-
const closeout =
|
|
22064
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22065
|
+
const closeout = chunk6WV5VYT2_cjs.useCloseout(tripRef);
|
|
22066
22066
|
const [note, setNote] = react.useState(null);
|
|
22067
22067
|
const [pending, setPending] = react.useState(void 0);
|
|
22068
22068
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
@@ -22269,7 +22269,7 @@ function AssignManagerDialog({
|
|
|
22269
22269
|
onClose,
|
|
22270
22270
|
onAssign
|
|
22271
22271
|
}) {
|
|
22272
|
-
const { t } =
|
|
22272
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22273
22273
|
const titleId = react.useId();
|
|
22274
22274
|
const [query, setQuery] = react.useState("");
|
|
22275
22275
|
const [selected, setSelected] = react.useState(null);
|
|
@@ -22401,8 +22401,8 @@ var ROLE_LABEL_KEY = {
|
|
|
22401
22401
|
COORDINATOR: "chrome.tripWorkspace.managers.roleCoordinator"
|
|
22402
22402
|
};
|
|
22403
22403
|
function OverviewManagersCard({ trip, onChanged }) {
|
|
22404
|
-
const { t } =
|
|
22405
|
-
const { promoteManager, assignManager, unassignManager, makeManagersFetch } =
|
|
22404
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22405
|
+
const { promoteManager, assignManager, unassignManager, makeManagersFetch } = chunkHTIY33UH_cjs.useDirectories();
|
|
22406
22406
|
const [pendingId, setPendingId] = react.useState(void 0);
|
|
22407
22407
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
22408
22408
|
const [assignOpen, setAssignOpen] = react.useState(false);
|
|
@@ -22563,13 +22563,13 @@ function TripOverviewPanel({
|
|
|
22563
22563
|
onOpenTab,
|
|
22564
22564
|
onTripChanged
|
|
22565
22565
|
}) {
|
|
22566
|
-
const { t } =
|
|
22567
|
-
const today =
|
|
22568
|
-
const expenses =
|
|
22566
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22567
|
+
const today = chunk6WV5VYT2_cjs.useManagerToday(trip.ref);
|
|
22568
|
+
const expenses = chunk6WV5VYT2_cjs.useExpenses(trip.ref);
|
|
22569
22569
|
const spendTotalMinor = expenses.status === "ready" && expenses.totals.loaded && !expenses.totals.lastFetchFailed ? expenses.totals.spendTotalMinor : void 0;
|
|
22570
22570
|
const finance = deriveFinance(trip, spendTotalMinor);
|
|
22571
22571
|
const quickActions = QUICK_ACTION_TABS.filter((key) => litTabs.has(key));
|
|
22572
|
-
const closeoutProbe =
|
|
22572
|
+
const closeoutProbe = chunk6WV5VYT2_cjs.useCloseout(trip.ref);
|
|
22573
22573
|
const closeoutStage = closeoutProbe.status === "ready" && hasReturned(closeoutProbe.aggregate) ? closeoutProbe.aggregate?.stage ?? null : null;
|
|
22574
22574
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__overview", children: [
|
|
22575
22575
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__overview-main", children: [
|
|
@@ -22608,7 +22608,7 @@ function TripOverviewPanel({
|
|
|
22608
22608
|
function TodayCard({
|
|
22609
22609
|
today
|
|
22610
22610
|
}) {
|
|
22611
|
-
const { t } =
|
|
22611
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22612
22612
|
if (today.kind === "idle") return null;
|
|
22613
22613
|
const openChecklist = today.checklist ?? [];
|
|
22614
22614
|
const itinerary = today.itinerary ?? [];
|
|
@@ -22632,7 +22632,7 @@ function TodayCard({
|
|
|
22632
22632
|
function FinanceCard({
|
|
22633
22633
|
finance
|
|
22634
22634
|
}) {
|
|
22635
|
-
const { t } =
|
|
22635
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22636
22636
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-workspace__card", children: [
|
|
22637
22637
|
/* @__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") }) }),
|
|
22638
22638
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__finance-body", children: [
|
|
@@ -22896,7 +22896,7 @@ var BLOCKER_BODY_KEY = {
|
|
|
22896
22896
|
capabilityDark: "chrome.tripWorkspace.blocker.capabilityDarkBody"
|
|
22897
22897
|
};
|
|
22898
22898
|
function TripTabPlaceholder({ tabKey, blocker }) {
|
|
22899
|
-
const { t } =
|
|
22899
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22900
22900
|
const label = t(TAB_LABEL_KEY[tabKey]);
|
|
22901
22901
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__placeholder", children: [
|
|
22902
22902
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-workspace__placeholder-glyph", children: blocker === "deferred" ? /* @__PURE__ */ jsxRuntime.jsx(ClockIcon2, {}) : /* @__PURE__ */ jsxRuntime.jsx(LockIcon11, {}) }),
|
|
@@ -22906,7 +22906,7 @@ function TripTabPlaceholder({ tabKey, blocker }) {
|
|
|
22906
22906
|
] });
|
|
22907
22907
|
}
|
|
22908
22908
|
function TripKpiStrip({ cells }) {
|
|
22909
|
-
const { t } =
|
|
22909
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22910
22910
|
if (cells.length === 0) return null;
|
|
22911
22911
|
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: [
|
|
22912
22912
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace__kpi-label", children: t(cell.labelKey) }),
|
|
@@ -22915,7 +22915,7 @@ function TripKpiStrip({ cells }) {
|
|
|
22915
22915
|
] }, cell.key)) });
|
|
22916
22916
|
}
|
|
22917
22917
|
function TripTabRail({ tabs, activeKey, onSelect }) {
|
|
22918
|
-
const { t } =
|
|
22918
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22919
22919
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
22920
22920
|
"div",
|
|
22921
22921
|
{
|
|
@@ -22953,7 +22953,7 @@ var STATUS_LABEL_KEY9 = {
|
|
|
22953
22953
|
CANCELLED: "chrome.tripDirectory.status.cancelled"
|
|
22954
22954
|
};
|
|
22955
22955
|
function TripWorkspaceHead({ trip, onBack, style }) {
|
|
22956
|
-
const { t } =
|
|
22956
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
22957
22957
|
const head = deriveTripHead(trip);
|
|
22958
22958
|
const subLabelParts = [
|
|
22959
22959
|
head.dateRangeLabel,
|
|
@@ -22964,7 +22964,7 @@ function TripWorkspaceHead({ trip, onBack, style }) {
|
|
|
22964
22964
|
trip.manifestCount === 1 ? "chrome.tripWorkspace.travellerCountOne" : "chrome.tripWorkspace.travellerCount"
|
|
22965
22965
|
).replace("{count}", String(trip.manifestCount))
|
|
22966
22966
|
];
|
|
22967
|
-
return /* @__PURE__ */ jsxRuntime.jsx("header", { className: "kf-trip-workspace__head", style:
|
|
22967
|
+
return /* @__PURE__ */ jsxRuntime.jsx("header", { className: "kf-trip-workspace__head", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__head-identity", children: [
|
|
22968
22968
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__eyebrow", children: [
|
|
22969
22969
|
onBack === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(
|
|
22970
22970
|
"button",
|
|
@@ -23004,10 +23004,10 @@ function TripWorkspace({
|
|
|
23004
23004
|
components,
|
|
23005
23005
|
style
|
|
23006
23006
|
}) {
|
|
23007
|
-
const { t } =
|
|
23008
|
-
const { read, readFailed, refresh } =
|
|
23007
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
23008
|
+
const { read, readFailed, refresh } = chunkHTIY33UH_cjs.useAgencyTrip(tripRef);
|
|
23009
23009
|
if (readFailed) {
|
|
23010
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style:
|
|
23010
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__status-block", role: "alert", children: [
|
|
23011
23011
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon13, { className: "kf-trip-workspace__status-icon" }),
|
|
23012
23012
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-workspace__status-title", children: t("chrome.tripWorkspace.errorTitle") }),
|
|
23013
23013
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-workspace__status-body", children: t("chrome.tripWorkspace.errorBody") }),
|
|
@@ -23023,7 +23023,7 @@ function TripWorkspace({
|
|
|
23023
23023
|
] }) });
|
|
23024
23024
|
}
|
|
23025
23025
|
if (read === void 0) {
|
|
23026
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style:
|
|
23026
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunkUALMCHNW_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TripWorkspaceSkeleton, {}) });
|
|
23027
23027
|
}
|
|
23028
23028
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
23029
23029
|
TripWorkspaceBody,
|
|
@@ -23051,7 +23051,7 @@ function TripWorkspaceBody({
|
|
|
23051
23051
|
components,
|
|
23052
23052
|
style
|
|
23053
23053
|
}) {
|
|
23054
|
-
const { statuses, loaded } =
|
|
23054
|
+
const { statuses, loaded } = chunkHTIY33UH_cjs.useCapabilityStatuses(tripRef);
|
|
23055
23055
|
const Head = components?.TripWorkspaceHead ?? TripWorkspaceHead;
|
|
23056
23056
|
const tabs = react.useMemo(() => resolveTripTabs(trip.eventType, statuses), [trip.eventType, statuses]);
|
|
23057
23057
|
const [requestedTab, setRequestedTab] = react.useState(initialTab ?? "overview");
|
|
@@ -23135,7 +23135,7 @@ function TripWorkspaceBody({
|
|
|
23135
23135
|
}),
|
|
23136
23136
|
[trip, litTabs, tripRef, onTripChanged, onOpenTravellerProfile]
|
|
23137
23137
|
);
|
|
23138
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace", style:
|
|
23138
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
23139
23139
|
/* @__PURE__ */ jsxRuntime.jsx(Head, { trip, ...onBack !== void 0 ? { onBack } : {} }),
|
|
23140
23140
|
/* @__PURE__ */ jsxRuntime.jsx(TripKpiStrip, { cells: kpis }),
|
|
23141
23141
|
loaded ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -23332,7 +23332,7 @@ function AdminShell({
|
|
|
23332
23332
|
function renderNavIcon(iconKey) {
|
|
23333
23333
|
return NavIcon !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx(NavIcon, { iconKey }) : navIcon(iconKey);
|
|
23334
23334
|
}
|
|
23335
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell", style:
|
|
23335
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell", style: chunkUALMCHNW_cjs.tokenStyle(style), children: [
|
|
23336
23336
|
/* @__PURE__ */ jsxRuntime.jsxs("aside", { className: "kf-admin-shell__sidebar", children: [
|
|
23337
23337
|
brand !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell__brand", children: [
|
|
23338
23338
|
brand.logo !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shell__brand-logo", children: brand.logo }) : null,
|
|
@@ -23436,7 +23436,7 @@ function AdminShell({
|
|
|
23436
23436
|
] });
|
|
23437
23437
|
}
|
|
23438
23438
|
function KaafilAgencyWorkspace(props) {
|
|
23439
|
-
const session =
|
|
23439
|
+
const session = chunkUALMCHNW_cjs.useSession();
|
|
23440
23440
|
if (session.status !== "authenticated") {
|
|
23441
23441
|
return null;
|
|
23442
23442
|
}
|
|
@@ -23461,8 +23461,8 @@ function ReadyKaafilAgencyWorkspace(props) {
|
|
|
23461
23461
|
components,
|
|
23462
23462
|
style
|
|
23463
23463
|
} = props;
|
|
23464
|
-
const { t } =
|
|
23465
|
-
const agencyAdminMe =
|
|
23464
|
+
const { t } = chunkUALMCHNW_cjs.useKaafilChrome();
|
|
23465
|
+
const agencyAdminMe = chunkHTIY33UH_cjs.useAgencyAdminMe();
|
|
23466
23466
|
const [internalPane, setInternalPane] = react.useState(
|
|
23467
23467
|
initialPane ?? "trips"
|
|
23468
23468
|
);
|
|
@@ -23723,27 +23723,27 @@ function ReadyKaafilAgencyWorkspace(props) {
|
|
|
23723
23723
|
|
|
23724
23724
|
Object.defineProperty(exports, "BootErrorScreen", {
|
|
23725
23725
|
enumerable: true,
|
|
23726
|
-
get: function () { return
|
|
23726
|
+
get: function () { return chunkYNHOPYBK_cjs.BootErrorScreen; }
|
|
23727
23727
|
});
|
|
23728
23728
|
Object.defineProperty(exports, "LockedTripScreen", {
|
|
23729
23729
|
enumerable: true,
|
|
23730
|
-
get: function () { return
|
|
23730
|
+
get: function () { return chunkYNHOPYBK_cjs.LockedTripScreen; }
|
|
23731
23731
|
});
|
|
23732
23732
|
Object.defineProperty(exports, "NotFoundScreen", {
|
|
23733
23733
|
enumerable: true,
|
|
23734
|
-
get: function () { return
|
|
23734
|
+
get: function () { return chunkYNHOPYBK_cjs.NotFoundScreen; }
|
|
23735
23735
|
});
|
|
23736
23736
|
Object.defineProperty(exports, "OfflineFallbackScreen", {
|
|
23737
23737
|
enumerable: true,
|
|
23738
|
-
get: function () { return
|
|
23738
|
+
get: function () { return chunkYNHOPYBK_cjs.OfflineFallbackScreen; }
|
|
23739
23739
|
});
|
|
23740
23740
|
Object.defineProperty(exports, "PlanLockedScreen", {
|
|
23741
23741
|
enumerable: true,
|
|
23742
|
-
get: function () { return
|
|
23742
|
+
get: function () { return chunkYNHOPYBK_cjs.PlanLockedScreen; }
|
|
23743
23743
|
});
|
|
23744
23744
|
Object.defineProperty(exports, "SessionExpiredScreen", {
|
|
23745
23745
|
enumerable: true,
|
|
23746
|
-
get: function () { return
|
|
23746
|
+
get: function () { return chunkYNHOPYBK_cjs.SessionExpiredScreen; }
|
|
23747
23747
|
});
|
|
23748
23748
|
exports.AdminShell = AdminShell;
|
|
23749
23749
|
exports.AgencySettingsScreen = AgencySettingsScreen;
|