@flamingo-stack/openframe-frontend-core 0.0.745 → 0.0.746
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build/export-map.json +1 -1
- package/dist/{chunk-LJ46XYYP.cjs → chunk-2ZVNXD74.cjs} +24 -24
- package/dist/{chunk-75BF7YJR.cjs → chunk-3AUTORMB.cjs} +13 -13
- package/dist/{chunk-FNIFUCXU.cjs → chunk-3KVB5FQZ.cjs} +5 -5
- package/dist/{chunk-HMSCUL4R.cjs → chunk-3OAACQQG.cjs} +4 -4
- package/dist/{chunk-RIGSZEXS.cjs → chunk-5X3F2KL7.cjs} +90 -90
- package/dist/{chunk-M4FKV2U5.cjs → chunk-7AKFKPBV.cjs} +12 -12
- package/dist/{chunk-4N7KGOBS.cjs → chunk-B24U6KNJ.cjs} +3 -3
- package/dist/{chunk-7KHQHYXL.cjs → chunk-DJ4YDVBF.cjs} +18 -18
- package/dist/{chunk-NFINQ7IZ.cjs → chunk-FAN73OTP.cjs} +6 -6
- package/dist/{chunk-QES5NV4T.cjs → chunk-GPSHFEF2.cjs} +645 -635
- package/dist/{chunk-GOTEXQZN.cjs → chunk-GSFANY2L.cjs} +80 -80
- package/dist/{chunk-URVIPSAJ.cjs → chunk-HNLI4OU5.cjs} +14 -14
- package/dist/{chunk-6IQDQQ56.cjs → chunk-IRKUFXVV.cjs} +38 -38
- package/dist/{chunk-ABLUMGCI.cjs → chunk-JHQNUWFM.cjs} +83 -33
- package/dist/{chunk-4A6OF4HI.cjs → chunk-KVPSV4ZI.cjs} +44 -44
- package/dist/{chunk-UY6A6TEY.cjs → chunk-L2IQESTQ.cjs} +2 -2
- package/dist/{chunk-YIOWV7LS.cjs → chunk-NZMQIAQC.cjs} +2 -2
- package/dist/{chunk-YJRMCFX3.cjs → chunk-O4J4NIMB.cjs} +7 -7
- package/dist/{chunk-GAGNKWOC.cjs → chunk-OWABNVDV.cjs} +2 -2
- package/dist/{chunk-PM5ELQBL.cjs → chunk-PLBJ3XVC.cjs} +32 -32
- package/dist/{chunk-OWGLRE74.cjs → chunk-PSIKUDUV.cjs} +8 -8
- package/dist/{chunk-3LX5AGZO.cjs → chunk-SDDZHPVK.cjs} +24 -24
- package/dist/{chunk-GQ2TRIOV.cjs → chunk-SLODGX6D.cjs} +35 -35
- package/dist/{chunk-DJO7YMT3.cjs → chunk-TILK7SC4.cjs} +194 -194
- package/dist/{chunk-U2O5YQRP.cjs → chunk-U6XWGK53.cjs} +33 -33
- package/dist/{chunk-JGZEHBBD.cjs → chunk-VZGCSVH7.cjs} +10 -10
- package/dist/{chunk-GEEKJ7SH.cjs → chunk-X4Y74M5K.cjs} +74 -74
- package/dist/{chunk-HVR7DPAY.cjs → chunk-XQJOYPPN.cjs} +4 -4
- package/dist/{chunk-7PQOZLVP.cjs → chunk-YKF66VQY.cjs} +20 -20
- package/dist/{chunk-5TCIRWHL.cjs → chunk-YRULLK7N.cjs} +5 -5
- package/dist/{cloud-tenants-DECPWIYQ.cjs → cloud-tenants-OKUFSNPW.cjs} +13 -13
- package/dist/components/case-studies/index.cjs +25 -25
- package/dist/components/chat/index.cjs +9 -9
- package/dist/components/contact/index.cjs +14 -14
- package/dist/components/docs/index.cjs +17 -17
- package/dist/components/embeds/index.cjs +14 -14
- package/dist/components/faq/index.cjs +15 -15
- package/dist/components/features/index.cjs +13 -13
- package/dist/components/help-center-pages/index.cjs +116 -116
- package/dist/components/index.cjs +119 -125
- package/dist/components/meeting-scheduler/index.cjs +63 -63
- package/dist/components/navigation/index.cjs +16 -16
- package/dist/components/onboarding-guides/index.cjs +16 -16
- package/dist/components/product-demo/index.cjs +9 -9
- package/dist/components/related-content/index.cjs +7 -7
- package/dist/components/tickets/index.cjs +19 -19
- package/dist/components/ui/filter-checkbox-item.d.ts +8 -2
- package/dist/components/ui/filter-checkbox-item.d.ts.map +1 -1
- package/dist/components/ui/filter-checkbox-item.js +14 -4
- package/dist/components/ui/index.cjs +13 -13
- package/dist/components/unified-filter-logic.js +1 -1
- package/dist/components/vendor-tag.d.ts +12 -0
- package/dist/components/vendor-tag.d.ts.map +1 -1
- package/dist/components/vendor-tag.js +50 -47
- package/dist/{devices-HJKDRWQX.cjs → devices-URCDMYFU.cjs} +14 -14
- package/dist/{embeddable-chat-3SKFBO2P.cjs → embeddable-chat-B35GB5B6.cjs} +80 -80
- package/dist/index.cjs +20 -18
- package/dist/{knowledge-NH2CGY2C.cjs → knowledge-5MW2PREQ.cjs} +14 -14
- package/dist/{logs-KZYIDYQK.cjs → logs-LJJK5CK4.cjs} +21 -21
- package/dist/{policies-UAVTPIKM.cjs → policies-6TCEWQYG.cjs} +17 -17
- package/dist/{remote-session-N4PJB5FW.cjs → remote-session-IYT4LWJC.cjs} +7 -7
- package/dist/{scripts-FRPY43KU.cjs → scripts-ABB2P6PT.cjs} +20 -20
- package/dist/{software-update-AEJJNLX5.cjs → software-update-4427ZRMO.cjs} +17 -17
- package/dist/{tickets-board-O753S4ZB.cjs → tickets-board-4MT6ZB4F.cjs} +8 -8
- package/dist/utils/format.d.ts.map +1 -1
- package/dist/utils/format.js +2 -3
- package/dist/utils/index.cjs +74 -24
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +8 -6
- package/dist/utils/vendor-classification.d.ts +43 -17
- package/dist/utils/vendor-classification.d.ts.map +1 -1
- package/dist/utils/vendor-classification.js +73 -22
- package/package.json +1 -1
- package/src/components/ui/filter-checkbox-item.tsx +21 -5
- package/src/components/unified-filter-logic.tsx +1 -1
- package/src/components/vendor-tag.tsx +73 -69
- package/src/utils/format.ts +2 -3
- package/src/utils/index.ts +7 -5
- package/src/utils/vendor-classification.ts +113 -34
- package/dist/utils/format-text-stub.d.ts +0 -5
- package/dist/utils/format-text-stub.d.ts.map +0 -1
- package/dist/utils/format-text-stub.js +0 -20
- package/src/utils/format-text-stub.ts +0 -17
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkHNLI4OU5cjs = require('./chunk-HNLI4OU5.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 _chunkU6XWGK53cjs = require('./chunk-U6XWGK53.cjs');
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
var _chunkDEY6XXGOcjs = require('./chunk-DEY6XXGO.cjs');
|
|
@@ -62,7 +62,7 @@ var _chunkLU7TD6QScjs = require('./chunk-LU7TD6QS.cjs');
|
|
|
62
62
|
var _chunkA6P6DHEZcjs = require('./chunk-A6P6DHEZ.cjs');
|
|
63
63
|
|
|
64
64
|
|
|
65
|
-
var
|
|
65
|
+
var _chunkOWABNVDVcjs = require('./chunk-OWABNVDV.cjs');
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
|
|
@@ -109,7 +109,7 @@ var _chunkYUMFVQINcjs = require('./chunk-YUMFVQIN.cjs');
|
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
|
|
112
|
-
var
|
|
112
|
+
var _chunkGSFANY2Lcjs = require('./chunk-GSFANY2L.cjs');
|
|
113
113
|
|
|
114
114
|
|
|
115
115
|
|
|
@@ -135,7 +135,7 @@ var _chunkGOTEXQZNcjs = require('./chunk-GOTEXQZN.cjs');
|
|
|
135
135
|
|
|
136
136
|
|
|
137
137
|
|
|
138
|
-
var
|
|
138
|
+
var _chunkTILK7SC4cjs = require('./chunk-TILK7SC4.cjs');
|
|
139
139
|
|
|
140
140
|
|
|
141
141
|
|
|
@@ -148,7 +148,7 @@ var _chunkDJO7YMT3cjs = require('./chunk-DJO7YMT3.cjs');
|
|
|
148
148
|
|
|
149
149
|
|
|
150
150
|
|
|
151
|
-
var
|
|
151
|
+
var _chunkPSIKUDUVcjs = require('./chunk-PSIKUDUV.cjs');
|
|
152
152
|
|
|
153
153
|
|
|
154
154
|
|
|
@@ -160,7 +160,7 @@ var _chunkOWGLRE74cjs = require('./chunk-OWGLRE74.cjs');
|
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
|
|
163
|
-
var
|
|
163
|
+
var _chunkYRULLK7Ncjs = require('./chunk-YRULLK7N.cjs');
|
|
164
164
|
|
|
165
165
|
|
|
166
166
|
|
|
@@ -487,7 +487,7 @@ var _chunkSKI6NKOEcjs = require('./chunk-SKI6NKOE.cjs');
|
|
|
487
487
|
|
|
488
488
|
|
|
489
489
|
|
|
490
|
-
var
|
|
490
|
+
var _chunk2ZVNXD74cjs = require('./chunk-2ZVNXD74.cjs');
|
|
491
491
|
|
|
492
492
|
|
|
493
493
|
|
|
@@ -502,7 +502,7 @@ var _chunkQYLIHZKZcjs = require('./chunk-QYLIHZKZ.cjs');
|
|
|
502
502
|
var _chunk63N4FN5Vcjs = require('./chunk-63N4FN5V.cjs');
|
|
503
503
|
|
|
504
504
|
|
|
505
|
-
var
|
|
505
|
+
var _chunkL2IQESTQcjs = require('./chunk-L2IQESTQ.cjs');
|
|
506
506
|
|
|
507
507
|
|
|
508
508
|
|
|
@@ -514,7 +514,7 @@ var _chunkUY6A6TEYcjs = require('./chunk-UY6A6TEY.cjs');
|
|
|
514
514
|
|
|
515
515
|
|
|
516
516
|
|
|
517
|
-
var
|
|
517
|
+
var _chunkJHQNUWFMcjs = require('./chunk-JHQNUWFM.cjs');
|
|
518
518
|
|
|
519
519
|
|
|
520
520
|
var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
|
|
@@ -660,7 +660,7 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
660
660
|
var useTheme = _nextthemes.useTheme;
|
|
661
661
|
function useThemeToggle() {
|
|
662
662
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
663
|
-
const mounted =
|
|
663
|
+
const mounted = _chunkTILK7SC4cjs.useIsHydrated.call(void 0, );
|
|
664
664
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
665
665
|
const setOdsTheme = _react.useCallback.call(void 0, (next) => setTheme(next), [setTheme]);
|
|
666
666
|
const toggle = _react.useCallback.call(void 0, () => setTheme(active === "dark" ? "light" : "dark"), [active, setTheme]);
|
|
@@ -868,7 +868,7 @@ function TimezoneSelect({
|
|
|
868
868
|
}) {
|
|
869
869
|
const options = _react.useMemo.call(void 0, () => timezoneOptions(value), [value]);
|
|
870
870
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
871
|
-
|
|
871
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
872
872
|
{
|
|
873
873
|
className,
|
|
874
874
|
value: value || null,
|
|
@@ -1048,7 +1048,7 @@ var _reactpopover = require('@radix-ui/react-popover'); var Popover = _interopRe
|
|
|
1048
1048
|
|
|
1049
1049
|
var _reactdaypicker = require('react-day-picker');
|
|
1050
1050
|
|
|
1051
|
-
var defaultFormatDate = (date) =>
|
|
1051
|
+
var defaultFormatDate = (date) => _chunkJHQNUWFMcjs.formatDateWithTimezone.call(void 0, date, _chunkJHQNUWFMcjs.VIEWER_TIMEZONE, "numeric");
|
|
1052
1052
|
var formatDateRange = (range, formatFn) => {
|
|
1053
1053
|
if (!_optionalChain([range, 'optionalAccess', _5 => _5.from])) return "";
|
|
1054
1054
|
if (!range.to) return formatFn(range.from);
|
|
@@ -1249,7 +1249,7 @@ function DatePickerCalendar({
|
|
|
1249
1249
|
};
|
|
1250
1250
|
const handlePreviousMonth = () => shiftMonth(-1);
|
|
1251
1251
|
const handleNextMonth = () => shiftMonth(1);
|
|
1252
|
-
const formatMonthYear = (date) =>
|
|
1252
|
+
const formatMonthYear = (date) => _chunkJHQNUWFMcjs.formatDateWithTimezone.call(void 0, date, _chunkJHQNUWFMcjs.VIEWER_TIMEZONE, "monthYear");
|
|
1253
1253
|
const getSecondMonth = (date) => {
|
|
1254
1254
|
const next = new Date(date);
|
|
1255
1255
|
next.setMonth(next.getMonth() + 1);
|
|
@@ -1686,20 +1686,20 @@ function DatePickerInput(props) {
|
|
|
1686
1686
|
) })
|
|
1687
1687
|
] }),
|
|
1688
1688
|
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1", children: [
|
|
1689
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1690
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1691
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1689
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: hour, onValueChange: handleHourChange, disabled, children: [
|
|
1690
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder: "HH" }) }),
|
|
1691
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: hourOptions.map((h) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: h, children: h }, h)) })
|
|
1692
1692
|
] }),
|
|
1693
1693
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h4", children: ":" }),
|
|
1694
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1695
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1696
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1694
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: minute, onValueChange: handleMinuteChange, disabled, children: [
|
|
1695
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder: "MM" }) }),
|
|
1696
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: minuteOptions.map((m) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: m, children: m }, m)) })
|
|
1697
1697
|
] }),
|
|
1698
|
-
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1699
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1700
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1701
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1702
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1698
|
+
!use24HourFormat && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: period, onValueChange: (val) => handlePeriodChange(val), disabled, children: [
|
|
1699
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "w-[80px]"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder: "AM" }) }),
|
|
1700
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: [
|
|
1701
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "AM", children: "AM" }),
|
|
1702
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "PM", children: "PM" })
|
|
1703
1703
|
] })
|
|
1704
1704
|
] })
|
|
1705
1705
|
] })
|
|
@@ -1841,9 +1841,9 @@ function DatePickerInputSimple(props) {
|
|
|
1841
1841
|
}
|
|
1842
1842
|
) })
|
|
1843
1843
|
] }),
|
|
1844
|
-
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1845
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1846
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1844
|
+
showTime && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: timeValue, onValueChange: handleTimeChange, disabled, children: [
|
|
1845
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: _chunk3ATAYP36cjs.cn.call(void 0, timeSelectTriggerStyles, "flex-1"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder: "Select time", children: timeDisplayLabel || "Select time" }) }),
|
|
1846
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
1847
1847
|
] })
|
|
1848
1848
|
] });
|
|
1849
1849
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.FieldWrapper, { label, error, errorSlot: "error" in props, className, children: content });
|
|
@@ -1862,14 +1862,14 @@ function DateFilterPanel({
|
|
|
1862
1862
|
className
|
|
1863
1863
|
}) {
|
|
1864
1864
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex flex-col gap-4", className), children: [
|
|
1865
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1866
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1865
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: sort, onValueChange: (value) => onSortChange(value), children: [
|
|
1866
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.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: [
|
|
1867
1867
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowUpDown, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
1868
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1868
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) })
|
|
1869
1869
|
] }) }),
|
|
1870
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1871
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1872
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1870
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: [
|
|
1871
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "asc", children: ascLabel }),
|
|
1872
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "desc", children: descLabel })
|
|
1873
1873
|
] })
|
|
1874
1874
|
] }),
|
|
1875
1875
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -2146,7 +2146,7 @@ function Value({ value, depth }) {
|
|
|
2146
2146
|
}
|
|
2147
2147
|
if (typeof value === "string") {
|
|
2148
2148
|
if (ISO_DATE.test(value)) {
|
|
2149
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children:
|
|
2149
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: value, className: "text-ods-text-secondary", children: _chunkPSIKUDUVcjs.formatRelativeTime.call(void 0, value) });
|
|
2150
2150
|
}
|
|
2151
2151
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-wrap text-ods-text-primary", children: value });
|
|
2152
2152
|
}
|
|
@@ -2568,7 +2568,7 @@ function CompactAssigneeDropdown({
|
|
|
2568
2568
|
value: o.value,
|
|
2569
2569
|
label: o.label,
|
|
2570
2570
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2571
|
-
|
|
2571
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
2572
2572
|
{
|
|
2573
2573
|
src: o.imageUrl,
|
|
2574
2574
|
alt: o.label,
|
|
@@ -2602,8 +2602,8 @@ function CompactAssigneeDropdown({
|
|
|
2602
2602
|
"shrink-0 rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
2603
2603
|
className
|
|
2604
2604
|
),
|
|
2605
|
-
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2606
|
-
|
|
2605
|
+
children: currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHNLI4OU5cjs.DeletedUserAvatar, { size: "sm", accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}` }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2606
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
2607
2607
|
{
|
|
2608
2608
|
src: currentAssignee.avatarSrc,
|
|
2609
2609
|
alt: currentAssignee.name,
|
|
@@ -2651,7 +2651,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2651
2651
|
const opt = option;
|
|
2652
2652
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-sf)]", children: [
|
|
2653
2653
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2654
|
-
|
|
2654
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
2655
2655
|
{
|
|
2656
2656
|
src: opt.imageUrl,
|
|
2657
2657
|
alt: opt.label,
|
|
@@ -2667,7 +2667,7 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2667
2667
|
if (isEditing) {
|
|
2668
2668
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "min-w-0", className), children: [
|
|
2669
2669
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2670
|
-
|
|
2670
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
2671
2671
|
{
|
|
2672
2672
|
options,
|
|
2673
2673
|
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _35 => _35.id]), () => ( null)),
|
|
@@ -2679,14 +2679,14 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2679
2679
|
loading: isLoading,
|
|
2680
2680
|
showChevron: false,
|
|
2681
2681
|
startAdornment: hasAssignee ? currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2682
|
-
|
|
2682
|
+
_chunkHNLI4OU5cjs.DeletedUserAvatar,
|
|
2683
2683
|
{
|
|
2684
2684
|
size: "sm",
|
|
2685
2685
|
className: "h-6 w-6",
|
|
2686
2686
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
2687
2687
|
}
|
|
2688
2688
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2689
|
-
|
|
2689
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
2690
2690
|
{
|
|
2691
2691
|
src: currentAssignee.avatarSrc,
|
|
2692
2692
|
alt: currentAssignee.name,
|
|
@@ -2705,13 +2705,13 @@ function DefaultAssigneeDropdown({ currentAssignee, options, isLoading, onAssign
|
|
|
2705
2705
|
if (hasAssignee) {
|
|
2706
2706
|
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: [
|
|
2707
2707
|
currentAssignee.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2708
|
-
|
|
2708
|
+
_chunkHNLI4OU5cjs.DeletedUserAvatar,
|
|
2709
2709
|
{
|
|
2710
2710
|
size: "md",
|
|
2711
2711
|
accessibleLabel: `Deleted user: ${currentAssignee.name || currentAssignee.id}`
|
|
2712
2712
|
}
|
|
2713
2713
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2714
|
-
|
|
2714
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
2715
2715
|
{
|
|
2716
2716
|
src: currentAssignee.avatarSrc,
|
|
2717
2717
|
alt: currentAssignee.name,
|
|
@@ -2785,7 +2785,7 @@ function TextValue({ value }) {
|
|
|
2785
2785
|
}
|
|
2786
2786
|
) : onClick ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick, title: text, className: interactiveClass, children: text }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", title: text, children: text }),
|
|
2787
2787
|
hasImage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2788
|
-
|
|
2788
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
2789
2789
|
{
|
|
2790
2790
|
src: imageSrc,
|
|
2791
2791
|
alt: text,
|
|
@@ -2805,7 +2805,7 @@ function RowValue({ value }) {
|
|
|
2805
2805
|
}
|
|
2806
2806
|
case "status": {
|
|
2807
2807
|
const { type: _type, ...props } = value;
|
|
2808
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2808
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.TicketStatusTag, { ...props });
|
|
2809
2809
|
}
|
|
2810
2810
|
case "custom":
|
|
2811
2811
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
|
|
@@ -2903,7 +2903,7 @@ function MediaTypeSelector({
|
|
|
2903
2903
|
// changed) and cost an extra render pass on every change to say what the
|
|
2904
2904
|
// prop already said.
|
|
2905
2905
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
2906
|
-
|
|
2906
|
+
_chunkU6XWGK53cjs.Select,
|
|
2907
2907
|
{
|
|
2908
2908
|
value: value || void 0,
|
|
2909
2909
|
onValueChange: (next) => {
|
|
@@ -2913,8 +2913,8 @@ function MediaTypeSelector({
|
|
|
2913
2913
|
disabled,
|
|
2914
2914
|
defaultValue: value,
|
|
2915
2915
|
children: [
|
|
2916
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2917
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2916
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder }) }),
|
|
2917
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: mediaTypeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: option.value, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
2918
2918
|
option.icon,
|
|
2919
2919
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: option.label })
|
|
2920
2920
|
] }) }, option.value)) })
|
|
@@ -3730,7 +3730,7 @@ function TagsManager({
|
|
|
3730
3730
|
}
|
|
3731
3731
|
),
|
|
3732
3732
|
selectedTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3733
|
-
|
|
3733
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
3734
3734
|
{
|
|
3735
3735
|
label: tag.name,
|
|
3736
3736
|
variant: "outline",
|
|
@@ -4275,10 +4275,10 @@ function useConfirm() {
|
|
|
4275
4275
|
},
|
|
4276
4276
|
[]
|
|
4277
4277
|
);
|
|
4278
|
-
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4279
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4280
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4281
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4278
|
+
const dialog = pending ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen: open, onClose: () => decide(false), children: [
|
|
4279
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: pending.title }) }),
|
|
4280
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalContent, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: pending.body }) }),
|
|
4281
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
|
|
4282
4282
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", onClick: () => decide(false), children: "Cancel" }),
|
|
4283
4283
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "destructive", onClick: () => decide(true), children: "Confirm" })
|
|
4284
4284
|
] })
|
|
@@ -4356,7 +4356,7 @@ function AdminFormDrawer({
|
|
|
4356
4356
|
"form",
|
|
4357
4357
|
{
|
|
4358
4358
|
id: formId,
|
|
4359
|
-
...
|
|
4359
|
+
..._chunkGSFANY2Lcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4360
4360
|
className: "flex flex-col gap-[var(--spacing-system-lf)]",
|
|
4361
4361
|
onSubmit: (e) => {
|
|
4362
4362
|
e.preventDefault();
|
|
@@ -4457,16 +4457,16 @@ function AdminFormModal({
|
|
|
4457
4457
|
body: "Your edits have not been saved. Close and discard them?"
|
|
4458
4458
|
});
|
|
4459
4459
|
if (!isOpen) return null;
|
|
4460
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4461
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4462
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4460
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen: true, onClose: guardedClose, size: effectiveSize, children: [
|
|
4461
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: [
|
|
4462
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: title }),
|
|
4463
4463
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
4464
4464
|
] }),
|
|
4465
4465
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4466
4466
|
"form",
|
|
4467
4467
|
{
|
|
4468
4468
|
id: formId,
|
|
4469
|
-
...
|
|
4469
|
+
..._chunkGSFANY2Lcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
|
|
4470
4470
|
className: "flex min-h-0 flex-1 flex-col",
|
|
4471
4471
|
onSubmit: (e) => {
|
|
4472
4472
|
e.preventDefault();
|
|
@@ -4484,7 +4484,7 @@ function AdminFormModal({
|
|
|
4484
4484
|
// a shrink-to-fit flex item pinned to the left of a 1400px panel).
|
|
4485
4485
|
// The placeholder owns its own layout and mirrors the column count so
|
|
4486
4486
|
// the modal doesn't visibly re-flow when the entity lands.
|
|
4487
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4487
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalContent, { children: loadingContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-busy": "true", children: loadingContent }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4488
4488
|
"div",
|
|
4489
4489
|
{
|
|
4490
4490
|
"aria-busy": "true",
|
|
@@ -4505,12 +4505,12 @@ function AdminFormModal({
|
|
|
4505
4505
|
]
|
|
4506
4506
|
}
|
|
4507
4507
|
) })
|
|
4508
|
-
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4508
|
+
) : twoColumn ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTwoColumn, { left: leftColumn, right: rightColumn }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalContent, { className: contentClassName, children }),
|
|
4509
4509
|
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { role: "alert", className: "shrink-0 text-ods-error text-h6", children: error })
|
|
4510
4510
|
]
|
|
4511
4511
|
}
|
|
4512
4512
|
),
|
|
4513
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4513
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center justify-between gap-[var(--spacing-system-xsf)]", children: [
|
|
4514
4514
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: footerExtras }),
|
|
4515
4515
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
4516
4516
|
footerStatus,
|
|
@@ -5249,7 +5249,7 @@ var TabBar = _react.memo.call(void 0, function TabBarImpl({
|
|
|
5249
5249
|
// as tall as its neighbours at every breakpoint. No hover shade:
|
|
5250
5250
|
// the tab is the target, and the cursor passes through to it.
|
|
5251
5251
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5252
|
-
|
|
5252
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
5253
5253
|
{
|
|
5254
5254
|
as: "span",
|
|
5255
5255
|
"aria-hidden": true,
|
|
@@ -5765,7 +5765,7 @@ function EmbedViewerFrame({
|
|
|
5765
5765
|
const controllerRef = _react.useRef.call(void 0, null);
|
|
5766
5766
|
_react.useEffect.call(void 0, () => {
|
|
5767
5767
|
if (!fullscreenControl) return void 0;
|
|
5768
|
-
const controller = new (0,
|
|
5768
|
+
const controller = new (0, _chunkGSFANY2Lcjs.FullscreenSwitchController)({
|
|
5769
5769
|
target: () => frameRef.current,
|
|
5770
5770
|
onFullscreenChange: setIsFullscreen
|
|
5771
5771
|
});
|
|
@@ -6715,7 +6715,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarouselImpl({
|
|
|
6715
6715
|
};
|
|
6716
6716
|
const displayImageSrc = (url) => transformImageSrc ? transformImageSrc(url) : url;
|
|
6717
6717
|
const renderVideo = (item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6718
|
-
|
|
6718
|
+
_chunk2ZVNXD74cjs.Video,
|
|
6719
6719
|
{
|
|
6720
6720
|
url: item.src,
|
|
6721
6721
|
poster: item.poster ? displayImageSrc(item.poster) : void 0,
|
|
@@ -6910,7 +6910,7 @@ var formatTimeAgo = (timestamp) => {
|
|
|
6910
6910
|
return `${Math.floor(diffSeconds / 86400)}d ago`;
|
|
6911
6911
|
};
|
|
6912
6912
|
function RedditEmbedClient({ url, maxWidth = 700, rel }) {
|
|
6913
|
-
const postLinkRel =
|
|
6913
|
+
const postLinkRel = _chunkTILK7SC4cjs.renderedLinkRel.call(void 0, rel, true);
|
|
6914
6914
|
const { redditProxyUrl } = useRichMarkdownRuntime();
|
|
6915
6915
|
const [redditData, setRedditData] = _react.useState.call(void 0, null);
|
|
6916
6916
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7148,7 +7148,7 @@ function RedditEmbedClient({ url, maxWidth = 700, rel }) {
|
|
|
7148
7148
|
width: m.width,
|
|
7149
7149
|
height: m.height
|
|
7150
7150
|
}));
|
|
7151
|
-
const formatNumber =
|
|
7151
|
+
const formatNumber = _chunkJHQNUWFMcjs.formatLargeNumber;
|
|
7152
7152
|
const truncateText = (text, maxLength = 600) => {
|
|
7153
7153
|
if (text.length <= maxLength) return text;
|
|
7154
7154
|
return text.slice(0, maxLength) + "...";
|
|
@@ -7242,7 +7242,7 @@ var UserIcon3 = () => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "svg", { wid
|
|
|
7242
7242
|
] });
|
|
7243
7243
|
var XIcon = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2TEMEXDTcjs.XLogoIcon, { className: "h-5 w-5", color: "currentColor" });
|
|
7244
7244
|
function TwitterEmbedClient({ url, tweetId, maxWidth = 700, rel }) {
|
|
7245
|
-
const postLinkRel =
|
|
7245
|
+
const postLinkRel = _chunkTILK7SC4cjs.renderedLinkRel.call(void 0, rel, true);
|
|
7246
7246
|
const { twitterProxyUrl } = useRichMarkdownRuntime();
|
|
7247
7247
|
const [tweetData, setTweetData] = _react.useState.call(void 0, null);
|
|
7248
7248
|
const [fetchLoading, setLoading] = _react.useState.call(void 0, true);
|
|
@@ -7444,7 +7444,7 @@ function buildRichEmbedOverrides({
|
|
|
7444
7444
|
ogEndpointPath,
|
|
7445
7445
|
textSizes
|
|
7446
7446
|
}) {
|
|
7447
|
-
const standard =
|
|
7447
|
+
const standard = _chunkTILK7SC4cjs.buildStandardLeafRenderers.call(void 0, { textSizes });
|
|
7448
7448
|
return {
|
|
7449
7449
|
// Fence-language embeds (```youtube-embed etc.); everything else
|
|
7450
7450
|
// (mermaid, highlighted blocks, inline code) falls through to `standard`.
|
|
@@ -7454,7 +7454,7 @@ function buildRichEmbedOverrides({
|
|
|
7454
7454
|
const language = match ? match[1] : "";
|
|
7455
7455
|
const fenceText = () => String(children).replace(/\n$/, "").trim();
|
|
7456
7456
|
if (language === "youtube-embed") {
|
|
7457
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7457
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.Video, { kind: "youtube", url: fenceText() });
|
|
7458
7458
|
}
|
|
7459
7459
|
if (language === "reddit-embed") {
|
|
7460
7460
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: fenceText() });
|
|
@@ -7495,7 +7495,7 @@ function buildRichEmbedOverrides({
|
|
|
7495
7495
|
"data-figma-url": figmaUrl
|
|
7496
7496
|
} = divProps;
|
|
7497
7497
|
if (className === "youtube-embed" && videoId) {
|
|
7498
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7498
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.Video, { kind: "youtube", url: videoId });
|
|
7499
7499
|
}
|
|
7500
7500
|
if (className === "reddit-embed" && postUrl) {
|
|
7501
7501
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RedditEmbedClient, { url: postUrl });
|
|
@@ -7580,14 +7580,14 @@ function buildRichEmbedOverrides({
|
|
|
7580
7580
|
// rich-markdown runtime (Supabase optimization on the hub, identity
|
|
7581
7581
|
// elsewhere). Guard against empty `![]()`.
|
|
7582
7582
|
img: ({ src, alt }) => {
|
|
7583
|
-
if (!
|
|
7583
|
+
if (!_chunkTILK7SC4cjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7584
7584
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownImage, { src: src.trim(), alt });
|
|
7585
7585
|
},
|
|
7586
7586
|
// Raw <video> tags in stored content (blog publisher injection) route
|
|
7587
7587
|
// to the <Video> SSOT (MuxPlayer) so HLS manifests play everywhere.
|
|
7588
7588
|
video: ({ src, poster, className }) => {
|
|
7589
|
-
if (!
|
|
7590
|
-
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,
|
|
7589
|
+
if (!_chunkTILK7SC4cjs.hasRenderableSrc.call(void 0, src)) return null;
|
|
7590
|
+
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, _chunk2ZVNXD74cjs.Video, { kind: "file", url: src.trim(), poster: typeof poster === "string" ? poster : void 0 }) }) });
|
|
7591
7591
|
}
|
|
7592
7592
|
};
|
|
7593
7593
|
}
|
|
@@ -7695,7 +7695,7 @@ var processShortcodes = (content) => {
|
|
|
7695
7695
|
try {
|
|
7696
7696
|
const urlObj = new URL(url);
|
|
7697
7697
|
const hostname = urlObj.hostname.toLowerCase();
|
|
7698
|
-
const hostIs = (domain) =>
|
|
7698
|
+
const hostIs = (domain) => _chunkGSFANY2Lcjs.hostMatches.call(void 0, hostname, domain);
|
|
7699
7699
|
const isYouTubeVideo = hostIs("youtube.com") && urlObj.searchParams.has("v") || hostIs("youtu.be");
|
|
7700
7700
|
if (isYouTubeVideo || hostIs("reddit.com") || hostIs("twitter.com") || hostIs("x.com") || hostIs("figma.com")) {
|
|
7701
7701
|
return match;
|
|
@@ -7770,13 +7770,13 @@ var RichMarkdownInner = ({
|
|
|
7770
7770
|
},
|
|
7771
7771
|
[resolveLinkEndpointUrl, resolveSource]
|
|
7772
7772
|
);
|
|
7773
|
-
const textSizes = _react.useMemo.call(void 0, () =>
|
|
7773
|
+
const textSizes = _react.useMemo.call(void 0, () => _chunkTILK7SC4cjs.resolveTextSizeConfig.call(void 0, "article"), []);
|
|
7774
7774
|
const componentOverrides = _react.useMemo.call(void 0,
|
|
7775
7775
|
() => buildRichEmbedOverrides({ ogApiBaseUrl, ogEndpointPath, textSizes }),
|
|
7776
7776
|
[ogApiBaseUrl, ogEndpointPath, textSizes]
|
|
7777
7777
|
);
|
|
7778
7778
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7779
|
-
|
|
7779
|
+
_chunkTILK7SC4cjs.MarkdownEngine,
|
|
7780
7780
|
{
|
|
7781
7781
|
content,
|
|
7782
7782
|
className,
|
|
@@ -7798,7 +7798,7 @@ var RichMarkdownRendererImpl = ({
|
|
|
7798
7798
|
className = "",
|
|
7799
7799
|
sectionIds,
|
|
7800
7800
|
onInternalLinkClick,
|
|
7801
|
-
brokenLinks =
|
|
7801
|
+
brokenLinks = _chunkTILK7SC4cjs.NO_BROKEN_LINKS,
|
|
7802
7802
|
currentPath,
|
|
7803
7803
|
resolveSource = "openframe-docs",
|
|
7804
7804
|
resolveLinkEndpointUrl = "/api/docs/resolve-link",
|
|
@@ -8566,22 +8566,32 @@ function NotFoundError({
|
|
|
8566
8566
|
// src/components/ui/filter-checkbox-item.tsx
|
|
8567
8567
|
|
|
8568
8568
|
|
|
8569
|
-
function FilterCheckboxItem({
|
|
8569
|
+
function FilterCheckboxItem({
|
|
8570
|
+
label,
|
|
8571
|
+
ariaLabel,
|
|
8572
|
+
checked,
|
|
8573
|
+
onChange,
|
|
8574
|
+
count,
|
|
8575
|
+
disabled,
|
|
8576
|
+
className
|
|
8577
|
+
}) {
|
|
8570
8578
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8571
8579
|
"div",
|
|
8572
8580
|
{
|
|
8573
8581
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
8574
8582
|
"flex items-center gap-3 border-b border-ods-border bg-ods-card last:border-b-0",
|
|
8575
|
-
"cursor-pointer transition-colors hover:bg-ods-bg-hover",
|
|
8583
|
+
disabled ? "cursor-wait opacity-70" : "cursor-pointer transition-colors hover:bg-ods-bg-hover",
|
|
8576
8584
|
count !== void 0 ? "px-4 py-3" : "p-3",
|
|
8577
8585
|
className
|
|
8578
8586
|
),
|
|
8579
|
-
onClick: () => onChange(!checked),
|
|
8587
|
+
onClick: () => !disabled && onChange(!checked),
|
|
8580
8588
|
children: [
|
|
8581
8589
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8582
8590
|
CheckboxPrimitive3.Root,
|
|
8583
8591
|
{
|
|
8584
8592
|
checked,
|
|
8593
|
+
disabled,
|
|
8594
|
+
"aria-label": _nullishCoalesce(ariaLabel, () => ( (typeof label === "string" ? label : void 0))),
|
|
8585
8595
|
onCheckedChange: (c) => onChange(c === true),
|
|
8586
8596
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
8587
8597
|
"h-6 w-6 shrink-0 rounded-[6px] border-2",
|
|
@@ -8592,7 +8602,7 @@ function FilterCheckboxItem({ label, checked, onChange, count, className }) {
|
|
|
8592
8602
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CheckboxPrimitive3.Indicator, { className: "flex items-center justify-center text-ods-text-on-accent", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZJCBIYRcjs.CheckboxCheckmarkIcon, { size: 10 }) })
|
|
8593
8603
|
}
|
|
8594
8604
|
),
|
|
8595
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-1 text-ods-text-primary text-h4", children: label }),
|
|
8605
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1 text-ods-text-primary text-h4", children: label }),
|
|
8596
8606
|
count !== void 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary text-h5", children: count.toLocaleString() })
|
|
8597
8607
|
]
|
|
8598
8608
|
}
|
|
@@ -8756,7 +8766,7 @@ function FilterModal({
|
|
|
8756
8766
|
const dateDefaultSort = _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _146 => _146.defaultSort]), () => ( "desc"));
|
|
8757
8767
|
const [draftDateSort, setDraftDateSort] = _react.useState.call(void 0, _nullishCoalesce(_optionalChain([dateFilter, 'optionalAccess', _147 => _147.sort]), () => ( dateDefaultSort)));
|
|
8758
8768
|
const [draftDateRange, setDraftDateRange] = _react.useState.call(void 0, _optionalChain([dateFilter, 'optionalAccess', _148 => _148.range]));
|
|
8759
|
-
const { scrollRef, fadeTop, fadeBottom, update: updateFade } =
|
|
8769
|
+
const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkTILK7SC4cjs.useScrollFade.call(void 0, );
|
|
8760
8770
|
const seedKey = `${JSON.stringify(currentFilters)}|${JSON.stringify(_nullishCoalesce(selectedTags, () => ( [])))}`;
|
|
8761
8771
|
const seedSourceRef = _react.useRef.call(void 0, { currentFilters, selectedTags, dateFilter, dateDefaultSort });
|
|
8762
8772
|
_react.useEffect.call(void 0, () => {
|
|
@@ -8802,15 +8812,15 @@ function FilterModal({
|
|
|
8802
8812
|
const hasTagFilter = !!tagFilterKeys && tagFilterKeys.length > 0 && !!onTagsChange;
|
|
8803
8813
|
const isEmpty = !isLoading && !hasSort && !hasFilterGroups && !hasTagFilter && !dateFilter;
|
|
8804
8814
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8805
|
-
|
|
8815
|
+
_chunkYRULLK7Ncjs.Modal,
|
|
8806
8816
|
{
|
|
8807
8817
|
isOpen,
|
|
8808
8818
|
onClose,
|
|
8809
8819
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "max-h-[90vh] max-w-none md:max-w-[min(42rem,calc(100vw-2rem))]", className),
|
|
8810
8820
|
children: [
|
|
8811
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8821
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: title }) }),
|
|
8812
8822
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8813
|
-
|
|
8823
|
+
_chunkYRULLK7Ncjs.ModalContent,
|
|
8814
8824
|
{
|
|
8815
8825
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
8816
8826
|
"flex min-h-0 flex-1 flex-col",
|
|
@@ -8902,12 +8912,12 @@ function FilterModal({
|
|
|
8902
8912
|
] })
|
|
8903
8913
|
}
|
|
8904
8914
|
),
|
|
8905
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8906
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8915
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
|
|
8916
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
|
|
8907
8917
|
] })
|
|
8908
8918
|
}
|
|
8909
8919
|
),
|
|
8910
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8920
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
|
|
8911
8921
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", className: "h-11 flex-1", onClick: handleReset, children: resetButtonText }),
|
|
8912
8922
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "accent", className: "h-11 flex-1", onClick: handleApply, children: applyButtonText })
|
|
8913
8923
|
] })
|
|
@@ -8969,7 +8979,7 @@ function renderAdvancedPageContainer({
|
|
|
8969
8979
|
};
|
|
8970
8980
|
const renderActions = () => {
|
|
8971
8981
|
if (!actions || actions.length === 0) return null;
|
|
8972
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8982
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.PageActions, { variant: getActionsVariant(), actions, menuActions });
|
|
8973
8983
|
};
|
|
8974
8984
|
const needsBottomPadding = actions && actions.length > 0 && getActionsVariant() === "primary-buttons";
|
|
8975
8985
|
const paddingClasses = {
|
|
@@ -8992,14 +9002,14 @@ function renderAdvancedPageContainer({
|
|
|
8992
9002
|
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: [
|
|
8993
9003
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
8994
9004
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8995
|
-
|
|
9005
|
+
_chunkU6XWGK53cjs.BackButton,
|
|
8996
9006
|
{
|
|
8997
9007
|
onClick: backButton.onClick,
|
|
8998
9008
|
label: backButton.label,
|
|
8999
9009
|
className: "hidden content-md:inline-flex"
|
|
9000
9010
|
}
|
|
9001
9011
|
),
|
|
9002
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9012
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
9003
9013
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
9004
9014
|
] }),
|
|
9005
9015
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-2", children: [
|
|
@@ -9012,14 +9022,14 @@ function renderAdvancedPageContainer({
|
|
|
9012
9022
|
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: [
|
|
9013
9023
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
9014
9024
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9015
|
-
|
|
9025
|
+
_chunkU6XWGK53cjs.BackButton,
|
|
9016
9026
|
{
|
|
9017
9027
|
onClick: backButton.onClick,
|
|
9018
9028
|
label: backButton.label,
|
|
9019
9029
|
className: "hidden content-md:inline-flex"
|
|
9020
9030
|
}
|
|
9021
9031
|
),
|
|
9022
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9032
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
9023
9033
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
9024
9034
|
] }),
|
|
9025
9035
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-3", children: [
|
|
@@ -9032,14 +9042,14 @@ function renderAdvancedPageContainer({
|
|
|
9032
9042
|
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: [
|
|
9033
9043
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-2", children: [
|
|
9034
9044
|
backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9035
|
-
|
|
9045
|
+
_chunkU6XWGK53cjs.BackButton,
|
|
9036
9046
|
{
|
|
9037
9047
|
onClick: backButton.onClick,
|
|
9038
9048
|
label: backButton.label,
|
|
9039
9049
|
className: "hidden content-md:inline-flex"
|
|
9040
9050
|
}
|
|
9041
9051
|
),
|
|
9042
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9052
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) })
|
|
9043
9053
|
] }),
|
|
9044
9054
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-4", children: [
|
|
9045
9055
|
headerActions,
|
|
@@ -9049,7 +9059,7 @@ function renderAdvancedPageContainer({
|
|
|
9049
9059
|
}
|
|
9050
9060
|
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: [
|
|
9051
9061
|
(title || subtitle) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
9052
|
-
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children:
|
|
9062
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: "text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
9053
9063
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-secondary text-h6", children: subtitle })
|
|
9054
9064
|
] }),
|
|
9055
9065
|
(headerActions || actions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-3", children: [
|
|
@@ -9382,7 +9392,7 @@ var BenefitCardGrid = ({ children, className = "", columns = 2 }) => {
|
|
|
9382
9392
|
|
|
9383
9393
|
|
|
9384
9394
|
function PlatformBrowseButton({ item }) {
|
|
9385
|
-
const linkProps =
|
|
9395
|
+
const linkProps = _chunkTILK7SC4cjs.useNavLinkViaRuntime.call(void 0, { href: item.link, targetPlatform: item.targetPlatform });
|
|
9386
9396
|
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: [
|
|
9387
9397
|
"Browse ",
|
|
9388
9398
|
item.buttonText
|
|
@@ -9685,7 +9695,7 @@ function DashboardInfoCard({
|
|
|
9685
9695
|
const asTag = percentageDisplay === "tag" || percentageDisplay === "auto" && (progressVariant === "warning" || progressVariant === "error");
|
|
9686
9696
|
if (asTag) {
|
|
9687
9697
|
const tagVariant = progressVariant === "warning" || progressVariant === "error" ? progressVariant : progressVariant === "success" ? "success" : "grey";
|
|
9688
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9698
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { variant: tagVariant, label: `${percentage}%` });
|
|
9689
9699
|
}
|
|
9690
9700
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: [
|
|
9691
9701
|
"(",
|
|
@@ -9743,7 +9753,7 @@ function DashboardInfoCard({
|
|
|
9743
9753
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk3ATAYP36cjs.cn.call(void 0, "truncate text-ods-text-primary text-h3 content-md:text-h2", valueClassName), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "block h-[1lh] w-24 animate-pulse rounded bg-ods-border" }) : formattedValue }),
|
|
9744
9754
|
subValue && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: subValue }),
|
|
9745
9755
|
renderPercentage(),
|
|
9746
|
-
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9756
|
+
tooltip && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.FloatingTooltip, { content: tooltip, side: "top", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "cursor-help text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFO6DOP6Mcjs.QuestionCircleIcon, { size: 20 }) }) })
|
|
9747
9757
|
] }),
|
|
9748
9758
|
caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "line-clamp-2 min-h-[2lh] text-ods-text-secondary text-h6", children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "block h-[1lh] w-32 animate-pulse rounded bg-ods-border" }) : caption })
|
|
9749
9759
|
] }),
|
|
@@ -9830,10 +9840,10 @@ var OSTypeBadge = ({
|
|
|
9830
9840
|
if (!osType) {
|
|
9831
9841
|
return labelOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "text-ods-text-secondary", className), children: "Unknown" }) : null;
|
|
9832
9842
|
}
|
|
9833
|
-
const normalized =
|
|
9843
|
+
const normalized = _chunkGSFANY2Lcjs.normalizeOSType.call(void 0, osType);
|
|
9834
9844
|
if (!normalized && !labelOnly) return null;
|
|
9835
|
-
const label =
|
|
9836
|
-
const IconComponent =
|
|
9845
|
+
const label = _chunkGSFANY2Lcjs.getOSLabel.call(void 0, osType);
|
|
9846
|
+
const IconComponent = _chunkGSFANY2Lcjs.getOSIcon.call(void 0, osType);
|
|
9837
9847
|
if (iconOnly && IconComponent) {
|
|
9838
9848
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: _chunk3ATAYP36cjs.cn.call(void 0, iconSize, "text-ods-text-secondary", className) });
|
|
9839
9849
|
}
|
|
@@ -9870,7 +9880,7 @@ function DeviceCard({
|
|
|
9870
9880
|
}) {
|
|
9871
9881
|
const formatLastSeen = (lastSeen) => {
|
|
9872
9882
|
if (!lastSeen) return null;
|
|
9873
|
-
return
|
|
9883
|
+
return _chunkJHQNUWFMcjs.formatDateTimeYmd.call(void 0, lastSeen, null) || null;
|
|
9874
9884
|
};
|
|
9875
9885
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9876
9886
|
"div",
|
|
@@ -9929,7 +9939,7 @@ function DeviceCard({
|
|
|
9929
9939
|
] }),
|
|
9930
9940
|
(statusTag || device.lastSeen) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2", children: [
|
|
9931
9941
|
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9932
|
-
|
|
9942
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
9933
9943
|
{
|
|
9934
9944
|
variant: statusTag.variant,
|
|
9935
9945
|
icon: statusTag.icon,
|
|
@@ -9943,7 +9953,7 @@ function DeviceCard({
|
|
|
9943
9953
|
formatLastSeen(device.lastSeen)
|
|
9944
9954
|
] })
|
|
9945
9955
|
] }),
|
|
9946
|
-
device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9956
|
+
device.tags && device.tags.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full flex-wrap items-center gap-2", children: device.tags.map((tag, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { variant: "outline", label: tag }, index)) })
|
|
9947
9957
|
]
|
|
9948
9958
|
}
|
|
9949
9959
|
);
|
|
@@ -9982,7 +9992,7 @@ function DataAttribution({ icon, source, lastUpdated, action }) {
|
|
|
9982
9992
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Separator3, {}),
|
|
9983
9993
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
9984
9994
|
"Last updated: ",
|
|
9985
|
-
lastUpdated ?
|
|
9995
|
+
lastUpdated ? _chunkJHQNUWFMcjs.formatDate.call(void 0, lastUpdated) : "Never"
|
|
9986
9996
|
] }),
|
|
9987
9997
|
action ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex content-sm:pl-[var(--spacing-system-xs)]", children: action }) : null
|
|
9988
9998
|
] });
|
|
@@ -10065,7 +10075,7 @@ function ComplianceLogo({
|
|
|
10065
10075
|
fallback = null,
|
|
10066
10076
|
className
|
|
10067
10077
|
}) {
|
|
10068
|
-
const standard =
|
|
10078
|
+
const standard = _chunkGSFANY2Lcjs.complianceStandardForName.call(void 0, ...names);
|
|
10069
10079
|
if (!standard) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: fallback });
|
|
10070
10080
|
const Official = standard.logo ? COMPLIANCE_LOGOS[standard.logo] : null;
|
|
10071
10081
|
return Official ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10146,7 +10156,7 @@ function FeatureCardGrid({
|
|
|
10146
10156
|
if (allCardsHaveNoBorders) {
|
|
10147
10157
|
finalCardClassName = "bg-transparent p-0 overflow-visible border-0 shadow-none rounded-none";
|
|
10148
10158
|
}
|
|
10149
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10159
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.Card, { className: `${finalCardClassName} ${className}`, children: Array.from({ length: rows }, (_, rowIndex) => {
|
|
10150
10160
|
const startIndex = rowIndex * itemsPerRow;
|
|
10151
10161
|
const rowItems = items.slice(startIndex, startIndex + itemsPerRow);
|
|
10152
10162
|
const isLastRow = rowIndex === rows - 1;
|
|
@@ -10180,7 +10190,7 @@ function FeatureCardGrid({
|
|
|
10180
10190
|
item.icon && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start justify-between", children: [
|
|
10181
10191
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, item.icon, { size: 80, color: item.iconColor }),
|
|
10182
10192
|
item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10183
|
-
|
|
10193
|
+
_chunk2ZVNXD74cjs.StatusBadge,
|
|
10184
10194
|
{
|
|
10185
10195
|
text: item.badge.text,
|
|
10186
10196
|
variant: item.badge.variant || "card",
|
|
@@ -10189,7 +10199,7 @@ function FeatureCardGrid({
|
|
|
10189
10199
|
)
|
|
10190
10200
|
] }),
|
|
10191
10201
|
!item.icon && item.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-start justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10192
|
-
|
|
10202
|
+
_chunk2ZVNXD74cjs.StatusBadge,
|
|
10193
10203
|
{
|
|
10194
10204
|
text: item.badge.text,
|
|
10195
10205
|
variant: item.badge.variant || "card",
|
|
@@ -10345,7 +10355,7 @@ function FeatureList({
|
|
|
10345
10355
|
|
|
10346
10356
|
function SourceTooltip({ intro, sources, note, iconClassName, triggerAnchorProps }) {
|
|
10347
10357
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10348
|
-
|
|
10358
|
+
_chunkJHQNUWFMcjs.FloatingTooltip,
|
|
10349
10359
|
{
|
|
10350
10360
|
as: "span",
|
|
10351
10361
|
side: "top",
|
|
@@ -10750,7 +10760,7 @@ function OrganizationCard({
|
|
|
10750
10760
|
}
|
|
10751
10761
|
),
|
|
10752
10762
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start gap-3", children: [
|
|
10753
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10763
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.EntityImage, { src: fetchedImageUrl || organization.imageUrl, alt: organization.name }),
|
|
10754
10764
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center py-2", children: [
|
|
10755
10765
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "truncate text-ods-text-primary transition-colors text-h3", title: organization.name, children: organization.name }),
|
|
10756
10766
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10800,8 +10810,8 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
|
|
|
10800
10810
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
10801
10811
|
/* @__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 }),
|
|
10802
10812
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0", children: [
|
|
10803
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10804
|
-
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10813
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h3", children: title }),
|
|
10814
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: subtitle })
|
|
10805
10815
|
] })
|
|
10806
10816
|
] }),
|
|
10807
10817
|
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 })
|
|
@@ -10834,7 +10844,7 @@ function ServiceCardRowItem({ row }) {
|
|
|
10834
10844
|
),
|
|
10835
10845
|
children: [
|
|
10836
10846
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10837
|
-
|
|
10847
|
+
_chunkJHQNUWFMcjs.FloatingTooltip,
|
|
10838
10848
|
{
|
|
10839
10849
|
content: row.value,
|
|
10840
10850
|
side: "top",
|
|
@@ -10932,17 +10942,17 @@ function PersonCell({
|
|
|
10932
10942
|
const displayName = name || fallbackName;
|
|
10933
10943
|
const scale = PERSON_CELL_SIZE[size];
|
|
10934
10944
|
const row = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `group/person-cell flex min-w-0 items-center ${scale.gap}`, children: [
|
|
10935
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10945
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { size: scale.avatar, src: _nullishCoalesce(avatarUrl, () => ( void 0)), alt: displayName, fallback: displayName }),
|
|
10936
10946
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
10937
10947
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10938
|
-
|
|
10948
|
+
_chunkU6XWGK53cjs.TruncateText,
|
|
10939
10949
|
{
|
|
10940
10950
|
variant: scale.primary,
|
|
10941
10951
|
className: onClick ? "text-ods-accent group-hover/person-cell:underline" : void 0,
|
|
10942
10952
|
children: displayName
|
|
10943
10953
|
}
|
|
10944
10954
|
),
|
|
10945
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10955
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: secondary === void 0 ? "\xA0" : secondary || "\xB7" })
|
|
10946
10956
|
] })
|
|
10947
10957
|
] });
|
|
10948
10958
|
if (!onClick) return row;
|
|
@@ -10972,9 +10982,9 @@ function PeopleCell({ people, fallbackName = "Unassigned" }) {
|
|
|
10972
10982
|
);
|
|
10973
10983
|
}
|
|
10974
10984
|
const fullNames = people.map((p) => p.name || "Unknown").join(", ");
|
|
10975
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10985
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.FloatingTooltip, { content: fullNames, triggerClassName: "min-w-0 max-w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
10976
10986
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10977
|
-
|
|
10987
|
+
_chunkL2IQESTQcjs.AvatarStack,
|
|
10978
10988
|
{
|
|
10979
10989
|
size: "sm",
|
|
10980
10990
|
slots: PEOPLE_CELL_STACK_SLOTS,
|
|
@@ -10982,7 +10992,7 @@ function PeopleCell({ people, fallbackName = "Unassigned" }) {
|
|
|
10982
10992
|
}
|
|
10983
10993
|
) }),
|
|
10984
10994
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "line-clamp-2 min-w-0 flex-1 break-words text-ods-text-primary text-h6", children: [
|
|
10985
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": true, children: people.map((p) =>
|
|
10995
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": true, children: people.map((p) => _chunkJHQNUWFMcjs.personFirstName.call(void 0, p.name, "Unknown")).join(" & ") }),
|
|
10986
10996
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: fullNames })
|
|
10987
10997
|
] })
|
|
10988
10998
|
] }) });
|
|
@@ -11682,7 +11692,7 @@ function TableHeader({
|
|
|
11682
11692
|
onFilterChange
|
|
11683
11693
|
}
|
|
11684
11694
|
),
|
|
11685
|
-
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11695
|
+
column.hint ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSFANY2Lcjs.InfoHint, { label: column.label, children: column.hint }) : null
|
|
11686
11696
|
] })
|
|
11687
11697
|
) : (
|
|
11688
11698
|
/* Non-filterable column — regular label with optional sort */
|
|
@@ -11708,7 +11718,7 @@ function TableHeader({
|
|
|
11708
11718
|
hint exists, so a hint-less header keeps its DOM. */
|
|
11709
11719
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
11710
11720
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
11711
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11721
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSFANY2Lcjs.InfoHint, { label: column.label, children: column.hint })
|
|
11712
11722
|
] })
|
|
11713
11723
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TABLE_HEADER_LABEL_CLASS, children: column.label }),
|
|
11714
11724
|
getSortIcon(column)
|
|
@@ -12233,7 +12243,7 @@ function Table({
|
|
|
12233
12243
|
}
|
|
12234
12244
|
),
|
|
12235
12245
|
!infiniteScroll && pagePagination && !cursorPagination && data.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mt-2 border-t border-ods-border pt-3", paginationClassName), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12236
|
-
|
|
12246
|
+
_chunkOWABNVDVcjs.Pagination,
|
|
12237
12247
|
{
|
|
12238
12248
|
currentPage: pagePagination.currentPage,
|
|
12239
12249
|
totalPages: pagePagination.totalPages,
|
|
@@ -12266,7 +12276,7 @@ function TableDescriptionCell({ text, className, maxLines = 3 }) {
|
|
|
12266
12276
|
|
|
12267
12277
|
// src/components/ui/table/table-timestamp-cell.tsx
|
|
12268
12278
|
|
|
12269
|
-
var formatLocalTimestamp = (date) =>
|
|
12279
|
+
var formatLocalTimestamp = (date) => _chunkJHQNUWFMcjs.formatDateWithTimezone.call(void 0, date, _chunkJHQNUWFMcjs.VIEWER_TIMEZONE, "localeDateTime", { viewerLocale: true });
|
|
12270
12280
|
function formatTimestampValue(timestamp) {
|
|
12271
12281
|
if (timestamp instanceof Date) {
|
|
12272
12282
|
return formatLocalTimestamp(timestamp);
|
|
@@ -13049,7 +13059,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13049
13059
|
// child of the cell.
|
|
13050
13060
|
_optionalChain([meta, 'optionalAccess', _234 => _234.hint]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13051
13061
|
filterTrigger,
|
|
13052
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13062
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSFANY2Lcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13053
13063
|
] }) : filterTrigger
|
|
13054
13064
|
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13055
13065
|
"div",
|
|
@@ -13074,7 +13084,7 @@ function HeaderCell({ header, sort, onSortChange }) {
|
|
|
13074
13084
|
// centred on the row.
|
|
13075
13085
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-start gap-[var(--spacing-system-xxs)]", children: [
|
|
13076
13086
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13077
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13087
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSFANY2Lcjs.InfoHint, { label: resolveHeaderLabel(header), children: meta.hint })
|
|
13078
13088
|
] })
|
|
13079
13089
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
13080
13090
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -13293,7 +13303,7 @@ function PhoneInput({
|
|
|
13293
13303
|
placeholder = "Phone Number (optional)",
|
|
13294
13304
|
onKeyDown
|
|
13295
13305
|
}) {
|
|
13296
|
-
const { priority, others } = _react.useMemo.call(void 0, () =>
|
|
13306
|
+
const { priority, others } = _react.useMemo.call(void 0, () => _chunkGSFANY2Lcjs.getCountryPhoneData.call(void 0, ), []);
|
|
13297
13307
|
const selectedCountry = _react.useMemo.call(void 0,
|
|
13298
13308
|
() => [...priority, ...others].find((c) => c.code === countryCode),
|
|
13299
13309
|
[countryCode, priority, others]
|
|
@@ -13308,7 +13318,7 @@ function PhoneInput({
|
|
|
13308
13318
|
_optionalChain([onValidationChange, 'optionalCall', _247 => _247(false)]);
|
|
13309
13319
|
return;
|
|
13310
13320
|
}
|
|
13311
|
-
const invalid = !
|
|
13321
|
+
const invalid = !_chunkGSFANY2Lcjs.validatePhoneNumber.call(void 0, phone, countryCode);
|
|
13312
13322
|
setIsInvalid(invalid);
|
|
13313
13323
|
_optionalChain([onValidationChange, 'optionalCall', _248 => _248(invalid)]);
|
|
13314
13324
|
},
|
|
@@ -13328,7 +13338,7 @@ function PhoneInput({
|
|
|
13328
13338
|
}, []);
|
|
13329
13339
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 gap-2", children: [
|
|
13330
13340
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13331
|
-
|
|
13341
|
+
_chunkU6XWGK53cjs.Select,
|
|
13332
13342
|
{
|
|
13333
13343
|
value: countryCode,
|
|
13334
13344
|
onValueChange: (val) => {
|
|
@@ -13339,14 +13349,14 @@ function PhoneInput({
|
|
|
13339
13349
|
},
|
|
13340
13350
|
disabled,
|
|
13341
13351
|
children: [
|
|
13342
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13352
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "w-[130px] shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { children: selectedCountry && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5", children: [
|
|
13343
13353
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.flag }),
|
|
13344
13354
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: selectedCountry.dialCode })
|
|
13345
13355
|
] }) }) }),
|
|
13346
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13347
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13348
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13349
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13356
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.SelectContent, { className: "max-h-[300px] !w-[280px]", children: [
|
|
13357
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectGroup, { children: priority.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) }),
|
|
13358
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectSeparator, {}),
|
|
13359
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectGroup, { children: others.map((country) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CountryOption, { country }, country.code)) })
|
|
13350
13360
|
] })
|
|
13351
13361
|
]
|
|
13352
13362
|
}
|
|
@@ -13378,7 +13388,7 @@ function PhoneInput({
|
|
|
13378
13388
|
] });
|
|
13379
13389
|
}
|
|
13380
13390
|
function CountryOption({ country }) {
|
|
13381
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13391
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: country.code, textValue: country.name, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2", children: [
|
|
13382
13392
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: country.flag }),
|
|
13383
13393
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary", children: country.dialCode }),
|
|
13384
13394
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-block max-w-[140px] overflow-hidden text-ellipsis whitespace-nowrap", children: country.name })
|
|
@@ -13661,7 +13671,7 @@ function SearchInput({
|
|
|
13661
13671
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-shrink-0 text-ods-text-secondary transition-colors duration-200 group-has-[:focus]:text-ods-accent [&_svg]:size-4 content-md:[&_svg]:size-6", children: startAdornment !== void 0 ? startAdornment : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, {}) }),
|
|
13662
13672
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden", children: [
|
|
13663
13673
|
visibleChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13664
|
-
|
|
13674
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
13665
13675
|
{
|
|
13666
13676
|
variant: chipVariantToTagVariant(chip.variant),
|
|
13667
13677
|
label: chip.label,
|
|
@@ -13757,7 +13767,7 @@ function SearchInput({
|
|
|
13757
13767
|
)
|
|
13758
13768
|
] }),
|
|
13759
13769
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13760
|
-
|
|
13770
|
+
_chunkU6XWGK53cjs.HiddenTagsPopup,
|
|
13761
13771
|
{
|
|
13762
13772
|
ref: hiddenTagsPopupRef,
|
|
13763
13773
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
@@ -13777,7 +13787,7 @@ function SearchInput({
|
|
|
13777
13787
|
}
|
|
13778
13788
|
),
|
|
13779
13789
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: measureRef, "aria-hidden": "true", className: "pointer-events-none fixed -left-[9999px] top-0 flex gap-2", children: filterChips.map((chip) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13780
|
-
|
|
13790
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
13781
13791
|
{
|
|
13782
13792
|
variant: chipVariantToTagVariant(chip.variant),
|
|
13783
13793
|
label: chip.label,
|
|
@@ -13990,7 +14000,7 @@ function TagSearchInput({
|
|
|
13990
14000
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, { className: "size-4 text-ods-text-secondary content-md:size-6" }) }),
|
|
13991
14001
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: middleRef, className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2", children: [
|
|
13992
14002
|
visibleTags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13993
|
-
|
|
14003
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
13994
14004
|
{
|
|
13995
14005
|
variant: "outline",
|
|
13996
14006
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -14051,7 +14061,7 @@ function TagSearchInput({
|
|
|
14051
14061
|
}
|
|
14052
14062
|
),
|
|
14053
14063
|
showHiddenTags && hiddenCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14054
|
-
|
|
14064
|
+
_chunkU6XWGK53cjs.HiddenTagsPopup,
|
|
14055
14065
|
{
|
|
14056
14066
|
ref: hiddenTagsPopupRef,
|
|
14057
14067
|
items: hiddenTags,
|
|
@@ -14078,7 +14088,7 @@ function TagSearchInput({
|
|
|
14078
14088
|
"aria-hidden": "true",
|
|
14079
14089
|
className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
|
|
14080
14090
|
children: tags.map((tag) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14081
|
-
|
|
14091
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
14082
14092
|
{
|
|
14083
14093
|
variant: "outline",
|
|
14084
14094
|
label: renderTag ? renderTag(tag) : tag.label,
|
|
@@ -14141,8 +14151,8 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14141
14151
|
if (!trimmedUrl) return;
|
|
14142
14152
|
onSubmit({ text: text.trim(), url: trimmedUrl, rel });
|
|
14143
14153
|
};
|
|
14144
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14145
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14154
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose, className: "text-left md:max-w-[560px]", children: [
|
|
14155
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: editing ? "Edit link" : "Add link" }) }),
|
|
14146
14156
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14147
14157
|
"form",
|
|
14148
14158
|
{
|
|
@@ -14167,7 +14177,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14167
14177
|
),
|
|
14168
14178
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)]", children: [
|
|
14169
14179
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14170
|
-
|
|
14180
|
+
_chunkTILK7SC4cjs.TabSelector,
|
|
14171
14181
|
{
|
|
14172
14182
|
label: "Search engines",
|
|
14173
14183
|
value: choice,
|
|
@@ -14184,7 +14194,7 @@ function MarkdownLinkDialog({ isOpen, initial, editing, onSubmit, onRemove, onCl
|
|
|
14184
14194
|
]
|
|
14185
14195
|
}
|
|
14186
14196
|
),
|
|
14187
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14197
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
|
|
14188
14198
|
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" }),
|
|
14189
14199
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "submit", form: formId, variant: "accent", disabled: !trimmedUrl, className: "flex-1", children: editing ? "Save" : "Add link" })
|
|
14190
14200
|
] })
|
|
@@ -14224,7 +14234,7 @@ function useMarkdownLinkCommand() {
|
|
|
14224
14234
|
buttonProps: { "aria-label": "Add or edit a link (ctrl + l)", title: "Add or edit a link (ctrl + l)" },
|
|
14225
14235
|
icon: command.icon,
|
|
14226
14236
|
execute: (state, api) => {
|
|
14227
|
-
const existing =
|
|
14237
|
+
const existing = _chunkTILK7SC4cjs.findMarkdownLinkAt.call(void 0, state.text, state.selection.start, state.selection.end);
|
|
14228
14238
|
setPending(
|
|
14229
14239
|
existing ? {
|
|
14230
14240
|
api,
|
|
@@ -14255,7 +14265,7 @@ function useMarkdownLinkCommand() {
|
|
|
14255
14265
|
initial: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _305 => _305.initial]), () => ( EMPTY_LINK)),
|
|
14256
14266
|
editing: _nullishCoalesce(_optionalChain([pending, 'optionalAccess', _306 => _306.editing]), () => ( false)),
|
|
14257
14267
|
onSubmit: (link) => {
|
|
14258
|
-
if (pending) write(pending,
|
|
14268
|
+
if (pending) write(pending, _chunkTILK7SC4cjs.formatMarkdownLink.call(void 0, link));
|
|
14259
14269
|
},
|
|
14260
14270
|
onRemove: () => {
|
|
14261
14271
|
if (pending) write(pending, pending.initial.text);
|
|
@@ -14407,7 +14417,7 @@ function MarkdownEditor({
|
|
|
14407
14417
|
setUploadProgress(`Uploading ${file.name}...`);
|
|
14408
14418
|
try {
|
|
14409
14419
|
const url = await onUploadFile(file);
|
|
14410
|
-
const isImage =
|
|
14420
|
+
const isImage = _chunk2ZVNXD74cjs.fileMediaType.call(void 0, file) === "image";
|
|
14411
14421
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
14412
14422
|
insertTextAtCursor(markdown);
|
|
14413
14423
|
_optionalChain([onFileUploaded, 'optionalCall', _309 => _309(url, file.name)]);
|
|
@@ -14537,7 +14547,7 @@ function MarkdownEditor({
|
|
|
14537
14547
|
type: "file",
|
|
14538
14548
|
className: "hidden",
|
|
14539
14549
|
onChange: handleFileInputChange,
|
|
14540
|
-
accept: `${
|
|
14550
|
+
accept: `${_chunk2ZVNXD74cjs.IMAGE_FILE_ACCEPT},.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.zip,.txt`
|
|
14541
14551
|
}
|
|
14542
14552
|
),
|
|
14543
14553
|
!MDEditor && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-64 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin" }) }),
|
|
@@ -14939,7 +14949,7 @@ function matchesAccept2(file, accept) {
|
|
|
14939
14949
|
return patterns.some((pattern) => {
|
|
14940
14950
|
if (pattern.startsWith(".")) return fileName.endsWith(pattern);
|
|
14941
14951
|
if (pattern.endsWith("/*"))
|
|
14942
|
-
return fileType.startsWith(pattern.slice(0, -1)) ||
|
|
14952
|
+
return fileType.startsWith(pattern.slice(0, -1)) || _chunk2ZVNXD74cjs.fileMediaType.call(void 0, file) === pattern.slice(0, -2);
|
|
14943
14953
|
return fileType === pattern;
|
|
14944
14954
|
});
|
|
14945
14955
|
}
|
|
@@ -14947,7 +14957,7 @@ function ImageUploader({
|
|
|
14947
14957
|
value,
|
|
14948
14958
|
onChange,
|
|
14949
14959
|
onRemove,
|
|
14950
|
-
accept =
|
|
14960
|
+
accept = _chunk2ZVNXD74cjs.IMAGE_FILE_ACCEPT,
|
|
14951
14961
|
maxSize = DEFAULT_MAX_SIZE,
|
|
14952
14962
|
label = "Cover Image",
|
|
14953
14963
|
description = "(Click Here or Drag and Drop)",
|
|
@@ -15184,13 +15194,13 @@ function ColorPresetSelect({
|
|
|
15184
15194
|
...presets.map((p) => ({
|
|
15185
15195
|
id: p.key,
|
|
15186
15196
|
label: p.label,
|
|
15187
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15197
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ColorSwatch, { color: p.color }),
|
|
15188
15198
|
onClick: () => onChange({ color: p.color, preset: p.key })
|
|
15189
15199
|
})),
|
|
15190
15200
|
{
|
|
15191
15201
|
id: CUSTOM_PRESET_KEY,
|
|
15192
15202
|
label: "Custom",
|
|
15193
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15203
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ColorSwatch, { color: isCustom ? value : DEFAULT_CUSTOM_STATUS_COLOR }),
|
|
15194
15204
|
onClick: () => onChange({ color: value, preset: void 0 })
|
|
15195
15205
|
}
|
|
15196
15206
|
]
|
|
@@ -15207,7 +15217,7 @@ function ColorPresetSelect({
|
|
|
15207
15217
|
{
|
|
15208
15218
|
disabled,
|
|
15209
15219
|
"aria-label": `Color: ${displayLabel}`,
|
|
15210
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15220
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ColorSwatch, { color: displayColor }),
|
|
15211
15221
|
selectedLabel: displayLabel,
|
|
15212
15222
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15213
15223
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -15339,7 +15349,7 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
15339
15349
|
{
|
|
15340
15350
|
disabled,
|
|
15341
15351
|
"aria-label": "Pick custom color",
|
|
15342
|
-
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15352
|
+
startIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ColorSwatch, { color: value }),
|
|
15343
15353
|
selectedLabel: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "uppercase", children: value }),
|
|
15344
15354
|
endIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TriggerChevron, {}),
|
|
15345
15355
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "group", className)
|
|
@@ -15412,7 +15422,7 @@ function TicketStatusConfigRow({
|
|
|
15412
15422
|
const previewVariant = _nullishCoalesce(systemTagVariant, () => ( (isSystem ? void 0 : "primary")));
|
|
15413
15423
|
const fieldRowOffset = "mt-[calc(var(--font-line-space-h4-body)+0.25rem)]";
|
|
15414
15424
|
const chip = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15415
|
-
|
|
15425
|
+
_chunkPSIKUDUVcjs.TicketStatusTag,
|
|
15416
15426
|
{
|
|
15417
15427
|
status: statusKey,
|
|
15418
15428
|
label: name || " ",
|
|
@@ -15519,7 +15529,7 @@ function TicketStatusConfigRow({
|
|
|
15519
15529
|
),
|
|
15520
15530
|
children: [
|
|
15521
15531
|
!isSystem && moveButtons,
|
|
15522
|
-
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,
|
|
15532
|
+
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, _chunkHNLI4OU5cjs.TouchFriendlyTooltip, { content: systemTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15523
15533
|
"button",
|
|
15524
15534
|
{
|
|
15525
15535
|
type: "button",
|
|
@@ -15527,7 +15537,7 @@ function TicketStatusConfigRow({
|
|
|
15527
15537
|
className: "flex size-6 items-center justify-center text-ods-text-secondary outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
15528
15538
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRHC2FRVEcjs.InfoCircleIcon, { size: 24 })
|
|
15529
15539
|
}
|
|
15530
|
-
) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15540
|
+
) }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHNLI4OU5cjs.TouchFriendlyTooltip, { content: deleteDisabled ? deleteDisabledReason : void 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15531
15541
|
_chunk2QMBXGMQcjs.Button,
|
|
15532
15542
|
{
|
|
15533
15543
|
type: "button",
|
|
@@ -15564,7 +15574,7 @@ function formatTestRunDuration(ms) {
|
|
|
15564
15574
|
var RESULT_COLUMN_MIN_WIDTH = 176;
|
|
15565
15575
|
var SKELETON_COLUMNS = 6;
|
|
15566
15576
|
function TestResultsSkeleton() {
|
|
15567
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15577
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.ScrollShadow, { axis: "horizontal", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-max min-w-full flex-col", children: [
|
|
15568
15578
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)]", children: Array.from({ length: SKELETON_COLUMNS }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-[160px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-3/4 animate-pulse rounded-sm bg-ods-bg-surface" }) }, `skeleton-header-${i}`)) }),
|
|
15569
15579
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "animate-pulse overflow-hidden rounded-[6px] border border-ods-border bg-ods-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[66px] items-center gap-[var(--spacing-system-mf)] px-[var(--spacing-system-mf)] 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, "div", { className: "h-5 w-3/4 rounded-sm bg-ods-bg-surface" }) }, `skeleton-cell-${i}`)) }) })
|
|
15570
15580
|
] }) });
|
|
@@ -15599,7 +15609,7 @@ function TestResultsTable({ rows, loading }) {
|
|
|
15599
15609
|
if (loading) {
|
|
15600
15610
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TestResultsSkeleton, {});
|
|
15601
15611
|
}
|
|
15602
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15612
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.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: [
|
|
15603
15613
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Header, { className: "flex flex-col" }),
|
|
15604
15614
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.Body, { loading: false })
|
|
15605
15615
|
] }) }) });
|
|
@@ -15661,7 +15671,7 @@ var TEST_RUN_STATUS_TAGS = {
|
|
|
15661
15671
|
function TestRunStatusStat({ status, className }) {
|
|
15662
15672
|
const tag = status === "idle" ? null : TEST_RUN_STATUS_TAGS[status];
|
|
15663
15673
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-w-0 flex-col items-start justify-center gap-[var(--spacing-system-xxs)]", className), children: [
|
|
15664
|
-
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15674
|
+
tag ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: tag.label, variant: tag.variant, className: "pointer-events-none" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: "-" }),
|
|
15665
15675
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: "Status" })
|
|
15666
15676
|
] });
|
|
15667
15677
|
}
|
|
@@ -15705,7 +15715,7 @@ function useTestRunState(campaign) {
|
|
|
15705
15715
|
const stopReason = _nullishCoalesce(campaign.stopReason, () => ( "completed"));
|
|
15706
15716
|
const status = isActive ? "running" : hasRun && isFinished ? stopReason === "completed" ? firstError ? "error" : "success" : stopReason : "idle";
|
|
15707
15717
|
const showTiming = hasRun && campaign.startedAt !== null && (campaign.isRunning || isFinished);
|
|
15708
|
-
const startedLabel = showTiming && campaign.startedAt ?
|
|
15718
|
+
const startedLabel = showTiming && campaign.startedAt ? _chunkYRULLK7Ncjs.formatTime.call(void 0, campaign.startedAt) : "00:00 PM";
|
|
15709
15719
|
const durationLabel = showTiming ? formatTestRunDuration(durationMs) : "00:00:00";
|
|
15710
15720
|
const displayRows = _react.useMemo.call(void 0,
|
|
15711
15721
|
() => campaign.results.map(
|
|
@@ -15744,7 +15754,7 @@ function TicketAttachmentsList({ attachments, className, size = "default" }) {
|
|
|
15744
15754
|
),
|
|
15745
15755
|
children: [
|
|
15746
15756
|
attachment.thumbnailSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15747
|
-
|
|
15757
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
15748
15758
|
{
|
|
15749
15759
|
src: attachment.thumbnailSrc,
|
|
15750
15760
|
alt: attachment.fileName,
|
|
@@ -15837,7 +15847,7 @@ function TicketNoteCard({ note, onEdit, onDelete, className }) {
|
|
|
15837
15847
|
};
|
|
15838
15848
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex items-start gap-4 rounded-[6px] p-3", "border border-ods-border bg-ods-card", className), children: [
|
|
15839
15849
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15840
|
-
|
|
15850
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
15841
15851
|
{
|
|
15842
15852
|
src: note.authorAvatar,
|
|
15843
15853
|
alt: note.authorName,
|
|
@@ -16013,7 +16023,7 @@ function TicketInfoSection({
|
|
|
16013
16023
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-2 items-center gap-4 border-b border-ods-border bg-ods-card px-4 py-3 content-lg:grid-cols-[1fr_1fr_1fr_auto]", children: [
|
|
16014
16024
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2", children: [
|
|
16015
16025
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16016
|
-
|
|
16026
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
16017
16027
|
{
|
|
16018
16028
|
src: _optionalChain([organization, 'optionalAccess', _345 => _345.imageSrc]),
|
|
16019
16029
|
alt: _optionalChain([organization, 'optionalAccess', _346 => _346.name]),
|
|
@@ -16043,7 +16053,7 @@ function TicketInfoSection({
|
|
|
16043
16053
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell, { value: _optionalChain([device, 'optionalAccess', _349 => _349.name]) || "Unassigned", label: "Device", icon: _optionalChain([device, 'optionalAccess', _350 => _350.icon]), onClick: _optionalChain([device, 'optionalAccess', _351 => _351.onClick]) }),
|
|
16044
16054
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-4", children: [
|
|
16045
16055
|
(status || statusLabel) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16046
|
-
|
|
16056
|
+
_chunkPSIKUDUVcjs.TicketStatusTag,
|
|
16047
16057
|
{
|
|
16048
16058
|
status: _nullishCoalesce(status, () => ( "")),
|
|
16049
16059
|
label: statusLabel,
|
|
@@ -16082,9 +16092,9 @@ function TicketInfoSection({
|
|
|
16082
16092
|
expanded && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
16083
16093
|
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" }) }),
|
|
16084
16094
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-4 border-b border-ods-border bg-ods-bg p-4", children: [
|
|
16085
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16095
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.SimpleMarkdownRenderer, { content: description }),
|
|
16086
16096
|
attachments && attachments.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Attachments", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketAttachmentsList, { attachments }) }),
|
|
16087
|
-
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,
|
|
16097
|
+
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)) }) }),
|
|
16088
16098
|
(notes || onAddNote) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketDetailSection, { label: "Notes", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16089
16099
|
TicketNotesSection,
|
|
16090
16100
|
{
|
|
@@ -16107,8 +16117,8 @@ function renderTicketStatusOption(option, isSelected) {
|
|
|
16107
16117
|
const { label, color } = option;
|
|
16108
16118
|
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: [
|
|
16109
16119
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16110
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16111
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16120
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ColorSwatch, { color }),
|
|
16121
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16112
16122
|
] }),
|
|
16113
16123
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16114
16124
|
] });
|
|
@@ -16117,8 +16127,8 @@ function renderTicketAssigneeOption(option, isSelected) {
|
|
|
16117
16127
|
const { label, imageUrl } = option;
|
|
16118
16128
|
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: [
|
|
16119
16129
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
16120
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16121
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16130
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "round" }),
|
|
16131
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { className: "text-inherit", children: label }) })
|
|
16122
16132
|
] }),
|
|
16123
16133
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
16124
16134
|
] });
|
|
@@ -16152,9 +16162,9 @@ function TakeOverTicketModal({
|
|
|
16152
16162
|
if (!selectedStatusId || !assigneeId || isPending) return;
|
|
16153
16163
|
onConfirm({ statusId: selectedStatusId, assigneeId });
|
|
16154
16164
|
};
|
|
16155
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16165
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16156
16166
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16157
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16167
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: "Take Over Ticket" }) }),
|
|
16158
16168
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16159
16169
|
"The ticket ",
|
|
16160
16170
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16162,19 +16172,19 @@ function TakeOverTicketModal({
|
|
|
16162
16172
|
] }),
|
|
16163
16173
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16164
16174
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16165
|
-
|
|
16175
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
16166
16176
|
{
|
|
16167
16177
|
label: "Status",
|
|
16168
16178
|
options: statusOptions,
|
|
16169
16179
|
value: selectedStatusId,
|
|
16170
16180
|
onChange: setStatusId,
|
|
16171
16181
|
placeholder: "Select Status",
|
|
16172
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16182
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16173
16183
|
renderOption: renderTicketStatusOption
|
|
16174
16184
|
}
|
|
16175
16185
|
) }),
|
|
16176
16186
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16177
|
-
|
|
16187
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
16178
16188
|
{
|
|
16179
16189
|
label: "Assigned",
|
|
16180
16190
|
options: assigneeOptions,
|
|
@@ -16183,7 +16193,7 @@ function TakeOverTicketModal({
|
|
|
16183
16193
|
placeholder: "Select Technician",
|
|
16184
16194
|
loading: assigneesLoading,
|
|
16185
16195
|
startAdornment: selectedAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16186
|
-
|
|
16196
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
16187
16197
|
{
|
|
16188
16198
|
src: selectedAssignee.imageUrl,
|
|
16189
16199
|
alt: selectedAssignee.label,
|
|
@@ -16196,7 +16206,7 @@ function TakeOverTicketModal({
|
|
|
16196
16206
|
}
|
|
16197
16207
|
) })
|
|
16198
16208
|
] }),
|
|
16199
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16209
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
|
|
16200
16210
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16201
16211
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16202
16212
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16255,9 +16265,9 @@ function ReopenTicketModal({
|
|
|
16255
16265
|
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
16256
16266
|
});
|
|
16257
16267
|
};
|
|
16258
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16268
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16259
16269
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16260
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16270
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16261
16271
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: [
|
|
16262
16272
|
"The ticket ",
|
|
16263
16273
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
@@ -16265,19 +16275,19 @@ function ReopenTicketModal({
|
|
|
16265
16275
|
] }),
|
|
16266
16276
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] md:flex-row", children: [
|
|
16267
16277
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16268
|
-
|
|
16278
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
16269
16279
|
{
|
|
16270
16280
|
label: "Status",
|
|
16271
16281
|
options: statusOptions,
|
|
16272
16282
|
value: selectedStatusId,
|
|
16273
16283
|
onChange: setStatusId,
|
|
16274
16284
|
placeholder: "Select Status",
|
|
16275
|
-
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16285
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
16276
16286
|
renderOption: renderTicketStatusOption
|
|
16277
16287
|
}
|
|
16278
16288
|
) }),
|
|
16279
16289
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16280
|
-
|
|
16290
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
16281
16291
|
{
|
|
16282
16292
|
label: "Assigned",
|
|
16283
16293
|
options: assigneeOptions,
|
|
@@ -16286,7 +16296,7 @@ function ReopenTicketModal({
|
|
|
16286
16296
|
placeholder: "Select Technician",
|
|
16287
16297
|
loading: assigneesLoading,
|
|
16288
16298
|
startAdornment: selectedAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16289
|
-
|
|
16299
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
16290
16300
|
{
|
|
16291
16301
|
src: selectedAssignee.imageUrl,
|
|
16292
16302
|
alt: selectedAssignee.label,
|
|
@@ -16310,7 +16320,7 @@ function ReopenTicketModal({
|
|
|
16310
16320
|
disabled: isPending
|
|
16311
16321
|
}
|
|
16312
16322
|
) }),
|
|
16313
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16323
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
|
|
16314
16324
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
16315
16325
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
|
|
16316
16326
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -16359,9 +16369,9 @@ function ReopenTicketRequestModal({
|
|
|
16359
16369
|
...showHandoffOption ? { handoffToTechnician: handoff } : {}
|
|
16360
16370
|
});
|
|
16361
16371
|
};
|
|
16362
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16372
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose: isPending ? () => {
|
|
16363
16373
|
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
16364
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16374
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: "Reopen Ticket" }) }),
|
|
16365
16375
|
/* @__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." }),
|
|
16366
16376
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
16367
16377
|
Textarea,
|
|
@@ -16385,7 +16395,7 @@ function ReopenTicketRequestModal({
|
|
|
16385
16395
|
disabled: isPending
|
|
16386
16396
|
}
|
|
16387
16397
|
),
|
|
16388
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16398
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
|
|
16389
16399
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1", children: "Cancel" }),
|
|
16390
16400
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "accent", onClick: handleConfirm, loading: isPending, className: "flex-1", children: "Reopen Ticket" })
|
|
16391
16401
|
] })
|
|
@@ -16542,7 +16552,7 @@ function PhotoWall({ images, columns = 2, speed = 24, fadeColor, className, load
|
|
|
16542
16552
|
gap: COLUMN_GAP_PX
|
|
16543
16553
|
};
|
|
16544
16554
|
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,
|
|
16545
|
-
|
|
16555
|
+
_chunkTILK7SC4cjs.MarqueeWall,
|
|
16546
16556
|
{
|
|
16547
16557
|
axis: "y",
|
|
16548
16558
|
reverse: index % 2 === 1,
|
|
@@ -16791,7 +16801,7 @@ function PhoneFrame({ dateLabel, timeLabel, children, className }) {
|
|
|
16791
16801
|
"div",
|
|
16792
16802
|
{
|
|
16793
16803
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "h-[617px] w-[299px] shrink-0 rounded-[48px] border border-ods-border bg-black p-2.5", className),
|
|
16794
|
-
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]",
|
|
16804
|
+
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "relative flex h-full flex-col overflow-hidden rounded-[38px]", _chunkU6XWGK53cjs.DEVICE_WALLPAPER_CLASS), children: [
|
|
16795
16805
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
16796
16806
|
"div",
|
|
16797
16807
|
{
|
|
@@ -16957,7 +16967,7 @@ var TRIAL_TERM_ICONS = {
|
|
|
16957
16967
|
};
|
|
16958
16968
|
var DEFAULT_TRIAL_TERMS = ["cancel", "length", "noContract"];
|
|
16959
16969
|
function trialBenefits(trialDays, terms = DEFAULT_TRIAL_TERMS) {
|
|
16960
|
-
const labels =
|
|
16970
|
+
const labels = _chunkGSFANY2Lcjs.trialLabels.call(void 0, trialDays);
|
|
16961
16971
|
return terms.flatMap((term) => {
|
|
16962
16972
|
const label = labels[term];
|
|
16963
16973
|
return label ? [{ icon: TRIAL_TERM_ICONS[term], label }] : [];
|
|
@@ -17041,7 +17051,7 @@ function AnalyzingState({ label, className }) {
|
|
|
17041
17051
|
}) }),
|
|
17042
17052
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 text-center text-ods-text-secondary text-h4", children: [
|
|
17043
17053
|
label,
|
|
17044
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17054
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ChatTypingIndicator, { "aria-hidden": true, size: "sm", dotClassName: "bg-ods-text-secondary motion-reduce:animate-none" })
|
|
17045
17055
|
] })
|
|
17046
17056
|
] });
|
|
17047
17057
|
}
|
|
@@ -17055,7 +17065,7 @@ var INCIDENT_TONE = {
|
|
|
17055
17065
|
approved: "success"
|
|
17056
17066
|
};
|
|
17057
17067
|
function IncidentStatusLine({ status, label, className }) {
|
|
17058
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17068
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.StatusLine, { tone: INCIDENT_TONE[status], label, className });
|
|
17059
17069
|
}
|
|
17060
17070
|
function SourceTag({ children }) {
|
|
17061
17071
|
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 });
|
|
@@ -17866,7 +17876,7 @@ function CompleteAccountForm({
|
|
|
17866
17876
|
),
|
|
17867
17877
|
children: [
|
|
17868
17878
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
17869
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
17879
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
17870
17880
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
17871
17881
|
] }),
|
|
17872
17882
|
ssoProviders && ssoProviders.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -18014,7 +18024,7 @@ function CreateOrganizationForm({
|
|
|
18014
18024
|
),
|
|
18015
18025
|
children: [
|
|
18016
18026
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18017
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18027
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18018
18028
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18019
18029
|
] }),
|
|
18020
18030
|
email === void 0 ? null : emailReadOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.Input, { type: "email", label: emailReadOnlyLabel, value: email, readOnly: true, disabled: true }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18155,7 +18165,7 @@ function InviteLinkInvalidModal({
|
|
|
18155
18165
|
),
|
|
18156
18166
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
|
|
18157
18167
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-mf)]", children: [
|
|
18158
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18168
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "flex-1 tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18159
18169
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18160
18170
|
"button",
|
|
18161
18171
|
{
|
|
@@ -18229,7 +18239,7 @@ function LoginForm({
|
|
|
18229
18239
|
),
|
|
18230
18240
|
children: [
|
|
18231
18241
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18232
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18242
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18233
18243
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18234
18244
|
] }),
|
|
18235
18245
|
ssoProviders.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18324,7 +18334,7 @@ function NoAccountNotice({
|
|
|
18324
18334
|
),
|
|
18325
18335
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
|
|
18326
18336
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18327
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18337
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18328
18338
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: description })
|
|
18329
18339
|
] }),
|
|
18330
18340
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", fullWidth: true, onClick: onBackToLogin, children: backLabel })
|
|
@@ -18373,7 +18383,7 @@ function OpenFrameSsoLoginForm({
|
|
|
18373
18383
|
),
|
|
18374
18384
|
children: [
|
|
18375
18385
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
|
|
18376
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18386
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18377
18387
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18378
18388
|
] }),
|
|
18379
18389
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18478,7 +18488,7 @@ function OpenFrameSsoSignUpForm({
|
|
|
18478
18488
|
),
|
|
18479
18489
|
children: [
|
|
18480
18490
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)]", children: [
|
|
18481
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18491
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18482
18492
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18483
18493
|
] }),
|
|
18484
18494
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18584,7 +18594,7 @@ function PasswordResetForm({
|
|
|
18584
18594
|
),
|
|
18585
18595
|
children: [
|
|
18586
18596
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18587
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18597
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18588
18598
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18589
18599
|
] }),
|
|
18590
18600
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18701,12 +18711,12 @@ function SsoJoinForm({
|
|
|
18701
18711
|
),
|
|
18702
18712
|
children: [
|
|
18703
18713
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
|
|
18704
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children:
|
|
18714
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "tracking-[-0.64px] text-ods-text-primary text-h2", children: _chunk2ZVNXD74cjs.accentSentenceMarks.call(void 0, title) }),
|
|
18705
18715
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
18706
18716
|
] }),
|
|
18707
18717
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-m)]", children: [
|
|
18708
18718
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18709
|
-
|
|
18719
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
18710
18720
|
{
|
|
18711
18721
|
size: "lg",
|
|
18712
18722
|
variant: "round",
|
|
@@ -18720,7 +18730,7 @@ function SsoJoinForm({
|
|
|
18720
18730
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: displayName }),
|
|
18721
18731
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: organizationName })
|
|
18722
18732
|
] }),
|
|
18723
|
-
roles.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xs)]", children: roles.map((role) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18733
|
+
roles.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xs)]", children: roles.map((role) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { variant: "grey", label: role }, role)) })
|
|
18724
18734
|
] }),
|
|
18725
18735
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18726
18736
|
CheckboxBlock,
|
|
@@ -18963,7 +18973,7 @@ function ChangelogManager({
|
|
|
18963
18973
|
),
|
|
18964
18974
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: hasContent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-primary text-h6", children: entry.title }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "italic text-ods-text-secondary text-h6", children: "New entry (click to edit)" }) }),
|
|
18965
18975
|
tagOptions && tagLabelOf(entry.tag) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
18966
|
-
|
|
18976
|
+
_chunk2ZVNXD74cjs.StatusBadge,
|
|
18967
18977
|
{
|
|
18968
18978
|
variant: "button",
|
|
18969
18979
|
singleLine: true,
|
|
@@ -19027,9 +19037,9 @@ function ChangelogManager({
|
|
|
19027
19037
|
] }),
|
|
19028
19038
|
tagOptions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
19029
19039
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-ods-text-secondary", children: tagLabel }),
|
|
19030
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
19031
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19032
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19040
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: _nullishCoalesce(entry.tag, () => ( "")), onValueChange: (value) => updateEntry(index, "tag", value), children: [
|
|
19041
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder: tagLabel }) }),
|
|
19042
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: tagOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
19033
19043
|
] })
|
|
19034
19044
|
] })
|
|
19035
19045
|
] })
|
|
@@ -19226,7 +19236,7 @@ function EntityTagBadges({ tags, basePath, max, className }) {
|
|
|
19226
19236
|
const label = (tag.name || "").toUpperCase();
|
|
19227
19237
|
if (basePath && tag.slug) {
|
|
19228
19238
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: `${basePath}?tags=${tag.slug}`, className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19229
|
-
|
|
19239
|
+
_chunk2ZVNXD74cjs.StatusBadge,
|
|
19230
19240
|
{
|
|
19231
19241
|
text: label,
|
|
19232
19242
|
variant: "card",
|
|
@@ -19234,9 +19244,9 @@ function EntityTagBadges({ tags, basePath, max, className }) {
|
|
|
19234
19244
|
}
|
|
19235
19245
|
) }, key);
|
|
19236
19246
|
}
|
|
19237
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19247
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.StatusBadge, { text: label, variant: "card", className: BADGE_CLASS }, key);
|
|
19238
19248
|
}),
|
|
19239
|
-
overflow > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19249
|
+
overflow > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.StatusBadge, { text: `+${overflow}`, variant: "card", className: `${BADGE_CLASS} text-ods-text-secondary` })
|
|
19240
19250
|
] });
|
|
19241
19251
|
}
|
|
19242
19252
|
|
|
@@ -19332,7 +19342,7 @@ var SectionButton = ({
|
|
|
19332
19342
|
}
|
|
19333
19343
|
),
|
|
19334
19344
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19335
|
-
|
|
19345
|
+
_chunk2ZVNXD74cjs.StatusBadge,
|
|
19336
19346
|
{
|
|
19337
19347
|
text: section.badge.text,
|
|
19338
19348
|
variant: section.badge.variant || "button",
|
|
@@ -19351,7 +19361,7 @@ var SectionButton = ({
|
|
|
19351
19361
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-wrap items-start gap-2", children: [
|
|
19352
19362
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, titleClasses, "text-h3"), style: { textAlign: "left" }, children: section.title }),
|
|
19353
19363
|
section.badge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19354
|
-
|
|
19364
|
+
_chunk2ZVNXD74cjs.StatusBadge,
|
|
19355
19365
|
{
|
|
19356
19366
|
text: section.badge.text,
|
|
19357
19367
|
variant: section.badge.variant || "button",
|
|
@@ -20424,15 +20434,15 @@ function useLoading() {
|
|
|
20424
20434
|
|
|
20425
20435
|
|
|
20426
20436
|
function isAlreadyThere(file, existing) {
|
|
20427
|
-
const key =
|
|
20437
|
+
const key = _chunk2ZVNXD74cjs.mediaNameKey.call(void 0, file.name);
|
|
20428
20438
|
if (!key) return false;
|
|
20429
20439
|
return existing.some(
|
|
20430
|
-
(item) => (item.title ?
|
|
20440
|
+
(item) => (item.title ? _chunk2ZVNXD74cjs.mediaNameKey.call(void 0, item.title) === key : false) || (item.media_url ? _chunk2ZVNXD74cjs.mediaNameKey.call(void 0, item.media_url) === key : false)
|
|
20431
20441
|
);
|
|
20432
20442
|
}
|
|
20433
20443
|
var isFileDrag = (event) => Array.from(event.dataTransfer.types).includes("Files");
|
|
20434
|
-
var isVideoItem = (item) =>
|
|
20435
|
-
var MEDIA_KIND_ACCEPT = { image:
|
|
20444
|
+
var isVideoItem = (item) => _chunk2ZVNXD74cjs.isVideoMedia.call(void 0, item) || item.media_type === "demo";
|
|
20445
|
+
var MEDIA_KIND_ACCEPT = { image: _chunk2ZVNXD74cjs.IMAGE_FILE_ACCEPT, video: "video/*", both: _chunk2ZVNXD74cjs.MEDIA_FILE_ACCEPT };
|
|
20436
20446
|
var MEDIA_KIND_COPY = {
|
|
20437
20447
|
image: { noun: "pictures", refusal: "Not a picture" },
|
|
20438
20448
|
video: { noun: "videos", refusal: "Not a video" },
|
|
@@ -20456,12 +20466,12 @@ function useMediaIntake({ existing, onUpload, onUploaded, kinds = "both" }) {
|
|
|
20456
20466
|
const seen = /* @__PURE__ */ new Set();
|
|
20457
20467
|
const accepted = [];
|
|
20458
20468
|
for (const file of files) {
|
|
20459
|
-
const mediaType =
|
|
20469
|
+
const mediaType = _chunk2ZVNXD74cjs.fileMediaType.call(void 0, file);
|
|
20460
20470
|
if (!mediaType || kinds !== "both" && mediaType !== kinds) {
|
|
20461
20471
|
unsupported.push(file.name);
|
|
20462
20472
|
continue;
|
|
20463
20473
|
}
|
|
20464
|
-
const contentKey = await
|
|
20474
|
+
const contentKey = await _chunk2ZVNXD74cjs.fileContentKey.call(void 0, file).catch(() => `${file.name}:${file.size}`);
|
|
20465
20475
|
if (seen.has(contentKey) || isAlreadyThere(file, existingRef.current)) {
|
|
20466
20476
|
duplicates.push(file.name);
|
|
20467
20477
|
continue;
|
|
@@ -20642,7 +20652,7 @@ function MediaGalleryManager({
|
|
|
20642
20652
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "grid grid-cols-1 gap-4 content-md:grid-cols-2", columns === 3 && "content-lg:grid-cols-3"),
|
|
20643
20653
|
children: [
|
|
20644
20654
|
media.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20645
|
-
|
|
20655
|
+
_chunk2ZVNXD74cjs.Card,
|
|
20646
20656
|
{
|
|
20647
20657
|
className: "group relative border-ods-border transition-colors hover:border-ods-accent/30",
|
|
20648
20658
|
draggable: true,
|
|
@@ -20667,7 +20677,7 @@ function MediaGalleryManager({
|
|
|
20667
20677
|
) }),
|
|
20668
20678
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative aspect-video overflow-hidden rounded-lg bg-ods-bg", children: isVideoItem(item) ? (
|
|
20669
20679
|
// <Video> SSOT (MuxPlayer): plays Mux HLS and MP4 alike; fit="cover" crops to the cell.
|
|
20670
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20680
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.Video, { kind: "file", url: item.media_url, fit: "cover", className: "h-full w-full" })
|
|
20671
20681
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20672
20682
|
_chunkHOTM4UM6cjs.next_image_default,
|
|
20673
20683
|
{
|
|
@@ -20682,17 +20692,17 @@ function MediaGalleryManager({
|
|
|
20682
20692
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
20683
20693
|
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" }),
|
|
20684
20694
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20685
|
-
|
|
20695
|
+
_chunkU6XWGK53cjs.Select,
|
|
20686
20696
|
{
|
|
20687
20697
|
value: item.media_type,
|
|
20688
20698
|
onValueChange: (value) => update(index, { media_type: value }),
|
|
20689
20699
|
children: [
|
|
20690
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20691
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20692
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20693
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20694
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20695
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20700
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "h-8 bg-ods-bg text-h6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
20701
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.SelectContent, { className: "bg-ods-card", children: [
|
|
20702
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "image", children: "Image" }),
|
|
20703
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "video", children: "Video" }),
|
|
20704
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "screenshot", children: "Screenshot" }),
|
|
20705
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "demo", children: "Demo" })
|
|
20696
20706
|
] })
|
|
20697
20707
|
]
|
|
20698
20708
|
}
|
|
@@ -20719,7 +20729,7 @@ function MediaGalleryManager({
|
|
|
20719
20729
|
},
|
|
20720
20730
|
_nullishCoalesce(item.id, () => ( `${item.media_url}-${index}`))
|
|
20721
20731
|
)),
|
|
20722
|
-
pending.map((name, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20732
|
+
pending.map((name, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2ZVNXD74cjs.Card, { className: "border-ods-border", "aria-busy": "true", children: [
|
|
20723
20733
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex aspect-video items-center justify-center rounded-lg bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) }),
|
|
20724
20734
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate p-3 text-ods-text-secondary text-h6", children: name })
|
|
20725
20735
|
] }, `pending-${name}-${index}`))
|
|
@@ -20774,60 +20784,60 @@ function CardSkeleton({
|
|
|
20774
20784
|
function VendorCardContent({ showMetadata }) {
|
|
20775
20785
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-3 p-4", children: [
|
|
20776
20786
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start gap-3", children: [
|
|
20777
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[60px] w-[60px] flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20787
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[60px] w-[60px] flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg p-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Avatar, { size: "sm", className: "h-11 w-11" }) }),
|
|
20778
20788
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center space-y-1 py-2", children: [
|
|
20779
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20780
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20789
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
20790
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-1/2" })
|
|
20781
20791
|
] })
|
|
20782
20792
|
] }),
|
|
20783
20793
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-full items-center overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
20784
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20785
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20794
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
20795
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
20786
20796
|
] }) }),
|
|
20787
20797
|
showMetadata && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-2", children: [
|
|
20788
20798
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-shrink items-center gap-3 content-md:gap-4", children: [
|
|
20789
20799
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
20790
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20791
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20800
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
20801
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-8" })
|
|
20792
20802
|
] }),
|
|
20793
20803
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
20794
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20795
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20804
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
20805
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-10" })
|
|
20796
20806
|
] })
|
|
20797
20807
|
] }),
|
|
20798
20808
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 rounded border border-ods-border bg-ods-bg px-2.5 py-1.5", children: [
|
|
20799
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20800
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20809
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
|
|
20810
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
20801
20811
|
] }) })
|
|
20802
20812
|
] })
|
|
20803
20813
|
] });
|
|
20804
20814
|
}
|
|
20805
20815
|
function BlogCardContent({ showActions, showMetadata }) {
|
|
20806
20816
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
20807
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "blog-card-image-container relative aspect-[1200/630] w-full overflow-hidden bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20817
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "blog-card-image-container relative aspect-[1200/630] w-full overflow-hidden bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.CardImage, {}) }),
|
|
20808
20818
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-grow flex-col p-4", children: [
|
|
20809
20819
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-3 flex min-h-[50.4px] items-center content-md:min-h-[56px] content-lg:min-h-[61.6px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
20810
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20811
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20820
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-full" }),
|
|
20821
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-3/4" })
|
|
20812
20822
|
] }) }),
|
|
20813
20823
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-3 flex h-[28px] items-center gap-2", children: [
|
|
20814
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20815
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20824
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, { className: "w-16" }),
|
|
20825
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, { className: "w-12" })
|
|
20816
20826
|
] }),
|
|
20817
20827
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-3 flex min-h-[42px] items-center content-md:min-h-[45px] content-lg:min-h-[48px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
20818
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20819
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20828
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
20829
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-1/2" })
|
|
20820
20830
|
] }) }),
|
|
20821
|
-
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20831
|
+
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, { className: "h-8 w-24" }) }),
|
|
20822
20832
|
showMetadata && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4 border-t border-ods-border pt-4", children: [
|
|
20823
20833
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
|
|
20824
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20825
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20834
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
20835
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
20826
20836
|
] }),
|
|
20827
20837
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 items-center gap-3 text-ods-text-muted", children: [
|
|
20828
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20838
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-12" }),
|
|
20829
20839
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-1 w-1 rounded-full bg-ods-skeleton" }),
|
|
20830
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20840
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
20831
20841
|
] })
|
|
20832
20842
|
] }) })
|
|
20833
20843
|
] })
|
|
@@ -20835,35 +20845,35 @@ function BlogCardContent({ showActions, showMetadata }) {
|
|
|
20835
20845
|
}
|
|
20836
20846
|
function CategoryCardContent() {
|
|
20837
20847
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4 p-4 content-md:p-6", children: [
|
|
20838
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 content-md:gap-3", children: Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20848
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 content-md:gap-3", children: Array.from({ length: 6 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "lg", className: "flex-shrink-0" }, index)) }),
|
|
20839
20849
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
20840
20850
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
20841
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20842
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20851
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
20852
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-1/2" })
|
|
20843
20853
|
] }),
|
|
20844
20854
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start justify-between gap-4 content-md:items-end content-md:gap-6", children: [
|
|
20845
20855
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
20846
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20847
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20856
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
20857
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
20848
20858
|
] }),
|
|
20849
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20859
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, { className: "h-10 w-10 flex-shrink-0 content-md:h-12 content-md:w-12" })
|
|
20850
20860
|
] })
|
|
20851
20861
|
] })
|
|
20852
20862
|
] });
|
|
20853
20863
|
}
|
|
20854
20864
|
function AlternativeCardContent({ showActions }) {
|
|
20855
20865
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4 p-4", children: [
|
|
20856
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20866
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Avatar, { size: "md", className: "flex-shrink-0" }),
|
|
20857
20867
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
20858
20868
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
|
|
20859
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20860
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20869
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-1/3" }),
|
|
20870
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
20861
20871
|
] }),
|
|
20862
20872
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
20863
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20864
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20873
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
20874
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-5/6" })
|
|
20865
20875
|
] }),
|
|
20866
|
-
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20876
|
+
showActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, { className: "h-8 w-20" }) })
|
|
20867
20877
|
] })
|
|
20868
20878
|
] });
|
|
20869
20879
|
}
|
|
@@ -20914,12 +20924,12 @@ function HeroSkeleton() {
|
|
|
20914
20924
|
background: "radial-gradient(circle at 50% 0%, #242323 0%, #1A1A1A 100%)"
|
|
20915
20925
|
},
|
|
20916
20926
|
children: [
|
|
20917
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20927
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Heading, { className: "mb-4 h-12 w-full max-w-4xl content-md:mb-6 content-md:h-20 content-lg:h-24" }),
|
|
20918
20928
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-8 w-full max-w-4xl space-y-3 px-2 content-md:mb-10", children: [
|
|
20919
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20920
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20929
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "h-5 content-md:h-7" }),
|
|
20930
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "mx-auto h-5 w-3/4 content-md:h-7" })
|
|
20921
20931
|
] }),
|
|
20922
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20932
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, { className: "h-12 w-full content-md:w-64" })
|
|
20923
20933
|
]
|
|
20924
20934
|
}
|
|
20925
20935
|
);
|
|
@@ -20930,14 +20940,14 @@ function SearchContainerSkeleton({
|
|
|
20930
20940
|
}) {
|
|
20931
20941
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-4", className || ""), children: [
|
|
20932
20942
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2 content-md:gap-4", children: [
|
|
20933
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20934
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20943
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Input, { className: "flex-1" }),
|
|
20944
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, { className: "w-32 content-md:w-40" })
|
|
20935
20945
|
] }),
|
|
20936
20946
|
showFilters && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-wrap gap-2", children: [
|
|
20937
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20938
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20939
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20940
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20947
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, {}),
|
|
20948
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, { className: "w-24" }),
|
|
20949
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, { className: "w-16" }),
|
|
20950
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, { className: "w-20" })
|
|
20941
20951
|
] })
|
|
20942
20952
|
] });
|
|
20943
20953
|
}
|
|
@@ -20956,7 +20966,7 @@ function CategorySidebarSkeleton({ className }) {
|
|
|
20956
20966
|
{ type: "file", width: "w-36" }
|
|
20957
20967
|
];
|
|
20958
20968
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full content-lg:w-[320px]", className), children: [
|
|
20959
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20969
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "mb-4 h-[14px] w-24 rounded" }),
|
|
20960
20970
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1.5", children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
20961
20971
|
"div",
|
|
20962
20972
|
{
|
|
@@ -20966,12 +20976,12 @@ function CategorySidebarSkeleton({ className }) {
|
|
|
20966
20976
|
),
|
|
20967
20977
|
children: [
|
|
20968
20978
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2.5", children: [
|
|
20969
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20970
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20979
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-4 w-4 shrink-0 rounded" }),
|
|
20980
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: `h-[14px] ${item.width} rounded` })
|
|
20971
20981
|
] }),
|
|
20972
20982
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-[18px] items-center gap-2", children: [
|
|
20973
|
-
item.hasBadge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20974
|
-
item.type === "folder" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20983
|
+
item.hasBadge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-[18px] w-14 rounded" }),
|
|
20984
|
+
item.type === "folder" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-4 w-4 rounded" })
|
|
20975
20985
|
] })
|
|
20976
20986
|
]
|
|
20977
20987
|
},
|
|
@@ -20981,13 +20991,13 @@ function CategorySidebarSkeleton({ className }) {
|
|
|
20981
20991
|
}
|
|
20982
20992
|
function BreadcrumbSkeleton({ className }) {
|
|
20983
20993
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mb-6 flex items-center space-x-1", className), children: [
|
|
20984
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20985
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20986
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20987
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20988
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20989
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20990
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20994
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" }),
|
|
20995
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
|
|
20996
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-24" }),
|
|
20997
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
|
|
20998
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-32" }),
|
|
20999
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4 rounded-full" }),
|
|
21000
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-24" })
|
|
20991
21001
|
] });
|
|
20992
21002
|
}
|
|
20993
21003
|
function ResultsHeaderSkeleton({ className }) {
|
|
@@ -20998,7 +21008,7 @@ function ResultsHeaderSkeleton({ className }) {
|
|
|
20998
21008
|
"mb-6 flex flex-col items-start justify-between gap-4 content-md:flex-row content-md:items-center",
|
|
20999
21009
|
className
|
|
21000
21010
|
),
|
|
21001
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21011
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-48" }) })
|
|
21002
21012
|
}
|
|
21003
21013
|
);
|
|
21004
21014
|
}
|
|
@@ -21032,35 +21042,35 @@ function ArticleLayoutSkeleton({ className }) {
|
|
|
21032
21042
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "article", { className: _chunk3ATAYP36cjs.cn.call(void 0, "mx-auto max-w-4xl", className), children: [
|
|
21033
21043
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "header", { className: "mb-8 space-y-4 content-md:mb-12 content-md:space-y-6", children: [
|
|
21034
21044
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-2", children: [
|
|
21035
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21036
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21045
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, {}),
|
|
21046
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Chip, { className: "w-16" })
|
|
21037
21047
|
] }),
|
|
21038
21048
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", children: [
|
|
21039
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21040
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21049
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Heading, { className: "w-full" }),
|
|
21050
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Heading, { className: "w-3/4" })
|
|
21041
21051
|
] }),
|
|
21042
21052
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 border-t border-ods-divider pt-4", children: [
|
|
21043
21053
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
21044
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21045
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21054
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
21055
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-24" })
|
|
21046
21056
|
] }),
|
|
21047
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21048
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21057
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-20" }),
|
|
21058
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
21049
21059
|
] })
|
|
21050
21060
|
] }),
|
|
21051
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 content-md:mb-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21061
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 content-md:mb-12", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.CardImage, { className: "h-64 w-full content-md:h-96" }) }),
|
|
21052
21062
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "prose prose-invert max-w-none space-y-6", children: [
|
|
21053
21063
|
Array.from({ length: 12 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
21054
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21055
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21056
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21057
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21064
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21065
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21066
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-5/6" }),
|
|
21067
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
21058
21068
|
] }, index)),
|
|
21059
21069
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "py-4", children: [
|
|
21060
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21070
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "mb-4 w-2/3" }),
|
|
21061
21071
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
21062
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21063
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21072
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21073
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-4/5" })
|
|
21064
21074
|
] })
|
|
21065
21075
|
] })
|
|
21066
21076
|
] })
|
|
@@ -21286,11 +21296,11 @@ function StatsSectionSkeleton({ className, columns = 3 }) {
|
|
|
21286
21296
|
className
|
|
21287
21297
|
),
|
|
21288
21298
|
children: Array.from({ length: columns }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
|
|
21289
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21290
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21299
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "lg" }),
|
|
21300
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
21291
21301
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
21292
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21293
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21302
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21303
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
21294
21304
|
] })
|
|
21295
21305
|
] }) }, i))
|
|
21296
21306
|
}
|
|
@@ -21445,7 +21455,7 @@ function useContentLoading(isLoading) {
|
|
|
21445
21455
|
|
|
21446
21456
|
function ParagraphSkeleton({ className, lines = 4 }) {
|
|
21447
21457
|
const lineWidths = ["w-full", "w-full", "w-5/6", "w-3/4", "w-4/5", "w-2/3"];
|
|
21448
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21458
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-2", className), children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: lineWidths[index % lineWidths.length] }, index)) });
|
|
21449
21459
|
}
|
|
21450
21460
|
function ListSkeleton({
|
|
21451
21461
|
className,
|
|
@@ -21455,12 +21465,12 @@ function ListSkeleton({
|
|
|
21455
21465
|
}) {
|
|
21456
21466
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-3", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between", children: [
|
|
21457
21467
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
21458
|
-
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21459
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21468
|
+
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
21469
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-32 content-md:w-48" })
|
|
21460
21470
|
] }),
|
|
21461
21471
|
showActions && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
21462
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21463
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21472
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-8" }),
|
|
21473
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { variant: "default", className: "h-4 w-4" })
|
|
21464
21474
|
] })
|
|
21465
21475
|
] }, index)) });
|
|
21466
21476
|
}
|
|
@@ -21470,13 +21480,13 @@ function TableSkeleton({
|
|
|
21470
21480
|
columns = 4
|
|
21471
21481
|
}) {
|
|
21472
21482
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-4", className), children: [
|
|
21473
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21483
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid gap-4", style: { gridTemplateColumns: `repeat(${columns}, 1fr)` }, children: Array.from({ length: columns }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-3/4" }, index)) }),
|
|
21474
21484
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3", children: Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21475
21485
|
"div",
|
|
21476
21486
|
{
|
|
21477
21487
|
className: "grid gap-4 border-b border-ods-divider py-2",
|
|
21478
21488
|
style: { gridTemplateColumns: `repeat(${columns}, 1fr)` },
|
|
21479
|
-
children: Array.from({ length: columns }).map((_cell, colIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21489
|
+
children: Array.from({ length: columns }).map((_cell, colIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" }, colIndex))
|
|
21480
21490
|
},
|
|
21481
21491
|
rowIndex
|
|
21482
21492
|
)) })
|
|
@@ -21485,13 +21495,13 @@ function TableSkeleton({
|
|
|
21485
21495
|
function FormSkeleton({ className, fields = 4 }) {
|
|
21486
21496
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), children: [
|
|
21487
21497
|
Array.from({ length: fields }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
21488
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21489
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21490
|
-
index % 3 === 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21498
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-24" }),
|
|
21499
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Input, {}),
|
|
21500
|
+
index % 3 === 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-48" })
|
|
21491
21501
|
] }, index)),
|
|
21492
21502
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-4 pt-4", children: [
|
|
21493
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21494
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21503
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, {}),
|
|
21504
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, { className: "bg-ods-border" })
|
|
21495
21505
|
] })
|
|
21496
21506
|
] });
|
|
21497
21507
|
}
|
|
@@ -21506,7 +21516,7 @@ function NavigationSkeleton({
|
|
|
21506
21516
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "flex gap-4 content-md:gap-6", !horizontal && "flex-col", className),
|
|
21507
21517
|
role: "status",
|
|
21508
21518
|
"aria-label": "Loading navigation",
|
|
21509
|
-
children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21519
|
+
children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-16 content-md:w-20" }, index))
|
|
21510
21520
|
}
|
|
21511
21521
|
);
|
|
21512
21522
|
}
|
|
@@ -21517,30 +21527,30 @@ function ProfileSkeleton({
|
|
|
21517
21527
|
}) {
|
|
21518
21528
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-4", className), children: [
|
|
21519
21529
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4", children: [
|
|
21520
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21530
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Avatar, { size: "lg" }),
|
|
21521
21531
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
21522
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21523
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21524
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21532
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-1/2" }),
|
|
21533
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-1/3" }),
|
|
21534
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
21525
21535
|
] })
|
|
21526
21536
|
] }),
|
|
21527
21537
|
showBio && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
21528
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21529
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21530
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21538
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21539
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-4/5" }),
|
|
21540
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
21531
21541
|
] }),
|
|
21532
21542
|
showStats && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-6", children: [
|
|
21533
21543
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
|
|
21534
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21535
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21544
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
|
|
21545
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "mx-auto w-12" })
|
|
21536
21546
|
] }),
|
|
21537
21547
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
|
|
21538
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21539
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21548
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
|
|
21549
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "mx-auto w-16" })
|
|
21540
21550
|
] }),
|
|
21541
21551
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-center", children: [
|
|
21542
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21543
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21552
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "mx-auto w-8" }),
|
|
21553
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "mx-auto w-14" })
|
|
21544
21554
|
] })
|
|
21545
21555
|
] })
|
|
21546
21556
|
] });
|
|
@@ -21552,32 +21562,32 @@ function CommentSkeleton({
|
|
|
21552
21562
|
}) {
|
|
21553
21563
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-3", className), children: [
|
|
21554
21564
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
21555
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21565
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
21556
21566
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 items-center gap-4", children: [
|
|
21557
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21558
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21559
|
-
showRating && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21567
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-24" }),
|
|
21568
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" }),
|
|
21569
|
+
showRating && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-1", children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm" }, i)) })
|
|
21560
21570
|
] })
|
|
21561
21571
|
] }),
|
|
21562
21572
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11 space-y-2", children: [
|
|
21563
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21564
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21565
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21573
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21574
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-3/4" }),
|
|
21575
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-1/2" })
|
|
21566
21576
|
] }),
|
|
21567
21577
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11 flex gap-4", children: [
|
|
21568
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21569
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21570
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21578
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-12" }),
|
|
21579
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" }),
|
|
21580
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-8" })
|
|
21571
21581
|
] }),
|
|
21572
21582
|
showReplies && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "ml-11 space-y-4 border-l border-ods-divider pl-4", children: Array.from({ length: 2 }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
21573
21583
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
21574
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21575
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21576
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21584
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Avatar, { size: "sm" }),
|
|
21585
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-20" }),
|
|
21586
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-12" })
|
|
21577
21587
|
] }),
|
|
21578
21588
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "ml-11", children: [
|
|
21579
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21580
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21589
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21590
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
21581
21591
|
] })
|
|
21582
21592
|
] }, index)) })
|
|
21583
21593
|
] });
|
|
@@ -21590,31 +21600,31 @@ function FeatureListSkeleton({
|
|
|
21590
21600
|
}) {
|
|
21591
21601
|
if (grouped) {
|
|
21592
21602
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), children: Array.from({ length: 3 }).map((_, groupIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", children: [
|
|
21593
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21603
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-1/3" }),
|
|
21594
21604
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-2", children: Array.from({ length: features / 3 }).map((_feature, featureIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
21595
|
-
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21596
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21605
|
+
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
21606
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
21597
21607
|
] }, featureIndex)) })
|
|
21598
21608
|
] }, groupIndex)) });
|
|
21599
21609
|
}
|
|
21600
21610
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-3", className), children: Array.from({ length: features }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
21601
|
-
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21602
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21611
|
+
showIcons && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
21612
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
21603
21613
|
] }, index)) });
|
|
21604
21614
|
}
|
|
21605
21615
|
function TimelineSkeleton({ className, items = 5 }) {
|
|
21606
21616
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), children: Array.from({ length: items }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-4", children: [
|
|
21607
21617
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col items-center", children: [
|
|
21608
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21618
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
21609
21619
|
index < items - 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-2 h-12 w-px bg-ods-border" })
|
|
21610
21620
|
] }),
|
|
21611
21621
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-2", children: [
|
|
21612
21622
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
21613
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21614
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21623
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-1/3" }),
|
|
21624
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
21615
21625
|
] }),
|
|
21616
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21617
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21626
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
21627
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
21618
21628
|
] })
|
|
21619
21629
|
] }, index)) });
|
|
21620
21630
|
}
|
|
@@ -21630,16 +21640,16 @@ function PricingSkeleton({ className, plans = 3 }) {
|
|
|
21630
21640
|
className
|
|
21631
21641
|
),
|
|
21632
21642
|
children: Array.from({ length: plans }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
|
|
21633
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21643
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-1/2" }),
|
|
21634
21644
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-1", children: [
|
|
21635
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21636
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21645
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Heading, { className: "w-1/3" }),
|
|
21646
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-1/4" })
|
|
21637
21647
|
] }),
|
|
21638
21648
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3 py-4", children: Array.from({ length: 5 }).map((_feature, featureIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
21639
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21640
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21649
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm" }),
|
|
21650
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
21641
21651
|
] }, featureIndex)) }),
|
|
21642
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21652
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Button, { className: "w-full" })
|
|
21643
21653
|
] }) }, index))
|
|
21644
21654
|
}
|
|
21645
21655
|
);
|
|
@@ -21675,12 +21685,12 @@ function MspProfileFormSkeleton({ className, fields = 4 }) {
|
|
|
21675
21685
|
"aria-label": "Loading MSP profile form",
|
|
21676
21686
|
children: [
|
|
21677
21687
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-full flex-col space-y-2", children: [
|
|
21678
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21679
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[180px] flex-1 content-md:min-h-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21688
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-28" }),
|
|
21689
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[180px] flex-1 content-md:min-h-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-full w-full rounded-lg", "aria-label": "Loading company logo" }) })
|
|
21680
21690
|
] }),
|
|
21681
21691
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-md:grid-cols-2", children: Array.from({ length: fields }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col space-y-2", children: [
|
|
21682
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21683
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21692
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-40" }),
|
|
21693
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.InteractiveSkeleton.Input, {})
|
|
21684
21694
|
] }, idx)) })
|
|
21685
21695
|
]
|
|
21686
21696
|
}
|
|
@@ -21700,13 +21710,13 @@ function CategoryCardSkeleton({ className }) {
|
|
|
21700
21710
|
role: "status",
|
|
21701
21711
|
"aria-label": "Loading category card",
|
|
21702
21712
|
children: [
|
|
21703
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 flex items-center justify-center gap-6", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21713
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mb-8 flex items-center justify-center gap-6", children: Array.from({ length: 10 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { variant: "circular", className: "h-10 w-10 flex-shrink-0", "aria-label": "Loading icon" }, i)) }),
|
|
21704
21714
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col space-y-3", children: [
|
|
21705
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21706
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21707
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21715
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Heading, { className: "w-3/4" }),
|
|
21716
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-1/2" }),
|
|
21717
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" })
|
|
21708
21718
|
] }),
|
|
21709
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21719
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-12 w-12 rounded-[6px]", "aria-label": "Loading button" }) })
|
|
21710
21720
|
]
|
|
21711
21721
|
}
|
|
21712
21722
|
);
|
|
@@ -21723,12 +21733,12 @@ function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
|
|
|
21723
21733
|
"aria-label": "Loading category section",
|
|
21724
21734
|
children: [
|
|
21725
21735
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-6 max-w-xl space-y-2", children: [
|
|
21726
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21727
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21736
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Heading, { className: "w-1/2" }),
|
|
21737
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-3/4" })
|
|
21728
21738
|
] }),
|
|
21729
21739
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-6", children: Array.from({ length: subcategories }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
21730
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21731
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 gap-4 content-md:grid-cols-3", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21740
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-1/3" }),
|
|
21741
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-2 gap-4 content-md:grid-cols-3", children: Array.from({ length: 2 }).map((__, j) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-20 rounded-lg" }, j)) })
|
|
21732
21742
|
] }, idx)) })
|
|
21733
21743
|
]
|
|
21734
21744
|
}
|
|
@@ -21739,14 +21749,14 @@ function CategoryVendorSelectorSkeleton({ subcategories = 3, className }) {
|
|
|
21739
21749
|
|
|
21740
21750
|
function WizardLayoutSkeleton({ steps = 6, className }) {
|
|
21741
21751
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "space-y-6", className), role: "status", "aria-label": "Loading wizard layout", children: [
|
|
21742
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21752
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-wrap items-center gap-2", children: Array.from({ length: steps }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-6 w-24 rounded" }, i)) }),
|
|
21743
21753
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "max-w-2xl space-y-2", children: [
|
|
21744
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21745
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21754
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Heading, { className: "w-2/3" }),
|
|
21755
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-1/2" })
|
|
21746
21756
|
] }),
|
|
21747
21757
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mt-10 flex justify-between", children: [
|
|
21748
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21749
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21758
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-10 w-24 rounded" }),
|
|
21759
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-10 w-32 rounded" })
|
|
21750
21760
|
] })
|
|
21751
21761
|
] });
|
|
21752
21762
|
}
|
|
@@ -22138,28 +22148,28 @@ function OrganizationCardSkeleton({
|
|
|
22138
22148
|
}
|
|
22139
22149
|
),
|
|
22140
22150
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center space-y-1 py-2", children: [
|
|
22141
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22142
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22151
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Subheading, { className: "w-3/4" }),
|
|
22152
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-1/2" })
|
|
22143
22153
|
] })
|
|
22144
22154
|
] }),
|
|
22145
22155
|
showDescription && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-12 w-full items-center overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
|
|
22146
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22147
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22156
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-full" }),
|
|
22157
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Body, { className: "w-2/3" })
|
|
22148
22158
|
] }) }),
|
|
22149
22159
|
showFooter && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center justify-between gap-2", children: [
|
|
22150
22160
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-shrink items-center gap-3 content-md:gap-4", children: [
|
|
22151
22161
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
22152
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22153
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22162
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
22163
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-8" })
|
|
22154
22164
|
] }),
|
|
22155
22165
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-1", children: [
|
|
22156
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22157
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22166
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm", className: "h-5 w-5" }),
|
|
22167
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-10" })
|
|
22158
22168
|
] })
|
|
22159
22169
|
] }),
|
|
22160
22170
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 rounded border border-ods-border bg-ods-bg px-2.5 py-1.5", children: [
|
|
22161
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22162
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22171
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-sm bg-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.MediaSkeleton.Icon, { size: "sm", className: "h-2.5 w-2.5" }) }),
|
|
22172
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.TextSkeleton.Caption, { className: "w-16" })
|
|
22163
22173
|
] }) })
|
|
22164
22174
|
] })
|
|
22165
22175
|
] })
|
|
@@ -22236,16 +22246,16 @@ function DeviceCardSkeletonGrid({ count = 12, className }) {
|
|
|
22236
22246
|
|
|
22237
22247
|
function PushButtonSelectorSkeleton({ count = 3, hasTitle }) {
|
|
22238
22248
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-3", role: "status", "aria-label": "Loading options", children: [
|
|
22239
|
-
hasTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22249
|
+
hasTitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-5 w-20", "aria-label": "Loading title" }),
|
|
22240
22250
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-3", children: Array.from({ length: count }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rounded-lg border border-ods-border bg-ods-bg p-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-4", children: [
|
|
22241
22251
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
22242
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22252
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-8 w-8", "aria-label": "Loading icon" }),
|
|
22243
22253
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
|
|
22244
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22245
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22254
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { variant: "text", className: "mb-2 h-4 w-24", "aria-label": "Loading name" }),
|
|
22255
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { variant: "text", className: "h-4 w-36", "aria-label": "Loading description" })
|
|
22246
22256
|
] })
|
|
22247
22257
|
] }),
|
|
22248
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22258
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.UnifiedSkeleton, { className: "h-6 w-6", "aria-label": "Loading selection state" })
|
|
22249
22259
|
] }) }, i)) })
|
|
22250
22260
|
] });
|
|
22251
22261
|
}
|
|
@@ -22497,14 +22507,14 @@ var MODEL_TOKEN_RATES_COPY = {
|
|
|
22497
22507
|
empty: "No token rates are in effect right now."
|
|
22498
22508
|
};
|
|
22499
22509
|
function providerMark(providerType, stated, className) {
|
|
22500
|
-
const Mark = _chunkKTPR66EEcjs.findIcon.call(void 0,
|
|
22510
|
+
const Mark = _chunkKTPR66EEcjs.findIcon.call(void 0, _chunkGSFANY2Lcjs.aiProvider.call(void 0, providerType, { icon: stated }).icon);
|
|
22501
22511
|
return Mark ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Mark, { className }) : void 0;
|
|
22502
22512
|
}
|
|
22503
22513
|
var PAD_X = "px-[var(--spacing-system-s)]";
|
|
22504
22514
|
var ROW = "flex items-center gap-[var(--spacing-system-s)]";
|
|
22505
22515
|
var NUMBER_CELL = "w-16 shrink-0 whitespace-nowrap text-right tabular-nums";
|
|
22506
22516
|
function useProviderGroup(rates) {
|
|
22507
|
-
const groups =
|
|
22517
|
+
const groups = _chunkGSFANY2Lcjs.groupTokenRatesByProvider.call(void 0, rates);
|
|
22508
22518
|
const [picked, setPicked] = _react.useState.call(void 0, null);
|
|
22509
22519
|
return { groups, group: _nullishCoalesce(groups.find((candidate) => candidate.providerType === picked), () => ( groups[0])), setPicked };
|
|
22510
22520
|
}
|
|
@@ -22515,7 +22525,7 @@ function ProviderTabs({
|
|
|
22515
22525
|
className
|
|
22516
22526
|
}) {
|
|
22517
22527
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22518
|
-
|
|
22528
|
+
_chunkTILK7SC4cjs.TabSelector,
|
|
22519
22529
|
{
|
|
22520
22530
|
variant: "secondary",
|
|
22521
22531
|
scrollable: true,
|
|
@@ -22523,7 +22533,7 @@ function ProviderTabs({
|
|
|
22523
22533
|
onValueChange,
|
|
22524
22534
|
items: groups.map((candidate) => ({
|
|
22525
22535
|
id: candidate.providerType,
|
|
22526
|
-
label:
|
|
22536
|
+
label: _chunkGSFANY2Lcjs.tokenRateProviderLabel.call(void 0, candidate.providerType, _optionalChain([candidate, 'access', _442 => _442.rates, 'access', _443 => _443[0], 'optionalAccess', _444 => _444.providerLabel])),
|
|
22527
22537
|
icon: providerMark(candidate.providerType, _optionalChain([candidate, 'access', _445 => _445.rates, 'access', _446 => _446[0], 'optionalAccess', _447 => _447.providerIcon]), "size-full")
|
|
22528
22538
|
})),
|
|
22529
22539
|
className
|
|
@@ -22624,8 +22634,8 @@ function ModelTokenRatesTable({ rates }) {
|
|
|
22624
22634
|
className: _chunk3ATAYP36cjs.cn.call(void 0, ROW, PAD_X, "py-[var(--spacing-system-xxs)] text-ods-text-primary text-h6"),
|
|
22625
22635
|
children: [
|
|
22626
22636
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "rowheader", className: "min-w-0 flex-1 truncate", children: rate.displayName || rate.modelName }),
|
|
22627
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
22628
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children:
|
|
22637
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkGSFANY2Lcjs.formatTokenRate.call(void 0, rate.inputTokenRate) }),
|
|
22638
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "cell", className: NUMBER_CELL, children: _chunkGSFANY2Lcjs.formatTokenRate.call(void 0, rate.outputTokenRate) })
|
|
22629
22639
|
]
|
|
22630
22640
|
},
|
|
22631
22641
|
rate.modelName
|
|
@@ -22697,7 +22707,7 @@ function modelOption(rate) {
|
|
|
22697
22707
|
return {
|
|
22698
22708
|
label: rate.displayName || rate.modelName,
|
|
22699
22709
|
value: rate.modelName,
|
|
22700
|
-
description:
|
|
22710
|
+
description: _chunkGSFANY2Lcjs.tokenRateProviderLabel.call(void 0, rate.providerType, rate.providerLabel),
|
|
22701
22711
|
icon: providerMark(rate.providerType, rate.providerIcon, "size-full text-ods-text-secondary")
|
|
22702
22712
|
};
|
|
22703
22713
|
}
|
|
@@ -22751,9 +22761,9 @@ function ModelTokenExchange({
|
|
|
22751
22761
|
const [chosen, setChosen] = _react.useState.call(void 0, null);
|
|
22752
22762
|
const balance = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(chosen, () => ( defaultAmount)), () => ( _optionalChain([tokenPrice, 'optionalAccess', _448 => _448.tokens]))), () => ( MODEL_TOKEN_EXCHANGE_BALANCE));
|
|
22753
22763
|
const max = Math.max(amountRange.max, balance, ...presets.map((preset) => preset.tokens));
|
|
22754
|
-
const tokens =
|
|
22755
|
-
const cost =
|
|
22756
|
-
const balancePrice = cost === null ? null :
|
|
22764
|
+
const tokens = _chunkGSFANY2Lcjs.formatTokenAmount.call(void 0, balance);
|
|
22765
|
+
const cost = _chunkGSFANY2Lcjs.tokenCost.call(void 0, balance, tokenPrice);
|
|
22766
|
+
const balancePrice = cost === null ? null : _chunkJHQNUWFMcjs.formatPrice.call(void 0, cost);
|
|
22757
22767
|
const model = rate ? rate.displayName || rate.modelName : "";
|
|
22758
22768
|
const options = models.map(modelOption);
|
|
22759
22769
|
if (rate && !models.some((candidate) => candidate.modelName === rate.modelName)) options.unshift(modelOption(rate));
|
|
@@ -22794,7 +22804,7 @@ function ModelTokenExchange({
|
|
|
22794
22804
|
variant: preset.tokens === balance ? "accent" : "outline",
|
|
22795
22805
|
size: "small",
|
|
22796
22806
|
onClick: () => setChosen(preset.tokens),
|
|
22797
|
-
children: copy.buy.preset(
|
|
22807
|
+
children: copy.buy.preset(_chunkGSFANY2Lcjs.formatTokenAmount.call(void 0, preset.tokens), preset.label)
|
|
22798
22808
|
},
|
|
22799
22809
|
preset.label
|
|
22800
22810
|
)) })
|
|
@@ -22813,7 +22823,7 @@ function ModelTokenExchange({
|
|
|
22813
22823
|
const stated = _nullishCoalesce(models.find((option) => option.providerType === providerType), () => ( (_optionalChain([rate, 'optionalAccess', _449 => _449.providerType]) === providerType ? rate : null)));
|
|
22814
22824
|
return {
|
|
22815
22825
|
id: providerType,
|
|
22816
|
-
name:
|
|
22826
|
+
name: _chunkGSFANY2Lcjs.tokenRateProviderLabel.call(void 0, providerType, _optionalChain([stated, 'optionalAccess', _450 => _450.providerLabel])),
|
|
22817
22827
|
icon: providerMark(providerType, _optionalChain([stated, 'optionalAccess', _451 => _451.providerIcon]), "size-8 text-ods-text-secondary")
|
|
22818
22828
|
};
|
|
22819
22829
|
}),
|
|
@@ -22825,7 +22835,7 @@ function ModelTokenExchange({
|
|
|
22825
22835
|
}
|
|
22826
22836
|
),
|
|
22827
22837
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22828
|
-
|
|
22838
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
22829
22839
|
{
|
|
22830
22840
|
label: copy.use.model,
|
|
22831
22841
|
value: _nullishCoalesce(_optionalChain([rate, 'optionalAccess', _453 => _453.modelName]), () => ( null)),
|
|
@@ -22851,7 +22861,7 @@ function ModelTokenExchange({
|
|
|
22851
22861
|
{
|
|
22852
22862
|
size: "plain",
|
|
22853
22863
|
loading,
|
|
22854
|
-
figure:
|
|
22864
|
+
figure: _chunkGSFANY2Lcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _456 => _456.inputTokenRate])),
|
|
22855
22865
|
words: copy.charge.input
|
|
22856
22866
|
}
|
|
22857
22867
|
),
|
|
@@ -22860,7 +22870,7 @@ function ModelTokenExchange({
|
|
|
22860
22870
|
{
|
|
22861
22871
|
size: "plain",
|
|
22862
22872
|
loading,
|
|
22863
|
-
figure:
|
|
22873
|
+
figure: _chunkGSFANY2Lcjs.formatTokenRate.call(void 0, _optionalChain([rate, 'optionalAccess', _457 => _457.outputTokenRate])),
|
|
22864
22874
|
words: copy.charge.output
|
|
22865
22875
|
}
|
|
22866
22876
|
)
|
|
@@ -22872,9 +22882,9 @@ function ModelTokenExchange({
|
|
|
22872
22882
|
className: "mt-auto flex flex-col rounded-md border border-ods-accent bg-ods-bg p-[var(--spacing-system-mf)]",
|
|
22873
22883
|
children: [
|
|
22874
22884
|
/* @__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, Bar, { className: "w-full max-w-xs" }) : copy.charge.so(_nullishCoalesce(balancePrice, () => ( copy.buy.tokens(tokens))), model) }),
|
|
22875
|
-
/* @__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, Bar, { className: "w-40" }) :
|
|
22885
|
+
/* @__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, Bar, { className: "w-40" }) : _chunkGSFANY2Lcjs.formatTokenAmount.call(void 0, _chunkGSFANY2Lcjs.tokensForBalance.call(void 0, balance, rate.inputTokenRate)) }),
|
|
22876
22886
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-h-[1lh] text-ods-text-primary text-h3", children: copy.charge.read }),
|
|
22877
|
-
/* @__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, Bar, { className: "w-48" }) : copy.charge.orWritten(
|
|
22887
|
+
/* @__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, Bar, { className: "w-48" }) : copy.charge.orWritten(_chunkGSFANY2Lcjs.formatTokenAmount.call(void 0, _chunkGSFANY2Lcjs.tokensForBalance.call(void 0, balance, rate.outputTokenRate))) })
|
|
22878
22888
|
]
|
|
22879
22889
|
}
|
|
22880
22890
|
)
|
|
@@ -23345,7 +23355,7 @@ var SelectButton = _react2.default.forwardRef(
|
|
|
23345
23355
|
}
|
|
23346
23356
|
)
|
|
23347
23357
|
] }),
|
|
23348
|
-
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23358
|
+
tag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { variant: tagVariant, className: "shrink-0", label: tag }),
|
|
23349
23359
|
selected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHFNBMV5Mcjs.CheckCircleIcon, { className: "size-4 shrink-0 text-ods-accent content-md:size-6" })
|
|
23350
23360
|
]
|
|
23351
23361
|
}
|
|
@@ -23372,14 +23382,14 @@ var ConfidenceBadge = ({
|
|
|
23372
23382
|
size = "sm",
|
|
23373
23383
|
className
|
|
23374
23384
|
}) => {
|
|
23375
|
-
const level =
|
|
23385
|
+
const level = _chunkGSFANY2Lcjs.getConfidenceLevel.call(void 0, confidence);
|
|
23376
23386
|
if (level === "none") {
|
|
23377
23387
|
return null;
|
|
23378
23388
|
}
|
|
23379
|
-
const label =
|
|
23380
|
-
const borderClass =
|
|
23381
|
-
const textClass =
|
|
23382
|
-
const bgClass =
|
|
23389
|
+
const label = _chunkGSFANY2Lcjs.getConfidenceLabel.call(void 0, confidence);
|
|
23390
|
+
const borderClass = _chunkGSFANY2Lcjs.getConfidenceBorderClass.call(void 0, confidence);
|
|
23391
|
+
const textClass = _chunkGSFANY2Lcjs.getConfidenceTextClass.call(void 0, confidence);
|
|
23392
|
+
const bgClass = _chunkGSFANY2Lcjs.getConfidenceBgClass.call(void 0, confidence);
|
|
23383
23393
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23384
23394
|
"span",
|
|
23385
23395
|
{
|
|
@@ -23430,9 +23440,9 @@ function SEOEditorPreview({
|
|
|
23430
23440
|
const [isUploading, setIsUploading] = _react.useState.call(void 0, false);
|
|
23431
23441
|
const [fileInputRef, setFileInputRef] = _react.useState.call(void 0, null);
|
|
23432
23442
|
const seoTitleLength = (seoTitle || "").length;
|
|
23433
|
-
const seoTitleTooLong = seoTitleLength >
|
|
23443
|
+
const seoTitleTooLong = seoTitleLength > _chunkGSFANY2Lcjs.SEO_TITLE_MAX_LENGTH;
|
|
23434
23444
|
const seoDescriptionLength = (seoDescription || "").length;
|
|
23435
|
-
const seoDescriptionTooLong = seoDescriptionLength >
|
|
23445
|
+
const seoDescriptionTooLong = seoDescriptionLength > _chunkGSFANY2Lcjs.SEO_DESCRIPTION_MAX_LENGTH;
|
|
23436
23446
|
const displayTitle = seoTitle.trim() || title || "Untitled";
|
|
23437
23447
|
const displayDescription = seoDescription.trim() || summary || "No description";
|
|
23438
23448
|
const hasOgImage = ogImageUrl.trim();
|
|
@@ -23457,10 +23467,10 @@ function SEOEditorPreview({
|
|
|
23457
23467
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
23458
23468
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23459
23469
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23460
|
-
|
|
23470
|
+
_chunkGSFANY2Lcjs.Field,
|
|
23461
23471
|
{
|
|
23462
23472
|
label: "SEO Title",
|
|
23463
|
-
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${
|
|
23473
|
+
error: seoTitleTooLong ? `Too long: search engines may truncate this title (keep it under ${_chunkGSFANY2Lcjs.SEO_TITLE_MAX_LENGTH})` : null,
|
|
23464
23474
|
labelExtras: aiConfidenceSeoTitle !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23465
23475
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
23466
23476
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ConfidenceBadge, { confidence: aiConfidenceSeoTitle, showLabel: true, showPercentage: true, size: "sm" })
|
|
@@ -23475,7 +23485,7 @@ function SEOEditorPreview({
|
|
|
23475
23485
|
children: [
|
|
23476
23486
|
seoTitleLength,
|
|
23477
23487
|
"/",
|
|
23478
|
-
|
|
23488
|
+
_chunkGSFANY2Lcjs.SEO_TITLE_MAX_LENGTH
|
|
23479
23489
|
]
|
|
23480
23490
|
}
|
|
23481
23491
|
),
|
|
@@ -23486,7 +23496,7 @@ function SEOEditorPreview({
|
|
|
23486
23496
|
value: seoTitle || "",
|
|
23487
23497
|
onChange: (e) => onSeoTitleChange(e.target.value),
|
|
23488
23498
|
disabled,
|
|
23489
|
-
maxLength:
|
|
23499
|
+
maxLength: _chunkGSFANY2Lcjs.SEO_TITLE_MAX_LENGTH,
|
|
23490
23500
|
invalid: seoTitleTooLong,
|
|
23491
23501
|
placeholder: "Enter SEO meta title...",
|
|
23492
23502
|
className: "border-ods-border bg-ods-bg text-ods-text-primary"
|
|
@@ -23497,7 +23507,7 @@ function SEOEditorPreview({
|
|
|
23497
23507
|
!seoTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-accent text-h6", children: "Auto-populated from title" })
|
|
23498
23508
|
] }),
|
|
23499
23509
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23500
|
-
|
|
23510
|
+
_chunkGSFANY2Lcjs.Field,
|
|
23501
23511
|
{
|
|
23502
23512
|
label: "SEO Keywords",
|
|
23503
23513
|
labelExtras: aiConfidenceSeoKeywords !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -23529,10 +23539,10 @@ function SEOEditorPreview({
|
|
|
23529
23539
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-lg:grid-cols-2", children: [
|
|
23530
23540
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
23531
23541
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23532
|
-
|
|
23542
|
+
_chunkGSFANY2Lcjs.Field,
|
|
23533
23543
|
{
|
|
23534
23544
|
label: "SEO Description",
|
|
23535
|
-
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${
|
|
23545
|
+
error: seoDescriptionTooLong ? `Too long: search engines may truncate this description (keep it under ${_chunkGSFANY2Lcjs.SEO_DESCRIPTION_MAX_LENGTH})` : null,
|
|
23536
23546
|
labelExtras: aiConfidenceSeoDescription !== void 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
23537
23547
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AIGeneratedBadge, {}),
|
|
23538
23548
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -23555,7 +23565,7 @@ function SEOEditorPreview({
|
|
|
23555
23565
|
children: [
|
|
23556
23566
|
seoDescriptionLength,
|
|
23557
23567
|
"/",
|
|
23558
|
-
|
|
23568
|
+
_chunkGSFANY2Lcjs.SEO_DESCRIPTION_MAX_LENGTH
|
|
23559
23569
|
]
|
|
23560
23570
|
}
|
|
23561
23571
|
),
|
|
@@ -23566,7 +23576,7 @@ function SEOEditorPreview({
|
|
|
23566
23576
|
value: seoDescription || "",
|
|
23567
23577
|
onChange: (e) => onSeoDescriptionChange(e.target.value),
|
|
23568
23578
|
disabled,
|
|
23569
|
-
maxLength:
|
|
23579
|
+
maxLength: _chunkGSFANY2Lcjs.SEO_DESCRIPTION_MAX_LENGTH,
|
|
23570
23580
|
invalid: seoDescriptionTooLong,
|
|
23571
23581
|
placeholder: "Enter SEO meta description...",
|
|
23572
23582
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "resize-none border-ods-border bg-ods-bg text-ods-text-primary", SEO_MEDIA_BOX_HEIGHT)
|
|
@@ -23635,7 +23645,7 @@ function SEOEditorPreview({
|
|
|
23635
23645
|
{
|
|
23636
23646
|
ref: setFileInputRef,
|
|
23637
23647
|
type: "file",
|
|
23638
|
-
accept:
|
|
23648
|
+
accept: _chunk2ZVNXD74cjs.IMAGE_FILE_ACCEPT,
|
|
23639
23649
|
onChange: handleImageUpload,
|
|
23640
23650
|
className: "hidden",
|
|
23641
23651
|
disabled: disabled || isUploading
|
|
@@ -23719,7 +23729,7 @@ function socialIcon(platform) {
|
|
|
23719
23729
|
return _nullishCoalesce(_chunkKTPR66EEcjs.iconOf.call(void 0, SOCIAL_ICONS[platform]), () => ( void 0));
|
|
23720
23730
|
}
|
|
23721
23731
|
function renderSocialIcon(platform) {
|
|
23722
|
-
const key = _nullishCoalesce(
|
|
23732
|
+
const key = _nullishCoalesce(_chunkGSFANY2Lcjs.normalizeSocialPlatform.call(void 0, platform), () => ( "website"));
|
|
23723
23733
|
const icon = _nullishCoalesce(socialIcon(key), () => ( socialIcon("website")));
|
|
23724
23734
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5" }) : null;
|
|
23725
23735
|
}
|
|
@@ -23802,7 +23812,7 @@ function SocialLinksManager({
|
|
|
23802
23812
|
};
|
|
23803
23813
|
const getIcon = (link, platform) => {
|
|
23804
23814
|
const iconKey = _optionalChain([platform, 'optionalAccess', _467 => _467.icon_name]) || link.platform;
|
|
23805
|
-
const key =
|
|
23815
|
+
const key = _chunkGSFANY2Lcjs.normalizeSocialPlatform.call(void 0, iconKey);
|
|
23806
23816
|
if (!key) return null;
|
|
23807
23817
|
const icon = socialIcon(key);
|
|
23808
23818
|
return icon ? _react.createElement.call(void 0, icon, { className: "h-5 w-5 text-ods-text-secondary" }) : null;
|
|
@@ -23818,9 +23828,9 @@ function SocialLinksManager({
|
|
|
23818
23828
|
children: [
|
|
23819
23829
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 items-center justify-center", children: Icon }),
|
|
23820
23830
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid flex-1 grid-cols-2 gap-3", children: [
|
|
23821
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23822
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23823
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23831
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: link.platform, onValueChange: (value) => updateLink(index, "platform", value), children: [
|
|
23832
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
23833
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: platforms.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: p.name, children: p.display_name }, p.name)) })
|
|
23824
23834
|
] }) }),
|
|
23825
23835
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23826
23836
|
_chunkHTRILBJDcjs.Input,
|
|
@@ -23838,15 +23848,15 @@ function SocialLinksManager({
|
|
|
23838
23848
|
)
|
|
23839
23849
|
] }),
|
|
23840
23850
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23841
|
-
|
|
23851
|
+
_chunkU6XWGK53cjs.Select,
|
|
23842
23852
|
{
|
|
23843
23853
|
value: _nullishCoalesce(link.visibility, () => ( "external")),
|
|
23844
23854
|
onValueChange: (value) => updateLink(index, "visibility", value),
|
|
23845
23855
|
children: [
|
|
23846
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23847
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23848
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23849
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23856
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "w-[120px] shrink-0", "aria-label": "Social link visibility", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
23857
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: [
|
|
23858
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "external", children: "Public" }),
|
|
23859
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "internal", children: "Internal" })
|
|
23850
23860
|
] })
|
|
23851
23861
|
]
|
|
23852
23862
|
}
|
|
@@ -23938,7 +23948,7 @@ var StartWithOpenFrameButton = _react.forwardRef.call(void 0,
|
|
|
23938
23948
|
className: _chunk3ATAYP36cjs.cn.call(void 0, modeClassName, className),
|
|
23939
23949
|
style: customStyle,
|
|
23940
23950
|
leftIcon: !loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJZLKYOBcjs.OpenframeLogoIcon, { secondaryColor: iconLowerPath, className: "h-5 w-5", color: iconUpperPath }) : void 0,
|
|
23941
|
-
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23951
|
+
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.StatusBadge, { text: "Beta", variant: "button", colorScheme: "yellow" }),
|
|
23942
23952
|
children
|
|
23943
23953
|
}
|
|
23944
23954
|
);
|
|
@@ -24208,11 +24218,11 @@ function WarningBlock({ title, icon = DEFAULT_ICON, children, className }) {
|
|
|
24208
24218
|
|
|
24209
24219
|
function VideoBitesDisplay({
|
|
24210
24220
|
bites,
|
|
24211
|
-
title =
|
|
24221
|
+
title = _chunk2ZVNXD74cjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
24212
24222
|
filterPublished = true,
|
|
24213
24223
|
showTitle = true
|
|
24214
24224
|
}) {
|
|
24215
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24225
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTILK7SC4cjs.VideoBitesStrip, { bites, title, filterPublished, showTitle });
|
|
24216
24226
|
}
|
|
24217
24227
|
|
|
24218
24228
|
// src/components/features/walkthrough-video.tsx
|
|
@@ -24240,7 +24250,7 @@ function WalkthroughVideo({
|
|
|
24240
24250
|
onOpenChange,
|
|
24241
24251
|
defaultOpen,
|
|
24242
24252
|
defaultOpenPaused,
|
|
24243
|
-
deepLinkParam =
|
|
24253
|
+
deepLinkParam = _chunkGSFANY2Lcjs.WALKTHROUGH_OPEN_QUERY_PARAM,
|
|
24244
24254
|
autoPlayCard = false,
|
|
24245
24255
|
label = "Play Demo Video",
|
|
24246
24256
|
placement,
|
|
@@ -24256,7 +24266,7 @@ function WalkthroughVideo({
|
|
|
24256
24266
|
}) {
|
|
24257
24267
|
const inline = placement === "inline";
|
|
24258
24268
|
const dismissEnabled = dismissal !== false;
|
|
24259
|
-
const storageKey = dismissEnabled && dismissal.storageKey ||
|
|
24269
|
+
const storageKey = dismissEnabled && dismissal.storageKey || _chunkGSFANY2Lcjs.WALKTHROUGH_VIDEO_DISMISS_KEY;
|
|
24260
24270
|
const dismissalId = _optionalChain([video, 'optionalAccess', _473 => _473.id]) != null ? String(video.id) : "dismissed";
|
|
24261
24271
|
const [mounted, setMounted] = _react.useState.call(void 0, false);
|
|
24262
24272
|
const [dismissed, setDismissed] = _react.useState.call(void 0, false);
|
|
@@ -24268,7 +24278,7 @@ function WalkthroughVideo({
|
|
|
24268
24278
|
let delayElapsed = false;
|
|
24269
24279
|
let interacted = inline;
|
|
24270
24280
|
const reveal = () => {
|
|
24271
|
-
if (dismissEnabled &&
|
|
24281
|
+
if (dismissEnabled && _chunkGSFANY2Lcjs.isWalkthroughDismissed.call(void 0, storageKey, dismissalId)) {
|
|
24272
24282
|
setDismissed(true);
|
|
24273
24283
|
return;
|
|
24274
24284
|
}
|
|
@@ -24305,7 +24315,7 @@ function WalkthroughVideo({
|
|
|
24305
24315
|
if (idleHandle !== null && typeof cic === "function") cic(idleHandle);
|
|
24306
24316
|
};
|
|
24307
24317
|
}, [appearDelayMs, dismissEnabled, storageKey, dismissalId, hasVideo, videoId, inline]);
|
|
24308
|
-
const hydrated =
|
|
24318
|
+
const hydrated = _chunkTILK7SC4cjs.useIsHydrated.call(void 0, );
|
|
24309
24319
|
const previewSuppressed = _react.useMemo.call(void 0, () => {
|
|
24310
24320
|
if (!hydrated) return false;
|
|
24311
24321
|
try {
|
|
@@ -24555,7 +24565,7 @@ function WalkthroughVideo({
|
|
|
24555
24565
|
(e) => {
|
|
24556
24566
|
e.stopPropagation();
|
|
24557
24567
|
pausePreviewNow();
|
|
24558
|
-
if (dismissEnabled)
|
|
24568
|
+
if (dismissEnabled) _chunkGSFANY2Lcjs.dismissWalkthrough.call(void 0, storageKey, dismissalId);
|
|
24559
24569
|
setDismissed(true);
|
|
24560
24570
|
},
|
|
24561
24571
|
[dismissEnabled, storageKey, dismissalId, pausePreviewNow]
|
|
@@ -24704,7 +24714,7 @@ function WalkthroughVideo({
|
|
|
24704
24714
|
},
|
|
24705
24715
|
children: [
|
|
24706
24716
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none absolute inset-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24707
|
-
|
|
24717
|
+
_chunk2ZVNXD74cjs.VideoHoverPreviewSurface,
|
|
24708
24718
|
{
|
|
24709
24719
|
url: video.mainVideoUrl || "",
|
|
24710
24720
|
posterUrl: video.posterUrl,
|
|
@@ -24728,7 +24738,7 @@ function WalkthroughVideo({
|
|
|
24728
24738
|
`card-${embedUrlKey}`
|
|
24729
24739
|
) }),
|
|
24730
24740
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24731
|
-
|
|
24741
|
+
_chunkTILK7SC4cjs.CardHitLayer,
|
|
24732
24742
|
{
|
|
24733
24743
|
label: video.title ? `${label}: ${video.title}` : label,
|
|
24734
24744
|
onPointerDown: pausePreviewNow,
|
|
@@ -24737,7 +24747,7 @@ function WalkthroughVideo({
|
|
|
24737
24747
|
}
|
|
24738
24748
|
),
|
|
24739
24749
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "pointer-events-none absolute bottom-[var(--spacing-system-xsf)] left-[var(--spacing-system-xsf)] z-20 flex max-w-[calc(100%-2*var(--spacing-system-xsf))] items-center gap-[var(--spacing-system-xsf)] rounded-full bg-ods-overlay py-[var(--spacing-system-xxs)] pl-[var(--spacing-system-xxs)] pr-[var(--spacing-system-sf)] text-ods-text-primary text-h6", children: [
|
|
24740
|
-
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24750
|
+
presenterAvatarSrc ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { src: presenterAvatarSrc, alt: "", sizePx: 20, variant: "round", className: "shrink-0 border-0" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk63N4FN5Vcjs.VideoPlayBadge, { size: "sm", className: "h-5 w-5 shrink-0" }),
|
|
24741
24751
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: summaryTitle || label })
|
|
24742
24752
|
] }),
|
|
24743
24753
|
showBigUnmute && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -24843,7 +24853,7 @@ function WalkthroughVideo({
|
|
|
24843
24853
|
children: [
|
|
24844
24854
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive2.Title, { className: "sr-only", children: summaryTitle || "Walkthrough video" }),
|
|
24845
24855
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24846
|
-
|
|
24856
|
+
_chunk2ZVNXD74cjs.Video,
|
|
24847
24857
|
{
|
|
24848
24858
|
kind: video.youtubeUrl ? "youtube" : "file",
|
|
24849
24859
|
url: video.youtubeUrl || video.mainVideoUrl,
|
|
@@ -24894,7 +24904,7 @@ function InlineWalkthroughVideo(props) {
|
|
|
24894
24904
|
var _reactquery = require('@tanstack/react-query');
|
|
24895
24905
|
function useWalkthroughVideo(opts) {
|
|
24896
24906
|
const { endpoint, initialData, enabled = true, transformCaptionsUrl } = opts;
|
|
24897
|
-
const captions =
|
|
24907
|
+
const captions = _chunkTILK7SC4cjs.useCaptions.call(void 0, );
|
|
24898
24908
|
const query = _reactquery.useQuery.call(void 0, {
|
|
24899
24909
|
queryKey: ["walkthrough-video", endpoint],
|
|
24900
24910
|
enabled,
|
|
@@ -25092,7 +25102,7 @@ function VideoSourceSelector({
|
|
|
25092
25102
|
}
|
|
25093
25103
|
function DefaultVideoPreview({ videoUrl, onDelete, disabled }) {
|
|
25094
25104
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border", children: [
|
|
25095
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25105
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.Video, { kind: "file", url: videoUrl }) }),
|
|
25096
25106
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25097
25107
|
"button",
|
|
25098
25108
|
{
|
|
@@ -25546,19 +25556,19 @@ function HighlightVideoSection({
|
|
|
25546
25556
|
/* @__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: [
|
|
25547
25557
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { children: "Target Duration" }),
|
|
25548
25558
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25549
|
-
|
|
25559
|
+
_chunkU6XWGK53cjs.Select,
|
|
25550
25560
|
{
|
|
25551
25561
|
value: targetDurationSeconds.toString(),
|
|
25552
25562
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
25553
25563
|
disabled,
|
|
25554
25564
|
children: [
|
|
25555
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25556
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25557
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25558
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25559
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25560
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25561
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25565
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "mt-1 bg-ods-bg-surface", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
25566
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.SelectContent, { className: "bg-ods-card", children: [
|
|
25567
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
25568
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
25569
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
25570
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
25571
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
25562
25572
|
] })
|
|
25563
25573
|
]
|
|
25564
25574
|
}
|
|
@@ -25616,7 +25626,7 @@ function HighlightVideoSection({
|
|
|
25616
25626
|
// Default simple preview — the <Video> SSOT (MuxPlayer) plays
|
|
25617
25627
|
// MP4 and Mux HLS alike; aspect-video box reserves the height.
|
|
25618
25628
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative overflow-hidden rounded-lg border border-ods-border bg-black", children: [
|
|
25619
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25629
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "aspect-video max-h-[300px] w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.Video, { kind: "file", url: highlightVideoUrl, poster: highlightVideoThumbnail || void 0 }) }),
|
|
25620
25630
|
onDeleteHighlight && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25621
25631
|
"button",
|
|
25622
25632
|
{
|
|
@@ -25643,20 +25653,20 @@ function HighlightConfigSection({
|
|
|
25643
25653
|
disabled = false,
|
|
25644
25654
|
className = ""
|
|
25645
25655
|
}) {
|
|
25646
|
-
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,
|
|
25647
|
-
|
|
25656
|
+
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, _chunkGSFANY2Lcjs.Field, { label: "Target Duration", children: (f) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25657
|
+
_chunkU6XWGK53cjs.Select,
|
|
25648
25658
|
{
|
|
25649
25659
|
value: targetDurationSeconds.toString(),
|
|
25650
25660
|
onValueChange: (value) => onTargetDurationChange(parseInt(value)),
|
|
25651
25661
|
disabled,
|
|
25652
25662
|
children: [
|
|
25653
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25654
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25655
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25656
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25657
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25658
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25659
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25663
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { id: f.id, className: "bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
25664
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.SelectContent, { className: "bg-ods-card", children: [
|
|
25665
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "60", children: "1 minute" }),
|
|
25666
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "120", children: "2 minutes" }),
|
|
25667
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "180", children: "3 minutes (Recommended)" }),
|
|
25668
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "240", children: "4 minutes" }),
|
|
25669
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: "300", children: "5 minutes" })
|
|
25660
25670
|
] })
|
|
25661
25671
|
]
|
|
25662
25672
|
}
|
|
@@ -25744,7 +25754,7 @@ var AIStatusIndicator = ({
|
|
|
25744
25754
|
}) => {
|
|
25745
25755
|
const config = statusConfig[status];
|
|
25746
25756
|
const displayText = message || config.label;
|
|
25747
|
-
const confidenceLabel = showConfidence && confidence !== void 0 ? `${
|
|
25757
|
+
const confidenceLabel = showConfidence && confidence !== void 0 ? `${_chunkGSFANY2Lcjs.getConfidenceLabel.call(void 0, confidence)} (${confidence}%)` : null;
|
|
25748
25758
|
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: [
|
|
25749
25759
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25750
25760
|
_chunkUNFCRSYIcjs.SparklesIcon,
|
|
@@ -25752,7 +25762,7 @@ var AIStatusIndicator = ({
|
|
|
25752
25762
|
size: 16,
|
|
25753
25763
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25754
25764
|
status === "loading" && "animate-pulse",
|
|
25755
|
-
confidence !== void 0 && status === "success" ?
|
|
25765
|
+
confidence !== void 0 && status === "success" ? _chunkGSFANY2Lcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
25756
25766
|
)
|
|
25757
25767
|
}
|
|
25758
25768
|
),
|
|
@@ -25761,7 +25771,7 @@ var AIStatusIndicator = ({
|
|
|
25761
25771
|
{
|
|
25762
25772
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25763
25773
|
"text-h6",
|
|
25764
|
-
confidence !== void 0 && status === "success" ?
|
|
25774
|
+
confidence !== void 0 && status === "success" ? _chunkGSFANY2Lcjs.getConfidenceTextClass.call(void 0, confidence) : config.color
|
|
25765
25775
|
),
|
|
25766
25776
|
children: displayText
|
|
25767
25777
|
}
|
|
@@ -25771,8 +25781,8 @@ var AIStatusIndicator = ({
|
|
|
25771
25781
|
{
|
|
25772
25782
|
className: _chunk3ATAYP36cjs.cn.call(void 0,
|
|
25773
25783
|
"rounded-full border px-2 py-0.5 text-h6",
|
|
25774
|
-
|
|
25775
|
-
|
|
25784
|
+
_chunkGSFANY2Lcjs.getConfidenceBorderClass.call(void 0, confidence),
|
|
25785
|
+
_chunkGSFANY2Lcjs.getConfidenceTextClass.call(void 0, confidence)
|
|
25776
25786
|
),
|
|
25777
25787
|
children: confidenceLabel
|
|
25778
25788
|
}
|
|
@@ -26337,7 +26347,7 @@ function ApprovalLevelView({
|
|
|
26337
26347
|
] });
|
|
26338
26348
|
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: [
|
|
26339
26349
|
name,
|
|
26340
|
-
showLabel ? icon : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26350
|
+
showLabel ? icon : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHNLI4OU5cjs.TouchFriendlyTooltip, { content: `${current.label}: ${current.hint}`, side: "top", children: icon })
|
|
26341
26351
|
] });
|
|
26342
26352
|
}
|
|
26343
26353
|
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: [
|
|
@@ -26440,7 +26450,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
|
26440
26450
|
] });
|
|
26441
26451
|
};
|
|
26442
26452
|
var CategorySection = ({ category, editMode, isExpanded, bulkLevel, onToggle, onBulkLevelChange, onPolicyPermissionChange }) => {
|
|
26443
|
-
const { innerRef, containerStyle } =
|
|
26453
|
+
const { innerRef, containerStyle } = _chunkPSIKUDUVcjs.useCollapsible.call(void 0, { expanded: isExpanded, durationMs: 300 });
|
|
26444
26454
|
const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
|
|
26445
26455
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
26446
26456
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -26613,8 +26623,8 @@ function PoliciesTable({
|
|
|
26613
26623
|
accessorKey: "name",
|
|
26614
26624
|
header: "Name",
|
|
26615
26625
|
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: [
|
|
26616
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26617
|
-
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26626
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: row.original.name }),
|
|
26627
|
+
row.original.description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.description })
|
|
26618
26628
|
] }),
|
|
26619
26629
|
meta: { width: "flex-1 min-w-0" }
|
|
26620
26630
|
},
|
|
@@ -26646,7 +26656,7 @@ function PoliciesTable({
|
|
|
26646
26656
|
cell: ({ row }) => {
|
|
26647
26657
|
const { status } = row.original;
|
|
26648
26658
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col items-start gap-1", children: [
|
|
26649
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26659
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { className: "self-start", label: status.label, variant: status.variant }),
|
|
26650
26660
|
status.note && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `text-h6 ${NOTE_TONE_CLASS[status.note.tone]}`, children: status.note.text })
|
|
26651
26661
|
] });
|
|
26652
26662
|
},
|
|
@@ -26668,7 +26678,7 @@ function PoliciesTable({
|
|
|
26668
26678
|
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,
|
|
26669
26679
|
_chunk2QMBXGMQcjs.Button,
|
|
26670
26680
|
{
|
|
26671
|
-
onClick:
|
|
26681
|
+
onClick: _chunkGSFANY2Lcjs.openInNewTab.call(void 0, row.original.href),
|
|
26672
26682
|
variant: "outline",
|
|
26673
26683
|
size: "icon",
|
|
26674
26684
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -26769,7 +26779,7 @@ function PolicySummaryCards({ summary, isLoading = false, hasData = true, now })
|
|
|
26769
26779
|
DashboardInfoCard,
|
|
26770
26780
|
{
|
|
26771
26781
|
title: "Updated",
|
|
26772
|
-
value: hasData && summary.lastUpdatedAt ?
|
|
26782
|
+
value: hasData && summary.lastUpdatedAt ? _chunkPSIKUDUVcjs.formatRelativeTimeFrom.call(void 0, summary.lastUpdatedAt, _nullishCoalesce(now, () => ( /* @__PURE__ */ new Date()))) : EMPTY_VALUE,
|
|
26773
26783
|
valueClassName: "!text-h3",
|
|
26774
26784
|
tooltip: "Policy compliance stats are updated hourly. View a policy's devices for real-time status."
|
|
26775
26785
|
}
|
|
@@ -26885,7 +26895,7 @@ function toValidInstant(iso) {
|
|
|
26885
26895
|
function formatLastRead(iso, now = /* @__PURE__ */ new Date()) {
|
|
26886
26896
|
const date = toValidInstant(iso);
|
|
26887
26897
|
if (!date) return TENANT_EMPTY_VALUE;
|
|
26888
|
-
return now.getTime() - date.getTime() < DAY_MS ?
|
|
26898
|
+
return now.getTime() - date.getTime() < DAY_MS ? _chunkPSIKUDUVcjs.formatRelativeTimeFrom.call(void 0, date, now) : _chunkYRULLK7Ncjs.formatDate.call(void 0, date);
|
|
26889
26899
|
}
|
|
26890
26900
|
function usersCountLabel(count) {
|
|
26891
26901
|
if (count == null) return TENANT_EMPTY_VALUE;
|
|
@@ -26896,8 +26906,8 @@ function usersCountLabel(count) {
|
|
|
26896
26906
|
|
|
26897
26907
|
function TenantAccessCell({ accessState, lastReadAt: lastReadAt2, now }) {
|
|
26898
26908
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26899
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26900
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26909
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { ...accessStateTag(accessState), className: "self-start" }),
|
|
26910
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: `Last read: ${formatLastRead(lastReadAt2, now)}` })
|
|
26901
26911
|
] });
|
|
26902
26912
|
}
|
|
26903
26913
|
|
|
@@ -26908,9 +26918,9 @@ function TenantCell({ provider, name, domain }) {
|
|
|
26908
26918
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
26909
26919
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26910
26920
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Logo, { size: 24, role: "img", "aria-label": label, className: "shrink-0" }),
|
|
26911
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26921
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: name })
|
|
26912
26922
|
] }),
|
|
26913
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26923
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: _nullishCoalesce(domain, () => ( TENANT_EMPTY_VALUE)) })
|
|
26914
26924
|
] });
|
|
26915
26925
|
}
|
|
26916
26926
|
|
|
@@ -26919,10 +26929,10 @@ function TenantCell({ provider, name, domain }) {
|
|
|
26919
26929
|
function TenantCustomerCell({ name, imageUrl, userCount }) {
|
|
26920
26930
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
26921
26931
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
26922
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26923
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26932
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { src: _nullishCoalesce(imageUrl, () => ( void 0)), alt: name, fallback: name, size: "xs", variant: "square" }),
|
|
26933
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: name })
|
|
26924
26934
|
] }),
|
|
26925
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26935
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: usersCountLabel(userCount) })
|
|
26926
26936
|
] });
|
|
26927
26937
|
}
|
|
26928
26938
|
|
|
@@ -26994,7 +27004,7 @@ function TenantsTableView({
|
|
|
26994
27004
|
/* @__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,
|
|
26995
27005
|
_chunk2QMBXGMQcjs.Button,
|
|
26996
27006
|
{
|
|
26997
|
-
onClick:
|
|
27007
|
+
onClick: _chunkGSFANY2Lcjs.openInNewTab.call(void 0, getHref(row.original)),
|
|
26998
27008
|
variant: "outline",
|
|
26999
27009
|
size: "icon",
|
|
27000
27010
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -27075,7 +27085,7 @@ function WaitlistForm({
|
|
|
27075
27085
|
const { toast } = _chunk4FWURR3Wcjs.useToast.call(void 0, );
|
|
27076
27086
|
const { honeypotInputProps, getSignals, resetSignals } = _chunk4FWURR3Wcjs.useHumanitySignals.call(void 0, );
|
|
27077
27087
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
27078
|
-
const isClient =
|
|
27088
|
+
const isClient = _chunkTILK7SC4cjs.useIsHydrated.call(void 0, );
|
|
27079
27089
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
27080
27090
|
const [showConsentError, setShowConsentError] = _react.useState.call(void 0, false);
|
|
27081
27091
|
const rescue = _chunk4FWURR3Wcjs.useFormRescue.call(void 0, {
|
|
@@ -27090,7 +27100,7 @@ function WaitlistForm({
|
|
|
27090
27100
|
_react.useEffect.call(void 0, () => {
|
|
27091
27101
|
rescue.track({ email, phone }, null);
|
|
27092
27102
|
}, [email, phone, rescue]);
|
|
27093
|
-
const isMailDomainGeneric =
|
|
27103
|
+
const isMailDomainGeneric = _chunkGSFANY2Lcjs.hasGenericEmailDomain.call(void 0, email);
|
|
27094
27104
|
const [syncedDefaultEmail, setSyncedDefaultEmail] = _react.useState.call(void 0, defaultEmail);
|
|
27095
27105
|
if (syncedDefaultEmail !== defaultEmail) {
|
|
27096
27106
|
setSyncedDefaultEmail(defaultEmail);
|
|
@@ -27124,7 +27134,7 @@ function WaitlistForm({
|
|
|
27124
27134
|
setShowConsentError(true);
|
|
27125
27135
|
return;
|
|
27126
27136
|
}
|
|
27127
|
-
const finalPhone = phone ?
|
|
27137
|
+
const finalPhone = phone ? _chunkGSFANY2Lcjs.formatPhoneE164.call(void 0, phone, countryCode) : void 0;
|
|
27128
27138
|
try {
|
|
27129
27139
|
await onRegister(email, finalPhone, getSignals(), rescue.submitFields());
|
|
27130
27140
|
rescue.complete();
|
|
@@ -27934,7 +27944,7 @@ function NotificationTile({
|
|
|
27934
27944
|
{
|
|
27935
27945
|
dateTime: createdAtIso,
|
|
27936
27946
|
className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", lockscreen && "self-start"),
|
|
27937
|
-
children: _nullishCoalesce(timeLabel, () => (
|
|
27947
|
+
children: _nullishCoalesce(timeLabel, () => ( _chunkPSIKUDUVcjs.formatTicketRelativeTime.call(void 0, createdAtIso)))
|
|
27938
27948
|
}
|
|
27939
27949
|
) : null,
|
|
27940
27950
|
!lockscreen && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
|
|
@@ -28236,7 +28246,7 @@ function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
|
28236
28246
|
}
|
|
28237
28247
|
function NotificationsHistoryButton({ onClick, historyHref }) {
|
|
28238
28248
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28239
|
-
|
|
28249
|
+
_chunkU6XWGK53cjs.SplitButton,
|
|
28240
28250
|
{
|
|
28241
28251
|
variant: "outline",
|
|
28242
28252
|
fullWidth: true,
|
|
@@ -28386,13 +28396,13 @@ function getApprovalMeta(notification) {
|
|
|
28386
28396
|
function resolutionToStatus(resolution) {
|
|
28387
28397
|
switch (typeof resolution === "string" ? resolution.toUpperCase() : void 0) {
|
|
28388
28398
|
case "APPROVED":
|
|
28389
|
-
return
|
|
28399
|
+
return _chunkYRULLK7Ncjs.APPROVAL_STATUS.APPROVED;
|
|
28390
28400
|
case "REJECTED":
|
|
28391
|
-
return
|
|
28401
|
+
return _chunkYRULLK7Ncjs.APPROVAL_STATUS.REJECTED;
|
|
28392
28402
|
case "CANCELLED":
|
|
28393
|
-
return
|
|
28403
|
+
return _chunkYRULLK7Ncjs.APPROVAL_STATUS.CANCELLED;
|
|
28394
28404
|
default:
|
|
28395
|
-
return
|
|
28405
|
+
return _chunkYRULLK7Ncjs.APPROVAL_STATUS.PENDING;
|
|
28396
28406
|
}
|
|
28397
28407
|
}
|
|
28398
28408
|
function approvalMetaToBatchData(approval) {
|
|
@@ -28438,7 +28448,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28438
28448
|
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _578 => _578.resolution]));
|
|
28439
28449
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
28440
28450
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
28441
|
-
const { innerRef, containerStyle } =
|
|
28451
|
+
const { innerRef, containerStyle } = _chunkPSIKUDUVcjs.useCollapsible.call(void 0, { expanded });
|
|
28442
28452
|
if (!approval || !batchData) return null;
|
|
28443
28453
|
const tileNotification = {
|
|
28444
28454
|
...notification,
|
|
@@ -28501,7 +28511,7 @@ function ApprovalRequestNotificationTile({
|
|
|
28501
28511
|
}
|
|
28502
28512
|
)
|
|
28503
28513
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
28504
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28514
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ApprovalStatusTag, { status }),
|
|
28505
28515
|
approval.resolvedByName ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: [
|
|
28506
28516
|
"by ",
|
|
28507
28517
|
approval.resolvedByName
|
|
@@ -28519,12 +28529,12 @@ function ApprovalRequestNotificationTile({
|
|
|
28519
28529
|
"aria-expanded": expanded,
|
|
28520
28530
|
"aria-label": toggleLabel,
|
|
28521
28531
|
className: "ml-auto w-6 shrink-0 px-0 md:w-8",
|
|
28522
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28532
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.ExpandChevron, { expanded })
|
|
28523
28533
|
}
|
|
28524
28534
|
)
|
|
28525
28535
|
] }),
|
|
28526
28536
|
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,
|
|
28527
|
-
|
|
28537
|
+
_chunkPSIKUDUVcjs.ApprovalBatchMessage,
|
|
28528
28538
|
{
|
|
28529
28539
|
data: batchData,
|
|
28530
28540
|
showExecutionStatus: false,
|
|
@@ -28597,7 +28607,7 @@ function renderCustomerOption(option, isSelected) {
|
|
|
28597
28607
|
const { label, imageUrl } = option;
|
|
28598
28608
|
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: [
|
|
28599
28609
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xs)]", children: [
|
|
28600
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28610
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.SquareAvatar, { src: imageUrl, alt: label, fallback: label, size: "sm", variant: "square" }),
|
|
28601
28611
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", title: label, children: label })
|
|
28602
28612
|
] }),
|
|
28603
28613
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
@@ -28681,7 +28691,7 @@ function TimeTrackerPanel({
|
|
|
28681
28691
|
}));
|
|
28682
28692
|
const selectedCustomer = customerAutocompleteOptions.find((o) => o.value === selectedCustomerId);
|
|
28683
28693
|
const customerStartAdornment = selectedCustomer ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28684
|
-
|
|
28694
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
28685
28695
|
{
|
|
28686
28696
|
src: selectedCustomer.imageUrl,
|
|
28687
28697
|
alt: selectedCustomer.label,
|
|
@@ -28761,7 +28771,7 @@ function TimeTrackerPanel({
|
|
|
28761
28771
|
] }),
|
|
28762
28772
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "grid gap-[var(--spacing-system-m)]", showCustomer && "grid-cols-2"), children: [
|
|
28763
28773
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28764
|
-
|
|
28774
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
28765
28775
|
{
|
|
28766
28776
|
value: selectedTicketId,
|
|
28767
28777
|
onChange: onSelectedTicketChange,
|
|
@@ -28777,7 +28787,7 @@ function TimeTrackerPanel({
|
|
|
28777
28787
|
}
|
|
28778
28788
|
),
|
|
28779
28789
|
showCustomer && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28780
|
-
|
|
28790
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
28781
28791
|
{
|
|
28782
28792
|
value: _nullishCoalesce(selectedCustomerId, () => ( null)),
|
|
28783
28793
|
onChange: onSelectedCustomerChange,
|
|
@@ -28830,7 +28840,7 @@ function TimeTrackerPanel({
|
|
|
28830
28840
|
}
|
|
28831
28841
|
),
|
|
28832
28842
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28833
|
-
|
|
28843
|
+
_chunkU6XWGK53cjs.SplitButton,
|
|
28834
28844
|
{
|
|
28835
28845
|
variant: "outline",
|
|
28836
28846
|
fullWidth: true,
|
|
@@ -28860,7 +28870,7 @@ var STATUS_TAG_SKIN = "gap-[var(--spacing-system-xs)] font-mono font-medium uppe
|
|
|
28860
28870
|
function StatusTag({ status }) {
|
|
28861
28871
|
if (status === "tracking") {
|
|
28862
28872
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28863
|
-
|
|
28873
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
28864
28874
|
{
|
|
28865
28875
|
variant: "success",
|
|
28866
28876
|
className: STATUS_TAG_SKIN,
|
|
@@ -28870,9 +28880,9 @@ function StatusTag({ status }) {
|
|
|
28870
28880
|
);
|
|
28871
28881
|
}
|
|
28872
28882
|
if (status === "paused") {
|
|
28873
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28883
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { variant: "warning", className: STATUS_TAG_SKIN, icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4D25RXYZcjs.PauseIcon, { className: "h-4 w-4" }), label: "Paused" });
|
|
28874
28884
|
}
|
|
28875
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28885
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { variant: "grey", className: STATUS_TAG_SKIN, label: "Ready to Track" });
|
|
28876
28886
|
}
|
|
28877
28887
|
function LastEntryRow({ entry, onClick }) {
|
|
28878
28888
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] border-b border-ods-border bg-ods-bg px-[var(--spacing-system-m)] py-[var(--spacing-system-sf)] last:border-b-0", children: [
|
|
@@ -29067,7 +29077,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
29067
29077
|
|
|
29068
29078
|
// src/components/features/devices/device-last-online.ts
|
|
29069
29079
|
function formatLastOnline(lastSeen) {
|
|
29070
|
-
return `Last Online: ${lastSeen ?
|
|
29080
|
+
return `Last Online: ${lastSeen ? _chunkPSIKUDUVcjs.formatRelativeTime.call(void 0, lastSeen) : "\u2014"}`;
|
|
29071
29081
|
}
|
|
29072
29082
|
|
|
29073
29083
|
// src/components/features/devices/device-name.ts
|
|
@@ -29111,7 +29121,7 @@ var SELECTION_MODE_OPTIONS = [
|
|
|
29111
29121
|
label: "Select Devices by Criteria",
|
|
29112
29122
|
description: CRITERIA_MODE_DESCRIPTION,
|
|
29113
29123
|
disabled: true,
|
|
29114
|
-
trailing: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29124
|
+
trailing: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: "Coming Soon", variant: "grey" })
|
|
29115
29125
|
}
|
|
29116
29126
|
];
|
|
29117
29127
|
var SELECTION_MODE_OPTIONS_ENABLED = [
|
|
@@ -29216,7 +29226,7 @@ function getDeviceStatusConfig(status) {
|
|
|
29216
29226
|
}
|
|
29217
29227
|
}
|
|
29218
29228
|
function getDeviceOperatingSystem(osType) {
|
|
29219
|
-
return
|
|
29229
|
+
return _chunkGSFANY2Lcjs.getOSPlatformId.call(void 0, osType);
|
|
29220
29230
|
}
|
|
29221
29231
|
|
|
29222
29232
|
// src/components/features/devices/device-statuses.ts
|
|
@@ -29392,8 +29402,8 @@ function DevicesFilterToolbar({
|
|
|
29392
29402
|
|
|
29393
29403
|
|
|
29394
29404
|
function formatDateTime(input) {
|
|
29395
|
-
const date =
|
|
29396
|
-
return date === "\u2014" ? date : `${date} ${
|
|
29405
|
+
const date = _chunkYRULLK7Ncjs.formatDate.call(void 0, input);
|
|
29406
|
+
return date === "\u2014" ? date : `${date} ${_chunkYRULLK7Ncjs.formatTime.call(void 0, input)}`;
|
|
29397
29407
|
}
|
|
29398
29408
|
function uniqueById(options) {
|
|
29399
29409
|
const seen = /* @__PURE__ */ new Map();
|
|
@@ -29498,7 +29508,7 @@ function DevicesTableBody({
|
|
|
29498
29508
|
function OrganizationCell({ device }) {
|
|
29499
29509
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
29500
29510
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
29501
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29511
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.EntityImage, { src: fullImageUrl, alt: device.organization || "Customer", className: "size-12 content-md:size-12" }),
|
|
29502
29512
|
/* @__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 || "" }) })
|
|
29503
29513
|
] });
|
|
29504
29514
|
}
|
|
@@ -29542,7 +29552,7 @@ function getDeviceTableColumns(deviceFilters, filtersPending) {
|
|
|
29542
29552
|
const device = row.original;
|
|
29543
29553
|
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: [
|
|
29544
29554
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
29545
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29555
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: getDeviceName(device) }) })
|
|
29546
29556
|
] });
|
|
29547
29557
|
},
|
|
29548
29558
|
meta: { width: "flex-1 content-md:w-1/4" }
|
|
@@ -29555,7 +29565,7 @@ function getDeviceTableColumns(deviceFilters, filtersPending) {
|
|
|
29555
29565
|
const device = row.original;
|
|
29556
29566
|
const statusConfig2 = getDeviceStatusConfig(device.status);
|
|
29557
29567
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col items-start gap-1", children: [
|
|
29558
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29568
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "inline-flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: statusConfig2.label, variant: statusConfig2.variant }) }),
|
|
29559
29569
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "hidden text-ods-text-secondary text-h6 content-md:flex", children: device.last_seen ? formatDateTime(device.last_seen) : "Never" })
|
|
29560
29570
|
] });
|
|
29561
29571
|
},
|
|
@@ -29713,7 +29723,7 @@ function CustomerCell({ device }) {
|
|
|
29713
29723
|
const fullImageUrl = useDeviceImageUrl(device.organizationImageUrl, device.organizationImageHash);
|
|
29714
29724
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
29715
29725
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29716
|
-
|
|
29726
|
+
_chunkU6XWGK53cjs.EntityImage,
|
|
29717
29727
|
{
|
|
29718
29728
|
src: fullImageUrl,
|
|
29719
29729
|
alt: device.organization || "Customer",
|
|
@@ -29721,8 +29731,8 @@ function CustomerCell({ device }) {
|
|
|
29721
29731
|
}
|
|
29722
29732
|
),
|
|
29723
29733
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center", children: [
|
|
29724
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29725
|
-
device.organizationEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29734
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: device.organization || "" }),
|
|
29735
|
+
device.organizationEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: device.organizationEmail })
|
|
29726
29736
|
] })
|
|
29727
29737
|
] });
|
|
29728
29738
|
}
|
|
@@ -30016,8 +30026,8 @@ function DeviceSelector({
|
|
|
30016
30026
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 items-center gap-3", children: [
|
|
30017
30027
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceTypeTile, { type: device.type }),
|
|
30018
30028
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col", children: [
|
|
30019
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30020
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30029
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: getDeviceName(device) }),
|
|
30030
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: formatLastOnline(lastSeen) })
|
|
30021
30031
|
] })
|
|
30022
30032
|
] });
|
|
30023
30033
|
},
|
|
@@ -30052,7 +30062,7 @@ function DeviceSelector({
|
|
|
30052
30062
|
header: "STATUS",
|
|
30053
30063
|
cell: ({ row }) => {
|
|
30054
30064
|
const config = getDeviceStatusConfig(row.original.status);
|
|
30055
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30065
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: config.label, variant: config.variant, className: "w-min" });
|
|
30056
30066
|
},
|
|
30057
30067
|
enableSorting: false,
|
|
30058
30068
|
meta: {
|
|
@@ -30755,7 +30765,7 @@ function DevicesPanelView({
|
|
|
30755
30765
|
] })
|
|
30756
30766
|
] });
|
|
30757
30767
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30758
|
-
|
|
30768
|
+
_chunkU6XWGK53cjs.PageLayout,
|
|
30759
30769
|
{
|
|
30760
30770
|
title,
|
|
30761
30771
|
backButton,
|
|
@@ -30763,7 +30773,7 @@ function DevicesPanelView({
|
|
|
30763
30773
|
actionsVariant: "icon-buttons",
|
|
30764
30774
|
className,
|
|
30765
30775
|
selector: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30766
|
-
|
|
30776
|
+
_chunkTILK7SC4cjs.TabSelector,
|
|
30767
30777
|
{
|
|
30768
30778
|
value: viewMode,
|
|
30769
30779
|
onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _654 => _654(value)]),
|
|
@@ -30829,7 +30839,7 @@ var PACKAGE_SEARCH_LABEL = "Software Name";
|
|
|
30829
30839
|
var PACKAGE_SEARCH_PLACEHOLDER = "Search for Software";
|
|
30830
30840
|
function PackageSearchFieldPlaceholder({ error }) {
|
|
30831
30841
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30832
|
-
|
|
30842
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
30833
30843
|
{
|
|
30834
30844
|
label: PACKAGE_SEARCH_LABEL,
|
|
30835
30845
|
labelVariant: "large",
|
|
@@ -30884,16 +30894,16 @@ function SoftwareScheduleFields({
|
|
|
30884
30894
|
] }),
|
|
30885
30895
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30886
30896
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Time" }),
|
|
30887
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30888
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30889
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30897
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: time, onValueChange: onTimeChange, children: [
|
|
30898
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder: "Select time" }) }),
|
|
30899
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: timeOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30890
30900
|
] })
|
|
30891
30901
|
] }),
|
|
30892
30902
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
30893
30903
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Timezone" }),
|
|
30894
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30895
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30896
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30904
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: timeReference, onValueChange: (value) => onTimeReferenceChange(value), children: [
|
|
30905
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
30906
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: timing.timeReferenceOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: option.value, children: option.label }, option.value)) })
|
|
30897
30907
|
] })
|
|
30898
30908
|
] })
|
|
30899
30909
|
]
|
|
@@ -30959,22 +30969,22 @@ function newSoftwareRow(key) {
|
|
|
30959
30969
|
|
|
30960
30970
|
function InfoCell2({ value, label }) {
|
|
30961
30971
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
30962
|
-
/* @__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,
|
|
30972
|
+
/* @__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, _chunkU6XWGK53cjs.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" }) }) }),
|
|
30963
30973
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: label })
|
|
30964
30974
|
] });
|
|
30965
30975
|
}
|
|
30966
30976
|
function SoftwareRowFields({ row, removable, onChange, onRemove, renderPackageSearch }) {
|
|
30967
30977
|
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: [
|
|
30968
30978
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30969
|
-
|
|
30979
|
+
_chunkU6XWGK53cjs.Select,
|
|
30970
30980
|
{
|
|
30971
30981
|
value: row.packageManager,
|
|
30972
30982
|
onValueChange: (value) => onChange({ ...row, packageManager: value, pkg: null }),
|
|
30973
30983
|
children: [
|
|
30974
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30975
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30984
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { label: "Package Manager", labelVariant: "large", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
30985
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: PACKAGE_MANAGERS.map((manager) => {
|
|
30976
30986
|
const Icon = PACKAGE_MANAGER_ICON[manager];
|
|
30977
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30987
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: manager, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
30978
30988
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: 20, className: "shrink-0 text-ods-text-secondary" }),
|
|
30979
30989
|
PACKAGE_MANAGER_LABEL[manager]
|
|
30980
30990
|
] }) }, manager);
|
|
@@ -31072,7 +31082,7 @@ function SoftwareActionForm({
|
|
|
31072
31082
|
}
|
|
31073
31083
|
);
|
|
31074
31084
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31075
|
-
|
|
31085
|
+
_chunkU6XWGK53cjs.PageLayout,
|
|
31076
31086
|
{
|
|
31077
31087
|
title: copy.formTitle,
|
|
31078
31088
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -31153,7 +31163,7 @@ function LogDrawer({
|
|
|
31153
31163
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, AppLayoutDrawerHeader, { children: [
|
|
31154
31164
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AppLayoutDrawerTitle, { children: "Log Details" }),
|
|
31155
31165
|
(statusTag || timestamp) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
31156
|
-
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31166
|
+
statusTag && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: statusTag.label, variant: statusTag.variant }),
|
|
31157
31167
|
timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h6", children: timestamp })
|
|
31158
31168
|
] })
|
|
31159
31169
|
] }),
|
|
@@ -31161,7 +31171,7 @@ function LogDrawer({
|
|
|
31161
31171
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-0 flex-1 space-y-4 overflow-y-auto", children: [
|
|
31162
31172
|
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 }) }),
|
|
31163
31173
|
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: [
|
|
31164
|
-
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,
|
|
31174
|
+
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, _chunkU6XWGK53cjs.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 }),
|
|
31165
31175
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: field.label })
|
|
31166
31176
|
] }, typeof field.label === "string" ? field.label : "")) }),
|
|
31167
31177
|
children
|
|
@@ -31209,7 +31219,7 @@ function LogsPageView({
|
|
|
31209
31219
|
],
|
|
31210
31220
|
[onRefresh]
|
|
31211
31221
|
);
|
|
31212
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31222
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.PageLayout, { title: "Logs", actions, showHeader, className, children: [
|
|
31213
31223
|
!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: [
|
|
31214
31224
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31215
31225
|
_chunkHTRILBJDcjs.Input,
|
|
@@ -31279,10 +31289,10 @@ var ToolBadge = ({
|
|
|
31279
31289
|
className,
|
|
31280
31290
|
iconClassName
|
|
31281
31291
|
}) => {
|
|
31282
|
-
const text = _nullishCoalesce(label, () => ( (toolType ?
|
|
31292
|
+
const text = _nullishCoalesce(label, () => ( (toolType ? _chunkGSFANY2Lcjs.getToolLabel.call(void 0, toolType) : "")));
|
|
31283
31293
|
const mark = _nullishCoalesce(icon, () => ( (toolType ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWI2OTGKCcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }) : null)));
|
|
31284
31294
|
const linked = (node, linkClassName) => href && targetPlatform ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31285
|
-
|
|
31295
|
+
_chunkTILK7SC4cjs.NavLinkAnchorViaRuntime,
|
|
31286
31296
|
{
|
|
31287
31297
|
href,
|
|
31288
31298
|
targetPlatform,
|
|
@@ -31360,8 +31370,8 @@ function LogsTableView({
|
|
|
31360
31370
|
accessorKey: "logId",
|
|
31361
31371
|
header: logIdHeader ? () => logIdHeader : "Log ID",
|
|
31362
31372
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col justify-center", children: [
|
|
31363
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31364
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31373
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: row.original.timestamp }),
|
|
31374
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: row.original.logId })
|
|
31365
31375
|
] }),
|
|
31366
31376
|
enableSorting: false,
|
|
31367
31377
|
meta: { width: LOG_COLUMN_WIDTHS.logId, alwaysShowHeader: true }
|
|
@@ -31369,7 +31379,7 @@ function LogsTableView({
|
|
|
31369
31379
|
{
|
|
31370
31380
|
accessorKey: "status",
|
|
31371
31381
|
header: "Status",
|
|
31372
|
-
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31382
|
+
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: row.original.status.label, variant: row.original.status.variant }) }),
|
|
31373
31383
|
enableSorting: false,
|
|
31374
31384
|
filterFn: multiSelect,
|
|
31375
31385
|
meta: {
|
|
@@ -31389,7 +31399,7 @@ function LogsTableView({
|
|
|
31389
31399
|
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31390
31400
|
ToolBadge,
|
|
31391
31401
|
{
|
|
31392
|
-
toolType:
|
|
31402
|
+
toolType: _chunkGSFANY2Lcjs.normalizeToolTypeWithFallback.call(void 0, row.original.source.toolType),
|
|
31393
31403
|
iconClassName: "h-4 w-4 content-md:h-6 content-md:w-6"
|
|
31394
31404
|
}
|
|
31395
31405
|
),
|
|
@@ -31401,7 +31411,7 @@ function LogsTableView({
|
|
|
31401
31411
|
filter: {
|
|
31402
31412
|
options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _662 => _662.toolTypes, 'access', _663 => _663.map, 'call', _664 => _664((toolType) => ({
|
|
31403
31413
|
id: toolType,
|
|
31404
|
-
label:
|
|
31414
|
+
label: _chunkGSFANY2Lcjs.toToolLabel.call(void 0, toolType),
|
|
31405
31415
|
value: toolType
|
|
31406
31416
|
}))]), () => ( []))
|
|
31407
31417
|
}
|
|
@@ -31413,8 +31423,8 @@ function LogsTableView({
|
|
|
31413
31423
|
cell: ({ row }) => {
|
|
31414
31424
|
const { deviceName, organization } = logSourceLabels(row.original.device);
|
|
31415
31425
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-h-[60px] flex-col justify-center gap-1 py-2", children: [
|
|
31416
|
-
deviceName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31417
|
-
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31426
|
+
deviceName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: deviceName }),
|
|
31427
|
+
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: organization })
|
|
31418
31428
|
] });
|
|
31419
31429
|
},
|
|
31420
31430
|
enableSorting: false,
|
|
@@ -31428,7 +31438,7 @@ function LogsTableView({
|
|
|
31428
31438
|
{
|
|
31429
31439
|
accessorKey: "description",
|
|
31430
31440
|
header: "Log Details",
|
|
31431
|
-
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31441
|
+
cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { lines: 3, className: "text-ods-text-secondary text-h6", children: row.original.description.title }),
|
|
31432
31442
|
enableSorting: false,
|
|
31433
31443
|
meta: { width: LOG_COLUMN_WIDTHS.description, hideAt: "lg" }
|
|
31434
31444
|
},
|
|
@@ -31459,7 +31469,7 @@ function LogsTableView({
|
|
|
31459
31469
|
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,
|
|
31460
31470
|
_chunk2QMBXGMQcjs.Button,
|
|
31461
31471
|
{
|
|
31462
|
-
onClick: getLogHref ?
|
|
31472
|
+
onClick: getLogHref ? _chunkGSFANY2Lcjs.openInNewTab.call(void 0, getLogHref(row.original)) : void 0,
|
|
31463
31473
|
variant: "outline",
|
|
31464
31474
|
size: "icon",
|
|
31465
31475
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -31680,29 +31690,29 @@ function scriptExecutionStatus(status) {
|
|
|
31680
31690
|
|
|
31681
31691
|
function ExecutionSourceBadge({ source, className }) {
|
|
31682
31692
|
const tagProps = { as: "span", variant: "outline", className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0", className) };
|
|
31683
|
-
if (source === "SCHEDULED") return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31693
|
+
if (source === "SCHEDULED") return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { ...tagProps, label: "Scheduled" });
|
|
31684
31694
|
if (source === "AI_ASSISTANT") {
|
|
31685
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31695
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { ...tagProps, label: "Mingo", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPSIKUDUVcjs.AgentMark, { agent: "mingo", className: "size-4" }) });
|
|
31686
31696
|
}
|
|
31687
31697
|
return null;
|
|
31688
31698
|
}
|
|
31689
31699
|
function ExecutionTimestampCell({ timestamp, executionId }) {
|
|
31690
31700
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31691
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31692
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31701
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: timestamp }),
|
|
31702
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: executionId })
|
|
31693
31703
|
] });
|
|
31694
31704
|
}
|
|
31695
31705
|
function ExecutionStatusCell({ status }) {
|
|
31696
31706
|
const presentation = scriptExecutionStatus(status);
|
|
31697
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31707
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { label: _nullishCoalesce(_optionalChain([presentation, 'optionalAccess', _677 => _677.label]), () => ( String(_nullishCoalesce(status, () => ( ""))))), variant: _nullishCoalesce(_optionalChain([presentation, 'optionalAccess', _678 => _678.variant]), () => ( "grey")) }) });
|
|
31698
31708
|
}
|
|
31699
31709
|
function ExecutionDeviceCell({ name, organization }) {
|
|
31700
31710
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31701
31711
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-1", children: [
|
|
31702
31712
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPTK7GOIIcjs.MonitorIcon, { className: "size-6 shrink-0 text-ods-text-secondary" }),
|
|
31703
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31713
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: name }) : name })
|
|
31704
31714
|
] }),
|
|
31705
|
-
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31715
|
+
organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: organization })
|
|
31706
31716
|
] });
|
|
31707
31717
|
}
|
|
31708
31718
|
function ExecutionInitiatorCell({
|
|
@@ -31715,15 +31725,15 @@ function ExecutionInitiatorCell({
|
|
|
31715
31725
|
avatar,
|
|
31716
31726
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
|
|
31717
31727
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xxs)]", children: [
|
|
31718
|
-
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31728
|
+
typeof name === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: name }) : name,
|
|
31719
31729
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ExecutionSourceBadge, { source })
|
|
31720
31730
|
] }),
|
|
31721
|
-
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31731
|
+
scriptName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: scriptName })
|
|
31722
31732
|
] })
|
|
31723
31733
|
] });
|
|
31724
31734
|
}
|
|
31725
31735
|
function ExecutionResultCell({ result, empty = null }) {
|
|
31726
|
-
return result ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31736
|
+
return result ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { lines: 2, children: result }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: empty });
|
|
31727
31737
|
}
|
|
31728
31738
|
function ScriptExecutionResult({
|
|
31729
31739
|
result,
|
|
@@ -31741,14 +31751,14 @@ function ScriptExecutionResult({
|
|
|
31741
31751
|
|
|
31742
31752
|
function ScriptNameCell({ name, description }) {
|
|
31743
31753
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31744
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31745
|
-
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31754
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: name }),
|
|
31755
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: description })
|
|
31746
31756
|
] });
|
|
31747
31757
|
}
|
|
31748
31758
|
function ScheduleDateTimeCell({ date, time }) {
|
|
31749
31759
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col justify-center gap-1", children: [
|
|
31750
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31751
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31760
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: date }),
|
|
31761
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: time })
|
|
31752
31762
|
] });
|
|
31753
31763
|
}
|
|
31754
31764
|
|
|
@@ -31834,7 +31844,7 @@ function OpenInNewTabCell({ href }) {
|
|
|
31834
31844
|
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,
|
|
31835
31845
|
_chunk2QMBXGMQcjs.Button,
|
|
31836
31846
|
{
|
|
31837
|
-
onClick:
|
|
31847
|
+
onClick: _chunkGSFANY2Lcjs.openInNewTab.call(void 0, href),
|
|
31838
31848
|
variant: "outline",
|
|
31839
31849
|
size: "icon",
|
|
31840
31850
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -31867,7 +31877,7 @@ function ScriptExecutionsTable({
|
|
|
31867
31877
|
ExecutionInitiatorCell,
|
|
31868
31878
|
{
|
|
31869
31879
|
avatar: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31870
|
-
|
|
31880
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
31871
31881
|
{
|
|
31872
31882
|
variant: "round",
|
|
31873
31883
|
size: "md",
|
|
@@ -31947,7 +31957,7 @@ function ScriptSchedulesTable({
|
|
|
31947
31957
|
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" })),
|
|
31948
31958
|
cell(
|
|
31949
31959
|
SCHEDULE_COLUMNS.dateTime,
|
|
31950
|
-
(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,
|
|
31960
|
+
(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, _chunkU6XWGK53cjs.TruncateText, { tone: "secondary", children: row.trigger }) : null
|
|
31951
31961
|
),
|
|
31952
31962
|
cell(SCHEDULE_COLUMNS.repeat, (row) => row.repeat ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: VALUE_CLASS, children: row.repeat }) : null),
|
|
31953
31963
|
cell(SCHEDULE_COLUMNS.deviceCount, (row) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: VALUE_CLASS, children: row.deviceCount }))
|
|
@@ -31983,9 +31993,9 @@ function ScriptSchedulesTable({
|
|
|
31983
31993
|
|
|
31984
31994
|
// src/components/features/scripts/shell-types.ts
|
|
31985
31995
|
var SCRIPT_SHELL_TYPES = [
|
|
31986
|
-
{ id:
|
|
31987
|
-
{ id:
|
|
31988
|
-
{ id:
|
|
31996
|
+
{ id: _chunkGSFANY2Lcjs.ShellTypeValues.POWERSHELL, label: "PowerShell", value: "powershell", icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon },
|
|
31997
|
+
{ id: _chunkGSFANY2Lcjs.ShellTypeValues.CMD, label: "CMD", value: "cmd", icon: _chunkNIVJEJSGcjs.TerminalSquareIcon },
|
|
31998
|
+
{ id: _chunkGSFANY2Lcjs.ShellTypeValues.BASH, label: "Bash", value: "bash", icon: _chunkTRUW6DDAcjs.TerminalIcon }
|
|
31989
31999
|
];
|
|
31990
32000
|
function scriptShellType(value) {
|
|
31991
32001
|
return SCRIPT_SHELL_TYPES.find((shell) => shell.value === value);
|
|
@@ -32036,7 +32046,7 @@ function ScriptsTable({
|
|
|
32036
32046
|
SCRIPT_COLUMNS.authorId,
|
|
32037
32047
|
(row) => row.author ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
|
|
32038
32048
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32039
|
-
|
|
32049
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
32040
32050
|
{
|
|
32041
32051
|
variant: "round",
|
|
32042
32052
|
size: "sm",
|
|
@@ -32046,7 +32056,7 @@ function ScriptsTable({
|
|
|
32046
32056
|
initialsClassName: "text-ods-text-secondary"
|
|
32047
32057
|
}
|
|
32048
32058
|
),
|
|
32049
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32059
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: row.author.name }) })
|
|
32050
32060
|
] }) : null
|
|
32051
32061
|
)
|
|
32052
32062
|
];
|
|
@@ -32167,7 +32177,7 @@ function slotValue(minutesOfDay) {
|
|
|
32167
32177
|
return `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}`;
|
|
32168
32178
|
}
|
|
32169
32179
|
function slotLabel(minutesOfDay) {
|
|
32170
|
-
return
|
|
32180
|
+
return _chunkYRULLK7Ncjs.formatTime.call(void 0, new Date(1970, 0, 1, Math.floor(minutesOfDay / 60), minutesOfDay % 60));
|
|
32171
32181
|
}
|
|
32172
32182
|
function getTimeSlotOptions(forDate, timeReference) {
|
|
32173
32183
|
const base = slotBaseMinutes(timeReference);
|
|
@@ -32388,9 +32398,9 @@ function ReconnectWindowFields({
|
|
|
32388
32398
|
invalid
|
|
32389
32399
|
}
|
|
32390
32400
|
),
|
|
32391
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32392
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32393
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32401
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: unit, onValueChange: (next) => onUnitChange(next), disabled, children: [
|
|
32402
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: controlWidth, "aria-label": "Stop retry after unit", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
32403
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
32394
32404
|
] })
|
|
32395
32405
|
] });
|
|
32396
32406
|
}
|
|
@@ -32458,7 +32468,7 @@ function ScheduleOfflineFields({ showErrors, disabled = false }) {
|
|
|
32458
32468
|
options
|
|
32459
32469
|
}
|
|
32460
32470
|
),
|
|
32461
|
-
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,
|
|
32471
|
+
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, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", className: "text-ods-error", children: intervalError }) })
|
|
32462
32472
|
]
|
|
32463
32473
|
}
|
|
32464
32474
|
) }) })
|
|
@@ -32567,8 +32577,8 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
|
|
|
32567
32577
|
// Dragging towards the edge of the screen — or past it — scrolls whatever
|
|
32568
32578
|
// actually scrolls there: the page, the layout's `<main>`, or the list
|
|
32569
32579
|
// itself when it has its own overflow.
|
|
32570
|
-
|
|
32571
|
-
|
|
32580
|
+
_chunkHNLI4OU5cjs.autoScrollAncestors.call(void 0, list),
|
|
32581
|
+
_chunkHNLI4OU5cjs.autoScrollBothWays.call(void 0, list),
|
|
32572
32582
|
// One target for the whole list: which slot a drop lands in is answered by
|
|
32573
32583
|
// geometry, so this only has to say "inside the list, or outside it".
|
|
32574
32584
|
_adapter.dropTargetForElements.call(void 0, {
|
|
@@ -32865,7 +32875,7 @@ function useSortableItem() {
|
|
|
32865
32875
|
return _combine.combine.call(void 0,
|
|
32866
32876
|
// The drag has to start as a "move", or its first frame is drawn with the
|
|
32867
32877
|
// copy cursor — see `drag-effect.ts`.
|
|
32868
|
-
|
|
32878
|
+
_chunkHNLI4OU5cjs.holdMoveDragEffect.call(void 0, item),
|
|
32869
32879
|
_adapter.draggable.call(void 0, {
|
|
32870
32880
|
element: item,
|
|
32871
32881
|
dragHandle: handle,
|
|
@@ -33289,24 +33299,24 @@ function ScheduleTimingFields({
|
|
|
33289
33299
|
// `''` reads as "no selection" to Radix, so the placeholder shows
|
|
33290
33300
|
// until a slot is picked — a date at midnight no longer
|
|
33291
33301
|
// masquerades as a chosen 12:00 AM.
|
|
33292
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33302
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6XWGK53cjs.Select, { value: field.value, onValueChange: field.onChange, disabled: fieldsDisabled, children: [
|
|
33293
33303
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33294
|
-
|
|
33304
|
+
_chunkU6XWGK53cjs.SelectTrigger,
|
|
33295
33305
|
{
|
|
33296
33306
|
className: "w-full",
|
|
33297
33307
|
error: _nullishCoalesce(pastTimeError, () => ( (showErrors ? _optionalChain([fieldState, 'access', _716 => _716.error, 'optionalAccess', _717 => _717.message]) : void 0))),
|
|
33298
33308
|
invalid: !!pastTimeError || showErrors && !!fieldState.error,
|
|
33299
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33309
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, { placeholder: "Select time" })
|
|
33300
33310
|
}
|
|
33301
33311
|
),
|
|
33302
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33312
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: timeSlots.length === 0 ? (
|
|
33303
33313
|
// Deliberately NOT a `SelectItem` — there is nothing here
|
|
33304
33314
|
// to select, and a selectable row would put a bogus value
|
|
33305
33315
|
// in the form. It replaces a popup that opened blank; the
|
|
33306
33316
|
// Date field carries the same sentence for whoever never
|
|
33307
33317
|
// opens this one.
|
|
33308
33318
|
/* @__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 })
|
|
33309
|
-
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33319
|
+
) : timeSlots.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33310
33320
|
] })
|
|
33311
33321
|
)
|
|
33312
33322
|
}
|
|
@@ -33320,14 +33330,14 @@ function ScheduleTimingFields({
|
|
|
33320
33330
|
name: "timeReference",
|
|
33321
33331
|
control,
|
|
33322
33332
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33323
|
-
|
|
33333
|
+
_chunkU6XWGK53cjs.Select,
|
|
33324
33334
|
{
|
|
33325
33335
|
value: field.value,
|
|
33326
33336
|
onValueChange: (next) => handleTimeReferenceChange(field.onChange, next),
|
|
33327
33337
|
disabled: fieldsDisabled,
|
|
33328
33338
|
children: [
|
|
33329
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33330
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33339
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "w-full", "aria-label": "Timezone", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
33340
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: SCHEDULE_TIME_REFERENCE_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33331
33341
|
]
|
|
33332
33342
|
}
|
|
33333
33343
|
)
|
|
@@ -33387,7 +33397,7 @@ function ScheduleTimingFields({
|
|
|
33387
33397
|
name: "repeatUnit",
|
|
33388
33398
|
control,
|
|
33389
33399
|
render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33390
|
-
|
|
33400
|
+
_chunkU6XWGK53cjs.Select,
|
|
33391
33401
|
{
|
|
33392
33402
|
value: field.value,
|
|
33393
33403
|
onValueChange: (next) => {
|
|
@@ -33398,8 +33408,8 @@ function ScheduleTimingFields({
|
|
|
33398
33408
|
},
|
|
33399
33409
|
disabled: fieldsDisabled || !repeatEnabled,
|
|
33400
33410
|
children: [
|
|
33401
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33402
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33411
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectTrigger, { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectValue, {}) }),
|
|
33412
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectContent, { children: DURATION_UNIT_OPTIONS.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
|
|
33403
33413
|
]
|
|
33404
33414
|
}
|
|
33405
33415
|
)
|
|
@@ -33418,7 +33428,7 @@ function ScheduleFormFields({
|
|
|
33418
33428
|
disabled = false,
|
|
33419
33429
|
renderScriptSearch,
|
|
33420
33430
|
timeReferenceGate = "off",
|
|
33421
|
-
platforms =
|
|
33431
|
+
platforms = _chunkGSFANY2Lcjs.OS_PLATFORMS,
|
|
33422
33432
|
comingSoonPlatforms = [],
|
|
33423
33433
|
getTimeSlots,
|
|
33424
33434
|
nameLayout = "stacked",
|
|
@@ -33488,7 +33498,7 @@ function ScheduleFormFields({
|
|
|
33488
33498
|
platform.id
|
|
33489
33499
|
);
|
|
33490
33500
|
}) }),
|
|
33491
|
-
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,
|
|
33501
|
+
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, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", className: "text-ods-error", children: _nullishCoalesce(formState.errors.supportedPlatforms.message, () => ( "")) }) })
|
|
33492
33502
|
]
|
|
33493
33503
|
}
|
|
33494
33504
|
);
|
|
@@ -33564,7 +33574,7 @@ function ScheduleFormFields({
|
|
|
33564
33574
|
// src/components/features/scripts/schedule-form/schedule-script-search-field.tsx
|
|
33565
33575
|
|
|
33566
33576
|
function ScriptPlatformIcons({ platforms }) {
|
|
33567
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children:
|
|
33577
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex shrink-0 items-center gap-0.5", children: _chunkGSFANY2Lcjs.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)) });
|
|
33568
33578
|
}
|
|
33569
33579
|
function ScheduleScriptSearchField({
|
|
33570
33580
|
scriptId,
|
|
@@ -33590,7 +33600,7 @@ function ScheduleScriptSearchField({
|
|
|
33590
33600
|
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: [
|
|
33591
33601
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkK6VWTUCHcjs.Label, { className: "text-h4", children: "Select Script" }),
|
|
33592
33602
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33593
|
-
|
|
33603
|
+
_chunkU6XWGK53cjs.Autocomplete,
|
|
33594
33604
|
{
|
|
33595
33605
|
options,
|
|
33596
33606
|
value: scriptId || null,
|
|
@@ -33605,7 +33615,7 @@ function ScheduleScriptSearchField({
|
|
|
33605
33615
|
error,
|
|
33606
33616
|
invalid,
|
|
33607
33617
|
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: [
|
|
33608
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33618
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { className: isSelected ? "text-ods-accent" : void 0, children: option.label }) }),
|
|
33609
33619
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScriptPlatformIcons, { platforms: _nullishCoalesce(_optionalChain([scripts, 'access', _723 => _723.find, 'call', _724 => _724((s) => s.id === option.value), 'optionalAccess', _725 => _725.supportedPlatforms]), () => ( [])) })
|
|
33610
33620
|
] })
|
|
33611
33621
|
}
|
|
@@ -33637,7 +33647,7 @@ function getKnowledgeBaseOpenColumn(getHref) {
|
|
|
33637
33647
|
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,
|
|
33638
33648
|
_chunk2QMBXGMQcjs.Button,
|
|
33639
33649
|
{
|
|
33640
|
-
onClick:
|
|
33650
|
+
onClick: _chunkGSFANY2Lcjs.openInNewTab.call(void 0, getHref(row.original)),
|
|
33641
33651
|
variant: "outline",
|
|
33642
33652
|
size: "icon",
|
|
33643
33653
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkANTDIQKKcjs.ArrowRightUpIcon, { className: "h-5 w-5" }),
|
|
@@ -33663,9 +33673,9 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33663
33673
|
/* @__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" }) }),
|
|
33664
33674
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33665
33675
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33666
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33676
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: item.name }) }),
|
|
33667
33677
|
tagStatus && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33668
|
-
|
|
33678
|
+
_chunkJHQNUWFMcjs.Tag,
|
|
33669
33679
|
{
|
|
33670
33680
|
variant: KNOWLEDGE_BASE_STATUS_VARIANT[tagStatus],
|
|
33671
33681
|
label: tagStatus,
|
|
@@ -33673,7 +33683,7 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33673
33683
|
}
|
|
33674
33684
|
)
|
|
33675
33685
|
] }),
|
|
33676
|
-
item.type === "ARTICLE" && item.summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33686
|
+
item.type === "ARTICLE" && item.summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: item.summary })
|
|
33677
33687
|
] })
|
|
33678
33688
|
] });
|
|
33679
33689
|
},
|
|
@@ -33688,8 +33698,8 @@ function getKnowledgeBaseColumns(mode) {
|
|
|
33688
33698
|
const ts = mode === "archive" ? _nullishCoalesce(row.original.updatedAt, () => ( row.original.createdAt)) : row.original.createdAt;
|
|
33689
33699
|
if (!ts) return null;
|
|
33690
33700
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col whitespace-nowrap", children: [
|
|
33691
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children:
|
|
33692
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children:
|
|
33701
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: _chunkYRULLK7Ncjs.formatDate.call(void 0, ts) }),
|
|
33702
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-heading-5 text-ods-text-secondary", children: _chunkYRULLK7Ncjs.formatTime.call(void 0, ts) })
|
|
33693
33703
|
] });
|
|
33694
33704
|
},
|
|
33695
33705
|
enableSorting: false,
|
|
@@ -33753,7 +33763,7 @@ function KnowledgeBaseArticleView({
|
|
|
33753
33763
|
className = "px-[var(--spacing-system-l)] pb-[var(--spacing-system-l)]"
|
|
33754
33764
|
}) {
|
|
33755
33765
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33756
|
-
|
|
33766
|
+
_chunkU6XWGK53cjs.PageLayout,
|
|
33757
33767
|
{
|
|
33758
33768
|
title,
|
|
33759
33769
|
backButton: onBack ? { label: "Back", onClick: onBack } : void 0,
|
|
@@ -33762,11 +33772,11 @@ function KnowledgeBaseArticleView({
|
|
|
33762
33772
|
menuActions,
|
|
33763
33773
|
className,
|
|
33764
33774
|
children: [
|
|
33765
|
-
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,
|
|
33766
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33775
|
+
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)) }),
|
|
33776
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.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: [
|
|
33767
33777
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
33768
|
-
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33769
|
-
|
|
33778
|
+
author.deleted ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHNLI4OU5cjs.DeletedUserAvatar, { size: "md" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33779
|
+
_chunkJHQNUWFMcjs.SquareAvatar,
|
|
33770
33780
|
{
|
|
33771
33781
|
src: author.imageUrl,
|
|
33772
33782
|
fallback: _nullishCoalesce(author.name, () => ( "A")),
|
|
@@ -33776,12 +33786,12 @@ function KnowledgeBaseArticleView({
|
|
|
33776
33786
|
}
|
|
33777
33787
|
),
|
|
33778
33788
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
33779
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33789
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { className: author.deleted ? "text-ods-error" : void 0, children: _nullishCoalesce(author.name, () => ( "Unknown")) }),
|
|
33780
33790
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Author" })
|
|
33781
33791
|
] })
|
|
33782
33792
|
] }),
|
|
33783
33793
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 flex-col justify-center", children: [
|
|
33784
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33794
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { children: updatedLabel }),
|
|
33785
33795
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Updated" })
|
|
33786
33796
|
] }),
|
|
33787
33797
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -33792,7 +33802,7 @@ function KnowledgeBaseArticleView({
|
|
|
33792
33802
|
}
|
|
33793
33803
|
),
|
|
33794
33804
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 min-w-0 flex-col items-start justify-center gap-[var(--spacing-system-xxs)]", children: [
|
|
33795
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33805
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { variant: KNOWLEDGE_BASE_STATUS_VARIANT[status], label: status }),
|
|
33796
33806
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-heading-5 text-ods-text-secondary", children: "Status" })
|
|
33797
33807
|
] })
|
|
33798
33808
|
] }) }),
|
|
@@ -33885,13 +33895,13 @@ function ConversationCard({
|
|
|
33885
33895
|
),
|
|
33886
33896
|
style: tint,
|
|
33887
33897
|
children: [
|
|
33888
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33898
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGSFANY2Lcjs.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: [
|
|
33889
33899
|
"\u201C",
|
|
33890
33900
|
request,
|
|
33891
33901
|
"\u201D"
|
|
33892
33902
|
] }) }),
|
|
33893
33903
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33894
|
-
|
|
33904
|
+
_chunkGSFANY2Lcjs.ChatTurn,
|
|
33895
33905
|
{
|
|
33896
33906
|
avatar: responder.avatar,
|
|
33897
33907
|
name: responder.name,
|
|
@@ -33907,7 +33917,7 @@ function ConversationCard({
|
|
|
33907
33917
|
),
|
|
33908
33918
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mt-auto flex items-center justify-between gap-[var(--spacing-system-sf)] text-ods-text-secondary text-h6", children: [
|
|
33909
33919
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: footerLabel }),
|
|
33910
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33920
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJHQNUWFMcjs.Tag, { as: "span", label: footerValue, variant: footerTone === "attention" ? "warning" : "badge" })
|
|
33911
33921
|
] })
|
|
33912
33922
|
]
|
|
33913
33923
|
}
|
|
@@ -33927,7 +33937,7 @@ function Highlights({ items, className }) {
|
|
|
33927
33937
|
if (items.length === 0) return null;
|
|
33928
33938
|
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: [
|
|
33929
33939
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "shrink-0 text-ods-flamingo-cyan" }),
|
|
33930
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33940
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", triggerClassName: "flex-1", children: text })
|
|
33931
33941
|
] }, text)) });
|
|
33932
33942
|
}
|
|
33933
33943
|
function Example({
|
|
@@ -33956,7 +33966,7 @@ function Example({
|
|
|
33956
33966
|
mark(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _727 => _727.mark]), () => ( requesterMark))),
|
|
33957
33967
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
33958
33968
|
who(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _728 => _728.name]), () => ( labels.requester)), _nullishCoalesce(_optionalChain([requester, 'optionalAccess', _729 => _729.note]), () => ( labels.requesterNote))),
|
|
33959
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33969
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { lines: 2, variant: "h4", className: "min-h-[2lh]", children: `\u201C${example.request}\u201D` })
|
|
33960
33970
|
] })
|
|
33961
33971
|
] }),
|
|
33962
33972
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 gap-2.5 border-t border-ods-border pt-3", children: [
|
|
@@ -33965,7 +33975,7 @@ function Example({
|
|
|
33965
33975
|
who(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _731 => _731.name]), () => ( labels.responder)), _nullishCoalesce(_optionalChain([responder, 'optionalAccess', _732 => _732.note]), () => ( labels.responderNote))),
|
|
33966
33976
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-start gap-2", children: [
|
|
33967
33977
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIBCMGBWcjs.CheckIcon, { size: 16, className: "mt-0.5 shrink-0 text-ods-flamingo-cyan" }),
|
|
33968
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33978
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", className: "min-h-[2lh]", triggerClassName: "flex-1", children: example.outcome })
|
|
33969
33979
|
] })
|
|
33970
33980
|
] })
|
|
33971
33981
|
] })
|
|
@@ -34122,16 +34132,16 @@ function CapabilityExplorer({
|
|
|
34122
34132
|
),
|
|
34123
34133
|
children: [
|
|
34124
34134
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
34125
|
-
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,
|
|
34135
|
+
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, _chunk2ZVNXD74cjs.EntityIcon, { icon: { name: item.iconName }, size: 18 }) }),
|
|
34126
34136
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
34127
34137
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h3", { className: "flex min-w-0 items-center gap-2 text-ods-text-primary text-h4", children: [
|
|
34128
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34138
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { as: "span", variant: "h4", triggerClassName: "flex-1", children: item.title }),
|
|
34129
34139
|
item.badge
|
|
34130
34140
|
] }),
|
|
34131
|
-
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34141
|
+
item.caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { variant: "h6", tone: "secondary", children: item.caption })
|
|
34132
34142
|
] })
|
|
34133
34143
|
] }),
|
|
34134
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34144
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { lines: 3, variant: "h6", tone: "secondary", className: "min-h-[3lh]", children: item.intro }),
|
|
34135
34145
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-lg border border-ods-border", children: renderScreen(item, { compact: true }) }),
|
|
34136
34146
|
item.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34137
34147
|
Example,
|
|
@@ -34206,7 +34216,7 @@ function CapabilityExplorer({
|
|
|
34206
34216
|
"flex size-9 shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg",
|
|
34207
34217
|
selected ? "text-ods-flamingo-cyan" : "text-ods-text-secondary"
|
|
34208
34218
|
),
|
|
34209
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34219
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZVNXD74cjs.EntityIcon, { icon: { name: item.iconName }, size: 18 })
|
|
34210
34220
|
}
|
|
34211
34221
|
),
|
|
34212
34222
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "min-w-0 flex-1", children: [
|
|
@@ -34259,8 +34269,8 @@ function CapabilityExplorer({
|
|
|
34259
34269
|
),
|
|
34260
34270
|
children: [
|
|
34261
34271
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col overflow-hidden", children: [
|
|
34262
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34263
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34272
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { lines: 2, variant: "h2", className: "mb-2", children: active.title }),
|
|
34273
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU6XWGK53cjs.TruncateText, { lines: 3, variant: "h4", tone: "secondary", className: "min-h-[3lh]", children: active.intro }),
|
|
34264
34274
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, Highlights, { items: _nullishCoalesce(active.highlights, () => ( [])), className: "mt-auto" })
|
|
34265
34275
|
] }),
|
|
34266
34276
|
active.example && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|