@flamingo-stack/openframe-frontend-core 0.0.851 → 0.0.852
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/build/export-map.json +1 -1
- package/dist/{case-study-card-X2HKPKT7.cjs → case-study-card-WP5Z234Q.cjs} +5 -5
- package/dist/{chunk-BU2PSRAS.cjs → chunk-2W22LY3W.cjs} +11 -11
- package/dist/{chunk-2NGW73T2.cjs → chunk-3SJVF3HW.cjs} +6 -6
- package/dist/{chunk-VXIZCUNZ.cjs → chunk-3ZQESOPJ.cjs} +65 -65
- package/dist/{chunk-VU6N3NZS.cjs → chunk-477P6AQH.cjs} +6 -6
- package/dist/{chunk-PJNEBSP5.cjs → chunk-5RMBLOJ5.cjs} +12 -12
- package/dist/{chunk-36DUCHI7.cjs → chunk-6GWRPW6B.cjs} +4 -4
- package/dist/{chunk-SOSIXRQ3.cjs → chunk-AZEO7HBB.cjs} +2 -2
- package/dist/{chunk-KRTTH3ET.cjs → chunk-BNHTBLAG.cjs} +17 -17
- package/dist/{chunk-OUP7L3U5.cjs → chunk-CHGIACIP.cjs} +91 -91
- package/dist/{chunk-U4RTWH5D.cjs → chunk-COJG2ATY.cjs} +19 -19
- package/dist/{chunk-ZEPEFKHA.cjs → chunk-D3H6AI7O.cjs} +540 -540
- package/dist/{chunk-ALRYVZ3E.cjs → chunk-DLTPSP5F.cjs} +2 -2
- package/dist/{chunk-WYROOMUZ.cjs → chunk-EIACEY2L.cjs} +2 -2
- package/dist/{chunk-TIVPOVIM.cjs → chunk-ETZFBB7O.cjs} +2 -2
- package/dist/{chunk-GRCOEICK.cjs → chunk-G7GF4PWA.cjs} +6 -6
- package/dist/{chunk-UQK6J3ZS.cjs → chunk-GEZ3UXCA.cjs} +25 -25
- package/dist/chunk-GGUFVIJ6.cjs +28 -0
- package/dist/{chunk-B6D4WWKD.cjs → chunk-IC4IJJB2.cjs} +95 -95
- package/dist/{chunk-BUEEQD3G.cjs → chunk-IGVAPIEW.cjs} +2 -2
- package/dist/{chunk-IG6ROHPS.cjs → chunk-IO6NN3SL.cjs} +54 -54
- package/dist/{chunk-DN227KZH.cjs → chunk-KHOB3TES.cjs} +4 -4
- package/dist/{chunk-JQCQCE6U.cjs → chunk-KKFDRCQF.cjs} +2 -2
- package/dist/{chunk-PPCRLSVR.cjs → chunk-KNN2GCMW.cjs} +21 -21
- package/dist/{chunk-CDW6JTAQ.cjs → chunk-LFEURIZN.cjs} +245 -245
- package/dist/{chunk-SPKAXETT.cjs → chunk-MFDRCTM3.cjs} +47 -47
- package/dist/{chunk-ODMZSAIY.cjs → chunk-MXY2OGEV.cjs} +28 -28
- package/dist/{chunk-533QK4R6.cjs → chunk-NMWLXHFH.cjs} +130 -130
- package/dist/{chunk-MDLT6D46.cjs → chunk-O3EKOXFZ.cjs} +20 -20
- package/dist/{chunk-HLJXCOMA.cjs → chunk-OH5TXFRR.cjs} +4 -4
- package/dist/{chunk-QCSA7GIX.cjs → chunk-P63CRPWI.cjs} +12 -12
- package/dist/{chunk-5SEJEBAB.cjs → chunk-QOW2GP3V.cjs} +21 -21
- package/dist/{chunk-JBTH3O2C.cjs → chunk-SSKMGH5O.cjs} +4 -4
- package/dist/{chunk-LM7EL3UQ.cjs → chunk-U767P4JU.cjs} +11 -11
- package/dist/{chunk-FNQWL4W4.cjs → chunk-UO2EJGRJ.cjs} +45 -45
- package/dist/{chunk-UFGPLXH6.cjs → chunk-USPUZO53.cjs} +2 -2
- package/dist/{chunk-IN3LA2FU.cjs → chunk-UV45EPXN.cjs} +2 -2
- package/dist/{chunk-2WZHNMQY.cjs → chunk-VUHHLRAY.cjs} +84 -84
- package/dist/{chunk-FGSN5UNY.cjs → chunk-WFAZMASF.cjs} +3 -3
- package/dist/{chunk-NQEPLUUW.cjs → chunk-X3WIOMEE.cjs} +36 -36
- package/dist/{cloud-tenants-XH6GV4EI.cjs → cloud-tenants-O33HCUYB.cjs} +47 -46
- package/dist/components/case-studies/index.cjs +66 -65
- package/dist/components/chat/index.cjs +42 -41
- package/dist/components/contact/index.cjs +48 -47
- package/dist/components/docs/index.cjs +51 -50
- package/dist/components/embeds/index.cjs +48 -47
- package/dist/components/faq/index.cjs +49 -48
- package/dist/components/features/index.cjs +48 -47
- package/dist/components/help-center-pages/index.cjs +153 -152
- package/dist/components/icons-v2-generated/brand-logos/index.d.ts +1 -0
- package/dist/components/icons-v2-generated/brand-logos/index.d.ts.map +1 -1
- package/dist/components/icons-v2-generated/brand-logos/index.js +2 -0
- package/dist/components/icons-v2-generated/brand-logos/stripe-icon.d.ts +8 -0
- package/dist/components/icons-v2-generated/brand-logos/stripe-icon.d.ts.map +1 -0
- package/dist/components/icons-v2-generated/brand-logos/stripe-icon.js +24 -0
- package/dist/components/icons-v2-generated/icon-loaders.d.ts.map +1 -1
- package/dist/components/icons-v2-generated/icon-loaders.js +1 -0
- package/dist/components/icons-v2-generated/icon-names.js +1 -1
- package/dist/components/icons-v2-generated/index.cjs +33 -29
- package/dist/components/index.cjs +110 -109
- package/dist/components/meeting-scheduler/index.cjs +97 -96
- package/dist/components/navigation/index.cjs +51 -50
- package/dist/components/onboarding-guides/index.cjs +50 -49
- package/dist/components/product-demo/index.cjs +58 -57
- package/dist/components/related-content/index.cjs +9 -9
- package/dist/components/tickets/index.cjs +54 -53
- package/dist/components/ui/index.cjs +48 -47
- package/dist/{devices-7PT6MPJI.cjs → devices-2RGGMC2B.cjs} +48 -47
- package/dist/{embeddable-chat-5NY76K7K.cjs → embeddable-chat-SJEEJI4N.cjs} +118 -117
- package/dist/hooks/index.cjs +9 -9
- package/dist/{icon-loaders-SUPEKMBJ.cjs → icon-loaders-CTH6E7OP.cjs} +1 -0
- package/dist/index.cjs +54 -53
- package/dist/{knowledge-J6N7IEVI.cjs → knowledge-5TJIXVMD.cjs} +49 -48
- package/dist/{logs-D6KQP2BX.cjs → logs-HGQOTRKZ.cjs} +54 -53
- package/dist/{policies-J7MCOL3C.cjs → policies-GWFSLVSM.cjs} +51 -50
- package/dist/{remote-session-PXHA5KFK.cjs → remote-session-SG44CNOK.cjs} +33 -32
- package/dist/{scripts-VURXIHVS.cjs → scripts-PGJNAZF4.cjs} +54 -53
- package/dist/{software-update-6SHUBDIE.cjs → software-update-KKLSYHDI.cjs} +51 -50
- package/dist/stripe-icon-YKVABTNI.cjs +7 -0
- package/dist/{tickets-board-NLCN7WNX.cjs → tickets-board-SQY2Y6QV.cjs} +37 -36
- package/dist/utils/index.cjs +32 -1
- package/package.json +1 -1
- package/src/components/icons-v2/icon-colors.json +3 -0
- package/src/components/icons-v2-generated/brand-logos/index.ts +1 -0
- package/src/components/icons-v2-generated/brand-logos/stripe-icon.tsx +27 -0
- package/src/components/icons-v2-generated/icon-loaders.ts +1 -0
- package/src/components/icons-v2-generated/icon-names.ts +1 -1
- package/src/styles/ods-colors.css +1 -0
- /package/dist/{chunk-46547WQW.cjs → chunk-7HH4Y27U.cjs} +0 -0
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
+
var _chunkUSPUZO53cjs = require('./chunk-USPUZO53.cjs');
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
|
|
@@ -18,24 +19,23 @@
|
|
|
18
19
|
|
|
19
20
|
|
|
20
21
|
|
|
21
|
-
var _chunkU4RTWH5Dcjs = require('./chunk-U4RTWH5D.cjs');
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
|
|
27
|
-
var _chunkQCSA7GIXcjs = require('./chunk-QCSA7GIX.cjs');
|
|
28
27
|
|
|
29
28
|
|
|
30
29
|
|
|
31
30
|
|
|
32
31
|
|
|
32
|
+
var _chunkCOJG2ATYcjs = require('./chunk-COJG2ATY.cjs');
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
var
|
|
38
|
+
var _chunkP63CRPWIcjs = require('./chunk-P63CRPWI.cjs');
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
|
|
@@ -51,7 +51,7 @@ var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
|
|
|
51
51
|
|
|
52
52
|
|
|
53
53
|
|
|
54
|
-
var
|
|
54
|
+
var _chunkUO2EJGRJcjs = require('./chunk-UO2EJGRJ.cjs');
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
|
|
@@ -100,12 +100,11 @@ var _chunkZZDFMUEUcjs = require('./chunk-ZZDFMUEU.cjs');
|
|
|
100
100
|
|
|
101
101
|
|
|
102
102
|
|
|
103
|
-
var
|
|
103
|
+
var _chunkIC4IJJB2cjs = require('./chunk-IC4IJJB2.cjs');
|
|
104
104
|
|
|
105
105
|
|
|
106
106
|
|
|
107
107
|
|
|
108
|
-
var _chunkOT6P57ZScjs = require('./chunk-OT6P57ZS.cjs');
|
|
109
108
|
|
|
110
109
|
|
|
111
110
|
|
|
@@ -122,11 +121,12 @@ var _chunkOT6P57ZScjs = require('./chunk-OT6P57ZS.cjs');
|
|
|
122
121
|
|
|
123
122
|
|
|
124
123
|
|
|
124
|
+
var _chunkLFEURIZNcjs = require('./chunk-LFEURIZN.cjs');
|
|
125
125
|
|
|
126
126
|
|
|
127
127
|
|
|
128
128
|
|
|
129
|
-
var
|
|
129
|
+
var _chunkOT6P57ZScjs = require('./chunk-OT6P57ZS.cjs');
|
|
130
130
|
|
|
131
131
|
|
|
132
132
|
|
|
@@ -142,7 +142,7 @@ var _chunkCDW6JTAQcjs = require('./chunk-CDW6JTAQ.cjs');
|
|
|
142
142
|
|
|
143
143
|
|
|
144
144
|
|
|
145
|
-
var
|
|
145
|
+
var _chunkEIACEY2Lcjs = require('./chunk-EIACEY2L.cjs');
|
|
146
146
|
|
|
147
147
|
|
|
148
148
|
|
|
@@ -165,7 +165,7 @@ var _chunkWYROOMUZcjs = require('./chunk-WYROOMUZ.cjs');
|
|
|
165
165
|
|
|
166
166
|
|
|
167
167
|
|
|
168
|
-
var
|
|
168
|
+
var _chunkU767P4JUcjs = require('./chunk-U767P4JU.cjs');
|
|
169
169
|
|
|
170
170
|
|
|
171
171
|
|
|
@@ -193,10 +193,10 @@ var _chunkZR6EQT7Vcjs = require('./chunk-ZR6EQT7V.cjs');
|
|
|
193
193
|
var _chunkVLQLSYMAcjs = require('./chunk-VLQLSYMA.cjs');
|
|
194
194
|
|
|
195
195
|
|
|
196
|
-
var
|
|
196
|
+
var _chunkJQEOUB5Fcjs = require('./chunk-JQEOUB5F.cjs');
|
|
197
197
|
|
|
198
198
|
|
|
199
|
-
var
|
|
199
|
+
var _chunkRNZYBODMcjs = require('./chunk-RNZYBODM.cjs');
|
|
200
200
|
|
|
201
201
|
|
|
202
202
|
var _chunkTPKKRHUMcjs = require('./chunk-TPKKRHUM.cjs');
|
|
@@ -464,14 +464,14 @@ var _chunkXIBCMGBWcjs = require('./chunk-XIBCMGBW.cjs');
|
|
|
464
464
|
|
|
465
465
|
|
|
466
466
|
|
|
467
|
-
var
|
|
467
|
+
var _chunkOH5TXFRRcjs = require('./chunk-OH5TXFRR.cjs');
|
|
468
468
|
|
|
469
469
|
|
|
470
470
|
|
|
471
471
|
|
|
472
472
|
|
|
473
473
|
|
|
474
|
-
var
|
|
474
|
+
var _chunkG7GF4PWAcjs = require('./chunk-G7GF4PWA.cjs');
|
|
475
475
|
|
|
476
476
|
|
|
477
477
|
|
|
@@ -479,7 +479,7 @@ var _chunkGRCOEICKcjs = require('./chunk-GRCOEICK.cjs');
|
|
|
479
479
|
var _chunkFW7RKWPYcjs = require('./chunk-FW7RKWPY.cjs');
|
|
480
480
|
|
|
481
481
|
|
|
482
|
-
var
|
|
482
|
+
var _chunkIGVAPIEWcjs = require('./chunk-IGVAPIEW.cjs');
|
|
483
483
|
|
|
484
484
|
|
|
485
485
|
var _chunkJKX2C3I2cjs = require('./chunk-JKX2C3I2.cjs');
|
|
@@ -504,7 +504,7 @@ var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
|
|
|
504
504
|
|
|
505
505
|
|
|
506
506
|
|
|
507
|
-
var
|
|
507
|
+
var _chunkNMWLXHFHcjs = require('./chunk-NMWLXHFH.cjs');
|
|
508
508
|
|
|
509
509
|
|
|
510
510
|
var _chunkHTYJUMFBcjs = require('./chunk-HTYJUMFB.cjs');
|
|
@@ -528,7 +528,7 @@ var _chunkW7OFAROYcjs = require('./chunk-W7OFAROY.cjs');
|
|
|
528
528
|
|
|
529
529
|
|
|
530
530
|
|
|
531
|
-
var
|
|
531
|
+
var _chunkO3EKOXFZcjs = require('./chunk-O3EKOXFZ.cjs');
|
|
532
532
|
|
|
533
533
|
|
|
534
534
|
|
|
@@ -536,7 +536,7 @@ var _chunkMDLT6D46cjs = require('./chunk-MDLT6D46.cjs');
|
|
|
536
536
|
|
|
537
537
|
|
|
538
538
|
|
|
539
|
-
var
|
|
539
|
+
var _chunkSSKMGH5Ocjs = require('./chunk-SSKMGH5O.cjs');
|
|
540
540
|
|
|
541
541
|
|
|
542
542
|
|
|
@@ -563,7 +563,7 @@ var _chunkYSDB6HGQcjs = require('./chunk-YSDB6HGQ.cjs');
|
|
|
563
563
|
|
|
564
564
|
|
|
565
565
|
|
|
566
|
-
var
|
|
566
|
+
var _chunkETZFBB7Ocjs = require('./chunk-ETZFBB7O.cjs');
|
|
567
567
|
|
|
568
568
|
|
|
569
569
|
|
|
@@ -574,7 +574,7 @@ var _chunkTIVPOVIMcjs = require('./chunk-TIVPOVIM.cjs');
|
|
|
574
574
|
|
|
575
575
|
|
|
576
576
|
|
|
577
|
-
var
|
|
577
|
+
var _chunkKKFDRCQFcjs = require('./chunk-KKFDRCQF.cjs');
|
|
578
578
|
|
|
579
579
|
|
|
580
580
|
|
|
@@ -724,7 +724,7 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
724
724
|
var useTheme = _nextthemes.useTheme;
|
|
725
725
|
function useThemeToggle() {
|
|
726
726
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
727
|
-
const mounted =
|
|
727
|
+
const mounted = _chunkLFEURIZNcjs.useIsHydrated.call(void 0, );
|
|
728
728
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
729
729
|
const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
|
|
730
730
|
const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
|
|
@@ -933,7 +933,7 @@ function TimezoneSelect({
|
|
|
933
933
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loadingProp;
|
|
934
934
|
const options = _react.useMemo.call(void 0, () => timezoneOptions(value), [value]);
|
|
935
935
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
936
|
-
|
|
936
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
937
937
|
{
|
|
938
938
|
className,
|
|
939
939
|
fieldLoading: loading,
|
|
@@ -1749,20 +1749,20 @@ function DatePickerInput(props) {
|
|
|
1749
1749
|
) })
|
|
1750
1750
|
] }),
|
|
1751
1751
|
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1", children: [
|
|
1752
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1753
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1754
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1752
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: hour, onValueChange: handleHourChange, disabled, children: [
|
|
1753
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder: "HH" }) }),
|
|
1754
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: hourOptions.map((h) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: h, children: h }, h)) })
|
|
1755
1755
|
] }),
|
|
1756
1756
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h4", children: ":" }),
|
|
1757
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1758
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1759
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1757
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: minute, onValueChange: handleMinuteChange, disabled, children: [
|
|
1758
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder: "MM" }) }),
|
|
1759
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: minuteOptions.map((m) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: m, children: m }, m)) })
|
|
1760
1760
|
] }),
|
|
1761
|
-
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1762
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1763
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1764
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1765
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1761
|
+
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: period, onValueChange: (val) => handlePeriodChange(val), disabled, children: [
|
|
1762
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder: "AM" }) }),
|
|
1763
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: [
|
|
1764
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "AM", children: "AM" }),
|
|
1765
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "PM", children: "PM" })
|
|
1766
1766
|
] })
|
|
1767
1767
|
] })
|
|
1768
1768
|
] })
|
|
@@ -1903,9 +1903,9 @@ function DatePickerInputSimple(props) {
|
|
|
1903
1903
|
}
|
|
1904
1904
|
) })
|
|
1905
1905
|
] }),
|
|
1906
|
-
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1907
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1908
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1906
|
+
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: timeValue, onValueChange: handleTimeChange, disabled, children: [
|
|
1907
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: _chunk63A4GZMBcjs.cn.call(void 0, timeSelectTriggerStyles, "flex-1"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder: "Select time", children: timeDisplayLabel || "Select time" }) }),
|
|
1908
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
1909
1909
|
] })
|
|
1910
1910
|
] });
|
|
1911
1911
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHXURNKXIcjs.FieldWrapper, { label, error, errorSlot: "error" in props, className, children: content });
|
|
@@ -1924,14 +1924,14 @@ function DateFilterPanel({
|
|
|
1924
1924
|
className
|
|
1925
1925
|
}) {
|
|
1926
1926
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex flex-col gap-4", className), children: [
|
|
1927
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1928
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1927
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: sort, onValueChange: (value) => onSortChange(value), children: [
|
|
1928
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "gap-2", "aria-label": "Sort direction", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
|
|
1929
1929
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowUpDown, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
1930
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1930
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) })
|
|
1931
1931
|
] }) }),
|
|
1932
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1933
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1934
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1932
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: [
|
|
1933
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "asc", children: ascLabel }),
|
|
1934
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "desc", children: descLabel })
|
|
1935
1935
|
] })
|
|
1936
1936
|
] }),
|
|
1937
1937
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -2211,7 +2211,7 @@ function Value({ value, depth }) {
|
|
|
2211
2211
|
}
|
|
2212
2212
|
if (typeof value === "string") {
|
|
2213
2213
|
if (ISO_DATE.test(value)) {
|
|
2214
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children:
|
|
2214
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkU767P4JUcjs.formatRelativeTime.call(void 0, value) });
|
|
2215
2215
|
}
|
|
2216
2216
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
|
|
2217
2217
|
}
|
|
@@ -2460,7 +2460,7 @@ function InfoCardValueRow({
|
|
|
2460
2460
|
copyAriaLabel,
|
|
2461
2461
|
loading: loadingProp
|
|
2462
2462
|
}) {
|
|
2463
|
-
const { copy, copied } =
|
|
2463
|
+
const { copy, copied } = _chunkUO2EJGRJcjs.useCopyToClipboard.call(void 0, );
|
|
2464
2464
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loadingProp;
|
|
2465
2465
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: VALUE_ROW_CLASS, children: [
|
|
2466
2466
|
loading && label === void 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: "w-20" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: ROW_LABEL_CLASS, children: showLabel ? _nullishCoalesce(label, () => ( "")) : "" }),
|
|
@@ -2543,8 +2543,8 @@ function SearchableSelect(allProps) {
|
|
|
2543
2543
|
const keyboardPadding = _chunkFW7RKWPYcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
2544
2544
|
const portalContainer = _chunkVCFQHPOOcjs.usePortalContainer.call(void 0, );
|
|
2545
2545
|
if (!isOpen && search !== "") setSearch("");
|
|
2546
|
-
const listedOptions =
|
|
2547
|
-
const rememberedSelection =
|
|
2546
|
+
const listedOptions = _chunkCOJG2ATYcjs.useSettledOptions.call(void 0, options, isLoading, serverSearch);
|
|
2547
|
+
const rememberedSelection = _chunkCOJG2ATYcjs.useRememberedSelection.call(void 0, listedOptions, value != null ? [value] : [], serverSearch);
|
|
2548
2548
|
const filtered = _react.useMemo.call(void 0, () => {
|
|
2549
2549
|
if (serverSearch) return listedOptions;
|
|
2550
2550
|
const q = search.trim().toLowerCase();
|
|
@@ -2757,7 +2757,7 @@ function CompactAssigneeDropdown({
|
|
|
2757
2757
|
onClick: handleTriggerClick,
|
|
2758
2758
|
"aria-label": "Change assignee",
|
|
2759
2759
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "w-auto shrink-0", className),
|
|
2760
|
-
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2760
|
+
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP63CRPWIcjs.DeletedUserAvatar, { size: "sm", accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}` }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2761
2761
|
_chunkW7OFAROYcjs.SquareAvatar,
|
|
2762
2762
|
{
|
|
2763
2763
|
src: currentAssignee.avatarSrc,
|
|
@@ -2828,7 +2828,7 @@ function DefaultAssigneeDropdown({
|
|
|
2828
2828
|
if (isEditing) {
|
|
2829
2829
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "min-w-0", className), children: [
|
|
2830
2830
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2831
|
-
|
|
2831
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
2832
2832
|
{
|
|
2833
2833
|
options,
|
|
2834
2834
|
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _45 => _45.id]), () => ( null)),
|
|
@@ -2842,7 +2842,7 @@ function DefaultAssigneeDropdown({
|
|
|
2842
2842
|
selectedOptions,
|
|
2843
2843
|
showChevron: false,
|
|
2844
2844
|
startAdornment: hasAssignee ? currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2845
|
-
|
|
2845
|
+
_chunkP63CRPWIcjs.DeletedUserAvatar,
|
|
2846
2846
|
{
|
|
2847
2847
|
size: "sm",
|
|
2848
2848
|
className: "h-6 w-6",
|
|
@@ -2868,7 +2868,7 @@ function DefaultAssigneeDropdown({
|
|
|
2868
2868
|
if (hasAssignee) {
|
|
2869
2869
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", className), children: [
|
|
2870
2870
|
currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2871
|
-
|
|
2871
|
+
_chunkP63CRPWIcjs.DeletedUserAvatar,
|
|
2872
2872
|
{
|
|
2873
2873
|
size: "md",
|
|
2874
2874
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
@@ -2979,7 +2979,7 @@ function RowValue({ value }) {
|
|
|
2979
2979
|
}
|
|
2980
2980
|
case "status": {
|
|
2981
2981
|
const { type: _type, ...props } = value;
|
|
2982
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2982
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.TicketStatusTag, { ...props });
|
|
2983
2983
|
}
|
|
2984
2984
|
case "custom":
|
|
2985
2985
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CustomValue, { content: value.content });
|
|
@@ -3079,7 +3079,7 @@ function MediaTypeSelector({
|
|
|
3079
3079
|
// changed) and cost an extra render pass on every change to say what the
|
|
3080
3080
|
// prop already said.
|
|
3081
3081
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3082
|
-
|
|
3082
|
+
_chunkCOJG2ATYcjs.Select,
|
|
3083
3083
|
{
|
|
3084
3084
|
value: value || void 0,
|
|
3085
3085
|
onValueChange: (next) => {
|
|
@@ -3089,8 +3089,8 @@ function MediaTypeSelector({
|
|
|
3089
3089
|
disabled,
|
|
3090
3090
|
defaultValue: value,
|
|
3091
3091
|
children: [
|
|
3092
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3093
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3092
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder }) }),
|
|
3093
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: mediaTypeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: option.value, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
3094
3094
|
option.icon,
|
|
3095
3095
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: option.label })
|
|
3096
3096
|
] }) }, option.value)) })
|
|
@@ -4522,10 +4522,10 @@ function useConfirm() {
|
|
|
4522
4522
|
},
|
|
4523
4523
|
[]
|
|
4524
4524
|
);
|
|
4525
|
-
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4526
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4527
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4528
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4525
|
+
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
|
|
4526
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTitle, { children: pending.title }) }),
|
|
4527
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
|
|
4528
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.ModalFooter, { children: [
|
|
4529
4529
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
|
|
4530
4530
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
|
|
4531
4531
|
] })
|
|
@@ -4579,14 +4579,14 @@ function AdminFormDrawer({
|
|
|
4579
4579
|
else onClose();
|
|
4580
4580
|
};
|
|
4581
4581
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4582
|
-
|
|
4582
|
+
_chunkUSPUZO53cjs.Drawer,
|
|
4583
4583
|
{
|
|
4584
4584
|
open: isOpen,
|
|
4585
4585
|
onOpenChange: (open) => {
|
|
4586
4586
|
if (!open) requestClose();
|
|
4587
4587
|
},
|
|
4588
4588
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4589
|
-
|
|
4589
|
+
_chunkUSPUZO53cjs.DrawerContent,
|
|
4590
4590
|
{
|
|
4591
4591
|
side: "right",
|
|
4592
4592
|
resizable: true,
|
|
@@ -4595,15 +4595,15 @@ function AdminFormDrawer({
|
|
|
4595
4595
|
storageKey,
|
|
4596
4596
|
panelClassName: "max-md:w-[calc(100vw-1rem)]",
|
|
4597
4597
|
children: [
|
|
4598
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4599
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4600
|
-
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4598
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUSPUZO53cjs.DrawerHeader, { children: [
|
|
4599
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUSPUZO53cjs.DrawerTitle, { children: title }),
|
|
4600
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUSPUZO53cjs.DrawerDescription, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: subtitle }) })
|
|
4601
4601
|
] }),
|
|
4602
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4602
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUSPUZO53cjs.DrawerBody, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4603
4603
|
"form",
|
|
4604
4604
|
{
|
|
4605
4605
|
id: formId,
|
|
4606
|
-
...
|
|
4606
|
+
..._chunkIC4IJJB2cjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4607
4607
|
className: "flex flex-col gap-[var(--spacing-system-lf)]",
|
|
4608
4608
|
onSubmit: (e) => {
|
|
4609
4609
|
e.preventDefault();
|
|
@@ -4701,16 +4701,16 @@ function AdminFormModal({
|
|
|
4701
4701
|
body: "Your edits have not been saved. Close and discard them?"
|
|
4702
4702
|
});
|
|
4703
4703
|
if (!isOpen) return null;
|
|
4704
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4705
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4706
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4704
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
|
|
4705
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.ModalHeader, { children: [
|
|
4706
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTitle, { children: title }),
|
|
4707
4707
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
4708
4708
|
] }),
|
|
4709
4709
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4710
4710
|
"form",
|
|
4711
4711
|
{
|
|
4712
4712
|
id: formId,
|
|
4713
|
-
...
|
|
4713
|
+
..._chunkIC4IJJB2cjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4714
4714
|
className: "flex min-h-0 flex-1 flex-col",
|
|
4715
4715
|
onSubmit: (e) => {
|
|
4716
4716
|
e.preventDefault();
|
|
@@ -4728,7 +4728,7 @@ function AdminFormModal({
|
|
|
4728
4728
|
// a shrink-to-fit flex item pinned to the left of a 1400px panel).
|
|
4729
4729
|
// The placeholder owns its own layout and mirrors the column count so
|
|
4730
4730
|
// the modal doesn't visibly re-flow when the entity lands.
|
|
4731
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4731
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalContent, { children: loadingContent ? (
|
|
4732
4732
|
// The one announcement: a `loadingContent` with a region of its own takes `region={false}`.
|
|
4733
4733
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2XCORRJVcjs.LoadingRegion, { label: "Loading", children: loadingContent })
|
|
4734
4734
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -4749,12 +4749,12 @@ function AdminFormModal({
|
|
|
4749
4749
|
] }, i)) }, col))
|
|
4750
4750
|
}
|
|
4751
4751
|
) })
|
|
4752
|
-
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4752
|
+
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalContent, { className: contentClassName, children }),
|
|
4753
4753
|
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
|
|
4754
4754
|
]
|
|
4755
4755
|
}
|
|
4756
4756
|
),
|
|
4757
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4757
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
|
|
4758
4758
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
|
|
4759
4759
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
4760
4760
|
footerStatus,
|
|
@@ -6053,7 +6053,7 @@ function EmbedViewerFrame({
|
|
|
6053
6053
|
const controllerRef = _react.useRef.call(void 0, null);
|
|
6054
6054
|
_react.useEffect.call(void 0, () => {
|
|
6055
6055
|
if (!fullscreenControl) return void 0;
|
|
6056
|
-
const controller = new (0,
|
|
6056
|
+
const controller = new (0, _chunkIC4IJJB2cjs.FullscreenSwitchController)({
|
|
6057
6057
|
target: () => frameRef.current,
|
|
6058
6058
|
onFullscreenChange: setIsFullscreen
|
|
6059
6059
|
});
|
|
@@ -6165,9 +6165,9 @@ var KIND_HEADING = {
|
|
|
6165
6165
|
design: "Claude Design"
|
|
6166
6166
|
};
|
|
6167
6167
|
function ClaudeEmbed({ url, kind = "artifact", title, height, iframeLoading = "lazy" }) {
|
|
6168
|
-
const { src: mirrorSrc, status } =
|
|
6168
|
+
const { src: mirrorSrc, status } = _chunkUO2EJGRJcjs.useClaudeMirrorSrc.call(void 0, url);
|
|
6169
6169
|
const isProbing = status === "probing";
|
|
6170
|
-
const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => (
|
|
6170
|
+
const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => ( _chunkOH5TXFRRcjs.toClaudeEmbedUrl.call(void 0, url)));
|
|
6171
6171
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6172
6172
|
EmbedViewerFrame,
|
|
6173
6173
|
{
|
|
@@ -6242,12 +6242,12 @@ function SlidesViewToggle({ view, onChange }) {
|
|
|
6242
6242
|
}
|
|
6243
6243
|
function FigmaEmbed({ url, title, height, iframeLoading = "lazy", loading = false }) {
|
|
6244
6244
|
const [view, setView] = _react.useState.call(void 0, "present");
|
|
6245
|
-
const isSlides = url ?
|
|
6246
|
-
const embedSrc = url ?
|
|
6245
|
+
const isSlides = url ? _chunkOH5TXFRRcjs.isFigmaSlidesUrl.call(void 0, url) : false;
|
|
6246
|
+
const embedSrc = url ? _chunkOH5TXFRRcjs.toFigmaEmbedUrl.call(void 0, url, { slidesView: view }) : null;
|
|
6247
6247
|
const originalUrl = (() => {
|
|
6248
6248
|
if (!url) return null;
|
|
6249
6249
|
try {
|
|
6250
|
-
const parsed = new URL(
|
|
6250
|
+
const parsed = new URL(_chunkOH5TXFRRcjs.toFigmaOriginalUrl.call(void 0, url));
|
|
6251
6251
|
const host = parsed.hostname.toLowerCase();
|
|
6252
6252
|
const okHost = host === "figma.com" || host.endsWith(".figma.com");
|
|
6253
6253
|
const okProtocol = parsed.protocol === "https:" || parsed.protocol === "http:";
|
|
@@ -6469,7 +6469,7 @@ function MarkdownImage({ src, alt }) {
|
|
|
6469
6469
|
alt: _nullishCoalesce(alt, () => ( "No image available")),
|
|
6470
6470
|
width: DISPLAY_W,
|
|
6471
6471
|
height: Math.round(DISPLAY_W / ratio),
|
|
6472
|
-
sizes:
|
|
6472
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.column,
|
|
6473
6473
|
loading: "lazy",
|
|
6474
6474
|
className: "mx-auto my-2 block h-auto w-full rounded-lg object-contain",
|
|
6475
6475
|
style: { maxWidth: `calc(${MAX_H_REM}rem * ${ratio})`, maxHeight: `${MAX_H_REM}rem` }
|
|
@@ -6537,8 +6537,8 @@ var Favicon = ({ src, size = "w-6 h-6" }) => /* @__PURE__ */ _jsxruntime.jsx.cal
|
|
|
6537
6537
|
src,
|
|
6538
6538
|
alt: "",
|
|
6539
6539
|
className: size,
|
|
6540
|
-
width:
|
|
6541
|
-
height:
|
|
6540
|
+
width: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.glyph,
|
|
6541
|
+
height: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.glyph,
|
|
6542
6542
|
unoptimized: true,
|
|
6543
6543
|
onError: (e) => {
|
|
6544
6544
|
const img = e.target;
|
|
@@ -6699,7 +6699,7 @@ var OGLinkPreview = ({
|
|
|
6699
6699
|
type: "website",
|
|
6700
6700
|
favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`
|
|
6701
6701
|
} : null)));
|
|
6702
|
-
const placeholderImageUrl =
|
|
6702
|
+
const placeholderImageUrl = _chunkETZFBB7Ocjs.useOgPlaceholderUrl.call(void 0, {
|
|
6703
6703
|
title: _optionalChain([effectiveData, 'optionalAccess', _124 => _124.title]),
|
|
6704
6704
|
siteName: _optionalChain([effectiveData, 'optionalAccess', _125 => _125.siteName]) || domain,
|
|
6705
6705
|
enabled: enablePlaceholder && !isTile
|
|
@@ -6715,7 +6715,7 @@ var OGLinkPreview = ({
|
|
|
6715
6715
|
const hasImage = !!resolvedImageUrl;
|
|
6716
6716
|
const isCuratedImage = _optionalChain([resolvedImage, 'optionalAccess', _129 => _129.source]) === "curated";
|
|
6717
6717
|
const isPlaceholder = _optionalChain([resolvedImage, 'optionalAccess', _130 => _130.source]) === "placeholder";
|
|
6718
|
-
const bgColor =
|
|
6718
|
+
const bgColor = _chunkETZFBB7Ocjs.useImageEdgeColor.call(void 0, _nullishCoalesce(resolvedImageUrl, () => ( null)), "var(--color-bg-surface)");
|
|
6719
6719
|
const renderSkeleton = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6720
6720
|
OGLinkPreviewSkeleton,
|
|
6721
6721
|
{
|
|
@@ -6736,12 +6736,12 @@ var OGLinkPreview = ({
|
|
|
6736
6736
|
children: [
|
|
6737
6737
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TILE_SOURCE_ROW_CLASS, children: [
|
|
6738
6738
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Favicon, { src: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`, size: "w-4 h-4" }),
|
|
6739
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6739
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: name }),
|
|
6740
6740
|
meta != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "ml-auto flex flex-none items-center gap-1.5 text-ods-text-secondary", children: meta })
|
|
6741
6741
|
] }),
|
|
6742
6742
|
kicker != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden text-ods-accent text-h5", style: lineClamp(1), children: kicker }),
|
|
6743
6743
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6744
|
-
|
|
6744
|
+
_chunkCOJG2ATYcjs.TruncateText,
|
|
6745
6745
|
{
|
|
6746
6746
|
lines: 2,
|
|
6747
6747
|
variant: "h3",
|
|
@@ -6750,7 +6750,7 @@ var OGLinkPreview = ({
|
|
|
6750
6750
|
children: curatedTitle || domainToTitle(domain)
|
|
6751
6751
|
}
|
|
6752
6752
|
),
|
|
6753
|
-
curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6753
|
+
curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", children: curatedDescription })
|
|
6754
6754
|
]
|
|
6755
6755
|
}
|
|
6756
6756
|
);
|
|
@@ -6792,7 +6792,7 @@ var OGLinkPreview = ({
|
|
|
6792
6792
|
alt: title,
|
|
6793
6793
|
className: "rounded-md object-cover",
|
|
6794
6794
|
fill: true,
|
|
6795
|
-
sizes:
|
|
6795
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.full,
|
|
6796
6796
|
unoptimized: true
|
|
6797
6797
|
}
|
|
6798
6798
|
);
|
|
@@ -6817,7 +6817,7 @@ var OGLinkPreview = ({
|
|
|
6817
6817
|
alt: title,
|
|
6818
6818
|
className: "rounded-md object-contain transition-transform duration-300 group-hover:scale-105",
|
|
6819
6819
|
fill: true,
|
|
6820
|
-
sizes:
|
|
6820
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.full,
|
|
6821
6821
|
unoptimized: true,
|
|
6822
6822
|
onError: handleImageError
|
|
6823
6823
|
}
|
|
@@ -6896,8 +6896,8 @@ var OGLinkPreview = ({
|
|
|
6896
6896
|
children: [
|
|
6897
6897
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Favicon, { src: faviconSrc }) }),
|
|
6898
6898
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
6899
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6900
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6899
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { className: "font-semibold transition-colors group-hover:text-ods-accent", children: title }),
|
|
6900
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { tone: "secondary", children: description })
|
|
6901
6901
|
] }),
|
|
6902
6902
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExternalLinkIcon, {})
|
|
6903
6903
|
]
|
|
@@ -6933,8 +6933,8 @@ var OGLinkPreview = ({
|
|
|
6933
6933
|
src: logoSrc,
|
|
6934
6934
|
alt: publicationName || "",
|
|
6935
6935
|
className: _chunk63A4GZMBcjs.cn.call(void 0, DEFAULT_LOGO_CLASS, "object-contain"),
|
|
6936
|
-
width:
|
|
6937
|
-
height:
|
|
6936
|
+
width: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.glyph,
|
|
6937
|
+
height: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.glyph,
|
|
6938
6938
|
unoptimized: true,
|
|
6939
6939
|
onError: (e) => {
|
|
6940
6940
|
const img = e.target;
|
|
@@ -6944,7 +6944,7 @@ var OGLinkPreview = ({
|
|
|
6944
6944
|
),
|
|
6945
6945
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
6946
6946
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6947
|
-
|
|
6947
|
+
_chunkCOJG2ATYcjs.TruncateText,
|
|
6948
6948
|
{
|
|
6949
6949
|
lines: 2,
|
|
6950
6950
|
className: "min-h-[calc(var(--font-line-space-h4-body)*2)] font-semibold transition-colors group-hover:text-ods-accent",
|
|
@@ -6953,7 +6953,7 @@ var OGLinkPreview = ({
|
|
|
6953
6953
|
}
|
|
6954
6954
|
),
|
|
6955
6955
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6956
|
-
|
|
6956
|
+
_chunkCOJG2ATYcjs.TruncateText,
|
|
6957
6957
|
{
|
|
6958
6958
|
lines: 2,
|
|
6959
6959
|
tone: "secondary",
|
|
@@ -6963,9 +6963,9 @@ var OGLinkPreview = ({
|
|
|
6963
6963
|
}
|
|
6964
6964
|
),
|
|
6965
6965
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2 text-ods-text-secondary text-h6", children: [
|
|
6966
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6966
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: effectiveData.siteName }),
|
|
6967
6967
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "\u2022" }),
|
|
6968
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6968
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { as: "span", variant: "h6", className: "text-current", children: ogDomain }),
|
|
6969
6969
|
meta
|
|
6970
6970
|
] })
|
|
6971
6971
|
] })
|
|
@@ -7126,7 +7126,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
|
|
|
7126
7126
|
};
|
|
7127
7127
|
const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
|
|
7128
7128
|
const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7129
|
-
|
|
7129
|
+
_chunkO3EKOXFZcjs.Video,
|
|
7130
7130
|
{
|
|
7131
7131
|
url: item.src,
|
|
7132
7132
|
poster: item.poster ? displayImageSrc(item.poster) : void 0,
|
|
@@ -7176,7 +7176,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
|
|
|
7176
7176
|
),
|
|
7177
7177
|
priority: mainImagePriority,
|
|
7178
7178
|
loading: mainImagePriority ? "eager" : "lazy",
|
|
7179
|
-
sizes:
|
|
7179
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.full,
|
|
7180
7180
|
width: 1428,
|
|
7181
7181
|
height: 802,
|
|
7182
7182
|
unoptimized: true,
|
|
@@ -7321,7 +7321,7 @@ var formatTimeAgo = (timestamp) => {
|
|
|
7321
7321
|
return `${Math.floor(diffSeconds / 86400)}d ago`;
|
|
7322
7322
|
};
|
|
7323
7323
|
function RedditEmbedClient({ url, maxWidth = 700, rel }) {
|
|
7324
|
-
const postLinkRel =
|
|
7324
|
+
const postLinkRel = _chunkLFEURIZNcjs.renderedLinkRel.call(void 0, rel, true);
|
|
7325
7325
|
const { redditProxyUrl } = useRichMarkdownRuntime();
|
|
7326
7326
|
const [redditData, setRedditData] = _react.useState.call(void 0, null);
|
|
7327
7327
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7653,7 +7653,7 @@ var UserIcon3 = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { wid
|
|
|
7653
7653
|
] });
|
|
7654
7654
|
var XIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2TEMEXDTcjs.XLogoIcon, { className: "h-5 w-5", color: "currentColor" });
|
|
7655
7655
|
function TwitterEmbedClient({ url, tweetId, maxWidth = 700, rel }) {
|
|
7656
|
-
const postLinkRel =
|
|
7656
|
+
const postLinkRel = _chunkLFEURIZNcjs.renderedLinkRel.call(void 0, rel, true);
|
|
7657
7657
|
const { twitterProxyUrl } = useRichMarkdownRuntime();
|
|
7658
7658
|
const [tweetData, setTweetData] = _react.useState.call(void 0, null);
|
|
7659
7659
|
const [fetchLoading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7855,7 +7855,7 @@ function buildRichEmbedOverrides({
|
|
|
7855
7855
|
ogEndpointPath,
|
|
7856
7856
|
textSizes
|
|
7857
7857
|
}) {
|
|
7858
|
-
const standard =
|
|
7858
|
+
const standard = _chunkLFEURIZNcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
|
|
7859
7859
|
return {
|
|
7860
7860
|
// Fence-language embeds (```youtube-embed etc.); everything else
|
|
7861
7861
|
// (mermaid, highlighted blocks, inline code) falls through to `standard`.
|
|
@@ -7865,7 +7865,7 @@ function buildRichEmbedOverrides({
|
|
|
7865
7865
|
const language = match ? match[1] : "";
|
|
7866
7866
|
const fenceText = () => String(children).replace(/\n$/, "").trim();
|
|
7867
7867
|
if (language === "youtube-embed") {
|
|
7868
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7868
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Video, { kind: "youtube", url: fenceText() });
|
|
7869
7869
|
}
|
|
7870
7870
|
if (language === "reddit-embed") {
|
|
7871
7871
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
|
|
@@ -7906,7 +7906,7 @@ function buildRichEmbedOverrides({
|
|
|
7906
7906
|
"data-figma-url": figmaUrl
|
|
7907
7907
|
} = divProps;
|
|
7908
7908
|
if (className === "youtube-embed" && videoId) {
|
|
7909
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7909
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Video, { kind: "youtube", url: videoId });
|
|
7910
7910
|
}
|
|
7911
7911
|
if (className === "reddit-embed" && postUrl) {
|
|
7912
7912
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
|
|
@@ -7991,23 +7991,23 @@ function buildRichEmbedOverrides({
|
|
|
7991
7991
|
// rich-markdown runtime (Supabase optimization on the hub, identity
|
|
7992
7992
|
// elsewhere). Guard against empty `![]()`.
|
|
7993
7993
|
img: ({ src, alt }) => {
|
|
7994
|
-
if (!
|
|
7994
|
+
if (!_chunkLFEURIZNcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7995
7995
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
|
|
7996
7996
|
},
|
|
7997
7997
|
// Raw <iframe> tags in stored content (a pasted YouTube embed). A YouTube one becomes the same click-to-play
|
|
7998
7998
|
// facade as the `youtube-embed` fence: the raw iframe loaded YouTube's whole player (about 470 KB of script) with
|
|
7999
7999
|
// the page, on every post that carried one (CU-17tkuw5xp4q). Any other iframe loads when it nears the screen.
|
|
8000
8000
|
iframe: ({ node: _node, src, ...rest }) => {
|
|
8001
|
-
if (!
|
|
8001
|
+
if (!_chunkLFEURIZNcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
8002
8002
|
const url = src.trim();
|
|
8003
|
-
if (
|
|
8003
|
+
if (_chunkO3EKOXFZcjs.extractYouTubeId.call(void 0, url)) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Video, { kind: "youtube", url });
|
|
8004
8004
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "iframe", { ...rest, src: url, loading: "lazy" });
|
|
8005
8005
|
},
|
|
8006
8006
|
// Raw <video> tags in stored content (blog publisher injection) route
|
|
8007
8007
|
// to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
|
|
8008
8008
|
video: ({ src, poster, className }) => {
|
|
8009
|
-
if (!
|
|
8010
|
-
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,
|
|
8009
|
+
if (!_chunkLFEURIZNcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
8010
|
+
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, _chunkO3EKOXFZcjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
|
|
8011
8011
|
}
|
|
8012
8012
|
};
|
|
8013
8013
|
}
|
|
@@ -8115,7 +8115,7 @@ var processShortcodes = (content) => {
|
|
|
8115
8115
|
try {
|
|
8116
8116
|
const urlObj = new URL(url);
|
|
8117
8117
|
const hostname = urlObj.hostname.toLowerCase();
|
|
8118
|
-
const hostIs = (domain) =>
|
|
8118
|
+
const hostIs = (domain) => _chunkNMWLXHFHcjs.hostMatches.call(void 0, hostname, domain);
|
|
8119
8119
|
const isYouTubeVideo = hostIs("youtube.com") && urlObj.searchParams.has("v") || hostIs("youtu.be");
|
|
8120
8120
|
if (isYouTubeVideo || hostIs("reddit.com") || hostIs("twitter.com") || hostIs("x.com") || hostIs("figma.com")) {
|
|
8121
8121
|
return match;
|
|
@@ -8193,13 +8193,13 @@ var RichMarkdownInner = ({
|
|
|
8193
8193
|
},
|
|
8194
8194
|
[resolveLinkEndpointUrl, resolveSource]
|
|
8195
8195
|
);
|
|
8196
|
-
const textSizes = _react.useMemo.call(void 0, () =>
|
|
8196
|
+
const textSizes = _react.useMemo.call(void 0, () => _chunkLFEURIZNcjs.resolveTextSizeConfig.call(void 0, "article"), []);
|
|
8197
8197
|
const componentOverrides = _react.useMemo.call(void 0,
|
|
8198
8198
|
() => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
|
|
8199
8199
|
[ogApiBaseUrl, ogEndpointPath, textSizes]
|
|
8200
8200
|
);
|
|
8201
8201
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8202
|
-
|
|
8202
|
+
_chunkLFEURIZNcjs.MarkdownEngine,
|
|
8203
8203
|
{
|
|
8204
8204
|
content,
|
|
8205
8205
|
className,
|
|
@@ -8225,7 +8225,7 @@ var RichMarkdownRendererImpl = ({
|
|
|
8225
8225
|
className = "",
|
|
8226
8226
|
sectionIds,
|
|
8227
8227
|
onInternalLinkClick,
|
|
8228
|
-
brokenLinks =
|
|
8228
|
+
brokenLinks = _chunkLFEURIZNcjs.NO_BROKEN_LINKS,
|
|
8229
8229
|
currentPath,
|
|
8230
8230
|
resolveSource = "openframe-docs",
|
|
8231
8231
|
resolveLinkEndpointUrl = "/api/docs/resolve-link",
|
|
@@ -9353,7 +9353,7 @@ function FilterModal({
|
|
|
9353
9353
|
const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _167 => _167.defaultSort]), () => ( "desc"));
|
|
9354
9354
|
const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _168 => _168.sort]), () => ( dateDefaultSort)));
|
|
9355
9355
|
const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _169 => _169.range]));
|
|
9356
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
9356
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkEIACEY2Lcjs.useScrollFade.call(void 0, );
|
|
9357
9357
|
const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
|
|
9358
9358
|
const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
|
|
9359
9359
|
_react.useEffect.call(void 0, () => {
|
|
@@ -9399,15 +9399,15 @@ function FilterModal({
|
|
|
9399
9399
|
const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
|
|
9400
9400
|
const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
|
|
9401
9401
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9402
|
-
|
|
9402
|
+
_chunkEIACEY2Lcjs.Modal,
|
|
9403
9403
|
{
|
|
9404
9404
|
isOpen,
|
|
9405
9405
|
onClose,
|
|
9406
9406
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "max-h-[90vh] max-w-none md:max-w-[min(42rem,calc(100vw-2rem))]", className),
|
|
9407
9407
|
children: [
|
|
9408
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9408
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTitle, { children: title }) }),
|
|
9409
9409
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9410
|
-
|
|
9410
|
+
_chunkEIACEY2Lcjs.ModalContent,
|
|
9411
9411
|
{
|
|
9412
9412
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
9413
9413
|
"flex min-h-0 flex-1 flex-col",
|
|
@@ -9503,12 +9503,12 @@ function FilterModal({
|
|
|
9503
9503
|
)
|
|
9504
9504
|
}
|
|
9505
9505
|
),
|
|
9506
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9507
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9506
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
|
|
9507
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
|
|
9508
9508
|
] })
|
|
9509
9509
|
}
|
|
9510
9510
|
),
|
|
9511
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9511
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.ModalFooter, { children: [
|
|
9512
9512
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
|
|
9513
9513
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
|
|
9514
9514
|
] })
|
|
@@ -9572,7 +9572,7 @@ function renderAdvancedPageContainer({
|
|
|
9572
9572
|
contentClassName,
|
|
9573
9573
|
showHeader = true
|
|
9574
9574
|
}, inScope = false) {
|
|
9575
|
-
const titleNode = title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9575
|
+
const titleNode = title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.PageTitle, { className: PAGE_CONTAINER_TITLE_CLASS, children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }) : inScope && title === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageContainerTitleSkeleton, {}) : null;
|
|
9576
9576
|
const subtitleNode = subtitle ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: PAGE_CONTAINER_SUBTITLE_CLASS, children: subtitle }) : inScope && subtitle === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageContainerSubtitleSkeleton, {}) : null;
|
|
9577
9577
|
const getActionsVariant = () => {
|
|
9578
9578
|
if (actionsVariant) return actionsVariant;
|
|
@@ -9581,7 +9581,7 @@ function renderAdvancedPageContainer({
|
|
|
9581
9581
|
};
|
|
9582
9582
|
const renderActions = () => {
|
|
9583
9583
|
if (!actions || actions.length === 0) return null;
|
|
9584
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9584
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.PageActions, { variant: getActionsVariant(), actions, menuActions });
|
|
9585
9585
|
};
|
|
9586
9586
|
const needsBottomPadding = actions && actions.length > 0 && getActionsVariant() === "primary-buttons";
|
|
9587
9587
|
const paddingClasses = {
|
|
@@ -9604,7 +9604,7 @@ function renderAdvancedPageContainer({
|
|
|
9604
9604
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between gap-4 content-md:flex-col content-md:items-start content-md:justify-start content-lg:flex-row content-lg:items-end content-lg:justify-between", children: [
|
|
9605
9605
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
9606
9606
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9607
|
-
|
|
9607
|
+
_chunkCOJG2ATYcjs.BackButton,
|
|
9608
9608
|
{
|
|
9609
9609
|
onClick: backButton.onClick,
|
|
9610
9610
|
label: backButton.label,
|
|
@@ -9624,7 +9624,7 @@ function renderAdvancedPageContainer({
|
|
|
9624
9624
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 content-md:flex-col content-md:items-start content-md:justify-start content-lg:flex-row content-lg:items-center content-lg:justify-between", children: [
|
|
9625
9625
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
9626
9626
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9627
|
-
|
|
9627
|
+
_chunkCOJG2ATYcjs.BackButton,
|
|
9628
9628
|
{
|
|
9629
9629
|
onClick: backButton.onClick,
|
|
9630
9630
|
label: backButton.label,
|
|
@@ -9644,7 +9644,7 @@ function renderAdvancedPageContainer({
|
|
|
9644
9644
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between gap-4 content-md:flex-col content-md:items-start content-md:justify-start content-lg:flex-row content-lg:items-end content-lg:justify-between", children: [
|
|
9645
9645
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
9646
9646
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9647
|
-
|
|
9647
|
+
_chunkCOJG2ATYcjs.BackButton,
|
|
9648
9648
|
{
|
|
9649
9649
|
onClick: backButton.onClick,
|
|
9650
9650
|
label: backButton.label,
|
|
@@ -9732,7 +9732,7 @@ function ListPageLayout({
|
|
|
9732
9732
|
}) {
|
|
9733
9733
|
const [mobileFilterOpen, setMobileFilterOpen] = _react.useState.call(void 0, false);
|
|
9734
9734
|
const [localSearchValue, setLocalSearchValue] = _react.useState.call(void 0, searchValue);
|
|
9735
|
-
const debouncedSearchValue =
|
|
9735
|
+
const debouncedSearchValue = _chunkG7GF4PWAcjs.useDebounce.call(void 0, localSearchValue, 500);
|
|
9736
9736
|
const [syncedSearchValue, setSyncedSearchValue] = _react.useState.call(void 0, searchValue);
|
|
9737
9737
|
if (syncedSearchValue !== searchValue) {
|
|
9738
9738
|
setSyncedSearchValue(searchValue);
|
|
@@ -9999,7 +9999,7 @@ var BenefitCardGrid = ({ children, className = "", columns = 2 }) => {
|
|
|
9999
9999
|
|
|
10000
10000
|
|
|
10001
10001
|
function PlatformBrowseButton({ item }) {
|
|
10002
|
-
const linkProps =
|
|
10002
|
+
const linkProps = _chunkLFEURIZNcjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
|
|
10003
10003
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "outline", linkProps, rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-4 w-4" }), children: [
|
|
10004
10004
|
"Browse ",
|
|
10005
10005
|
item.buttonText
|
|
@@ -10518,10 +10518,10 @@ var OSTypeBadge = ({
|
|
|
10518
10518
|
if (!osType) {
|
|
10519
10519
|
return labelOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, "text-ods-text-secondary", className), children: "Unknown" }) : null;
|
|
10520
10520
|
}
|
|
10521
|
-
const normalized =
|
|
10521
|
+
const normalized = _chunkIC4IJJB2cjs.normalizeOSType.call(void 0, osType);
|
|
10522
10522
|
if (!normalized && !labelOnly) return null;
|
|
10523
|
-
const label =
|
|
10524
|
-
const IconComponent =
|
|
10523
|
+
const label = _chunkIC4IJJB2cjs.getOSLabel.call(void 0, osType);
|
|
10524
|
+
const IconComponent = _chunkIC4IJJB2cjs.getOSIcon.call(void 0, osType);
|
|
10525
10525
|
if (iconOnly && IconComponent) {
|
|
10526
10526
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: _chunk63A4GZMBcjs.cn.call(void 0, iconSize, "text-ods-text-secondary", className) });
|
|
10527
10527
|
}
|
|
@@ -10569,8 +10569,8 @@ function DeviceCard({
|
|
|
10569
10569
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || !!loadingProp;
|
|
10570
10570
|
const formatLastSeen = (lastSeen) => {
|
|
10571
10571
|
if (!lastSeen) return null;
|
|
10572
|
-
const date =
|
|
10573
|
-
return date === "\u2014" ? null : `${date} ${
|
|
10572
|
+
const date = _chunkEIACEY2Lcjs.formatDate.call(void 0, lastSeen);
|
|
10573
|
+
return date === "\u2014" ? null : `${date} ${_chunkEIACEY2Lcjs.formatTime.call(void 0, lastSeen)}`;
|
|
10574
10574
|
};
|
|
10575
10575
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10576
10576
|
"div",
|
|
@@ -10818,7 +10818,7 @@ function ComplianceLogo({
|
|
|
10818
10818
|
fallback = null,
|
|
10819
10819
|
className
|
|
10820
10820
|
}) {
|
|
10821
|
-
const standard =
|
|
10821
|
+
const standard = _chunkIC4IJJB2cjs.complianceStandardForName.call(void 0, ...names);
|
|
10822
10822
|
if (!standard) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: fallback });
|
|
10823
10823
|
const Official = standard.logo ? COMPLIANCE_LOGOS[standard.logo] : null;
|
|
10824
10824
|
return Official ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10899,7 +10899,7 @@ function FeatureCardGridView({
|
|
|
10899
10899
|
if (allCardsHaveNoBorders) {
|
|
10900
10900
|
finalCardClassName = "bg-transparent p-0 overflow-visible border-0 shadow-none rounded-none";
|
|
10901
10901
|
}
|
|
10902
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10902
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Card, { className: `${finalCardClassName} ${className}`, children: Array.from({ length: rows }, (_, rowIndex) => {
|
|
10903
10903
|
const startIndex = rowIndex * itemsPerRow;
|
|
10904
10904
|
const rowItems = items.slice(startIndex, startIndex + itemsPerRow);
|
|
10905
10905
|
const isLastRow = rowIndex === rows - 1;
|
|
@@ -10933,7 +10933,7 @@ function FeatureCardGridView({
|
|
|
10933
10933
|
item.icon && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start justify-between", children: [
|
|
10934
10934
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, item.icon, { size: 80, color: item.iconColor }),
|
|
10935
10935
|
item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10936
|
-
|
|
10936
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
10937
10937
|
{
|
|
10938
10938
|
text: item.badge.text,
|
|
10939
10939
|
variant: item.badge.variant || "card",
|
|
@@ -10942,7 +10942,7 @@ function FeatureCardGridView({
|
|
|
10942
10942
|
)
|
|
10943
10943
|
] }),
|
|
10944
10944
|
!item.icon && item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-start justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10945
|
-
|
|
10945
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
10946
10946
|
{
|
|
10947
10947
|
text: item.badge.text,
|
|
10948
10948
|
variant: item.badge.variant || "card",
|
|
@@ -11675,7 +11675,7 @@ function OrganizationCardSkeleton({
|
|
|
11675
11675
|
..._chunk63A4GZMBcjs.loadingItemProps.call(void 0, props),
|
|
11676
11676
|
children: [
|
|
11677
11677
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_HEADER_CLASS, children: [
|
|
11678
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11678
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.EntityImage, { src: null }),
|
|
11679
11679
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_TEXT_CLASS, children: [
|
|
11680
11680
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-3/4" }),
|
|
11681
11681
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-1/2" })
|
|
@@ -11747,7 +11747,7 @@ function OrganizationCard({
|
|
|
11747
11747
|
}
|
|
11748
11748
|
),
|
|
11749
11749
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_HEADER_CLASS, children: [
|
|
11750
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11750
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.EntityImage, { src: fetchedImageUrl || organization.imageUrl, alt: organization.name }),
|
|
11751
11751
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: ORGANIZATION_CARD_TEXT_CLASS, children: [
|
|
11752
11752
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "truncate text-ods-text-primary transition-colors text-h3", title: organization.name, children: organization.name }),
|
|
11753
11753
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -11814,8 +11814,8 @@ function ServiceCard({
|
|
|
11814
11814
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
11815
11815
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-12 flex-shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: resolvedIcon }),
|
|
11816
11816
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0", children: [
|
|
11817
|
-
loading && !title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-40 max-w-full" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11818
|
-
loading && subtitle === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-56 max-w-full" }) : subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11817
|
+
loading && !title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h3", className: "w-40 max-w-full" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h3", children: title }),
|
|
11818
|
+
loading && subtitle === "" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-56 max-w-full" }) : subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: subtitle })
|
|
11819
11819
|
] })
|
|
11820
11820
|
] }),
|
|
11821
11821
|
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { label: tag.label, variant: "outline", className: "shrink-0 self-start", loading })
|
|
@@ -11826,7 +11826,7 @@ function ServiceCard({
|
|
|
11826
11826
|
function ServiceCardRowItem({ row, loading: loadingProp }) {
|
|
11827
11827
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loadingProp;
|
|
11828
11828
|
const [revealed, setRevealed] = _react.useState.call(void 0, false);
|
|
11829
|
-
const { copy, copied } =
|
|
11829
|
+
const { copy, copied } = _chunkUO2EJGRJcjs.useCopyToClipboard.call(void 0, );
|
|
11830
11830
|
const { ref: valueRef, isTruncated: valueTruncated } = _chunkCOWMXUHNcjs.useIsTruncated.call(void 0, row.value);
|
|
11831
11831
|
const actions = _react.useMemo.call(void 0, () => rowActions(row), [row]);
|
|
11832
11832
|
const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
|
|
@@ -11834,7 +11834,7 @@ function ServiceCardRowItem({ row, loading: loadingProp }) {
|
|
|
11834
11834
|
const handleCopy = () => copy(_nullishCoalesce(row.copyValue, () => ( row.value)));
|
|
11835
11835
|
const openInNewTab2 = () => {
|
|
11836
11836
|
if (!row.href) return;
|
|
11837
|
-
|
|
11837
|
+
_chunkG7GF4PWAcjs.executeNewTabNavigation.call(void 0, { runtime, href: row.href });
|
|
11838
11838
|
};
|
|
11839
11839
|
const labelColumn = loading ? row.label !== void 0 : !!row.label;
|
|
11840
11840
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: SERVICE_CARD_ROW_CLASS, children: [
|
|
@@ -11953,7 +11953,7 @@ function PersonCell({
|
|
|
11953
11953
|
const displayName = name || fallbackName;
|
|
11954
11954
|
const scale = PERSON_CELL_SIZE[size];
|
|
11955
11955
|
const nameLine = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11956
|
-
|
|
11956
|
+
_chunkCOJG2ATYcjs.TruncateText,
|
|
11957
11957
|
{
|
|
11958
11958
|
variant: scale.primary,
|
|
11959
11959
|
className: onClick ? "text-ods-accent group-hover/person-cell:underline" : void 0,
|
|
@@ -11964,7 +11964,7 @@ function PersonCell({
|
|
|
11964
11964
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { size: scale.avatar, src: _nullishCoalesce(avatarUrl, () => ( void 0)), alt: displayName, fallback: displayName }),
|
|
11965
11965
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
11966
11966
|
nameLine,
|
|
11967
|
-
lines === 2 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11967
|
+
lines === 2 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: secondary === void 0 ? " " : secondary || "\xB7" }) : null
|
|
11968
11968
|
] })
|
|
11969
11969
|
] });
|
|
11970
11970
|
const cell = onClick ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -12875,7 +12875,7 @@ function DataTableRowImpl({
|
|
|
12875
12875
|
const containerRef = _react.useRef.call(void 0, null);
|
|
12876
12876
|
const handleClick = _react.useCallback.call(void 0,
|
|
12877
12877
|
(e) => {
|
|
12878
|
-
if (!
|
|
12878
|
+
if (!_chunkIC4IJJB2cjs.isOwnClick.call(void 0, e.target, containerRef.current)) {
|
|
12879
12879
|
if (isLinkMode) e.preventDefault();
|
|
12880
12880
|
return;
|
|
12881
12881
|
}
|
|
@@ -12889,7 +12889,7 @@ function DataTableRowImpl({
|
|
|
12889
12889
|
if (!(target instanceof Element) || !_optionalChain([container, 'optionalAccess', _224 => _224.contains, 'call', _225 => _225(target)])) return;
|
|
12890
12890
|
const nestedLink = target.closest("a");
|
|
12891
12891
|
if (nestedLink && nestedLink !== container && container.contains(nestedLink)) return;
|
|
12892
|
-
if (!
|
|
12892
|
+
if (!_chunkIC4IJJB2cjs.isOwnClick.call(void 0, target, container) || target.closest(ROW_LINK_CONTROL_SELECTOR)) e.preventDefault();
|
|
12893
12893
|
}, []);
|
|
12894
12894
|
const containerClassName = _chunk63A4GZMBcjs.cn.call(void 0,
|
|
12895
12895
|
DATA_TABLE_ROW_FRAME_CLASS,
|
|
@@ -13019,7 +13019,7 @@ function DataTableBody({
|
|
|
13019
13019
|
const skeletonRowClassName = typeof rowClassName === "string" ? rowClassName : void 0;
|
|
13020
13020
|
if (loading && loadingCells && hasRows) {
|
|
13021
13021
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13022
|
-
|
|
13022
|
+
_chunkLFEURIZNcjs.LoadingFallback,
|
|
13023
13023
|
{
|
|
13024
13024
|
label: "Loading results",
|
|
13025
13025
|
status: loadingRegion && !inScope,
|
|
@@ -13368,7 +13368,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13368
13368
|
// child of the cell.
|
|
13369
13369
|
_optionalChain([meta, 'optionalAccess', _244 => _244.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13370
13370
|
filterTrigger,
|
|
13371
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13371
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIC4IJJB2cjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13372
13372
|
] }) : filterTrigger
|
|
13373
13373
|
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13374
13374
|
"div",
|
|
@@ -13393,7 +13393,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13393
13393
|
// centred on the row.
|
|
13394
13394
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13395
13395
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13396
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13396
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIC4IJJB2cjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13397
13397
|
] })
|
|
13398
13398
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13399
13399
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -13632,7 +13632,7 @@ function PhoneInput({
|
|
|
13632
13632
|
placeholder = "Phone Number (optional)",
|
|
13633
13633
|
onKeyDown
|
|
13634
13634
|
}) {
|
|
13635
|
-
const { priority, others } = _react.useMemo.call(void 0, () =>
|
|
13635
|
+
const { priority, others } = _react.useMemo.call(void 0, () => _chunkIC4IJJB2cjs.getCountryPhoneData.call(void 0, ), []);
|
|
13636
13636
|
const selectedCountry = _react.useMemo.call(void 0,
|
|
13637
13637
|
() => [...priority, ...others].find((c) => c.code === countryCode),
|
|
13638
13638
|
[countryCode, priority, others]
|
|
@@ -13647,7 +13647,7 @@ function PhoneInput({
|
|
|
13647
13647
|
_optionalChain([onValidationChange, 'optionalCall', _261 => _261(false)]);
|
|
13648
13648
|
return;
|
|
13649
13649
|
}
|
|
13650
|
-
const invalid = !
|
|
13650
|
+
const invalid = !_chunkIC4IJJB2cjs.validatePhoneNumber.call(void 0, phone, countryCode);
|
|
13651
13651
|
setIsInvalid(invalid);
|
|
13652
13652
|
_optionalChain([onValidationChange, 'optionalCall', _262 => _262(invalid)]);
|
|
13653
13653
|
},
|
|
@@ -13667,7 +13667,7 @@ function PhoneInput({
|
|
|
13667
13667
|
}, []);
|
|
13668
13668
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 gap-2", children: [
|
|
13669
13669
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13670
|
-
|
|
13670
|
+
_chunkCOJG2ATYcjs.Select,
|
|
13671
13671
|
{
|
|
13672
13672
|
value: countryCode,
|
|
13673
13673
|
onValueChange: (val) => {
|
|
@@ -13678,14 +13678,14 @@ function PhoneInput({
|
|
|
13678
13678
|
},
|
|
13679
13679
|
disabled,
|
|
13680
13680
|
children: [
|
|
13681
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13681
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "w-[130px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { children: selectedCountry && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5", children: [
|
|
13682
13682
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.flag }),
|
|
13683
13683
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.dialCode })
|
|
13684
13684
|
] }) }) }),
|
|
13685
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13686
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13687
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13688
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13685
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { className: "max-h-[300px] !w-[280px]", children: [
|
|
13686
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectGroup, { children: priority.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) }),
|
|
13687
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectSeparator, {}),
|
|
13688
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectGroup, { children: others.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) })
|
|
13689
13689
|
] })
|
|
13690
13690
|
]
|
|
13691
13691
|
}
|
|
@@ -13717,7 +13717,7 @@ function PhoneInput({
|
|
|
13717
13717
|
] });
|
|
13718
13718
|
}
|
|
13719
13719
|
function CountryOption({ country }) {
|
|
13720
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13720
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: country.code, textValue: country.name, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2", children: [
|
|
13721
13721
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: country.flag }),
|
|
13722
13722
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary", children: country.dialCode }),
|
|
13723
13723
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-block max-w-[140px] overflow-hidden text-ellipsis whitespace-nowrap", children: country.name })
|
|
@@ -13983,7 +13983,7 @@ function TagSearchInput({
|
|
|
13983
13983
|
}
|
|
13984
13984
|
),
|
|
13985
13985
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13986
|
-
|
|
13986
|
+
_chunkEIACEY2Lcjs.HiddenTagsPopup,
|
|
13987
13987
|
{
|
|
13988
13988
|
ref: hiddenTagsPopupRef,
|
|
13989
13989
|
items: hiddenTags,
|
|
@@ -14059,8 +14059,8 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14059
14059
|
if (!trimmedUrl) return;
|
|
14060
14060
|
onSubmit({ text: text.trim(), url: trimmedUrl, rel });
|
|
14061
14061
|
};
|
|
14062
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14063
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14062
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.Modal, { isOpen, onClose, className: "text-left md:max-w-[560px]", children: [
|
|
14063
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTitle, { children: editing ? "Edit link" : "Add link" }) }),
|
|
14064
14064
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14065
14065
|
"form",
|
|
14066
14066
|
{
|
|
@@ -14085,7 +14085,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14085
14085
|
),
|
|
14086
14086
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)]", children: [
|
|
14087
14087
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14088
|
-
|
|
14088
|
+
_chunkU767P4JUcjs.TabSelector,
|
|
14089
14089
|
{
|
|
14090
14090
|
label: "Search engines",
|
|
14091
14091
|
value: choice,
|
|
@@ -14102,7 +14102,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14102
14102
|
]
|
|
14103
14103
|
}
|
|
14104
14104
|
),
|
|
14105
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14105
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.ModalFooter, { children: [
|
|
14106
14106
|
editing ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onRemove, className: "flex-1", children: "Remove link" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, className: "flex-1", children: "Cancel" }),
|
|
14107
14107
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "submit", form: formId, variant: "accent", disabled: !trimmedUrl, className: "flex-1", children: editing ? "Save" : "Add link" })
|
|
14108
14108
|
] })
|
|
@@ -14142,7 +14142,7 @@ function useMarkdownLinkCommand() {
|
|
|
14142
14142
|
buttonProps: { "aria-label": "Add or edit a link (ctrl + l)", title: "Add or edit a link (ctrl + l)" },
|
|
14143
14143
|
icon: command.icon,
|
|
14144
14144
|
execute: (state, api) => {
|
|
14145
|
-
const existing =
|
|
14145
|
+
const existing = _chunkLFEURIZNcjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
|
|
14146
14146
|
setPending(
|
|
14147
14147
|
existing ? {
|
|
14148
14148
|
api,
|
|
@@ -14173,7 +14173,7 @@ function useMarkdownLinkCommand() {
|
|
|
14173
14173
|
initial: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _292 => _292.initial]), () => ( EMPTY_LINK)),
|
|
14174
14174
|
editing: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _293 => _293.editing]), () => ( false)),
|
|
14175
14175
|
onSubmit: (link) => {
|
|
14176
|
-
if (pending) write(pending,
|
|
14176
|
+
if (pending) write(pending, _chunkLFEURIZNcjs.formatMarkdownLink.call(void 0, link));
|
|
14177
14177
|
},
|
|
14178
14178
|
onRemove: () => {
|
|
14179
14179
|
if (pending) write(pending, pending.initial.text);
|
|
@@ -14339,7 +14339,7 @@ function MarkdownEditor({
|
|
|
14339
14339
|
setUploadProgress(`Uploading ${file.name}...`);
|
|
14340
14340
|
try {
|
|
14341
14341
|
const url = await onUploadFile(file);
|
|
14342
|
-
const isImage =
|
|
14342
|
+
const isImage = _chunkNMWLXHFHcjs.fileMediaType.call(void 0, file) === "image";
|
|
14343
14343
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
14344
14344
|
insertTextAtCursor(markdown);
|
|
14345
14345
|
_optionalChain([onFileUploaded, 'optionalCall', _296 => _296(url, file.name)]);
|
|
@@ -14469,7 +14469,7 @@ function MarkdownEditor({
|
|
|
14469
14469
|
type: "file",
|
|
14470
14470
|
className: "hidden",
|
|
14471
14471
|
onChange: handleFileInputChange,
|
|
14472
|
-
accept: `${
|
|
14472
|
+
accept: `${_chunkNMWLXHFHcjs.IMAGE_FILE_ACCEPT},.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.zip,.txt`
|
|
14473
14473
|
}
|
|
14474
14474
|
),
|
|
14475
14475
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownEditorHeightContext.Provider, { value: height, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react.Suspense, { fallback: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownEditorFieldSkeleton, { height }), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -14884,7 +14884,7 @@ function matchesAccept2(file, accept) {
|
|
|
14884
14884
|
return patterns.some((pattern) => {
|
|
14885
14885
|
if (pattern.startsWith(".")) return fileName.endsWith(pattern);
|
|
14886
14886
|
if (pattern.endsWith("/*"))
|
|
14887
|
-
return fileType.startsWith(pattern.slice(0, -1)) ||
|
|
14887
|
+
return fileType.startsWith(pattern.slice(0, -1)) || _chunkNMWLXHFHcjs.fileMediaType.call(void 0, file) === pattern.slice(0, -2);
|
|
14888
14888
|
return fileType === pattern;
|
|
14889
14889
|
});
|
|
14890
14890
|
}
|
|
@@ -14892,7 +14892,7 @@ function ImageUploader({
|
|
|
14892
14892
|
value,
|
|
14893
14893
|
onChange,
|
|
14894
14894
|
onRemove,
|
|
14895
|
-
accept =
|
|
14895
|
+
accept = _chunkNMWLXHFHcjs.IMAGE_FILE_ACCEPT,
|
|
14896
14896
|
maxSize = DEFAULT_MAX_SIZE,
|
|
14897
14897
|
label = "Cover Image",
|
|
14898
14898
|
description = "(Click Here or Drag and Drop)",
|
|
@@ -15005,7 +15005,7 @@ function ImageUploader({
|
|
|
15005
15005
|
src: resolvedValue,
|
|
15006
15006
|
alt,
|
|
15007
15007
|
fill: true,
|
|
15008
|
-
sizes:
|
|
15008
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.full,
|
|
15009
15009
|
unoptimized: true,
|
|
15010
15010
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
15011
15011
|
"pointer-events-none",
|
|
@@ -15125,13 +15125,13 @@ function ColorPresetSelect({
|
|
|
15125
15125
|
...presets.map((p) => ({
|
|
15126
15126
|
id: p.key,
|
|
15127
15127
|
label: p.label,
|
|
15128
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15128
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ColorSwatch, { color: p.color }),
|
|
15129
15129
|
onClick: () => onChange({ color: p.color, preset: p.key })
|
|
15130
15130
|
})),
|
|
15131
15131
|
{
|
|
15132
15132
|
id: CUSTOM_PRESET_KEY,
|
|
15133
15133
|
label: "Custom",
|
|
15134
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15134
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
|
|
15135
15135
|
onClick: () => onChange({ color: value, preset: void 0 })
|
|
15136
15136
|
}
|
|
15137
15137
|
]
|
|
@@ -15148,7 +15148,7 @@ function ColorPresetSelect({
|
|
|
15148
15148
|
{
|
|
15149
15149
|
disabled,
|
|
15150
15150
|
"aria-label": `Color: ${displayLabel}`,
|
|
15151
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15151
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ColorSwatch, { color: displayColor }),
|
|
15152
15152
|
selectedLabel: displayLabel,
|
|
15153
15153
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15154
15154
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "group", className)
|
|
@@ -15169,7 +15169,7 @@ function HexInputs({ value, onChange }) {
|
|
|
15169
15169
|
}
|
|
15170
15170
|
const commit = () => {
|
|
15171
15171
|
const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
|
|
15172
|
-
if (
|
|
15172
|
+
if (_chunkSSKMGH5Ocjs.HEX_PATTERN.test(candidate)) onChange(candidate);
|
|
15173
15173
|
else setDraft(value);
|
|
15174
15174
|
};
|
|
15175
15175
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -15233,12 +15233,12 @@ function ChannelInput({
|
|
|
15233
15233
|
);
|
|
15234
15234
|
}
|
|
15235
15235
|
function RgbInputs({ value, onChange }) {
|
|
15236
|
-
const rgb = _nullishCoalesce(
|
|
15236
|
+
const rgb = _nullishCoalesce(_chunkSSKMGH5Ocjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
15237
15237
|
const update = (next) => {
|
|
15238
15238
|
const r = _nullishCoalesce(next.r, () => ( rgb.r));
|
|
15239
15239
|
const g = _nullishCoalesce(next.g, () => ( rgb.g));
|
|
15240
15240
|
const b = _nullishCoalesce(next.b, () => ( rgb.b));
|
|
15241
|
-
onChange(
|
|
15241
|
+
onChange(_chunkSSKMGH5Ocjs.rgbToHex.call(void 0, r, g, b));
|
|
15242
15242
|
};
|
|
15243
15243
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
15244
15244
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
|
|
@@ -15247,14 +15247,14 @@ function RgbInputs({ value, onChange }) {
|
|
|
15247
15247
|
] });
|
|
15248
15248
|
}
|
|
15249
15249
|
function HslInputs({ value, onChange }) {
|
|
15250
|
-
const rgb = _nullishCoalesce(
|
|
15251
|
-
const hsl =
|
|
15250
|
+
const rgb = _nullishCoalesce(_chunkSSKMGH5Ocjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
15251
|
+
const hsl = _chunkSSKMGH5Ocjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
|
|
15252
15252
|
const update = (next) => {
|
|
15253
15253
|
const h = _nullishCoalesce(next.h, () => ( hsl.h));
|
|
15254
15254
|
const s = _nullishCoalesce(next.s, () => ( hsl.s));
|
|
15255
15255
|
const l = _nullishCoalesce(next.l, () => ( hsl.l));
|
|
15256
|
-
const out =
|
|
15257
|
-
onChange(
|
|
15256
|
+
const out = _chunkSSKMGH5Ocjs.hslToRgb.call(void 0, h, s, l);
|
|
15257
|
+
onChange(_chunkSSKMGH5Ocjs.rgbToHex.call(void 0, out.r, out.g, out.b));
|
|
15258
15258
|
};
|
|
15259
15259
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
15260
15260
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
|
|
@@ -15286,7 +15286,7 @@ function ColorPickerInput({
|
|
|
15286
15286
|
{
|
|
15287
15287
|
disabled,
|
|
15288
15288
|
"aria-label": "Pick custom color",
|
|
15289
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15289
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ColorSwatch, { color: value }),
|
|
15290
15290
|
selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
|
|
15291
15291
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15292
15292
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "group", className)
|
|
@@ -15367,7 +15367,7 @@ function TicketStatusConfigRow({
|
|
|
15367
15367
|
const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
|
|
15368
15368
|
const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
|
|
15369
15369
|
const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15370
|
-
|
|
15370
|
+
_chunkU767P4JUcjs.TicketStatusTag,
|
|
15371
15371
|
{
|
|
15372
15372
|
loading,
|
|
15373
15373
|
status: statusKey,
|
|
@@ -15484,9 +15484,9 @@ function TicketStatusConfigRow({
|
|
|
15484
15484
|
),
|
|
15485
15485
|
children: [
|
|
15486
15486
|
!isSystem && moveButtons,
|
|
15487
|
-
isSystem ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-11 justify-center content-md:w-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15487
|
+
isSystem ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-11 justify-center content-md:w-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.TouchFriendlyTooltip, { content: systemTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { variant: "bare", size: "icon-sm", type: "button", "aria-label": _nullishCoalesce(systemTooltip, () => ( "System status")), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRHC2FRVEcjs.InfoCircleIcon, { size: 24 }) }) }) }) : (
|
|
15488
15488
|
// The delete button is a static control: drawn for real in both forms, inert while the status is read.
|
|
15489
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.InertWhileLoading, { loading, className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15489
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.InertWhileLoading, { loading, className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.TouchFriendlyTooltip, { content: deleteDisabled && !loading ? deleteDisabledReason : void 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15490
15490
|
_chunkFCZAUK4Dcjs.Button,
|
|
15491
15491
|
{
|
|
15492
15492
|
type: "button",
|
|
@@ -15527,7 +15527,7 @@ var TEST_RESULTS_SKELETON_COLUMNS = 6;
|
|
|
15527
15527
|
function TestResultsSkeleton({
|
|
15528
15528
|
region = true
|
|
15529
15529
|
} = {}) {
|
|
15530
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2XCORRJVcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15530
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2XCORRJVcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
|
|
15531
15531
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex", ROW_SHELL_CLASSES), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingItems, { count: TEST_RESULTS_SKELETON_COLUMNS, children: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 shrink-0 items-center", style: { width: RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h5", className: "w-3/4" }) }) }) }),
|
|
15532
15532
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DATA_TABLE_ROW_FRAME_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex", ROW_SHELL_CLASSES, ROW_HEIGHT_DESKTOP), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingItems, { count: TEST_RESULTS_SKELETON_COLUMNS, children: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-loading-item": true, className: "shrink-0", style: { width: RESULT_COLUMN_MIN_WIDTH }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: "w-3/4" }) }) }) }) })
|
|
15533
15533
|
] }) }) });
|
|
@@ -15563,13 +15563,13 @@ function TestResultsTable({ rows, loading: loadingProp }) {
|
|
|
15563
15563
|
if (loading) {
|
|
15564
15564
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
|
|
15565
15565
|
}
|
|
15566
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15566
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.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: [
|
|
15567
15567
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
|
|
15568
15568
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
|
|
15569
15569
|
] }) }) });
|
|
15570
15570
|
}
|
|
15571
15571
|
function TestRunErrorBanner({ error, className }) {
|
|
15572
|
-
const { copy } =
|
|
15572
|
+
const { copy } = _chunkUO2EJGRJcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
|
|
15573
15573
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15574
15574
|
"div",
|
|
15575
15575
|
{
|
|
@@ -15672,7 +15672,7 @@ function useTestRunState(campaign) {
|
|
|
15672
15672
|
const stopReason = _nullishCoalesce(campaign.stopReason, () => ( "completed"));
|
|
15673
15673
|
const status = isActive ? "running" : hasRun && isFinished ? stopReason === "completed" ? firstError ? "error" : "success" : stopReason : "idle";
|
|
15674
15674
|
const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
|
|
15675
|
-
const startedLabel = showTiming && campaign.startedAt ?
|
|
15675
|
+
const startedLabel = showTiming && campaign.startedAt ? _chunkEIACEY2Lcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
|
|
15676
15676
|
const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
|
|
15677
15677
|
const displayRows = _react.useMemo.call(void 0,
|
|
15678
15678
|
() => campaign.results.map(
|
|
@@ -16025,7 +16025,7 @@ function TicketInfoSection({
|
|
|
16025
16025
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _336 => _336.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _337 => _337.icon]), onClick: _optionalChain([device, 'optionalAccess', _338 => _338.onClick]) }),
|
|
16026
16026
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
16027
16027
|
(status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16028
|
-
|
|
16028
|
+
_chunkU767P4JUcjs.TicketStatusTag,
|
|
16029
16029
|
{
|
|
16030
16030
|
status: _nullishCoalesce(status, () => ( "")),
|
|
16031
16031
|
label: statusLabel,
|
|
@@ -16055,7 +16055,7 @@ function TicketInfoSection({
|
|
|
16055
16055
|
expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16056
16056
|
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" }) }),
|
|
16057
16057
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
|
|
16058
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16058
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLFEURIZNcjs.SimpleMarkdownRenderer, { content: description }),
|
|
16059
16059
|
attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
|
|
16060
16060
|
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, _chunkW7OFAROYcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
|
|
16061
16061
|
(notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16080,8 +16080,8 @@ function renderTicketStatusOption(option, isSelected) {
|
|
|
16080
16080
|
const { label, color } = option;
|
|
16081
16081
|
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: [
|
|
16082
16082
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16083
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16084
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16083
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ColorSwatch, { color }),
|
|
16084
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16085
16085
|
] }),
|
|
16086
16086
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16087
16087
|
] });
|
|
@@ -16091,7 +16091,7 @@ function renderTicketAssigneeOption(option, isSelected) {
|
|
|
16091
16091
|
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: [
|
|
16092
16092
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16093
16093
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "round" }),
|
|
16094
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16094
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16095
16095
|
] }),
|
|
16096
16096
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16097
16097
|
] });
|
|
@@ -16132,9 +16132,9 @@ function TakeOverTicketModal({
|
|
|
16132
16132
|
if (!selectedStatusId || !assigneeId || isPending) return;
|
|
16133
16133
|
onConfirm({ statusId: selectedStatusId, assigneeId });
|
|
16134
16134
|
};
|
|
16135
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16135
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16136
16136
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16137
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16137
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTitle, { children: "Take Over Ticket" }) }),
|
|
16138
16138
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16139
16139
|
"The ticket ",
|
|
16140
16140
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16142,19 +16142,19 @@ function TakeOverTicketModal({
|
|
|
16142
16142
|
] }),
|
|
16143
16143
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16144
16144
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16145
|
-
|
|
16145
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
16146
16146
|
{
|
|
16147
16147
|
label: "Status",
|
|
16148
16148
|
options: statusOptions,
|
|
16149
16149
|
value: selectedStatusId,
|
|
16150
16150
|
onChange: setStatusId,
|
|
16151
16151
|
placeholder: "Select Status",
|
|
16152
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16152
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16153
16153
|
renderOption: renderTicketStatusOption
|
|
16154
16154
|
}
|
|
16155
16155
|
) }),
|
|
16156
16156
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16157
|
-
|
|
16157
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
16158
16158
|
{
|
|
16159
16159
|
label: "Assigned",
|
|
16160
16160
|
options: withTicketAssigneeAvatars(assigneeOptions),
|
|
@@ -16168,7 +16168,7 @@ function TakeOverTicketModal({
|
|
|
16168
16168
|
}
|
|
16169
16169
|
) })
|
|
16170
16170
|
] }),
|
|
16171
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16171
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.ModalFooter, { children: [
|
|
16172
16172
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16173
16173
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16174
16174
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16228,9 +16228,9 @@ function ReopenTicketModal({
|
|
|
16228
16228
|
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
16229
16229
|
});
|
|
16230
16230
|
};
|
|
16231
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16231
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16232
16232
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16233
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16233
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16234
16234
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16235
16235
|
"The ticket ",
|
|
16236
16236
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16238,19 +16238,19 @@ function ReopenTicketModal({
|
|
|
16238
16238
|
] }),
|
|
16239
16239
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16240
16240
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16241
|
-
|
|
16241
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
16242
16242
|
{
|
|
16243
16243
|
label: "Status",
|
|
16244
16244
|
options: statusOptions,
|
|
16245
16245
|
value: selectedStatusId,
|
|
16246
16246
|
onChange: setStatusId,
|
|
16247
16247
|
placeholder: "Select Status",
|
|
16248
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16248
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16249
16249
|
renderOption: renderTicketStatusOption
|
|
16250
16250
|
}
|
|
16251
16251
|
) }),
|
|
16252
16252
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16253
|
-
|
|
16253
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
16254
16254
|
{
|
|
16255
16255
|
label: "Assigned",
|
|
16256
16256
|
options: withTicketAssigneeAvatars(assigneeOptions),
|
|
@@ -16275,7 +16275,7 @@ function ReopenTicketModal({
|
|
|
16275
16275
|
disabled: isPending
|
|
16276
16276
|
}
|
|
16277
16277
|
) }),
|
|
16278
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16278
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.ModalFooter, { children: [
|
|
16279
16279
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16280
16280
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16281
16281
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16324,9 +16324,9 @@ function ReopenTicketRequestModal({
|
|
|
16324
16324
|
...showHandoffOption ? { handoffToTechnician: handoff } : {}
|
|
16325
16325
|
});
|
|
16326
16326
|
};
|
|
16327
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16327
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16328
16328
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16329
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16329
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16330
16330
|
/* @__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." }),
|
|
16331
16331
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16332
16332
|
Textarea,
|
|
@@ -16350,7 +16350,7 @@ function ReopenTicketRequestModal({
|
|
|
16350
16350
|
disabled: isPending
|
|
16351
16351
|
}
|
|
16352
16352
|
),
|
|
16353
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16353
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEIACEY2Lcjs.ModalFooter, { children: [
|
|
16354
16354
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
|
|
16355
16355
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
|
|
16356
16356
|
] })
|
|
@@ -16374,7 +16374,7 @@ var FILL_FACTOR = 1.25;
|
|
|
16374
16374
|
var MAX_REPEATS = 8;
|
|
16375
16375
|
var MAX_PIXEL_DENSITY = 2;
|
|
16376
16376
|
function photoWallRequestWidth(columnWidth, pixelDensity) {
|
|
16377
|
-
return
|
|
16377
|
+
return _chunkKKFDRCQFcjs.imageWidthFor.call(void 0, columnWidth * Math.min(Math.max(1, pixelDensity), MAX_PIXEL_DENSITY));
|
|
16378
16378
|
}
|
|
16379
16379
|
function photoOrientation(naturalWidth, naturalHeight) {
|
|
16380
16380
|
if (!(naturalWidth > 0) || !(naturalHeight > 0)) return "wide";
|
|
@@ -16530,7 +16530,7 @@ function PhotoWall({
|
|
|
16530
16530
|
gap: COLUMN_GAP_PX
|
|
16531
16531
|
};
|
|
16532
16532
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rootRef, "aria-hidden": "true", className: _chunk63A4GZMBcjs.cn.call(void 0, "grid overflow-hidden", className), style: gridStyle, children: columnsToDraw ? columnsToDraw.map((column, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16533
|
-
|
|
16533
|
+
_chunkLFEURIZNcjs.MarqueeWall,
|
|
16534
16534
|
{
|
|
16535
16535
|
axis: "y",
|
|
16536
16536
|
reverse: index % 2 === 1,
|
|
@@ -16666,7 +16666,7 @@ function LazyMount({
|
|
|
16666
16666
|
// src/components/ui/app-window-frame.tsx
|
|
16667
16667
|
|
|
16668
16668
|
function AppWindowFrame({ title, children, footer, agent, className, bodyClassName }) {
|
|
16669
|
-
const tint =
|
|
16669
|
+
const tint = _chunkSSKMGH5Ocjs.useAgentTint.call(void 0, agent);
|
|
16670
16670
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16671
16671
|
"div",
|
|
16672
16672
|
{
|
|
@@ -16760,7 +16760,7 @@ function ProductScreenFrame({
|
|
|
16760
16760
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "ods-content-area", pending && "product-screen-pending"),
|
|
16761
16761
|
style: screenStyle,
|
|
16762
16762
|
children: [
|
|
16763
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "ods-content-scope", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingScope, { bare: true, active: pending, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16763
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "ods-content-scope", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingScope, { bare: true, active: pending, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.PagePicture, { children }) }) }),
|
|
16764
16764
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: setPortalHost, style: { display: "contents" } })
|
|
16765
16765
|
]
|
|
16766
16766
|
}
|
|
@@ -16898,7 +16898,7 @@ function PhoneFrame({ dateLabel, timeLabel, children, className }) {
|
|
|
16898
16898
|
"div",
|
|
16899
16899
|
{
|
|
16900
16900
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "h-[617px] w-[299px] shrink-0 rounded-[48px] border border-ods-border bg-black p-2.5", className),
|
|
16901
|
-
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]",
|
|
16901
|
+
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]", _chunkCOJG2ATYcjs.DEVICE_WALLPAPER_CLASS), children: [
|
|
16902
16902
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16903
16903
|
"div",
|
|
16904
16904
|
{
|
|
@@ -17075,7 +17075,7 @@ function LoadingLabel({ label, typical }) {
|
|
|
17075
17075
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: label.split(/(\{\w+\})/).map(
|
|
17076
17076
|
(part, index) => /^\{\w+\}$/.test(part) ? (
|
|
17077
17077
|
// biome-ignore lint/suspicious/noArrayIndexKey: the parts of one fixed string never reorder
|
|
17078
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17078
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.TextHold, { children: typical }, index)
|
|
17079
17079
|
) : part
|
|
17080
17080
|
) });
|
|
17081
17081
|
}
|
|
@@ -17090,7 +17090,7 @@ var TRIAL_TERM_ICONS = {
|
|
|
17090
17090
|
};
|
|
17091
17091
|
var DEFAULT_TRIAL_TERMS = ["cancel", "length", "noContract"];
|
|
17092
17092
|
function trialBenefits(trialDays, terms = DEFAULT_TRIAL_TERMS) {
|
|
17093
|
-
const labels =
|
|
17093
|
+
const labels = _chunkIC4IJJB2cjs.trialLabels.call(void 0, trialDays);
|
|
17094
17094
|
return terms.flatMap((term) => {
|
|
17095
17095
|
const label = labels[term];
|
|
17096
17096
|
return label ? [{ icon: TRIAL_TERM_ICONS[term], label }] : [];
|
|
@@ -17197,7 +17197,7 @@ function AnalyzingState({ label, className }) {
|
|
|
17197
17197
|
}) }),
|
|
17198
17198
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 text-center text-ods-text-secondary text-h4", children: [
|
|
17199
17199
|
label,
|
|
17200
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17200
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEIACEY2Lcjs.ChatTypingIndicator, { "aria-hidden": true, size: "sm", dotClassName: "bg-ods-text-secondary motion-reduce:animate-none" })
|
|
17201
17201
|
] })
|
|
17202
17202
|
] });
|
|
17203
17203
|
}
|
|
@@ -17211,7 +17211,7 @@ var INCIDENT_TONE = {
|
|
|
17211
17211
|
approved: "success"
|
|
17212
17212
|
};
|
|
17213
17213
|
function IncidentStatusLine({ status, label, className }) {
|
|
17214
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17214
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.StatusLine, { tone: INCIDENT_TONE[status], label, className });
|
|
17215
17215
|
}
|
|
17216
17216
|
var FEED_CLASS = "flex min-h-0 flex-1 flex-col gap-3 overflow-hidden p-4 md:px-5";
|
|
17217
17217
|
var FEED_BOTTOM_CLASS = "justify-end [mask-image:linear-gradient(180deg,transparent_0,#000_48px)]";
|
|
@@ -17399,8 +17399,8 @@ function SnapCarousel({
|
|
|
17399
17399
|
}) {
|
|
17400
17400
|
const trackRef = _react.useRef.call(void 0, null);
|
|
17401
17401
|
const [index, setIndex] = _react.useState.call(void 0, 0);
|
|
17402
|
-
const { ref: viewRef, inView } =
|
|
17403
|
-
const auto =
|
|
17402
|
+
const { ref: viewRef, inView } = _chunkG7GF4PWAcjs.useInView.call(void 0, { threshold: 0.5 });
|
|
17403
|
+
const auto = _chunkG7GF4PWAcjs.useAutoplay.call(void 0, inView);
|
|
17404
17404
|
const count = items.length;
|
|
17405
17405
|
const slideStep = _react.useCallback.call(void 0, () => {
|
|
17406
17406
|
const first = _optionalChain([trackRef, 'access', _349 => _349.current, 'optionalAccess', _350 => _350.firstElementChild]);
|
|
@@ -17444,7 +17444,7 @@ function SnapCarousel({
|
|
|
17444
17444
|
const goNext = _react.useCallback.call(void 0, () => goTo(index >= count - 1 ? 0 : index + 1), [count, goTo, index]);
|
|
17445
17445
|
const canAutoAdvance = autoAdvanceMs > 0 && count > 1;
|
|
17446
17446
|
const playing = auto.playing && canAutoAdvance;
|
|
17447
|
-
const ranMs =
|
|
17447
|
+
const ranMs = _chunkUO2EJGRJcjs.useResumableTimeout.call(void 0, {
|
|
17448
17448
|
running: playing,
|
|
17449
17449
|
durationMs: autoAdvanceMs,
|
|
17450
17450
|
resetKey: index,
|
|
@@ -17795,10 +17795,10 @@ function AccountDetailsFields({
|
|
|
17795
17795
|
onKeyDown,
|
|
17796
17796
|
layout = "stacked"
|
|
17797
17797
|
}) {
|
|
17798
|
-
const firstNameErr =
|
|
17799
|
-
const lastNameErr =
|
|
17800
|
-
const passwordErr =
|
|
17801
|
-
const confirmErr =
|
|
17798
|
+
const firstNameErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _351 => _351.firstName]), firstName);
|
|
17799
|
+
const lastNameErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _352 => _352.lastName]), lastName);
|
|
17800
|
+
const passwordErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _353 => _353.password]), password);
|
|
17801
|
+
const confirmErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _354 => _354.confirmPassword]), confirmPassword);
|
|
17802
17802
|
const names = [
|
|
17803
17803
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17804
17804
|
_chunkHXURNKXIcjs.Input,
|
|
@@ -18016,16 +18016,16 @@ function LabeledDivider({ label }) {
|
|
|
18016
18016
|
var PROVIDER_META = {
|
|
18017
18017
|
openframe: {
|
|
18018
18018
|
name: "OpenFrame",
|
|
18019
|
-
Icon:
|
|
18019
|
+
Icon: _chunkKKFDRCQFcjs.requireIcon.call(void 0, {
|
|
18020
18020
|
set: "OpenframeLogoIcon",
|
|
18021
18021
|
color: "var(--color-text-primary)",
|
|
18022
18022
|
secondaryColor: "var(--color-accent-primary)",
|
|
18023
18023
|
ownColor: true
|
|
18024
18024
|
})
|
|
18025
18025
|
},
|
|
18026
|
-
google: { name: "Google", Icon:
|
|
18027
|
-
microsoft: { name: "Microsoft", Icon:
|
|
18028
|
-
apple: { name: "Apple", Icon:
|
|
18026
|
+
google: { name: "Google", Icon: _chunkKKFDRCQFcjs.requireIcon.call(void 0, { set: "GoogleLogoIcon" }) },
|
|
18027
|
+
microsoft: { name: "Microsoft", Icon: _chunkKKFDRCQFcjs.requireIcon.call(void 0, { set: "MicrosoftLogoIcon" }) },
|
|
18028
|
+
apple: { name: "Apple", Icon: _chunkKKFDRCQFcjs.requireIcon.call(void 0, { set: "AppleLogoIcon" }) }
|
|
18029
18029
|
};
|
|
18030
18030
|
var SSO_PROVIDER_BUTTONS_CLASS = "flex flex-col gap-[var(--spacing-system-l)]";
|
|
18031
18031
|
var SSO_PROVIDERS_SKELETON_COUNT = 3;
|
|
@@ -18064,7 +18064,7 @@ function SsoProviderButtons({
|
|
|
18064
18064
|
// where a long organization name would otherwise push the label out of a phone-width
|
|
18065
18065
|
// button. `block` over its inline-flex, because an ellipsis only renders on a block box.
|
|
18066
18066
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18067
|
-
|
|
18067
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
18068
18068
|
{
|
|
18069
18069
|
text: tag,
|
|
18070
18070
|
variant: "button",
|
|
@@ -18124,7 +18124,7 @@ function CompleteAccountForm({
|
|
|
18124
18124
|
),
|
|
18125
18125
|
children: [
|
|
18126
18126
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18127
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18127
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18128
18128
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18129
18129
|
] }),
|
|
18130
18130
|
(ssoProvidersLoading || ssoProviders && ssoProviders.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -18258,9 +18258,9 @@ function CreateOrganizationForm({
|
|
|
18258
18258
|
}) {
|
|
18259
18259
|
const hasSso = !!ssoProviders && ssoProviders.length > 0;
|
|
18260
18260
|
const fieldsDisabled = disabled || loading;
|
|
18261
|
-
const emailErr =
|
|
18262
|
-
const orgNameErr =
|
|
18263
|
-
const domainErr =
|
|
18261
|
+
const emailErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _356 => _356.email]), _nullishCoalesce(email, () => ( "")));
|
|
18262
|
+
const orgNameErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _357 => _357.organizationName]), organizationName);
|
|
18263
|
+
const domainErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _358 => _358.domain]), domain);
|
|
18264
18264
|
const handleKeyDown = (event) => {
|
|
18265
18265
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18266
18266
|
onSubmit();
|
|
@@ -18275,7 +18275,7 @@ function CreateOrganizationForm({
|
|
|
18275
18275
|
),
|
|
18276
18276
|
children: [
|
|
18277
18277
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18278
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18278
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18279
18279
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle === null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: CREATE_ORGANIZATION_SUBTITLE_BAR_CLASS }) : subtitle })
|
|
18280
18280
|
] }),
|
|
18281
18281
|
email === void 0 ? null : emailReadOnly && emailReadOnlyLabel === null ? (
|
|
@@ -18422,7 +18422,7 @@ function InviteLinkInvalidModal({
|
|
|
18422
18422
|
),
|
|
18423
18423
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
|
|
18424
18424
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)]", children: [
|
|
18425
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18425
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18426
18426
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18427
18427
|
_chunkFCZAUK4Dcjs.Button,
|
|
18428
18428
|
{
|
|
@@ -18488,7 +18488,7 @@ function LoginForm({
|
|
|
18488
18488
|
}) {
|
|
18489
18489
|
const fieldDisabled = disabled || loading;
|
|
18490
18490
|
const providersDisabled = fieldDisabled || ssoDisabled;
|
|
18491
|
-
const emailErr =
|
|
18491
|
+
const emailErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _365 => _365.email]), email);
|
|
18492
18492
|
const handleKeyDown = (event) => {
|
|
18493
18493
|
if (event.key !== "Enter" || event.repeat || fieldDisabled) return;
|
|
18494
18494
|
if (onSubmitClick) {
|
|
@@ -18506,7 +18506,7 @@ function LoginForm({
|
|
|
18506
18506
|
),
|
|
18507
18507
|
children: [
|
|
18508
18508
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18509
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18509
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18510
18510
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18511
18511
|
] }),
|
|
18512
18512
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18633,7 +18633,7 @@ function NoAccountNotice({
|
|
|
18633
18633
|
),
|
|
18634
18634
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
|
|
18635
18635
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18636
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18636
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18637
18637
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: description })
|
|
18638
18638
|
] }),
|
|
18639
18639
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFCZAUK4Dcjs.Button, { type: "button", variant: "outline", fullWidth: true, onClick: onBackToLogin, children: backLabel })
|
|
@@ -18666,8 +18666,8 @@ function OpenFrameSsoLoginForm({
|
|
|
18666
18666
|
className
|
|
18667
18667
|
}) {
|
|
18668
18668
|
const fieldsDisabled = disabled || loading;
|
|
18669
|
-
const emailErr =
|
|
18670
|
-
const passwordErr =
|
|
18669
|
+
const emailErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _369 => _369.email]), email);
|
|
18670
|
+
const passwordErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _370 => _370.password]), password);
|
|
18671
18671
|
const handleKeyDown = (event) => {
|
|
18672
18672
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18673
18673
|
onSubmit();
|
|
@@ -18682,7 +18682,7 @@ function OpenFrameSsoLoginForm({
|
|
|
18682
18682
|
),
|
|
18683
18683
|
children: [
|
|
18684
18684
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
|
|
18685
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18685
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18686
18686
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18687
18687
|
] }),
|
|
18688
18688
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18772,7 +18772,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18772
18772
|
className
|
|
18773
18773
|
}) {
|
|
18774
18774
|
const fieldsDisabled = disabled || loading;
|
|
18775
|
-
const emailErr =
|
|
18775
|
+
const emailErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _371 => _371.email]), email);
|
|
18776
18776
|
const handleKeyDown = (event) => {
|
|
18777
18777
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18778
18778
|
onSubmit();
|
|
@@ -18787,7 +18787,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18787
18787
|
),
|
|
18788
18788
|
children: [
|
|
18789
18789
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
|
|
18790
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18790
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18791
18791
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18792
18792
|
] }),
|
|
18793
18793
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18877,8 +18877,8 @@ function PasswordResetForm({
|
|
|
18877
18877
|
className
|
|
18878
18878
|
}) {
|
|
18879
18879
|
const fieldsDisabled = disabled || loading;
|
|
18880
|
-
const passwordErr =
|
|
18881
|
-
const confirmErr =
|
|
18880
|
+
const passwordErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _372 => _372.password]), password);
|
|
18881
|
+
const confirmErr = _chunkUO2EJGRJcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _373 => _373.confirmPassword]), confirmPassword);
|
|
18882
18882
|
const handleKeyDown = (event) => {
|
|
18883
18883
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18884
18884
|
onSubmit();
|
|
@@ -18893,7 +18893,7 @@ function PasswordResetForm({
|
|
|
18893
18893
|
),
|
|
18894
18894
|
children: [
|
|
18895
18895
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18896
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18896
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
18897
18897
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18898
18898
|
] }),
|
|
18899
18899
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -19014,7 +19014,7 @@ function SsoJoinForm({
|
|
|
19014
19014
|
),
|
|
19015
19015
|
children: [
|
|
19016
19016
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
19017
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
19017
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunkNMWLXHFHcjs.accentSentenceMarks.call(void 0, title) }),
|
|
19018
19018
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
19019
19019
|
] }),
|
|
19020
19020
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-m)]", children: [
|
|
@@ -19126,7 +19126,7 @@ function ProviderButton({ provider, onClick, disabled = false, loading = false }
|
|
|
19126
19126
|
disabled: disabled || isLoading,
|
|
19127
19127
|
variant: "outline",
|
|
19128
19128
|
size: "default",
|
|
19129
|
-
leftIcon: isLoading ? null : _react.createElement.call(void 0,
|
|
19129
|
+
leftIcon: isLoading ? null : _react.createElement.call(void 0, _chunkKKFDRCQFcjs.requireIcon.call(void 0, config.icon), { className: "h-5 w-5" }),
|
|
19130
19130
|
className: `h-[56px] w-full !font-bold !text-h6 hover:bg-ods-bg-hover content-md:!w-full ${isLoading ? "cursor-wait" : "cursor-pointer"} `,
|
|
19131
19131
|
"aria-label": config.displayName,
|
|
19132
19132
|
children: isLoading ? "Signing in..." : config.displayName
|
|
@@ -19280,7 +19280,7 @@ function ChangelogManager({
|
|
|
19280
19280
|
),
|
|
19281
19281
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: hasContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-primary text-h6", children: entry.title }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "italic text-ods-text-secondary text-h6", children: "New entry (click to edit)" }) }),
|
|
19282
19282
|
tagOptions && tagLabelOf(entry.tag) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19283
|
-
|
|
19283
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
19284
19284
|
{
|
|
19285
19285
|
variant: "button",
|
|
19286
19286
|
singleLine: true,
|
|
@@ -19344,9 +19344,9 @@ function ChangelogManager({
|
|
|
19344
19344
|
] }),
|
|
19345
19345
|
tagOptions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
19346
19346
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.Label, { className: "text-ods-text-secondary", children: tagLabel }),
|
|
19347
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
19348
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19349
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19347
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: _nullishCoalesce(entry.tag, () => ( "")), onValueChange: (value) => updateEntry(index, "tag", value), children: [
|
|
19348
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder: tagLabel }) }),
|
|
19349
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: tagOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
19350
19350
|
] })
|
|
19351
19351
|
] })
|
|
19352
19352
|
] })
|
|
@@ -19619,7 +19619,7 @@ function EntityTagBadgesSkeleton({
|
|
|
19619
19619
|
}) {
|
|
19620
19620
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { "aria-hidden": true, className: _chunk63A4GZMBcjs.cn.call(void 0, TAG_ROW_CLASS, className), children: [
|
|
19621
19621
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.LoadingItems, { count, children: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TAG_ITEM_CLASS, "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19622
|
-
|
|
19622
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
19623
19623
|
{
|
|
19624
19624
|
loading: true,
|
|
19625
19625
|
text: "",
|
|
@@ -19627,7 +19627,7 @@ function EntityTagBadgesSkeleton({
|
|
|
19627
19627
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "border", _nullishCoalesce(itemClassName, () => ( TAG_SKELETON_WIDTH_CLASS)))
|
|
19628
19628
|
}
|
|
19629
19629
|
) }) }),
|
|
19630
|
-
overflow && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TAG_ITEM_CLASS, "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19630
|
+
overflow && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TAG_ITEM_CLASS, "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.StatusBadge, { loading: true, text: "", variant: "card", className: _chunk63A4GZMBcjs.cn.call(void 0, "border", OVERFLOW_BADGE_SKELETON_CLASS) }) })
|
|
19631
19631
|
] });
|
|
19632
19632
|
}
|
|
19633
19633
|
function EntityTagBadges({
|
|
@@ -19655,7 +19655,7 @@ function EntityTagBadges({
|
|
|
19655
19655
|
const label = (tag.name || "").toUpperCase();
|
|
19656
19656
|
if (basePath && tag.slug) {
|
|
19657
19657
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: `${basePath}?tags=${tag.slug}`, className: itemClass(index), "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19658
|
-
|
|
19658
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
19659
19659
|
{
|
|
19660
19660
|
text: label,
|
|
19661
19661
|
variant: "card",
|
|
@@ -19663,7 +19663,7 @@ function EntityTagBadges({
|
|
|
19663
19663
|
}
|
|
19664
19664
|
) }, key);
|
|
19665
19665
|
}
|
|
19666
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: itemClass(index), "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19666
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: itemClass(index), "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.StatusBadge, { text: label, variant: "card", className: BADGE_CLASS }) }, key);
|
|
19667
19667
|
}),
|
|
19668
19668
|
phoneOverflow === overflow ? overflow > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OverflowBadge, { count: overflow }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
19669
19669
|
phoneOverflow > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OverflowBadge, { count: phoneOverflow, className: "content-md:hidden" }),
|
|
@@ -19672,7 +19672,7 @@ function EntityTagBadges({
|
|
|
19672
19672
|
] });
|
|
19673
19673
|
}
|
|
19674
19674
|
function OverflowBadge({ count, className }) {
|
|
19675
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, TAG_ITEM_CLASS, className), "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19675
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, TAG_ITEM_CLASS, className), "data-loading-item": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.StatusBadge, { text: `+${count}`, variant: "card", className: _chunk63A4GZMBcjs.cn.call(void 0, BADGE_CLASS, "text-ods-text-secondary") }) });
|
|
19676
19676
|
}
|
|
19677
19677
|
|
|
19678
19678
|
// src/components/features/error-boundary.tsx
|
|
@@ -19767,7 +19767,7 @@ var SectionButton = ({
|
|
|
19767
19767
|
}
|
|
19768
19768
|
),
|
|
19769
19769
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19770
|
-
|
|
19770
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
19771
19771
|
{
|
|
19772
19772
|
text: section.badge.text,
|
|
19773
19773
|
variant: section.badge.variant || "button",
|
|
@@ -19786,7 +19786,7 @@ var SectionButton = ({
|
|
|
19786
19786
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-wrap items-start gap-2", children: [
|
|
19787
19787
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, titleClasses, "text-h3"), style: { textAlign: "left" }, children: section.title }),
|
|
19788
19788
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19789
|
-
|
|
19789
|
+
_chunkO3EKOXFZcjs.StatusBadge,
|
|
19790
19790
|
{
|
|
19791
19791
|
text: section.badge.text,
|
|
19792
19792
|
variant: section.badge.variant || "button",
|
|
@@ -20849,15 +20849,15 @@ function useLoading() {
|
|
|
20849
20849
|
|
|
20850
20850
|
|
|
20851
20851
|
function isAlreadyThere(file, existing) {
|
|
20852
|
-
const key =
|
|
20852
|
+
const key = _chunkNMWLXHFHcjs.mediaNameKey.call(void 0, file.name);
|
|
20853
20853
|
if (!key) return false;
|
|
20854
20854
|
return existing.some(
|
|
20855
|
-
(item) => (item.title ?
|
|
20855
|
+
(item) => (item.title ? _chunkNMWLXHFHcjs.mediaNameKey.call(void 0, item.title) === key : false) || (item.media_url ? _chunkNMWLXHFHcjs.mediaNameKey.call(void 0, item.media_url) === key : false)
|
|
20856
20856
|
);
|
|
20857
20857
|
}
|
|
20858
20858
|
var isFileDrag = (event) => Array.from(event.dataTransfer.types).includes("Files");
|
|
20859
|
-
var isVideoItem = (item) =>
|
|
20860
|
-
var MEDIA_KIND_ACCEPT = { image:
|
|
20859
|
+
var isVideoItem = (item) => _chunkNMWLXHFHcjs.isVideoMedia.call(void 0, item) || item.media_type === "demo";
|
|
20860
|
+
var MEDIA_KIND_ACCEPT = { image: _chunkNMWLXHFHcjs.IMAGE_FILE_ACCEPT, video: "video/*", both: _chunkNMWLXHFHcjs.MEDIA_FILE_ACCEPT };
|
|
20861
20861
|
var MEDIA_KIND_COPY = {
|
|
20862
20862
|
image: { noun: "pictures", refusal: "Not a picture" },
|
|
20863
20863
|
video: { noun: "videos", refusal: "Not a video" },
|
|
@@ -20881,12 +20881,12 @@ function useMediaIntake({ existing, onUpload, onUploaded, kinds = "both" }) {
|
|
|
20881
20881
|
const seen = /* @__PURE__ */ new Set();
|
|
20882
20882
|
const accepted = [];
|
|
20883
20883
|
for (const file of files) {
|
|
20884
|
-
const mediaType =
|
|
20884
|
+
const mediaType = _chunkNMWLXHFHcjs.fileMediaType.call(void 0, file);
|
|
20885
20885
|
if (!mediaType || kinds !== "both" && mediaType !== kinds) {
|
|
20886
20886
|
unsupported.push(file.name);
|
|
20887
20887
|
continue;
|
|
20888
20888
|
}
|
|
20889
|
-
const contentKey = await
|
|
20889
|
+
const contentKey = await _chunkNMWLXHFHcjs.fileContentKey.call(void 0, file).catch(() => `${file.name}:${file.size}`);
|
|
20890
20890
|
if (seen.has(contentKey) || isAlreadyThere(file, existingRef.current)) {
|
|
20891
20891
|
duplicates.push(file.name);
|
|
20892
20892
|
continue;
|
|
@@ -21067,7 +21067,7 @@ function MediaGalleryManager({
|
|
|
21067
21067
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "grid grid-cols-1 gap-4 content-md:grid-cols-2", columns === 3 && "content-lg:grid-cols-3"),
|
|
21068
21068
|
children: [
|
|
21069
21069
|
media.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
21070
|
-
|
|
21070
|
+
_chunkO3EKOXFZcjs.Card,
|
|
21071
21071
|
{
|
|
21072
21072
|
className: "group relative border-ods-border transition-colors hover:border-ods-accent/30",
|
|
21073
21073
|
draggable: true,
|
|
@@ -21092,7 +21092,7 @@ function MediaGalleryManager({
|
|
|
21092
21092
|
) }),
|
|
21093
21093
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: isVideoItem(item) ? (
|
|
21094
21094
|
// <Video> SSOT (MuxPlayer): plays Mux HLS and MP4 alike; fit="cover" crops to the cell.
|
|
21095
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21095
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
|
|
21096
21096
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21097
21097
|
_chunkGG466XFQcjs.next_image_default,
|
|
21098
21098
|
{
|
|
@@ -21100,24 +21100,24 @@ function MediaGalleryManager({
|
|
|
21100
21100
|
alt: item.title || "Media",
|
|
21101
21101
|
fill: true,
|
|
21102
21102
|
className: "object-cover",
|
|
21103
|
-
sizes:
|
|
21103
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.card
|
|
21104
21104
|
}
|
|
21105
21105
|
) }),
|
|
21106
21106
|
editableDetails ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2 p-3", children: [
|
|
21107
21107
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
21108
21108
|
isVideoItem(item) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Video, { className: "h-5 w-5 text-ods-text-secondary" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Image, { className: "h-5 w-5 text-ods-text-secondary" }),
|
|
21109
21109
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
21110
|
-
|
|
21110
|
+
_chunkCOJG2ATYcjs.Select,
|
|
21111
21111
|
{
|
|
21112
21112
|
value: item.media_type,
|
|
21113
21113
|
onValueChange: (value) => update(index, { media_type: value }),
|
|
21114
21114
|
children: [
|
|
21115
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21116
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
21117
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21118
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21119
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21120
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21115
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "h-8 bg-ods-bg text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
21116
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
21117
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "image", children: "Image" }),
|
|
21118
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "video", children: "Video" }),
|
|
21119
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "screenshot", children: "Screenshot" }),
|
|
21120
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "demo", children: "Demo" })
|
|
21121
21121
|
] })
|
|
21122
21122
|
]
|
|
21123
21123
|
}
|
|
@@ -21144,7 +21144,7 @@ function MediaGalleryManager({
|
|
|
21144
21144
|
},
|
|
21145
21145
|
_nullishCoalesce(item.id, () => ( `${item.media_url}-${index}`))
|
|
21146
21146
|
)),
|
|
21147
|
-
pending.map((name, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
21147
|
+
pending.map((name, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkO3EKOXFZcjs.Card, { className: "border-ods-border", "aria-busy": "true", children: [
|
|
21148
21148
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex aspect-video items-center justify-center rounded-lg bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) }),
|
|
21149
21149
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate p-3 text-ods-text-secondary text-h6", children: name })
|
|
21150
21150
|
] }, `pending-${name}-${index}`))
|
|
@@ -21501,7 +21501,7 @@ var MODEL_TOKEN_RATES_COPY = {
|
|
|
21501
21501
|
empty: "No token rates are in effect right now."
|
|
21502
21502
|
};
|
|
21503
21503
|
function providerMark(providerType, stated, className) {
|
|
21504
|
-
const Mark =
|
|
21504
|
+
const Mark = _chunkKKFDRCQFcjs.findIcon.call(void 0, _chunkIC4IJJB2cjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
|
|
21505
21505
|
return Mark ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Mark, { className }) : void 0;
|
|
21506
21506
|
}
|
|
21507
21507
|
var PAD_X = "px-[var(--spacing-system-s)]";
|
|
@@ -21519,7 +21519,7 @@ var UNIT_LINE_CLASS = _chunk63A4GZMBcjs.cn.call(void 0,
|
|
|
21519
21519
|
var TABS_ROW_CLASS = _chunk63A4GZMBcjs.cn.call(void 0, "shrink-0 border-b border-ods-border py-[var(--spacing-system-xs)]", PAD_X);
|
|
21520
21520
|
var NUMBER_CELL = "w-16 shrink-0 whitespace-nowrap text-right tabular-nums";
|
|
21521
21521
|
function useProviderGroup(rates) {
|
|
21522
|
-
const groups =
|
|
21522
|
+
const groups = _chunkIC4IJJB2cjs.groupTokenRatesByProvider.call(void 0, rates);
|
|
21523
21523
|
const [picked, setPicked] = _react.useState.call(void 0, null);
|
|
21524
21524
|
return { groups, group: _nullishCoalesce(groups.find((candidate) => candidate.providerType === picked), () => ( groups[0])), setPicked };
|
|
21525
21525
|
}
|
|
@@ -21530,7 +21530,7 @@ function ProviderTabs({
|
|
|
21530
21530
|
className
|
|
21531
21531
|
}) {
|
|
21532
21532
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21533
|
-
|
|
21533
|
+
_chunkU767P4JUcjs.TabSelector,
|
|
21534
21534
|
{
|
|
21535
21535
|
variant: "secondary",
|
|
21536
21536
|
scrollable: true,
|
|
@@ -21538,7 +21538,7 @@ function ProviderTabs({
|
|
|
21538
21538
|
onValueChange,
|
|
21539
21539
|
items: groups.map((candidate) => ({
|
|
21540
21540
|
id: candidate.providerType,
|
|
21541
|
-
label:
|
|
21541
|
+
label: _chunkIC4IJJB2cjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _435 => _435.rates, 'access', _436 => _436[0], 'optionalAccess', _437 => _437.providerLabel])),
|
|
21542
21542
|
icon: providerMark(candidate.providerType, _optionalChain([candidate, 'access', _438 => _438.rates, 'access', _439 => _439[0], 'optionalAccess', _440 => _440.providerIcon]), "size-full")
|
|
21543
21543
|
})),
|
|
21544
21544
|
className
|
|
@@ -21615,8 +21615,8 @@ function ModelTokenRatesTable({ rates }) {
|
|
|
21615
21615
|
] }),
|
|
21616
21616
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "rowgroup", className: "min-h-0 flex-1 overflow-y-auto", children: group.rates.map((rate) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { "data-loading-item": true, role: "row", className: BODY_ROW_CLASS, children: [
|
|
21617
21617
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "rowheader", className: "min-w-0 flex-1 truncate", children: rate.displayName || rate.modelName }),
|
|
21618
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
21619
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
21618
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkIC4IJJB2cjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
|
|
21619
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkIC4IJJB2cjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
|
|
21620
21620
|
] }, rate.modelName)) })
|
|
21621
21621
|
] }),
|
|
21622
21622
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: UNIT_LINE_CLASS, children: MODEL_TOKEN_RATES_COPY.unit })
|
|
@@ -21663,7 +21663,7 @@ function modelOption(rate) {
|
|
|
21663
21663
|
return {
|
|
21664
21664
|
label: rate.displayName || rate.modelName,
|
|
21665
21665
|
value: rate.modelName,
|
|
21666
|
-
description:
|
|
21666
|
+
description: _chunkIC4IJJB2cjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
|
|
21667
21667
|
icon: providerMark(rate.providerType, rate.providerIcon, "size-full text-ods-text-secondary")
|
|
21668
21668
|
};
|
|
21669
21669
|
}
|
|
@@ -21718,8 +21718,8 @@ function ModelTokenExchange({
|
|
|
21718
21718
|
const [chosen, setChosen] = _react.useState.call(void 0, null);
|
|
21719
21719
|
const balance = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(chosen, () => ( defaultAmount)), () => ( _optionalChain([tokenPrice, 'optionalAccess', _441 => _441.tokens]))), () => ( MODEL_TOKEN_EXCHANGE_BALANCE));
|
|
21720
21720
|
const max = Math.max(amountRange.max, balance, ...presets.map((preset) => preset.tokens));
|
|
21721
|
-
const tokens =
|
|
21722
|
-
const cost =
|
|
21721
|
+
const tokens = _chunkIC4IJJB2cjs.formatTokenAmount.call(void 0, balance);
|
|
21722
|
+
const cost = _chunkIC4IJJB2cjs.tokenCost.call(void 0, balance, tokenPrice);
|
|
21723
21723
|
const balancePrice = cost === null ? null : _chunkW7OFAROYcjs.formatPrice.call(void 0, cost);
|
|
21724
21724
|
const model = rate ? rate.displayName || rate.modelName : "";
|
|
21725
21725
|
const options = models.map(modelOption);
|
|
@@ -21762,7 +21762,7 @@ function ModelTokenExchange({
|
|
|
21762
21762
|
variant: preset.tokens === balance ? "accent" : "outline",
|
|
21763
21763
|
size: "small",
|
|
21764
21764
|
onClick: () => setChosen(preset.tokens),
|
|
21765
|
-
children: copy.buy.preset(
|
|
21765
|
+
children: copy.buy.preset(_chunkIC4IJJB2cjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
|
|
21766
21766
|
},
|
|
21767
21767
|
preset.label
|
|
21768
21768
|
)) })
|
|
@@ -21779,7 +21779,7 @@ function ModelTokenExchange({
|
|
|
21779
21779
|
const stated = _nullishCoalesce(models.find((option) => option.providerType === providerType), () => ( (_optionalChain([rate, 'optionalAccess', _442 => _442.providerType]) === providerType ? rate : null)));
|
|
21780
21780
|
return {
|
|
21781
21781
|
id: providerType,
|
|
21782
|
-
name:
|
|
21782
|
+
name: _chunkIC4IJJB2cjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _443 => _443.providerLabel])),
|
|
21783
21783
|
icon: providerMark(providerType, _optionalChain([stated, 'optionalAccess', _444 => _444.providerIcon]), "size-8 text-ods-text-secondary")
|
|
21784
21784
|
};
|
|
21785
21785
|
}),
|
|
@@ -21791,7 +21791,7 @@ function ModelTokenExchange({
|
|
|
21791
21791
|
}
|
|
21792
21792
|
),
|
|
21793
21793
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21794
|
-
|
|
21794
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
21795
21795
|
{
|
|
21796
21796
|
fieldLoading: loading,
|
|
21797
21797
|
label: copy.use.model,
|
|
@@ -21818,7 +21818,7 @@ function ModelTokenExchange({
|
|
|
21818
21818
|
{
|
|
21819
21819
|
size: "plain",
|
|
21820
21820
|
loading,
|
|
21821
|
-
figure:
|
|
21821
|
+
figure: _chunkIC4IJJB2cjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _449 => _449.inputTokenRate])),
|
|
21822
21822
|
words: copy.charge.input
|
|
21823
21823
|
}
|
|
21824
21824
|
),
|
|
@@ -21827,7 +21827,7 @@ function ModelTokenExchange({
|
|
|
21827
21827
|
{
|
|
21828
21828
|
size: "plain",
|
|
21829
21829
|
loading,
|
|
21830
|
-
figure:
|
|
21830
|
+
figure: _chunkIC4IJJB2cjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _450 => _450.outputTokenRate])),
|
|
21831
21831
|
words: copy.charge.output
|
|
21832
21832
|
}
|
|
21833
21833
|
)
|
|
@@ -21839,9 +21839,9 @@ function ModelTokenExchange({
|
|
|
21839
21839
|
className: "mt-auto flex flex-col rounded-md border border-ods-accent bg-ods-bg p-[var(--spacing-system-mf)]",
|
|
21840
21840
|
children: [
|
|
21841
21841
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[2lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-full max-w-xs" }) : copy.charge.so(_nullishCoalesce(balancePrice, () => ( copy.buy.tokens(tokens))), model) }),
|
|
21842
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] whitespace-nowrap tabular-nums text-ods-text-primary text-h1", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-40" }) :
|
|
21842
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] whitespace-nowrap tabular-nums text-ods-text-primary text-h1", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-40" }) : _chunkIC4IJJB2cjs.formatTokenAmount.call(void 0, _chunkIC4IJJB2cjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
|
|
21843
21843
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-primary text-h3", children: copy.charge.read }),
|
|
21844
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-48" }) : copy.charge.orWritten(
|
|
21844
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-secondary text-h4", children: loading || !rate ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-48" }) : copy.charge.orWritten(_chunkIC4IJJB2cjs.formatTokenAmount.call(void 0, _chunkIC4IJJB2cjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
|
|
21845
21845
|
]
|
|
21846
21846
|
}
|
|
21847
21847
|
)
|
|
@@ -21983,7 +21983,7 @@ var ParallaxImageShowcase = ({
|
|
|
21983
21983
|
alt: leftImage.alt,
|
|
21984
21984
|
width: 800,
|
|
21985
21985
|
height: 500,
|
|
21986
|
-
sizes:
|
|
21986
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.card,
|
|
21987
21987
|
className: "h-auto w-full object-contain",
|
|
21988
21988
|
style: shadow ? { boxShadow: "0 20px 40px rgba(0, 0, 0, 0.3)" } : {}
|
|
21989
21989
|
}
|
|
@@ -22005,7 +22005,7 @@ var ParallaxImageShowcase = ({
|
|
|
22005
22005
|
alt: centerImage.alt,
|
|
22006
22006
|
width: 800,
|
|
22007
22007
|
height: 500,
|
|
22008
|
-
sizes:
|
|
22008
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.card,
|
|
22009
22009
|
className: "h-auto w-full object-contain",
|
|
22010
22010
|
style: shadow ? { boxShadow: "0 20px 40px rgba(0, 0, 0, 0.3)" } : {}
|
|
22011
22011
|
}
|
|
@@ -22027,7 +22027,7 @@ var ParallaxImageShowcase = ({
|
|
|
22027
22027
|
alt: rightImage.alt,
|
|
22028
22028
|
width: 800,
|
|
22029
22029
|
height: 500,
|
|
22030
|
-
sizes:
|
|
22030
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.card,
|
|
22031
22031
|
className: "h-auto w-full object-contain",
|
|
22032
22032
|
style: shadow ? { boxShadow: "0 20px 40px rgba(0, 0, 0, 0.3)" } : {}
|
|
22033
22033
|
}
|
|
@@ -22052,7 +22052,7 @@ var ParallaxImageShowcase = ({
|
|
|
22052
22052
|
src: leftImage.src,
|
|
22053
22053
|
alt: leftImage.alt,
|
|
22054
22054
|
fill: true,
|
|
22055
|
-
sizes:
|
|
22055
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.half,
|
|
22056
22056
|
className: "ods-card/50 border border-ods-border object-cover object-[left_top]"
|
|
22057
22057
|
}
|
|
22058
22058
|
),
|
|
@@ -22072,7 +22072,7 @@ var ParallaxImageShowcase = ({
|
|
|
22072
22072
|
src: centerImage.src,
|
|
22073
22073
|
alt: centerImage.alt,
|
|
22074
22074
|
fill: true,
|
|
22075
|
-
sizes:
|
|
22075
|
+
sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.half,
|
|
22076
22076
|
className: "ods-card/50 border border-ods-border object-cover object-[left_top]"
|
|
22077
22077
|
}
|
|
22078
22078
|
),
|
|
@@ -22093,7 +22093,7 @@ var ParallaxImageShowcase = ({
|
|
|
22093
22093
|
y,
|
|
22094
22094
|
rotate
|
|
22095
22095
|
},
|
|
22096
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGG466XFQcjs.next_image_default, { src: rightImage.src, alt: rightImage.alt, fill: true, sizes:
|
|
22096
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGG466XFQcjs.next_image_default, { src: rightImage.src, alt: rightImage.alt, fill: true, sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.full, className: "object-contain" })
|
|
22097
22097
|
}
|
|
22098
22098
|
),
|
|
22099
22099
|
centerImage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22105,7 +22105,7 @@ var ParallaxImageShowcase = ({
|
|
|
22105
22105
|
y,
|
|
22106
22106
|
rotate
|
|
22107
22107
|
},
|
|
22108
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGG466XFQcjs.next_image_default, { src: centerImage.src, alt: centerImage.alt, fill: true, sizes:
|
|
22108
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGG466XFQcjs.next_image_default, { src: centerImage.src, alt: centerImage.alt, fill: true, sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.full, className: "object-contain" })
|
|
22109
22109
|
}
|
|
22110
22110
|
),
|
|
22111
22111
|
leftImage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22117,7 +22117,7 @@ var ParallaxImageShowcase = ({
|
|
|
22117
22117
|
y,
|
|
22118
22118
|
rotate
|
|
22119
22119
|
},
|
|
22120
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGG466XFQcjs.next_image_default, { src: leftImage.src, alt: leftImage.alt, fill: true, sizes:
|
|
22120
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGG466XFQcjs.next_image_default, { src: leftImage.src, alt: leftImage.alt, fill: true, sizes: _chunkKKFDRCQFcjs.IMAGE_SLOT.full, className: "object-contain" })
|
|
22121
22121
|
}
|
|
22122
22122
|
)
|
|
22123
22123
|
] });
|
|
@@ -22262,7 +22262,7 @@ function PlatformFilterComponent({
|
|
|
22262
22262
|
variant: selectedPlatform === platform.value ? "accent" : "outline",
|
|
22263
22263
|
size,
|
|
22264
22264
|
onClick: () => onPlatformChange(platform.value),
|
|
22265
|
-
leftIcon: showIcons ?
|
|
22265
|
+
leftIcon: showIcons ? _chunkOH5TXFRRcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
|
|
22266
22266
|
className: "text-h3",
|
|
22267
22267
|
children: platform.label
|
|
22268
22268
|
},
|
|
@@ -22315,8 +22315,8 @@ var SelectButton = _react2.default.forwardRef(
|
|
|
22315
22315
|
src: image.src,
|
|
22316
22316
|
alt: image.alt,
|
|
22317
22317
|
className: "size-full object-cover",
|
|
22318
|
-
width:
|
|
22319
|
-
height:
|
|
22318
|
+
width: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.logoLg,
|
|
22319
|
+
height: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.logoLg,
|
|
22320
22320
|
unoptimized: true
|
|
22321
22321
|
}
|
|
22322
22322
|
) }),
|
|
@@ -22361,14 +22361,14 @@ var ConfidenceBadge = ({
|
|
|
22361
22361
|
size = "sm",
|
|
22362
22362
|
className
|
|
22363
22363
|
}) => {
|
|
22364
|
-
const level =
|
|
22364
|
+
const level = _chunkIC4IJJB2cjs.getConfidenceLevel.call(void 0, confidence);
|
|
22365
22365
|
if (level === "none") {
|
|
22366
22366
|
return null;
|
|
22367
22367
|
}
|
|
22368
|
-
const label =
|
|
22369
|
-
const borderClass =
|
|
22370
|
-
const textClass =
|
|
22371
|
-
const bgClass =
|
|
22368
|
+
const label = _chunkIC4IJJB2cjs.getConfidenceLabel.call(void 0, confidence);
|
|
22369
|
+
const borderClass = _chunkIC4IJJB2cjs.getConfidenceBorderClass.call(void 0, confidence);
|
|
22370
|
+
const textClass = _chunkIC4IJJB2cjs.getConfidenceTextClass.call(void 0, confidence);
|
|
22371
|
+
const bgClass = _chunkIC4IJJB2cjs.getConfidenceBgClass.call(void 0, confidence);
|
|
22372
22372
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22373
22373
|
"span",
|
|
22374
22374
|
{
|
|
@@ -22419,9 +22419,9 @@ function SEOEditorPreview({
|
|
|
22419
22419
|
const [isUploading, setIsUploading] = _react.useState.call(void 0, false);
|
|
22420
22420
|
const [fileInputRef, setFileInputRef] = _react.useState.call(void 0, null);
|
|
22421
22421
|
const seoTitleLength = (seoTitle || "").length;
|
|
22422
|
-
const seoTitleTooLong = seoTitleLength >
|
|
22422
|
+
const seoTitleTooLong = seoTitleLength > _chunkIC4IJJB2cjs.SEO_TITLE_MAX_LENGTH;
|
|
22423
22423
|
const seoDescriptionLength = (seoDescription || "").length;
|
|
22424
|
-
const seoDescriptionTooLong = seoDescriptionLength >
|
|
22424
|
+
const seoDescriptionTooLong = seoDescriptionLength > _chunkIC4IJJB2cjs.SEO_DESCRIPTION_MAX_LENGTH;
|
|
22425
22425
|
const displayTitle = seoTitle.trim() || title || "Untitled";
|
|
22426
22426
|
const displayDescription = seoDescription.trim() || summary || "No description";
|
|
22427
22427
|
const hasOgImage = ogImageUrl.trim();
|
|
@@ -22446,10 +22446,10 @@ function SEOEditorPreview({
|
|
|
22446
22446
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
22447
22447
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
22448
22448
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22449
|
-
|
|
22449
|
+
_chunkIC4IJJB2cjs.Field,
|
|
22450
22450
|
{
|
|
22451
22451
|
label: "SEO Title",
|
|
22452
|
-
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${
|
|
22452
|
+
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkIC4IJJB2cjs.SEO_TITLE_MAX_LENGTH})` : null,
|
|
22453
22453
|
labelExtras: aiConfidenceSeoTitle !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
22454
22454
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
22455
22455
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ConfidenceBadge, { confidence: aiConfidenceSeoTitle, showLabel: true, showPercentage: true, size: "sm" })
|
|
@@ -22464,7 +22464,7 @@ function SEOEditorPreview({
|
|
|
22464
22464
|
children: [
|
|
22465
22465
|
seoTitleLength,
|
|
22466
22466
|
"/",
|
|
22467
|
-
|
|
22467
|
+
_chunkIC4IJJB2cjs.SEO_TITLE_MAX_LENGTH
|
|
22468
22468
|
]
|
|
22469
22469
|
}
|
|
22470
22470
|
),
|
|
@@ -22475,7 +22475,7 @@ function SEOEditorPreview({
|
|
|
22475
22475
|
value: seoTitle || "",
|
|
22476
22476
|
onChange: (e) => onSeoTitleChange(e.target.value),
|
|
22477
22477
|
disabled,
|
|
22478
|
-
maxLength:
|
|
22478
|
+
maxLength: _chunkIC4IJJB2cjs.SEO_TITLE_MAX_LENGTH,
|
|
22479
22479
|
invalid: seoTitleTooLong,
|
|
22480
22480
|
placeholder: "Enter SEO meta title...",
|
|
22481
22481
|
className: "border-ods-border bg-ods-bg text-ods-text-primary"
|
|
@@ -22486,7 +22486,7 @@ function SEOEditorPreview({
|
|
|
22486
22486
|
!seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
|
|
22487
22487
|
] }),
|
|
22488
22488
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22489
|
-
|
|
22489
|
+
_chunkIC4IJJB2cjs.Field,
|
|
22490
22490
|
{
|
|
22491
22491
|
label: "SEO Keywords",
|
|
22492
22492
|
labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -22518,10 +22518,10 @@ function SEOEditorPreview({
|
|
|
22518
22518
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
22519
22519
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
22520
22520
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22521
|
-
|
|
22521
|
+
_chunkIC4IJJB2cjs.Field,
|
|
22522
22522
|
{
|
|
22523
22523
|
label: "SEO Description",
|
|
22524
|
-
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${
|
|
22524
|
+
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkIC4IJJB2cjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
|
|
22525
22525
|
labelExtras: aiConfidenceSeoDescription !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
22526
22526
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
22527
22527
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22544,7 +22544,7 @@ function SEOEditorPreview({
|
|
|
22544
22544
|
children: [
|
|
22545
22545
|
seoDescriptionLength,
|
|
22546
22546
|
"/",
|
|
22547
|
-
|
|
22547
|
+
_chunkIC4IJJB2cjs.SEO_DESCRIPTION_MAX_LENGTH
|
|
22548
22548
|
]
|
|
22549
22549
|
}
|
|
22550
22550
|
),
|
|
@@ -22555,7 +22555,7 @@ function SEOEditorPreview({
|
|
|
22555
22555
|
value: seoDescription || "",
|
|
22556
22556
|
onChange: (e) => onSeoDescriptionChange(e.target.value),
|
|
22557
22557
|
disabled,
|
|
22558
|
-
maxLength:
|
|
22558
|
+
maxLength: _chunkIC4IJJB2cjs.SEO_DESCRIPTION_MAX_LENGTH,
|
|
22559
22559
|
invalid: seoDescriptionTooLong,
|
|
22560
22560
|
placeholder: "Enter SEO meta description...",
|
|
22561
22561
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "resize-none border-ods-border bg-ods-bg text-ods-text-primary", SEO_MEDIA_BOX_HEIGHT)
|
|
@@ -22624,7 +22624,7 @@ function SEOEditorPreview({
|
|
|
22624
22624
|
{
|
|
22625
22625
|
ref: setFileInputRef,
|
|
22626
22626
|
type: "file",
|
|
22627
|
-
accept:
|
|
22627
|
+
accept: _chunkNMWLXHFHcjs.IMAGE_FILE_ACCEPT,
|
|
22628
22628
|
onChange: handleImageUpload,
|
|
22629
22629
|
className: "hidden",
|
|
22630
22630
|
disabled: disabled || isUploading
|
|
@@ -22705,10 +22705,10 @@ var SOCIAL_ICONS = {
|
|
|
22705
22705
|
};
|
|
22706
22706
|
function socialIcon(platform) {
|
|
22707
22707
|
if (!Object.prototype.hasOwnProperty.call(SOCIAL_ICONS, platform)) return void 0;
|
|
22708
|
-
return _nullishCoalesce(
|
|
22708
|
+
return _nullishCoalesce(_chunkKKFDRCQFcjs.iconOf.call(void 0, SOCIAL_ICONS[platform]), () => ( void 0));
|
|
22709
22709
|
}
|
|
22710
22710
|
function renderSocialIcon(platform) {
|
|
22711
|
-
const key = _nullishCoalesce(
|
|
22711
|
+
const key = _nullishCoalesce(_chunkNMWLXHFHcjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
|
|
22712
22712
|
const icon = _nullishCoalesce(socialIcon(key), () => ( socialIcon("website")));
|
|
22713
22713
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5" }) : null;
|
|
22714
22714
|
}
|
|
@@ -22799,7 +22799,7 @@ function SocialLinksManager({
|
|
|
22799
22799
|
};
|
|
22800
22800
|
const getIcon = (link, platform) => {
|
|
22801
22801
|
const iconKey = _optionalChain([platform, 'optionalAccess', _460 => _460.icon_name]) || link.platform;
|
|
22802
|
-
const key =
|
|
22802
|
+
const key = _chunkNMWLXHFHcjs.normalizeSocialPlatform.call(void 0, iconKey);
|
|
22803
22803
|
if (!key) return null;
|
|
22804
22804
|
const icon = socialIcon(key);
|
|
22805
22805
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5 text-ods-text-secondary" }) : null;
|
|
@@ -22815,9 +22815,9 @@ function SocialLinksManager({
|
|
|
22815
22815
|
children: [
|
|
22816
22816
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 items-center justify-center", children: Icon }),
|
|
22817
22817
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid flex-1 grid-cols-2 gap-3", children: [
|
|
22818
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22819
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22820
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22818
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: link.platform, onValueChange: (value) => updateLink(index, "platform", value), children: [
|
|
22819
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
22820
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: platforms.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: p.name, children: p.display_name }, p.name)) })
|
|
22821
22821
|
] }) }),
|
|
22822
22822
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22823
22823
|
_chunkHXURNKXIcjs.Input,
|
|
@@ -22835,15 +22835,15 @@ function SocialLinksManager({
|
|
|
22835
22835
|
)
|
|
22836
22836
|
] }),
|
|
22837
22837
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22838
|
-
|
|
22838
|
+
_chunkCOJG2ATYcjs.Select,
|
|
22839
22839
|
{
|
|
22840
22840
|
value: _nullishCoalesce(link.visibility, () => ( "external")),
|
|
22841
22841
|
onValueChange: (value) => updateLink(index, "visibility", value),
|
|
22842
22842
|
children: [
|
|
22843
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22844
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22845
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22846
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22843
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "w-[120px] shrink-0", "aria-label": "Social link visibility", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
22844
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: [
|
|
22845
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "external", children: "Public" }),
|
|
22846
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "internal", children: "Internal" })
|
|
22847
22847
|
] })
|
|
22848
22848
|
]
|
|
22849
22849
|
}
|
|
@@ -22935,7 +22935,7 @@ var StartWithOpenFrameButton = _react.forwardRef.call(void 0,
|
|
|
22935
22935
|
className: _chunk63A4GZMBcjs.cn.call(void 0, modeClassName, className),
|
|
22936
22936
|
style: customStyle,
|
|
22937
22937
|
leftIcon: !loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJZLKYOBcjs.OpenframeLogoIcon, { secondaryColor: iconLowerPath, className: "h-5 w-5", color: iconUpperPath }) : void 0,
|
|
22938
|
-
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22938
|
+
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.StatusBadge, { text: "Beta", variant: "button", colorScheme: "yellow" }),
|
|
22939
22939
|
children
|
|
22940
22940
|
}
|
|
22941
22941
|
);
|
|
@@ -23269,11 +23269,11 @@ function WarningBlock({ title, icon = DEFAULT_ICON, children, className }) {
|
|
|
23269
23269
|
|
|
23270
23270
|
function VideoBitesDisplay({
|
|
23271
23271
|
bites,
|
|
23272
|
-
title =
|
|
23272
|
+
title = _chunkO3EKOXFZcjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
23273
23273
|
filterPublished = true,
|
|
23274
23274
|
showTitle = true
|
|
23275
23275
|
}) {
|
|
23276
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23276
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLFEURIZNcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
|
|
23277
23277
|
}
|
|
23278
23278
|
|
|
23279
23279
|
// src/components/features/walkthrough-video.tsx
|
|
@@ -23302,7 +23302,7 @@ function WalkthroughVideo({
|
|
|
23302
23302
|
onOpenChange,
|
|
23303
23303
|
defaultOpen,
|
|
23304
23304
|
defaultOpenPaused,
|
|
23305
|
-
deepLinkParam =
|
|
23305
|
+
deepLinkParam = _chunkIC4IJJB2cjs.WALKTHROUGH_OPEN_QUERY_PARAM,
|
|
23306
23306
|
autoPlayCard = false,
|
|
23307
23307
|
label = "Play Demo Video",
|
|
23308
23308
|
placement,
|
|
@@ -23319,7 +23319,7 @@ function WalkthroughVideo({
|
|
|
23319
23319
|
const inline = placement === "inline";
|
|
23320
23320
|
const inScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
|
|
23321
23321
|
const dismissEnabled = dismissal !== false;
|
|
23322
|
-
const storageKey = dismissEnabled && dismissal.storageKey ||
|
|
23322
|
+
const storageKey = dismissEnabled && dismissal.storageKey || _chunkIC4IJJB2cjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
|
|
23323
23323
|
const dismissalId = _optionalChain([video, 'optionalAccess', _466 => _466.id]) != null ? String(video.id) : "dismissed";
|
|
23324
23324
|
const [mounted, setMounted] = _react.useState.call(void 0, false);
|
|
23325
23325
|
const [dismissed, setDismissed] = _react.useState.call(void 0, false);
|
|
@@ -23331,7 +23331,7 @@ function WalkthroughVideo({
|
|
|
23331
23331
|
let delayElapsed = false;
|
|
23332
23332
|
let interacted = inline;
|
|
23333
23333
|
const reveal = () => {
|
|
23334
|
-
if (dismissEnabled &&
|
|
23334
|
+
if (dismissEnabled && _chunkIC4IJJB2cjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
|
|
23335
23335
|
setDismissed(true);
|
|
23336
23336
|
return;
|
|
23337
23337
|
}
|
|
@@ -23368,7 +23368,7 @@ function WalkthroughVideo({
|
|
|
23368
23368
|
if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
|
|
23369
23369
|
};
|
|
23370
23370
|
}, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId, inline]);
|
|
23371
|
-
const hydrated =
|
|
23371
|
+
const hydrated = _chunkLFEURIZNcjs.useIsHydrated.call(void 0, );
|
|
23372
23372
|
const previewSuppressed = _react.useMemo.call(void 0, () => {
|
|
23373
23373
|
if (!hydrated) return false;
|
|
23374
23374
|
try {
|
|
@@ -23618,7 +23618,7 @@ function WalkthroughVideo({
|
|
|
23618
23618
|
(e) => {
|
|
23619
23619
|
e.stopPropagation();
|
|
23620
23620
|
pausePreviewNow();
|
|
23621
|
-
if (dismissEnabled)
|
|
23621
|
+
if (dismissEnabled) _chunkIC4IJJB2cjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
|
|
23622
23622
|
setDismissed(true);
|
|
23623
23623
|
},
|
|
23624
23624
|
[dismissEnabled, storageKey, dismissalId, pausePreviewNow]
|
|
@@ -23769,15 +23769,15 @@ function WalkthroughVideo({
|
|
|
23769
23769
|
},
|
|
23770
23770
|
children: [
|
|
23771
23771
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23772
|
-
|
|
23772
|
+
_chunkO3EKOXFZcjs.VideoHoverPreviewSurface,
|
|
23773
23773
|
{
|
|
23774
23774
|
url: video.mainVideoUrl || "",
|
|
23775
|
-
posterUrl: video.posterUrl ? _chunkGG466XFQcjs.resizedImageUrl.call(void 0, video.posterUrl,
|
|
23775
|
+
posterUrl: video.posterUrl ? _chunkGG466XFQcjs.resizedImageUrl.call(void 0, video.posterUrl, _chunkKKFDRCQFcjs.IMAGE_WIDTHS[0]) : video.posterUrl,
|
|
23776
23776
|
active: cardActive,
|
|
23777
23777
|
isClone: false,
|
|
23778
23778
|
badge: "play",
|
|
23779
23779
|
fit: "cover",
|
|
23780
|
-
posterSizes:
|
|
23780
|
+
posterSizes: _chunkKKFDRCQFcjs.fixedImageSlot.call(void 0, "cover"),
|
|
23781
23781
|
posterInView: true,
|
|
23782
23782
|
preload: "none",
|
|
23783
23783
|
hideMutedBadge: true,
|
|
@@ -23793,7 +23793,7 @@ function WalkthroughVideo({
|
|
|
23793
23793
|
`card-${embedUrlKey}`
|
|
23794
23794
|
) }),
|
|
23795
23795
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23796
|
-
|
|
23796
|
+
_chunkLFEURIZNcjs.CardHitLayer,
|
|
23797
23797
|
{
|
|
23798
23798
|
label: video.title ? `${label}: ${video.title}` : label,
|
|
23799
23799
|
onPointerDown: pausePreviewNow,
|
|
@@ -23909,7 +23909,7 @@ function WalkthroughVideo({
|
|
|
23909
23909
|
children: [
|
|
23910
23910
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
|
|
23911
23911
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23912
|
-
|
|
23912
|
+
_chunkO3EKOXFZcjs.Video,
|
|
23913
23913
|
{
|
|
23914
23914
|
kind: video.youtubeUrl ? "youtube" : "file",
|
|
23915
23915
|
url: video.youtubeUrl || video.mainVideoUrl,
|
|
@@ -23965,7 +23965,7 @@ function useWalkthroughVideo(opts) {
|
|
|
23965
23965
|
const { endpoint, initialData, enabled: enabledGiven = true, transformCaptionsUrl } = opts;
|
|
23966
23966
|
const inScope = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
|
|
23967
23967
|
const enabled = enabledGiven && !inScope;
|
|
23968
|
-
const captions =
|
|
23968
|
+
const captions = _chunkLFEURIZNcjs.useCaptions.call(void 0, );
|
|
23969
23969
|
const query = _reactquery.useQuery.call(void 0, {
|
|
23970
23970
|
queryKey: ["walkthrough-video", endpoint],
|
|
23971
23971
|
enabled,
|
|
@@ -24163,7 +24163,7 @@ function VideoSourceSelector({
|
|
|
24163
24163
|
}
|
|
24164
24164
|
function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
|
|
24165
24165
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
|
|
24166
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24166
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Video, { kind: "file", url: videoUrl }) }),
|
|
24167
24167
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24168
24168
|
_chunkFCZAUK4Dcjs.Button,
|
|
24169
24169
|
{
|
|
@@ -24619,19 +24619,19 @@ function HighlightVideoSection({
|
|
|
24619
24619
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3 rounded-lg border border-ods-border bg-ods-card p-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1", children: [
|
|
24620
24620
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.Label, { children: "Target Duration" }),
|
|
24621
24621
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
24622
|
-
|
|
24622
|
+
_chunkCOJG2ATYcjs.Select,
|
|
24623
24623
|
{
|
|
24624
24624
|
value: targetDurationSeconds.toString(),
|
|
24625
24625
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
24626
24626
|
disabled,
|
|
24627
24627
|
children: [
|
|
24628
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24629
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
24630
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24631
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24632
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24633
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24634
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24628
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "mt-1 bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
24629
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
24630
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
24631
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
24632
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
24633
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
24634
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
24635
24635
|
] })
|
|
24636
24636
|
]
|
|
24637
24637
|
}
|
|
@@ -24689,7 +24689,7 @@ function HighlightVideoSection({
|
|
|
24689
24689
|
// Default simple preview — the <Video> SSOT (MuxPlayer) plays
|
|
24690
24690
|
// MP4 and Mux HLS alike; aspect-video box reserves the height.
|
|
24691
24691
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
|
|
24692
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24692
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
|
|
24693
24693
|
onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24694
24694
|
_chunkFCZAUK4Dcjs.Button,
|
|
24695
24695
|
{
|
|
@@ -24716,20 +24716,20 @@ function HighlightConfigSection({
|
|
|
24716
24716
|
disabled = false,
|
|
24717
24717
|
className = ""
|
|
24718
24718
|
}) {
|
|
24719
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24720
|
-
|
|
24719
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `space-y-3 rounded-lg border border-ods-border bg-ods-card p-4 ${className}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIC4IJJB2cjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
24720
|
+
_chunkCOJG2ATYcjs.Select,
|
|
24721
24721
|
{
|
|
24722
24722
|
value: targetDurationSeconds.toString(),
|
|
24723
24723
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
24724
24724
|
disabled,
|
|
24725
24725
|
children: [
|
|
24726
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24727
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
24728
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24729
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24730
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24731
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24732
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24726
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { id: f.id, className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
24727
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
24728
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
24729
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
24730
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
24731
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
24732
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
24733
24733
|
] })
|
|
24734
24734
|
]
|
|
24735
24735
|
}
|
|
@@ -24817,7 +24817,7 @@ var AIStatusIndicator = ({
|
|
|
24817
24817
|
}) => {
|
|
24818
24818
|
const config = statusConfig[status];
|
|
24819
24819
|
const displayText = message || config.label;
|
|
24820
|
-
const confidenceLabel = showConfidence && confidence !== void 0 ? `${
|
|
24820
|
+
const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkIC4IJJB2cjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
|
|
24821
24821
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "inline-flex items-center gap-2 rounded-lg px-3 py-1.5", config.bgColor, className), children: [
|
|
24822
24822
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24823
24823
|
_chunkUNFCRSYIcjs.SparklesIcon,
|
|
@@ -24825,7 +24825,7 @@ var AIStatusIndicator = ({
|
|
|
24825
24825
|
size: 16,
|
|
24826
24826
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
24827
24827
|
status === "loading" && _chunkPMUCEUFQcjs.LIVE_PULSE_CLASS,
|
|
24828
|
-
confidence !== void 0 && status === "success" ?
|
|
24828
|
+
confidence !== void 0 && status === "success" ? _chunkIC4IJJB2cjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
24829
24829
|
)
|
|
24830
24830
|
}
|
|
24831
24831
|
),
|
|
@@ -24834,7 +24834,7 @@ var AIStatusIndicator = ({
|
|
|
24834
24834
|
{
|
|
24835
24835
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
24836
24836
|
"text-h6",
|
|
24837
|
-
confidence !== void 0 && status === "success" ?
|
|
24837
|
+
confidence !== void 0 && status === "success" ? _chunkIC4IJJB2cjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
24838
24838
|
),
|
|
24839
24839
|
children: displayText
|
|
24840
24840
|
}
|
|
@@ -24844,8 +24844,8 @@ var AIStatusIndicator = ({
|
|
|
24844
24844
|
{
|
|
24845
24845
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
24846
24846
|
"rounded-full border px-2 py-0.5 text-h6",
|
|
24847
|
-
|
|
24848
|
-
|
|
24847
|
+
_chunkIC4IJJB2cjs.getConfidenceBorderClass.call(void 0, confidence),
|
|
24848
|
+
_chunkIC4IJJB2cjs.getConfidenceTextClass.call(void 0, confidence)
|
|
24849
24849
|
),
|
|
24850
24850
|
children: confidenceLabel
|
|
24851
24851
|
}
|
|
@@ -25381,7 +25381,7 @@ var CATEGORY_LEVEL_COLUMN_CLASS = _chunk63A4GZMBcjs.cn.call(void 0,
|
|
|
25381
25381
|
);
|
|
25382
25382
|
var CHEVRON_CLASS2 = "!h-6 !w-6 text-ods-text-primary transition-transform duration-300";
|
|
25383
25383
|
var LevelOption = ({ level }) => {
|
|
25384
|
-
const { label, Icon, toneClassName } =
|
|
25384
|
+
const { label, Icon, toneClassName } = _chunkU767P4JUcjs.APPROVAL_LEVEL_META[level];
|
|
25385
25385
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "inline-flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
25386
25386
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 24, className: _chunk63A4GZMBcjs.cn.call(void 0, "shrink-0", toneClassName), "aria-hidden": true }),
|
|
25387
25387
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: label })
|
|
@@ -25404,7 +25404,7 @@ var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClass
|
|
|
25404
25404
|
}
|
|
25405
25405
|
) }),
|
|
25406
25406
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkVCFQHPOOcjs.DropdownMenuContent, { align: "end", className: contentClassName, children: [
|
|
25407
|
-
|
|
25407
|
+
_chunkU767P4JUcjs.APPROVAL_LEVELS.map((level) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.DropdownMenuItem, { onClick: () => onChange(level), className: LEVEL_MENU_ITEM_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LevelOption, { level }) }, level)),
|
|
25408
25408
|
allowClear && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
25409
25409
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.DropdownMenuSeparator, {}),
|
|
25410
25410
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.DropdownMenuItem, { onClick: () => onChange(void 0), className: LEVEL_MENU_ITEM_CLASS, children: "Clear Global Permission" })
|
|
@@ -25414,7 +25414,7 @@ var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClass
|
|
|
25414
25414
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
25415
25415
|
const nameId = `policy-${categoryId}-${policy.id}`;
|
|
25416
25416
|
const level = policy.approvalLevel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25417
|
-
|
|
25417
|
+
_chunkU767P4JUcjs.ApprovalLevelView,
|
|
25418
25418
|
{
|
|
25419
25419
|
value: policy.approvalLevel,
|
|
25420
25420
|
editable: editMode,
|
|
@@ -25423,11 +25423,11 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
25423
25423
|
}
|
|
25424
25424
|
) : null;
|
|
25425
25425
|
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 content-md:items-center", children: [
|
|
25426
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, ICON_TILE_CLASS, "text-ods-text-secondary", editMode && "hidden content-md:flex"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25426
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, ICON_TILE_CLASS, "text-ods-text-secondary", editMode && "hidden content-md:flex"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIGVAPIEWcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
|
|
25427
25427
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
25428
25428
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-sf)]", children: [
|
|
25429
25429
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { id: nameId, className: "truncate text-ods-text-primary text-h4", title: policy.name, children: policy.name }) }),
|
|
25430
|
-
editMode && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 text-ods-text-secondary content-md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25430
|
+
editMode && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 text-ods-text-secondary content-md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIGVAPIEWcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) })
|
|
25431
25431
|
] }),
|
|
25432
25432
|
level && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex content-md:hidden", editMode && "mt-[var(--spacing-system-sf)]"), children: level })
|
|
25433
25433
|
] }),
|
|
@@ -25448,7 +25448,7 @@ var CategorySection = ({
|
|
|
25448
25448
|
}) => {
|
|
25449
25449
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loadingGiven;
|
|
25450
25450
|
const isExpanded = isExpandedProp && !loading;
|
|
25451
|
-
const { innerRef, containerStyle } =
|
|
25451
|
+
const { innerRef, containerStyle } = _chunkU767P4JUcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
|
|
25452
25452
|
const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
|
|
25453
25453
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
25454
25454
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -25609,7 +25609,7 @@ function OpenPolicyButton({ href, name }) {
|
|
|
25609
25609
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25610
25610
|
_chunkFCZAUK4Dcjs.Button,
|
|
25611
25611
|
{
|
|
25612
|
-
onClick: loading ? void 0 :
|
|
25612
|
+
onClick: loading ? void 0 : _chunkIC4IJJB2cjs.openInNewTab.call(void 0, href),
|
|
25613
25613
|
disabled: loading,
|
|
25614
25614
|
variant: "outline",
|
|
25615
25615
|
size: "icon",
|
|
@@ -25648,8 +25648,8 @@ function PoliciesTable({
|
|
|
25648
25648
|
accessorKey: "name",
|
|
25649
25649
|
header: "Name",
|
|
25650
25650
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-h-[60px] min-w-0 flex-col justify-center gap-1 py-2", children: [
|
|
25651
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25652
|
-
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25651
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: row.original.name }),
|
|
25652
|
+
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.description })
|
|
25653
25653
|
] }),
|
|
25654
25654
|
meta: { width: "flex-1 min-w-0" }
|
|
25655
25655
|
},
|
|
@@ -25791,7 +25791,7 @@ function PolicySummaryCards({ summary, isLoading = false, hasData = true, now })
|
|
|
25791
25791
|
DashboardInfoCard,
|
|
25792
25792
|
{
|
|
25793
25793
|
title: "Updated",
|
|
25794
|
-
value: hasData && summary.lastUpdatedAt ?
|
|
25794
|
+
value: hasData && summary.lastUpdatedAt ? _chunkU767P4JUcjs.formatRelativeTimeFrom.call(void 0, summary.lastUpdatedAt, _nullishCoalesce(now, () => ( /* @__PURE__ */ new Date()))) : EMPTY_VALUE,
|
|
25795
25795
|
valueClassName: "!text-h3",
|
|
25796
25796
|
tooltip: "Policy compliance stats are updated hourly. View a policy's devices for real-time status."
|
|
25797
25797
|
}
|
|
@@ -25907,7 +25907,7 @@ function toValidInstant(iso) {
|
|
|
25907
25907
|
function formatLastRead(iso, now = /* @__PURE__ */ new Date()) {
|
|
25908
25908
|
const date = toValidInstant(iso);
|
|
25909
25909
|
if (!date) return TENANT_EMPTY_VALUE;
|
|
25910
|
-
return now.getTime() - date.getTime() < DAY_MS ?
|
|
25910
|
+
return now.getTime() - date.getTime() < DAY_MS ? _chunkU767P4JUcjs.formatRelativeTimeFrom.call(void 0, date, now) : _chunkEIACEY2Lcjs.formatDate.call(void 0, date);
|
|
25911
25911
|
}
|
|
25912
25912
|
function usersCountLabel(count) {
|
|
25913
25913
|
if (count == null) return TENANT_EMPTY_VALUE;
|
|
@@ -25920,7 +25920,7 @@ function TenantAccessCell({ accessState, lastReadAt: lastReadAt2, now }) {
|
|
|
25920
25920
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
|
|
25921
25921
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-[var(--spacing-system-xxs)]", children: [
|
|
25922
25922
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { ...accessStateTag(accessState), loading, className: "self-start" }),
|
|
25923
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25923
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: `Last read: ${formatLastRead(lastReadAt2, now)}` })
|
|
25924
25924
|
] });
|
|
25925
25925
|
}
|
|
25926
25926
|
|
|
@@ -25932,9 +25932,9 @@ function TenantCell({ provider, name, domain }) {
|
|
|
25932
25932
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
25933
25933
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
25934
25934
|
loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.MediaSkeleton.Icon, { size: "md", className: "shrink-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Logo, { size: 24, role: "img", "aria-label": label, className: "shrink-0" }),
|
|
25935
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25935
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: name })
|
|
25936
25936
|
] }),
|
|
25937
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25937
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: _nullishCoalesce(domain, () => ( TENANT_EMPTY_VALUE)) })
|
|
25938
25938
|
] });
|
|
25939
25939
|
}
|
|
25940
25940
|
|
|
@@ -25945,9 +25945,9 @@ function TenantCustomerCell({ name, imageUrl, userCount }) {
|
|
|
25945
25945
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
25946
25946
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
25947
25947
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { src: _nullishCoalesce(imageUrl, () => ( void 0)), alt: name, fallback: name, size: "xs", variant: "square" }),
|
|
25948
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25948
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: name })
|
|
25949
25949
|
] }),
|
|
25950
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25950
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: usersCountLabel(userCount) })
|
|
25951
25951
|
] });
|
|
25952
25952
|
}
|
|
25953
25953
|
|
|
@@ -25983,7 +25983,7 @@ function OpenTenantButton({ href, name }) {
|
|
|
25983
25983
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25984
25984
|
_chunkFCZAUK4Dcjs.Button,
|
|
25985
25985
|
{
|
|
25986
|
-
onClick: loading ? void 0 :
|
|
25986
|
+
onClick: loading ? void 0 : _chunkIC4IJJB2cjs.openInNewTab.call(void 0, href),
|
|
25987
25987
|
disabled: loading,
|
|
25988
25988
|
variant: "outline",
|
|
25989
25989
|
size: "icon",
|
|
@@ -26115,13 +26115,13 @@ function WaitlistForm({
|
|
|
26115
26115
|
const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
|
|
26116
26116
|
const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
|
|
26117
26117
|
const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
|
|
26118
|
-
const { toast } =
|
|
26119
|
-
const { honeypotInputProps, getSignals, resetSignals } =
|
|
26118
|
+
const { toast } = _chunkUO2EJGRJcjs.useToast.call(void 0, );
|
|
26119
|
+
const { honeypotInputProps, getSignals, resetSignals } = _chunkUO2EJGRJcjs.useHumanitySignals.call(void 0, );
|
|
26120
26120
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
26121
|
-
const isClient =
|
|
26121
|
+
const isClient = _chunkLFEURIZNcjs.useIsHydrated.call(void 0, );
|
|
26122
26122
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
26123
26123
|
const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
|
|
26124
|
-
const rescue =
|
|
26124
|
+
const rescue = _chunkUO2EJGRJcjs.useFormRescue.call(void 0, {
|
|
26125
26125
|
form: rescueForm,
|
|
26126
26126
|
// The phone is reported as filled only; its value never leaves the form early.
|
|
26127
26127
|
fieldNames: ["email", "phone"],
|
|
@@ -26133,7 +26133,7 @@ function WaitlistForm({
|
|
|
26133
26133
|
_react.useEffect.call(void 0, () => {
|
|
26134
26134
|
rescue.track({ email, phone }, null);
|
|
26135
26135
|
}, [email, phone, rescue]);
|
|
26136
|
-
const isMailDomainGeneric =
|
|
26136
|
+
const isMailDomainGeneric = _chunkIC4IJJB2cjs.hasGenericEmailDomain.call(void 0, email);
|
|
26137
26137
|
const [syncedDefaultEmail, setSyncedDefaultEmail] = _react.useState.call(void 0, defaultEmail);
|
|
26138
26138
|
if (syncedDefaultEmail !== defaultEmail) {
|
|
26139
26139
|
setSyncedDefaultEmail(defaultEmail);
|
|
@@ -26167,7 +26167,7 @@ function WaitlistForm({
|
|
|
26167
26167
|
setShowConsentError(true);
|
|
26168
26168
|
return;
|
|
26169
26169
|
}
|
|
26170
|
-
const finalPhone = phone ?
|
|
26170
|
+
const finalPhone = phone ? _chunkIC4IJJB2cjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
|
|
26171
26171
|
try {
|
|
26172
26172
|
await onRegister(email, finalPhone, getSignals(), rescue.submitFields());
|
|
26173
26173
|
rescue.complete();
|
|
@@ -26754,7 +26754,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
26754
26754
|
}, [mobileBreakpoint]);
|
|
26755
26755
|
const panelRef = _react.useRef.call(void 0, null);
|
|
26756
26756
|
const available = useContainerExtent(resizable, isHorizontal, portalContainer);
|
|
26757
|
-
const { size, setSize, clampSize } =
|
|
26757
|
+
const { size, setSize, clampSize } = _chunkUSPUZO53cjs.useResizablePanelSize.call(void 0, {
|
|
26758
26758
|
enabled: resizable,
|
|
26759
26759
|
minSize,
|
|
26760
26760
|
maxSize,
|
|
@@ -26774,7 +26774,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
26774
26774
|
"data-state": open ? "open" : "closed",
|
|
26775
26775
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
26776
26776
|
"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",
|
|
26777
|
-
|
|
26777
|
+
_chunkUSPUZO53cjs.OVERLAY_BACKDROP_CLASS,
|
|
26778
26778
|
// Persist mode only: hold the fade-out's final (transparent) frame
|
|
26779
26779
|
// so the backdrop doesn't snap back to opacity 1 and dim the whole
|
|
26780
26780
|
// content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
|
|
@@ -26817,7 +26817,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
26817
26817
|
children: [
|
|
26818
26818
|
props["aria-label"] ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive3.Title, { className: "sr-only", children: props["aria-label"] }) : null,
|
|
26819
26819
|
applyInlineSize && (!persist || open) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26820
|
-
|
|
26820
|
+
_chunkLFEURIZNcjs.PanelResizeHandle,
|
|
26821
26821
|
{
|
|
26822
26822
|
variant: "inLayout",
|
|
26823
26823
|
side: resolvedSide,
|
|
@@ -26856,11 +26856,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
26856
26856
|
}
|
|
26857
26857
|
);
|
|
26858
26858
|
AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
|
|
26859
|
-
var AppLayoutDrawerHeader =
|
|
26860
|
-
var AppLayoutDrawerTitle =
|
|
26861
|
-
var AppLayoutDrawerDescription =
|
|
26862
|
-
var AppLayoutDrawerBody =
|
|
26863
|
-
var AppLayoutDrawerFooter =
|
|
26859
|
+
var AppLayoutDrawerHeader = _chunkUSPUZO53cjs.DrawerHeader;
|
|
26860
|
+
var AppLayoutDrawerTitle = _chunkUSPUZO53cjs.DrawerTitle;
|
|
26861
|
+
var AppLayoutDrawerDescription = _chunkUSPUZO53cjs.DrawerDescription;
|
|
26862
|
+
var AppLayoutDrawerBody = _chunkUSPUZO53cjs.DrawerBody;
|
|
26863
|
+
var AppLayoutDrawerFooter = _chunkUSPUZO53cjs.DrawerFooter;
|
|
26864
26864
|
|
|
26865
26865
|
// src/components/features/notifications/notification-tile.tsx
|
|
26866
26866
|
|
|
@@ -26879,7 +26879,7 @@ var typeColorByVariant = {
|
|
|
26879
26879
|
error: "text-ods-error"
|
|
26880
26880
|
};
|
|
26881
26881
|
var progressColorByVariant2 = {
|
|
26882
|
-
...
|
|
26882
|
+
..._chunkUO2EJGRJcjs.progressColorByVariant,
|
|
26883
26883
|
default: "bg-ods-accent",
|
|
26884
26884
|
info: "bg-ods-accent"
|
|
26885
26885
|
};
|
|
@@ -26969,11 +26969,11 @@ function LoadedNotificationTile({
|
|
|
26969
26969
|
alt: "",
|
|
26970
26970
|
onError: () => setFailedImageUrl(image),
|
|
26971
26971
|
className: "size-4 rounded-[2px] object-cover",
|
|
26972
|
-
width:
|
|
26973
|
-
height:
|
|
26972
|
+
width: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.icon,
|
|
26973
|
+
height: _chunkKKFDRCQFcjs.IMAGE_FIXED_PX.icon,
|
|
26974
26974
|
unoptimized: true
|
|
26975
26975
|
}
|
|
26976
|
-
) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, "size-1.5 rounded-full",
|
|
26976
|
+
) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkUO2EJGRJcjs.dotColorByVariant[accentVariant]) }))) }),
|
|
26977
26977
|
type ? lockscreen ? (
|
|
26978
26978
|
// A phone names the sender in plain words and never cuts them.
|
|
26979
26979
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 break-words text-ods-text-secondary text-h6", children: type })
|
|
@@ -26983,7 +26983,7 @@ function LoadedNotificationTile({
|
|
|
26983
26983
|
{
|
|
26984
26984
|
dateTime: createdAtIso,
|
|
26985
26985
|
className: _chunk63A4GZMBcjs.cn.call(void 0, "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", lockscreen && "self-start"),
|
|
26986
|
-
children: _nullishCoalesce(timeLabel, () => (
|
|
26986
|
+
children: _nullishCoalesce(timeLabel, () => ( _chunkU767P4JUcjs.formatTicketRelativeTime.call(void 0, createdAtIso)))
|
|
26987
26987
|
}
|
|
26988
26988
|
) : null,
|
|
26989
26989
|
!lockscreen && (isLive || onComplete) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TILE_CONTROL_BOX_CLASS, children: [
|
|
@@ -27151,7 +27151,7 @@ function NotificationDrawer({
|
|
|
27151
27151
|
const unreadNotifications = notifications.filter((n) => !n.read);
|
|
27152
27152
|
const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
27153
27153
|
/* @__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,
|
|
27154
|
-
|
|
27154
|
+
_chunkUSPUZO53cjs.DrawerTitle,
|
|
27155
27155
|
{
|
|
27156
27156
|
hideClose: !showClose,
|
|
27157
27157
|
className: "truncate",
|
|
@@ -27214,8 +27214,8 @@ function NotificationDrawer({
|
|
|
27214
27214
|
}
|
|
27215
27215
|
) });
|
|
27216
27216
|
}
|
|
27217
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27218
|
-
|
|
27217
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUSPUZO53cjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27218
|
+
_chunkUSPUZO53cjs.DrawerContent,
|
|
27219
27219
|
{
|
|
27220
27220
|
side: "right",
|
|
27221
27221
|
"aria-describedby": void 0,
|
|
@@ -27311,7 +27311,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
|
|
|
27311
27311
|
] });
|
|
27312
27312
|
}
|
|
27313
27313
|
function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
27314
|
-
const { supported, permission, request } =
|
|
27314
|
+
const { supported, permission, request } = _chunkUO2EJGRJcjs.useNotificationPermission.call(void 0, );
|
|
27315
27315
|
if (!supported) return null;
|
|
27316
27316
|
const blocked = permission === "denied";
|
|
27317
27317
|
const handleChange = async (value) => {
|
|
@@ -27376,9 +27376,9 @@ var ASSISTANT_CATEGORY = "MINGO";
|
|
|
27376
27376
|
function notificationCategoryIcon(category) {
|
|
27377
27377
|
const key = _optionalChain([category, 'optionalAccess', _555 => _555.toUpperCase, 'call', _556 => _556()]);
|
|
27378
27378
|
if (!key) return void 0;
|
|
27379
|
-
if (key === ASSISTANT_CATEGORY) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27379
|
+
if (key === ASSISTANT_CATEGORY) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.AgentMark, { agent: "mingo", className: "size-4", color: "currentColor" });
|
|
27380
27380
|
const icon = Object.prototype.hasOwnProperty.call(ICON_BY_CATEGORY, key) ? ICON_BY_CATEGORY[key] : void 0;
|
|
27381
|
-
return icon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27381
|
+
return icon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKKFDRCQFcjs.NamedIcon, { icon, size: 16 }) : void 0;
|
|
27382
27382
|
}
|
|
27383
27383
|
|
|
27384
27384
|
// src/components/features/notifications/notification-popups.tsx
|
|
@@ -27511,13 +27511,13 @@ function getApprovalMeta(notification) {
|
|
|
27511
27511
|
function resolutionToStatus(resolution) {
|
|
27512
27512
|
switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
|
|
27513
27513
|
case "APPROVED":
|
|
27514
|
-
return
|
|
27514
|
+
return _chunkEIACEY2Lcjs.APPROVAL_STATUS.APPROVED;
|
|
27515
27515
|
case "REJECTED":
|
|
27516
|
-
return
|
|
27516
|
+
return _chunkEIACEY2Lcjs.APPROVAL_STATUS.REJECTED;
|
|
27517
27517
|
case "CANCELLED":
|
|
27518
|
-
return
|
|
27518
|
+
return _chunkEIACEY2Lcjs.APPROVAL_STATUS.CANCELLED;
|
|
27519
27519
|
default:
|
|
27520
|
-
return
|
|
27520
|
+
return _chunkEIACEY2Lcjs.APPROVAL_STATUS.PENDING;
|
|
27521
27521
|
}
|
|
27522
27522
|
}
|
|
27523
27523
|
function approvalMetaToBatchData(approval) {
|
|
@@ -27533,7 +27533,7 @@ function approvalMetaToBatchData(approval) {
|
|
|
27533
27533
|
requiresApproval: _nullishCoalesce(tc.requiresApproval, () => ( true)),
|
|
27534
27534
|
approvalType: _nullishCoalesce(tc.approvalType, () => ( null)),
|
|
27535
27535
|
toolCallArguments: _nullishCoalesce(tc.toolCallArguments, () => ( null)),
|
|
27536
|
-
...
|
|
27536
|
+
..._chunkLFEURIZNcjs.policyReviewField.call(void 0, tc.policyReview)
|
|
27537
27537
|
}))
|
|
27538
27538
|
};
|
|
27539
27539
|
}
|
|
@@ -27563,13 +27563,13 @@ function ApprovalRequestNotificationTile({
|
|
|
27563
27563
|
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _570 => _570.resolution]));
|
|
27564
27564
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
27565
27565
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
27566
|
-
const { innerRef, containerStyle } =
|
|
27566
|
+
const { innerRef, containerStyle } = _chunkU767P4JUcjs.useCollapsible.call(void 0, { expanded });
|
|
27567
27567
|
if (!approval || !batchData) return null;
|
|
27568
27568
|
const tileNotification = {
|
|
27569
27569
|
...notification,
|
|
27570
27570
|
type: _nullishCoalesce(notification.type, () => ( "Approval Required"))
|
|
27571
27571
|
};
|
|
27572
|
-
const escalatedCalls = batchData.toolCalls.filter((call) =>
|
|
27572
|
+
const escalatedCalls = batchData.toolCalls.filter((call) => _chunkU767P4JUcjs.isPolicyEscalated.call(void 0, call.policyReview));
|
|
27573
27573
|
const escalated = escalatedCalls.length > 0;
|
|
27574
27574
|
const commandWord = batchData.toolCalls.length > 1 ? "commands" : "command";
|
|
27575
27575
|
const toggleLabel = `${expanded ? "Hide" : "Show"} ${commandWord} section`;
|
|
@@ -27603,7 +27603,7 @@ function ApprovalRequestNotificationTile({
|
|
|
27603
27603
|
// Edge to edge, as under the chat's command row: the tile's padding cancelled (`w-auto`, so the stretched
|
|
27604
27604
|
// flex item grows into it instead of keeping the Alert's `w-full`), a rule above and below.
|
|
27605
27605
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27606
|
-
|
|
27606
|
+
_chunkU767P4JUcjs.PolicyEscalationAlert,
|
|
27607
27607
|
{
|
|
27608
27608
|
review: call.policyReview,
|
|
27609
27609
|
className: "-mx-[var(--spacing-system-s)] w-auto border-y border-ods-border"
|
|
@@ -27641,7 +27641,7 @@ function ApprovalRequestNotificationTile({
|
|
|
27641
27641
|
}
|
|
27642
27642
|
)
|
|
27643
27643
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
27644
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27644
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ApprovalStatusTag, { status }),
|
|
27645
27645
|
approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
|
|
27646
27646
|
"by ",
|
|
27647
27647
|
approval.resolvedByName
|
|
@@ -27662,14 +27662,14 @@ function ApprovalRequestNotificationTile({
|
|
|
27662
27662
|
"aria-expanded": expanded,
|
|
27663
27663
|
"aria-label": toggleLabel,
|
|
27664
27664
|
className: APPROVAL_TOGGLE_BUTTON_CLASS,
|
|
27665
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27665
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.ExpandChevron, { expanded })
|
|
27666
27666
|
}
|
|
27667
27667
|
)
|
|
27668
27668
|
] })
|
|
27669
27669
|
] })
|
|
27670
27670
|
] }),
|
|
27671
27671
|
children: !lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-t border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27672
|
-
|
|
27672
|
+
_chunkU767P4JUcjs.ApprovalBatchMessage,
|
|
27673
27673
|
{
|
|
27674
27674
|
data: batchData,
|
|
27675
27675
|
showExecutionStatus: false,
|
|
@@ -27907,7 +27907,7 @@ function TimeTrackerPanel({
|
|
|
27907
27907
|
] }),
|
|
27908
27908
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "grid gap-[var(--spacing-system-m)]", showCustomer && "grid-cols-2"), children: [
|
|
27909
27909
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27910
|
-
|
|
27910
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
27911
27911
|
{
|
|
27912
27912
|
value: selectedTicketId,
|
|
27913
27913
|
onChange: onSelectedTicketChange,
|
|
@@ -27923,7 +27923,7 @@ function TimeTrackerPanel({
|
|
|
27923
27923
|
}
|
|
27924
27924
|
),
|
|
27925
27925
|
showCustomer && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27926
|
-
|
|
27926
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
27927
27927
|
{
|
|
27928
27928
|
value: _nullishCoalesce(selectedCustomerId, () => ( null)),
|
|
27929
27929
|
onChange: onSelectedCustomerChange,
|
|
@@ -28216,7 +28216,7 @@ function TimeTrackerHeaderButton({
|
|
|
28216
28216
|
"data-state": isOpen ? "open" : "closed",
|
|
28217
28217
|
className: _chunk63A4GZMBcjs.cn.call(void 0,
|
|
28218
28218
|
layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
|
|
28219
|
-
|
|
28219
|
+
_chunkUSPUZO53cjs.OVERLAY_BACKDROP_CLASS,
|
|
28220
28220
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0",
|
|
28221
28221
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
|
|
28222
28222
|
)
|
|
@@ -28243,7 +28243,7 @@ function TimeTrackerHeaderButton({
|
|
|
28243
28243
|
|
|
28244
28244
|
// src/components/features/devices/device-last-online.ts
|
|
28245
28245
|
function formatLastOnline(lastSeen) {
|
|
28246
|
-
return `Last Online: ${lastSeen ?
|
|
28246
|
+
return `Last Online: ${lastSeen ? _chunkU767P4JUcjs.formatRelativeTime.call(void 0, lastSeen) : "\u2014"}`;
|
|
28247
28247
|
}
|
|
28248
28248
|
|
|
28249
28249
|
// src/components/features/devices/device-name.ts
|
|
@@ -28392,7 +28392,7 @@ function getDeviceStatusConfig(status) {
|
|
|
28392
28392
|
}
|
|
28393
28393
|
}
|
|
28394
28394
|
function getDeviceOperatingSystem(osType) {
|
|
28395
|
-
return
|
|
28395
|
+
return _chunkIC4IJJB2cjs.getOSPlatformId.call(void 0, osType);
|
|
28396
28396
|
}
|
|
28397
28397
|
|
|
28398
28398
|
// src/components/features/devices/device-statuses.ts
|
|
@@ -28596,8 +28596,8 @@ function UnreadNotificationsIndicator({ count, href, className }) {
|
|
|
28596
28596
|
const open = (event) => {
|
|
28597
28597
|
event.preventDefault();
|
|
28598
28598
|
event.stopPropagation();
|
|
28599
|
-
if (
|
|
28600
|
-
else
|
|
28599
|
+
if (_chunkETZFBB7Ocjs.isModifierClick.call(void 0, event)) _chunkG7GF4PWAcjs.executeNewTabNavigation.call(void 0, { runtime, href });
|
|
28600
|
+
else _chunkG7GF4PWAcjs.executeNavigationImperative.call(void 0, { runtime, href });
|
|
28601
28601
|
};
|
|
28602
28602
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28603
28603
|
"button",
|
|
@@ -28629,8 +28629,8 @@ function DeviceUnreadIndicator({ device }) {
|
|
|
28629
28629
|
// src/components/features/devices/devices-table-columns.tsx
|
|
28630
28630
|
|
|
28631
28631
|
function formatDateTime(input) {
|
|
28632
|
-
const date =
|
|
28633
|
-
return date === "\u2014" ? date : `${date} ${
|
|
28632
|
+
const date = _chunkEIACEY2Lcjs.formatDate.call(void 0, input);
|
|
28633
|
+
return date === "\u2014" ? date : `${date} ${_chunkEIACEY2Lcjs.formatTime.call(void 0, input)}`;
|
|
28634
28634
|
}
|
|
28635
28635
|
function uniqueById(options) {
|
|
28636
28636
|
const seen = /* @__PURE__ */ new Map();
|
|
@@ -28654,7 +28654,7 @@ function OpenDeviceButton({ device }) {
|
|
|
28654
28654
|
const href = loading ? void 0 : _optionalChain([getDeviceHref, 'optionalCall', _600 => _600(device)]);
|
|
28655
28655
|
const open = (event) => {
|
|
28656
28656
|
event.preventDefault();
|
|
28657
|
-
if (href)
|
|
28657
|
+
if (href) _chunkG7GF4PWAcjs.executeNewTabNavigation.call(void 0, { runtime, href });
|
|
28658
28658
|
};
|
|
28659
28659
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28660
28660
|
_chunkFCZAUK4Dcjs.Button,
|
|
@@ -28748,13 +28748,13 @@ function DevicesTableBody({
|
|
|
28748
28748
|
function OrganizationCell({ device }) {
|
|
28749
28749
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
28750
28750
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
28751
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28751
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.EntityImage, { src: fullImageUrl, alt: device.organization || "Customer", className: "size-12 content-md:size-12" }),
|
|
28752
28752
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OrganizationName, { name: device.organization }) })
|
|
28753
28753
|
] });
|
|
28754
28754
|
}
|
|
28755
28755
|
function OrganizationName({ name }) {
|
|
28756
28756
|
if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) && !name) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h4", className: "w-3/4" });
|
|
28757
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28757
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 2, children: _nullishCoalesce(name, () => ( "")) });
|
|
28758
28758
|
}
|
|
28759
28759
|
function DeviceLastSeen({ lastSeen }) {
|
|
28760
28760
|
if (_chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) && !lastSeen) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "hidden w-24 content-md:block" });
|
|
@@ -28800,7 +28800,7 @@ function getDeviceTableColumns(deviceFilters, filtersPending) {
|
|
|
28800
28800
|
const device = row.original;
|
|
28801
28801
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative box-border flex h-20 w-full shrink-0 content-stretch items-center justify-start gap-4 py-0", children: [
|
|
28802
28802
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
28803
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28803
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: getDeviceName(device) }) }),
|
|
28804
28804
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceUnreadIndicator, { device })
|
|
28805
28805
|
] });
|
|
28806
28806
|
},
|
|
@@ -28973,7 +28973,7 @@ function CustomerCell({ device }) {
|
|
|
28973
28973
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
28974
28974
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
28975
28975
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28976
|
-
|
|
28976
|
+
_chunkCOJG2ATYcjs.EntityImage,
|
|
28977
28977
|
{
|
|
28978
28978
|
src: fullImageUrl,
|
|
28979
28979
|
alt: device.organization || "Customer",
|
|
@@ -28981,8 +28981,8 @@ function CustomerCell({ device }) {
|
|
|
28981
28981
|
}
|
|
28982
28982
|
),
|
|
28983
28983
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
28984
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28985
|
-
(device.organizationEmail || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28984
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: device.organization || "" }),
|
|
28985
|
+
(device.organizationEmail || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(device.organizationEmail, () => ( "")) })
|
|
28986
28986
|
] })
|
|
28987
28987
|
] });
|
|
28988
28988
|
}
|
|
@@ -28991,8 +28991,8 @@ function DeviceCell({ device }) {
|
|
|
28991
28991
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 items-center gap-3", children: [
|
|
28992
28992
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
28993
28993
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col", children: [
|
|
28994
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28995
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28994
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: getDeviceName(device) }),
|
|
28995
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", loading, children: formatLastOnline(device.last_seen || device.lastSeen) })
|
|
28996
28996
|
] })
|
|
28997
28997
|
] });
|
|
28998
28998
|
}
|
|
@@ -29777,7 +29777,7 @@ function DevicesList({
|
|
|
29777
29777
|
const handleClearAll = _react.useCallback.call(void 0, () => patch({ search: "", tags: [] }), [patch]);
|
|
29778
29778
|
const narrowed = isNarrowed(narrowing);
|
|
29779
29779
|
const isEmptyState = !isLoading && !isPending && !narrowed && devices.length === 0;
|
|
29780
|
-
const { toolbarRef, containerStyle, stickyHeaderOffset: measuredOffset } =
|
|
29780
|
+
const { toolbarRef, containerStyle, stickyHeaderOffset: measuredOffset } = _chunkUO2EJGRJcjs.useStickyToolbar.call(void 0, );
|
|
29781
29781
|
const headerOffset = _nullishCoalesce(stickyHeaderOffset, () => ( (stickyToolbar ? measuredOffset : void 0)));
|
|
29782
29782
|
const actionsColumn = _react.useMemo.call(void 0, () => rowActions2 ? getDeviceActionsColumn(rowActions2) : void 0, [rowActions2]);
|
|
29783
29783
|
return (
|
|
@@ -30004,7 +30004,7 @@ function DevicesPanelView({
|
|
|
30004
30004
|
] })
|
|
30005
30005
|
] });
|
|
30006
30006
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30007
|
-
|
|
30007
|
+
_chunkCOJG2ATYcjs.PageLayout,
|
|
30008
30008
|
{
|
|
30009
30009
|
title,
|
|
30010
30010
|
backButton,
|
|
@@ -30012,7 +30012,7 @@ function DevicesPanelView({
|
|
|
30012
30012
|
actionsVariant: "icon-buttons",
|
|
30013
30013
|
className,
|
|
30014
30014
|
selector: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30015
|
-
|
|
30015
|
+
_chunkU767P4JUcjs.TabSelector,
|
|
30016
30016
|
{
|
|
30017
30017
|
value: viewMode,
|
|
30018
30018
|
onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _654 => _654(value)]),
|
|
@@ -30027,7 +30027,7 @@ function DevicesPanelView({
|
|
|
30027
30027
|
loading && loadingRegion && !scoped && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "status", className: "sr-only", children: "Loading devices" }),
|
|
30028
30028
|
noOrganizations && !loading && // Core Alert restyled to the ODS warning tokens. The icon is wrapped in a
|
|
30029
30029
|
// span so Alert's `[&>svg]` absolute-positioning rules don't apply.
|
|
30030
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30030
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU767P4JUcjs.Alert, { className: "mb-[var(--spacing-system-l)] flex items-start gap-[var(--spacing-system-m)] rounded-[6px] border-0 bg-ods-warning-secondary text-ods-warning", children: [
|
|
30031
30031
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7AAW6L5Ucjs.AlertTriangleIcon, { className: "h-6 w-6" }) }),
|
|
30032
30032
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h3", children: "Add a customer to connect a new device" })
|
|
30033
30033
|
] }),
|
|
@@ -30078,7 +30078,7 @@ var PACKAGE_SEARCH_LABEL = "Software Name";
|
|
|
30078
30078
|
var PACKAGE_SEARCH_PLACEHOLDER = "Search for Software";
|
|
30079
30079
|
function PackageSearchFieldPlaceholder({ error }) {
|
|
30080
30080
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30081
|
-
|
|
30081
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
30082
30082
|
{
|
|
30083
30083
|
label: PACKAGE_SEARCH_LABEL,
|
|
30084
30084
|
labelVariant: "large",
|
|
@@ -30133,16 +30133,16 @@ function SoftwareScheduleFields({
|
|
|
30133
30133
|
] }),
|
|
30134
30134
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30135
30135
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.Label, { className: "text-h4", children: "Time" }),
|
|
30136
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30137
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30138
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30136
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: time, onValueChange: onTimeChange, children: [
|
|
30137
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder: "Select time" }) }),
|
|
30138
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30139
30139
|
] })
|
|
30140
30140
|
] }),
|
|
30141
30141
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30142
30142
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.Label, { className: "text-h4", children: "Timezone" }),
|
|
30143
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30144
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30145
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30143
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: timeReference, onValueChange: (value) => onTimeReferenceChange(value), children: [
|
|
30144
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
30145
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: timing.timeReferenceOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30146
30146
|
] })
|
|
30147
30147
|
] })
|
|
30148
30148
|
]
|
|
@@ -30202,22 +30202,22 @@ function newSoftwareRow(key) {
|
|
|
30202
30202
|
|
|
30203
30203
|
function InfoCell2({ value, label }) {
|
|
30204
30204
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
30205
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: value ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30205
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: value ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: value }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1 text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary", children: "\u2014" }) }) }),
|
|
30206
30206
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: label })
|
|
30207
30207
|
] });
|
|
30208
30208
|
}
|
|
30209
30209
|
function SoftwareRowFields({ row, removable, onChange, onRemove, renderPackageSearch }) {
|
|
30210
30210
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-l)] content-lg:flex-row content-lg:items-end", children: [
|
|
30211
30211
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30212
|
-
|
|
30212
|
+
_chunkCOJG2ATYcjs.Select,
|
|
30213
30213
|
{
|
|
30214
30214
|
value: row.packageManager,
|
|
30215
30215
|
onValueChange: (value) => onChange({ ...row, packageManager: value, pkg: null }),
|
|
30216
30216
|
children: [
|
|
30217
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30218
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30217
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { label: "Package Manager", labelVariant: "large", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
30218
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: PACKAGE_MANAGERS.map((manager) => {
|
|
30219
30219
|
const Icon = PACKAGE_MANAGER_ICON[manager];
|
|
30220
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30220
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: manager, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
30221
30221
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 20, className: "shrink-0 text-ods-text-secondary" }),
|
|
30222
30222
|
PACKAGE_MANAGER_LABEL[manager]
|
|
30223
30223
|
] }) }, manager);
|
|
@@ -30338,9 +30338,9 @@ function SecondsSelect({
|
|
|
30338
30338
|
}) {
|
|
30339
30339
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30340
30340
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.Label, { className: "text-h4", children: label }),
|
|
30341
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30342
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30343
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30341
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: String(value), onValueChange: (next) => onChange(Number(next)), children: [
|
|
30342
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { "aria-label": label, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
30343
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: options.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: String(option.seconds), children: option.label }, option.seconds)) })
|
|
30344
30344
|
] })
|
|
30345
30345
|
] });
|
|
30346
30346
|
}
|
|
@@ -30541,7 +30541,7 @@ function SoftwareActionForm({
|
|
|
30541
30541
|
}
|
|
30542
30542
|
);
|
|
30543
30543
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30544
|
-
|
|
30544
|
+
_chunkCOJG2ATYcjs.PageLayout,
|
|
30545
30545
|
{
|
|
30546
30546
|
title: copy.formTitle,
|
|
30547
30547
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -30638,7 +30638,7 @@ function LogDrawer({
|
|
|
30638
30638
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-0 flex-1 space-y-4 overflow-y-auto", children: [
|
|
30639
30639
|
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AppLayoutDrawerDescription, { asChild: true, className: "leading-6 text-ods-text-primary text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: description }) }),
|
|
30640
30640
|
infoFields && infoFields.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-3 rounded-[6px] border border-ods-border bg-ods-card p-4", children: infoFields.map((field) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-0.5", children: [
|
|
30641
|
-
typeof field.value === "string" ? field.value === "" || field.value === EMPTY_MARK ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyMark, {}) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30641
|
+
typeof field.value === "string" ? field.value === "" || field.value === EMPTY_MARK ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyMark, {}) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: field.value }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: field.value === null || field.value === void 0 || field.value === false ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyMark, {}) : field.value }),
|
|
30642
30642
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: field.label })
|
|
30643
30643
|
] }, typeof field.label === "string" ? field.label : "")) }),
|
|
30644
30644
|
children
|
|
@@ -30686,7 +30686,7 @@ function LogsPageView({
|
|
|
30686
30686
|
],
|
|
30687
30687
|
[onRefresh]
|
|
30688
30688
|
);
|
|
30689
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30689
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.PageLayout, { title: "Logs", actions, showHeader, className, children: [
|
|
30690
30690
|
!hideSearch && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "sticky top-0 z-20 -my-[var(--spacing-system-l)] flex items-center gap-[var(--spacing-system-m)] bg-ods-bg py-[var(--spacing-system-l)]", children: [
|
|
30691
30691
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30692
30692
|
_chunkHXURNKXIcjs.Input,
|
|
@@ -30775,11 +30775,11 @@ var ToolBadge = ({
|
|
|
30775
30775
|
iconClassName
|
|
30776
30776
|
}) => {
|
|
30777
30777
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
|
|
30778
|
-
const text = _nullishCoalesce(label, () => ( (toolType ?
|
|
30779
|
-
const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30778
|
+
const text = _nullishCoalesce(label, () => ( (toolType ? _chunkIC4IJJB2cjs.getToolLabel.call(void 0, toolType) : "")));
|
|
30779
|
+
const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIGVAPIEWcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }) : null)));
|
|
30780
30780
|
if (loading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ToolBadgeSkeleton, { variant, icon: !!mark, className });
|
|
30781
30781
|
const linked = (node, linkClassName) => href && targetPlatform ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30782
|
-
|
|
30782
|
+
_chunkLFEURIZNcjs.NavLinkAnchorViaRuntime,
|
|
30783
30783
|
{
|
|
30784
30784
|
href,
|
|
30785
30785
|
targetPlatform,
|
|
@@ -30844,8 +30844,8 @@ function LogSourceCell({ device }) {
|
|
|
30844
30844
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
|
|
30845
30845
|
const { deviceName, organization } = logSourceLabels(device);
|
|
30846
30846
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-h-[60px] flex-col justify-center gap-1 py-2", children: [
|
|
30847
|
-
(deviceName || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30848
|
-
(organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30847
|
+
(deviceName || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: deviceName }),
|
|
30848
|
+
(organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(organization, () => ( "")) })
|
|
30849
30849
|
] });
|
|
30850
30850
|
}
|
|
30851
30851
|
function LogRowButton({
|
|
@@ -30900,8 +30900,8 @@ function LogsTableView({
|
|
|
30900
30900
|
accessorKey: "logId",
|
|
30901
30901
|
header: logIdHeader ? () => logIdHeader : "Log ID",
|
|
30902
30902
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col justify-center", children: [
|
|
30903
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30904
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30903
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: row.original.timestamp }),
|
|
30904
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.logId })
|
|
30905
30905
|
] }),
|
|
30906
30906
|
enableSorting: false,
|
|
30907
30907
|
meta: { width: LOG_COLUMN_WIDTHS.logId, alwaysShowHeader: true }
|
|
@@ -30929,7 +30929,7 @@ function LogsTableView({
|
|
|
30929
30929
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30930
30930
|
ToolBadge,
|
|
30931
30931
|
{
|
|
30932
|
-
toolType:
|
|
30932
|
+
toolType: _chunkIC4IJJB2cjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
|
|
30933
30933
|
iconClassName: "h-4 w-4 content-md:h-6 content-md:w-6"
|
|
30934
30934
|
}
|
|
30935
30935
|
),
|
|
@@ -30941,7 +30941,7 @@ function LogsTableView({
|
|
|
30941
30941
|
filter: {
|
|
30942
30942
|
options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _662 => _662.toolTypes, 'access', _663 => _663.map, 'call', _664 => _664((toolType) => ({
|
|
30943
30943
|
id: toolType,
|
|
30944
|
-
label:
|
|
30944
|
+
label: _chunkIC4IJJB2cjs.toToolLabel.call(void 0, toolType),
|
|
30945
30945
|
value: toolType
|
|
30946
30946
|
}))]), () => ( []))
|
|
30947
30947
|
}
|
|
@@ -30962,7 +30962,7 @@ function LogsTableView({
|
|
|
30962
30962
|
{
|
|
30963
30963
|
accessorKey: "description",
|
|
30964
30964
|
header: "Log Details",
|
|
30965
|
-
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30965
|
+
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 3, className: "text-ods-text-secondary text-h6", children: row.original.description.title }),
|
|
30966
30966
|
enableSorting: false,
|
|
30967
30967
|
meta: { width: LOG_COLUMN_WIDTHS.description, hideAt: "lg" }
|
|
30968
30968
|
},
|
|
@@ -30990,7 +30990,7 @@ function LogsTableView({
|
|
|
30990
30990
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30991
30991
|
LogRowButton,
|
|
30992
30992
|
{
|
|
30993
|
-
onClick: getLogHref ?
|
|
30993
|
+
onClick: getLogHref ? _chunkIC4IJJB2cjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
|
|
30994
30994
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
30995
30995
|
label: "Open in new tab"
|
|
30996
30996
|
}
|
|
@@ -31155,14 +31155,14 @@ function ExecutionSourceBadge({ source, className }) {
|
|
|
31155
31155
|
const tagProps = { as: "span", variant: "outline", className: _chunk63A4GZMBcjs.cn.call(void 0, "shrink-0", className) };
|
|
31156
31156
|
if (source === "SCHEDULED") return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { ...tagProps, label: "Scheduled" });
|
|
31157
31157
|
if (source === "AI_ASSISTANT") {
|
|
31158
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { ...tagProps, label: "Mingo", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31158
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { ...tagProps, label: "Mingo", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.AgentMark, { agent: "mingo", className: "size-4" }) });
|
|
31159
31159
|
}
|
|
31160
31160
|
return null;
|
|
31161
31161
|
}
|
|
31162
31162
|
function ExecutionTimestampCell({ timestamp, executionId }) {
|
|
31163
31163
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31164
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31165
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31164
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: timestamp }),
|
|
31165
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: executionId })
|
|
31166
31166
|
] });
|
|
31167
31167
|
}
|
|
31168
31168
|
function ExecutionStatusCell({ status }) {
|
|
@@ -31174,9 +31174,9 @@ function ExecutionDeviceCell({ name, organization }) {
|
|
|
31174
31174
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31175
31175
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-1", children: [
|
|
31176
31176
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPTK7GOIIcjs.MonitorIcon, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
31177
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31177
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: name }) : name })
|
|
31178
31178
|
] }),
|
|
31179
|
-
(organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31179
|
+
(organization || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(organization, () => ( "")) })
|
|
31180
31180
|
] });
|
|
31181
31181
|
}
|
|
31182
31182
|
function ExecutionInitiatorCell({
|
|
@@ -31189,16 +31189,16 @@ function ExecutionInitiatorCell({
|
|
|
31189
31189
|
avatar,
|
|
31190
31190
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
31191
31191
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
31192
|
-
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31192
|
+
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: name }) : name,
|
|
31193
31193
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExecutionSourceBadge, { source })
|
|
31194
31194
|
] }),
|
|
31195
|
-
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31195
|
+
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: scriptName })
|
|
31196
31196
|
] })
|
|
31197
31197
|
] });
|
|
31198
31198
|
}
|
|
31199
31199
|
function ExecutionResultCell({ result, empty = null }) {
|
|
31200
31200
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, );
|
|
31201
|
-
return result || loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31201
|
+
return result || loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 2, children: _nullishCoalesce(result, () => ( "")) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: empty });
|
|
31202
31202
|
}
|
|
31203
31203
|
function ScriptExecutionResult({
|
|
31204
31204
|
result,
|
|
@@ -31218,14 +31218,14 @@ function ScriptExecutionResult({
|
|
|
31218
31218
|
|
|
31219
31219
|
function ScriptNameCell({ name, description }) {
|
|
31220
31220
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31221
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31222
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31221
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: name }),
|
|
31222
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: description })
|
|
31223
31223
|
] });
|
|
31224
31224
|
}
|
|
31225
31225
|
function ScheduleDateTimeCell({ date, time }) {
|
|
31226
31226
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31227
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31228
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31227
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: date }),
|
|
31228
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: time })
|
|
31229
31229
|
] });
|
|
31230
31230
|
}
|
|
31231
31231
|
|
|
@@ -31312,7 +31312,7 @@ function OpenInNewTabCell({ href }) {
|
|
|
31312
31312
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31313
31313
|
_chunkFCZAUK4Dcjs.Button,
|
|
31314
31314
|
{
|
|
31315
|
-
onClick: loading ? void 0 :
|
|
31315
|
+
onClick: loading ? void 0 : _chunkIC4IJJB2cjs.openInNewTab.call(void 0, href),
|
|
31316
31316
|
disabled: loading,
|
|
31317
31317
|
variant: "outline",
|
|
31318
31318
|
size: "icon",
|
|
@@ -31455,7 +31455,7 @@ function ScriptSchedulesTable({
|
|
|
31455
31455
|
cell(SCHEDULE_COLUMNS.supportedPlatforms, (row) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OSTypeBadgeGroup, { osTypes: row.supportedPlatforms, iconSize: "w-4 h-4 content-md:w-6 content-md:h-6" })),
|
|
31456
31456
|
cell(
|
|
31457
31457
|
SCHEDULE_COLUMNS.dateTime,
|
|
31458
|
-
(row) => row.startsAt ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScheduleDateTimeCell, { date: row.startsAt.date, time: row.startsAt.time }) : row.trigger ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31458
|
+
(row) => row.startsAt ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScheduleDateTimeCell, { date: row.startsAt.date, time: row.startsAt.time }) : row.trigger ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { tone: "secondary", children: row.trigger }) : null
|
|
31459
31459
|
),
|
|
31460
31460
|
cell(
|
|
31461
31461
|
SCHEDULE_COLUMNS.repeat,
|
|
@@ -31501,9 +31501,9 @@ function ScriptSchedulesTable({
|
|
|
31501
31501
|
|
|
31502
31502
|
// src/components/features/scripts/shell-types.ts
|
|
31503
31503
|
var SCRIPT_SHELL_TYPES = [
|
|
31504
|
-
{ id:
|
|
31505
|
-
{ id:
|
|
31506
|
-
{ id:
|
|
31504
|
+
{ id: _chunkIC4IJJB2cjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
|
|
31505
|
+
{ id: _chunkIC4IJJB2cjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
|
|
31506
|
+
{ id: _chunkIC4IJJB2cjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
|
|
31507
31507
|
];
|
|
31508
31508
|
function scriptShellType(value) {
|
|
31509
31509
|
return SCRIPT_SHELL_TYPES.find((shell) => shell.value === value);
|
|
@@ -31579,7 +31579,7 @@ function ScriptsTable({
|
|
|
31579
31579
|
initialsClassName: "text-ods-text-secondary"
|
|
31580
31580
|
}
|
|
31581
31581
|
),
|
|
31582
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31582
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: row.author.name }) })
|
|
31583
31583
|
] }) : null
|
|
31584
31584
|
)
|
|
31585
31585
|
];
|
|
@@ -31705,7 +31705,7 @@ function slotValue(minutesOfDay) {
|
|
|
31705
31705
|
return `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}`;
|
|
31706
31706
|
}
|
|
31707
31707
|
function slotLabel(minutesOfDay) {
|
|
31708
|
-
return
|
|
31708
|
+
return _chunkEIACEY2Lcjs.formatTime.call(void 0, new Date(1970, 0, 1, Math.floor(minutesOfDay / 60), minutesOfDay % 60));
|
|
31709
31709
|
}
|
|
31710
31710
|
function getTimeSlotOptions(forDate, timeReference) {
|
|
31711
31711
|
const base = slotBaseMinutes(timeReference);
|
|
@@ -31927,7 +31927,7 @@ function ReconnectWindowFields({
|
|
|
31927
31927
|
}
|
|
31928
31928
|
),
|
|
31929
31929
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31930
|
-
|
|
31930
|
+
_chunkCOJG2ATYcjs.Select,
|
|
31931
31931
|
{
|
|
31932
31932
|
value: unit,
|
|
31933
31933
|
onValueChange: (value) => {
|
|
@@ -31936,8 +31936,8 @@ function ReconnectWindowFields({
|
|
|
31936
31936
|
},
|
|
31937
31937
|
disabled,
|
|
31938
31938
|
children: [
|
|
31939
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31940
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31939
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: controlWidth, "aria-label": "Stop retry after unit", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
31940
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
31941
31941
|
]
|
|
31942
31942
|
}
|
|
31943
31943
|
)
|
|
@@ -32007,7 +32007,7 @@ function ScheduleOfflineFields({ showErrors, disabled = false }) {
|
|
|
32007
32007
|
options
|
|
32008
32008
|
}
|
|
32009
32009
|
),
|
|
32010
|
-
intervalError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32010
|
+
intervalError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: intervalError }) })
|
|
32011
32011
|
]
|
|
32012
32012
|
}
|
|
32013
32013
|
) }) })
|
|
@@ -32116,8 +32116,8 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
32116
32116
|
// Dragging towards the edge of the screen — or past it — scrolls whatever
|
|
32117
32117
|
// actually scrolls there: the page, the layout's `<main>`, or the list
|
|
32118
32118
|
// itself when it has its own overflow.
|
|
32119
|
-
|
|
32120
|
-
|
|
32119
|
+
_chunkP63CRPWIcjs.autoScrollAncestors.call(void 0, list),
|
|
32120
|
+
_chunkP63CRPWIcjs.autoScrollBothWays.call(void 0, list),
|
|
32121
32121
|
// One target for the whole list: which slot a drop lands in is answered by
|
|
32122
32122
|
// geometry, so this only has to say "inside the list, or outside it".
|
|
32123
32123
|
_adapter.dropTargetForElements.call(void 0, {
|
|
@@ -32415,7 +32415,7 @@ function useSortableItem() {
|
|
|
32415
32415
|
return _combine.combine.call(void 0,
|
|
32416
32416
|
// The drag has to start as a "move", or its first frame is drawn with the
|
|
32417
32417
|
// copy cursor — see `drag-effect.ts`.
|
|
32418
|
-
|
|
32418
|
+
_chunkP63CRPWIcjs.holdMoveDragEffect.call(void 0, item),
|
|
32419
32419
|
_adapter.draggable.call(void 0, {
|
|
32420
32420
|
element: item,
|
|
32421
32421
|
dragHandle: handle,
|
|
@@ -32845,24 +32845,24 @@ function ScheduleTimingFields({
|
|
|
32845
32845
|
// `''` reads as "no selection" to Radix, so the placeholder shows
|
|
32846
32846
|
// until a slot is picked — a date at midnight no longer
|
|
32847
32847
|
// masquerades as a chosen 12:00 AM.
|
|
32848
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32848
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkCOJG2ATYcjs.Select, { value: field.value, onValueChange: field.onChange, disabled: fieldsDisabled, children: [
|
|
32849
32849
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32850
|
-
|
|
32850
|
+
_chunkCOJG2ATYcjs.SelectTrigger,
|
|
32851
32851
|
{
|
|
32852
32852
|
className: "w-full",
|
|
32853
32853
|
error: _nullishCoalesce(pastTimeError, () => ( (showErrors ? _optionalChain([fieldState, 'access', _716 => _716.error, 'optionalAccess', _717 => _717.message]) : void 0))),
|
|
32854
32854
|
invalid: !!pastTimeError || showErrors && !!fieldState.error,
|
|
32855
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32855
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, { placeholder: "Select time" })
|
|
32856
32856
|
}
|
|
32857
32857
|
),
|
|
32858
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32858
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: timeSlots.length === 0 ? (
|
|
32859
32859
|
// Deliberately NOT a `SelectItem` — there is nothing here
|
|
32860
32860
|
// to select, and a selectable row would put a bogus value
|
|
32861
32861
|
// in the form. It replaces a popup that opened blank; the
|
|
32862
32862
|
// Date field carries the same sentence for whoever never
|
|
32863
32863
|
// opens this one.
|
|
32864
32864
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "px-4 py-[var(--spacing-system-sf)] text-ods-text-secondary text-h6", children: NO_SLOTS_TODAY_MESSAGE })
|
|
32865
|
-
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32865
|
+
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
32866
32866
|
] })
|
|
32867
32867
|
)
|
|
32868
32868
|
}
|
|
@@ -32876,7 +32876,7 @@ function ScheduleTimingFields({
|
|
|
32876
32876
|
name: "timeReference",
|
|
32877
32877
|
control,
|
|
32878
32878
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32879
|
-
|
|
32879
|
+
_chunkCOJG2ATYcjs.Select,
|
|
32880
32880
|
{
|
|
32881
32881
|
value: field.value,
|
|
32882
32882
|
onValueChange: (value) => {
|
|
@@ -32885,8 +32885,8 @@ function ScheduleTimingFields({
|
|
|
32885
32885
|
},
|
|
32886
32886
|
disabled: fieldsDisabled,
|
|
32887
32887
|
children: [
|
|
32888
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32889
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32888
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "w-full", "aria-label": "Timezone", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
32889
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: SCHEDULE_TIME_REFERENCE_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
32890
32890
|
]
|
|
32891
32891
|
}
|
|
32892
32892
|
)
|
|
@@ -32946,7 +32946,7 @@ function ScheduleTimingFields({
|
|
|
32946
32946
|
name: "repeatUnit",
|
|
32947
32947
|
control,
|
|
32948
32948
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32949
|
-
|
|
32949
|
+
_chunkCOJG2ATYcjs.Select,
|
|
32950
32950
|
{
|
|
32951
32951
|
value: field.value,
|
|
32952
32952
|
onValueChange: (value) => {
|
|
@@ -32959,8 +32959,8 @@ function ScheduleTimingFields({
|
|
|
32959
32959
|
},
|
|
32960
32960
|
disabled: fieldsDisabled || !repeatEnabled,
|
|
32961
32961
|
children: [
|
|
32962
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32963
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32962
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectValue, {}) }),
|
|
32963
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
32964
32964
|
]
|
|
32965
32965
|
}
|
|
32966
32966
|
)
|
|
@@ -32979,7 +32979,7 @@ function ScheduleFormFields({
|
|
|
32979
32979
|
disabled = false,
|
|
32980
32980
|
renderScriptSearch,
|
|
32981
32981
|
timeReferenceGate = "off",
|
|
32982
|
-
platforms =
|
|
32982
|
+
platforms = _chunkIC4IJJB2cjs.OS_PLATFORMS,
|
|
32983
32983
|
comingSoonPlatforms = [],
|
|
32984
32984
|
getTimeSlots,
|
|
32985
32985
|
nameLayout = "stacked",
|
|
@@ -33049,7 +33049,7 @@ function ScheduleFormFields({
|
|
|
33049
33049
|
platform.id
|
|
33050
33050
|
);
|
|
33051
33051
|
}) }),
|
|
33052
|
-
showErrors && formState.errors.supportedPlatforms && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33052
|
+
showErrors && formState.errors.supportedPlatforms && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-0 left-0 right-0 translate-y-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: _nullishCoalesce(formState.errors.supportedPlatforms.message, () => ( "")) }) })
|
|
33053
33053
|
]
|
|
33054
33054
|
}
|
|
33055
33055
|
);
|
|
@@ -33125,7 +33125,7 @@ function ScheduleFormFields({
|
|
|
33125
33125
|
// src/components/features/scripts/schedule-form/schedule-script-search-field.tsx
|
|
33126
33126
|
|
|
33127
33127
|
function ScriptPlatformIcons({ platforms }) {
|
|
33128
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children:
|
|
33128
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkIC4IJJB2cjs.OS_PLATFORMS.filter((p) => platforms.includes(p.id)).map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, p.icon, { className: "h-3.5 w-3.5 text-ods-text-secondary opacity-60" }, p.id)) });
|
|
33129
33129
|
}
|
|
33130
33130
|
function ScheduleScriptSearchField({
|
|
33131
33131
|
scriptId,
|
|
@@ -33151,7 +33151,7 @@ function ScheduleScriptSearchField({
|
|
|
33151
33151
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", onFocus: onOpen, onBlur: handleBlur, children: [
|
|
33152
33152
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVCFQHPOOcjs.Label, { className: "text-h4", children: "Select Script" }),
|
|
33153
33153
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33154
|
-
|
|
33154
|
+
_chunkCOJG2ATYcjs.Autocomplete,
|
|
33155
33155
|
{
|
|
33156
33156
|
options,
|
|
33157
33157
|
value: scriptId || null,
|
|
@@ -33166,7 +33166,7 @@ function ScheduleScriptSearchField({
|
|
|
33166
33166
|
error,
|
|
33167
33167
|
invalid,
|
|
33168
33168
|
renderOption: (option, isSelected) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33169
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33169
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { className: isSelected ? "text-ods-accent" : void 0, children: option.label }) }),
|
|
33170
33170
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScriptPlatformIcons, { platforms: _nullishCoalesce(_optionalChain([scripts, 'access', _723 => _723.find, 'call', _724 => _724((s) => s.id === option.value), 'optionalAccess', _725 => _725.supportedPlatforms]), () => ( [])) })
|
|
33171
33171
|
] })
|
|
33172
33172
|
}
|
|
@@ -33198,7 +33198,7 @@ function KnowledgeBaseOpenButton({ href }) {
|
|
|
33198
33198
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33199
33199
|
_chunkFCZAUK4Dcjs.Button,
|
|
33200
33200
|
{
|
|
33201
|
-
onClick: loading ? void 0 :
|
|
33201
|
+
onClick: loading ? void 0 : _chunkIC4IJJB2cjs.openInNewTab.call(void 0, href),
|
|
33202
33202
|
disabled: loading,
|
|
33203
33203
|
variant: "outline",
|
|
33204
33204
|
size: "icon",
|
|
@@ -33217,10 +33217,10 @@ function KnowledgeBaseNameCell({ item }) {
|
|
|
33217
33217
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative flex h-8 w-8 shrink-0 items-center justify-center rounded-[6px] border border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 16, className: "shrink-0 text-ods-text-secondary" }) }),
|
|
33218
33218
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33219
33219
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33220
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33220
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: item.name }) }),
|
|
33221
33221
|
tagStatus && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { variant: KNOWLEDGE_BASE_STATUS_VARIANT[tagStatus], label: tagStatus, className: "shrink-0" })
|
|
33222
33222
|
] }),
|
|
33223
|
-
item.type === "ARTICLE" && (item.summary || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33223
|
+
item.type === "ARTICLE" && (item.summary || loading) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(item.summary, () => ( "")) })
|
|
33224
33224
|
] })
|
|
33225
33225
|
] });
|
|
33226
33226
|
}
|
|
@@ -33235,8 +33235,8 @@ function KnowledgeBaseDateCell({ item, mode }) {
|
|
|
33235
33235
|
const ts = mode === "archive" ? _nullishCoalesce(item.updatedAt, () => ( item.createdAt)) : item.createdAt;
|
|
33236
33236
|
if (!ts) return null;
|
|
33237
33237
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col whitespace-nowrap", children: [
|
|
33238
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children:
|
|
33239
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children:
|
|
33238
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: _chunkEIACEY2Lcjs.formatDate.call(void 0, ts) }),
|
|
33239
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children: _chunkEIACEY2Lcjs.formatTime.call(void 0, ts) })
|
|
33240
33240
|
] });
|
|
33241
33241
|
}
|
|
33242
33242
|
function getKnowledgeBaseOpenColumn(getHref) {
|
|
@@ -33342,7 +33342,7 @@ function KnowledgeBaseArticleView({
|
|
|
33342
33342
|
className = "px-[var(--spacing-system-l)] pb-[var(--spacing-system-l)]"
|
|
33343
33343
|
}) {
|
|
33344
33344
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33345
|
-
|
|
33345
|
+
_chunkCOJG2ATYcjs.PageLayout,
|
|
33346
33346
|
{
|
|
33347
33347
|
title,
|
|
33348
33348
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -33352,9 +33352,9 @@ function KnowledgeBaseArticleView({
|
|
|
33352
33352
|
className,
|
|
33353
33353
|
children: [
|
|
33354
33354
|
tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap gap-[var(--spacing-system-xsf)]", children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.Tag, { label: tag.label, variant: "outline", className: "max-w-full" }, tag.id)) }),
|
|
33355
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33355
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.Card, { className: "border-ods-border px-[var(--spacing-system-mf)] py-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-2 gap-x-[var(--spacing-system-mf)] content-lg:grid-cols-3", children: [
|
|
33356
33356
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33357
|
-
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33357
|
+
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP63CRPWIcjs.DeletedUserAvatar, { size: "md" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33358
33358
|
_chunkW7OFAROYcjs.SquareAvatar,
|
|
33359
33359
|
{
|
|
33360
33360
|
src: author.imageUrl,
|
|
@@ -33365,12 +33365,12 @@ function KnowledgeBaseArticleView({
|
|
|
33365
33365
|
}
|
|
33366
33366
|
),
|
|
33367
33367
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33368
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33368
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { className: author.deleted ? "text-ods-error" : void 0, children: _nullishCoalesce(author.name, () => ( "Unknown")) }),
|
|
33369
33369
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Author" })
|
|
33370
33370
|
] })
|
|
33371
33371
|
] }),
|
|
33372
33372
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 flex-col justify-center", children: [
|
|
33373
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33373
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { children: updatedLabel }),
|
|
33374
33374
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Updated" })
|
|
33375
33375
|
] }),
|
|
33376
33376
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -33516,7 +33516,7 @@ function ConversationCard({
|
|
|
33516
33516
|
className,
|
|
33517
33517
|
loading: loadingProp
|
|
33518
33518
|
}) {
|
|
33519
|
-
const tint =
|
|
33519
|
+
const tint = _chunkSSKMGH5Ocjs.useAgentTint.call(void 0, agent);
|
|
33520
33520
|
const requestId = _react.useId.call(void 0, );
|
|
33521
33521
|
const loading = _chunk63A4GZMBcjs.useLoadingScope.call(void 0, ) || loadingProp;
|
|
33522
33522
|
if (loading) {
|
|
@@ -33549,7 +33549,7 @@ function ConversationCard({
|
|
|
33549
33549
|
style: tint,
|
|
33550
33550
|
onClick: selection && ((event) => {
|
|
33551
33551
|
if (event.button !== 0 || _optionalChain([window, 'access', _728 => _728.getSelection, 'call', _729 => _729(), 'optionalAccess', _730 => _730.toString, 'call', _731 => _731()])) return;
|
|
33552
|
-
if (!
|
|
33552
|
+
if (!_chunkIC4IJJB2cjs.isOwnClick.call(void 0, event.target, event.currentTarget, { controls: true })) return;
|
|
33553
33553
|
selection.onToggle();
|
|
33554
33554
|
}),
|
|
33555
33555
|
children: [
|
|
@@ -33572,7 +33572,7 @@ function ConversationCard({
|
|
|
33572
33572
|
)
|
|
33573
33573
|
),
|
|
33574
33574
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33575
|
-
|
|
33575
|
+
_chunkIC4IJJB2cjs.ChatTurn,
|
|
33576
33576
|
{
|
|
33577
33577
|
avatar: requester.avatar,
|
|
33578
33578
|
name: requester.name,
|
|
@@ -33593,7 +33593,7 @@ function ConversationCard({
|
|
|
33593
33593
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: CONTEXT_TEXT_CLASS, style: partLinesStyle(_optionalChain([lines, 'optionalAccess', _732 => _732.context])), children: context.text })
|
|
33594
33594
|
] }),
|
|
33595
33595
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33596
|
-
|
|
33596
|
+
_chunkIC4IJJB2cjs.ChatTurn,
|
|
33597
33597
|
{
|
|
33598
33598
|
avatar: responder.avatar,
|
|
33599
33599
|
name: responder.name,
|
|
@@ -33638,7 +33638,7 @@ function ConversationCardSkeleton({
|
|
|
33638
33638
|
{
|
|
33639
33639
|
selection: selection && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63A4GZMBcjs.InertWhileLoading, { className: "contents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectionToggle, { pressed: selection.pressed }) }),
|
|
33640
33640
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33641
|
-
|
|
33641
|
+
_chunkIC4IJJB2cjs.ChatTurn,
|
|
33642
33642
|
{
|
|
33643
33643
|
loading: true,
|
|
33644
33644
|
name: "",
|
|
@@ -33662,7 +33662,7 @@ function ConversationCardSkeleton({
|
|
|
33662
33662
|
] })
|
|
33663
33663
|
] }),
|
|
33664
33664
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33665
|
-
|
|
33665
|
+
_chunkIC4IJJB2cjs.ChatTurn,
|
|
33666
33666
|
{
|
|
33667
33667
|
loading: true,
|
|
33668
33668
|
name: "",
|
|
@@ -33743,7 +33743,7 @@ function Highlights({ items, className }) {
|
|
|
33743
33743
|
if (items.length === 0) return null;
|
|
33744
33744
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: _chunk63A4GZMBcjs.cn.call(void 0, "grid grid-cols-1 gap-2", className), children: items.slice(0, HIGHLIGHTS_LIMIT).map((text) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "li", { "data-loading-item": true, className: HIGHLIGHT_ROW_CLASS, children: [
|
|
33745
33745
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: HIGHLIGHT_ICON_PX, className: "shrink-0 text-ods-flamingo-cyan" }),
|
|
33746
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33746
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", triggerClassName: "flex-1", children: text })
|
|
33747
33747
|
] }, text)) });
|
|
33748
33748
|
}
|
|
33749
33749
|
function Example({
|
|
@@ -33779,7 +33779,7 @@ function Example({
|
|
|
33779
33779
|
mark(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _736 => _736.mark]), () => ( requesterMark))),
|
|
33780
33780
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
33781
33781
|
who(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _737 => _737.name]), () => ( labels.requester)), _nullishCoalesce(_optionalChain([requester, 'optionalAccess', _738 => _738.note]), () => ( labels.requesterNote))),
|
|
33782
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33782
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 2, variant: "h4", className: "min-h-[2lh]", children: `\u201C${example.request}\u201D` })
|
|
33783
33783
|
] })
|
|
33784
33784
|
] }),
|
|
33785
33785
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 gap-2.5 border-t border-ods-border pt-3", children: [
|
|
@@ -33788,7 +33788,7 @@ function Example({
|
|
|
33788
33788
|
who(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _740 => _740.name]), () => ( labels.responder)), _nullishCoalesce(_optionalChain([responder, 'optionalAccess', _741 => _741.note]), () => ( labels.responderNote))),
|
|
33789
33789
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-start gap-2", children: [
|
|
33790
33790
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "mt-0.5 shrink-0 text-ods-flamingo-cyan" }),
|
|
33791
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33791
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", className: "min-h-[2lh]", triggerClassName: "flex-1", children: example.outcome })
|
|
33792
33792
|
] })
|
|
33793
33793
|
] })
|
|
33794
33794
|
] })
|
|
@@ -33798,7 +33798,7 @@ function Example({
|
|
|
33798
33798
|
}
|
|
33799
33799
|
function ExampleSkeleton({ className }) {
|
|
33800
33800
|
const turn = (first) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk63A4GZMBcjs.cn.call(void 0, "flex min-w-0 gap-2.5", !first && "border-t border-ods-border pt-3"), children: [
|
|
33801
|
-
first ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { loading: true, variant: "round", sizePx: EXAMPLE_MARK_PX, className: "shrink-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33801
|
+
first ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkW7OFAROYcjs.SquareAvatar, { loading: true, variant: "round", sizePx: EXAMPLE_MARK_PX, className: "shrink-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU767P4JUcjs.AgentAvatar, { loading: true, agent: "", size: EXAMPLE_MARK_PX }),
|
|
33802
33802
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
33803
33803
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPMUCEUFQcjs.TextLineSkeleton, { type: "h6", className: "w-28" }),
|
|
33804
33804
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-[2lh] text-h4", children: [
|
|
@@ -33924,16 +33924,16 @@ function CapabilityExplorer({
|
|
|
33924
33924
|
readItems: true,
|
|
33925
33925
|
renderItem: (item) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "article", { className: _chunk63A4GZMBcjs.cn.call(void 0, CARD_CLASS2, CARD_HEIGHT_CLASS), children: [
|
|
33926
33926
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CARD_HEAD_ROW_CLASS, children: [
|
|
33927
|
-
item.iconName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, JOB_ICON_TILE_CLASS, "text-ods-flamingo-cyan"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33927
|
+
item.iconName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk63A4GZMBcjs.cn.call(void 0, JOB_ICON_TILE_CLASS, "text-ods-flamingo-cyan"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.EntityIcon, { icon: { name: item.iconName }, size: 18 }) }),
|
|
33928
33928
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
33929
33929
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h3", { className: "flex min-w-0 items-center gap-2 text-ods-text-primary text-h4", children: [
|
|
33930
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33930
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { as: "span", variant: "h4", triggerClassName: "flex-1", children: item.title }),
|
|
33931
33931
|
item.badge
|
|
33932
33932
|
] }),
|
|
33933
|
-
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33933
|
+
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { variant: "h6", tone: "secondary", children: item.caption })
|
|
33934
33934
|
] })
|
|
33935
33935
|
] }),
|
|
33936
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33936
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 3, variant: "h6", tone: "secondary", className: "min-h-[3lh]", children: item.intro }),
|
|
33937
33937
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-lg border border-ods-border", children: renderScreen(item, { compact: true }) }),
|
|
33938
33938
|
item.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33939
33939
|
Example,
|
|
@@ -34004,7 +34004,7 @@ function CapabilityExplorer({
|
|
|
34004
34004
|
"span",
|
|
34005
34005
|
{
|
|
34006
34006
|
className: _chunk63A4GZMBcjs.cn.call(void 0, JOB_ICON_TILE_CLASS, selected ? "text-ods-flamingo-cyan" : "text-ods-text-secondary"),
|
|
34007
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34007
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkO3EKOXFZcjs.EntityIcon, { icon: { name: item.iconName }, size: 18 })
|
|
34008
34008
|
}
|
|
34009
34009
|
),
|
|
34010
34010
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "min-w-0 flex-1", children: [
|
|
@@ -34050,8 +34050,8 @@ function CapabilityExplorer({
|
|
|
34050
34050
|
),
|
|
34051
34051
|
children: [
|
|
34052
34052
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: PANEL_INTRO_CLASS, children: [
|
|
34053
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34054
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34053
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 2, variant: "h2", className: "mb-2", children: active.title }),
|
|
34054
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCOJG2ATYcjs.TruncateText, { lines: 3, variant: "h4", tone: "secondary", className: "min-h-[3lh]", children: active.intro }),
|
|
34055
34055
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Highlights, { items: _nullishCoalesce(active.highlights, () => ( [])), className: "mt-auto" })
|
|
34056
34056
|
] }),
|
|
34057
34057
|
active.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|