@flamingo-stack/openframe-frontend-core 0.0.761 → 0.0.762
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-7Z4EQOIX.cjs → chunk-22XAPV6N.cjs} +35 -35
- package/dist/{chunk-AXBVN5SW.cjs → chunk-2IFCRPNP.cjs} +38 -38
- package/dist/{chunk-CSJO7ZGN.cjs → chunk-3RYIF4OW.cjs} +3 -3
- package/dist/{chunk-G6IK3HC5.cjs → chunk-3WPWUUFU.cjs} +32 -32
- package/dist/{chunk-35BJY5RR.cjs → chunk-47GZ33ND.cjs} +44 -44
- package/dist/{chunk-HQYWVNQL.cjs → chunk-4NGXJA3V.cjs} +4 -4
- package/dist/{chunk-GLQBCQOF.cjs → chunk-4VAMNI27.cjs} +59 -59
- package/dist/{chunk-4EM7HIIM.cjs → chunk-72XMAKDA.cjs} +566 -566
- package/dist/{chunk-B7AOUPBV.cjs → chunk-AXGTRPF6.cjs} +20 -20
- package/dist/{chunk-6T6O36LT.cjs → chunk-CEJDHCFZ.cjs} +89 -89
- package/dist/{chunk-NOFJH7MA.cjs → chunk-CZ3OVWUL.cjs} +14 -14
- package/dist/{chunk-GKRHGVB4.cjs → chunk-DYJWZIPU.cjs} +100 -100
- package/dist/{chunk-6M54EVOA.cjs → chunk-DZ6BYXQF.cjs} +28 -28
- package/dist/{chunk-2ANICXS7.cjs → chunk-E4LA4BEH.cjs} +21 -21
- package/dist/{chunk-JHQNUWFM.cjs → chunk-EQZXJUYV.cjs} +3 -3
- package/dist/{chunk-LU7TD6QS.cjs → chunk-FQSXZC2K.cjs} +3 -3
- package/dist/{chunk-QU5K52OP.cjs → chunk-GY2JESOC.cjs} +2 -2
- package/dist/{chunk-LOFDIDSD.cjs → chunk-GZKWF6NH.cjs} +9 -9
- package/dist/{chunk-VAZTFCVY.cjs → chunk-J4P47JHM.cjs} +20 -20
- package/dist/{chunk-WBOHLXFC.cjs → chunk-LVKUMVUJ.cjs} +2 -2
- package/dist/{chunk-L2IQESTQ.cjs → chunk-M7YZGRAV.cjs} +2 -2
- package/dist/{chunk-R34JD6NP.cjs → chunk-MWLD6NXV.cjs} +3 -3
- package/dist/{chunk-TIV74DVS.cjs → chunk-N52HFJTK.cjs} +43 -43
- package/dist/{chunk-W2RM764D.cjs → chunk-NET74KSQ.cjs} +5 -4
- package/dist/{chunk-B27XV2TC.cjs → chunk-NS64LMVE.cjs} +10 -10
- package/dist/{chunk-OBXZDUC3.cjs → chunk-NSR7K57R.cjs} +83 -83
- package/dist/{chunk-QYLIHZKZ.cjs → chunk-OJJ4RL2T.cjs} +4 -4
- package/dist/{chunk-F64VMOIB.cjs → chunk-PE26VSWT.cjs} +19 -19
- package/dist/{chunk-EMSOBT6R.cjs → chunk-PFXR3RF3.cjs} +6 -6
- package/dist/{chunk-D252ICCO.cjs → chunk-QCO32MEE.cjs} +17 -17
- package/dist/{chunk-KTPR66EE.cjs → chunk-R3TWQ3ZJ.cjs} +10 -0
- package/dist/{chunk-VUSXDMCE.cjs → chunk-RM6AHNM4.cjs} +7 -7
- package/dist/{chunk-T4BBZ5ST.cjs → chunk-RO72PRQI.cjs} +2 -2
- package/dist/{chunk-WI2OTGKC.cjs → chunk-SVP6DJFL.cjs} +2 -2
- package/dist/{chunk-H45OTVYI.cjs → chunk-TGVV7STM.cjs} +22 -22
- package/dist/{chunk-SUHPBFNU.cjs → chunk-TQPQKBBL.cjs} +242 -240
- package/dist/{chunk-5E6JHOGX.cjs → chunk-TSJUL6IH.cjs} +3 -3
- package/dist/{chunk-LOM3S64Z.cjs → chunk-TWAHPTWW.cjs} +8 -8
- package/dist/{chunk-VUWPLQBY.cjs → chunk-XCH7SPGI.cjs} +44 -44
- package/dist/{cloud-tenants-BDGV4N2T.cjs → cloud-tenants-M5SIL6QZ.cjs} +22 -22
- package/dist/components/case-studies/index.cjs +36 -36
- package/dist/components/chat/index.cjs +15 -15
- package/dist/components/contact/index.cjs +23 -23
- package/dist/components/docs/index.cjs +26 -26
- package/dist/components/embeds/index.cjs +23 -23
- package/dist/components/faq/index.cjs +24 -24
- package/dist/components/features/index.cjs +22 -22
- package/dist/components/help-center-pages/index.cjs +125 -125
- package/dist/components/index.cjs +83 -83
- package/dist/components/meeting-scheduler/index.cjs +77 -77
- package/dist/components/navigation/index.cjs +25 -25
- package/dist/components/onboarding-guides/index.cjs +25 -25
- package/dist/components/product-demo/index.cjs +9 -9
- package/dist/components/related-content/index.cjs +10 -10
- package/dist/components/tickets/index.cjs +28 -28
- package/dist/components/ui/index.cjs +22 -22
- package/dist/{devices-Q5YHMXGV.cjs → devices-TZY7RF7M.cjs} +23 -23
- package/dist/{embeddable-chat-ST5IR6VN.cjs → embeddable-chat-HWQSP3DY.cjs} +93 -93
- package/dist/hooks/index.cjs +8 -8
- package/dist/index.cjs +28 -28
- package/dist/{knowledge-UJTJT36J.cjs → knowledge-UKC2BLQP.cjs} +23 -23
- package/dist/{logs-WMNITBLM.cjs → logs-MFVTQ5NN.cjs} +30 -30
- package/dist/platform-domains.cjs +2 -0
- package/dist/platform-domains.d.ts.map +1 -1
- package/dist/platform-domains.js +2 -0
- package/dist/{policies-TRXVBOH7.cjs → policies-BETELENB.cjs} +26 -26
- package/dist/{remote-session-SKNXYG6K.cjs → remote-session-F72S6I7J.cjs} +9 -9
- package/dist/{scripts-HECY7XDL.cjs → scripts-XDT3ZAXU.cjs} +29 -29
- package/dist/{software-update-NNFLEMYD.cjs → software-update-EW5X7R2X.cjs} +26 -26
- package/dist/{tickets-board-B2FH7Z4B.cjs → tickets-board-4PBXPSGJ.cjs} +12 -12
- package/dist/types/platform.d.ts +1 -1
- package/dist/types/platform.d.ts.map +1 -1
- package/dist/utils/index.cjs +13 -0
- package/dist/utils/platform-config.d.ts.map +1 -1
- package/dist/utils/platform-config.js +1 -0
- package/dist/utils/platform-identity.cjs +10 -0
- package/dist/utils/platform-identity.d.ts +3 -2
- package/dist/utils/platform-identity.d.ts.map +1 -1
- package/dist/utils/platform-identity.js +10 -0
- package/package.json +1 -1
- package/src/platform-domains.ts +2 -0
- package/src/styles/README.md +1 -0
- package/src/styles/ods-colors.css +16 -0
- package/src/types/platform.ts +1 -0
- package/src/utils/platform-config.tsx +1 -0
- package/src/utils/platform-identity.ts +19 -2
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkE4LA4BEHcjs = require('./chunk-E4LA4BEH.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
@@ -17,7 +17,7 @@ var _chunk2ANICXS7cjs = require('./chunk-2ANICXS7.cjs');
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunkGY2JESOCcjs = require('./chunk-GY2JESOC.cjs');
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
|
|
@@ -35,7 +35,7 @@ var _chunkQU5K52OPcjs = require('./chunk-QU5K52OP.cjs');
|
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
var
|
|
38
|
+
var _chunk2IFCRPNPcjs = require('./chunk-2IFCRPNP.cjs');
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
|
|
@@ -51,18 +51,18 @@ var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
|
|
|
51
51
|
|
|
52
52
|
|
|
53
53
|
|
|
54
|
-
var
|
|
54
|
+
var _chunkXCH7SPGIcjs = require('./chunk-XCH7SPGI.cjs');
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
var
|
|
58
|
+
var _chunkFQSXZC2Kcjs = require('./chunk-FQSXZC2K.cjs');
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
|
|
62
62
|
var _chunkA6P6DHEZcjs = require('./chunk-A6P6DHEZ.cjs');
|
|
63
63
|
|
|
64
64
|
|
|
65
|
-
var
|
|
65
|
+
var _chunkRO72PRQIcjs = require('./chunk-RO72PRQI.cjs');
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
|
|
@@ -109,7 +109,7 @@ var _chunkYUMFVQINcjs = require('./chunk-YUMFVQIN.cjs');
|
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
|
|
112
|
-
var
|
|
112
|
+
var _chunkCEJDHCFZcjs = require('./chunk-CEJDHCFZ.cjs');
|
|
113
113
|
|
|
114
114
|
|
|
115
115
|
|
|
@@ -131,7 +131,7 @@ var _chunk6T6O36LTcjs = require('./chunk-6T6O36LT.cjs');
|
|
|
131
131
|
|
|
132
132
|
|
|
133
133
|
|
|
134
|
-
var
|
|
134
|
+
var _chunkTQPQKBBLcjs = require('./chunk-TQPQKBBL.cjs');
|
|
135
135
|
|
|
136
136
|
|
|
137
137
|
|
|
@@ -144,7 +144,7 @@ var _chunkSUHPBFNUcjs = require('./chunk-SUHPBFNU.cjs');
|
|
|
144
144
|
|
|
145
145
|
|
|
146
146
|
|
|
147
|
-
var
|
|
147
|
+
var _chunkPE26VSWTcjs = require('./chunk-PE26VSWT.cjs');
|
|
148
148
|
|
|
149
149
|
|
|
150
150
|
|
|
@@ -156,7 +156,7 @@ var _chunkF64VMOIBcjs = require('./chunk-F64VMOIB.cjs');
|
|
|
156
156
|
|
|
157
157
|
|
|
158
158
|
|
|
159
|
-
var
|
|
159
|
+
var _chunkGZKWF6NHcjs = require('./chunk-GZKWF6NH.cjs');
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
|
|
@@ -455,15 +455,15 @@ var _chunkXIBCMGBWcjs = require('./chunk-XIBCMGBW.cjs');
|
|
|
455
455
|
|
|
456
456
|
|
|
457
457
|
|
|
458
|
-
var
|
|
458
|
+
var _chunkNET74KSQcjs = require('./chunk-NET74KSQ.cjs');
|
|
459
459
|
|
|
460
460
|
|
|
461
461
|
|
|
462
462
|
|
|
463
|
-
var
|
|
463
|
+
var _chunk3RYIF4OWcjs = require('./chunk-3RYIF4OW.cjs');
|
|
464
464
|
|
|
465
465
|
|
|
466
|
-
var
|
|
466
|
+
var _chunkSVP6DJFLcjs = require('./chunk-SVP6DJFL.cjs');
|
|
467
467
|
|
|
468
468
|
|
|
469
469
|
var _chunkJKX2C3I2cjs = require('./chunk-JKX2C3I2.cjs');
|
|
@@ -492,7 +492,7 @@ var _chunkSKI6NKOEcjs = require('./chunk-SKI6NKOE.cjs');
|
|
|
492
492
|
|
|
493
493
|
|
|
494
494
|
|
|
495
|
-
var
|
|
495
|
+
var _chunk22XAPV6Ncjs = require('./chunk-22XAPV6N.cjs');
|
|
496
496
|
|
|
497
497
|
|
|
498
498
|
|
|
@@ -500,14 +500,14 @@ var _chunk7Z4EQOIXcjs = require('./chunk-7Z4EQOIX.cjs');
|
|
|
500
500
|
|
|
501
501
|
|
|
502
502
|
|
|
503
|
-
var
|
|
503
|
+
var _chunkOJJ4RL2Tcjs = require('./chunk-OJJ4RL2T.cjs');
|
|
504
504
|
|
|
505
505
|
|
|
506
506
|
|
|
507
507
|
var _chunk63N4FN5Vcjs = require('./chunk-63N4FN5V.cjs');
|
|
508
508
|
|
|
509
509
|
|
|
510
|
-
var
|
|
510
|
+
var _chunkM7YZGRAVcjs = require('./chunk-M7YZGRAV.cjs');
|
|
511
511
|
|
|
512
512
|
|
|
513
513
|
|
|
@@ -519,7 +519,7 @@ var _chunkL2IQESTQcjs = require('./chunk-L2IQESTQ.cjs');
|
|
|
519
519
|
|
|
520
520
|
|
|
521
521
|
|
|
522
|
-
var
|
|
522
|
+
var _chunkEQZXJUYVcjs = require('./chunk-EQZXJUYV.cjs');
|
|
523
523
|
|
|
524
524
|
|
|
525
525
|
var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
|
|
@@ -535,7 +535,7 @@ var _chunkCW3ML76Ucjs = require('./chunk-CW3ML76U.cjs');
|
|
|
535
535
|
|
|
536
536
|
|
|
537
537
|
|
|
538
|
-
var
|
|
538
|
+
var _chunkMWLD6NXVcjs = require('./chunk-MWLD6NXV.cjs');
|
|
539
539
|
|
|
540
540
|
|
|
541
541
|
|
|
@@ -544,7 +544,7 @@ var _chunkR34JD6NPcjs = require('./chunk-R34JD6NP.cjs');
|
|
|
544
544
|
|
|
545
545
|
|
|
546
546
|
|
|
547
|
-
var
|
|
547
|
+
var _chunkR3TWQ3ZJcjs = require('./chunk-R3TWQ3ZJ.cjs');
|
|
548
548
|
|
|
549
549
|
|
|
550
550
|
var _chunkDGFDBPO7cjs = require('./chunk-DGFDBPO7.cjs');
|
|
@@ -676,7 +676,7 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
676
676
|
var useTheme = _nextthemes.useTheme;
|
|
677
677
|
function useThemeToggle() {
|
|
678
678
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
679
|
-
const mounted =
|
|
679
|
+
const mounted = _chunkTQPQKBBLcjs.useIsHydrated.call(void 0, );
|
|
680
680
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
681
681
|
const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
|
|
682
682
|
const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
|
|
@@ -813,7 +813,7 @@ function AnnouncementBarView({
|
|
|
813
813
|
style
|
|
814
814
|
}) {
|
|
815
815
|
const handleContentClick = onContentClick ? () => {
|
|
816
|
-
if (!window.matchMedia(
|
|
816
|
+
if (!window.matchMedia(_chunkR3TWQ3ZJcjs.breakpoints.md).matches) onContentClick();
|
|
817
817
|
} : void 0;
|
|
818
818
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-h-11 w-full max-w-full items-center", className), style, children: [
|
|
819
819
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -884,7 +884,7 @@ function TimezoneSelect({
|
|
|
884
884
|
}) {
|
|
885
885
|
const options = _react.useMemo.call(void 0, () => timezoneOptions(value), [value]);
|
|
886
886
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
887
|
-
|
|
887
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
888
888
|
{
|
|
889
889
|
className,
|
|
890
890
|
value: value || null,
|
|
@@ -1064,7 +1064,7 @@ var _reactpopover = require('@radix-ui/react-popover'); var Popover = _interopRe
|
|
|
1064
1064
|
|
|
1065
1065
|
var _reactdaypicker = require('react-day-picker');
|
|
1066
1066
|
|
|
1067
|
-
var defaultFormatDate = (date) =>
|
|
1067
|
+
var defaultFormatDate = (date) => _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0, date, _chunkEQZXJUYVcjs.VIEWER_TIMEZONE, "numeric");
|
|
1068
1068
|
var formatDateRange = (range, formatFn) => {
|
|
1069
1069
|
if (!_optionalChain([range, 'optionalAccess', _5 => _5.from])) return "";
|
|
1070
1070
|
if (!range.to) return formatFn(range.from);
|
|
@@ -1100,7 +1100,7 @@ function DatePickerCalendar({
|
|
|
1100
1100
|
onMonthChange
|
|
1101
1101
|
}) {
|
|
1102
1102
|
const today = /* @__PURE__ */ new Date();
|
|
1103
|
-
const isMdUp = _nullishCoalesce(
|
|
1103
|
+
const isMdUp = _nullishCoalesce(_chunkR3TWQ3ZJcjs.useMdUp.call(void 0, ), () => ( true));
|
|
1104
1104
|
const monthsToShow = isMdUp ? numberOfMonths : 1;
|
|
1105
1105
|
const [draftRange, setDraftRange] = _react.useState.call(void 0,
|
|
1106
1106
|
mode === "range" ? selected : void 0
|
|
@@ -1265,7 +1265,7 @@ function DatePickerCalendar({
|
|
|
1265
1265
|
};
|
|
1266
1266
|
const handlePreviousMonth = () => shiftMonth(-1);
|
|
1267
1267
|
const handleNextMonth = () => shiftMonth(1);
|
|
1268
|
-
const formatMonthYear = (date) =>
|
|
1268
|
+
const formatMonthYear = (date) => _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0, date, _chunkEQZXJUYVcjs.VIEWER_TIMEZONE, "monthYear");
|
|
1269
1269
|
const getSecondMonth = (date) => {
|
|
1270
1270
|
const next = new Date(date);
|
|
1271
1271
|
next.setMonth(next.getMonth() + 1);
|
|
@@ -1704,20 +1704,20 @@ function DatePickerInput(props) {
|
|
|
1704
1704
|
) })
|
|
1705
1705
|
] }),
|
|
1706
1706
|
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1", children: [
|
|
1707
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1708
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1709
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1707
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: hour, onValueChange: handleHourChange, disabled, children: [
|
|
1708
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder: "HH" }) }),
|
|
1709
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: hourOptions.map((h) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: h, children: h }, h)) })
|
|
1710
1710
|
] }),
|
|
1711
1711
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h4", children: ":" }),
|
|
1712
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1713
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1714
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1712
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: minute, onValueChange: handleMinuteChange, disabled, children: [
|
|
1713
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder: "MM" }) }),
|
|
1714
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: minuteOptions.map((m) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: m, children: m }, m)) })
|
|
1715
1715
|
] }),
|
|
1716
|
-
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1717
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1718
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1719
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1720
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1716
|
+
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: period, onValueChange: (val) => handlePeriodChange(val), disabled, children: [
|
|
1717
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder: "AM" }) }),
|
|
1718
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: [
|
|
1719
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "AM", children: "AM" }),
|
|
1720
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "PM", children: "PM" })
|
|
1721
1721
|
] })
|
|
1722
1722
|
] })
|
|
1723
1723
|
] })
|
|
@@ -1860,9 +1860,9 @@ function DatePickerInputSimple(props) {
|
|
|
1860
1860
|
}
|
|
1861
1861
|
) })
|
|
1862
1862
|
] }),
|
|
1863
|
-
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1864
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1865
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1863
|
+
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: timeValue, onValueChange: handleTimeChange, disabled, children: [
|
|
1864
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "flex-1"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder: "Select time", children: timeDisplayLabel || "Select time" }) }),
|
|
1865
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
1866
1866
|
] })
|
|
1867
1867
|
] });
|
|
1868
1868
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.FieldWrapper, { label, error, errorSlot: "error" in props, className, children: content });
|
|
@@ -1881,14 +1881,14 @@ function DateFilterPanel({
|
|
|
1881
1881
|
className
|
|
1882
1882
|
}) {
|
|
1883
1883
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex flex-col gap-4", className), children: [
|
|
1884
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1885
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1884
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: sort, onValueChange: (value) => onSortChange(value), children: [
|
|
1885
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.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: [
|
|
1886
1886
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowUpDown, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
1887
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1887
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) })
|
|
1888
1888
|
] }) }),
|
|
1889
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1890
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1891
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1889
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: [
|
|
1890
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "asc", children: ascLabel }),
|
|
1891
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "desc", children: descLabel })
|
|
1892
1892
|
] })
|
|
1893
1893
|
] }),
|
|
1894
1894
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -2166,7 +2166,7 @@ function Value({ value, depth }) {
|
|
|
2166
2166
|
}
|
|
2167
2167
|
if (typeof value === "string") {
|
|
2168
2168
|
if (ISO_DATE.test(value)) {
|
|
2169
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children:
|
|
2169
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkPE26VSWTcjs.formatRelativeTime.call(void 0, value) });
|
|
2170
2170
|
}
|
|
2171
2171
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
|
|
2172
2172
|
}
|
|
@@ -2232,7 +2232,7 @@ var ProgressBar = ({
|
|
|
2232
2232
|
mobileHeight = 8,
|
|
2233
2233
|
inverted = false
|
|
2234
2234
|
}) => {
|
|
2235
|
-
const isMdUp = _nullishCoalesce(
|
|
2235
|
+
const isMdUp = _nullishCoalesce(_chunkMWLD6NXVcjs.useContentMdUp.call(void 0, ), () => ( true));
|
|
2236
2236
|
const effectiveSegmentWidth = isMdUp ? segmentWidth : mobileSegmentWidth;
|
|
2237
2237
|
const effectiveHeight = isMdUp ? height : mobileHeight;
|
|
2238
2238
|
const containerRef = _react.useRef.call(void 0, null);
|
|
@@ -2348,7 +2348,7 @@ function InfoCardFooter({ footer }) {
|
|
|
2348
2348
|
] });
|
|
2349
2349
|
}
|
|
2350
2350
|
function InfoCardValueRow({ label, value, showLabel, copyable, icon, copyAriaLabel }) {
|
|
2351
|
-
const { copy, copied } =
|
|
2351
|
+
const { copy, copied } = _chunkXCH7SPGIcjs.useCopyToClipboard.call(void 0, );
|
|
2352
2352
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 w-full items-center gap-[var(--spacing-system-xs)] self-stretch", children: [
|
|
2353
2353
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-primary text-h4", children: showLabel ? label : "" }),
|
|
2354
2354
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px flex-1 bg-ods-divider" }),
|
|
@@ -2589,7 +2589,7 @@ function CompactAssigneeDropdown({
|
|
|
2589
2589
|
value: o.value,
|
|
2590
2590
|
label: o.label,
|
|
2591
2591
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2592
|
-
|
|
2592
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
2593
2593
|
{
|
|
2594
2594
|
src: o.imageUrl,
|
|
2595
2595
|
alt: o.label,
|
|
@@ -2623,8 +2623,8 @@ function CompactAssigneeDropdown({
|
|
|
2623
2623
|
"shrink-0 rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
2624
2624
|
className
|
|
2625
2625
|
),
|
|
2626
|
-
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2627
|
-
|
|
2626
|
+
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE4LA4BEHcjs.DeletedUserAvatar, { size: "sm", accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}` }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2627
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
2628
2628
|
{
|
|
2629
2629
|
src: currentAssignee.avatarSrc,
|
|
2630
2630
|
alt: currentAssignee.name,
|
|
@@ -2672,7 +2672,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2672
2672
|
const opt = option;
|
|
2673
2673
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-sf)]", children: [
|
|
2674
2674
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2675
|
-
|
|
2675
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
2676
2676
|
{
|
|
2677
2677
|
src: opt.imageUrl,
|
|
2678
2678
|
alt: opt.label,
|
|
@@ -2688,7 +2688,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2688
2688
|
if (isEditing) {
|
|
2689
2689
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "min-w-0", className), children: [
|
|
2690
2690
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2691
|
-
|
|
2691
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
2692
2692
|
{
|
|
2693
2693
|
options,
|
|
2694
2694
|
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _35 => _35.id]), () => ( null)),
|
|
@@ -2700,14 +2700,14 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2700
2700
|
loading: isLoading,
|
|
2701
2701
|
showChevron: false,
|
|
2702
2702
|
startAdornment: hasAssignee ? currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2703
|
-
|
|
2703
|
+
_chunkE4LA4BEHcjs.DeletedUserAvatar,
|
|
2704
2704
|
{
|
|
2705
2705
|
size: "sm",
|
|
2706
2706
|
className: "h-6 w-6",
|
|
2707
2707
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
2708
2708
|
}
|
|
2709
2709
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2710
|
-
|
|
2710
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
2711
2711
|
{
|
|
2712
2712
|
src: currentAssignee.avatarSrc,
|
|
2713
2713
|
alt: currentAssignee.name,
|
|
@@ -2726,13 +2726,13 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2726
2726
|
if (hasAssignee) {
|
|
2727
2727
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", className), children: [
|
|
2728
2728
|
currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2729
|
-
|
|
2729
|
+
_chunkE4LA4BEHcjs.DeletedUserAvatar,
|
|
2730
2730
|
{
|
|
2731
2731
|
size: "md",
|
|
2732
2732
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
2733
2733
|
}
|
|
2734
2734
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2735
|
-
|
|
2735
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
2736
2736
|
{
|
|
2737
2737
|
src: currentAssignee.avatarSrc,
|
|
2738
2738
|
alt: currentAssignee.name,
|
|
@@ -2806,7 +2806,7 @@ function TextValue({ value }) {
|
|
|
2806
2806
|
}
|
|
2807
2807
|
) : onClick ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick, title: text, className: interactiveClass, children: text }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", title: text, children: text }),
|
|
2808
2808
|
hasImage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2809
|
-
|
|
2809
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
2810
2810
|
{
|
|
2811
2811
|
src: imageSrc,
|
|
2812
2812
|
alt: text,
|
|
@@ -2826,7 +2826,7 @@ function RowValue({ value }) {
|
|
|
2826
2826
|
}
|
|
2827
2827
|
case "status": {
|
|
2828
2828
|
const { type: _type, ...props } = value;
|
|
2829
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2829
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.TicketStatusTag, { ...props });
|
|
2830
2830
|
}
|
|
2831
2831
|
case "custom":
|
|
2832
2832
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
|
|
@@ -2924,7 +2924,7 @@ function MediaTypeSelector({
|
|
|
2924
2924
|
// changed) and cost an extra render pass on every change to say what the
|
|
2925
2925
|
// prop already said.
|
|
2926
2926
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
2927
|
-
|
|
2927
|
+
_chunk2IFCRPNPcjs.Select,
|
|
2928
2928
|
{
|
|
2929
2929
|
value: value || void 0,
|
|
2930
2930
|
onValueChange: (next) => {
|
|
@@ -2934,8 +2934,8 @@ function MediaTypeSelector({
|
|
|
2934
2934
|
disabled,
|
|
2935
2935
|
defaultValue: value,
|
|
2936
2936
|
children: [
|
|
2937
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2938
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2937
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder }) }),
|
|
2938
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: mediaTypeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: option.value, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
2939
2939
|
option.icon,
|
|
2940
2940
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: option.label })
|
|
2941
2941
|
] }) }, option.value)) })
|
|
@@ -3752,7 +3752,7 @@ function TagsManager({
|
|
|
3752
3752
|
}
|
|
3753
3753
|
),
|
|
3754
3754
|
selectedTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3755
|
-
|
|
3755
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
3756
3756
|
{
|
|
3757
3757
|
label: tag.name,
|
|
3758
3758
|
variant: "outline",
|
|
@@ -4239,7 +4239,7 @@ var DialogContent = _react.forwardRef.call(void 0, ({ className, children, ...pr
|
|
|
4239
4239
|
),
|
|
4240
4240
|
...props,
|
|
4241
4241
|
children: [
|
|
4242
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid min-h-0 gap-[var(--spacing-system-mf)] overflow-y-auto", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4242
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid min-h-0 gap-[var(--spacing-system-mf)] overflow-y-auto", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLD6NXVcjs.ViewportBreakpoints, { children }) }),
|
|
4243
4243
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DialogPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [
|
|
4244
4244
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "h-4 w-4" }),
|
|
4245
4245
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: "Close" })
|
|
@@ -4297,10 +4297,10 @@ function useConfirm() {
|
|
|
4297
4297
|
},
|
|
4298
4298
|
[]
|
|
4299
4299
|
);
|
|
4300
|
-
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4301
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4302
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4303
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4300
|
+
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
|
|
4301
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: pending.title }) }),
|
|
4302
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
|
|
4303
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
|
|
4304
4304
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
|
|
4305
4305
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
|
|
4306
4306
|
] })
|
|
@@ -4354,14 +4354,14 @@ function AdminFormDrawer({
|
|
|
4354
4354
|
else onClose();
|
|
4355
4355
|
};
|
|
4356
4356
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4357
|
-
|
|
4357
|
+
_chunkGY2JESOCcjs.Drawer,
|
|
4358
4358
|
{
|
|
4359
4359
|
open: isOpen,
|
|
4360
4360
|
onOpenChange: (open) => {
|
|
4361
4361
|
if (!open) requestClose();
|
|
4362
4362
|
},
|
|
4363
4363
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4364
|
-
|
|
4364
|
+
_chunkGY2JESOCcjs.DrawerContent,
|
|
4365
4365
|
{
|
|
4366
4366
|
side: "right",
|
|
4367
4367
|
resizable: true,
|
|
@@ -4370,15 +4370,15 @@ function AdminFormDrawer({
|
|
|
4370
4370
|
storageKey,
|
|
4371
4371
|
panelClassName: "max-md:w-[calc(100vw-1rem)]",
|
|
4372
4372
|
children: [
|
|
4373
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4374
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4375
|
-
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4373
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGY2JESOCcjs.DrawerHeader, { children: [
|
|
4374
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGY2JESOCcjs.DrawerTitle, { children: title }),
|
|
4375
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGY2JESOCcjs.DrawerDescription, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: subtitle }) })
|
|
4376
4376
|
] }),
|
|
4377
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4377
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGY2JESOCcjs.DrawerBody, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4378
4378
|
"form",
|
|
4379
4379
|
{
|
|
4380
4380
|
id: formId,
|
|
4381
|
-
...
|
|
4381
|
+
..._chunkCEJDHCFZcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4382
4382
|
className: "flex flex-col gap-[var(--spacing-system-lf)]",
|
|
4383
4383
|
onSubmit: (e) => {
|
|
4384
4384
|
e.preventDefault();
|
|
@@ -4476,16 +4476,16 @@ function AdminFormModal({
|
|
|
4476
4476
|
body: "Your edits have not been saved. Close and discard them?"
|
|
4477
4477
|
});
|
|
4478
4478
|
if (!isOpen) return null;
|
|
4479
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4480
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4481
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4479
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
|
|
4480
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: [
|
|
4481
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: title }),
|
|
4482
4482
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
4483
4483
|
] }),
|
|
4484
4484
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4485
4485
|
"form",
|
|
4486
4486
|
{
|
|
4487
4487
|
id: formId,
|
|
4488
|
-
...
|
|
4488
|
+
..._chunkCEJDHCFZcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4489
4489
|
className: "flex min-h-0 flex-1 flex-col",
|
|
4490
4490
|
onSubmit: (e) => {
|
|
4491
4491
|
e.preventDefault();
|
|
@@ -4503,7 +4503,7 @@ function AdminFormModal({
|
|
|
4503
4503
|
// a shrink-to-fit flex item pinned to the left of a 1400px panel).
|
|
4504
4504
|
// The placeholder owns its own layout and mirrors the column count so
|
|
4505
4505
|
// the modal doesn't visibly re-flow when the entity lands.
|
|
4506
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4506
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalContent, { children: loadingContent ? (
|
|
4507
4507
|
// The one announcement: a `loadingContent` with a region of its own takes `region={false}`.
|
|
4508
4508
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNO5UJLLQcjs.LoadingRegion, { label: "Loading", children: loadingContent })
|
|
4509
4509
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -4524,12 +4524,12 @@ function AdminFormModal({
|
|
|
4524
4524
|
] }, i)) }, col))
|
|
4525
4525
|
}
|
|
4526
4526
|
) })
|
|
4527
|
-
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4527
|
+
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalContent, { className: contentClassName, children }),
|
|
4528
4528
|
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
|
|
4529
4529
|
]
|
|
4530
4530
|
}
|
|
4531
4531
|
),
|
|
4532
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4532
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
|
|
4533
4533
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
|
|
4534
4534
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
4535
4535
|
footerStatus,
|
|
@@ -4611,7 +4611,7 @@ var SheetContent = _react.forwardRef.call(void 0,
|
|
|
4611
4611
|
({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SheetPortal, { children: [
|
|
4612
4612
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SheetOverlay, {}),
|
|
4613
4613
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SheetPrimitive.Content, { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, sheetVariants({ side }), className), ...props, children: [
|
|
4614
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4614
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLD6NXVcjs.ViewportBreakpoints, { children }),
|
|
4615
4615
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
|
|
4616
4616
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "h-4 w-4" }),
|
|
4617
4617
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: "Close" })
|
|
@@ -5274,7 +5274,7 @@ var TabBar = _react.memo.call(void 0, function TabBarImpl({
|
|
|
5274
5274
|
// as tall as its neighbours at every breakpoint. No hover shade:
|
|
5275
5275
|
// the tab is the target, and the cursor passes through to it.
|
|
5276
5276
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5277
|
-
|
|
5277
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
5278
5278
|
{
|
|
5279
5279
|
as: "span",
|
|
5280
5280
|
"aria-hidden": true,
|
|
@@ -5804,7 +5804,7 @@ function EmbedViewerFrame({
|
|
|
5804
5804
|
const controllerRef = _react.useRef.call(void 0, null);
|
|
5805
5805
|
_react.useEffect.call(void 0, () => {
|
|
5806
5806
|
if (!fullscreenControl) return void 0;
|
|
5807
|
-
const controller = new (0,
|
|
5807
|
+
const controller = new (0, _chunkCEJDHCFZcjs.FullscreenSwitchController)({
|
|
5808
5808
|
target: () => frameRef.current,
|
|
5809
5809
|
onFullscreenChange: setIsFullscreen
|
|
5810
5810
|
});
|
|
@@ -5898,9 +5898,9 @@ var KIND_HEADING = {
|
|
|
5898
5898
|
design: "Claude Design"
|
|
5899
5899
|
};
|
|
5900
5900
|
function ClaudeEmbed({ url, kind = "artifact", title, height, loading = "lazy" }) {
|
|
5901
|
-
const { src: mirrorSrc, status } =
|
|
5901
|
+
const { src: mirrorSrc, status } = _chunkXCH7SPGIcjs.useClaudeMirrorSrc.call(void 0, url);
|
|
5902
5902
|
const isProbing = status === "probing";
|
|
5903
|
-
const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => (
|
|
5903
|
+
const embedUrl = isProbing ? null : _nullishCoalesce(mirrorSrc, () => ( _chunkNET74KSQcjs.toClaudeEmbedUrl.call(void 0, url)));
|
|
5904
5904
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5905
5905
|
EmbedViewerFrame,
|
|
5906
5906
|
{
|
|
@@ -5975,12 +5975,12 @@ function SlidesViewToggle({ view, onChange }) {
|
|
|
5975
5975
|
}
|
|
5976
5976
|
function FigmaEmbed({ url, title, height, loading = "lazy" }) {
|
|
5977
5977
|
const [view, setView] = _react.useState.call(void 0, "present");
|
|
5978
|
-
const isSlides = url ?
|
|
5979
|
-
const embedSrc = url ?
|
|
5978
|
+
const isSlides = url ? _chunkNET74KSQcjs.isFigmaSlidesUrl.call(void 0, url) : false;
|
|
5979
|
+
const embedSrc = url ? _chunkNET74KSQcjs.toFigmaEmbedUrl.call(void 0, url, { slidesView: view }) : null;
|
|
5980
5980
|
const originalUrl = (() => {
|
|
5981
5981
|
if (!url) return null;
|
|
5982
5982
|
try {
|
|
5983
|
-
const parsed = new URL(
|
|
5983
|
+
const parsed = new URL(_chunkNET74KSQcjs.toFigmaOriginalUrl.call(void 0, url));
|
|
5984
5984
|
const host = parsed.hostname.toLowerCase();
|
|
5985
5985
|
const okHost = host === "figma.com" || host.endsWith(".figma.com");
|
|
5986
5986
|
const okProtocol = parsed.protocol === "https:" || parsed.protocol === "http:";
|
|
@@ -6426,7 +6426,7 @@ var OGLinkPreview = ({
|
|
|
6426
6426
|
children: [
|
|
6427
6427
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-1.5 text-xs", children: [
|
|
6428
6428
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Favicon, { src: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`, size: "w-4 h-4" }),
|
|
6429
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6429
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { as: "span", className: "font-sans text-xs font-medium", children: name }),
|
|
6430
6430
|
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 })
|
|
6431
6431
|
] }),
|
|
6432
6432
|
kicker != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -6438,7 +6438,7 @@ var OGLinkPreview = ({
|
|
|
6438
6438
|
}
|
|
6439
6439
|
),
|
|
6440
6440
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6441
|
-
|
|
6441
|
+
_chunk2IFCRPNPcjs.TruncateText,
|
|
6442
6442
|
{
|
|
6443
6443
|
lines: 2,
|
|
6444
6444
|
className: "font-sans text-[15px] font-semibold leading-snug transition-colors group-hover:text-ods-accent",
|
|
@@ -6446,7 +6446,7 @@ var OGLinkPreview = ({
|
|
|
6446
6446
|
children: curatedTitle || domainToTitle(domain)
|
|
6447
6447
|
}
|
|
6448
6448
|
),
|
|
6449
|
-
curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6449
|
+
curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 2, tone: "secondary", className: "font-sans text-xs leading-normal", children: curatedDescription })
|
|
6450
6450
|
]
|
|
6451
6451
|
}
|
|
6452
6452
|
);
|
|
@@ -6579,8 +6579,8 @@ var OGLinkPreview = ({
|
|
|
6579
6579
|
children: [
|
|
6580
6580
|
/* @__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 }) }),
|
|
6581
6581
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
6582
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6583
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6582
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { className: "font-semibold transition-colors group-hover:text-ods-accent", children: title }),
|
|
6583
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { tone: "secondary", children: description })
|
|
6584
6584
|
] }),
|
|
6585
6585
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExternalLinkIcon, {})
|
|
6586
6586
|
]
|
|
@@ -6624,7 +6624,7 @@ var OGLinkPreview = ({
|
|
|
6624
6624
|
),
|
|
6625
6625
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
6626
6626
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6627
|
-
|
|
6627
|
+
_chunk2IFCRPNPcjs.TruncateText,
|
|
6628
6628
|
{
|
|
6629
6629
|
lines: 2,
|
|
6630
6630
|
className: "min-h-[calc(var(--font-line-space-h4-body)*2)] font-semibold transition-colors group-hover:text-ods-accent",
|
|
@@ -6633,7 +6633,7 @@ var OGLinkPreview = ({
|
|
|
6633
6633
|
}
|
|
6634
6634
|
),
|
|
6635
6635
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6636
|
-
|
|
6636
|
+
_chunk2IFCRPNPcjs.TruncateText,
|
|
6637
6637
|
{
|
|
6638
6638
|
lines: 2,
|
|
6639
6639
|
tone: "secondary",
|
|
@@ -6643,9 +6643,9 @@ var OGLinkPreview = ({
|
|
|
6643
6643
|
}
|
|
6644
6644
|
),
|
|
6645
6645
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2 text-xs text-ods-text-secondary", children: [
|
|
6646
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6646
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { as: "span", className: "text-xs font-medium text-current", children: effectiveData.siteName }),
|
|
6647
6647
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "\u2022" }),
|
|
6648
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6648
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { as: "span", className: "text-xs text-current", children: ogDomain }),
|
|
6649
6649
|
meta
|
|
6650
6650
|
] })
|
|
6651
6651
|
] })
|
|
@@ -6806,7 +6806,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
|
|
|
6806
6806
|
};
|
|
6807
6807
|
const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
|
|
6808
6808
|
const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6809
|
-
|
|
6809
|
+
_chunk22XAPV6Ncjs.Video,
|
|
6810
6810
|
{
|
|
6811
6811
|
url: item.src,
|
|
6812
6812
|
poster: item.poster ? displayImageSrc(item.poster) : void 0,
|
|
@@ -7001,7 +7001,7 @@ var formatTimeAgo = (timestamp) => {
|
|
|
7001
7001
|
return `${Math.floor(diffSeconds / 86400)}d ago`;
|
|
7002
7002
|
};
|
|
7003
7003
|
function RedditEmbedClient({ url, maxWidth = 700, rel }) {
|
|
7004
|
-
const postLinkRel =
|
|
7004
|
+
const postLinkRel = _chunkTQPQKBBLcjs.renderedLinkRel.call(void 0, rel, true);
|
|
7005
7005
|
const { redditProxyUrl } = useRichMarkdownRuntime();
|
|
7006
7006
|
const [redditData, setRedditData] = _react.useState.call(void 0, null);
|
|
7007
7007
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7239,7 +7239,7 @@ function RedditEmbedClient({ url, maxWidth = 700, rel }) {
|
|
|
7239
7239
|
width: m.width,
|
|
7240
7240
|
height: m.height
|
|
7241
7241
|
}));
|
|
7242
|
-
const formatNumber =
|
|
7242
|
+
const formatNumber = _chunkEQZXJUYVcjs.formatLargeNumber;
|
|
7243
7243
|
const truncateText = (text, maxLength = 600) => {
|
|
7244
7244
|
if (text.length <= maxLength) return text;
|
|
7245
7245
|
return text.slice(0, maxLength) + "...";
|
|
@@ -7333,7 +7333,7 @@ var UserIcon3 = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { wid
|
|
|
7333
7333
|
] });
|
|
7334
7334
|
var XIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2TEMEXDTcjs.XLogoIcon, { className: "h-5 w-5", color: "currentColor" });
|
|
7335
7335
|
function TwitterEmbedClient({ url, tweetId, maxWidth = 700, rel }) {
|
|
7336
|
-
const postLinkRel =
|
|
7336
|
+
const postLinkRel = _chunkTQPQKBBLcjs.renderedLinkRel.call(void 0, rel, true);
|
|
7337
7337
|
const { twitterProxyUrl } = useRichMarkdownRuntime();
|
|
7338
7338
|
const [tweetData, setTweetData] = _react.useState.call(void 0, null);
|
|
7339
7339
|
const [fetchLoading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7535,7 +7535,7 @@ function buildRichEmbedOverrides({
|
|
|
7535
7535
|
ogEndpointPath,
|
|
7536
7536
|
textSizes
|
|
7537
7537
|
}) {
|
|
7538
|
-
const standard =
|
|
7538
|
+
const standard = _chunkTQPQKBBLcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
|
|
7539
7539
|
return {
|
|
7540
7540
|
// Fence-language embeds (```youtube-embed etc.); everything else
|
|
7541
7541
|
// (mermaid, highlighted blocks, inline code) falls through to `standard`.
|
|
@@ -7545,7 +7545,7 @@ function buildRichEmbedOverrides({
|
|
|
7545
7545
|
const language = match ? match[1] : "";
|
|
7546
7546
|
const fenceText = () => String(children).replace(/\n$/, "").trim();
|
|
7547
7547
|
if (language === "youtube-embed") {
|
|
7548
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7548
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.Video, { kind: "youtube", url: fenceText() });
|
|
7549
7549
|
}
|
|
7550
7550
|
if (language === "reddit-embed") {
|
|
7551
7551
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
|
|
@@ -7586,7 +7586,7 @@ function buildRichEmbedOverrides({
|
|
|
7586
7586
|
"data-figma-url": figmaUrl
|
|
7587
7587
|
} = divProps;
|
|
7588
7588
|
if (className === "youtube-embed" && videoId) {
|
|
7589
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7589
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.Video, { kind: "youtube", url: videoId });
|
|
7590
7590
|
}
|
|
7591
7591
|
if (className === "reddit-embed" && postUrl) {
|
|
7592
7592
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
|
|
@@ -7671,14 +7671,14 @@ function buildRichEmbedOverrides({
|
|
|
7671
7671
|
// rich-markdown runtime (Supabase optimization on the hub, identity
|
|
7672
7672
|
// elsewhere). Guard against empty `![]()`.
|
|
7673
7673
|
img: ({ src, alt }) => {
|
|
7674
|
-
if (!
|
|
7674
|
+
if (!_chunkTQPQKBBLcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7675
7675
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
|
|
7676
7676
|
},
|
|
7677
7677
|
// Raw <video> tags in stored content (blog publisher injection) route
|
|
7678
7678
|
// to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
|
|
7679
7679
|
video: ({ src, poster, className }) => {
|
|
7680
|
-
if (!
|
|
7681
|
-
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,
|
|
7680
|
+
if (!_chunkTQPQKBBLcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7681
|
+
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, _chunk22XAPV6Ncjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
|
|
7682
7682
|
}
|
|
7683
7683
|
};
|
|
7684
7684
|
}
|
|
@@ -7786,7 +7786,7 @@ var processShortcodes = (content) => {
|
|
|
7786
7786
|
try {
|
|
7787
7787
|
const urlObj = new URL(url);
|
|
7788
7788
|
const hostname = urlObj.hostname.toLowerCase();
|
|
7789
|
-
const hostIs = (domain) =>
|
|
7789
|
+
const hostIs = (domain) => _chunkCEJDHCFZcjs.hostMatches.call(void 0, hostname, domain);
|
|
7790
7790
|
const isYouTubeVideo = hostIs("youtube.com") && urlObj.searchParams.has("v") || hostIs("youtu.be");
|
|
7791
7791
|
if (isYouTubeVideo || hostIs("reddit.com") || hostIs("twitter.com") || hostIs("x.com") || hostIs("figma.com")) {
|
|
7792
7792
|
return match;
|
|
@@ -7861,13 +7861,13 @@ var RichMarkdownInner = ({
|
|
|
7861
7861
|
},
|
|
7862
7862
|
[resolveLinkEndpointUrl, resolveSource]
|
|
7863
7863
|
);
|
|
7864
|
-
const textSizes = _react.useMemo.call(void 0, () =>
|
|
7864
|
+
const textSizes = _react.useMemo.call(void 0, () => _chunkTQPQKBBLcjs.resolveTextSizeConfig.call(void 0, "article"), []);
|
|
7865
7865
|
const componentOverrides = _react.useMemo.call(void 0,
|
|
7866
7866
|
() => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
|
|
7867
7867
|
[ogApiBaseUrl, ogEndpointPath, textSizes]
|
|
7868
7868
|
);
|
|
7869
7869
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7870
|
-
|
|
7870
|
+
_chunkTQPQKBBLcjs.MarkdownEngine,
|
|
7871
7871
|
{
|
|
7872
7872
|
content,
|
|
7873
7873
|
className,
|
|
@@ -7889,7 +7889,7 @@ var RichMarkdownRendererImpl = ({
|
|
|
7889
7889
|
className = "",
|
|
7890
7890
|
sectionIds,
|
|
7891
7891
|
onInternalLinkClick,
|
|
7892
|
-
brokenLinks =
|
|
7892
|
+
brokenLinks = _chunkTQPQKBBLcjs.NO_BROKEN_LINKS,
|
|
7893
7893
|
currentPath,
|
|
7894
7894
|
resolveSource = "openframe-docs",
|
|
7895
7895
|
resolveLinkEndpointUrl = "/api/docs/resolve-link",
|
|
@@ -8867,7 +8867,7 @@ function FilterModal({
|
|
|
8867
8867
|
const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _147 => _147.defaultSort]), () => ( "desc"));
|
|
8868
8868
|
const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _148 => _148.sort]), () => ( dateDefaultSort)));
|
|
8869
8869
|
const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _149 => _149.range]));
|
|
8870
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
8870
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkTQPQKBBLcjs.useScrollFade.call(void 0, );
|
|
8871
8871
|
const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
|
|
8872
8872
|
const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
|
|
8873
8873
|
_react.useEffect.call(void 0, () => {
|
|
@@ -8913,15 +8913,15 @@ function FilterModal({
|
|
|
8913
8913
|
const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
|
|
8914
8914
|
const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
|
|
8915
8915
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8916
|
-
|
|
8916
|
+
_chunkGZKWF6NHcjs.Modal,
|
|
8917
8917
|
{
|
|
8918
8918
|
isOpen,
|
|
8919
8919
|
onClose,
|
|
8920
8920
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "max-h-[90vh] max-w-none md:max-w-[min(42rem,calc(100vw-2rem))]", className),
|
|
8921
8921
|
children: [
|
|
8922
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8922
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: title }) }),
|
|
8923
8923
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8924
|
-
|
|
8924
|
+
_chunkGZKWF6NHcjs.ModalContent,
|
|
8925
8925
|
{
|
|
8926
8926
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
8927
8927
|
"flex min-h-0 flex-1 flex-col",
|
|
@@ -9013,12 +9013,12 @@ function FilterModal({
|
|
|
9013
9013
|
] })
|
|
9014
9014
|
}
|
|
9015
9015
|
),
|
|
9016
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9017
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9016
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTQPQKBBLcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
|
|
9017
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTQPQKBBLcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
|
|
9018
9018
|
] })
|
|
9019
9019
|
}
|
|
9020
9020
|
),
|
|
9021
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9021
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
|
|
9022
9022
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
|
|
9023
9023
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
|
|
9024
9024
|
] })
|
|
@@ -9080,7 +9080,7 @@ function renderAdvancedPageContainer({
|
|
|
9080
9080
|
};
|
|
9081
9081
|
const renderActions = () => {
|
|
9082
9082
|
if (!actions || actions.length === 0) return null;
|
|
9083
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9083
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.PageActions, { variant: getActionsVariant(), actions, menuActions });
|
|
9084
9084
|
};
|
|
9085
9085
|
const needsBottomPadding = actions && actions.length > 0 && getActionsVariant() === "primary-buttons";
|
|
9086
9086
|
const paddingClasses = {
|
|
@@ -9103,14 +9103,14 @@ function renderAdvancedPageContainer({
|
|
|
9103
9103
|
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: [
|
|
9104
9104
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
9105
9105
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9106
|
-
|
|
9106
|
+
_chunk2IFCRPNPcjs.BackButton,
|
|
9107
9107
|
{
|
|
9108
9108
|
onClick: backButton.onClick,
|
|
9109
9109
|
label: backButton.label,
|
|
9110
9110
|
className: "hidden content-md:inline-flex"
|
|
9111
9111
|
}
|
|
9112
9112
|
),
|
|
9113
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9113
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
9114
9114
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
9115
9115
|
] }),
|
|
9116
9116
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-2", children: [
|
|
@@ -9123,14 +9123,14 @@ function renderAdvancedPageContainer({
|
|
|
9123
9123
|
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: [
|
|
9124
9124
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
9125
9125
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9126
|
-
|
|
9126
|
+
_chunk2IFCRPNPcjs.BackButton,
|
|
9127
9127
|
{
|
|
9128
9128
|
onClick: backButton.onClick,
|
|
9129
9129
|
label: backButton.label,
|
|
9130
9130
|
className: "hidden content-md:inline-flex"
|
|
9131
9131
|
}
|
|
9132
9132
|
),
|
|
9133
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9133
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
9134
9134
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
9135
9135
|
] }),
|
|
9136
9136
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-3", children: [
|
|
@@ -9143,14 +9143,14 @@ function renderAdvancedPageContainer({
|
|
|
9143
9143
|
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: [
|
|
9144
9144
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
9145
9145
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9146
|
-
|
|
9146
|
+
_chunk2IFCRPNPcjs.BackButton,
|
|
9147
9147
|
{
|
|
9148
9148
|
onClick: backButton.onClick,
|
|
9149
9149
|
label: backButton.label,
|
|
9150
9150
|
className: "hidden content-md:inline-flex"
|
|
9151
9151
|
}
|
|
9152
9152
|
),
|
|
9153
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9153
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) })
|
|
9154
9154
|
] }),
|
|
9155
9155
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-4", children: [
|
|
9156
9156
|
headerActions,
|
|
@@ -9160,7 +9160,7 @@ function renderAdvancedPageContainer({
|
|
|
9160
9160
|
}
|
|
9161
9161
|
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: [
|
|
9162
9162
|
(title || subtitle) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
9163
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9163
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
9164
9164
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
9165
9165
|
] }),
|
|
9166
9166
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-3", children: [
|
|
@@ -9231,7 +9231,7 @@ function ListPageLayout({
|
|
|
9231
9231
|
}) {
|
|
9232
9232
|
const [mobileFilterOpen, setMobileFilterOpen] = _react.useState.call(void 0, false);
|
|
9233
9233
|
const [localSearchValue, setLocalSearchValue] = _react.useState.call(void 0, searchValue);
|
|
9234
|
-
const debouncedSearchValue =
|
|
9234
|
+
const debouncedSearchValue = _chunk3RYIF4OWcjs.useDebounce.call(void 0, localSearchValue, 500);
|
|
9235
9235
|
const [syncedSearchValue, setSyncedSearchValue] = _react.useState.call(void 0, searchValue);
|
|
9236
9236
|
if (syncedSearchValue !== searchValue) {
|
|
9237
9237
|
setSyncedSearchValue(searchValue);
|
|
@@ -9493,7 +9493,7 @@ var BenefitCardGrid = ({ children, className = "", columns = 2 }) => {
|
|
|
9493
9493
|
|
|
9494
9494
|
|
|
9495
9495
|
function PlatformBrowseButton({ item }) {
|
|
9496
|
-
const linkProps =
|
|
9496
|
+
const linkProps = _chunkTQPQKBBLcjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
|
|
9497
9497
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", linkProps, rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-4 w-4" }), children: [
|
|
9498
9498
|
"Browse ",
|
|
9499
9499
|
item.buttonText
|
|
@@ -9802,7 +9802,7 @@ function DashboardInfoCard({
|
|
|
9802
9802
|
if (percentage === void 0) return null;
|
|
9803
9803
|
if (percentageAsTag) {
|
|
9804
9804
|
const tagVariant = progressVariant === "warning" || progressVariant === "error" ? progressVariant : progressVariant === "success" ? "success" : "grey";
|
|
9805
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9805
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { variant: tagVariant, label: `${percentage}%` });
|
|
9806
9806
|
}
|
|
9807
9807
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: [
|
|
9808
9808
|
"(",
|
|
@@ -9872,7 +9872,7 @@ function DashboardInfoCard({
|
|
|
9872
9872
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk3ATAYP36cjs.cn.call(void 0, "truncate text-ods-text-primary text-h3 content-md:text-h2", valueClassName), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "block h-[1lh] w-24 rounded" }) : formattedValue }),
|
|
9873
9873
|
loading ? loadingShowsSubValue && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "block h-[1lh] w-16 rounded" }) }) : subValue && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: subValue }),
|
|
9874
9874
|
renderPercentage(),
|
|
9875
|
-
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9875
|
+
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.FloatingTooltip, { content: tooltip, side: "top", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "cursor-help text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFO6DOP6Mcjs.QuestionCircleIcon, { size: 20 }) }) })
|
|
9876
9876
|
] }),
|
|
9877
9877
|
caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "line-clamp-2 min-h-[2lh] text-ods-text-secondary text-h6", children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "block h-[1lh] w-32 rounded" }) : caption })
|
|
9878
9878
|
] }),
|
|
@@ -9960,10 +9960,10 @@ var OSTypeBadge = ({
|
|
|
9960
9960
|
if (!osType) {
|
|
9961
9961
|
return labelOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "text-ods-text-secondary", className), children: "Unknown" }) : null;
|
|
9962
9962
|
}
|
|
9963
|
-
const normalized =
|
|
9963
|
+
const normalized = _chunkCEJDHCFZcjs.normalizeOSType.call(void 0, osType);
|
|
9964
9964
|
if (!normalized && !labelOnly) return null;
|
|
9965
|
-
const label =
|
|
9966
|
-
const IconComponent =
|
|
9965
|
+
const label = _chunkCEJDHCFZcjs.getOSLabel.call(void 0, osType);
|
|
9966
|
+
const IconComponent = _chunkCEJDHCFZcjs.getOSIcon.call(void 0, osType);
|
|
9967
9967
|
if (iconOnly && IconComponent) {
|
|
9968
9968
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: _chunk3ATAYP36cjs.cn.call(void 0, iconSize, "text-ods-text-secondary", className) });
|
|
9969
9969
|
}
|
|
@@ -10000,7 +10000,7 @@ function DeviceCard({
|
|
|
10000
10000
|
}) {
|
|
10001
10001
|
const formatLastSeen = (lastSeen) => {
|
|
10002
10002
|
if (!lastSeen) return null;
|
|
10003
|
-
return
|
|
10003
|
+
return _chunkEQZXJUYVcjs.formatDateTimeYmd.call(void 0, lastSeen, null) || null;
|
|
10004
10004
|
};
|
|
10005
10005
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10006
10006
|
"div",
|
|
@@ -10059,7 +10059,7 @@ function DeviceCard({
|
|
|
10059
10059
|
] }),
|
|
10060
10060
|
(statusTag || device.lastSeen) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2", children: [
|
|
10061
10061
|
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10062
|
-
|
|
10062
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
10063
10063
|
{
|
|
10064
10064
|
variant: statusTag.variant,
|
|
10065
10065
|
icon: statusTag.icon,
|
|
@@ -10073,7 +10073,7 @@ function DeviceCard({
|
|
|
10073
10073
|
formatLastSeen(device.lastSeen)
|
|
10074
10074
|
] })
|
|
10075
10075
|
] }),
|
|
10076
|
-
device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10076
|
+
device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { variant: "outline", label: tag }, index)) })
|
|
10077
10077
|
]
|
|
10078
10078
|
}
|
|
10079
10079
|
);
|
|
@@ -10112,7 +10112,7 @@ function DataAttribution({ icon, source, lastUpdated, action }) {
|
|
|
10112
10112
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Separator3, {}),
|
|
10113
10113
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
10114
10114
|
"Last updated: ",
|
|
10115
|
-
lastUpdated ?
|
|
10115
|
+
lastUpdated ? _chunkEQZXJUYVcjs.formatDate.call(void 0, lastUpdated) : "Never"
|
|
10116
10116
|
] }),
|
|
10117
10117
|
action ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex content-sm:pl-[var(--spacing-system-xs)]", children: action }) : null
|
|
10118
10118
|
] });
|
|
@@ -10228,7 +10228,7 @@ function ComplianceLogo({
|
|
|
10228
10228
|
fallback = null,
|
|
10229
10229
|
className
|
|
10230
10230
|
}) {
|
|
10231
|
-
const standard =
|
|
10231
|
+
const standard = _chunkCEJDHCFZcjs.complianceStandardForName.call(void 0, ...names);
|
|
10232
10232
|
if (!standard) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: fallback });
|
|
10233
10233
|
const Official = standard.logo ? COMPLIANCE_LOGOS[standard.logo] : null;
|
|
10234
10234
|
return Official ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10306,7 +10306,7 @@ function FeatureCardGrid({
|
|
|
10306
10306
|
if (allCardsHaveNoBorders) {
|
|
10307
10307
|
finalCardClassName = "bg-transparent p-0 overflow-visible border-0 shadow-none rounded-none";
|
|
10308
10308
|
}
|
|
10309
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10309
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.Card, { className: `${finalCardClassName} ${className}`, children: Array.from({ length: rows }, (_, rowIndex) => {
|
|
10310
10310
|
const startIndex = rowIndex * itemsPerRow;
|
|
10311
10311
|
const rowItems = items.slice(startIndex, startIndex + itemsPerRow);
|
|
10312
10312
|
const isLastRow = rowIndex === rows - 1;
|
|
@@ -10340,7 +10340,7 @@ function FeatureCardGrid({
|
|
|
10340
10340
|
item.icon && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start justify-between", children: [
|
|
10341
10341
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, item.icon, { size: 80, color: item.iconColor }),
|
|
10342
10342
|
item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10343
|
-
|
|
10343
|
+
_chunk22XAPV6Ncjs.StatusBadge,
|
|
10344
10344
|
{
|
|
10345
10345
|
text: item.badge.text,
|
|
10346
10346
|
variant: item.badge.variant || "card",
|
|
@@ -10349,7 +10349,7 @@ function FeatureCardGrid({
|
|
|
10349
10349
|
)
|
|
10350
10350
|
] }),
|
|
10351
10351
|
!item.icon && item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-start justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10352
|
-
|
|
10352
|
+
_chunk22XAPV6Ncjs.StatusBadge,
|
|
10353
10353
|
{
|
|
10354
10354
|
text: item.badge.text,
|
|
10355
10355
|
variant: item.badge.variant || "card",
|
|
@@ -10505,7 +10505,7 @@ function FeatureList({
|
|
|
10505
10505
|
|
|
10506
10506
|
function SourceTooltip({ intro, sources, note, iconClassName, triggerAnchorProps }) {
|
|
10507
10507
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10508
|
-
|
|
10508
|
+
_chunkEQZXJUYVcjs.FloatingTooltip,
|
|
10509
10509
|
{
|
|
10510
10510
|
as: "span",
|
|
10511
10511
|
side: "top",
|
|
@@ -10910,7 +10910,7 @@ function OrganizationCard({
|
|
|
10910
10910
|
}
|
|
10911
10911
|
),
|
|
10912
10912
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start gap-3", children: [
|
|
10913
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10913
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.EntityImage, { src: fetchedImageUrl || organization.imageUrl, alt: organization.name }),
|
|
10914
10914
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center py-2", children: [
|
|
10915
10915
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "truncate text-ods-text-primary transition-colors text-h3", title: organization.name, children: organization.name }),
|
|
10916
10916
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10960,8 +10960,8 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
|
|
|
10960
10960
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
10961
10961
|
/* @__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 }),
|
|
10962
10962
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0", children: [
|
|
10963
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10964
|
-
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10963
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h3", children: title }),
|
|
10964
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: subtitle })
|
|
10965
10965
|
] })
|
|
10966
10966
|
] }),
|
|
10967
10967
|
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "self-start whitespace-nowrap rounded-full border border-ods-border bg-ods-bg px-3 py-1 font-semibold text-ods-text-primary text-h6", children: tag.label })
|
|
@@ -10971,8 +10971,8 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
|
|
|
10971
10971
|
}
|
|
10972
10972
|
function ServiceCardRowItem({ row }) {
|
|
10973
10973
|
const [revealed, setRevealed] = _react.useState.call(void 0, false);
|
|
10974
|
-
const { copy, copied } =
|
|
10975
|
-
const { ref: valueRef, isTruncated: valueTruncated } =
|
|
10974
|
+
const { copy, copied } = _chunkXCH7SPGIcjs.useCopyToClipboard.call(void 0, );
|
|
10975
|
+
const { ref: valueRef, isTruncated: valueTruncated } = _chunkR3TWQ3ZJcjs.useIsTruncated.call(void 0, row.value);
|
|
10976
10976
|
const actions = _react.useMemo.call(void 0,
|
|
10977
10977
|
() => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }),
|
|
10978
10978
|
[row]
|
|
@@ -10994,7 +10994,7 @@ function ServiceCardRowItem({ row }) {
|
|
|
10994
10994
|
),
|
|
10995
10995
|
children: [
|
|
10996
10996
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10997
|
-
|
|
10997
|
+
_chunkEQZXJUYVcjs.FloatingTooltip,
|
|
10998
10998
|
{
|
|
10999
10999
|
content: row.value,
|
|
11000
11000
|
side: "top",
|
|
@@ -11092,17 +11092,17 @@ function PersonCell({
|
|
|
11092
11092
|
const displayName = name || fallbackName;
|
|
11093
11093
|
const scale = PERSON_CELL_SIZE[size];
|
|
11094
11094
|
const row = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `group/person-cell flex min-w-0 items-center ${scale.gap}`, children: [
|
|
11095
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11095
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.SquareAvatar, { size: scale.avatar, src: _nullishCoalesce(avatarUrl, () => ( void 0)), alt: displayName, fallback: displayName }),
|
|
11096
11096
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
11097
11097
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11098
|
-
|
|
11098
|
+
_chunk2IFCRPNPcjs.TruncateText,
|
|
11099
11099
|
{
|
|
11100
11100
|
variant: scale.primary,
|
|
11101
11101
|
className: onClick ? "text-ods-accent group-hover/person-cell:underline" : void 0,
|
|
11102
11102
|
children: displayName
|
|
11103
11103
|
}
|
|
11104
11104
|
),
|
|
11105
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11105
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: secondary === void 0 ? "\xA0" : secondary || "\xB7" })
|
|
11106
11106
|
] })
|
|
11107
11107
|
] });
|
|
11108
11108
|
if (!onClick) return row;
|
|
@@ -11132,9 +11132,9 @@ function PeopleCell({ people, fallbackName = "Unassigned" }) {
|
|
|
11132
11132
|
);
|
|
11133
11133
|
}
|
|
11134
11134
|
const fullNames = people.map((p) => p.name || "Unknown").join(", ");
|
|
11135
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11135
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.FloatingTooltip, { content: fullNames, triggerClassName: "min-w-0 max-w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
11136
11136
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11137
|
-
|
|
11137
|
+
_chunkM7YZGRAVcjs.AvatarStack,
|
|
11138
11138
|
{
|
|
11139
11139
|
size: "sm",
|
|
11140
11140
|
slots: PEOPLE_CELL_STACK_SLOTS,
|
|
@@ -11142,7 +11142,7 @@ function PeopleCell({ people, fallbackName = "Unassigned" }) {
|
|
|
11142
11142
|
}
|
|
11143
11143
|
) }),
|
|
11144
11144
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "line-clamp-2 min-w-0 flex-1 break-words text-ods-text-primary text-h6", children: [
|
|
11145
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": true, children: people.map((p) =>
|
|
11145
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": true, children: people.map((p) => _chunkEQZXJUYVcjs.personFirstName.call(void 0, p.name, "Unknown")).join(" & ") }),
|
|
11146
11146
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: fullNames })
|
|
11147
11147
|
] })
|
|
11148
11148
|
] }) });
|
|
@@ -11788,7 +11788,7 @@ function TableHeader({
|
|
|
11788
11788
|
}
|
|
11789
11789
|
return sortDirection === "asc" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHI3EKZZZcjs.Arrow01UpIcon, { className: "h-4 w-4 text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOWIEQOCRcjs.Arrow01DownIcon, { className: "h-4 w-4 text-ods-accent" });
|
|
11790
11790
|
};
|
|
11791
|
-
const isLgUp = _nullishCoalesce(
|
|
11791
|
+
const isLgUp = _nullishCoalesce(_chunkMWLD6NXVcjs.useContentLgUp.call(void 0, ), () => ( false));
|
|
11792
11792
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
11793
11793
|
"div",
|
|
11794
11794
|
{
|
|
@@ -11845,7 +11845,7 @@ function TableHeader({
|
|
|
11845
11845
|
onFilterChange
|
|
11846
11846
|
}
|
|
11847
11847
|
),
|
|
11848
|
-
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11848
|
+
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCEJDHCFZcjs.InfoHint, { label: column.label, children: column.hint }) : null
|
|
11849
11849
|
] })
|
|
11850
11850
|
) : (
|
|
11851
11851
|
/* Non-filterable column — regular label with optional sort */
|
|
@@ -11871,7 +11871,7 @@ function TableHeader({
|
|
|
11871
11871
|
hint exists, so a hint-less header keeps its DOM. */
|
|
11872
11872
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
11873
11873
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
11874
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11874
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCEJDHCFZcjs.InfoHint, { label: column.label, children: column.hint })
|
|
11875
11875
|
] })
|
|
11876
11876
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
11877
11877
|
getSortIcon(column)
|
|
@@ -12393,7 +12393,7 @@ function Table({
|
|
|
12393
12393
|
}
|
|
12394
12394
|
),
|
|
12395
12395
|
!infiniteScroll && pagePagination && !cursorPagination && data.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mt-2 border-t border-ods-border pt-3", paginationClassName), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12396
|
-
|
|
12396
|
+
_chunkRO72PRQIcjs.Pagination,
|
|
12397
12397
|
{
|
|
12398
12398
|
currentPage: pagePagination.currentPage,
|
|
12399
12399
|
totalPages: pagePagination.totalPages,
|
|
@@ -12426,7 +12426,7 @@ function TableDescriptionCell({ text, className, maxLines = 3 }) {
|
|
|
12426
12426
|
|
|
12427
12427
|
// src/components/ui/table/table-timestamp-cell.tsx
|
|
12428
12428
|
|
|
12429
|
-
var formatLocalTimestamp = (date) =>
|
|
12429
|
+
var formatLocalTimestamp = (date) => _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0, date, _chunkEQZXJUYVcjs.VIEWER_TIMEZONE, "localeDateTime", { viewerLocale: true });
|
|
12430
12430
|
function formatTimestampValue(timestamp) {
|
|
12431
12431
|
if (timestamp instanceof Date) {
|
|
12432
12432
|
return formatLocalTimestamp(timestamp);
|
|
@@ -12662,7 +12662,7 @@ function QueryReportTable({
|
|
|
12662
12662
|
onThumbPointerMove,
|
|
12663
12663
|
onThumbPointerUp,
|
|
12664
12664
|
onThumbPointerCancel
|
|
12665
|
-
} =
|
|
12665
|
+
} = _chunkFQSXZC2Kcjs.useHorizontalScrollbar.call(void 0, );
|
|
12666
12666
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex w-full flex-col", isCompact ? "gap-0" : "gap-[var(--spacing-system-l)]", className), children: [
|
|
12667
12667
|
!isCompact && (title || headerActions || showExport && data.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between pt-[var(--spacing-system-l)]", children: [
|
|
12668
12668
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h2", children: title }),
|
|
@@ -13220,7 +13220,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13220
13220
|
// child of the cell.
|
|
13221
13221
|
_optionalChain([meta, 'optionalAccess', _235 => _235.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13222
13222
|
filterTrigger,
|
|
13223
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13223
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCEJDHCFZcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13224
13224
|
] }) : filterTrigger
|
|
13225
13225
|
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13226
13226
|
"div",
|
|
@@ -13245,7 +13245,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13245
13245
|
// centred on the row.
|
|
13246
13246
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13247
13247
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13248
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13248
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCEJDHCFZcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13249
13249
|
] })
|
|
13250
13250
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13251
13251
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -13465,7 +13465,7 @@ function PhoneInput({
|
|
|
13465
13465
|
placeholder = "Phone Number (optional)",
|
|
13466
13466
|
onKeyDown
|
|
13467
13467
|
}) {
|
|
13468
|
-
const { priority, others } = _react.useMemo.call(void 0, () =>
|
|
13468
|
+
const { priority, others } = _react.useMemo.call(void 0, () => _chunkCEJDHCFZcjs.getCountryPhoneData.call(void 0, ), []);
|
|
13469
13469
|
const selectedCountry = _react.useMemo.call(void 0,
|
|
13470
13470
|
() => [...priority, ...others].find((c) => c.code === countryCode),
|
|
13471
13471
|
[countryCode, priority, others]
|
|
@@ -13480,7 +13480,7 @@ function PhoneInput({
|
|
|
13480
13480
|
_optionalChain([onValidationChange, 'optionalCall', _248 => _248(false)]);
|
|
13481
13481
|
return;
|
|
13482
13482
|
}
|
|
13483
|
-
const invalid = !
|
|
13483
|
+
const invalid = !_chunkCEJDHCFZcjs.validatePhoneNumber.call(void 0, phone, countryCode);
|
|
13484
13484
|
setIsInvalid(invalid);
|
|
13485
13485
|
_optionalChain([onValidationChange, 'optionalCall', _249 => _249(invalid)]);
|
|
13486
13486
|
},
|
|
@@ -13500,7 +13500,7 @@ function PhoneInput({
|
|
|
13500
13500
|
}, []);
|
|
13501
13501
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 gap-2", children: [
|
|
13502
13502
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13503
|
-
|
|
13503
|
+
_chunk2IFCRPNPcjs.Select,
|
|
13504
13504
|
{
|
|
13505
13505
|
value: countryCode,
|
|
13506
13506
|
onValueChange: (val) => {
|
|
@@ -13511,14 +13511,14 @@ function PhoneInput({
|
|
|
13511
13511
|
},
|
|
13512
13512
|
disabled,
|
|
13513
13513
|
children: [
|
|
13514
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13514
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "w-[130px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { children: selectedCountry && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5", children: [
|
|
13515
13515
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.flag }),
|
|
13516
13516
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.dialCode })
|
|
13517
13517
|
] }) }) }),
|
|
13518
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13519
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13520
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13521
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13518
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { className: "max-h-[300px] !w-[280px]", children: [
|
|
13519
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectGroup, { children: priority.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) }),
|
|
13520
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectSeparator, {}),
|
|
13521
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectGroup, { children: others.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) })
|
|
13522
13522
|
] })
|
|
13523
13523
|
]
|
|
13524
13524
|
}
|
|
@@ -13550,7 +13550,7 @@ function PhoneInput({
|
|
|
13550
13550
|
] });
|
|
13551
13551
|
}
|
|
13552
13552
|
function CountryOption({ country }) {
|
|
13553
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13553
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: country.code, textValue: country.name, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2", children: [
|
|
13554
13554
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: country.flag }),
|
|
13555
13555
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary", children: country.dialCode }),
|
|
13556
13556
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-block max-w-[140px] overflow-hidden text-ellipsis whitespace-nowrap", children: country.name })
|
|
@@ -13625,7 +13625,7 @@ function SearchInput({
|
|
|
13625
13625
|
}) {
|
|
13626
13626
|
const [internalValue, setInternalValue] = _react.useState.call(void 0, defaultValue);
|
|
13627
13627
|
const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
|
|
13628
|
-
const debouncedValue =
|
|
13628
|
+
const debouncedValue = _chunk3RYIF4OWcjs.useDebounce.call(void 0, currentValue, debounceMs);
|
|
13629
13629
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
13630
13630
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
13631
13631
|
const keyboardPadding = _chunkA6P6DHEZcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
@@ -13833,7 +13833,7 @@ function SearchInput({
|
|
|
13833
13833
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-shrink-0 text-ods-text-secondary transition-colors duration-200 group-has-[:focus]:text-ods-accent [&_svg]:size-4 content-md:[&_svg]:size-6", children: startAdornment !== void 0 ? startAdornment : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, {}) }),
|
|
13834
13834
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden", children: [
|
|
13835
13835
|
visibleChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13836
|
-
|
|
13836
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
13837
13837
|
{
|
|
13838
13838
|
variant: chipVariantToTagVariant(chip.variant),
|
|
13839
13839
|
label: chip.label,
|
|
@@ -13929,7 +13929,7 @@ function SearchInput({
|
|
|
13929
13929
|
)
|
|
13930
13930
|
] }),
|
|
13931
13931
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13932
|
-
|
|
13932
|
+
_chunk2IFCRPNPcjs.HiddenTagsPopup,
|
|
13933
13933
|
{
|
|
13934
13934
|
ref: hiddenTagsPopupRef,
|
|
13935
13935
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
@@ -13949,7 +13949,7 @@ function SearchInput({
|
|
|
13949
13949
|
}
|
|
13950
13950
|
),
|
|
13951
13951
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: measureRef, "aria-hidden": "true", className: "pointer-events-none fixed -left-[9999px] top-0 flex gap-2", children: filterChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13952
|
-
|
|
13952
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
13953
13953
|
{
|
|
13954
13954
|
variant: chipVariantToTagVariant(chip.variant),
|
|
13955
13955
|
label: chip.label,
|
|
@@ -14162,7 +14162,7 @@ function TagSearchInput({
|
|
|
14162
14162
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, { className: "size-4 text-ods-text-secondary content-md:size-6" }) }),
|
|
14163
14163
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2", children: [
|
|
14164
14164
|
visibleTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14165
|
-
|
|
14165
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
14166
14166
|
{
|
|
14167
14167
|
variant: "outline",
|
|
14168
14168
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -14223,7 +14223,7 @@ function TagSearchInput({
|
|
|
14223
14223
|
}
|
|
14224
14224
|
),
|
|
14225
14225
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14226
|
-
|
|
14226
|
+
_chunk2IFCRPNPcjs.HiddenTagsPopup,
|
|
14227
14227
|
{
|
|
14228
14228
|
ref: hiddenTagsPopupRef,
|
|
14229
14229
|
items: hiddenTags,
|
|
@@ -14250,7 +14250,7 @@ function TagSearchInput({
|
|
|
14250
14250
|
"aria-hidden": "true",
|
|
14251
14251
|
className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
|
|
14252
14252
|
children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14253
|
-
|
|
14253
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
14254
14254
|
{
|
|
14255
14255
|
variant: "outline",
|
|
14256
14256
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -14313,8 +14313,8 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14313
14313
|
if (!trimmedUrl) return;
|
|
14314
14314
|
onSubmit({ text: text.trim(), url: trimmedUrl, rel });
|
|
14315
14315
|
};
|
|
14316
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14317
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14316
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose, className: "text-left md:max-w-[560px]", children: [
|
|
14317
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: editing ? "Edit link" : "Add link" }) }),
|
|
14318
14318
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14319
14319
|
"form",
|
|
14320
14320
|
{
|
|
@@ -14339,7 +14339,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14339
14339
|
),
|
|
14340
14340
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)]", children: [
|
|
14341
14341
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14342
|
-
|
|
14342
|
+
_chunkTQPQKBBLcjs.TabSelector,
|
|
14343
14343
|
{
|
|
14344
14344
|
label: "Search engines",
|
|
14345
14345
|
value: choice,
|
|
@@ -14356,7 +14356,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14356
14356
|
]
|
|
14357
14357
|
}
|
|
14358
14358
|
),
|
|
14359
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14359
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
|
|
14360
14360
|
editing ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onRemove, className: "flex-1", children: "Remove link" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, className: "flex-1", children: "Cancel" }),
|
|
14361
14361
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "submit", form: formId, variant: "accent", disabled: !trimmedUrl, className: "flex-1", children: editing ? "Save" : "Add link" })
|
|
14362
14362
|
] })
|
|
@@ -14396,7 +14396,7 @@ function useMarkdownLinkCommand() {
|
|
|
14396
14396
|
buttonProps: { "aria-label": "Add or edit a link (ctrl + l)", title: "Add or edit a link (ctrl + l)" },
|
|
14397
14397
|
icon: command.icon,
|
|
14398
14398
|
execute: (state, api) => {
|
|
14399
|
-
const existing =
|
|
14399
|
+
const existing = _chunkTQPQKBBLcjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
|
|
14400
14400
|
setPending(
|
|
14401
14401
|
existing ? {
|
|
14402
14402
|
api,
|
|
@@ -14427,7 +14427,7 @@ function useMarkdownLinkCommand() {
|
|
|
14427
14427
|
initial: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _306 => _306.initial]), () => ( EMPTY_LINK)),
|
|
14428
14428
|
editing: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _307 => _307.editing]), () => ( false)),
|
|
14429
14429
|
onSubmit: (link) => {
|
|
14430
|
-
if (pending) write(pending,
|
|
14430
|
+
if (pending) write(pending, _chunkTQPQKBBLcjs.formatMarkdownLink.call(void 0, link));
|
|
14431
14431
|
},
|
|
14432
14432
|
onRemove: () => {
|
|
14433
14433
|
if (pending) write(pending, pending.initial.text);
|
|
@@ -14579,7 +14579,7 @@ function MarkdownEditor({
|
|
|
14579
14579
|
setUploadProgress(`Uploading ${file.name}...`);
|
|
14580
14580
|
try {
|
|
14581
14581
|
const url = await onUploadFile(file);
|
|
14582
|
-
const isImage =
|
|
14582
|
+
const isImage = _chunk22XAPV6Ncjs.fileMediaType.call(void 0, file) === "image";
|
|
14583
14583
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
14584
14584
|
insertTextAtCursor(markdown);
|
|
14585
14585
|
_optionalChain([onFileUploaded, 'optionalCall', _310 => _310(url, file.name)]);
|
|
@@ -14709,7 +14709,7 @@ function MarkdownEditor({
|
|
|
14709
14709
|
type: "file",
|
|
14710
14710
|
className: "hidden",
|
|
14711
14711
|
onChange: handleFileInputChange,
|
|
14712
|
-
accept: `${
|
|
14712
|
+
accept: `${_chunk22XAPV6Ncjs.IMAGE_FILE_ACCEPT},.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.zip,.txt`
|
|
14713
14713
|
}
|
|
14714
14714
|
),
|
|
14715
14715
|
!MDEditor && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-64 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin" }) }),
|
|
@@ -15111,7 +15111,7 @@ function matchesAccept2(file, accept) {
|
|
|
15111
15111
|
return patterns.some((pattern) => {
|
|
15112
15112
|
if (pattern.startsWith(".")) return fileName.endsWith(pattern);
|
|
15113
15113
|
if (pattern.endsWith("/*"))
|
|
15114
|
-
return fileType.startsWith(pattern.slice(0, -1)) ||
|
|
15114
|
+
return fileType.startsWith(pattern.slice(0, -1)) || _chunk22XAPV6Ncjs.fileMediaType.call(void 0, file) === pattern.slice(0, -2);
|
|
15115
15115
|
return fileType === pattern;
|
|
15116
15116
|
});
|
|
15117
15117
|
}
|
|
@@ -15119,7 +15119,7 @@ function ImageUploader({
|
|
|
15119
15119
|
value,
|
|
15120
15120
|
onChange,
|
|
15121
15121
|
onRemove,
|
|
15122
|
-
accept =
|
|
15122
|
+
accept = _chunk22XAPV6Ncjs.IMAGE_FILE_ACCEPT,
|
|
15123
15123
|
maxSize = DEFAULT_MAX_SIZE,
|
|
15124
15124
|
label = "Cover Image",
|
|
15125
15125
|
description = "(Click Here or Drag and Drop)",
|
|
@@ -15139,7 +15139,7 @@ function ImageUploader({
|
|
|
15139
15139
|
const [pressed, setPressed] = _react.useState.call(void 0, false);
|
|
15140
15140
|
const [validationError, setValidationError] = _react.useState.call(void 0, null);
|
|
15141
15141
|
const interactive = !disabled && !loading;
|
|
15142
|
-
const resolvedValue =
|
|
15142
|
+
const resolvedValue = _chunkR3TWQ3ZJcjs.useAuthedImageSrc.call(void 0, value);
|
|
15143
15143
|
const hasImage = Boolean(value);
|
|
15144
15144
|
const displayError = error || validationError || void 0;
|
|
15145
15145
|
const resolvedHint = hint === void 0 ? `Max. size: ${formatSize(maxSize)}` : hint;
|
|
@@ -15357,13 +15357,13 @@ function ColorPresetSelect({
|
|
|
15357
15357
|
...presets.map((p) => ({
|
|
15358
15358
|
id: p.key,
|
|
15359
15359
|
label: p.label,
|
|
15360
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15360
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ColorSwatch, { color: p.color }),
|
|
15361
15361
|
onClick: () => onChange({ color: p.color, preset: p.key })
|
|
15362
15362
|
})),
|
|
15363
15363
|
{
|
|
15364
15364
|
id: CUSTOM_PRESET_KEY,
|
|
15365
15365
|
label: "Custom",
|
|
15366
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15366
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
|
|
15367
15367
|
onClick: () => onChange({ color: value, preset: void 0 })
|
|
15368
15368
|
}
|
|
15369
15369
|
]
|
|
@@ -15380,7 +15380,7 @@ function ColorPresetSelect({
|
|
|
15380
15380
|
{
|
|
15381
15381
|
disabled,
|
|
15382
15382
|
"aria-label": `Color: ${displayLabel}`,
|
|
15383
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15383
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ColorSwatch, { color: displayColor }),
|
|
15384
15384
|
selectedLabel: displayLabel,
|
|
15385
15385
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15386
15386
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -15401,7 +15401,7 @@ function HexInputs({ value, onChange }) {
|
|
|
15401
15401
|
}
|
|
15402
15402
|
const commit = () => {
|
|
15403
15403
|
const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
|
|
15404
|
-
if (
|
|
15404
|
+
if (_chunkOJJ4RL2Tcjs.HEX_PATTERN.test(candidate)) onChange(candidate);
|
|
15405
15405
|
else setDraft(value);
|
|
15406
15406
|
};
|
|
15407
15407
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -15465,12 +15465,12 @@ function ChannelInput({
|
|
|
15465
15465
|
);
|
|
15466
15466
|
}
|
|
15467
15467
|
function RgbInputs({ value, onChange }) {
|
|
15468
|
-
const rgb = _nullishCoalesce(
|
|
15468
|
+
const rgb = _nullishCoalesce(_chunkOJJ4RL2Tcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
15469
15469
|
const update = (next) => {
|
|
15470
15470
|
const r = _nullishCoalesce(next.r, () => ( rgb.r));
|
|
15471
15471
|
const g = _nullishCoalesce(next.g, () => ( rgb.g));
|
|
15472
15472
|
const b = _nullishCoalesce(next.b, () => ( rgb.b));
|
|
15473
|
-
onChange(
|
|
15473
|
+
onChange(_chunkOJJ4RL2Tcjs.rgbToHex.call(void 0, r, g, b));
|
|
15474
15474
|
};
|
|
15475
15475
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
15476
15476
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
|
|
@@ -15479,14 +15479,14 @@ function RgbInputs({ value, onChange }) {
|
|
|
15479
15479
|
] });
|
|
15480
15480
|
}
|
|
15481
15481
|
function HslInputs({ value, onChange }) {
|
|
15482
|
-
const rgb = _nullishCoalesce(
|
|
15483
|
-
const hsl =
|
|
15482
|
+
const rgb = _nullishCoalesce(_chunkOJJ4RL2Tcjs.hexToRgb.call(void 0, value), () => ( { r: 0, g: 0, b: 0 }));
|
|
15483
|
+
const hsl = _chunkOJJ4RL2Tcjs.rgbToHsl.call(void 0, rgb.r, rgb.g, rgb.b);
|
|
15484
15484
|
const update = (next) => {
|
|
15485
15485
|
const h = _nullishCoalesce(next.h, () => ( hsl.h));
|
|
15486
15486
|
const s = _nullishCoalesce(next.s, () => ( hsl.s));
|
|
15487
15487
|
const l = _nullishCoalesce(next.l, () => ( hsl.l));
|
|
15488
|
-
const out =
|
|
15489
|
-
onChange(
|
|
15488
|
+
const out = _chunkOJJ4RL2Tcjs.hslToRgb.call(void 0, h, s, l);
|
|
15489
|
+
onChange(_chunkOJJ4RL2Tcjs.rgbToHex.call(void 0, out.r, out.g, out.b));
|
|
15490
15490
|
};
|
|
15491
15491
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
15492
15492
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
|
|
@@ -15512,7 +15512,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
15512
15512
|
{
|
|
15513
15513
|
disabled,
|
|
15514
15514
|
"aria-label": "Pick custom color",
|
|
15515
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15515
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ColorSwatch, { color: value }),
|
|
15516
15516
|
selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
|
|
15517
15517
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15518
15518
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -15576,7 +15576,7 @@ function TicketStatusConfigRow({
|
|
|
15576
15576
|
isDragging,
|
|
15577
15577
|
moveButtons
|
|
15578
15578
|
}) {
|
|
15579
|
-
const dragAndDropEnabled =
|
|
15579
|
+
const dragAndDropEnabled = _chunkFQSXZC2Kcjs.useDragAndDropEnabled.call(void 0, );
|
|
15580
15580
|
const nameInputId = _react.useId.call(void 0, );
|
|
15581
15581
|
const isSystem = variant === "system";
|
|
15582
15582
|
const isCustomColor = !isSystem && presetKey === void 0;
|
|
@@ -15585,7 +15585,7 @@ function TicketStatusConfigRow({
|
|
|
15585
15585
|
const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
|
|
15586
15586
|
const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
|
|
15587
15587
|
const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15588
|
-
|
|
15588
|
+
_chunkPE26VSWTcjs.TicketStatusTag,
|
|
15589
15589
|
{
|
|
15590
15590
|
status: statusKey,
|
|
15591
15591
|
label: name || " ",
|
|
@@ -15692,7 +15692,7 @@ function TicketStatusConfigRow({
|
|
|
15692
15692
|
),
|
|
15693
15693
|
children: [
|
|
15694
15694
|
!isSystem && moveButtons,
|
|
15695
|
-
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,
|
|
15695
|
+
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, _chunkE4LA4BEHcjs.TouchFriendlyTooltip, { content: systemTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15696
15696
|
"button",
|
|
15697
15697
|
{
|
|
15698
15698
|
type: "button",
|
|
@@ -15700,7 +15700,7 @@ function TicketStatusConfigRow({
|
|
|
15700
15700
|
className: "flex size-6 items-center justify-center text-ods-text-secondary outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
15701
15701
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRHC2FRVEcjs.InfoCircleIcon, { size: 24 })
|
|
15702
15702
|
}
|
|
15703
|
-
) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15703
|
+
) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE4LA4BEHcjs.TouchFriendlyTooltip, { content: deleteDisabled ? deleteDisabledReason : void 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15704
15704
|
_chunk2QMBXGMQcjs.Button,
|
|
15705
15705
|
{
|
|
15706
15706
|
type: "button",
|
|
@@ -15739,7 +15739,7 @@ var SKELETON_COLUMNS = 6;
|
|
|
15739
15739
|
function TestResultsSkeleton({
|
|
15740
15740
|
region = true
|
|
15741
15741
|
} = {}) {
|
|
15742
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNO5UJLLQcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15742
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNO5UJLLQcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTQPQKBBLcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
|
|
15743
15743
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-[160px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-4 w-3/4 rounded-sm" }) }, `skeleton-header-${i}`)) }),
|
|
15744
15744
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden rounded-[6px] border border-ods-border bg-ods-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[66px] items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)] content-md:h-[78px]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[160px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-5 w-3/4 rounded-sm" }) }, `skeleton-cell-${i}`)) }) })
|
|
15745
15745
|
] }) }) });
|
|
@@ -15774,13 +15774,13 @@ function TestResultsTable({ rows, loading }) {
|
|
|
15774
15774
|
if (loading) {
|
|
15775
15775
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
|
|
15776
15776
|
}
|
|
15777
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15777
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTQPQKBBLcjs.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: [
|
|
15778
15778
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
|
|
15779
15779
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
|
|
15780
15780
|
] }) }) });
|
|
15781
15781
|
}
|
|
15782
15782
|
function TestRunErrorBanner({ error, className }) {
|
|
15783
|
-
const { copy } =
|
|
15783
|
+
const { copy } = _chunkXCH7SPGIcjs.useCopyToClipboard.call(void 0, { successDescription: "Error message copied to clipboard" });
|
|
15784
15784
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15785
15785
|
"div",
|
|
15786
15786
|
{
|
|
@@ -15836,7 +15836,7 @@ var TEST_RUN_STATUS_TAGS = {
|
|
|
15836
15836
|
function TestRunStatusStat({ status, className }) {
|
|
15837
15837
|
const tag = status === "idle" ? null : TEST_RUN_STATUS_TAGS[status];
|
|
15838
15838
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-w-0 flex-col items-start justify-center gap-[var(--spacing-system-xxs)]", className), children: [
|
|
15839
|
-
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15839
|
+
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { label: tag.label, variant: tag.variant, className: "pointer-events-none" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: "-" }),
|
|
15840
15840
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: "Status" })
|
|
15841
15841
|
] });
|
|
15842
15842
|
}
|
|
@@ -15880,7 +15880,7 @@ function useTestRunState(campaign) {
|
|
|
15880
15880
|
const stopReason = _nullishCoalesce(campaign.stopReason, () => ( "completed"));
|
|
15881
15881
|
const status = isActive ? "running" : hasRun && isFinished ? stopReason === "completed" ? firstError ? "error" : "success" : stopReason : "idle";
|
|
15882
15882
|
const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
|
|
15883
|
-
const startedLabel = showTiming && campaign.startedAt ?
|
|
15883
|
+
const startedLabel = showTiming && campaign.startedAt ? _chunkGZKWF6NHcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
|
|
15884
15884
|
const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
|
|
15885
15885
|
const displayRows = _react.useMemo.call(void 0,
|
|
15886
15886
|
() => campaign.results.map(
|
|
@@ -15919,7 +15919,7 @@ function TicketAttachmentsList({ attachments, className, size = "default" }) {
|
|
|
15919
15919
|
),
|
|
15920
15920
|
children: [
|
|
15921
15921
|
attachment.thumbnailSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15922
|
-
|
|
15922
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
15923
15923
|
{
|
|
15924
15924
|
src: attachment.thumbnailSrc,
|
|
15925
15925
|
alt: attachment.fileName,
|
|
@@ -16012,7 +16012,7 @@ function TicketNoteCard({ note, onEdit, onDelete, className }) {
|
|
|
16012
16012
|
};
|
|
16013
16013
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex items-start gap-4 rounded-[6px] p-3", "border border-ods-border bg-ods-card", className), children: [
|
|
16014
16014
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16015
|
-
|
|
16015
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
16016
16016
|
{
|
|
16017
16017
|
src: note.authorAvatar,
|
|
16018
16018
|
alt: note.authorName,
|
|
@@ -16188,7 +16188,7 @@ function TicketInfoSection({
|
|
|
16188
16188
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-2 items-center gap-4 border-b border-ods-border bg-ods-card px-4 py-3 content-lg:grid-cols-[1fr_1fr_1fr_auto]", children: [
|
|
16189
16189
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2", children: [
|
|
16190
16190
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16191
|
-
|
|
16191
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
16192
16192
|
{
|
|
16193
16193
|
src: _optionalChain([organization, 'optionalAccess', _346 => _346.imageSrc]),
|
|
16194
16194
|
alt: _optionalChain([organization, 'optionalAccess', _347 => _347.name]),
|
|
@@ -16218,7 +16218,7 @@ function TicketInfoSection({
|
|
|
16218
16218
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _350 => _350.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _351 => _351.icon]), onClick: _optionalChain([device, 'optionalAccess', _352 => _352.onClick]) }),
|
|
16219
16219
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
16220
16220
|
(status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16221
|
-
|
|
16221
|
+
_chunkPE26VSWTcjs.TicketStatusTag,
|
|
16222
16222
|
{
|
|
16223
16223
|
status: _nullishCoalesce(status, () => ( "")),
|
|
16224
16224
|
label: statusLabel,
|
|
@@ -16257,9 +16257,9 @@ function TicketInfoSection({
|
|
|
16257
16257
|
expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16258
16258
|
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" }) }),
|
|
16259
16259
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
|
|
16260
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16260
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTQPQKBBLcjs.SimpleMarkdownRenderer, { content: description }),
|
|
16261
16261
|
attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
|
|
16262
|
-
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,
|
|
16262
|
+
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, _chunkEQZXJUYVcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
|
|
16263
16263
|
(notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16264
16264
|
TicketNotesSection,
|
|
16265
16265
|
{
|
|
@@ -16282,8 +16282,8 @@ function renderTicketStatusOption(option, isSelected) {
|
|
|
16282
16282
|
const { label, color } = option;
|
|
16283
16283
|
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: [
|
|
16284
16284
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16285
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16286
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16285
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ColorSwatch, { color }),
|
|
16286
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16287
16287
|
] }),
|
|
16288
16288
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16289
16289
|
] });
|
|
@@ -16292,8 +16292,8 @@ function renderTicketAssigneeOption(option, isSelected) {
|
|
|
16292
16292
|
const { label, imageUrl } = option;
|
|
16293
16293
|
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: [
|
|
16294
16294
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16295
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16296
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16295
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "round" }),
|
|
16296
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16297
16297
|
] }),
|
|
16298
16298
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16299
16299
|
] });
|
|
@@ -16327,9 +16327,9 @@ function TakeOverTicketModal({
|
|
|
16327
16327
|
if (!selectedStatusId || !assigneeId || isPending) return;
|
|
16328
16328
|
onConfirm({ statusId: selectedStatusId, assigneeId });
|
|
16329
16329
|
};
|
|
16330
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16330
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16331
16331
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16332
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16332
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: "Take Over Ticket" }) }),
|
|
16333
16333
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16334
16334
|
"The ticket ",
|
|
16335
16335
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16337,19 +16337,19 @@ function TakeOverTicketModal({
|
|
|
16337
16337
|
] }),
|
|
16338
16338
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16339
16339
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16340
|
-
|
|
16340
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
16341
16341
|
{
|
|
16342
16342
|
label: "Status",
|
|
16343
16343
|
options: statusOptions,
|
|
16344
16344
|
value: selectedStatusId,
|
|
16345
16345
|
onChange: setStatusId,
|
|
16346
16346
|
placeholder: "Select Status",
|
|
16347
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16347
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16348
16348
|
renderOption: renderTicketStatusOption
|
|
16349
16349
|
}
|
|
16350
16350
|
) }),
|
|
16351
16351
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16352
|
-
|
|
16352
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
16353
16353
|
{
|
|
16354
16354
|
label: "Assigned",
|
|
16355
16355
|
options: assigneeOptions,
|
|
@@ -16358,7 +16358,7 @@ function TakeOverTicketModal({
|
|
|
16358
16358
|
placeholder: "Select Technician",
|
|
16359
16359
|
loading: assigneesLoading,
|
|
16360
16360
|
startAdornment: selectedAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16361
|
-
|
|
16361
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
16362
16362
|
{
|
|
16363
16363
|
src: selectedAssignee.imageUrl,
|
|
16364
16364
|
alt: selectedAssignee.label,
|
|
@@ -16371,7 +16371,7 @@ function TakeOverTicketModal({
|
|
|
16371
16371
|
}
|
|
16372
16372
|
) })
|
|
16373
16373
|
] }),
|
|
16374
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16374
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
|
|
16375
16375
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16376
16376
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16377
16377
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16430,9 +16430,9 @@ function ReopenTicketModal({
|
|
|
16430
16430
|
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
16431
16431
|
});
|
|
16432
16432
|
};
|
|
16433
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16433
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16434
16434
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16435
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16435
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16436
16436
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16437
16437
|
"The ticket ",
|
|
16438
16438
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16440,19 +16440,19 @@ function ReopenTicketModal({
|
|
|
16440
16440
|
] }),
|
|
16441
16441
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16442
16442
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16443
|
-
|
|
16443
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
16444
16444
|
{
|
|
16445
16445
|
label: "Status",
|
|
16446
16446
|
options: statusOptions,
|
|
16447
16447
|
value: selectedStatusId,
|
|
16448
16448
|
onChange: setStatusId,
|
|
16449
16449
|
placeholder: "Select Status",
|
|
16450
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16450
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16451
16451
|
renderOption: renderTicketStatusOption
|
|
16452
16452
|
}
|
|
16453
16453
|
) }),
|
|
16454
16454
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16455
|
-
|
|
16455
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
16456
16456
|
{
|
|
16457
16457
|
label: "Assigned",
|
|
16458
16458
|
options: assigneeOptions,
|
|
@@ -16461,7 +16461,7 @@ function ReopenTicketModal({
|
|
|
16461
16461
|
placeholder: "Select Technician",
|
|
16462
16462
|
loading: assigneesLoading,
|
|
16463
16463
|
startAdornment: selectedAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16464
|
-
|
|
16464
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
16465
16465
|
{
|
|
16466
16466
|
src: selectedAssignee.imageUrl,
|
|
16467
16467
|
alt: selectedAssignee.label,
|
|
@@ -16485,7 +16485,7 @@ function ReopenTicketModal({
|
|
|
16485
16485
|
disabled: isPending
|
|
16486
16486
|
}
|
|
16487
16487
|
) }),
|
|
16488
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16488
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
|
|
16489
16489
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16490
16490
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16491
16491
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16534,9 +16534,9 @@ function ReopenTicketRequestModal({
|
|
|
16534
16534
|
...showHandoffOption ? { handoffToTechnician: handoff } : {}
|
|
16535
16535
|
});
|
|
16536
16536
|
};
|
|
16537
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16537
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16538
16538
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16539
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16539
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16540
16540
|
/* @__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." }),
|
|
16541
16541
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16542
16542
|
Textarea,
|
|
@@ -16560,7 +16560,7 @@ function ReopenTicketRequestModal({
|
|
|
16560
16560
|
disabled: isPending
|
|
16561
16561
|
}
|
|
16562
16562
|
),
|
|
16563
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16563
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
|
|
16564
16564
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
|
|
16565
16565
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
|
|
16566
16566
|
] })
|
|
@@ -16717,7 +16717,7 @@ function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, load
|
|
|
16717
16717
|
gap: COLUMN_GAP_PX
|
|
16718
16718
|
};
|
|
16719
16719
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rootRef, "aria-hidden": "true", className: _chunk3ATAYP36cjs.cn.call(void 0, "grid overflow-hidden", className), style: gridStyle, children: columnsToDraw ? columnsToDraw.map((column, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16720
|
-
|
|
16720
|
+
_chunkTQPQKBBLcjs.MarqueeWall,
|
|
16721
16721
|
{
|
|
16722
16722
|
axis: "y",
|
|
16723
16723
|
reverse: index % 2 === 1,
|
|
@@ -16817,7 +16817,7 @@ function LazyMount({
|
|
|
16817
16817
|
// src/components/ui/app-window-frame.tsx
|
|
16818
16818
|
|
|
16819
16819
|
function AppWindowFrame({ title, children, footer, agent, className, bodyClassName }) {
|
|
16820
|
-
const tint =
|
|
16820
|
+
const tint = _chunkOJJ4RL2Tcjs.useAgentTint.call(void 0, agent);
|
|
16821
16821
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16822
16822
|
"div",
|
|
16823
16823
|
{
|
|
@@ -16963,7 +16963,7 @@ function PhoneFrame({ dateLabel, timeLabel, children, className }) {
|
|
|
16963
16963
|
"div",
|
|
16964
16964
|
{
|
|
16965
16965
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "h-[617px] w-[299px] shrink-0 rounded-[48px] border border-ods-border bg-black p-2.5", className),
|
|
16966
|
-
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]",
|
|
16966
|
+
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]", _chunk2IFCRPNPcjs.DEVICE_WALLPAPER_CLASS), children: [
|
|
16967
16967
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16968
16968
|
"div",
|
|
16969
16969
|
{
|
|
@@ -17129,7 +17129,7 @@ var TRIAL_TERM_ICONS = {
|
|
|
17129
17129
|
};
|
|
17130
17130
|
var DEFAULT_TRIAL_TERMS = ["cancel", "length", "noContract"];
|
|
17131
17131
|
function trialBenefits(trialDays, terms = DEFAULT_TRIAL_TERMS) {
|
|
17132
|
-
const labels =
|
|
17132
|
+
const labels = _chunkCEJDHCFZcjs.trialLabels.call(void 0, trialDays);
|
|
17133
17133
|
return terms.flatMap((term) => {
|
|
17134
17134
|
const label = labels[term];
|
|
17135
17135
|
return label ? [{ icon: TRIAL_TERM_ICONS[term], label }] : [];
|
|
@@ -17207,7 +17207,7 @@ function AnalyzingState({ label, className }) {
|
|
|
17207
17207
|
}) }),
|
|
17208
17208
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 text-center text-ods-text-secondary text-h4", children: [
|
|
17209
17209
|
label,
|
|
17210
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17210
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ChatTypingIndicator, { "aria-hidden": true, size: "sm", dotClassName: "bg-ods-text-secondary motion-reduce:animate-none" })
|
|
17211
17211
|
] })
|
|
17212
17212
|
] });
|
|
17213
17213
|
}
|
|
@@ -17221,7 +17221,7 @@ var INCIDENT_TONE = {
|
|
|
17221
17221
|
approved: "success"
|
|
17222
17222
|
};
|
|
17223
17223
|
function IncidentStatusLine({ status, label, className }) {
|
|
17224
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17224
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.StatusLine, { tone: INCIDENT_TONE[status], label, className });
|
|
17225
17225
|
}
|
|
17226
17226
|
function SourceTag({ children }) {
|
|
17227
17227
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 rounded-md border border-ods-border px-2 py-1 text-ods-text-secondary text-h5", children });
|
|
@@ -17337,8 +17337,8 @@ function SnapCarousel({
|
|
|
17337
17337
|
}) {
|
|
17338
17338
|
const trackRef = _react.useRef.call(void 0, null);
|
|
17339
17339
|
const [index, setIndex] = _react.useState.call(void 0, 0);
|
|
17340
|
-
const { ref: viewRef, inView } =
|
|
17341
|
-
const auto =
|
|
17340
|
+
const { ref: viewRef, inView } = _chunk3RYIF4OWcjs.useInView.call(void 0, { threshold: 0.5 });
|
|
17341
|
+
const auto = _chunk3RYIF4OWcjs.useAutoplay.call(void 0, inView);
|
|
17342
17342
|
const count = items.length;
|
|
17343
17343
|
const slideStep = _react.useCallback.call(void 0, () => {
|
|
17344
17344
|
const first = _optionalChain([trackRef, 'access', _363 => _363.current, 'optionalAccess', _364 => _364.firstElementChild]);
|
|
@@ -17369,7 +17369,7 @@ function SnapCarousel({
|
|
|
17369
17369
|
}, [count, slideStep]);
|
|
17370
17370
|
const canAutoAdvance = autoAdvanceMs > 0 && count > 1;
|
|
17371
17371
|
const playing = auto.playing && canAutoAdvance;
|
|
17372
|
-
const ranMs =
|
|
17372
|
+
const ranMs = _chunkXCH7SPGIcjs.useResumableTimeout.call(void 0, {
|
|
17373
17373
|
running: playing,
|
|
17374
17374
|
durationMs: autoAdvanceMs,
|
|
17375
17375
|
resetKey: index,
|
|
@@ -17730,10 +17730,10 @@ function AccountDetailsFields({
|
|
|
17730
17730
|
onKeyDown,
|
|
17731
17731
|
layout = "stacked"
|
|
17732
17732
|
}) {
|
|
17733
|
-
const firstNameErr =
|
|
17734
|
-
const lastNameErr =
|
|
17735
|
-
const passwordErr =
|
|
17736
|
-
const confirmErr =
|
|
17733
|
+
const firstNameErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _365 => _365.firstName]), firstName);
|
|
17734
|
+
const lastNameErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _366 => _366.lastName]), lastName);
|
|
17735
|
+
const passwordErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _367 => _367.password]), password);
|
|
17736
|
+
const confirmErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _368 => _368.confirmPassword]), confirmPassword);
|
|
17737
17737
|
const names = [
|
|
17738
17738
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17739
17739
|
_chunkHTRILBJDcjs.Input,
|
|
@@ -17951,16 +17951,16 @@ function LabeledDivider({ label }) {
|
|
|
17951
17951
|
var PROVIDER_META = {
|
|
17952
17952
|
openframe: {
|
|
17953
17953
|
name: "OpenFrame",
|
|
17954
|
-
Icon:
|
|
17954
|
+
Icon: _chunkR3TWQ3ZJcjs.requireIcon.call(void 0, {
|
|
17955
17955
|
set: "OpenframeLogoIcon",
|
|
17956
17956
|
color: "var(--color-text-primary)",
|
|
17957
17957
|
secondaryColor: "var(--color-accent-primary)",
|
|
17958
17958
|
ownColor: true
|
|
17959
17959
|
})
|
|
17960
17960
|
},
|
|
17961
|
-
google: { name: "Google", Icon:
|
|
17962
|
-
microsoft: { name: "Microsoft", Icon:
|
|
17963
|
-
apple: { name: "Apple", Icon:
|
|
17961
|
+
google: { name: "Google", Icon: _chunkR3TWQ3ZJcjs.requireIcon.call(void 0, { set: "GoogleLogoIcon" }) },
|
|
17962
|
+
microsoft: { name: "Microsoft", Icon: _chunkR3TWQ3ZJcjs.requireIcon.call(void 0, { set: "MicrosoftLogoIcon" }) },
|
|
17963
|
+
apple: { name: "Apple", Icon: _chunkR3TWQ3ZJcjs.requireIcon.call(void 0, { set: "AppleLogoIcon" }) }
|
|
17964
17964
|
};
|
|
17965
17965
|
function SsoProviderButtons({
|
|
17966
17966
|
providers,
|
|
@@ -17990,7 +17990,7 @@ function SsoProviderButtons({
|
|
|
17990
17990
|
// where a long organization name would otherwise push the label out of a phone-width
|
|
17991
17991
|
// button. `block` over its inline-flex, because an ellipsis only renders on a block box.
|
|
17992
17992
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17993
|
-
|
|
17993
|
+
_chunk22XAPV6Ncjs.StatusBadge,
|
|
17994
17994
|
{
|
|
17995
17995
|
text: tag,
|
|
17996
17996
|
variant: "button",
|
|
@@ -18049,7 +18049,7 @@ function CompleteAccountForm({
|
|
|
18049
18049
|
),
|
|
18050
18050
|
children: [
|
|
18051
18051
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18052
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18052
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18053
18053
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18054
18054
|
] }),
|
|
18055
18055
|
ssoProviders && ssoProviders.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -18180,9 +18180,9 @@ function CreateOrganizationForm({
|
|
|
18180
18180
|
}) {
|
|
18181
18181
|
const hasSso = !!ssoProviders && ssoProviders.length > 0;
|
|
18182
18182
|
const fieldsDisabled = disabled || loading;
|
|
18183
|
-
const emailErr =
|
|
18184
|
-
const orgNameErr =
|
|
18185
|
-
const domainErr =
|
|
18183
|
+
const emailErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _370 => _370.email]), _nullishCoalesce(email, () => ( "")));
|
|
18184
|
+
const orgNameErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _371 => _371.organizationName]), organizationName);
|
|
18185
|
+
const domainErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _372 => _372.domain]), domain);
|
|
18186
18186
|
const handleKeyDown = (event) => {
|
|
18187
18187
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18188
18188
|
onSubmit();
|
|
@@ -18197,7 +18197,7 @@ function CreateOrganizationForm({
|
|
|
18197
18197
|
),
|
|
18198
18198
|
children: [
|
|
18199
18199
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18200
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18200
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18201
18201
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18202
18202
|
] }),
|
|
18203
18203
|
email === void 0 ? null : emailReadOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.Input, { type: "email", label: emailReadOnlyLabel, value: email, readOnly: true, disabled: true }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18338,7 +18338,7 @@ function InviteLinkInvalidModal({
|
|
|
18338
18338
|
),
|
|
18339
18339
|
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: [
|
|
18340
18340
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)]", children: [
|
|
18341
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18341
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18342
18342
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18343
18343
|
"button",
|
|
18344
18344
|
{
|
|
@@ -18401,7 +18401,7 @@ function LoginForm({
|
|
|
18401
18401
|
}) {
|
|
18402
18402
|
const fieldDisabled = disabled || loading;
|
|
18403
18403
|
const providersDisabled = fieldDisabled || ssoDisabled;
|
|
18404
|
-
const emailErr =
|
|
18404
|
+
const emailErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _379 => _379.email]), email);
|
|
18405
18405
|
const handleKeyDown = (event) => {
|
|
18406
18406
|
if (event.key !== "Enter" || event.repeat || fieldDisabled) return;
|
|
18407
18407
|
if (onSubmitClick) {
|
|
@@ -18419,7 +18419,7 @@ function LoginForm({
|
|
|
18419
18419
|
),
|
|
18420
18420
|
children: [
|
|
18421
18421
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18422
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18422
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18423
18423
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18424
18424
|
] }),
|
|
18425
18425
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18545,7 +18545,7 @@ function NoAccountNotice({
|
|
|
18545
18545
|
),
|
|
18546
18546
|
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: [
|
|
18547
18547
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18548
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18548
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18549
18549
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: description })
|
|
18550
18550
|
] }),
|
|
18551
18551
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", fullWidth: true, onClick: onBackToLogin, children: backLabel })
|
|
@@ -18578,8 +18578,8 @@ function OpenFrameSsoLoginForm({
|
|
|
18578
18578
|
className
|
|
18579
18579
|
}) {
|
|
18580
18580
|
const fieldsDisabled = disabled || loading;
|
|
18581
|
-
const emailErr =
|
|
18582
|
-
const passwordErr =
|
|
18581
|
+
const emailErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _383 => _383.email]), email);
|
|
18582
|
+
const passwordErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _384 => _384.password]), password);
|
|
18583
18583
|
const handleKeyDown = (event) => {
|
|
18584
18584
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18585
18585
|
onSubmit();
|
|
@@ -18594,7 +18594,7 @@ function OpenFrameSsoLoginForm({
|
|
|
18594
18594
|
),
|
|
18595
18595
|
children: [
|
|
18596
18596
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
|
|
18597
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18597
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18598
18598
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18599
18599
|
] }),
|
|
18600
18600
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18684,7 +18684,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18684
18684
|
className
|
|
18685
18685
|
}) {
|
|
18686
18686
|
const fieldsDisabled = disabled || loading;
|
|
18687
|
-
const emailErr =
|
|
18687
|
+
const emailErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _385 => _385.email]), email);
|
|
18688
18688
|
const handleKeyDown = (event) => {
|
|
18689
18689
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18690
18690
|
onSubmit();
|
|
@@ -18699,7 +18699,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18699
18699
|
),
|
|
18700
18700
|
children: [
|
|
18701
18701
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
|
|
18702
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18702
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18703
18703
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18704
18704
|
] }),
|
|
18705
18705
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18789,8 +18789,8 @@ function PasswordResetForm({
|
|
|
18789
18789
|
className
|
|
18790
18790
|
}) {
|
|
18791
18791
|
const fieldsDisabled = disabled || loading;
|
|
18792
|
-
const passwordErr =
|
|
18793
|
-
const confirmErr =
|
|
18792
|
+
const passwordErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _386 => _386.password]), password);
|
|
18793
|
+
const confirmErr = _chunkXCH7SPGIcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _387 => _387.confirmPassword]), confirmPassword);
|
|
18794
18794
|
const handleKeyDown = (event) => {
|
|
18795
18795
|
if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
|
|
18796
18796
|
onSubmit();
|
|
@@ -18805,7 +18805,7 @@ function PasswordResetForm({
|
|
|
18805
18805
|
),
|
|
18806
18806
|
children: [
|
|
18807
18807
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18808
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18808
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18809
18809
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18810
18810
|
] }),
|
|
18811
18811
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18922,12 +18922,12 @@ function SsoJoinForm({
|
|
|
18922
18922
|
),
|
|
18923
18923
|
children: [
|
|
18924
18924
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18925
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18925
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk22XAPV6Ncjs.accentSentenceMarks.call(void 0, title) }),
|
|
18926
18926
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18927
18927
|
] }),
|
|
18928
18928
|
/* @__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: [
|
|
18929
18929
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18930
|
-
|
|
18930
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
18931
18931
|
{
|
|
18932
18932
|
size: "lg",
|
|
18933
18933
|
variant: "round",
|
|
@@ -18941,7 +18941,7 @@ function SsoJoinForm({
|
|
|
18941
18941
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: displayName }),
|
|
18942
18942
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: organizationName })
|
|
18943
18943
|
] }),
|
|
18944
|
-
roles.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xs)]", children: roles.map((role) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18944
|
+
roles.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xs)]", children: roles.map((role) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { variant: "grey", label: role }, role)) })
|
|
18945
18945
|
] }),
|
|
18946
18946
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18947
18947
|
CheckboxBlock,
|
|
@@ -19030,7 +19030,7 @@ function ProviderButton({ provider, onClick, disabled = false, loading = false }
|
|
|
19030
19030
|
disabled: disabled || isLoading,
|
|
19031
19031
|
variant: "outline",
|
|
19032
19032
|
size: "default",
|
|
19033
|
-
leftIcon: isLoading ? null : _react.createElement.call(void 0,
|
|
19033
|
+
leftIcon: isLoading ? null : _react.createElement.call(void 0, _chunkR3TWQ3ZJcjs.requireIcon.call(void 0, config.icon), { className: "h-5 w-5" }),
|
|
19034
19034
|
className: `h-[56px] w-full !font-bold !text-h6 hover:bg-ods-bg-hover content-md:!w-full ${isLoading ? "cursor-wait" : "cursor-pointer"} `,
|
|
19035
19035
|
"aria-label": config.displayName,
|
|
19036
19036
|
children: isLoading ? "Signing in..." : config.displayName
|
|
@@ -19184,7 +19184,7 @@ function ChangelogManager({
|
|
|
19184
19184
|
),
|
|
19185
19185
|
/* @__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)" }) }),
|
|
19186
19186
|
tagOptions && tagLabelOf(entry.tag) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19187
|
-
|
|
19187
|
+
_chunk22XAPV6Ncjs.StatusBadge,
|
|
19188
19188
|
{
|
|
19189
19189
|
variant: "button",
|
|
19190
19190
|
singleLine: true,
|
|
@@ -19248,9 +19248,9 @@ function ChangelogManager({
|
|
|
19248
19248
|
] }),
|
|
19249
19249
|
tagOptions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
19250
19250
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-ods-text-secondary", children: tagLabel }),
|
|
19251
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
19252
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19253
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19251
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: _nullishCoalesce(entry.tag, () => ( "")), onValueChange: (value) => updateEntry(index, "tag", value), children: [
|
|
19252
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder: tagLabel }) }),
|
|
19253
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: tagOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
19254
19254
|
] })
|
|
19255
19255
|
] })
|
|
19256
19256
|
] })
|
|
@@ -19447,7 +19447,7 @@ function EntityTagBadges({ tags, basePath, max, className }) {
|
|
|
19447
19447
|
const label = (tag.name || "").toUpperCase();
|
|
19448
19448
|
if (basePath && tag.slug) {
|
|
19449
19449
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: `${basePath}?tags=${tag.slug}`, className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19450
|
-
|
|
19450
|
+
_chunk22XAPV6Ncjs.StatusBadge,
|
|
19451
19451
|
{
|
|
19452
19452
|
text: label,
|
|
19453
19453
|
variant: "card",
|
|
@@ -19455,9 +19455,9 @@ function EntityTagBadges({ tags, basePath, max, className }) {
|
|
|
19455
19455
|
}
|
|
19456
19456
|
) }, key);
|
|
19457
19457
|
}
|
|
19458
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19458
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.StatusBadge, { text: label, variant: "card", className: BADGE_CLASS }, key);
|
|
19459
19459
|
}),
|
|
19460
|
-
overflow > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19460
|
+
overflow > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.StatusBadge, { text: `+${overflow}`, variant: "card", className: `${BADGE_CLASS} text-ods-text-secondary` })
|
|
19461
19461
|
] });
|
|
19462
19462
|
}
|
|
19463
19463
|
|
|
@@ -19553,7 +19553,7 @@ var SectionButton = ({
|
|
|
19553
19553
|
}
|
|
19554
19554
|
),
|
|
19555
19555
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19556
|
-
|
|
19556
|
+
_chunk22XAPV6Ncjs.StatusBadge,
|
|
19557
19557
|
{
|
|
19558
19558
|
text: section.badge.text,
|
|
19559
19559
|
variant: section.badge.variant || "button",
|
|
@@ -19572,7 +19572,7 @@ var SectionButton = ({
|
|
|
19572
19572
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-wrap items-start gap-2", children: [
|
|
19573
19573
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, titleClasses, "text-h3"), style: { textAlign: "left" }, children: section.title }),
|
|
19574
19574
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19575
|
-
|
|
19575
|
+
_chunk22XAPV6Ncjs.StatusBadge,
|
|
19576
19576
|
{
|
|
19577
19577
|
text: section.badge.text,
|
|
19578
19578
|
variant: section.badge.variant || "button",
|
|
@@ -20645,15 +20645,15 @@ function useLoading() {
|
|
|
20645
20645
|
|
|
20646
20646
|
|
|
20647
20647
|
function isAlreadyThere(file, existing) {
|
|
20648
|
-
const key =
|
|
20648
|
+
const key = _chunk22XAPV6Ncjs.mediaNameKey.call(void 0, file.name);
|
|
20649
20649
|
if (!key) return false;
|
|
20650
20650
|
return existing.some(
|
|
20651
|
-
(item) => (item.title ?
|
|
20651
|
+
(item) => (item.title ? _chunk22XAPV6Ncjs.mediaNameKey.call(void 0, item.title) === key : false) || (item.media_url ? _chunk22XAPV6Ncjs.mediaNameKey.call(void 0, item.media_url) === key : false)
|
|
20652
20652
|
);
|
|
20653
20653
|
}
|
|
20654
20654
|
var isFileDrag = (event) => Array.from(event.dataTransfer.types).includes("Files");
|
|
20655
|
-
var isVideoItem = (item) =>
|
|
20656
|
-
var MEDIA_KIND_ACCEPT = { image:
|
|
20655
|
+
var isVideoItem = (item) => _chunk22XAPV6Ncjs.isVideoMedia.call(void 0, item) || item.media_type === "demo";
|
|
20656
|
+
var MEDIA_KIND_ACCEPT = { image: _chunk22XAPV6Ncjs.IMAGE_FILE_ACCEPT, video: "video/*", both: _chunk22XAPV6Ncjs.MEDIA_FILE_ACCEPT };
|
|
20657
20657
|
var MEDIA_KIND_COPY = {
|
|
20658
20658
|
image: { noun: "pictures", refusal: "Not a picture" },
|
|
20659
20659
|
video: { noun: "videos", refusal: "Not a video" },
|
|
@@ -20677,12 +20677,12 @@ function useMediaIntake({ existing, onUpload, onUploaded, kinds = "both" }) {
|
|
|
20677
20677
|
const seen = /* @__PURE__ */ new Set();
|
|
20678
20678
|
const accepted = [];
|
|
20679
20679
|
for (const file of files) {
|
|
20680
|
-
const mediaType =
|
|
20680
|
+
const mediaType = _chunk22XAPV6Ncjs.fileMediaType.call(void 0, file);
|
|
20681
20681
|
if (!mediaType || kinds !== "both" && mediaType !== kinds) {
|
|
20682
20682
|
unsupported.push(file.name);
|
|
20683
20683
|
continue;
|
|
20684
20684
|
}
|
|
20685
|
-
const contentKey = await
|
|
20685
|
+
const contentKey = await _chunk22XAPV6Ncjs.fileContentKey.call(void 0, file).catch(() => `${file.name}:${file.size}`);
|
|
20686
20686
|
if (seen.has(contentKey) || isAlreadyThere(file, existingRef.current)) {
|
|
20687
20687
|
duplicates.push(file.name);
|
|
20688
20688
|
continue;
|
|
@@ -20863,7 +20863,7 @@ function MediaGalleryManager({
|
|
|
20863
20863
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "grid grid-cols-1 gap-4 content-md:grid-cols-2", columns === 3 && "content-lg:grid-cols-3"),
|
|
20864
20864
|
children: [
|
|
20865
20865
|
media.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20866
|
-
|
|
20866
|
+
_chunk22XAPV6Ncjs.Card,
|
|
20867
20867
|
{
|
|
20868
20868
|
className: "group relative border-ods-border transition-colors hover:border-ods-accent/30",
|
|
20869
20869
|
draggable: true,
|
|
@@ -20888,7 +20888,7 @@ function MediaGalleryManager({
|
|
|
20888
20888
|
) }),
|
|
20889
20889
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: isVideoItem(item) ? (
|
|
20890
20890
|
// <Video> SSOT (MuxPlayer): plays Mux HLS and MP4 alike; fit="cover" crops to the cell.
|
|
20891
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20891
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
|
|
20892
20892
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20893
20893
|
_chunkHOTM4UM6cjs.next_image_default,
|
|
20894
20894
|
{
|
|
@@ -20903,17 +20903,17 @@ function MediaGalleryManager({
|
|
|
20903
20903
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
20904
20904
|
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" }),
|
|
20905
20905
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20906
|
-
|
|
20906
|
+
_chunk2IFCRPNPcjs.Select,
|
|
20907
20907
|
{
|
|
20908
20908
|
value: item.media_type,
|
|
20909
20909
|
onValueChange: (value) => update(index, { media_type: value }),
|
|
20910
20910
|
children: [
|
|
20911
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20912
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20913
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20914
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20915
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20916
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20911
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "h-8 bg-ods-bg text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
20912
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
20913
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "image", children: "Image" }),
|
|
20914
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "video", children: "Video" }),
|
|
20915
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "screenshot", children: "Screenshot" }),
|
|
20916
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "demo", children: "Demo" })
|
|
20917
20917
|
] })
|
|
20918
20918
|
]
|
|
20919
20919
|
}
|
|
@@ -20940,7 +20940,7 @@ function MediaGalleryManager({
|
|
|
20940
20940
|
},
|
|
20941
20941
|
_nullishCoalesce(item.id, () => ( `${item.media_url}-${index}`))
|
|
20942
20942
|
)),
|
|
20943
|
-
pending.map((name, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20943
|
+
pending.map((name, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk22XAPV6Ncjs.Card, { className: "border-ods-border", "aria-busy": "true", children: [
|
|
20944
20944
|
/* @__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" }) }),
|
|
20945
20945
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate p-3 text-ods-text-secondary text-h6", children: name })
|
|
20946
20946
|
] }, `pending-${name}-${index}`))
|
|
@@ -22325,14 +22325,14 @@ var MODEL_TOKEN_RATES_COPY = {
|
|
|
22325
22325
|
empty: "No token rates are in effect right now."
|
|
22326
22326
|
};
|
|
22327
22327
|
function providerMark(providerType, stated, className) {
|
|
22328
|
-
const Mark =
|
|
22328
|
+
const Mark = _chunkR3TWQ3ZJcjs.findIcon.call(void 0, _chunkCEJDHCFZcjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
|
|
22329
22329
|
return Mark ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Mark, { className }) : void 0;
|
|
22330
22330
|
}
|
|
22331
22331
|
var PAD_X = "px-[var(--spacing-system-s)]";
|
|
22332
22332
|
var ROW = "flex items-center gap-[var(--spacing-system-s)]";
|
|
22333
22333
|
var NUMBER_CELL = "w-16 shrink-0 whitespace-nowrap text-right tabular-nums";
|
|
22334
22334
|
function useProviderGroup(rates) {
|
|
22335
|
-
const groups =
|
|
22335
|
+
const groups = _chunkCEJDHCFZcjs.groupTokenRatesByProvider.call(void 0, rates);
|
|
22336
22336
|
const [picked, setPicked] = _react.useState.call(void 0, null);
|
|
22337
22337
|
return { groups, group: _nullishCoalesce(groups.find((candidate) => candidate.providerType === picked), () => ( groups[0])), setPicked };
|
|
22338
22338
|
}
|
|
@@ -22343,7 +22343,7 @@ function ProviderTabs({
|
|
|
22343
22343
|
className
|
|
22344
22344
|
}) {
|
|
22345
22345
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22346
|
-
|
|
22346
|
+
_chunkTQPQKBBLcjs.TabSelector,
|
|
22347
22347
|
{
|
|
22348
22348
|
variant: "secondary",
|
|
22349
22349
|
scrollable: true,
|
|
@@ -22351,7 +22351,7 @@ function ProviderTabs({
|
|
|
22351
22351
|
onValueChange,
|
|
22352
22352
|
items: groups.map((candidate) => ({
|
|
22353
22353
|
id: candidate.providerType,
|
|
22354
|
-
label:
|
|
22354
|
+
label: _chunkCEJDHCFZcjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _443 => _443.rates, 'access', _444 => _444[0], 'optionalAccess', _445 => _445.providerLabel])),
|
|
22355
22355
|
icon: providerMark(candidate.providerType, _optionalChain([candidate, 'access', _446 => _446.rates, 'access', _447 => _447[0], 'optionalAccess', _448 => _448.providerIcon]), "size-full")
|
|
22356
22356
|
})),
|
|
22357
22357
|
className
|
|
@@ -22452,8 +22452,8 @@ function ModelTokenRatesTable({ rates }) {
|
|
|
22452
22452
|
className: _chunk3ATAYP36cjs.cn.call(void 0, ROW, PAD_X, "py-[var(--spacing-system-xxs)] text-ods-text-primary text-h6"),
|
|
22453
22453
|
children: [
|
|
22454
22454
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "rowheader", className: "min-w-0 flex-1 truncate", children: rate.displayName || rate.modelName }),
|
|
22455
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
22456
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
22455
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkCEJDHCFZcjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
|
|
22456
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkCEJDHCFZcjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
|
|
22457
22457
|
]
|
|
22458
22458
|
},
|
|
22459
22459
|
rate.modelName
|
|
@@ -22519,7 +22519,7 @@ function modelOption(rate) {
|
|
|
22519
22519
|
return {
|
|
22520
22520
|
label: rate.displayName || rate.modelName,
|
|
22521
22521
|
value: rate.modelName,
|
|
22522
|
-
description:
|
|
22522
|
+
description: _chunkCEJDHCFZcjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
|
|
22523
22523
|
icon: providerMark(rate.providerType, rate.providerIcon, "size-full text-ods-text-secondary")
|
|
22524
22524
|
};
|
|
22525
22525
|
}
|
|
@@ -22573,9 +22573,9 @@ function ModelTokenExchange({
|
|
|
22573
22573
|
const [chosen, setChosen] = _react.useState.call(void 0, null);
|
|
22574
22574
|
const balance = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(chosen, () => ( defaultAmount)), () => ( _optionalChain([tokenPrice, 'optionalAccess', _449 => _449.tokens]))), () => ( MODEL_TOKEN_EXCHANGE_BALANCE));
|
|
22575
22575
|
const max = Math.max(amountRange.max, balance, ...presets.map((preset) => preset.tokens));
|
|
22576
|
-
const tokens =
|
|
22577
|
-
const cost =
|
|
22578
|
-
const balancePrice = cost === null ? null :
|
|
22576
|
+
const tokens = _chunkCEJDHCFZcjs.formatTokenAmount.call(void 0, balance);
|
|
22577
|
+
const cost = _chunkCEJDHCFZcjs.tokenCost.call(void 0, balance, tokenPrice);
|
|
22578
|
+
const balancePrice = cost === null ? null : _chunkEQZXJUYVcjs.formatPrice.call(void 0, cost);
|
|
22579
22579
|
const model = rate ? rate.displayName || rate.modelName : "";
|
|
22580
22580
|
const options = models.map(modelOption);
|
|
22581
22581
|
if (rate && !models.some((candidate) => candidate.modelName === rate.modelName)) options.unshift(modelOption(rate));
|
|
@@ -22616,7 +22616,7 @@ function ModelTokenExchange({
|
|
|
22616
22616
|
variant: preset.tokens === balance ? "accent" : "outline",
|
|
22617
22617
|
size: "small",
|
|
22618
22618
|
onClick: () => setChosen(preset.tokens),
|
|
22619
|
-
children: copy.buy.preset(
|
|
22619
|
+
children: copy.buy.preset(_chunkCEJDHCFZcjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
|
|
22620
22620
|
},
|
|
22621
22621
|
preset.label
|
|
22622
22622
|
)) })
|
|
@@ -22635,7 +22635,7 @@ function ModelTokenExchange({
|
|
|
22635
22635
|
const stated = _nullishCoalesce(models.find((option) => option.providerType === providerType), () => ( (_optionalChain([rate, 'optionalAccess', _450 => _450.providerType]) === providerType ? rate : null)));
|
|
22636
22636
|
return {
|
|
22637
22637
|
id: providerType,
|
|
22638
|
-
name:
|
|
22638
|
+
name: _chunkCEJDHCFZcjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _451 => _451.providerLabel])),
|
|
22639
22639
|
icon: providerMark(providerType, _optionalChain([stated, 'optionalAccess', _452 => _452.providerIcon]), "size-8 text-ods-text-secondary")
|
|
22640
22640
|
};
|
|
22641
22641
|
}),
|
|
@@ -22647,7 +22647,7 @@ function ModelTokenExchange({
|
|
|
22647
22647
|
}
|
|
22648
22648
|
),
|
|
22649
22649
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22650
|
-
|
|
22650
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
22651
22651
|
{
|
|
22652
22652
|
label: copy.use.model,
|
|
22653
22653
|
value: _nullishCoalesce(_optionalChain([rate, 'optionalAccess', _454 => _454.modelName]), () => ( null)),
|
|
@@ -22673,7 +22673,7 @@ function ModelTokenExchange({
|
|
|
22673
22673
|
{
|
|
22674
22674
|
size: "plain",
|
|
22675
22675
|
loading,
|
|
22676
|
-
figure:
|
|
22676
|
+
figure: _chunkCEJDHCFZcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _457 => _457.inputTokenRate])),
|
|
22677
22677
|
words: copy.charge.input
|
|
22678
22678
|
}
|
|
22679
22679
|
),
|
|
@@ -22682,7 +22682,7 @@ function ModelTokenExchange({
|
|
|
22682
22682
|
{
|
|
22683
22683
|
size: "plain",
|
|
22684
22684
|
loading,
|
|
22685
|
-
figure:
|
|
22685
|
+
figure: _chunkCEJDHCFZcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _458 => _458.outputTokenRate])),
|
|
22686
22686
|
words: copy.charge.output
|
|
22687
22687
|
}
|
|
22688
22688
|
)
|
|
@@ -22694,9 +22694,9 @@ function ModelTokenExchange({
|
|
|
22694
22694
|
className: "mt-auto flex flex-col rounded-md border border-ods-accent bg-ods-bg p-[var(--spacing-system-mf)]",
|
|
22695
22695
|
children: [
|
|
22696
22696
|
/* @__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, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-full max-w-xs") }) : copy.charge.so(_nullishCoalesce(balancePrice, () => ( copy.buy.tokens(tokens))), model) }),
|
|
22697
|
-
/* @__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, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-40") }) :
|
|
22697
|
+
/* @__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, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-40") }) : _chunkCEJDHCFZcjs.formatTokenAmount.call(void 0, _chunkCEJDHCFZcjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
|
|
22698
22698
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-primary text-h3", children: copy.charge.read }),
|
|
22699
|
-
/* @__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, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-48") }) : copy.charge.orWritten(
|
|
22699
|
+
/* @__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, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", "aria-hidden": true, className: _chunk3ATAYP36cjs.cn.call(void 0, FIGURE_SKELETON_CLASS, "w-48") }) : copy.charge.orWritten(_chunkCEJDHCFZcjs.formatTokenAmount.call(void 0, _chunkCEJDHCFZcjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
|
|
22700
22700
|
]
|
|
22701
22701
|
}
|
|
22702
22702
|
)
|
|
@@ -23086,7 +23086,7 @@ function PlatformFilterComponent({
|
|
|
23086
23086
|
variant: selectedPlatform === platform.value ? "accent" : "outline",
|
|
23087
23087
|
size,
|
|
23088
23088
|
onClick: () => onPlatformChange(platform.value),
|
|
23089
|
-
leftIcon: showIcons ?
|
|
23089
|
+
leftIcon: showIcons ? _chunkNET74KSQcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
|
|
23090
23090
|
className: "text-h3",
|
|
23091
23091
|
children: platform.label
|
|
23092
23092
|
},
|
|
@@ -23167,7 +23167,7 @@ var SelectButton = _react2.default.forwardRef(
|
|
|
23167
23167
|
}
|
|
23168
23168
|
)
|
|
23169
23169
|
] }),
|
|
23170
|
-
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23170
|
+
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { variant: tagVariant, className: "shrink-0", label: tag }),
|
|
23171
23171
|
selected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHFNBMV5Mcjs.CheckCircleIcon, { className: "size-4 shrink-0 text-ods-accent content-md:size-6" })
|
|
23172
23172
|
]
|
|
23173
23173
|
}
|
|
@@ -23194,14 +23194,14 @@ var ConfidenceBadge = ({
|
|
|
23194
23194
|
size = "sm",
|
|
23195
23195
|
className
|
|
23196
23196
|
}) => {
|
|
23197
|
-
const level =
|
|
23197
|
+
const level = _chunkCEJDHCFZcjs.getConfidenceLevel.call(void 0, confidence);
|
|
23198
23198
|
if (level === "none") {
|
|
23199
23199
|
return null;
|
|
23200
23200
|
}
|
|
23201
|
-
const label =
|
|
23202
|
-
const borderClass =
|
|
23203
|
-
const textClass =
|
|
23204
|
-
const bgClass =
|
|
23201
|
+
const label = _chunkCEJDHCFZcjs.getConfidenceLabel.call(void 0, confidence);
|
|
23202
|
+
const borderClass = _chunkCEJDHCFZcjs.getConfidenceBorderClass.call(void 0, confidence);
|
|
23203
|
+
const textClass = _chunkCEJDHCFZcjs.getConfidenceTextClass.call(void 0, confidence);
|
|
23204
|
+
const bgClass = _chunkCEJDHCFZcjs.getConfidenceBgClass.call(void 0, confidence);
|
|
23205
23205
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23206
23206
|
"span",
|
|
23207
23207
|
{
|
|
@@ -23252,9 +23252,9 @@ function SEOEditorPreview({
|
|
|
23252
23252
|
const [isUploading, setIsUploading] = _react.useState.call(void 0, false);
|
|
23253
23253
|
const [fileInputRef, setFileInputRef] = _react.useState.call(void 0, null);
|
|
23254
23254
|
const seoTitleLength = (seoTitle || "").length;
|
|
23255
|
-
const seoTitleTooLong = seoTitleLength >
|
|
23255
|
+
const seoTitleTooLong = seoTitleLength > _chunkCEJDHCFZcjs.SEO_TITLE_MAX_LENGTH;
|
|
23256
23256
|
const seoDescriptionLength = (seoDescription || "").length;
|
|
23257
|
-
const seoDescriptionTooLong = seoDescriptionLength >
|
|
23257
|
+
const seoDescriptionTooLong = seoDescriptionLength > _chunkCEJDHCFZcjs.SEO_DESCRIPTION_MAX_LENGTH;
|
|
23258
23258
|
const displayTitle = seoTitle.trim() || title || "Untitled";
|
|
23259
23259
|
const displayDescription = seoDescription.trim() || summary || "No description";
|
|
23260
23260
|
const hasOgImage = ogImageUrl.trim();
|
|
@@ -23279,10 +23279,10 @@ function SEOEditorPreview({
|
|
|
23279
23279
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
23280
23280
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23281
23281
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23282
|
-
|
|
23282
|
+
_chunkCEJDHCFZcjs.Field,
|
|
23283
23283
|
{
|
|
23284
23284
|
label: "SEO Title",
|
|
23285
|
-
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${
|
|
23285
|
+
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkCEJDHCFZcjs.SEO_TITLE_MAX_LENGTH})` : null,
|
|
23286
23286
|
labelExtras: aiConfidenceSeoTitle !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23287
23287
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
23288
23288
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ConfidenceBadge, { confidence: aiConfidenceSeoTitle, showLabel: true, showPercentage: true, size: "sm" })
|
|
@@ -23297,7 +23297,7 @@ function SEOEditorPreview({
|
|
|
23297
23297
|
children: [
|
|
23298
23298
|
seoTitleLength,
|
|
23299
23299
|
"/",
|
|
23300
|
-
|
|
23300
|
+
_chunkCEJDHCFZcjs.SEO_TITLE_MAX_LENGTH
|
|
23301
23301
|
]
|
|
23302
23302
|
}
|
|
23303
23303
|
),
|
|
@@ -23308,7 +23308,7 @@ function SEOEditorPreview({
|
|
|
23308
23308
|
value: seoTitle || "",
|
|
23309
23309
|
onChange: (e) => onSeoTitleChange(e.target.value),
|
|
23310
23310
|
disabled,
|
|
23311
|
-
maxLength:
|
|
23311
|
+
maxLength: _chunkCEJDHCFZcjs.SEO_TITLE_MAX_LENGTH,
|
|
23312
23312
|
invalid: seoTitleTooLong,
|
|
23313
23313
|
placeholder: "Enter SEO meta title...",
|
|
23314
23314
|
className: "border-ods-border bg-ods-bg text-ods-text-primary"
|
|
@@ -23319,7 +23319,7 @@ function SEOEditorPreview({
|
|
|
23319
23319
|
!seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
|
|
23320
23320
|
] }),
|
|
23321
23321
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23322
|
-
|
|
23322
|
+
_chunkCEJDHCFZcjs.Field,
|
|
23323
23323
|
{
|
|
23324
23324
|
label: "SEO Keywords",
|
|
23325
23325
|
labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -23351,10 +23351,10 @@ function SEOEditorPreview({
|
|
|
23351
23351
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
23352
23352
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23353
23353
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23354
|
-
|
|
23354
|
+
_chunkCEJDHCFZcjs.Field,
|
|
23355
23355
|
{
|
|
23356
23356
|
label: "SEO Description",
|
|
23357
|
-
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${
|
|
23357
|
+
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkCEJDHCFZcjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
|
|
23358
23358
|
labelExtras: aiConfidenceSeoDescription !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23359
23359
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
23360
23360
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -23377,7 +23377,7 @@ function SEOEditorPreview({
|
|
|
23377
23377
|
children: [
|
|
23378
23378
|
seoDescriptionLength,
|
|
23379
23379
|
"/",
|
|
23380
|
-
|
|
23380
|
+
_chunkCEJDHCFZcjs.SEO_DESCRIPTION_MAX_LENGTH
|
|
23381
23381
|
]
|
|
23382
23382
|
}
|
|
23383
23383
|
),
|
|
@@ -23388,7 +23388,7 @@ function SEOEditorPreview({
|
|
|
23388
23388
|
value: seoDescription || "",
|
|
23389
23389
|
onChange: (e) => onSeoDescriptionChange(e.target.value),
|
|
23390
23390
|
disabled,
|
|
23391
|
-
maxLength:
|
|
23391
|
+
maxLength: _chunkCEJDHCFZcjs.SEO_DESCRIPTION_MAX_LENGTH,
|
|
23392
23392
|
invalid: seoDescriptionTooLong,
|
|
23393
23393
|
placeholder: "Enter SEO meta description...",
|
|
23394
23394
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "resize-none border-ods-border bg-ods-bg text-ods-text-primary", SEO_MEDIA_BOX_HEIGHT)
|
|
@@ -23457,7 +23457,7 @@ function SEOEditorPreview({
|
|
|
23457
23457
|
{
|
|
23458
23458
|
ref: setFileInputRef,
|
|
23459
23459
|
type: "file",
|
|
23460
|
-
accept:
|
|
23460
|
+
accept: _chunk22XAPV6Ncjs.IMAGE_FILE_ACCEPT,
|
|
23461
23461
|
onChange: handleImageUpload,
|
|
23462
23462
|
className: "hidden",
|
|
23463
23463
|
disabled: disabled || isUploading
|
|
@@ -23538,10 +23538,10 @@ var SOCIAL_ICONS = {
|
|
|
23538
23538
|
};
|
|
23539
23539
|
function socialIcon(platform) {
|
|
23540
23540
|
if (!Object.prototype.hasOwnProperty.call(SOCIAL_ICONS, platform)) return void 0;
|
|
23541
|
-
return _nullishCoalesce(
|
|
23541
|
+
return _nullishCoalesce(_chunkR3TWQ3ZJcjs.iconOf.call(void 0, SOCIAL_ICONS[platform]), () => ( void 0));
|
|
23542
23542
|
}
|
|
23543
23543
|
function renderSocialIcon(platform) {
|
|
23544
|
-
const key = _nullishCoalesce(
|
|
23544
|
+
const key = _nullishCoalesce(_chunkCEJDHCFZcjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
|
|
23545
23545
|
const icon = _nullishCoalesce(socialIcon(key), () => ( socialIcon("website")));
|
|
23546
23546
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5" }) : null;
|
|
23547
23547
|
}
|
|
@@ -23624,7 +23624,7 @@ function SocialLinksManager({
|
|
|
23624
23624
|
};
|
|
23625
23625
|
const getIcon = (link, platform) => {
|
|
23626
23626
|
const iconKey = _optionalChain([platform, 'optionalAccess', _468 => _468.icon_name]) || link.platform;
|
|
23627
|
-
const key =
|
|
23627
|
+
const key = _chunkCEJDHCFZcjs.normalizeSocialPlatform.call(void 0, iconKey);
|
|
23628
23628
|
if (!key) return null;
|
|
23629
23629
|
const icon = socialIcon(key);
|
|
23630
23630
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5 text-ods-text-secondary" }) : null;
|
|
@@ -23640,9 +23640,9 @@ function SocialLinksManager({
|
|
|
23640
23640
|
children: [
|
|
23641
23641
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 items-center justify-center", children: Icon }),
|
|
23642
23642
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid flex-1 grid-cols-2 gap-3", children: [
|
|
23643
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23644
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23645
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23643
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: link.platform, onValueChange: (value) => updateLink(index, "platform", value), children: [
|
|
23644
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
23645
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: platforms.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: p.name, children: p.display_name }, p.name)) })
|
|
23646
23646
|
] }) }),
|
|
23647
23647
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23648
23648
|
_chunkHTRILBJDcjs.Input,
|
|
@@ -23660,15 +23660,15 @@ function SocialLinksManager({
|
|
|
23660
23660
|
)
|
|
23661
23661
|
] }),
|
|
23662
23662
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23663
|
-
|
|
23663
|
+
_chunk2IFCRPNPcjs.Select,
|
|
23664
23664
|
{
|
|
23665
23665
|
value: _nullishCoalesce(link.visibility, () => ( "external")),
|
|
23666
23666
|
onValueChange: (value) => updateLink(index, "visibility", value),
|
|
23667
23667
|
children: [
|
|
23668
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23669
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23670
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23671
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23668
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "w-[120px] shrink-0", "aria-label": "Social link visibility", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
23669
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: [
|
|
23670
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "external", children: "Public" }),
|
|
23671
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "internal", children: "Internal" })
|
|
23672
23672
|
] })
|
|
23673
23673
|
]
|
|
23674
23674
|
}
|
|
@@ -23760,7 +23760,7 @@ var StartWithOpenFrameButton = _react.forwardRef.call(void 0,
|
|
|
23760
23760
|
className: _chunk3ATAYP36cjs.cn.call(void 0, modeClassName, className),
|
|
23761
23761
|
style: customStyle,
|
|
23762
23762
|
leftIcon: !loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJZLKYOBcjs.OpenframeLogoIcon, { secondaryColor: iconLowerPath, className: "h-5 w-5", color: iconUpperPath }) : void 0,
|
|
23763
|
-
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23763
|
+
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.StatusBadge, { text: "Beta", variant: "button", colorScheme: "yellow" }),
|
|
23764
23764
|
children
|
|
23765
23765
|
}
|
|
23766
23766
|
);
|
|
@@ -24030,11 +24030,11 @@ function WarningBlock({ title, icon = DEFAULT_ICON, children, className }) {
|
|
|
24030
24030
|
|
|
24031
24031
|
function VideoBitesDisplay({
|
|
24032
24032
|
bites,
|
|
24033
|
-
title =
|
|
24033
|
+
title = _chunk22XAPV6Ncjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
24034
24034
|
filterPublished = true,
|
|
24035
24035
|
showTitle = true
|
|
24036
24036
|
}) {
|
|
24037
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24037
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTQPQKBBLcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
|
|
24038
24038
|
}
|
|
24039
24039
|
|
|
24040
24040
|
// src/components/features/walkthrough-video.tsx
|
|
@@ -24062,7 +24062,7 @@ function WalkthroughVideo({
|
|
|
24062
24062
|
onOpenChange,
|
|
24063
24063
|
defaultOpen,
|
|
24064
24064
|
defaultOpenPaused,
|
|
24065
|
-
deepLinkParam =
|
|
24065
|
+
deepLinkParam = _chunkCEJDHCFZcjs.WALKTHROUGH_OPEN_QUERY_PARAM,
|
|
24066
24066
|
autoPlayCard = false,
|
|
24067
24067
|
label = "Play Demo Video",
|
|
24068
24068
|
placement,
|
|
@@ -24078,7 +24078,7 @@ function WalkthroughVideo({
|
|
|
24078
24078
|
}) {
|
|
24079
24079
|
const inline = placement === "inline";
|
|
24080
24080
|
const dismissEnabled = dismissal !== false;
|
|
24081
|
-
const storageKey = dismissEnabled && dismissal.storageKey ||
|
|
24081
|
+
const storageKey = dismissEnabled && dismissal.storageKey || _chunkCEJDHCFZcjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
|
|
24082
24082
|
const dismissalId = _optionalChain([video, 'optionalAccess', _474 => _474.id]) != null ? String(video.id) : "dismissed";
|
|
24083
24083
|
const [mounted, setMounted] = _react.useState.call(void 0, false);
|
|
24084
24084
|
const [dismissed, setDismissed] = _react.useState.call(void 0, false);
|
|
@@ -24090,7 +24090,7 @@ function WalkthroughVideo({
|
|
|
24090
24090
|
let delayElapsed = false;
|
|
24091
24091
|
let interacted = inline;
|
|
24092
24092
|
const reveal = () => {
|
|
24093
|
-
if (dismissEnabled &&
|
|
24093
|
+
if (dismissEnabled && _chunkCEJDHCFZcjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
|
|
24094
24094
|
setDismissed(true);
|
|
24095
24095
|
return;
|
|
24096
24096
|
}
|
|
@@ -24127,7 +24127,7 @@ function WalkthroughVideo({
|
|
|
24127
24127
|
if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
|
|
24128
24128
|
};
|
|
24129
24129
|
}, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId, inline]);
|
|
24130
|
-
const hydrated =
|
|
24130
|
+
const hydrated = _chunkTQPQKBBLcjs.useIsHydrated.call(void 0, );
|
|
24131
24131
|
const previewSuppressed = _react.useMemo.call(void 0, () => {
|
|
24132
24132
|
if (!hydrated) return false;
|
|
24133
24133
|
try {
|
|
@@ -24377,7 +24377,7 @@ function WalkthroughVideo({
|
|
|
24377
24377
|
(e) => {
|
|
24378
24378
|
e.stopPropagation();
|
|
24379
24379
|
pausePreviewNow();
|
|
24380
|
-
if (dismissEnabled)
|
|
24380
|
+
if (dismissEnabled) _chunkCEJDHCFZcjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
|
|
24381
24381
|
setDismissed(true);
|
|
24382
24382
|
},
|
|
24383
24383
|
[dismissEnabled, storageKey, dismissalId, pausePreviewNow]
|
|
@@ -24526,7 +24526,7 @@ function WalkthroughVideo({
|
|
|
24526
24526
|
},
|
|
24527
24527
|
children: [
|
|
24528
24528
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24529
|
-
|
|
24529
|
+
_chunk22XAPV6Ncjs.VideoHoverPreviewSurface,
|
|
24530
24530
|
{
|
|
24531
24531
|
url: video.mainVideoUrl || "",
|
|
24532
24532
|
posterUrl: video.posterUrl,
|
|
@@ -24550,7 +24550,7 @@ function WalkthroughVideo({
|
|
|
24550
24550
|
`card-${embedUrlKey}`
|
|
24551
24551
|
) }),
|
|
24552
24552
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24553
|
-
|
|
24553
|
+
_chunkTQPQKBBLcjs.CardHitLayer,
|
|
24554
24554
|
{
|
|
24555
24555
|
label: video.title ? `${label}: ${video.title}` : label,
|
|
24556
24556
|
onPointerDown: pausePreviewNow,
|
|
@@ -24559,7 +24559,7 @@ function WalkthroughVideo({
|
|
|
24559
24559
|
}
|
|
24560
24560
|
),
|
|
24561
24561
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "pointer-events-none absolute bottom-[var(--spacing-system-xsf)] left-[var(--spacing-system-xsf)] z-20 flex max-w-[calc(100%-2*var(--spacing-system-xsf))] items-center gap-[var(--spacing-system-xsf)] rounded-full bg-ods-overlay py-[var(--spacing-system-xxs)] pl-[var(--spacing-system-xxs)] pr-[var(--spacing-system-sf)] text-ods-text-primary text-h6", children: [
|
|
24562
|
-
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24562
|
+
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.SquareAvatar, { src: presenterAvatarSrc, alt: "", sizePx: 20, variant: "round", className: "shrink-0 border-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63N4FN5Vcjs.VideoPlayBadge, { size: "sm", className: "h-5 w-5 shrink-0" }),
|
|
24563
24563
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: summaryTitle || label })
|
|
24564
24564
|
] }),
|
|
24565
24565
|
showBigUnmute && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -24665,7 +24665,7 @@ function WalkthroughVideo({
|
|
|
24665
24665
|
children: [
|
|
24666
24666
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
|
|
24667
24667
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24668
|
-
|
|
24668
|
+
_chunk22XAPV6Ncjs.Video,
|
|
24669
24669
|
{
|
|
24670
24670
|
kind: video.youtubeUrl ? "youtube" : "file",
|
|
24671
24671
|
url: video.youtubeUrl || video.mainVideoUrl,
|
|
@@ -24716,7 +24716,7 @@ function InlineWalkthroughVideo(props) {
|
|
|
24716
24716
|
var _reactquery = require('@tanstack/react-query');
|
|
24717
24717
|
function useWalkthroughVideo(opts) {
|
|
24718
24718
|
const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
|
|
24719
|
-
const captions =
|
|
24719
|
+
const captions = _chunkTQPQKBBLcjs.useCaptions.call(void 0, );
|
|
24720
24720
|
const query = _reactquery.useQuery.call(void 0, {
|
|
24721
24721
|
queryKey: ["walkthrough-video", endpoint],
|
|
24722
24722
|
enabled,
|
|
@@ -24914,7 +24914,7 @@ function VideoSourceSelector({
|
|
|
24914
24914
|
}
|
|
24915
24915
|
function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
|
|
24916
24916
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
|
|
24917
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24917
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.Video, { kind: "file", url: videoUrl }) }),
|
|
24918
24918
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24919
24919
|
"button",
|
|
24920
24920
|
{
|
|
@@ -25368,19 +25368,19 @@ function HighlightVideoSection({
|
|
|
25368
25368
|
/* @__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: [
|
|
25369
25369
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { children: "Target Duration" }),
|
|
25370
25370
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25371
|
-
|
|
25371
|
+
_chunk2IFCRPNPcjs.Select,
|
|
25372
25372
|
{
|
|
25373
25373
|
value: targetDurationSeconds.toString(),
|
|
25374
25374
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
25375
25375
|
disabled,
|
|
25376
25376
|
children: [
|
|
25377
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25378
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25379
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25380
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25381
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25382
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25383
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25377
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "mt-1 bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
25378
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
25379
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
25380
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
25381
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
25382
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
25383
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
25384
25384
|
] })
|
|
25385
25385
|
]
|
|
25386
25386
|
}
|
|
@@ -25438,7 +25438,7 @@ function HighlightVideoSection({
|
|
|
25438
25438
|
// Default simple preview — the <Video> SSOT (MuxPlayer) plays
|
|
25439
25439
|
// MP4 and Mux HLS alike; aspect-video box reserves the height.
|
|
25440
25440
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
|
|
25441
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25441
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
|
|
25442
25442
|
onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25443
25443
|
"button",
|
|
25444
25444
|
{
|
|
@@ -25465,20 +25465,20 @@ function HighlightConfigSection({
|
|
|
25465
25465
|
disabled = false,
|
|
25466
25466
|
className = ""
|
|
25467
25467
|
}) {
|
|
25468
|
-
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,
|
|
25469
|
-
|
|
25468
|
+
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, _chunkCEJDHCFZcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25469
|
+
_chunk2IFCRPNPcjs.Select,
|
|
25470
25470
|
{
|
|
25471
25471
|
value: targetDurationSeconds.toString(),
|
|
25472
25472
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
25473
25473
|
disabled,
|
|
25474
25474
|
children: [
|
|
25475
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25476
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25477
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25478
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25479
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25480
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25481
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25475
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { id: f.id, className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
25476
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
25477
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
25478
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
25479
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
25480
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
25481
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
25482
25482
|
] })
|
|
25483
25483
|
]
|
|
25484
25484
|
}
|
|
@@ -25566,7 +25566,7 @@ var AIStatusIndicator = ({
|
|
|
25566
25566
|
}) => {
|
|
25567
25567
|
const config = statusConfig[status];
|
|
25568
25568
|
const displayText = message || config.label;
|
|
25569
|
-
const confidenceLabel = showConfidence && confidence !== void 0 ? `${
|
|
25569
|
+
const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkCEJDHCFZcjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
|
|
25570
25570
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex items-center gap-2 rounded-lg px-3 py-1.5", config.bgColor, className), children: [
|
|
25571
25571
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25572
25572
|
_chunkUNFCRSYIcjs.SparklesIcon,
|
|
@@ -25574,7 +25574,7 @@ var AIStatusIndicator = ({
|
|
|
25574
25574
|
size: 16,
|
|
25575
25575
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25576
25576
|
status === "loading" && "animate-pulse",
|
|
25577
|
-
confidence !== void 0 && status === "success" ?
|
|
25577
|
+
confidence !== void 0 && status === "success" ? _chunkCEJDHCFZcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
25578
25578
|
)
|
|
25579
25579
|
}
|
|
25580
25580
|
),
|
|
@@ -25583,7 +25583,7 @@ var AIStatusIndicator = ({
|
|
|
25583
25583
|
{
|
|
25584
25584
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25585
25585
|
"text-h6",
|
|
25586
|
-
confidence !== void 0 && status === "success" ?
|
|
25586
|
+
confidence !== void 0 && status === "success" ? _chunkCEJDHCFZcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
25587
25587
|
),
|
|
25588
25588
|
children: displayText
|
|
25589
25589
|
}
|
|
@@ -25593,8 +25593,8 @@ var AIStatusIndicator = ({
|
|
|
25593
25593
|
{
|
|
25594
25594
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25595
25595
|
"rounded-full border px-2 py-0.5 text-h6",
|
|
25596
|
-
|
|
25597
|
-
|
|
25596
|
+
_chunkCEJDHCFZcjs.getConfidenceBorderClass.call(void 0, confidence),
|
|
25597
|
+
_chunkCEJDHCFZcjs.getConfidenceTextClass.call(void 0, confidence)
|
|
25598
25598
|
),
|
|
25599
25599
|
children: confidenceLabel
|
|
25600
25600
|
}
|
|
@@ -26159,7 +26159,7 @@ function ApprovalLevelView({
|
|
|
26159
26159
|
] });
|
|
26160
26160
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", className), children: [
|
|
26161
26161
|
name,
|
|
26162
|
-
showLabel ? icon : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26162
|
+
showLabel ? icon : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE4LA4BEHcjs.TouchFriendlyTooltip, { content: `${current.label}: ${current.hint}`, side: "top", children: icon })
|
|
26163
26163
|
] });
|
|
26164
26164
|
}
|
|
26165
26165
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex shrink-0 items-center gap-[var(--spacing-system-sf)]", className), children: [
|
|
@@ -26236,7 +26236,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
26236
26236
|
if (level) onPermissionChange(categoryId, policy.id, level);
|
|
26237
26237
|
};
|
|
26238
26238
|
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: [
|
|
26239
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26239
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSVP6DJFLcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
|
|
26240
26240
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
26241
26241
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-primary text-h4", title: policy.name, children: policy.name }),
|
|
26242
26242
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "break-all text-ods-text-secondary text-h6", children: policy.commandPattern }),
|
|
@@ -26262,7 +26262,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
26262
26262
|
] });
|
|
26263
26263
|
};
|
|
26264
26264
|
var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
|
|
26265
|
-
const { innerRef, containerStyle } =
|
|
26265
|
+
const { innerRef, containerStyle } = _chunkPE26VSWTcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
|
|
26266
26266
|
const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
|
|
26267
26267
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
26268
26268
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -26435,8 +26435,8 @@ function PoliciesTable({
|
|
|
26435
26435
|
accessorKey: "name",
|
|
26436
26436
|
header: "Name",
|
|
26437
26437
|
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: [
|
|
26438
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26439
|
-
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26438
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: row.original.name }),
|
|
26439
|
+
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.description })
|
|
26440
26440
|
] }),
|
|
26441
26441
|
meta: { width: "flex-1 min-w-0" }
|
|
26442
26442
|
},
|
|
@@ -26468,7 +26468,7 @@ function PoliciesTable({
|
|
|
26468
26468
|
cell: ({ row }) => {
|
|
26469
26469
|
const { status } = row.original;
|
|
26470
26470
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col items-start gap-1", children: [
|
|
26471
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26471
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { className: "self-start", label: status.label, variant: status.variant }),
|
|
26472
26472
|
status.note && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `text-h6 ${NOTE_TONE_CLASS[status.note.tone]}`, children: status.note.text })
|
|
26473
26473
|
] });
|
|
26474
26474
|
},
|
|
@@ -26490,7 +26490,7 @@ function PoliciesTable({
|
|
|
26490
26490
|
cell: ({ row }) => row.original.href ? /* @__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,
|
|
26491
26491
|
_chunk2QMBXGMQcjs.Button,
|
|
26492
26492
|
{
|
|
26493
|
-
onClick:
|
|
26493
|
+
onClick: _chunkCEJDHCFZcjs.openInNewTab.call(void 0, row.original.href),
|
|
26494
26494
|
variant: "outline",
|
|
26495
26495
|
size: "icon",
|
|
26496
26496
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -26591,7 +26591,7 @@ function PolicySummaryCards({ summary, isLoading = false, hasData = true, now })
|
|
|
26591
26591
|
DashboardInfoCard,
|
|
26592
26592
|
{
|
|
26593
26593
|
title: "Updated",
|
|
26594
|
-
value: hasData && summary.lastUpdatedAt ?
|
|
26594
|
+
value: hasData && summary.lastUpdatedAt ? _chunkPE26VSWTcjs.formatRelativeTimeFrom.call(void 0, summary.lastUpdatedAt, _nullishCoalesce(now, () => ( /* @__PURE__ */ new Date()))) : EMPTY_VALUE,
|
|
26595
26595
|
valueClassName: "!text-h3",
|
|
26596
26596
|
tooltip: "Policy compliance stats are updated hourly. View a policy's devices for real-time status."
|
|
26597
26597
|
}
|
|
@@ -26707,7 +26707,7 @@ function toValidInstant(iso) {
|
|
|
26707
26707
|
function formatLastRead(iso, now = /* @__PURE__ */ new Date()) {
|
|
26708
26708
|
const date = toValidInstant(iso);
|
|
26709
26709
|
if (!date) return TENANT_EMPTY_VALUE;
|
|
26710
|
-
return now.getTime() - date.getTime() < DAY_MS ?
|
|
26710
|
+
return now.getTime() - date.getTime() < DAY_MS ? _chunkPE26VSWTcjs.formatRelativeTimeFrom.call(void 0, date, now) : _chunkGZKWF6NHcjs.formatDate.call(void 0, date);
|
|
26711
26711
|
}
|
|
26712
26712
|
function usersCountLabel(count) {
|
|
26713
26713
|
if (count == null) return TENANT_EMPTY_VALUE;
|
|
@@ -26718,8 +26718,8 @@ function usersCountLabel(count) {
|
|
|
26718
26718
|
|
|
26719
26719
|
function TenantAccessCell({ accessState, lastReadAt: lastReadAt2, now }) {
|
|
26720
26720
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26721
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26722
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26721
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { ...accessStateTag(accessState), className: "self-start" }),
|
|
26722
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: `Last read: ${formatLastRead(lastReadAt2, now)}` })
|
|
26723
26723
|
] });
|
|
26724
26724
|
}
|
|
26725
26725
|
|
|
@@ -26730,9 +26730,9 @@ function TenantCell({ provider, name, domain }) {
|
|
|
26730
26730
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
26731
26731
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26732
26732
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Logo, { size: 24, role: "img", "aria-label": label, className: "shrink-0" }),
|
|
26733
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26733
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: name })
|
|
26734
26734
|
] }),
|
|
26735
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26735
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(domain, () => ( TENANT_EMPTY_VALUE)) })
|
|
26736
26736
|
] });
|
|
26737
26737
|
}
|
|
26738
26738
|
|
|
@@ -26741,10 +26741,10 @@ function TenantCell({ provider, name, domain }) {
|
|
|
26741
26741
|
function TenantCustomerCell({ name, imageUrl, userCount }) {
|
|
26742
26742
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
26743
26743
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26744
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26745
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26744
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.SquareAvatar, { src: _nullishCoalesce(imageUrl, () => ( void 0)), alt: name, fallback: name, size: "xs", variant: "square" }),
|
|
26745
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: name })
|
|
26746
26746
|
] }),
|
|
26747
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26747
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: usersCountLabel(userCount) })
|
|
26748
26748
|
] });
|
|
26749
26749
|
}
|
|
26750
26750
|
|
|
@@ -26816,7 +26816,7 @@ function TenantsTableView({
|
|
|
26816
26816
|
/* @__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,
|
|
26817
26817
|
_chunk2QMBXGMQcjs.Button,
|
|
26818
26818
|
{
|
|
26819
|
-
onClick:
|
|
26819
|
+
onClick: _chunkCEJDHCFZcjs.openInNewTab.call(void 0, getHref(row.original)),
|
|
26820
26820
|
variant: "outline",
|
|
26821
26821
|
size: "icon",
|
|
26822
26822
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -26894,13 +26894,13 @@ function WaitlistForm({
|
|
|
26894
26894
|
const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
|
|
26895
26895
|
const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
|
|
26896
26896
|
const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
|
|
26897
|
-
const { toast } =
|
|
26898
|
-
const { honeypotInputProps, getSignals, resetSignals } =
|
|
26897
|
+
const { toast } = _chunkXCH7SPGIcjs.useToast.call(void 0, );
|
|
26898
|
+
const { honeypotInputProps, getSignals, resetSignals } = _chunkXCH7SPGIcjs.useHumanitySignals.call(void 0, );
|
|
26899
26899
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
26900
|
-
const isClient =
|
|
26900
|
+
const isClient = _chunkTQPQKBBLcjs.useIsHydrated.call(void 0, );
|
|
26901
26901
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
26902
26902
|
const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
|
|
26903
|
-
const rescue =
|
|
26903
|
+
const rescue = _chunkXCH7SPGIcjs.useFormRescue.call(void 0, {
|
|
26904
26904
|
form: rescueForm,
|
|
26905
26905
|
// The phone is reported as filled only; its value never leaves the form early.
|
|
26906
26906
|
fieldNames: ["email", "phone"],
|
|
@@ -26912,7 +26912,7 @@ function WaitlistForm({
|
|
|
26912
26912
|
_react.useEffect.call(void 0, () => {
|
|
26913
26913
|
rescue.track({ email, phone }, null);
|
|
26914
26914
|
}, [email, phone, rescue]);
|
|
26915
|
-
const isMailDomainGeneric =
|
|
26915
|
+
const isMailDomainGeneric = _chunkCEJDHCFZcjs.hasGenericEmailDomain.call(void 0, email);
|
|
26916
26916
|
const [syncedDefaultEmail, setSyncedDefaultEmail] = _react.useState.call(void 0, defaultEmail);
|
|
26917
26917
|
if (syncedDefaultEmail !== defaultEmail) {
|
|
26918
26918
|
setSyncedDefaultEmail(defaultEmail);
|
|
@@ -26946,7 +26946,7 @@ function WaitlistForm({
|
|
|
26946
26946
|
setShowConsentError(true);
|
|
26947
26947
|
return;
|
|
26948
26948
|
}
|
|
26949
|
-
const finalPhone = phone ?
|
|
26949
|
+
const finalPhone = phone ? _chunkCEJDHCFZcjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
|
|
26950
26950
|
try {
|
|
26951
26951
|
await onRegister(email, finalPhone, getSignals(), rescue.submitFields());
|
|
26952
26952
|
rescue.complete();
|
|
@@ -27544,7 +27544,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
27544
27544
|
}, [mobileBreakpoint]);
|
|
27545
27545
|
const panelRef = _react.useRef.call(void 0, null);
|
|
27546
27546
|
const available = useContainerExtent(resizable, isHorizontal, portalContainer);
|
|
27547
|
-
const { size, setSize, clampSize } =
|
|
27547
|
+
const { size, setSize, clampSize } = _chunkGY2JESOCcjs.useResizablePanelSize.call(void 0, {
|
|
27548
27548
|
enabled: resizable,
|
|
27549
27549
|
minSize,
|
|
27550
27550
|
maxSize,
|
|
@@ -27564,7 +27564,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
27564
27564
|
"data-state": open ? "open" : "closed",
|
|
27565
27565
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
27566
27566
|
"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",
|
|
27567
|
-
|
|
27567
|
+
_chunkGY2JESOCcjs.OVERLAY_BACKDROP_CLASS,
|
|
27568
27568
|
// Persist mode only: hold the fade-out's final (transparent) frame
|
|
27569
27569
|
// so the backdrop doesn't snap back to opacity 1 and dim the whole
|
|
27570
27570
|
// content area while the drawer is "closed" (see PERSIST_CLOSED_HOLD).
|
|
@@ -27607,7 +27607,7 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
27607
27607
|
children: [
|
|
27608
27608
|
props["aria-label"] ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive3.Title, { className: "sr-only", children: props["aria-label"] }) : null,
|
|
27609
27609
|
applyInlineSize && (!persist || open) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27610
|
-
|
|
27610
|
+
_chunkGY2JESOCcjs.PanelResizeHandle,
|
|
27611
27611
|
{
|
|
27612
27612
|
variant: "inLayout",
|
|
27613
27613
|
side: resolvedSide,
|
|
@@ -27646,11 +27646,11 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
|
|
|
27646
27646
|
}
|
|
27647
27647
|
);
|
|
27648
27648
|
AppLayoutDrawerContent.displayName = "AppLayoutDrawerContent";
|
|
27649
|
-
var AppLayoutDrawerHeader =
|
|
27650
|
-
var AppLayoutDrawerTitle =
|
|
27651
|
-
var AppLayoutDrawerDescription =
|
|
27652
|
-
var AppLayoutDrawerBody =
|
|
27653
|
-
var AppLayoutDrawerFooter =
|
|
27649
|
+
var AppLayoutDrawerHeader = _chunkGY2JESOCcjs.DrawerHeader;
|
|
27650
|
+
var AppLayoutDrawerTitle = _chunkGY2JESOCcjs.DrawerTitle;
|
|
27651
|
+
var AppLayoutDrawerDescription = _chunkGY2JESOCcjs.DrawerDescription;
|
|
27652
|
+
var AppLayoutDrawerBody = _chunkGY2JESOCcjs.DrawerBody;
|
|
27653
|
+
var AppLayoutDrawerFooter = _chunkGY2JESOCcjs.DrawerFooter;
|
|
27654
27654
|
|
|
27655
27655
|
// src/components/features/notifications/notification-tile.tsx
|
|
27656
27656
|
|
|
@@ -27669,7 +27669,7 @@ var typeColorByVariant = {
|
|
|
27669
27669
|
error: "text-ods-error"
|
|
27670
27670
|
};
|
|
27671
27671
|
var progressColorByVariant2 = {
|
|
27672
|
-
...
|
|
27672
|
+
..._chunkXCH7SPGIcjs.progressColorByVariant,
|
|
27673
27673
|
default: "bg-ods-accent",
|
|
27674
27674
|
info: "bg-ods-accent"
|
|
27675
27675
|
};
|
|
@@ -27746,7 +27746,7 @@ function NotificationTile({
|
|
|
27746
27746
|
height: 16,
|
|
27747
27747
|
unoptimized: true
|
|
27748
27748
|
}
|
|
27749
|
-
) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "size-1.5 rounded-full",
|
|
27749
|
+
) : _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "size-1.5 rounded-full", _chunkXCH7SPGIcjs.dotColorByVariant[accentVariant]) }))) }),
|
|
27750
27750
|
type ? lockscreen ? (
|
|
27751
27751
|
// A phone names the sender in plain words and never cuts them.
|
|
27752
27752
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 break-words text-ods-text-secondary text-h6", children: type })
|
|
@@ -27756,7 +27756,7 @@ function NotificationTile({
|
|
|
27756
27756
|
{
|
|
27757
27757
|
dateTime: createdAtIso,
|
|
27758
27758
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", lockscreen && "self-start"),
|
|
27759
|
-
children: _nullishCoalesce(timeLabel, () => (
|
|
27759
|
+
children: _nullishCoalesce(timeLabel, () => ( _chunkPE26VSWTcjs.formatTicketRelativeTime.call(void 0, createdAtIso)))
|
|
27760
27760
|
}
|
|
27761
27761
|
) : null,
|
|
27762
27762
|
!lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
|
|
@@ -27898,7 +27898,7 @@ function NotificationDrawer({
|
|
|
27898
27898
|
const unreadNotifications = notifications.filter((n) => !n.read);
|
|
27899
27899
|
const content = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
27900
27900
|
/* @__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,
|
|
27901
|
-
|
|
27901
|
+
_chunkGY2JESOCcjs.DrawerTitle,
|
|
27902
27902
|
{
|
|
27903
27903
|
hideClose: true,
|
|
27904
27904
|
className: "truncate",
|
|
@@ -27957,8 +27957,8 @@ function NotificationDrawer({
|
|
|
27957
27957
|
}
|
|
27958
27958
|
) });
|
|
27959
27959
|
}
|
|
27960
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27961
|
-
|
|
27960
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGY2JESOCcjs.Drawer, { open: isOpen, onOpenChange: (v) => v ? open() : close(), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27961
|
+
_chunkGY2JESOCcjs.DrawerContent,
|
|
27962
27962
|
{
|
|
27963
27963
|
side: "right",
|
|
27964
27964
|
"aria-describedby": void 0,
|
|
@@ -28054,7 +28054,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
|
|
|
28054
28054
|
] });
|
|
28055
28055
|
}
|
|
28056
28056
|
function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
28057
|
-
const { supported, permission, request } =
|
|
28057
|
+
const { supported, permission, request } = _chunkXCH7SPGIcjs.useNotificationPermission.call(void 0, );
|
|
28058
28058
|
if (!supported) return null;
|
|
28059
28059
|
const blocked = permission === "denied";
|
|
28060
28060
|
const handleChange = async (value) => {
|
|
@@ -28082,7 +28082,7 @@ function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
|
28082
28082
|
}
|
|
28083
28083
|
function NotificationsHistoryButton({ onClick, historyHref }) {
|
|
28084
28084
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28085
|
-
|
|
28085
|
+
_chunk2IFCRPNPcjs.SplitButton,
|
|
28086
28086
|
{
|
|
28087
28087
|
variant: "outline",
|
|
28088
28088
|
fullWidth: true,
|
|
@@ -28232,13 +28232,13 @@ function getApprovalMeta(notification) {
|
|
|
28232
28232
|
function resolutionToStatus(resolution) {
|
|
28233
28233
|
switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
|
|
28234
28234
|
case "APPROVED":
|
|
28235
|
-
return
|
|
28235
|
+
return _chunkGZKWF6NHcjs.APPROVAL_STATUS.APPROVED;
|
|
28236
28236
|
case "REJECTED":
|
|
28237
|
-
return
|
|
28237
|
+
return _chunkGZKWF6NHcjs.APPROVAL_STATUS.REJECTED;
|
|
28238
28238
|
case "CANCELLED":
|
|
28239
|
-
return
|
|
28239
|
+
return _chunkGZKWF6NHcjs.APPROVAL_STATUS.CANCELLED;
|
|
28240
28240
|
default:
|
|
28241
|
-
return
|
|
28241
|
+
return _chunkGZKWF6NHcjs.APPROVAL_STATUS.PENDING;
|
|
28242
28242
|
}
|
|
28243
28243
|
}
|
|
28244
28244
|
function approvalMetaToBatchData(approval) {
|
|
@@ -28284,7 +28284,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28284
28284
|
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _579 => _579.resolution]));
|
|
28285
28285
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
28286
28286
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
28287
|
-
const { innerRef, containerStyle } =
|
|
28287
|
+
const { innerRef, containerStyle } = _chunkPE26VSWTcjs.useCollapsible.call(void 0, { expanded });
|
|
28288
28288
|
if (!approval || !batchData) return null;
|
|
28289
28289
|
const tileNotification = {
|
|
28290
28290
|
...notification,
|
|
@@ -28347,7 +28347,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28347
28347
|
}
|
|
28348
28348
|
)
|
|
28349
28349
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
28350
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28350
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ApprovalStatusTag, { status }),
|
|
28351
28351
|
approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
|
|
28352
28352
|
"by ",
|
|
28353
28353
|
approval.resolvedByName
|
|
@@ -28365,12 +28365,12 @@ function ApprovalRequestNotificationTile({
|
|
|
28365
28365
|
"aria-expanded": expanded,
|
|
28366
28366
|
"aria-label": toggleLabel,
|
|
28367
28367
|
className: "ml-auto w-6 shrink-0 px-0 md:w-8",
|
|
28368
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28368
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ExpandChevron, { expanded })
|
|
28369
28369
|
}
|
|
28370
28370
|
)
|
|
28371
28371
|
] }),
|
|
28372
28372
|
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,
|
|
28373
|
-
|
|
28373
|
+
_chunkPE26VSWTcjs.ApprovalBatchMessage,
|
|
28374
28374
|
{
|
|
28375
28375
|
data: batchData,
|
|
28376
28376
|
showExecutionStatus: false,
|
|
@@ -28443,7 +28443,7 @@ function renderCustomerOption(option, isSelected) {
|
|
|
28443
28443
|
const { label, imageUrl } = option;
|
|
28444
28444
|
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: [
|
|
28445
28445
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
28446
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28446
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "square" }),
|
|
28447
28447
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", title: label, children: label })
|
|
28448
28448
|
] }),
|
|
28449
28449
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
@@ -28527,7 +28527,7 @@ function TimeTrackerPanel({
|
|
|
28527
28527
|
}));
|
|
28528
28528
|
const selectedCustomer = customerAutocompleteOptions.find((o) => o.value === selectedCustomerId);
|
|
28529
28529
|
const customerStartAdornment = selectedCustomer ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28530
|
-
|
|
28530
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
28531
28531
|
{
|
|
28532
28532
|
src: selectedCustomer.imageUrl,
|
|
28533
28533
|
alt: selectedCustomer.label,
|
|
@@ -28607,7 +28607,7 @@ function TimeTrackerPanel({
|
|
|
28607
28607
|
] }),
|
|
28608
28608
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "grid gap-[var(--spacing-system-m)]", showCustomer && "grid-cols-2"), children: [
|
|
28609
28609
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28610
|
-
|
|
28610
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
28611
28611
|
{
|
|
28612
28612
|
value: selectedTicketId,
|
|
28613
28613
|
onChange: onSelectedTicketChange,
|
|
@@ -28623,7 +28623,7 @@ function TimeTrackerPanel({
|
|
|
28623
28623
|
}
|
|
28624
28624
|
),
|
|
28625
28625
|
showCustomer && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28626
|
-
|
|
28626
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
28627
28627
|
{
|
|
28628
28628
|
value: _nullishCoalesce(selectedCustomerId, () => ( null)),
|
|
28629
28629
|
onChange: onSelectedCustomerChange,
|
|
@@ -28676,7 +28676,7 @@ function TimeTrackerPanel({
|
|
|
28676
28676
|
}
|
|
28677
28677
|
),
|
|
28678
28678
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28679
|
-
|
|
28679
|
+
_chunk2IFCRPNPcjs.SplitButton,
|
|
28680
28680
|
{
|
|
28681
28681
|
variant: "outline",
|
|
28682
28682
|
fullWidth: true,
|
|
@@ -28706,7 +28706,7 @@ var STATUS_TAG_SKIN = "gap-[var(--spacing-system-xs)] font-mono font-medium uppe
|
|
|
28706
28706
|
function StatusTag({ status }) {
|
|
28707
28707
|
if (status === "tracking") {
|
|
28708
28708
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28709
|
-
|
|
28709
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
28710
28710
|
{
|
|
28711
28711
|
variant: "success",
|
|
28712
28712
|
className: STATUS_TAG_SKIN,
|
|
@@ -28716,9 +28716,9 @@ function StatusTag({ status }) {
|
|
|
28716
28716
|
);
|
|
28717
28717
|
}
|
|
28718
28718
|
if (status === "paused") {
|
|
28719
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28719
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { variant: "warning", className: STATUS_TAG_SKIN, icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4D25RXYZcjs.PauseIcon, { className: "h-4 w-4" }), label: "Paused" });
|
|
28720
28720
|
}
|
|
28721
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28721
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { variant: "grey", className: STATUS_TAG_SKIN, label: "Ready to Track" });
|
|
28722
28722
|
}
|
|
28723
28723
|
function LastEntryRow({ entry, onClick }) {
|
|
28724
28724
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] border-b border-ods-border bg-ods-bg px-[var(--spacing-system-m)] py-[var(--spacing-system-sf)] last:border-b-0", children: [
|
|
@@ -28888,7 +28888,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
28888
28888
|
"data-state": isOpen ? "open" : "closed",
|
|
28889
28889
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
28890
28890
|
layoutContainer ? "absolute inset-0 z-[102]" : "fixed inset-0 z-[1299]",
|
|
28891
|
-
|
|
28891
|
+
_chunkGY2JESOCcjs.OVERLAY_BACKDROP_CLASS,
|
|
28892
28892
|
"data-[state=open]:animate-in data-[state=open]:fade-in-0",
|
|
28893
28893
|
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
|
|
28894
28894
|
)
|
|
@@ -28914,7 +28914,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
28914
28914
|
|
|
28915
28915
|
// src/components/features/devices/device-last-online.ts
|
|
28916
28916
|
function formatLastOnline(lastSeen) {
|
|
28917
|
-
return `Last Online: ${lastSeen ?
|
|
28917
|
+
return `Last Online: ${lastSeen ? _chunkPE26VSWTcjs.formatRelativeTime.call(void 0, lastSeen) : "\u2014"}`;
|
|
28918
28918
|
}
|
|
28919
28919
|
|
|
28920
28920
|
// src/components/features/devices/device-name.ts
|
|
@@ -28958,7 +28958,7 @@ var SELECTION_MODE_OPTIONS = [
|
|
|
28958
28958
|
label: "Select Devices by Criteria",
|
|
28959
28959
|
description: CRITERIA_MODE_DESCRIPTION,
|
|
28960
28960
|
disabled: true,
|
|
28961
|
-
trailing: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28961
|
+
trailing: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { label: "Coming Soon", variant: "grey" })
|
|
28962
28962
|
}
|
|
28963
28963
|
];
|
|
28964
28964
|
var SELECTION_MODE_OPTIONS_ENABLED = [
|
|
@@ -29063,7 +29063,7 @@ function getDeviceStatusConfig(status) {
|
|
|
29063
29063
|
}
|
|
29064
29064
|
}
|
|
29065
29065
|
function getDeviceOperatingSystem(osType) {
|
|
29066
|
-
return
|
|
29066
|
+
return _chunkCEJDHCFZcjs.getOSPlatformId.call(void 0, osType);
|
|
29067
29067
|
}
|
|
29068
29068
|
|
|
29069
29069
|
// src/components/features/devices/device-statuses.ts
|
|
@@ -29239,8 +29239,8 @@ function DevicesFilterToolbar({
|
|
|
29239
29239
|
|
|
29240
29240
|
|
|
29241
29241
|
function formatDateTime(input) {
|
|
29242
|
-
const date =
|
|
29243
|
-
return date === "\u2014" ? date : `${date} ${
|
|
29242
|
+
const date = _chunkGZKWF6NHcjs.formatDate.call(void 0, input);
|
|
29243
|
+
return date === "\u2014" ? date : `${date} ${_chunkGZKWF6NHcjs.formatTime.call(void 0, input)}`;
|
|
29244
29244
|
}
|
|
29245
29245
|
function uniqueById(options) {
|
|
29246
29246
|
const seen = /* @__PURE__ */ new Map();
|
|
@@ -29347,7 +29347,7 @@ function DevicesTableBody({
|
|
|
29347
29347
|
function OrganizationCell({ device }) {
|
|
29348
29348
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
29349
29349
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
29350
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29350
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.EntityImage, { src: fullImageUrl, alt: device.organization || "Customer", className: "size-12 content-md:size-12" }),
|
|
29351
29351
|
/* @__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, "span", { className: "break-words text-ods-text-primary text-h4", children: device.organization || "" }) })
|
|
29352
29352
|
] });
|
|
29353
29353
|
}
|
|
@@ -29391,7 +29391,7 @@ function getDeviceTableColumns(deviceFilters, filtersPending) {
|
|
|
29391
29391
|
const device = row.original;
|
|
29392
29392
|
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: [
|
|
29393
29393
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
29394
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29394
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: getDeviceName(device) }) })
|
|
29395
29395
|
] });
|
|
29396
29396
|
},
|
|
29397
29397
|
meta: { width: "flex-1 content-md:w-1/4" }
|
|
@@ -29404,7 +29404,7 @@ function getDeviceTableColumns(deviceFilters, filtersPending) {
|
|
|
29404
29404
|
const device = row.original;
|
|
29405
29405
|
const statusConfig2 = getDeviceStatusConfig(device.status);
|
|
29406
29406
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col items-start gap-1", children: [
|
|
29407
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29407
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { label: statusConfig2.label, variant: statusConfig2.variant }) }),
|
|
29408
29408
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "hidden text-ods-text-secondary text-h6 content-md:flex", children: device.last_seen ? formatDateTime(device.last_seen) : "Never" })
|
|
29409
29409
|
] });
|
|
29410
29410
|
},
|
|
@@ -29457,7 +29457,7 @@ function useTagFilterModal({
|
|
|
29457
29457
|
setParams,
|
|
29458
29458
|
onApplied = scrollMainToTop
|
|
29459
29459
|
}) {
|
|
29460
|
-
const isMdUp =
|
|
29460
|
+
const isMdUp = _chunkR3TWQ3ZJcjs.useMdUp.call(void 0, );
|
|
29461
29461
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
29462
29462
|
const pendingFiltersRef = _react.useRef.call(void 0, {});
|
|
29463
29463
|
const open = _react.useCallback.call(void 0, () => setIsOpen(true), []);
|
|
@@ -29562,7 +29562,7 @@ function CustomerCell({ device }) {
|
|
|
29562
29562
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
29563
29563
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
29564
29564
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29565
|
-
|
|
29565
|
+
_chunk2IFCRPNPcjs.EntityImage,
|
|
29566
29566
|
{
|
|
29567
29567
|
src: fullImageUrl,
|
|
29568
29568
|
alt: device.organization || "Customer",
|
|
@@ -29570,8 +29570,8 @@ function CustomerCell({ device }) {
|
|
|
29570
29570
|
}
|
|
29571
29571
|
),
|
|
29572
29572
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
29573
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29574
|
-
device.organizationEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29573
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: device.organization || "" }),
|
|
29574
|
+
device.organizationEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: device.organizationEmail })
|
|
29575
29575
|
] })
|
|
29576
29576
|
] });
|
|
29577
29577
|
}
|
|
@@ -29866,8 +29866,8 @@ function DeviceSelector({
|
|
|
29866
29866
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 items-center gap-3", children: [
|
|
29867
29867
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
29868
29868
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col", children: [
|
|
29869
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29870
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29869
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: getDeviceName(device) }),
|
|
29870
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: formatLastOnline(lastSeen) })
|
|
29871
29871
|
] })
|
|
29872
29872
|
] });
|
|
29873
29873
|
},
|
|
@@ -29902,7 +29902,7 @@ function DeviceSelector({
|
|
|
29902
29902
|
header: "STATUS",
|
|
29903
29903
|
cell: ({ row }) => {
|
|
29904
29904
|
const config = getDeviceStatusConfig(row.original.status);
|
|
29905
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29905
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { label: config.label, variant: config.variant, className: "w-min" });
|
|
29906
29906
|
},
|
|
29907
29907
|
enableSorting: false,
|
|
29908
29908
|
meta: {
|
|
@@ -30385,7 +30385,7 @@ function DevicesList({
|
|
|
30385
30385
|
const handleClearAll = _react.useCallback.call(void 0, () => patch({ search: "", tags: [] }), [patch]);
|
|
30386
30386
|
const narrowed = isNarrowed(narrowing);
|
|
30387
30387
|
const isEmptyState = !isLoading && !isPending && !narrowed && devices.length === 0;
|
|
30388
|
-
const { toolbarRef, containerStyle, stickyHeaderOffset: measuredOffset } =
|
|
30388
|
+
const { toolbarRef, containerStyle, stickyHeaderOffset: measuredOffset } = _chunkXCH7SPGIcjs.useStickyToolbar.call(void 0, );
|
|
30389
30389
|
const headerOffset = _nullishCoalesce(stickyHeaderOffset, () => ( (stickyToolbar ? measuredOffset : void 0)));
|
|
30390
30390
|
const actionsColumn = _react.useMemo.call(void 0, () => rowActions ? getDeviceActionsColumn(rowActions) : void 0, [rowActions]);
|
|
30391
30391
|
return (
|
|
@@ -30610,7 +30610,7 @@ function DevicesPanelView({
|
|
|
30610
30610
|
] })
|
|
30611
30611
|
] });
|
|
30612
30612
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30613
|
-
|
|
30613
|
+
_chunk2IFCRPNPcjs.PageLayout,
|
|
30614
30614
|
{
|
|
30615
30615
|
title,
|
|
30616
30616
|
backButton,
|
|
@@ -30618,7 +30618,7 @@ function DevicesPanelView({
|
|
|
30618
30618
|
actionsVariant: "icon-buttons",
|
|
30619
30619
|
className,
|
|
30620
30620
|
selector: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30621
|
-
|
|
30621
|
+
_chunkTQPQKBBLcjs.TabSelector,
|
|
30622
30622
|
{
|
|
30623
30623
|
value: viewMode,
|
|
30624
30624
|
onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _655 => _655(value)]),
|
|
@@ -30684,7 +30684,7 @@ var PACKAGE_SEARCH_LABEL = "Software Name";
|
|
|
30684
30684
|
var PACKAGE_SEARCH_PLACEHOLDER = "Search for Software";
|
|
30685
30685
|
function PackageSearchFieldPlaceholder({ error }) {
|
|
30686
30686
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30687
|
-
|
|
30687
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
30688
30688
|
{
|
|
30689
30689
|
label: PACKAGE_SEARCH_LABEL,
|
|
30690
30690
|
labelVariant: "large",
|
|
@@ -30739,16 +30739,16 @@ function SoftwareScheduleFields({
|
|
|
30739
30739
|
] }),
|
|
30740
30740
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30741
30741
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Time" }),
|
|
30742
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30743
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30744
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30742
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: time, onValueChange: onTimeChange, children: [
|
|
30743
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder: "Select time" }) }),
|
|
30744
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30745
30745
|
] })
|
|
30746
30746
|
] }),
|
|
30747
30747
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30748
30748
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Timezone" }),
|
|
30749
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30750
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30751
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30749
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: timeReference, onValueChange: (value) => onTimeReferenceChange(value), children: [
|
|
30750
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
30751
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: timing.timeReferenceOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30752
30752
|
] })
|
|
30753
30753
|
] })
|
|
30754
30754
|
]
|
|
@@ -30814,22 +30814,22 @@ function newSoftwareRow(key) {
|
|
|
30814
30814
|
|
|
30815
30815
|
function InfoCell2({ value, label }) {
|
|
30816
30816
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
30817
|
-
/* @__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,
|
|
30817
|
+
/* @__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, _chunk2IFCRPNPcjs.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" }) }) }),
|
|
30818
30818
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: label })
|
|
30819
30819
|
] });
|
|
30820
30820
|
}
|
|
30821
30821
|
function SoftwareRowFields({ row, removable, onChange, onRemove, renderPackageSearch }) {
|
|
30822
30822
|
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: [
|
|
30823
30823
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30824
|
-
|
|
30824
|
+
_chunk2IFCRPNPcjs.Select,
|
|
30825
30825
|
{
|
|
30826
30826
|
value: row.packageManager,
|
|
30827
30827
|
onValueChange: (value) => onChange({ ...row, packageManager: value, pkg: null }),
|
|
30828
30828
|
children: [
|
|
30829
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30830
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30829
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { label: "Package Manager", labelVariant: "large", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
30830
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: PACKAGE_MANAGERS.map((manager) => {
|
|
30831
30831
|
const Icon = PACKAGE_MANAGER_ICON[manager];
|
|
30832
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30832
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: manager, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
30833
30833
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 20, className: "shrink-0 text-ods-text-secondary" }),
|
|
30834
30834
|
PACKAGE_MANAGER_LABEL[manager]
|
|
30835
30835
|
] }) }, manager);
|
|
@@ -30927,7 +30927,7 @@ function SoftwareActionForm({
|
|
|
30927
30927
|
}
|
|
30928
30928
|
);
|
|
30929
30929
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30930
|
-
|
|
30930
|
+
_chunk2IFCRPNPcjs.PageLayout,
|
|
30931
30931
|
{
|
|
30932
30932
|
title: copy.formTitle,
|
|
30933
30933
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -31008,7 +31008,7 @@ function LogDrawer({
|
|
|
31008
31008
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, AppLayoutDrawerHeader, { children: [
|
|
31009
31009
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AppLayoutDrawerTitle, { children: "Log Details" }),
|
|
31010
31010
|
(statusTag || timestamp) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
31011
|
-
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31011
|
+
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { label: statusTag.label, variant: statusTag.variant }),
|
|
31012
31012
|
timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h6", children: timestamp })
|
|
31013
31013
|
] })
|
|
31014
31014
|
] }),
|
|
@@ -31016,7 +31016,7 @@ function LogDrawer({
|
|
|
31016
31016
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-0 flex-1 space-y-4 overflow-y-auto", children: [
|
|
31017
31017
|
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 }) }),
|
|
31018
31018
|
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: [
|
|
31019
|
-
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,
|
|
31019
|
+
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, _chunk2IFCRPNPcjs.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 }),
|
|
31020
31020
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: field.label })
|
|
31021
31021
|
] }, typeof field.label === "string" ? field.label : "")) }),
|
|
31022
31022
|
children
|
|
@@ -31064,7 +31064,7 @@ function LogsPageView({
|
|
|
31064
31064
|
],
|
|
31065
31065
|
[onRefresh]
|
|
31066
31066
|
);
|
|
31067
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31067
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.PageLayout, { title: "Logs", actions, showHeader, className, children: [
|
|
31068
31068
|
!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: [
|
|
31069
31069
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31070
31070
|
_chunkHTRILBJDcjs.Input,
|
|
@@ -31134,10 +31134,10 @@ var ToolBadge = ({
|
|
|
31134
31134
|
className,
|
|
31135
31135
|
iconClassName
|
|
31136
31136
|
}) => {
|
|
31137
|
-
const text = _nullishCoalesce(label, () => ( (toolType ?
|
|
31138
|
-
const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31137
|
+
const text = _nullishCoalesce(label, () => ( (toolType ? _chunkCEJDHCFZcjs.getToolLabel.call(void 0, toolType) : "")));
|
|
31138
|
+
const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSVP6DJFLcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }) : null)));
|
|
31139
31139
|
const linked = (node, linkClassName) => href && targetPlatform ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31140
|
-
|
|
31140
|
+
_chunkTQPQKBBLcjs.NavLinkAnchorViaRuntime,
|
|
31141
31141
|
{
|
|
31142
31142
|
href,
|
|
31143
31143
|
targetPlatform,
|
|
@@ -31215,8 +31215,8 @@ function LogsTableView({
|
|
|
31215
31215
|
accessorKey: "logId",
|
|
31216
31216
|
header: logIdHeader ? () => logIdHeader : "Log ID",
|
|
31217
31217
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col justify-center", children: [
|
|
31218
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31219
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31218
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: row.original.timestamp }),
|
|
31219
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.logId })
|
|
31220
31220
|
] }),
|
|
31221
31221
|
enableSorting: false,
|
|
31222
31222
|
meta: { width: LOG_COLUMN_WIDTHS.logId, alwaysShowHeader: true }
|
|
@@ -31224,7 +31224,7 @@ function LogsTableView({
|
|
|
31224
31224
|
{
|
|
31225
31225
|
accessorKey: "status",
|
|
31226
31226
|
header: "Status",
|
|
31227
|
-
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31227
|
+
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { label: row.original.status.label, variant: row.original.status.variant }) }),
|
|
31228
31228
|
enableSorting: false,
|
|
31229
31229
|
filterFn: multiSelect,
|
|
31230
31230
|
meta: {
|
|
@@ -31244,7 +31244,7 @@ function LogsTableView({
|
|
|
31244
31244
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31245
31245
|
ToolBadge,
|
|
31246
31246
|
{
|
|
31247
|
-
toolType:
|
|
31247
|
+
toolType: _chunkCEJDHCFZcjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
|
|
31248
31248
|
iconClassName: "h-4 w-4 content-md:h-6 content-md:w-6"
|
|
31249
31249
|
}
|
|
31250
31250
|
),
|
|
@@ -31256,7 +31256,7 @@ function LogsTableView({
|
|
|
31256
31256
|
filter: {
|
|
31257
31257
|
options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _663 => _663.toolTypes, 'access', _664 => _664.map, 'call', _665 => _665((toolType) => ({
|
|
31258
31258
|
id: toolType,
|
|
31259
|
-
label:
|
|
31259
|
+
label: _chunkCEJDHCFZcjs.toToolLabel.call(void 0, toolType),
|
|
31260
31260
|
value: toolType
|
|
31261
31261
|
}))]), () => ( []))
|
|
31262
31262
|
}
|
|
@@ -31268,8 +31268,8 @@ function LogsTableView({
|
|
|
31268
31268
|
cell: ({ row }) => {
|
|
31269
31269
|
const { deviceName, organization } = logSourceLabels(row.original.device);
|
|
31270
31270
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-h-[60px] flex-col justify-center gap-1 py-2", children: [
|
|
31271
|
-
deviceName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31272
|
-
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31271
|
+
deviceName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: deviceName }),
|
|
31272
|
+
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: organization })
|
|
31273
31273
|
] });
|
|
31274
31274
|
},
|
|
31275
31275
|
enableSorting: false,
|
|
@@ -31283,7 +31283,7 @@ function LogsTableView({
|
|
|
31283
31283
|
{
|
|
31284
31284
|
accessorKey: "description",
|
|
31285
31285
|
header: "Log Details",
|
|
31286
|
-
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31286
|
+
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 3, className: "text-ods-text-secondary text-h6", children: row.original.description.title }),
|
|
31287
31287
|
enableSorting: false,
|
|
31288
31288
|
meta: { width: LOG_COLUMN_WIDTHS.description, hideAt: "lg" }
|
|
31289
31289
|
},
|
|
@@ -31314,7 +31314,7 @@ function LogsTableView({
|
|
|
31314
31314
|
cell: ({ row }) => /* @__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,
|
|
31315
31315
|
_chunk2QMBXGMQcjs.Button,
|
|
31316
31316
|
{
|
|
31317
|
-
onClick: getLogHref ?
|
|
31317
|
+
onClick: getLogHref ? _chunkCEJDHCFZcjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
|
|
31318
31318
|
variant: "outline",
|
|
31319
31319
|
size: "icon",
|
|
31320
31320
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -31535,29 +31535,29 @@ function scriptExecutionStatus(status) {
|
|
|
31535
31535
|
|
|
31536
31536
|
function ExecutionSourceBadge({ source, className }) {
|
|
31537
31537
|
const tagProps = { as: "span", variant: "outline", className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0", className) };
|
|
31538
|
-
if (source === "SCHEDULED") return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31538
|
+
if (source === "SCHEDULED") return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { ...tagProps, label: "Scheduled" });
|
|
31539
31539
|
if (source === "AI_ASSISTANT") {
|
|
31540
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31540
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { ...tagProps, label: "Mingo", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.AgentMark, { agent: "mingo", className: "size-4" }) });
|
|
31541
31541
|
}
|
|
31542
31542
|
return null;
|
|
31543
31543
|
}
|
|
31544
31544
|
function ExecutionTimestampCell({ timestamp, executionId }) {
|
|
31545
31545
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31546
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31547
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31546
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: timestamp }),
|
|
31547
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: executionId })
|
|
31548
31548
|
] });
|
|
31549
31549
|
}
|
|
31550
31550
|
function ExecutionStatusCell({ status }) {
|
|
31551
31551
|
const presentation = scriptExecutionStatus(status);
|
|
31552
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31552
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { label: _nullishCoalesce(_optionalChain([presentation, 'optionalAccess', _678 => _678.label]), () => ( String(_nullishCoalesce(status, () => ( ""))))), variant: _nullishCoalesce(_optionalChain([presentation, 'optionalAccess', _679 => _679.variant]), () => ( "grey")) }) });
|
|
31553
31553
|
}
|
|
31554
31554
|
function ExecutionDeviceCell({ name, organization }) {
|
|
31555
31555
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31556
31556
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-1", children: [
|
|
31557
31557
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPTK7GOIIcjs.MonitorIcon, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
31558
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31558
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: name }) : name })
|
|
31559
31559
|
] }),
|
|
31560
|
-
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31560
|
+
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: organization })
|
|
31561
31561
|
] });
|
|
31562
31562
|
}
|
|
31563
31563
|
function ExecutionInitiatorCell({
|
|
@@ -31570,15 +31570,15 @@ function ExecutionInitiatorCell({
|
|
|
31570
31570
|
avatar,
|
|
31571
31571
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
31572
31572
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
31573
|
-
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31573
|
+
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: name }) : name,
|
|
31574
31574
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExecutionSourceBadge, { source })
|
|
31575
31575
|
] }),
|
|
31576
|
-
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31576
|
+
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: scriptName })
|
|
31577
31577
|
] })
|
|
31578
31578
|
] });
|
|
31579
31579
|
}
|
|
31580
31580
|
function ExecutionResultCell({ result, empty = null }) {
|
|
31581
|
-
return result ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31581
|
+
return result ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 2, children: result }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: empty });
|
|
31582
31582
|
}
|
|
31583
31583
|
function ScriptExecutionResult({
|
|
31584
31584
|
result,
|
|
@@ -31596,14 +31596,14 @@ function ScriptExecutionResult({
|
|
|
31596
31596
|
|
|
31597
31597
|
function ScriptNameCell({ name, description }) {
|
|
31598
31598
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31599
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31600
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31599
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: name }),
|
|
31600
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: description })
|
|
31601
31601
|
] });
|
|
31602
31602
|
}
|
|
31603
31603
|
function ScheduleDateTimeCell({ date, time }) {
|
|
31604
31604
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31605
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31606
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31605
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: date }),
|
|
31606
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: time })
|
|
31607
31607
|
] });
|
|
31608
31608
|
}
|
|
31609
31609
|
|
|
@@ -31689,7 +31689,7 @@ function OpenInNewTabCell({ href }) {
|
|
|
31689
31689
|
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,
|
|
31690
31690
|
_chunk2QMBXGMQcjs.Button,
|
|
31691
31691
|
{
|
|
31692
|
-
onClick:
|
|
31692
|
+
onClick: _chunkCEJDHCFZcjs.openInNewTab.call(void 0, href),
|
|
31693
31693
|
variant: "outline",
|
|
31694
31694
|
size: "icon",
|
|
31695
31695
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -31722,7 +31722,7 @@ function ScriptExecutionsTable({
|
|
|
31722
31722
|
ExecutionInitiatorCell,
|
|
31723
31723
|
{
|
|
31724
31724
|
avatar: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31725
|
-
|
|
31725
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
31726
31726
|
{
|
|
31727
31727
|
variant: "round",
|
|
31728
31728
|
size: "md",
|
|
@@ -31802,7 +31802,7 @@ function ScriptSchedulesTable({
|
|
|
31802
31802
|
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" })),
|
|
31803
31803
|
cell(
|
|
31804
31804
|
SCHEDULE_COLUMNS.dateTime,
|
|
31805
|
-
(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,
|
|
31805
|
+
(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, _chunk2IFCRPNPcjs.TruncateText, { tone: "secondary", children: row.trigger }) : null
|
|
31806
31806
|
),
|
|
31807
31807
|
cell(SCHEDULE_COLUMNS.repeat, (row) => row.repeat ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: VALUE_CLASS, children: row.repeat }) : null),
|
|
31808
31808
|
cell(SCHEDULE_COLUMNS.deviceCount, (row) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: VALUE_CLASS, children: row.deviceCount }))
|
|
@@ -31838,9 +31838,9 @@ function ScriptSchedulesTable({
|
|
|
31838
31838
|
|
|
31839
31839
|
// src/components/features/scripts/shell-types.ts
|
|
31840
31840
|
var SCRIPT_SHELL_TYPES = [
|
|
31841
|
-
{ id:
|
|
31842
|
-
{ id:
|
|
31843
|
-
{ id:
|
|
31841
|
+
{ id: _chunkCEJDHCFZcjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
|
|
31842
|
+
{ id: _chunkCEJDHCFZcjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
|
|
31843
|
+
{ id: _chunkCEJDHCFZcjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
|
|
31844
31844
|
];
|
|
31845
31845
|
function scriptShellType(value) {
|
|
31846
31846
|
return SCRIPT_SHELL_TYPES.find((shell) => shell.value === value);
|
|
@@ -31891,7 +31891,7 @@ function ScriptsTable({
|
|
|
31891
31891
|
SCRIPT_COLUMNS.authorId,
|
|
31892
31892
|
(row) => row.author ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
|
|
31893
31893
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31894
|
-
|
|
31894
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
31895
31895
|
{
|
|
31896
31896
|
variant: "round",
|
|
31897
31897
|
size: "sm",
|
|
@@ -31901,7 +31901,7 @@ function ScriptsTable({
|
|
|
31901
31901
|
initialsClassName: "text-ods-text-secondary"
|
|
31902
31902
|
}
|
|
31903
31903
|
),
|
|
31904
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31904
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: row.author.name }) })
|
|
31905
31905
|
] }) : null
|
|
31906
31906
|
)
|
|
31907
31907
|
];
|
|
@@ -32022,7 +32022,7 @@ function slotValue(minutesOfDay) {
|
|
|
32022
32022
|
return `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}`;
|
|
32023
32023
|
}
|
|
32024
32024
|
function slotLabel(minutesOfDay) {
|
|
32025
|
-
return
|
|
32025
|
+
return _chunkGZKWF6NHcjs.formatTime.call(void 0, new Date(1970, 0, 1, Math.floor(minutesOfDay / 60), minutesOfDay % 60));
|
|
32026
32026
|
}
|
|
32027
32027
|
function getTimeSlotOptions(forDate, timeReference) {
|
|
32028
32028
|
const base = slotBaseMinutes(timeReference);
|
|
@@ -32243,9 +32243,9 @@ function ReconnectWindowFields({
|
|
|
32243
32243
|
invalid
|
|
32244
32244
|
}
|
|
32245
32245
|
),
|
|
32246
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32247
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32248
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32246
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: unit, onValueChange: (next) => onUnitChange(next), disabled, children: [
|
|
32247
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: controlWidth, "aria-label": "Stop retry after unit", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
32248
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
32249
32249
|
] })
|
|
32250
32250
|
] });
|
|
32251
32251
|
}
|
|
@@ -32313,7 +32313,7 @@ function ScheduleOfflineFields({ showErrors, disabled = false }) {
|
|
|
32313
32313
|
options
|
|
32314
32314
|
}
|
|
32315
32315
|
),
|
|
32316
|
-
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,
|
|
32316
|
+
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, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: intervalError }) })
|
|
32317
32317
|
]
|
|
32318
32318
|
}
|
|
32319
32319
|
) }) })
|
|
@@ -32389,7 +32389,7 @@ function useSortableListContext() {
|
|
|
32389
32389
|
}
|
|
32390
32390
|
function SortableList({ onReorder, getItemLabel, disabled = false, className, children }) {
|
|
32391
32391
|
const listRef = _react.useRef.call(void 0, null);
|
|
32392
|
-
const dragAndDropEnabled =
|
|
32392
|
+
const dragAndDropEnabled = _chunkFQSXZC2Kcjs.useDragAndDropEnabled.call(void 0, );
|
|
32393
32393
|
const dragType = _react.useId.call(void 0, );
|
|
32394
32394
|
const [announcement, setAnnouncement] = _react.useState.call(void 0, "");
|
|
32395
32395
|
const onReorderRef = _react.useRef.call(void 0, onReorder);
|
|
@@ -32422,8 +32422,8 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
32422
32422
|
// Dragging towards the edge of the screen — or past it — scrolls whatever
|
|
32423
32423
|
// actually scrolls there: the page, the layout's `<main>`, or the list
|
|
32424
32424
|
// itself when it has its own overflow.
|
|
32425
|
-
|
|
32426
|
-
|
|
32425
|
+
_chunkE4LA4BEHcjs.autoScrollAncestors.call(void 0, list),
|
|
32426
|
+
_chunkE4LA4BEHcjs.autoScrollBothWays.call(void 0, list),
|
|
32427
32427
|
// One target for the whole list: which slot a drop lands in is answered by
|
|
32428
32428
|
// geometry, so this only has to say "inside the list, or outside it".
|
|
32429
32429
|
_adapter.dropTargetForElements.call(void 0, {
|
|
@@ -32720,7 +32720,7 @@ function useSortableItem() {
|
|
|
32720
32720
|
return _combine.combine.call(void 0,
|
|
32721
32721
|
// The drag has to start as a "move", or its first frame is drawn with the
|
|
32722
32722
|
// copy cursor — see `drag-effect.ts`.
|
|
32723
|
-
|
|
32723
|
+
_chunkE4LA4BEHcjs.holdMoveDragEffect.call(void 0, item),
|
|
32724
32724
|
_adapter.draggable.call(void 0, {
|
|
32725
32725
|
element: item,
|
|
32726
32726
|
dragHandle: handle,
|
|
@@ -32767,7 +32767,7 @@ function ScheduleScriptPickerCard({
|
|
|
32767
32767
|
const selected = watch(`scripts.${index}`);
|
|
32768
32768
|
const runParamsLocked = disabled || !_optionalChain([selected, 'optionalAccess', _706 => _706.scriptId]);
|
|
32769
32769
|
const { itemRef, dragHandleProps, isDragging, dragAndDropEnabled } = useSortableItem();
|
|
32770
|
-
const isMdUp =
|
|
32770
|
+
const isMdUp = _chunkMWLD6NXVcjs.useContentMdUp.call(void 0, );
|
|
32771
32771
|
const handleScriptPick = (row) => {
|
|
32772
32772
|
if (!row) {
|
|
32773
32773
|
setValue(`scripts.${index}`, EMPTY_SCHEDULE_SCRIPT_ROW, { shouldValidate: true });
|
|
@@ -33144,24 +33144,24 @@ function ScheduleTimingFields({
|
|
|
33144
33144
|
// `''` reads as "no selection" to Radix, so the placeholder shows
|
|
33145
33145
|
// until a slot is picked — a date at midnight no longer
|
|
33146
33146
|
// masquerades as a chosen 12:00 AM.
|
|
33147
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33147
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.Select, { value: field.value, onValueChange: field.onChange, disabled: fieldsDisabled, children: [
|
|
33148
33148
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33149
|
-
|
|
33149
|
+
_chunk2IFCRPNPcjs.SelectTrigger,
|
|
33150
33150
|
{
|
|
33151
33151
|
className: "w-full",
|
|
33152
33152
|
error: _nullishCoalesce(pastTimeError, () => ( (showErrors ? _optionalChain([fieldState, 'access', _717 => _717.error, 'optionalAccess', _718 => _718.message]) : void 0))),
|
|
33153
33153
|
invalid: !!pastTimeError || showErrors && !!fieldState.error,
|
|
33154
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33154
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, { placeholder: "Select time" })
|
|
33155
33155
|
}
|
|
33156
33156
|
),
|
|
33157
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33157
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: timeSlots.length === 0 ? (
|
|
33158
33158
|
// Deliberately NOT a `SelectItem` — there is nothing here
|
|
33159
33159
|
// to select, and a selectable row would put a bogus value
|
|
33160
33160
|
// in the form. It replaces a popup that opened blank; the
|
|
33161
33161
|
// Date field carries the same sentence for whoever never
|
|
33162
33162
|
// opens this one.
|
|
33163
33163
|
/* @__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 })
|
|
33164
|
-
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33164
|
+
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33165
33165
|
] })
|
|
33166
33166
|
)
|
|
33167
33167
|
}
|
|
@@ -33175,14 +33175,14 @@ function ScheduleTimingFields({
|
|
|
33175
33175
|
name: "timeReference",
|
|
33176
33176
|
control,
|
|
33177
33177
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33178
|
-
|
|
33178
|
+
_chunk2IFCRPNPcjs.Select,
|
|
33179
33179
|
{
|
|
33180
33180
|
value: field.value,
|
|
33181
33181
|
onValueChange: (next) => handleTimeReferenceChange(field.onChange, next),
|
|
33182
33182
|
disabled: fieldsDisabled,
|
|
33183
33183
|
children: [
|
|
33184
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33185
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33184
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "w-full", "aria-label": "Timezone", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
33185
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: SCHEDULE_TIME_REFERENCE_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33186
33186
|
]
|
|
33187
33187
|
}
|
|
33188
33188
|
)
|
|
@@ -33242,7 +33242,7 @@ function ScheduleTimingFields({
|
|
|
33242
33242
|
name: "repeatUnit",
|
|
33243
33243
|
control,
|
|
33244
33244
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33245
|
-
|
|
33245
|
+
_chunk2IFCRPNPcjs.Select,
|
|
33246
33246
|
{
|
|
33247
33247
|
value: field.value,
|
|
33248
33248
|
onValueChange: (next) => {
|
|
@@ -33253,8 +33253,8 @@ function ScheduleTimingFields({
|
|
|
33253
33253
|
},
|
|
33254
33254
|
disabled: fieldsDisabled || !repeatEnabled,
|
|
33255
33255
|
children: [
|
|
33256
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33257
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33256
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectValue, {}) }),
|
|
33257
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33258
33258
|
]
|
|
33259
33259
|
}
|
|
33260
33260
|
)
|
|
@@ -33273,7 +33273,7 @@ function ScheduleFormFields({
|
|
|
33273
33273
|
disabled = false,
|
|
33274
33274
|
renderScriptSearch,
|
|
33275
33275
|
timeReferenceGate = "off",
|
|
33276
|
-
platforms =
|
|
33276
|
+
platforms = _chunkCEJDHCFZcjs.OS_PLATFORMS,
|
|
33277
33277
|
comingSoonPlatforms = [],
|
|
33278
33278
|
getTimeSlots,
|
|
33279
33279
|
nameLayout = "stacked",
|
|
@@ -33286,7 +33286,7 @@ function ScheduleFormFields({
|
|
|
33286
33286
|
addScripts = true
|
|
33287
33287
|
}) {
|
|
33288
33288
|
const { control, formState, getValues, setValue } = _reacthookform.useFormContext.call(void 0, );
|
|
33289
|
-
const isMdUp =
|
|
33289
|
+
const isMdUp = _chunkMWLD6NXVcjs.useContentMdUp.call(void 0, );
|
|
33290
33290
|
const supportedPlatforms = _reacthookform.useWatch.call(void 0, { control, name: "supportedPlatforms" });
|
|
33291
33291
|
const togglePlatform = _react.useCallback.call(void 0,
|
|
33292
33292
|
(platform) => {
|
|
@@ -33343,7 +33343,7 @@ function ScheduleFormFields({
|
|
|
33343
33343
|
platform.id
|
|
33344
33344
|
);
|
|
33345
33345
|
}) }),
|
|
33346
|
-
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,
|
|
33346
|
+
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, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: _nullishCoalesce(formState.errors.supportedPlatforms.message, () => ( "")) }) })
|
|
33347
33347
|
]
|
|
33348
33348
|
}
|
|
33349
33349
|
);
|
|
@@ -33419,7 +33419,7 @@ function ScheduleFormFields({
|
|
|
33419
33419
|
// src/components/features/scripts/schedule-form/schedule-script-search-field.tsx
|
|
33420
33420
|
|
|
33421
33421
|
function ScriptPlatformIcons({ platforms }) {
|
|
33422
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children:
|
|
33422
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkCEJDHCFZcjs.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)) });
|
|
33423
33423
|
}
|
|
33424
33424
|
function ScheduleScriptSearchField({
|
|
33425
33425
|
scriptId,
|
|
@@ -33445,7 +33445,7 @@ function ScheduleScriptSearchField({
|
|
|
33445
33445
|
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: [
|
|
33446
33446
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Select Script" }),
|
|
33447
33447
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33448
|
-
|
|
33448
|
+
_chunk2IFCRPNPcjs.Autocomplete,
|
|
33449
33449
|
{
|
|
33450
33450
|
options,
|
|
33451
33451
|
value: scriptId || null,
|
|
@@ -33460,7 +33460,7 @@ function ScheduleScriptSearchField({
|
|
|
33460
33460
|
error,
|
|
33461
33461
|
invalid,
|
|
33462
33462
|
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: [
|
|
33463
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33463
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { className: isSelected ? "text-ods-accent" : void 0, children: option.label }) }),
|
|
33464
33464
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScriptPlatformIcons, { platforms: _nullishCoalesce(_optionalChain([scripts, 'access', _724 => _724.find, 'call', _725 => _725((s) => s.id === option.value), 'optionalAccess', _726 => _726.supportedPlatforms]), () => ( [])) })
|
|
33465
33465
|
] })
|
|
33466
33466
|
}
|
|
@@ -33492,7 +33492,7 @@ function getKnowledgeBaseOpenColumn(getHref) {
|
|
|
33492
33492
|
cell: ({ row }) => /* @__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,
|
|
33493
33493
|
_chunk2QMBXGMQcjs.Button,
|
|
33494
33494
|
{
|
|
33495
|
-
onClick:
|
|
33495
|
+
onClick: _chunkCEJDHCFZcjs.openInNewTab.call(void 0, getHref(row.original)),
|
|
33496
33496
|
variant: "outline",
|
|
33497
33497
|
size: "icon",
|
|
33498
33498
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -33518,9 +33518,9 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33518
33518
|
/* @__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" }) }),
|
|
33519
33519
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33520
33520
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33521
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33521
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: item.name }) }),
|
|
33522
33522
|
tagStatus && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33523
|
-
|
|
33523
|
+
_chunkEQZXJUYVcjs.Tag,
|
|
33524
33524
|
{
|
|
33525
33525
|
variant: KNOWLEDGE_BASE_STATUS_VARIANT[tagStatus],
|
|
33526
33526
|
label: tagStatus,
|
|
@@ -33528,7 +33528,7 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33528
33528
|
}
|
|
33529
33529
|
)
|
|
33530
33530
|
] }),
|
|
33531
|
-
item.type === "ARTICLE" && item.summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33531
|
+
item.type === "ARTICLE" && item.summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: item.summary })
|
|
33532
33532
|
] })
|
|
33533
33533
|
] });
|
|
33534
33534
|
},
|
|
@@ -33543,8 +33543,8 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33543
33543
|
const ts = mode === "archive" ? _nullishCoalesce(row.original.updatedAt, () => ( row.original.createdAt)) : row.original.createdAt;
|
|
33544
33544
|
if (!ts) return null;
|
|
33545
33545
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col whitespace-nowrap", children: [
|
|
33546
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children:
|
|
33547
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children:
|
|
33546
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: _chunkGZKWF6NHcjs.formatDate.call(void 0, ts) }),
|
|
33547
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children: _chunkGZKWF6NHcjs.formatTime.call(void 0, ts) })
|
|
33548
33548
|
] });
|
|
33549
33549
|
},
|
|
33550
33550
|
enableSorting: false,
|
|
@@ -33608,7 +33608,7 @@ function KnowledgeBaseArticleView({
|
|
|
33608
33608
|
className = "px-[var(--spacing-system-l)] pb-[var(--spacing-system-l)]"
|
|
33609
33609
|
}) {
|
|
33610
33610
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33611
|
-
|
|
33611
|
+
_chunk2IFCRPNPcjs.PageLayout,
|
|
33612
33612
|
{
|
|
33613
33613
|
title,
|
|
33614
33614
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -33617,11 +33617,11 @@ function KnowledgeBaseArticleView({
|
|
|
33617
33617
|
menuActions,
|
|
33618
33618
|
className,
|
|
33619
33619
|
children: [
|
|
33620
|
-
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,
|
|
33621
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33620
|
+
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, _chunkEQZXJUYVcjs.Tag, { label: tag.label, variant: "outline", className: "max-w-full" }, tag.id)) }),
|
|
33621
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.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: [
|
|
33622
33622
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33623
|
-
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33624
|
-
|
|
33623
|
+
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE4LA4BEHcjs.DeletedUserAvatar, { size: "md" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33624
|
+
_chunkEQZXJUYVcjs.SquareAvatar,
|
|
33625
33625
|
{
|
|
33626
33626
|
src: author.imageUrl,
|
|
33627
33627
|
fallback: _nullishCoalesce(author.name, () => ( "A")),
|
|
@@ -33631,12 +33631,12 @@ function KnowledgeBaseArticleView({
|
|
|
33631
33631
|
}
|
|
33632
33632
|
),
|
|
33633
33633
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33634
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33634
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { className: author.deleted ? "text-ods-error" : void 0, children: _nullishCoalesce(author.name, () => ( "Unknown")) }),
|
|
33635
33635
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Author" })
|
|
33636
33636
|
] })
|
|
33637
33637
|
] }),
|
|
33638
33638
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 flex-col justify-center", children: [
|
|
33639
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33639
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { children: updatedLabel }),
|
|
33640
33640
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Updated" })
|
|
33641
33641
|
] }),
|
|
33642
33642
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -33647,7 +33647,7 @@ function KnowledgeBaseArticleView({
|
|
|
33647
33647
|
}
|
|
33648
33648
|
),
|
|
33649
33649
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 flex-col items-start justify-center gap-[var(--spacing-system-xxs)]", children: [
|
|
33650
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33650
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { variant: KNOWLEDGE_BASE_STATUS_VARIANT[status], label: status }),
|
|
33651
33651
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Status" })
|
|
33652
33652
|
] })
|
|
33653
33653
|
] }) }),
|
|
@@ -33730,7 +33730,7 @@ function ConversationCard({
|
|
|
33730
33730
|
agent,
|
|
33731
33731
|
className
|
|
33732
33732
|
}) {
|
|
33733
|
-
const tint =
|
|
33733
|
+
const tint = _chunkOJJ4RL2Tcjs.useAgentTint.call(void 0, agent);
|
|
33734
33734
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33735
33735
|
"div",
|
|
33736
33736
|
{
|
|
@@ -33740,13 +33740,13 @@ function ConversationCard({
|
|
|
33740
33740
|
),
|
|
33741
33741
|
style: tint,
|
|
33742
33742
|
children: [
|
|
33743
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33743
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCEJDHCFZcjs.ChatTurn, { avatar: requester.avatar, name: requester.name, meta: requester.meta, time: requester.time, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "m-0 line-clamp-2 min-h-[2lh] text-ods-text-primary text-h3", title: request, children: [
|
|
33744
33744
|
"\u201C",
|
|
33745
33745
|
request,
|
|
33746
33746
|
"\u201D"
|
|
33747
33747
|
] }) }),
|
|
33748
33748
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33749
|
-
|
|
33749
|
+
_chunkCEJDHCFZcjs.ChatTurn,
|
|
33750
33750
|
{
|
|
33751
33751
|
avatar: responder.avatar,
|
|
33752
33752
|
name: responder.name,
|
|
@@ -33762,7 +33762,7 @@ function ConversationCard({
|
|
|
33762
33762
|
),
|
|
33763
33763
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mt-auto flex items-center justify-between gap-[var(--spacing-system-sf)] text-ods-text-secondary text-h6", children: [
|
|
33764
33764
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: footerLabel }),
|
|
33765
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33765
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.Tag, { as: "span", label: footerValue, variant: footerTone === "attention" ? "warning" : "badge" })
|
|
33766
33766
|
] })
|
|
33767
33767
|
]
|
|
33768
33768
|
}
|
|
@@ -33782,7 +33782,7 @@ function Highlights({ items, className }) {
|
|
|
33782
33782
|
if (items.length === 0) return null;
|
|
33783
33783
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: _chunk3ATAYP36cjs.cn.call(void 0, "grid grid-cols-1 gap-2", className), children: items.slice(0, 3).map((text) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "li", { className: "flex min-w-0 items-center gap-2.5", children: [
|
|
33784
33784
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "shrink-0 text-ods-flamingo-cyan" }),
|
|
33785
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33785
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", triggerClassName: "flex-1", children: text })
|
|
33786
33786
|
] }, text)) });
|
|
33787
33787
|
}
|
|
33788
33788
|
function Example({
|
|
@@ -33811,7 +33811,7 @@ function Example({
|
|
|
33811
33811
|
mark(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _728 => _728.mark]), () => ( requesterMark))),
|
|
33812
33812
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
33813
33813
|
who(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _729 => _729.name]), () => ( labels.requester)), _nullishCoalesce(_optionalChain([requester, 'optionalAccess', _730 => _730.note]), () => ( labels.requesterNote))),
|
|
33814
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33814
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 2, variant: "h4", className: "min-h-[2lh]", children: `\u201C${example.request}\u201D` })
|
|
33815
33815
|
] })
|
|
33816
33816
|
] }),
|
|
33817
33817
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 gap-2.5 border-t border-ods-border pt-3", children: [
|
|
@@ -33820,7 +33820,7 @@ function Example({
|
|
|
33820
33820
|
who(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _732 => _732.name]), () => ( labels.responder)), _nullishCoalesce(_optionalChain([responder, 'optionalAccess', _733 => _733.note]), () => ( labels.responderNote))),
|
|
33821
33821
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-start gap-2", children: [
|
|
33822
33822
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "mt-0.5 shrink-0 text-ods-flamingo-cyan" }),
|
|
33823
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33823
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", className: "min-h-[2lh]", triggerClassName: "flex-1", children: example.outcome })
|
|
33824
33824
|
] })
|
|
33825
33825
|
] })
|
|
33826
33826
|
] })
|
|
@@ -33954,7 +33954,7 @@ function CapabilityExplorer({
|
|
|
33954
33954
|
responderMark,
|
|
33955
33955
|
className
|
|
33956
33956
|
}) {
|
|
33957
|
-
const wide =
|
|
33957
|
+
const wide = _chunkMWLD6NXVcjs.useContentLgUp.call(void 0, );
|
|
33958
33958
|
const listRef = _react.useRef.call(void 0, null);
|
|
33959
33959
|
if (items.length === 0) return null;
|
|
33960
33960
|
if (wide === void 0) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CapabilityExplorerSkeleton, { className });
|
|
@@ -33979,16 +33979,16 @@ function CapabilityExplorer({
|
|
|
33979
33979
|
),
|
|
33980
33980
|
children: [
|
|
33981
33981
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
33982
|
-
item.iconName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex size-9 shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg text-ods-flamingo-cyan", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33982
|
+
item.iconName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex size-9 shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg text-ods-flamingo-cyan", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.EntityIcon, { icon: { name: item.iconName }, size: 18 }) }),
|
|
33983
33983
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
33984
33984
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h3", { className: "flex min-w-0 items-center gap-2 text-ods-text-primary text-h4", children: [
|
|
33985
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33985
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { as: "span", variant: "h4", triggerClassName: "flex-1", children: item.title }),
|
|
33986
33986
|
item.badge
|
|
33987
33987
|
] }),
|
|
33988
|
-
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33988
|
+
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { variant: "h6", tone: "secondary", children: item.caption })
|
|
33989
33989
|
] })
|
|
33990
33990
|
] }),
|
|
33991
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33991
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 3, variant: "h6", tone: "secondary", className: "min-h-[3lh]", children: item.intro }),
|
|
33992
33992
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-lg border border-ods-border", children: renderScreen(item, { compact: true }) }),
|
|
33993
33993
|
item.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33994
33994
|
Example,
|
|
@@ -34063,7 +34063,7 @@ function CapabilityExplorer({
|
|
|
34063
34063
|
"flex size-9 shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg",
|
|
34064
34064
|
selected ? "text-ods-flamingo-cyan" : "text-ods-text-secondary"
|
|
34065
34065
|
),
|
|
34066
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34066
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.EntityIcon, { icon: { name: item.iconName }, size: 18 })
|
|
34067
34067
|
}
|
|
34068
34068
|
),
|
|
34069
34069
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "min-w-0 flex-1", children: [
|
|
@@ -34116,8 +34116,8 @@ function CapabilityExplorer({
|
|
|
34116
34116
|
),
|
|
34117
34117
|
children: [
|
|
34118
34118
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col overflow-hidden", children: [
|
|
34119
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34120
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34119
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 2, variant: "h2", className: "mb-2", children: active.title }),
|
|
34120
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.TruncateText, { lines: 3, variant: "h4", tone: "secondary", className: "min-h-[3lh]", children: active.intro }),
|
|
34121
34121
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Highlights, { items: _nullishCoalesce(active.highlights, () => ( [])), className: "mt-auto" })
|
|
34122
34122
|
] }),
|
|
34123
34123
|
active.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|