kaafil-react-uikit 0.10.0 → 0.10.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +53 -0
- package/dist/admin/index.cjs +360 -360
- package/dist/admin/index.js +5 -5
- package/dist/{chunk-APE4R2GB.cjs → chunk-2OWH2KDY.cjs} +83 -83
- package/dist/{chunk-APE4R2GB.cjs.map → chunk-2OWH2KDY.cjs.map} +1 -1
- package/dist/{chunk-E6SI2S3L.cjs → chunk-3AF2M2JD.cjs} +17 -17
- package/dist/{chunk-E6SI2S3L.cjs.map → chunk-3AF2M2JD.cjs.map} +1 -1
- package/dist/{chunk-AJEZMD64.cjs → chunk-64R4ZJTA.cjs} +12 -12
- package/dist/{chunk-AJEZMD64.cjs.map → chunk-64R4ZJTA.cjs.map} +1 -1
- package/dist/{chunk-ZVADVALQ.js → chunk-7752B4NM.js} +3 -3
- package/dist/{chunk-ZVADVALQ.js.map → chunk-7752B4NM.js.map} +1 -1
- package/dist/{chunk-WMBFBZ7Q.js → chunk-7V2XJIXD.js} +7 -4
- package/dist/chunk-7V2XJIXD.js.map +1 -0
- package/dist/{chunk-OXCVTVBY.js → chunk-AFWZFFEM.js} +7 -6
- package/dist/chunk-AFWZFFEM.js.map +1 -0
- package/dist/{chunk-LYCN2BOH.cjs → chunk-AJE2RNOR.cjs} +4 -4
- package/dist/{chunk-LYCN2BOH.cjs.map → chunk-AJE2RNOR.cjs.map} +1 -1
- package/dist/{chunk-X5EFVCYF.cjs → chunk-F4GGHUMX.cjs} +57 -56
- package/dist/chunk-F4GGHUMX.cjs.map +1 -0
- package/dist/{chunk-UMLJEBQV.js → chunk-K5Z6N2FY.js} +5 -5
- package/dist/{chunk-UMLJEBQV.js.map → chunk-K5Z6N2FY.js.map} +1 -1
- package/dist/{chunk-VAUGZOY6.js → chunk-KV7ODN2X.js} +3 -3
- package/dist/{chunk-VAUGZOY6.js.map → chunk-KV7ODN2X.js.map} +1 -1
- package/dist/{chunk-BKDKXM3L.cjs → chunk-NCHZLGEE.cjs} +9 -9
- package/dist/{chunk-BKDKXM3L.cjs.map → chunk-NCHZLGEE.cjs.map} +1 -1
- package/dist/{chunk-P5HF55MO.cjs → chunk-S53XNHRU.cjs} +7 -4
- package/dist/chunk-S53XNHRU.cjs.map +1 -0
- package/dist/{chunk-U2443I5Q.js → chunk-TGP4GTIY.js} +3 -3
- package/dist/{chunk-U2443I5Q.js.map → chunk-TGP4GTIY.js.map} +1 -1
- package/dist/{chunk-2HGOHUFU.js → chunk-UUID3H4R.js} +3 -3
- package/dist/{chunk-2HGOHUFU.js.map → chunk-UUID3H4R.js.map} +1 -1
- package/dist/{chunk-IDKRXLMY.js → chunk-VCROLPO3.js} +3 -3
- package/dist/{chunk-IDKRXLMY.js.map → chunk-VCROLPO3.js.map} +1 -1
- package/dist/chunk-ZZK7USFC.cjs +12 -0
- package/dist/{chunk-PHVQIIOI.cjs.map → chunk-ZZK7USFC.cjs.map} +1 -1
- package/dist/core/index.cjs +107 -107
- package/dist/core/index.js +10 -10
- package/dist/manager/index.cjs +256 -256
- package/dist/manager/index.js +6 -6
- package/dist/traveller/index.cjs +44 -37
- package/dist/traveller/index.cjs.map +1 -1
- package/dist/traveller/index.js +14 -7
- package/dist/traveller/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-OXCVTVBY.js.map +0 -1
- package/dist/chunk-P5HF55MO.cjs.map +0 -1
- package/dist/chunk-PHVQIIOI.cjs +0 -12
- package/dist/chunk-WMBFBZ7Q.js.map +0 -1
- package/dist/chunk-X5EFVCYF.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 chunkF4GGHUMX_cjs = require('../chunk-F4GGHUMX.cjs');
|
|
4
|
+
var chunk2OWH2KDY_cjs = require('../chunk-2OWH2KDY.cjs');
|
|
5
|
+
require('../chunk-AJE2RNOR.cjs');
|
|
6
|
+
var chunk64R4ZJTA_cjs = require('../chunk-64R4ZJTA.cjs');
|
|
7
|
+
var chunkS53XNHRU_cjs = require('../chunk-S53XNHRU.cjs');
|
|
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: chunkS53XNHRU_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: chunkS53XNHRU_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: chunkS53XNHRU_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 = chunkS53XNHRU_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 } = chunkS53XNHRU_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: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
637
637
|
/* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-agency-settings-screen__panel-head", children: [
|
|
638
638
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__panel-head-copy", children: [
|
|
639
639
|
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: "kf-agency-settings-screen__panel-eyebrow", children: [
|
|
@@ -1000,7 +1000,7 @@ function orderSectionsByCustomized(sections, isCustomized) {
|
|
|
1000
1000
|
];
|
|
1001
1001
|
}
|
|
1002
1002
|
function AgencySettingsScreen(props) {
|
|
1003
|
-
const session =
|
|
1003
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
1004
1004
|
if (session.status !== "authenticated") {
|
|
1005
1005
|
return null;
|
|
1006
1006
|
}
|
|
@@ -1012,8 +1012,8 @@ function ReadyAgencySettingsScreen({
|
|
|
1012
1012
|
components,
|
|
1013
1013
|
style
|
|
1014
1014
|
}) {
|
|
1015
|
-
const { t } =
|
|
1016
|
-
const { document: document2, loaded, lastFetchFailed, refresh, patchSettings } =
|
|
1015
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
1016
|
+
const { document: document2, loaded, lastFetchFailed, refresh, patchSettings } = chunkF4GGHUMX_cjs.useAgencySettings();
|
|
1017
1017
|
const [selectedSectionId, setSelectedSectionId] = react.useState(AGENCY_SETTINGS_SECTIONS[0]?.id);
|
|
1018
1018
|
const [savingSectionId, setSavingSectionId] = react.useState(void 0);
|
|
1019
1019
|
const [sectionError, setSectionError] = react.useState(void 0);
|
|
@@ -1030,13 +1030,13 @@ function ReadyAgencySettingsScreen({
|
|
|
1030
1030
|
try {
|
|
1031
1031
|
await patchSettings({ version: document2.version, [sectionId]: patch });
|
|
1032
1032
|
} catch (error) {
|
|
1033
|
-
const kind =
|
|
1033
|
+
const kind = chunk2OWH2KDY_cjs.classifyError(error).code === "CONFLICT_VERSION" ? "conflict" : "failed";
|
|
1034
1034
|
setSectionError({ sectionId, kind });
|
|
1035
1035
|
} finally {
|
|
1036
1036
|
setSavingSectionId(void 0);
|
|
1037
1037
|
}
|
|
1038
1038
|
}
|
|
1039
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen", style:
|
|
1039
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
1040
1040
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-agency-settings-screen__heading", children: [
|
|
1041
1041
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-agency-settings-screen__eyebrow", children: t("chrome.agencySettingsScreen.eyebrow") }),
|
|
1042
1042
|
/* @__PURE__ */ jsxRuntime.jsx("h1", { className: "kf-agency-settings-screen__title", children: title }),
|
|
@@ -1153,7 +1153,7 @@ function summaryFor(t, selected, everyLabelKey, optionLabelKey) {
|
|
|
1153
1153
|
return selected.length === 0 ? t(everyLabelKey) : selected.map(optionLabelKey).join(", ");
|
|
1154
1154
|
}
|
|
1155
1155
|
function AutoAttachPanel({ template, saving, onSave }) {
|
|
1156
|
-
const { t } =
|
|
1156
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
1157
1157
|
const titleId = react.useId();
|
|
1158
1158
|
const [dialogOpen, setDialogOpen] = react.useState(false);
|
|
1159
1159
|
const [draft, setDraft] = react.useState(() => draftFromTemplate(template));
|
|
@@ -1389,9 +1389,9 @@ function TemplateEditorHeader({
|
|
|
1389
1389
|
onPublish,
|
|
1390
1390
|
style
|
|
1391
1391
|
}) {
|
|
1392
|
-
const { t } =
|
|
1392
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
1393
1393
|
const statusLabelKey5 = template.status === "PUBLISHED" ? "chrome.checklistTemplateEditor.status.published" : "chrome.checklistTemplateEditor.status.draft";
|
|
1394
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header", style:
|
|
1394
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
1395
1395
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header-identity", children: [
|
|
1396
1396
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__header-top", children: [
|
|
1397
1397
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1460,7 +1460,7 @@ function TemplateItemEditDialog({
|
|
|
1460
1460
|
onRemove,
|
|
1461
1461
|
onClose
|
|
1462
1462
|
}) {
|
|
1463
|
-
const { t } =
|
|
1463
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
1464
1464
|
const titleId = react.useId();
|
|
1465
1465
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1466
1466
|
SheetDialog,
|
|
@@ -1610,7 +1610,7 @@ function TemplateItemRow({
|
|
|
1610
1610
|
onReorder,
|
|
1611
1611
|
style
|
|
1612
1612
|
}) {
|
|
1613
|
-
const { t } =
|
|
1613
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
1614
1614
|
const dayOffset = item.dayOffset.trim().length > 0 ? Number.parseInt(item.dayOffset, 10) : null;
|
|
1615
1615
|
const dayLabel = dayOffset === null ? "\u2014" : dayOffset > 0 ? `D+${dayOffset}` : `D${dayOffset}`;
|
|
1616
1616
|
return (
|
|
@@ -1638,7 +1638,7 @@ function TemplateItemRow({
|
|
|
1638
1638
|
onReorder(draggedDraftId, item.draftId);
|
|
1639
1639
|
}
|
|
1640
1640
|
},
|
|
1641
|
-
style:
|
|
1641
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
1642
1642
|
children: [
|
|
1643
1643
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__item-drag", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(DragHandleIcon, {}) }),
|
|
1644
1644
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__item-index", children: String(index + 1).padStart(2, "0") }),
|
|
@@ -1710,8 +1710,8 @@ function ChecklistTemplateEditor({
|
|
|
1710
1710
|
components,
|
|
1711
1711
|
style
|
|
1712
1712
|
}) {
|
|
1713
|
-
const { t } =
|
|
1714
|
-
const { templates, loaded, lastFetchFailed, refresh, patchTemplate, publishTemplate } =
|
|
1713
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
1714
|
+
const { templates, loaded, lastFetchFailed, refresh, patchTemplate, publishTemplate } = chunkF4GGHUMX_cjs.useAgencyChecklistTemplates();
|
|
1715
1715
|
const template = templates.find((candidate) => candidate.id === templateId);
|
|
1716
1716
|
const [title, setTitle] = react.useState("");
|
|
1717
1717
|
const [items, setItems] = react.useState([]);
|
|
@@ -1828,7 +1828,7 @@ function ChecklistTemplateEditor({
|
|
|
1828
1828
|
}
|
|
1829
1829
|
};
|
|
1830
1830
|
if (lastFetchFailed && !loaded) {
|
|
1831
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style:
|
|
1831
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", role: "alert", children: [
|
|
1832
1832
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon2, { className: "kf-checklist-template-editor__status-icon kf-checklist-template-editor__status-icon--danger" }),
|
|
1833
1833
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-editor__status-title", children: t("chrome.checklistTemplateEditor.errorTitle") }),
|
|
1834
1834
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1843,20 +1843,20 @@ function ChecklistTemplateEditor({
|
|
|
1843
1843
|
] }) });
|
|
1844
1844
|
}
|
|
1845
1845
|
if (!loaded) {
|
|
1846
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style:
|
|
1846
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__skeleton", "aria-hidden": "true", children: [
|
|
1847
1847
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" }),
|
|
1848
1848
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" }),
|
|
1849
1849
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-checklist-template-editor__skeleton-block" })
|
|
1850
1850
|
] }) });
|
|
1851
1851
|
}
|
|
1852
1852
|
if (template === void 0) {
|
|
1853
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style:
|
|
1853
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-checklist-template-editor", "data-framed": "true", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor__status-block", children: [
|
|
1854
1854
|
/* @__PURE__ */ jsxRuntime.jsx(EmptyStateIcon2, { className: "kf-checklist-template-editor__status-icon" }),
|
|
1855
1855
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-editor__status-title", children: t("chrome.checklistTemplateEditor.notFoundTitle") })
|
|
1856
1856
|
] }) });
|
|
1857
1857
|
}
|
|
1858
1858
|
const editingItem = items.find((item) => item.draftId === editingDraftId);
|
|
1859
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor", style:
|
|
1859
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-editor", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
1860
1860
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1861
1861
|
TemplateEditorHeader2,
|
|
1862
1862
|
{
|
|
@@ -1959,7 +1959,7 @@ var AUDIENCE_HINT_KEY = {
|
|
|
1959
1959
|
EXTERNAL: "chrome.checklistTemplateLibrary.audience.externalHint"
|
|
1960
1960
|
};
|
|
1961
1961
|
function CreateTemplateSheet({ onSubmit, onClose }) {
|
|
1962
|
-
const { t } =
|
|
1962
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
1963
1963
|
const titleId = react.useId();
|
|
1964
1964
|
const [locale, setLocale] = react.useState("en");
|
|
1965
1965
|
const [title, setTitle] = react.useState("");
|
|
@@ -2076,7 +2076,7 @@ function DeleteTemplateConfirmSheet({
|
|
|
2076
2076
|
onConfirm,
|
|
2077
2077
|
onClose
|
|
2078
2078
|
}) {
|
|
2079
|
-
const { t } =
|
|
2079
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
2080
2080
|
const titleId = react.useId();
|
|
2081
2081
|
if (template === void 0) {
|
|
2082
2082
|
return null;
|
|
@@ -2195,7 +2195,7 @@ function TemplateRow({
|
|
|
2195
2195
|
onDelete,
|
|
2196
2196
|
style
|
|
2197
2197
|
}) {
|
|
2198
|
-
const { t } =
|
|
2198
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
2199
2199
|
const statusLabelKey5 = template.status === "PUBLISHED" ? "chrome.checklistTemplateLibrary.status.published" : "chrome.checklistTemplateLibrary.status.draft";
|
|
2200
2200
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2201
2201
|
"tr",
|
|
@@ -2204,7 +2204,7 @@ function TemplateRow({
|
|
|
2204
2204
|
className: "kf-checklist-template-library__table-row",
|
|
2205
2205
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
2206
2206
|
"data-selected": selected === true ? "true" : void 0,
|
|
2207
|
-
style:
|
|
2207
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
2208
2208
|
children: [
|
|
2209
2209
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2210
2210
|
"td",
|
|
@@ -2294,7 +2294,7 @@ function TemplateLibrarySkeleton() {
|
|
|
2294
2294
|
] }, rowIndex)) }) }) });
|
|
2295
2295
|
}
|
|
2296
2296
|
function CardHeading({ count }) {
|
|
2297
|
-
const { t } =
|
|
2297
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
2298
2298
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-checklist-template-library__card-title", children: t(
|
|
2299
2299
|
count === 1 ? "chrome.checklistTemplateLibrary.countLabelOne" : "chrome.checklistTemplateLibrary.countLabel"
|
|
2300
2300
|
).replace("{count}", String(count)) });
|
|
@@ -2310,8 +2310,8 @@ function ChecklistTemplateLibrary({
|
|
|
2310
2310
|
components,
|
|
2311
2311
|
style
|
|
2312
2312
|
}) {
|
|
2313
|
-
const { t } =
|
|
2314
|
-
const { templates, loaded, lastFetchFailed, refresh, createTemplate, removeTemplate } =
|
|
2313
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
2314
|
+
const { templates, loaded, lastFetchFailed, refresh, createTemplate, removeTemplate } = chunkF4GGHUMX_cjs.useAgencyChecklistTemplates();
|
|
2315
2315
|
const isControlled = controlledCreating !== void 0 && onCreatingChange !== void 0;
|
|
2316
2316
|
const [internalCreating, setInternalCreating] = react.useState(false);
|
|
2317
2317
|
const creating = isControlled ? controlledCreating : internalCreating;
|
|
@@ -2347,7 +2347,7 @@ function ChecklistTemplateLibrary({
|
|
|
2347
2347
|
]
|
|
2348
2348
|
}
|
|
2349
2349
|
);
|
|
2350
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library", style:
|
|
2350
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
2351
2351
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library__heading", children: [
|
|
2352
2352
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-checklist-template-library__heading-copy", children: [
|
|
2353
2353
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-checklist-template-library__title", children: title }),
|
|
@@ -2642,8 +2642,8 @@ function BuilderHeader({
|
|
|
2642
2642
|
pending,
|
|
2643
2643
|
style
|
|
2644
2644
|
}) {
|
|
2645
|
-
const { t } =
|
|
2646
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header", style:
|
|
2645
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
2646
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
2647
2647
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header-identity", children: [
|
|
2648
2648
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__header-top", children: [
|
|
2649
2649
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2839,7 +2839,7 @@ var fallback = {
|
|
|
2839
2839
|
preview: ({ field }) => /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-form-builder__preview-unsupported", children: field.label }),
|
|
2840
2840
|
configFields: NoConfigFields
|
|
2841
2841
|
};
|
|
2842
|
-
var fieldRegistry =
|
|
2842
|
+
var fieldRegistry = chunkS53XNHRU_cjs.createRegistry({ fallback });
|
|
2843
2843
|
fieldRegistry.register("HEADING", {
|
|
2844
2844
|
preview: ({ field }) => /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-form-builder__preview-heading", children: field.label }),
|
|
2845
2845
|
configFields: NoConfigFields
|
|
@@ -3311,7 +3311,7 @@ fieldRegistry.register("ADDRESS", {
|
|
|
3311
3311
|
}
|
|
3312
3312
|
});
|
|
3313
3313
|
function FieldEditDialog(props) {
|
|
3314
|
-
const { t } =
|
|
3314
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
3315
3315
|
const titleId = react.useId();
|
|
3316
3316
|
const { bindings, saving, onClose } = props;
|
|
3317
3317
|
const isEdit = props.mode === "edit";
|
|
@@ -3548,7 +3548,7 @@ function FieldEditDialog(props) {
|
|
|
3548
3548
|
);
|
|
3549
3549
|
}
|
|
3550
3550
|
function LivePreviewPane({ title, sections, fields }) {
|
|
3551
|
-
const { t } =
|
|
3551
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
3552
3552
|
const [frame, setFrame] = react.useState("desktop");
|
|
3553
3553
|
const [answers, setAnswers] = react.useState({});
|
|
3554
3554
|
function setAnswer(fieldId, value) {
|
|
@@ -3637,7 +3637,7 @@ function FieldRow({
|
|
|
3637
3637
|
onDragEnd,
|
|
3638
3638
|
style
|
|
3639
3639
|
}) {
|
|
3640
|
-
const { t } =
|
|
3640
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
3641
3641
|
const hasHelp = field.helpText !== null && field.helpText.length > 0;
|
|
3642
3642
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3643
3643
|
"li",
|
|
@@ -3645,7 +3645,7 @@ function FieldRow({
|
|
|
3645
3645
|
className: "kf-form-builder__field-row",
|
|
3646
3646
|
"data-dragging": dragging ? "true" : void 0,
|
|
3647
3647
|
"data-drag-over": dragOver ? "true" : void 0,
|
|
3648
|
-
style:
|
|
3648
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
3649
3649
|
onDragOver: (event) => {
|
|
3650
3650
|
event.preventDefault();
|
|
3651
3651
|
onDragOverRow();
|
|
@@ -3707,7 +3707,7 @@ function SectionBlock({
|
|
|
3707
3707
|
onOpenField,
|
|
3708
3708
|
onReorderField
|
|
3709
3709
|
}) {
|
|
3710
|
-
const { t } =
|
|
3710
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
3711
3711
|
const [title, setTitle] = react.useState(section.title ?? "");
|
|
3712
3712
|
const [draggedFieldId, setDraggedFieldId] = react.useState(void 0);
|
|
3713
3713
|
const [dragOverFieldId, setDragOverFieldId] = react.useState(void 0);
|
|
@@ -3841,7 +3841,7 @@ function draftFromForm(form) {
|
|
|
3841
3841
|
};
|
|
3842
3842
|
}
|
|
3843
3843
|
function TargetingSummary({ form }) {
|
|
3844
|
-
const { t } =
|
|
3844
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
3845
3845
|
const anchorLabel = (anchor) => t(`chrome.formBuilder.summary.anchor.${anchor}`);
|
|
3846
3846
|
const eventTypes = form.appliesToEventTypes.length === 0 ? t("chrome.formBuilder.summary.everyEventType") : form.appliesToEventTypes.map((type) => t(`chrome.formBuilder.targeting.eventType.${type}`)).join(" \xB7 ");
|
|
3847
3847
|
const tripModes = form.appliesToTripModes.length === 0 ? t("chrome.formBuilder.summary.everyTripMode") : form.appliesToTripModes.map((mode) => t(`chrome.formBuilder.targeting.tripMode.${mode}`)).join(" \xB7 ");
|
|
@@ -3902,7 +3902,7 @@ function TargetingSummary({ form }) {
|
|
|
3902
3902
|
] }, cell.key)) });
|
|
3903
3903
|
}
|
|
3904
3904
|
function TargetingPanel({ form, saving, onSave }) {
|
|
3905
|
-
const { t } =
|
|
3905
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
3906
3906
|
const [editing, setEditing] = react.useState(false);
|
|
3907
3907
|
const [submitted, setSubmitted] = react.useState(false);
|
|
3908
3908
|
const [draft, setDraft] = react.useState(() => draftFromForm(form));
|
|
@@ -4198,7 +4198,7 @@ function buildReorderSections(sections, fieldsBySection) {
|
|
|
4198
4198
|
}));
|
|
4199
4199
|
}
|
|
4200
4200
|
function FormBuilder({ formId, onBack, components, style }) {
|
|
4201
|
-
const { t } =
|
|
4201
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
4202
4202
|
const {
|
|
4203
4203
|
getForm,
|
|
4204
4204
|
patchForm,
|
|
@@ -4216,7 +4216,7 @@ function FormBuilder({ formId, onBack, components, style }) {
|
|
|
4216
4216
|
deleteField,
|
|
4217
4217
|
reorderForm,
|
|
4218
4218
|
listBindings
|
|
4219
|
-
} =
|
|
4219
|
+
} = chunkF4GGHUMX_cjs.useAgencyForms();
|
|
4220
4220
|
const [form, setForm] = react.useState(void 0);
|
|
4221
4221
|
const [loadFailed, setLoadFailed] = react.useState(false);
|
|
4222
4222
|
const [bindings, setBindings] = react.useState([]);
|
|
@@ -4427,7 +4427,7 @@ function FormBuilder({ formId, onBack, components, style }) {
|
|
|
4427
4427
|
}
|
|
4428
4428
|
}
|
|
4429
4429
|
if (loadFailed && form === void 0) {
|
|
4430
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style:
|
|
4430
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__status-block", role: "alert", children: [
|
|
4431
4431
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon4, { className: "kf-form-builder__status-icon kf-form-builder__status-icon--danger" }),
|
|
4432
4432
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-form-builder__status-title", children: t("chrome.formBuilder.errorTitle") }),
|
|
4433
4433
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -4442,13 +4442,13 @@ function FormBuilder({ formId, onBack, components, style }) {
|
|
|
4442
4442
|
] }) });
|
|
4443
4443
|
}
|
|
4444
4444
|
if (form === void 0) {
|
|
4445
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style:
|
|
4445
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-form-builder", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder__skeleton", "aria-hidden": "true", children: [
|
|
4446
4446
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" }),
|
|
4447
4447
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" }),
|
|
4448
4448
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-form-builder__skeleton-block" })
|
|
4449
4449
|
] }) });
|
|
4450
4450
|
}
|
|
4451
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder", style:
|
|
4451
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-form-builder", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
4452
4452
|
onBack !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", onClick: onBack, className: "kf-form-builder__back-link", children: [
|
|
4453
4453
|
/* @__PURE__ */ jsxRuntime.jsx(BackIcon, {}),
|
|
4454
4454
|
t("chrome.formBuilder.backToLibrary")
|
|
@@ -4602,7 +4602,7 @@ var AUDIENCE_LABEL_KEY2 = {
|
|
|
4602
4602
|
MANAGER: "chrome.formsLibrary.audience.manager"
|
|
4603
4603
|
};
|
|
4604
4604
|
function CreateFormSheet({ onSubmit, onClose }) {
|
|
4605
|
-
const { t } =
|
|
4605
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
4606
4606
|
const titleId = react.useId();
|
|
4607
4607
|
const [locale, setLocale] = react.useState("en");
|
|
4608
4608
|
const [title, setTitle] = react.useState("");
|
|
@@ -4630,7 +4630,7 @@ function CreateFormSheet({ onSubmit, onClose }) {
|
|
|
4630
4630
|
});
|
|
4631
4631
|
onClose();
|
|
4632
4632
|
} catch (error) {
|
|
4633
|
-
setErrorCode(
|
|
4633
|
+
setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
|
|
4634
4634
|
} finally {
|
|
4635
4635
|
setPending(false);
|
|
4636
4636
|
}
|
|
@@ -4818,7 +4818,7 @@ function formatDate2(iso) {
|
|
|
4818
4818
|
});
|
|
4819
4819
|
}
|
|
4820
4820
|
function FormRow({ form, selected, onSelect, style }) {
|
|
4821
|
-
const { t } =
|
|
4821
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
4822
4822
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4823
4823
|
"tr",
|
|
4824
4824
|
{
|
|
@@ -4826,7 +4826,7 @@ function FormRow({ form, selected, onSelect, style }) {
|
|
|
4826
4826
|
className: "kf-forms-library__table-row",
|
|
4827
4827
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
4828
4828
|
"data-selected": selected === true ? "true" : void 0,
|
|
4829
|
-
style:
|
|
4829
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
4830
4830
|
children: [
|
|
4831
4831
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4832
4832
|
"td",
|
|
@@ -4882,7 +4882,7 @@ function FormsLibrarySkeleton() {
|
|
|
4882
4882
|
] }, rowIndex)) }) }) });
|
|
4883
4883
|
}
|
|
4884
4884
|
function CardHeading2({ count }) {
|
|
4885
|
-
const { t } =
|
|
4885
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
4886
4886
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-forms-library__card-title", children: t(
|
|
4887
4887
|
count === 1 ? "chrome.formsLibrary.countLabelOne" : "chrome.formsLibrary.countLabel"
|
|
4888
4888
|
).replace("{count}", String(count)) });
|
|
@@ -4897,7 +4897,7 @@ function StatusFilterBar({
|
|
|
4897
4897
|
active,
|
|
4898
4898
|
onChange
|
|
4899
4899
|
}) {
|
|
4900
|
-
const { t } =
|
|
4900
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
4901
4901
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-forms-library__filter-bar", children: [
|
|
4902
4902
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.formsLibrary.filter.legend") }),
|
|
4903
4903
|
STATUS_FILTERS.map((filter) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -4923,8 +4923,8 @@ function FormsLibrary({
|
|
|
4923
4923
|
components,
|
|
4924
4924
|
style
|
|
4925
4925
|
}) {
|
|
4926
|
-
const { t } =
|
|
4927
|
-
const { forms, loaded, lastFetchFailed, refresh, createForm } =
|
|
4926
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
4927
|
+
const { forms, loaded, lastFetchFailed, refresh, createForm } = chunkF4GGHUMX_cjs.useAgencyForms();
|
|
4928
4928
|
const isControlled = controlledCreating !== void 0 && onCreatingChange !== void 0;
|
|
4929
4929
|
const [internalCreating, setInternalCreating] = react.useState(false);
|
|
4930
4930
|
const creating = isControlled ? controlledCreating : internalCreating;
|
|
@@ -4935,7 +4935,7 @@ function FormsLibrary({
|
|
|
4935
4935
|
await createForm(input);
|
|
4936
4936
|
};
|
|
4937
4937
|
const visibleForms = statusFilter === "ALL" ? forms : forms.filter((form) => form.status === statusFilter);
|
|
4938
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library", style:
|
|
4938
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
4939
4939
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-forms-library__heading", children: [
|
|
4940
4940
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-forms-library__title", children: title }),
|
|
4941
4941
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-forms-library__subtitle", children: subtitle }) : null
|
|
@@ -5011,9 +5011,9 @@ function FormsAuthoringFlow({ initialFormId, style }) {
|
|
|
5011
5011
|
setSelectedFormId(void 0);
|
|
5012
5012
|
}
|
|
5013
5013
|
if (selectedFormId === void 0) {
|
|
5014
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style:
|
|
5014
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormsLibrary, { onSelectForm: handleSelect }) });
|
|
5015
5015
|
}
|
|
5016
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style:
|
|
5016
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-forms-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(FormBuilder, { formId: selectedFormId, onBack: handleBack }) });
|
|
5017
5017
|
}
|
|
5018
5018
|
function SearchIcon(props) {
|
|
5019
5019
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -5164,7 +5164,7 @@ function AdminAvatar({
|
|
|
5164
5164
|
className: "kf-admin-shared-patterns-avatar",
|
|
5165
5165
|
"data-size": size,
|
|
5166
5166
|
"aria-hidden": "true",
|
|
5167
|
-
style:
|
|
5167
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style, {
|
|
5168
5168
|
"--kf-admin-shared-patterns-avatar-computed-size": SIZE_VAR[size],
|
|
5169
5169
|
"--kf-admin-shared-patterns-avatar-computed-bg": `var(--kf-color-avatar-${step})`
|
|
5170
5170
|
}),
|
|
@@ -5184,7 +5184,7 @@ function ManagerResultRow({
|
|
|
5184
5184
|
onSelect,
|
|
5185
5185
|
style
|
|
5186
5186
|
}) {
|
|
5187
|
-
const { t } =
|
|
5187
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5188
5188
|
const initials = initialsFromName(manager.fullName);
|
|
5189
5189
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5190
5190
|
"tr",
|
|
@@ -5192,7 +5192,7 @@ function ManagerResultRow({
|
|
|
5192
5192
|
role: "row",
|
|
5193
5193
|
className: "kf-manager-directory-flow__table-row",
|
|
5194
5194
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
5195
|
-
style:
|
|
5195
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
5196
5196
|
children: [
|
|
5197
5197
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
5198
5198
|
"td",
|
|
@@ -5301,8 +5301,8 @@ function ManagerResultsListBody({
|
|
|
5301
5301
|
onCountChange,
|
|
5302
5302
|
onRetry
|
|
5303
5303
|
}) {
|
|
5304
|
-
const { t } =
|
|
5305
|
-
const directories =
|
|
5304
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5305
|
+
const directories = chunkF4GGHUMX_cjs.useDirectories();
|
|
5306
5306
|
const [errorMessage, setErrorMessage] = react.useState(void 0);
|
|
5307
5307
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
5308
5308
|
const ManagerRow = ManagerResultRowComponent ?? ManagerResultRow;
|
|
@@ -5313,7 +5313,7 @@ function ManagerResultsListBody({
|
|
|
5313
5313
|
setErrorMessage(void 0);
|
|
5314
5314
|
return page;
|
|
5315
5315
|
} catch (error) {
|
|
5316
|
-
setErrorMessage(
|
|
5316
|
+
setErrorMessage(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
|
|
5317
5317
|
return { rows: [], nextCursor: void 0 };
|
|
5318
5318
|
} finally {
|
|
5319
5319
|
setHasSettled(true);
|
|
@@ -5321,7 +5321,7 @@ function ManagerResultsListBody({
|
|
|
5321
5321
|
},
|
|
5322
5322
|
[directories, filters]
|
|
5323
5323
|
);
|
|
5324
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
5324
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
|
|
5325
5325
|
const isLoading = !hasSettled;
|
|
5326
5326
|
const reportedCount = isLoading || errorMessage !== void 0 ? void 0 : rows.length;
|
|
5327
5327
|
react.useEffect(() => {
|
|
@@ -5418,7 +5418,7 @@ function ManagerSearchInput({
|
|
|
5418
5418
|
debounceMs,
|
|
5419
5419
|
onDebouncedChange
|
|
5420
5420
|
}) {
|
|
5421
|
-
const { t } =
|
|
5421
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5422
5422
|
const [value, setValue] = react.useState("");
|
|
5423
5423
|
react.useEffect(() => {
|
|
5424
5424
|
const timer = setTimeout(() => onDebouncedChange(value), debounceMs);
|
|
@@ -5457,12 +5457,12 @@ function ManagerDirectoryFlow({
|
|
|
5457
5457
|
components,
|
|
5458
5458
|
style
|
|
5459
5459
|
}) {
|
|
5460
|
-
const { t } =
|
|
5460
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5461
5461
|
const [query, setQuery] = react.useState("");
|
|
5462
5462
|
const [count, setCount] = react.useState(void 0);
|
|
5463
5463
|
const trimmedQuery = query.trim();
|
|
5464
5464
|
const handleCountChange = react.useCallback((next) => setCount(next), []);
|
|
5465
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow", style:
|
|
5465
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
5466
5466
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-directory-flow__heading", children: [
|
|
5467
5467
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-manager-directory-flow__title", children: title }),
|
|
5468
5468
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-directory-flow__subtitle", children: subtitle }) : null
|
|
@@ -5534,7 +5534,7 @@ function formatDate3(iso) {
|
|
|
5534
5534
|
return new Date(iso).toLocaleDateString("en-GB", { day: "2-digit", month: "short" });
|
|
5535
5535
|
}
|
|
5536
5536
|
function ManagerAssignmentsCard({ trips }) {
|
|
5537
|
-
const { t } =
|
|
5537
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5538
5538
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-manager-profile-section__card", children: [
|
|
5539
5539
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section__card-head", children: [
|
|
5540
5540
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-manager-profile-section__card-title", children: t("chrome.managerProfileSection.trips.title") }),
|
|
@@ -5598,7 +5598,7 @@ function HeroProfileHeader({
|
|
|
5598
5598
|
glowTone,
|
|
5599
5599
|
style
|
|
5600
5600
|
}) {
|
|
5601
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero", "data-glow": glowTone, style:
|
|
5601
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero", "data-glow": glowTone, style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
5602
5602
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-hero-glow", "aria-hidden": "true" }),
|
|
5603
5603
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shared-patterns-hero-row", children: [
|
|
5604
5604
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shared-patterns-hero-avatar", "aria-hidden": "true", children: avatarInitials }),
|
|
@@ -5631,7 +5631,7 @@ function initialsFromName2(name) {
|
|
|
5631
5631
|
return `${first}${last}`.toUpperCase();
|
|
5632
5632
|
}
|
|
5633
5633
|
function ManagerProfileHero({ profile, onBack }) {
|
|
5634
|
-
const { t } =
|
|
5634
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5635
5635
|
const initials = initialsFromName2(profile.fullName);
|
|
5636
5636
|
const stats = [
|
|
5637
5637
|
{ key: "trips", label: t("chrome.managerProfileSection.hero.trips"), value: profile.tripCount },
|
|
@@ -5690,12 +5690,12 @@ function ManagerProfileSection({
|
|
|
5690
5690
|
components,
|
|
5691
5691
|
style
|
|
5692
5692
|
}) {
|
|
5693
|
-
const { t } =
|
|
5694
|
-
const { read, readFailed, refresh } =
|
|
5693
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5694
|
+
const { read, readFailed, refresh } = chunkF4GGHUMX_cjs.useAgencyManagerProfile(managerRef);
|
|
5695
5695
|
const Hero = components?.Hero ?? ManagerProfileHero;
|
|
5696
5696
|
const AssignmentsCard = components?.AssignmentsCard ?? ManagerAssignmentsCard;
|
|
5697
5697
|
if (readFailed) {
|
|
5698
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style:
|
|
5698
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section__status-block", role: "alert", children: [
|
|
5699
5699
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon7, { className: "kf-manager-profile-section__status-icon kf-manager-profile-section__status-icon--danger" }),
|
|
5700
5700
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-profile-section__status-title", children: t("chrome.managerProfileSection.errorTitle") }),
|
|
5701
5701
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-manager-profile-section__status-body", children: t("chrome.managerProfileSection.errorBody") }),
|
|
@@ -5711,9 +5711,9 @@ function ManagerProfileSection({
|
|
|
5711
5711
|
] }) });
|
|
5712
5712
|
}
|
|
5713
5713
|
if (read === void 0) {
|
|
5714
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style:
|
|
5714
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-manager-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ManagerProfileSkeleton, {}) });
|
|
5715
5715
|
}
|
|
5716
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section", style:
|
|
5716
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-manager-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
5717
5717
|
/* @__PURE__ */ jsxRuntime.jsx(Hero, { profile: read, onBack }),
|
|
5718
5718
|
/* @__PURE__ */ jsxRuntime.jsx(AssignmentsCard, { trips: read.trips })
|
|
5719
5719
|
] });
|
|
@@ -5740,7 +5740,7 @@ function TemplateAuthoringFlow({
|
|
|
5740
5740
|
initialTemplateId,
|
|
5741
5741
|
style
|
|
5742
5742
|
}) {
|
|
5743
|
-
const { t } =
|
|
5743
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5744
5744
|
const [selectedTemplateId, setSelectedTemplateId] = react.useState(
|
|
5745
5745
|
initialTemplateId
|
|
5746
5746
|
);
|
|
@@ -5751,9 +5751,9 @@ function TemplateAuthoringFlow({
|
|
|
5751
5751
|
setSelectedTemplateId(void 0);
|
|
5752
5752
|
}
|
|
5753
5753
|
if (selectedTemplateId === void 0) {
|
|
5754
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-template-authoring-flow", style:
|
|
5754
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-template-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(ChecklistTemplateLibrary, { onSelectTemplate: handleSelect }) });
|
|
5755
5755
|
}
|
|
5756
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-template-authoring-flow", style:
|
|
5756
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-template-authoring-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
5757
5757
|
/* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", onClick: handleBack, className: "kf-template-authoring-flow__back-link", children: [
|
|
5758
5758
|
/* @__PURE__ */ jsxRuntime.jsx(BackIcon3, {}),
|
|
5759
5759
|
t("chrome.templateAuthoringFlow.backToLibrary")
|
|
@@ -5762,8 +5762,8 @@ function TemplateAuthoringFlow({
|
|
|
5762
5762
|
] });
|
|
5763
5763
|
}
|
|
5764
5764
|
function AddTravellerModal({ onClose, onCreated }) {
|
|
5765
|
-
const { t } =
|
|
5766
|
-
const directories =
|
|
5765
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
5766
|
+
const directories = chunkF4GGHUMX_cjs.useDirectories();
|
|
5767
5767
|
const titleId = react.useId();
|
|
5768
5768
|
const [fullName, setFullName] = react.useState("");
|
|
5769
5769
|
const [phone, setPhone] = react.useState("");
|
|
@@ -5787,7 +5787,7 @@ function AddTravellerModal({ onClose, onCreated }) {
|
|
|
5787
5787
|
});
|
|
5788
5788
|
onCreated(created);
|
|
5789
5789
|
} catch (error) {
|
|
5790
|
-
setErrorMessage(
|
|
5790
|
+
setErrorMessage(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
|
|
5791
5791
|
} finally {
|
|
5792
5792
|
setIsSubmitting(false);
|
|
5793
5793
|
}
|
|
@@ -6001,7 +6001,7 @@ function TravellerResultRow({
|
|
|
6001
6001
|
onSelect,
|
|
6002
6002
|
style
|
|
6003
6003
|
}) {
|
|
6004
|
-
const { t } =
|
|
6004
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6005
6005
|
const initials = initialsFromName3(traveller.fullName);
|
|
6006
6006
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6007
6007
|
"tr",
|
|
@@ -6009,7 +6009,7 @@ function TravellerResultRow({
|
|
|
6009
6009
|
role: "row",
|
|
6010
6010
|
className: "kf-traveller-directory__table-row",
|
|
6011
6011
|
"data-selectable": onSelect !== void 0 ? "true" : void 0,
|
|
6012
|
-
style:
|
|
6012
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
6013
6013
|
children: [
|
|
6014
6014
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6015
6015
|
"td",
|
|
@@ -6137,8 +6137,8 @@ function TravellerResultsListBody({
|
|
|
6137
6137
|
onCountChange,
|
|
6138
6138
|
onRetry
|
|
6139
6139
|
}) {
|
|
6140
|
-
const { t } =
|
|
6141
|
-
const directories =
|
|
6140
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6141
|
+
const directories = chunkF4GGHUMX_cjs.useDirectories();
|
|
6142
6142
|
const [errorMessage, setErrorMessage] = react.useState(void 0);
|
|
6143
6143
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
6144
6144
|
const fetch = react.useCallback(
|
|
@@ -6149,7 +6149,7 @@ function TravellerResultsListBody({
|
|
|
6149
6149
|
setErrorMessage(void 0);
|
|
6150
6150
|
return page;
|
|
6151
6151
|
} catch (error) {
|
|
6152
|
-
setErrorMessage(
|
|
6152
|
+
setErrorMessage(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
|
|
6153
6153
|
return { rows: [], nextCursor: void 0 };
|
|
6154
6154
|
} finally {
|
|
6155
6155
|
setHasSettled(true);
|
|
@@ -6157,7 +6157,7 @@ function TravellerResultsListBody({
|
|
|
6157
6157
|
},
|
|
6158
6158
|
[directories, query]
|
|
6159
6159
|
);
|
|
6160
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
6160
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
|
|
6161
6161
|
const isLoading = !hasSettled;
|
|
6162
6162
|
const reportedCount = isLoading || errorMessage !== void 0 ? void 0 : rows.length;
|
|
6163
6163
|
react.useEffect(() => {
|
|
@@ -6252,7 +6252,7 @@ function TravellerSearchInput({
|
|
|
6252
6252
|
debounceMs,
|
|
6253
6253
|
onDebouncedChange
|
|
6254
6254
|
}) {
|
|
6255
|
-
const { t } =
|
|
6255
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6256
6256
|
const [value, setValue] = react.useState("");
|
|
6257
6257
|
react.useEffect(() => {
|
|
6258
6258
|
const timer = setTimeout(() => onDebouncedChange(value), debounceMs);
|
|
@@ -6292,13 +6292,13 @@ function TravellerSearchBox({
|
|
|
6292
6292
|
trailingAction,
|
|
6293
6293
|
style
|
|
6294
6294
|
}) {
|
|
6295
|
-
const { t } =
|
|
6295
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6296
6296
|
const [query, setQuery] = react.useState("");
|
|
6297
6297
|
const [count, setCount] = react.useState(void 0);
|
|
6298
6298
|
const trimmed = query.trim();
|
|
6299
6299
|
const handleCountChange = react.useCallback((next) => setCount(next), []);
|
|
6300
6300
|
const isBelowFloor = minQueryLength > 0 && trimmed.length < minQueryLength;
|
|
6301
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box", style:
|
|
6301
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
6302
6302
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory__search-box-input-row", children: [
|
|
6303
6303
|
/* @__PURE__ */ jsxRuntime.jsx(TravellerSearchInput, { debounceMs, onDebouncedChange: setQuery }),
|
|
6304
6304
|
count !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-traveller-directory__count", children: t(
|
|
@@ -6330,7 +6330,7 @@ function TravellerDirectoryFlow({
|
|
|
6330
6330
|
components,
|
|
6331
6331
|
style
|
|
6332
6332
|
}) {
|
|
6333
|
-
const { t } =
|
|
6333
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6334
6334
|
const [uncontrolledOpen, setUncontrolledOpen] = react.useState(false);
|
|
6335
6335
|
const isControlled = adding !== void 0 && onAddingChange !== void 0;
|
|
6336
6336
|
const isAddModalOpen = isControlled ? adding : uncontrolledOpen;
|
|
@@ -6353,7 +6353,7 @@ function TravellerDirectoryFlow({
|
|
|
6353
6353
|
);
|
|
6354
6354
|
const SearchBox = components?.TravellerSearchBox ?? TravellerSearchBox;
|
|
6355
6355
|
const AddModal = components?.AddTravellerModal ?? AddTravellerModal;
|
|
6356
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow", style:
|
|
6356
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
6357
6357
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-directory-flow__heading", children: [
|
|
6358
6358
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-directory-flow__title", children: title }),
|
|
6359
6359
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-directory-flow__subtitle", children: subtitle }) : null
|
|
@@ -6379,7 +6379,7 @@ function TravellerDirectoryFlow({
|
|
|
6379
6379
|
] });
|
|
6380
6380
|
}
|
|
6381
6381
|
function useAgencyTravellerProfile(travellerRef) {
|
|
6382
|
-
const client =
|
|
6382
|
+
const client = chunkS53XNHRU_cjs.useKaafilClient();
|
|
6383
6383
|
const [read, setRead] = react.useState(void 0);
|
|
6384
6384
|
const [readFailed, setReadFailed] = react.useState(false);
|
|
6385
6385
|
const refresh = react.useCallback(async () => {
|
|
@@ -6436,7 +6436,7 @@ function formatMinor(minor, currency) {
|
|
|
6436
6436
|
}).format(minor / 100);
|
|
6437
6437
|
}
|
|
6438
6438
|
function TravellerLifetimeCard({ lifetime }) {
|
|
6439
|
-
const { t } =
|
|
6439
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6440
6440
|
if (lifetime.currency === null) {
|
|
6441
6441
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
|
|
6442
6442
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
|
|
@@ -6484,7 +6484,7 @@ function formatTimestamp(iso) {
|
|
|
6484
6484
|
});
|
|
6485
6485
|
}
|
|
6486
6486
|
function TravellerNotesList({ notes }) {
|
|
6487
|
-
const { t } =
|
|
6487
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6488
6488
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
|
|
6489
6489
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
|
|
6490
6490
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-profile-section__card-title", children: t("chrome.travellerProfileSection.notes.title") }),
|
|
@@ -6530,7 +6530,7 @@ function formatDateOfBirth(iso) {
|
|
|
6530
6530
|
});
|
|
6531
6531
|
}
|
|
6532
6532
|
function TravellerPersonalCard({ profile }) {
|
|
6533
|
-
const { t } =
|
|
6533
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6534
6534
|
const p = profile.profile;
|
|
6535
6535
|
const dob = formatDateOfBirth(p.dateOfBirth);
|
|
6536
6536
|
const email = p.email ?? profile.email;
|
|
@@ -6645,7 +6645,7 @@ function formatMinor2(minor, currency) {
|
|
|
6645
6645
|
}).format(minor / 100);
|
|
6646
6646
|
}
|
|
6647
6647
|
function TravellerProfileHero({ profile, onBack }) {
|
|
6648
|
-
const { t } =
|
|
6648
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6649
6649
|
const initials = initialsFromName4(profile.fullName);
|
|
6650
6650
|
const { lifetime } = profile;
|
|
6651
6651
|
const stats = lifetime.currency !== null ? [
|
|
@@ -6736,7 +6736,7 @@ function formatMinor3(minor, currency) {
|
|
|
6736
6736
|
}).format(minor / 100);
|
|
6737
6737
|
}
|
|
6738
6738
|
function TravellerTripHistoryTable({ trips }) {
|
|
6739
|
-
const { t } =
|
|
6739
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6740
6740
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-traveller-profile-section__card", children: [
|
|
6741
6741
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__card-head", children: [
|
|
6742
6742
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-traveller-profile-section__card-title", children: t("chrome.travellerProfileSection.trips.title") }),
|
|
@@ -6787,7 +6787,7 @@ function TravellerProfileSection({
|
|
|
6787
6787
|
components,
|
|
6788
6788
|
style
|
|
6789
6789
|
}) {
|
|
6790
|
-
const { t } =
|
|
6790
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
6791
6791
|
const { read, readFailed, refresh } = useAgencyTravellerProfile(travellerRef);
|
|
6792
6792
|
const Hero = components?.Hero ?? TravellerProfileHero;
|
|
6793
6793
|
const PersonalCard = components?.PersonalCard ?? TravellerPersonalCard;
|
|
@@ -6795,7 +6795,7 @@ function TravellerProfileSection({
|
|
|
6795
6795
|
const TripHistoryTable = components?.TripHistoryTable ?? TravellerTripHistoryTable;
|
|
6796
6796
|
const NotesList = components?.NotesList ?? TravellerNotesList;
|
|
6797
6797
|
if (readFailed) {
|
|
6798
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style:
|
|
6798
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__status-block", role: "alert", children: [
|
|
6799
6799
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon9, { className: "kf-traveller-profile-section__status-icon kf-traveller-profile-section__status-icon--danger" }),
|
|
6800
6800
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-profile-section__status-title", children: t("chrome.travellerProfileSection.errorTitle") }),
|
|
6801
6801
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-traveller-profile-section__status-body", children: t("chrome.travellerProfileSection.errorBody") }),
|
|
@@ -6811,9 +6811,9 @@ function TravellerProfileSection({
|
|
|
6811
6811
|
] }) });
|
|
6812
6812
|
}
|
|
6813
6813
|
if (read === void 0) {
|
|
6814
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style:
|
|
6814
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-traveller-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TravellerProfileSkeleton, {}) });
|
|
6815
6815
|
}
|
|
6816
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section", style:
|
|
6816
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
6817
6817
|
/* @__PURE__ */ jsxRuntime.jsx(Hero, { profile: read, onBack }),
|
|
6818
6818
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__body", children: [
|
|
6819
6819
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-traveller-profile-section__column", children: [
|
|
@@ -6905,7 +6905,7 @@ function ToggleSwitch({
|
|
|
6905
6905
|
disabled,
|
|
6906
6906
|
className: "kf-admin-shared-patterns-toggle-row",
|
|
6907
6907
|
onClick: () => onChange(!checked),
|
|
6908
|
-
style:
|
|
6908
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
6909
6909
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6910
6910
|
"span",
|
|
6911
6911
|
{
|
|
@@ -7343,7 +7343,7 @@ function TriggerDetailPanel({
|
|
|
7343
7343
|
style
|
|
7344
7344
|
}) {
|
|
7345
7345
|
const [dialogOpen, setDialogOpen] = react.useState(false);
|
|
7346
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail", style:
|
|
7346
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
7347
7347
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__detail-head", children: [
|
|
7348
7348
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trigger-template-editor__detail-eyebrow", children: t("chrome.triggerTemplateEditor.selected") }),
|
|
7349
7349
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -7427,8 +7427,8 @@ function TriggerTemplateEditor({
|
|
|
7427
7427
|
onTriggerPatched,
|
|
7428
7428
|
style
|
|
7429
7429
|
}) {
|
|
7430
|
-
const { t } =
|
|
7431
|
-
const { triggers, loaded, lastFetchFailed, refresh, patchTrigger } =
|
|
7430
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7431
|
+
const { triggers, loaded, lastFetchFailed, refresh, patchTrigger } = chunkF4GGHUMX_cjs.useAgencyJourneyTriggers();
|
|
7432
7432
|
const [savingId, setSavingId] = react.useState(void 0);
|
|
7433
7433
|
const [selectedId, setSelectedId] = react.useState(void 0);
|
|
7434
7434
|
const filtered = tripModeFilter === void 0 ? triggers : triggers.filter((trigger) => trigger.tripMode === tripModeFilter);
|
|
@@ -7463,7 +7463,7 @@ function TriggerTemplateEditor({
|
|
|
7463
7463
|
setSavingId(void 0);
|
|
7464
7464
|
}
|
|
7465
7465
|
}
|
|
7466
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor", style:
|
|
7466
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
7467
7467
|
title !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trigger-template-editor__heading", children: [
|
|
7468
7468
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trigger-template-editor__title", children: title }),
|
|
7469
7469
|
subtitle !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trigger-template-editor__subtitle", children: subtitle }) : null
|
|
@@ -7611,14 +7611,14 @@ function BookingsSkeleton() {
|
|
|
7611
7611
|
] }, id)) });
|
|
7612
7612
|
}
|
|
7613
7613
|
function BookingsEmpty() {
|
|
7614
|
-
const { t } =
|
|
7614
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7615
7615
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", children: [
|
|
7616
7616
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t("chrome.tripBookings.emptyTitle") }),
|
|
7617
7617
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__state-body", children: t("chrome.tripBookings.emptyBody") })
|
|
7618
7618
|
] });
|
|
7619
7619
|
}
|
|
7620
7620
|
function BookingsFailed({ onRetry }) {
|
|
7621
|
-
const { t } =
|
|
7621
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7622
7622
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", role: "alert", children: [
|
|
7623
7623
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t("chrome.tripBookings.failedTitle") }),
|
|
7624
7624
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__state-body", children: t("chrome.tripBookings.failedBody") }),
|
|
@@ -7626,7 +7626,7 @@ function BookingsFailed({ onRetry }) {
|
|
|
7626
7626
|
] });
|
|
7627
7627
|
}
|
|
7628
7628
|
function BookingsDark({ reason }) {
|
|
7629
|
-
const { t } =
|
|
7629
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7630
7630
|
if (reason === "mode") return null;
|
|
7631
7631
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__state", "data-dark": reason, children: [
|
|
7632
7632
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-bookings-section__state-title", children: t(
|
|
@@ -7667,7 +7667,7 @@ function voucherCount(row) {
|
|
|
7667
7667
|
}
|
|
7668
7668
|
var DAY = { day: "numeric", month: "short", year: "numeric" };
|
|
7669
7669
|
function TripBookingsSection(props) {
|
|
7670
|
-
const session =
|
|
7670
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
7671
7671
|
if (session.status !== "authenticated") {
|
|
7672
7672
|
return null;
|
|
7673
7673
|
}
|
|
@@ -7678,8 +7678,8 @@ function ReadyTripBookingsSection({
|
|
|
7678
7678
|
onOpenDocuments,
|
|
7679
7679
|
style
|
|
7680
7680
|
}) {
|
|
7681
|
-
const { t } =
|
|
7682
|
-
const bookings =
|
|
7681
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7682
|
+
const bookings = chunkF4GGHUMX_cjs.useBookings(tripRef);
|
|
7683
7683
|
const ready = bookings.status === "ready" ? bookings : null;
|
|
7684
7684
|
const groups = react.useMemo(
|
|
7685
7685
|
() => ready === null ? [] : groupByKind(liveBookings(ready.bookings)),
|
|
@@ -7689,7 +7689,7 @@ function ReadyTripBookingsSection({
|
|
|
7689
7689
|
const unreadable = ready !== null && ready.syncedAt === void 0;
|
|
7690
7690
|
const refreshLive = ready?.refreshLive;
|
|
7691
7691
|
if (bookings.status === "dark") return /* @__PURE__ */ jsxRuntime.jsx(BookingsDark, { reason: bookings.reason });
|
|
7692
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-bookings-section", style:
|
|
7692
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-bookings-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
7693
7693
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-bookings-section__head", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-bookings-section__head-text", children: [
|
|
7694
7694
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-bookings-section__title", children: t("chrome.tripBookings.panelLabel") }),
|
|
7695
7695
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-bookings-section__subtitle", children: t("chrome.tripBookings.subtitle").replace("{count}", String(total)) })
|
|
@@ -7761,7 +7761,7 @@ function LockIcon2() {
|
|
|
7761
7761
|
);
|
|
7762
7762
|
}
|
|
7763
7763
|
function CloseoutLockNotice({ whatKey }) {
|
|
7764
|
-
const { t } =
|
|
7764
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7765
7765
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-closeout-lock", role: "status", children: [
|
|
7766
7766
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-closeout-lock__glyph", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(LockIcon2, {}) }),
|
|
7767
7767
|
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-admin-closeout-lock__body", children: [
|
|
@@ -7865,7 +7865,7 @@ function ChecklistSkeleton() {
|
|
|
7865
7865
|
] }, column)) });
|
|
7866
7866
|
}
|
|
7867
7867
|
function ChecklistEmpty({ onPull }) {
|
|
7868
|
-
const { t } =
|
|
7868
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7869
7869
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", children: [
|
|
7870
7870
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-checklist-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(ChecklistIcon, {}) }),
|
|
7871
7871
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-checklist-section__state-title", children: t("chrome.tripChecklist.emptyTitle") }),
|
|
@@ -7874,7 +7874,7 @@ function ChecklistEmpty({ onPull }) {
|
|
|
7874
7874
|
] });
|
|
7875
7875
|
}
|
|
7876
7876
|
function ChecklistFailed({ onRetry }) {
|
|
7877
|
-
const { t } =
|
|
7877
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7878
7878
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", children: [
|
|
7879
7879
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-checklist-section__state-title", children: t("chrome.tripChecklist.failedTitle") }),
|
|
7880
7880
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-checklist-section__state-body", children: t("chrome.tripChecklist.failedBody") }),
|
|
@@ -7882,7 +7882,7 @@ function ChecklistFailed({ onRetry }) {
|
|
|
7882
7882
|
] });
|
|
7883
7883
|
}
|
|
7884
7884
|
function ChecklistDark({ reason }) {
|
|
7885
|
-
const { t } =
|
|
7885
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7886
7886
|
if (reason === "mode") return null;
|
|
7887
7887
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__state", "data-dark": reason, children: [
|
|
7888
7888
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-checklist-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(LockIcon3, {}) }),
|
|
@@ -7982,7 +7982,7 @@ function ItemDialog({
|
|
|
7982
7982
|
onClose,
|
|
7983
7983
|
onSubmit
|
|
7984
7984
|
}) {
|
|
7985
|
-
const { t } =
|
|
7985
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
7986
7986
|
const titleId = react.useId();
|
|
7987
7987
|
const [values, setValues] = react.useState(initial);
|
|
7988
7988
|
const [sectionChoice, setSectionChoice] = react.useState(
|
|
@@ -8179,7 +8179,7 @@ function ChecklistItemRow({
|
|
|
8179
8179
|
onToggle,
|
|
8180
8180
|
onEdit
|
|
8181
8181
|
}) {
|
|
8182
|
-
const { t } =
|
|
8182
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
8183
8183
|
const complete = item.status === "COMPLETE";
|
|
8184
8184
|
const day = dayOffsetLabel(item.dayOffset);
|
|
8185
8185
|
const actorKey = actorLabelKey(item.performedByKind);
|
|
@@ -8231,7 +8231,7 @@ function SectionCard2({
|
|
|
8231
8231
|
onAddToSection,
|
|
8232
8232
|
ItemRow: ItemRow2 = ChecklistItemRow
|
|
8233
8233
|
}) {
|
|
8234
|
-
const { t } =
|
|
8234
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
8235
8235
|
const openMandatory = items.filter((one) => one.isMandatory && one.status === "OPEN").length;
|
|
8236
8236
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section__section", children: [
|
|
8237
8237
|
/* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-trip-checklist-section__section-head", children: [
|
|
@@ -8285,7 +8285,7 @@ function PhasePanel({
|
|
|
8285
8285
|
onAddToPhase,
|
|
8286
8286
|
ItemRow: ItemRow2
|
|
8287
8287
|
}) {
|
|
8288
|
-
const { t } =
|
|
8288
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
8289
8289
|
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: sections.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__phase-empty", children: [
|
|
8290
8290
|
/* @__PURE__ */ jsxRuntime.jsx("p", { children: t("chrome.tripChecklist.phaseEmpty") }),
|
|
8291
8291
|
readOnly ? null : /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8321,7 +8321,7 @@ function PhaseSwitcher({
|
|
|
8321
8321
|
value,
|
|
8322
8322
|
onChange
|
|
8323
8323
|
}) {
|
|
8324
|
-
const { t } =
|
|
8324
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
8325
8325
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-checklist-section__segment", children: [
|
|
8326
8326
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.tripChecklist.phaseLabel") }),
|
|
8327
8327
|
OPTIONS.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8354,7 +8354,7 @@ function TemplatePickerDialog({
|
|
|
8354
8354
|
onClose,
|
|
8355
8355
|
onPull
|
|
8356
8356
|
}) {
|
|
8357
|
-
const { t } =
|
|
8357
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
8358
8358
|
const titleId = react.useId();
|
|
8359
8359
|
const [selectedId, setSelectedId] = react.useState(null);
|
|
8360
8360
|
const [mode, setMode] = react.useState("append");
|
|
@@ -8476,7 +8476,7 @@ function codeOf(error) {
|
|
|
8476
8476
|
return classification?.code ?? "unknown";
|
|
8477
8477
|
}
|
|
8478
8478
|
function TripChecklistSection(props) {
|
|
8479
|
-
const session =
|
|
8479
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
8480
8480
|
if (session.status !== "authenticated") {
|
|
8481
8481
|
return null;
|
|
8482
8482
|
}
|
|
@@ -8490,8 +8490,8 @@ function ReadyTripChecklistSection({
|
|
|
8490
8490
|
components,
|
|
8491
8491
|
style
|
|
8492
8492
|
}) {
|
|
8493
|
-
const { t } =
|
|
8494
|
-
const checklists =
|
|
8493
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
8494
|
+
const checklists = chunk2OWH2KDY_cjs.useChecklists(tripRef);
|
|
8495
8495
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
8496
8496
|
const [pending, setPending] = react.useState(false);
|
|
8497
8497
|
const [busyItemId, setBusyItemId] = react.useState(null);
|
|
@@ -8658,7 +8658,7 @@ function ReadyTripChecklistSection({
|
|
|
8658
8658
|
const inert = readOnly || locked;
|
|
8659
8659
|
const unreadable = aggregate?.lastFetchFailed === true && aggregate.loaded === false;
|
|
8660
8660
|
const percent = overallPercent(aggregate?.progress);
|
|
8661
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section", style:
|
|
8661
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-checklist-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
8662
8662
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__head", children: [
|
|
8663
8663
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-checklist-section__head-text", children: [
|
|
8664
8664
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-checklist-section__title", children: t("chrome.tripChecklist.panelLabel") }),
|
|
@@ -9047,7 +9047,7 @@ var STATUS_LABEL_KEY5 = {
|
|
|
9047
9047
|
CANCELLED: "chrome.tripDirectory.status.cancelled"
|
|
9048
9048
|
};
|
|
9049
9049
|
function TripRow({ trip, index, onOpen, style }) {
|
|
9050
|
-
const { t } =
|
|
9050
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9051
9051
|
const derived = deriveTripRow(trip, index);
|
|
9052
9052
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9053
9053
|
"tr",
|
|
@@ -9055,7 +9055,7 @@ function TripRow({ trip, index, onOpen, style }) {
|
|
|
9055
9055
|
role: "row",
|
|
9056
9056
|
className: "kf-trip-directory-flow__row",
|
|
9057
9057
|
"data-dimming": derived.dimming === "none" ? void 0 : derived.dimming,
|
|
9058
|
-
style:
|
|
9058
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
9059
9059
|
children: [
|
|
9060
9060
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
9061
9061
|
"td",
|
|
@@ -9174,8 +9174,8 @@ function TripResultsListBody({
|
|
|
9174
9174
|
hasActiveFilter,
|
|
9175
9175
|
onRetry
|
|
9176
9176
|
}) {
|
|
9177
|
-
const { t } =
|
|
9178
|
-
const { makeTripsFetch } =
|
|
9177
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9178
|
+
const { makeTripsFetch } = chunkF4GGHUMX_cjs.useAgencyTrips();
|
|
9179
9179
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
9180
9180
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
9181
9181
|
const Row = TripRowComponent ?? TripRow;
|
|
@@ -9186,7 +9186,7 @@ function TripResultsListBody({
|
|
|
9186
9186
|
setErrorCode(void 0);
|
|
9187
9187
|
return page;
|
|
9188
9188
|
} catch (error) {
|
|
9189
|
-
setErrorCode(
|
|
9189
|
+
setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
|
|
9190
9190
|
return { rows: [], nextCursor: void 0 };
|
|
9191
9191
|
} finally {
|
|
9192
9192
|
setHasSettled(true);
|
|
@@ -9194,7 +9194,7 @@ function TripResultsListBody({
|
|
|
9194
9194
|
},
|
|
9195
9195
|
[makeTripsFetch, filters]
|
|
9196
9196
|
);
|
|
9197
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
9197
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
|
|
9198
9198
|
const isLoading = !hasSettled;
|
|
9199
9199
|
const reportedCount = isLoading || errorCode !== void 0 ? void 0 : rows.length;
|
|
9200
9200
|
react.useEffect(() => {
|
|
@@ -9296,7 +9296,7 @@ function TripSearchInput({
|
|
|
9296
9296
|
debounceMs,
|
|
9297
9297
|
onDebouncedChange
|
|
9298
9298
|
}) {
|
|
9299
|
-
const { t } =
|
|
9299
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9300
9300
|
const [value, setValue] = react.useState("");
|
|
9301
9301
|
react.useEffect(() => {
|
|
9302
9302
|
const timer = setTimeout(() => onDebouncedChange(value.trim()), debounceMs);
|
|
@@ -9366,7 +9366,7 @@ function TripDirectoryFlow({
|
|
|
9366
9366
|
components,
|
|
9367
9367
|
style
|
|
9368
9368
|
}) {
|
|
9369
|
-
const { t } =
|
|
9369
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9370
9370
|
const [eventType, setEventType] = react.useState(initialEventType ?? "TRIP");
|
|
9371
9371
|
const [segment, setSegment] = react.useState("all");
|
|
9372
9372
|
const [q, setQ] = react.useState("");
|
|
@@ -9386,7 +9386,7 @@ function TripDirectoryFlow({
|
|
|
9386
9386
|
);
|
|
9387
9387
|
const filterKey = react.useMemo(() => JSON.stringify(filters), [filters]);
|
|
9388
9388
|
const hasActiveFilter = segment !== "all" || q.length > 0 || status !== void 0;
|
|
9389
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow", style:
|
|
9389
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
9390
9390
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow__toolbar", children: [
|
|
9391
9391
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-directory-flow__toolbar-row", children: [
|
|
9392
9392
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -9647,7 +9647,7 @@ function KindIcon({
|
|
|
9647
9647
|
return /* @__PURE__ */ jsxRuntime.jsx(GenericFileIcon, {});
|
|
9648
9648
|
}
|
|
9649
9649
|
function DocumentRow({ row, onOpen }) {
|
|
9650
|
-
const { t } =
|
|
9650
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9651
9651
|
const { file, spend } = row;
|
|
9652
9652
|
const purged = file.status === "purged";
|
|
9653
9653
|
const retention = retentionStateOf(file);
|
|
@@ -9708,7 +9708,7 @@ function DocumentsSkeleton() {
|
|
|
9708
9708
|
] }, id)) });
|
|
9709
9709
|
}
|
|
9710
9710
|
function DocumentsEmpty() {
|
|
9711
|
-
const { t } =
|
|
9711
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9712
9712
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", children: [
|
|
9713
9713
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-documents-section__state-mark", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(EmptyDocumentsIcon, {}) }),
|
|
9714
9714
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t("chrome.tripDocuments.emptyTitle") }),
|
|
@@ -9716,7 +9716,7 @@ function DocumentsEmpty() {
|
|
|
9716
9716
|
] });
|
|
9717
9717
|
}
|
|
9718
9718
|
function DocumentsFailed({ onRetry }) {
|
|
9719
|
-
const { t } =
|
|
9719
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9720
9720
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", role: "alert", children: [
|
|
9721
9721
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t("chrome.tripDocuments.failedTitle") }),
|
|
9722
9722
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-documents-section__state-body", children: t("chrome.tripDocuments.failedBody") }),
|
|
@@ -9724,7 +9724,7 @@ function DocumentsFailed({ onRetry }) {
|
|
|
9724
9724
|
] });
|
|
9725
9725
|
}
|
|
9726
9726
|
function DocumentsDark({ reason }) {
|
|
9727
|
-
const { t } =
|
|
9727
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9728
9728
|
if (reason === "mode") return null;
|
|
9729
9729
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__state", "data-dark": reason, children: [
|
|
9730
9730
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-documents-section__state-title", children: t(
|
|
@@ -9747,7 +9747,7 @@ function DocumentViewer({
|
|
|
9747
9747
|
failed,
|
|
9748
9748
|
onClose
|
|
9749
9749
|
}) {
|
|
9750
|
-
const { t } =
|
|
9750
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9751
9751
|
const titleId = react.useId();
|
|
9752
9752
|
const { file } = row;
|
|
9753
9753
|
const classKey = retentionClassLabelKey(file.retentionClass);
|
|
@@ -9828,7 +9828,7 @@ function DocumentViewer({
|
|
|
9828
9828
|
);
|
|
9829
9829
|
}
|
|
9830
9830
|
function PurposeChips({ counts, value, onChange }) {
|
|
9831
|
-
const { t } =
|
|
9831
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9832
9832
|
const options = [
|
|
9833
9833
|
{
|
|
9834
9834
|
key: "all",
|
|
@@ -9898,7 +9898,7 @@ function UploadDialog({
|
|
|
9898
9898
|
onClose,
|
|
9899
9899
|
onSubmit
|
|
9900
9900
|
}) {
|
|
9901
|
-
const { t } =
|
|
9901
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
9902
9902
|
const titleId = react.useId();
|
|
9903
9903
|
const nameId = react.useId();
|
|
9904
9904
|
const fileId = react.useId();
|
|
@@ -10060,19 +10060,19 @@ function UploadDialog({
|
|
|
10060
10060
|
);
|
|
10061
10061
|
}
|
|
10062
10062
|
function TripDocumentsSection(props) {
|
|
10063
|
-
const session =
|
|
10063
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
10064
10064
|
if (session.status !== "authenticated") {
|
|
10065
10065
|
return null;
|
|
10066
10066
|
}
|
|
10067
10067
|
return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripDocumentsSection, { ...props });
|
|
10068
10068
|
}
|
|
10069
10069
|
function ReadyTripDocumentsSection({ tripRef, style }) {
|
|
10070
|
-
const { t } =
|
|
10071
|
-
const files =
|
|
10072
|
-
const expenses =
|
|
10073
|
-
const bookings =
|
|
10074
|
-
const { listTripManifest } =
|
|
10075
|
-
const { statuses, loaded: capabilityLoaded } =
|
|
10070
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10071
|
+
const files = chunk2OWH2KDY_cjs.useFiles({ tripRef });
|
|
10072
|
+
const expenses = chunk2OWH2KDY_cjs.useExpenses(tripRef);
|
|
10073
|
+
const bookings = chunkF4GGHUMX_cjs.useBookings(tripRef);
|
|
10074
|
+
const { listTripManifest } = chunkF4GGHUMX_cjs.useDirectories();
|
|
10075
|
+
const { statuses, loaded: capabilityLoaded } = chunkF4GGHUMX_cjs.useCapabilityStatuses(tripRef);
|
|
10076
10076
|
const capability = statuses.get("files");
|
|
10077
10077
|
const [state, setState] = react.useState({ kind: "loading" });
|
|
10078
10078
|
const [purpose, setPurpose] = react.useState(null);
|
|
@@ -10219,7 +10219,7 @@ function ReadyTripDocumentsSection({ tripRef, style }) {
|
|
|
10219
10219
|
if (capabilityLoaded && capability === "mode-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "mode" });
|
|
10220
10220
|
if (capabilityLoaded && capability === "flag-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "flag" });
|
|
10221
10221
|
if (capabilityLoaded && capability === "data-dark") return /* @__PURE__ */ jsxRuntime.jsx(DocumentsDark, { reason: "data" });
|
|
10222
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-documents-section", style:
|
|
10222
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-documents-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
10223
10223
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__head", children: [
|
|
10224
10224
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-documents-section__head-text", children: [
|
|
10225
10225
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-documents-section__title", children: t("chrome.tripDocuments.panelLabel") }),
|
|
@@ -10508,7 +10508,7 @@ function ExpensesSkeleton() {
|
|
|
10508
10508
|
] }, id)) });
|
|
10509
10509
|
}
|
|
10510
10510
|
function ExpensesEmpty({ onLog }) {
|
|
10511
|
-
const { t } =
|
|
10511
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10512
10512
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__state", children: [
|
|
10513
10513
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(WalletIcon, {}) }),
|
|
10514
10514
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-expenses-section__state-title", children: t("chrome.tripExpenses.emptyTitle") }),
|
|
@@ -10517,7 +10517,7 @@ function ExpensesEmpty({ onLog }) {
|
|
|
10517
10517
|
] });
|
|
10518
10518
|
}
|
|
10519
10519
|
function ExpensesFailed({ onRetry }) {
|
|
10520
|
-
const { t } =
|
|
10520
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10521
10521
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__state", role: "alert", children: [
|
|
10522
10522
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-expenses-section__state-title", children: t("chrome.tripExpenses.failedTitle") }),
|
|
10523
10523
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-expenses-section__state-body", children: t("chrome.tripExpenses.failedBody") }),
|
|
@@ -10525,7 +10525,7 @@ function ExpensesFailed({ onRetry }) {
|
|
|
10525
10525
|
] });
|
|
10526
10526
|
}
|
|
10527
10527
|
function ExpensesDark({ reason }) {
|
|
10528
|
-
const { t } =
|
|
10528
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10529
10529
|
if (reason === "mode") {
|
|
10530
10530
|
return null;
|
|
10531
10531
|
}
|
|
@@ -10546,7 +10546,7 @@ function ExpensesTable({
|
|
|
10546
10546
|
onVoid,
|
|
10547
10547
|
onViewReceipt
|
|
10548
10548
|
}) {
|
|
10549
|
-
const { t } =
|
|
10549
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10550
10550
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-expenses-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-expenses-section__table", children: [
|
|
10551
10551
|
/* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripExpenses.tableCaption") }),
|
|
10552
10552
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
@@ -10606,7 +10606,7 @@ function LogExpenseDialog({
|
|
|
10606
10606
|
onClose,
|
|
10607
10607
|
onSubmit
|
|
10608
10608
|
}) {
|
|
10609
|
-
const { t } =
|
|
10609
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10610
10610
|
const titleId = react.useId();
|
|
10611
10611
|
const [category, setCategory] = react.useState("MISC");
|
|
10612
10612
|
const [amount, setAmount] = react.useState("");
|
|
@@ -10769,9 +10769,9 @@ function ReceiptDialog({
|
|
|
10769
10769
|
description,
|
|
10770
10770
|
onClose
|
|
10771
10771
|
}) {
|
|
10772
|
-
const { t } =
|
|
10772
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10773
10773
|
const titleId = react.useId();
|
|
10774
|
-
const files =
|
|
10774
|
+
const files = chunk2OWH2KDY_cjs.useFiles({ tripRef });
|
|
10775
10775
|
const [phase, setPhase] = react.useState({ kind: "loading" });
|
|
10776
10776
|
const [imageBroke, setImageBroke] = react.useState(false);
|
|
10777
10777
|
const readUrl = files.url;
|
|
@@ -10845,7 +10845,7 @@ function VoidExpenseDialog({
|
|
|
10845
10845
|
onClose,
|
|
10846
10846
|
onSubmit
|
|
10847
10847
|
}) {
|
|
10848
|
-
const { t } =
|
|
10848
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10849
10849
|
const titleId = react.useId();
|
|
10850
10850
|
const [reason, setReason] = react.useState("");
|
|
10851
10851
|
const trimmed = reason.trim();
|
|
@@ -10919,16 +10919,16 @@ function isCloseoutLocked2(error) {
|
|
|
10919
10919
|
return classification?.status === 423 || classification?.code === "TRIP_CLOSED_OUT";
|
|
10920
10920
|
}
|
|
10921
10921
|
function TripExpensesSection(props) {
|
|
10922
|
-
const session =
|
|
10922
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
10923
10923
|
if (session.status !== "authenticated") {
|
|
10924
10924
|
return null;
|
|
10925
10925
|
}
|
|
10926
10926
|
return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripExpensesSection, { ...props });
|
|
10927
10927
|
}
|
|
10928
10928
|
function ReadyTripExpensesSection({ tripRef, style }) {
|
|
10929
|
-
const { t } =
|
|
10930
|
-
const expenses =
|
|
10931
|
-
const vendors =
|
|
10929
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
10930
|
+
const expenses = chunk2OWH2KDY_cjs.useExpenses(tripRef);
|
|
10931
|
+
const vendors = chunk2OWH2KDY_cjs.useVendors(tripRef, "");
|
|
10932
10932
|
const [category, setCategory] = react.useState(null);
|
|
10933
10933
|
const [paymentMode, setPaymentMode] = react.useState(null);
|
|
10934
10934
|
const [missingReceiptOnly, setMissingReceiptOnly] = react.useState(false);
|
|
@@ -10997,7 +10997,7 @@ function ReadyTripExpensesSection({ tripRef, style }) {
|
|
|
10997
10997
|
return /* @__PURE__ */ jsxRuntime.jsx(ExpensesDark, { reason: expenses.reason });
|
|
10998
10998
|
}
|
|
10999
10999
|
const filtered = category !== null || paymentMode !== null || missingReceiptOnly;
|
|
11000
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-expenses-section", style:
|
|
11000
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-expenses-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
11001
11001
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-expenses-section__toolbar", children: [
|
|
11002
11002
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__toolbar-title", children: t("chrome.tripExpenses.panelLabel") }),
|
|
11003
11003
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-expenses-section__toolbar-spacer" }),
|
|
@@ -11277,7 +11277,7 @@ function FloatMovementDialog({
|
|
|
11277
11277
|
onClose,
|
|
11278
11278
|
onSubmit
|
|
11279
11279
|
}) {
|
|
11280
|
-
const { t } =
|
|
11280
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
11281
11281
|
const titleId = react.useId();
|
|
11282
11282
|
const [managerId, setManagerId] = react.useState(manager?.managerId ?? null);
|
|
11283
11283
|
const [amount, setAmount] = react.useState(
|
|
@@ -11510,7 +11510,7 @@ function FloatSkeleton() {
|
|
|
11510
11510
|
] }, id)) });
|
|
11511
11511
|
}
|
|
11512
11512
|
function FloatEmpty({ onIssue }) {
|
|
11513
|
-
const { t } =
|
|
11513
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
11514
11514
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__state", children: [
|
|
11515
11515
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(SafeIcon, {}) }),
|
|
11516
11516
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-float-section__state-title", children: t("chrome.tripFloat.emptyTitle") }),
|
|
@@ -11519,7 +11519,7 @@ function FloatEmpty({ onIssue }) {
|
|
|
11519
11519
|
] });
|
|
11520
11520
|
}
|
|
11521
11521
|
function FloatFailed({ onRetry }) {
|
|
11522
|
-
const { t } =
|
|
11522
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
11523
11523
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__state", role: "alert", children: [
|
|
11524
11524
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-float-section__state-title", children: t("chrome.tripFloat.failedTitle") }),
|
|
11525
11525
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-float-section__state-body", children: t("chrome.tripFloat.failedBody") }),
|
|
@@ -11527,7 +11527,7 @@ function FloatFailed({ onRetry }) {
|
|
|
11527
11527
|
] });
|
|
11528
11528
|
}
|
|
11529
11529
|
function FloatDark({ reason }) {
|
|
11530
|
-
const { t } =
|
|
11530
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
11531
11531
|
if (reason === "mode") {
|
|
11532
11532
|
return null;
|
|
11533
11533
|
}
|
|
@@ -11550,7 +11550,7 @@ function ManagerFloatCard({
|
|
|
11550
11550
|
onAdjust,
|
|
11551
11551
|
onSettle
|
|
11552
11552
|
}) {
|
|
11553
|
-
const { t } =
|
|
11553
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
11554
11554
|
const bodyId = `kf-float-${row.managerId}`;
|
|
11555
11555
|
const summary = row.summary;
|
|
11556
11556
|
const shares = summary === void 0 ? void 0 : usageShares(summary);
|
|
@@ -11756,16 +11756,16 @@ function refusedBalanceOf(error) {
|
|
|
11756
11756
|
return details?.currentBalanceMinor;
|
|
11757
11757
|
}
|
|
11758
11758
|
function TripFloatSection(props) {
|
|
11759
|
-
const session =
|
|
11759
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
11760
11760
|
if (session.status !== "authenticated") {
|
|
11761
11761
|
return null;
|
|
11762
11762
|
}
|
|
11763
11763
|
return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripFloatSection, { ...props });
|
|
11764
11764
|
}
|
|
11765
11765
|
function ReadyTripFloatSection({ tripRef, style }) {
|
|
11766
|
-
const { t } =
|
|
11767
|
-
const float =
|
|
11768
|
-
const managers =
|
|
11766
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
11767
|
+
const float = chunk2OWH2KDY_cjs.useFloat(tripRef);
|
|
11768
|
+
const managers = chunk2OWH2KDY_cjs.useManagers(tripRef);
|
|
11769
11769
|
const [openManagerId, setOpenManagerId] = react.useState(null);
|
|
11770
11770
|
const [ledgers, setLedgers] = react.useState({});
|
|
11771
11771
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -11891,7 +11891,7 @@ function ReadyTripFloatSection({ tripRef, style }) {
|
|
|
11891
11891
|
if (float.status === "dark") {
|
|
11892
11892
|
return /* @__PURE__ */ jsxRuntime.jsx(FloatDark, { reason: float.reason });
|
|
11893
11893
|
}
|
|
11894
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-float-section", style:
|
|
11894
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-float-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
11895
11895
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-float-section__toolbar", children: [
|
|
11896
11896
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__toolbar-title", children: t("chrome.tripFloat.panelLabel") }),
|
|
11897
11897
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-float-section__toolbar-spacer" }),
|
|
@@ -12006,7 +12006,7 @@ function DispatchDialog({
|
|
|
12006
12006
|
onClose,
|
|
12007
12007
|
onSend
|
|
12008
12008
|
}) {
|
|
12009
|
-
const { t } =
|
|
12009
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12010
12010
|
const titleId = react.useId();
|
|
12011
12011
|
const [everyone, setEveryone] = react.useState(true);
|
|
12012
12012
|
const [picked, setPicked] = react.useState(/* @__PURE__ */ new Set());
|
|
@@ -12154,7 +12154,7 @@ function FormRow2({
|
|
|
12154
12154
|
onExport,
|
|
12155
12155
|
onOpenMissing
|
|
12156
12156
|
}) {
|
|
12157
|
-
const { t } =
|
|
12157
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12158
12158
|
const canSeeMissing = supportsWhoIsMissing(form);
|
|
12159
12159
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-forms-section__row", children: [
|
|
12160
12160
|
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "kf-trip-forms-section__row-body", children: [
|
|
@@ -12207,14 +12207,14 @@ function FormsSkeleton() {
|
|
|
12207
12207
|
] }, id)) });
|
|
12208
12208
|
}
|
|
12209
12209
|
function FormsEmpty() {
|
|
12210
|
-
const { t } =
|
|
12210
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12211
12211
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", children: [
|
|
12212
12212
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t("chrome.tripForms.emptyTitle") }),
|
|
12213
12213
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-forms-section__state-body", children: t("chrome.tripForms.emptyBody") })
|
|
12214
12214
|
] });
|
|
12215
12215
|
}
|
|
12216
12216
|
function FormsFailed({ onRetry }) {
|
|
12217
|
-
const { t } =
|
|
12217
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12218
12218
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", role: "alert", children: [
|
|
12219
12219
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t("chrome.tripForms.failedTitle") }),
|
|
12220
12220
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-forms-section__state-body", children: t("chrome.tripForms.failedBody") }),
|
|
@@ -12222,7 +12222,7 @@ function FormsFailed({ onRetry }) {
|
|
|
12222
12222
|
] });
|
|
12223
12223
|
}
|
|
12224
12224
|
function FormsDark({ reason }) {
|
|
12225
|
-
const { t } =
|
|
12225
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12226
12226
|
if (reason === "mode") return null;
|
|
12227
12227
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__state", "data-dark": reason, children: [
|
|
12228
12228
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-forms-section__state-title", children: t(reason === "flag" ? "chrome.tripForms.flagDarkTitle" : "chrome.tripForms.dataDarkTitle") }),
|
|
@@ -12267,7 +12267,7 @@ function OnBehalfDialog({
|
|
|
12267
12267
|
onClose,
|
|
12268
12268
|
onSubmit
|
|
12269
12269
|
}) {
|
|
12270
|
-
const { t } =
|
|
12270
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12271
12271
|
const titleId = react.useId();
|
|
12272
12272
|
const [values, setValues] = react.useState({});
|
|
12273
12273
|
const answerable = react.useMemo(
|
|
@@ -12405,7 +12405,7 @@ function ParticipantRow({
|
|
|
12405
12405
|
onFillOnBehalf,
|
|
12406
12406
|
onOpenResponse
|
|
12407
12407
|
}) {
|
|
12408
|
-
const { t } =
|
|
12408
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12409
12409
|
const status = row.response?.status;
|
|
12410
12410
|
const submitted = status === "SUBMITTED";
|
|
12411
12411
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-forms-section__row", "data-done": submitted ? "true" : void 0, children: [
|
|
@@ -12458,7 +12458,7 @@ function ResponseViewer({
|
|
|
12458
12458
|
failed,
|
|
12459
12459
|
onClose
|
|
12460
12460
|
}) {
|
|
12461
|
-
const { t } =
|
|
12461
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12462
12462
|
const titleId = react.useId();
|
|
12463
12463
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12464
12464
|
SheetDialog,
|
|
@@ -12489,7 +12489,7 @@ function codeOf4(error) {
|
|
|
12489
12489
|
return classification?.code ?? "unknown";
|
|
12490
12490
|
}
|
|
12491
12491
|
function TripFormsSection(props) {
|
|
12492
|
-
const session =
|
|
12492
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
12493
12493
|
if (session.status !== "authenticated") {
|
|
12494
12494
|
return null;
|
|
12495
12495
|
}
|
|
@@ -12501,9 +12501,9 @@ function ReadyTripFormsSection({
|
|
|
12501
12501
|
components,
|
|
12502
12502
|
style
|
|
12503
12503
|
}) {
|
|
12504
|
-
const { t } =
|
|
12505
|
-
const forms =
|
|
12506
|
-
const { listTripManifest } =
|
|
12504
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12505
|
+
const forms = chunk2OWH2KDY_cjs.useForms(tripRef);
|
|
12506
|
+
const { listTripManifest } = chunkF4GGHUMX_cjs.useDirectories();
|
|
12507
12507
|
const [openFormId, setOpenFormId] = react.useState(null);
|
|
12508
12508
|
const [completion, setCompletion] = react.useState(void 0);
|
|
12509
12509
|
const [manifest, setManifest] = react.useState(void 0);
|
|
@@ -12625,7 +12625,7 @@ function ReadyTripFormsSection({
|
|
|
12625
12625
|
if (forms.status === "dark") return /* @__PURE__ */ jsxRuntime.jsx(FormsDark, { reason: forms.reason });
|
|
12626
12626
|
const inert = readOnly;
|
|
12627
12627
|
const unreadable = ready !== null && ready.syncedAt === void 0 && rows.length === 0;
|
|
12628
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-forms-section", style:
|
|
12628
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-forms-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
12629
12629
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__head", children: [
|
|
12630
12630
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-forms-section__head-text", children: [
|
|
12631
12631
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-forms-section__title", children: openForm === null ? t("chrome.tripForms.panelLabel") : openForm.title }),
|
|
@@ -12775,7 +12775,7 @@ function ChangeLogDialog({
|
|
|
12775
12775
|
onRetry,
|
|
12776
12776
|
onClose
|
|
12777
12777
|
}) {
|
|
12778
|
-
const { t } =
|
|
12778
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
12779
12779
|
const titleId = react.useId();
|
|
12780
12780
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12781
12781
|
SheetDialog,
|
|
@@ -13122,7 +13122,7 @@ function ItemRow({
|
|
|
13122
13122
|
onMoveBy,
|
|
13123
13123
|
onOpenVendor
|
|
13124
13124
|
}) {
|
|
13125
|
-
const { t } =
|
|
13125
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13126
13126
|
const derived = deriveItineraryItem(item, timeZone, serverTime);
|
|
13127
13127
|
const isDone = item.status === "COMPLETED";
|
|
13128
13128
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -13244,7 +13244,7 @@ function DayCard({
|
|
|
13244
13244
|
onSwitchToTimeline,
|
|
13245
13245
|
onOpenVendor
|
|
13246
13246
|
}) {
|
|
13247
|
-
const { t } =
|
|
13247
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13248
13248
|
const { draggingId, overIndex, rowProps, moveBy } = useListReorder({
|
|
13249
13249
|
enabled: canEdit,
|
|
13250
13250
|
onMove: onReorder
|
|
@@ -13295,7 +13295,7 @@ function DayCard({
|
|
|
13295
13295
|
] });
|
|
13296
13296
|
}
|
|
13297
13297
|
function DayPillStrip({ pills, activeIso, onSelect }) {
|
|
13298
|
-
const { t } =
|
|
13298
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13299
13299
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13300
13300
|
"div",
|
|
13301
13301
|
{
|
|
@@ -13372,7 +13372,7 @@ function EditDayDialog({
|
|
|
13372
13372
|
onClose,
|
|
13373
13373
|
onSubmit
|
|
13374
13374
|
}) {
|
|
13375
|
-
const { t } =
|
|
13375
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13376
13376
|
const titleId = react.useId();
|
|
13377
13377
|
const [cardTitle, setCardTitle] = react.useState(group.day.cardTitle);
|
|
13378
13378
|
const [hasSummary, setHasSummary] = react.useState(
|
|
@@ -13515,7 +13515,7 @@ function ItemFormDialog({
|
|
|
13515
13515
|
onSubmit,
|
|
13516
13516
|
onDelete
|
|
13517
13517
|
}) {
|
|
13518
|
-
const { t } =
|
|
13518
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13519
13519
|
const titleId = react.useId();
|
|
13520
13520
|
const isEdit = item !== null;
|
|
13521
13521
|
const [isoDate, setIsoDate] = react.useState(
|
|
@@ -13770,7 +13770,7 @@ function ItinerarySkeleton({ view }) {
|
|
|
13770
13770
|
] });
|
|
13771
13771
|
}
|
|
13772
13772
|
function ItineraryEmpty() {
|
|
13773
|
-
const { t } =
|
|
13773
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13774
13774
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__state", children: [
|
|
13775
13775
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(CalendarIcon, {}) }),
|
|
13776
13776
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-itinerary-section__state-title", children: t("chrome.tripItinerary.emptyTitle") }),
|
|
@@ -13778,7 +13778,7 @@ function ItineraryEmpty() {
|
|
|
13778
13778
|
] });
|
|
13779
13779
|
}
|
|
13780
13780
|
function ItineraryFailed({ onRetry }) {
|
|
13781
|
-
const { t } =
|
|
13781
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13782
13782
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__state", role: "alert", children: [
|
|
13783
13783
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-itinerary-section__state-title", children: t("chrome.tripItinerary.failedTitle") }),
|
|
13784
13784
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-itinerary-section__state-body", children: t("chrome.tripItinerary.failedBody") }),
|
|
@@ -13786,7 +13786,7 @@ function ItineraryFailed({ onRetry }) {
|
|
|
13786
13786
|
] });
|
|
13787
13787
|
}
|
|
13788
13788
|
function TimelineView({ entries, onOpenDay }) {
|
|
13789
|
-
const { t } =
|
|
13789
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13790
13790
|
return /* @__PURE__ */ jsxRuntime.jsx("section", { className: "kf-trip-itinerary-section__timeline", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__timeline-grid", children: [
|
|
13791
13791
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__timeline-line", "aria-hidden": "true" }),
|
|
13792
13792
|
entries.map((entry, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -13873,7 +13873,7 @@ var OPTIONS2 = [
|
|
|
13873
13873
|
{ value: "timeline", labelKey: "chrome.tripItinerary.viewTimeline" }
|
|
13874
13874
|
];
|
|
13875
13875
|
function ViewSegment({ value, onChange }) {
|
|
13876
|
-
const { t } =
|
|
13876
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13877
13877
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-itinerary-section__segment", children: [
|
|
13878
13878
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t("chrome.tripItinerary.viewLabel") }),
|
|
13879
13879
|
OPTIONS2.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -13895,7 +13895,7 @@ function codeOf5(error) {
|
|
|
13895
13895
|
return classification?.code ?? "unknown";
|
|
13896
13896
|
}
|
|
13897
13897
|
function TripItinerarySection(props) {
|
|
13898
|
-
const session =
|
|
13898
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
13899
13899
|
if (session.status !== "authenticated") {
|
|
13900
13900
|
return null;
|
|
13901
13901
|
}
|
|
@@ -13906,8 +13906,8 @@ function ReadyTripItinerarySection({
|
|
|
13906
13906
|
onOpenVendor,
|
|
13907
13907
|
style
|
|
13908
13908
|
}) {
|
|
13909
|
-
const { t } =
|
|
13910
|
-
const itinerary =
|
|
13909
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
13910
|
+
const itinerary = chunk2OWH2KDY_cjs.useItinerary(tripRef);
|
|
13911
13911
|
const [view, setView] = react.useState("days");
|
|
13912
13912
|
const [activeIso, setActiveIso] = react.useState(null);
|
|
13913
13913
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -14080,7 +14080,7 @@ function ReadyTripItinerarySection({
|
|
|
14080
14080
|
setActiveIso(isoDate);
|
|
14081
14081
|
setView("days");
|
|
14082
14082
|
}
|
|
14083
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-itinerary-section", style:
|
|
14083
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-itinerary-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
14084
14084
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-itinerary-section__toolbar", children: [
|
|
14085
14085
|
/* @__PURE__ */ jsxRuntime.jsx(ViewSegment, { value: view, onChange: setView }),
|
|
14086
14086
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-itinerary-section__toolbar-spacer" }),
|
|
@@ -14265,9 +14265,9 @@ function AddTravellerDialog({
|
|
|
14265
14265
|
onClose,
|
|
14266
14266
|
onAdded
|
|
14267
14267
|
}) {
|
|
14268
|
-
const { t } =
|
|
14268
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
14269
14269
|
const titleId = react.useId();
|
|
14270
|
-
const { makeTravellersFetch, addTraveller, createAgencyTraveller } =
|
|
14270
|
+
const { makeTravellersFetch, addTraveller, createAgencyTraveller } = chunkF4GGHUMX_cjs.useDirectories();
|
|
14271
14271
|
const [mode, setMode] = react.useState("search");
|
|
14272
14272
|
const [term, setTerm] = react.useState("");
|
|
14273
14273
|
const [debounced, setDebounced] = react.useState("");
|
|
@@ -14281,7 +14281,7 @@ function AddTravellerDialog({
|
|
|
14281
14281
|
return () => clearTimeout(timer);
|
|
14282
14282
|
}, [term]);
|
|
14283
14283
|
function reportFailure(error) {
|
|
14284
|
-
setErrorCode(
|
|
14284
|
+
setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
|
|
14285
14285
|
}
|
|
14286
14286
|
async function addExisting(externalTravellerId, fullName) {
|
|
14287
14287
|
setPending(true);
|
|
@@ -14433,8 +14433,8 @@ function DirectoryResults({
|
|
|
14433
14433
|
pendingId,
|
|
14434
14434
|
onPick
|
|
14435
14435
|
}) {
|
|
14436
|
-
const { t } =
|
|
14437
|
-
const { rows, hasNext, loadNext, settled, error } =
|
|
14436
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
14437
|
+
const { rows, hasNext, loadNext, settled, error } = chunkF4GGHUMX_cjs.usePaginatedList(fetch);
|
|
14438
14438
|
if (!settled) {
|
|
14439
14439
|
return /* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-manifest-section__dialog-note", "aria-live": "polite", children: t("chrome.tripManifest.addSearching") });
|
|
14440
14440
|
}
|
|
@@ -14519,9 +14519,9 @@ function ManageGroupsDialog({
|
|
|
14519
14519
|
onClose,
|
|
14520
14520
|
onSaved
|
|
14521
14521
|
}) {
|
|
14522
|
-
const { t } =
|
|
14522
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
14523
14523
|
const titleId = react.useId();
|
|
14524
|
-
const { createParty, patchParty, deleteParty } =
|
|
14524
|
+
const { createParty, patchParty, deleteParty } = chunkF4GGHUMX_cjs.useDirectories();
|
|
14525
14525
|
const groups = deriveManifestGroups(rows).filter(
|
|
14526
14526
|
(group) => group.id !== SOLO_GROUP_ID && group.party !== null
|
|
14527
14527
|
);
|
|
@@ -14749,7 +14749,7 @@ function ManageGroupsDialog({
|
|
|
14749
14749
|
}
|
|
14750
14750
|
var DIET_BUCKET_CAP = 4;
|
|
14751
14751
|
function ManifestFacetTiles({ facets, filtered }) {
|
|
14752
|
-
const { t } =
|
|
14752
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
14753
14753
|
const dietEntries = Object.entries(facets.dietCounts).filter(([, count]) => count > 0).sort((a, b) => b[1] - a[1]);
|
|
14754
14754
|
const shown = dietEntries.slice(0, DIET_BUCKET_CAP);
|
|
14755
14755
|
const hiddenCount = dietEntries.length - shown.length;
|
|
@@ -14831,7 +14831,7 @@ function ManifestFiltersPopover({
|
|
|
14831
14831
|
value,
|
|
14832
14832
|
onChange
|
|
14833
14833
|
}) {
|
|
14834
|
-
const { t } =
|
|
14834
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
14835
14835
|
const [open, setOpen] = react.useState(false);
|
|
14836
14836
|
const rootRef = react.useRef(null);
|
|
14837
14837
|
const triggerRef = react.useRef(null);
|
|
@@ -14971,7 +14971,7 @@ var KIND_LABEL_KEY2 = {
|
|
|
14971
14971
|
OTHER: "chrome.tripManifest.partyKind.other"
|
|
14972
14972
|
};
|
|
14973
14973
|
function ManifestGroupCard({ group, onEdit, children }) {
|
|
14974
|
-
const { t } =
|
|
14974
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
14975
14975
|
const party = group.party;
|
|
14976
14976
|
const isSolo = party === null;
|
|
14977
14977
|
const heading = isSolo ? t("chrome.tripManifest.soloHeading") : party.label ?? t(KIND_LABEL_KEY2[party.kind] ?? "chrome.tripManifest.partyKind.other");
|
|
@@ -15059,7 +15059,7 @@ function ManifestRowKebab({
|
|
|
15059
15059
|
onShareLink,
|
|
15060
15060
|
onOpenProfile
|
|
15061
15061
|
}) {
|
|
15062
|
-
const { t } =
|
|
15062
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
15063
15063
|
const [open, setOpen] = react.useState(false);
|
|
15064
15064
|
const rootRef = react.useRef(null);
|
|
15065
15065
|
const triggerRef = react.useRef(null);
|
|
@@ -15158,10 +15158,10 @@ function ManifestRow({
|
|
|
15158
15158
|
onOpenProfile,
|
|
15159
15159
|
style
|
|
15160
15160
|
}) {
|
|
15161
|
-
const { t } =
|
|
15161
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
15162
15162
|
const derived = deriveManifestRow(row, index, serverTime);
|
|
15163
15163
|
const traveller = row.traveller;
|
|
15164
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__row", style:
|
|
15164
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__row", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
15165
15165
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
15166
15166
|
"td",
|
|
15167
15167
|
{
|
|
@@ -15235,7 +15235,7 @@ function ManifestTable({
|
|
|
15235
15235
|
onOpenProfile,
|
|
15236
15236
|
RowComponent
|
|
15237
15237
|
}) {
|
|
15238
|
-
const { t } =
|
|
15238
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
15239
15239
|
const Row = RowComponent ?? ManifestRow;
|
|
15240
15240
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-manifest-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { role: "table", className: "kf-trip-manifest-section__table", children: [
|
|
15241
15241
|
showHead ? /* @__PURE__ */ jsxRuntime.jsx("thead", { role: "rowgroup", children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { role: "row", className: "kf-trip-manifest-section__head-row", children: [
|
|
@@ -15282,8 +15282,8 @@ function ManifestResultsBody({
|
|
|
15282
15282
|
RowComponent,
|
|
15283
15283
|
onRetry
|
|
15284
15284
|
}) {
|
|
15285
|
-
const { t } =
|
|
15286
|
-
const { makeManifestFetch, facets, groupedPageSize } =
|
|
15285
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
15286
|
+
const { makeManifestFetch, facets, groupedPageSize } = chunkF4GGHUMX_cjs.useAgencyTripManifest(tripRef);
|
|
15287
15287
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
15288
15288
|
const [hasSettled, setHasSettled] = react.useState(false);
|
|
15289
15289
|
const [serverTime, setServerTime] = react.useState(void 0);
|
|
@@ -15300,7 +15300,7 @@ function ManifestResultsBody({
|
|
|
15300
15300
|
if (meta?.serverTime !== void 0) setServerTime(meta.serverTime);
|
|
15301
15301
|
return page;
|
|
15302
15302
|
} catch (error) {
|
|
15303
|
-
setErrorCode(
|
|
15303
|
+
setErrorCode(chunk2OWH2KDY_cjs.classifyError(error).code ?? "unknown");
|
|
15304
15304
|
return { rows: [], nextCursor: void 0 };
|
|
15305
15305
|
} finally {
|
|
15306
15306
|
setHasSettled(true);
|
|
@@ -15308,7 +15308,7 @@ function ManifestResultsBody({
|
|
|
15308
15308
|
},
|
|
15309
15309
|
[makeManifestFetch, filters, grouped, groupedPageSize]
|
|
15310
15310
|
);
|
|
15311
|
-
const { rows, hasNext, hasPrev, loadNext, loadPrev } =
|
|
15311
|
+
const { rows, hasNext, hasPrev, loadNext, loadPrev } = chunkF4GGHUMX_cjs.usePaginatedList(fetch, {
|
|
15312
15312
|
accumulate: grouped
|
|
15313
15313
|
});
|
|
15314
15314
|
react.useEffect(() => {
|
|
@@ -15469,7 +15469,7 @@ function ManifestSearchInput({
|
|
|
15469
15469
|
debounceMs,
|
|
15470
15470
|
onDebouncedChange
|
|
15471
15471
|
}) {
|
|
15472
|
-
const { t } =
|
|
15472
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
15473
15473
|
const [value, setValue] = react.useState("");
|
|
15474
15474
|
react.useEffect(() => {
|
|
15475
15475
|
const timer = setTimeout(() => onDebouncedChange(value.trim()), debounceMs);
|
|
@@ -15496,8 +15496,8 @@ function RemoveTravellerDialog({
|
|
|
15496
15496
|
onClose,
|
|
15497
15497
|
onRemoved
|
|
15498
15498
|
}) {
|
|
15499
|
-
const { t } =
|
|
15500
|
-
const { removeFromManifest } =
|
|
15499
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
15500
|
+
const { removeFromManifest } = chunkF4GGHUMX_cjs.useDirectories();
|
|
15501
15501
|
const titleId = react.useId();
|
|
15502
15502
|
const [pending, setPending] = react.useState(false);
|
|
15503
15503
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
@@ -15584,7 +15584,7 @@ function shareAddress(build, token) {
|
|
|
15584
15584
|
}
|
|
15585
15585
|
var warnedNoShareUrl = false;
|
|
15586
15586
|
function warnMissingShareUrl() {
|
|
15587
|
-
if (warnedNoShareUrl || !
|
|
15587
|
+
if (warnedNoShareUrl || !chunkS53XNHRU_cjs.isDevelopment()) return;
|
|
15588
15588
|
warnedNoShareUrl = true;
|
|
15589
15589
|
console.warn(
|
|
15590
15590
|
"[kaafil-react-uikit] No `buildShareUrl` on <KaafilUIKitProvider>, so the share dialog is showing operators a bare token instead of a sendable address. Kaafil returns a token, never a URL \u2014 the traveller page is on your domain. Fix: buildShareUrl={(token) => `${window.location.origin}/share/${token}`}"
|
|
@@ -15596,14 +15596,14 @@ function ShareLinkDialog({
|
|
|
15596
15596
|
travellerName,
|
|
15597
15597
|
onClose
|
|
15598
15598
|
}) {
|
|
15599
|
-
const { t } =
|
|
15599
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
15600
15600
|
const titleId = react.useId();
|
|
15601
|
-
const buildShareUrl =
|
|
15601
|
+
const buildShareUrl = chunkF4GGHUMX_cjs.useBuildShareUrl();
|
|
15602
15602
|
const showsBareToken = buildShareUrl === null;
|
|
15603
15603
|
if (showsBareToken) warnMissingShareUrl();
|
|
15604
15604
|
const isFamily = travellerRef === null;
|
|
15605
|
-
const offerable =
|
|
15606
|
-
const { links, readFailed, mint, revoke, regenerate, reveal } =
|
|
15605
|
+
const offerable = chunkF4GGHUMX_cjs.familySafeSections(isFamily);
|
|
15606
|
+
const { links, readFailed, mint, revoke, regenerate, reveal } = chunkF4GGHUMX_cjs.useShareLinks(
|
|
15607
15607
|
tripRef,
|
|
15608
15608
|
travellerRef
|
|
15609
15609
|
);
|
|
@@ -15942,7 +15942,7 @@ function SideDrawer({
|
|
|
15942
15942
|
"aria-modal": "true",
|
|
15943
15943
|
"aria-labelledby": titleId,
|
|
15944
15944
|
tabIndex: -1,
|
|
15945
|
-
style:
|
|
15945
|
+
style: chunkS53XNHRU_cjs.tokenStyle(style),
|
|
15946
15946
|
children: [
|
|
15947
15947
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-admin-side-drawer__header", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-side-drawer__header-row", children: [
|
|
15948
15948
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-side-drawer__identity", children: [
|
|
@@ -16010,11 +16010,11 @@ function TravellerDetailDialog({
|
|
|
16010
16010
|
onClose,
|
|
16011
16011
|
onRemove
|
|
16012
16012
|
}) {
|
|
16013
|
-
const { t } =
|
|
16013
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16014
16014
|
const titleId = react.useId();
|
|
16015
|
-
const { read, readFailed, refresh } =
|
|
16016
|
-
const forms =
|
|
16017
|
-
const { addTravellerNote } =
|
|
16015
|
+
const { read, readFailed, refresh } = chunk2OWH2KDY_cjs.useTravellerProfile(tripRef, travellerRef);
|
|
16016
|
+
const forms = chunkF4GGHUMX_cjs.useTravellerFormResponses(tripRef, travellerRef);
|
|
16017
|
+
const { addTravellerNote } = chunkF4GGHUMX_cjs.useDirectories();
|
|
16018
16018
|
const [noteDraft, setNoteDraft] = react.useState("");
|
|
16019
16019
|
const [notePending, setNotePending] = react.useState(false);
|
|
16020
16020
|
const [noteFailed, setNoteFailed] = react.useState(false);
|
|
@@ -16243,7 +16243,7 @@ function DetailRow({
|
|
|
16243
16243
|
absentLabel,
|
|
16244
16244
|
meta
|
|
16245
16245
|
}) {
|
|
16246
|
-
const { t } =
|
|
16246
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16247
16247
|
const has = value !== null && value !== void 0 && value.length > 0;
|
|
16248
16248
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section__detail-row", children: [
|
|
16249
16249
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-manifest-section__detail-label", children: label }),
|
|
@@ -16266,7 +16266,7 @@ function TripManifestSection({
|
|
|
16266
16266
|
components,
|
|
16267
16267
|
style
|
|
16268
16268
|
}) {
|
|
16269
|
-
const { t } =
|
|
16269
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16270
16270
|
const [q, setQ] = react.useState("");
|
|
16271
16271
|
const [groupBy, setGroupBy] = react.useState("booking_group");
|
|
16272
16272
|
const [filters, setFilters] = react.useState({});
|
|
@@ -16295,7 +16295,7 @@ function TripManifestSection({
|
|
|
16295
16295
|
[groupBy, writeToken, wireFilters]
|
|
16296
16296
|
);
|
|
16297
16297
|
const hasActiveFilter = q.length > 0 || Object.keys(filters).length > 0;
|
|
16298
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section", style:
|
|
16298
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
16299
16299
|
facets === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(ManifestFacetTiles, { facets, filtered: hasActiveFilter }),
|
|
16300
16300
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-manifest-section__toolbar", children: [
|
|
16301
16301
|
/* @__PURE__ */ jsxRuntime.jsx(ManifestSearchInput, { debounceMs: DEBOUNCE_MS, onDebouncedChange: setQ }),
|
|
@@ -16514,7 +16514,7 @@ function PaymentsSkeleton() {
|
|
|
16514
16514
|
] }, id)) });
|
|
16515
16515
|
}
|
|
16516
16516
|
function PaymentsEmpty({ onRecord }) {
|
|
16517
|
-
const { t } =
|
|
16517
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16518
16518
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__state", children: [
|
|
16519
16519
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(ReceiptIcon, {}) }),
|
|
16520
16520
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-payments-section__state-title", children: t("chrome.tripPayments.emptyTitle") }),
|
|
@@ -16523,7 +16523,7 @@ function PaymentsEmpty({ onRecord }) {
|
|
|
16523
16523
|
] });
|
|
16524
16524
|
}
|
|
16525
16525
|
function PaymentsFailed({ onRetry }) {
|
|
16526
|
-
const { t } =
|
|
16526
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16527
16527
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__state", role: "alert", children: [
|
|
16528
16528
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-payments-section__state-title", children: t("chrome.tripPayments.failedTitle") }),
|
|
16529
16529
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-payments-section__state-body", children: t("chrome.tripPayments.failedBody") }),
|
|
@@ -16531,7 +16531,7 @@ function PaymentsFailed({ onRetry }) {
|
|
|
16531
16531
|
] });
|
|
16532
16532
|
}
|
|
16533
16533
|
function PaymentsDark({ reason }) {
|
|
16534
|
-
const { t } =
|
|
16534
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16535
16535
|
if (reason === "mode") {
|
|
16536
16536
|
return null;
|
|
16537
16537
|
}
|
|
@@ -16552,7 +16552,7 @@ function PaymentsTable({
|
|
|
16552
16552
|
locked,
|
|
16553
16553
|
onVoid
|
|
16554
16554
|
}) {
|
|
16555
|
-
const { t } =
|
|
16555
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16556
16556
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-payments-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-payments-section__table", children: [
|
|
16557
16557
|
/* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripPayments.tableCaption") }),
|
|
16558
16558
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
@@ -16611,7 +16611,7 @@ function RecordPaymentDialog({
|
|
|
16611
16611
|
onClose,
|
|
16612
16612
|
onSubmit
|
|
16613
16613
|
}) {
|
|
16614
|
-
const { t } =
|
|
16614
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16615
16615
|
const titleId = react.useId();
|
|
16616
16616
|
const [travellerId, setTravellerId] = react.useState(null);
|
|
16617
16617
|
const [amount, setAmount] = react.useState("");
|
|
@@ -16786,7 +16786,7 @@ function VoidPaymentDialog({
|
|
|
16786
16786
|
onClose,
|
|
16787
16787
|
onSubmit
|
|
16788
16788
|
}) {
|
|
16789
|
-
const { t } =
|
|
16789
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16790
16790
|
const titleId = react.useId();
|
|
16791
16791
|
const [reason, setReason] = react.useState("");
|
|
16792
16792
|
const trimmed = reason.trim();
|
|
@@ -16860,7 +16860,7 @@ function isCloseoutLocked4(error) {
|
|
|
16860
16860
|
return classification?.status === 423 || classification?.code === "TRIP_CLOSED_OUT";
|
|
16861
16861
|
}
|
|
16862
16862
|
function TripPaymentsSection(props) {
|
|
16863
|
-
const session =
|
|
16863
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
16864
16864
|
if (session.status !== "authenticated") {
|
|
16865
16865
|
return null;
|
|
16866
16866
|
}
|
|
@@ -16871,9 +16871,9 @@ function ReadyTripPaymentsSection({
|
|
|
16871
16871
|
balance,
|
|
16872
16872
|
style
|
|
16873
16873
|
}) {
|
|
16874
|
-
const { t } =
|
|
16875
|
-
const collections =
|
|
16876
|
-
const parties =
|
|
16874
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
16875
|
+
const collections = chunk2OWH2KDY_cjs.useCollections(tripRef);
|
|
16876
|
+
const parties = chunk2OWH2KDY_cjs.useParties(tripRef);
|
|
16877
16877
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
16878
16878
|
const [pending, setPending] = react.useState(false);
|
|
16879
16879
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
@@ -16953,7 +16953,7 @@ function ReadyTripPaymentsSection({
|
|
|
16953
16953
|
}
|
|
16954
16954
|
const currency = balance?.currency ?? rows[0]?.currency ?? "INR";
|
|
16955
16955
|
const owingCount = eligibleRows.filter((row) => row.outstandingMinor > 0).length;
|
|
16956
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-payments-section", style:
|
|
16956
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-payments-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
16957
16957
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-payments-section__toolbar", children: [
|
|
16958
16958
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__toolbar-title", children: t("chrome.tripPayments.panelLabel") }),
|
|
16959
16959
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-payments-section__toolbar-spacer" }),
|
|
@@ -17094,7 +17094,7 @@ function AssignTravellerDialog({
|
|
|
17094
17094
|
onSubmit,
|
|
17095
17095
|
onClose
|
|
17096
17096
|
}) {
|
|
17097
|
-
const { t } =
|
|
17097
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17098
17098
|
const titleId = react.useId();
|
|
17099
17099
|
const [pointId, setPointId] = react.useState(stops[0]?.id ?? "");
|
|
17100
17100
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -17165,7 +17165,7 @@ function BoardingRoster({
|
|
|
17165
17165
|
onRetry,
|
|
17166
17166
|
stops
|
|
17167
17167
|
}) {
|
|
17168
|
-
const { t } =
|
|
17168
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17169
17169
|
if (failed) {
|
|
17170
17170
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", role: "alert", children: [
|
|
17171
17171
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.boardingFailedTitle") }),
|
|
@@ -17225,7 +17225,7 @@ function TravellerBoardRow({
|
|
|
17225
17225
|
busy,
|
|
17226
17226
|
onCorrect
|
|
17227
17227
|
}) {
|
|
17228
|
-
const { t } =
|
|
17228
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17229
17229
|
const correctable = occupant.status !== "PENDING";
|
|
17230
17230
|
const next = occupant.status === "BOARDED" ? "NO_SHOW" : "BOARDED";
|
|
17231
17231
|
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "kf-trip-pickups-section__roster-row", children: [
|
|
@@ -17263,7 +17263,7 @@ function DeleteStopDialog({
|
|
|
17263
17263
|
onDelete,
|
|
17264
17264
|
onClose
|
|
17265
17265
|
}) {
|
|
17266
|
-
const { t } =
|
|
17266
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17267
17267
|
const titleId = react.useId();
|
|
17268
17268
|
const [target, setTarget] = react.useState(siblings[0]?.id ?? "");
|
|
17269
17269
|
const occupied = stop.expectedCount > 0;
|
|
@@ -17517,7 +17517,7 @@ function PickupsEmpty({
|
|
|
17517
17517
|
kindLabel,
|
|
17518
17518
|
onAdd
|
|
17519
17519
|
}) {
|
|
17520
|
-
const { t } =
|
|
17520
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17521
17521
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", children: [
|
|
17522
17522
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-pickups-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BusIcon, {}) }),
|
|
17523
17523
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.emptyTitle").replace("{kind}", kindLabel) }),
|
|
@@ -17526,7 +17526,7 @@ function PickupsEmpty({
|
|
|
17526
17526
|
] });
|
|
17527
17527
|
}
|
|
17528
17528
|
function PickupsFailed({ onRetry }) {
|
|
17529
|
-
const { t } =
|
|
17529
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17530
17530
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__state", role: "alert", children: [
|
|
17531
17531
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-pickups-section__state-title", children: t("chrome.tripPickups.failedTitle") }),
|
|
17532
17532
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-pickups-section__state-body", children: t("chrome.tripPickups.failedBody") }),
|
|
@@ -17534,7 +17534,7 @@ function PickupsFailed({ onRetry }) {
|
|
|
17534
17534
|
] });
|
|
17535
17535
|
}
|
|
17536
17536
|
function PickupsDark({ reason }) {
|
|
17537
|
-
const { t } =
|
|
17537
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17538
17538
|
if (reason === "mode") {
|
|
17539
17539
|
return null;
|
|
17540
17540
|
}
|
|
@@ -17568,7 +17568,7 @@ function StopFormDialog({
|
|
|
17568
17568
|
onClose,
|
|
17569
17569
|
onSubmit
|
|
17570
17570
|
}) {
|
|
17571
|
-
const { t } =
|
|
17571
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17572
17572
|
const titleId = react.useId();
|
|
17573
17573
|
const isEdit = stop !== null;
|
|
17574
17574
|
const [kind, setKind] = react.useState(stop?.kind ?? defaultKind);
|
|
@@ -17715,7 +17715,7 @@ function StopFormDialog({
|
|
|
17715
17715
|
);
|
|
17716
17716
|
}
|
|
17717
17717
|
function StopKebab({ stopName, onEdit, onDelete }) {
|
|
17718
|
-
const { t } =
|
|
17718
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17719
17719
|
const [open, setOpen] = react.useState(false);
|
|
17720
17720
|
const rootRef = react.useRef(null);
|
|
17721
17721
|
const triggerRef = react.useRef(null);
|
|
@@ -17792,7 +17792,7 @@ function StopCard({
|
|
|
17792
17792
|
onDelete,
|
|
17793
17793
|
onMoveBy
|
|
17794
17794
|
}) {
|
|
17795
|
-
const { t } =
|
|
17795
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17796
17796
|
const isClosed = stop.status === "CLOSED";
|
|
17797
17797
|
const canReorder = !isClosed;
|
|
17798
17798
|
const percent = boardedPercent(stop);
|
|
@@ -17940,7 +17940,7 @@ function Segment({
|
|
|
17940
17940
|
value,
|
|
17941
17941
|
onChange
|
|
17942
17942
|
}) {
|
|
17943
|
-
const { t } =
|
|
17943
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
17944
17944
|
return /* @__PURE__ */ jsxRuntime.jsxs("fieldset", { className: "kf-trip-pickups-section__segment", children: [
|
|
17945
17945
|
/* @__PURE__ */ jsxRuntime.jsx("legend", { className: "kf-visually-hidden", children: t(legendKey) }),
|
|
17946
17946
|
options.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -17998,7 +17998,7 @@ function codeOf7(error) {
|
|
|
17998
17998
|
return classification?.code ?? "unknown";
|
|
17999
17999
|
}
|
|
18000
18000
|
function TripPickupsSection(props) {
|
|
18001
|
-
const session =
|
|
18001
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
18002
18002
|
if (session.status !== "authenticated") {
|
|
18003
18003
|
return null;
|
|
18004
18004
|
}
|
|
@@ -18010,8 +18010,8 @@ function ReadyTripPickupsSection({
|
|
|
18010
18010
|
tripStartIso,
|
|
18011
18011
|
style
|
|
18012
18012
|
}) {
|
|
18013
|
-
const { t } =
|
|
18014
|
-
const pickups =
|
|
18013
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
18014
|
+
const pickups = chunk2OWH2KDY_cjs.usePickups(tripRef);
|
|
18015
18015
|
const [kind, setKind] = react.useState("PICKUP");
|
|
18016
18016
|
const [view, setView] = react.useState("stops");
|
|
18017
18017
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -18171,7 +18171,7 @@ function ReadyTripPickupsSection({
|
|
|
18171
18171
|
const kindLabel = t(
|
|
18172
18172
|
kind === "PICKUP" ? "chrome.tripPickups.kindPickupOne" : "chrome.tripPickups.kindDropOne"
|
|
18173
18173
|
);
|
|
18174
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-pickups-section", style:
|
|
18174
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-pickups-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
18175
18175
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-pickups-section__toolbar", children: [
|
|
18176
18176
|
/* @__PURE__ */ jsxRuntime.jsx(ViewSwitcher, { value: view, onChange: setView }),
|
|
18177
18177
|
/* @__PURE__ */ jsxRuntime.jsx(KindSwitcher, { value: kind, onChange: setKind }),
|
|
@@ -18394,7 +18394,7 @@ function AutoAssignDialog({
|
|
|
18394
18394
|
onApply,
|
|
18395
18395
|
onClose
|
|
18396
18396
|
}) {
|
|
18397
|
-
const { t } =
|
|
18397
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
18398
18398
|
const titleId = react.useId();
|
|
18399
18399
|
const [reassignAll, setReassignAll] = react.useState(false);
|
|
18400
18400
|
const roomCodeById = new Map(group.rooms.map((room) => [room.id, room.code]));
|
|
@@ -18489,7 +18489,7 @@ function AutoAssignDialog({
|
|
|
18489
18489
|
/* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section__plan", children: [
|
|
18490
18490
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__plan-title", children: t("chrome.tripRooming.rulesTitle") }),
|
|
18491
18491
|
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "kf-trip-rooming-section__rule-list", children: preview.perRule.map((entry) => {
|
|
18492
|
-
const severity =
|
|
18492
|
+
const severity = chunk2OWH2KDY_cjs.roomingHeuristicSeverity(entry.rule);
|
|
18493
18493
|
const relaxed = entry.outcome === "relaxed";
|
|
18494
18494
|
const violation = relaxed && severity === "never";
|
|
18495
18495
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -18535,7 +18535,7 @@ function DeleteShell({
|
|
|
18535
18535
|
onConfirm,
|
|
18536
18536
|
onClose
|
|
18537
18537
|
}) {
|
|
18538
|
-
const { t } =
|
|
18538
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
18539
18539
|
const titleId = react.useId();
|
|
18540
18540
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18541
18541
|
SheetDialog,
|
|
@@ -18581,7 +18581,7 @@ function DeleteRoomDialog({
|
|
|
18581
18581
|
onConfirm,
|
|
18582
18582
|
onClose
|
|
18583
18583
|
}) {
|
|
18584
|
-
const { t } =
|
|
18584
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
18585
18585
|
const occupied = room.beds.filter((bed) => bed.occupant !== null).length;
|
|
18586
18586
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18587
18587
|
DeleteShell,
|
|
@@ -18607,7 +18607,7 @@ function DeleteWindowDialog({
|
|
|
18607
18607
|
onConfirm,
|
|
18608
18608
|
onClose
|
|
18609
18609
|
}) {
|
|
18610
|
-
const { t } =
|
|
18610
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
18611
18611
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18612
18612
|
DeleteShell,
|
|
18613
18613
|
{
|
|
@@ -18705,15 +18705,15 @@ function roomTypeLabelKey(roomType) {
|
|
|
18705
18705
|
return ROOM_TYPE_LABEL_KEY[roomType] ?? "chrome.tripRooming.roomType.shared";
|
|
18706
18706
|
}
|
|
18707
18707
|
function toneAttrs(tone) {
|
|
18708
|
-
const parsed =
|
|
18708
|
+
const parsed = chunk2OWH2KDY_cjs.parseRoomingTone(tone);
|
|
18709
18709
|
if (parsed === void 0) {
|
|
18710
|
-
return { family:
|
|
18710
|
+
return { family: chunk2OWH2KDY_cjs.TONE_FAMILIES.UNKNOWN, shade: 0 };
|
|
18711
18711
|
}
|
|
18712
|
-
const shade = parsed.shade <
|
|
18712
|
+
const shade = parsed.shade < chunk2OWH2KDY_cjs.SHADES_PER_FAMILY ? parsed.shade : parsed.shade % chunk2OWH2KDY_cjs.SHADES_PER_FAMILY;
|
|
18713
18713
|
return { family: parsed.family, shade };
|
|
18714
18714
|
}
|
|
18715
18715
|
function glyphOf(occupant) {
|
|
18716
|
-
return occupant.glyph === "" ?
|
|
18716
|
+
return occupant.glyph === "" ? chunk2OWH2KDY_cjs.FALLBACK_GLYPH : occupant.glyph;
|
|
18717
18717
|
}
|
|
18718
18718
|
function TravellerGlyph({
|
|
18719
18719
|
occupant,
|
|
@@ -18751,7 +18751,7 @@ var COLLAPSED_COUNT = 10;
|
|
|
18751
18751
|
function IdentityLegend({
|
|
18752
18752
|
occupants
|
|
18753
18753
|
}) {
|
|
18754
|
-
const { t } =
|
|
18754
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
18755
18755
|
const [open, setOpen] = react.useState(false);
|
|
18756
18756
|
if (occupants.length === 0) {
|
|
18757
18757
|
return null;
|
|
@@ -18878,7 +18878,7 @@ function RoomFormDialog({
|
|
|
18878
18878
|
onClose,
|
|
18879
18879
|
onSubmit
|
|
18880
18880
|
}) {
|
|
18881
|
-
const { t } =
|
|
18881
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
18882
18882
|
const titleId = react.useId();
|
|
18883
18883
|
const isEdit = room !== null;
|
|
18884
18884
|
const [code, setCode] = react.useState(room?.code ?? "");
|
|
@@ -19002,7 +19002,7 @@ function RoomingSkeleton() {
|
|
|
19002
19002
|
] }, id)) });
|
|
19003
19003
|
}
|
|
19004
19004
|
function RoomingEmpty({ onAddWindow }) {
|
|
19005
|
-
const { t } =
|
|
19005
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19006
19006
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__state", children: [
|
|
19007
19007
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BedIcon, {}) }),
|
|
19008
19008
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__state-title", children: t("chrome.tripRooming.emptyTitle") }),
|
|
@@ -19011,7 +19011,7 @@ function RoomingEmpty({ onAddWindow }) {
|
|
|
19011
19011
|
] });
|
|
19012
19012
|
}
|
|
19013
19013
|
function RoomingFailed({ onRetry }) {
|
|
19014
|
-
const { t } =
|
|
19014
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19015
19015
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__state", role: "alert", children: [
|
|
19016
19016
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-rooming-section__state-title", children: t("chrome.tripRooming.failedTitle") }),
|
|
19017
19017
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-rooming-section__state-body", children: t("chrome.tripRooming.failedBody") }),
|
|
@@ -19019,7 +19019,7 @@ function RoomingFailed({ onRetry }) {
|
|
|
19019
19019
|
] });
|
|
19020
19020
|
}
|
|
19021
19021
|
function RoomingDark({ reason }) {
|
|
19022
|
-
const { t } =
|
|
19022
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19023
19023
|
if (reason === "mode") {
|
|
19024
19024
|
return null;
|
|
19025
19025
|
}
|
|
@@ -19034,7 +19034,7 @@ function RoomingDark({ reason }) {
|
|
|
19034
19034
|
] });
|
|
19035
19035
|
}
|
|
19036
19036
|
function RoomKebab({ roomCode, onEdit, onDelete }) {
|
|
19037
|
-
const { t } =
|
|
19037
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19038
19038
|
const [open, setOpen] = react.useState(false);
|
|
19039
19039
|
const rootRef = react.useRef(null);
|
|
19040
19040
|
const triggerRef = react.useRef(null);
|
|
@@ -19099,7 +19099,7 @@ function RoomKebab({ roomCode, onEdit, onDelete }) {
|
|
|
19099
19099
|
] });
|
|
19100
19100
|
}
|
|
19101
19101
|
function RoomCard({ room, drag, busy, onEdit, onDelete }) {
|
|
19102
|
-
const { t } =
|
|
19102
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19103
19103
|
const occupied = room.beds.filter((bed) => bed.occupant !== null).length;
|
|
19104
19104
|
return /* @__PURE__ */ jsxRuntime.jsxs("article", { className: "kf-trip-rooming-section__room", "data-busy": busy ? "true" : void 0, children: [
|
|
19105
19105
|
/* @__PURE__ */ jsxRuntime.jsxs("header", { className: "kf-trip-rooming-section__room-head", children: [
|
|
@@ -19149,7 +19149,7 @@ function UnassignedStrip({
|
|
|
19149
19149
|
drag,
|
|
19150
19150
|
busy
|
|
19151
19151
|
}) {
|
|
19152
|
-
const { t } =
|
|
19152
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19153
19153
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
19154
19154
|
"div",
|
|
19155
19155
|
{
|
|
@@ -19223,7 +19223,7 @@ function WindowAccordion({
|
|
|
19223
19223
|
onEditRoom,
|
|
19224
19224
|
onDeleteRoom
|
|
19225
19225
|
}) {
|
|
19226
|
-
const { t } =
|
|
19226
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19227
19227
|
const percent = fillPercent(group);
|
|
19228
19228
|
const bodyId = `kf-rooming-window-${group.window.id}`;
|
|
19229
19229
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -19373,7 +19373,7 @@ function WindowFormDialog({
|
|
|
19373
19373
|
onClose,
|
|
19374
19374
|
onSubmit
|
|
19375
19375
|
}) {
|
|
19376
|
-
const { t } =
|
|
19376
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19377
19377
|
const titleId = react.useId();
|
|
19378
19378
|
const isEdit = window !== null;
|
|
19379
19379
|
const [label, setLabel] = react.useState(window?.label ?? "");
|
|
@@ -19480,7 +19480,7 @@ function codeOf8(error) {
|
|
|
19480
19480
|
return classification?.code ?? "unknown";
|
|
19481
19481
|
}
|
|
19482
19482
|
function TripRoomingSection(props) {
|
|
19483
|
-
const session =
|
|
19483
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
19484
19484
|
if (session.status !== "authenticated") {
|
|
19485
19485
|
return null;
|
|
19486
19486
|
}
|
|
@@ -19493,8 +19493,8 @@ function ReadyTripRoomingSection({
|
|
|
19493
19493
|
tripEndIso,
|
|
19494
19494
|
style
|
|
19495
19495
|
}) {
|
|
19496
|
-
const { t } =
|
|
19497
|
-
const rooming =
|
|
19496
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19497
|
+
const rooming = chunk2OWH2KDY_cjs.useRooming(tripRef);
|
|
19498
19498
|
const [openWindowId, setOpenWindowId] = react.useState(null);
|
|
19499
19499
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
19500
19500
|
const [pending, setPending] = react.useState(false);
|
|
@@ -19632,7 +19632,7 @@ function ReadyTripRoomingSection({
|
|
|
19632
19632
|
return /* @__PURE__ */ jsxRuntime.jsx(RoomingDark, { reason: rooming.reason });
|
|
19633
19633
|
}
|
|
19634
19634
|
const pool = ready?.unassignedPool;
|
|
19635
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section", style:
|
|
19635
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-rooming-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
19636
19636
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-rooming-section__toolbar", children: [
|
|
19637
19637
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__toolbar-title", children: t("chrome.tripRooming.panelLabel") }),
|
|
19638
19638
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-rooming-section__toolbar-spacer" }),
|
|
@@ -19866,7 +19866,7 @@ function isAgencyAuthored(vendor) {
|
|
|
19866
19866
|
return vendor.externalId.startsWith("kf-");
|
|
19867
19867
|
}
|
|
19868
19868
|
function CategoryTabs({ selected, counts, total, onSelect }) {
|
|
19869
|
-
const { t } =
|
|
19869
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19870
19870
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__chips", children: [
|
|
19871
19871
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
19872
19872
|
"button",
|
|
@@ -19909,7 +19909,7 @@ function DeleteSupplierDialog({
|
|
|
19909
19909
|
onConfirm,
|
|
19910
19910
|
onClose
|
|
19911
19911
|
}) {
|
|
19912
|
-
const { t } =
|
|
19912
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
19913
19913
|
const titleId = react.useId();
|
|
19914
19914
|
const blockers = deleteBlockers(usage);
|
|
19915
19915
|
const blockedLocally = blockers !== void 0 && blockers.vehicles + blockers.expenses > 0;
|
|
@@ -20062,7 +20062,7 @@ function SupplierFormDialog({
|
|
|
20062
20062
|
onClose,
|
|
20063
20063
|
onSubmit
|
|
20064
20064
|
}) {
|
|
20065
|
-
const { t } =
|
|
20065
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20066
20066
|
const titleId = react.useId();
|
|
20067
20067
|
const isEdit = supplier !== null;
|
|
20068
20068
|
const [name, setName] = react.useState(supplier?.name ?? "");
|
|
@@ -20184,7 +20184,7 @@ function SuppliersSkeleton() {
|
|
|
20184
20184
|
] }, id)) });
|
|
20185
20185
|
}
|
|
20186
20186
|
function SuppliersEmpty({ onAdd }) {
|
|
20187
|
-
const { t } =
|
|
20187
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20188
20188
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", children: [
|
|
20189
20189
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(StorefrontIcon, {}) }),
|
|
20190
20190
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.emptyTitle") }),
|
|
@@ -20193,7 +20193,7 @@ function SuppliersEmpty({ onAdd }) {
|
|
|
20193
20193
|
] });
|
|
20194
20194
|
}
|
|
20195
20195
|
function SuppliersNoMatch({ onClear }) {
|
|
20196
|
-
const { t } =
|
|
20196
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20197
20197
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", children: [
|
|
20198
20198
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.noMatchTitle") }),
|
|
20199
20199
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-suppliers-section__state-body", children: t("chrome.tripSuppliers.noMatchBody") }),
|
|
@@ -20201,7 +20201,7 @@ function SuppliersNoMatch({ onClear }) {
|
|
|
20201
20201
|
] });
|
|
20202
20202
|
}
|
|
20203
20203
|
function SuppliersFailed({ onRetry }) {
|
|
20204
|
-
const { t } =
|
|
20204
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20205
20205
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__state", role: "alert", children: [
|
|
20206
20206
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-suppliers-section__state-title", children: t("chrome.tripSuppliers.failedTitle") }),
|
|
20207
20207
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-suppliers-section__state-body", children: t("chrome.tripSuppliers.failedBody") }),
|
|
@@ -20209,7 +20209,7 @@ function SuppliersFailed({ onRetry }) {
|
|
|
20209
20209
|
] });
|
|
20210
20210
|
}
|
|
20211
20211
|
function SuppliersDark({ reason }) {
|
|
20212
|
-
const { t } =
|
|
20212
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20213
20213
|
if (reason === "mode") {
|
|
20214
20214
|
return null;
|
|
20215
20215
|
}
|
|
@@ -20224,7 +20224,7 @@ function SuppliersDark({ reason }) {
|
|
|
20224
20224
|
] });
|
|
20225
20225
|
}
|
|
20226
20226
|
function SupplierKebab({ name, busy, onEdit, onDelete }) {
|
|
20227
|
-
const { t } =
|
|
20227
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20228
20228
|
const [open, setOpen] = react.useState(false);
|
|
20229
20229
|
const rootRef = react.useRef(null);
|
|
20230
20230
|
const triggerRef = react.useRef(null);
|
|
@@ -20291,7 +20291,7 @@ function SupplierKebab({ name, busy, onEdit, onDelete }) {
|
|
|
20291
20291
|
] });
|
|
20292
20292
|
}
|
|
20293
20293
|
function SupplierUsageCell({ usage }) {
|
|
20294
|
-
const { t } =
|
|
20294
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20295
20295
|
const parts = [];
|
|
20296
20296
|
if (usage.vehicles !== void 0 && usage.vehicles > 0) {
|
|
20297
20297
|
parts.push(
|
|
@@ -20335,7 +20335,7 @@ function SupplierTable({
|
|
|
20335
20335
|
onEdit,
|
|
20336
20336
|
onDelete
|
|
20337
20337
|
}) {
|
|
20338
|
-
const { t } =
|
|
20338
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20339
20339
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-suppliers-section__table-wrap", children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "kf-trip-suppliers-section__table", children: [
|
|
20340
20340
|
/* @__PURE__ */ jsxRuntime.jsx("caption", { className: "kf-visually-hidden", children: t("chrome.tripSuppliers.tableCaption") }),
|
|
20341
20341
|
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
|
@@ -20403,18 +20403,18 @@ function serverBlockOf(error) {
|
|
|
20403
20403
|
return { vehicles: details.vehicleCount ?? 0, expenses: details.expenseCount ?? 0 };
|
|
20404
20404
|
}
|
|
20405
20405
|
function TripSuppliersSection(props) {
|
|
20406
|
-
const session =
|
|
20406
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
20407
20407
|
if (session.status !== "authenticated") {
|
|
20408
20408
|
return null;
|
|
20409
20409
|
}
|
|
20410
20410
|
return /* @__PURE__ */ jsxRuntime.jsx(ReadyTripSuppliersSection, { ...props });
|
|
20411
20411
|
}
|
|
20412
20412
|
function ReadyTripSuppliersSection({ tripRef, style }) {
|
|
20413
|
-
const { t } =
|
|
20414
|
-
const vendors =
|
|
20415
|
-
const seating =
|
|
20416
|
-
const itinerary =
|
|
20417
|
-
const expenses =
|
|
20413
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20414
|
+
const vendors = chunk2OWH2KDY_cjs.useVendors(tripRef, "");
|
|
20415
|
+
const seating = chunk2OWH2KDY_cjs.useSeating(tripRef);
|
|
20416
|
+
const itinerary = chunk2OWH2KDY_cjs.useItinerary(tripRef);
|
|
20417
|
+
const expenses = chunk2OWH2KDY_cjs.useExpenses(tripRef);
|
|
20418
20418
|
const [category, setCategory] = react.useState(null);
|
|
20419
20419
|
const [query, setQuery] = react.useState("");
|
|
20420
20420
|
const [sortKey, setSortKey] = react.useState("name");
|
|
@@ -20497,7 +20497,7 @@ function ReadyTripSuppliersSection({ tripRef, style }) {
|
|
|
20497
20497
|
return /* @__PURE__ */ jsxRuntime.jsx(SuppliersDark, { reason: vendors.reason });
|
|
20498
20498
|
}
|
|
20499
20499
|
const filtered = category !== null || query.trim() !== "";
|
|
20500
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-suppliers-section", style:
|
|
20500
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-suppliers-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
20501
20501
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-suppliers-section__toolbar", children: [
|
|
20502
20502
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__toolbar-title", children: t("chrome.tripSuppliers.panelLabel") }),
|
|
20503
20503
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-suppliers-section__toolbar-spacer" }),
|
|
@@ -20636,7 +20636,7 @@ function AutoAssignDialog2({
|
|
|
20636
20636
|
onApply,
|
|
20637
20637
|
onClose
|
|
20638
20638
|
}) {
|
|
20639
|
-
const { t } =
|
|
20639
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20640
20640
|
const titleId = react.useId();
|
|
20641
20641
|
const [reassignAll, setReassignAll] = react.useState(false);
|
|
20642
20642
|
const [genderAdjacency, setGenderAdjacency] = react.useState("AVOID_UNRELATED");
|
|
@@ -20798,7 +20798,7 @@ function DayFilter({
|
|
|
20798
20798
|
countByDay,
|
|
20799
20799
|
onSelect
|
|
20800
20800
|
}) {
|
|
20801
|
-
const { t } =
|
|
20801
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20802
20802
|
const days = Array.from({ length: durationDays }, (_unused, index) => index);
|
|
20803
20803
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__days", children: [
|
|
20804
20804
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__days-label", children: t("chrome.tripVehicles.showDay") }),
|
|
@@ -20931,7 +20931,7 @@ function DeleteVehicleDialog({
|
|
|
20931
20931
|
onConfirm,
|
|
20932
20932
|
onClose
|
|
20933
20933
|
}) {
|
|
20934
|
-
const { t } =
|
|
20934
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
20935
20935
|
const titleId = react.useId();
|
|
20936
20936
|
const released = occupantsOf(vehicle).length;
|
|
20937
20937
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -21108,7 +21108,7 @@ function ManagerLinkDialog({
|
|
|
21108
21108
|
onClose,
|
|
21109
21109
|
onSubmit
|
|
21110
21110
|
}) {
|
|
21111
|
-
const { t } =
|
|
21111
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21112
21112
|
const titleId = react.useId();
|
|
21113
21113
|
const [chosen, setChosen] = react.useState(null);
|
|
21114
21114
|
const demotedFrom = chosen === null ? void 0 : managerVehicleByRef.get(chosen);
|
|
@@ -21185,7 +21185,7 @@ function UnassignedStrip2({
|
|
|
21185
21185
|
drag,
|
|
21186
21186
|
busy
|
|
21187
21187
|
}) {
|
|
21188
|
-
const { t } =
|
|
21188
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21189
21189
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
21190
21190
|
"div",
|
|
21191
21191
|
{
|
|
@@ -21252,7 +21252,7 @@ function OccupantRoster({
|
|
|
21252
21252
|
variant,
|
|
21253
21253
|
emptyKey
|
|
21254
21254
|
}) {
|
|
21255
|
-
const { t } =
|
|
21255
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21256
21256
|
const target = { containerId: vehicleId, slotLabel: "" };
|
|
21257
21257
|
const isOver = drag.overSlot !== null && drag.overSlot.containerId === vehicleId && drag.overSlot.slotLabel === "";
|
|
21258
21258
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -21296,7 +21296,7 @@ function OccupantRoster({
|
|
|
21296
21296
|
);
|
|
21297
21297
|
}
|
|
21298
21298
|
function SeatTile({ seat, vehicleId, drag, busy }) {
|
|
21299
|
-
const { t } =
|
|
21299
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21300
21300
|
const target = { containerId: vehicleId, slotLabel: seat.seatLabel };
|
|
21301
21301
|
const isOver = drag.overSlot !== null && drag.overSlot.containerId === target.containerId && drag.overSlot.slotLabel === target.slotLabel;
|
|
21302
21302
|
const occupant = seat.occupant;
|
|
@@ -21359,7 +21359,7 @@ function VehicleKebab({
|
|
|
21359
21359
|
onUnlinkManager,
|
|
21360
21360
|
onDelete
|
|
21361
21361
|
}) {
|
|
21362
|
-
const { t } =
|
|
21362
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21363
21363
|
const [open, setOpen] = react.useState(false);
|
|
21364
21364
|
const rootRef = react.useRef(null);
|
|
21365
21365
|
const triggerRef = react.useRef(null);
|
|
@@ -21469,7 +21469,7 @@ function VehicleCard({
|
|
|
21469
21469
|
onUnlinkManager,
|
|
21470
21470
|
onDelete
|
|
21471
21471
|
}) {
|
|
21472
|
-
const { t } =
|
|
21472
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21473
21473
|
const percent = fillPercent2(vehicle);
|
|
21474
21474
|
const days = daysLabel(vehicle.days);
|
|
21475
21475
|
const bodyId = `kf-vehicle-${vehicle.id}`;
|
|
@@ -21604,7 +21604,7 @@ function VehicleDaysDialog({
|
|
|
21604
21604
|
onClose,
|
|
21605
21605
|
onSubmit
|
|
21606
21606
|
}) {
|
|
21607
|
-
const { t } =
|
|
21607
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21608
21608
|
const titleId = react.useId();
|
|
21609
21609
|
const [selected, setSelected] = react.useState(vehicle.days);
|
|
21610
21610
|
const wholeTrip = selected.length === 0;
|
|
@@ -21703,7 +21703,7 @@ function VehicleFormDialog({
|
|
|
21703
21703
|
onClose,
|
|
21704
21704
|
onSubmit
|
|
21705
21705
|
}) {
|
|
21706
|
-
const { t } =
|
|
21706
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21707
21707
|
const titleId = react.useId();
|
|
21708
21708
|
const isEdit = vehicle !== null;
|
|
21709
21709
|
const [regNo, setRegNo] = react.useState(vehicle?.regNo ?? "");
|
|
@@ -21898,7 +21898,7 @@ function VehiclesSkeleton() {
|
|
|
21898
21898
|
] }, id)) });
|
|
21899
21899
|
}
|
|
21900
21900
|
function VehiclesEmpty({ onAddVehicle }) {
|
|
21901
|
-
const { t } =
|
|
21901
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21902
21902
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__state", children: [
|
|
21903
21903
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__state-glyph", children: /* @__PURE__ */ jsxRuntime.jsx(BusIcon2, {}) }),
|
|
21904
21904
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-vehicles-section__state-title", children: t("chrome.tripVehicles.emptyTitle") }),
|
|
@@ -21907,7 +21907,7 @@ function VehiclesEmpty({ onAddVehicle }) {
|
|
|
21907
21907
|
] });
|
|
21908
21908
|
}
|
|
21909
21909
|
function VehiclesFailed({ onRetry }) {
|
|
21910
|
-
const { t } =
|
|
21910
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21911
21911
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__state", role: "alert", children: [
|
|
21912
21912
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "kf-trip-vehicles-section__state-title", children: t("chrome.tripVehicles.failedTitle") }),
|
|
21913
21913
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-vehicles-section__state-body", children: t("chrome.tripVehicles.failedBody") }),
|
|
@@ -21915,7 +21915,7 @@ function VehiclesFailed({ onRetry }) {
|
|
|
21915
21915
|
] });
|
|
21916
21916
|
}
|
|
21917
21917
|
function VehiclesDark({ reason }) {
|
|
21918
|
-
const { t } =
|
|
21918
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21919
21919
|
if (reason === "mode") {
|
|
21920
21920
|
return null;
|
|
21921
21921
|
}
|
|
@@ -21934,7 +21934,7 @@ function codeOf10(error) {
|
|
|
21934
21934
|
return classification?.code ?? "unknown";
|
|
21935
21935
|
}
|
|
21936
21936
|
function TripVehiclesSection(props) {
|
|
21937
|
-
const session =
|
|
21937
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
21938
21938
|
if (session.status !== "authenticated") {
|
|
21939
21939
|
return null;
|
|
21940
21940
|
}
|
|
@@ -21945,9 +21945,9 @@ function ReadyTripVehiclesSection({
|
|
|
21945
21945
|
durationDays,
|
|
21946
21946
|
style
|
|
21947
21947
|
}) {
|
|
21948
|
-
const { t } =
|
|
21949
|
-
const seating =
|
|
21950
|
-
const managers =
|
|
21948
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
21949
|
+
const seating = chunk2OWH2KDY_cjs.useSeating(tripRef);
|
|
21950
|
+
const managers = chunk2OWH2KDY_cjs.useManagers(tripRef);
|
|
21951
21951
|
const [openVehicleId, setOpenVehicleId] = react.useState(null);
|
|
21952
21952
|
const [day, setDay] = react.useState(null);
|
|
21953
21953
|
const [overlay, setOverlay] = react.useState({ kind: "none" });
|
|
@@ -22081,7 +22081,7 @@ function ReadyTripVehiclesSection({
|
|
|
22081
22081
|
return /* @__PURE__ */ jsxRuntime.jsx(VehiclesDark, { reason: seating.reason });
|
|
22082
22082
|
}
|
|
22083
22083
|
const pool = ready?.unassignedPool;
|
|
22084
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-vehicles-section", style:
|
|
22084
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-vehicles-section", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
22085
22085
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-vehicles-section__toolbar", children: [
|
|
22086
22086
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__toolbar-title", children: t("chrome.tripVehicles.panelLabel") }),
|
|
22087
22087
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-vehicles-section__toolbar-spacer" }),
|
|
@@ -22374,7 +22374,7 @@ function WarningIcon13(props) {
|
|
|
22374
22374
|
|
|
22375
22375
|
// src/admin/composite/office/TripWorkspace/internal/panels/deriveCloseout.ts
|
|
22376
22376
|
function tabForBlocker(row) {
|
|
22377
|
-
return
|
|
22377
|
+
return chunkF4GGHUMX_cjs.resolveBlockerDeepLink({ actionKey: row.actionKey })?.tab;
|
|
22378
22378
|
}
|
|
22379
22379
|
function orderedBlockers(rows) {
|
|
22380
22380
|
return [...rows].sort((a, b) => {
|
|
@@ -22414,8 +22414,8 @@ function codeOf11(error) {
|
|
|
22414
22414
|
return classification?.code ?? "unknown";
|
|
22415
22415
|
}
|
|
22416
22416
|
function CloseoutCard({ tripRef, onOpenTab, litTabs }) {
|
|
22417
|
-
const { t } =
|
|
22418
|
-
const closeout =
|
|
22417
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
22418
|
+
const closeout = chunk2OWH2KDY_cjs.useCloseout(tripRef);
|
|
22419
22419
|
const [note, setNote] = react.useState(null);
|
|
22420
22420
|
const [pending, setPending] = react.useState(void 0);
|
|
22421
22421
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
@@ -22622,7 +22622,7 @@ function AssignManagerDialog({
|
|
|
22622
22622
|
onClose,
|
|
22623
22623
|
onAssign
|
|
22624
22624
|
}) {
|
|
22625
|
-
const { t } =
|
|
22625
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
22626
22626
|
const titleId = react.useId();
|
|
22627
22627
|
const [query, setQuery] = react.useState("");
|
|
22628
22628
|
const [selected, setSelected] = react.useState(null);
|
|
@@ -22754,8 +22754,8 @@ var ROLE_LABEL_KEY = {
|
|
|
22754
22754
|
COORDINATOR: "chrome.tripWorkspace.managers.roleCoordinator"
|
|
22755
22755
|
};
|
|
22756
22756
|
function OverviewManagersCard({ trip, onChanged }) {
|
|
22757
|
-
const { t } =
|
|
22758
|
-
const { promoteManager, assignManager, unassignManager, makeManagersFetch } =
|
|
22757
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
22758
|
+
const { promoteManager, assignManager, unassignManager, makeManagersFetch } = chunkF4GGHUMX_cjs.useDirectories();
|
|
22759
22759
|
const [pendingId, setPendingId] = react.useState(void 0);
|
|
22760
22760
|
const [errorCode, setErrorCode] = react.useState(void 0);
|
|
22761
22761
|
const [assignOpen, setAssignOpen] = react.useState(false);
|
|
@@ -22916,13 +22916,13 @@ function TripOverviewPanel({
|
|
|
22916
22916
|
onOpenTab,
|
|
22917
22917
|
onTripChanged
|
|
22918
22918
|
}) {
|
|
22919
|
-
const { t } =
|
|
22920
|
-
const today =
|
|
22921
|
-
const expenses =
|
|
22919
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
22920
|
+
const today = chunk2OWH2KDY_cjs.useManagerToday(trip.ref);
|
|
22921
|
+
const expenses = chunk2OWH2KDY_cjs.useExpenses(trip.ref);
|
|
22922
22922
|
const spendTotalMinor = expenses.status === "ready" && expenses.totals.loaded && !expenses.totals.lastFetchFailed ? expenses.totals.spendTotalMinor : void 0;
|
|
22923
22923
|
const finance = deriveFinance(trip, spendTotalMinor);
|
|
22924
22924
|
const quickActions = QUICK_ACTION_TABS.filter((key) => litTabs.has(key));
|
|
22925
|
-
const closeoutProbe =
|
|
22925
|
+
const closeoutProbe = chunk2OWH2KDY_cjs.useCloseout(trip.ref);
|
|
22926
22926
|
const closeoutStage = closeoutProbe.status === "ready" && hasReturned(closeoutProbe.aggregate) ? closeoutProbe.aggregate?.stage ?? null : null;
|
|
22927
22927
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__overview", children: [
|
|
22928
22928
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__overview-main", children: [
|
|
@@ -22961,7 +22961,7 @@ function TripOverviewPanel({
|
|
|
22961
22961
|
function TodayCard({
|
|
22962
22962
|
today
|
|
22963
22963
|
}) {
|
|
22964
|
-
const { t } =
|
|
22964
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
22965
22965
|
if (today.kind === "idle") return null;
|
|
22966
22966
|
const openChecklist = today.checklist ?? [];
|
|
22967
22967
|
const itinerary = today.itinerary ?? [];
|
|
@@ -22985,7 +22985,7 @@ function TodayCard({
|
|
|
22985
22985
|
function FinanceCard({
|
|
22986
22986
|
finance
|
|
22987
22987
|
}) {
|
|
22988
|
-
const { t } =
|
|
22988
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
22989
22989
|
return /* @__PURE__ */ jsxRuntime.jsxs("section", { className: "kf-trip-workspace__card", children: [
|
|
22990
22990
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace__card-head", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "kf-trip-workspace__card-title", children: t("chrome.tripWorkspace.overview.financeTitle") }) }),
|
|
22991
22991
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__finance-body", children: [
|
|
@@ -23248,7 +23248,7 @@ var BLOCKER_BODY_KEY = {
|
|
|
23248
23248
|
capabilityDark: "chrome.tripWorkspace.blocker.capabilityDarkBody"
|
|
23249
23249
|
};
|
|
23250
23250
|
function TripTabPlaceholder({ tabKey, blocker }) {
|
|
23251
|
-
const { t } =
|
|
23251
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
23252
23252
|
const label = t(TAB_LABEL_KEY[tabKey]);
|
|
23253
23253
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__placeholder", children: [
|
|
23254
23254
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-trip-workspace__placeholder-glyph", children: blocker === "deferred" ? /* @__PURE__ */ jsxRuntime.jsx(ClockIcon2, {}) : /* @__PURE__ */ jsxRuntime.jsx(LockIcon11, {}) }),
|
|
@@ -23258,7 +23258,7 @@ function TripTabPlaceholder({ tabKey, blocker }) {
|
|
|
23258
23258
|
] });
|
|
23259
23259
|
}
|
|
23260
23260
|
function TripKpiStrip({ cells }) {
|
|
23261
|
-
const { t } =
|
|
23261
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
23262
23262
|
if (cells.length === 0) return null;
|
|
23263
23263
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace__kpi-strip", "data-columns": cells.length, children: cells.map((cell) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__kpi-card", children: [
|
|
23264
23264
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace__kpi-label", children: t(cell.labelKey) }),
|
|
@@ -23267,7 +23267,7 @@ function TripKpiStrip({ cells }) {
|
|
|
23267
23267
|
] }, cell.key)) });
|
|
23268
23268
|
}
|
|
23269
23269
|
function TripTabRail({ tabs, activeKey, onSelect }) {
|
|
23270
|
-
const { t } =
|
|
23270
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
23271
23271
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
23272
23272
|
"div",
|
|
23273
23273
|
{
|
|
@@ -23301,7 +23301,7 @@ var STATUS_LABEL_KEY9 = {
|
|
|
23301
23301
|
CANCELLED: "chrome.tripDirectory.status.cancelled"
|
|
23302
23302
|
};
|
|
23303
23303
|
function TripWorkspaceHead({ trip, onBack, style }) {
|
|
23304
|
-
const { t } =
|
|
23304
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
23305
23305
|
const head = deriveTripHead(trip);
|
|
23306
23306
|
const subLabelParts = [
|
|
23307
23307
|
head.dateRangeLabel,
|
|
@@ -23312,7 +23312,7 @@ function TripWorkspaceHead({ trip, onBack, style }) {
|
|
|
23312
23312
|
trip.manifestCount === 1 ? "chrome.tripWorkspace.travellerCountOne" : "chrome.tripWorkspace.travellerCount"
|
|
23313
23313
|
).replace("{count}", String(trip.manifestCount))
|
|
23314
23314
|
];
|
|
23315
|
-
return /* @__PURE__ */ jsxRuntime.jsx("header", { className: "kf-trip-workspace__head", style:
|
|
23315
|
+
return /* @__PURE__ */ jsxRuntime.jsx("header", { className: "kf-trip-workspace__head", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__head-identity", children: [
|
|
23316
23316
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__eyebrow", children: [
|
|
23317
23317
|
onBack === void 0 ? null : /* @__PURE__ */ jsxRuntime.jsx(
|
|
23318
23318
|
"button",
|
|
@@ -23344,7 +23344,7 @@ function TripWorkspaceHead({ trip, onBack, style }) {
|
|
|
23344
23344
|
] }) });
|
|
23345
23345
|
}
|
|
23346
23346
|
function TripWorkspace(props) {
|
|
23347
|
-
const session =
|
|
23347
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
23348
23348
|
if (session.status !== "authenticated") {
|
|
23349
23349
|
return /* @__PURE__ */ jsxRuntime.jsx(TripWorkspaceSkeleton, {});
|
|
23350
23350
|
}
|
|
@@ -23359,10 +23359,10 @@ function ReadyTripWorkspace({
|
|
|
23359
23359
|
components,
|
|
23360
23360
|
style
|
|
23361
23361
|
}) {
|
|
23362
|
-
const { t } =
|
|
23363
|
-
const { read, readFailed, refresh } =
|
|
23362
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
23363
|
+
const { read, readFailed, refresh } = chunkF4GGHUMX_cjs.useAgencyTrip(tripRef);
|
|
23364
23364
|
if (readFailed) {
|
|
23365
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style:
|
|
23365
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace__status-block", role: "alert", children: [
|
|
23366
23366
|
/* @__PURE__ */ jsxRuntime.jsx(WarningIcon13, { className: "kf-trip-workspace__status-icon" }),
|
|
23367
23367
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-workspace__status-title", children: t("chrome.tripWorkspace.errorTitle") }),
|
|
23368
23368
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "kf-trip-workspace__status-body", children: t("chrome.tripWorkspace.errorBody") }),
|
|
@@ -23378,7 +23378,7 @@ function ReadyTripWorkspace({
|
|
|
23378
23378
|
] }) });
|
|
23379
23379
|
}
|
|
23380
23380
|
if (read === void 0) {
|
|
23381
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style:
|
|
23381
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "kf-trip-workspace", style: chunkS53XNHRU_cjs.tokenStyle(style), children: /* @__PURE__ */ jsxRuntime.jsx(TripWorkspaceSkeleton, {}) });
|
|
23382
23382
|
}
|
|
23383
23383
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
23384
23384
|
TripWorkspaceBody,
|
|
@@ -23406,7 +23406,7 @@ function TripWorkspaceBody({
|
|
|
23406
23406
|
components,
|
|
23407
23407
|
style
|
|
23408
23408
|
}) {
|
|
23409
|
-
const { statuses, loaded } =
|
|
23409
|
+
const { statuses, loaded } = chunkF4GGHUMX_cjs.useCapabilityStatuses(tripRef);
|
|
23410
23410
|
const Head = components?.TripWorkspaceHead ?? TripWorkspaceHead;
|
|
23411
23411
|
const tabs = react.useMemo(() => resolveTripTabs(trip.eventType, statuses), [trip.eventType, statuses]);
|
|
23412
23412
|
const [requestedTab, setRequestedTab] = react.useState(initialTab ?? "overview");
|
|
@@ -23490,7 +23490,7 @@ function TripWorkspaceBody({
|
|
|
23490
23490
|
}),
|
|
23491
23491
|
[trip, litTabs, tripRef, onTripChanged, onOpenTravellerProfile]
|
|
23492
23492
|
);
|
|
23493
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace", style:
|
|
23493
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-trip-workspace", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
23494
23494
|
/* @__PURE__ */ jsxRuntime.jsx(Head, { trip, ...onBack !== void 0 ? { onBack } : {} }),
|
|
23495
23495
|
/* @__PURE__ */ jsxRuntime.jsx(TripKpiStrip, { cells: kpis }),
|
|
23496
23496
|
loaded ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -23687,7 +23687,7 @@ function AdminShell({
|
|
|
23687
23687
|
function renderNavIcon(iconKey) {
|
|
23688
23688
|
return NavIcon !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx(NavIcon, { iconKey }) : navIcon(iconKey);
|
|
23689
23689
|
}
|
|
23690
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell", style:
|
|
23690
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell", style: chunkS53XNHRU_cjs.tokenStyle(style), children: [
|
|
23691
23691
|
/* @__PURE__ */ jsxRuntime.jsxs("aside", { className: "kf-admin-shell__sidebar", children: [
|
|
23692
23692
|
brand !== void 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "kf-admin-shell__brand", children: [
|
|
23693
23693
|
brand.logo !== void 0 ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "kf-admin-shell__brand-logo", children: brand.logo }) : null,
|
|
@@ -23791,7 +23791,7 @@ function AdminShell({
|
|
|
23791
23791
|
] });
|
|
23792
23792
|
}
|
|
23793
23793
|
function KaafilAgencyWorkspace(props) {
|
|
23794
|
-
const session =
|
|
23794
|
+
const session = chunkS53XNHRU_cjs.useSession();
|
|
23795
23795
|
if (session.status !== "authenticated") {
|
|
23796
23796
|
return null;
|
|
23797
23797
|
}
|
|
@@ -23816,8 +23816,8 @@ function ReadyKaafilAgencyWorkspace(props) {
|
|
|
23816
23816
|
components,
|
|
23817
23817
|
style
|
|
23818
23818
|
} = props;
|
|
23819
|
-
const { t } =
|
|
23820
|
-
const agencyAdminMe =
|
|
23819
|
+
const { t } = chunkS53XNHRU_cjs.useKaafilChrome();
|
|
23820
|
+
const agencyAdminMe = chunkF4GGHUMX_cjs.useAgencyAdminMe();
|
|
23821
23821
|
const [internalPane, setInternalPane] = react.useState(
|
|
23822
23822
|
initialPane ?? "trips"
|
|
23823
23823
|
);
|
|
@@ -24078,27 +24078,27 @@ function ReadyKaafilAgencyWorkspace(props) {
|
|
|
24078
24078
|
|
|
24079
24079
|
Object.defineProperty(exports, "BootErrorScreen", {
|
|
24080
24080
|
enumerable: true,
|
|
24081
|
-
get: function () { return
|
|
24081
|
+
get: function () { return chunk64R4ZJTA_cjs.BootErrorScreen; }
|
|
24082
24082
|
});
|
|
24083
24083
|
Object.defineProperty(exports, "LockedTripScreen", {
|
|
24084
24084
|
enumerable: true,
|
|
24085
|
-
get: function () { return
|
|
24085
|
+
get: function () { return chunk64R4ZJTA_cjs.LockedTripScreen; }
|
|
24086
24086
|
});
|
|
24087
24087
|
Object.defineProperty(exports, "NotFoundScreen", {
|
|
24088
24088
|
enumerable: true,
|
|
24089
|
-
get: function () { return
|
|
24089
|
+
get: function () { return chunk64R4ZJTA_cjs.NotFoundScreen; }
|
|
24090
24090
|
});
|
|
24091
24091
|
Object.defineProperty(exports, "OfflineFallbackScreen", {
|
|
24092
24092
|
enumerable: true,
|
|
24093
|
-
get: function () { return
|
|
24093
|
+
get: function () { return chunk64R4ZJTA_cjs.OfflineFallbackScreen; }
|
|
24094
24094
|
});
|
|
24095
24095
|
Object.defineProperty(exports, "PlanLockedScreen", {
|
|
24096
24096
|
enumerable: true,
|
|
24097
|
-
get: function () { return
|
|
24097
|
+
get: function () { return chunk64R4ZJTA_cjs.PlanLockedScreen; }
|
|
24098
24098
|
});
|
|
24099
24099
|
Object.defineProperty(exports, "SessionExpiredScreen", {
|
|
24100
24100
|
enumerable: true,
|
|
24101
|
-
get: function () { return
|
|
24101
|
+
get: function () { return chunk64R4ZJTA_cjs.SessionExpiredScreen; }
|
|
24102
24102
|
});
|
|
24103
24103
|
exports.AdminShell = AdminShell;
|
|
24104
24104
|
exports.AgencySettingsScreen = AgencySettingsScreen;
|