@flamingo-stack/openframe-frontend-core 0.0.577 → 0.0.578-snapshot.20260831161155
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-XBSW7IF6.cjs → chunk-36TJYCF3.cjs} +27 -27
- package/dist/{chunk-XBSW7IF6.cjs.map → chunk-36TJYCF3.cjs.map} +1 -1
- package/dist/{chunk-ET3Q4FIZ.cjs → chunk-37XJYOAY.cjs} +17 -17
- package/dist/{chunk-ET3Q4FIZ.cjs.map → chunk-37XJYOAY.cjs.map} +1 -1
- package/dist/{chunk-4D2BR756.js → chunk-3AX3ZEY3.js} +53 -32
- package/dist/chunk-3AX3ZEY3.js.map +1 -0
- package/dist/{chunk-JQI726T3.js → chunk-3LMYQGAJ.js} +3 -2
- package/dist/chunk-3LMYQGAJ.js.map +1 -0
- package/dist/{chunk-XBBCUC32.cjs → chunk-4FJSN2XW.cjs} +15 -15
- package/dist/{chunk-XBBCUC32.cjs.map → chunk-4FJSN2XW.cjs.map} +1 -1
- package/dist/{chunk-RCLJSENK.cjs → chunk-4HGRXFQP.cjs} +6 -6
- package/dist/{chunk-RCLJSENK.cjs.map → chunk-4HGRXFQP.cjs.map} +1 -1
- package/dist/{chunk-NQCGDZJ3.cjs → chunk-4LZ7B5H5.cjs} +5 -5
- package/dist/{chunk-NQCGDZJ3.cjs.map → chunk-4LZ7B5H5.cjs.map} +1 -1
- package/dist/{chunk-IQFXDS5O.js → chunk-4WSKSNXL.js} +10 -10
- package/dist/{chunk-NEKT67O5.js → chunk-5Y6TPFW7.js} +6 -6
- package/dist/{chunk-XG2WNF4L.cjs → chunk-A6C5HOD7.cjs} +27 -27
- package/dist/{chunk-XG2WNF4L.cjs.map → chunk-A6C5HOD7.cjs.map} +1 -1
- package/dist/{chunk-AQ5MZVYN.js → chunk-AKPLEWMH.js} +3 -3
- package/dist/{chunk-HSOMYCUG.cjs → chunk-BCJQ7CJE.cjs} +13 -13
- package/dist/{chunk-HSOMYCUG.cjs.map → chunk-BCJQ7CJE.cjs.map} +1 -1
- package/dist/{chunk-RUJKOU5F.js → chunk-BW4WDUSI.js} +3 -3
- package/dist/{chunk-NP3XN6ZX.js → chunk-CP5EYMNL.js} +278 -162
- package/dist/chunk-CP5EYMNL.js.map +1 -0
- package/dist/{chunk-FCVAVOXS.js → chunk-D44S2QLI.js} +3 -3
- package/dist/{chunk-U3SDSA5K.js → chunk-DB3TV4CW.js} +7 -7
- package/dist/{chunk-KE2TCUOH.cjs → chunk-FEVLXRTC.cjs} +537 -421
- package/dist/chunk-FEVLXRTC.cjs.map +1 -0
- package/dist/{chunk-ZBJ6XSDO.js → chunk-H4BPHGU5.js} +4 -4
- package/dist/{chunk-6FJABKPX.cjs → chunk-H54EPP3P.cjs} +9 -9
- package/dist/{chunk-6FJABKPX.cjs.map → chunk-H54EPP3P.cjs.map} +1 -1
- package/dist/{chunk-4KR7JWKB.js → chunk-HGA74X35.js} +5 -5
- package/dist/{chunk-5DPCIIJ7.cjs → chunk-HHJVIHVR.cjs} +92 -92
- package/dist/{chunk-5DPCIIJ7.cjs.map → chunk-HHJVIHVR.cjs.map} +1 -1
- package/dist/{chunk-WOHHZZJK.cjs → chunk-IFYQ7DHV.cjs} +62 -62
- package/dist/{chunk-WOHHZZJK.cjs.map → chunk-IFYQ7DHV.cjs.map} +1 -1
- package/dist/{chunk-QYQXAXVR.cjs → chunk-IKDC3R7V.cjs} +4 -3
- package/dist/chunk-IKDC3R7V.cjs.map +1 -0
- package/dist/{chunk-W6JA6SFD.js → chunk-JRYS4VMV.js} +45 -45
- package/dist/chunk-JRYS4VMV.js.map +1 -0
- package/dist/{chunk-2YCUEUIZ.js → chunk-L2CF2QZW.js} +8 -8
- package/dist/{chunk-2BFZHTSD.cjs → chunk-LEISUAHF.cjs} +18 -8
- package/dist/chunk-LEISUAHF.cjs.map +1 -0
- package/dist/{chunk-GDWBJFMG.cjs → chunk-M5GWCMYE.cjs} +42 -42
- package/dist/{chunk-GDWBJFMG.cjs.map → chunk-M5GWCMYE.cjs.map} +1 -1
- package/dist/{chunk-JCH6HGQD.js → chunk-MCWAZ5XI.js} +2 -2
- package/dist/{chunk-PQETCTJ4.js → chunk-MXOSTJAG.js} +4 -3
- package/dist/chunk-MXOSTJAG.js.map +1 -0
- package/dist/{chunk-MIY5FYX3.cjs → chunk-NNFQLTJ3.cjs} +4 -3
- package/dist/chunk-NNFQLTJ3.cjs.map +1 -0
- package/dist/{chunk-CFTZAZ7R.cjs → chunk-NPVDKOGD.cjs} +28 -28
- package/dist/{chunk-CFTZAZ7R.cjs.map → chunk-NPVDKOGD.cjs.map} +1 -1
- package/dist/{chunk-LYOGSVFO.js → chunk-O2FTVZOD.js} +5 -5
- package/dist/{chunk-CIUYHBAY.cjs → chunk-OGZAFM6M.cjs} +5 -5
- package/dist/{chunk-CIUYHBAY.cjs.map → chunk-OGZAFM6M.cjs.map} +1 -1
- package/dist/{chunk-THDGDYJ3.js → chunk-PMENIZXI.js} +7 -7
- package/dist/{chunk-TU32TSAK.js → chunk-PWOYEUIQ.js} +7 -7
- package/dist/{chunk-RSMUAAPW.js → chunk-QCP2KV7P.js} +5 -5
- package/dist/{chunk-RNUH5IHZ.js → chunk-QGJYWLF4.js} +3 -3
- package/dist/{chunk-75X6BRID.cjs → chunk-RKGOVTXZ.cjs} +500 -479
- package/dist/chunk-RKGOVTXZ.cjs.map +1 -0
- package/dist/{chunk-HM2R5MDR.js → chunk-T5HDPHN6.js} +13 -3
- package/dist/chunk-T5HDPHN6.js.map +1 -0
- package/dist/{chunk-GPWU3PPR.cjs → chunk-VEHZNQ77.cjs} +30 -30
- package/dist/{chunk-GPWU3PPR.cjs.map → chunk-VEHZNQ77.cjs.map} +1 -1
- package/dist/{chunk-APFGR2KK.cjs → chunk-YW4WBNYV.cjs} +41 -41
- package/dist/{chunk-APFGR2KK.cjs.map → chunk-YW4WBNYV.cjs.map} +1 -1
- package/dist/{chunk-36NFJULV.cjs → chunk-ZI27ALYX.cjs} +41 -41
- package/dist/chunk-ZI27ALYX.cjs.map +1 -0
- package/dist/components/case-studies/index.cjs +13 -13
- package/dist/components/case-studies/index.js +7 -7
- package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
- package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts.map +1 -1
- package/dist/components/chat/hooks/use-unified-chat.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +4 -4
- package/dist/components/chat/index.js +3 -3
- package/dist/components/chat/nav-link-anchor-via-runtime.d.ts.map +1 -1
- package/dist/components/chat/types/unified-chat-state.types.d.ts +9 -2
- package/dist/components/chat/types/unified-chat-state.types.d.ts.map +1 -1
- package/dist/components/chat/utils/chat-nav-resolution.d.ts +9 -3
- package/dist/components/chat/utils/chat-nav-resolution.d.ts.map +1 -1
- package/dist/components/chat/utils/execute-navigation.d.ts +11 -0
- package/dist/components/chat/utils/execute-navigation.d.ts.map +1 -1
- package/dist/components/chat/utils/index.d.ts +1 -1
- package/dist/components/chat/utils/index.d.ts.map +1 -1
- package/dist/components/chat/utils/nav-anchor-props.d.ts +4 -0
- package/dist/components/chat/utils/nav-anchor-props.d.ts.map +1 -1
- package/dist/components/chat/utils/resolve-fetched-card-href.d.ts +42 -3
- package/dist/components/chat/utils/resolve-fetched-card-href.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +8 -8
- package/dist/components/contact/index.js +7 -7
- package/dist/components/docs/index.cjs +11 -11
- package/dist/components/docs/index.js +10 -10
- package/dist/components/embeds/index.cjs +8 -8
- package/dist/components/embeds/index.js +7 -7
- package/dist/components/faq/index.cjs +8 -8
- package/dist/components/faq/index.js +7 -7
- package/dist/components/features/board/board.d.ts.map +1 -1
- package/dist/components/features/index.cjs +9 -7
- package/dist/components/features/index.cjs.map +1 -1
- package/dist/components/features/index.js +8 -6
- package/dist/components/features/sortable-list/index.d.ts +2 -1
- package/dist/components/features/sortable-list/index.d.ts.map +1 -1
- package/dist/components/features/sortable-list/sortable-list.d.ts +8 -1
- package/dist/components/features/sortable-list/sortable-list.d.ts.map +1 -1
- package/dist/components/features/sortable-list/sortable-move-buttons.d.ts +24 -0
- package/dist/components/features/sortable-list/sortable-move-buttons.d.ts.map +1 -0
- package/dist/components/features/sortable-list/use-sortable-item.d.ts +12 -4
- package/dist/components/features/sortable-list/use-sortable-item.d.ts.map +1 -1
- package/dist/components/features/ticket-status-config-list/ticket-status-config-list.d.ts +21 -5
- package/dist/components/features/ticket-status-config-list/ticket-status-config-list.d.ts.map +1 -1
- package/dist/components/help-center-pages/index.cjs +27 -27
- package/dist/components/help-center-pages/index.js +18 -18
- package/dist/components/index.cjs +146 -144
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +20 -18
- package/dist/components/index.js.map +1 -1
- package/dist/components/meeting-scheduler/index.cjs +47 -47
- package/dist/components/meeting-scheduler/index.js +6 -6
- package/dist/components/navigation/index.cjs +10 -10
- package/dist/components/navigation/index.js +9 -9
- package/dist/components/onboarding-guides/index.cjs +10 -10
- package/dist/components/onboarding-guides/index.js +9 -9
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +11 -11
- package/dist/components/tickets/index.js +10 -10
- package/dist/components/ui/file-manager/index.cjs +4 -4
- package/dist/components/ui/file-manager/index.js +1 -1
- package/dist/components/ui/index.cjs +7 -7
- package/dist/components/ui/index.js +6 -6
- package/dist/components/ui/input.d.ts +2 -0
- package/dist/components/ui/input.d.ts.map +1 -1
- package/dist/components/ui/textarea.d.ts +2 -0
- package/dist/components/ui/textarea.d.ts.map +1 -1
- package/dist/components/ui/ticket-status-config-row.d.ts +10 -4
- package/dist/components/ui/ticket-status-config-row.d.ts.map +1 -1
- package/dist/hooks/index.cjs +7 -3
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.js +6 -2
- package/dist/hooks/ui/index.d.ts +1 -0
- package/dist/hooks/ui/index.d.ts.map +1 -1
- package/dist/hooks/ui/use-drag-and-drop-enabled.d.ts +31 -0
- package/dist/hooks/ui/use-drag-and-drop-enabled.d.ts.map +1 -0
- package/dist/hooks/ui/use-media-query.d.ts.map +1 -1
- package/dist/index.cjs +18 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +16 -10
- package/dist/index.js.map +1 -1
- package/dist/schemas/meeting-booking-schema.d.ts +2 -2
- package/dist/utils/content-href.d.ts +26 -5
- package/dist/utils/content-href.d.ts.map +1 -1
- package/dist/utils/index.cjs +1 -1
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +1 -4
- package/src/components/chat/embeddable-chat.tsx +9 -2
- package/src/components/chat/entity-cards/.dispatch.md +1 -1
- package/src/components/chat/entity-cards/dispatch.tsx +43 -23
- package/src/components/chat/hooks/.use-unified-chat.md +5 -1
- package/src/components/chat/hooks/use-nats-chat-adapter.ts +4 -7
- package/src/components/chat/hooks/use-unified-chat.ts +8 -2
- package/src/components/chat/nav-link-anchor-via-runtime.tsx +8 -10
- package/src/components/chat/types/.unified-chat-state.types.md +2 -1
- package/src/components/chat/types/unified-chat-state.types.ts +9 -2
- package/src/components/chat/utils/__tests__/execute-navigation.test.ts +190 -0
- package/src/components/chat/utils/__tests__/resolve-fetched-card-href.test.ts +75 -2
- package/src/components/chat/utils/chat-nav-resolution.ts +9 -3
- package/src/components/chat/utils/execute-navigation.ts +32 -2
- package/src/components/chat/utils/index.ts +1 -1
- package/src/components/chat/utils/nav-anchor-props.ts +4 -2
- package/src/components/chat/utils/resolve-fetched-card-href.ts +50 -2
- package/src/components/features/board/.board.md +1 -0
- package/src/components/features/board/board.tsx +11 -1
- package/src/components/features/sortable-list/.sortable-list.md +23 -12
- package/src/components/features/sortable-list/index.ts +2 -1
- package/src/components/features/sortable-list/sortable-list.tsx +16 -5
- package/src/components/features/sortable-list/sortable-move-buttons.tsx +81 -0
- package/src/components/features/sortable-list/use-sortable-item.ts +25 -13
- package/src/components/features/ticket-status-config-list/ticket-status-config-list.tsx +55 -62
- package/src/components/ui/.ticket-status-config-row.md +11 -9
- package/src/components/ui/input.tsx +5 -2
- package/src/components/ui/textarea.tsx +5 -2
- package/src/components/ui/ticket-status-config-row.tsx +162 -70
- package/src/hooks/ui/.index.md +1 -0
- package/src/hooks/ui/.use-drag-and-drop-enabled.md +32 -0
- package/src/hooks/ui/index.ts +1 -0
- package/src/hooks/ui/use-drag-and-drop-enabled.ts +37 -0
- package/src/hooks/ui/use-media-query.ts +3 -2
- package/src/utils/.content-href.md +1 -1
- package/src/utils/__tests__/content-href.test.ts +3 -0
- package/src/utils/content-href.ts +30 -3
- package/src/utils/index.ts +1 -0
- package/dist/chunk-2BFZHTSD.cjs.map +0 -1
- package/dist/chunk-36NFJULV.cjs.map +0 -1
- package/dist/chunk-4D2BR756.js.map +0 -1
- package/dist/chunk-75X6BRID.cjs.map +0 -1
- package/dist/chunk-HM2R5MDR.js.map +0 -1
- package/dist/chunk-JQI726T3.js.map +0 -1
- package/dist/chunk-KE2TCUOH.cjs.map +0 -1
- package/dist/chunk-MIY5FYX3.cjs.map +0 -1
- package/dist/chunk-NP3XN6ZX.js.map +0 -1
- package/dist/chunk-PQETCTJ4.js.map +0 -1
- package/dist/chunk-QYQXAXVR.cjs.map +0 -1
- package/dist/chunk-W6JA6SFD.js.map +0 -1
- package/dist/components/chat/utils/nav-click-handler.d.ts +0 -24
- package/dist/components/chat/utils/nav-click-handler.d.ts.map +0 -1
- package/src/components/chat/utils/.nav-click-handler.md +0 -43
- package/src/components/chat/utils/nav-click-handler.ts +0 -34
- /package/dist/{chunk-IQFXDS5O.js.map → chunk-4WSKSNXL.js.map} +0 -0
- /package/dist/{chunk-NEKT67O5.js.map → chunk-5Y6TPFW7.js.map} +0 -0
- /package/dist/{chunk-AQ5MZVYN.js.map → chunk-AKPLEWMH.js.map} +0 -0
- /package/dist/{chunk-RUJKOU5F.js.map → chunk-BW4WDUSI.js.map} +0 -0
- /package/dist/{chunk-FCVAVOXS.js.map → chunk-D44S2QLI.js.map} +0 -0
- /package/dist/{chunk-U3SDSA5K.js.map → chunk-DB3TV4CW.js.map} +0 -0
- /package/dist/{chunk-ZBJ6XSDO.js.map → chunk-H4BPHGU5.js.map} +0 -0
- /package/dist/{chunk-4KR7JWKB.js.map → chunk-HGA74X35.js.map} +0 -0
- /package/dist/{chunk-2YCUEUIZ.js.map → chunk-L2CF2QZW.js.map} +0 -0
- /package/dist/{chunk-JCH6HGQD.js.map → chunk-MCWAZ5XI.js.map} +0 -0
- /package/dist/{chunk-LYOGSVFO.js.map → chunk-O2FTVZOD.js.map} +0 -0
- /package/dist/{chunk-THDGDYJ3.js.map → chunk-PMENIZXI.js.map} +0 -0
- /package/dist/{chunk-TU32TSAK.js.map → chunk-PWOYEUIQ.js.map} +0 -0
- /package/dist/{chunk-RSMUAAPW.js.map → chunk-QCP2KV7P.js.map} +0 -0
- /package/dist/{chunk-RNUH5IHZ.js.map → chunk-QGJYWLF4.js.map} +0 -0
|
@@ -20,7 +20,8 @@ var _chunkTON3YCCWcjs = require('./chunk-TON3YCCW.cjs');
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
|
|
24
|
+
var _chunkLEISUAHFcjs = require('./chunk-LEISUAHF.cjs');
|
|
24
25
|
|
|
25
26
|
|
|
26
27
|
var _chunk72OIVRPGcjs = require('./chunk-72OIVRPG.cjs');
|
|
@@ -28,7 +29,7 @@ var _chunk72OIVRPGcjs = require('./chunk-72OIVRPG.cjs');
|
|
|
28
29
|
|
|
29
30
|
|
|
30
31
|
|
|
31
|
-
var
|
|
32
|
+
var _chunkIKDC3R7Vcjs = require('./chunk-IKDC3R7V.cjs');
|
|
32
33
|
|
|
33
34
|
|
|
34
35
|
|
|
@@ -88,7 +89,7 @@ var _chunkQYQXAXVRcjs = require('./chunk-QYQXAXVR.cjs');
|
|
|
88
89
|
|
|
89
90
|
|
|
90
91
|
|
|
91
|
-
var
|
|
92
|
+
var _chunkRKGOVTXZcjs = require('./chunk-RKGOVTXZ.cjs');
|
|
92
93
|
|
|
93
94
|
|
|
94
95
|
|
|
@@ -101,7 +102,7 @@ var _chunk75X6BRIDcjs = require('./chunk-75X6BRID.cjs');
|
|
|
101
102
|
|
|
102
103
|
|
|
103
104
|
|
|
104
|
-
var
|
|
105
|
+
var _chunkZI27ALYXcjs = require('./chunk-ZI27ALYX.cjs');
|
|
105
106
|
|
|
106
107
|
|
|
107
108
|
|
|
@@ -213,7 +214,7 @@ var _chunkXQFFGR6Ucjs = require('./chunk-XQFFGR6U.cjs');
|
|
|
213
214
|
|
|
214
215
|
|
|
215
216
|
|
|
216
|
-
var
|
|
217
|
+
var _chunkNNFQLTJ3cjs = require('./chunk-NNFQLTJ3.cjs');
|
|
217
218
|
|
|
218
219
|
|
|
219
220
|
var _chunkWLSFBRT5cjs = require('./chunk-WLSFBRT5.cjs');
|
|
@@ -328,7 +329,7 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
328
329
|
var useTheme = _nextthemes.useTheme;
|
|
329
330
|
function useThemeToggle() {
|
|
330
331
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
331
|
-
const mounted =
|
|
332
|
+
const mounted = _chunkRKGOVTXZcjs.useIsHydrated.call(void 0, );
|
|
332
333
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
333
334
|
const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
|
|
334
335
|
const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
|
|
@@ -400,7 +401,7 @@ var AllowedDomainsInput = _react.forwardRef.call(void 0,
|
|
|
400
401
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunkPRPZBXWZcjs.cn.call(void 0, "space-y-3", className), children: [
|
|
401
402
|
label && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3QDJLLD2cjs.Label, { children: label }),
|
|
402
403
|
value.map((domain, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
403
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
404
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.Input, { value: domain, disabled: true, className: "flex-1 rounded-[6px] border-ods-border bg-ods-card" }),
|
|
404
405
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
405
406
|
_chunkYHNIPSG6cjs.Button,
|
|
406
407
|
{
|
|
@@ -415,7 +416,7 @@ var AllowedDomainsInput = _react.forwardRef.call(void 0,
|
|
|
415
416
|
)
|
|
416
417
|
] }, index)),
|
|
417
418
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
418
|
-
|
|
419
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
419
420
|
{
|
|
420
421
|
ref: inputRef,
|
|
421
422
|
value: inputValue,
|
|
@@ -602,10 +603,10 @@ function TruncateText({
|
|
|
602
603
|
as = "div"
|
|
603
604
|
}) {
|
|
604
605
|
const isMultiLine = lines > 1;
|
|
605
|
-
const { ref, isTruncated } =
|
|
606
|
+
const { ref, isTruncated } = _chunkZI27ALYXcjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
|
|
606
607
|
const clampClass = isMultiLine ? LINE_CLAMP_CLASS[lines] : "truncate block";
|
|
607
608
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
608
|
-
|
|
609
|
+
_chunkRKGOVTXZcjs.FloatingTooltip,
|
|
609
610
|
{
|
|
610
611
|
content: _nullishCoalesce(tooltip, () => ( children)),
|
|
611
612
|
side,
|
|
@@ -690,7 +691,7 @@ function AutocompleteInner(props, ref) {
|
|
|
690
691
|
};
|
|
691
692
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
692
693
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
693
|
-
const keyboardPadding =
|
|
694
|
+
const keyboardPadding = _chunkLEISUAHFcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
694
695
|
const containerRef = _react.useRef.call(void 0, null);
|
|
695
696
|
const hiddenTagsPopupRef = _react.useRef.call(void 0, null);
|
|
696
697
|
const isInvalid = invalid || !!error;
|
|
@@ -707,7 +708,7 @@ function AutocompleteInner(props, ref) {
|
|
|
707
708
|
textMeasureRef,
|
|
708
709
|
badgeRef,
|
|
709
710
|
inputRef
|
|
710
|
-
} =
|
|
711
|
+
} = _chunkLEISUAHFcjs.useAutoLimitTags.call(void 0, {
|
|
711
712
|
count: multiple ? selectedOptions.length : 0,
|
|
712
713
|
limitTags: multiple ? limitTagsProp : 0,
|
|
713
714
|
placeholder: inputPlaceholder
|
|
@@ -907,7 +908,7 @@ function AutocompleteInner(props, ref) {
|
|
|
907
908
|
),
|
|
908
909
|
/* @__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: [
|
|
909
910
|
multiple && visibleTags.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
910
|
-
|
|
911
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
911
912
|
{
|
|
912
913
|
variant: "outline",
|
|
913
914
|
labelClassName: "max-w-[90px] truncate",
|
|
@@ -1080,7 +1081,7 @@ function AutocompleteInner(props, ref) {
|
|
|
1080
1081
|
}
|
|
1081
1082
|
)
|
|
1082
1083
|
] });
|
|
1083
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1084
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, labelVariant, error, className, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", ref: containerRef, children: [
|
|
1084
1085
|
popover,
|
|
1085
1086
|
multiple && showHiddenTags && hiddenTagsCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1086
1087
|
HiddenTagsPopup,
|
|
@@ -1113,7 +1114,7 @@ function AutocompleteInner(props, ref) {
|
|
|
1113
1114
|
"aria-hidden": "true",
|
|
1114
1115
|
className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
|
|
1115
1116
|
children: selectedOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1116
|
-
|
|
1117
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
1117
1118
|
{
|
|
1118
1119
|
variant: "outline",
|
|
1119
1120
|
labelClassName: "max-w-[90px] truncate",
|
|
@@ -1345,7 +1346,7 @@ var SelectTrigger = _react.forwardRef.call(void 0, ({ className, children, inval
|
|
|
1345
1346
|
]
|
|
1346
1347
|
}
|
|
1347
1348
|
);
|
|
1348
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1349
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, labelVariant, error, children: trigger });
|
|
1349
1350
|
});
|
|
1350
1351
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
1351
1352
|
var SelectScrollUpButton = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -1463,7 +1464,7 @@ function DatePickerCalendar({
|
|
|
1463
1464
|
onMonthChange
|
|
1464
1465
|
}) {
|
|
1465
1466
|
const today = /* @__PURE__ */ new Date();
|
|
1466
|
-
const isMdUp = _nullishCoalesce(
|
|
1467
|
+
const isMdUp = _nullishCoalesce(_chunkZI27ALYXcjs.useMdUp.call(void 0, ), () => ( true));
|
|
1467
1468
|
const monthsToShow = isMdUp ? numberOfMonths : 1;
|
|
1468
1469
|
const [draftRange, setDraftRange] = _react.useState.call(void 0,
|
|
1469
1470
|
mode === "range" ? selected : void 0
|
|
@@ -1921,7 +1922,7 @@ function DatePicker(props) {
|
|
|
1921
1922
|
}
|
|
1922
1923
|
) })
|
|
1923
1924
|
] });
|
|
1924
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1925
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, error, children: picker });
|
|
1925
1926
|
}
|
|
1926
1927
|
var generateHourOptions = (use24Hour) => {
|
|
1927
1928
|
if (use24Hour) {
|
|
@@ -2087,7 +2088,7 @@ function DatePickerInput({
|
|
|
2087
2088
|
] })
|
|
2088
2089
|
] })
|
|
2089
2090
|
] });
|
|
2090
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2091
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, error, className, children: content });
|
|
2091
2092
|
}
|
|
2092
2093
|
var generateTimeOptions = (intervalMinutes, use24Hour) => {
|
|
2093
2094
|
const options = [];
|
|
@@ -2228,7 +2229,7 @@ function DatePickerInputSimple({
|
|
|
2228
2229
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
2229
2230
|
] })
|
|
2230
2231
|
] });
|
|
2231
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2232
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, error, className, children: content });
|
|
2232
2233
|
}
|
|
2233
2234
|
function DateFilterPanel({
|
|
2234
2235
|
mode = "range",
|
|
@@ -2497,7 +2498,7 @@ function InfoHint({ children, label, side = "top", className }) {
|
|
|
2497
2498
|
const describedById = _react.useId.call(void 0, );
|
|
2498
2499
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "inline-flex shrink-0 items-center", className), children: [
|
|
2499
2500
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2500
|
-
|
|
2501
|
+
_chunkRKGOVTXZcjs.FloatingTooltip,
|
|
2501
2502
|
{
|
|
2502
2503
|
content: children,
|
|
2503
2504
|
side,
|
|
@@ -2591,7 +2592,7 @@ function Value2({ value, depth }) {
|
|
|
2591
2592
|
}
|
|
2592
2593
|
if (typeof value === "string") {
|
|
2593
2594
|
if (ISO_DATE.test(value)) {
|
|
2594
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children:
|
|
2595
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkRKGOVTXZcjs.formatRelativeTime.call(void 0, value) });
|
|
2595
2596
|
}
|
|
2596
2597
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
|
|
2597
2598
|
}
|
|
@@ -2657,7 +2658,7 @@ var ProgressBar = ({
|
|
|
2657
2658
|
mobileHeight = 8,
|
|
2658
2659
|
inverted = false
|
|
2659
2660
|
}) => {
|
|
2660
|
-
const isMdUp = _nullishCoalesce(
|
|
2661
|
+
const isMdUp = _nullishCoalesce(_chunkZI27ALYXcjs.useMdUp.call(void 0, ), () => ( true));
|
|
2661
2662
|
const effectiveSegmentWidth = isMdUp ? segmentWidth : mobileSegmentWidth;
|
|
2662
2663
|
const effectiveHeight = isMdUp ? height : mobileHeight;
|
|
2663
2664
|
const containerRef = _react.useRef.call(void 0, null);
|
|
@@ -2773,7 +2774,7 @@ function InfoCardFooter({ footer }) {
|
|
|
2773
2774
|
] });
|
|
2774
2775
|
}
|
|
2775
2776
|
function InfoCardValueRow({ label, value, showLabel, copyable, icon, copyAriaLabel }) {
|
|
2776
|
-
const { copy, copied } =
|
|
2777
|
+
const { copy, copied } = _chunkLEISUAHFcjs.useCopyToClipboard.call(void 0, );
|
|
2777
2778
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 w-full items-center gap-[var(--spacing-system-xs)] self-stretch", children: [
|
|
2778
2779
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-primary text-h4", children: showLabel ? label : "" }),
|
|
2779
2780
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px flex-1 bg-ods-divider" }),
|
|
@@ -2863,7 +2864,7 @@ function SearchableSelect({
|
|
|
2863
2864
|
}) {
|
|
2864
2865
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
2865
2866
|
const [search, setSearch] = _react.useState.call(void 0, "");
|
|
2866
|
-
const keyboardPadding =
|
|
2867
|
+
const keyboardPadding = _chunkLEISUAHFcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
2867
2868
|
if (!isOpen && search !== "") setSearch("");
|
|
2868
2869
|
const filtered = _react.useMemo.call(void 0, () => {
|
|
2869
2870
|
const q = search.trim().toLowerCase();
|
|
@@ -2925,7 +2926,7 @@ function SearchableSelect({
|
|
|
2925
2926
|
),
|
|
2926
2927
|
children: [
|
|
2927
2928
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2928
|
-
|
|
2929
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
2929
2930
|
{
|
|
2930
2931
|
autoFocus: true,
|
|
2931
2932
|
value: search,
|
|
@@ -2986,7 +2987,7 @@ function CompactAssigneeDropdown({
|
|
|
2986
2987
|
value: o.value,
|
|
2987
2988
|
label: o.label,
|
|
2988
2989
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2989
|
-
|
|
2990
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
2990
2991
|
{
|
|
2991
2992
|
src: o.imageUrl,
|
|
2992
2993
|
alt: o.label,
|
|
@@ -3021,7 +3022,7 @@ function CompactAssigneeDropdown({
|
|
|
3021
3022
|
className
|
|
3022
3023
|
),
|
|
3023
3024
|
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeletedUserAvatar, { size: "sm", accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}` }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3024
|
-
|
|
3025
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
3025
3026
|
{
|
|
3026
3027
|
src: currentAssignee.avatarSrc,
|
|
3027
3028
|
alt: currentAssignee.name,
|
|
@@ -3069,7 +3070,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
3069
3070
|
const opt = option;
|
|
3070
3071
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-sf)]", children: [
|
|
3071
3072
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3072
|
-
|
|
3073
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
3073
3074
|
{
|
|
3074
3075
|
src: opt.imageUrl,
|
|
3075
3076
|
alt: opt.label,
|
|
@@ -3104,7 +3105,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
3104
3105
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
3105
3106
|
}
|
|
3106
3107
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3107
|
-
|
|
3108
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
3108
3109
|
{
|
|
3109
3110
|
src: currentAssignee.avatarSrc,
|
|
3110
3111
|
alt: currentAssignee.name,
|
|
@@ -3129,7 +3130,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
3129
3130
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
3130
3131
|
}
|
|
3131
3132
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3132
|
-
|
|
3133
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
3133
3134
|
{
|
|
3134
3135
|
src: currentAssignee.avatarSrc,
|
|
3135
3136
|
alt: currentAssignee.name,
|
|
@@ -3203,7 +3204,7 @@ function TextValue({ value }) {
|
|
|
3203
3204
|
}
|
|
3204
3205
|
) : onClick ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick, title: text, className: interactiveClass, children: text }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", title: text, children: text }),
|
|
3205
3206
|
hasImage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3206
|
-
|
|
3207
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
3207
3208
|
{
|
|
3208
3209
|
src: imageSrc,
|
|
3209
3210
|
alt: text,
|
|
@@ -3223,7 +3224,7 @@ function RowValue({ value }) {
|
|
|
3223
3224
|
}
|
|
3224
3225
|
case "status": {
|
|
3225
3226
|
const { type: _type, ...props } = value;
|
|
3226
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3227
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TicketStatusTag, { ...props });
|
|
3227
3228
|
}
|
|
3228
3229
|
case "custom":
|
|
3229
3230
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
|
|
@@ -3739,7 +3740,7 @@ function TagSelectDropdown({
|
|
|
3739
3740
|
}) {
|
|
3740
3741
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
3741
3742
|
const [search, setSearch] = _react.useState.call(void 0, "");
|
|
3742
|
-
const keyboardPadding =
|
|
3743
|
+
const keyboardPadding = _chunkLEISUAHFcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
3743
3744
|
if (!isOpen && search !== "") setSearch("");
|
|
3744
3745
|
const query = search.trim();
|
|
3745
3746
|
const filtered = _react.useMemo.call(void 0, () => {
|
|
@@ -3792,7 +3793,7 @@ function TagSelectDropdown({
|
|
|
3792
3793
|
),
|
|
3793
3794
|
children: [
|
|
3794
3795
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3795
|
-
|
|
3796
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
3796
3797
|
{
|
|
3797
3798
|
autoFocus: true,
|
|
3798
3799
|
value: search,
|
|
@@ -3965,7 +3966,7 @@ function TagsInput({
|
|
|
3965
3966
|
label && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3QDJLLD2cjs.Label, { children: label }),
|
|
3966
3967
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
3967
3968
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3968
|
-
|
|
3969
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
3969
3970
|
{
|
|
3970
3971
|
value: inputValue,
|
|
3971
3972
|
onChange: (e) => setInputValue(e.target.value),
|
|
@@ -4031,7 +4032,7 @@ function TagsManager({
|
|
|
4031
4032
|
}) {
|
|
4032
4033
|
const [open, setOpen] = _react.useState.call(void 0, false);
|
|
4033
4034
|
const [search, setSearch] = _react.useState.call(void 0, "");
|
|
4034
|
-
const keyboardPadding =
|
|
4035
|
+
const keyboardPadding = _chunkLEISUAHFcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
4035
4036
|
const [editingId, setEditingId] = _react.useState.call(void 0, null);
|
|
4036
4037
|
const [editingName, setEditingName] = _react.useState.call(void 0, "");
|
|
4037
4038
|
const editInputRef = _react.useRef.call(void 0, null);
|
|
@@ -4106,7 +4107,7 @@ function TagsManager({
|
|
|
4106
4107
|
},
|
|
4107
4108
|
[onChange]
|
|
4108
4109
|
);
|
|
4109
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4110
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative", ref: containerRef, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive4.Root, { open, onOpenChange: setOpen, children: [
|
|
4110
4111
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive4.Anchor, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4111
4112
|
"label",
|
|
4112
4113
|
{
|
|
@@ -4134,7 +4135,7 @@ function TagsManager({
|
|
|
4134
4135
|
}
|
|
4135
4136
|
),
|
|
4136
4137
|
selectedTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4137
|
-
|
|
4138
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
4138
4139
|
{
|
|
4139
4140
|
label: tag.name,
|
|
4140
4141
|
variant: "outline",
|
|
@@ -4222,7 +4223,7 @@ function TagsManager({
|
|
|
4222
4223
|
className: "flex items-center gap-1 border-b border-ods-border px-2 py-1 last:border-b-0",
|
|
4223
4224
|
children: [
|
|
4224
4225
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4225
|
-
|
|
4226
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
4226
4227
|
{
|
|
4227
4228
|
ref: editInputRef,
|
|
4228
4229
|
value: editingName,
|
|
@@ -4354,6 +4355,7 @@ var Textarea = _react.forwardRef.call(void 0,
|
|
|
4354
4355
|
className,
|
|
4355
4356
|
invalid = false,
|
|
4356
4357
|
label,
|
|
4358
|
+
labelVariant,
|
|
4357
4359
|
error,
|
|
4358
4360
|
endIcon,
|
|
4359
4361
|
endIconAsButton = false,
|
|
@@ -4367,7 +4369,7 @@ var Textarea = _react.forwardRef.call(void 0,
|
|
|
4367
4369
|
const reactId = _react.useId.call(void 0, );
|
|
4368
4370
|
const fieldId = _nullishCoalesce(props.id, () => ( reactId));
|
|
4369
4371
|
if (!hasAdornment) {
|
|
4370
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4372
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, labelVariant, error, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4371
4373
|
"textarea",
|
|
4372
4374
|
{
|
|
4373
4375
|
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
@@ -4496,7 +4498,7 @@ var Textarea = _react.forwardRef.call(void 0,
|
|
|
4496
4498
|
]
|
|
4497
4499
|
}
|
|
4498
4500
|
);
|
|
4499
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4501
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label, labelVariant, error, children: content });
|
|
4500
4502
|
}
|
|
4501
4503
|
);
|
|
4502
4504
|
Textarea.displayName = "Textarea";
|
|
@@ -4678,10 +4680,10 @@ function useConfirm() {
|
|
|
4678
4680
|
},
|
|
4679
4681
|
[]
|
|
4680
4682
|
);
|
|
4681
|
-
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4682
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4683
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4684
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4683
|
+
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
|
|
4684
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: pending.title }) }),
|
|
4685
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
|
|
4686
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
|
|
4685
4687
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
|
|
4686
4688
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
|
|
4687
4689
|
] })
|
|
@@ -4739,9 +4741,9 @@ function AdminFormModal({
|
|
|
4739
4741
|
body: "Your edits have not been saved. Close and discard them?"
|
|
4740
4742
|
});
|
|
4741
4743
|
if (!isOpen) return null;
|
|
4742
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4743
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4744
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4744
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
|
|
4745
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: [
|
|
4746
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: title }),
|
|
4745
4747
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
4746
4748
|
] }),
|
|
4747
4749
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -4765,7 +4767,7 @@ function AdminFormModal({
|
|
|
4765
4767
|
// a shrink-to-fit flex item pinned to the left of a 1400px panel).
|
|
4766
4768
|
// The placeholder owns its own layout and mirrors the column count so
|
|
4767
4769
|
// the modal doesn't visibly re-flow when the entity lands.
|
|
4768
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4770
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4769
4771
|
"div",
|
|
4770
4772
|
{
|
|
4771
4773
|
"aria-busy": "true",
|
|
@@ -4786,12 +4788,12 @@ function AdminFormModal({
|
|
|
4786
4788
|
]
|
|
4787
4789
|
}
|
|
4788
4790
|
) })
|
|
4789
|
-
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4791
|
+
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalContent, { className: contentClassName, children }),
|
|
4790
4792
|
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
|
|
4791
4793
|
]
|
|
4792
4794
|
}
|
|
4793
4795
|
),
|
|
4794
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4796
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
|
|
4795
4797
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
|
|
4796
4798
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
4797
4799
|
footerStatus,
|
|
@@ -5649,7 +5651,7 @@ function FadePreview({ hiddenCount, collapsedHeight = 120, resetKey, children })
|
|
|
5649
5651
|
setCollapsedFor(resetKey);
|
|
5650
5652
|
setExpanded(false);
|
|
5651
5653
|
}
|
|
5652
|
-
|
|
5654
|
+
_chunkZI27ALYXcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
5653
5655
|
const el = contentRef.current;
|
|
5654
5656
|
if (!el) return;
|
|
5655
5657
|
el.style.maxHeight = expanded ? `${el.scrollHeight}px` : `${collapsedHeight}px`;
|
|
@@ -6038,9 +6040,9 @@ var KIND_HEADING = {
|
|
|
6038
6040
|
design: "Claude Design"
|
|
6039
6041
|
};
|
|
6040
6042
|
function ClaudeEmbed({ url, kind = "artifact", title, height, loading = "lazy" }) {
|
|
6041
|
-
const { src: mirrorSrc, status } =
|
|
6043
|
+
const { src: mirrorSrc, status } = _chunkLEISUAHFcjs.useClaudeMirrorSrc.call(void 0, url);
|
|
6042
6044
|
const isProbing = status === "probing";
|
|
6043
|
-
const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => (
|
|
6045
|
+
const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => ( _chunkLEISUAHFcjs.toClaudeEmbedUrl.call(void 0, url)));
|
|
6044
6046
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6045
6047
|
EmbedViewerFrame,
|
|
6046
6048
|
{
|
|
@@ -6115,12 +6117,12 @@ function SlidesViewToggle({ view, onChange }) {
|
|
|
6115
6117
|
}
|
|
6116
6118
|
function FigmaEmbed({ url, title, height, loading = "lazy" }) {
|
|
6117
6119
|
const [view, setView] = _react.useState.call(void 0, "present");
|
|
6118
|
-
const isSlides = url ?
|
|
6119
|
-
const embedSrc = url ?
|
|
6120
|
+
const isSlides = url ? _chunkLEISUAHFcjs.isFigmaSlidesUrl.call(void 0, url) : false;
|
|
6121
|
+
const embedSrc = url ? _chunkLEISUAHFcjs.toFigmaEmbedUrl.call(void 0, url, { slidesView: view }) : null;
|
|
6120
6122
|
const originalUrl = (() => {
|
|
6121
6123
|
if (!url) return null;
|
|
6122
6124
|
try {
|
|
6123
|
-
const parsed = new URL(
|
|
6125
|
+
const parsed = new URL(_chunkLEISUAHFcjs.toFigmaOriginalUrl.call(void 0, url));
|
|
6124
6126
|
const host = parsed.hostname.toLowerCase();
|
|
6125
6127
|
const okHost = host === "figma.com" || host.endsWith(".figma.com");
|
|
6126
6128
|
const okProtocol = parsed.protocol === "https:" || parsed.protocol === "http:";
|
|
@@ -6889,7 +6891,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
|
|
|
6889
6891
|
};
|
|
6890
6892
|
const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
|
|
6891
6893
|
const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6892
|
-
|
|
6894
|
+
_chunkRKGOVTXZcjs.Video,
|
|
6893
6895
|
{
|
|
6894
6896
|
url: item.src,
|
|
6895
6897
|
poster: item.poster ? displayImageSrc(item.poster) : void 0,
|
|
@@ -7321,7 +7323,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
7321
7323
|
width: m.width,
|
|
7322
7324
|
height: m.height
|
|
7323
7325
|
}));
|
|
7324
|
-
const formatNumber2 =
|
|
7326
|
+
const formatNumber2 = _chunkNNFQLTJ3cjs.formatLargeNumber;
|
|
7325
7327
|
const truncateText = (text, maxLength = 600) => {
|
|
7326
7328
|
if (text.length <= maxLength) return text;
|
|
7327
7329
|
return text.slice(0, maxLength) + "...";
|
|
@@ -7613,7 +7615,7 @@ function buildRichEmbedOverrides({
|
|
|
7613
7615
|
ogEndpointPath,
|
|
7614
7616
|
textSizes
|
|
7615
7617
|
}) {
|
|
7616
|
-
const standard =
|
|
7618
|
+
const standard = _chunkRKGOVTXZcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
|
|
7617
7619
|
return {
|
|
7618
7620
|
// Fence-language embeds (```youtube-embed etc.); everything else
|
|
7619
7621
|
// (mermaid, highlighted blocks, inline code) falls through to `standard`.
|
|
@@ -7623,7 +7625,7 @@ function buildRichEmbedOverrides({
|
|
|
7623
7625
|
const language = match ? match[1] : "";
|
|
7624
7626
|
const fenceText = () => String(children).replace(/\n$/, "").trim();
|
|
7625
7627
|
if (language === "youtube-embed") {
|
|
7626
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7628
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "youtube", url: fenceText() });
|
|
7627
7629
|
}
|
|
7628
7630
|
if (language === "reddit-embed") {
|
|
7629
7631
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
|
|
@@ -7664,7 +7666,7 @@ function buildRichEmbedOverrides({
|
|
|
7664
7666
|
"data-figma-url": figmaUrl
|
|
7665
7667
|
} = divProps;
|
|
7666
7668
|
if (className === "youtube-embed" && videoId) {
|
|
7667
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7669
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "youtube", url: videoId });
|
|
7668
7670
|
}
|
|
7669
7671
|
if (className === "reddit-embed" && postUrl) {
|
|
7670
7672
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
|
|
@@ -7749,14 +7751,14 @@ function buildRichEmbedOverrides({
|
|
|
7749
7751
|
// rich-markdown runtime (Supabase optimization on the hub, identity
|
|
7750
7752
|
// elsewhere). Guard against empty `![]()`.
|
|
7751
7753
|
img: ({ src, alt }) => {
|
|
7752
|
-
if (!
|
|
7754
|
+
if (!_chunkRKGOVTXZcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7753
7755
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
|
|
7754
7756
|
},
|
|
7755
7757
|
// Raw <video> tags in stored content (blog publisher injection) route
|
|
7756
7758
|
// to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
|
|
7757
7759
|
video: ({ src, poster, className }) => {
|
|
7758
|
-
if (!
|
|
7759
|
-
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,
|
|
7760
|
+
if (!_chunkRKGOVTXZcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7761
|
+
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, _chunkRKGOVTXZcjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
|
|
7760
7762
|
}
|
|
7761
7763
|
};
|
|
7762
7764
|
}
|
|
@@ -7939,13 +7941,13 @@ var RichMarkdownInner = ({
|
|
|
7939
7941
|
},
|
|
7940
7942
|
[resolveLinkEndpointUrl, resolveSource]
|
|
7941
7943
|
);
|
|
7942
|
-
const textSizes = _react.useMemo.call(void 0, () =>
|
|
7944
|
+
const textSizes = _react.useMemo.call(void 0, () => _chunkRKGOVTXZcjs.resolveTextSizeConfig.call(void 0, "article"), []);
|
|
7943
7945
|
const componentOverrides = _react.useMemo.call(void 0,
|
|
7944
7946
|
() => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
|
|
7945
7947
|
[ogApiBaseUrl, ogEndpointPath, textSizes]
|
|
7946
7948
|
);
|
|
7947
7949
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7948
|
-
|
|
7950
|
+
_chunkRKGOVTXZcjs.MarkdownEngine,
|
|
7949
7951
|
{
|
|
7950
7952
|
content,
|
|
7951
7953
|
className,
|
|
@@ -7967,7 +7969,7 @@ var RichMarkdownRendererImpl = ({
|
|
|
7967
7969
|
className = "",
|
|
7968
7970
|
sectionIds,
|
|
7969
7971
|
onInternalLinkClick,
|
|
7970
|
-
brokenLinks =
|
|
7972
|
+
brokenLinks = _chunkRKGOVTXZcjs.NO_BROKEN_LINKS,
|
|
7971
7973
|
currentPath,
|
|
7972
7974
|
resolveSource = "openframe-docs",
|
|
7973
7975
|
resolveLinkEndpointUrl = "/api/docs/resolve-link",
|
|
@@ -8540,7 +8542,7 @@ function FilterModal({
|
|
|
8540
8542
|
const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _161 => _161.defaultSort]), () => ( "desc"));
|
|
8541
8543
|
const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _162 => _162.sort]), () => ( dateDefaultSort)));
|
|
8542
8544
|
const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _163 => _163.range]));
|
|
8543
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
8545
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkRKGOVTXZcjs.useScrollFade.call(void 0, );
|
|
8544
8546
|
const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
|
|
8545
8547
|
const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
|
|
8546
8548
|
_react.useEffect.call(void 0, () => {
|
|
@@ -8585,10 +8587,10 @@ function FilterModal({
|
|
|
8585
8587
|
const hasFilterGroups = filterGroups.length > 0;
|
|
8586
8588
|
const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
|
|
8587
8589
|
const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
|
|
8588
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8589
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8590
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose, className: _chunkPRPZBXWZcjs.cn.call(void 0, "max-h-[90vh] max-w-none", className), children: [
|
|
8591
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: title }) }),
|
|
8590
8592
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8591
|
-
|
|
8593
|
+
_chunkRKGOVTXZcjs.ModalContent,
|
|
8592
8594
|
{
|
|
8593
8595
|
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
8594
8596
|
"flex min-h-0 flex-1 flex-col",
|
|
@@ -8680,12 +8682,12 @@ function FilterModal({
|
|
|
8680
8682
|
] })
|
|
8681
8683
|
}
|
|
8682
8684
|
),
|
|
8683
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8684
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8685
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
|
|
8686
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
|
|
8685
8687
|
] })
|
|
8686
8688
|
}
|
|
8687
8689
|
),
|
|
8688
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8690
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
|
|
8689
8691
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
|
|
8690
8692
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
|
|
8691
8693
|
] })
|
|
@@ -8729,9 +8731,9 @@ function actionToMenuItems(action, idx) {
|
|
|
8729
8731
|
function renderActionButton(action, opts = {}) {
|
|
8730
8732
|
const button = renderRawActionButton(action, opts);
|
|
8731
8733
|
if (!action.tooltip) return button;
|
|
8732
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8733
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8734
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8734
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { children: [
|
|
8735
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, children: button }),
|
|
8736
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { children: action.tooltip })
|
|
8735
8737
|
] }) });
|
|
8736
8738
|
}
|
|
8737
8739
|
function renderRawActionButton(action, opts = {}) {
|
|
@@ -8755,7 +8757,7 @@ function renderRawActionButton(action, opts = {}) {
|
|
|
8755
8757
|
}
|
|
8756
8758
|
if (action.submenu && action.submenu.length > 0) {
|
|
8757
8759
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8758
|
-
|
|
8760
|
+
_chunkRKGOVTXZcjs.ActionsMenuDropdown,
|
|
8759
8761
|
{
|
|
8760
8762
|
groups: [{ items: action.submenu }],
|
|
8761
8763
|
customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -8890,10 +8892,10 @@ function IconButtonsVariant({
|
|
|
8890
8892
|
selector,
|
|
8891
8893
|
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
8892
8894
|
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
|
|
8893
|
-
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8895
|
+
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: menuActions })
|
|
8894
8896
|
] })
|
|
8895
8897
|
] }),
|
|
8896
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.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,
|
|
8898
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.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, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
|
|
8897
8899
|
] });
|
|
8898
8900
|
}
|
|
8899
8901
|
function PrimaryButtonsVariant({
|
|
@@ -8931,11 +8933,11 @@ function MenuPrimaryVariant({
|
|
|
8931
8933
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "hidden items-center md:flex", ACTIONS_GAP, className), children: [
|
|
8932
8934
|
selector,
|
|
8933
8935
|
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
8934
|
-
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8936
|
+
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: menuActions }),
|
|
8935
8937
|
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
|
|
8936
8938
|
] })
|
|
8937
8939
|
] }),
|
|
8938
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8940
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
|
|
8939
8941
|
] });
|
|
8940
8942
|
}
|
|
8941
8943
|
function MobileBottomActions({ actions, loading }) {
|
|
@@ -9142,7 +9144,7 @@ function ListPageLayout({
|
|
|
9142
9144
|
}) {
|
|
9143
9145
|
const [mobileFilterOpen, setMobileFilterOpen] = _react.useState.call(void 0, false);
|
|
9144
9146
|
const [localSearchValue, setLocalSearchValue] = _react.useState.call(void 0, searchValue);
|
|
9145
|
-
const debouncedSearchValue =
|
|
9147
|
+
const debouncedSearchValue = _chunkZI27ALYXcjs.useDebounce.call(void 0, localSearchValue, 500);
|
|
9146
9148
|
const [syncedSearchValue, setSyncedSearchValue] = _react.useState.call(void 0, searchValue);
|
|
9147
9149
|
if (syncedSearchValue !== searchValue) {
|
|
9148
9150
|
setSyncedSearchValue(searchValue);
|
|
@@ -9177,7 +9179,7 @@ function ListPageLayout({
|
|
|
9177
9179
|
),
|
|
9178
9180
|
children: [
|
|
9179
9181
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9180
|
-
|
|
9182
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
9181
9183
|
{
|
|
9182
9184
|
placeholder: searchPlaceholder,
|
|
9183
9185
|
onChange: (e) => setLocalSearchValue(e.target.value),
|
|
@@ -9228,7 +9230,7 @@ function EntityImage({ src, alt, fallbackText, className }) {
|
|
|
9228
9230
|
const [failedSrc, setFailedSrc] = _react2.default.useState(null);
|
|
9229
9231
|
const imageFailed = resolvedSrc !== void 0 && failedSrc === resolvedSrc;
|
|
9230
9232
|
const showFallback = imageFailed || !resolvedSrc;
|
|
9231
|
-
const initials =
|
|
9233
|
+
const initials = _chunkNNFQLTJ3cjs.getFirstLastInitials.call(void 0, _nullishCoalesce(fallbackText, () => ( alt)));
|
|
9232
9234
|
if (showFallback) {
|
|
9233
9235
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9234
9236
|
"div",
|
|
@@ -9299,8 +9301,8 @@ function TitleBlock({
|
|
|
9299
9301
|
const titleClass = titleSize === "h1" ? "text-h1" : "text-h2";
|
|
9300
9302
|
const titleOverflowClass = titleWrap ? "break-words" : "truncate";
|
|
9301
9303
|
const skeletonSize = TITLE_SKELETON_SIZE[titleSize];
|
|
9302
|
-
const { ref: titleRef, isTruncated: titleTruncated } =
|
|
9303
|
-
const { ref: subtitleRef, isTruncated: subtitleTruncated } =
|
|
9304
|
+
const { ref: titleRef, isTruncated: titleTruncated } = _chunkZI27ALYXcjs.useIsTruncated.call(void 0, loading ? null : title);
|
|
9305
|
+
const { ref: subtitleRef, isTruncated: subtitleTruncated } = _chunkZI27ALYXcjs.useIsTruncated.call(void 0,
|
|
9304
9306
|
loading ? null : subtitle
|
|
9305
9307
|
);
|
|
9306
9308
|
const titleNode = loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TitleTextSkeleton, { widthClass: skeletonSize.width, heightClass: skeletonSize.height }) : title;
|
|
@@ -9337,7 +9339,7 @@ function TitleBlock({
|
|
|
9337
9339
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
9338
9340
|
(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: [
|
|
9339
9341
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9340
|
-
|
|
9342
|
+
_chunkRKGOVTXZcjs.FloatingTooltip,
|
|
9341
9343
|
{
|
|
9342
9344
|
content: title,
|
|
9343
9345
|
side: "bottom",
|
|
@@ -9354,12 +9356,12 @@ function TitleBlock({
|
|
|
9354
9356
|
}
|
|
9355
9357
|
),
|
|
9356
9358
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
|
|
9357
|
-
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9359
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
|
|
9358
9360
|
hasSubtitleRow && /* The NBSP is a pure spacer, reached only in `'always'` mode: an
|
|
9359
9361
|
empty `p` collapses to zero height (its only content would be
|
|
9360
9362
|
collapsible whitespace), which is exactly the shift that mode
|
|
9361
9363
|
exists to prevent. Hidden from AT — it carries no meaning. */
|
|
9362
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9364
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9363
9365
|
"p",
|
|
9364
9366
|
{
|
|
9365
9367
|
ref: subtitleRef,
|
|
@@ -9370,7 +9372,7 @@ function TitleBlock({
|
|
|
9370
9372
|
) })
|
|
9371
9373
|
] })
|
|
9372
9374
|
] }) : title && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
|
|
9373
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9375
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ref: titleRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass), children: title }) }),
|
|
9374
9376
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
|
|
9375
9377
|
] }) : (
|
|
9376
9378
|
/* This branch never had the single-line clamp, so text already
|
|
@@ -9814,7 +9816,7 @@ function toToolLabel(input) {
|
|
|
9814
9816
|
if (!input) return "";
|
|
9815
9817
|
const toolType = normalizeToolType(input);
|
|
9816
9818
|
if (toolType) {
|
|
9817
|
-
return
|
|
9819
|
+
return _chunkZI27ALYXcjs.toolLabels[toolType];
|
|
9818
9820
|
}
|
|
9819
9821
|
return input;
|
|
9820
9822
|
}
|
|
@@ -9825,7 +9827,7 @@ function getToolTypeAliases(toolType) {
|
|
|
9825
9827
|
return Object.entries(toolAliasMap).filter(([_, value]) => value === toolType).map(([key]) => key);
|
|
9826
9828
|
}
|
|
9827
9829
|
function getToolLabel(toolType) {
|
|
9828
|
-
return
|
|
9830
|
+
return _chunkZI27ALYXcjs.toolLabels[toolType] || toolType;
|
|
9829
9831
|
}
|
|
9830
9832
|
|
|
9831
9833
|
// src/types/shell.types.ts
|
|
@@ -10780,9 +10782,9 @@ function lastPathSegment(url) {
|
|
|
10780
10782
|
function makeComposeContentUrl(opts) {
|
|
10781
10783
|
const suffixes = _nullishCoalesce(opts.suffixes, () => ( DEFAULT_CONTENT_SUFFIXES));
|
|
10782
10784
|
return ({ type: rawType, identifier, slug: slugHint, externalUrl, targetPlatform, platforms }) => {
|
|
10783
|
-
const type =
|
|
10785
|
+
const type = _chunkNNFQLTJ3cjs.canonicalContentRefType.call(void 0, rawType);
|
|
10784
10786
|
const override = opts.overrides && Object.prototype.hasOwnProperty.call(opts.overrides, type) ? opts.overrides[type] : void 0;
|
|
10785
|
-
if (override) return override(identifier);
|
|
10787
|
+
if (override) return { ...override(identifier), hostOverride: true };
|
|
10786
10788
|
const seg = _nullishCoalesce((Object.prototype.hasOwnProperty.call(suffixes, type) ? suffixes[type] : void 0), () => ( type));
|
|
10787
10789
|
if (opts.hostedTypes.has(type)) {
|
|
10788
10790
|
const recovered = externalUrl ? lastPathSegment(externalUrl) : null;
|
|
@@ -10958,8 +10960,8 @@ var DEFAULT_OPTIONS = {
|
|
|
10958
10960
|
function extractSections(markdown, options = {}) {
|
|
10959
10961
|
const opts = { ...DEFAULT_OPTIONS, ...options };
|
|
10960
10962
|
const sections = [];
|
|
10961
|
-
const dedupe =
|
|
10962
|
-
const scanned =
|
|
10963
|
+
const dedupe = _chunkZI27ALYXcjs.createHeadingIdDeduper.call(void 0, );
|
|
10964
|
+
const scanned = _chunkZI27ALYXcjs.scanHeadings.call(void 0, markdown, {
|
|
10963
10965
|
skipFrontmatter: opts.skipCodeAndYamlBlocks,
|
|
10964
10966
|
skipFences: opts.skipCodeAndYamlBlocks
|
|
10965
10967
|
});
|
|
@@ -10967,9 +10969,9 @@ function extractSections(markdown, options = {}) {
|
|
|
10967
10969
|
if (heading.level > opts.maxLevel) continue;
|
|
10968
10970
|
let title = heading.text;
|
|
10969
10971
|
if (opts.stripFormattingMarkers) {
|
|
10970
|
-
title =
|
|
10972
|
+
title = _chunkRKGOVTXZcjs.stripInlineMarkdown.call(void 0, title).trim();
|
|
10971
10973
|
}
|
|
10972
|
-
const baseId =
|
|
10974
|
+
const baseId = _chunkZI27ALYXcjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunkZI27ALYXcjs.stripHeadingEmojis.call(void 0, title) : title);
|
|
10973
10975
|
const cleanId = baseId || `section-${sections.length + 1}`;
|
|
10974
10976
|
sections.push({
|
|
10975
10977
|
id: opts.handleDuplicateIds ? dedupe(cleanId) : cleanId,
|
|
@@ -11459,7 +11461,7 @@ function DashboardInfoCard({
|
|
|
11459
11461
|
const asTag = percentageDisplay === "tag" || percentageDisplay === "auto" && (progressVariant === "warning" || progressVariant === "error");
|
|
11460
11462
|
if (asTag) {
|
|
11461
11463
|
const tagVariant = progressVariant === "warning" || progressVariant === "error" ? progressVariant : progressVariant === "success" ? "success" : "grey";
|
|
11462
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11464
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: tagVariant, label: `${percentage}%` });
|
|
11463
11465
|
}
|
|
11464
11466
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: [
|
|
11465
11467
|
"(",
|
|
@@ -11513,7 +11515,7 @@ function DashboardInfoCard({
|
|
|
11513
11515
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "truncate text-ods-text-primary text-h3 md:text-h2", valueClassName), children: formattedValue }),
|
|
11514
11516
|
subValue && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: subValue }),
|
|
11515
11517
|
renderPercentage(),
|
|
11516
|
-
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11518
|
+
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.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, _chunkGSQM4PDRcjs.QuestionCircleIcon, { size: 20 }) }) })
|
|
11517
11519
|
] })
|
|
11518
11520
|
] }),
|
|
11519
11521
|
renderProgress()
|
|
@@ -11696,7 +11698,7 @@ function DeviceCard({
|
|
|
11696
11698
|
] }),
|
|
11697
11699
|
(statusTag || device.lastSeen) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2", children: [
|
|
11698
11700
|
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11699
|
-
|
|
11701
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
11700
11702
|
{
|
|
11701
11703
|
variant: statusTag.variant,
|
|
11702
11704
|
icon: statusTag.icon,
|
|
@@ -11710,7 +11712,7 @@ function DeviceCard({
|
|
|
11710
11712
|
formatLastSeen(device.lastSeen)
|
|
11711
11713
|
] })
|
|
11712
11714
|
] }),
|
|
11713
|
-
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,
|
|
11715
|
+
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, _chunkRKGOVTXZcjs.Tag, { variant: "outline", label: tag }, index)) })
|
|
11714
11716
|
]
|
|
11715
11717
|
}
|
|
11716
11718
|
);
|
|
@@ -11771,7 +11773,7 @@ function FeatureCardGrid({
|
|
|
11771
11773
|
if (allCardsHaveNoBorders) {
|
|
11772
11774
|
finalCardClassName = "bg-transparent p-0 overflow-visible border-0 shadow-none rounded-none";
|
|
11773
11775
|
}
|
|
11774
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11776
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.Card, { className: `${finalCardClassName} ${className}`, children: Array.from({ length: rows }, (_, rowIndex) => {
|
|
11775
11777
|
const startIndex = rowIndex * itemsPerRow;
|
|
11776
11778
|
const rowItems = items.slice(startIndex, startIndex + itemsPerRow);
|
|
11777
11779
|
const isLastRow = rowIndex === rows - 1;
|
|
@@ -11801,7 +11803,7 @@ function FeatureCardGrid({
|
|
|
11801
11803
|
item.icon && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start justify-between", children: [
|
|
11802
11804
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, item.icon, { size: 80, color: item.iconColor }),
|
|
11803
11805
|
item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11804
|
-
|
|
11806
|
+
_chunkNNFQLTJ3cjs.StatusBadge,
|
|
11805
11807
|
{
|
|
11806
11808
|
text: item.badge.text,
|
|
11807
11809
|
variant: item.badge.variant || "card",
|
|
@@ -11810,7 +11812,7 @@ function FeatureCardGrid({
|
|
|
11810
11812
|
)
|
|
11811
11813
|
] }),
|
|
11812
11814
|
!item.icon && item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-start justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11813
|
-
|
|
11815
|
+
_chunkNNFQLTJ3cjs.StatusBadge,
|
|
11814
11816
|
{
|
|
11815
11817
|
text: item.badge.text,
|
|
11816
11818
|
variant: item.badge.variant || "card",
|
|
@@ -11858,7 +11860,7 @@ function FeatureList({ items, className = "", iconBoxSize = 72 }) {
|
|
|
11858
11860
|
|
|
11859
11861
|
function SourceTooltip({ intro, sources, note, iconClassName, triggerAnchorProps }) {
|
|
11860
11862
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11861
|
-
|
|
11863
|
+
_chunkRKGOVTXZcjs.FloatingTooltip,
|
|
11862
11864
|
{
|
|
11863
11865
|
as: "span",
|
|
11864
11866
|
side: "top",
|
|
@@ -12042,7 +12044,7 @@ function DropdownButton({
|
|
|
12042
12044
|
)
|
|
12043
12045
|
);
|
|
12044
12046
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12045
|
-
|
|
12047
|
+
_chunkRKGOVTXZcjs.ActionsMenuDropdown,
|
|
12046
12048
|
{
|
|
12047
12049
|
groups: _nullishCoalesce(groups, () => ( [{ items: _nullishCoalesce(items, () => ( [])) }])),
|
|
12048
12050
|
open,
|
|
@@ -12257,8 +12259,8 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
|
|
|
12257
12259
|
}
|
|
12258
12260
|
function ServiceCardRowItem({ row }) {
|
|
12259
12261
|
const [revealed, setRevealed] = _react.useState.call(void 0, false);
|
|
12260
|
-
const { copy, copied } =
|
|
12261
|
-
const { ref: valueRef, isTruncated: valueTruncated } =
|
|
12262
|
+
const { copy, copied } = _chunkLEISUAHFcjs.useCopyToClipboard.call(void 0, );
|
|
12263
|
+
const { ref: valueRef, isTruncated: valueTruncated } = _chunkZI27ALYXcjs.useIsTruncated.call(void 0, row.value);
|
|
12262
12264
|
const actions = _react.useMemo.call(void 0,
|
|
12263
12265
|
() => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }),
|
|
12264
12266
|
[row]
|
|
@@ -12280,7 +12282,7 @@ function ServiceCardRowItem({ row }) {
|
|
|
12280
12282
|
),
|
|
12281
12283
|
children: [
|
|
12282
12284
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12283
|
-
|
|
12285
|
+
_chunkRKGOVTXZcjs.FloatingTooltip,
|
|
12284
12286
|
{
|
|
12285
12287
|
content: row.value,
|
|
12286
12288
|
side: "top",
|
|
@@ -12406,9 +12408,9 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
|
|
|
12406
12408
|
return next;
|
|
12407
12409
|
});
|
|
12408
12410
|
};
|
|
12409
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12411
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { open, onOpenChange: setOpen, children: [
|
|
12410
12412
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12411
|
-
|
|
12413
|
+
_chunkRKGOVTXZcjs.TooltipTrigger,
|
|
12412
12414
|
{
|
|
12413
12415
|
asChild: true,
|
|
12414
12416
|
onPointerDown: (e) => {
|
|
@@ -12426,7 +12428,7 @@ function TouchFriendlyTooltip({ content, side = "left", children }) {
|
|
|
12426
12428
|
children
|
|
12427
12429
|
}
|
|
12428
12430
|
),
|
|
12429
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12431
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { side, className: "max-w-xs", children: content })
|
|
12430
12432
|
] }) });
|
|
12431
12433
|
}
|
|
12432
12434
|
|
|
@@ -12785,7 +12787,7 @@ function TableHeader({
|
|
|
12785
12787
|
}
|
|
12786
12788
|
return sortDirection === "asc" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.Arrow01UpIcon, { className: "h-4 w-4 text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.Arrow01DownIcon, { className: "h-4 w-4 text-ods-accent" });
|
|
12787
12789
|
};
|
|
12788
|
-
const isLgUp = _nullishCoalesce(
|
|
12790
|
+
const isLgUp = _nullishCoalesce(_chunkZI27ALYXcjs.useLgUp.call(void 0, ), () => ( false));
|
|
12789
12791
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
12790
12792
|
"div",
|
|
12791
12793
|
{
|
|
@@ -12796,7 +12798,7 @@ function TableHeader({
|
|
|
12796
12798
|
),
|
|
12797
12799
|
children: [
|
|
12798
12800
|
selectable && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-10 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12799
|
-
|
|
12801
|
+
_chunkIKDC3R7Vcjs.Checkbox,
|
|
12800
12802
|
{
|
|
12801
12803
|
checked: allSelected || someSelected && !allSelected ? true : false,
|
|
12802
12804
|
onCheckedChange: onSelectAll,
|
|
@@ -13038,7 +13040,7 @@ function TableRow({
|
|
|
13038
13040
|
isLinkMode && "pointer-events-none"
|
|
13039
13041
|
),
|
|
13040
13042
|
children: [
|
|
13041
|
-
selectable && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto flex w-10 shrink-0 items-center justify-center", "data-no-row-click": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13043
|
+
selectable && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto flex w-10 shrink-0 items-center justify-center", "data-no-row-click": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.Checkbox, { checked: selected, onCheckedChange: handleSelect, className: "border-ods-border" }) }),
|
|
13042
13044
|
columns.map((column) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13043
13045
|
TableCell,
|
|
13044
13046
|
{
|
|
@@ -13441,9 +13443,9 @@ function TruncatedHeaderCell({ value, width }) {
|
|
|
13441
13443
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
13442
13444
|
}
|
|
13443
13445
|
}, []);
|
|
13444
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13445
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13446
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13446
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
13447
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.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 }) }) }),
|
|
13448
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
|
|
13447
13449
|
] }) });
|
|
13448
13450
|
}
|
|
13449
13451
|
|
|
@@ -13496,9 +13498,9 @@ function TruncatedCell({ value, className }) {
|
|
|
13496
13498
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
13497
13499
|
}
|
|
13498
13500
|
}, []);
|
|
13499
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13500
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13501
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13501
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
13502
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunkPRPZBXWZcjs.cn.call(void 0, "block truncate", className), children: value }) }),
|
|
13503
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
|
|
13502
13504
|
] }) });
|
|
13503
13505
|
}
|
|
13504
13506
|
|
|
@@ -13613,7 +13615,7 @@ function QueryReportTable({
|
|
|
13613
13615
|
onThumbPointerDown,
|
|
13614
13616
|
onThumbPointerMove,
|
|
13615
13617
|
onThumbPointerUp
|
|
13616
|
-
} =
|
|
13618
|
+
} = _chunkLEISUAHFcjs.useHorizontalScrollbar.call(void 0, );
|
|
13617
13619
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex w-full flex-col", isCompact ? "gap-0" : "gap-[var(--spacing-system-l)]", className), children: [
|
|
13618
13620
|
!isCompact && (title || headerActions || showExport && data.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between pt-[var(--spacing-system-l)]", children: [
|
|
13619
13621
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h2", children: title }),
|
|
@@ -14381,7 +14383,7 @@ var PasswordInput = _react.forwardRef.call(void 0, ({ disabled, className, ...pr
|
|
|
14381
14383
|
const [visible, setVisible] = _react.useState.call(void 0, false);
|
|
14382
14384
|
const Icon2 = visible ? _chunkGSQM4PDRcjs.EyeOffIcon : _chunkGSQM4PDRcjs.EyeIcon;
|
|
14383
14385
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14384
|
-
|
|
14386
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
14385
14387
|
{
|
|
14386
14388
|
ref,
|
|
14387
14389
|
type: visible ? "text" : "password",
|
|
@@ -14477,7 +14479,7 @@ function PhoneInput({
|
|
|
14477
14479
|
}
|
|
14478
14480
|
),
|
|
14479
14481
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14480
|
-
|
|
14482
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
14481
14483
|
{
|
|
14482
14484
|
type: "tel",
|
|
14483
14485
|
value,
|
|
@@ -14577,10 +14579,10 @@ function SearchInput({
|
|
|
14577
14579
|
}) {
|
|
14578
14580
|
const [internalValue, setInternalValue] = _react.useState.call(void 0, defaultValue);
|
|
14579
14581
|
const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
|
|
14580
|
-
const debouncedValue =
|
|
14582
|
+
const debouncedValue = _chunkZI27ALYXcjs.useDebounce.call(void 0, currentValue, debounceMs);
|
|
14581
14583
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
14582
14584
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
14583
|
-
const keyboardPadding =
|
|
14585
|
+
const keyboardPadding = _chunkLEISUAHFcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
14584
14586
|
const containerRef = _react.useRef.call(void 0, null);
|
|
14585
14587
|
const currentPlaceholder = filterChips.length > 0 ? "Add filter..." : placeholder;
|
|
14586
14588
|
const {
|
|
@@ -14590,7 +14592,7 @@ function SearchInput({
|
|
|
14590
14592
|
textMeasureRef,
|
|
14591
14593
|
badgeRef,
|
|
14592
14594
|
inputRef
|
|
14593
|
-
} =
|
|
14595
|
+
} = _chunkLEISUAHFcjs.useAutoLimitTags.call(void 0, {
|
|
14594
14596
|
count: filterChips.length,
|
|
14595
14597
|
limitTags,
|
|
14596
14598
|
// When chips exist, pass empty placeholder so the hook only reserves input minWidth,
|
|
@@ -14612,7 +14614,7 @@ function SearchInput({
|
|
|
14612
14614
|
document.addEventListener("mousedown", handleClick);
|
|
14613
14615
|
return () => document.removeEventListener("mousedown", handleClick);
|
|
14614
14616
|
}, [showHiddenTags]);
|
|
14615
|
-
|
|
14617
|
+
_chunkZI27ALYXcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
14616
14618
|
const popup = hiddenTagsPopupRef.current;
|
|
14617
14619
|
const badge = badgeRef.current;
|
|
14618
14620
|
if (!popup || !badge) return;
|
|
@@ -14782,7 +14784,7 @@ function SearchInput({
|
|
|
14782
14784
|
/* @__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, {}) }),
|
|
14783
14785
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden", children: [
|
|
14784
14786
|
visibleChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14785
|
-
|
|
14787
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
14786
14788
|
{
|
|
14787
14789
|
variant: chipVariantToTagVariant(chip.variant),
|
|
14788
14790
|
label: chip.label,
|
|
@@ -14896,7 +14898,7 @@ function SearchInput({
|
|
|
14896
14898
|
}
|
|
14897
14899
|
),
|
|
14898
14900
|
/* @__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,
|
|
14899
|
-
|
|
14901
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
14900
14902
|
{
|
|
14901
14903
|
variant: chipVariantToTagVariant(chip.variant),
|
|
14902
14904
|
label: chip.label,
|
|
@@ -15038,7 +15040,7 @@ function TagSearchInput({
|
|
|
15038
15040
|
limitTags = "auto"
|
|
15039
15041
|
}) {
|
|
15040
15042
|
const currentPlaceholder = tags.length === 0 ? placeholder : addMorePlaceholder;
|
|
15041
|
-
const { visibleCount, middleRef, measureRef, textMeasureRef, badgeRef, inputRef } =
|
|
15043
|
+
const { visibleCount, middleRef, measureRef, textMeasureRef, badgeRef, inputRef } = _chunkLEISUAHFcjs.useAutoLimitTags.call(void 0, {
|
|
15042
15044
|
count: tags.length,
|
|
15043
15045
|
limitTags,
|
|
15044
15046
|
placeholder: currentPlaceholder
|
|
@@ -15058,7 +15060,7 @@ function TagSearchInput({
|
|
|
15058
15060
|
document.addEventListener("mousedown", handleClick);
|
|
15059
15061
|
return () => document.removeEventListener("mousedown", handleClick);
|
|
15060
15062
|
}, [showHiddenTags]);
|
|
15061
|
-
|
|
15063
|
+
_chunkZI27ALYXcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
15062
15064
|
const popup = hiddenTagsPopupRef.current;
|
|
15063
15065
|
const badge = badgeRef.current;
|
|
15064
15066
|
if (!popup || !badge) return;
|
|
@@ -15109,7 +15111,7 @@ function TagSearchInput({
|
|
|
15109
15111
|
/* @__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" }) }),
|
|
15110
15112
|
/* @__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: [
|
|
15111
15113
|
visibleTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15112
|
-
|
|
15114
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
15113
15115
|
{
|
|
15114
15116
|
variant: "outline",
|
|
15115
15117
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -15197,7 +15199,7 @@ function TagSearchInput({
|
|
|
15197
15199
|
"aria-hidden": "true",
|
|
15198
15200
|
className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
|
|
15199
15201
|
children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15200
|
-
|
|
15202
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
15201
15203
|
{
|
|
15202
15204
|
variant: "outline",
|
|
15203
15205
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -15696,7 +15698,7 @@ function FileUpload({
|
|
|
15696
15698
|
const displayError = error || validationError || void 0;
|
|
15697
15699
|
const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
|
|
15698
15700
|
const showDropzone = multiple || !hasFiles;
|
|
15699
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15701
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label: fieldLabel, error: displayError, className, children: [
|
|
15700
15702
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15701
15703
|
"input",
|
|
15702
15704
|
{
|
|
@@ -15916,7 +15918,7 @@ function ImageUploader({
|
|
|
15916
15918
|
}
|
|
15917
15919
|
};
|
|
15918
15920
|
const isActionState = dragActive || pressed && !hasImage;
|
|
15919
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15921
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIKDC3R7Vcjs.FieldWrapper, { label: fieldLabel, error: displayError, className, children: [
|
|
15920
15922
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15921
15923
|
"input",
|
|
15922
15924
|
{
|
|
@@ -16015,6 +16017,9 @@ function ActionIconButton({ onClick, disabled, ariaLabel, children }) {
|
|
|
16015
16017
|
);
|
|
16016
16018
|
}
|
|
16017
16019
|
|
|
16020
|
+
// src/components/ui/ticket-status-config-row.tsx
|
|
16021
|
+
|
|
16022
|
+
|
|
16018
16023
|
// src/components/ui/color-preset-select.tsx
|
|
16019
16024
|
|
|
16020
16025
|
var _reactcolorful = require('react-colorful');
|
|
@@ -16026,7 +16031,7 @@ var _reactcolorful = require('react-colorful');
|
|
|
16026
16031
|
var Popover2 = PopoverPrimitive6.Root;
|
|
16027
16032
|
var PopoverTrigger = PopoverPrimitive6.Trigger;
|
|
16028
16033
|
var PopoverContent = _react.forwardRef.call(void 0, ({ className, align = "center", sideOffset = 4, collisionPadding, ...props }, ref) => {
|
|
16029
|
-
const keyboardPadding =
|
|
16034
|
+
const keyboardPadding = _chunkLEISUAHFcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
16030
16035
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive6.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16031
16036
|
PopoverPrimitive6.Content,
|
|
16032
16037
|
{
|
|
@@ -16083,20 +16088,20 @@ function ColorPresetSelect({
|
|
|
16083
16088
|
...presets.map((p) => ({
|
|
16084
16089
|
id: p.key,
|
|
16085
16090
|
label: p.label,
|
|
16086
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16091
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: p.color }),
|
|
16087
16092
|
onClick: () => onChange({ color: p.color, preset: p.key })
|
|
16088
16093
|
})),
|
|
16089
16094
|
{
|
|
16090
16095
|
id: CUSTOM_PRESET_KEY,
|
|
16091
16096
|
label: "Custom",
|
|
16092
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16097
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
|
|
16093
16098
|
onClick: () => onChange({ color: value, preset: void 0 })
|
|
16094
16099
|
}
|
|
16095
16100
|
]
|
|
16096
16101
|
}
|
|
16097
16102
|
];
|
|
16098
16103
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16099
|
-
|
|
16104
|
+
_chunkRKGOVTXZcjs.ActionsMenuDropdown,
|
|
16100
16105
|
{
|
|
16101
16106
|
groups,
|
|
16102
16107
|
align: "start",
|
|
@@ -16106,7 +16111,7 @@ function ColorPresetSelect({
|
|
|
16106
16111
|
{
|
|
16107
16112
|
disabled,
|
|
16108
16113
|
"aria-label": `Color: ${displayLabel}`,
|
|
16109
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16114
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: displayColor }),
|
|
16110
16115
|
selectedLabel: displayLabel,
|
|
16111
16116
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
16112
16117
|
className: _chunkPRPZBXWZcjs.cn.call(void 0, "group", className)
|
|
@@ -16127,11 +16132,11 @@ function HexInputs({ value, onChange }) {
|
|
|
16127
16132
|
}
|
|
16128
16133
|
const commit = () => {
|
|
16129
16134
|
const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
|
|
16130
|
-
if (
|
|
16135
|
+
if (_chunkRKGOVTXZcjs.HEX_PATTERN.test(candidate)) onChange(candidate);
|
|
16131
16136
|
else setDraft(value);
|
|
16132
16137
|
};
|
|
16133
16138
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16134
|
-
|
|
16139
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
16135
16140
|
{
|
|
16136
16141
|
type: "text",
|
|
16137
16142
|
value: draft,
|
|
@@ -16171,7 +16176,7 @@ function ChannelInput({
|
|
|
16171
16176
|
onCommit(Math.max(min, Math.min(max, parsed)));
|
|
16172
16177
|
};
|
|
16173
16178
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16174
|
-
|
|
16179
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
16175
16180
|
{
|
|
16176
16181
|
type: "text",
|
|
16177
16182
|
inputMode: "numeric",
|
|
@@ -16191,12 +16196,12 @@ function ChannelInput({
|
|
|
16191
16196
|
);
|
|
16192
16197
|
}
|
|
16193
16198
|
function RgbInputs({ value, onChange }) {
|
|
16194
|
-
const rgb = _nullishCoalesce(
|
|
16199
|
+
const rgb = _nullishCoalesce(_chunkRKGOVTXZcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
16195
16200
|
const update = (next) => {
|
|
16196
16201
|
const r = _nullishCoalesce(next.r, () => ( rgb.r));
|
|
16197
16202
|
const g = _nullishCoalesce(next.g, () => ( rgb.g));
|
|
16198
16203
|
const b = _nullishCoalesce(next.b, () => ( rgb.b));
|
|
16199
|
-
onChange(
|
|
16204
|
+
onChange(_chunkRKGOVTXZcjs.rgbToHex.call(void 0, r, g, b));
|
|
16200
16205
|
};
|
|
16201
16206
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16202
16207
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
|
|
@@ -16205,14 +16210,14 @@ function RgbInputs({ value, onChange }) {
|
|
|
16205
16210
|
] });
|
|
16206
16211
|
}
|
|
16207
16212
|
function HslInputs({ value, onChange }) {
|
|
16208
|
-
const rgb = _nullishCoalesce(
|
|
16209
|
-
const hsl =
|
|
16213
|
+
const rgb = _nullishCoalesce(_chunkRKGOVTXZcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
16214
|
+
const hsl = _chunkRKGOVTXZcjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
|
|
16210
16215
|
const update = (next) => {
|
|
16211
16216
|
const h = _nullishCoalesce(next.h, () => ( hsl.h));
|
|
16212
16217
|
const s = _nullishCoalesce(next.s, () => ( hsl.s));
|
|
16213
16218
|
const l = _nullishCoalesce(next.l, () => ( hsl.l));
|
|
16214
|
-
const out =
|
|
16215
|
-
onChange(
|
|
16219
|
+
const out = _chunkRKGOVTXZcjs.hslToRgb.call(void 0, h, s, l);
|
|
16220
|
+
onChange(_chunkRKGOVTXZcjs.rgbToHex.call(void 0, out.r, out.g, out.b));
|
|
16216
16221
|
};
|
|
16217
16222
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16218
16223
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
|
|
@@ -16238,7 +16243,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
16238
16243
|
{
|
|
16239
16244
|
disabled,
|
|
16240
16245
|
"aria-label": "Pick custom color",
|
|
16241
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16246
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: value }),
|
|
16242
16247
|
selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
|
|
16243
16248
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
16244
16249
|
className: _chunkPRPZBXWZcjs.cn.call(void 0, "group", className)
|
|
@@ -16254,7 +16259,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
16254
16259
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactcolorful.HexColorPicker, { color: value, onChange }),
|
|
16255
16260
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16256
16261
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16257
|
-
|
|
16262
|
+
_chunkRKGOVTXZcjs.ActionsMenuDropdown,
|
|
16258
16263
|
{
|
|
16259
16264
|
groups: formatGroups,
|
|
16260
16265
|
align: "start",
|
|
@@ -16299,82 +16304,152 @@ function TicketStatusConfigRow({
|
|
|
16299
16304
|
deleteDisabled,
|
|
16300
16305
|
deleteDisabledReason,
|
|
16301
16306
|
dragHandleProps,
|
|
16302
|
-
|
|
16303
|
-
|
|
16307
|
+
isDragging,
|
|
16308
|
+
moveButtons
|
|
16304
16309
|
}) {
|
|
16310
|
+
const dragAndDropEnabled = _chunkLEISUAHFcjs.useDragAndDropEnabled.call(void 0, );
|
|
16311
|
+
const nameInputId = _react.useId.call(void 0, );
|
|
16305
16312
|
const isSystem = variant === "system";
|
|
16306
16313
|
const isCustomColor = !isSystem && presetKey === void 0;
|
|
16307
16314
|
const previewColor = isSystem ? void 0 : color;
|
|
16308
16315
|
const showColorPicker = !isSystem && onColorChange && color !== void 0;
|
|
16309
16316
|
const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
|
|
16310
|
-
const
|
|
16317
|
+
const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
|
|
16318
|
+
const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16319
|
+
_chunkRKGOVTXZcjs.TicketStatusTag,
|
|
16320
|
+
{
|
|
16321
|
+
status: statusKey,
|
|
16322
|
+
label: name || " ",
|
|
16323
|
+
color: previewColor,
|
|
16324
|
+
variant: previewVariant,
|
|
16325
|
+
showIcon: isSystem,
|
|
16326
|
+
className: "max-w-full"
|
|
16327
|
+
}
|
|
16328
|
+
);
|
|
16311
16329
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16312
16330
|
"div",
|
|
16313
16331
|
{
|
|
16314
16332
|
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
16315
|
-
|
|
16333
|
+
// Transparent background — only the border outlines the row.
|
|
16334
|
+
"flex w-full items-start gap-3 rounded-md border border-ods-border md:gap-[var(--spacing-system-m)]",
|
|
16316
16335
|
"p-[var(--spacing-system-m)]",
|
|
16317
|
-
|
|
16336
|
+
// The dragged row travels over its siblings, so it needs an opaque back.
|
|
16337
|
+
isDragging && "bg-ods-bg opacity-70 shadow-lg"
|
|
16318
16338
|
),
|
|
16319
16339
|
children: [
|
|
16320
|
-
|
|
16321
|
-
"
|
|
16322
|
-
{
|
|
16323
|
-
type: "button",
|
|
16324
|
-
"aria-label": "Drag to reorder",
|
|
16325
|
-
className: "flex size-6 cursor-grab items-center justify-center rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-ods-focus active:cursor-grabbing",
|
|
16326
|
-
...dragHandleAttributes,
|
|
16327
|
-
...dragHandleProps,
|
|
16328
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.DraggerIcon, { size: 24 })
|
|
16329
|
-
}
|
|
16330
|
-
) }),
|
|
16331
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-wrap items-start gap-x-3 gap-y-4 md:flex-nowrap md:gap-[var(--spacing-system-m)]", children: [
|
|
16332
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xxs)]", colClass), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16333
|
-
_chunkQYQXAXVRcjs.Input,
|
|
16334
|
-
{
|
|
16335
|
-
value: name,
|
|
16336
|
-
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _385 => _385(e.target.value)]),
|
|
16337
|
-
disabled: isSystem,
|
|
16338
|
-
readOnly: isSystem,
|
|
16339
|
-
"aria-label": "Status name",
|
|
16340
|
-
maxLength: 50
|
|
16341
|
-
}
|
|
16342
|
-
) }),
|
|
16343
|
-
showColorPicker ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex", colClass), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ColorPresetSelect, { value: color, presetKey, onChange: onColorChange }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: _chunkPRPZBXWZcjs.cn.call(void 0, "hidden md:block", colClass) }),
|
|
16344
|
-
showColorPicker && isCustomColor ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex", colClass), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ColorPickerInput, { value: color, onChange: (next) => onColorChange({ color: next, preset: void 0 }) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: _chunkPRPZBXWZcjs.cn.call(void 0, "hidden md:block", colClass) }),
|
|
16345
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex h-11 items-center justify-start md:h-12 md:justify-end", colClass), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16346
|
-
_chunk75X6BRIDcjs.TicketStatusTag,
|
|
16347
|
-
{
|
|
16348
|
-
status: statusKey,
|
|
16349
|
-
label: name || " ",
|
|
16350
|
-
color: previewColor,
|
|
16351
|
-
variant: previewVariant,
|
|
16352
|
-
showIcon: isSystem,
|
|
16353
|
-
className: "max-w-full"
|
|
16354
|
-
}
|
|
16355
|
-
) })
|
|
16356
|
-
] }),
|
|
16357
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-11 w-12 shrink-0 items-center justify-center md:h-12", children: isSystem ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TouchFriendlyTooltip, { content: systemTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16358
|
-
"button",
|
|
16340
|
+
dragAndDropEnabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16341
|
+
"div",
|
|
16359
16342
|
{
|
|
16360
|
-
|
|
16361
|
-
|
|
16362
|
-
|
|
16363
|
-
|
|
16343
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
16344
|
+
"flex h-11 w-8 shrink-0 items-center justify-center text-ods-text-secondary md:h-12",
|
|
16345
|
+
fieldRowOffset
|
|
16346
|
+
),
|
|
16347
|
+
children: isSystem ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.DraggerIcon, { size: 24, "aria-hidden": true, className: "opacity-40" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16348
|
+
"button",
|
|
16349
|
+
{
|
|
16350
|
+
type: "button",
|
|
16351
|
+
"aria-label": "Drag to reorder",
|
|
16352
|
+
className: "flex size-6 cursor-grab items-center justify-center rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-ods-focus active:cursor-grabbing",
|
|
16353
|
+
...dragHandleProps,
|
|
16354
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.DraggerIcon, { size: 24 })
|
|
16355
|
+
}
|
|
16356
|
+
)
|
|
16364
16357
|
}
|
|
16365
|
-
)
|
|
16366
|
-
|
|
16358
|
+
),
|
|
16359
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16360
|
+
"div",
|
|
16367
16361
|
{
|
|
16368
|
-
|
|
16369
|
-
|
|
16370
|
-
|
|
16371
|
-
|
|
16372
|
-
|
|
16373
|
-
|
|
16374
|
-
|
|
16375
|
-
|
|
16362
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
16363
|
+
"min-w-0 flex-1 items-start gap-x-3 gap-y-[var(--spacing-system-m)] md:gap-x-[var(--spacing-system-m)]",
|
|
16364
|
+
isSystem ? "flex flex-wrap" : (
|
|
16365
|
+
// Mobile custom rows are a strict two-column grid, per the mock:
|
|
16366
|
+
// fields (name / color / hex, all one width) on the left, the
|
|
16367
|
+
// controls and the chip stacked in the right column. From md up
|
|
16368
|
+
// the same children flow as a wrapping flex row.
|
|
16369
|
+
"grid grid-cols-[minmax(0,1fr)_auto] md:flex md:flex-wrap"
|
|
16370
|
+
)
|
|
16371
|
+
),
|
|
16372
|
+
children: [
|
|
16373
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "order-1 flex min-w-0 grow basis-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
16374
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3QDJLLD2cjs.Label, { variant: "large", htmlFor: nameInputId, children: "Status Name" }),
|
|
16375
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16376
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
16377
|
+
{
|
|
16378
|
+
id: nameInputId,
|
|
16379
|
+
value: name,
|
|
16380
|
+
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _385 => _385(e.target.value)]),
|
|
16381
|
+
disabled: isSystem,
|
|
16382
|
+
readOnly: isSystem,
|
|
16383
|
+
maxLength: 50
|
|
16384
|
+
}
|
|
16385
|
+
)
|
|
16386
|
+
] }),
|
|
16387
|
+
showColorPicker ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "order-3 flex min-w-0 grow basis-full flex-col gap-[var(--spacing-system-xxs)] md:order-2 md:basis-0", children: [
|
|
16388
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3QDJLLD2cjs.Label, { variant: "large", children: "Color" }),
|
|
16389
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ColorPresetSelect, { value: color, presetKey, onChange: onColorChange }),
|
|
16390
|
+
isCustomColor && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-[var(--spacing-system-xxs)] flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ColorPickerInput, { value: color, onChange: (next) => onColorChange({ color: next, preset: void 0 }) }) })
|
|
16391
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "hidden min-w-0 grow basis-0 lg:order-2 lg:block" }),
|
|
16392
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "hidden min-w-0 grow basis-0 lg:order-3 lg:block" }),
|
|
16393
|
+
isSystem ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16394
|
+
"div",
|
|
16395
|
+
{
|
|
16396
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
16397
|
+
"order-2 flex h-11 min-w-0 grow basis-0 items-center justify-end md:h-12 lg:order-4",
|
|
16398
|
+
fieldRowOffset
|
|
16399
|
+
),
|
|
16400
|
+
children: chip
|
|
16401
|
+
}
|
|
16402
|
+
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16403
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16404
|
+
"div",
|
|
16405
|
+
{
|
|
16406
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
16407
|
+
"hidden h-12 min-w-0 grow basis-0 items-center justify-end lg:order-4 lg:flex",
|
|
16408
|
+
fieldRowOffset
|
|
16409
|
+
),
|
|
16410
|
+
children: chip
|
|
16411
|
+
}
|
|
16412
|
+
),
|
|
16413
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden min-w-0 basis-full items-center justify-end md:order-4 md:flex lg:hidden", children: chip }),
|
|
16414
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "order-4 flex h-11 min-w-0 items-center md:hidden", fieldRowOffset), children: chip })
|
|
16415
|
+
] }),
|
|
16416
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16417
|
+
"div",
|
|
16418
|
+
{
|
|
16419
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
16420
|
+
"flex h-11 shrink-0 items-center justify-end gap-[var(--spacing-system-s)] md:h-12 lg:order-5",
|
|
16421
|
+
isSystem ? "order-3" : "order-2 md:order-3",
|
|
16422
|
+
fieldRowOffset
|
|
16423
|
+
),
|
|
16424
|
+
children: [
|
|
16425
|
+
!isSystem && moveButtons,
|
|
16426
|
+
isSystem ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-11 justify-center md:w-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TouchFriendlyTooltip, { content: systemTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16427
|
+
"button",
|
|
16428
|
+
{
|
|
16429
|
+
type: "button",
|
|
16430
|
+
"aria-label": _nullishCoalesce(systemTooltip, () => ( "System status")),
|
|
16431
|
+
className: "flex size-6 items-center justify-center text-ods-text-secondary outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
16432
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.InfoCircleIcon, { size: 24 })
|
|
16433
|
+
}
|
|
16434
|
+
) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TouchFriendlyTooltip, { content: deleteDisabled ? deleteDisabledReason : void 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16435
|
+
_chunkYHNIPSG6cjs.Button,
|
|
16436
|
+
{
|
|
16437
|
+
type: "button",
|
|
16438
|
+
variant: "outline",
|
|
16439
|
+
size: "icon",
|
|
16440
|
+
"aria-label": "Delete status",
|
|
16441
|
+
disabled: deleteDisabled,
|
|
16442
|
+
onClick: deleteDisabled ? void 0 : onDelete,
|
|
16443
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0, "size-11 md:size-12", deleteDisabled && "pointer-events-none"),
|
|
16444
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.TrashIcon, { className: "text-ods-error" })
|
|
16445
|
+
}
|
|
16446
|
+
) }) })
|
|
16447
|
+
]
|
|
16448
|
+
}
|
|
16449
|
+
)
|
|
16450
|
+
]
|
|
16376
16451
|
}
|
|
16377
|
-
)
|
|
16452
|
+
)
|
|
16378
16453
|
]
|
|
16379
16454
|
}
|
|
16380
16455
|
);
|
|
@@ -16393,7 +16468,7 @@ function formatTestRunDuration(ms) {
|
|
|
16393
16468
|
var RESULT_COLUMN_MIN_WIDTH = 176;
|
|
16394
16469
|
var SKELETON_COLUMNS = 6;
|
|
16395
16470
|
function TestResultsSkeleton() {
|
|
16396
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16471
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
|
|
16397
16472
|
/* @__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}`)) }),
|
|
16398
16473
|
/* @__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}`)) }) })
|
|
16399
16474
|
] }) });
|
|
@@ -16428,13 +16503,13 @@ function TestResultsTable({ rows, loading }) {
|
|
|
16428
16503
|
if (loading) {
|
|
16429
16504
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
|
|
16430
16505
|
}
|
|
16431
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16506
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.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: [
|
|
16432
16507
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
|
|
16433
16508
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
|
|
16434
16509
|
] }) }) });
|
|
16435
16510
|
}
|
|
16436
16511
|
function TestRunErrorBanner({ error, className }) {
|
|
16437
|
-
const { copy } =
|
|
16512
|
+
const { copy } = _chunkLEISUAHFcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
|
|
16438
16513
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16439
16514
|
"div",
|
|
16440
16515
|
{
|
|
@@ -16488,7 +16563,7 @@ var TEST_RUN_STATUS_TAGS = {
|
|
|
16488
16563
|
function TestRunStatusStat({ status, className }) {
|
|
16489
16564
|
const tag = status === "idle" ? null : TEST_RUN_STATUS_TAGS[status];
|
|
16490
16565
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex min-w-0 flex-col items-start justify-center gap-[var(--spacing-system-xxs)]", className), children: [
|
|
16491
|
-
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16566
|
+
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.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: "-" }),
|
|
16492
16567
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: "Status" })
|
|
16493
16568
|
] });
|
|
16494
16569
|
}
|
|
@@ -16531,7 +16606,7 @@ function useTestRunState(campaign) {
|
|
|
16531
16606
|
const firstError = isFinished && campaign.errors.length > 0 ? campaign.errors[0].error : null;
|
|
16532
16607
|
const status = isActive ? "running" : hasRun && isFinished ? firstError ? "error" : "success" : "idle";
|
|
16533
16608
|
const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
|
|
16534
|
-
const startedLabel = showTiming && campaign.startedAt ?
|
|
16609
|
+
const startedLabel = showTiming && campaign.startedAt ? _chunkRKGOVTXZcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
|
|
16535
16610
|
const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
|
|
16536
16611
|
const displayRows = _react.useMemo.call(void 0,
|
|
16537
16612
|
() => campaign.results.map(
|
|
@@ -16570,7 +16645,7 @@ function TicketAttachmentsList({ attachments, className, size = "default" }) {
|
|
|
16570
16645
|
),
|
|
16571
16646
|
children: [
|
|
16572
16647
|
attachment.thumbnailSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16573
|
-
|
|
16648
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
16574
16649
|
{
|
|
16575
16650
|
src: attachment.thumbnailSrc,
|
|
16576
16651
|
alt: attachment.fileName,
|
|
@@ -16663,7 +16738,7 @@ function TicketNoteCard({ note, onEdit, onDelete, className }) {
|
|
|
16663
16738
|
};
|
|
16664
16739
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex items-start gap-4 rounded-[6px] p-3", "border border-ods-border bg-ods-card", className), children: [
|
|
16665
16740
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16666
|
-
|
|
16741
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
16667
16742
|
{
|
|
16668
16743
|
src: note.authorAvatar,
|
|
16669
16744
|
alt: note.authorName,
|
|
@@ -16674,7 +16749,7 @@ function TicketNoteCard({ note, onEdit, onDelete, className }) {
|
|
|
16674
16749
|
}
|
|
16675
16750
|
),
|
|
16676
16751
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1 overflow-hidden", children: isEditing ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
16677
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16752
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIKDC3R7Vcjs.Input, { value: editText, onChange: (e) => setEditText(e.target.value), onKeyDown: handleKeyDown, autoFocus: true }) }),
|
|
16678
16753
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16679
16754
|
"button",
|
|
16680
16755
|
{
|
|
@@ -16756,7 +16831,7 @@ function TicketNotesSection({
|
|
|
16756
16831
|
notes.map((note) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketNoteCard, { note, onEdit: onEditNote, onDelete: onDeleteNote }, note.id)),
|
|
16757
16832
|
onAddNote && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
16758
16833
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16759
|
-
|
|
16834
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
16760
16835
|
{
|
|
16761
16836
|
value: noteText,
|
|
16762
16837
|
onChange: (e) => setNoteText(e.target.value),
|
|
@@ -16839,7 +16914,7 @@ function TicketInfoSection({
|
|
|
16839
16914
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-2 items-center gap-4 border-b border-ods-border bg-ods-card px-4 py-3 lg:grid-cols-[1fr_1fr_1fr_auto]", children: [
|
|
16840
16915
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2", children: [
|
|
16841
16916
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16842
|
-
|
|
16917
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
16843
16918
|
{
|
|
16844
16919
|
src: _optionalChain([organization, 'optionalAccess', _386 => _386.imageSrc]),
|
|
16845
16920
|
alt: _optionalChain([organization, 'optionalAccess', _387 => _387.name]),
|
|
@@ -16869,7 +16944,7 @@ function TicketInfoSection({
|
|
|
16869
16944
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _390 => _390.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _391 => _391.icon]), onClick: _optionalChain([device, 'optionalAccess', _392 => _392.onClick]) }),
|
|
16870
16945
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
16871
16946
|
(status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16872
|
-
|
|
16947
|
+
_chunkRKGOVTXZcjs.TicketStatusTag,
|
|
16873
16948
|
{
|
|
16874
16949
|
status: _nullishCoalesce(status, () => ( "")),
|
|
16875
16950
|
label: statusLabel,
|
|
@@ -16908,9 +16983,9 @@ function TicketInfoSection({
|
|
|
16908
16983
|
expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16909
16984
|
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" }) }),
|
|
16910
16985
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
|
|
16911
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16986
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.SimpleMarkdownRenderer, { content: description }),
|
|
16912
16987
|
attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
|
|
16913
|
-
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,
|
|
16988
|
+
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, _chunkRKGOVTXZcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
|
|
16914
16989
|
(notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16915
16990
|
TicketNotesSection,
|
|
16916
16991
|
{
|
|
@@ -16933,7 +17008,7 @@ function renderTicketStatusOption(option, isSelected) {
|
|
|
16933
17008
|
const { label, color } = option;
|
|
16934
17009
|
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: [
|
|
16935
17010
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16936
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17011
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color }),
|
|
16937
17012
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TruncateText, { className: "text-inherit", children: label }) })
|
|
16938
17013
|
] }),
|
|
16939
17014
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
@@ -16943,7 +17018,7 @@ function renderTicketAssigneeOption(option, isSelected) {
|
|
|
16943
17018
|
const { label, imageUrl } = option;
|
|
16944
17019
|
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: [
|
|
16945
17020
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16946
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17021
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "round" }),
|
|
16947
17022
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TruncateText, { className: "text-inherit", children: label }) })
|
|
16948
17023
|
] }),
|
|
16949
17024
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
@@ -16978,9 +17053,9 @@ function TakeOverTicketModal({
|
|
|
16978
17053
|
if (!selectedStatusId || !assigneeId || isPending) return;
|
|
16979
17054
|
onConfirm({ statusId: selectedStatusId, assigneeId });
|
|
16980
17055
|
};
|
|
16981
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17056
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16982
17057
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16983
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17058
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: "Take Over Ticket" }) }),
|
|
16984
17059
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16985
17060
|
"The ticket ",
|
|
16986
17061
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16995,7 +17070,7 @@ function TakeOverTicketModal({
|
|
|
16995
17070
|
value: selectedStatusId,
|
|
16996
17071
|
onChange: setStatusId,
|
|
16997
17072
|
placeholder: "Select Status",
|
|
16998
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17073
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16999
17074
|
renderOption: renderTicketStatusOption
|
|
17000
17075
|
}
|
|
17001
17076
|
) }),
|
|
@@ -17009,7 +17084,7 @@ function TakeOverTicketModal({
|
|
|
17009
17084
|
placeholder: "Select Technician",
|
|
17010
17085
|
loading: assigneesLoading,
|
|
17011
17086
|
startAdornment: selectedAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17012
|
-
|
|
17087
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
17013
17088
|
{
|
|
17014
17089
|
src: selectedAssignee.imageUrl,
|
|
17015
17090
|
alt: selectedAssignee.label,
|
|
@@ -17022,7 +17097,7 @@ function TakeOverTicketModal({
|
|
|
17022
17097
|
}
|
|
17023
17098
|
) })
|
|
17024
17099
|
] }),
|
|
17025
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17100
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
|
|
17026
17101
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
17027
17102
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
17028
17103
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -17081,9 +17156,9 @@ function ReopenTicketModal({
|
|
|
17081
17156
|
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
17082
17157
|
});
|
|
17083
17158
|
};
|
|
17084
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17159
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
17085
17160
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
17086
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17161
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
17087
17162
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
17088
17163
|
"The ticket ",
|
|
17089
17164
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -17098,7 +17173,7 @@ function ReopenTicketModal({
|
|
|
17098
17173
|
value: selectedStatusId,
|
|
17099
17174
|
onChange: setStatusId,
|
|
17100
17175
|
placeholder: "Select Status",
|
|
17101
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17176
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
17102
17177
|
renderOption: renderTicketStatusOption
|
|
17103
17178
|
}
|
|
17104
17179
|
) }),
|
|
@@ -17112,7 +17187,7 @@ function ReopenTicketModal({
|
|
|
17112
17187
|
placeholder: "Select Technician",
|
|
17113
17188
|
loading: assigneesLoading,
|
|
17114
17189
|
startAdornment: selectedAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17115
|
-
|
|
17190
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
17116
17191
|
{
|
|
17117
17192
|
src: selectedAssignee.imageUrl,
|
|
17118
17193
|
alt: selectedAssignee.label,
|
|
@@ -17136,7 +17211,7 @@ function ReopenTicketModal({
|
|
|
17136
17211
|
disabled: isPending
|
|
17137
17212
|
}
|
|
17138
17213
|
) }),
|
|
17139
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17214
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
|
|
17140
17215
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
17141
17216
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
17142
17217
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -17184,9 +17259,9 @@ function ReopenTicketRequestModal({
|
|
|
17184
17259
|
...showHandoffOption ? { handoffToTechnician: handoff } : {}
|
|
17185
17260
|
});
|
|
17186
17261
|
};
|
|
17187
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17262
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
17188
17263
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
17189
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17264
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
17190
17265
|
/* @__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." }),
|
|
17191
17266
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17192
17267
|
Textarea,
|
|
@@ -17210,7 +17285,7 @@ function ReopenTicketRequestModal({
|
|
|
17210
17285
|
disabled: isPending
|
|
17211
17286
|
}
|
|
17212
17287
|
),
|
|
17213
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
17288
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.ModalFooter, { children: [
|
|
17214
17289
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
|
|
17215
17290
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYHNIPSG6cjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
|
|
17216
17291
|
] })
|
|
@@ -17364,7 +17439,7 @@ function ArrayEntryManager({
|
|
|
17364
17439
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1 space-y-2", children: [
|
|
17365
17440
|
renderLabel && renderLabel(item, index),
|
|
17366
17441
|
titleFieldKey ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17367
|
-
|
|
17442
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17368
17443
|
{
|
|
17369
17444
|
placeholder: _nullishCoalesce(titlePlaceholder, () => ( "Name")),
|
|
17370
17445
|
value: _nullishCoalesce(item[titleFieldKey], () => ( "")),
|
|
@@ -17374,7 +17449,7 @@ function ArrayEntryManager({
|
|
|
17374
17449
|
}
|
|
17375
17450
|
) : null,
|
|
17376
17451
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17377
|
-
|
|
17452
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17378
17453
|
{
|
|
17379
17454
|
placeholder,
|
|
17380
17455
|
value: item[fieldKey],
|
|
@@ -17595,10 +17670,10 @@ function CompleteAccountForm({
|
|
|
17595
17670
|
children
|
|
17596
17671
|
}) {
|
|
17597
17672
|
const fieldsDisabled = disabled || loading;
|
|
17598
|
-
const firstNameErr =
|
|
17599
|
-
const lastNameErr =
|
|
17600
|
-
const passwordErr =
|
|
17601
|
-
const confirmErr =
|
|
17673
|
+
const firstNameErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _398 => _398.firstName]), firstName);
|
|
17674
|
+
const lastNameErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _399 => _399.lastName]), lastName);
|
|
17675
|
+
const passwordErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _400 => _400.password]), password);
|
|
17676
|
+
const confirmErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _401 => _401.confirmPassword]), confirmPassword);
|
|
17602
17677
|
const handleKeyDown = (event) => {
|
|
17603
17678
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
17604
17679
|
onSubmit();
|
|
@@ -17633,7 +17708,7 @@ function CompleteAccountForm({
|
|
|
17633
17708
|
] })
|
|
17634
17709
|
] }),
|
|
17635
17710
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17636
|
-
|
|
17711
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17637
17712
|
{
|
|
17638
17713
|
label: "First Name",
|
|
17639
17714
|
placeholder: "Enter First Name",
|
|
@@ -17646,7 +17721,7 @@ function CompleteAccountForm({
|
|
|
17646
17721
|
}
|
|
17647
17722
|
),
|
|
17648
17723
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17649
|
-
|
|
17724
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17650
17725
|
{
|
|
17651
17726
|
label: "Last Name",
|
|
17652
17727
|
placeholder: "Enter Last Name",
|
|
@@ -17785,9 +17860,9 @@ function CreateOrganizationForm({
|
|
|
17785
17860
|
}) {
|
|
17786
17861
|
const hasSso = !!ssoProviders && ssoProviders.length > 0;
|
|
17787
17862
|
const fieldsDisabled = disabled || loading;
|
|
17788
|
-
const emailErr =
|
|
17789
|
-
const orgNameErr =
|
|
17790
|
-
const domainErr =
|
|
17863
|
+
const emailErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _402 => _402.email]), email);
|
|
17864
|
+
const orgNameErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _403 => _403.organizationName]), organizationName);
|
|
17865
|
+
const domainErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _404 => _404.domain]), domain);
|
|
17791
17866
|
const handleKeyDown = (event) => {
|
|
17792
17867
|
if (event.key === "Enter" && !fieldsDisabled) {
|
|
17793
17868
|
onSubmit();
|
|
@@ -17806,7 +17881,7 @@ function CreateOrganizationForm({
|
|
|
17806
17881
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: "Start your journey with OpenFrame." })
|
|
17807
17882
|
] }),
|
|
17808
17883
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17809
|
-
|
|
17884
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17810
17885
|
{
|
|
17811
17886
|
type: "email",
|
|
17812
17887
|
label: "Email",
|
|
@@ -17821,7 +17896,7 @@ function CreateOrganizationForm({
|
|
|
17821
17896
|
}
|
|
17822
17897
|
),
|
|
17823
17898
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17824
|
-
|
|
17899
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17825
17900
|
{
|
|
17826
17901
|
label: "Organization Name",
|
|
17827
17902
|
placeholder: "Your Company Name",
|
|
@@ -17835,7 +17910,7 @@ function CreateOrganizationForm({
|
|
|
17835
17910
|
),
|
|
17836
17911
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
17837
17912
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17838
|
-
|
|
17913
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17839
17914
|
{
|
|
17840
17915
|
label: "Domain",
|
|
17841
17916
|
placeholder: domainPlaceholder,
|
|
@@ -17955,7 +18030,7 @@ function LoginForm({
|
|
|
17955
18030
|
className
|
|
17956
18031
|
}) {
|
|
17957
18032
|
const fieldDisabled = disabled || loading;
|
|
17958
|
-
const emailErr =
|
|
18033
|
+
const emailErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _410 => _410.email]), email);
|
|
17959
18034
|
const handleKeyDown = (event) => {
|
|
17960
18035
|
if (event.key === "Enter" && !fieldDisabled) {
|
|
17961
18036
|
_optionalChain([onSubmit, 'optionalCall', _411 => _411()]);
|
|
@@ -17974,7 +18049,7 @@ function LoginForm({
|
|
|
17974
18049
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: "Enter your email to access your organization." })
|
|
17975
18050
|
] }),
|
|
17976
18051
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17977
|
-
|
|
18052
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
17978
18053
|
{
|
|
17979
18054
|
type: "email",
|
|
17980
18055
|
label: "Email",
|
|
@@ -18027,8 +18102,8 @@ function OpenFrameSsoLoginForm({
|
|
|
18027
18102
|
className
|
|
18028
18103
|
}) {
|
|
18029
18104
|
const fieldsDisabled = disabled || loading;
|
|
18030
|
-
const emailErr =
|
|
18031
|
-
const passwordErr =
|
|
18105
|
+
const emailErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _414 => _414.email]), email);
|
|
18106
|
+
const passwordErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _415 => _415.password]), password);
|
|
18032
18107
|
const handleKeyDown = (event) => {
|
|
18033
18108
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18034
18109
|
onSubmit();
|
|
@@ -18047,7 +18122,7 @@ function OpenFrameSsoLoginForm({
|
|
|
18047
18122
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18048
18123
|
] }),
|
|
18049
18124
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18050
|
-
|
|
18125
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
18051
18126
|
{
|
|
18052
18127
|
type: "email",
|
|
18053
18128
|
label: emailLabel,
|
|
@@ -18133,11 +18208,11 @@ function OpenFrameSsoSignUpForm({
|
|
|
18133
18208
|
className
|
|
18134
18209
|
}) {
|
|
18135
18210
|
const fieldsDisabled = disabled || loading;
|
|
18136
|
-
const emailErr =
|
|
18137
|
-
const firstNameErr =
|
|
18138
|
-
const lastNameErr =
|
|
18139
|
-
const passwordErr =
|
|
18140
|
-
const confirmErr =
|
|
18211
|
+
const emailErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _416 => _416.email]), email);
|
|
18212
|
+
const firstNameErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _417 => _417.firstName]), firstName);
|
|
18213
|
+
const lastNameErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _418 => _418.lastName]), lastName);
|
|
18214
|
+
const passwordErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _419 => _419.password]), password);
|
|
18215
|
+
const confirmErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _420 => _420.confirmPassword]), confirmPassword);
|
|
18141
18216
|
const handleKeyDown = (event) => {
|
|
18142
18217
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18143
18218
|
onSubmit();
|
|
@@ -18156,7 +18231,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18156
18231
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18157
18232
|
] }),
|
|
18158
18233
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18159
|
-
|
|
18234
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
18160
18235
|
{
|
|
18161
18236
|
type: "email",
|
|
18162
18237
|
label: emailLabel,
|
|
@@ -18170,7 +18245,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18170
18245
|
}
|
|
18171
18246
|
),
|
|
18172
18247
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18173
|
-
|
|
18248
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
18174
18249
|
{
|
|
18175
18250
|
label: "First Name",
|
|
18176
18251
|
placeholder: "Enter First Name",
|
|
@@ -18183,7 +18258,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18183
18258
|
}
|
|
18184
18259
|
),
|
|
18185
18260
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18186
|
-
|
|
18261
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
18187
18262
|
{
|
|
18188
18263
|
label: "Last Name",
|
|
18189
18264
|
placeholder: "Enter Last Name",
|
|
@@ -18278,8 +18353,8 @@ function PasswordResetForm({
|
|
|
18278
18353
|
className
|
|
18279
18354
|
}) {
|
|
18280
18355
|
const fieldsDisabled = disabled || loading;
|
|
18281
|
-
const passwordErr =
|
|
18282
|
-
const confirmErr =
|
|
18356
|
+
const passwordErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _421 => _421.password]), password);
|
|
18357
|
+
const confirmErr = _chunkLEISUAHFcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _422 => _422.confirmPassword]), confirmPassword);
|
|
18283
18358
|
const handleKeyDown = (event) => {
|
|
18284
18359
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18285
18360
|
onSubmit();
|
|
@@ -18298,7 +18373,7 @@ function PasswordResetForm({
|
|
|
18298
18373
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18299
18374
|
] }),
|
|
18300
18375
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18301
|
-
|
|
18376
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
18302
18377
|
{
|
|
18303
18378
|
type: "password",
|
|
18304
18379
|
label: newPasswordLabel,
|
|
@@ -18312,7 +18387,7 @@ function PasswordResetForm({
|
|
|
18312
18387
|
}
|
|
18313
18388
|
),
|
|
18314
18389
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18315
|
-
|
|
18390
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
18316
18391
|
{
|
|
18317
18392
|
type: "password",
|
|
18318
18393
|
label: confirmPasswordLabel,
|
|
@@ -18607,7 +18682,7 @@ function ChangelogManager({
|
|
|
18607
18682
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
18608
18683
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3QDJLLD2cjs.Label, { className: "text-ods-text-secondary", children: "Title *" }),
|
|
18609
18684
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18610
|
-
|
|
18685
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
18611
18686
|
{
|
|
18612
18687
|
placeholder: "e.g., New dark mode theme support",
|
|
18613
18688
|
value: entry.title,
|
|
@@ -18813,7 +18888,7 @@ function EntityTagBadges({ tags, basePath, max, className }) {
|
|
|
18813
18888
|
const label = (tag.name || "").toUpperCase();
|
|
18814
18889
|
if (basePath && tag.slug) {
|
|
18815
18890
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: `${basePath}?tags=${tag.slug}`, className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18816
|
-
|
|
18891
|
+
_chunkNNFQLTJ3cjs.StatusBadge,
|
|
18817
18892
|
{
|
|
18818
18893
|
text: label,
|
|
18819
18894
|
variant: "card",
|
|
@@ -18821,9 +18896,9 @@ function EntityTagBadges({ tags, basePath, max, className }) {
|
|
|
18821
18896
|
}
|
|
18822
18897
|
) }, key);
|
|
18823
18898
|
}
|
|
18824
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18899
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.StatusBadge, { text: label, variant: "card", className: BADGE_CLASS }, key);
|
|
18825
18900
|
}),
|
|
18826
|
-
overflow2 > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18901
|
+
overflow2 > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.StatusBadge, { text: `+${overflow2}`, variant: "card", className: `${BADGE_CLASS} text-ods-text-secondary` })
|
|
18827
18902
|
] });
|
|
18828
18903
|
}
|
|
18829
18904
|
|
|
@@ -18900,7 +18975,7 @@ var SectionButton = ({
|
|
|
18900
18975
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
18901
18976
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClasses, "whitespace-normal break-words text-h4"), children: section.title }),
|
|
18902
18977
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18903
|
-
|
|
18978
|
+
_chunkNNFQLTJ3cjs.StatusBadge,
|
|
18904
18979
|
{
|
|
18905
18980
|
text: section.badge.text,
|
|
18906
18981
|
variant: section.badge.variant || "button",
|
|
@@ -18919,7 +18994,7 @@ var SectionButton = ({
|
|
|
18919
18994
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-wrap items-start gap-2", children: [
|
|
18920
18995
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkPRPZBXWZcjs.cn.call(void 0, titleClasses, "text-h3"), style: { textAlign: "left" }, children: section.title }),
|
|
18921
18996
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18922
|
-
|
|
18997
|
+
_chunkNNFQLTJ3cjs.StatusBadge,
|
|
18923
18998
|
{
|
|
18924
18999
|
text: section.badge.text,
|
|
18925
19000
|
variant: section.badge.variant || "button",
|
|
@@ -19207,7 +19282,7 @@ function UnifiedUI({ state, handlers, config, iframeRef }) {
|
|
|
19207
19282
|
sandbox: "allow-scripts allow-same-origin allow-popups allow-presentation",
|
|
19208
19283
|
title: config.title,
|
|
19209
19284
|
loading: "eager",
|
|
19210
|
-
...
|
|
19285
|
+
..._chunkRKGOVTXZcjs.fetchPriorityProp.call(void 0, "high")
|
|
19211
19286
|
},
|
|
19212
19287
|
iframeKey
|
|
19213
19288
|
),
|
|
@@ -19631,7 +19706,7 @@ var FiltersDropdown = ({
|
|
|
19631
19706
|
window.addEventListener("resize", calculateOptimalPlacement);
|
|
19632
19707
|
return () => window.removeEventListener("resize", calculateOptimalPlacement);
|
|
19633
19708
|
}, [isOpen, isMobile, placement]);
|
|
19634
|
-
|
|
19709
|
+
_chunkZI27ALYXcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
19635
19710
|
const dropdown = dropdownRef.current;
|
|
19636
19711
|
if (!dropdown) return;
|
|
19637
19712
|
if (!isMobile) {
|
|
@@ -20033,7 +20108,7 @@ function MediaGalleryManager({
|
|
|
20033
20108
|
(mediaItem, index) => {
|
|
20034
20109
|
const isDeleting = deletingIndex === index;
|
|
20035
20110
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20036
|
-
|
|
20111
|
+
_chunkNNFQLTJ3cjs.Card,
|
|
20037
20112
|
{
|
|
20038
20113
|
className: "group relative border-ods-border transition-colors hover:border-ods-accent/30",
|
|
20039
20114
|
draggable: true,
|
|
@@ -20057,7 +20132,7 @@ function MediaGalleryManager({
|
|
|
20057
20132
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: mediaItem.media_type === "video" || mediaItem.media_type === "demo" ? (
|
|
20058
20133
|
// <Video> SSOT (MuxPlayer) — plays Mux HLS + MP4 alike;
|
|
20059
20134
|
// fit="cover" crops to the aspect-video cell.
|
|
20060
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20135
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: mediaItem.media_url, fit: "cover", className: "h-full w-full" })
|
|
20061
20136
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20062
20137
|
_chunkWLSFBRT5cjs.next_image_default,
|
|
20063
20138
|
{
|
|
@@ -20506,7 +20581,7 @@ function PlatformFilterComponent({
|
|
|
20506
20581
|
variant: selectedPlatform === platform.value ? "accent" : "outline",
|
|
20507
20582
|
size,
|
|
20508
20583
|
onClick: () => onPlatformChange(platform.value),
|
|
20509
|
-
leftIcon: showIcons ?
|
|
20584
|
+
leftIcon: showIcons ? _chunkLEISUAHFcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
|
|
20510
20585
|
className: "text-h3",
|
|
20511
20586
|
children: platform.label
|
|
20512
20587
|
},
|
|
@@ -20614,9 +20689,9 @@ function PushButtonSelector({
|
|
|
20614
20689
|
option.id
|
|
20615
20690
|
);
|
|
20616
20691
|
if (option.disabled && option.disabledReason) {
|
|
20617
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20618
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20619
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20692
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { children: [
|
|
20693
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, children: optionEl }),
|
|
20694
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
|
|
20620
20695
|
] }, option.id);
|
|
20621
20696
|
}
|
|
20622
20697
|
return optionEl;
|
|
@@ -20653,7 +20728,7 @@ function PushButtonSelector({
|
|
|
20653
20728
|
ungroupedOptions.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-2", children: ungroupedOptions.map(renderOption) })
|
|
20654
20729
|
] });
|
|
20655
20730
|
};
|
|
20656
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20731
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
|
|
20657
20732
|
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h5", children: title }),
|
|
20658
20733
|
renderOptionsContent(),
|
|
20659
20734
|
selectionSummary && validSelectedIds.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rounded-lg border border-ods-success bg-ods-success-secondary p-4", children: [
|
|
@@ -20816,7 +20891,7 @@ function ReleaseMediaManager({ media, onChange, onUpload, className = "" }) {
|
|
|
20816
20891
|
item.media_url && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video bg-ods-bg", children: item.media_type === "video" || item.media_type === "demo" ? (
|
|
20817
20892
|
// <Video> SSOT (MuxPlayer) — plays Mux HLS + MP4 alike;
|
|
20818
20893
|
// fit="cover" crops to the aspect-video cell.
|
|
20819
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20894
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
|
|
20820
20895
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20821
20896
|
_chunkWLSFBRT5cjs.next_image_default,
|
|
20822
20897
|
{
|
|
@@ -20853,7 +20928,7 @@ function ReleaseMediaManager({ media, onChange, onUpload, className = "" }) {
|
|
|
20853
20928
|
)
|
|
20854
20929
|
] }),
|
|
20855
20930
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20856
|
-
|
|
20931
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
20857
20932
|
{
|
|
20858
20933
|
placeholder: "Title (optional)",
|
|
20859
20934
|
value: item.title,
|
|
@@ -20949,7 +21024,7 @@ var SelectButton = _react2.default.forwardRef(
|
|
|
20949
21024
|
}
|
|
20950
21025
|
)
|
|
20951
21026
|
] }),
|
|
20952
|
-
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21027
|
+
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: tagVariant, className: "shrink-0", label: tag }),
|
|
20953
21028
|
selected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.CheckCircleIcon, { className: "size-4 shrink-0 text-ods-accent md:size-6" })
|
|
20954
21029
|
]
|
|
20955
21030
|
}
|
|
@@ -21084,7 +21159,7 @@ function SEOEditorPreview({
|
|
|
21084
21159
|
}
|
|
21085
21160
|
),
|
|
21086
21161
|
children: (f) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21087
|
-
|
|
21162
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
21088
21163
|
{
|
|
21089
21164
|
...f,
|
|
21090
21165
|
value: seoTitle || "",
|
|
@@ -21117,7 +21192,7 @@ function SEOEditorPreview({
|
|
|
21117
21192
|
)
|
|
21118
21193
|
] }) : void 0,
|
|
21119
21194
|
children: (f) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21120
|
-
|
|
21195
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
21121
21196
|
{
|
|
21122
21197
|
...f,
|
|
21123
21198
|
value: seoKeywords || "",
|
|
@@ -21346,7 +21421,7 @@ function SocialLinksManager({
|
|
|
21346
21421
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectContent, { children: platforms.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectItem, { value: p.name, children: p.display_name }, p.name)) })
|
|
21347
21422
|
] }) }),
|
|
21348
21423
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21349
|
-
|
|
21424
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
21350
21425
|
{
|
|
21351
21426
|
placeholder: _optionalChain([platform, 'optionalAccess', _476 => _476.placeholder]) || "Profile URL",
|
|
21352
21427
|
value: link.url,
|
|
@@ -21461,7 +21536,7 @@ var StartWithOpenFrameButton = _react.forwardRef.call(void 0,
|
|
|
21461
21536
|
className: _chunkPRPZBXWZcjs.cn.call(void 0, modeClassName, className),
|
|
21462
21537
|
style: customStyle,
|
|
21463
21538
|
leftIcon: !loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63QUMV72cjs.OpenFrameLogo, { className: "h-5 w-5", lowerPathColor: iconLowerPath, upperPathColor: iconUpperPath }) : void 0,
|
|
21464
|
-
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21539
|
+
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.StatusBadge, { text: "Beta", variant: "button", colorScheme: "yellow" }),
|
|
21465
21540
|
children
|
|
21466
21541
|
}
|
|
21467
21542
|
);
|
|
@@ -21731,11 +21806,11 @@ function WarningBlock({ title, icon = DEFAULT_ICON, children, className }) {
|
|
|
21731
21806
|
|
|
21732
21807
|
function VideoBitesDisplay({
|
|
21733
21808
|
bites,
|
|
21734
|
-
title =
|
|
21809
|
+
title = _chunkNNFQLTJ3cjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
21735
21810
|
filterPublished = true,
|
|
21736
21811
|
showTitle = true
|
|
21737
21812
|
}) {
|
|
21738
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21813
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
|
|
21739
21814
|
}
|
|
21740
21815
|
|
|
21741
21816
|
// src/components/features/walkthrough-video.tsx
|
|
@@ -21804,7 +21879,7 @@ function WalkthroughVideo({
|
|
|
21804
21879
|
if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
|
|
21805
21880
|
};
|
|
21806
21881
|
}, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId]);
|
|
21807
|
-
const hydrated =
|
|
21882
|
+
const hydrated = _chunkRKGOVTXZcjs.useIsHydrated.call(void 0, );
|
|
21808
21883
|
const previewSuppressed = _react.useMemo.call(void 0, () => {
|
|
21809
21884
|
if (!hydrated) return false;
|
|
21810
21885
|
try {
|
|
@@ -22201,7 +22276,7 @@ function WalkthroughVideo({
|
|
|
22201
22276
|
},
|
|
22202
22277
|
children: [
|
|
22203
22278
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22204
|
-
|
|
22279
|
+
_chunkRKGOVTXZcjs.VideoHoverPreviewSurface,
|
|
22205
22280
|
{
|
|
22206
22281
|
url: video.mainVideoUrl || "",
|
|
22207
22282
|
posterUrl: video.posterUrl,
|
|
@@ -22224,7 +22299,7 @@ function WalkthroughVideo({
|
|
|
22224
22299
|
`card-${embedUrlKey}`
|
|
22225
22300
|
) }),
|
|
22226
22301
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22227
|
-
|
|
22302
|
+
_chunkRKGOVTXZcjs.CardHitLayer,
|
|
22228
22303
|
{
|
|
22229
22304
|
label: video.title ? `${label}: ${video.title}` : label,
|
|
22230
22305
|
onPointerDown: pausePreviewNow,
|
|
@@ -22233,7 +22308,7 @@ function WalkthroughVideo({
|
|
|
22233
22308
|
}
|
|
22234
22309
|
),
|
|
22235
22310
|
/* @__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: [
|
|
22236
|
-
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22311
|
+
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.SquareAvatar, { src: presenterAvatarSrc, alt: "", sizePx: 20, variant: "round", className: "shrink-0 border-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoPlayBadge, { size: "sm", className: "h-5 w-5 shrink-0" }),
|
|
22237
22312
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: summaryTitle || label })
|
|
22238
22313
|
] }),
|
|
22239
22314
|
showBigUnmute && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22246,7 +22321,7 @@ function WalkthroughVideo({
|
|
|
22246
22321
|
onPointerDown: (e) => e.stopPropagation(),
|
|
22247
22322
|
onClick: onUnmuteOrPlay,
|
|
22248
22323
|
className: "absolute inset-0 z-30 m-auto hidden sm:inline-flex",
|
|
22249
|
-
children: controlIsPlay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22324
|
+
children: controlIsPlay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoPlayBadge, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.VideoUnmuteGlyph, {})
|
|
22250
22325
|
}
|
|
22251
22326
|
),
|
|
22252
22327
|
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: [
|
|
@@ -22339,7 +22414,7 @@ function WalkthroughVideo({
|
|
|
22339
22414
|
children: [
|
|
22340
22415
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
|
|
22341
22416
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22342
|
-
|
|
22417
|
+
_chunkRKGOVTXZcjs.Video,
|
|
22343
22418
|
{
|
|
22344
22419
|
kind: video.youtubeUrl ? "youtube" : "file",
|
|
22345
22420
|
url: video.youtubeUrl || video.mainVideoUrl,
|
|
@@ -22390,7 +22465,7 @@ function InlineWalkthroughVideo(props) {
|
|
|
22390
22465
|
var _reactquery = require('@tanstack/react-query');
|
|
22391
22466
|
function useWalkthroughVideo(opts) {
|
|
22392
22467
|
const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
|
|
22393
|
-
const captions =
|
|
22468
|
+
const captions = _chunkRKGOVTXZcjs.useCaptions.call(void 0, );
|
|
22394
22469
|
const query = _reactquery.useQuery.call(void 0, {
|
|
22395
22470
|
queryKey: ["walkthrough-video", endpoint],
|
|
22396
22471
|
enabled,
|
|
@@ -22527,7 +22602,7 @@ function VideoSourceSelector({
|
|
|
22527
22602
|
videoSourceType === "youtube" && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
22528
22603
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3QDJLLD2cjs.Label, { children: youtubeLabel }),
|
|
22529
22604
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22530
|
-
|
|
22605
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
22531
22606
|
{
|
|
22532
22607
|
value: youtubeUrl,
|
|
22533
22608
|
onChange: (e) => onYoutubeUrlChange(e.target.value),
|
|
@@ -22588,7 +22663,7 @@ function VideoSourceSelector({
|
|
|
22588
22663
|
}
|
|
22589
22664
|
function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
|
|
22590
22665
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
|
|
22591
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22666
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: videoUrl }) }),
|
|
22592
22667
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22593
22668
|
"button",
|
|
22594
22669
|
{
|
|
@@ -23112,7 +23187,7 @@ function HighlightVideoSection({
|
|
|
23112
23187
|
// Default simple preview — the <Video> SSOT (MuxPlayer) plays
|
|
23113
23188
|
// MP4 and Mux HLS alike; aspect-video box reserves the height.
|
|
23114
23189
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
|
|
23115
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23190
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
|
|
23116
23191
|
onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23117
23192
|
"button",
|
|
23118
23193
|
{
|
|
@@ -23822,7 +23897,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
23822
23897
|
if (level) onPermissionChange(categoryId, policy.id, level);
|
|
23823
23898
|
};
|
|
23824
23899
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start 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 md:items-center", children: [
|
|
23825
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23900
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZI27ALYXcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
|
|
23826
23901
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
23827
23902
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-primary text-h4", title: policy.name, children: policy.name }),
|
|
23828
23903
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "break-all text-ods-text-secondary text-h6", children: policy.commandPattern }),
|
|
@@ -23848,7 +23923,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
23848
23923
|
] });
|
|
23849
23924
|
};
|
|
23850
23925
|
var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
|
|
23851
|
-
const { innerRef, containerStyle } =
|
|
23926
|
+
const { innerRef, containerStyle } = _chunkRKGOVTXZcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
|
|
23852
23927
|
const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
|
|
23853
23928
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23854
23929
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -24013,10 +24088,10 @@ function WaitlistForm({
|
|
|
24013
24088
|
const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
|
|
24014
24089
|
const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
|
|
24015
24090
|
const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
|
|
24016
|
-
const { toast } =
|
|
24017
|
-
const { honeypotInputProps, getSignals, resetSignals } =
|
|
24091
|
+
const { toast } = _chunkLEISUAHFcjs.useToast.call(void 0, );
|
|
24092
|
+
const { honeypotInputProps, getSignals, resetSignals } = _chunkLEISUAHFcjs.useHumanitySignals.call(void 0, );
|
|
24018
24093
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
24019
|
-
const isClient =
|
|
24094
|
+
const isClient = _chunkRKGOVTXZcjs.useIsHydrated.call(void 0, );
|
|
24020
24095
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
24021
24096
|
const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
|
|
24022
24097
|
const isMailDomainGeneric = hasGenericEmailDomain(email);
|
|
@@ -24101,7 +24176,7 @@ function WaitlistForm({
|
|
|
24101
24176
|
children: [
|
|
24102
24177
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HoneypotField, { ...honeypotInputProps }),
|
|
24103
24178
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24104
|
-
|
|
24179
|
+
_chunkIKDC3R7Vcjs.Input,
|
|
24105
24180
|
{
|
|
24106
24181
|
type: "email",
|
|
24107
24182
|
value: email,
|
|
@@ -24820,7 +24895,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
24820
24895
|
"data-state": open ? "open" : "closed",
|
|
24821
24896
|
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
24822
24897
|
"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",
|
|
24823
|
-
|
|
24898
|
+
_chunkRKGOVTXZcjs.OVERLAY_BACKDROP_CLASS,
|
|
24824
24899
|
// Persist mode only: hold the fade-out's final (transparent) frame
|
|
24825
24900
|
// so the backdrop doesn't snap back to opacity 1 and dim the whole
|
|
24826
24901
|
// content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
|
|
@@ -24896,11 +24971,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
24896
24971
|
}
|
|
24897
24972
|
);
|
|
24898
24973
|
AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
|
|
24899
|
-
var AppLayoutDrawerHeader =
|
|
24900
|
-
var AppLayoutDrawerTitle =
|
|
24901
|
-
var AppLayoutDrawerDescription =
|
|
24902
|
-
var AppLayoutDrawerBody =
|
|
24903
|
-
var AppLayoutDrawerFooter =
|
|
24974
|
+
var AppLayoutDrawerHeader = _chunkRKGOVTXZcjs.DrawerHeader;
|
|
24975
|
+
var AppLayoutDrawerTitle = _chunkRKGOVTXZcjs.DrawerTitle;
|
|
24976
|
+
var AppLayoutDrawerDescription = _chunkRKGOVTXZcjs.DrawerDescription;
|
|
24977
|
+
var AppLayoutDrawerBody = _chunkRKGOVTXZcjs.DrawerBody;
|
|
24978
|
+
var AppLayoutDrawerFooter = _chunkRKGOVTXZcjs.DrawerFooter;
|
|
24904
24979
|
|
|
24905
24980
|
// src/components/features/notifications/notification-tile.tsx
|
|
24906
24981
|
|
|
@@ -24986,9 +25061,9 @@ function NotificationTile({
|
|
|
24986
25061
|
height: 16,
|
|
24987
25062
|
unoptimized: true
|
|
24988
25063
|
}
|
|
24989
|
-
) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "size-1.5 rounded-full",
|
|
25064
|
+
) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkLEISUAHFcjs.dotColorByVariant[accentVariant]) }))) }),
|
|
24990
25065
|
type ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkPRPZBXWZcjs.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" }),
|
|
24991
|
-
!isLive && createdAtIso ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "time", { dateTime: createdAtIso, className: "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", children:
|
|
25066
|
+
!isLive && createdAtIso ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "time", { dateTime: createdAtIso, className: "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", children: _chunkRKGOVTXZcjs.formatTicketRelativeTime.call(void 0, createdAtIso) }) : null,
|
|
24992
25067
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
|
|
24993
25068
|
{
|
|
24994
25069
|
active: isLive,
|
|
@@ -25033,7 +25108,7 @@ function NotificationTile({
|
|
|
25033
25108
|
"div",
|
|
25034
25109
|
{
|
|
25035
25110
|
"aria-hidden": true,
|
|
25036
|
-
className: _chunkPRPZBXWZcjs.cn.call(void 0, "absolute inset-x-0 -bottom-px h-1 origin-left",
|
|
25111
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0, "absolute inset-x-0 -bottom-px h-1 origin-left", _chunkLEISUAHFcjs.progressColorByVariant[accentVariant]),
|
|
25037
25112
|
style: {
|
|
25038
25113
|
animation: `toast-progress ${liveDurationMs}ms linear forwards`,
|
|
25039
25114
|
animationDelay: `-${initialElapsed}ms`
|
|
@@ -25085,7 +25160,7 @@ function NotificationDrawer({
|
|
|
25085
25160
|
const unreadNotifications = notifications.filter((n) => !n.read);
|
|
25086
25161
|
const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
25087
25162
|
/* @__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,
|
|
25088
|
-
|
|
25163
|
+
_chunkRKGOVTXZcjs.DrawerTitle,
|
|
25089
25164
|
{
|
|
25090
25165
|
hideClose: true,
|
|
25091
25166
|
className: "truncate",
|
|
@@ -25144,8 +25219,8 @@ function NotificationDrawer({
|
|
|
25144
25219
|
}
|
|
25145
25220
|
) });
|
|
25146
25221
|
}
|
|
25147
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25148
|
-
|
|
25222
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25223
|
+
_chunkRKGOVTXZcjs.DrawerContent,
|
|
25149
25224
|
{
|
|
25150
25225
|
side: "right",
|
|
25151
25226
|
"aria-describedby": void 0,
|
|
@@ -25250,7 +25325,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
|
|
|
25250
25325
|
] });
|
|
25251
25326
|
}
|
|
25252
25327
|
function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
25253
|
-
const { supported, permission, request } =
|
|
25328
|
+
const { supported, permission, request } = _chunkLEISUAHFcjs.useNotificationPermission.call(void 0, );
|
|
25254
25329
|
if (!supported) return null;
|
|
25255
25330
|
const blocked = permission === "denied";
|
|
25256
25331
|
const handleChange = async (value) => {
|
|
@@ -25420,13 +25495,13 @@ function getApprovalMeta(notification) {
|
|
|
25420
25495
|
function resolutionToStatus(resolution) {
|
|
25421
25496
|
switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
|
|
25422
25497
|
case "APPROVED":
|
|
25423
|
-
return
|
|
25498
|
+
return _chunkRKGOVTXZcjs.APPROVAL_STATUS.APPROVED;
|
|
25424
25499
|
case "REJECTED":
|
|
25425
|
-
return
|
|
25500
|
+
return _chunkRKGOVTXZcjs.APPROVAL_STATUS.REJECTED;
|
|
25426
25501
|
case "CANCELLED":
|
|
25427
|
-
return
|
|
25502
|
+
return _chunkRKGOVTXZcjs.APPROVAL_STATUS.CANCELLED;
|
|
25428
25503
|
default:
|
|
25429
|
-
return
|
|
25504
|
+
return _chunkRKGOVTXZcjs.APPROVAL_STATUS.PENDING;
|
|
25430
25505
|
}
|
|
25431
25506
|
}
|
|
25432
25507
|
function approvalMetaToBatchData(approval) {
|
|
@@ -25466,7 +25541,7 @@ function ApprovalRequestNotificationTile({
|
|
|
25466
25541
|
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _580 => _580.resolution]));
|
|
25467
25542
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
25468
25543
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
25469
|
-
const { innerRef, containerStyle } =
|
|
25544
|
+
const { innerRef, containerStyle } = _chunkRKGOVTXZcjs.useCollapsible.call(void 0, { expanded });
|
|
25470
25545
|
if (!approval || !batchData) return null;
|
|
25471
25546
|
const tileNotification = {
|
|
25472
25547
|
...notification,
|
|
@@ -25519,7 +25594,7 @@ function ApprovalRequestNotificationTile({
|
|
|
25519
25594
|
}
|
|
25520
25595
|
)
|
|
25521
25596
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
25522
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25597
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ApprovalStatusTag, { status }),
|
|
25523
25598
|
approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
|
|
25524
25599
|
"by ",
|
|
25525
25600
|
approval.resolvedByName
|
|
@@ -25537,12 +25612,12 @@ function ApprovalRequestNotificationTile({
|
|
|
25537
25612
|
"aria-expanded": expanded,
|
|
25538
25613
|
"aria-label": toggleLabel,
|
|
25539
25614
|
className: "ml-auto w-6 shrink-0 px-0 md:w-8",
|
|
25540
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25615
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.ExpandChevron, { expanded })
|
|
25541
25616
|
}
|
|
25542
25617
|
)
|
|
25543
25618
|
] }),
|
|
25544
25619
|
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,
|
|
25545
|
-
|
|
25620
|
+
_chunkRKGOVTXZcjs.ApprovalBatchMessage,
|
|
25546
25621
|
{
|
|
25547
25622
|
data: batchData,
|
|
25548
25623
|
showExecutionStatus: false,
|
|
@@ -25610,7 +25685,7 @@ function renderCustomerOption(option, isSelected) {
|
|
|
25610
25685
|
const { label, imageUrl } = option;
|
|
25611
25686
|
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: [
|
|
25612
25687
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
25613
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25688
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNFQLTJ3cjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "square" }),
|
|
25614
25689
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", title: label, children: label })
|
|
25615
25690
|
] }),
|
|
25616
25691
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
@@ -25694,7 +25769,7 @@ function TimeTrackerPanel({
|
|
|
25694
25769
|
}));
|
|
25695
25770
|
const selectedCustomer = customerAutocompleteOptions.find((o) => o.value === selectedCustomerId);
|
|
25696
25771
|
const customerStartAdornment = selectedCustomer ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25697
|
-
|
|
25772
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
25698
25773
|
{
|
|
25699
25774
|
src: selectedCustomer.imageUrl,
|
|
25700
25775
|
alt: selectedCustomer.label,
|
|
@@ -25873,7 +25948,7 @@ var STATUS_TAG_SKIN = "gap-[var(--spacing-system-xs)] font-mono font-medium uppe
|
|
|
25873
25948
|
function StatusTag({ status }) {
|
|
25874
25949
|
if (status === "tracking") {
|
|
25875
25950
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25876
|
-
|
|
25951
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
25877
25952
|
{
|
|
25878
25953
|
variant: "success",
|
|
25879
25954
|
className: STATUS_TAG_SKIN,
|
|
@@ -25883,9 +25958,9 @@ function StatusTag({ status }) {
|
|
|
25883
25958
|
);
|
|
25884
25959
|
}
|
|
25885
25960
|
if (status === "paused") {
|
|
25886
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25961
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "warning", className: STATUS_TAG_SKIN, icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.PauseIcon, { className: "h-4 w-4" }), label: "Paused" });
|
|
25887
25962
|
}
|
|
25888
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25963
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "grey", className: STATUS_TAG_SKIN, label: "Ready to Track" });
|
|
25889
25964
|
}
|
|
25890
25965
|
function LastEntryRow({ entry, onClick }) {
|
|
25891
25966
|
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: [
|
|
@@ -26054,7 +26129,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
26054
26129
|
"data-state": isOpen ? "open" : "closed",
|
|
26055
26130
|
className: _chunkPRPZBXWZcjs.cn.call(void 0,
|
|
26056
26131
|
layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
|
|
26057
|
-
|
|
26132
|
+
_chunkRKGOVTXZcjs.OVERLAY_BACKDROP_CLASS,
|
|
26058
26133
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0",
|
|
26059
26134
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
|
|
26060
26135
|
)
|
|
@@ -26208,7 +26283,7 @@ function BoardColumnHeader({
|
|
|
26208
26283
|
}) {
|
|
26209
26284
|
const count = _nullishCoalesce(column.total, () => ( column.tickets.length));
|
|
26210
26285
|
const tagStatus = _nullishCoalesce(column.statusKey, () => ( column.id));
|
|
26211
|
-
const useStatusVariant =
|
|
26286
|
+
const useStatusVariant = _chunkRKGOVTXZcjs.resolveTicketStatus.call(void 0, tagStatus) !== null;
|
|
26212
26287
|
if (collapsed) {
|
|
26213
26288
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
26214
26289
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -26223,7 +26298,7 @@ function BoardColumnHeader({
|
|
|
26223
26298
|
}
|
|
26224
26299
|
),
|
|
26225
26300
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26226
|
-
|
|
26301
|
+
_chunkRKGOVTXZcjs.TicketStatusTag,
|
|
26227
26302
|
{
|
|
26228
26303
|
status: tagStatus,
|
|
26229
26304
|
label: column.label,
|
|
@@ -26236,7 +26311,7 @@ function BoardColumnHeader({
|
|
|
26236
26311
|
}
|
|
26237
26312
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
26238
26313
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
26239
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26314
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TicketStatusTag, { status: tagStatus, label: column.label, color: useStatusVariant ? void 0 : column.color }),
|
|
26240
26315
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h5", style: useStatusVariant ? void 0 : { color: column.color }, children: count })
|
|
26241
26316
|
] }),
|
|
26242
26317
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
@@ -26316,7 +26391,7 @@ function cardPositions(root) {
|
|
|
26316
26391
|
}
|
|
26317
26392
|
function useLaneScrollAnchor(scrollRef, tickets) {
|
|
26318
26393
|
const positionsRef = _react.useRef.call(void 0, []);
|
|
26319
|
-
|
|
26394
|
+
_chunkZI27ALYXcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
26320
26395
|
const root = scrollRef.current;
|
|
26321
26396
|
if (!root) return;
|
|
26322
26397
|
const previous = positionsRef.current;
|
|
@@ -26387,7 +26462,7 @@ function holdMoveDragEffect(element) {
|
|
|
26387
26462
|
|
|
26388
26463
|
function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
|
|
26389
26464
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
26390
|
-
const { innerRef, containerStyle } =
|
|
26465
|
+
const { innerRef, containerStyle } = _chunkRKGOVTXZcjs.useCollapsible.call(void 0, { expanded });
|
|
26391
26466
|
const isAdmin = pendingApproval.approvalType === "ADMIN";
|
|
26392
26467
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex flex-col", children: [
|
|
26393
26468
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -26416,7 +26491,7 @@ function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
|
|
|
26416
26491
|
}
|
|
26417
26492
|
),
|
|
26418
26493
|
/* @__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,
|
|
26419
|
-
|
|
26494
|
+
_chunkRKGOVTXZcjs.ApprovalBatchMessage,
|
|
26420
26495
|
{
|
|
26421
26496
|
className: "mb-0",
|
|
26422
26497
|
data: {
|
|
@@ -26488,7 +26563,7 @@ var ACTIVITY_DEFAULT_LABEL = {
|
|
|
26488
26563
|
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";
|
|
26489
26564
|
function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onReject }) {
|
|
26490
26565
|
const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
|
|
26491
|
-
const newMessageTextColor = columnColor ?
|
|
26566
|
+
const newMessageTextColor = columnColor ? _chunkRKGOVTXZcjs.getReadableTextColor.call(void 0, columnColor) : void 0;
|
|
26492
26567
|
const showDeviceRow = !!(_optionalChain([ticket, 'access', _616 => _616.deviceHostnames, 'optionalAccess', _617 => _617.length]) || ticket.organizationName);
|
|
26493
26568
|
const deviceText = [_optionalChain([ticket, 'access', _618 => _618.deviceHostnames, 'optionalAccess', _619 => _619.join, 'call', _620 => _620(", ")]), ticket.organizationName].filter(Boolean).join(", ");
|
|
26494
26569
|
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _621 => _621.assignees, 'optionalAccess', _622 => _622.length]) || renderAssignSlot);
|
|
@@ -26510,7 +26585,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
|
|
|
26510
26585
|
},
|
|
26511
26586
|
a.id
|
|
26512
26587
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26513
|
-
|
|
26588
|
+
_chunkNNFQLTJ3cjs.SquareAvatar,
|
|
26514
26589
|
{
|
|
26515
26590
|
src: a.avatarUrl,
|
|
26516
26591
|
alt: _nullishCoalesce(_nullishCoalesce(a.name, () => ( a.initials)), () => ( a.id)),
|
|
@@ -26527,8 +26602,8 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
|
|
|
26527
26602
|
] })
|
|
26528
26603
|
] }) : null
|
|
26529
26604
|
] }) : null;
|
|
26530
|
-
const timestampLabel = ticket.createdAt ?
|
|
26531
|
-
const tooltipLabel = ticket.createdAt ?
|
|
26605
|
+
const timestampLabel = ticket.createdAt ? _chunkRKGOVTXZcjs.formatTicketRelativeTime.call(void 0, ticket.createdAt) : null;
|
|
26606
|
+
const tooltipLabel = ticket.createdAt ? _chunkRKGOVTXZcjs.formatTicketFullTimestamp.call(void 0, ticket.createdAt) : null;
|
|
26532
26607
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
26533
26608
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-sf)]", children: [
|
|
26534
26609
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-zero)]", title: ticket.title, children: [
|
|
@@ -26541,9 +26616,9 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
|
|
|
26541
26616
|
rightSection
|
|
26542
26617
|
] }),
|
|
26543
26618
|
_optionalChain([ticket, 'access', _625 => _625.tags, 'optionalAccess', _626 => _626.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
|
|
26544
|
-
timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26545
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26546
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26619
|
+
timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRKGOVTXZcjs.Tooltip, { children: [
|
|
26620
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto truncate text-ods-text-secondary text-h6", children: timestampLabel }) }),
|
|
26621
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.TooltipContent, { children: tooltipLabel })
|
|
26547
26622
|
] }) }),
|
|
26548
26623
|
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: [
|
|
26549
26624
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.UserCheckIcon, { className: "size-4 shrink-0" }),
|
|
@@ -26563,7 +26638,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
|
|
|
26563
26638
|
}
|
|
26564
26639
|
),
|
|
26565
26640
|
showNewMessage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26566
|
-
|
|
26641
|
+
_chunkRKGOVTXZcjs.Tag,
|
|
26567
26642
|
{
|
|
26568
26643
|
label: "New Message",
|
|
26569
26644
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.MessagesIcon, { size: 16, color: newMessageTextColor }),
|
|
@@ -26777,8 +26852,8 @@ function TicketTagRow({ tags }) {
|
|
|
26777
26852
|
const visible = tags.slice(0, MAX_VISIBLE_TAGS);
|
|
26778
26853
|
const hidden = tags.length - visible.length;
|
|
26779
26854
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-8 flex-wrap items-start gap-[var(--spacing-system-xxs)] overflow-clip", children: [
|
|
26780
|
-
visible.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26781
|
-
hidden > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26855
|
+
visible.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "outline", label: tag }, tag)),
|
|
26856
|
+
hidden > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRKGOVTXZcjs.Tag, { variant: "outline", label: `+${hidden}` })
|
|
26782
26857
|
] });
|
|
26783
26858
|
}
|
|
26784
26859
|
|
|
@@ -27015,7 +27090,7 @@ function resolveBoardDrop(columns, { source, target }) {
|
|
|
27015
27090
|
// src/components/features/board/use-board-collapse.ts
|
|
27016
27091
|
|
|
27017
27092
|
function useBoardCollapse(storageKey) {
|
|
27018
|
-
const [persisted, setPersisted] =
|
|
27093
|
+
const [persisted, setPersisted] = _chunkLEISUAHFcjs.useLocalStorage.call(void 0, _nullishCoalesce(storageKey, () => ( "__board_collapse_unused__")), {});
|
|
27019
27094
|
const [memory, setMemory] = _react.useState.call(void 0, {});
|
|
27020
27095
|
const collapsed = storageKey ? persisted : memory;
|
|
27021
27096
|
const setMap = storageKey ? setPersisted : setMemory;
|
|
@@ -27065,7 +27140,7 @@ function Board({
|
|
|
27065
27140
|
onThumbPointerDown,
|
|
27066
27141
|
onThumbPointerMove,
|
|
27067
27142
|
onThumbPointerUp
|
|
27068
|
-
} =
|
|
27143
|
+
} = _chunkLEISUAHFcjs.useHorizontalScrollbar.call(void 0, );
|
|
27069
27144
|
const columnsRef = _react.useRef.call(void 0, columns);
|
|
27070
27145
|
const onChangeRef = _react.useRef.call(void 0, onChange);
|
|
27071
27146
|
const boardRef = _react.useRef.call(void 0, null);
|
|
@@ -27085,7 +27160,12 @@ function Board({
|
|
|
27085
27160
|
const previewRef = _react.useRef.call(void 0, null);
|
|
27086
27161
|
const [reportedMove, setPendingMove] = _react.useState.call(void 0, null);
|
|
27087
27162
|
const pendingMove = reportedMove && !hasMoveSettled(columns, reportedMove) ? reportedMove : null;
|
|
27088
|
-
const
|
|
27163
|
+
const dragAndDropEnabled = _chunkLEISUAHFcjs.useDragAndDropEnabled.call(void 0, );
|
|
27164
|
+
const view = _react.useMemo.call(void 0, () => {
|
|
27165
|
+
const base = pendingMove ? applyPendingMove(columns, pendingMove) : columns;
|
|
27166
|
+
if (dragAndDropEnabled) return base;
|
|
27167
|
+
return base.map((column) => ({ ...column, dragDisabled: true, dropDisabled: true }));
|
|
27168
|
+
}, [columns, pendingMove, dragAndDropEnabled]);
|
|
27089
27169
|
_react.useEffect.call(void 0, () => {
|
|
27090
27170
|
columnsRef.current = view;
|
|
27091
27171
|
onChangeRef.current = onChange;
|
|
@@ -27254,7 +27334,7 @@ function Board({
|
|
|
27254
27334
|
})
|
|
27255
27335
|
);
|
|
27256
27336
|
}, []);
|
|
27257
|
-
|
|
27337
|
+
_chunkZI27ALYXcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
27258
27338
|
if (!landing) return void 0;
|
|
27259
27339
|
const finish = () => {
|
|
27260
27340
|
landingTimer.current = null;
|
|
@@ -27495,6 +27575,7 @@ function useSortableListContext() {
|
|
|
27495
27575
|
}
|
|
27496
27576
|
function SortableList({ onReorder, getItemLabel, disabled = false, className, children }) {
|
|
27497
27577
|
const listRef = _react.useRef.call(void 0, null);
|
|
27578
|
+
const dragAndDropEnabled = _chunkLEISUAHFcjs.useDragAndDropEnabled.call(void 0, );
|
|
27498
27579
|
const dragType = _react.useId.call(void 0, );
|
|
27499
27580
|
const [announcement, setAnnouncement] = _react.useState.call(void 0, "");
|
|
27500
27581
|
const onReorderRef = _react.useRef.call(void 0, onReorder);
|
|
@@ -27521,7 +27602,7 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
27521
27602
|
);
|
|
27522
27603
|
_react.useEffect.call(void 0, () => {
|
|
27523
27604
|
const list = listRef.current;
|
|
27524
|
-
if (!list) return void 0;
|
|
27605
|
+
if (!list || disabled || !dragAndDropEnabled) return void 0;
|
|
27525
27606
|
let drag = null;
|
|
27526
27607
|
return _combine.combine.call(void 0,
|
|
27527
27608
|
// Dragging towards the edge of the screen — or past it — scrolls whatever
|
|
@@ -27585,8 +27666,8 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
27585
27666
|
}
|
|
27586
27667
|
})
|
|
27587
27668
|
);
|
|
27588
|
-
}, [dragType, readItems, reorder]);
|
|
27589
|
-
|
|
27669
|
+
}, [dragType, disabled, dragAndDropEnabled, readItems, reorder]);
|
|
27670
|
+
_chunkZI27ALYXcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
27590
27671
|
const from = flipFrom.current;
|
|
27591
27672
|
flipFrom.current = null;
|
|
27592
27673
|
if (!from) return;
|
|
@@ -27617,8 +27698,8 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
27617
27698
|
[]
|
|
27618
27699
|
);
|
|
27619
27700
|
const context = _react.useMemo.call(void 0,
|
|
27620
|
-
() => ({ dragType, disabled, reorder, readItems }),
|
|
27621
|
-
[dragType, disabled, reorder, readItems]
|
|
27701
|
+
() => ({ dragType, disabled, dragAndDropEnabled, reorder, readItems }),
|
|
27702
|
+
[dragType, disabled, dragAndDropEnabled, reorder, readItems]
|
|
27622
27703
|
);
|
|
27623
27704
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableListContext.Provider, { value: context, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: listRef, className, children: [
|
|
27624
27705
|
children,
|
|
@@ -27626,22 +27707,72 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
27626
27707
|
] }) });
|
|
27627
27708
|
}
|
|
27628
27709
|
|
|
27710
|
+
// src/components/features/sortable-list/sortable-move-buttons.tsx
|
|
27711
|
+
|
|
27712
|
+
|
|
27713
|
+
function SortableMoveButtons({ index, count, label, className }) {
|
|
27714
|
+
const { disabled, reorder } = useSortableListContext();
|
|
27715
|
+
const upRef = _react.useRef.call(void 0, null);
|
|
27716
|
+
const downRef = _react.useRef.call(void 0, null);
|
|
27717
|
+
const move = (step) => {
|
|
27718
|
+
const to = index + step;
|
|
27719
|
+
if (to < 0 || to >= count) return;
|
|
27720
|
+
reorder(index, to);
|
|
27721
|
+
requestAnimationFrame(() => {
|
|
27722
|
+
if (step === -1 && to === 0) _optionalChain([downRef, 'access', _678 => _678.current, 'optionalAccess', _679 => _679.focus, 'call', _680 => _680()]);
|
|
27723
|
+
if (step === 1 && to === count - 1) _optionalChain([upRef, 'access', _681 => _681.current, 'optionalAccess', _682 => _682.focus, 'call', _683 => _683()]);
|
|
27724
|
+
});
|
|
27725
|
+
};
|
|
27726
|
+
const subject = _nullishCoalesce(label, () => ( "item"));
|
|
27727
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "inline-flex shrink-0", className), children: [
|
|
27728
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27729
|
+
_chunkYHNIPSG6cjs.Button,
|
|
27730
|
+
{
|
|
27731
|
+
ref: upRef,
|
|
27732
|
+
type: "button",
|
|
27733
|
+
variant: "outline",
|
|
27734
|
+
size: "icon",
|
|
27735
|
+
"aria-label": `Move ${subject} up`,
|
|
27736
|
+
disabled: disabled || index <= 0,
|
|
27737
|
+
onClick: () => move(-1),
|
|
27738
|
+
className: "rounded-r-none border-r-0",
|
|
27739
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.Arrow01UpIcon, {})
|
|
27740
|
+
}
|
|
27741
|
+
),
|
|
27742
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27743
|
+
_chunkYHNIPSG6cjs.Button,
|
|
27744
|
+
{
|
|
27745
|
+
ref: downRef,
|
|
27746
|
+
type: "button",
|
|
27747
|
+
variant: "outline",
|
|
27748
|
+
size: "icon",
|
|
27749
|
+
"aria-label": `Move ${subject} down`,
|
|
27750
|
+
disabled: disabled || index >= count - 1,
|
|
27751
|
+
onClick: () => move(1),
|
|
27752
|
+
className: "rounded-l-none",
|
|
27753
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSQM4PDRcjs.Arrow01DownIcon, {})
|
|
27754
|
+
}
|
|
27755
|
+
)
|
|
27756
|
+
] });
|
|
27757
|
+
}
|
|
27758
|
+
|
|
27629
27759
|
// src/components/features/sortable-list/use-sortable-item.ts
|
|
27630
27760
|
|
|
27631
27761
|
|
|
27632
27762
|
var _disablenativedragpreview = require('@atlaskit/pragmatic-drag-and-drop/element/disable-native-drag-preview');
|
|
27633
27763
|
|
|
27634
27764
|
function useSortableItem() {
|
|
27635
|
-
const { dragType, disabled, reorder, readItems } = useSortableListContext();
|
|
27765
|
+
const { dragType, disabled, dragAndDropEnabled, reorder, readItems } = useSortableListContext();
|
|
27766
|
+
const inert = disabled || !dragAndDropEnabled;
|
|
27636
27767
|
const [item, setItem] = _react.useState.call(void 0, null);
|
|
27637
27768
|
const [handle, setHandle] = _react.useState.call(void 0, null);
|
|
27638
27769
|
const [isDragging, setIsDragging] = _react.useState.call(void 0, false);
|
|
27639
27770
|
const itemRef = _react.useCallback.call(void 0, (node) => {
|
|
27640
|
-
_optionalChain([node, 'optionalAccess',
|
|
27771
|
+
_optionalChain([node, 'optionalAccess', _684 => _684.setAttribute, 'call', _685 => _685(SORTABLE_ITEM_ATTRIBUTE, "")]);
|
|
27641
27772
|
setItem(node);
|
|
27642
27773
|
}, []);
|
|
27643
27774
|
_react.useEffect.call(void 0, () => {
|
|
27644
|
-
if (!item || !handle ||
|
|
27775
|
+
if (!item || !handle || inert) return void 0;
|
|
27645
27776
|
return _combine.combine.call(void 0,
|
|
27646
27777
|
// The drag has to start as a "move", or its first frame is drawn with the
|
|
27647
27778
|
// copy cursor — see `drag-effect.ts`.
|
|
@@ -27656,78 +27787,62 @@ function useSortableItem() {
|
|
|
27656
27787
|
onDrop: () => setIsDragging(false)
|
|
27657
27788
|
})
|
|
27658
27789
|
);
|
|
27659
|
-
}, [item, handle,
|
|
27790
|
+
}, [item, handle, inert, dragType]);
|
|
27660
27791
|
const onKeyDown = _react.useCallback.call(void 0,
|
|
27661
27792
|
(event) => {
|
|
27662
27793
|
const step = event.key === "ArrowUp" ? -1 : event.key === "ArrowDown" ? 1 : 0;
|
|
27663
|
-
if (!step ||
|
|
27794
|
+
if (!step || inert) return;
|
|
27664
27795
|
const items = readItems();
|
|
27665
27796
|
const from = items.indexOf(event.currentTarget.closest(`[${SORTABLE_ITEM_ATTRIBUTE}]`));
|
|
27666
27797
|
const to = from + step;
|
|
27667
27798
|
if (from < 0 || to < 0 || to >= items.length) return;
|
|
27668
27799
|
event.preventDefault();
|
|
27669
27800
|
reorder(from, to);
|
|
27670
|
-
requestAnimationFrame(() => _optionalChain([handle, 'optionalAccess',
|
|
27801
|
+
requestAnimationFrame(() => _optionalChain([handle, 'optionalAccess', _686 => _686.focus, 'call', _687 => _687()]));
|
|
27671
27802
|
},
|
|
27672
|
-
[
|
|
27803
|
+
[inert, readItems, reorder, handle]
|
|
27673
27804
|
);
|
|
27674
|
-
return { itemRef, dragHandleProps: { ref: setHandle, onKeyDown }, isDragging };
|
|
27805
|
+
return { itemRef, dragHandleProps: { ref: setHandle, onKeyDown }, isDragging, dragAndDropEnabled };
|
|
27675
27806
|
}
|
|
27676
27807
|
|
|
27677
27808
|
// src/components/features/ticket-status-config-list/ticket-status-config-list.tsx
|
|
27678
27809
|
|
|
27679
|
-
|
|
27680
|
-
|
|
27681
|
-
|
|
27682
|
-
|
|
27683
|
-
|
|
27684
|
-
|
|
27685
|
-
var _core = require('@dnd-kit/core');
|
|
27686
|
-
|
|
27687
|
-
|
|
27688
|
-
|
|
27689
|
-
|
|
27690
|
-
|
|
27691
|
-
var _sortable = require('@dnd-kit/sortable');
|
|
27692
|
-
var _utilities = require('@dnd-kit/utilities');
|
|
27693
|
-
|
|
27694
|
-
|
|
27695
27810
|
function TicketStatusConfigList({
|
|
27696
27811
|
items,
|
|
27697
27812
|
onReorder,
|
|
27698
27813
|
renderRow,
|
|
27814
|
+
getItemLabel,
|
|
27699
27815
|
className
|
|
27700
27816
|
}) {
|
|
27701
|
-
|
|
27702
|
-
|
|
27703
|
-
|
|
27817
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27818
|
+
SortableList,
|
|
27819
|
+
{
|
|
27820
|
+
onReorder,
|
|
27821
|
+
getItemLabel,
|
|
27822
|
+
className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex w-full flex-col gap-[var(--spacing-system-xs)]", className),
|
|
27823
|
+
children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableRow, { index, count: items.length, label: _optionalChain([getItemLabel, 'optionalCall', _688 => _688(index)]), children: (args) => renderRow(item, args) }, item.id))
|
|
27824
|
+
}
|
|
27825
|
+
);
|
|
27826
|
+
}
|
|
27827
|
+
function SortableRow({
|
|
27828
|
+
index,
|
|
27829
|
+
count,
|
|
27830
|
+
label,
|
|
27831
|
+
children
|
|
27832
|
+
}) {
|
|
27833
|
+
const { itemRef, dragHandleProps, isDragging, dragAndDropEnabled } = useSortableItem();
|
|
27834
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27835
|
+
"div",
|
|
27836
|
+
{
|
|
27837
|
+
ref: itemRef,
|
|
27838
|
+
className: isDragging ? "relative z-10" : void 0,
|
|
27839
|
+
children: children({
|
|
27840
|
+
dragHandleProps,
|
|
27841
|
+
isDragging,
|
|
27842
|
+
moveButtons: dragAndDropEnabled ? null : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableMoveButtons, { index, count, label })
|
|
27843
|
+
})
|
|
27844
|
+
}
|
|
27704
27845
|
);
|
|
27705
|
-
const handleDragEnd = (event) => {
|
|
27706
|
-
const { active, over } = event;
|
|
27707
|
-
if (!over || active.id === over.id) return;
|
|
27708
|
-
const oldIndex = items.findIndex((i) => i.id === active.id);
|
|
27709
|
-
const newIndex = items.findIndex((i) => i.id === over.id);
|
|
27710
|
-
if (oldIndex === -1 || newIndex === -1) return;
|
|
27711
|
-
onReorder(oldIndex, newIndex);
|
|
27712
|
-
};
|
|
27713
|
-
const sortableIds = _react.useMemo.call(void 0, () => items.map((i) => i.id), [items]);
|
|
27714
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _core.DndContext, { sensors, collisionDetection: _core.closestCenter, onDragEnd: handleDragEnd, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _sortable.SortableContext, { items: sortableIds, strategy: _sortable.verticalListSortingStrategy, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkPRPZBXWZcjs.cn.call(void 0, "flex w-full flex-col gap-[var(--spacing-system-xs)]", className), children: items.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableRow, { id: item.id, children: (args) => renderRow(item, args) }, item.id)) }) }) });
|
|
27715
|
-
}
|
|
27716
|
-
function SortableRow({ id, children }) {
|
|
27717
|
-
const { attributes, listeners, setNodeRef, transform, transition, isDragging } = _sortable.useSortable.call(void 0, { id });
|
|
27718
|
-
const style = {
|
|
27719
|
-
transform: _utilities.CSS.Transform.toString(transform),
|
|
27720
|
-
transition,
|
|
27721
|
-
// Raise the actively dragged row above its siblings — without this the
|
|
27722
|
-
// stacking follows DOM order, so a row dragged DOWN slides UNDER the rows
|
|
27723
|
-
// below it while a row dragged up correctly renders on top.
|
|
27724
|
-
zIndex: isDragging ? 1 : void 0
|
|
27725
|
-
};
|
|
27726
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: setNodeRef, style, children: children({
|
|
27727
|
-
dragHandleProps: listeners,
|
|
27728
|
-
dragHandleAttributes: attributes,
|
|
27729
|
-
isDragging
|
|
27730
|
-
}) });
|
|
27731
27846
|
}
|
|
27732
27847
|
|
|
27733
27848
|
|
|
@@ -28293,5 +28408,6 @@ function SortableRow({ id, children }) {
|
|
|
28293
28408
|
|
|
28294
28409
|
|
|
28295
28410
|
|
|
28296
|
-
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.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.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.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; 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.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.BenefitCard = BenefitCard; 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.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.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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; 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.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; 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.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; 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.useSortableItem = useSortableItem; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.COMPACT_ROW_MIN_HEIGHT_PX = COMPACT_ROW_MIN_HEIGHT_PX; 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.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.DataTableEmpty = DataTableEmpty; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableHeader = DataTableHeader; 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;
|
|
28297
|
-
//# sourceMappingURL=chunk-KE2TCUOH.cjs.map
|
|
28411
|
+
|
|
28412
|
+
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.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.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.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; 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.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.BenefitCard = BenefitCard; 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.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.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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; 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.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; 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.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; 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.COMPACT_ROW_MIN_HEIGHT_PX = COMPACT_ROW_MIN_HEIGHT_PX; 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.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.DataTableEmpty = DataTableEmpty; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableHeader = DataTableHeader; 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;
|
|
28413
|
+
//# sourceMappingURL=chunk-FEVLXRTC.cjs.map
|