@flamingo-stack/openframe-frontend-core 0.0.660-snapshot.20260923164839 → 0.0.660
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-5LS7KNAU.js → chunk-2DLM3NXE.js} +5 -5
- package/dist/{chunk-RFGXKRRL.js → chunk-6DVSTVUU.js} +6 -6
- package/dist/{chunk-EUT6SQW7.js → chunk-6KR74SOJ.js} +3 -3
- package/dist/{chunk-ZASHVL45.cjs → chunk-AOOORZI5.cjs} +3 -3
- package/dist/{chunk-ZASHVL45.cjs.map → chunk-AOOORZI5.cjs.map} +1 -1
- package/dist/{chunk-Z572FXXM.js → chunk-APWQTZCR.js} +2 -2
- package/dist/{chunk-M23ZPKOK.js → chunk-E7C3F2SK.js} +2 -2
- package/dist/{chunk-XOA32PN3.cjs → chunk-EOGXNLZC.cjs} +22 -22
- package/dist/{chunk-XOA32PN3.cjs.map → chunk-EOGXNLZC.cjs.map} +1 -1
- package/dist/{chunk-6VY6PXAN.cjs → chunk-GDHV5W5C.cjs} +33 -33
- package/dist/{chunk-6VY6PXAN.cjs.map → chunk-GDHV5W5C.cjs.map} +1 -1
- package/dist/{chunk-4NKKPGDN.js → chunk-H7ORPMRH.js} +19 -21
- package/dist/{chunk-4NKKPGDN.js.map → chunk-H7ORPMRH.js.map} +1 -1
- package/dist/{chunk-D7QWYQBQ.cjs → chunk-ITVLOEGF.cjs} +71 -71
- package/dist/{chunk-D7QWYQBQ.cjs.map → chunk-ITVLOEGF.cjs.map} +1 -1
- package/dist/{chunk-RPHRBZG6.cjs → chunk-K4W3II7M.cjs} +3 -3
- package/dist/{chunk-RPHRBZG6.cjs.map → chunk-K4W3II7M.cjs.map} +1 -1
- package/dist/{chunk-IMDYBINC.js → chunk-KP4K6I5O.js} +3 -3
- package/dist/{chunk-H3DF7COI.cjs → chunk-L4YJU3AG.cjs} +15 -15
- package/dist/{chunk-H3DF7COI.cjs.map → chunk-L4YJU3AG.cjs.map} +1 -1
- package/dist/{chunk-GXHZCGVJ.cjs → chunk-LSVQNRX4.cjs} +19 -21
- package/dist/chunk-LSVQNRX4.cjs.map +1 -0
- package/dist/{chunk-U4N65JUW.js → chunk-MEFCA6VD.js} +3 -3
- package/dist/{chunk-FC6I2NWF.js → chunk-MW7LEMFG.js} +2 -2
- package/dist/{chunk-QARWK4LN.cjs → chunk-NXAXZPEO.cjs} +10 -10
- package/dist/{chunk-QARWK4LN.cjs.map → chunk-NXAXZPEO.cjs.map} +1 -1
- package/dist/{chunk-PC5WWTDM.js → chunk-P2ROGTMF.js} +3 -3
- package/dist/{chunk-ZIT4TC5R.cjs → chunk-PUE4XMZK.cjs} +163 -163
- package/dist/{chunk-ZIT4TC5R.cjs.map → chunk-PUE4XMZK.cjs.map} +1 -1
- package/dist/{chunk-WDJT7NJ5.js → chunk-QVZD2LLU.js} +5 -5
- package/dist/{chunk-4EY5JSMK.cjs → chunk-RRGTBH3L.cjs} +5 -5
- package/dist/{chunk-4EY5JSMK.cjs.map → chunk-RRGTBH3L.cjs.map} +1 -1
- package/dist/{chunk-Q4XWYP5U.js → chunk-T6LNAX4R.js} +4 -4
- package/dist/{chunk-7KNVRRI4.cjs → chunk-UIAXQJPV.cjs} +22 -22
- package/dist/{chunk-7KNVRRI4.cjs.map → chunk-UIAXQJPV.cjs.map} +1 -1
- package/dist/{chunk-F5LMTKQD.js → chunk-VFGBRGFB.js} +3 -3
- package/dist/{chunk-YNW3DQFY.cjs → chunk-VJMPYY5O.cjs} +25 -25
- package/dist/{chunk-YNW3DQFY.cjs.map → chunk-VJMPYY5O.cjs.map} +1 -1
- package/dist/{chunk-TRR6XUEP.js → chunk-VVOI2OC3.js} +2 -2
- package/dist/{chunk-4JITKV2S.cjs → chunk-VW7NXM2O.cjs} +45 -45
- package/dist/{chunk-4JITKV2S.cjs.map → chunk-VW7NXM2O.cjs.map} +1 -1
- package/dist/{chunk-WGTKYVBK.cjs → chunk-VWGFJJD6.cjs} +10 -10
- package/dist/{chunk-WGTKYVBK.cjs.map → chunk-VWGFJJD6.cjs.map} +1 -1
- package/dist/{chunk-GLDXZK76.cjs → chunk-WMIB6JSA.cjs} +4 -4
- package/dist/{chunk-GLDXZK76.cjs.map → chunk-WMIB6JSA.cjs.map} +1 -1
- package/dist/{chunk-KCYGLC7Q.js → chunk-WWEQT2WX.js} +5 -5
- package/dist/{chunk-N4ORXOZK.cjs → chunk-Z7NI2TQD.cjs} +10 -10
- package/dist/{chunk-N4ORXOZK.cjs.map → chunk-Z7NI2TQD.cjs.map} +1 -1
- package/dist/{chunk-J5TAB64U.js → chunk-ZT3CZCDS.js} +2 -2
- package/dist/components/case-studies/index.cjs +14 -14
- package/dist/components/case-studies/index.js +3 -3
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/chat/utils/history-merge.d.ts +0 -6
- package/dist/components/chat/utils/history-merge.d.ts.map +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 +23 -23
- package/dist/components/help-center-pages/index.js +14 -14
- package/dist/components/index.cjs +39 -39
- package/dist/components/index.js +13 -13
- package/dist/components/meeting-scheduler/index.cjs +24 -24
- package/dist/components/meeting-scheduler/index.js +2 -2
- 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/index.cjs +3 -3
- package/dist/components/ui/index.js +2 -2
- package/dist/index.cjs +7 -7
- package/dist/index.js +6 -6
- package/package.json +1 -1
- package/src/components/chat/utils/__tests__/history-merge.test.ts +0 -62
- package/src/components/chat/utils/history-merge.ts +17 -31
- package/dist/chunk-GXHZCGVJ.cjs.map +0 -1
- /package/dist/{chunk-5LS7KNAU.js.map → chunk-2DLM3NXE.js.map} +0 -0
- /package/dist/{chunk-RFGXKRRL.js.map → chunk-6DVSTVUU.js.map} +0 -0
- /package/dist/{chunk-EUT6SQW7.js.map → chunk-6KR74SOJ.js.map} +0 -0
- /package/dist/{chunk-Z572FXXM.js.map → chunk-APWQTZCR.js.map} +0 -0
- /package/dist/{chunk-M23ZPKOK.js.map → chunk-E7C3F2SK.js.map} +0 -0
- /package/dist/{chunk-IMDYBINC.js.map → chunk-KP4K6I5O.js.map} +0 -0
- /package/dist/{chunk-U4N65JUW.js.map → chunk-MEFCA6VD.js.map} +0 -0
- /package/dist/{chunk-FC6I2NWF.js.map → chunk-MW7LEMFG.js.map} +0 -0
- /package/dist/{chunk-PC5WWTDM.js.map → chunk-P2ROGTMF.js.map} +0 -0
- /package/dist/{chunk-WDJT7NJ5.js.map → chunk-QVZD2LLU.js.map} +0 -0
- /package/dist/{chunk-Q4XWYP5U.js.map → chunk-T6LNAX4R.js.map} +0 -0
- /package/dist/{chunk-F5LMTKQD.js.map → chunk-VFGBRGFB.js.map} +0 -0
- /package/dist/{chunk-TRR6XUEP.js.map → chunk-VVOI2OC3.js.map} +0 -0
- /package/dist/{chunk-KCYGLC7Q.js.map → chunk-WWEQT2WX.js.map} +0 -0
- /package/dist/{chunk-J5TAB64U.js.map → chunk-ZT3CZCDS.js.map} +0 -0
|
@@ -93,7 +93,7 @@ var _chunkQVSVRG7Icjs = require('./chunk-QVSVRG7I.cjs');
|
|
|
93
93
|
|
|
94
94
|
|
|
95
95
|
|
|
96
|
-
var
|
|
96
|
+
var _chunkLSVQNRX4cjs = require('./chunk-LSVQNRX4.cjs');
|
|
97
97
|
|
|
98
98
|
|
|
99
99
|
|
|
@@ -349,7 +349,7 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
349
349
|
var useTheme = _nextthemes.useTheme;
|
|
350
350
|
function useThemeToggle() {
|
|
351
351
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
352
|
-
const mounted =
|
|
352
|
+
const mounted = _chunkLSVQNRX4cjs.useIsHydrated.call(void 0, );
|
|
353
353
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
354
354
|
const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
|
|
355
355
|
const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
|
|
@@ -626,7 +626,7 @@ function TruncateText({
|
|
|
626
626
|
const { ref, isTruncated } = _chunkTLLJIGTPcjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
|
|
627
627
|
const clampClass = isMultiLine ? LINE_CLAMP_CLASS[lines] : "truncate block";
|
|
628
628
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
629
|
-
|
|
629
|
+
_chunkLSVQNRX4cjs.FloatingTooltip,
|
|
630
630
|
{
|
|
631
631
|
content: _nullishCoalesce(tooltip, () => ( children)),
|
|
632
632
|
side,
|
|
@@ -933,7 +933,7 @@ function AutocompleteInner(props, ref) {
|
|
|
933
933
|
),
|
|
934
934
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2", children: [
|
|
935
935
|
multiple && visibleTags.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
936
|
-
|
|
936
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
937
937
|
{
|
|
938
938
|
variant: "outline",
|
|
939
939
|
labelClassName: "max-w-[90px] truncate",
|
|
@@ -1155,7 +1155,7 @@ function AutocompleteInner(props, ref) {
|
|
|
1155
1155
|
"aria-hidden": "true",
|
|
1156
1156
|
className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
|
|
1157
1157
|
children: selectedOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1158
|
-
|
|
1158
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
1159
1159
|
{
|
|
1160
1160
|
variant: "outline",
|
|
1161
1161
|
labelClassName: "max-w-[90px] truncate",
|
|
@@ -2540,7 +2540,7 @@ function InfoHint({ children, label, side = "top", className }) {
|
|
|
2540
2540
|
const describedById = _react.useId.call(void 0, );
|
|
2541
2541
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "inline-flex shrink-0 items-center", className), children: [
|
|
2542
2542
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2543
|
-
|
|
2543
|
+
_chunkLSVQNRX4cjs.FloatingTooltip,
|
|
2544
2544
|
{
|
|
2545
2545
|
content: children,
|
|
2546
2546
|
side,
|
|
@@ -2634,7 +2634,7 @@ function Value2({ value, depth }) {
|
|
|
2634
2634
|
}
|
|
2635
2635
|
if (typeof value === "string") {
|
|
2636
2636
|
if (ISO_DATE.test(value)) {
|
|
2637
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children:
|
|
2637
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkLSVQNRX4cjs.formatRelativeTime.call(void 0, value) });
|
|
2638
2638
|
}
|
|
2639
2639
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
|
|
2640
2640
|
}
|
|
@@ -3266,7 +3266,7 @@ function RowValue({ value }) {
|
|
|
3266
3266
|
}
|
|
3267
3267
|
case "status": {
|
|
3268
3268
|
const { type: _type, ...props } = value;
|
|
3269
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3269
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TicketStatusTag, { ...props });
|
|
3270
3270
|
}
|
|
3271
3271
|
case "custom":
|
|
3272
3272
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
|
|
@@ -4177,7 +4177,7 @@ function TagsManager({
|
|
|
4177
4177
|
}
|
|
4178
4178
|
),
|
|
4179
4179
|
selectedTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4180
|
-
|
|
4180
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
4181
4181
|
{
|
|
4182
4182
|
label: tag.name,
|
|
4183
4183
|
variant: "outline",
|
|
@@ -4722,10 +4722,10 @@ function useConfirm() {
|
|
|
4722
4722
|
},
|
|
4723
4723
|
[]
|
|
4724
4724
|
);
|
|
4725
|
-
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4726
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4727
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4728
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4725
|
+
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
|
|
4726
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalTitle, { children: pending.title }) }),
|
|
4727
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
|
|
4728
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.ModalFooter, { children: [
|
|
4729
4729
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
|
|
4730
4730
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
|
|
4731
4731
|
] })
|
|
@@ -4788,9 +4788,9 @@ function AdminFormModal({
|
|
|
4788
4788
|
body: "Your edits have not been saved. Close and discard them?"
|
|
4789
4789
|
});
|
|
4790
4790
|
if (!isOpen) return null;
|
|
4791
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4792
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4793
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4791
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
|
|
4792
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.ModalHeader, { children: [
|
|
4793
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalTitle, { children: title }),
|
|
4794
4794
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
4795
4795
|
] }),
|
|
4796
4796
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -4815,7 +4815,7 @@ function AdminFormModal({
|
|
|
4815
4815
|
// a shrink-to-fit flex item pinned to the left of a 1400px panel).
|
|
4816
4816
|
// The placeholder owns its own layout and mirrors the column count so
|
|
4817
4817
|
// the modal doesn't visibly re-flow when the entity lands.
|
|
4818
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4818
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4819
4819
|
"div",
|
|
4820
4820
|
{
|
|
4821
4821
|
"aria-busy": "true",
|
|
@@ -4836,12 +4836,12 @@ function AdminFormModal({
|
|
|
4836
4836
|
]
|
|
4837
4837
|
}
|
|
4838
4838
|
) })
|
|
4839
|
-
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4839
|
+
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalContent, { className: contentClassName, children }),
|
|
4840
4840
|
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
|
|
4841
4841
|
]
|
|
4842
4842
|
}
|
|
4843
4843
|
),
|
|
4844
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4844
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
|
|
4845
4845
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
|
|
4846
4846
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
4847
4847
|
footerStatus,
|
|
@@ -6987,7 +6987,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
|
|
|
6987
6987
|
};
|
|
6988
6988
|
const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
|
|
6989
6989
|
const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6990
|
-
|
|
6990
|
+
_chunkLSVQNRX4cjs.Video,
|
|
6991
6991
|
{
|
|
6992
6992
|
url: item.src,
|
|
6993
6993
|
poster: item.poster ? displayImageSrc(item.poster) : void 0,
|
|
@@ -7711,7 +7711,7 @@ function buildRichEmbedOverrides({
|
|
|
7711
7711
|
ogEndpointPath,
|
|
7712
7712
|
textSizes
|
|
7713
7713
|
}) {
|
|
7714
|
-
const standard =
|
|
7714
|
+
const standard = _chunkLSVQNRX4cjs.buildStandardLeafRenderers.call(void 0, { textSizes });
|
|
7715
7715
|
return {
|
|
7716
7716
|
// Fence-language embeds (```youtube-embed etc.); everything else
|
|
7717
7717
|
// (mermaid, highlighted blocks, inline code) falls through to `standard`.
|
|
@@ -7721,7 +7721,7 @@ function buildRichEmbedOverrides({
|
|
|
7721
7721
|
const language = match ? match[1] : "";
|
|
7722
7722
|
const fenceText = () => String(children).replace(/\n$/, "").trim();
|
|
7723
7723
|
if (language === "youtube-embed") {
|
|
7724
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7724
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Video, { kind: "youtube", url: fenceText() });
|
|
7725
7725
|
}
|
|
7726
7726
|
if (language === "reddit-embed") {
|
|
7727
7727
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
|
|
@@ -7762,7 +7762,7 @@ function buildRichEmbedOverrides({
|
|
|
7762
7762
|
"data-figma-url": figmaUrl
|
|
7763
7763
|
} = divProps;
|
|
7764
7764
|
if (className === "youtube-embed" && videoId) {
|
|
7765
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7765
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Video, { kind: "youtube", url: videoId });
|
|
7766
7766
|
}
|
|
7767
7767
|
if (className === "reddit-embed" && postUrl) {
|
|
7768
7768
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
|
|
@@ -7847,14 +7847,14 @@ function buildRichEmbedOverrides({
|
|
|
7847
7847
|
// rich-markdown runtime (Supabase optimization on the hub, identity
|
|
7848
7848
|
// elsewhere). Guard against empty `![]()`.
|
|
7849
7849
|
img: ({ src, alt }) => {
|
|
7850
|
-
if (!
|
|
7850
|
+
if (!_chunkLSVQNRX4cjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7851
7851
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
|
|
7852
7852
|
},
|
|
7853
7853
|
// Raw <video> tags in stored content (blog publisher injection) route
|
|
7854
7854
|
// to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
|
|
7855
7855
|
video: ({ src, poster, className }) => {
|
|
7856
|
-
if (!
|
|
7857
|
-
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,
|
|
7856
|
+
if (!_chunkLSVQNRX4cjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7857
|
+
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, _chunkLSVQNRX4cjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
|
|
7858
7858
|
}
|
|
7859
7859
|
};
|
|
7860
7860
|
}
|
|
@@ -8095,13 +8095,13 @@ var RichMarkdownInner = ({
|
|
|
8095
8095
|
},
|
|
8096
8096
|
[resolveLinkEndpointUrl, resolveSource]
|
|
8097
8097
|
);
|
|
8098
|
-
const textSizes = _react.useMemo.call(void 0, () =>
|
|
8098
|
+
const textSizes = _react.useMemo.call(void 0, () => _chunkLSVQNRX4cjs.resolveTextSizeConfig.call(void 0, "article"), []);
|
|
8099
8099
|
const componentOverrides = _react.useMemo.call(void 0,
|
|
8100
8100
|
() => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
|
|
8101
8101
|
[ogApiBaseUrl, ogEndpointPath, textSizes]
|
|
8102
8102
|
);
|
|
8103
8103
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8104
|
-
|
|
8104
|
+
_chunkLSVQNRX4cjs.MarkdownEngine,
|
|
8105
8105
|
{
|
|
8106
8106
|
content,
|
|
8107
8107
|
className,
|
|
@@ -8123,7 +8123,7 @@ var RichMarkdownRendererImpl = ({
|
|
|
8123
8123
|
className = "",
|
|
8124
8124
|
sectionIds,
|
|
8125
8125
|
onInternalLinkClick,
|
|
8126
|
-
brokenLinks =
|
|
8126
|
+
brokenLinks = _chunkLSVQNRX4cjs.NO_BROKEN_LINKS,
|
|
8127
8127
|
currentPath,
|
|
8128
8128
|
resolveSource = "openframe-docs",
|
|
8129
8129
|
resolveLinkEndpointUrl = "/api/docs/resolve-link",
|
|
@@ -8696,7 +8696,7 @@ function FilterModal({
|
|
|
8696
8696
|
const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _167 => _167.defaultSort]), () => ( "desc"));
|
|
8697
8697
|
const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _168 => _168.sort]), () => ( dateDefaultSort)));
|
|
8698
8698
|
const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _169 => _169.range]));
|
|
8699
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
8699
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkLSVQNRX4cjs.useScrollFade.call(void 0, );
|
|
8700
8700
|
const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
|
|
8701
8701
|
const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
|
|
8702
8702
|
_react.useEffect.call(void 0, () => {
|
|
@@ -8741,10 +8741,10 @@ function FilterModal({
|
|
|
8741
8741
|
const hasFilterGroups = filterGroups.length > 0;
|
|
8742
8742
|
const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
|
|
8743
8743
|
const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
|
|
8744
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8745
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8744
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Modal, { isOpen, onClose, className: _chunkX7CEWD6Vcjs.cn.call(void 0, "max-h-[90vh] max-w-none", className), children: [
|
|
8745
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalTitle, { children: title }) }),
|
|
8746
8746
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8747
|
-
|
|
8747
|
+
_chunkLSVQNRX4cjs.ModalContent,
|
|
8748
8748
|
{
|
|
8749
8749
|
className: _chunkX7CEWD6Vcjs.cn.call(void 0,
|
|
8750
8750
|
"flex min-h-0 flex-1 flex-col",
|
|
@@ -8836,12 +8836,12 @@ function FilterModal({
|
|
|
8836
8836
|
] })
|
|
8837
8837
|
}
|
|
8838
8838
|
),
|
|
8839
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8840
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8839
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
|
|
8840
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
|
|
8841
8841
|
] })
|
|
8842
8842
|
}
|
|
8843
8843
|
),
|
|
8844
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8844
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.ModalFooter, { children: [
|
|
8845
8845
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
|
|
8846
8846
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
|
|
8847
8847
|
] })
|
|
@@ -8885,9 +8885,9 @@ function actionToMenuItems(action, idx) {
|
|
|
8885
8885
|
function renderActionButton(action, opts = {}) {
|
|
8886
8886
|
const button = renderRawActionButton(action, opts);
|
|
8887
8887
|
if (!action.tooltip) return button;
|
|
8888
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8889
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8890
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8888
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Tooltip, { children: [
|
|
8889
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipTrigger, { asChild: true, children: button }),
|
|
8890
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipContent, { children: action.tooltip })
|
|
8891
8891
|
] }) });
|
|
8892
8892
|
}
|
|
8893
8893
|
function renderRawActionButton(action, opts = {}) {
|
|
@@ -8911,7 +8911,7 @@ function renderRawActionButton(action, opts = {}) {
|
|
|
8911
8911
|
}
|
|
8912
8912
|
if (action.submenu && action.submenu.length > 0) {
|
|
8913
8913
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8914
|
-
|
|
8914
|
+
_chunkLSVQNRX4cjs.ActionsMenuDropdown,
|
|
8915
8915
|
{
|
|
8916
8916
|
groups: [{ items: action.submenu }],
|
|
8917
8917
|
customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -9046,10 +9046,10 @@ function IconButtonsVariant({
|
|
|
9046
9046
|
selector,
|
|
9047
9047
|
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
9048
9048
|
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
|
|
9049
|
-
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9049
|
+
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ActionsMenuDropdown, { groups: menuActions })
|
|
9050
9050
|
] })
|
|
9051
9051
|
] }),
|
|
9052
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.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,
|
|
9052
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.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, _chunkLSVQNRX4cjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
|
|
9053
9053
|
] });
|
|
9054
9054
|
}
|
|
9055
9055
|
function PrimaryButtonsVariant({
|
|
@@ -9087,7 +9087,7 @@ function MenuPrimaryVariant({
|
|
|
9087
9087
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "hidden items-center md:flex", ACTIONS_GAP, className), children: [
|
|
9088
9088
|
selector,
|
|
9089
9089
|
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
9090
|
-
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9090
|
+
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ActionsMenuDropdown, { groups: menuActions }),
|
|
9091
9091
|
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
|
|
9092
9092
|
] })
|
|
9093
9093
|
] }),
|
|
@@ -9095,7 +9095,7 @@ function MenuPrimaryVariant({
|
|
|
9095
9095
|
// The selector rides into the menu as its header row: on mobile the
|
|
9096
9096
|
// title row has no room for it, and hiding it entirely (what
|
|
9097
9097
|
// `icon-buttons` does) would leave no way to switch views at all.
|
|
9098
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9098
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
|
|
9099
9099
|
) : null })
|
|
9100
9100
|
] });
|
|
9101
9101
|
}
|
|
@@ -9501,7 +9501,7 @@ function TitleBlock({
|
|
|
9501
9501
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
9502
9502
|
(loading || title) && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
|
|
9503
9503
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9504
|
-
|
|
9504
|
+
_chunkLSVQNRX4cjs.FloatingTooltip,
|
|
9505
9505
|
{
|
|
9506
9506
|
content: title,
|
|
9507
9507
|
side: "bottom",
|
|
@@ -9518,12 +9518,12 @@ function TitleBlock({
|
|
|
9518
9518
|
}
|
|
9519
9519
|
),
|
|
9520
9520
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
|
|
9521
|
-
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9521
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkX7CEWD6Vcjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
|
|
9522
9522
|
hasSubtitleRow && /* The NBSP is a pure spacer, reached only in `'always'` mode: an
|
|
9523
9523
|
empty `p` collapses to zero height (its only content would be
|
|
9524
9524
|
collapsible whitespace), which is exactly the shift that mode
|
|
9525
9525
|
exists to prevent. Hidden from AT — it carries no meaning. */
|
|
9526
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9526
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9527
9527
|
"p",
|
|
9528
9528
|
{
|
|
9529
9529
|
ref: subtitleRef,
|
|
@@ -9534,7 +9534,7 @@ function TitleBlock({
|
|
|
9534
9534
|
) })
|
|
9535
9535
|
] })
|
|
9536
9536
|
] }) : title && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
|
|
9537
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9537
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkX7CEWD6Vcjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass), children: title }) }),
|
|
9538
9538
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
|
|
9539
9539
|
] }) : (
|
|
9540
9540
|
/* This branch never had the single-line clamp, so text already
|
|
@@ -10963,8 +10963,8 @@ function makeComposeContentUrl(opts) {
|
|
|
10963
10963
|
}
|
|
10964
10964
|
if (externalUrl) return { href: externalUrl, targetPlatform: _nullishCoalesce(targetPlatform, () => ( null)) };
|
|
10965
10965
|
const claimedOwner = _nullishCoalesce(targetPlatform, () => ( primaryPlatformOf(platforms)));
|
|
10966
|
-
const owner = claimedOwner &&
|
|
10967
|
-
const origin = owner ?
|
|
10966
|
+
const owner = claimedOwner && _chunkLSVQNRX4cjs.byKey.call(void 0, claimedOwner) ? claimedOwner : null;
|
|
10967
|
+
const origin = owner ? _chunkLSVQNRX4cjs.getPlatformProductionUrl.call(void 0, owner) : opts.contentOrigin;
|
|
10968
10968
|
return {
|
|
10969
10969
|
href: `${origin.replace(/\/+$/, "")}/${seg}/${_optionalChain([slugHint, 'optionalAccess', _227 => _227.trim, 'call', _228 => _228()]) || identifier}`,
|
|
10970
10970
|
// Report the owner so `decideNewTab` can compare it against the current
|
|
@@ -11139,7 +11139,7 @@ function extractSections(markdown, options = {}) {
|
|
|
11139
11139
|
if (heading.level > opts.maxLevel) continue;
|
|
11140
11140
|
let title = heading.text;
|
|
11141
11141
|
if (opts.stripFormattingMarkers) {
|
|
11142
|
-
title =
|
|
11142
|
+
title = _chunkLSVQNRX4cjs.stripInlineMarkdown.call(void 0, title).trim();
|
|
11143
11143
|
}
|
|
11144
11144
|
const baseId = _chunkTLLJIGTPcjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunkTLLJIGTPcjs.stripHeadingEmojis.call(void 0, title) : title);
|
|
11145
11145
|
const cleanId = baseId || `section-${sections.length + 1}`;
|
|
@@ -11712,7 +11712,7 @@ function DashboardInfoCard({
|
|
|
11712
11712
|
const asTag = percentageDisplay === "tag" || percentageDisplay === "auto" && (progressVariant === "warning" || progressVariant === "error");
|
|
11713
11713
|
if (asTag) {
|
|
11714
11714
|
const tagVariant = progressVariant === "warning" || progressVariant === "error" ? progressVariant : progressVariant === "success" ? "success" : "grey";
|
|
11715
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11715
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: tagVariant, label: `${percentage}%` });
|
|
11716
11716
|
}
|
|
11717
11717
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: [
|
|
11718
11718
|
"(",
|
|
@@ -11766,7 +11766,7 @@ function DashboardInfoCard({
|
|
|
11766
11766
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "truncate text-ods-text-primary text-h3 md:text-h2", valueClassName), children: formattedValue }),
|
|
11767
11767
|
subValue && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: subValue }),
|
|
11768
11768
|
renderPercentage(),
|
|
11769
|
-
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11769
|
+
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.FloatingTooltip, { content: tooltip, side: "top", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "cursor-help text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRTMAXLEcjs.QuestionCircleIcon, { size: 20 }) }) })
|
|
11770
11770
|
] })
|
|
11771
11771
|
] }),
|
|
11772
11772
|
renderProgress()
|
|
@@ -11943,7 +11943,7 @@ function DeviceCard({
|
|
|
11943
11943
|
] }),
|
|
11944
11944
|
(statusTag || device.lastSeen) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2", children: [
|
|
11945
11945
|
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11946
|
-
|
|
11946
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
11947
11947
|
{
|
|
11948
11948
|
variant: statusTag.variant,
|
|
11949
11949
|
icon: statusTag.icon,
|
|
@@ -11957,7 +11957,7 @@ function DeviceCard({
|
|
|
11957
11957
|
formatLastSeen(device.lastSeen)
|
|
11958
11958
|
] })
|
|
11959
11959
|
] }),
|
|
11960
|
-
device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11960
|
+
device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: "outline", label: tag }, index)) })
|
|
11961
11961
|
]
|
|
11962
11962
|
}
|
|
11963
11963
|
);
|
|
@@ -12105,7 +12105,7 @@ function FeatureList({ items, className = "", iconBoxSize = 72 }) {
|
|
|
12105
12105
|
|
|
12106
12106
|
function SourceTooltip({ intro, sources, note, iconClassName, triggerAnchorProps }) {
|
|
12107
12107
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12108
|
-
|
|
12108
|
+
_chunkLSVQNRX4cjs.FloatingTooltip,
|
|
12109
12109
|
{
|
|
12110
12110
|
as: "span",
|
|
12111
12111
|
side: "top",
|
|
@@ -12290,7 +12290,7 @@ function DropdownButton({
|
|
|
12290
12290
|
)
|
|
12291
12291
|
);
|
|
12292
12292
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12293
|
-
|
|
12293
|
+
_chunkLSVQNRX4cjs.ActionsMenuDropdown,
|
|
12294
12294
|
{
|
|
12295
12295
|
groups: _nullishCoalesce(groups, () => ( [{ items: _nullishCoalesce(items, () => ( [])) }])),
|
|
12296
12296
|
open,
|
|
@@ -12528,7 +12528,7 @@ function ServiceCardRowItem({ row }) {
|
|
|
12528
12528
|
),
|
|
12529
12529
|
children: [
|
|
12530
12530
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12531
|
-
|
|
12531
|
+
_chunkLSVQNRX4cjs.FloatingTooltip,
|
|
12532
12532
|
{
|
|
12533
12533
|
content: row.value,
|
|
12534
12534
|
side: "top",
|
|
@@ -12666,7 +12666,7 @@ function PeopleCell({ people, fallbackName = "Unassigned" }) {
|
|
|
12666
12666
|
);
|
|
12667
12667
|
}
|
|
12668
12668
|
const fullNames = people.map((p) => p.name || "Unknown").join(", ");
|
|
12669
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12669
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.FloatingTooltip, { content: fullNames, triggerClassName: "min-w-0 max-w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
12670
12670
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12671
12671
|
_chunkODB2AEUWcjs.AvatarStack,
|
|
12672
12672
|
{
|
|
@@ -12728,9 +12728,9 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
|
|
|
12728
12728
|
return next;
|
|
12729
12729
|
});
|
|
12730
12730
|
};
|
|
12731
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12731
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Tooltip, { open, onOpenChange: setOpen, children: [
|
|
12732
12732
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12733
|
-
|
|
12733
|
+
_chunkLSVQNRX4cjs.TooltipTrigger,
|
|
12734
12734
|
{
|
|
12735
12735
|
asChild: true,
|
|
12736
12736
|
onPointerDown: (e) => {
|
|
@@ -12748,7 +12748,7 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
|
|
|
12748
12748
|
children
|
|
12749
12749
|
}
|
|
12750
12750
|
),
|
|
12751
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12751
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipContent, { side, className: "max-w-xs", children: content })
|
|
12752
12752
|
] }) });
|
|
12753
12753
|
}
|
|
12754
12754
|
|
|
@@ -14059,9 +14059,9 @@ function TruncatedHeaderCell({ value, width }) {
|
|
|
14059
14059
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
14060
14060
|
}
|
|
14061
14061
|
}, []);
|
|
14062
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14063
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14064
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14062
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
14063
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.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 }) }) }),
|
|
14064
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
|
|
14065
14065
|
] }) });
|
|
14066
14066
|
}
|
|
14067
14067
|
|
|
@@ -14114,9 +14114,9 @@ function TruncatedCell({ value, className }) {
|
|
|
14114
14114
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
14115
14115
|
}
|
|
14116
14116
|
}, []);
|
|
14117
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14118
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14119
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14117
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
14118
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunkX7CEWD6Vcjs.cn.call(void 0, "block truncate", className), children: value }) }),
|
|
14119
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
|
|
14120
14120
|
] }) });
|
|
14121
14121
|
}
|
|
14122
14122
|
|
|
@@ -15398,7 +15398,7 @@ function SearchInput({
|
|
|
15398
15398
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-shrink-0 text-ods-text-secondary transition-colors duration-200 group-has-[:focus]:text-ods-accent [&_svg]:size-4 md:[&_svg]:size-6", children: startAdornment !== void 0 ? startAdornment : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}) }),
|
|
15399
15399
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden", children: [
|
|
15400
15400
|
visibleChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15401
|
-
|
|
15401
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
15402
15402
|
{
|
|
15403
15403
|
variant: chipVariantToTagVariant(chip.variant),
|
|
15404
15404
|
label: chip.label,
|
|
@@ -15514,7 +15514,7 @@ function SearchInput({
|
|
|
15514
15514
|
}
|
|
15515
15515
|
),
|
|
15516
15516
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: measureRef, "aria-hidden": "true", className: "pointer-events-none fixed -left-[9999px] top-0 flex gap-2", children: filterChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15517
|
-
|
|
15517
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
15518
15518
|
{
|
|
15519
15519
|
variant: chipVariantToTagVariant(chip.variant),
|
|
15520
15520
|
label: chip.label,
|
|
@@ -15727,7 +15727,7 @@ function TagSearchInput({
|
|
|
15727
15727
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "size-4 text-ods-text-secondary md:size-6" }) }),
|
|
15728
15728
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2", children: [
|
|
15729
15729
|
visibleTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15730
|
-
|
|
15730
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
15731
15731
|
{
|
|
15732
15732
|
variant: "outline",
|
|
15733
15733
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -15815,7 +15815,7 @@ function TagSearchInput({
|
|
|
15815
15815
|
"aria-hidden": "true",
|
|
15816
15816
|
className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
|
|
15817
15817
|
children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15818
|
-
|
|
15818
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
15819
15819
|
{
|
|
15820
15820
|
variant: "outline",
|
|
15821
15821
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -16746,20 +16746,20 @@ function ColorPresetSelect({
|
|
|
16746
16746
|
...presets.map((p) => ({
|
|
16747
16747
|
id: p.key,
|
|
16748
16748
|
label: p.label,
|
|
16749
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16749
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ColorSwatch, { color: p.color }),
|
|
16750
16750
|
onClick: () => onChange({ color: p.color, preset: p.key })
|
|
16751
16751
|
})),
|
|
16752
16752
|
{
|
|
16753
16753
|
id: CUSTOM_PRESET_KEY,
|
|
16754
16754
|
label: "Custom",
|
|
16755
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16755
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
|
|
16756
16756
|
onClick: () => onChange({ color: value, preset: void 0 })
|
|
16757
16757
|
}
|
|
16758
16758
|
]
|
|
16759
16759
|
}
|
|
16760
16760
|
];
|
|
16761
16761
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16762
|
-
|
|
16762
|
+
_chunkLSVQNRX4cjs.ActionsMenuDropdown,
|
|
16763
16763
|
{
|
|
16764
16764
|
groups,
|
|
16765
16765
|
align: "start",
|
|
@@ -16769,7 +16769,7 @@ function ColorPresetSelect({
|
|
|
16769
16769
|
{
|
|
16770
16770
|
disabled,
|
|
16771
16771
|
"aria-label": `Color: ${displayLabel}`,
|
|
16772
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16772
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ColorSwatch, { color: displayColor }),
|
|
16773
16773
|
selectedLabel: displayLabel,
|
|
16774
16774
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
16775
16775
|
className: _chunkX7CEWD6Vcjs.cn.call(void 0, "group", className)
|
|
@@ -16790,7 +16790,7 @@ function HexInputs({ value, onChange }) {
|
|
|
16790
16790
|
}
|
|
16791
16791
|
const commit = () => {
|
|
16792
16792
|
const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
|
|
16793
|
-
if (
|
|
16793
|
+
if (_chunkLSVQNRX4cjs.HEX_PATTERN.test(candidate)) onChange(candidate);
|
|
16794
16794
|
else setDraft(value);
|
|
16795
16795
|
};
|
|
16796
16796
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16854,12 +16854,12 @@ function ChannelInput({
|
|
|
16854
16854
|
);
|
|
16855
16855
|
}
|
|
16856
16856
|
function RgbInputs({ value, onChange }) {
|
|
16857
|
-
const rgb = _nullishCoalesce(
|
|
16857
|
+
const rgb = _nullishCoalesce(_chunkLSVQNRX4cjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
16858
16858
|
const update = (next) => {
|
|
16859
16859
|
const r = _nullishCoalesce(next.r, () => ( rgb.r));
|
|
16860
16860
|
const g = _nullishCoalesce(next.g, () => ( rgb.g));
|
|
16861
16861
|
const b = _nullishCoalesce(next.b, () => ( rgb.b));
|
|
16862
|
-
onChange(
|
|
16862
|
+
onChange(_chunkLSVQNRX4cjs.rgbToHex.call(void 0, r, g, b));
|
|
16863
16863
|
};
|
|
16864
16864
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16865
16865
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
|
|
@@ -16868,14 +16868,14 @@ function RgbInputs({ value, onChange }) {
|
|
|
16868
16868
|
] });
|
|
16869
16869
|
}
|
|
16870
16870
|
function HslInputs({ value, onChange }) {
|
|
16871
|
-
const rgb = _nullishCoalesce(
|
|
16872
|
-
const hsl =
|
|
16871
|
+
const rgb = _nullishCoalesce(_chunkLSVQNRX4cjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
16872
|
+
const hsl = _chunkLSVQNRX4cjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
|
|
16873
16873
|
const update = (next) => {
|
|
16874
16874
|
const h = _nullishCoalesce(next.h, () => ( hsl.h));
|
|
16875
16875
|
const s = _nullishCoalesce(next.s, () => ( hsl.s));
|
|
16876
16876
|
const l = _nullishCoalesce(next.l, () => ( hsl.l));
|
|
16877
|
-
const out =
|
|
16878
|
-
onChange(
|
|
16877
|
+
const out = _chunkLSVQNRX4cjs.hslToRgb.call(void 0, h, s, l);
|
|
16878
|
+
onChange(_chunkLSVQNRX4cjs.rgbToHex.call(void 0, out.r, out.g, out.b));
|
|
16879
16879
|
};
|
|
16880
16880
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16881
16881
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
|
|
@@ -16901,7 +16901,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
16901
16901
|
{
|
|
16902
16902
|
disabled,
|
|
16903
16903
|
"aria-label": "Pick custom color",
|
|
16904
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16904
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ColorSwatch, { color: value }),
|
|
16905
16905
|
selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
|
|
16906
16906
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
16907
16907
|
className: _chunkX7CEWD6Vcjs.cn.call(void 0, "group", className)
|
|
@@ -16917,7 +16917,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
16917
16917
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactcolorful.HexColorPicker, { color: value, onChange }),
|
|
16918
16918
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16919
16919
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16920
|
-
|
|
16920
|
+
_chunkLSVQNRX4cjs.ActionsMenuDropdown,
|
|
16921
16921
|
{
|
|
16922
16922
|
groups: formatGroups,
|
|
16923
16923
|
align: "start",
|
|
@@ -16974,7 +16974,7 @@ function TicketStatusConfigRow({
|
|
|
16974
16974
|
const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
|
|
16975
16975
|
const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
|
|
16976
16976
|
const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16977
|
-
|
|
16977
|
+
_chunkLSVQNRX4cjs.TicketStatusTag,
|
|
16978
16978
|
{
|
|
16979
16979
|
status: statusKey,
|
|
16980
16980
|
label: name || " ",
|
|
@@ -17126,7 +17126,7 @@ function formatTestRunDuration(ms) {
|
|
|
17126
17126
|
var RESULT_COLUMN_MIN_WIDTH = 176;
|
|
17127
17127
|
var SKELETON_COLUMNS = 6;
|
|
17128
17128
|
function TestResultsSkeleton() {
|
|
17129
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17129
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
|
|
17130
17130
|
/* @__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}`)) }),
|
|
17131
17131
|
/* @__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}`)) }) })
|
|
17132
17132
|
] }) });
|
|
@@ -17161,7 +17161,7 @@ function TestResultsTable({ rows, loading }) {
|
|
|
17161
17161
|
if (loading) {
|
|
17162
17162
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
|
|
17163
17163
|
}
|
|
17164
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17164
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.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: [
|
|
17165
17165
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
|
|
17166
17166
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
|
|
17167
17167
|
] }) }) });
|
|
@@ -17223,7 +17223,7 @@ var TEST_RUN_STATUS_TAGS = {
|
|
|
17223
17223
|
function TestRunStatusStat({ status, className }) {
|
|
17224
17224
|
const tag = status === "idle" ? null : TEST_RUN_STATUS_TAGS[status];
|
|
17225
17225
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "flex min-w-0 flex-col items-start justify-center gap-[var(--spacing-system-xxs)]", className), children: [
|
|
17226
|
-
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17226
|
+
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { label: tag.label, variant: tag.variant, className: "pointer-events-none" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: "-" }),
|
|
17227
17227
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: "Status" })
|
|
17228
17228
|
] });
|
|
17229
17229
|
}
|
|
@@ -17267,7 +17267,7 @@ function useTestRunState(campaign) {
|
|
|
17267
17267
|
const stopReason = _nullishCoalesce(campaign.stopReason, () => ( "completed"));
|
|
17268
17268
|
const status = isActive ? "running" : hasRun && isFinished ? stopReason === "completed" ? firstError ? "error" : "success" : stopReason : "idle";
|
|
17269
17269
|
const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
|
|
17270
|
-
const startedLabel = showTiming && campaign.startedAt ?
|
|
17270
|
+
const startedLabel = showTiming && campaign.startedAt ? _chunkLSVQNRX4cjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
|
|
17271
17271
|
const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
|
|
17272
17272
|
const displayRows = _react.useMemo.call(void 0,
|
|
17273
17273
|
() => campaign.results.map(
|
|
@@ -17605,7 +17605,7 @@ function TicketInfoSection({
|
|
|
17605
17605
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _408 => _408.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _409 => _409.icon]), onClick: _optionalChain([device, 'optionalAccess', _410 => _410.onClick]) }),
|
|
17606
17606
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
17607
17607
|
(status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17608
|
-
|
|
17608
|
+
_chunkLSVQNRX4cjs.TicketStatusTag,
|
|
17609
17609
|
{
|
|
17610
17610
|
status: _nullishCoalesce(status, () => ( "")),
|
|
17611
17611
|
label: statusLabel,
|
|
@@ -17644,9 +17644,9 @@ function TicketInfoSection({
|
|
|
17644
17644
|
expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
17645
17645
|
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" }) }),
|
|
17646
17646
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
|
|
17647
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17647
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.SimpleMarkdownRenderer, { content: description }),
|
|
17648
17648
|
attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
|
|
17649
|
-
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,
|
|
17649
|
+
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, _chunkLSVQNRX4cjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
|
|
17650
17650
|
(notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17651
17651
|
TicketNotesSection,
|
|
17652
17652
|
{
|
|
@@ -17669,7 +17669,7 @@ function renderTicketStatusOption(option, isSelected) {
|
|
|
17669
17669
|
const { label, color } = option;
|
|
17670
17670
|
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: [
|
|
17671
17671
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
17672
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17672
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ColorSwatch, { color }),
|
|
17673
17673
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TruncateText, { className: "text-inherit", children: label }) })
|
|
17674
17674
|
] }),
|
|
17675
17675
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRTMAXLEcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
@@ -17714,9 +17714,9 @@ function TakeOverTicketModal({
|
|
|
17714
17714
|
if (!selectedStatusId || !assigneeId || isPending) return;
|
|
17715
17715
|
onConfirm({ statusId: selectedStatusId, assigneeId });
|
|
17716
17716
|
};
|
|
17717
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17717
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
17718
17718
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
17719
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17719
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalTitle, { children: "Take Over Ticket" }) }),
|
|
17720
17720
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
17721
17721
|
"The ticket ",
|
|
17722
17722
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -17731,7 +17731,7 @@ function TakeOverTicketModal({
|
|
|
17731
17731
|
value: selectedStatusId,
|
|
17732
17732
|
onChange: setStatusId,
|
|
17733
17733
|
placeholder: "Select Status",
|
|
17734
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17734
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
17735
17735
|
renderOption: renderTicketStatusOption
|
|
17736
17736
|
}
|
|
17737
17737
|
) }),
|
|
@@ -17758,7 +17758,7 @@ function TakeOverTicketModal({
|
|
|
17758
17758
|
}
|
|
17759
17759
|
) })
|
|
17760
17760
|
] }),
|
|
17761
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17761
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.ModalFooter, { children: [
|
|
17762
17762
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
17763
17763
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
17764
17764
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -17817,9 +17817,9 @@ function ReopenTicketModal({
|
|
|
17817
17817
|
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
17818
17818
|
});
|
|
17819
17819
|
};
|
|
17820
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17820
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
17821
17821
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
17822
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17822
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
17823
17823
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
17824
17824
|
"The ticket ",
|
|
17825
17825
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -17834,7 +17834,7 @@ function ReopenTicketModal({
|
|
|
17834
17834
|
value: selectedStatusId,
|
|
17835
17835
|
onChange: setStatusId,
|
|
17836
17836
|
placeholder: "Select Status",
|
|
17837
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17837
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
17838
17838
|
renderOption: renderTicketStatusOption
|
|
17839
17839
|
}
|
|
17840
17840
|
) }),
|
|
@@ -17872,7 +17872,7 @@ function ReopenTicketModal({
|
|
|
17872
17872
|
disabled: isPending
|
|
17873
17873
|
}
|
|
17874
17874
|
) }),
|
|
17875
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17875
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.ModalFooter, { children: [
|
|
17876
17876
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
17877
17877
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
17878
17878
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -17920,9 +17920,9 @@ function ReopenTicketRequestModal({
|
|
|
17920
17920
|
...showHandoffOption ? { handoffToTechnician: handoff } : {}
|
|
17921
17921
|
});
|
|
17922
17922
|
};
|
|
17923
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17923
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
17924
17924
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
17925
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17925
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
17926
17926
|
/* @__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." }),
|
|
17927
17927
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17928
17928
|
Textarea,
|
|
@@ -17946,7 +17946,7 @@ function ReopenTicketRequestModal({
|
|
|
17946
17946
|
disabled: isPending
|
|
17947
17947
|
}
|
|
17948
17948
|
),
|
|
17949
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17949
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.ModalFooter, { children: [
|
|
17950
17950
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
|
|
17951
17951
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF6U2H42Lcjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
|
|
17952
17952
|
] })
|
|
@@ -19373,7 +19373,7 @@ function SsoJoinForm({
|
|
|
19373
19373
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: displayName }),
|
|
19374
19374
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: organizationName })
|
|
19375
19375
|
] }),
|
|
19376
|
-
roles.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xs)]", children: roles.map((role) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19376
|
+
roles.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xs)]", children: roles.map((role) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: "grey", label: role }, role)) })
|
|
19377
19377
|
] }),
|
|
19378
19378
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19379
19379
|
CheckboxBlock,
|
|
@@ -20310,7 +20310,7 @@ function UnifiedUI({ state, handlers, config, iframeRef }) {
|
|
|
20310
20310
|
sandbox: "allow-scripts allow-same-origin allow-popups allow-presentation",
|
|
20311
20311
|
title: config.title,
|
|
20312
20312
|
loading: "eager",
|
|
20313
|
-
...
|
|
20313
|
+
..._chunkLSVQNRX4cjs.fetchPriorityProp.call(void 0, "high")
|
|
20314
20314
|
},
|
|
20315
20315
|
iframeKey
|
|
20316
20316
|
),
|
|
@@ -21162,7 +21162,7 @@ function MediaGalleryManager({
|
|
|
21162
21162
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: _chunkODB2AEUWcjs.isVideoMedia.call(void 0, mediaItem) || mediaItem.media_type === "demo" ? (
|
|
21163
21163
|
// <Video> SSOT (MuxPlayer) — plays Mux HLS + MP4 alike;
|
|
21164
21164
|
// fit="cover" crops to the aspect-video cell.
|
|
21165
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21165
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Video, { kind: "file", url: mediaItem.media_url, fit: "cover", className: "h-full w-full" })
|
|
21166
21166
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21167
21167
|
_chunkWLSFBRT5cjs.next_image_default,
|
|
21168
21168
|
{
|
|
@@ -23413,9 +23413,9 @@ function PushButtonSelector({
|
|
|
23413
23413
|
option.id
|
|
23414
23414
|
);
|
|
23415
23415
|
if (option.disabled && option.disabledReason) {
|
|
23416
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23417
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23418
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23416
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Tooltip, { children: [
|
|
23417
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipTrigger, { asChild: true, children: optionEl }),
|
|
23418
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
|
|
23419
23419
|
] }, option.id);
|
|
23420
23420
|
}
|
|
23421
23421
|
return optionEl;
|
|
@@ -23460,7 +23460,7 @@ function PushButtonSelector({
|
|
|
23460
23460
|
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
|
|
23461
23461
|
] }) : null
|
|
23462
23462
|
] });
|
|
23463
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23463
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
|
|
23464
23464
|
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h5", children: title }),
|
|
23465
23465
|
searchInput,
|
|
23466
23466
|
lazyLoad ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -23633,7 +23633,7 @@ function ReleaseMediaManager({ media, onChange, onUpload, className = "" }) {
|
|
|
23633
23633
|
item.media_url && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video bg-ods-bg", children: _chunkODB2AEUWcjs.isVideoMedia.call(void 0, item) || item.media_type === "demo" ? (
|
|
23634
23634
|
// <Video> SSOT (MuxPlayer) — plays Mux HLS + MP4 alike;
|
|
23635
23635
|
// fit="cover" crops to the aspect-video cell.
|
|
23636
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23636
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
|
|
23637
23637
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23638
23638
|
_chunkWLSFBRT5cjs.next_image_default,
|
|
23639
23639
|
{
|
|
@@ -23766,7 +23766,7 @@ var SelectButton = _react2.default.forwardRef(
|
|
|
23766
23766
|
}
|
|
23767
23767
|
)
|
|
23768
23768
|
] }),
|
|
23769
|
-
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23769
|
+
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: tagVariant, className: "shrink-0", label: tag }),
|
|
23770
23770
|
selected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRTMAXLEcjs.CheckCircleIcon, { className: "size-4 shrink-0 text-ods-accent md:size-6" })
|
|
23771
23771
|
]
|
|
23772
23772
|
}
|
|
@@ -24628,7 +24628,7 @@ function VideoBitesDisplay({
|
|
|
24628
24628
|
filterPublished = true,
|
|
24629
24629
|
showTitle = true
|
|
24630
24630
|
}) {
|
|
24631
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24631
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
|
|
24632
24632
|
}
|
|
24633
24633
|
|
|
24634
24634
|
// src/components/features/walkthrough-video.tsx
|
|
@@ -24697,7 +24697,7 @@ function WalkthroughVideo({
|
|
|
24697
24697
|
if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
|
|
24698
24698
|
};
|
|
24699
24699
|
}, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId]);
|
|
24700
|
-
const hydrated =
|
|
24700
|
+
const hydrated = _chunkLSVQNRX4cjs.useIsHydrated.call(void 0, );
|
|
24701
24701
|
const previewSuppressed = _react.useMemo.call(void 0, () => {
|
|
24702
24702
|
if (!hydrated) return false;
|
|
24703
24703
|
try {
|
|
@@ -25094,7 +25094,7 @@ function WalkthroughVideo({
|
|
|
25094
25094
|
},
|
|
25095
25095
|
children: [
|
|
25096
25096
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25097
|
-
|
|
25097
|
+
_chunkLSVQNRX4cjs.VideoHoverPreviewSurface,
|
|
25098
25098
|
{
|
|
25099
25099
|
url: video.mainVideoUrl || "",
|
|
25100
25100
|
posterUrl: video.posterUrl,
|
|
@@ -25117,7 +25117,7 @@ function WalkthroughVideo({
|
|
|
25117
25117
|
`card-${embedUrlKey}`
|
|
25118
25118
|
) }),
|
|
25119
25119
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25120
|
-
|
|
25120
|
+
_chunkLSVQNRX4cjs.CardHitLayer,
|
|
25121
25121
|
{
|
|
25122
25122
|
label: video.title ? `${label}: ${video.title}` : label,
|
|
25123
25123
|
onPointerDown: pausePreviewNow,
|
|
@@ -25126,7 +25126,7 @@ function WalkthroughVideo({
|
|
|
25126
25126
|
}
|
|
25127
25127
|
),
|
|
25128
25128
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "pointer-events-none absolute bottom-[var(--spacing-system-xsf)] left-[var(--spacing-system-xsf)] z-20 flex max-w-[calc(100%-2*var(--spacing-system-xsf))] items-center gap-[var(--spacing-system-xsf)] rounded-full bg-ods-overlay py-[var(--spacing-system-xxs)] pl-[var(--spacing-system-xxs)] pr-[var(--spacing-system-sf)] text-ods-text-primary text-h6", children: [
|
|
25129
|
-
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkODB2AEUWcjs.SquareAvatar, { src: presenterAvatarSrc, alt: "", sizePx: 20, variant: "round", className: "shrink-0 border-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25129
|
+
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkODB2AEUWcjs.SquareAvatar, { src: presenterAvatarSrc, alt: "", sizePx: 20, variant: "round", className: "shrink-0 border-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.VideoPlayBadge, { size: "sm", className: "h-5 w-5 shrink-0" }),
|
|
25130
25130
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: summaryTitle || label })
|
|
25131
25131
|
] }),
|
|
25132
25132
|
showBigUnmute && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -25139,7 +25139,7 @@ function WalkthroughVideo({
|
|
|
25139
25139
|
onPointerDown: (e) => e.stopPropagation(),
|
|
25140
25140
|
onClick: onUnmuteOrPlay,
|
|
25141
25141
|
className: "absolute inset-0 z-30 m-auto hidden sm:inline-flex",
|
|
25142
|
-
children: controlIsPlay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25142
|
+
children: controlIsPlay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.VideoPlayBadge, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.VideoUnmuteGlyph, {})
|
|
25143
25143
|
}
|
|
25144
25144
|
),
|
|
25145
25145
|
showPlaybackControls && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "absolute left-[var(--spacing-system-xsf)] top-[var(--spacing-system-xsf)] z-30 flex items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
@@ -25232,7 +25232,7 @@ function WalkthroughVideo({
|
|
|
25232
25232
|
children: [
|
|
25233
25233
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
|
|
25234
25234
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25235
|
-
|
|
25235
|
+
_chunkLSVQNRX4cjs.Video,
|
|
25236
25236
|
{
|
|
25237
25237
|
kind: video.youtubeUrl ? "youtube" : "file",
|
|
25238
25238
|
url: video.youtubeUrl || video.mainVideoUrl,
|
|
@@ -25283,7 +25283,7 @@ function InlineWalkthroughVideo(props) {
|
|
|
25283
25283
|
var _reactquery = require('@tanstack/react-query');
|
|
25284
25284
|
function useWalkthroughVideo(opts) {
|
|
25285
25285
|
const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
|
|
25286
|
-
const captions =
|
|
25286
|
+
const captions = _chunkLSVQNRX4cjs.useCaptions.call(void 0, );
|
|
25287
25287
|
const query = _reactquery.useQuery.call(void 0, {
|
|
25288
25288
|
queryKey: ["walkthrough-video", endpoint],
|
|
25289
25289
|
enabled,
|
|
@@ -25481,7 +25481,7 @@ function VideoSourceSelector({
|
|
|
25481
25481
|
}
|
|
25482
25482
|
function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
|
|
25483
25483
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
|
|
25484
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25484
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Video, { kind: "file", url: videoUrl }) }),
|
|
25485
25485
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25486
25486
|
"button",
|
|
25487
25487
|
{
|
|
@@ -26005,7 +26005,7 @@ function HighlightVideoSection({
|
|
|
26005
26005
|
// Default simple preview — the <Video> SSOT (MuxPlayer) plays
|
|
26006
26006
|
// MP4 and Mux HLS alike; aspect-video box reserves the height.
|
|
26007
26007
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
|
|
26008
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26008
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
|
|
26009
26009
|
onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26010
26010
|
"button",
|
|
26011
26011
|
{
|
|
@@ -26741,7 +26741,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
26741
26741
|
] });
|
|
26742
26742
|
};
|
|
26743
26743
|
var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
|
|
26744
|
-
const { innerRef, containerStyle } =
|
|
26744
|
+
const { innerRef, containerStyle } = _chunkLSVQNRX4cjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
|
|
26745
26745
|
const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
|
|
26746
26746
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
26747
26747
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -26909,7 +26909,7 @@ function WaitlistForm({
|
|
|
26909
26909
|
const { toast } = _chunkXNJZ6A2Scjs.useToast.call(void 0, );
|
|
26910
26910
|
const { honeypotInputProps, getSignals, resetSignals } = _chunkXNJZ6A2Scjs.useHumanitySignals.call(void 0, );
|
|
26911
26911
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
26912
|
-
const isClient =
|
|
26912
|
+
const isClient = _chunkLSVQNRX4cjs.useIsHydrated.call(void 0, );
|
|
26913
26913
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
26914
26914
|
const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
|
|
26915
26915
|
const isMailDomainGeneric = hasGenericEmailDomain(email);
|
|
@@ -27689,7 +27689,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
27689
27689
|
"data-state": open ? "open" : "closed",
|
|
27690
27690
|
className: _chunkX7CEWD6Vcjs.cn.call(void 0,
|
|
27691
27691
|
"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",
|
|
27692
|
-
|
|
27692
|
+
_chunkLSVQNRX4cjs.OVERLAY_BACKDROP_CLASS,
|
|
27693
27693
|
// Persist mode only: hold the fade-out's final (transparent) frame
|
|
27694
27694
|
// so the backdrop doesn't snap back to opacity 1 and dim the whole
|
|
27695
27695
|
// content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
|
|
@@ -27765,11 +27765,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
27765
27765
|
}
|
|
27766
27766
|
);
|
|
27767
27767
|
AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
|
|
27768
|
-
var AppLayoutDrawerHeader =
|
|
27769
|
-
var AppLayoutDrawerTitle =
|
|
27770
|
-
var AppLayoutDrawerDescription =
|
|
27771
|
-
var AppLayoutDrawerBody =
|
|
27772
|
-
var AppLayoutDrawerFooter =
|
|
27768
|
+
var AppLayoutDrawerHeader = _chunkLSVQNRX4cjs.DrawerHeader;
|
|
27769
|
+
var AppLayoutDrawerTitle = _chunkLSVQNRX4cjs.DrawerTitle;
|
|
27770
|
+
var AppLayoutDrawerDescription = _chunkLSVQNRX4cjs.DrawerDescription;
|
|
27771
|
+
var AppLayoutDrawerBody = _chunkLSVQNRX4cjs.DrawerBody;
|
|
27772
|
+
var AppLayoutDrawerFooter = _chunkLSVQNRX4cjs.DrawerFooter;
|
|
27773
27773
|
|
|
27774
27774
|
// src/components/features/notifications/notification-tile.tsx
|
|
27775
27775
|
|
|
@@ -27858,7 +27858,7 @@ function NotificationTile({
|
|
|
27858
27858
|
}
|
|
27859
27859
|
) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkXNJZ6A2Scjs.dotColorByVariant[accentVariant]) }))) }),
|
|
27860
27860
|
type ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkX7CEWD6Vcjs.cn.call(void 0, "min-w-0 flex-1 truncate text-h5", typeColorByVariant[accentVariant]), title: type, children: type }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1" }),
|
|
27861
|
-
!isLive && createdAtIso ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "time", { dateTime: createdAtIso, className: "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", children:
|
|
27861
|
+
!isLive && createdAtIso ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "time", { dateTime: createdAtIso, className: "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", children: _chunkLSVQNRX4cjs.formatTicketRelativeTime.call(void 0, createdAtIso) }) : null,
|
|
27862
27862
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
|
|
27863
27863
|
{
|
|
27864
27864
|
active: isLive,
|
|
@@ -27965,7 +27965,7 @@ function NotificationDrawer({
|
|
|
27965
27965
|
const unreadNotifications = notifications.filter((n) => !n.read);
|
|
27966
27966
|
const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
27967
27967
|
/* @__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,
|
|
27968
|
-
|
|
27968
|
+
_chunkLSVQNRX4cjs.DrawerTitle,
|
|
27969
27969
|
{
|
|
27970
27970
|
hideClose: true,
|
|
27971
27971
|
className: "truncate",
|
|
@@ -28024,8 +28024,8 @@ function NotificationDrawer({
|
|
|
28024
28024
|
}
|
|
28025
28025
|
) });
|
|
28026
28026
|
}
|
|
28027
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28028
|
-
|
|
28027
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28028
|
+
_chunkLSVQNRX4cjs.DrawerContent,
|
|
28029
28029
|
{
|
|
28030
28030
|
side: "right",
|
|
28031
28031
|
"aria-describedby": void 0,
|
|
@@ -28308,13 +28308,13 @@ function getApprovalMeta(notification) {
|
|
|
28308
28308
|
function resolutionToStatus(resolution) {
|
|
28309
28309
|
switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
|
|
28310
28310
|
case "APPROVED":
|
|
28311
|
-
return
|
|
28311
|
+
return _chunkLSVQNRX4cjs.APPROVAL_STATUS.APPROVED;
|
|
28312
28312
|
case "REJECTED":
|
|
28313
|
-
return
|
|
28313
|
+
return _chunkLSVQNRX4cjs.APPROVAL_STATUS.REJECTED;
|
|
28314
28314
|
case "CANCELLED":
|
|
28315
|
-
return
|
|
28315
|
+
return _chunkLSVQNRX4cjs.APPROVAL_STATUS.CANCELLED;
|
|
28316
28316
|
default:
|
|
28317
|
-
return
|
|
28317
|
+
return _chunkLSVQNRX4cjs.APPROVAL_STATUS.PENDING;
|
|
28318
28318
|
}
|
|
28319
28319
|
}
|
|
28320
28320
|
function approvalMetaToBatchData(approval) {
|
|
@@ -28355,7 +28355,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28355
28355
|
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _615 => _615.resolution]));
|
|
28356
28356
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
28357
28357
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
28358
|
-
const { innerRef, containerStyle } =
|
|
28358
|
+
const { innerRef, containerStyle } = _chunkLSVQNRX4cjs.useCollapsible.call(void 0, { expanded });
|
|
28359
28359
|
if (!approval || !batchData) return null;
|
|
28360
28360
|
const tileNotification = {
|
|
28361
28361
|
...notification,
|
|
@@ -28409,7 +28409,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28409
28409
|
}
|
|
28410
28410
|
)
|
|
28411
28411
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
28412
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28412
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ApprovalStatusTag, { status }),
|
|
28413
28413
|
approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
|
|
28414
28414
|
"by ",
|
|
28415
28415
|
approval.resolvedByName
|
|
@@ -28427,12 +28427,12 @@ function ApprovalRequestNotificationTile({
|
|
|
28427
28427
|
"aria-expanded": expanded,
|
|
28428
28428
|
"aria-label": toggleLabel,
|
|
28429
28429
|
className: "ml-auto w-6 shrink-0 px-0 md:w-8",
|
|
28430
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28430
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.ExpandChevron, { expanded })
|
|
28431
28431
|
}
|
|
28432
28432
|
)
|
|
28433
28433
|
] }),
|
|
28434
28434
|
children: /* @__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,
|
|
28435
|
-
|
|
28435
|
+
_chunkLSVQNRX4cjs.ApprovalBatchMessage,
|
|
28436
28436
|
{
|
|
28437
28437
|
data: batchData,
|
|
28438
28438
|
showExecutionStatus: false,
|
|
@@ -28768,7 +28768,7 @@ var STATUS_TAG_SKIN = "gap-[var(--spacing-system-xs)] font-mono font-medium uppe
|
|
|
28768
28768
|
function StatusTag({ status }) {
|
|
28769
28769
|
if (status === "tracking") {
|
|
28770
28770
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28771
|
-
|
|
28771
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
28772
28772
|
{
|
|
28773
28773
|
variant: "success",
|
|
28774
28774
|
className: STATUS_TAG_SKIN,
|
|
@@ -28778,9 +28778,9 @@ function StatusTag({ status }) {
|
|
|
28778
28778
|
);
|
|
28779
28779
|
}
|
|
28780
28780
|
if (status === "paused") {
|
|
28781
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28781
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: "warning", className: STATUS_TAG_SKIN, icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRTMAXLEcjs.PauseIcon, { className: "h-4 w-4" }), label: "Paused" });
|
|
28782
28782
|
}
|
|
28783
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28783
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: "grey", className: STATUS_TAG_SKIN, label: "Ready to Track" });
|
|
28784
28784
|
}
|
|
28785
28785
|
function LastEntryRow({ entry, onClick }) {
|
|
28786
28786
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] border-b border-ods-border bg-ods-bg px-[var(--spacing-system-m)] py-[var(--spacing-system-sf)] last:border-b-0", children: [
|
|
@@ -28949,7 +28949,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
28949
28949
|
"data-state": isOpen ? "open" : "closed",
|
|
28950
28950
|
className: _chunkX7CEWD6Vcjs.cn.call(void 0,
|
|
28951
28951
|
layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
|
|
28952
|
-
|
|
28952
|
+
_chunkLSVQNRX4cjs.OVERLAY_BACKDROP_CLASS,
|
|
28953
28953
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0",
|
|
28954
28954
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
|
|
28955
28955
|
)
|
|
@@ -29103,7 +29103,7 @@ function BoardColumnHeader({
|
|
|
29103
29103
|
}) {
|
|
29104
29104
|
const count = _nullishCoalesce(column.total, () => ( column.tickets.length));
|
|
29105
29105
|
const tagStatus = _nullishCoalesce(column.statusKey, () => ( column.id));
|
|
29106
|
-
const useStatusVariant =
|
|
29106
|
+
const useStatusVariant = _chunkLSVQNRX4cjs.resolveTicketStatus.call(void 0, tagStatus) !== null;
|
|
29107
29107
|
const actionClass = "h-8 w-8 p-0 md:h-8 md:w-8";
|
|
29108
29108
|
if (collapsed) {
|
|
29109
29109
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
@@ -29119,7 +29119,7 @@ function BoardColumnHeader({
|
|
|
29119
29119
|
}
|
|
29120
29120
|
),
|
|
29121
29121
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29122
|
-
|
|
29122
|
+
_chunkLSVQNRX4cjs.TicketStatusTag,
|
|
29123
29123
|
{
|
|
29124
29124
|
status: tagStatus,
|
|
29125
29125
|
label: column.label,
|
|
@@ -29132,7 +29132,7 @@ function BoardColumnHeader({
|
|
|
29132
29132
|
}
|
|
29133
29133
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
29134
29134
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
29135
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29135
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TicketStatusTag, { status: tagStatus, label: column.label, color: useStatusVariant ? void 0 : column.color }),
|
|
29136
29136
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5", style: useStatusVariant ? void 0 : { color: column.color }, children: count })
|
|
29137
29137
|
] }),
|
|
29138
29138
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
@@ -29283,7 +29283,7 @@ function holdMoveDragEffect(element) {
|
|
|
29283
29283
|
|
|
29284
29284
|
function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
|
|
29285
29285
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
29286
|
-
const { innerRef, containerStyle } =
|
|
29286
|
+
const { innerRef, containerStyle } = _chunkLSVQNRX4cjs.useCollapsible.call(void 0, { expanded });
|
|
29287
29287
|
const isAdmin = pendingApproval.approvalType === "ADMIN";
|
|
29288
29288
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex flex-col", children: [
|
|
29289
29289
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -29312,7 +29312,7 @@ function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
|
|
|
29312
29312
|
}
|
|
29313
29313
|
),
|
|
29314
29314
|
/* @__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,
|
|
29315
|
-
|
|
29315
|
+
_chunkLSVQNRX4cjs.ApprovalBatchMessage,
|
|
29316
29316
|
{
|
|
29317
29317
|
className: "mb-0",
|
|
29318
29318
|
data: {
|
|
@@ -29384,7 +29384,7 @@ var ACTIVITY_DEFAULT_LABEL = {
|
|
|
29384
29384
|
var TICKET_CARD_SHELL = "relative flex flex-col gap-[var(--spacing-system-sf)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-sf)] select-none text-left";
|
|
29385
29385
|
function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onReject }) {
|
|
29386
29386
|
const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
|
|
29387
|
-
const newMessageTextColor = columnColor ?
|
|
29387
|
+
const newMessageTextColor = columnColor ? _chunkLSVQNRX4cjs.getReadableTextColor.call(void 0, columnColor) : void 0;
|
|
29388
29388
|
const showDeviceRow = !!(_optionalChain([ticket, 'access', _651 => _651.deviceHostnames, 'optionalAccess', _652 => _652.length]) || ticket.organizationName);
|
|
29389
29389
|
const deviceText = [_optionalChain([ticket, 'access', _653 => _653.deviceHostnames, 'optionalAccess', _654 => _654.join, 'call', _655 => _655(", ")]), ticket.organizationName].filter(Boolean).join(", ");
|
|
29390
29390
|
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _656 => _656.assignees, 'optionalAccess', _657 => _657.length]) || renderAssignSlot);
|
|
@@ -29423,8 +29423,8 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
|
|
|
29423
29423
|
] })
|
|
29424
29424
|
] }) : null
|
|
29425
29425
|
] }) : null;
|
|
29426
|
-
const timestampLabel = ticket.createdAt ?
|
|
29427
|
-
const tooltipLabel = ticket.createdAt ?
|
|
29426
|
+
const timestampLabel = ticket.createdAt ? _chunkLSVQNRX4cjs.formatTicketRelativeTime.call(void 0, ticket.createdAt) : null;
|
|
29427
|
+
const tooltipLabel = ticket.createdAt ? _chunkLSVQNRX4cjs.formatTicketFullTimestamp.call(void 0, ticket.createdAt) : null;
|
|
29428
29428
|
const metaLabel = [ticket.ticketNumber || null, timestampLabel].filter(Boolean).join(" \u2022 ");
|
|
29429
29429
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
29430
29430
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-sf)]", children: [
|
|
@@ -29438,9 +29438,9 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
|
|
|
29438
29438
|
rightSection
|
|
29439
29439
|
] }),
|
|
29440
29440
|
_optionalChain([ticket, 'access', _660 => _660.tags, 'optionalAccess', _661 => _661.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
|
|
29441
|
-
metaLabel && (tooltipLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29442
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29443
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29441
|
+
metaLabel && (tooltipLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLSVQNRX4cjs.Tooltip, { children: [
|
|
29442
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto truncate text-ods-text-secondary text-h6", children: metaLabel }) }),
|
|
29443
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.TooltipContent, { children: tooltipLabel })
|
|
29444
29444
|
] }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: metaLabel })),
|
|
29445
29445
|
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: [
|
|
29446
29446
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRTMAXLEcjs.UserCheckIcon, { className: "size-4 shrink-0" }),
|
|
@@ -29460,7 +29460,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
|
|
|
29460
29460
|
}
|
|
29461
29461
|
),
|
|
29462
29462
|
showNewMessage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29463
|
-
|
|
29463
|
+
_chunkLSVQNRX4cjs.Tag,
|
|
29464
29464
|
{
|
|
29465
29465
|
label: "New Message",
|
|
29466
29466
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRTMAXLEcjs.MessagesIcon, { size: 16, color: newMessageTextColor }),
|
|
@@ -29675,8 +29675,8 @@ function TicketTagRow({ tags }) {
|
|
|
29675
29675
|
const visible = tags.slice(0, MAX_VISIBLE_TAGS);
|
|
29676
29676
|
const hidden = tags.length - visible.length;
|
|
29677
29677
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-8 flex-wrap items-start gap-[var(--spacing-system-xxs)] overflow-clip", children: [
|
|
29678
|
-
visible.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29679
|
-
hidden > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29678
|
+
visible.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: "outline", label: tag }, tag)),
|
|
29679
|
+
hidden > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLSVQNRX4cjs.Tag, { variant: "outline", label: `+${hidden}` })
|
|
29680
29680
|
] });
|
|
29681
29681
|
}
|
|
29682
29682
|
|
|
@@ -31367,4 +31367,4 @@ function SortableRow({
|
|
|
31367
31367
|
|
|
31368
31368
|
|
|
31369
31369
|
exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.HiddenTagsPopup = HiddenTagsPopup; exports.TruncateText = TruncateText; exports.Autocomplete = Autocomplete; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePickerCalendar = DatePickerCalendar; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.InfoHint = InfoHint; exports.Field = Field; exports.HoneypotField = HoneypotField; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; exports.SearchableSelect = SearchableSelect; exports.AssigneeDropdown = AssigneeDropdown; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoDataMessage = NoDataMessage; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; exports.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS = HUBSPOT_DO_NOT_COLLECT_FORM_PROPS; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.FullscreenSwitchController = FullscreenSwitchController; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.ClaudeEmbed = ClaudeEmbed; exports.FigmaEmbed = FigmaEmbed; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.MarkdownImage = MarkdownImage; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.MediaCarousel = MediaCarousel; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.SOCIAL_PLATFORM_ALIASES = SOCIAL_PLATFORM_ALIASES; exports.normalizeSocialPlatform = normalizeSocialPlatform; exports.hostMatches = hostMatches; exports.SOCIAL_PLATFORM_ALT_HOSTS = SOCIAL_PLATFORM_ALT_HOSTS; exports.socialPlatformHosts = socialPlatformHosts; exports.classifySocialHost = classifySocialHost; exports.pickSocialLink = pickSocialLink; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.StatusIndicator = StatusIndicator; exports.BackButton = BackButton; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.ENTITY_QUOTES_TITLE = ENTITY_QUOTES_TITLE; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.normalizeSchedulingSlug = normalizeSchedulingSlug; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.ODS_SPACING_TOKENS = ODS_SPACING_TOKENS; exports.ODS_SPACING_TOKEN_PATTERN = ODS_SPACING_TOKEN_PATTERN; exports.ODS_SPACING_PROPS = ODS_SPACING_PROPS; exports.TAILWIND_STEP_TO_ODS_TOKEN = TAILWIND_STEP_TO_ODS_TOKEN; exports.CSV_CONTENT_TYPE = CSV_CONTENT_TYPE; exports.csvEscape = csvEscape; exports.toCsv = toCsv; exports.BenefitCard = BenefitCard; exports.benefitCardBorderClass = benefitCardBorderClass; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.PersonCell = PersonCell; exports.PeopleCell = PeopleCell; exports.TitleContentBlock = TitleContentBlock; exports.TouchFriendlyTooltip = TouchFriendlyTooltip; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.PasswordInput = PasswordInput; exports.AccountDetailsFields = AccountDetailsFields; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.CompactAuthShell = CompactAuthShell; exports.LabeledDivider = LabeledDivider; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.PolicyLink = PolicyLink; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LegalLinks = LegalLinks; exports.LoginForm = LoginForm; exports.NoAccountNotice = NoAccountNotice; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.SsoJoinForm = SsoJoinForm; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.UnifiedSkeleton = UnifiedSkeleton; exports.TextSkeleton = TextSkeleton; exports.InteractiveSkeleton = InteractiveSkeleton; exports.MediaSkeleton = MediaSkeleton; exports.CardSkeleton = CardSkeleton; exports.CardSkeletonGrid = CardSkeletonGrid; exports.AnnouncementBarSkeleton = AnnouncementBarSkeleton; exports.HeroSkeleton = HeroSkeleton; exports.SearchContainerSkeleton = SearchContainerSkeleton; exports.CategorySidebarSkeleton = CategorySidebarSkeleton; exports.BreadcrumbSkeleton = BreadcrumbSkeleton; exports.ResultsHeaderSkeleton = ResultsHeaderSkeleton; exports.TwoColumnLayoutSkeleton = TwoColumnLayoutSkeleton; exports.ArticleLayoutSkeleton = ArticleLayoutSkeleton; exports.VendorDetailLayoutSkeleton = VendorDetailLayoutSkeleton; exports.StatsSectionSkeleton = StatsSectionSkeleton; exports.BlogCardGridSkeleton = BlogCardGridSkeleton; exports.VendorGridSkeleton = VendorGridSkeleton; exports.SlackCommunitySkeleton = SlackCommunitySkeleton; exports.ContentLoadingContainer = ContentLoadingContainer; exports.useContentLoading = useContentLoading; exports.ParagraphSkeleton = ParagraphSkeleton; exports.ListSkeleton = ListSkeleton; exports.TableSkeleton = TableSkeleton; exports.FormSkeleton = FormSkeleton; exports.NavigationSkeleton = NavigationSkeleton; exports.ProfileSkeleton = ProfileSkeleton; exports.CommentSkeleton = CommentSkeleton; exports.FeatureListSkeleton = FeatureListSkeleton; exports.TimelineSkeleton = TimelineSkeleton; exports.PricingSkeleton = PricingSkeleton; exports.ProfileLoadingSkeleton = ProfileLoadingSkeleton; exports.MspProfileFormSkeleton = MspProfileFormSkeleton; exports.CategoryCardSkeleton = CategoryCardSkeleton; exports.CategoryVendorSelectorSkeleton = CategoryVendorSelectorSkeleton; exports.WizardLayoutSkeleton = WizardLayoutSkeleton; exports.MarginReportSkeleton = MarginReportSkeleton; exports.UsersGridSkeleton = UsersGridSkeleton; exports.DynamicSkeleton = DynamicSkeleton; exports.SkeletonPresets = SkeletonPresets; exports.PlatformSkeletonContainer = PlatformSkeletonContainer; exports.ProgressiveSkeleton = ProgressiveSkeleton; exports.OrganizationIconSkeleton = OrganizationIconSkeleton; exports.OrganizationCardSkeleton = OrganizationCardSkeleton; exports.OrganizationCardSkeletonGrid = OrganizationCardSkeletonGrid; exports.DeviceCardSkeleton = DeviceCardSkeleton; exports.DeviceCardSkeletonGrid = DeviceCardSkeletonGrid; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; exports.SOCIAL_ICON_COMPONENTS = SOCIAL_ICON_COMPONENTS; exports.SocialIconRow = SocialIconRow; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.InlineWalkthroughVideo = InlineWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; exports.VideoSourceSelector = VideoSourceSelector; exports.SubtitlesEditor = SubtitlesEditor; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.AppLayoutDrawerContainerContext = AppLayoutDrawerContainerContext; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayoutDrawerCoordinationContext = AppLayoutDrawerCoordinationContext; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.TICKET_APPROVAL_REQUEST_TYPE = TICKET_APPROVAL_REQUEST_TYPE; exports.MINGO_APPROVAL_REQUEST_TYPE = MINGO_APPROVAL_REQUEST_TYPE; exports.isApprovalNotificationType = isApprovalNotificationType; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.SLOT_STICKINESS = SLOT_STICKINESS; exports.SortableList = SortableList; exports.SortableMoveButtons = SortableMoveButtons; exports.useSortableItem = useSortableItem; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.DataTableEmpty = DataTableEmpty; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableHeader = DataTableHeader; exports.DATA_TABLE_HEADER_LABEL_CLASS = DATA_TABLE_HEADER_LABEL_CLASS; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketDetailSection = TicketDetailSection; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.FilterPillRow = FilterPillRow; exports.LazyMount = LazyMount; exports.IconTile = IconTile;
|
|
31370
|
-
//# sourceMappingURL=chunk-
|
|
31370
|
+
//# sourceMappingURL=chunk-PUE4XMZK.cjs.map
|