@flamingo-stack/openframe-frontend-core 0.0.754 → 0.0.756
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-AG4HR6Z6.cjs → chunk-2ANICXS7.cjs} +16 -16
- package/dist/{chunk-U4I3QR2A.cjs → chunk-4YL4Y3BV.cjs} +11 -11
- package/dist/{chunk-YSFOYBYC.cjs → chunk-57JA37HP.cjs} +428 -411
- package/dist/{chunk-TPJTFN7O.cjs → chunk-7KPU7RGS.cjs} +73 -73
- package/dist/{chunk-MGF3FUKD.cjs → chunk-AKK3EO37.cjs} +4 -1
- package/dist/{chunk-3GG3QAPT.cjs → chunk-AXBVN5SW.cjs} +63 -57
- package/dist/{chunk-JXACH52M.cjs → chunk-BTIYXBA2.cjs} +4 -4
- package/dist/{chunk-BLZIUELR.cjs → chunk-CYDWQYIQ.cjs} +22 -22
- package/dist/{chunk-P6F6PHVK.cjs → chunk-EFTUFJS2.cjs} +4 -4
- package/dist/{chunk-LVO7FALW.cjs → chunk-F64VMOIB.cjs} +5 -5
- package/dist/{chunk-MOEILCEX.cjs → chunk-KFUC2XF7.cjs} +7 -7
- package/dist/{chunk-GQYCVZJI.cjs → chunk-KNNJ4WLF.cjs} +4 -4
- package/dist/{chunk-BQQ3JGEO.cjs → chunk-KSU3CXKY.cjs} +3 -3
- package/dist/{chunk-YRULLK7N.cjs → chunk-LOFDIDSD.cjs} +8 -2
- package/dist/{chunk-EDSFLB7J.cjs → chunk-MBQTLZAG.cjs} +11 -11
- package/dist/{chunk-TBDVF4SN.cjs → chunk-MDXZMTCK.cjs} +38 -38
- package/dist/{chunk-FAFFWYEH.cjs → chunk-MR5KMPSE.cjs} +6 -6
- package/dist/{chunk-ZNV5FE4T.cjs → chunk-PUK27ZB6.cjs} +22 -22
- package/dist/{chunk-RTQN35EP.cjs → chunk-QKFJ6ORK.cjs} +21 -21
- package/dist/{chunk-SDF5UUTE.cjs → chunk-QTYSYEHK.cjs} +74 -74
- package/dist/{chunk-OGKV5NOP.cjs → chunk-TAEEGNFL.cjs} +42 -42
- package/dist/{chunk-DW5OKTUP.cjs → chunk-VOXDBCBV.cjs} +36 -36
- package/dist/{chunk-UNRNLSG4.cjs → chunk-VUSXDMCE.cjs} +2 -2
- package/dist/{chunk-IVAAQSOU.cjs → chunk-W5MEHJRQ.cjs} +6 -6
- package/dist/{cloud-tenants-5OTPO7FL.cjs → cloud-tenants-NOZGXQZY.cjs} +10 -10
- package/dist/components/case-studies/index.cjs +20 -20
- package/dist/components/chat/embeddable-chat.js +11 -6
- package/dist/components/chat/index.cjs +7 -7
- package/dist/components/contact/index.cjs +11 -11
- package/dist/components/context-menu.d.ts +2 -2
- package/dist/components/context-menu.d.ts.map +1 -1
- package/dist/components/context-menu.js +19 -12
- package/dist/components/docs/index.cjs +14 -14
- package/dist/components/embeds/index.cjs +11 -11
- package/dist/components/faq/index.cjs +12 -12
- package/dist/components/features/index.cjs +10 -10
- package/dist/components/features/time-tracker/time-tracker-header-button.d.ts.map +1 -1
- package/dist/components/features/time-tracker/time-tracker-header-button.js +3 -1
- package/dist/components/help-center-pages/index.cjs +71 -71
- package/dist/components/index.cjs +44 -44
- package/dist/components/meeting-scheduler/index.cjs +35 -35
- package/dist/components/navigation/index.cjs +13 -13
- package/dist/components/onboarding-guides/index.cjs +13 -13
- package/dist/components/popover.d.ts.map +1 -1
- package/dist/components/popover.js +3 -1
- package/dist/components/product-demo/index.cjs +9 -9
- package/dist/components/tickets/index.cjs +15 -15
- package/dist/components/ui/date-picker.d.ts.map +1 -1
- package/dist/components/ui/date-picker.js +9 -4
- package/dist/components/ui/dropdown-menu.d.ts +2 -2
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.js +4 -1
- package/dist/components/ui/file-manager/index.cjs +6 -6
- package/dist/components/ui/index.cjs +10 -10
- package/dist/components/ui/menubar.d.ts +2 -2
- package/dist/components/ui/menubar.d.ts.map +1 -1
- package/dist/components/ui/menubar.js +22 -15
- package/dist/components/ui/modal-v2.d.ts.map +1 -1
- package/dist/components/ui/modal-v2.js +5 -2
- package/dist/components/ui/searchable-select.d.ts.map +1 -1
- package/dist/components/ui/searchable-select.js +3 -1
- package/dist/components/ui/select.d.ts.map +1 -1
- package/dist/components/ui/select.js +27 -23
- package/dist/components/ui/tag-select-dropdown.d.ts.map +1 -1
- package/dist/components/ui/tag-select-dropdown.js +3 -1
- package/dist/{devices-MBGMD7BO.cjs → devices-M4KBTOTC.cjs} +11 -11
- package/dist/{embeddable-chat-CMEHSDV7.cjs → embeddable-chat-KGJVVG2V.cjs} +88 -83
- package/dist/index.cjs +14 -14
- package/dist/{knowledge-LO5RK6PM.cjs → knowledge-VVF6CJEG.cjs} +11 -11
- package/dist/{logs-QRGJSZ4G.cjs → logs-7E6HBJ55.cjs} +18 -18
- package/dist/{policies-OIQDO6F5.cjs → policies-UMZLJTBD.cjs} +14 -14
- package/dist/{remote-session-57DGC4X3.cjs → remote-session-SKNXYG6K.cjs} +7 -7
- package/dist/{scripts-XULUNPDV.cjs → scripts-XVNAEYCH.cjs} +17 -17
- package/dist/{software-update-SRF55434.cjs → software-update-U43ZFHMC.cjs} +14 -14
- package/dist/{tickets-board-EP6L3BSV.cjs → tickets-board-B2FH7Z4B.cjs} +9 -9
- package/eslint-config/base.js +7 -1
- package/eslint-config/popup-portal.js +68 -0
- package/package.json +1 -1
- package/src/components/chat/embeddable-chat.tsx +13 -6
- package/src/components/context-menu.tsx +20 -13
- package/src/components/features/time-tracker/time-tracker-header-button.tsx +3 -1
- package/src/components/popover.tsx +3 -1
- package/src/components/ui/date-picker.tsx +9 -4
- package/src/components/ui/dropdown-menu.tsx +4 -1
- package/src/components/ui/menubar.tsx +23 -16
- package/src/components/ui/modal-v2.tsx +17 -3
- package/src/components/ui/searchable-select.tsx +3 -1
- package/src/components/ui/select.tsx +28 -24
- package/src/components/ui/tag-select-dropdown.tsx +3 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunk2ANICXS7cjs = require('./chunk-2ANICXS7.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
@@ -35,7 +35,7 @@ var _chunkNTGIQP7Ocjs = require('./chunk-NTGIQP7O.cjs');
|
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
var
|
|
38
|
+
var _chunkAXBVN5SWcjs = require('./chunk-AXBVN5SW.cjs');
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
|
|
@@ -109,7 +109,7 @@ var _chunkYUMFVQINcjs = require('./chunk-YUMFVQIN.cjs');
|
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
|
|
112
|
-
var
|
|
112
|
+
var _chunkQKFJ6ORKcjs = require('./chunk-QKFJ6ORK.cjs');
|
|
113
113
|
|
|
114
114
|
|
|
115
115
|
|
|
@@ -131,7 +131,7 @@ var _chunkRTQN35EPcjs = require('./chunk-RTQN35EP.cjs');
|
|
|
131
131
|
|
|
132
132
|
|
|
133
133
|
|
|
134
|
-
var
|
|
134
|
+
var _chunkQTYSYEHKcjs = require('./chunk-QTYSYEHK.cjs');
|
|
135
135
|
|
|
136
136
|
|
|
137
137
|
|
|
@@ -144,7 +144,7 @@ var _chunkSDF5UUTEcjs = require('./chunk-SDF5UUTE.cjs');
|
|
|
144
144
|
|
|
145
145
|
|
|
146
146
|
|
|
147
|
-
var
|
|
147
|
+
var _chunkF64VMOIBcjs = require('./chunk-F64VMOIB.cjs');
|
|
148
148
|
|
|
149
149
|
|
|
150
150
|
|
|
@@ -156,14 +156,14 @@ var _chunkLVO7FALWcjs = require('./chunk-LVO7FALW.cjs');
|
|
|
156
156
|
|
|
157
157
|
|
|
158
158
|
|
|
159
|
-
var
|
|
159
|
+
var _chunkLOFDIDSDcjs = require('./chunk-LOFDIDSD.cjs');
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
|
|
163
163
|
|
|
164
164
|
|
|
165
165
|
|
|
166
|
-
var
|
|
166
|
+
var _chunkEFTUFJS2cjs = require('./chunk-EFTUFJS2.cjs');
|
|
167
167
|
|
|
168
168
|
|
|
169
169
|
var _chunk2TEMEXDTcjs = require('./chunk-2TEMEXDT.cjs');
|
|
@@ -557,7 +557,7 @@ var _chunkK6VWTUCHcjs = require('./chunk-K6VWTUCH.cjs');
|
|
|
557
557
|
|
|
558
558
|
|
|
559
559
|
|
|
560
|
-
var
|
|
560
|
+
var _chunkAKK3EO37cjs = require('./chunk-AKK3EO37.cjs');
|
|
561
561
|
|
|
562
562
|
|
|
563
563
|
var _chunkZ74QE57Tcjs = require('./chunk-Z74QE57T.cjs');
|
|
@@ -579,6 +579,9 @@ var _chunkV45KLJQPcjs = require('./chunk-V45KLJQP.cjs');
|
|
|
579
579
|
var _chunkOF336YWGcjs = require('./chunk-OF336YWG.cjs');
|
|
580
580
|
|
|
581
581
|
|
|
582
|
+
var _chunkRB6BSE3Ocjs = require('./chunk-RB6BSE3O.cjs');
|
|
583
|
+
|
|
584
|
+
|
|
582
585
|
|
|
583
586
|
|
|
584
587
|
|
|
@@ -664,7 +667,7 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
664
667
|
var useTheme = _nextthemes.useTheme;
|
|
665
668
|
function useThemeToggle() {
|
|
666
669
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
667
|
-
const mounted =
|
|
670
|
+
const mounted = _chunkQTYSYEHKcjs.useIsHydrated.call(void 0, );
|
|
668
671
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
669
672
|
const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
|
|
670
673
|
const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
|
|
@@ -872,7 +875,7 @@ function TimezoneSelect({
|
|
|
872
875
|
}) {
|
|
873
876
|
const options = _react.useMemo.call(void 0, () => timezoneOptions(value), [value]);
|
|
874
877
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
875
|
-
|
|
878
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
876
879
|
{
|
|
877
880
|
className,
|
|
878
881
|
value: value || null,
|
|
@@ -1464,6 +1467,7 @@ function DatePicker(props) {
|
|
|
1464
1467
|
invalid = false
|
|
1465
1468
|
} = props;
|
|
1466
1469
|
const [open, setOpen] = _react.useState.call(void 0, false);
|
|
1470
|
+
const portalContainer = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
1467
1471
|
const isInvalid = invalid || !!error;
|
|
1468
1472
|
const displayValue = _react.useMemo.call(void 0, () => {
|
|
1469
1473
|
if (props.mode === "single") {
|
|
@@ -1514,7 +1518,7 @@ function DatePicker(props) {
|
|
|
1514
1518
|
]
|
|
1515
1519
|
}
|
|
1516
1520
|
) }),
|
|
1517
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1521
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { container: _nullishCoalesce(portalContainer, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1518
1522
|
Popover.Content,
|
|
1519
1523
|
{
|
|
1520
1524
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
@@ -1571,6 +1575,7 @@ function DatePickerInput(props) {
|
|
|
1571
1575
|
invalid = false
|
|
1572
1576
|
} = props;
|
|
1573
1577
|
const [open, setOpen] = _react.useState.call(void 0, false);
|
|
1578
|
+
const portalContainer = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
1574
1579
|
const isInvalid = invalid || !!error;
|
|
1575
1580
|
const displayValue = value ? formatDate3(value) : "";
|
|
1576
1581
|
const hour = _react.useMemo.call(void 0, () => {
|
|
@@ -1662,7 +1667,7 @@ function DatePickerInput(props) {
|
|
|
1662
1667
|
]
|
|
1663
1668
|
}
|
|
1664
1669
|
) }),
|
|
1665
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1670
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { container: _nullishCoalesce(portalContainer, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1666
1671
|
Popover.Content,
|
|
1667
1672
|
{
|
|
1668
1673
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
@@ -1690,20 +1695,20 @@ function DatePickerInput(props) {
|
|
|
1690
1695
|
) })
|
|
1691
1696
|
] }),
|
|
1692
1697
|
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1", children: [
|
|
1693
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1694
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1695
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1698
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: hour, onValueChange: handleHourChange, disabled, children: [
|
|
1699
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder: "HH" }) }),
|
|
1700
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: hourOptions.map((h) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: h, children: h }, h)) })
|
|
1696
1701
|
] }),
|
|
1697
1702
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h4", children: ":" }),
|
|
1698
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1699
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1700
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1703
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: minute, onValueChange: handleMinuteChange, disabled, children: [
|
|
1704
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder: "MM" }) }),
|
|
1705
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: minuteOptions.map((m) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: m, children: m }, m)) })
|
|
1701
1706
|
] }),
|
|
1702
|
-
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1703
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1704
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1705
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1706
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1707
|
+
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: period, onValueChange: (val) => handlePeriodChange(val), disabled, children: [
|
|
1708
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder: "AM" }) }),
|
|
1709
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: [
|
|
1710
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "AM", children: "AM" }),
|
|
1711
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "PM", children: "PM" })
|
|
1707
1712
|
] })
|
|
1708
1713
|
] })
|
|
1709
1714
|
] })
|
|
@@ -1749,6 +1754,7 @@ function DatePickerInputSimple(props) {
|
|
|
1749
1754
|
invalid = false
|
|
1750
1755
|
} = props;
|
|
1751
1756
|
const [open, setOpen] = _react.useState.call(void 0, false);
|
|
1757
|
+
const portalContainer = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
1752
1758
|
const isInvalid = invalid || !!error;
|
|
1753
1759
|
const displayValue = value ? formatDate3(value) : "";
|
|
1754
1760
|
const timeValue = _react.useMemo.call(void 0, () => {
|
|
@@ -1818,7 +1824,7 @@ function DatePickerInputSimple(props) {
|
|
|
1818
1824
|
]
|
|
1819
1825
|
}
|
|
1820
1826
|
) }),
|
|
1821
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1827
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { container: _nullishCoalesce(portalContainer, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1822
1828
|
Popover.Content,
|
|
1823
1829
|
{
|
|
1824
1830
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
@@ -1845,9 +1851,9 @@ function DatePickerInputSimple(props) {
|
|
|
1845
1851
|
}
|
|
1846
1852
|
) })
|
|
1847
1853
|
] }),
|
|
1848
|
-
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1849
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1850
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1854
|
+
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: timeValue, onValueChange: handleTimeChange, disabled, children: [
|
|
1855
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "flex-1"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder: "Select time", children: timeDisplayLabel || "Select time" }) }),
|
|
1856
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
1851
1857
|
] })
|
|
1852
1858
|
] });
|
|
1853
1859
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.FieldWrapper, { label, error, errorSlot: "error" in props, className, children: content });
|
|
@@ -1866,14 +1872,14 @@ function DateFilterPanel({
|
|
|
1866
1872
|
className
|
|
1867
1873
|
}) {
|
|
1868
1874
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex flex-col gap-4", className), children: [
|
|
1869
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1870
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1875
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: sort, onValueChange: (value) => onSortChange(value), children: [
|
|
1876
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.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: [
|
|
1871
1877
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowUpDown, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
1872
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1878
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) })
|
|
1873
1879
|
] }) }),
|
|
1874
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1875
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1876
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1880
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: [
|
|
1881
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "asc", children: ascLabel }),
|
|
1882
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "desc", children: descLabel })
|
|
1877
1883
|
] })
|
|
1878
1884
|
] }),
|
|
1879
1885
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -1911,6 +1917,7 @@ function DateFilterMenu({
|
|
|
1911
1917
|
"aria-label": ariaLabel = "Open date filter"
|
|
1912
1918
|
}) {
|
|
1913
1919
|
const [open, setOpen] = _react.useState.call(void 0, false);
|
|
1920
|
+
const portalContainer = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
1914
1921
|
const [draftSort, setDraftSort] = _react.useState.call(void 0, sort);
|
|
1915
1922
|
const [draftSelected, setDraftSelected] = _react.useState.call(void 0, mode === "single" ? date : range);
|
|
1916
1923
|
const resetDraft = _react.useCallback.call(void 0, () => {
|
|
@@ -1954,7 +1961,7 @@ function DateFilterMenu({
|
|
|
1954
1961
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Calendar, { className: "size-6" })
|
|
1955
1962
|
}
|
|
1956
1963
|
))) }),
|
|
1957
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1964
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Popover.Portal, { container: _nullishCoalesce(portalContainer, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1958
1965
|
Popover.Content,
|
|
1959
1966
|
{
|
|
1960
1967
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
@@ -2150,7 +2157,7 @@ function Value({ value, depth }) {
|
|
|
2150
2157
|
}
|
|
2151
2158
|
if (typeof value === "string") {
|
|
2152
2159
|
if (ISO_DATE.test(value)) {
|
|
2153
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children:
|
|
2160
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkF64VMOIBcjs.formatRelativeTime.call(void 0, value) });
|
|
2154
2161
|
}
|
|
2155
2162
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
|
|
2156
2163
|
}
|
|
@@ -2406,6 +2413,7 @@ function SearchableSelect(allProps) {
|
|
|
2406
2413
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
2407
2414
|
const [search, setSearch] = _react.useState.call(void 0, "");
|
|
2408
2415
|
const keyboardPadding = _chunkA6P6DHEZcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
2416
|
+
const portalContainer = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
2409
2417
|
if (!isOpen && search !== "") setSearch("");
|
|
2410
2418
|
const filtered = _react.useMemo.call(void 0, () => {
|
|
2411
2419
|
const q = search.trim().toLowerCase();
|
|
@@ -2466,7 +2474,7 @@ function SearchableSelect(allProps) {
|
|
|
2466
2474
|
);
|
|
2467
2475
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive.Root, { open: isOpen, onOpenChange: disabled ? void 0 : setIsOpen, modal: false, children: [
|
|
2468
2476
|
!trigger && (label !== void 0 || errorSlot) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.FieldWrapper, { label, htmlFor: triggerId, labelVariant, error, errorSlot, children: triggerElement }) : triggerElement,
|
|
2469
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive.Portal, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
2477
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive.Portal, { container: _nullishCoalesce(portalContainer, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
2470
2478
|
PopoverPrimitive.Content,
|
|
2471
2479
|
{
|
|
2472
2480
|
align,
|
|
@@ -2606,7 +2614,7 @@ function CompactAssigneeDropdown({
|
|
|
2606
2614
|
"shrink-0 rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
2607
2615
|
className
|
|
2608
2616
|
),
|
|
2609
|
-
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2617
|
+
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ANICXS7cjs.DeletedUserAvatar, { size: "sm", accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}` }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2610
2618
|
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
2611
2619
|
{
|
|
2612
2620
|
src: currentAssignee.avatarSrc,
|
|
@@ -2671,7 +2679,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2671
2679
|
if (isEditing) {
|
|
2672
2680
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "min-w-0", className), children: [
|
|
2673
2681
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2674
|
-
|
|
2682
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
2675
2683
|
{
|
|
2676
2684
|
options,
|
|
2677
2685
|
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _35 => _35.id]), () => ( null)),
|
|
@@ -2683,7 +2691,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2683
2691
|
loading: isLoading,
|
|
2684
2692
|
showChevron: false,
|
|
2685
2693
|
startAdornment: hasAssignee ? currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2686
|
-
|
|
2694
|
+
_chunk2ANICXS7cjs.DeletedUserAvatar,
|
|
2687
2695
|
{
|
|
2688
2696
|
size: "sm",
|
|
2689
2697
|
className: "h-6 w-6",
|
|
@@ -2709,7 +2717,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2709
2717
|
if (hasAssignee) {
|
|
2710
2718
|
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: [
|
|
2711
2719
|
currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2712
|
-
|
|
2720
|
+
_chunk2ANICXS7cjs.DeletedUserAvatar,
|
|
2713
2721
|
{
|
|
2714
2722
|
size: "md",
|
|
2715
2723
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
@@ -2809,7 +2817,7 @@ function RowValue({ value }) {
|
|
|
2809
2817
|
}
|
|
2810
2818
|
case "status": {
|
|
2811
2819
|
const { type: _type, ...props } = value;
|
|
2812
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2820
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.TicketStatusTag, { ...props });
|
|
2813
2821
|
}
|
|
2814
2822
|
case "custom":
|
|
2815
2823
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
|
|
@@ -2907,7 +2915,7 @@ function MediaTypeSelector({
|
|
|
2907
2915
|
// changed) and cost an extra render pass on every change to say what the
|
|
2908
2916
|
// prop already said.
|
|
2909
2917
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
2910
|
-
|
|
2918
|
+
_chunkAXBVN5SWcjs.Select,
|
|
2911
2919
|
{
|
|
2912
2920
|
value: value || void 0,
|
|
2913
2921
|
onValueChange: (next) => {
|
|
@@ -2917,8 +2925,8 @@ function MediaTypeSelector({
|
|
|
2917
2925
|
disabled,
|
|
2918
2926
|
defaultValue: value,
|
|
2919
2927
|
children: [
|
|
2920
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2921
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2928
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder }) }),
|
|
2929
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: mediaTypeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: option.value, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
2922
2930
|
option.icon,
|
|
2923
2931
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: option.label })
|
|
2924
2932
|
] }) }, option.value)) })
|
|
@@ -3340,6 +3348,7 @@ function TagSelectDropdown({
|
|
|
3340
3348
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
3341
3349
|
const [search, setSearch] = _react.useState.call(void 0, "");
|
|
3342
3350
|
const keyboardPadding = _chunkA6P6DHEZcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
3351
|
+
const portalContainer = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
3343
3352
|
if (!isOpen && search !== "") setSearch("");
|
|
3344
3353
|
const query = search.trim();
|
|
3345
3354
|
const filtered = _react.useMemo.call(void 0, () => {
|
|
@@ -3376,7 +3385,7 @@ function TagSelectDropdown({
|
|
|
3376
3385
|
children: triggerLabel
|
|
3377
3386
|
}
|
|
3378
3387
|
) }),
|
|
3379
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive2.Portal, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3388
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive2.Portal, { container: _nullishCoalesce(portalContainer, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3380
3389
|
PopoverPrimitive2.Content,
|
|
3381
3390
|
{
|
|
3382
3391
|
align,
|
|
@@ -4279,10 +4288,10 @@ function useConfirm() {
|
|
|
4279
4288
|
},
|
|
4280
4289
|
[]
|
|
4281
4290
|
);
|
|
4282
|
-
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4283
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4284
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4285
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4291
|
+
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
|
|
4292
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: pending.title }) }),
|
|
4293
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
|
|
4294
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
|
|
4286
4295
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
|
|
4287
4296
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
|
|
4288
4297
|
] })
|
|
@@ -4360,7 +4369,7 @@ function AdminFormDrawer({
|
|
|
4360
4369
|
"form",
|
|
4361
4370
|
{
|
|
4362
4371
|
id: formId,
|
|
4363
|
-
...
|
|
4372
|
+
..._chunkQKFJ6ORKcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4364
4373
|
className: "flex flex-col gap-[var(--spacing-system-lf)]",
|
|
4365
4374
|
onSubmit: (e) => {
|
|
4366
4375
|
e.preventDefault();
|
|
@@ -4458,16 +4467,16 @@ function AdminFormModal({
|
|
|
4458
4467
|
body: "Your edits have not been saved. Close and discard them?"
|
|
4459
4468
|
});
|
|
4460
4469
|
if (!isOpen) return null;
|
|
4461
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4462
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4463
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4470
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
|
|
4471
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: [
|
|
4472
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: title }),
|
|
4464
4473
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
4465
4474
|
] }),
|
|
4466
4475
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4467
4476
|
"form",
|
|
4468
4477
|
{
|
|
4469
4478
|
id: formId,
|
|
4470
|
-
...
|
|
4479
|
+
..._chunkQKFJ6ORKcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4471
4480
|
className: "flex min-h-0 flex-1 flex-col",
|
|
4472
4481
|
onSubmit: (e) => {
|
|
4473
4482
|
e.preventDefault();
|
|
@@ -4485,7 +4494,7 @@ function AdminFormModal({
|
|
|
4485
4494
|
// a shrink-to-fit flex item pinned to the left of a 1400px panel).
|
|
4486
4495
|
// The placeholder owns its own layout and mirrors the column count so
|
|
4487
4496
|
// the modal doesn't visibly re-flow when the entity lands.
|
|
4488
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4497
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalContent, { children: loadingContent ? (
|
|
4489
4498
|
// The one announcement: a `loadingContent` with a region of its own takes `region={false}`.
|
|
4490
4499
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNO5UJLLQcjs.LoadingRegion, { label: "Loading", children: loadingContent })
|
|
4491
4500
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -4506,12 +4515,12 @@ function AdminFormModal({
|
|
|
4506
4515
|
] }, i)) }, col))
|
|
4507
4516
|
}
|
|
4508
4517
|
) })
|
|
4509
|
-
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4518
|
+
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalContent, { className: contentClassName, children }),
|
|
4510
4519
|
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
|
|
4511
4520
|
]
|
|
4512
4521
|
}
|
|
4513
4522
|
),
|
|
4514
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4523
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
|
|
4515
4524
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
|
|
4516
4525
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
4517
4526
|
footerStatus,
|
|
@@ -4716,7 +4725,10 @@ var _reactmenubar = require('@radix-ui/react-menubar'); var MenubarPrimitive = _
|
|
|
4716
4725
|
|
|
4717
4726
|
var MenubarMenu = MenubarPrimitive.Menu;
|
|
4718
4727
|
var MenubarGroup = MenubarPrimitive.Group;
|
|
4719
|
-
|
|
4728
|
+
function MenubarPortal({ container, ...props }) {
|
|
4729
|
+
const active = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
4730
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MenubarPrimitive.Portal, { container: _nullishCoalesce(_nullishCoalesce(container, () => ( active)), () => ( void 0)), ...props });
|
|
4731
|
+
}
|
|
4720
4732
|
var MenubarSub = MenubarPrimitive.Sub;
|
|
4721
4733
|
var MenubarRadioGroup = MenubarPrimitive.RadioGroup;
|
|
4722
4734
|
var Menubar = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -4769,20 +4781,23 @@ var MenubarSubContent = _react.forwardRef.call(void 0, ({ className, ...props },
|
|
|
4769
4781
|
}
|
|
4770
4782
|
));
|
|
4771
4783
|
MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
|
|
4772
|
-
var MenubarContent = _react.forwardRef.call(void 0, ({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) =>
|
|
4773
|
-
|
|
4774
|
-
{
|
|
4775
|
-
|
|
4776
|
-
|
|
4777
|
-
|
|
4778
|
-
|
|
4779
|
-
|
|
4780
|
-
|
|
4781
|
-
className
|
|
4782
|
-
|
|
4783
|
-
|
|
4784
|
-
|
|
4785
|
-
|
|
4784
|
+
var MenubarContent = _react.forwardRef.call(void 0, ({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => {
|
|
4785
|
+
const container = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
4786
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MenubarPrimitive.Portal, { container: _nullishCoalesce(container, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4787
|
+
MenubarPrimitive.Content,
|
|
4788
|
+
{
|
|
4789
|
+
ref,
|
|
4790
|
+
align,
|
|
4791
|
+
alignOffset,
|
|
4792
|
+
sideOffset,
|
|
4793
|
+
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
4794
|
+
"z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
4795
|
+
className
|
|
4796
|
+
),
|
|
4797
|
+
...props
|
|
4798
|
+
}
|
|
4799
|
+
) });
|
|
4800
|
+
});
|
|
4786
4801
|
MenubarContent.displayName = MenubarPrimitive.Content.displayName;
|
|
4787
4802
|
var MenubarItem = _react.forwardRef.call(void 0, ({ className, inset, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4788
4803
|
MenubarPrimitive.Item,
|
|
@@ -5780,7 +5795,7 @@ function EmbedViewerFrame({
|
|
|
5780
5795
|
const controllerRef = _react.useRef.call(void 0, null);
|
|
5781
5796
|
_react.useEffect.call(void 0, () => {
|
|
5782
5797
|
if (!fullscreenControl) return void 0;
|
|
5783
|
-
const controller = new (0,
|
|
5798
|
+
const controller = new (0, _chunkQKFJ6ORKcjs.FullscreenSwitchController)({
|
|
5784
5799
|
target: () => frameRef.current,
|
|
5785
5800
|
onFullscreenChange: setIsFullscreen
|
|
5786
5801
|
});
|
|
@@ -6402,7 +6417,7 @@ var OGLinkPreview = ({
|
|
|
6402
6417
|
children: [
|
|
6403
6418
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-1.5 text-xs", children: [
|
|
6404
6419
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Favicon, { src: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`, size: "w-4 h-4" }),
|
|
6405
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6420
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { as: "span", className: "font-sans text-xs font-medium", children: name }),
|
|
6406
6421
|
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 })
|
|
6407
6422
|
] }),
|
|
6408
6423
|
kicker != null && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -6414,7 +6429,7 @@ var OGLinkPreview = ({
|
|
|
6414
6429
|
}
|
|
6415
6430
|
),
|
|
6416
6431
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6417
|
-
|
|
6432
|
+
_chunkAXBVN5SWcjs.TruncateText,
|
|
6418
6433
|
{
|
|
6419
6434
|
lines: 2,
|
|
6420
6435
|
className: "font-sans text-[15px] font-semibold leading-snug transition-colors group-hover:text-ods-accent",
|
|
@@ -6422,7 +6437,7 @@ var OGLinkPreview = ({
|
|
|
6422
6437
|
children: curatedTitle || domainToTitle(domain)
|
|
6423
6438
|
}
|
|
6424
6439
|
),
|
|
6425
|
-
curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6440
|
+
curatedDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 2, tone: "secondary", className: "font-sans text-xs leading-normal", children: curatedDescription })
|
|
6426
6441
|
]
|
|
6427
6442
|
}
|
|
6428
6443
|
);
|
|
@@ -6555,8 +6570,8 @@ var OGLinkPreview = ({
|
|
|
6555
6570
|
children: [
|
|
6556
6571
|
/* @__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 }) }),
|
|
6557
6572
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
6558
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6559
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6573
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { className: "font-semibold transition-colors group-hover:text-ods-accent", children: title }),
|
|
6574
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { tone: "secondary", children: description })
|
|
6560
6575
|
] }),
|
|
6561
6576
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExternalLinkIcon, {})
|
|
6562
6577
|
]
|
|
@@ -6600,7 +6615,7 @@ var OGLinkPreview = ({
|
|
|
6600
6615
|
),
|
|
6601
6616
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
6602
6617
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6603
|
-
|
|
6618
|
+
_chunkAXBVN5SWcjs.TruncateText,
|
|
6604
6619
|
{
|
|
6605
6620
|
lines: 2,
|
|
6606
6621
|
className: "min-h-[calc(var(--font-line-space-h4-body)*2)] font-semibold transition-colors group-hover:text-ods-accent",
|
|
@@ -6609,7 +6624,7 @@ var OGLinkPreview = ({
|
|
|
6609
6624
|
}
|
|
6610
6625
|
),
|
|
6611
6626
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6612
|
-
|
|
6627
|
+
_chunkAXBVN5SWcjs.TruncateText,
|
|
6613
6628
|
{
|
|
6614
6629
|
lines: 2,
|
|
6615
6630
|
tone: "secondary",
|
|
@@ -6619,9 +6634,9 @@ var OGLinkPreview = ({
|
|
|
6619
6634
|
}
|
|
6620
6635
|
),
|
|
6621
6636
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2 text-xs text-ods-text-secondary", children: [
|
|
6622
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6637
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { as: "span", className: "text-xs font-medium text-current", children: effectiveData.siteName }),
|
|
6623
6638
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "\u2022" }),
|
|
6624
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6639
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { as: "span", className: "text-xs text-current", children: ogDomain }),
|
|
6625
6640
|
meta
|
|
6626
6641
|
] })
|
|
6627
6642
|
] })
|
|
@@ -6977,7 +6992,7 @@ var formatTimeAgo = (timestamp) => {
|
|
|
6977
6992
|
return `${Math.floor(diffSeconds / 86400)}d ago`;
|
|
6978
6993
|
};
|
|
6979
6994
|
function RedditEmbedClient({ url, maxWidth = 700, rel }) {
|
|
6980
|
-
const postLinkRel =
|
|
6995
|
+
const postLinkRel = _chunkQTYSYEHKcjs.renderedLinkRel.call(void 0, rel, true);
|
|
6981
6996
|
const { redditProxyUrl } = useRichMarkdownRuntime();
|
|
6982
6997
|
const [redditData, setRedditData] = _react.useState.call(void 0, null);
|
|
6983
6998
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7309,7 +7324,7 @@ var UserIcon3 = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { wid
|
|
|
7309
7324
|
] });
|
|
7310
7325
|
var XIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2TEMEXDTcjs.XLogoIcon, { className: "h-5 w-5", color: "currentColor" });
|
|
7311
7326
|
function TwitterEmbedClient({ url, tweetId, maxWidth = 700, rel }) {
|
|
7312
|
-
const postLinkRel =
|
|
7327
|
+
const postLinkRel = _chunkQTYSYEHKcjs.renderedLinkRel.call(void 0, rel, true);
|
|
7313
7328
|
const { twitterProxyUrl } = useRichMarkdownRuntime();
|
|
7314
7329
|
const [tweetData, setTweetData] = _react.useState.call(void 0, null);
|
|
7315
7330
|
const [fetchLoading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7511,7 +7526,7 @@ function buildRichEmbedOverrides({
|
|
|
7511
7526
|
ogEndpointPath,
|
|
7512
7527
|
textSizes
|
|
7513
7528
|
}) {
|
|
7514
|
-
const standard =
|
|
7529
|
+
const standard = _chunkQTYSYEHKcjs.buildStandardLeafRenderers.call(void 0, { textSizes });
|
|
7515
7530
|
return {
|
|
7516
7531
|
// Fence-language embeds (```youtube-embed etc.); everything else
|
|
7517
7532
|
// (mermaid, highlighted blocks, inline code) falls through to `standard`.
|
|
@@ -7647,13 +7662,13 @@ function buildRichEmbedOverrides({
|
|
|
7647
7662
|
// rich-markdown runtime (Supabase optimization on the hub, identity
|
|
7648
7663
|
// elsewhere). Guard against empty `![]()`.
|
|
7649
7664
|
img: ({ src, alt }) => {
|
|
7650
|
-
if (!
|
|
7665
|
+
if (!_chunkQTYSYEHKcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7651
7666
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
|
|
7652
7667
|
},
|
|
7653
7668
|
// Raw <video> tags in stored content (blog publisher injection) route
|
|
7654
7669
|
// to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
|
|
7655
7670
|
video: ({ src, poster, className }) => {
|
|
7656
|
-
if (!
|
|
7671
|
+
if (!_chunkQTYSYEHKcjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7657
7672
|
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, _chunk7Z4EQOIXcjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
|
|
7658
7673
|
}
|
|
7659
7674
|
};
|
|
@@ -7762,7 +7777,7 @@ var processShortcodes = (content) => {
|
|
|
7762
7777
|
try {
|
|
7763
7778
|
const urlObj = new URL(url);
|
|
7764
7779
|
const hostname = urlObj.hostname.toLowerCase();
|
|
7765
|
-
const hostIs = (domain) =>
|
|
7780
|
+
const hostIs = (domain) => _chunkQKFJ6ORKcjs.hostMatches.call(void 0, hostname, domain);
|
|
7766
7781
|
const isYouTubeVideo = hostIs("youtube.com") && urlObj.searchParams.has("v") || hostIs("youtu.be");
|
|
7767
7782
|
if (isYouTubeVideo || hostIs("reddit.com") || hostIs("twitter.com") || hostIs("x.com") || hostIs("figma.com")) {
|
|
7768
7783
|
return match;
|
|
@@ -7837,13 +7852,13 @@ var RichMarkdownInner = ({
|
|
|
7837
7852
|
},
|
|
7838
7853
|
[resolveLinkEndpointUrl, resolveSource]
|
|
7839
7854
|
);
|
|
7840
|
-
const textSizes = _react.useMemo.call(void 0, () =>
|
|
7855
|
+
const textSizes = _react.useMemo.call(void 0, () => _chunkQTYSYEHKcjs.resolveTextSizeConfig.call(void 0, "article"), []);
|
|
7841
7856
|
const componentOverrides = _react.useMemo.call(void 0,
|
|
7842
7857
|
() => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
|
|
7843
7858
|
[ogApiBaseUrl, ogEndpointPath, textSizes]
|
|
7844
7859
|
);
|
|
7845
7860
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7846
|
-
|
|
7861
|
+
_chunkQTYSYEHKcjs.MarkdownEngine,
|
|
7847
7862
|
{
|
|
7848
7863
|
content,
|
|
7849
7864
|
className,
|
|
@@ -7865,7 +7880,7 @@ var RichMarkdownRendererImpl = ({
|
|
|
7865
7880
|
className = "",
|
|
7866
7881
|
sectionIds,
|
|
7867
7882
|
onInternalLinkClick,
|
|
7868
|
-
brokenLinks =
|
|
7883
|
+
brokenLinks = _chunkQTYSYEHKcjs.NO_BROKEN_LINKS,
|
|
7869
7884
|
currentPath,
|
|
7870
7885
|
resolveSource = "openframe-docs",
|
|
7871
7886
|
resolveLinkEndpointUrl = "/api/docs/resolve-link",
|
|
@@ -8833,7 +8848,7 @@ function FilterModal({
|
|
|
8833
8848
|
const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _147 => _147.defaultSort]), () => ( "desc"));
|
|
8834
8849
|
const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _148 => _148.sort]), () => ( dateDefaultSort)));
|
|
8835
8850
|
const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _149 => _149.range]));
|
|
8836
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
8851
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkQTYSYEHKcjs.useScrollFade.call(void 0, );
|
|
8837
8852
|
const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
|
|
8838
8853
|
const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
|
|
8839
8854
|
_react.useEffect.call(void 0, () => {
|
|
@@ -8879,15 +8894,15 @@ function FilterModal({
|
|
|
8879
8894
|
const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
|
|
8880
8895
|
const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
|
|
8881
8896
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8882
|
-
|
|
8897
|
+
_chunkLOFDIDSDcjs.Modal,
|
|
8883
8898
|
{
|
|
8884
8899
|
isOpen,
|
|
8885
8900
|
onClose,
|
|
8886
8901
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "max-h-[90vh] max-w-none md:max-w-[min(42rem,calc(100vw-2rem))]", className),
|
|
8887
8902
|
children: [
|
|
8888
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8903
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: title }) }),
|
|
8889
8904
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8890
|
-
|
|
8905
|
+
_chunkLOFDIDSDcjs.ModalContent,
|
|
8891
8906
|
{
|
|
8892
8907
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
8893
8908
|
"flex min-h-0 flex-1 flex-col",
|
|
@@ -8979,12 +8994,12 @@ function FilterModal({
|
|
|
8979
8994
|
] })
|
|
8980
8995
|
}
|
|
8981
8996
|
),
|
|
8982
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8983
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8997
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
|
|
8998
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
|
|
8984
8999
|
] })
|
|
8985
9000
|
}
|
|
8986
9001
|
),
|
|
8987
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9002
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
|
|
8988
9003
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
|
|
8989
9004
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
|
|
8990
9005
|
] })
|
|
@@ -9046,7 +9061,7 @@ function renderAdvancedPageContainer({
|
|
|
9046
9061
|
};
|
|
9047
9062
|
const renderActions = () => {
|
|
9048
9063
|
if (!actions || actions.length === 0) return null;
|
|
9049
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9064
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.PageActions, { variant: getActionsVariant(), actions, menuActions });
|
|
9050
9065
|
};
|
|
9051
9066
|
const needsBottomPadding = actions && actions.length > 0 && getActionsVariant() === "primary-buttons";
|
|
9052
9067
|
const paddingClasses = {
|
|
@@ -9069,7 +9084,7 @@ function renderAdvancedPageContainer({
|
|
|
9069
9084
|
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: [
|
|
9070
9085
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
9071
9086
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9072
|
-
|
|
9087
|
+
_chunkAXBVN5SWcjs.BackButton,
|
|
9073
9088
|
{
|
|
9074
9089
|
onClick: backButton.onClick,
|
|
9075
9090
|
label: backButton.label,
|
|
@@ -9089,7 +9104,7 @@ function renderAdvancedPageContainer({
|
|
|
9089
9104
|
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: [
|
|
9090
9105
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
9091
9106
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9092
|
-
|
|
9107
|
+
_chunkAXBVN5SWcjs.BackButton,
|
|
9093
9108
|
{
|
|
9094
9109
|
onClick: backButton.onClick,
|
|
9095
9110
|
label: backButton.label,
|
|
@@ -9109,7 +9124,7 @@ function renderAdvancedPageContainer({
|
|
|
9109
9124
|
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: [
|
|
9110
9125
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
9111
9126
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9112
|
-
|
|
9127
|
+
_chunkAXBVN5SWcjs.BackButton,
|
|
9113
9128
|
{
|
|
9114
9129
|
onClick: backButton.onClick,
|
|
9115
9130
|
label: backButton.label,
|
|
@@ -9459,7 +9474,7 @@ var BenefitCardGrid = ({ children, className = "", columns = 2 }) => {
|
|
|
9459
9474
|
|
|
9460
9475
|
|
|
9461
9476
|
function PlatformBrowseButton({ item }) {
|
|
9462
|
-
const linkProps =
|
|
9477
|
+
const linkProps = _chunkQTYSYEHKcjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
|
|
9463
9478
|
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: [
|
|
9464
9479
|
"Browse ",
|
|
9465
9480
|
item.buttonText
|
|
@@ -9926,10 +9941,10 @@ var OSTypeBadge = ({
|
|
|
9926
9941
|
if (!osType) {
|
|
9927
9942
|
return labelOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "text-ods-text-secondary", className), children: "Unknown" }) : null;
|
|
9928
9943
|
}
|
|
9929
|
-
const normalized =
|
|
9944
|
+
const normalized = _chunkQKFJ6ORKcjs.normalizeOSType.call(void 0, osType);
|
|
9930
9945
|
if (!normalized && !labelOnly) return null;
|
|
9931
|
-
const label =
|
|
9932
|
-
const IconComponent =
|
|
9946
|
+
const label = _chunkQKFJ6ORKcjs.getOSLabel.call(void 0, osType);
|
|
9947
|
+
const IconComponent = _chunkQKFJ6ORKcjs.getOSIcon.call(void 0, osType);
|
|
9933
9948
|
if (iconOnly && IconComponent) {
|
|
9934
9949
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: _chunk3ATAYP36cjs.cn.call(void 0, iconSize, "text-ods-text-secondary", className) });
|
|
9935
9950
|
}
|
|
@@ -10170,7 +10185,7 @@ function ComplianceLogo({
|
|
|
10170
10185
|
fallback = null,
|
|
10171
10186
|
className
|
|
10172
10187
|
}) {
|
|
10173
|
-
const standard =
|
|
10188
|
+
const standard = _chunkQKFJ6ORKcjs.complianceStandardForName.call(void 0, ...names);
|
|
10174
10189
|
if (!standard) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: fallback });
|
|
10175
10190
|
const Official = standard.logo ? COMPLIANCE_LOGOS[standard.logo] : null;
|
|
10176
10191
|
return Official ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10635,7 +10650,7 @@ function DropdownButton({
|
|
|
10635
10650
|
}
|
|
10636
10651
|
),
|
|
10637
10652
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10638
|
-
|
|
10653
|
+
_chunkEFTUFJS2cjs.ActionsMenuDropdown,
|
|
10639
10654
|
{
|
|
10640
10655
|
groups: _nullishCoalesce(groups, () => ( [{ items: _nullishCoalesce(items, () => ( [])) }])),
|
|
10641
10656
|
open,
|
|
@@ -10698,7 +10713,7 @@ function DropdownButton({
|
|
|
10698
10713
|
)
|
|
10699
10714
|
);
|
|
10700
10715
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10701
|
-
|
|
10716
|
+
_chunkEFTUFJS2cjs.ActionsMenuDropdown,
|
|
10702
10717
|
{
|
|
10703
10718
|
groups: _nullishCoalesce(groups, () => ( [{ items: _nullishCoalesce(items, () => ( [])) }])),
|
|
10704
10719
|
open,
|
|
@@ -10727,8 +10742,8 @@ function MoreActionsMenu({
|
|
|
10727
10742
|
onOpenChange,
|
|
10728
10743
|
onCloseAutoFocus
|
|
10729
10744
|
}) {
|
|
10730
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10731
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10745
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAKK3EO37cjs.DropdownMenu, { open, onOpenChange, children: [
|
|
10746
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuTrigger, { asChild: true, children: trigger || /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10732
10747
|
_chunk2QMBXGMQcjs.Button,
|
|
10733
10748
|
{
|
|
10734
10749
|
variant: "outline",
|
|
@@ -10739,7 +10754,7 @@ function MoreActionsMenu({
|
|
|
10739
10754
|
}
|
|
10740
10755
|
) }),
|
|
10741
10756
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10742
|
-
|
|
10757
|
+
_chunkAKK3EO37cjs.DropdownMenuContent,
|
|
10743
10758
|
{
|
|
10744
10759
|
align,
|
|
10745
10760
|
side,
|
|
@@ -10766,7 +10781,7 @@ function MoreActionsMenu({
|
|
|
10766
10781
|
if (!item.disabled) _optionalChain([item, 'access', _176 => _176.onClick, 'optionalCall', _177 => _177()]);
|
|
10767
10782
|
};
|
|
10768
10783
|
if (item.href) {
|
|
10769
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10784
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuItem, { asChild: true, disabled: item.disabled, className: itemClassName, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10770
10785
|
_chunkV45KLJQPcjs.next_link_default,
|
|
10771
10786
|
{
|
|
10772
10787
|
href: item.href,
|
|
@@ -10787,7 +10802,7 @@ function MoreActionsMenu({
|
|
|
10787
10802
|
) }, `${item.label}-${idx}`);
|
|
10788
10803
|
}
|
|
10789
10804
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10790
|
-
|
|
10805
|
+
_chunkAKK3EO37cjs.DropdownMenuItem,
|
|
10791
10806
|
{
|
|
10792
10807
|
onClick: handleActivate,
|
|
10793
10808
|
disabled: item.disabled,
|
|
@@ -10852,7 +10867,7 @@ function OrganizationCard({
|
|
|
10852
10867
|
}
|
|
10853
10868
|
),
|
|
10854
10869
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start gap-3", children: [
|
|
10855
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10870
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.EntityImage, { src: fetchedImageUrl || organization.imageUrl, alt: organization.name }),
|
|
10856
10871
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center py-2", children: [
|
|
10857
10872
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "truncate text-ods-text-primary transition-colors text-h3", title: organization.name, children: organization.name }),
|
|
10858
10873
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10902,8 +10917,8 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
|
|
|
10902
10917
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
10903
10918
|
/* @__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 }),
|
|
10904
10919
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0", children: [
|
|
10905
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10906
|
-
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10920
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h3", children: title }),
|
|
10921
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: subtitle })
|
|
10907
10922
|
] })
|
|
10908
10923
|
] }),
|
|
10909
10924
|
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 })
|
|
@@ -11037,14 +11052,14 @@ function PersonCell({
|
|
|
11037
11052
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { size: scale.avatar, src: _nullishCoalesce(avatarUrl, () => ( void 0)), alt: displayName, fallback: displayName }),
|
|
11038
11053
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
11039
11054
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11040
|
-
|
|
11055
|
+
_chunkAXBVN5SWcjs.TruncateText,
|
|
11041
11056
|
{
|
|
11042
11057
|
variant: scale.primary,
|
|
11043
11058
|
className: onClick ? "text-ods-accent group-hover/person-cell:underline" : void 0,
|
|
11044
11059
|
children: displayName
|
|
11045
11060
|
}
|
|
11046
11061
|
),
|
|
11047
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11062
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: secondary === void 0 ? "\xA0" : secondary || "\xB7" })
|
|
11048
11063
|
] })
|
|
11049
11064
|
] });
|
|
11050
11065
|
if (!onClick) return row;
|
|
@@ -11787,7 +11802,7 @@ function TableHeader({
|
|
|
11787
11802
|
onFilterChange
|
|
11788
11803
|
}
|
|
11789
11804
|
),
|
|
11790
|
-
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11805
|
+
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQKFJ6ORKcjs.InfoHint, { label: column.label, children: column.hint }) : null
|
|
11791
11806
|
] })
|
|
11792
11807
|
) : (
|
|
11793
11808
|
/* Non-filterable column — regular label with optional sort */
|
|
@@ -11813,7 +11828,7 @@ function TableHeader({
|
|
|
11813
11828
|
hint exists, so a hint-less header keeps its DOM. */
|
|
11814
11829
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
11815
11830
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
11816
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11831
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQKFJ6ORKcjs.InfoHint, { label: column.label, children: column.hint })
|
|
11817
11832
|
] })
|
|
11818
11833
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
11819
11834
|
getSortIcon(column)
|
|
@@ -12422,9 +12437,9 @@ function TruncatedHeaderCell({ value, width }) {
|
|
|
12422
12437
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
12423
12438
|
}
|
|
12424
12439
|
}, []);
|
|
12425
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12426
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12427
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12440
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEFTUFJS2cjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
12441
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center", style: { width, height: 48 }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: textRef, className: "truncate text-ods-text-secondary text-h5", children: value }) }) }),
|
|
12442
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipContent, { side: "bottom", className: "max-w-xs break-words", children: value })
|
|
12428
12443
|
] }) });
|
|
12429
12444
|
}
|
|
12430
12445
|
|
|
@@ -12477,9 +12492,9 @@ function TruncatedCell({ value, className }) {
|
|
|
12477
12492
|
setIsTruncated(el.scrollWidth > el.clientWidth);
|
|
12478
12493
|
}
|
|
12479
12494
|
}, []);
|
|
12480
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12481
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12482
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12495
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEFTUFJS2cjs.Tooltip, { open: isTruncated ? void 0 : false, children: [
|
|
12496
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipTrigger, { asChild: true, onMouseEnter: checkTruncation, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { ref: textRef, className: _chunk3ATAYP36cjs.cn.call(void 0, "block truncate", className), children: value }) }),
|
|
12497
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipContent, { side: "top", className: "max-w-xs break-words", children: value })
|
|
12483
12498
|
] }) });
|
|
12484
12499
|
}
|
|
12485
12500
|
|
|
@@ -13162,7 +13177,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13162
13177
|
// child of the cell.
|
|
13163
13178
|
_optionalChain([meta, 'optionalAccess', _235 => _235.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13164
13179
|
filterTrigger,
|
|
13165
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13180
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQKFJ6ORKcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13166
13181
|
] }) : filterTrigger
|
|
13167
13182
|
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13168
13183
|
"div",
|
|
@@ -13187,7 +13202,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13187
13202
|
// centred on the row.
|
|
13188
13203
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13189
13204
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13190
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13205
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQKFJ6ORKcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13191
13206
|
] })
|
|
13192
13207
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13193
13208
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -13407,7 +13422,7 @@ function PhoneInput({
|
|
|
13407
13422
|
placeholder = "Phone Number (optional)",
|
|
13408
13423
|
onKeyDown
|
|
13409
13424
|
}) {
|
|
13410
|
-
const { priority, others } = _react.useMemo.call(void 0, () =>
|
|
13425
|
+
const { priority, others } = _react.useMemo.call(void 0, () => _chunkQKFJ6ORKcjs.getCountryPhoneData.call(void 0, ), []);
|
|
13411
13426
|
const selectedCountry = _react.useMemo.call(void 0,
|
|
13412
13427
|
() => [...priority, ...others].find((c) => c.code === countryCode),
|
|
13413
13428
|
[countryCode, priority, others]
|
|
@@ -13422,7 +13437,7 @@ function PhoneInput({
|
|
|
13422
13437
|
_optionalChain([onValidationChange, 'optionalCall', _248 => _248(false)]);
|
|
13423
13438
|
return;
|
|
13424
13439
|
}
|
|
13425
|
-
const invalid = !
|
|
13440
|
+
const invalid = !_chunkQKFJ6ORKcjs.validatePhoneNumber.call(void 0, phone, countryCode);
|
|
13426
13441
|
setIsInvalid(invalid);
|
|
13427
13442
|
_optionalChain([onValidationChange, 'optionalCall', _249 => _249(invalid)]);
|
|
13428
13443
|
},
|
|
@@ -13442,7 +13457,7 @@ function PhoneInput({
|
|
|
13442
13457
|
}, []);
|
|
13443
13458
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 gap-2", children: [
|
|
13444
13459
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13445
|
-
|
|
13460
|
+
_chunkAXBVN5SWcjs.Select,
|
|
13446
13461
|
{
|
|
13447
13462
|
value: countryCode,
|
|
13448
13463
|
onValueChange: (val) => {
|
|
@@ -13453,14 +13468,14 @@ function PhoneInput({
|
|
|
13453
13468
|
},
|
|
13454
13469
|
disabled,
|
|
13455
13470
|
children: [
|
|
13456
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13471
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "w-[130px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { children: selectedCountry && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5", children: [
|
|
13457
13472
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.flag }),
|
|
13458
13473
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.dialCode })
|
|
13459
13474
|
] }) }) }),
|
|
13460
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13461
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13462
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13463
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13475
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { className: "max-h-[300px] !w-[280px]", children: [
|
|
13476
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectGroup, { children: priority.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) }),
|
|
13477
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectSeparator, {}),
|
|
13478
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectGroup, { children: others.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) })
|
|
13464
13479
|
] })
|
|
13465
13480
|
]
|
|
13466
13481
|
}
|
|
@@ -13492,7 +13507,7 @@ function PhoneInput({
|
|
|
13492
13507
|
] });
|
|
13493
13508
|
}
|
|
13494
13509
|
function CountryOption({ country }) {
|
|
13495
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13510
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: country.code, textValue: country.name, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2", children: [
|
|
13496
13511
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: country.flag }),
|
|
13497
13512
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary", children: country.dialCode }),
|
|
13498
13513
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-block max-w-[140px] overflow-hidden text-ellipsis whitespace-nowrap", children: country.name })
|
|
@@ -13871,7 +13886,7 @@ function SearchInput({
|
|
|
13871
13886
|
)
|
|
13872
13887
|
] }),
|
|
13873
13888
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13874
|
-
|
|
13889
|
+
_chunkAXBVN5SWcjs.HiddenTagsPopup,
|
|
13875
13890
|
{
|
|
13876
13891
|
ref: hiddenTagsPopupRef,
|
|
13877
13892
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
@@ -14165,7 +14180,7 @@ function TagSearchInput({
|
|
|
14165
14180
|
}
|
|
14166
14181
|
),
|
|
14167
14182
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14168
|
-
|
|
14183
|
+
_chunkAXBVN5SWcjs.HiddenTagsPopup,
|
|
14169
14184
|
{
|
|
14170
14185
|
ref: hiddenTagsPopupRef,
|
|
14171
14186
|
items: hiddenTags,
|
|
@@ -14255,8 +14270,8 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14255
14270
|
if (!trimmedUrl) return;
|
|
14256
14271
|
onSubmit({ text: text.trim(), url: trimmedUrl, rel });
|
|
14257
14272
|
};
|
|
14258
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14259
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14273
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose, className: "text-left md:max-w-[560px]", children: [
|
|
14274
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: editing ? "Edit link" : "Add link" }) }),
|
|
14260
14275
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14261
14276
|
"form",
|
|
14262
14277
|
{
|
|
@@ -14281,7 +14296,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14281
14296
|
),
|
|
14282
14297
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)]", children: [
|
|
14283
14298
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14284
|
-
|
|
14299
|
+
_chunkQTYSYEHKcjs.TabSelector,
|
|
14285
14300
|
{
|
|
14286
14301
|
label: "Search engines",
|
|
14287
14302
|
value: choice,
|
|
@@ -14298,7 +14313,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14298
14313
|
]
|
|
14299
14314
|
}
|
|
14300
14315
|
),
|
|
14301
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14316
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
|
|
14302
14317
|
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" }),
|
|
14303
14318
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "submit", form: formId, variant: "accent", disabled: !trimmedUrl, className: "flex-1", children: editing ? "Save" : "Add link" })
|
|
14304
14319
|
] })
|
|
@@ -14338,7 +14353,7 @@ function useMarkdownLinkCommand() {
|
|
|
14338
14353
|
buttonProps: { "aria-label": "Add or edit a link (ctrl + l)", title: "Add or edit a link (ctrl + l)" },
|
|
14339
14354
|
icon: command.icon,
|
|
14340
14355
|
execute: (state, api) => {
|
|
14341
|
-
const existing =
|
|
14356
|
+
const existing = _chunkQTYSYEHKcjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
|
|
14342
14357
|
setPending(
|
|
14343
14358
|
existing ? {
|
|
14344
14359
|
api,
|
|
@@ -14369,7 +14384,7 @@ function useMarkdownLinkCommand() {
|
|
|
14369
14384
|
initial: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _306 => _306.initial]), () => ( EMPTY_LINK)),
|
|
14370
14385
|
editing: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _307 => _307.editing]), () => ( false)),
|
|
14371
14386
|
onSubmit: (link) => {
|
|
14372
|
-
if (pending) write(pending,
|
|
14387
|
+
if (pending) write(pending, _chunkQTYSYEHKcjs.formatMarkdownLink.call(void 0, link));
|
|
14373
14388
|
},
|
|
14374
14389
|
onRemove: () => {
|
|
14375
14390
|
if (pending) write(pending, pending.initial.text);
|
|
@@ -15242,7 +15257,8 @@ var Popover2 = PopoverPrimitive5.Root;
|
|
|
15242
15257
|
var PopoverTrigger = PopoverPrimitive5.Trigger;
|
|
15243
15258
|
var PopoverContent = _react.forwardRef.call(void 0, ({ className, align = "center", sideOffset = 4, collisionPadding, ...props }, ref) => {
|
|
15244
15259
|
const keyboardPadding = _chunkA6P6DHEZcjs.useKeyboardCollisionPadding.call(void 0, );
|
|
15245
|
-
|
|
15260
|
+
const container = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
15261
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive5.Portal, { container: _nullishCoalesce(container, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15246
15262
|
PopoverPrimitive5.Content,
|
|
15247
15263
|
{
|
|
15248
15264
|
ref,
|
|
@@ -15298,20 +15314,20 @@ function ColorPresetSelect({
|
|
|
15298
15314
|
...presets.map((p) => ({
|
|
15299
15315
|
id: p.key,
|
|
15300
15316
|
label: p.label,
|
|
15301
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15317
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ColorSwatch, { color: p.color }),
|
|
15302
15318
|
onClick: () => onChange({ color: p.color, preset: p.key })
|
|
15303
15319
|
})),
|
|
15304
15320
|
{
|
|
15305
15321
|
id: CUSTOM_PRESET_KEY,
|
|
15306
15322
|
label: "Custom",
|
|
15307
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15323
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
|
|
15308
15324
|
onClick: () => onChange({ color: value, preset: void 0 })
|
|
15309
15325
|
}
|
|
15310
15326
|
]
|
|
15311
15327
|
}
|
|
15312
15328
|
];
|
|
15313
15329
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15314
|
-
|
|
15330
|
+
_chunkEFTUFJS2cjs.ActionsMenuDropdown,
|
|
15315
15331
|
{
|
|
15316
15332
|
groups,
|
|
15317
15333
|
align: "start",
|
|
@@ -15321,7 +15337,7 @@ function ColorPresetSelect({
|
|
|
15321
15337
|
{
|
|
15322
15338
|
disabled,
|
|
15323
15339
|
"aria-label": `Color: ${displayLabel}`,
|
|
15324
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15340
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ColorSwatch, { color: displayColor }),
|
|
15325
15341
|
selectedLabel: displayLabel,
|
|
15326
15342
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15327
15343
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -15453,7 +15469,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
15453
15469
|
{
|
|
15454
15470
|
disabled,
|
|
15455
15471
|
"aria-label": "Pick custom color",
|
|
15456
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15472
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ColorSwatch, { color: value }),
|
|
15457
15473
|
selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
|
|
15458
15474
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15459
15475
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -15469,7 +15485,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
15469
15485
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactcolorful.HexColorPicker, { color: value, onChange }),
|
|
15470
15486
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
|
|
15471
15487
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15472
|
-
|
|
15488
|
+
_chunkEFTUFJS2cjs.ActionsMenuDropdown,
|
|
15473
15489
|
{
|
|
15474
15490
|
groups: formatGroups,
|
|
15475
15491
|
align: "start",
|
|
@@ -15526,7 +15542,7 @@ function TicketStatusConfigRow({
|
|
|
15526
15542
|
const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
|
|
15527
15543
|
const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
|
|
15528
15544
|
const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15529
|
-
|
|
15545
|
+
_chunkF64VMOIBcjs.TicketStatusTag,
|
|
15530
15546
|
{
|
|
15531
15547
|
status: statusKey,
|
|
15532
15548
|
label: name || " ",
|
|
@@ -15633,7 +15649,7 @@ function TicketStatusConfigRow({
|
|
|
15633
15649
|
),
|
|
15634
15650
|
children: [
|
|
15635
15651
|
!isSystem && moveButtons,
|
|
15636
|
-
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,
|
|
15652
|
+
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, _chunk2ANICXS7cjs.TouchFriendlyTooltip, { content: systemTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15637
15653
|
"button",
|
|
15638
15654
|
{
|
|
15639
15655
|
type: "button",
|
|
@@ -15641,7 +15657,7 @@ function TicketStatusConfigRow({
|
|
|
15641
15657
|
className: "flex size-6 items-center justify-center text-ods-text-secondary outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
15642
15658
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRHC2FRVEcjs.InfoCircleIcon, { size: 24 })
|
|
15643
15659
|
}
|
|
15644
|
-
) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15660
|
+
) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ANICXS7cjs.TouchFriendlyTooltip, { content: deleteDisabled ? deleteDisabledReason : void 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15645
15661
|
_chunk2QMBXGMQcjs.Button,
|
|
15646
15662
|
{
|
|
15647
15663
|
type: "button",
|
|
@@ -15680,7 +15696,7 @@ var SKELETON_COLUMNS = 6;
|
|
|
15680
15696
|
function TestResultsSkeleton({
|
|
15681
15697
|
region = true
|
|
15682
15698
|
} = {}) {
|
|
15683
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNO5UJLLQcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15699
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNO5UJLLQcjs.LoadingRegion, { label: "Loading the test results", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
|
|
15684
15700
|
/* @__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}`)) }),
|
|
15685
15701
|
/* @__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}`)) }) })
|
|
15686
15702
|
] }) }) });
|
|
@@ -15715,7 +15731,7 @@ function TestResultsTable({ rows, loading }) {
|
|
|
15715
15731
|
if (loading) {
|
|
15716
15732
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
|
|
15717
15733
|
}
|
|
15718
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15734
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.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: [
|
|
15719
15735
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
|
|
15720
15736
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
|
|
15721
15737
|
] }) }) });
|
|
@@ -15821,7 +15837,7 @@ function useTestRunState(campaign) {
|
|
|
15821
15837
|
const stopReason = _nullishCoalesce(campaign.stopReason, () => ( "completed"));
|
|
15822
15838
|
const status = isActive ? "running" : hasRun && isFinished ? stopReason === "completed" ? firstError ? "error" : "success" : stopReason : "idle";
|
|
15823
15839
|
const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
|
|
15824
|
-
const startedLabel = showTiming && campaign.startedAt ?
|
|
15840
|
+
const startedLabel = showTiming && campaign.startedAt ? _chunkLOFDIDSDcjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
|
|
15825
15841
|
const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
|
|
15826
15842
|
const displayRows = _react.useMemo.call(void 0,
|
|
15827
15843
|
() => campaign.results.map(
|
|
@@ -16159,7 +16175,7 @@ function TicketInfoSection({
|
|
|
16159
16175
|
/* @__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]) }),
|
|
16160
16176
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
16161
16177
|
(status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16162
|
-
|
|
16178
|
+
_chunkF64VMOIBcjs.TicketStatusTag,
|
|
16163
16179
|
{
|
|
16164
16180
|
status: _nullishCoalesce(status, () => ( "")),
|
|
16165
16181
|
label: statusLabel,
|
|
@@ -16198,7 +16214,7 @@ function TicketInfoSection({
|
|
|
16198
16214
|
expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16199
16215
|
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" }) }),
|
|
16200
16216
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
|
|
16201
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16217
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.SimpleMarkdownRenderer, { content: description }),
|
|
16202
16218
|
attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
|
|
16203
16219
|
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, _chunkJHQNUWFMcjs.Tag, { label: tag, variant: "outline", className: "max-w-full" }, tag)) }) }),
|
|
16204
16220
|
(notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16223,8 +16239,8 @@ function renderTicketStatusOption(option, isSelected) {
|
|
|
16223
16239
|
const { label, color } = option;
|
|
16224
16240
|
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: [
|
|
16225
16241
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16226
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16227
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16242
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ColorSwatch, { color }),
|
|
16243
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16228
16244
|
] }),
|
|
16229
16245
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16230
16246
|
] });
|
|
@@ -16234,7 +16250,7 @@ function renderTicketAssigneeOption(option, isSelected) {
|
|
|
16234
16250
|
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: [
|
|
16235
16251
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16236
16252
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "round" }),
|
|
16237
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16253
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16238
16254
|
] }),
|
|
16239
16255
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16240
16256
|
] });
|
|
@@ -16268,9 +16284,9 @@ function TakeOverTicketModal({
|
|
|
16268
16284
|
if (!selectedStatusId || !assigneeId || isPending) return;
|
|
16269
16285
|
onConfirm({ statusId: selectedStatusId, assigneeId });
|
|
16270
16286
|
};
|
|
16271
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16287
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16272
16288
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16273
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16289
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: "Take Over Ticket" }) }),
|
|
16274
16290
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16275
16291
|
"The ticket ",
|
|
16276
16292
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16278,19 +16294,19 @@ function TakeOverTicketModal({
|
|
|
16278
16294
|
] }),
|
|
16279
16295
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16280
16296
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16281
|
-
|
|
16297
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
16282
16298
|
{
|
|
16283
16299
|
label: "Status",
|
|
16284
16300
|
options: statusOptions,
|
|
16285
16301
|
value: selectedStatusId,
|
|
16286
16302
|
onChange: setStatusId,
|
|
16287
16303
|
placeholder: "Select Status",
|
|
16288
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16304
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16289
16305
|
renderOption: renderTicketStatusOption
|
|
16290
16306
|
}
|
|
16291
16307
|
) }),
|
|
16292
16308
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16293
|
-
|
|
16309
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
16294
16310
|
{
|
|
16295
16311
|
label: "Assigned",
|
|
16296
16312
|
options: assigneeOptions,
|
|
@@ -16312,7 +16328,7 @@ function TakeOverTicketModal({
|
|
|
16312
16328
|
}
|
|
16313
16329
|
) })
|
|
16314
16330
|
] }),
|
|
16315
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16331
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
|
|
16316
16332
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16317
16333
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16318
16334
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16371,9 +16387,9 @@ function ReopenTicketModal({
|
|
|
16371
16387
|
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
16372
16388
|
});
|
|
16373
16389
|
};
|
|
16374
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16390
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16375
16391
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16376
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16392
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16377
16393
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16378
16394
|
"The ticket ",
|
|
16379
16395
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16381,19 +16397,19 @@ function ReopenTicketModal({
|
|
|
16381
16397
|
] }),
|
|
16382
16398
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16383
16399
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16384
|
-
|
|
16400
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
16385
16401
|
{
|
|
16386
16402
|
label: "Status",
|
|
16387
16403
|
options: statusOptions,
|
|
16388
16404
|
value: selectedStatusId,
|
|
16389
16405
|
onChange: setStatusId,
|
|
16390
16406
|
placeholder: "Select Status",
|
|
16391
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16407
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16392
16408
|
renderOption: renderTicketStatusOption
|
|
16393
16409
|
}
|
|
16394
16410
|
) }),
|
|
16395
16411
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16396
|
-
|
|
16412
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
16397
16413
|
{
|
|
16398
16414
|
label: "Assigned",
|
|
16399
16415
|
options: assigneeOptions,
|
|
@@ -16426,7 +16442,7 @@ function ReopenTicketModal({
|
|
|
16426
16442
|
disabled: isPending
|
|
16427
16443
|
}
|
|
16428
16444
|
) }),
|
|
16429
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16445
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
|
|
16430
16446
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16431
16447
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16432
16448
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16475,9 +16491,9 @@ function ReopenTicketRequestModal({
|
|
|
16475
16491
|
...showHandoffOption ? { handoffToTechnician: handoff } : {}
|
|
16476
16492
|
});
|
|
16477
16493
|
};
|
|
16478
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16494
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16479
16495
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16480
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16496
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16481
16497
|
/* @__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." }),
|
|
16482
16498
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16483
16499
|
Textarea,
|
|
@@ -16501,7 +16517,7 @@ function ReopenTicketRequestModal({
|
|
|
16501
16517
|
disabled: isPending
|
|
16502
16518
|
}
|
|
16503
16519
|
),
|
|
16504
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16520
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
|
|
16505
16521
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
|
|
16506
16522
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
|
|
16507
16523
|
] })
|
|
@@ -16658,7 +16674,7 @@ function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, load
|
|
|
16658
16674
|
gap: COLUMN_GAP_PX
|
|
16659
16675
|
};
|
|
16660
16676
|
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,
|
|
16661
|
-
|
|
16677
|
+
_chunkQTYSYEHKcjs.MarqueeWall,
|
|
16662
16678
|
{
|
|
16663
16679
|
axis: "y",
|
|
16664
16680
|
reverse: index % 2 === 1,
|
|
@@ -16904,7 +16920,7 @@ function PhoneFrame({ dateLabel, timeLabel, children, className }) {
|
|
|
16904
16920
|
"div",
|
|
16905
16921
|
{
|
|
16906
16922
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "h-[617px] w-[299px] shrink-0 rounded-[48px] border border-ods-border bg-black p-2.5", className),
|
|
16907
|
-
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]",
|
|
16923
|
+
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]", _chunkAXBVN5SWcjs.DEVICE_WALLPAPER_CLASS), children: [
|
|
16908
16924
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16909
16925
|
"div",
|
|
16910
16926
|
{
|
|
@@ -17070,7 +17086,7 @@ var TRIAL_TERM_ICONS = {
|
|
|
17070
17086
|
};
|
|
17071
17087
|
var DEFAULT_TRIAL_TERMS = ["cancel", "length", "noContract"];
|
|
17072
17088
|
function trialBenefits(trialDays, terms = DEFAULT_TRIAL_TERMS) {
|
|
17073
|
-
const labels =
|
|
17089
|
+
const labels = _chunkQKFJ6ORKcjs.trialLabels.call(void 0, trialDays);
|
|
17074
17090
|
return terms.flatMap((term) => {
|
|
17075
17091
|
const label = labels[term];
|
|
17076
17092
|
return label ? [{ icon: TRIAL_TERM_ICONS[term], label }] : [];
|
|
@@ -17148,7 +17164,7 @@ function AnalyzingState({ label, className }) {
|
|
|
17148
17164
|
}) }),
|
|
17149
17165
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 text-center text-ods-text-secondary text-h4", children: [
|
|
17150
17166
|
label,
|
|
17151
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17167
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ChatTypingIndicator, { "aria-hidden": true, size: "sm", dotClassName: "bg-ods-text-secondary motion-reduce:animate-none" })
|
|
17152
17168
|
] })
|
|
17153
17169
|
] });
|
|
17154
17170
|
}
|
|
@@ -17162,7 +17178,7 @@ var INCIDENT_TONE = {
|
|
|
17162
17178
|
approved: "success"
|
|
17163
17179
|
};
|
|
17164
17180
|
function IncidentStatusLine({ status, label, className }) {
|
|
17165
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17181
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.StatusLine, { tone: INCIDENT_TONE[status], label, className });
|
|
17166
17182
|
}
|
|
17167
17183
|
function SourceTag({ children }) {
|
|
17168
17184
|
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 });
|
|
@@ -19189,9 +19205,9 @@ function ChangelogManager({
|
|
|
19189
19205
|
] }),
|
|
19190
19206
|
tagOptions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
19191
19207
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-ods-text-secondary", children: tagLabel }),
|
|
19192
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
19193
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19194
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19208
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: _nullishCoalesce(entry.tag, () => ( "")), onValueChange: (value) => updateEntry(index, "tag", value), children: [
|
|
19209
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder: tagLabel }) }),
|
|
19210
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: tagOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
19195
19211
|
] })
|
|
19196
19212
|
] })
|
|
19197
19213
|
] })
|
|
@@ -20844,17 +20860,17 @@ function MediaGalleryManager({
|
|
|
20844
20860
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
20845
20861
|
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" }),
|
|
20846
20862
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20847
|
-
|
|
20863
|
+
_chunkAXBVN5SWcjs.Select,
|
|
20848
20864
|
{
|
|
20849
20865
|
value: item.media_type,
|
|
20850
20866
|
onValueChange: (value) => update(index, { media_type: value }),
|
|
20851
20867
|
children: [
|
|
20852
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20853
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20854
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20855
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20856
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20857
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20868
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "h-8 bg-ods-bg text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
20869
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
20870
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "image", children: "Image" }),
|
|
20871
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "video", children: "Video" }),
|
|
20872
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "screenshot", children: "Screenshot" }),
|
|
20873
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "demo", children: "Demo" })
|
|
20858
20874
|
] })
|
|
20859
20875
|
]
|
|
20860
20876
|
}
|
|
@@ -22136,9 +22152,9 @@ function PushButtonSelector({
|
|
|
22136
22152
|
option.id
|
|
22137
22153
|
);
|
|
22138
22154
|
if (option.disabled && option.disabledReason) {
|
|
22139
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22140
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22141
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22155
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEFTUFJS2cjs.Tooltip, { children: [
|
|
22156
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipTrigger, { asChild: true, children: optionEl }),
|
|
22157
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipContent, { className: "max-w-xs", children: option.disabledReason })
|
|
22142
22158
|
] }, option.id);
|
|
22143
22159
|
}
|
|
22144
22160
|
return optionEl;
|
|
@@ -22183,7 +22199,7 @@ function PushButtonSelector({
|
|
|
22183
22199
|
lazyLoad.isFetchingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "py-2 text-center text-ods-text-secondary text-h6", children: "Loading more\u2026" }) : null
|
|
22184
22200
|
] }) : null
|
|
22185
22201
|
] });
|
|
22186
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22202
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 ${className}`, children: [
|
|
22187
22203
|
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h5", children: title }),
|
|
22188
22204
|
searchInput,
|
|
22189
22205
|
lazyLoad ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22266,14 +22282,14 @@ var MODEL_TOKEN_RATES_COPY = {
|
|
|
22266
22282
|
empty: "No token rates are in effect right now."
|
|
22267
22283
|
};
|
|
22268
22284
|
function providerMark(providerType, stated, className) {
|
|
22269
|
-
const Mark = _chunkKTPR66EEcjs.findIcon.call(void 0,
|
|
22285
|
+
const Mark = _chunkKTPR66EEcjs.findIcon.call(void 0, _chunkQKFJ6ORKcjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
|
|
22270
22286
|
return Mark ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Mark, { className }) : void 0;
|
|
22271
22287
|
}
|
|
22272
22288
|
var PAD_X = "px-[var(--spacing-system-s)]";
|
|
22273
22289
|
var ROW = "flex items-center gap-[var(--spacing-system-s)]";
|
|
22274
22290
|
var NUMBER_CELL = "w-16 shrink-0 whitespace-nowrap text-right tabular-nums";
|
|
22275
22291
|
function useProviderGroup(rates) {
|
|
22276
|
-
const groups =
|
|
22292
|
+
const groups = _chunkQKFJ6ORKcjs.groupTokenRatesByProvider.call(void 0, rates);
|
|
22277
22293
|
const [picked, setPicked] = _react.useState.call(void 0, null);
|
|
22278
22294
|
return { groups, group: _nullishCoalesce(groups.find((candidate) => candidate.providerType === picked), () => ( groups[0])), setPicked };
|
|
22279
22295
|
}
|
|
@@ -22284,7 +22300,7 @@ function ProviderTabs({
|
|
|
22284
22300
|
className
|
|
22285
22301
|
}) {
|
|
22286
22302
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22287
|
-
|
|
22303
|
+
_chunkQTYSYEHKcjs.TabSelector,
|
|
22288
22304
|
{
|
|
22289
22305
|
variant: "secondary",
|
|
22290
22306
|
scrollable: true,
|
|
@@ -22292,7 +22308,7 @@ function ProviderTabs({
|
|
|
22292
22308
|
onValueChange,
|
|
22293
22309
|
items: groups.map((candidate) => ({
|
|
22294
22310
|
id: candidate.providerType,
|
|
22295
|
-
label:
|
|
22311
|
+
label: _chunkQKFJ6ORKcjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _443 => _443.rates, 'access', _444 => _444[0], 'optionalAccess', _445 => _445.providerLabel])),
|
|
22296
22312
|
icon: providerMark(candidate.providerType, _optionalChain([candidate, 'access', _446 => _446.rates, 'access', _447 => _447[0], 'optionalAccess', _448 => _448.providerIcon]), "size-full")
|
|
22297
22313
|
})),
|
|
22298
22314
|
className
|
|
@@ -22321,8 +22337,8 @@ function ModelTokenRatesPopover({
|
|
|
22321
22337
|
triggerClassName,
|
|
22322
22338
|
...panel
|
|
22323
22339
|
}) {
|
|
22324
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22325
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22340
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAKK3EO37cjs.DropdownMenu, { children: [
|
|
22341
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22326
22342
|
"button",
|
|
22327
22343
|
{
|
|
22328
22344
|
type: "button",
|
|
@@ -22334,7 +22350,7 @@ function ModelTokenRatesPopover({
|
|
|
22334
22350
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFO6DOP6Mcjs.QuestionCircleIcon, { className: "size-6" })
|
|
22335
22351
|
}
|
|
22336
22352
|
) }),
|
|
22337
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22353
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuContent, { align: "end", sideOffset: 8, className: "border-0 bg-transparent p-0 shadow-none", children: _nullishCoalesce(children, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ModelTokenRates, { ...panel }))) })
|
|
22338
22354
|
] });
|
|
22339
22355
|
}
|
|
22340
22356
|
function AutoTopUpLine({ enabled }) {
|
|
@@ -22393,8 +22409,8 @@ function ModelTokenRatesTable({ rates }) {
|
|
|
22393
22409
|
className: _chunk3ATAYP36cjs.cn.call(void 0, ROW, PAD_X, "py-[var(--spacing-system-xxs)] text-ods-text-primary text-h6"),
|
|
22394
22410
|
children: [
|
|
22395
22411
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "rowheader", className: "min-w-0 flex-1 truncate", children: rate.displayName || rate.modelName }),
|
|
22396
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
22397
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
22412
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkQKFJ6ORKcjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
|
|
22413
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkQKFJ6ORKcjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
|
|
22398
22414
|
]
|
|
22399
22415
|
},
|
|
22400
22416
|
rate.modelName
|
|
@@ -22460,7 +22476,7 @@ function modelOption(rate) {
|
|
|
22460
22476
|
return {
|
|
22461
22477
|
label: rate.displayName || rate.modelName,
|
|
22462
22478
|
value: rate.modelName,
|
|
22463
|
-
description:
|
|
22479
|
+
description: _chunkQKFJ6ORKcjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
|
|
22464
22480
|
icon: providerMark(rate.providerType, rate.providerIcon, "size-full text-ods-text-secondary")
|
|
22465
22481
|
};
|
|
22466
22482
|
}
|
|
@@ -22514,8 +22530,8 @@ function ModelTokenExchange({
|
|
|
22514
22530
|
const [chosen, setChosen] = _react.useState.call(void 0, null);
|
|
22515
22531
|
const balance = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(chosen, () => ( defaultAmount)), () => ( _optionalChain([tokenPrice, 'optionalAccess', _449 => _449.tokens]))), () => ( MODEL_TOKEN_EXCHANGE_BALANCE));
|
|
22516
22532
|
const max = Math.max(amountRange.max, balance, ...presets.map((preset) => preset.tokens));
|
|
22517
|
-
const tokens =
|
|
22518
|
-
const cost =
|
|
22533
|
+
const tokens = _chunkQKFJ6ORKcjs.formatTokenAmount.call(void 0, balance);
|
|
22534
|
+
const cost = _chunkQKFJ6ORKcjs.tokenCost.call(void 0, balance, tokenPrice);
|
|
22519
22535
|
const balancePrice = cost === null ? null : _chunkJHQNUWFMcjs.formatPrice.call(void 0, cost);
|
|
22520
22536
|
const model = rate ? rate.displayName || rate.modelName : "";
|
|
22521
22537
|
const options = models.map(modelOption);
|
|
@@ -22557,7 +22573,7 @@ function ModelTokenExchange({
|
|
|
22557
22573
|
variant: preset.tokens === balance ? "accent" : "outline",
|
|
22558
22574
|
size: "small",
|
|
22559
22575
|
onClick: () => setChosen(preset.tokens),
|
|
22560
|
-
children: copy.buy.preset(
|
|
22576
|
+
children: copy.buy.preset(_chunkQKFJ6ORKcjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
|
|
22561
22577
|
},
|
|
22562
22578
|
preset.label
|
|
22563
22579
|
)) })
|
|
@@ -22576,7 +22592,7 @@ function ModelTokenExchange({
|
|
|
22576
22592
|
const stated = _nullishCoalesce(models.find((option) => option.providerType === providerType), () => ( (_optionalChain([rate, 'optionalAccess', _450 => _450.providerType]) === providerType ? rate : null)));
|
|
22577
22593
|
return {
|
|
22578
22594
|
id: providerType,
|
|
22579
|
-
name:
|
|
22595
|
+
name: _chunkQKFJ6ORKcjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _451 => _451.providerLabel])),
|
|
22580
22596
|
icon: providerMark(providerType, _optionalChain([stated, 'optionalAccess', _452 => _452.providerIcon]), "size-8 text-ods-text-secondary")
|
|
22581
22597
|
};
|
|
22582
22598
|
}),
|
|
@@ -22588,7 +22604,7 @@ function ModelTokenExchange({
|
|
|
22588
22604
|
}
|
|
22589
22605
|
),
|
|
22590
22606
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22591
|
-
|
|
22607
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
22592
22608
|
{
|
|
22593
22609
|
label: copy.use.model,
|
|
22594
22610
|
value: _nullishCoalesce(_optionalChain([rate, 'optionalAccess', _454 => _454.modelName]), () => ( null)),
|
|
@@ -22614,7 +22630,7 @@ function ModelTokenExchange({
|
|
|
22614
22630
|
{
|
|
22615
22631
|
size: "plain",
|
|
22616
22632
|
loading,
|
|
22617
|
-
figure:
|
|
22633
|
+
figure: _chunkQKFJ6ORKcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _457 => _457.inputTokenRate])),
|
|
22618
22634
|
words: copy.charge.input
|
|
22619
22635
|
}
|
|
22620
22636
|
),
|
|
@@ -22623,7 +22639,7 @@ function ModelTokenExchange({
|
|
|
22623
22639
|
{
|
|
22624
22640
|
size: "plain",
|
|
22625
22641
|
loading,
|
|
22626
|
-
figure:
|
|
22642
|
+
figure: _chunkQKFJ6ORKcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _458 => _458.outputTokenRate])),
|
|
22627
22643
|
words: copy.charge.output
|
|
22628
22644
|
}
|
|
22629
22645
|
)
|
|
@@ -22635,9 +22651,9 @@ function ModelTokenExchange({
|
|
|
22635
22651
|
className: "mt-auto flex flex-col rounded-md border border-ods-accent bg-ods-bg p-[var(--spacing-system-mf)]",
|
|
22636
22652
|
children: [
|
|
22637
22653
|
/* @__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) }),
|
|
22638
|
-
/* @__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") }) :
|
|
22654
|
+
/* @__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") }) : _chunkQKFJ6ORKcjs.formatTokenAmount.call(void 0, _chunkQKFJ6ORKcjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
|
|
22639
22655
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-primary text-h3", children: copy.charge.read }),
|
|
22640
|
-
/* @__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(
|
|
22656
|
+
/* @__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(_chunkQKFJ6ORKcjs.formatTokenAmount.call(void 0, _chunkQKFJ6ORKcjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
|
|
22641
22657
|
]
|
|
22642
22658
|
}
|
|
22643
22659
|
)
|
|
@@ -23135,14 +23151,14 @@ var ConfidenceBadge = ({
|
|
|
23135
23151
|
size = "sm",
|
|
23136
23152
|
className
|
|
23137
23153
|
}) => {
|
|
23138
|
-
const level =
|
|
23154
|
+
const level = _chunkQKFJ6ORKcjs.getConfidenceLevel.call(void 0, confidence);
|
|
23139
23155
|
if (level === "none") {
|
|
23140
23156
|
return null;
|
|
23141
23157
|
}
|
|
23142
|
-
const label =
|
|
23143
|
-
const borderClass =
|
|
23144
|
-
const textClass =
|
|
23145
|
-
const bgClass =
|
|
23158
|
+
const label = _chunkQKFJ6ORKcjs.getConfidenceLabel.call(void 0, confidence);
|
|
23159
|
+
const borderClass = _chunkQKFJ6ORKcjs.getConfidenceBorderClass.call(void 0, confidence);
|
|
23160
|
+
const textClass = _chunkQKFJ6ORKcjs.getConfidenceTextClass.call(void 0, confidence);
|
|
23161
|
+
const bgClass = _chunkQKFJ6ORKcjs.getConfidenceBgClass.call(void 0, confidence);
|
|
23146
23162
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23147
23163
|
"span",
|
|
23148
23164
|
{
|
|
@@ -23193,9 +23209,9 @@ function SEOEditorPreview({
|
|
|
23193
23209
|
const [isUploading, setIsUploading] = _react.useState.call(void 0, false);
|
|
23194
23210
|
const [fileInputRef, setFileInputRef] = _react.useState.call(void 0, null);
|
|
23195
23211
|
const seoTitleLength = (seoTitle || "").length;
|
|
23196
|
-
const seoTitleTooLong = seoTitleLength >
|
|
23212
|
+
const seoTitleTooLong = seoTitleLength > _chunkQKFJ6ORKcjs.SEO_TITLE_MAX_LENGTH;
|
|
23197
23213
|
const seoDescriptionLength = (seoDescription || "").length;
|
|
23198
|
-
const seoDescriptionTooLong = seoDescriptionLength >
|
|
23214
|
+
const seoDescriptionTooLong = seoDescriptionLength > _chunkQKFJ6ORKcjs.SEO_DESCRIPTION_MAX_LENGTH;
|
|
23199
23215
|
const displayTitle = seoTitle.trim() || title || "Untitled";
|
|
23200
23216
|
const displayDescription = seoDescription.trim() || summary || "No description";
|
|
23201
23217
|
const hasOgImage = ogImageUrl.trim();
|
|
@@ -23220,10 +23236,10 @@ function SEOEditorPreview({
|
|
|
23220
23236
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
23221
23237
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23222
23238
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23223
|
-
|
|
23239
|
+
_chunkQKFJ6ORKcjs.Field,
|
|
23224
23240
|
{
|
|
23225
23241
|
label: "SEO Title",
|
|
23226
|
-
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${
|
|
23242
|
+
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkQKFJ6ORKcjs.SEO_TITLE_MAX_LENGTH})` : null,
|
|
23227
23243
|
labelExtras: aiConfidenceSeoTitle !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23228
23244
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
23229
23245
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ConfidenceBadge, { confidence: aiConfidenceSeoTitle, showLabel: true, showPercentage: true, size: "sm" })
|
|
@@ -23238,7 +23254,7 @@ function SEOEditorPreview({
|
|
|
23238
23254
|
children: [
|
|
23239
23255
|
seoTitleLength,
|
|
23240
23256
|
"/",
|
|
23241
|
-
|
|
23257
|
+
_chunkQKFJ6ORKcjs.SEO_TITLE_MAX_LENGTH
|
|
23242
23258
|
]
|
|
23243
23259
|
}
|
|
23244
23260
|
),
|
|
@@ -23249,7 +23265,7 @@ function SEOEditorPreview({
|
|
|
23249
23265
|
value: seoTitle || "",
|
|
23250
23266
|
onChange: (e) => onSeoTitleChange(e.target.value),
|
|
23251
23267
|
disabled,
|
|
23252
|
-
maxLength:
|
|
23268
|
+
maxLength: _chunkQKFJ6ORKcjs.SEO_TITLE_MAX_LENGTH,
|
|
23253
23269
|
invalid: seoTitleTooLong,
|
|
23254
23270
|
placeholder: "Enter SEO meta title...",
|
|
23255
23271
|
className: "border-ods-border bg-ods-bg text-ods-text-primary"
|
|
@@ -23260,7 +23276,7 @@ function SEOEditorPreview({
|
|
|
23260
23276
|
!seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
|
|
23261
23277
|
] }),
|
|
23262
23278
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23263
|
-
|
|
23279
|
+
_chunkQKFJ6ORKcjs.Field,
|
|
23264
23280
|
{
|
|
23265
23281
|
label: "SEO Keywords",
|
|
23266
23282
|
labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -23292,10 +23308,10 @@ function SEOEditorPreview({
|
|
|
23292
23308
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
23293
23309
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23294
23310
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23295
|
-
|
|
23311
|
+
_chunkQKFJ6ORKcjs.Field,
|
|
23296
23312
|
{
|
|
23297
23313
|
label: "SEO Description",
|
|
23298
|
-
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${
|
|
23314
|
+
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkQKFJ6ORKcjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
|
|
23299
23315
|
labelExtras: aiConfidenceSeoDescription !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23300
23316
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
23301
23317
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -23318,7 +23334,7 @@ function SEOEditorPreview({
|
|
|
23318
23334
|
children: [
|
|
23319
23335
|
seoDescriptionLength,
|
|
23320
23336
|
"/",
|
|
23321
|
-
|
|
23337
|
+
_chunkQKFJ6ORKcjs.SEO_DESCRIPTION_MAX_LENGTH
|
|
23322
23338
|
]
|
|
23323
23339
|
}
|
|
23324
23340
|
),
|
|
@@ -23329,7 +23345,7 @@ function SEOEditorPreview({
|
|
|
23329
23345
|
value: seoDescription || "",
|
|
23330
23346
|
onChange: (e) => onSeoDescriptionChange(e.target.value),
|
|
23331
23347
|
disabled,
|
|
23332
|
-
maxLength:
|
|
23348
|
+
maxLength: _chunkQKFJ6ORKcjs.SEO_DESCRIPTION_MAX_LENGTH,
|
|
23333
23349
|
invalid: seoDescriptionTooLong,
|
|
23334
23350
|
placeholder: "Enter SEO meta description...",
|
|
23335
23351
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "resize-none border-ods-border bg-ods-bg text-ods-text-primary", SEO_MEDIA_BOX_HEIGHT)
|
|
@@ -23482,7 +23498,7 @@ function socialIcon(platform) {
|
|
|
23482
23498
|
return _nullishCoalesce(_chunkKTPR66EEcjs.iconOf.call(void 0, SOCIAL_ICONS[platform]), () => ( void 0));
|
|
23483
23499
|
}
|
|
23484
23500
|
function renderSocialIcon(platform) {
|
|
23485
|
-
const key = _nullishCoalesce(
|
|
23501
|
+
const key = _nullishCoalesce(_chunkQKFJ6ORKcjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
|
|
23486
23502
|
const icon = _nullishCoalesce(socialIcon(key), () => ( socialIcon("website")));
|
|
23487
23503
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5" }) : null;
|
|
23488
23504
|
}
|
|
@@ -23565,7 +23581,7 @@ function SocialLinksManager({
|
|
|
23565
23581
|
};
|
|
23566
23582
|
const getIcon = (link, platform) => {
|
|
23567
23583
|
const iconKey = _optionalChain([platform, 'optionalAccess', _468 => _468.icon_name]) || link.platform;
|
|
23568
|
-
const key =
|
|
23584
|
+
const key = _chunkQKFJ6ORKcjs.normalizeSocialPlatform.call(void 0, iconKey);
|
|
23569
23585
|
if (!key) return null;
|
|
23570
23586
|
const icon = socialIcon(key);
|
|
23571
23587
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5 text-ods-text-secondary" }) : null;
|
|
@@ -23581,9 +23597,9 @@ function SocialLinksManager({
|
|
|
23581
23597
|
children: [
|
|
23582
23598
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 items-center justify-center", children: Icon }),
|
|
23583
23599
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid flex-1 grid-cols-2 gap-3", children: [
|
|
23584
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23585
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23586
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23600
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: link.platform, onValueChange: (value) => updateLink(index, "platform", value), children: [
|
|
23601
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
23602
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: platforms.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: p.name, children: p.display_name }, p.name)) })
|
|
23587
23603
|
] }) }),
|
|
23588
23604
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23589
23605
|
_chunkHTRILBJDcjs.Input,
|
|
@@ -23601,15 +23617,15 @@ function SocialLinksManager({
|
|
|
23601
23617
|
)
|
|
23602
23618
|
] }),
|
|
23603
23619
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23604
|
-
|
|
23620
|
+
_chunkAXBVN5SWcjs.Select,
|
|
23605
23621
|
{
|
|
23606
23622
|
value: _nullishCoalesce(link.visibility, () => ( "external")),
|
|
23607
23623
|
onValueChange: (value) => updateLink(index, "visibility", value),
|
|
23608
23624
|
children: [
|
|
23609
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23610
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23611
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23612
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23625
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "w-[120px] shrink-0", "aria-label": "Social link visibility", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
23626
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: [
|
|
23627
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "external", children: "Public" }),
|
|
23628
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "internal", children: "Internal" })
|
|
23613
23629
|
] })
|
|
23614
23630
|
]
|
|
23615
23631
|
}
|
|
@@ -23975,7 +23991,7 @@ function VideoBitesDisplay({
|
|
|
23975
23991
|
filterPublished = true,
|
|
23976
23992
|
showTitle = true
|
|
23977
23993
|
}) {
|
|
23978
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23994
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQTYSYEHKcjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
|
|
23979
23995
|
}
|
|
23980
23996
|
|
|
23981
23997
|
// src/components/features/walkthrough-video.tsx
|
|
@@ -24003,7 +24019,7 @@ function WalkthroughVideo({
|
|
|
24003
24019
|
onOpenChange,
|
|
24004
24020
|
defaultOpen,
|
|
24005
24021
|
defaultOpenPaused,
|
|
24006
|
-
deepLinkParam =
|
|
24022
|
+
deepLinkParam = _chunkQKFJ6ORKcjs.WALKTHROUGH_OPEN_QUERY_PARAM,
|
|
24007
24023
|
autoPlayCard = false,
|
|
24008
24024
|
label = "Play Demo Video",
|
|
24009
24025
|
placement,
|
|
@@ -24019,7 +24035,7 @@ function WalkthroughVideo({
|
|
|
24019
24035
|
}) {
|
|
24020
24036
|
const inline = placement === "inline";
|
|
24021
24037
|
const dismissEnabled = dismissal !== false;
|
|
24022
|
-
const storageKey = dismissEnabled && dismissal.storageKey ||
|
|
24038
|
+
const storageKey = dismissEnabled && dismissal.storageKey || _chunkQKFJ6ORKcjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
|
|
24023
24039
|
const dismissalId = _optionalChain([video, 'optionalAccess', _474 => _474.id]) != null ? String(video.id) : "dismissed";
|
|
24024
24040
|
const [mounted, setMounted] = _react.useState.call(void 0, false);
|
|
24025
24041
|
const [dismissed, setDismissed] = _react.useState.call(void 0, false);
|
|
@@ -24031,7 +24047,7 @@ function WalkthroughVideo({
|
|
|
24031
24047
|
let delayElapsed = false;
|
|
24032
24048
|
let interacted = inline;
|
|
24033
24049
|
const reveal = () => {
|
|
24034
|
-
if (dismissEnabled &&
|
|
24050
|
+
if (dismissEnabled && _chunkQKFJ6ORKcjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
|
|
24035
24051
|
setDismissed(true);
|
|
24036
24052
|
return;
|
|
24037
24053
|
}
|
|
@@ -24068,7 +24084,7 @@ function WalkthroughVideo({
|
|
|
24068
24084
|
if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
|
|
24069
24085
|
};
|
|
24070
24086
|
}, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId, inline]);
|
|
24071
|
-
const hydrated =
|
|
24087
|
+
const hydrated = _chunkQTYSYEHKcjs.useIsHydrated.call(void 0, );
|
|
24072
24088
|
const previewSuppressed = _react.useMemo.call(void 0, () => {
|
|
24073
24089
|
if (!hydrated) return false;
|
|
24074
24090
|
try {
|
|
@@ -24318,7 +24334,7 @@ function WalkthroughVideo({
|
|
|
24318
24334
|
(e) => {
|
|
24319
24335
|
e.stopPropagation();
|
|
24320
24336
|
pausePreviewNow();
|
|
24321
|
-
if (dismissEnabled)
|
|
24337
|
+
if (dismissEnabled) _chunkQKFJ6ORKcjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
|
|
24322
24338
|
setDismissed(true);
|
|
24323
24339
|
},
|
|
24324
24340
|
[dismissEnabled, storageKey, dismissalId, pausePreviewNow]
|
|
@@ -24491,7 +24507,7 @@ function WalkthroughVideo({
|
|
|
24491
24507
|
`card-${embedUrlKey}`
|
|
24492
24508
|
) }),
|
|
24493
24509
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24494
|
-
|
|
24510
|
+
_chunkQTYSYEHKcjs.CardHitLayer,
|
|
24495
24511
|
{
|
|
24496
24512
|
label: video.title ? `${label}: ${video.title}` : label,
|
|
24497
24513
|
onPointerDown: pausePreviewNow,
|
|
@@ -24657,7 +24673,7 @@ function InlineWalkthroughVideo(props) {
|
|
|
24657
24673
|
var _reactquery = require('@tanstack/react-query');
|
|
24658
24674
|
function useWalkthroughVideo(opts) {
|
|
24659
24675
|
const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
|
|
24660
|
-
const captions =
|
|
24676
|
+
const captions = _chunkQTYSYEHKcjs.useCaptions.call(void 0, );
|
|
24661
24677
|
const query = _reactquery.useQuery.call(void 0, {
|
|
24662
24678
|
queryKey: ["walkthrough-video", endpoint],
|
|
24663
24679
|
enabled,
|
|
@@ -25309,19 +25325,19 @@ function HighlightVideoSection({
|
|
|
25309
25325
|
/* @__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: [
|
|
25310
25326
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { children: "Target Duration" }),
|
|
25311
25327
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25312
|
-
|
|
25328
|
+
_chunkAXBVN5SWcjs.Select,
|
|
25313
25329
|
{
|
|
25314
25330
|
value: targetDurationSeconds.toString(),
|
|
25315
25331
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
25316
25332
|
disabled,
|
|
25317
25333
|
children: [
|
|
25318
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25319
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25320
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25321
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25322
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25323
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25324
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25334
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "mt-1 bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
25335
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
25336
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
25337
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
25338
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
25339
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
25340
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
25325
25341
|
] })
|
|
25326
25342
|
]
|
|
25327
25343
|
}
|
|
@@ -25406,20 +25422,20 @@ function HighlightConfigSection({
|
|
|
25406
25422
|
disabled = false,
|
|
25407
25423
|
className = ""
|
|
25408
25424
|
}) {
|
|
25409
|
-
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,
|
|
25410
|
-
|
|
25425
|
+
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, _chunkQKFJ6ORKcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25426
|
+
_chunkAXBVN5SWcjs.Select,
|
|
25411
25427
|
{
|
|
25412
25428
|
value: targetDurationSeconds.toString(),
|
|
25413
25429
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
25414
25430
|
disabled,
|
|
25415
25431
|
children: [
|
|
25416
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25417
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25418
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25419
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25420
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25421
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25422
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25432
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { id: f.id, className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
25433
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { className: "bg-ods-card", children: [
|
|
25434
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
25435
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
25436
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
25437
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
25438
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
25423
25439
|
] })
|
|
25424
25440
|
]
|
|
25425
25441
|
}
|
|
@@ -25507,7 +25523,7 @@ var AIStatusIndicator = ({
|
|
|
25507
25523
|
}) => {
|
|
25508
25524
|
const config = statusConfig[status];
|
|
25509
25525
|
const displayText = message || config.label;
|
|
25510
|
-
const confidenceLabel = showConfidence && confidence !== void 0 ? `${
|
|
25526
|
+
const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkQKFJ6ORKcjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
|
|
25511
25527
|
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: [
|
|
25512
25528
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25513
25529
|
_chunkUNFCRSYIcjs.SparklesIcon,
|
|
@@ -25515,7 +25531,7 @@ var AIStatusIndicator = ({
|
|
|
25515
25531
|
size: 16,
|
|
25516
25532
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25517
25533
|
status === "loading" && "animate-pulse",
|
|
25518
|
-
confidence !== void 0 && status === "success" ?
|
|
25534
|
+
confidence !== void 0 && status === "success" ? _chunkQKFJ6ORKcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
25519
25535
|
)
|
|
25520
25536
|
}
|
|
25521
25537
|
),
|
|
@@ -25524,7 +25540,7 @@ var AIStatusIndicator = ({
|
|
|
25524
25540
|
{
|
|
25525
25541
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25526
25542
|
"text-h6",
|
|
25527
|
-
confidence !== void 0 && status === "success" ?
|
|
25543
|
+
confidence !== void 0 && status === "success" ? _chunkQKFJ6ORKcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
25528
25544
|
),
|
|
25529
25545
|
children: displayText
|
|
25530
25546
|
}
|
|
@@ -25534,8 +25550,8 @@ var AIStatusIndicator = ({
|
|
|
25534
25550
|
{
|
|
25535
25551
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25536
25552
|
"rounded-full border px-2 py-0.5 text-h6",
|
|
25537
|
-
|
|
25538
|
-
|
|
25553
|
+
_chunkQKFJ6ORKcjs.getConfidenceBorderClass.call(void 0, confidence),
|
|
25554
|
+
_chunkQKFJ6ORKcjs.getConfidenceTextClass.call(void 0, confidence)
|
|
25539
25555
|
),
|
|
25540
25556
|
children: confidenceLabel
|
|
25541
25557
|
}
|
|
@@ -26100,12 +26116,12 @@ function ApprovalLevelView({
|
|
|
26100
26116
|
] });
|
|
26101
26117
|
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: [
|
|
26102
26118
|
name,
|
|
26103
|
-
showLabel ? icon : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26119
|
+
showLabel ? icon : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ANICXS7cjs.TouchFriendlyTooltip, { content: `${current.label}: ${current.hint}`, side: "top", children: icon })
|
|
26104
26120
|
] });
|
|
26105
26121
|
}
|
|
26106
26122
|
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: [
|
|
26107
26123
|
name,
|
|
26108
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26124
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26109
26125
|
ToggleGroup,
|
|
26110
26126
|
{
|
|
26111
26127
|
type: "single",
|
|
@@ -26122,8 +26138,8 @@ function ApprovalLevelView({
|
|
|
26122
26138
|
return (
|
|
26123
26139
|
// A plain tooltip (hover and keyboard focus): a tap must SELECT the level, and on
|
|
26124
26140
|
// touch the name beside the group says what is in force.
|
|
26125
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26126
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26141
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEFTUFJS2cjs.Tooltip, { children: [
|
|
26142
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26127
26143
|
ToggleGroupItem,
|
|
26128
26144
|
{
|
|
26129
26145
|
value: level,
|
|
@@ -26132,7 +26148,7 @@ function ApprovalLevelView({
|
|
|
26132
26148
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: ICON_PX, "aria-hidden": true })
|
|
26133
26149
|
}
|
|
26134
26150
|
) }),
|
|
26135
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26151
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEFTUFJS2cjs.TooltipContent, { side: "top", className: "max-w-xs", children: [
|
|
26136
26152
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "b", { children: label }),
|
|
26137
26153
|
": ",
|
|
26138
26154
|
hint
|
|
@@ -26153,8 +26169,8 @@ var approvalLevelOptions = APPROVAL_LEVELS.map((value) => ({ value, label: APPRO
|
|
|
26153
26169
|
var POLICY_LEVEL_WIDTH = "w-[180px]";
|
|
26154
26170
|
var CATEGORY_LEVEL_WIDTH = "w-[256px]";
|
|
26155
26171
|
var getApprovalLevelLabel = (level) => _nullishCoalesce(_optionalChain([APPROVAL_LEVEL_META, 'access', _533 => _533[level], 'optionalAccess', _534 => _534.label]), () => ( level));
|
|
26156
|
-
var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClassName, contentClassName }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26157
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26172
|
+
var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClassName, contentClassName }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAKK3EO37cjs.DropdownMenu, { children: [
|
|
26173
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26158
26174
|
_chunk2QMBXGMQcjs.Button,
|
|
26159
26175
|
{
|
|
26160
26176
|
variant: "outline",
|
|
@@ -26167,9 +26183,9 @@ var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClass
|
|
|
26167
26183
|
children: value ? getApprovalLevelLabel(value) : "Set Global Permission"
|
|
26168
26184
|
}
|
|
26169
26185
|
) }),
|
|
26170
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26171
|
-
allowClear && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26172
|
-
approvalLevelOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26186
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAKK3EO37cjs.DropdownMenuContent, { align: "end", className: contentClassName, children: [
|
|
26187
|
+
allowClear && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuItem, { onClick: () => onChange(void 0), className: "text-h6", children: "Clear Global Permission" }),
|
|
26188
|
+
approvalLevelOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuItem, { onClick: () => onChange(option.value), className: "text-h6", children: option.label }, option.value))
|
|
26173
26189
|
] })
|
|
26174
26190
|
] });
|
|
26175
26191
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
@@ -26203,7 +26219,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
26203
26219
|
] });
|
|
26204
26220
|
};
|
|
26205
26221
|
var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
|
|
26206
|
-
const { innerRef, containerStyle } =
|
|
26222
|
+
const { innerRef, containerStyle } = _chunkF64VMOIBcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
|
|
26207
26223
|
const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
|
|
26208
26224
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
26209
26225
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -26376,8 +26392,8 @@ function PoliciesTable({
|
|
|
26376
26392
|
accessorKey: "name",
|
|
26377
26393
|
header: "Name",
|
|
26378
26394
|
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: [
|
|
26379
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26380
|
-
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26395
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: row.original.name }),
|
|
26396
|
+
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.description })
|
|
26381
26397
|
] }),
|
|
26382
26398
|
meta: { width: "flex-1 min-w-0" }
|
|
26383
26399
|
},
|
|
@@ -26431,7 +26447,7 @@ function PoliciesTable({
|
|
|
26431
26447
|
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,
|
|
26432
26448
|
_chunk2QMBXGMQcjs.Button,
|
|
26433
26449
|
{
|
|
26434
|
-
onClick:
|
|
26450
|
+
onClick: _chunkQKFJ6ORKcjs.openInNewTab.call(void 0, row.original.href),
|
|
26435
26451
|
variant: "outline",
|
|
26436
26452
|
size: "icon",
|
|
26437
26453
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -26532,7 +26548,7 @@ function PolicySummaryCards({ summary, isLoading = false, hasData = true, now })
|
|
|
26532
26548
|
DashboardInfoCard,
|
|
26533
26549
|
{
|
|
26534
26550
|
title: "Updated",
|
|
26535
|
-
value: hasData && summary.lastUpdatedAt ?
|
|
26551
|
+
value: hasData && summary.lastUpdatedAt ? _chunkF64VMOIBcjs.formatRelativeTimeFrom.call(void 0, summary.lastUpdatedAt, _nullishCoalesce(now, () => ( /* @__PURE__ */ new Date()))) : EMPTY_VALUE,
|
|
26536
26552
|
valueClassName: "!text-h3",
|
|
26537
26553
|
tooltip: "Policy compliance stats are updated hourly. View a policy's devices for real-time status."
|
|
26538
26554
|
}
|
|
@@ -26648,7 +26664,7 @@ function toValidInstant(iso) {
|
|
|
26648
26664
|
function formatLastRead(iso, now = /* @__PURE__ */ new Date()) {
|
|
26649
26665
|
const date = toValidInstant(iso);
|
|
26650
26666
|
if (!date) return TENANT_EMPTY_VALUE;
|
|
26651
|
-
return now.getTime() - date.getTime() < DAY_MS ?
|
|
26667
|
+
return now.getTime() - date.getTime() < DAY_MS ? _chunkF64VMOIBcjs.formatRelativeTimeFrom.call(void 0, date, now) : _chunkLOFDIDSDcjs.formatDate.call(void 0, date);
|
|
26652
26668
|
}
|
|
26653
26669
|
function usersCountLabel(count) {
|
|
26654
26670
|
if (count == null) return TENANT_EMPTY_VALUE;
|
|
@@ -26660,7 +26676,7 @@ function usersCountLabel(count) {
|
|
|
26660
26676
|
function TenantAccessCell({ accessState, lastReadAt: lastReadAt2, now }) {
|
|
26661
26677
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26662
26678
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { ...accessStateTag(accessState), className: "self-start" }),
|
|
26663
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26679
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: `Last read: ${formatLastRead(lastReadAt2, now)}` })
|
|
26664
26680
|
] });
|
|
26665
26681
|
}
|
|
26666
26682
|
|
|
@@ -26671,9 +26687,9 @@ function TenantCell({ provider, name, domain }) {
|
|
|
26671
26687
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
26672
26688
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26673
26689
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Logo, { size: 24, role: "img", "aria-label": label, className: "shrink-0" }),
|
|
26674
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26690
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: name })
|
|
26675
26691
|
] }),
|
|
26676
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26692
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(domain, () => ( TENANT_EMPTY_VALUE)) })
|
|
26677
26693
|
] });
|
|
26678
26694
|
}
|
|
26679
26695
|
|
|
@@ -26683,9 +26699,9 @@ function TenantCustomerCell({ name, imageUrl, userCount }) {
|
|
|
26683
26699
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
26684
26700
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26685
26701
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { src: _nullishCoalesce(imageUrl, () => ( void 0)), alt: name, fallback: name, size: "xs", variant: "square" }),
|
|
26686
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26702
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: name })
|
|
26687
26703
|
] }),
|
|
26688
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26704
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: usersCountLabel(userCount) })
|
|
26689
26705
|
] });
|
|
26690
26706
|
}
|
|
26691
26707
|
|
|
@@ -26757,7 +26773,7 @@ function TenantsTableView({
|
|
|
26757
26773
|
/* @__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,
|
|
26758
26774
|
_chunk2QMBXGMQcjs.Button,
|
|
26759
26775
|
{
|
|
26760
|
-
onClick:
|
|
26776
|
+
onClick: _chunkQKFJ6ORKcjs.openInNewTab.call(void 0, getHref(row.original)),
|
|
26761
26777
|
variant: "outline",
|
|
26762
26778
|
size: "icon",
|
|
26763
26779
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -26838,7 +26854,7 @@ function WaitlistForm({
|
|
|
26838
26854
|
const { toast } = _chunkVUWPLQBYcjs.useToast.call(void 0, );
|
|
26839
26855
|
const { honeypotInputProps, getSignals, resetSignals } = _chunkVUWPLQBYcjs.useHumanitySignals.call(void 0, );
|
|
26840
26856
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
26841
|
-
const isClient =
|
|
26857
|
+
const isClient = _chunkQTYSYEHKcjs.useIsHydrated.call(void 0, );
|
|
26842
26858
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
26843
26859
|
const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
|
|
26844
26860
|
const rescue = _chunkVUWPLQBYcjs.useFormRescue.call(void 0, {
|
|
@@ -26853,7 +26869,7 @@ function WaitlistForm({
|
|
|
26853
26869
|
_react.useEffect.call(void 0, () => {
|
|
26854
26870
|
rescue.track({ email, phone }, null);
|
|
26855
26871
|
}, [email, phone, rescue]);
|
|
26856
|
-
const isMailDomainGeneric =
|
|
26872
|
+
const isMailDomainGeneric = _chunkQKFJ6ORKcjs.hasGenericEmailDomain.call(void 0, email);
|
|
26857
26873
|
const [syncedDefaultEmail, setSyncedDefaultEmail] = _react.useState.call(void 0, defaultEmail);
|
|
26858
26874
|
if (syncedDefaultEmail !== defaultEmail) {
|
|
26859
26875
|
setSyncedDefaultEmail(defaultEmail);
|
|
@@ -26887,7 +26903,7 @@ function WaitlistForm({
|
|
|
26887
26903
|
setShowConsentError(true);
|
|
26888
26904
|
return;
|
|
26889
26905
|
}
|
|
26890
|
-
const finalPhone = phone ?
|
|
26906
|
+
const finalPhone = phone ? _chunkQKFJ6ORKcjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
|
|
26891
26907
|
try {
|
|
26892
26908
|
await onRegister(email, finalPhone, getSignals(), rescue.submitFields());
|
|
26893
26909
|
rescue.complete();
|
|
@@ -27697,7 +27713,7 @@ function NotificationTile({
|
|
|
27697
27713
|
{
|
|
27698
27714
|
dateTime: createdAtIso,
|
|
27699
27715
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", lockscreen && "self-start"),
|
|
27700
|
-
children: _nullishCoalesce(timeLabel, () => (
|
|
27716
|
+
children: _nullishCoalesce(timeLabel, () => ( _chunkF64VMOIBcjs.formatTicketRelativeTime.call(void 0, createdAtIso)))
|
|
27701
27717
|
}
|
|
27702
27718
|
) : null,
|
|
27703
27719
|
!lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
|
|
@@ -28023,7 +28039,7 @@ function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
|
28023
28039
|
}
|
|
28024
28040
|
function NotificationsHistoryButton({ onClick, historyHref }) {
|
|
28025
28041
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28026
|
-
|
|
28042
|
+
_chunkAXBVN5SWcjs.SplitButton,
|
|
28027
28043
|
{
|
|
28028
28044
|
variant: "outline",
|
|
28029
28045
|
fullWidth: true,
|
|
@@ -28173,13 +28189,13 @@ function getApprovalMeta(notification) {
|
|
|
28173
28189
|
function resolutionToStatus(resolution) {
|
|
28174
28190
|
switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
|
|
28175
28191
|
case "APPROVED":
|
|
28176
|
-
return
|
|
28192
|
+
return _chunkLOFDIDSDcjs.APPROVAL_STATUS.APPROVED;
|
|
28177
28193
|
case "REJECTED":
|
|
28178
|
-
return
|
|
28194
|
+
return _chunkLOFDIDSDcjs.APPROVAL_STATUS.REJECTED;
|
|
28179
28195
|
case "CANCELLED":
|
|
28180
|
-
return
|
|
28196
|
+
return _chunkLOFDIDSDcjs.APPROVAL_STATUS.CANCELLED;
|
|
28181
28197
|
default:
|
|
28182
|
-
return
|
|
28198
|
+
return _chunkLOFDIDSDcjs.APPROVAL_STATUS.PENDING;
|
|
28183
28199
|
}
|
|
28184
28200
|
}
|
|
28185
28201
|
function approvalMetaToBatchData(approval) {
|
|
@@ -28225,7 +28241,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28225
28241
|
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _579 => _579.resolution]));
|
|
28226
28242
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
28227
28243
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
28228
|
-
const { innerRef, containerStyle } =
|
|
28244
|
+
const { innerRef, containerStyle } = _chunkF64VMOIBcjs.useCollapsible.call(void 0, { expanded });
|
|
28229
28245
|
if (!approval || !batchData) return null;
|
|
28230
28246
|
const tileNotification = {
|
|
28231
28247
|
...notification,
|
|
@@ -28288,7 +28304,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28288
28304
|
}
|
|
28289
28305
|
)
|
|
28290
28306
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
28291
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28307
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ApprovalStatusTag, { status }),
|
|
28292
28308
|
approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
|
|
28293
28309
|
"by ",
|
|
28294
28310
|
approval.resolvedByName
|
|
@@ -28306,12 +28322,12 @@ function ApprovalRequestNotificationTile({
|
|
|
28306
28322
|
"aria-expanded": expanded,
|
|
28307
28323
|
"aria-label": toggleLabel,
|
|
28308
28324
|
className: "ml-auto w-6 shrink-0 px-0 md:w-8",
|
|
28309
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28325
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.ExpandChevron, { expanded })
|
|
28310
28326
|
}
|
|
28311
28327
|
)
|
|
28312
28328
|
] }),
|
|
28313
28329
|
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,
|
|
28314
|
-
|
|
28330
|
+
_chunkF64VMOIBcjs.ApprovalBatchMessage,
|
|
28315
28331
|
{
|
|
28316
28332
|
data: batchData,
|
|
28317
28333
|
showExecutionStatus: false,
|
|
@@ -28548,7 +28564,7 @@ function TimeTrackerPanel({
|
|
|
28548
28564
|
] }),
|
|
28549
28565
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "grid gap-[var(--spacing-system-m)]", showCustomer && "grid-cols-2"), children: [
|
|
28550
28566
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28551
|
-
|
|
28567
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
28552
28568
|
{
|
|
28553
28569
|
value: selectedTicketId,
|
|
28554
28570
|
onChange: onSelectedTicketChange,
|
|
@@ -28564,7 +28580,7 @@ function TimeTrackerPanel({
|
|
|
28564
28580
|
}
|
|
28565
28581
|
),
|
|
28566
28582
|
showCustomer && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28567
|
-
|
|
28583
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
28568
28584
|
{
|
|
28569
28585
|
value: _nullishCoalesce(selectedCustomerId, () => ( null)),
|
|
28570
28586
|
onChange: onSelectedCustomerChange,
|
|
@@ -28617,7 +28633,7 @@ function TimeTrackerPanel({
|
|
|
28617
28633
|
}
|
|
28618
28634
|
),
|
|
28619
28635
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28620
|
-
|
|
28636
|
+
_chunkAXBVN5SWcjs.SplitButton,
|
|
28621
28637
|
{
|
|
28622
28638
|
variant: "outline",
|
|
28623
28639
|
fullWidth: true,
|
|
@@ -28765,6 +28781,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
28765
28781
|
accumulatedMs: _optionalChain([ctx, 'optionalAccess', _585 => _585.accumulatedMs])
|
|
28766
28782
|
});
|
|
28767
28783
|
const layoutContainer = useAppLayoutDrawerContainer();
|
|
28784
|
+
const portalContainer = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
|
|
28768
28785
|
const coordination = useAppLayoutDrawerCoordination();
|
|
28769
28786
|
const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _586 => _586.isOpen]), () => ( false));
|
|
28770
28787
|
const isOpenRef = _react.useRef.call(void 0, isOpen);
|
|
@@ -28834,7 +28851,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
28834
28851
|
)
|
|
28835
28852
|
}
|
|
28836
28853
|
) }),
|
|
28837
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive6.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28854
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive6.Portal, { container: _nullishCoalesce(portalContainer, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28838
28855
|
PopoverPrimitive6.Content,
|
|
28839
28856
|
{
|
|
28840
28857
|
align: "end",
|
|
@@ -28854,7 +28871,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
28854
28871
|
|
|
28855
28872
|
// src/components/features/devices/device-last-online.ts
|
|
28856
28873
|
function formatLastOnline(lastSeen) {
|
|
28857
|
-
return `Last Online: ${lastSeen ?
|
|
28874
|
+
return `Last Online: ${lastSeen ? _chunkF64VMOIBcjs.formatRelativeTime.call(void 0, lastSeen) : "\u2014"}`;
|
|
28858
28875
|
}
|
|
28859
28876
|
|
|
28860
28877
|
// src/components/features/devices/device-name.ts
|
|
@@ -29003,7 +29020,7 @@ function getDeviceStatusConfig(status) {
|
|
|
29003
29020
|
}
|
|
29004
29021
|
}
|
|
29005
29022
|
function getDeviceOperatingSystem(osType) {
|
|
29006
|
-
return
|
|
29023
|
+
return _chunkQKFJ6ORKcjs.getOSPlatformId.call(void 0, osType);
|
|
29007
29024
|
}
|
|
29008
29025
|
|
|
29009
29026
|
// src/components/features/devices/device-statuses.ts
|
|
@@ -29179,8 +29196,8 @@ function DevicesFilterToolbar({
|
|
|
29179
29196
|
|
|
29180
29197
|
|
|
29181
29198
|
function formatDateTime(input) {
|
|
29182
|
-
const date =
|
|
29183
|
-
return date === "\u2014" ? date : `${date} ${
|
|
29199
|
+
const date = _chunkLOFDIDSDcjs.formatDate.call(void 0, input);
|
|
29200
|
+
return date === "\u2014" ? date : `${date} ${_chunkLOFDIDSDcjs.formatTime.call(void 0, input)}`;
|
|
29184
29201
|
}
|
|
29185
29202
|
function uniqueById(options) {
|
|
29186
29203
|
const seen = /* @__PURE__ */ new Map();
|
|
@@ -29287,7 +29304,7 @@ function DevicesTableBody({
|
|
|
29287
29304
|
function OrganizationCell({ device }) {
|
|
29288
29305
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
29289
29306
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
29290
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29307
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.EntityImage, { src: fullImageUrl, alt: device.organization || "Customer", className: "size-12 content-md:size-12" }),
|
|
29291
29308
|
/* @__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 || "" }) })
|
|
29292
29309
|
] });
|
|
29293
29310
|
}
|
|
@@ -29331,7 +29348,7 @@ function getDeviceTableColumns(deviceFilters, filtersPending) {
|
|
|
29331
29348
|
const device = row.original;
|
|
29332
29349
|
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: [
|
|
29333
29350
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
29334
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29351
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: getDeviceName(device) }) })
|
|
29335
29352
|
] });
|
|
29336
29353
|
},
|
|
29337
29354
|
meta: { width: "flex-1 content-md:w-1/4" }
|
|
@@ -29502,7 +29519,7 @@ function CustomerCell({ device }) {
|
|
|
29502
29519
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
29503
29520
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
29504
29521
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29505
|
-
|
|
29522
|
+
_chunkAXBVN5SWcjs.EntityImage,
|
|
29506
29523
|
{
|
|
29507
29524
|
src: fullImageUrl,
|
|
29508
29525
|
alt: device.organization || "Customer",
|
|
@@ -29510,8 +29527,8 @@ function CustomerCell({ device }) {
|
|
|
29510
29527
|
}
|
|
29511
29528
|
),
|
|
29512
29529
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
29513
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29514
|
-
device.organizationEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29530
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: device.organization || "" }),
|
|
29531
|
+
device.organizationEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: device.organizationEmail })
|
|
29515
29532
|
] })
|
|
29516
29533
|
] });
|
|
29517
29534
|
}
|
|
@@ -29806,8 +29823,8 @@ function DeviceSelector({
|
|
|
29806
29823
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 items-center gap-3", children: [
|
|
29807
29824
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
29808
29825
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col", children: [
|
|
29809
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29810
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29826
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: getDeviceName(device) }),
|
|
29827
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: formatLastOnline(lastSeen) })
|
|
29811
29828
|
] })
|
|
29812
29829
|
] });
|
|
29813
29830
|
},
|
|
@@ -30550,7 +30567,7 @@ function DevicesPanelView({
|
|
|
30550
30567
|
] })
|
|
30551
30568
|
] });
|
|
30552
30569
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30553
|
-
|
|
30570
|
+
_chunkAXBVN5SWcjs.PageLayout,
|
|
30554
30571
|
{
|
|
30555
30572
|
title,
|
|
30556
30573
|
backButton,
|
|
@@ -30558,7 +30575,7 @@ function DevicesPanelView({
|
|
|
30558
30575
|
actionsVariant: "icon-buttons",
|
|
30559
30576
|
className,
|
|
30560
30577
|
selector: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30561
|
-
|
|
30578
|
+
_chunkQTYSYEHKcjs.TabSelector,
|
|
30562
30579
|
{
|
|
30563
30580
|
value: viewMode,
|
|
30564
30581
|
onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _655 => _655(value)]),
|
|
@@ -30624,7 +30641,7 @@ var PACKAGE_SEARCH_LABEL = "Software Name";
|
|
|
30624
30641
|
var PACKAGE_SEARCH_PLACEHOLDER = "Search for Software";
|
|
30625
30642
|
function PackageSearchFieldPlaceholder({ error }) {
|
|
30626
30643
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30627
|
-
|
|
30644
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
30628
30645
|
{
|
|
30629
30646
|
label: PACKAGE_SEARCH_LABEL,
|
|
30630
30647
|
labelVariant: "large",
|
|
@@ -30679,16 +30696,16 @@ function SoftwareScheduleFields({
|
|
|
30679
30696
|
] }),
|
|
30680
30697
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30681
30698
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Time" }),
|
|
30682
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30683
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30684
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30699
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: time, onValueChange: onTimeChange, children: [
|
|
30700
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder: "Select time" }) }),
|
|
30701
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30685
30702
|
] })
|
|
30686
30703
|
] }),
|
|
30687
30704
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30688
30705
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Timezone" }),
|
|
30689
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30690
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30691
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30706
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: timeReference, onValueChange: (value) => onTimeReferenceChange(value), children: [
|
|
30707
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
30708
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: timing.timeReferenceOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30692
30709
|
] })
|
|
30693
30710
|
] })
|
|
30694
30711
|
]
|
|
@@ -30754,22 +30771,22 @@ function newSoftwareRow(key) {
|
|
|
30754
30771
|
|
|
30755
30772
|
function InfoCell2({ value, label }) {
|
|
30756
30773
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
30757
|
-
/* @__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,
|
|
30774
|
+
/* @__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, _chunkAXBVN5SWcjs.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" }) }) }),
|
|
30758
30775
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: label })
|
|
30759
30776
|
] });
|
|
30760
30777
|
}
|
|
30761
30778
|
function SoftwareRowFields({ row, removable, onChange, onRemove, renderPackageSearch }) {
|
|
30762
30779
|
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: [
|
|
30763
30780
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30764
|
-
|
|
30781
|
+
_chunkAXBVN5SWcjs.Select,
|
|
30765
30782
|
{
|
|
30766
30783
|
value: row.packageManager,
|
|
30767
30784
|
onValueChange: (value) => onChange({ ...row, packageManager: value, pkg: null }),
|
|
30768
30785
|
children: [
|
|
30769
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30770
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30786
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { label: "Package Manager", labelVariant: "large", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
30787
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: PACKAGE_MANAGERS.map((manager) => {
|
|
30771
30788
|
const Icon = PACKAGE_MANAGER_ICON[manager];
|
|
30772
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30789
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: manager, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
30773
30790
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 20, className: "shrink-0 text-ods-text-secondary" }),
|
|
30774
30791
|
PACKAGE_MANAGER_LABEL[manager]
|
|
30775
30792
|
] }) }, manager);
|
|
@@ -30867,7 +30884,7 @@ function SoftwareActionForm({
|
|
|
30867
30884
|
}
|
|
30868
30885
|
);
|
|
30869
30886
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30870
|
-
|
|
30887
|
+
_chunkAXBVN5SWcjs.PageLayout,
|
|
30871
30888
|
{
|
|
30872
30889
|
title: copy.formTitle,
|
|
30873
30890
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -30956,7 +30973,7 @@ function LogDrawer({
|
|
|
30956
30973
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-0 flex-1 space-y-4 overflow-y-auto", children: [
|
|
30957
30974
|
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 }) }),
|
|
30958
30975
|
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: [
|
|
30959
|
-
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,
|
|
30976
|
+
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, _chunkAXBVN5SWcjs.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 }),
|
|
30960
30977
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: field.label })
|
|
30961
30978
|
] }, typeof field.label === "string" ? field.label : "")) }),
|
|
30962
30979
|
children
|
|
@@ -31004,7 +31021,7 @@ function LogsPageView({
|
|
|
31004
31021
|
],
|
|
31005
31022
|
[onRefresh]
|
|
31006
31023
|
);
|
|
31007
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31024
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.PageLayout, { title: "Logs", actions, showHeader, className, children: [
|
|
31008
31025
|
!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: [
|
|
31009
31026
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31010
31027
|
_chunkHTRILBJDcjs.Input,
|
|
@@ -31074,10 +31091,10 @@ var ToolBadge = ({
|
|
|
31074
31091
|
className,
|
|
31075
31092
|
iconClassName
|
|
31076
31093
|
}) => {
|
|
31077
|
-
const text = _nullishCoalesce(label, () => ( (toolType ?
|
|
31094
|
+
const text = _nullishCoalesce(label, () => ( (toolType ? _chunkQKFJ6ORKcjs.getToolLabel.call(void 0, toolType) : "")));
|
|
31078
31095
|
const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWI2OTGKCcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }) : null)));
|
|
31079
31096
|
const linked = (node, linkClassName) => href && targetPlatform ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31080
|
-
|
|
31097
|
+
_chunkQTYSYEHKcjs.NavLinkAnchorViaRuntime,
|
|
31081
31098
|
{
|
|
31082
31099
|
href,
|
|
31083
31100
|
targetPlatform,
|
|
@@ -31155,8 +31172,8 @@ function LogsTableView({
|
|
|
31155
31172
|
accessorKey: "logId",
|
|
31156
31173
|
header: logIdHeader ? () => logIdHeader : "Log ID",
|
|
31157
31174
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col justify-center", children: [
|
|
31158
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31159
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31175
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: row.original.timestamp }),
|
|
31176
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.logId })
|
|
31160
31177
|
] }),
|
|
31161
31178
|
enableSorting: false,
|
|
31162
31179
|
meta: { width: LOG_COLUMN_WIDTHS.logId, alwaysShowHeader: true }
|
|
@@ -31184,7 +31201,7 @@ function LogsTableView({
|
|
|
31184
31201
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31185
31202
|
ToolBadge,
|
|
31186
31203
|
{
|
|
31187
|
-
toolType:
|
|
31204
|
+
toolType: _chunkQKFJ6ORKcjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
|
|
31188
31205
|
iconClassName: "h-4 w-4 content-md:h-6 content-md:w-6"
|
|
31189
31206
|
}
|
|
31190
31207
|
),
|
|
@@ -31196,7 +31213,7 @@ function LogsTableView({
|
|
|
31196
31213
|
filter: {
|
|
31197
31214
|
options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _663 => _663.toolTypes, 'access', _664 => _664.map, 'call', _665 => _665((toolType) => ({
|
|
31198
31215
|
id: toolType,
|
|
31199
|
-
label:
|
|
31216
|
+
label: _chunkQKFJ6ORKcjs.toToolLabel.call(void 0, toolType),
|
|
31200
31217
|
value: toolType
|
|
31201
31218
|
}))]), () => ( []))
|
|
31202
31219
|
}
|
|
@@ -31208,8 +31225,8 @@ function LogsTableView({
|
|
|
31208
31225
|
cell: ({ row }) => {
|
|
31209
31226
|
const { deviceName, organization } = logSourceLabels(row.original.device);
|
|
31210
31227
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-h-[60px] flex-col justify-center gap-1 py-2", children: [
|
|
31211
|
-
deviceName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31212
|
-
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31228
|
+
deviceName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: deviceName }),
|
|
31229
|
+
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: organization })
|
|
31213
31230
|
] });
|
|
31214
31231
|
},
|
|
31215
31232
|
enableSorting: false,
|
|
@@ -31223,7 +31240,7 @@ function LogsTableView({
|
|
|
31223
31240
|
{
|
|
31224
31241
|
accessorKey: "description",
|
|
31225
31242
|
header: "Log Details",
|
|
31226
|
-
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31243
|
+
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 3, className: "text-ods-text-secondary text-h6", children: row.original.description.title }),
|
|
31227
31244
|
enableSorting: false,
|
|
31228
31245
|
meta: { width: LOG_COLUMN_WIDTHS.description, hideAt: "lg" }
|
|
31229
31246
|
},
|
|
@@ -31254,7 +31271,7 @@ function LogsTableView({
|
|
|
31254
31271
|
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,
|
|
31255
31272
|
_chunk2QMBXGMQcjs.Button,
|
|
31256
31273
|
{
|
|
31257
|
-
onClick: getLogHref ?
|
|
31274
|
+
onClick: getLogHref ? _chunkQKFJ6ORKcjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
|
|
31258
31275
|
variant: "outline",
|
|
31259
31276
|
size: "icon",
|
|
31260
31277
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -31477,14 +31494,14 @@ function ExecutionSourceBadge({ source, className }) {
|
|
|
31477
31494
|
const tagProps = { as: "span", variant: "outline", className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0", className) };
|
|
31478
31495
|
if (source === "SCHEDULED") return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { ...tagProps, label: "Scheduled" });
|
|
31479
31496
|
if (source === "AI_ASSISTANT") {
|
|
31480
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { ...tagProps, label: "Mingo", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31497
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { ...tagProps, label: "Mingo", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkF64VMOIBcjs.AgentMark, { agent: "mingo", className: "size-4" }) });
|
|
31481
31498
|
}
|
|
31482
31499
|
return null;
|
|
31483
31500
|
}
|
|
31484
31501
|
function ExecutionTimestampCell({ timestamp, executionId }) {
|
|
31485
31502
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31486
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31487
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31503
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: timestamp }),
|
|
31504
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: executionId })
|
|
31488
31505
|
] });
|
|
31489
31506
|
}
|
|
31490
31507
|
function ExecutionStatusCell({ status }) {
|
|
@@ -31495,9 +31512,9 @@ function ExecutionDeviceCell({ name, organization }) {
|
|
|
31495
31512
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31496
31513
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-1", children: [
|
|
31497
31514
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPTK7GOIIcjs.MonitorIcon, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
31498
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31515
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: name }) : name })
|
|
31499
31516
|
] }),
|
|
31500
|
-
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31517
|
+
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: organization })
|
|
31501
31518
|
] });
|
|
31502
31519
|
}
|
|
31503
31520
|
function ExecutionInitiatorCell({
|
|
@@ -31510,15 +31527,15 @@ function ExecutionInitiatorCell({
|
|
|
31510
31527
|
avatar,
|
|
31511
31528
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
31512
31529
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
31513
|
-
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31530
|
+
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: name }) : name,
|
|
31514
31531
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExecutionSourceBadge, { source })
|
|
31515
31532
|
] }),
|
|
31516
|
-
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31533
|
+
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: scriptName })
|
|
31517
31534
|
] })
|
|
31518
31535
|
] });
|
|
31519
31536
|
}
|
|
31520
31537
|
function ExecutionResultCell({ result, empty = null }) {
|
|
31521
|
-
return result ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31538
|
+
return result ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 2, children: result }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: empty });
|
|
31522
31539
|
}
|
|
31523
31540
|
function ScriptExecutionResult({
|
|
31524
31541
|
result,
|
|
@@ -31536,14 +31553,14 @@ function ScriptExecutionResult({
|
|
|
31536
31553
|
|
|
31537
31554
|
function ScriptNameCell({ name, description }) {
|
|
31538
31555
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31539
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31540
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31556
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: name }),
|
|
31557
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: description })
|
|
31541
31558
|
] });
|
|
31542
31559
|
}
|
|
31543
31560
|
function ScheduleDateTimeCell({ date, time }) {
|
|
31544
31561
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31545
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31546
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31562
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: date }),
|
|
31563
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: time })
|
|
31547
31564
|
] });
|
|
31548
31565
|
}
|
|
31549
31566
|
|
|
@@ -31629,7 +31646,7 @@ function OpenInNewTabCell({ href }) {
|
|
|
31629
31646
|
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,
|
|
31630
31647
|
_chunk2QMBXGMQcjs.Button,
|
|
31631
31648
|
{
|
|
31632
|
-
onClick:
|
|
31649
|
+
onClick: _chunkQKFJ6ORKcjs.openInNewTab.call(void 0, href),
|
|
31633
31650
|
variant: "outline",
|
|
31634
31651
|
size: "icon",
|
|
31635
31652
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -31742,7 +31759,7 @@ function ScriptSchedulesTable({
|
|
|
31742
31759
|
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" })),
|
|
31743
31760
|
cell(
|
|
31744
31761
|
SCHEDULE_COLUMNS.dateTime,
|
|
31745
|
-
(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,
|
|
31762
|
+
(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, _chunkAXBVN5SWcjs.TruncateText, { tone: "secondary", children: row.trigger }) : null
|
|
31746
31763
|
),
|
|
31747
31764
|
cell(SCHEDULE_COLUMNS.repeat, (row) => row.repeat ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: VALUE_CLASS, children: row.repeat }) : null),
|
|
31748
31765
|
cell(SCHEDULE_COLUMNS.deviceCount, (row) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: VALUE_CLASS, children: row.deviceCount }))
|
|
@@ -31778,9 +31795,9 @@ function ScriptSchedulesTable({
|
|
|
31778
31795
|
|
|
31779
31796
|
// src/components/features/scripts/shell-types.ts
|
|
31780
31797
|
var SCRIPT_SHELL_TYPES = [
|
|
31781
|
-
{ id:
|
|
31782
|
-
{ id:
|
|
31783
|
-
{ id:
|
|
31798
|
+
{ id: _chunkQKFJ6ORKcjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
|
|
31799
|
+
{ id: _chunkQKFJ6ORKcjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
|
|
31800
|
+
{ id: _chunkQKFJ6ORKcjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
|
|
31784
31801
|
];
|
|
31785
31802
|
function scriptShellType(value) {
|
|
31786
31803
|
return SCRIPT_SHELL_TYPES.find((shell) => shell.value === value);
|
|
@@ -31841,7 +31858,7 @@ function ScriptsTable({
|
|
|
31841
31858
|
initialsClassName: "text-ods-text-secondary"
|
|
31842
31859
|
}
|
|
31843
31860
|
),
|
|
31844
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31861
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: row.author.name }) })
|
|
31845
31862
|
] }) : null
|
|
31846
31863
|
)
|
|
31847
31864
|
];
|
|
@@ -31962,7 +31979,7 @@ function slotValue(minutesOfDay) {
|
|
|
31962
31979
|
return `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}`;
|
|
31963
31980
|
}
|
|
31964
31981
|
function slotLabel(minutesOfDay) {
|
|
31965
|
-
return
|
|
31982
|
+
return _chunkLOFDIDSDcjs.formatTime.call(void 0, new Date(1970, 0, 1, Math.floor(minutesOfDay / 60), minutesOfDay % 60));
|
|
31966
31983
|
}
|
|
31967
31984
|
function getTimeSlotOptions(forDate, timeReference) {
|
|
31968
31985
|
const base = slotBaseMinutes(timeReference);
|
|
@@ -32183,9 +32200,9 @@ function ReconnectWindowFields({
|
|
|
32183
32200
|
invalid
|
|
32184
32201
|
}
|
|
32185
32202
|
),
|
|
32186
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32187
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32188
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32203
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: unit, onValueChange: (next) => onUnitChange(next), disabled, children: [
|
|
32204
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: controlWidth, "aria-label": "Stop retry after unit", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
32205
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
32189
32206
|
] })
|
|
32190
32207
|
] });
|
|
32191
32208
|
}
|
|
@@ -32253,7 +32270,7 @@ function ScheduleOfflineFields({ showErrors, disabled = false }) {
|
|
|
32253
32270
|
options
|
|
32254
32271
|
}
|
|
32255
32272
|
),
|
|
32256
|
-
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,
|
|
32273
|
+
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, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: intervalError }) })
|
|
32257
32274
|
]
|
|
32258
32275
|
}
|
|
32259
32276
|
) }) })
|
|
@@ -32362,8 +32379,8 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
32362
32379
|
// Dragging towards the edge of the screen — or past it — scrolls whatever
|
|
32363
32380
|
// actually scrolls there: the page, the layout's `<main>`, or the list
|
|
32364
32381
|
// itself when it has its own overflow.
|
|
32365
|
-
|
|
32366
|
-
|
|
32382
|
+
_chunk2ANICXS7cjs.autoScrollAncestors.call(void 0, list),
|
|
32383
|
+
_chunk2ANICXS7cjs.autoScrollBothWays.call(void 0, list),
|
|
32367
32384
|
// One target for the whole list: which slot a drop lands in is answered by
|
|
32368
32385
|
// geometry, so this only has to say "inside the list, or outside it".
|
|
32369
32386
|
_adapter.dropTargetForElements.call(void 0, {
|
|
@@ -32660,7 +32677,7 @@ function useSortableItem() {
|
|
|
32660
32677
|
return _combine.combine.call(void 0,
|
|
32661
32678
|
// The drag has to start as a "move", or its first frame is drawn with the
|
|
32662
32679
|
// copy cursor — see `drag-effect.ts`.
|
|
32663
|
-
|
|
32680
|
+
_chunk2ANICXS7cjs.holdMoveDragEffect.call(void 0, item),
|
|
32664
32681
|
_adapter.draggable.call(void 0, {
|
|
32665
32682
|
element: item,
|
|
32666
32683
|
dragHandle: handle,
|
|
@@ -33084,24 +33101,24 @@ function ScheduleTimingFields({
|
|
|
33084
33101
|
// `''` reads as "no selection" to Radix, so the placeholder shows
|
|
33085
33102
|
// until a slot is picked — a date at midnight no longer
|
|
33086
33103
|
// masquerades as a chosen 12:00 AM.
|
|
33087
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33104
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAXBVN5SWcjs.Select, { value: field.value, onValueChange: field.onChange, disabled: fieldsDisabled, children: [
|
|
33088
33105
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33089
|
-
|
|
33106
|
+
_chunkAXBVN5SWcjs.SelectTrigger,
|
|
33090
33107
|
{
|
|
33091
33108
|
className: "w-full",
|
|
33092
33109
|
error: _nullishCoalesce(pastTimeError, () => ( (showErrors ? _optionalChain([fieldState, 'access', _717 => _717.error, 'optionalAccess', _718 => _718.message]) : void 0))),
|
|
33093
33110
|
invalid: !!pastTimeError || showErrors && !!fieldState.error,
|
|
33094
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33111
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, { placeholder: "Select time" })
|
|
33095
33112
|
}
|
|
33096
33113
|
),
|
|
33097
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33114
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: timeSlots.length === 0 ? (
|
|
33098
33115
|
// Deliberately NOT a `SelectItem` — there is nothing here
|
|
33099
33116
|
// to select, and a selectable row would put a bogus value
|
|
33100
33117
|
// in the form. It replaces a popup that opened blank; the
|
|
33101
33118
|
// Date field carries the same sentence for whoever never
|
|
33102
33119
|
// opens this one.
|
|
33103
33120
|
/* @__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 })
|
|
33104
|
-
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33121
|
+
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33105
33122
|
] })
|
|
33106
33123
|
)
|
|
33107
33124
|
}
|
|
@@ -33115,14 +33132,14 @@ function ScheduleTimingFields({
|
|
|
33115
33132
|
name: "timeReference",
|
|
33116
33133
|
control,
|
|
33117
33134
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33118
|
-
|
|
33135
|
+
_chunkAXBVN5SWcjs.Select,
|
|
33119
33136
|
{
|
|
33120
33137
|
value: field.value,
|
|
33121
33138
|
onValueChange: (next) => handleTimeReferenceChange(field.onChange, next),
|
|
33122
33139
|
disabled: fieldsDisabled,
|
|
33123
33140
|
children: [
|
|
33124
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33125
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33141
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "w-full", "aria-label": "Timezone", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
33142
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: SCHEDULE_TIME_REFERENCE_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33126
33143
|
]
|
|
33127
33144
|
}
|
|
33128
33145
|
)
|
|
@@ -33182,7 +33199,7 @@ function ScheduleTimingFields({
|
|
|
33182
33199
|
name: "repeatUnit",
|
|
33183
33200
|
control,
|
|
33184
33201
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33185
|
-
|
|
33202
|
+
_chunkAXBVN5SWcjs.Select,
|
|
33186
33203
|
{
|
|
33187
33204
|
value: field.value,
|
|
33188
33205
|
onValueChange: (next) => {
|
|
@@ -33193,8 +33210,8 @@ function ScheduleTimingFields({
|
|
|
33193
33210
|
},
|
|
33194
33211
|
disabled: fieldsDisabled || !repeatEnabled,
|
|
33195
33212
|
children: [
|
|
33196
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33197
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33213
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectValue, {}) }),
|
|
33214
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33198
33215
|
]
|
|
33199
33216
|
}
|
|
33200
33217
|
)
|
|
@@ -33213,7 +33230,7 @@ function ScheduleFormFields({
|
|
|
33213
33230
|
disabled = false,
|
|
33214
33231
|
renderScriptSearch,
|
|
33215
33232
|
timeReferenceGate = "off",
|
|
33216
|
-
platforms =
|
|
33233
|
+
platforms = _chunkQKFJ6ORKcjs.OS_PLATFORMS,
|
|
33217
33234
|
comingSoonPlatforms = [],
|
|
33218
33235
|
getTimeSlots,
|
|
33219
33236
|
nameLayout = "stacked",
|
|
@@ -33283,7 +33300,7 @@ function ScheduleFormFields({
|
|
|
33283
33300
|
platform.id
|
|
33284
33301
|
);
|
|
33285
33302
|
}) }),
|
|
33286
|
-
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,
|
|
33303
|
+
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, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", className: "text-ods-error", children: _nullishCoalesce(formState.errors.supportedPlatforms.message, () => ( "")) }) })
|
|
33287
33304
|
]
|
|
33288
33305
|
}
|
|
33289
33306
|
);
|
|
@@ -33359,7 +33376,7 @@ function ScheduleFormFields({
|
|
|
33359
33376
|
// src/components/features/scripts/schedule-form/schedule-script-search-field.tsx
|
|
33360
33377
|
|
|
33361
33378
|
function ScriptPlatformIcons({ platforms }) {
|
|
33362
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children:
|
|
33379
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkQKFJ6ORKcjs.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)) });
|
|
33363
33380
|
}
|
|
33364
33381
|
function ScheduleScriptSearchField({
|
|
33365
33382
|
scriptId,
|
|
@@ -33385,7 +33402,7 @@ function ScheduleScriptSearchField({
|
|
|
33385
33402
|
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: [
|
|
33386
33403
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Select Script" }),
|
|
33387
33404
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33388
|
-
|
|
33405
|
+
_chunkAXBVN5SWcjs.Autocomplete,
|
|
33389
33406
|
{
|
|
33390
33407
|
options,
|
|
33391
33408
|
value: scriptId || null,
|
|
@@ -33400,7 +33417,7 @@ function ScheduleScriptSearchField({
|
|
|
33400
33417
|
error,
|
|
33401
33418
|
invalid,
|
|
33402
33419
|
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: [
|
|
33403
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33420
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { className: isSelected ? "text-ods-accent" : void 0, children: option.label }) }),
|
|
33404
33421
|
/* @__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]), () => ( [])) })
|
|
33405
33422
|
] })
|
|
33406
33423
|
}
|
|
@@ -33432,7 +33449,7 @@ function getKnowledgeBaseOpenColumn(getHref) {
|
|
|
33432
33449
|
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,
|
|
33433
33450
|
_chunk2QMBXGMQcjs.Button,
|
|
33434
33451
|
{
|
|
33435
|
-
onClick:
|
|
33452
|
+
onClick: _chunkQKFJ6ORKcjs.openInNewTab.call(void 0, getHref(row.original)),
|
|
33436
33453
|
variant: "outline",
|
|
33437
33454
|
size: "icon",
|
|
33438
33455
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -33458,7 +33475,7 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33458
33475
|
/* @__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" }) }),
|
|
33459
33476
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33460
33477
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33461
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33478
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: item.name }) }),
|
|
33462
33479
|
tagStatus && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33463
33480
|
_chunkJHQNUWFMcjs.Tag,
|
|
33464
33481
|
{
|
|
@@ -33468,7 +33485,7 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33468
33485
|
}
|
|
33469
33486
|
)
|
|
33470
33487
|
] }),
|
|
33471
|
-
item.type === "ARTICLE" && item.summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33488
|
+
item.type === "ARTICLE" && item.summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: item.summary })
|
|
33472
33489
|
] })
|
|
33473
33490
|
] });
|
|
33474
33491
|
},
|
|
@@ -33483,8 +33500,8 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33483
33500
|
const ts = mode === "archive" ? _nullishCoalesce(row.original.updatedAt, () => ( row.original.createdAt)) : row.original.createdAt;
|
|
33484
33501
|
if (!ts) return null;
|
|
33485
33502
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col whitespace-nowrap", children: [
|
|
33486
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children:
|
|
33487
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children:
|
|
33503
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: _chunkLOFDIDSDcjs.formatDate.call(void 0, ts) }),
|
|
33504
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children: _chunkLOFDIDSDcjs.formatTime.call(void 0, ts) })
|
|
33488
33505
|
] });
|
|
33489
33506
|
},
|
|
33490
33507
|
enableSorting: false,
|
|
@@ -33548,7 +33565,7 @@ function KnowledgeBaseArticleView({
|
|
|
33548
33565
|
className = "px-[var(--spacing-system-l)] pb-[var(--spacing-system-l)]"
|
|
33549
33566
|
}) {
|
|
33550
33567
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33551
|
-
|
|
33568
|
+
_chunkAXBVN5SWcjs.PageLayout,
|
|
33552
33569
|
{
|
|
33553
33570
|
title,
|
|
33554
33571
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -33560,7 +33577,7 @@ function KnowledgeBaseArticleView({
|
|
|
33560
33577
|
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, _chunkJHQNUWFMcjs.Tag, { label: tag.label, variant: "outline", className: "max-w-full" }, tag.id)) }),
|
|
33561
33578
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7Z4EQOIXcjs.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: [
|
|
33562
33579
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33563
|
-
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33580
|
+
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ANICXS7cjs.DeletedUserAvatar, { size: "md" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33564
33581
|
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
33565
33582
|
{
|
|
33566
33583
|
src: author.imageUrl,
|
|
@@ -33571,12 +33588,12 @@ function KnowledgeBaseArticleView({
|
|
|
33571
33588
|
}
|
|
33572
33589
|
),
|
|
33573
33590
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33574
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33591
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { className: author.deleted ? "text-ods-error" : void 0, children: _nullishCoalesce(author.name, () => ( "Unknown")) }),
|
|
33575
33592
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Author" })
|
|
33576
33593
|
] })
|
|
33577
33594
|
] }),
|
|
33578
33595
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 flex-col justify-center", children: [
|
|
33579
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33596
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { children: updatedLabel }),
|
|
33580
33597
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Updated" })
|
|
33581
33598
|
] }),
|
|
33582
33599
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -33680,13 +33697,13 @@ function ConversationCard({
|
|
|
33680
33697
|
),
|
|
33681
33698
|
style: tint,
|
|
33682
33699
|
children: [
|
|
33683
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33700
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQKFJ6ORKcjs.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: [
|
|
33684
33701
|
"\u201C",
|
|
33685
33702
|
request,
|
|
33686
33703
|
"\u201D"
|
|
33687
33704
|
] }) }),
|
|
33688
33705
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33689
|
-
|
|
33706
|
+
_chunkQKFJ6ORKcjs.ChatTurn,
|
|
33690
33707
|
{
|
|
33691
33708
|
avatar: responder.avatar,
|
|
33692
33709
|
name: responder.name,
|
|
@@ -33722,7 +33739,7 @@ function Highlights({ items, className }) {
|
|
|
33722
33739
|
if (items.length === 0) return null;
|
|
33723
33740
|
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: [
|
|
33724
33741
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "shrink-0 text-ods-flamingo-cyan" }),
|
|
33725
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33742
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", triggerClassName: "flex-1", children: text })
|
|
33726
33743
|
] }, text)) });
|
|
33727
33744
|
}
|
|
33728
33745
|
function Example({
|
|
@@ -33751,7 +33768,7 @@ function Example({
|
|
|
33751
33768
|
mark(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _728 => _728.mark]), () => ( requesterMark))),
|
|
33752
33769
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
33753
33770
|
who(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _729 => _729.name]), () => ( labels.requester)), _nullishCoalesce(_optionalChain([requester, 'optionalAccess', _730 => _730.note]), () => ( labels.requesterNote))),
|
|
33754
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33771
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 2, variant: "h4", className: "min-h-[2lh]", children: `\u201C${example.request}\u201D` })
|
|
33755
33772
|
] })
|
|
33756
33773
|
] }),
|
|
33757
33774
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 gap-2.5 border-t border-ods-border pt-3", children: [
|
|
@@ -33760,7 +33777,7 @@ function Example({
|
|
|
33760
33777
|
who(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _732 => _732.name]), () => ( labels.responder)), _nullishCoalesce(_optionalChain([responder, 'optionalAccess', _733 => _733.note]), () => ( labels.responderNote))),
|
|
33761
33778
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-start gap-2", children: [
|
|
33762
33779
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "mt-0.5 shrink-0 text-ods-flamingo-cyan" }),
|
|
33763
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33780
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", className: "min-h-[2lh]", triggerClassName: "flex-1", children: example.outcome })
|
|
33764
33781
|
] })
|
|
33765
33782
|
] })
|
|
33766
33783
|
] })
|
|
@@ -33922,13 +33939,13 @@ function CapabilityExplorer({
|
|
|
33922
33939
|
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, _chunk7Z4EQOIXcjs.EntityIcon, { icon: { name: item.iconName }, size: 18 }) }),
|
|
33923
33940
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
33924
33941
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h3", { className: "flex min-w-0 items-center gap-2 text-ods-text-primary text-h4", children: [
|
|
33925
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33942
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { as: "span", variant: "h4", triggerClassName: "flex-1", children: item.title }),
|
|
33926
33943
|
item.badge
|
|
33927
33944
|
] }),
|
|
33928
|
-
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33945
|
+
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { variant: "h6", tone: "secondary", children: item.caption })
|
|
33929
33946
|
] })
|
|
33930
33947
|
] }),
|
|
33931
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33948
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 3, variant: "h6", tone: "secondary", className: "min-h-[3lh]", children: item.intro }),
|
|
33932
33949
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-lg border border-ods-border", children: renderScreen(item, { compact: true }) }),
|
|
33933
33950
|
item.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33934
33951
|
Example,
|
|
@@ -34056,8 +34073,8 @@ function CapabilityExplorer({
|
|
|
34056
34073
|
),
|
|
34057
34074
|
children: [
|
|
34058
34075
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col overflow-hidden", children: [
|
|
34059
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34060
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34076
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 2, variant: "h2", className: "mb-2", children: active.title }),
|
|
34077
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.TruncateText, { lines: 3, variant: "h4", tone: "secondary", className: "min-h-[3lh]", children: active.intro }),
|
|
34061
34078
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Highlights, { items: _nullishCoalesce(active.highlights, () => ( [])), className: "mt-auto" })
|
|
34062
34079
|
] }),
|
|
34063
34080
|
active.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|