@flamingo-stack/openframe-frontend-core 0.0.702 → 0.0.703
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-HYFLTFFB.js → chunk-2NE3DNXY.js} +1 -1
- package/dist/{chunk-HPJ4XS2L.js → chunk-53AC23ZN.js} +4 -4
- package/dist/{chunk-LZNJH23A.cjs → chunk-5VPIC5MD.cjs} +3 -3
- package/dist/{chunk-AEQANLBW.cjs → chunk-67CXGPTW.cjs} +24 -24
- package/dist/{chunk-ETFFEA3J.js → chunk-7632TNE7.js} +1 -1
- package/dist/{chunk-CYYTD5ZK.cjs → chunk-BMJUKS6S.cjs} +20 -20
- package/dist/{chunk-446KS5BG.js → chunk-BOUPNYUV.js} +2 -2
- package/dist/{chunk-FHM7GD5B.cjs → chunk-BSEIEWM5.cjs} +2 -2
- package/dist/{chunk-UJJWTJ6S.js → chunk-DAW6TDZB.js} +4 -4
- package/dist/{chunk-CZ34HXDW.js → chunk-ENGBNKUJ.js} +12 -157
- package/dist/{chunk-PLK6GHN7.js → chunk-G55W76S6.js} +1 -1
- package/dist/{chunk-3WSFIV5G.cjs → chunk-GX3OUTFO.cjs} +32 -32
- package/dist/{chunk-RS7HWAYX.js → chunk-GZYLZ4MB.js} +2 -2
- package/dist/{chunk-Z5HDCZAS.js → chunk-HHFPQNP3.js} +1 -1
- package/dist/{chunk-RTGPIHVO.cjs → chunk-HY5YL3U5.cjs} +247 -173
- package/dist/{chunk-QFW3RUZS.cjs → chunk-HYLIQMZH.cjs} +21 -21
- package/dist/{chunk-JOY6HVPV.js → chunk-J4K5JOLI.js} +1 -1
- package/dist/{chunk-E3DH543A.cjs → chunk-KFDP3DUL.cjs} +44 -44
- package/dist/{chunk-FD4DBTFO.cjs → chunk-MXHJROXJ.cjs} +330 -475
- package/dist/{chunk-IZKOQVXO.js → chunk-NCTYD7HL.js} +2 -2
- package/dist/{chunk-2V4Z44G6.js → chunk-NMGX2ZTU.js} +5 -5
- package/dist/{chunk-HIXGAY2L.cjs → chunk-NU724ZVN.cjs} +70 -70
- package/dist/{chunk-ASN65P3F.cjs → chunk-NYSYSKSH.cjs} +9 -9
- package/dist/{chunk-SAA7B3DA.js → chunk-PJP5SMOU.js} +3 -3
- package/dist/{chunk-6JPQDYYY.js → chunk-QGTDWFT6.js} +419 -345
- package/dist/{chunk-3G76LRGL.cjs → chunk-RLDAYA2A.cjs} +9 -9
- package/dist/{chunk-CXDJUKC6.cjs → chunk-RTXTGLGB.cjs} +2 -2
- package/dist/{chunk-B3LZJ6J3.cjs → chunk-S6V7A5FS.cjs} +12 -12
- package/dist/{chunk-YGRHITPY.cjs → chunk-SFGXIFYO.cjs} +7 -7
- package/dist/{chunk-BO5ZHDA4.js → chunk-SL2FOFT2.js} +4 -4
- package/dist/{chunk-MWUBBBWZ.js → chunk-UTW4SQDI.js} +2 -2
- package/dist/{chunk-L7KZA7ZD.cjs → chunk-YBGEPKC2.cjs} +4 -4
- package/dist/components/case-studies/index.cjs +14 -14
- package/dist/components/case-studies/index.js +3 -3
- package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/contact/index.cjs +4 -4
- package/dist/components/contact/index.js +3 -3
- package/dist/components/docs/index.cjs +7 -7
- package/dist/components/docs/index.js +6 -6
- package/dist/components/embeds/index.cjs +4 -4
- package/dist/components/embeds/index.js +3 -3
- package/dist/components/faq/index.cjs +4 -4
- package/dist/components/faq/index.js +3 -3
- package/dist/components/features/index.cjs +3 -3
- package/dist/components/features/index.js +2 -2
- package/dist/components/help-center-pages/index.cjs +71 -71
- package/dist/components/help-center-pages/index.js +14 -14
- package/dist/components/index.cjs +41 -41
- package/dist/components/index.js +13 -13
- package/dist/components/meeting-scheduler/index.cjs +25 -25
- package/dist/components/meeting-scheduler/index.js +2 -2
- package/dist/components/navigation/app-layout-drawer.d.ts.map +1 -1
- package/dist/components/navigation/index.cjs +6 -6
- package/dist/components/navigation/index.js +5 -5
- package/dist/components/onboarding-guides/index.cjs +6 -6
- package/dist/components/onboarding-guides/index.js +5 -5
- package/dist/components/tickets/index.cjs +7 -7
- package/dist/components/tickets/index.js +6 -6
- package/dist/components/ui/drawer.d.ts +7 -3
- package/dist/components/ui/drawer.d.ts.map +1 -1
- package/dist/components/ui/index.cjs +3 -3
- package/dist/components/ui/index.js +2 -2
- package/dist/components/ui/panel-resize-handle.d.ts +25 -0
- package/dist/components/ui/panel-resize-handle.d.ts.map +1 -0
- package/dist/hooks/ui/use-resizable-panel-size.d.ts +46 -0
- package/dist/hooks/ui/use-resizable-panel-size.d.ts.map +1 -0
- package/dist/index.cjs +7 -7
- package/dist/index.js +6 -6
- package/package.json +1 -1
- package/src/components/chat/embeddable-chat.tsx +11 -9
- package/src/components/navigation/app-layout-drawer.tsx +14 -237
- package/src/components/ui/drawer.tsx +41 -188
- package/src/components/ui/panel-resize-handle.tsx +184 -0
- package/src/hooks/ui/use-resizable-panel-size.ts +114 -0
|
@@ -95,8 +95,9 @@ var _chunkLX22Y43Bcjs = require('./chunk-LX22Y43B.cjs');
|
|
|
95
95
|
|
|
96
96
|
|
|
97
97
|
|
|
98
|
-
var _chunkRTGPIHVOcjs = require('./chunk-RTGPIHVO.cjs');
|
|
99
98
|
|
|
99
|
+
|
|
100
|
+
var _chunkHY5YL3U5cjs = require('./chunk-HY5YL3U5.cjs');
|
|
100
101
|
|
|
101
102
|
|
|
102
103
|
|
|
@@ -386,7 +387,7 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
386
387
|
var useTheme = _nextthemes.useTheme;
|
|
387
388
|
function useThemeToggle() {
|
|
388
389
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
389
|
-
const mounted =
|
|
390
|
+
const mounted = _chunkHY5YL3U5cjs.useIsHydrated.call(void 0, );
|
|
390
391
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
391
392
|
const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
|
|
392
393
|
const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
|
|
@@ -2661,7 +2662,7 @@ function Value2({ value, depth }) {
|
|
|
2661
2662
|
}
|
|
2662
2663
|
if (typeof value === "string") {
|
|
2663
2664
|
if (ISO_DATE.test(value)) {
|
|
2664
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children:
|
|
2665
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkHY5YL3U5cjs.formatRelativeTime.call(void 0, value) });
|
|
2665
2666
|
}
|
|
2666
2667
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
|
|
2667
2668
|
}
|
|
@@ -3293,7 +3294,7 @@ function RowValue({ value }) {
|
|
|
3293
3294
|
}
|
|
3294
3295
|
case "status": {
|
|
3295
3296
|
const { type: _type, ...props } = value;
|
|
3296
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3297
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TicketStatusTag, { ...props });
|
|
3297
3298
|
}
|
|
3298
3299
|
case "custom":
|
|
3299
3300
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
|
|
@@ -4749,10 +4750,10 @@ function useConfirm() {
|
|
|
4749
4750
|
},
|
|
4750
4751
|
[]
|
|
4751
4752
|
);
|
|
4752
|
-
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4753
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4754
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4755
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4753
|
+
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
|
|
4754
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: pending.title }) }),
|
|
4755
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
|
|
4756
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: [
|
|
4756
4757
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
|
|
4757
4758
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
|
|
4758
4759
|
] })
|
|
@@ -4811,14 +4812,14 @@ function AdminFormDrawer({
|
|
|
4811
4812
|
else onClose();
|
|
4812
4813
|
};
|
|
4813
4814
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4814
|
-
|
|
4815
|
+
_chunkHY5YL3U5cjs.Drawer,
|
|
4815
4816
|
{
|
|
4816
4817
|
open: isOpen,
|
|
4817
4818
|
onOpenChange: (open) => {
|
|
4818
4819
|
if (!open) requestClose();
|
|
4819
4820
|
},
|
|
4820
4821
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4821
|
-
|
|
4822
|
+
_chunkHY5YL3U5cjs.DrawerContent,
|
|
4822
4823
|
{
|
|
4823
4824
|
side: "right",
|
|
4824
4825
|
resizable: true,
|
|
@@ -4827,11 +4828,11 @@ function AdminFormDrawer({
|
|
|
4827
4828
|
storageKey,
|
|
4828
4829
|
panelClassName: "max-md:w-[calc(100vw-1rem)]",
|
|
4829
4830
|
children: [
|
|
4830
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4831
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4832
|
-
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4831
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.DrawerHeader, { children: [
|
|
4832
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.DrawerTitle, { children: title }),
|
|
4833
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.DrawerDescription, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: subtitle }) })
|
|
4833
4834
|
] }),
|
|
4834
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4835
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.DrawerBody, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4835
4836
|
"form",
|
|
4836
4837
|
{
|
|
4837
4838
|
id: formId,
|
|
@@ -4962,9 +4963,9 @@ function AdminFormModal({
|
|
|
4962
4963
|
body: "Your edits have not been saved. Close and discard them?"
|
|
4963
4964
|
});
|
|
4964
4965
|
if (!isOpen) return null;
|
|
4965
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4966
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4967
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4966
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
|
|
4967
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: [
|
|
4968
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: title }),
|
|
4968
4969
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
4969
4970
|
] }),
|
|
4970
4971
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -4989,7 +4990,7 @@ function AdminFormModal({
|
|
|
4989
4990
|
// a shrink-to-fit flex item pinned to the left of a 1400px panel).
|
|
4990
4991
|
// The placeholder owns its own layout and mirrors the column count so
|
|
4991
4992
|
// the modal doesn't visibly re-flow when the entity lands.
|
|
4992
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4993
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4993
4994
|
"div",
|
|
4994
4995
|
{
|
|
4995
4996
|
"aria-busy": "true",
|
|
@@ -5010,12 +5011,12 @@ function AdminFormModal({
|
|
|
5010
5011
|
]
|
|
5011
5012
|
}
|
|
5012
5013
|
) })
|
|
5013
|
-
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5014
|
+
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalContent, { className: contentClassName, children }),
|
|
5014
5015
|
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
|
|
5015
5016
|
]
|
|
5016
5017
|
}
|
|
5017
5018
|
),
|
|
5018
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5019
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
|
|
5019
5020
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
|
|
5020
5021
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
5021
5022
|
footerStatus,
|
|
@@ -7240,7 +7241,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
|
|
|
7240
7241
|
};
|
|
7241
7242
|
const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
|
|
7242
7243
|
const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7243
|
-
|
|
7244
|
+
_chunkHY5YL3U5cjs.Video,
|
|
7244
7245
|
{
|
|
7245
7246
|
url: item.src,
|
|
7246
7247
|
poster: item.poster ? displayImageSrc(item.poster) : void 0,
|
|
@@ -7964,7 +7965,7 @@ function buildRichEmbedOverrides({
|
|
|
7964
7965
|
ogEndpointPath,
|
|
7965
7966
|
textSizes
|
|
7966
7967
|
}) {
|
|
7967
|
-
const standard =
|
|
7968
|
+
const standard = _chunkHY5YL3U5cjs.buildStandardLeafRenderers.call(void 0, { textSizes });
|
|
7968
7969
|
return {
|
|
7969
7970
|
// Fence-language embeds (```youtube-embed etc.); everything else
|
|
7970
7971
|
// (mermaid, highlighted blocks, inline code) falls through to `standard`.
|
|
@@ -7974,7 +7975,7 @@ function buildRichEmbedOverrides({
|
|
|
7974
7975
|
const language = match ? match[1] : "";
|
|
7975
7976
|
const fenceText = () => String(children).replace(/\n$/, "").trim();
|
|
7976
7977
|
if (language === "youtube-embed") {
|
|
7977
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7978
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Video, { kind: "youtube", url: fenceText() });
|
|
7978
7979
|
}
|
|
7979
7980
|
if (language === "reddit-embed") {
|
|
7980
7981
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
|
|
@@ -8015,7 +8016,7 @@ function buildRichEmbedOverrides({
|
|
|
8015
8016
|
"data-figma-url": figmaUrl
|
|
8016
8017
|
} = divProps;
|
|
8017
8018
|
if (className === "youtube-embed" && videoId) {
|
|
8018
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8019
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Video, { kind: "youtube", url: videoId });
|
|
8019
8020
|
}
|
|
8020
8021
|
if (className === "reddit-embed" && postUrl) {
|
|
8021
8022
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
|
|
@@ -8100,14 +8101,14 @@ function buildRichEmbedOverrides({
|
|
|
8100
8101
|
// rich-markdown runtime (Supabase optimization on the hub, identity
|
|
8101
8102
|
// elsewhere). Guard against empty `![]()`.
|
|
8102
8103
|
img: ({ src, alt }) => {
|
|
8103
|
-
if (!
|
|
8104
|
+
if (!_chunkHY5YL3U5cjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
8104
8105
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
|
|
8105
8106
|
},
|
|
8106
8107
|
// Raw <video> tags in stored content (blog publisher injection) route
|
|
8107
8108
|
// to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
|
|
8108
8109
|
video: ({ src, poster, className }) => {
|
|
8109
|
-
if (!
|
|
8110
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `overflow-hidden ${className || "my-8 w-full rounded-lg"}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8110
|
+
if (!_chunkHY5YL3U5cjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
8111
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `overflow-hidden ${className || "my-8 w-full rounded-lg"}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
|
|
8111
8112
|
}
|
|
8112
8113
|
};
|
|
8113
8114
|
}
|
|
@@ -8348,13 +8349,13 @@ var RichMarkdownInner = ({
|
|
|
8348
8349
|
},
|
|
8349
8350
|
[resolveLinkEndpointUrl, resolveSource]
|
|
8350
8351
|
);
|
|
8351
|
-
const textSizes = _react.useMemo.call(void 0, () =>
|
|
8352
|
+
const textSizes = _react.useMemo.call(void 0, () => _chunkHY5YL3U5cjs.resolveTextSizeConfig.call(void 0, "article"), []);
|
|
8352
8353
|
const componentOverrides = _react.useMemo.call(void 0,
|
|
8353
8354
|
() => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
|
|
8354
8355
|
[ogApiBaseUrl, ogEndpointPath, textSizes]
|
|
8355
8356
|
);
|
|
8356
8357
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8357
|
-
|
|
8358
|
+
_chunkHY5YL3U5cjs.MarkdownEngine,
|
|
8358
8359
|
{
|
|
8359
8360
|
content,
|
|
8360
8361
|
className,
|
|
@@ -8376,7 +8377,7 @@ var RichMarkdownRendererImpl = ({
|
|
|
8376
8377
|
className = "",
|
|
8377
8378
|
sectionIds,
|
|
8378
8379
|
onInternalLinkClick,
|
|
8379
|
-
brokenLinks =
|
|
8380
|
+
brokenLinks = _chunkHY5YL3U5cjs.NO_BROKEN_LINKS,
|
|
8380
8381
|
currentPath,
|
|
8381
8382
|
resolveSource = "openframe-docs",
|
|
8382
8383
|
resolveLinkEndpointUrl = "/api/docs/resolve-link",
|
|
@@ -9358,7 +9359,7 @@ function FilterModal({
|
|
|
9358
9359
|
const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _182 => _182.defaultSort]), () => ( "desc"));
|
|
9359
9360
|
const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _183 => _183.sort]), () => ( dateDefaultSort)));
|
|
9360
9361
|
const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _184 => _184.range]));
|
|
9361
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
9362
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkHY5YL3U5cjs.useScrollFade.call(void 0, );
|
|
9362
9363
|
const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
|
|
9363
9364
|
const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
|
|
9364
9365
|
_react.useEffect.call(void 0, () => {
|
|
@@ -9403,10 +9404,10 @@ function FilterModal({
|
|
|
9403
9404
|
const hasFilterGroups = filterGroups.length > 0;
|
|
9404
9405
|
const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
|
|
9405
9406
|
const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
|
|
9406
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9407
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9407
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen, onClose, className: _chunk3ATAYP36cjs.cn.call(void 0, "max-h-[90vh] max-w-none", className), children: [
|
|
9408
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: title }) }),
|
|
9408
9409
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9409
|
-
|
|
9410
|
+
_chunkHY5YL3U5cjs.ModalContent,
|
|
9410
9411
|
{
|
|
9411
9412
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
9412
9413
|
"flex min-h-0 flex-1 flex-col",
|
|
@@ -9498,12 +9499,12 @@ function FilterModal({
|
|
|
9498
9499
|
] })
|
|
9499
9500
|
}
|
|
9500
9501
|
),
|
|
9501
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9502
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9502
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
|
|
9503
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
|
|
9503
9504
|
] })
|
|
9504
9505
|
}
|
|
9505
9506
|
),
|
|
9506
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9507
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: [
|
|
9507
9508
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
|
|
9508
9509
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
|
|
9509
9510
|
] })
|
|
@@ -9547,9 +9548,9 @@ function actionToMenuItems(action, idx) {
|
|
|
9547
9548
|
function renderActionButton(action, opts = {}) {
|
|
9548
9549
|
const button = renderRawActionButton(action, opts);
|
|
9549
9550
|
if (!action.tooltip) return button;
|
|
9550
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9551
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9552
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9551
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Tooltip, { children: [
|
|
9552
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipTrigger, { asChild: true, children: button }),
|
|
9553
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipContent, { children: action.tooltip })
|
|
9553
9554
|
] }) });
|
|
9554
9555
|
}
|
|
9555
9556
|
function renderRawActionButton(action, opts = {}) {
|
|
@@ -9573,7 +9574,7 @@ function renderRawActionButton(action, opts = {}) {
|
|
|
9573
9574
|
}
|
|
9574
9575
|
if (action.submenu && action.submenu.length > 0) {
|
|
9575
9576
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9576
|
-
|
|
9577
|
+
_chunkHY5YL3U5cjs.ActionsMenuDropdown,
|
|
9577
9578
|
{
|
|
9578
9579
|
groups: [{ items: action.submenu }],
|
|
9579
9580
|
customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -9708,10 +9709,10 @@ function IconButtonsVariant({
|
|
|
9708
9709
|
selector,
|
|
9709
9710
|
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
9710
9711
|
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
|
|
9711
|
-
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9712
|
+
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ActionsMenuDropdown, { groups: menuActions })
|
|
9712
9713
|
] })
|
|
9713
9714
|
] }),
|
|
9714
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9715
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
|
|
9715
9716
|
] });
|
|
9716
9717
|
}
|
|
9717
9718
|
function PrimaryButtonsVariant({
|
|
@@ -9749,7 +9750,7 @@ function MenuPrimaryVariant({
|
|
|
9749
9750
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "hidden items-center md:flex", ACTIONS_GAP, className), children: [
|
|
9750
9751
|
selector,
|
|
9751
9752
|
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
9752
|
-
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9753
|
+
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ActionsMenuDropdown, { groups: menuActions }),
|
|
9753
9754
|
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
|
|
9754
9755
|
] })
|
|
9755
9756
|
] }),
|
|
@@ -9757,7 +9758,7 @@ function MenuPrimaryVariant({
|
|
|
9757
9758
|
// The selector rides into the menu as its header row: on mobile the
|
|
9758
9759
|
// title row has no room for it, and hiding it entirely (what
|
|
9759
9760
|
// `icon-buttons` does) would leave no way to switch views at all.
|
|
9760
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9761
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
|
|
9761
9762
|
) : null })
|
|
9762
9763
|
] });
|
|
9763
9764
|
}
|
|
@@ -11851,8 +11852,8 @@ function makeComposeContentUrl(opts) {
|
|
|
11851
11852
|
}
|
|
11852
11853
|
if (externalUrl) return { href: externalUrl, targetPlatform: _nullishCoalesce(targetPlatform, () => ( null)) };
|
|
11853
11854
|
const claimedOwner = _nullishCoalesce(targetPlatform, () => ( primaryPlatformOf(platforms)));
|
|
11854
|
-
const owner = claimedOwner &&
|
|
11855
|
-
const origin = owner ?
|
|
11855
|
+
const owner = claimedOwner && _chunkHY5YL3U5cjs.byKey.call(void 0, claimedOwner) ? claimedOwner : null;
|
|
11856
|
+
const origin = owner ? _chunkHY5YL3U5cjs.getPlatformProductionUrl.call(void 0, owner) : opts.contentOrigin;
|
|
11856
11857
|
return {
|
|
11857
11858
|
href: `${origin.replace(/\/+$/, "")}/${seg}/${_optionalChain([slugHint, 'optionalAccess', _244 => _244.trim, 'call', _245 => _245()]) || identifier}`,
|
|
11858
11859
|
// Report the owner so `decideNewTab` can compare it against the current
|
|
@@ -12027,7 +12028,7 @@ function extractSections(markdown, options = {}) {
|
|
|
12027
12028
|
if (heading.level > opts.maxLevel) continue;
|
|
12028
12029
|
let title = heading.text;
|
|
12029
12030
|
if (opts.stripFormattingMarkers) {
|
|
12030
|
-
title =
|
|
12031
|
+
title = _chunkHY5YL3U5cjs.stripInlineMarkdown.call(void 0, title).trim();
|
|
12031
12032
|
}
|
|
12032
12033
|
const baseId = _chunkIIMICN7Lcjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunkIIMICN7Lcjs.stripHeadingEmojis.call(void 0, title) : title);
|
|
12033
12034
|
const cleanId = baseId || `section-${sections.length + 1}`;
|
|
@@ -13384,7 +13385,7 @@ function DropdownButton({
|
|
|
13384
13385
|
)
|
|
13385
13386
|
);
|
|
13386
13387
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13387
|
-
|
|
13388
|
+
_chunkHY5YL3U5cjs.ActionsMenuDropdown,
|
|
13388
13389
|
{
|
|
13389
13390
|
groups: _nullishCoalesce(groups, () => ( [{ items: _nullishCoalesce(items, () => ( [])) }])),
|
|
13390
13391
|
open,
|
|
@@ -13822,9 +13823,9 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
|
|
|
13822
13823
|
return next;
|
|
13823
13824
|
});
|
|
13824
13825
|
};
|
|
13825
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13826
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Tooltip, { open, onOpenChange: setOpen, children: [
|
|
13826
13827
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13827
|
-
|
|
13828
|
+
_chunkHY5YL3U5cjs.TooltipTrigger,
|
|
13828
13829
|
{
|
|
13829
13830
|
asChild: true,
|
|
13830
13831
|
onPointerDown: (e) => {
|
|
@@ -13842,7 +13843,7 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
|
|
|
13842
13843
|
children
|
|
13843
13844
|
}
|
|
13844
13845
|
),
|
|
13845
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13846
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipContent, { side, className: "max-w-xs", children: content })
|
|
13846
13847
|
] }) });
|
|
13847
13848
|
}
|
|
13848
13849
|
|
|
@@ -14515,7 +14516,7 @@ function TableHeader({
|
|
|
14515
14516
|
onFilterChange
|
|
14516
14517
|
}
|
|
14517
14518
|
),
|
|
14518
|
-
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14519
|
+
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InfoHint, { label: column.label, children: column.hint }) : null
|
|
14519
14520
|
] })
|
|
14520
14521
|
) : (
|
|
14521
14522
|
/* Non-filterable column — regular label with optional sort */
|
|
@@ -14541,7 +14542,7 @@ function TableHeader({
|
|
|
14541
14542
|
hint exists, so a hint-less header keeps its DOM. */
|
|
14542
14543
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
14543
14544
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
14544
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14545
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InfoHint, { label: column.label, children: column.hint })
|
|
14545
14546
|
] })
|
|
14546
14547
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
14547
14548
|
getSortIcon(column)
|
|
@@ -15153,9 +15154,9 @@ function TruncatedHeaderCell({ value, width }) {
|
|
|
15153
15154
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
15154
15155
|
}
|
|
15155
15156
|
}, []);
|
|
15156
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15157
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15158
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15157
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
15158
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center", style: { width, height: 48 }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: textRef, className: "truncate text-ods-text-secondary text-h5", children: value }) }) }),
|
|
15159
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
|
|
15159
15160
|
] }) });
|
|
15160
15161
|
}
|
|
15161
15162
|
|
|
@@ -15208,9 +15209,9 @@ function TruncatedCell({ value, className }) {
|
|
|
15208
15209
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
15209
15210
|
}
|
|
15210
15211
|
}, []);
|
|
15211
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15212
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15213
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15212
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
15213
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunk3ATAYP36cjs.cn.call(void 0, "block truncate", className), children: value }) }),
|
|
15214
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
|
|
15214
15215
|
] }) });
|
|
15215
15216
|
}
|
|
15216
15217
|
|
|
@@ -15882,7 +15883,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
15882
15883
|
// child of the cell.
|
|
15883
15884
|
_optionalChain([meta, 'optionalAccess', _325 => _325.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
15884
15885
|
filterTrigger,
|
|
15885
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15886
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
15886
15887
|
] }) : filterTrigger
|
|
15887
15888
|
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15888
15889
|
"div",
|
|
@@ -15907,7 +15908,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
15907
15908
|
// centred on the row.
|
|
15908
15909
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
15909
15910
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
15910
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15911
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
15911
15912
|
] })
|
|
15912
15913
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
15913
15914
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -17843,20 +17844,20 @@ function ColorPresetSelect({
|
|
|
17843
17844
|
...presets.map((p) => ({
|
|
17844
17845
|
id: p.key,
|
|
17845
17846
|
label: p.label,
|
|
17846
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17847
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ColorSwatch, { color: p.color }),
|
|
17847
17848
|
onClick: () => onChange({ color: p.color, preset: p.key })
|
|
17848
17849
|
})),
|
|
17849
17850
|
{
|
|
17850
17851
|
id: CUSTOM_PRESET_KEY,
|
|
17851
17852
|
label: "Custom",
|
|
17852
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17853
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
|
|
17853
17854
|
onClick: () => onChange({ color: value, preset: void 0 })
|
|
17854
17855
|
}
|
|
17855
17856
|
]
|
|
17856
17857
|
}
|
|
17857
17858
|
];
|
|
17858
17859
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17859
|
-
|
|
17860
|
+
_chunkHY5YL3U5cjs.ActionsMenuDropdown,
|
|
17860
17861
|
{
|
|
17861
17862
|
groups,
|
|
17862
17863
|
align: "start",
|
|
@@ -17866,7 +17867,7 @@ function ColorPresetSelect({
|
|
|
17866
17867
|
{
|
|
17867
17868
|
disabled,
|
|
17868
17869
|
"aria-label": `Color: ${displayLabel}`,
|
|
17869
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17870
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ColorSwatch, { color: displayColor }),
|
|
17870
17871
|
selectedLabel: displayLabel,
|
|
17871
17872
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
17872
17873
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -17887,7 +17888,7 @@ function HexInputs({ value, onChange }) {
|
|
|
17887
17888
|
}
|
|
17888
17889
|
const commit = () => {
|
|
17889
17890
|
const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
|
|
17890
|
-
if (
|
|
17891
|
+
if (_chunkHY5YL3U5cjs.HEX_PATTERN.test(candidate)) onChange(candidate);
|
|
17891
17892
|
else setDraft(value);
|
|
17892
17893
|
};
|
|
17893
17894
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -17951,12 +17952,12 @@ function ChannelInput({
|
|
|
17951
17952
|
);
|
|
17952
17953
|
}
|
|
17953
17954
|
function RgbInputs({ value, onChange }) {
|
|
17954
|
-
const rgb = _nullishCoalesce(
|
|
17955
|
+
const rgb = _nullishCoalesce(_chunkHY5YL3U5cjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
17955
17956
|
const update = (next) => {
|
|
17956
17957
|
const r = _nullishCoalesce(next.r, () => ( rgb.r));
|
|
17957
17958
|
const g = _nullishCoalesce(next.g, () => ( rgb.g));
|
|
17958
17959
|
const b = _nullishCoalesce(next.b, () => ( rgb.b));
|
|
17959
|
-
onChange(
|
|
17960
|
+
onChange(_chunkHY5YL3U5cjs.rgbToHex.call(void 0, r, g, b));
|
|
17960
17961
|
};
|
|
17961
17962
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
17962
17963
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
|
|
@@ -17965,14 +17966,14 @@ function RgbInputs({ value, onChange }) {
|
|
|
17965
17966
|
] });
|
|
17966
17967
|
}
|
|
17967
17968
|
function HslInputs({ value, onChange }) {
|
|
17968
|
-
const rgb = _nullishCoalesce(
|
|
17969
|
-
const hsl =
|
|
17969
|
+
const rgb = _nullishCoalesce(_chunkHY5YL3U5cjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
17970
|
+
const hsl = _chunkHY5YL3U5cjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
|
|
17970
17971
|
const update = (next) => {
|
|
17971
17972
|
const h = _nullishCoalesce(next.h, () => ( hsl.h));
|
|
17972
17973
|
const s = _nullishCoalesce(next.s, () => ( hsl.s));
|
|
17973
17974
|
const l = _nullishCoalesce(next.l, () => ( hsl.l));
|
|
17974
|
-
const out =
|
|
17975
|
-
onChange(
|
|
17975
|
+
const out = _chunkHY5YL3U5cjs.hslToRgb.call(void 0, h, s, l);
|
|
17976
|
+
onChange(_chunkHY5YL3U5cjs.rgbToHex.call(void 0, out.r, out.g, out.b));
|
|
17976
17977
|
};
|
|
17977
17978
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
17978
17979
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
|
|
@@ -17998,7 +17999,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
17998
17999
|
{
|
|
17999
18000
|
disabled,
|
|
18000
18001
|
"aria-label": "Pick custom color",
|
|
18001
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18002
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ColorSwatch, { color: value }),
|
|
18002
18003
|
selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
|
|
18003
18004
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
18004
18005
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -18014,7 +18015,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
18014
18015
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactcolorful.HexColorPicker, { color: value, onChange }),
|
|
18015
18016
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
|
|
18016
18017
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18017
|
-
|
|
18018
|
+
_chunkHY5YL3U5cjs.ActionsMenuDropdown,
|
|
18018
18019
|
{
|
|
18019
18020
|
groups: formatGroups,
|
|
18020
18021
|
align: "start",
|
|
@@ -18071,7 +18072,7 @@ function TicketStatusConfigRow({
|
|
|
18071
18072
|
const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
|
|
18072
18073
|
const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
|
|
18073
18074
|
const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18074
|
-
|
|
18075
|
+
_chunkHY5YL3U5cjs.TicketStatusTag,
|
|
18075
18076
|
{
|
|
18076
18077
|
status: statusKey,
|
|
18077
18078
|
label: name || " ",
|
|
@@ -18223,7 +18224,7 @@ function formatTestRunDuration(ms) {
|
|
|
18223
18224
|
var RESULT_COLUMN_MIN_WIDTH = 176;
|
|
18224
18225
|
var SKELETON_COLUMNS = 6;
|
|
18225
18226
|
function TestResultsSkeleton() {
|
|
18226
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18227
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
|
|
18227
18228
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-[160px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-3/4 animate-pulse rounded-sm bg-ods-bg-surface" }) }, `skeleton-header-${i}`)) }),
|
|
18228
18229
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "animate-pulse overflow-hidden rounded-[6px] border border-ods-border bg-ods-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[66px] items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)] md:h-[78px]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[160px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 w-3/4 rounded-sm bg-ods-bg-surface" }) }, `skeleton-cell-${i}`)) }) })
|
|
18229
18230
|
] }) });
|
|
@@ -18258,7 +18259,7 @@ function TestResultsTable({ rows, loading }) {
|
|
|
18258
18259
|
if (loading) {
|
|
18259
18260
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
|
|
18260
18261
|
}
|
|
18261
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18262
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { minWidth: Math.max(1, columnKeys.length) * RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DataTable, { table, children: [
|
|
18262
18263
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
|
|
18263
18264
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
|
|
18264
18265
|
] }) }) });
|
|
@@ -18364,7 +18365,7 @@ function useTestRunState(campaign) {
|
|
|
18364
18365
|
const stopReason = _nullishCoalesce(campaign.stopReason, () => ( "completed"));
|
|
18365
18366
|
const status = isActive ? "running" : hasRun && isFinished ? stopReason === "completed" ? firstError ? "error" : "success" : stopReason : "idle";
|
|
18366
18367
|
const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
|
|
18367
|
-
const startedLabel = showTiming && campaign.startedAt ?
|
|
18368
|
+
const startedLabel = showTiming && campaign.startedAt ? _chunkHY5YL3U5cjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
|
|
18368
18369
|
const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
|
|
18369
18370
|
const displayRows = _react.useMemo.call(void 0,
|
|
18370
18371
|
() => campaign.results.map(
|
|
@@ -18702,7 +18703,7 @@ function TicketInfoSection({
|
|
|
18702
18703
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _430 => _430.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _431 => _431.icon]), onClick: _optionalChain([device, 'optionalAccess', _432 => _432.onClick]) }),
|
|
18703
18704
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
18704
18705
|
(status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18705
|
-
|
|
18706
|
+
_chunkHY5YL3U5cjs.TicketStatusTag,
|
|
18706
18707
|
{
|
|
18707
18708
|
status: _nullishCoalesce(status, () => ( "")),
|
|
18708
18709
|
label: statusLabel,
|
|
@@ -18741,7 +18742,7 @@ function TicketInfoSection({
|
|
|
18741
18742
|
expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
18742
18743
|
createdAt && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 items-center gap-4 border-b border-ods-border bg-ods-bg px-4 py-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: createdAt, label: "Created" }) }),
|
|
18743
18744
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
|
|
18744
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18745
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.SimpleMarkdownRenderer, { content: description }),
|
|
18745
18746
|
attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
|
|
18746
18747
|
tags && tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Tags", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-wrap gap-2", children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEMCQGFXDcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
|
|
18747
18748
|
(notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18766,7 +18767,7 @@ function renderTicketStatusOption(option, isSelected) {
|
|
|
18766
18767
|
const { label, color } = option;
|
|
18767
18768
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-[var(--spacing-system-xs)]", children: [
|
|
18768
18769
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
18769
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18770
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ColorSwatch, { color }),
|
|
18770
18771
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TruncateText, { className: "text-inherit", children: label }) })
|
|
18771
18772
|
] }),
|
|
18772
18773
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3COXDBHcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
@@ -18811,9 +18812,9 @@ function TakeOverTicketModal({
|
|
|
18811
18812
|
if (!selectedStatusId || !assigneeId || isPending) return;
|
|
18812
18813
|
onConfirm({ statusId: selectedStatusId, assigneeId });
|
|
18813
18814
|
};
|
|
18814
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
18815
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
18815
18816
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
18816
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18817
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: "Take Over Ticket" }) }),
|
|
18817
18818
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
18818
18819
|
"The ticket ",
|
|
18819
18820
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -18828,7 +18829,7 @@ function TakeOverTicketModal({
|
|
|
18828
18829
|
value: selectedStatusId,
|
|
18829
18830
|
onChange: setStatusId,
|
|
18830
18831
|
placeholder: "Select Status",
|
|
18831
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18832
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
18832
18833
|
renderOption: renderTicketStatusOption
|
|
18833
18834
|
}
|
|
18834
18835
|
) }),
|
|
@@ -18855,7 +18856,7 @@ function TakeOverTicketModal({
|
|
|
18855
18856
|
}
|
|
18856
18857
|
) })
|
|
18857
18858
|
] }),
|
|
18858
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
18859
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: [
|
|
18859
18860
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
18860
18861
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
18861
18862
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18914,9 +18915,9 @@ function ReopenTicketModal({
|
|
|
18914
18915
|
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
18915
18916
|
});
|
|
18916
18917
|
};
|
|
18917
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
18918
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
18918
18919
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
18919
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18920
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
18920
18921
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
18921
18922
|
"The ticket ",
|
|
18922
18923
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -18931,7 +18932,7 @@ function ReopenTicketModal({
|
|
|
18931
18932
|
value: selectedStatusId,
|
|
18932
18933
|
onChange: setStatusId,
|
|
18933
18934
|
placeholder: "Select Status",
|
|
18934
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18935
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
18935
18936
|
renderOption: renderTicketStatusOption
|
|
18936
18937
|
}
|
|
18937
18938
|
) }),
|
|
@@ -18969,7 +18970,7 @@ function ReopenTicketModal({
|
|
|
18969
18970
|
disabled: isPending
|
|
18970
18971
|
}
|
|
18971
18972
|
) }),
|
|
18972
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
18973
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: [
|
|
18973
18974
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
18974
18975
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
18975
18976
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -19018,9 +19019,9 @@ function ReopenTicketRequestModal({
|
|
|
19018
19019
|
...showHandoffOption ? { handoffToTechnician: handoff } : {}
|
|
19019
19020
|
});
|
|
19020
19021
|
};
|
|
19021
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
19022
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
19022
19023
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
19023
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19024
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
19024
19025
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: "This ticket will be reopened and the AI assistant will continue helping you." }),
|
|
19025
19026
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19026
19027
|
Textarea,
|
|
@@ -19044,7 +19045,7 @@ function ReopenTicketRequestModal({
|
|
|
19044
19045
|
disabled: isPending
|
|
19045
19046
|
}
|
|
19046
19047
|
),
|
|
19047
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
19048
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: [
|
|
19048
19049
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
|
|
19049
19050
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
|
|
19050
19051
|
] })
|
|
@@ -19186,7 +19187,7 @@ function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, load
|
|
|
19186
19187
|
gap: COLUMN_GAP_PX
|
|
19187
19188
|
};
|
|
19188
19189
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rootRef, "aria-hidden": "true", className: _chunk3ATAYP36cjs.cn.call(void 0, "grid overflow-hidden", className), style: gridStyle, children: columnsToDraw ? columnsToDraw.map((column, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19189
|
-
|
|
19190
|
+
_chunkHY5YL3U5cjs.MarqueeWall,
|
|
19190
19191
|
{
|
|
19191
19192
|
axis: "y",
|
|
19192
19193
|
reverse: index % 2 === 1,
|
|
@@ -19330,7 +19331,7 @@ var INCIDENT_TONE = {
|
|
|
19330
19331
|
approved: "success"
|
|
19331
19332
|
};
|
|
19332
19333
|
function IncidentStatusLine({ status, label, className }) {
|
|
19333
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19334
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.StatusLine, { tone: INCIDENT_TONE[status], label, className });
|
|
19334
19335
|
}
|
|
19335
19336
|
function SourceTag({ children }) {
|
|
19336
19337
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 rounded-md border border-ods-border px-2 py-1 text-ods-text-secondary text-h5", children });
|
|
@@ -21938,7 +21939,7 @@ function UnifiedUI({ state, handlers, config, iframeRef }) {
|
|
|
21938
21939
|
sandbox: "allow-scripts allow-same-origin allow-popups allow-presentation",
|
|
21939
21940
|
title: config.title,
|
|
21940
21941
|
loading: "eager",
|
|
21941
|
-
...
|
|
21942
|
+
..._chunkHY5YL3U5cjs.fetchPriorityProp.call(void 0, "high")
|
|
21942
21943
|
},
|
|
21943
21944
|
iframeKey
|
|
21944
21945
|
),
|
|
@@ -22931,7 +22932,7 @@ function MediaGalleryManager({
|
|
|
22931
22932
|
) }),
|
|
22932
22933
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: isVideoItem(item) ? (
|
|
22933
22934
|
// <Video> SSOT (MuxPlayer): plays Mux HLS and MP4 alike; fit="cover" crops to the cell.
|
|
22934
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22935
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
|
|
22935
22936
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22936
22937
|
_chunkMGHIV4L6cjs.next_image_default,
|
|
22937
22938
|
{
|
|
@@ -23415,60 +23416,60 @@ function CardSkeleton({
|
|
|
23415
23416
|
function VendorCardContent({ showMetadata }) {
|
|
23416
23417
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-3 p-4", children: [
|
|
23417
23418
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start gap-3", children: [
|
|
23418
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[60px] w-[60px] flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23419
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[60px] w-[60px] flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Avatar, { size: "sm", className: "h-11 w-11" }) }),
|
|
23419
23420
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center space-y-1 py-2", children: [
|
|
23420
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23421
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23421
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
23422
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-1/2" })
|
|
23422
23423
|
] })
|
|
23423
23424
|
] }),
|
|
23424
23425
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-full items-center overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
23425
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23426
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23426
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23427
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
23427
23428
|
] }) }),
|
|
23428
23429
|
showMetadata && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-2", children: [
|
|
23429
23430
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-shrink items-center gap-3 md:gap-4", children: [
|
|
23430
23431
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
23431
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23432
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23432
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
23433
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-8" })
|
|
23433
23434
|
] }),
|
|
23434
23435
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
23435
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23436
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23436
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
23437
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-10" })
|
|
23437
23438
|
] })
|
|
23438
23439
|
] }),
|
|
23439
23440
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 rounded border border-ods-border bg-ods-bg px-2.5 py-1.5", children: [
|
|
23440
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23441
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23441
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
|
|
23442
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
23442
23443
|
] }) })
|
|
23443
23444
|
] })
|
|
23444
23445
|
] });
|
|
23445
23446
|
}
|
|
23446
23447
|
function BlogCardContent({ showActions, showMetadata }) {
|
|
23447
23448
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23448
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "blog-card-image-container relative aspect-[1200/630] w-full overflow-hidden bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23449
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "blog-card-image-container relative aspect-[1200/630] w-full overflow-hidden bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.CardImage, {}) }),
|
|
23449
23450
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-grow flex-col p-4", children: [
|
|
23450
23451
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-3 flex min-h-[50.4px] items-center md:min-h-[56px] lg:min-h-[61.6px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
23451
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23452
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23452
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-full" }),
|
|
23453
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-3/4" })
|
|
23453
23454
|
] }) }),
|
|
23454
23455
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-3 flex h-[28px] items-center gap-2", children: [
|
|
23455
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23456
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23456
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, { className: "w-16" }),
|
|
23457
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, { className: "w-12" })
|
|
23457
23458
|
] }),
|
|
23458
23459
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-3 flex min-h-[42px] items-center md:min-h-[45px] lg:min-h-[48px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
23459
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23460
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23460
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23461
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-1/2" })
|
|
23461
23462
|
] }) }),
|
|
23462
|
-
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23463
|
+
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, { className: "h-8 w-24" }) }),
|
|
23463
23464
|
showMetadata && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 border-t border-ods-border pt-4", children: [
|
|
23464
23465
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
|
|
23465
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23466
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23466
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
23467
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
23467
23468
|
] }),
|
|
23468
23469
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-3 text-ods-text-muted", children: [
|
|
23469
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23470
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-12" }),
|
|
23470
23471
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-1 w-1 rounded-full bg-ods-skeleton" }),
|
|
23471
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23472
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
23472
23473
|
] })
|
|
23473
23474
|
] }) })
|
|
23474
23475
|
] })
|
|
@@ -23476,35 +23477,35 @@ function BlogCardContent({ showActions, showMetadata }) {
|
|
|
23476
23477
|
}
|
|
23477
23478
|
function CategoryCardContent() {
|
|
23478
23479
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4 p-4 md:p-6", children: [
|
|
23479
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 md:gap-3", children: Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23480
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 md:gap-3", children: Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "lg", className: "flex-shrink-0" }, index)) }),
|
|
23480
23481
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23481
23482
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
23482
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23483
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23483
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
23484
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-1/2" })
|
|
23484
23485
|
] }),
|
|
23485
23486
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start justify-between gap-4 md:items-end md:gap-6", children: [
|
|
23486
23487
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
23487
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23488
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23488
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23489
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
23489
23490
|
] }),
|
|
23490
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23491
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, { className: "h-10 w-10 flex-shrink-0 md:h-12 md:w-12" })
|
|
23491
23492
|
] })
|
|
23492
23493
|
] })
|
|
23493
23494
|
] });
|
|
23494
23495
|
}
|
|
23495
23496
|
function AlternativeCardContent({ showActions }) {
|
|
23496
23497
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4 p-4", children: [
|
|
23497
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23498
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Avatar, { size: "md", className: "flex-shrink-0" }),
|
|
23498
23499
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
23499
23500
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
|
|
23500
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23501
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23501
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-1/3" }),
|
|
23502
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
23502
23503
|
] }),
|
|
23503
23504
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
23504
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23505
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23505
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23506
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-5/6" })
|
|
23506
23507
|
] }),
|
|
23507
|
-
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23508
|
+
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, { className: "h-8 w-20" }) })
|
|
23508
23509
|
] })
|
|
23509
23510
|
] });
|
|
23510
23511
|
}
|
|
@@ -23555,12 +23556,12 @@ function HeroSkeleton() {
|
|
|
23555
23556
|
background: "radial-gradient(circle at 50% 0%, #242323 0%, #1A1A1A 100%)"
|
|
23556
23557
|
},
|
|
23557
23558
|
children: [
|
|
23558
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23559
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Heading, { className: "mb-4 h-12 w-full max-w-4xl md:mb-6 md:h-20 lg:h-24" }),
|
|
23559
23560
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-8 w-full max-w-4xl space-y-3 px-2 md:mb-10", children: [
|
|
23560
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23561
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23561
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "h-5 md:h-7" }),
|
|
23562
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "mx-auto h-5 w-3/4 md:h-7" })
|
|
23562
23563
|
] }),
|
|
23563
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23564
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, { className: "h-12 w-full md:w-64" })
|
|
23564
23565
|
]
|
|
23565
23566
|
}
|
|
23566
23567
|
);
|
|
@@ -23571,14 +23572,14 @@ function SearchContainerSkeleton({
|
|
|
23571
23572
|
}) {
|
|
23572
23573
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-4", className || ""), children: [
|
|
23573
23574
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2 md:gap-4", children: [
|
|
23574
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23575
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23575
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Input, { className: "flex-1" }),
|
|
23576
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, { className: "w-32 md:w-40" })
|
|
23576
23577
|
] }),
|
|
23577
23578
|
showFilters && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-wrap gap-2", children: [
|
|
23578
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23579
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23580
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23581
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23579
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, {}),
|
|
23580
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, { className: "w-24" }),
|
|
23581
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, { className: "w-16" }),
|
|
23582
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, { className: "w-20" })
|
|
23582
23583
|
] })
|
|
23583
23584
|
] });
|
|
23584
23585
|
}
|
|
@@ -23597,7 +23598,7 @@ function CategorySidebarSkeleton({ className }) {
|
|
|
23597
23598
|
{ type: "file", width: "w-36" }
|
|
23598
23599
|
];
|
|
23599
23600
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full lg:w-[320px]", className), children: [
|
|
23600
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23601
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "mb-4 h-[14px] w-24 rounded" }),
|
|
23601
23602
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1.5", children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23602
23603
|
"div",
|
|
23603
23604
|
{
|
|
@@ -23607,12 +23608,12 @@ function CategorySidebarSkeleton({ className }) {
|
|
|
23607
23608
|
),
|
|
23608
23609
|
children: [
|
|
23609
23610
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2.5", children: [
|
|
23610
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23611
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23611
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-4 w-4 shrink-0 rounded" }),
|
|
23612
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: `h-[14px] ${item.width} rounded` })
|
|
23612
23613
|
] }),
|
|
23613
23614
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-[18px] items-center gap-2", children: [
|
|
23614
|
-
item.hasBadge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23615
|
-
item.type === "folder" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23615
|
+
item.hasBadge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-[18px] w-14 rounded" }),
|
|
23616
|
+
item.type === "folder" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-4 w-4 rounded" })
|
|
23616
23617
|
] })
|
|
23617
23618
|
]
|
|
23618
23619
|
},
|
|
@@ -23622,17 +23623,17 @@ function CategorySidebarSkeleton({ className }) {
|
|
|
23622
23623
|
}
|
|
23623
23624
|
function BreadcrumbSkeleton({ className }) {
|
|
23624
23625
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mb-6 flex items-center space-x-1", className), children: [
|
|
23625
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23626
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23627
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23628
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23629
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23630
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23631
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23626
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" }),
|
|
23627
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
|
|
23628
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-24" }),
|
|
23629
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
|
|
23630
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-32" }),
|
|
23631
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
|
|
23632
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-24" })
|
|
23632
23633
|
] });
|
|
23633
23634
|
}
|
|
23634
23635
|
function ResultsHeaderSkeleton({ className }) {
|
|
23635
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mb-6 flex flex-col items-start justify-between gap-4 md:flex-row md:items-center", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23636
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mb-6 flex flex-col items-start justify-between gap-4 md:flex-row md:items-center", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-48" }) }) });
|
|
23636
23637
|
}
|
|
23637
23638
|
function TwoColumnLayoutSkeleton({
|
|
23638
23639
|
className,
|
|
@@ -23664,35 +23665,35 @@ function ArticleLayoutSkeleton({ className }) {
|
|
|
23664
23665
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "article", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mx-auto max-w-4xl", className), children: [
|
|
23665
23666
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "header", { className: "mb-8 space-y-4 md:mb-12 md:space-y-6", children: [
|
|
23666
23667
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2", children: [
|
|
23667
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23668
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23668
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, {}),
|
|
23669
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Chip, { className: "w-16" })
|
|
23669
23670
|
] }),
|
|
23670
23671
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", children: [
|
|
23671
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23672
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23672
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Heading, { className: "w-full" }),
|
|
23673
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Heading, { className: "w-3/4" })
|
|
23673
23674
|
] }),
|
|
23674
23675
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 border-t border-ods-divider pt-4", children: [
|
|
23675
23676
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
23676
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23677
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23677
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
23678
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-24" })
|
|
23678
23679
|
] }),
|
|
23679
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23680
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23680
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-20" }),
|
|
23681
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
23681
23682
|
] })
|
|
23682
23683
|
] }),
|
|
23683
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 md:mb-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23684
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 md:mb-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.CardImage, { className: "h-64 w-full md:h-96" }) }),
|
|
23684
23685
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "prose prose-invert max-w-none space-y-6", children: [
|
|
23685
23686
|
Array.from({ length: 12 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23686
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23687
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23688
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23689
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23687
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23688
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23689
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-5/6" }),
|
|
23690
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
23690
23691
|
] }, index)),
|
|
23691
23692
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "py-4", children: [
|
|
23692
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23693
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "mb-4 w-2/3" }),
|
|
23693
23694
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23694
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23695
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23695
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23696
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-4/5" })
|
|
23696
23697
|
] })
|
|
23697
23698
|
] })
|
|
23698
23699
|
] })
|
|
@@ -23918,11 +23919,11 @@ function StatsSectionSkeleton({ className, columns = 3 }) {
|
|
|
23918
23919
|
className
|
|
23919
23920
|
),
|
|
23920
23921
|
children: Array.from({ length: columns }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
|
|
23921
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23922
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23922
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "lg" }),
|
|
23923
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
23923
23924
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23924
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23925
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23925
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
23926
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
23926
23927
|
] })
|
|
23927
23928
|
] }) }, i))
|
|
23928
23929
|
}
|
|
@@ -24063,7 +24064,7 @@ function useContentLoading(isLoading) {
|
|
|
24063
24064
|
|
|
24064
24065
|
function ParagraphSkeleton({ className, lines = 4 }) {
|
|
24065
24066
|
const lineWidths = ["w-full", "w-full", "w-5/6", "w-3/4", "w-4/5", "w-2/3"];
|
|
24066
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24067
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: lineWidths[index % lineWidths.length] }, index)) });
|
|
24067
24068
|
}
|
|
24068
24069
|
function ListSkeleton({
|
|
24069
24070
|
className,
|
|
@@ -24073,12 +24074,12 @@ function ListSkeleton({
|
|
|
24073
24074
|
}) {
|
|
24074
24075
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-3", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
|
|
24075
24076
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
24076
|
-
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24077
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24077
|
+
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
24078
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-32 md:w-48" })
|
|
24078
24079
|
] }),
|
|
24079
24080
|
showActions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
24080
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24081
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24081
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-8" }),
|
|
24082
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4" })
|
|
24082
24083
|
] })
|
|
24083
24084
|
] }, index)) });
|
|
24084
24085
|
}
|
|
@@ -24088,13 +24089,13 @@ function TableSkeleton({
|
|
|
24088
24089
|
columns = 4
|
|
24089
24090
|
}) {
|
|
24090
24091
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-4", className), children: [
|
|
24091
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24092
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-3/4" }, index)) }),
|
|
24092
24093
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3", children: Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24093
24094
|
"div",
|
|
24094
24095
|
{
|
|
24095
24096
|
className: "grid gap-4 border-b border-ods-divider py-2",
|
|
24096
24097
|
style: { gridTemplateColumns: `repeat(${columns}, 1fr)` },
|
|
24097
|
-
children: Array.from({ length: columns }).map((_cell, colIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24098
|
+
children: Array.from({ length: columns }).map((_cell, colIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" }, colIndex))
|
|
24098
24099
|
},
|
|
24099
24100
|
rowIndex
|
|
24100
24101
|
)) })
|
|
@@ -24103,13 +24104,13 @@ function TableSkeleton({
|
|
|
24103
24104
|
function FormSkeleton({ className, fields = 4 }) {
|
|
24104
24105
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), children: [
|
|
24105
24106
|
Array.from({ length: fields }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
24106
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24107
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24108
|
-
index % 3 === 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24107
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-24" }),
|
|
24108
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Input, {}),
|
|
24109
|
+
index % 3 === 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-48" })
|
|
24109
24110
|
] }, index)),
|
|
24110
24111
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-4 pt-4", children: [
|
|
24111
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24112
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24112
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, {}),
|
|
24113
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, { className: "bg-ods-border" })
|
|
24113
24114
|
] })
|
|
24114
24115
|
] });
|
|
24115
24116
|
}
|
|
@@ -24124,7 +24125,7 @@ function NavigationSkeleton({
|
|
|
24124
24125
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "flex gap-4 md:gap-6", !horizontal && "flex-col", className),
|
|
24125
24126
|
role: "status",
|
|
24126
24127
|
"aria-label": "Loading navigation",
|
|
24127
|
-
children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24128
|
+
children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-16 md:w-20" }, index))
|
|
24128
24129
|
}
|
|
24129
24130
|
);
|
|
24130
24131
|
}
|
|
@@ -24135,30 +24136,30 @@ function ProfileSkeleton({
|
|
|
24135
24136
|
}) {
|
|
24136
24137
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-4", className), children: [
|
|
24137
24138
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4", children: [
|
|
24138
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24139
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Avatar, { size: "lg" }),
|
|
24139
24140
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
24140
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24141
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24142
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24141
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-1/2" }),
|
|
24142
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-1/3" }),
|
|
24143
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
24143
24144
|
] })
|
|
24144
24145
|
] }),
|
|
24145
24146
|
showBio && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
24146
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24147
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24148
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24147
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
24148
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-4/5" }),
|
|
24149
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
24149
24150
|
] }),
|
|
24150
24151
|
showStats && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-6", children: [
|
|
24151
24152
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
|
|
24152
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24153
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24153
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
|
|
24154
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "mx-auto w-12" })
|
|
24154
24155
|
] }),
|
|
24155
24156
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
|
|
24156
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24157
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24157
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
|
|
24158
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "mx-auto w-16" })
|
|
24158
24159
|
] }),
|
|
24159
24160
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
|
|
24160
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24161
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24161
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
|
|
24162
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "mx-auto w-14" })
|
|
24162
24163
|
] })
|
|
24163
24164
|
] })
|
|
24164
24165
|
] });
|
|
@@ -24170,32 +24171,32 @@ function CommentSkeleton({
|
|
|
24170
24171
|
}) {
|
|
24171
24172
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-3", className), children: [
|
|
24172
24173
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
24173
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24174
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
24174
24175
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 items-center gap-4", children: [
|
|
24175
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24176
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24177
|
-
showRating && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24176
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-24" }),
|
|
24177
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" }),
|
|
24178
|
+
showRating && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm" }, i)) })
|
|
24178
24179
|
] })
|
|
24179
24180
|
] }),
|
|
24180
24181
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11 space-y-2", children: [
|
|
24181
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24182
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24183
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24182
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
24183
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-3/4" }),
|
|
24184
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-1/2" })
|
|
24184
24185
|
] }),
|
|
24185
24186
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11 flex gap-4", children: [
|
|
24186
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24187
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24188
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24187
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-12" }),
|
|
24188
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" }),
|
|
24189
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-8" })
|
|
24189
24190
|
] }),
|
|
24190
24191
|
showReplies && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "ml-11 space-y-4 border-l border-ods-divider pl-4", children: Array.from({ length: 2 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
24191
24192
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
24192
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24193
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24194
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24193
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
24194
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-20" }),
|
|
24195
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-12" })
|
|
24195
24196
|
] }),
|
|
24196
24197
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11", children: [
|
|
24197
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24198
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24198
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
24199
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
24199
24200
|
] })
|
|
24200
24201
|
] }, index)) })
|
|
24201
24202
|
] });
|
|
@@ -24208,31 +24209,31 @@ function FeatureListSkeleton({
|
|
|
24208
24209
|
}) {
|
|
24209
24210
|
if (grouped) {
|
|
24210
24211
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), children: Array.from({ length: 3 }).map((_, groupIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", children: [
|
|
24211
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24212
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-1/3" }),
|
|
24212
24213
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-2", children: Array.from({ length: features / 3 }).map((_feature, featureIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
24213
|
-
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24214
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24214
|
+
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
24215
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
24215
24216
|
] }, featureIndex)) })
|
|
24216
24217
|
] }, groupIndex)) });
|
|
24217
24218
|
}
|
|
24218
24219
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-3", className), children: Array.from({ length: features }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
24219
|
-
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24220
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24220
|
+
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
24221
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
24221
24222
|
] }, index)) });
|
|
24222
24223
|
}
|
|
24223
24224
|
function TimelineSkeleton({ className, items = 5 }) {
|
|
24224
24225
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-4", children: [
|
|
24225
24226
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col items-center", children: [
|
|
24226
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24227
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
24227
24228
|
index < items - 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-2 h-12 w-px bg-ods-border" })
|
|
24228
24229
|
] }),
|
|
24229
24230
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
24230
24231
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
24231
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24232
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24232
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-1/3" }),
|
|
24233
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
24233
24234
|
] }),
|
|
24234
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24235
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24235
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
24236
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
24236
24237
|
] })
|
|
24237
24238
|
] }, index)) });
|
|
24238
24239
|
}
|
|
@@ -24248,16 +24249,16 @@ function PricingSkeleton({ className, plans = 3 }) {
|
|
|
24248
24249
|
className
|
|
24249
24250
|
),
|
|
24250
24251
|
children: Array.from({ length: plans }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
|
|
24251
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24252
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-1/2" }),
|
|
24252
24253
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
24253
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24254
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24254
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Heading, { className: "w-1/3" }),
|
|
24255
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-1/4" })
|
|
24255
24256
|
] }),
|
|
24256
24257
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3 py-4", children: Array.from({ length: 5 }).map((_feature, featureIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
24257
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24258
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24258
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
24259
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
24259
24260
|
] }, featureIndex)) }),
|
|
24260
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24261
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Button, { className: "w-full" })
|
|
24261
24262
|
] }) }, index))
|
|
24262
24263
|
}
|
|
24263
24264
|
);
|
|
@@ -24293,12 +24294,12 @@ function MspProfileFormSkeleton({ className, fields = 4 }) {
|
|
|
24293
24294
|
"aria-label": "Loading MSP profile form",
|
|
24294
24295
|
children: [
|
|
24295
24296
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col space-y-2", children: [
|
|
24296
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24297
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[180px] flex-1 md:min-h-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24297
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-28" }),
|
|
24298
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[180px] flex-1 md:min-h-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-full w-full rounded-lg", "aria-label": "Loading company logo" }) })
|
|
24298
24299
|
] }),
|
|
24299
24300
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-4 md:grid-cols-2", children: Array.from({ length: fields }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col space-y-2", children: [
|
|
24300
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24301
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24301
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-40" }),
|
|
24302
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.InteractiveSkeleton.Input, {})
|
|
24302
24303
|
] }, idx)) })
|
|
24303
24304
|
]
|
|
24304
24305
|
}
|
|
@@ -24318,13 +24319,13 @@ function CategoryCardSkeleton({ className }) {
|
|
|
24318
24319
|
role: "status",
|
|
24319
24320
|
"aria-label": "Loading category card",
|
|
24320
24321
|
children: [
|
|
24321
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 flex items-center justify-center gap-6", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24322
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 flex items-center justify-center gap-6", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { variant: "circular", className: "h-10 w-10 flex-shrink-0", "aria-label": "Loading icon" }, i)) }),
|
|
24322
24323
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col space-y-3", children: [
|
|
24323
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24324
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24325
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24324
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Heading, { className: "w-3/4" }),
|
|
24325
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-1/2" }),
|
|
24326
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" })
|
|
24326
24327
|
] }),
|
|
24327
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24328
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-12 w-12 rounded-[6px]", "aria-label": "Loading button" }) })
|
|
24328
24329
|
]
|
|
24329
24330
|
}
|
|
24330
24331
|
);
|
|
@@ -24341,12 +24342,12 @@ function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
|
|
|
24341
24342
|
"aria-label": "Loading category section",
|
|
24342
24343
|
children: [
|
|
24343
24344
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-6 max-w-xl space-y-2", children: [
|
|
24344
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24345
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24345
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Heading, { className: "w-1/2" }),
|
|
24346
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
24346
24347
|
] }),
|
|
24347
24348
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-6", children: Array.from({ length: subcategories }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
24348
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24349
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 gap-4 md:grid-cols-3", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24349
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-1/3" }),
|
|
24350
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 gap-4 md:grid-cols-3", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-20 rounded-lg" }, j)) })
|
|
24350
24351
|
] }, idx)) })
|
|
24351
24352
|
]
|
|
24352
24353
|
}
|
|
@@ -24357,14 +24358,14 @@ function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
|
|
|
24357
24358
|
|
|
24358
24359
|
function WizardLayoutSkeleton({ steps = 6, className }) {
|
|
24359
24360
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), role: "status", "aria-label": "Loading wizard layout", children: [
|
|
24360
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24361
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-6 w-24 rounded" }, i)) }),
|
|
24361
24362
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "max-w-2xl space-y-2", children: [
|
|
24362
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24363
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24363
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Heading, { className: "w-2/3" }),
|
|
24364
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-1/2" })
|
|
24364
24365
|
] }),
|
|
24365
24366
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mt-10 flex justify-between", children: [
|
|
24366
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24367
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24367
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-10 w-24 rounded" }),
|
|
24368
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-10 w-32 rounded" })
|
|
24368
24369
|
] })
|
|
24369
24370
|
] });
|
|
24370
24371
|
}
|
|
@@ -24756,28 +24757,28 @@ function OrganizationCardSkeleton({
|
|
|
24756
24757
|
}
|
|
24757
24758
|
),
|
|
24758
24759
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center space-y-1 py-2", children: [
|
|
24759
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24760
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24760
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
24761
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-1/2" })
|
|
24761
24762
|
] })
|
|
24762
24763
|
] }),
|
|
24763
24764
|
showDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-full items-center overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
24764
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24765
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24765
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
24766
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
24766
24767
|
] }) }),
|
|
24767
24768
|
showFooter && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-2", children: [
|
|
24768
24769
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-shrink items-center gap-3 md:gap-4", children: [
|
|
24769
24770
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
24770
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24771
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24771
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
24772
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-8" })
|
|
24772
24773
|
] }),
|
|
24773
24774
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
24774
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24775
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24775
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
24776
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-10" })
|
|
24776
24777
|
] })
|
|
24777
24778
|
] }),
|
|
24778
24779
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 rounded border border-ods-border bg-ods-bg px-2.5 py-1.5", children: [
|
|
24779
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24780
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24780
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
|
|
24781
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
24781
24782
|
] }) })
|
|
24782
24783
|
] })
|
|
24783
24784
|
] })
|
|
@@ -24854,16 +24855,16 @@ function DeviceCardSkeletonGrid({ count = 12, className }) {
|
|
|
24854
24855
|
|
|
24855
24856
|
function PushButtonSelectorSkeleton({ count = 3, hasTitle }) {
|
|
24856
24857
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", role: "status", "aria-label": "Loading options", children: [
|
|
24857
|
-
hasTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24858
|
+
hasTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-5 w-20", "aria-label": "Loading title" }),
|
|
24858
24859
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3", children: Array.from({ length: count }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-bg p-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4", children: [
|
|
24859
24860
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
24860
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24861
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-8 w-8", "aria-label": "Loading icon" }),
|
|
24861
24862
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
|
|
24862
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24863
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24863
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { variant: "text", className: "mb-2 h-4 w-24", "aria-label": "Loading name" }),
|
|
24864
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { variant: "text", className: "h-4 w-36", "aria-label": "Loading description" })
|
|
24864
24865
|
] })
|
|
24865
24866
|
] }),
|
|
24866
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24867
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.UnifiedSkeleton, { className: "h-6 w-6", "aria-label": "Loading selection state" })
|
|
24867
24868
|
] }) }, i)) })
|
|
24868
24869
|
] });
|
|
24869
24870
|
}
|
|
@@ -24985,9 +24986,9 @@ function PushButtonSelector({
|
|
|
24985
24986
|
option.id
|
|
24986
24987
|
);
|
|
24987
24988
|
if (option.disabled && option.disabledReason) {
|
|
24988
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
24989
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24990
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24989
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Tooltip, { children: [
|
|
24990
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipTrigger, { asChild: true, children: optionEl }),
|
|
24991
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
|
|
24991
24992
|
] }, option.id);
|
|
24992
24993
|
}
|
|
24993
24994
|
return optionEl;
|
|
@@ -25032,7 +25033,7 @@ function PushButtonSelector({
|
|
|
25032
25033
|
lazyLoad.isFetchingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "py-2 text-center text-ods-text-secondary text-h6", children: "Loading more\u2026" }) : null
|
|
25033
25034
|
] }) : null
|
|
25034
25035
|
] });
|
|
25035
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25036
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
|
|
25036
25037
|
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h5", children: title }),
|
|
25037
25038
|
searchInput,
|
|
25038
25039
|
lazyLoad ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -25246,7 +25247,7 @@ function SEOEditorPreview({
|
|
|
25246
25247
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 lg:grid-cols-2", children: [
|
|
25247
25248
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
25248
25249
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25249
|
-
|
|
25250
|
+
_chunkHY5YL3U5cjs.Field,
|
|
25250
25251
|
{
|
|
25251
25252
|
label: "SEO Title",
|
|
25252
25253
|
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${SEO_TITLE_MAX_LENGTH})` : null,
|
|
@@ -25286,7 +25287,7 @@ function SEOEditorPreview({
|
|
|
25286
25287
|
!seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
|
|
25287
25288
|
] }),
|
|
25288
25289
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25289
|
-
|
|
25290
|
+
_chunkHY5YL3U5cjs.Field,
|
|
25290
25291
|
{
|
|
25291
25292
|
label: "SEO Keywords",
|
|
25292
25293
|
labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -25318,7 +25319,7 @@ function SEOEditorPreview({
|
|
|
25318
25319
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 lg:grid-cols-2", children: [
|
|
25319
25320
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
25320
25321
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25321
|
-
|
|
25322
|
+
_chunkHY5YL3U5cjs.Field,
|
|
25322
25323
|
{
|
|
25323
25324
|
label: "SEO Description",
|
|
25324
25325
|
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${SEO_DESCRIPTION_MAX_LENGTH})` : null,
|
|
@@ -25996,7 +25997,7 @@ function VideoBitesDisplay({
|
|
|
25996
25997
|
filterPublished = true,
|
|
25997
25998
|
showTitle = true
|
|
25998
25999
|
}) {
|
|
25999
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26000
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
|
|
26000
26001
|
}
|
|
26001
26002
|
|
|
26002
26003
|
// src/components/features/walkthrough-video.tsx
|
|
@@ -26066,7 +26067,7 @@ function WalkthroughVideo({
|
|
|
26066
26067
|
if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
|
|
26067
26068
|
};
|
|
26068
26069
|
}, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId]);
|
|
26069
|
-
const hydrated =
|
|
26070
|
+
const hydrated = _chunkHY5YL3U5cjs.useIsHydrated.call(void 0, );
|
|
26070
26071
|
const previewSuppressed = _react.useMemo.call(void 0, () => {
|
|
26071
26072
|
if (!hydrated) return false;
|
|
26072
26073
|
try {
|
|
@@ -26465,7 +26466,7 @@ function WalkthroughVideo({
|
|
|
26465
26466
|
},
|
|
26466
26467
|
children: [
|
|
26467
26468
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26468
|
-
|
|
26469
|
+
_chunkHY5YL3U5cjs.VideoHoverPreviewSurface,
|
|
26469
26470
|
{
|
|
26470
26471
|
url: video.mainVideoUrl || "",
|
|
26471
26472
|
posterUrl: video.posterUrl,
|
|
@@ -26488,7 +26489,7 @@ function WalkthroughVideo({
|
|
|
26488
26489
|
`card-${embedUrlKey}`
|
|
26489
26490
|
) }),
|
|
26490
26491
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26491
|
-
|
|
26492
|
+
_chunkHY5YL3U5cjs.CardHitLayer,
|
|
26492
26493
|
{
|
|
26493
26494
|
label: video.title ? `${label}: ${video.title}` : label,
|
|
26494
26495
|
onPointerDown: pausePreviewNow,
|
|
@@ -26603,7 +26604,7 @@ function WalkthroughVideo({
|
|
|
26603
26604
|
children: [
|
|
26604
26605
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
|
|
26605
26606
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26606
|
-
|
|
26607
|
+
_chunkHY5YL3U5cjs.Video,
|
|
26607
26608
|
{
|
|
26608
26609
|
kind: video.youtubeUrl ? "youtube" : "file",
|
|
26609
26610
|
url: video.youtubeUrl || video.mainVideoUrl,
|
|
@@ -26654,7 +26655,7 @@ function InlineWalkthroughVideo(props) {
|
|
|
26654
26655
|
var _reactquery = require('@tanstack/react-query');
|
|
26655
26656
|
function useWalkthroughVideo(opts) {
|
|
26656
26657
|
const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
|
|
26657
|
-
const captions =
|
|
26658
|
+
const captions = _chunkHY5YL3U5cjs.useCaptions.call(void 0, );
|
|
26658
26659
|
const query = _reactquery.useQuery.call(void 0, {
|
|
26659
26660
|
queryKey: ["walkthrough-video", endpoint],
|
|
26660
26661
|
enabled,
|
|
@@ -26852,7 +26853,7 @@ function VideoSourceSelector({
|
|
|
26852
26853
|
}
|
|
26853
26854
|
function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
|
|
26854
26855
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
|
|
26855
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26856
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Video, { kind: "file", url: videoUrl }) }),
|
|
26856
26857
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26857
26858
|
"button",
|
|
26858
26859
|
{
|
|
@@ -27376,7 +27377,7 @@ function HighlightVideoSection({
|
|
|
27376
27377
|
// Default simple preview — the <Video> SSOT (MuxPlayer) plays
|
|
27377
27378
|
// MP4 and Mux HLS alike; aspect-video box reserves the height.
|
|
27378
27379
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
|
|
27379
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27380
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
|
|
27380
27381
|
onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
27381
27382
|
"button",
|
|
27382
27383
|
{
|
|
@@ -27403,7 +27404,7 @@ function HighlightConfigSection({
|
|
|
27403
27404
|
disabled = false,
|
|
27404
27405
|
className = ""
|
|
27405
27406
|
}) {
|
|
27406
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27407
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
27407
27408
|
Select,
|
|
27408
27409
|
{
|
|
27409
27410
|
value: targetDurationSeconds.toString(),
|
|
@@ -28116,7 +28117,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
28116
28117
|
] });
|
|
28117
28118
|
};
|
|
28118
28119
|
var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
|
|
28119
|
-
const { innerRef, containerStyle } =
|
|
28120
|
+
const { innerRef, containerStyle } = _chunkHY5YL3U5cjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
|
|
28120
28121
|
const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
|
|
28121
28122
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
28122
28123
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -28285,7 +28286,7 @@ function WaitlistForm({
|
|
|
28285
28286
|
const { toast } = _chunk3L7KCOGOcjs.useToast.call(void 0, );
|
|
28286
28287
|
const { honeypotInputProps, getSignals, resetSignals } = _chunk3L7KCOGOcjs.useHumanitySignals.call(void 0, );
|
|
28287
28288
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
28288
|
-
const isClient =
|
|
28289
|
+
const isClient = _chunkHY5YL3U5cjs.useIsHydrated.call(void 0, );
|
|
28289
28290
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
28290
28291
|
const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
|
|
28291
28292
|
const rescue = _chunk3L7KCOGOcjs.useFormRescue.call(void 0, {
|
|
@@ -28823,15 +28824,7 @@ var appLayoutDrawerPanelVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
28823
28824
|
);
|
|
28824
28825
|
var HORIZONTAL_SIDES = /* @__PURE__ */ new Set(["left", "right"]);
|
|
28825
28826
|
var PERSIST_CLOSED_HOLD = "data-[state=closed]:fill-mode-forwards";
|
|
28826
|
-
function
|
|
28827
|
-
enabled,
|
|
28828
|
-
isHorizontal,
|
|
28829
|
-
minSize,
|
|
28830
|
-
maxSize,
|
|
28831
|
-
defaultSize,
|
|
28832
|
-
storageKey,
|
|
28833
|
-
container
|
|
28834
|
-
}) {
|
|
28827
|
+
function useContainerExtent(enabled, isHorizontal, container) {
|
|
28835
28828
|
const [available, setAvailable] = _react.useState.call(void 0, 0);
|
|
28836
28829
|
_react.useEffect.call(void 0, () => {
|
|
28837
28830
|
if (!enabled || !container) return void 0;
|
|
@@ -28843,147 +28836,7 @@ function useContainedResizableSize({
|
|
|
28843
28836
|
ro.observe(container);
|
|
28844
28837
|
return () => ro.disconnect();
|
|
28845
28838
|
}, [enabled, container, isHorizontal]);
|
|
28846
|
-
|
|
28847
|
-
(value) => {
|
|
28848
|
-
const effectiveMax = available > 0 ? Math.min(maxSize, available - 40) : maxSize;
|
|
28849
|
-
return _chunkIIMICN7Lcjs.clamp.call(void 0, value, minSize, Math.max(minSize, effectiveMax));
|
|
28850
|
-
},
|
|
28851
|
-
[available, minSize, maxSize]
|
|
28852
|
-
);
|
|
28853
|
-
const readInitial = _react.useCallback.call(void 0, () => {
|
|
28854
|
-
if (!enabled) return defaultSize;
|
|
28855
|
-
if (typeof window === "undefined") return defaultSize;
|
|
28856
|
-
if (!storageKey) return defaultSize;
|
|
28857
|
-
try {
|
|
28858
|
-
const raw = window.localStorage.getItem(storageKey);
|
|
28859
|
-
if (!raw) return defaultSize;
|
|
28860
|
-
const parsed = parseFloat(raw);
|
|
28861
|
-
if (!Number.isFinite(parsed)) return defaultSize;
|
|
28862
|
-
return parsed;
|
|
28863
|
-
} catch (e40) {
|
|
28864
|
-
return defaultSize;
|
|
28865
|
-
}
|
|
28866
|
-
}, [enabled, storageKey, defaultSize]);
|
|
28867
|
-
const [rawSize, setSizeRaw] = _react.useState.call(void 0, readInitial);
|
|
28868
|
-
const size = enabled ? clampToContainer(rawSize) : rawSize;
|
|
28869
|
-
const setSize = _react.useCallback.call(void 0, (next) => setSizeRaw(clampToContainer(next)), [clampToContainer]);
|
|
28870
|
-
_react.useEffect.call(void 0, () => {
|
|
28871
|
-
if (!enabled || !storageKey || typeof window === "undefined") return;
|
|
28872
|
-
try {
|
|
28873
|
-
window.localStorage.setItem(storageKey, String(Math.round(size)));
|
|
28874
|
-
} catch (e41) {
|
|
28875
|
-
}
|
|
28876
|
-
}, [enabled, size, storageKey]);
|
|
28877
|
-
return { size, setSize, clampSize: clampToContainer };
|
|
28878
|
-
}
|
|
28879
|
-
function finishDrag(startRef, dragSizeRef, commit) {
|
|
28880
|
-
if (!startRef.current) return;
|
|
28881
|
-
startRef.current = null;
|
|
28882
|
-
if (dragSizeRef.current !== null) commit(dragSizeRef.current);
|
|
28883
|
-
dragSizeRef.current = null;
|
|
28884
|
-
document.body.style.cursor = "";
|
|
28885
|
-
document.body.style.userSelect = "";
|
|
28886
|
-
}
|
|
28887
|
-
function AppLayoutDrawerResizeHandle({
|
|
28888
|
-
side,
|
|
28889
|
-
size,
|
|
28890
|
-
minSize,
|
|
28891
|
-
maxSize,
|
|
28892
|
-
onSize,
|
|
28893
|
-
clampSize,
|
|
28894
|
-
panelRef,
|
|
28895
|
-
ariaLabel
|
|
28896
|
-
}) {
|
|
28897
|
-
const isHorizontal = HORIZONTAL_SIDES.has(side);
|
|
28898
|
-
const startRef = _react.useRef.call(void 0, null);
|
|
28899
|
-
const dragSizeRef = _react.useRef.call(void 0, null);
|
|
28900
|
-
const onSizeRef = _react.useRef.call(void 0, onSize);
|
|
28901
|
-
_react.useEffect.call(void 0, () => {
|
|
28902
|
-
onSizeRef.current = onSize;
|
|
28903
|
-
}, [onSize]);
|
|
28904
|
-
_react.useEffect.call(void 0, () => () => finishDrag(startRef, dragSizeRef, onSizeRef.current), []);
|
|
28905
|
-
const direction = side === "right" || side === "bottom" ? -1 : 1;
|
|
28906
|
-
const handlePointerDown = (e) => {
|
|
28907
|
-
if (e.button !== 0 && e.pointerType === "mouse") return;
|
|
28908
|
-
e.preventDefault();
|
|
28909
|
-
startRef.current = { x: e.clientX, y: e.clientY, size };
|
|
28910
|
-
e.currentTarget.setPointerCapture(e.pointerId);
|
|
28911
|
-
document.body.style.cursor = isHorizontal ? "col-resize" : "row-resize";
|
|
28912
|
-
document.body.style.userSelect = "none";
|
|
28913
|
-
};
|
|
28914
|
-
const handlePointerMove = (e) => {
|
|
28915
|
-
const start = startRef.current;
|
|
28916
|
-
const panel = panelRef.current;
|
|
28917
|
-
if (!start || !panel) return;
|
|
28918
|
-
const delta = isHorizontal ? e.clientX - start.x : e.clientY - start.y;
|
|
28919
|
-
const next = clampSize(start.size + delta * direction);
|
|
28920
|
-
dragSizeRef.current = next;
|
|
28921
|
-
panel.style[isHorizontal ? "width" : "height"] = `${next}px`;
|
|
28922
|
-
e.currentTarget.setAttribute("aria-valuenow", String(Math.round(next)));
|
|
28923
|
-
};
|
|
28924
|
-
const endDrag = (e) => {
|
|
28925
|
-
if (!startRef.current) return;
|
|
28926
|
-
finishDrag(startRef, dragSizeRef, onSize);
|
|
28927
|
-
try {
|
|
28928
|
-
e.currentTarget.releasePointerCapture(e.pointerId);
|
|
28929
|
-
} catch (e42) {
|
|
28930
|
-
}
|
|
28931
|
-
};
|
|
28932
|
-
const handleKeyDown = (e) => {
|
|
28933
|
-
const step = e.shiftKey ? 40 : 16;
|
|
28934
|
-
if (isHorizontal) {
|
|
28935
|
-
if (e.key === "ArrowLeft") {
|
|
28936
|
-
e.preventDefault();
|
|
28937
|
-
onSize(size + step * (side === "right" ? 1 : -1));
|
|
28938
|
-
} else if (e.key === "ArrowRight") {
|
|
28939
|
-
e.preventDefault();
|
|
28940
|
-
onSize(size + step * (side === "right" ? -1 : 1));
|
|
28941
|
-
}
|
|
28942
|
-
} else {
|
|
28943
|
-
if (e.key === "ArrowUp") {
|
|
28944
|
-
e.preventDefault();
|
|
28945
|
-
onSize(size + step * (side === "bottom" ? 1 : -1));
|
|
28946
|
-
} else if (e.key === "ArrowDown") {
|
|
28947
|
-
e.preventDefault();
|
|
28948
|
-
onSize(size + step * (side === "bottom" ? -1 : 1));
|
|
28949
|
-
}
|
|
28950
|
-
}
|
|
28951
|
-
if (e.key === "Home") {
|
|
28952
|
-
e.preventDefault();
|
|
28953
|
-
onSize(minSize);
|
|
28954
|
-
} else if (e.key === "End") {
|
|
28955
|
-
e.preventDefault();
|
|
28956
|
-
onSize(maxSize);
|
|
28957
|
-
}
|
|
28958
|
-
};
|
|
28959
|
-
const trackPosition = side === "right" ? "right-full top-4 bottom-4 w-6 items-center justify-end pr-1" : side === "left" ? "left-full top-4 bottom-4 w-6 items-center justify-start pl-1" : side === "bottom" ? "bottom-full left-4 right-4 h-6 justify-center items-end pb-1" : "top-full left-4 right-4 h-6 justify-center items-start pt-1";
|
|
28960
|
-
const cursorClass = isHorizontal ? "cursor-col-resize" : "cursor-row-resize";
|
|
28961
|
-
const gripClass = isHorizontal ? "h-10 w-1" : "w-10 h-1";
|
|
28962
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28963
|
-
"div",
|
|
28964
|
-
{
|
|
28965
|
-
role: "separator",
|
|
28966
|
-
tabIndex: 0,
|
|
28967
|
-
"aria-orientation": isHorizontal ? "vertical" : "horizontal",
|
|
28968
|
-
"aria-valuenow": Math.round(size),
|
|
28969
|
-
"aria-valuemin": minSize,
|
|
28970
|
-
"aria-valuemax": maxSize,
|
|
28971
|
-
"aria-label": _nullishCoalesce(ariaLabel, () => ( (isHorizontal ? "Resize panel width" : "Resize panel height"))),
|
|
28972
|
-
onPointerDown: handlePointerDown,
|
|
28973
|
-
onPointerMove: handlePointerMove,
|
|
28974
|
-
onPointerUp: endDrag,
|
|
28975
|
-
onPointerCancel: endDrag,
|
|
28976
|
-
onLostPointerCapture: endDrag,
|
|
28977
|
-
onKeyDown: handleKeyDown,
|
|
28978
|
-
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
28979
|
-
"group absolute z-20 flex touch-none select-none",
|
|
28980
|
-
"outline-none ring-0 focus:outline-none focus:ring-0 focus-visible:outline-none focus-visible:ring-0",
|
|
28981
|
-
trackPosition,
|
|
28982
|
-
cursorClass
|
|
28983
|
-
),
|
|
28984
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, "rounded-full bg-ods-border", gripClass) })
|
|
28985
|
-
}
|
|
28986
|
-
);
|
|
28839
|
+
return available;
|
|
28987
28840
|
}
|
|
28988
28841
|
var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
28989
28842
|
({
|
|
@@ -29078,14 +28931,15 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
29078
28931
|
return () => mq.removeEventListener("change", update);
|
|
29079
28932
|
}, [mobileBreakpoint]);
|
|
29080
28933
|
const panelRef = _react.useRef.call(void 0, null);
|
|
29081
|
-
const
|
|
28934
|
+
const available = useContainerExtent(resizable, isHorizontal, portalContainer);
|
|
28935
|
+
const { size, setSize, clampSize } = _chunkHY5YL3U5cjs.useResizablePanelSize.call(void 0, {
|
|
29082
28936
|
enabled: resizable,
|
|
29083
|
-
isHorizontal,
|
|
29084
28937
|
minSize,
|
|
29085
28938
|
maxSize,
|
|
29086
28939
|
defaultSize: initialSize,
|
|
29087
|
-
|
|
29088
|
-
|
|
28940
|
+
available,
|
|
28941
|
+
reserve: 40,
|
|
28942
|
+
storageKey
|
|
29089
28943
|
});
|
|
29090
28944
|
const applyInlineSize = resizable && !isMobile;
|
|
29091
28945
|
const sizeStyle = applyInlineSize ? isHorizontal ? { width: size } : { height: size } : {};
|
|
@@ -29098,7 +28952,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
29098
28952
|
"data-state": open ? "open" : "closed",
|
|
29099
28953
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
29100
28954
|
"absolute inset-0 z-[102] outline-none data-[state=closed]:pointer-events-none data-[state=open]:pointer-events-auto data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
29101
|
-
|
|
28955
|
+
_chunkHY5YL3U5cjs.OVERLAY_BACKDROP_CLASS,
|
|
29102
28956
|
// Persist mode only: hold the fade-out's final (transparent) frame
|
|
29103
28957
|
// so the backdrop doesn't snap back to opacity 1 and dim the whole
|
|
29104
28958
|
// content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
|
|
@@ -29139,8 +28993,9 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
29139
28993
|
...props,
|
|
29140
28994
|
children: [
|
|
29141
28995
|
applyInlineSize && (!persist || open) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29142
|
-
|
|
28996
|
+
_chunkHY5YL3U5cjs.PanelResizeHandle,
|
|
29143
28997
|
{
|
|
28998
|
+
variant: "inLayout",
|
|
29144
28999
|
side: resolvedSide,
|
|
29145
29000
|
size,
|
|
29146
29001
|
minSize,
|
|
@@ -29177,11 +29032,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
29177
29032
|
}
|
|
29178
29033
|
);
|
|
29179
29034
|
AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
|
|
29180
|
-
var AppLayoutDrawerHeader =
|
|
29181
|
-
var AppLayoutDrawerTitle =
|
|
29182
|
-
var AppLayoutDrawerDescription =
|
|
29183
|
-
var AppLayoutDrawerBody =
|
|
29184
|
-
var AppLayoutDrawerFooter =
|
|
29035
|
+
var AppLayoutDrawerHeader = _chunkHY5YL3U5cjs.DrawerHeader;
|
|
29036
|
+
var AppLayoutDrawerTitle = _chunkHY5YL3U5cjs.DrawerTitle;
|
|
29037
|
+
var AppLayoutDrawerDescription = _chunkHY5YL3U5cjs.DrawerDescription;
|
|
29038
|
+
var AppLayoutDrawerBody = _chunkHY5YL3U5cjs.DrawerBody;
|
|
29039
|
+
var AppLayoutDrawerFooter = _chunkHY5YL3U5cjs.DrawerFooter;
|
|
29185
29040
|
|
|
29186
29041
|
// src/components/features/notifications/notification-tile.tsx
|
|
29187
29042
|
|
|
@@ -29287,7 +29142,7 @@ function NotificationTile({
|
|
|
29287
29142
|
{
|
|
29288
29143
|
dateTime: createdAtIso,
|
|
29289
29144
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", lockscreen && "self-start"),
|
|
29290
|
-
children: _nullishCoalesce(timeLabel, () => (
|
|
29145
|
+
children: _nullishCoalesce(timeLabel, () => ( _chunkHY5YL3U5cjs.formatTicketRelativeTime.call(void 0, createdAtIso)))
|
|
29291
29146
|
}
|
|
29292
29147
|
) : null,
|
|
29293
29148
|
!lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
|
|
@@ -29396,7 +29251,7 @@ function NotificationDrawer({
|
|
|
29396
29251
|
const unreadNotifications = notifications.filter((n) => !n.read);
|
|
29397
29252
|
const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
29398
29253
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-m)] pt-[var(--spacing-system-m)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29399
|
-
|
|
29254
|
+
_chunkHY5YL3U5cjs.DrawerTitle,
|
|
29400
29255
|
{
|
|
29401
29256
|
hideClose: true,
|
|
29402
29257
|
className: "truncate",
|
|
@@ -29455,8 +29310,8 @@ function NotificationDrawer({
|
|
|
29455
29310
|
}
|
|
29456
29311
|
) });
|
|
29457
29312
|
}
|
|
29458
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29459
|
-
|
|
29313
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29314
|
+
_chunkHY5YL3U5cjs.DrawerContent,
|
|
29460
29315
|
{
|
|
29461
29316
|
side: "right",
|
|
29462
29317
|
"aria-describedby": void 0,
|
|
@@ -29739,13 +29594,13 @@ function getApprovalMeta(notification) {
|
|
|
29739
29594
|
function resolutionToStatus(resolution) {
|
|
29740
29595
|
switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
|
|
29741
29596
|
case "APPROVED":
|
|
29742
|
-
return
|
|
29597
|
+
return _chunkHY5YL3U5cjs.APPROVAL_STATUS.APPROVED;
|
|
29743
29598
|
case "REJECTED":
|
|
29744
|
-
return
|
|
29599
|
+
return _chunkHY5YL3U5cjs.APPROVAL_STATUS.REJECTED;
|
|
29745
29600
|
case "CANCELLED":
|
|
29746
|
-
return
|
|
29601
|
+
return _chunkHY5YL3U5cjs.APPROVAL_STATUS.CANCELLED;
|
|
29747
29602
|
default:
|
|
29748
|
-
return
|
|
29603
|
+
return _chunkHY5YL3U5cjs.APPROVAL_STATUS.PENDING;
|
|
29749
29604
|
}
|
|
29750
29605
|
}
|
|
29751
29606
|
function approvalMetaToBatchData(approval) {
|
|
@@ -29791,7 +29646,7 @@ function ApprovalRequestNotificationTile({
|
|
|
29791
29646
|
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _635 => _635.resolution]));
|
|
29792
29647
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
29793
29648
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
29794
|
-
const { innerRef, containerStyle } =
|
|
29649
|
+
const { innerRef, containerStyle } = _chunkHY5YL3U5cjs.useCollapsible.call(void 0, { expanded });
|
|
29795
29650
|
if (!approval || !batchData) return null;
|
|
29796
29651
|
const tileNotification = {
|
|
29797
29652
|
...notification,
|
|
@@ -29804,7 +29659,7 @@ function ApprovalRequestNotificationTile({
|
|
|
29804
29659
|
setLocalStatus(nextStatus);
|
|
29805
29660
|
try {
|
|
29806
29661
|
await action(batchData.approvalRequestId);
|
|
29807
|
-
} catch (
|
|
29662
|
+
} catch (e40) {
|
|
29808
29663
|
setLocalStatus(null);
|
|
29809
29664
|
return;
|
|
29810
29665
|
} finally {
|
|
@@ -29854,7 +29709,7 @@ function ApprovalRequestNotificationTile({
|
|
|
29854
29709
|
}
|
|
29855
29710
|
)
|
|
29856
29711
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
29857
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29712
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ApprovalStatusTag, { status }),
|
|
29858
29713
|
approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
|
|
29859
29714
|
"by ",
|
|
29860
29715
|
approval.resolvedByName
|
|
@@ -29872,12 +29727,12 @@ function ApprovalRequestNotificationTile({
|
|
|
29872
29727
|
"aria-expanded": expanded,
|
|
29873
29728
|
"aria-label": toggleLabel,
|
|
29874
29729
|
className: "ml-auto w-6 shrink-0 px-0 md:w-8",
|
|
29875
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29730
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ExpandChevron, { expanded })
|
|
29876
29731
|
}
|
|
29877
29732
|
)
|
|
29878
29733
|
] }),
|
|
29879
29734
|
children: !lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-t border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29880
|
-
|
|
29735
|
+
_chunkHY5YL3U5cjs.ApprovalBatchMessage,
|
|
29881
29736
|
{
|
|
29882
29737
|
data: batchData,
|
|
29883
29738
|
showExecutionStatus: false,
|
|
@@ -30394,7 +30249,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
30394
30249
|
"data-state": isOpen ? "open" : "closed",
|
|
30395
30250
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
30396
30251
|
layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
|
|
30397
|
-
|
|
30252
|
+
_chunkHY5YL3U5cjs.OVERLAY_BACKDROP_CLASS,
|
|
30398
30253
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0",
|
|
30399
30254
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
|
|
30400
30255
|
)
|
|
@@ -31084,9 +30939,9 @@ function KeepRecordingModal({
|
|
|
31084
30939
|
if (!canKeep || isPending) return;
|
|
31085
30940
|
onConfirm({ reason, description: reason === "OTHER" ? trimmed : null });
|
|
31086
30941
|
};
|
|
31087
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30942
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
31088
30943
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
31089
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30944
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: "Keep this recording" }) }),
|
|
31090
30945
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31091
30946
|
KeepNotice,
|
|
31092
30947
|
{
|
|
@@ -31124,7 +30979,7 @@ function KeepRecordingModal({
|
|
|
31124
30979
|
}
|
|
31125
30980
|
)
|
|
31126
30981
|
] }),
|
|
31127
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30982
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: [
|
|
31128
30983
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
31129
30984
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
31130
30985
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -31154,9 +31009,9 @@ function ReleaseKeepingModal({
|
|
|
31154
31009
|
isPending = false,
|
|
31155
31010
|
onConfirm
|
|
31156
31011
|
}) {
|
|
31157
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31012
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
31158
31013
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
31159
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31014
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.ModalTitle, { children: "Release Keeping" }) }),
|
|
31160
31015
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] text-ods-text-primary text-h4", children: [
|
|
31161
31016
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { children: [
|
|
31162
31017
|
"Kept by ",
|
|
@@ -31173,7 +31028,7 @@ function ReleaseKeepingModal({
|
|
|
31173
31028
|
] })
|
|
31174
31029
|
] }),
|
|
31175
31030
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, KeepNotice, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3COXDBHcjs.HourglassIcon, { size: 24, color: "currentColor" }), title: `It will expire on ${expiresOn}`, children: dueOn ? `It was due to expire on ${dueOn}. Releasing gives it 3 days' grace, and it shows amber until then. Whoever placed the Keep is reminded the day before it goes. Nothing is deleted now.` : "Nothing is deleted now." }),
|
|
31176
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31031
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.ModalFooter, { children: [
|
|
31177
31032
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
31178
31033
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
31179
31034
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "accent", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Release Keeping" })
|
|
@@ -31437,7 +31292,7 @@ function BoardColumnHeader({
|
|
|
31437
31292
|
}) {
|
|
31438
31293
|
const count = _nullishCoalesce(column.total, () => ( column.tickets.length));
|
|
31439
31294
|
const tagStatus = _nullishCoalesce(column.statusKey, () => ( column.id));
|
|
31440
|
-
const useStatusVariant =
|
|
31295
|
+
const useStatusVariant = _chunkHY5YL3U5cjs.resolveTicketStatus.call(void 0, tagStatus) !== null;
|
|
31441
31296
|
const actionClass = "h-8 w-8 p-0 md:h-8 md:w-8";
|
|
31442
31297
|
if (collapsed) {
|
|
31443
31298
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
@@ -31453,7 +31308,7 @@ function BoardColumnHeader({
|
|
|
31453
31308
|
}
|
|
31454
31309
|
),
|
|
31455
31310
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31456
|
-
|
|
31311
|
+
_chunkHY5YL3U5cjs.TicketStatusTag,
|
|
31457
31312
|
{
|
|
31458
31313
|
status: tagStatus,
|
|
31459
31314
|
label: column.label,
|
|
@@ -31466,7 +31321,7 @@ function BoardColumnHeader({
|
|
|
31466
31321
|
}
|
|
31467
31322
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
31468
31323
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
31469
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31324
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TicketStatusTag, { status: tagStatus, label: column.label, color: useStatusVariant ? void 0 : column.color }),
|
|
31470
31325
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5", style: useStatusVariant ? void 0 : { color: column.color }, children: count })
|
|
31471
31326
|
] }),
|
|
31472
31327
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
@@ -31618,7 +31473,7 @@ function holdMoveDragEffect(element) {
|
|
|
31618
31473
|
|
|
31619
31474
|
function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
|
|
31620
31475
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
31621
|
-
const { innerRef, containerStyle } =
|
|
31476
|
+
const { innerRef, containerStyle } = _chunkHY5YL3U5cjs.useCollapsible.call(void 0, { expanded });
|
|
31622
31477
|
const isAdmin = pendingApproval.approvalType === "ADMIN";
|
|
31623
31478
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex flex-col", children: [
|
|
31624
31479
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -31647,7 +31502,7 @@ function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
|
|
|
31647
31502
|
}
|
|
31648
31503
|
),
|
|
31649
31504
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, className: "pt-[var(--spacing-system-xs)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31650
|
-
|
|
31505
|
+
_chunkHY5YL3U5cjs.ApprovalBatchMessage,
|
|
31651
31506
|
{
|
|
31652
31507
|
className: "mb-0",
|
|
31653
31508
|
data: {
|
|
@@ -31727,7 +31582,7 @@ function TicketCardBody({
|
|
|
31727
31582
|
onLinkClick
|
|
31728
31583
|
}) {
|
|
31729
31584
|
const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
|
|
31730
|
-
const newMessageTextColor = columnColor ?
|
|
31585
|
+
const newMessageTextColor = columnColor ? _chunkHY5YL3U5cjs.getReadableTextColor.call(void 0, columnColor) : void 0;
|
|
31731
31586
|
const showDeviceRow = !!(_optionalChain([ticket, 'access', _675 => _675.deviceHostnames, 'optionalAccess', _676 => _676.length]) || ticket.organizationName);
|
|
31732
31587
|
const deviceText = [_optionalChain([ticket, 'access', _677 => _677.deviceHostnames, 'optionalAccess', _678 => _678.join, 'call', _679 => _679(", ")]), ticket.organizationName].filter(Boolean).join(", ");
|
|
31733
31588
|
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _680 => _680.assignees, 'optionalAccess', _681 => _681.length]) || renderAssignSlot);
|
|
@@ -31766,8 +31621,8 @@ function TicketCardBody({
|
|
|
31766
31621
|
] })
|
|
31767
31622
|
] }) : null
|
|
31768
31623
|
] }) : null;
|
|
31769
|
-
const timestampLabel = ticket.createdAt ?
|
|
31770
|
-
const tooltipLabel = ticket.createdAt ?
|
|
31624
|
+
const timestampLabel = ticket.createdAt ? _chunkHY5YL3U5cjs.formatTicketRelativeTime.call(void 0, ticket.createdAt) : null;
|
|
31625
|
+
const tooltipLabel = ticket.createdAt ? _chunkHY5YL3U5cjs.formatTicketFullTimestamp.call(void 0, ticket.createdAt) : null;
|
|
31771
31626
|
const metaLabel = [ticket.ticketNumber || null, timestampLabel].filter(Boolean).join(" \u2022 ");
|
|
31772
31627
|
const metaClass = "truncate text-ods-text-secondary text-h6";
|
|
31773
31628
|
const meta = href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -31794,9 +31649,9 @@ function TicketCardBody({
|
|
|
31794
31649
|
rightSection
|
|
31795
31650
|
] }),
|
|
31796
31651
|
_optionalChain([ticket, 'access', _684 => _684.tags, 'optionalAccess', _685 => _685.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
|
|
31797
|
-
metaLabel && (tooltipLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31798
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31799
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31652
|
+
metaLabel && (tooltipLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkHY5YL3U5cjs.Tooltip, { children: [
|
|
31653
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipTrigger, { asChild: true, children: meta }),
|
|
31654
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY5YL3U5cjs.TooltipContent, { children: tooltipLabel })
|
|
31800
31655
|
] }) }) : meta),
|
|
31801
31656
|
ticket.escalatedByUser && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] text-ods-open-yellow text-h6", children: [
|
|
31802
31657
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3COXDBHcjs.UserCheckIcon, { className: "size-4 shrink-0" }),
|