@flamingo-stack/openframe-frontend-core 0.0.321 → 0.0.322
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-PDOTUMJC.cjs → chunk-27UIZKPP.cjs} +31 -31
- package/dist/{chunk-PDOTUMJC.cjs.map → chunk-27UIZKPP.cjs.map} +1 -1
- package/dist/{chunk-TFCGMQPK.cjs → chunk-2JFIPRZM.cjs} +25 -25
- package/dist/{chunk-TFCGMQPK.cjs.map → chunk-2JFIPRZM.cjs.map} +1 -1
- package/dist/{chunk-DEEBJBFQ.js → chunk-2L6XJRWU.js} +2 -2
- package/dist/{chunk-WCRJWZUA.js → chunk-2ZMEIVHB.js} +4 -4
- package/dist/{chunk-TV6VD6LP.js → chunk-3CUHOXPN.js} +4 -4
- package/dist/{chunk-J65CQLX6.js → chunk-3NOGHXE5.js} +2 -2
- package/dist/{chunk-CD56IAXU.cjs → chunk-6GHEXJ6H.cjs} +5 -5
- package/dist/{chunk-CD56IAXU.cjs.map → chunk-6GHEXJ6H.cjs.map} +1 -1
- package/dist/{chunk-WCCZGPPP.cjs → chunk-AOD7KNNL.cjs} +62 -62
- package/dist/{chunk-WCCZGPPP.cjs.map → chunk-AOD7KNNL.cjs.map} +1 -1
- package/dist/{chunk-MN2WQYXS.cjs → chunk-APGXPHP2.cjs} +15 -15
- package/dist/{chunk-MN2WQYXS.cjs.map → chunk-APGXPHP2.cjs.map} +1 -1
- package/dist/{chunk-FNK67HTC.js → chunk-HYW3BYDX.js} +2 -2
- package/dist/{chunk-6DH2TCRH.js → chunk-KFEIMA2T.js} +2 -2
- package/dist/{chunk-563D7EB2.js → chunk-KJNTCTV4.js} +4 -4
- package/dist/{chunk-NEY347ME.cjs → chunk-M5RW5ASP.cjs} +26 -26
- package/dist/{chunk-NEY347ME.cjs.map → chunk-M5RW5ASP.cjs.map} +1 -1
- package/dist/{chunk-Y2TJ64S5.cjs → chunk-MQFGEYOG.cjs} +12 -12
- package/dist/{chunk-Y2TJ64S5.cjs.map → chunk-MQFGEYOG.cjs.map} +1 -1
- package/dist/{chunk-TPJJJ6KC.js → chunk-MQHD6CTN.js} +145 -90
- package/dist/chunk-MQHD6CTN.js.map +1 -0
- package/dist/{chunk-7M3QIYFW.cjs → chunk-NCFCQWMH.cjs} +56 -56
- package/dist/{chunk-7M3QIYFW.cjs.map → chunk-NCFCQWMH.cjs.map} +1 -1
- package/dist/{chunk-GAQAPTBU.cjs → chunk-NTEAD4ZM.cjs} +37 -37
- package/dist/{chunk-GAQAPTBU.cjs.map → chunk-NTEAD4ZM.cjs.map} +1 -1
- package/dist/{chunk-VNWWOPIY.js → chunk-PZYSR23M.js} +2 -2
- package/dist/{chunk-HALW7FPF.js → chunk-S3X2KEFA.js} +2 -2
- package/dist/{chunk-ZFER75HU.cjs → chunk-S6W5YPAB.cjs} +9 -9
- package/dist/{chunk-ZFER75HU.cjs.map → chunk-S6W5YPAB.cjs.map} +1 -1
- package/dist/{chunk-7C5G45KU.cjs → chunk-UFUOM6ZT.cjs} +732 -677
- package/dist/chunk-UFUOM6ZT.cjs.map +1 -0
- package/dist/{chunk-V4U7ASRM.js → chunk-WQ4OIM4E.js} +2 -2
- package/dist/{chunk-BRERE4E5.js → chunk-XF3GIE5U.js} +4 -4
- package/dist/{chunk-5HQIFRRE.cjs → chunk-YKIU2GXU.cjs} +7 -7
- package/dist/{chunk-5HQIFRRE.cjs.map → chunk-YKIU2GXU.cjs.map} +1 -1
- package/dist/components/case-studies/index.cjs +8 -8
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/chat/embeddable-chat.d.ts +2 -0
- package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/chat/mingo-chat-history.d.ts +11 -2
- package/dist/components/chat/mingo-chat-history.d.ts.map +1 -1
- package/dist/components/chat/mingo-welcome.d.ts +5 -1
- package/dist/components/chat/mingo-welcome.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +5 -5
- package/dist/components/docs/index.js +4 -4
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/help-center-pages/index.cjs +20 -20
- package/dist/components/help-center-pages/index.js +11 -11
- package/dist/components/index.cjs +120 -120
- package/dist/components/index.js +9 -9
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +5 -5
- package/dist/components/tickets/index.js +4 -4
- package/dist/components/ui/index.cjs +2 -2
- package/dist/components/ui/index.js +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/src/components/chat/embeddable-chat.tsx +15 -1
- package/src/components/chat/mingo-chat-history.tsx +136 -53
- package/src/components/chat/mingo-welcome.tsx +6 -1
- package/dist/chunk-7C5G45KU.cjs.map +0 -1
- package/dist/chunk-TPJJJ6KC.js.map +0 -1
- /package/dist/{chunk-DEEBJBFQ.js.map → chunk-2L6XJRWU.js.map} +0 -0
- /package/dist/{chunk-WCRJWZUA.js.map → chunk-2ZMEIVHB.js.map} +0 -0
- /package/dist/{chunk-TV6VD6LP.js.map → chunk-3CUHOXPN.js.map} +0 -0
- /package/dist/{chunk-J65CQLX6.js.map → chunk-3NOGHXE5.js.map} +0 -0
- /package/dist/{chunk-FNK67HTC.js.map → chunk-HYW3BYDX.js.map} +0 -0
- /package/dist/{chunk-6DH2TCRH.js.map → chunk-KFEIMA2T.js.map} +0 -0
- /package/dist/{chunk-563D7EB2.js.map → chunk-KJNTCTV4.js.map} +0 -0
- /package/dist/{chunk-VNWWOPIY.js.map → chunk-PZYSR23M.js.map} +0 -0
- /package/dist/{chunk-HALW7FPF.js.map → chunk-S3X2KEFA.js.map} +0 -0
- /package/dist/{chunk-V4U7ASRM.js.map → chunk-WQ4OIM4E.js.map} +0 -0
- /package/dist/{chunk-BRERE4E5.js.map → chunk-XF3GIE5U.js.map} +0 -0
|
@@ -6143,12 +6143,15 @@ function MingoChatHistoryRow({
|
|
|
6143
6143
|
}
|
|
6144
6144
|
);
|
|
6145
6145
|
}
|
|
6146
|
-
function MingoChatHistorySkeleton({
|
|
6146
|
+
function MingoChatHistorySkeleton({
|
|
6147
|
+
className,
|
|
6148
|
+
searchable = false
|
|
6149
|
+
}) {
|
|
6147
6150
|
const groups = [
|
|
6148
6151
|
{ withBadge: 2, widths: ["w-3/5", "w-4/5", "w-2/5", "w-3/4"] },
|
|
6149
6152
|
{ withBadge: 0, widths: ["w-1/2", "w-3/5", "w-2/3"] }
|
|
6150
6153
|
];
|
|
6151
|
-
return /* @__PURE__ */ _jsxruntime.
|
|
6154
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
6152
6155
|
"div",
|
|
6153
6156
|
{
|
|
6154
6157
|
"aria-hidden": true,
|
|
@@ -6156,20 +6159,51 @@ function MingoChatHistorySkeleton({ className }) {
|
|
|
6156
6159
|
"flex flex-1 min-h-0 flex-col gap-[var(--spacing-system-m)] overflow-hidden",
|
|
6157
6160
|
className
|
|
6158
6161
|
),
|
|
6159
|
-
children:
|
|
6160
|
-
/* @__PURE__ */ _jsxruntime.
|
|
6161
|
-
|
|
6162
|
-
"div",
|
|
6163
|
-
|
|
6164
|
-
|
|
6165
|
-
|
|
6166
|
-
|
|
6167
|
-
|
|
6168
|
-
|
|
6169
|
-
|
|
6170
|
-
|
|
6171
|
-
|
|
6172
|
-
|
|
6162
|
+
children: [
|
|
6163
|
+
searchable && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-11 md:h-12 shrink-0 items-center gap-2 rounded-[6px] border border-ods-border bg-ods-card px-3", children: [
|
|
6164
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "size-4 md:size-6 shrink-0 animate-pulse rounded bg-ods-border" }),
|
|
6165
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-32 animate-pulse rounded bg-ods-border" })
|
|
6166
|
+
] }),
|
|
6167
|
+
groups.map((group, g) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
6168
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-3 w-16 animate-pulse rounded bg-ods-border" }),
|
|
6169
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden rounded-md border border-ods-border", children: group.widths.map((w, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
6170
|
+
"div",
|
|
6171
|
+
{
|
|
6172
|
+
className: "flex h-12 items-center gap-[var(--spacing-system-xsf)] bg-ods-bg border-b border-ods-border px-[var(--spacing-system-s)] last:border-b-0",
|
|
6173
|
+
children: [
|
|
6174
|
+
i < group.withBadge && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 shrink-0 animate-pulse rounded-md bg-ods-border" }),
|
|
6175
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-4 animate-pulse rounded bg-ods-border", w) })
|
|
6176
|
+
]
|
|
6177
|
+
},
|
|
6178
|
+
i
|
|
6179
|
+
)) })
|
|
6180
|
+
] }, g))
|
|
6181
|
+
]
|
|
6182
|
+
}
|
|
6183
|
+
);
|
|
6184
|
+
}
|
|
6185
|
+
function DialogSearchBar({
|
|
6186
|
+
initialValue,
|
|
6187
|
+
onSearchChange
|
|
6188
|
+
}) {
|
|
6189
|
+
const [value, setValue] = React13.useState(_nullishCoalesce(initialValue, () => ( "")));
|
|
6190
|
+
const debounced = _chunk27IO7V3Pcjs.useDebounce.call(void 0, value, 300);
|
|
6191
|
+
const lastEmitted = React13.useRef(_nullishCoalesce(initialValue, () => ( "")));
|
|
6192
|
+
React13.useEffect(() => {
|
|
6193
|
+
if (debounced === lastEmitted.current) return;
|
|
6194
|
+
lastEmitted.current = debounced;
|
|
6195
|
+
onSearchChange(debounced);
|
|
6196
|
+
}, [debounced, onSearchChange]);
|
|
6197
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6198
|
+
_chunkQJGRP2YEcjs.Input,
|
|
6199
|
+
{
|
|
6200
|
+
type: "text",
|
|
6201
|
+
value,
|
|
6202
|
+
onChange: (e) => setValue(e.target.value),
|
|
6203
|
+
placeholder: "Search for Chats",
|
|
6204
|
+
"aria-label": "Search chats",
|
|
6205
|
+
startAdornment: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}),
|
|
6206
|
+
className: "shrink-0"
|
|
6173
6207
|
}
|
|
6174
6208
|
);
|
|
6175
6209
|
}
|
|
@@ -6179,12 +6213,15 @@ function MingoChatHistory({
|
|
|
6179
6213
|
onSelectDialog,
|
|
6180
6214
|
onRequestRename,
|
|
6181
6215
|
onRequestArchive,
|
|
6216
|
+
searchQuery,
|
|
6217
|
+
onSearchChange,
|
|
6182
6218
|
hasMore = false,
|
|
6183
6219
|
isLoadingMore = false,
|
|
6184
6220
|
onLoadMore,
|
|
6185
6221
|
className
|
|
6186
6222
|
}) {
|
|
6187
6223
|
const groups = React13.useMemo(() => groupDialogs(dialogs), [dialogs]);
|
|
6224
|
+
const noSearchResults = groups.length === 0 && !!_optionalChain([searchQuery, 'optionalAccess', _98 => _98.trim, 'call', _99 => _99()]);
|
|
6188
6225
|
const scrollRef = React13.useRef(null);
|
|
6189
6226
|
const [fade, setFade] = React13.useState({ top: false, bottom: false });
|
|
6190
6227
|
const updateFade = React13.useCallback(() => {
|
|
@@ -6215,7 +6252,7 @@ function MingoChatHistory({
|
|
|
6215
6252
|
const io = new IntersectionObserver(
|
|
6216
6253
|
([entry]) => {
|
|
6217
6254
|
if (entry.isIntersecting && !isLoadingMoreRef.current) {
|
|
6218
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
6255
|
+
_optionalChain([onLoadMoreRef, 'access', _100 => _100.current, 'optionalCall', _101 => _101()]);
|
|
6219
6256
|
}
|
|
6220
6257
|
},
|
|
6221
6258
|
{ root, rootMargin: "120px", threshold: 0.1 }
|
|
@@ -6223,65 +6260,68 @@ function MingoChatHistory({
|
|
|
6223
6260
|
io.observe(sentinel);
|
|
6224
6261
|
return () => io.disconnect();
|
|
6225
6262
|
}, [hasMore]);
|
|
6226
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "relative flex flex-1 min-h-0 flex-col", className), children: [
|
|
6227
|
-
/* @__PURE__ */ _jsxruntime.
|
|
6228
|
-
|
|
6229
|
-
|
|
6230
|
-
|
|
6231
|
-
|
|
6232
|
-
|
|
6233
|
-
|
|
6234
|
-
|
|
6235
|
-
|
|
6236
|
-
{
|
|
6237
|
-
|
|
6238
|
-
|
|
6239
|
-
|
|
6240
|
-
|
|
6241
|
-
|
|
6242
|
-
{
|
|
6243
|
-
|
|
6244
|
-
|
|
6245
|
-
|
|
6246
|
-
|
|
6247
|
-
|
|
6248
|
-
|
|
6249
|
-
|
|
6250
|
-
|
|
6251
|
-
|
|
6252
|
-
|
|
6253
|
-
|
|
6254
|
-
|
|
6255
|
-
|
|
6256
|
-
|
|
6257
|
-
|
|
6258
|
-
|
|
6259
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6260
|
-
"div",
|
|
6261
|
-
{
|
|
6262
|
-
"aria-hidden": true,
|
|
6263
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
6264
|
-
"pointer-events-none absolute inset-x-0 top-0 h-12 transition-opacity duration-150",
|
|
6265
|
-
fade.top ? "opacity-100" : "opacity-0"
|
|
6266
|
-
),
|
|
6267
|
-
style: {
|
|
6268
|
-
background: "linear-gradient(0deg, transparent 0%, var(--color-bg-card) 100%)"
|
|
6263
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "relative flex flex-1 min-h-0 flex-col gap-[var(--spacing-system-m)]", className), children: [
|
|
6264
|
+
onSearchChange ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogSearchBar, { initialValue: searchQuery, onSearchChange }) : null,
|
|
6265
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex flex-1 min-h-0 flex-col", children: [
|
|
6266
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
6267
|
+
"div",
|
|
6268
|
+
{
|
|
6269
|
+
ref: scrollRef,
|
|
6270
|
+
onScroll: updateFade,
|
|
6271
|
+
className: "flex flex-1 min-h-0 flex-col gap-[var(--spacing-system-m)] overflow-y-auto",
|
|
6272
|
+
children: [
|
|
6273
|
+
noSearchResults ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "py-[var(--spacing-system-m)] text-center text-h5 text-ods-text-secondary", children: "No chats found" }) : groups.map((group) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
6274
|
+
"div",
|
|
6275
|
+
{
|
|
6276
|
+
className: "flex flex-col gap-[var(--spacing-system-xxs)]",
|
|
6277
|
+
children: [
|
|
6278
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h5 text-ods-text-secondary", children: group.label }),
|
|
6279
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden rounded-md border border-ods-border", children: group.items.map((dialog) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6280
|
+
MingoChatHistoryRow,
|
|
6281
|
+
{
|
|
6282
|
+
dialog,
|
|
6283
|
+
isActive: dialog.id === activeDialogId,
|
|
6284
|
+
onSelect: onSelectDialog,
|
|
6285
|
+
onRequestRename,
|
|
6286
|
+
onRequestArchive
|
|
6287
|
+
},
|
|
6288
|
+
dialog.id
|
|
6289
|
+
)) })
|
|
6290
|
+
]
|
|
6291
|
+
},
|
|
6292
|
+
group.key
|
|
6293
|
+
)),
|
|
6294
|
+
hasMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-px shrink-0" }) : null
|
|
6295
|
+
]
|
|
6269
6296
|
}
|
|
6270
|
-
|
|
6271
|
-
|
|
6272
|
-
|
|
6273
|
-
|
|
6274
|
-
|
|
6275
|
-
|
|
6276
|
-
|
|
6277
|
-
|
|
6278
|
-
|
|
6279
|
-
|
|
6280
|
-
|
|
6281
|
-
|
|
6297
|
+
),
|
|
6298
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6299
|
+
"div",
|
|
6300
|
+
{
|
|
6301
|
+
"aria-hidden": true,
|
|
6302
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
6303
|
+
"pointer-events-none absolute inset-x-0 top-0 h-12 transition-opacity duration-150",
|
|
6304
|
+
fade.top ? "opacity-100" : "opacity-0"
|
|
6305
|
+
),
|
|
6306
|
+
style: {
|
|
6307
|
+
background: "linear-gradient(0deg, transparent 0%, var(--color-bg-card) 100%)"
|
|
6308
|
+
}
|
|
6282
6309
|
}
|
|
6283
|
-
|
|
6284
|
-
|
|
6310
|
+
),
|
|
6311
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6312
|
+
"div",
|
|
6313
|
+
{
|
|
6314
|
+
"aria-hidden": true,
|
|
6315
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
6316
|
+
"pointer-events-none absolute inset-x-0 bottom-0 h-12 transition-opacity duration-150",
|
|
6317
|
+
fade.bottom ? "opacity-100" : "opacity-0"
|
|
6318
|
+
),
|
|
6319
|
+
style: {
|
|
6320
|
+
background: "linear-gradient(180deg, transparent 0%, var(--color-bg-card) 100%)"
|
|
6321
|
+
}
|
|
6322
|
+
}
|
|
6323
|
+
)
|
|
6324
|
+
] })
|
|
6285
6325
|
] });
|
|
6286
6326
|
}
|
|
6287
6327
|
|
|
@@ -6330,6 +6370,7 @@ function MingoWelcome({
|
|
|
6330
6370
|
isLoadingHistory = false,
|
|
6331
6371
|
loadError = false,
|
|
6332
6372
|
onRetry,
|
|
6373
|
+
historySearchable = false,
|
|
6333
6374
|
onStartGuideChat,
|
|
6334
6375
|
className
|
|
6335
6376
|
}) {
|
|
@@ -6401,7 +6442,7 @@ function MingoWelcome({
|
|
|
6401
6442
|
children: "Try again"
|
|
6402
6443
|
}
|
|
6403
6444
|
)
|
|
6404
|
-
] }) : isLoadingHistory ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoChatHistorySkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex flex-1 min-h-0 flex-col", children: [
|
|
6445
|
+
] }) : isLoadingHistory ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoChatHistorySkeleton, { searchable: historySearchable }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex flex-1 min-h-0 flex-col", children: [
|
|
6405
6446
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
6406
6447
|
"div",
|
|
6407
6448
|
{
|
|
@@ -6558,7 +6599,7 @@ function GuideWelcome({
|
|
|
6558
6599
|
() => quickActions.map((action) => ({
|
|
6559
6600
|
id: action.id,
|
|
6560
6601
|
label: action.label,
|
|
6561
|
-
onSelect: () => _optionalChain([onQuickAction, 'optionalCall',
|
|
6602
|
+
onSelect: () => _optionalChain([onQuickAction, 'optionalCall', _102 => _102(action)])
|
|
6562
6603
|
})),
|
|
6563
6604
|
[quickActions, onQuickAction]
|
|
6564
6605
|
);
|
|
@@ -6999,7 +7040,7 @@ function ChatDialogModals({
|
|
|
6999
7040
|
RenameChatModal,
|
|
7000
7041
|
{
|
|
7001
7042
|
isOpen: renameTarget != null,
|
|
7002
|
-
initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess',
|
|
7043
|
+
initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess', _103 => _103.title]), () => ( "")),
|
|
7003
7044
|
onClose: () => setRenameTarget(null),
|
|
7004
7045
|
onSave: onConfirmRename
|
|
7005
7046
|
}
|
|
@@ -7263,7 +7304,7 @@ function ChatAttachmentAddButton({
|
|
|
7263
7304
|
const canAddMore = slotsAvailable > 0 && !disabled;
|
|
7264
7305
|
const handlePick = () => {
|
|
7265
7306
|
if (!canAddMore) return;
|
|
7266
|
-
_optionalChain([fileInputRef, 'access',
|
|
7307
|
+
_optionalChain([fileInputRef, 'access', _104 => _104.current, 'optionalAccess', _105 => _105.click, 'call', _106 => _106()]);
|
|
7267
7308
|
};
|
|
7268
7309
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
7269
7310
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -7629,7 +7670,7 @@ function ChatComposer({
|
|
|
7629
7670
|
}) {
|
|
7630
7671
|
const contextEnabled = !!contextPicker && !archived;
|
|
7631
7672
|
const selected = _nullishCoalesce(selectedContextItems, () => ( []));
|
|
7632
|
-
const entityTypes = _optionalChain([contextPicker, 'optionalAccess',
|
|
7673
|
+
const entityTypes = _optionalChain([contextPicker, 'optionalAccess', _107 => _107.entityTypes]);
|
|
7633
7674
|
const iconByType = React23.useMemo(() => {
|
|
7634
7675
|
const map = /* @__PURE__ */ new Map();
|
|
7635
7676
|
for (const t of _nullishCoalesce(entityTypes, () => ( []))) map.set(t.type, t.icon);
|
|
@@ -7658,7 +7699,7 @@ function ChatComposer({
|
|
|
7658
7699
|
startIcon: contextEnabled ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7659
7700
|
ChatComposerPlusMenu,
|
|
7660
7701
|
{
|
|
7661
|
-
onToggle: () => contextPickerOpen ? _optionalChain([onCloseContextPicker, 'optionalCall',
|
|
7702
|
+
onToggle: () => contextPickerOpen ? _optionalChain([onCloseContextPicker, 'optionalCall', _108 => _108()]) : _optionalChain([onOpenContextPicker, 'optionalCall', _109 => _109()]),
|
|
7662
7703
|
open: contextPickerOpen,
|
|
7663
7704
|
disabled: attachmentsDisabled,
|
|
7664
7705
|
dropdown: contextPicker ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -7667,8 +7708,8 @@ function ChatComposer({
|
|
|
7667
7708
|
open: contextPickerOpen,
|
|
7668
7709
|
config: contextPicker,
|
|
7669
7710
|
selectedItems: selected,
|
|
7670
|
-
onToggleItem: (item) => _optionalChain([onToggleContextItem, 'optionalCall',
|
|
7671
|
-
onClose: () => _optionalChain([onCloseContextPicker, 'optionalCall',
|
|
7711
|
+
onToggleItem: (item) => _optionalChain([onToggleContextItem, 'optionalCall', _110 => _110(item)]),
|
|
7712
|
+
onClose: () => _optionalChain([onCloseContextPicker, 'optionalCall', _111 => _111()]),
|
|
7672
7713
|
mentionQuery
|
|
7673
7714
|
}
|
|
7674
7715
|
) : void 0
|
|
@@ -7873,8 +7914,8 @@ ChatSidebarSkeleton.displayName = "ChatSidebarSkeleton";
|
|
|
7873
7914
|
var DialogListItem = _react.forwardRef.call(void 0,
|
|
7874
7915
|
({ className, dialog, isActive, onDialogSelect, onClick, ...props }, ref) => {
|
|
7875
7916
|
const handleClick = (e) => {
|
|
7876
|
-
_optionalChain([onDialogSelect, 'optionalCall',
|
|
7877
|
-
_optionalChain([onClick, 'optionalCall',
|
|
7917
|
+
_optionalChain([onDialogSelect, 'optionalCall', _112 => _112(dialog.id)]);
|
|
7918
|
+
_optionalChain([onClick, 'optionalCall', _113 => _113(e)]);
|
|
7878
7919
|
};
|
|
7879
7920
|
const formatTimestamp2 = (timestamp) => {
|
|
7880
7921
|
if (!timestamp) return "";
|
|
@@ -7933,7 +7974,7 @@ var ChatSidebar = _react.forwardRef.call(void 0,
|
|
|
7933
7974
|
(entries) => {
|
|
7934
7975
|
const [entry] = entries;
|
|
7935
7976
|
if (entry.isIntersecting && !isFetchingRef.current) {
|
|
7936
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
7977
|
+
_optionalChain([onLoadMoreRef, 'access', _114 => _114.current, 'optionalCall', _115 => _115()]);
|
|
7937
7978
|
}
|
|
7938
7979
|
},
|
|
7939
7980
|
{ root: scrollContainer, rootMargin: "100px", threshold: 0.1 }
|
|
@@ -8049,7 +8090,7 @@ function isSameOriginAbsoluteHref(href) {
|
|
|
8049
8090
|
function computeIsNewTab(runtime, href, targetPlatform) {
|
|
8050
8091
|
if (!href) return false;
|
|
8051
8092
|
if (runtime.navigation.mode === "embed") return !isSameOriginAbsoluteHref(href);
|
|
8052
|
-
return _nullishCoalesce(_optionalChain([runtime, 'access',
|
|
8093
|
+
return _nullishCoalesce(_optionalChain([runtime, 'access', _116 => _116.navigation, 'access', _117 => _117.decideNewTab, 'optionalCall', _118 => _118({ href, targetPlatform })]), () => ( decideNewTab({
|
|
8053
8094
|
href,
|
|
8054
8095
|
targetPlatform,
|
|
8055
8096
|
currentSource: _nullishCoalesce(runtime.source, () => ( ""))
|
|
@@ -8113,7 +8154,7 @@ function resolveExternalNavigation(args) {
|
|
|
8113
8154
|
function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
|
|
8114
8155
|
const isNewTab = runtime ? computeIsNewTab(runtime, href, _nullishCoalesce(targetPlatform, () => ( null))) : false;
|
|
8115
8156
|
if (isNewTab) {
|
|
8116
|
-
if (_optionalChain([runtime, 'optionalAccess',
|
|
8157
|
+
if (_optionalChain([runtime, 'optionalAccess', _119 => _119.navigation, 'access', _120 => _120.openExternal])) runtime.navigation.openExternal(href);
|
|
8117
8158
|
else window.open(href, "_blank", NEW_TAB_FEATURES);
|
|
8118
8159
|
return;
|
|
8119
8160
|
}
|
|
@@ -8121,7 +8162,7 @@ function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
|
|
|
8121
8162
|
if (target.includes("#") && _chunk27IO7V3Pcjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunk27IO7V3Pcjs.STICKY_HEADER_OFFSET_PX })) {
|
|
8122
8163
|
return;
|
|
8123
8164
|
}
|
|
8124
|
-
const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
|
8165
|
+
const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _121 => _121.navigation, 'access', _122 => _122.navigate, 'optionalCall', _123 => _123({ href, path, targetPlatform })]), () => ( false));
|
|
8125
8166
|
if (!handled) {
|
|
8126
8167
|
if (fallbackNavigate) fallbackNavigate(target);
|
|
8127
8168
|
else window.location.assign(target);
|
|
@@ -8186,7 +8227,7 @@ function NavLinkAnchorViaRuntime({
|
|
|
8186
8227
|
path,
|
|
8187
8228
|
targetPlatform
|
|
8188
8229
|
}, router.push);
|
|
8189
|
-
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
8230
|
+
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _124 => _124.closeChat])) panel.closeChat();
|
|
8190
8231
|
};
|
|
8191
8232
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8192
8233
|
"a",
|
|
@@ -8311,7 +8352,7 @@ function EntityAuthorCard({
|
|
|
8311
8352
|
renderEmptyAuthor = false,
|
|
8312
8353
|
className
|
|
8313
8354
|
}) {
|
|
8314
|
-
const hasAuthor = !!_optionalChain([author, 'optionalAccess',
|
|
8355
|
+
const hasAuthor = !!_optionalChain([author, 'optionalAccess', _125 => _125.full_name]);
|
|
8315
8356
|
if (!hasAuthor && !renderEmptyAuthor) return null;
|
|
8316
8357
|
const effectiveAuthor = hasAuthor ? author : EMPTY_AUTHOR_PLACEHOLDER;
|
|
8317
8358
|
const formatted = publishedAt ? formatDate(publishedAt) : "";
|
|
@@ -8647,8 +8688,8 @@ function AdminContentCard({
|
|
|
8647
8688
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-['DM_Sans'] font-bold text-ods-text-primary text-[18px] leading-snug line-clamp-2 break-words", children: title }),
|
|
8648
8689
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] text-ods-text-secondary truncate", children: subtitle }),
|
|
8649
8690
|
summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-relaxed text-ods-text-secondary line-clamp-2", children: summary }),
|
|
8650
|
-
(Number(_optionalChain([platforms, 'optionalAccess',
|
|
8651
|
-
_optionalChain([platforms, 'optionalAccess',
|
|
8691
|
+
(Number(_optionalChain([platforms, 'optionalAccess', _126 => _126.length])) > 0 || badges) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 flex-wrap", children: [
|
|
8692
|
+
_optionalChain([platforms, 'optionalAccess', _127 => _127.map, 'call', _128 => _128((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8652
8693
|
PlatformBadge,
|
|
8653
8694
|
{
|
|
8654
8695
|
platform: { id: p.id || p.platform_id || "", name: p.name, display_name: p.display_name || p.name },
|
|
@@ -8704,8 +8745,8 @@ function WhatIShippedCard({ entry, placeholderUrl, actions, anchorProps, classNa
|
|
|
8704
8745
|
) : null,
|
|
8705
8746
|
meta: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
8706
8747
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2 min-w-0", children: [
|
|
8707
|
-
_optionalChain([entry, 'access',
|
|
8708
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _nullishCoalesce(_optionalChain([entry, 'access',
|
|
8748
|
+
_optionalChain([entry, 'access', _129 => _129.author, 'optionalAccess', _130 => _130.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: _nullishCoalesce(getProxiedImageUrl2(entry.author.avatar_url), () => ( entry.author.avatar_url)), alt: "", className: "h-5 w-5 rounded-full object-cover shrink-0" }) : null,
|
|
8749
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _nullishCoalesce(_optionalChain([entry, 'access', _131 => _131.author, 'optionalAccess', _132 => _132.full_name]), () => ( "")) })
|
|
8709
8750
|
] }),
|
|
8710
8751
|
month ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: month }) : null
|
|
8711
8752
|
] }),
|
|
@@ -8790,7 +8831,7 @@ function fetchPriorityProp(priority) {
|
|
|
8790
8831
|
|
|
8791
8832
|
if (typeof window !== "undefined") {
|
|
8792
8833
|
const w = window;
|
|
8793
|
-
if (!_optionalChain([w, 'access',
|
|
8834
|
+
if (!_optionalChain([w, 'access', _133 => _133.chrome, 'optionalAccess', _134 => _134.cast])) {
|
|
8794
8835
|
w.chrome = { ..._nullishCoalesce(w.chrome, () => ( {})), cast: { isAvailable: false } };
|
|
8795
8836
|
}
|
|
8796
8837
|
}
|
|
@@ -8980,7 +9021,7 @@ function YouTubeFacadeInner({
|
|
|
8980
9021
|
const iframe = iframeRef.current;
|
|
8981
9022
|
if (!iframe) return;
|
|
8982
9023
|
function subscribe() {
|
|
8983
|
-
_optionalChain([iframe, 'optionalAccess',
|
|
9024
|
+
_optionalChain([iframe, 'optionalAccess', _135 => _135.contentWindow, 'optionalAccess', _136 => _136.postMessage, 'call', _137 => _137(
|
|
8984
9025
|
'{"event":"listening"}',
|
|
8985
9026
|
YT_NOCOOKIE_ORIGIN
|
|
8986
9027
|
)]);
|
|
@@ -8998,13 +9039,13 @@ function YouTubeFacadeInner({
|
|
|
8998
9039
|
return;
|
|
8999
9040
|
}
|
|
9000
9041
|
if (!payload || payload.event !== "infoDelivery") return;
|
|
9001
|
-
const state = _optionalChain([payload, 'access',
|
|
9042
|
+
const state = _optionalChain([payload, 'access', _138 => _138.info, 'optionalAccess', _139 => _139.playerState]);
|
|
9002
9043
|
if (typeof state !== "number") return;
|
|
9003
9044
|
if (state === YT_STATE_PLAYING) {
|
|
9004
9045
|
if (blurTimer !== null) return;
|
|
9005
9046
|
blurTimer = setTimeout(() => {
|
|
9006
9047
|
blurTimer = null;
|
|
9007
|
-
_optionalChain([iframeRef, 'access',
|
|
9048
|
+
_optionalChain([iframeRef, 'access', _140 => _140.current, 'optionalAccess', _141 => _141.blur, 'call', _142 => _142()]);
|
|
9008
9049
|
}, YT_PLAYING_BLUR_DELAY_MS);
|
|
9009
9050
|
return;
|
|
9010
9051
|
}
|
|
@@ -9610,7 +9651,7 @@ function ProductReleaseCard({
|
|
|
9610
9651
|
changelogCounts
|
|
9611
9652
|
}) {
|
|
9612
9653
|
if (size === "lg") {
|
|
9613
|
-
const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess',
|
|
9654
|
+
const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _143 => _143.features]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _144 => _144.fixes]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _145 => _145.improvements]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _146 => _146.breaking]), () => ( 0)));
|
|
9614
9655
|
const valueCells = [
|
|
9615
9656
|
releaseType && releaseTypeBadgeColor ? {
|
|
9616
9657
|
value: releaseType.toUpperCase(),
|
|
@@ -9629,7 +9670,7 @@ function ProductReleaseCard({
|
|
|
9629
9670
|
uppercase: false
|
|
9630
9671
|
} : { value: "\u2014", label: "Released", uppercase: false }
|
|
9631
9672
|
];
|
|
9632
|
-
const effectiveAuthor = _optionalChain([author, 'optionalAccess',
|
|
9673
|
+
const effectiveAuthor = _optionalChain([author, 'optionalAccess', _147 => _147.full_name]) ? author : { full_name: "\u2014", avatar_url: null, job_title: "Unknown" };
|
|
9633
9674
|
const gridColsClass = "md:grid-cols-4";
|
|
9634
9675
|
const dividerClass = "border-b md:border-b-0 md:border-r border-ods-border";
|
|
9635
9676
|
const frameClass = _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -10042,10 +10083,10 @@ function buildProductReleaseCardProps(item) {
|
|
|
10042
10083
|
job_title: release.author.job_title
|
|
10043
10084
|
} : void 0,
|
|
10044
10085
|
changelogCounts: {
|
|
10045
|
-
features: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10046
|
-
fixes: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10047
|
-
improvements: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10048
|
-
breaking: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10086
|
+
features: _nullishCoalesce(_optionalChain([release, 'access', _148 => _148.features_added, 'optionalAccess', _149 => _149.length]), () => ( 0)),
|
|
10087
|
+
fixes: _nullishCoalesce(_optionalChain([release, 'access', _150 => _150.bugs_fixed, 'optionalAccess', _151 => _151.length]), () => ( 0)),
|
|
10088
|
+
improvements: _nullishCoalesce(_optionalChain([release, 'access', _152 => _152.improvements, 'optionalAccess', _153 => _153.length]), () => ( 0)),
|
|
10089
|
+
breaking: _nullishCoalesce(_optionalChain([release, 'access', _154 => _154.breaking_changes, 'optionalAccess', _155 => _155.length]), () => ( 0))
|
|
10049
10090
|
}
|
|
10050
10091
|
};
|
|
10051
10092
|
}
|
|
@@ -10173,7 +10214,7 @@ function BlogCard({
|
|
|
10173
10214
|
const displayImage = post.featured_image && !imageError ? post.featured_image : placeholderUrl;
|
|
10174
10215
|
if (size === "sm") {
|
|
10175
10216
|
const dateStr2 = post.published_at ? new Date(post.published_at).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric", timeZone: "UTC" }) : "";
|
|
10176
|
-
const firstCategory = _optionalChain([post, 'access',
|
|
10217
|
+
const firstCategory = _optionalChain([post, 'access', _156 => _156.categories, 'optionalAccess', _157 => _157.find, 'call', _158 => _158((c) => c && c.name), 'optionalAccess', _159 => _159.name]);
|
|
10177
10218
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10178
10219
|
"a",
|
|
10179
10220
|
{
|
|
@@ -10379,14 +10420,14 @@ function CaseStudyCard({
|
|
|
10379
10420
|
"img",
|
|
10380
10421
|
{
|
|
10381
10422
|
src: coverImage,
|
|
10382
|
-
alt: `${_optionalChain([study, 'access',
|
|
10423
|
+
alt: `${_optionalChain([study, 'access', _160 => _160.msp, 'optionalAccess', _161 => _161.name]) || study.title} cover`,
|
|
10383
10424
|
className: "absolute inset-0 block w-full h-full object-contain",
|
|
10384
10425
|
onError: hideOnError
|
|
10385
10426
|
}
|
|
10386
10427
|
) : null }),
|
|
10387
10428
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
10388
10429
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: study.title }) }),
|
|
10389
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([study, 'access',
|
|
10430
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([study, 'access', _162 => _162.msp, 'optionalAccess', _163 => _163.name]), _optionalChain([study, 'access', _164 => _164.user, 'optionalAccess', _165 => _165.full_name])].filter(Boolean).join(" \xB7 ") || "Case study" }) }),
|
|
10390
10431
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: study.summary || COMPACT_CARD_ROW_FILLER }) })
|
|
10391
10432
|
] })
|
|
10392
10433
|
] });
|
|
@@ -10396,7 +10437,7 @@ function CaseStudyCard({
|
|
|
10396
10437
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10397
10438
|
{
|
|
10398
10439
|
src: coverImage,
|
|
10399
|
-
alt: _optionalChain([study, 'access',
|
|
10440
|
+
alt: _optionalChain([study, 'access', _166 => _166.msp, 'optionalAccess', _167 => _167.name]) || study.title,
|
|
10400
10441
|
className: "w-full h-full object-cover",
|
|
10401
10442
|
sizes: "(min-width: 1545px) 515px, (min-width: 1280px) 33vw, (min-width: 800px) 50vw, 100vw",
|
|
10402
10443
|
fill: true,
|
|
@@ -10407,18 +10448,18 @@ function CaseStudyCard({
|
|
|
10407
10448
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[72px] flex items-center shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-primary line-clamp-3 break-words", children: study.title }) }),
|
|
10408
10449
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[60px] flex items-center shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 min-w-0 w-full", children: [
|
|
10409
10450
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
10410
|
-
_optionalChain([study, 'access',
|
|
10451
|
+
_optionalChain([study, 'access', _168 => _168.user, 'optionalAccess', _169 => _169.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10411
10452
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10412
10453
|
{
|
|
10413
10454
|
src: study.user.avatar_url,
|
|
10414
|
-
alt: _optionalChain([study, 'access',
|
|
10455
|
+
alt: _optionalChain([study, 'access', _170 => _170.user, 'optionalAccess', _171 => _171.full_name]) || "User",
|
|
10415
10456
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border",
|
|
10416
10457
|
width: 48,
|
|
10417
10458
|
height: 48,
|
|
10418
10459
|
unoptimized: true
|
|
10419
10460
|
}
|
|
10420
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([study, 'access',
|
|
10421
|
-
_optionalChain([study, 'access',
|
|
10461
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([study, 'access', _172 => _172.user, 'optionalAccess', _173 => _173.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
10462
|
+
_optionalChain([study, 'access', _174 => _174.msp, 'optionalAccess', _175 => _175.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10422
10463
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10423
10464
|
{
|
|
10424
10465
|
src: study.msp.icon_url,
|
|
@@ -10432,13 +10473,13 @@ function CaseStudyCard({
|
|
|
10432
10473
|
] }),
|
|
10433
10474
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
10434
10475
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
10435
|
-
_optionalChain([study, 'access',
|
|
10436
|
-
_optionalChain([study, 'access',
|
|
10476
|
+
_optionalChain([study, 'access', _176 => _176.user, 'optionalAccess', _177 => _177.full_name]) || "Anonymous",
|
|
10477
|
+
_optionalChain([study, 'access', _178 => _178.msp, 'optionalAccess', _179 => _179.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
10437
10478
|
" \u2022 ",
|
|
10438
10479
|
study.msp.name
|
|
10439
10480
|
] })
|
|
10440
10481
|
] }),
|
|
10441
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access',
|
|
10482
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access', _180 => _180.user, 'optionalAccess', _181 => _181.job_title]) || "\xA0" })
|
|
10442
10483
|
] })
|
|
10443
10484
|
] }) })
|
|
10444
10485
|
] }) });
|
|
@@ -10521,7 +10562,7 @@ function CustomerInterviewCard({
|
|
|
10521
10562
|
] }),
|
|
10522
10563
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
10523
10564
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: interview.title }) }),
|
|
10524
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([interview, 'access',
|
|
10565
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([interview, 'access', _182 => _182.user, 'optionalAccess', _183 => _183.full_name]), _optionalChain([interview, 'access', _184 => _184.msp, 'optionalAccess', _185 => _185.name])].filter(Boolean).join(" \xB7 ") || "Customer interview" }) }),
|
|
10525
10566
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: interview.video_summary || COMPACT_CARD_ROW_FILLER }) })
|
|
10526
10567
|
] })
|
|
10527
10568
|
] });
|
|
@@ -10543,15 +10584,15 @@ function CustomerInterviewCard({
|
|
|
10543
10584
|
interview.video_summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-[20px] text-ods-text-secondary line-clamp-3", children: interview.video_summary }) }),
|
|
10544
10585
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[60px] flex items-center shrink-0 mt-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 min-w-0 w-full", children: [
|
|
10545
10586
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
10546
|
-
_optionalChain([interview, 'access',
|
|
10587
|
+
_optionalChain([interview, 'access', _186 => _186.user, 'optionalAccess', _187 => _187.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10547
10588
|
"img",
|
|
10548
10589
|
{
|
|
10549
10590
|
src: interview.user.avatar_url,
|
|
10550
|
-
alt: _optionalChain([interview, 'access',
|
|
10591
|
+
alt: _optionalChain([interview, 'access', _188 => _188.user, 'optionalAccess', _189 => _189.full_name]) || "Customer",
|
|
10551
10592
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border"
|
|
10552
10593
|
}
|
|
10553
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([interview, 'access',
|
|
10554
|
-
_optionalChain([interview, 'access',
|
|
10594
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([interview, 'access', _190 => _190.user, 'optionalAccess', _191 => _191.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
10595
|
+
_optionalChain([interview, 'access', _192 => _192.msp, 'optionalAccess', _193 => _193.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10555
10596
|
"img",
|
|
10556
10597
|
{
|
|
10557
10598
|
src: interview.msp.icon_url,
|
|
@@ -10562,13 +10603,13 @@ function CustomerInterviewCard({
|
|
|
10562
10603
|
] }),
|
|
10563
10604
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
10564
10605
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
10565
|
-
_optionalChain([interview, 'access',
|
|
10566
|
-
_optionalChain([interview, 'access',
|
|
10606
|
+
_optionalChain([interview, 'access', _194 => _194.user, 'optionalAccess', _195 => _195.full_name]) || "Anonymous",
|
|
10607
|
+
_optionalChain([interview, 'access', _196 => _196.msp, 'optionalAccess', _197 => _197.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
10567
10608
|
" \u2022 ",
|
|
10568
10609
|
interview.msp.name
|
|
10569
10610
|
] })
|
|
10570
10611
|
] }),
|
|
10571
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access',
|
|
10612
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access', _198 => _198.user, 'optionalAccess', _199 => _199.job_title]) || " " })
|
|
10572
10613
|
] })
|
|
10573
10614
|
] }) })
|
|
10574
10615
|
] }) });
|
|
@@ -10581,7 +10622,7 @@ function CustomerInterviewCard({
|
|
|
10581
10622
|
function formatInvestorUpdatePeriod(start, end, options) {
|
|
10582
10623
|
if (!start && !end) return "";
|
|
10583
10624
|
const fmt = (d) => new Date(d).toLocaleDateString("en-US", {
|
|
10584
|
-
month: _optionalChain([options, 'optionalAccess',
|
|
10625
|
+
month: _optionalChain([options, 'optionalAccess', _200 => _200.monthFormat]) || "short",
|
|
10585
10626
|
year: "numeric",
|
|
10586
10627
|
// Pin to UTC so SSR (Vercel = UTC) and the client agree (React #418).
|
|
10587
10628
|
timeZone: "UTC"
|
|
@@ -10673,7 +10714,7 @@ function InvestorUpdateCard({
|
|
|
10673
10714
|
imageUrl: update.featured_image,
|
|
10674
10715
|
placeholderUrl,
|
|
10675
10716
|
title: update.title || `Update #${update.update_number || "?"}`,
|
|
10676
|
-
summary: _optionalChain([update, 'access',
|
|
10717
|
+
summary: _optionalChain([update, 'access', _201 => _201.strategic_update, 'optionalAccess', _202 => _202.slice, 'call', _203 => _203(0, 120)]) || _optionalChain([update, 'access', _204 => _204.content, 'optionalAccess', _205 => _205.slice, 'call', _206 => _206(0, 120)]) || "No description",
|
|
10677
10718
|
badges: update.update_number ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "px-2 py-0.5 rounded text-xs font-medium bg-ods-accent/10 text-ods-accent", children: [
|
|
10678
10719
|
"#",
|
|
10679
10720
|
update.update_number
|
|
@@ -10865,7 +10906,7 @@ function OnboardingGuideCard({
|
|
|
10865
10906
|
const compactCover = coverImage || placeholderUrl || null;
|
|
10866
10907
|
const hasVideoCover = !guide.featured_image && !!guide.main_video_thumbnail;
|
|
10867
10908
|
const summary2 = stripMarkdownPreview(guide.video_summary || guide.content || "");
|
|
10868
|
-
const author = _optionalChain([guide, 'access',
|
|
10909
|
+
const author = _optionalChain([guide, 'access', _207 => _207.author, 'optionalAccess', _208 => _208.full_name, 'optionalAccess', _209 => _209.trim, 'call', _210 => _210()]) || "";
|
|
10869
10910
|
const subtitleParts = [
|
|
10870
10911
|
`Step ${guide.step_order}`,
|
|
10871
10912
|
guide.section,
|
|
@@ -11238,7 +11279,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11238
11279
|
if (!isInputControlled) {
|
|
11239
11280
|
setInternalInputValue(value);
|
|
11240
11281
|
}
|
|
11241
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
11282
|
+
_optionalChain([onInputChange, 'optionalCall', _211 => _211(value, reason)]);
|
|
11242
11283
|
};
|
|
11243
11284
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
11244
11285
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
@@ -11266,8 +11307,8 @@ function AutocompleteInner(props, ref) {
|
|
|
11266
11307
|
if (!showHiddenTags) return;
|
|
11267
11308
|
const handleClick = (e) => {
|
|
11268
11309
|
const target = e.target;
|
|
11269
|
-
const inButton = _optionalChain([hiddenTagsRef, 'access',
|
|
11270
|
-
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access',
|
|
11310
|
+
const inButton = _optionalChain([hiddenTagsRef, 'access', _212 => _212.current, 'optionalAccess', _213 => _213.contains, 'call', _214 => _214(target)]);
|
|
11311
|
+
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _215 => _215.current, 'optionalAccess', _216 => _216.contains, 'call', _217 => _217(target)]);
|
|
11271
11312
|
if (!inButton && !inPopup) {
|
|
11272
11313
|
setShowHiddenTags(false);
|
|
11273
11314
|
}
|
|
@@ -11311,7 +11352,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11311
11352
|
}
|
|
11312
11353
|
updateInputValue("", "reset");
|
|
11313
11354
|
setIsOpen(false);
|
|
11314
|
-
_optionalChain([onCreateOption, 'optionalCall',
|
|
11355
|
+
_optionalChain([onCreateOption, 'optionalCall', _218 => _218(trimmed)]);
|
|
11315
11356
|
};
|
|
11316
11357
|
_react.useEffect.call(void 0, () => {
|
|
11317
11358
|
setHighlightedIndex(-1);
|
|
@@ -11335,7 +11376,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11335
11376
|
props.onChange([...valueArray, option.value]);
|
|
11336
11377
|
}
|
|
11337
11378
|
updateInputValue("", "reset");
|
|
11338
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11379
|
+
_optionalChain([autoLimitTags, 'access', _219 => _219.inputRef, 'access', _220 => _220.current, 'optionalAccess', _221 => _221.focus, 'call', _222 => _222()]);
|
|
11339
11380
|
} else {
|
|
11340
11381
|
;
|
|
11341
11382
|
props.onChange(option.value);
|
|
@@ -11356,7 +11397,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11356
11397
|
if (!isInputControlled) {
|
|
11357
11398
|
setInternalInputValue("");
|
|
11358
11399
|
}
|
|
11359
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
11400
|
+
_optionalChain([onInputChange, 'optionalCall', _223 => _223("", "clear")]);
|
|
11360
11401
|
setIsOpen(false);
|
|
11361
11402
|
};
|
|
11362
11403
|
const handleKeyDown = (e) => {
|
|
@@ -11430,7 +11471,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11430
11471
|
),
|
|
11431
11472
|
onClick: () => {
|
|
11432
11473
|
if (!disabled) {
|
|
11433
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11474
|
+
_optionalChain([autoLimitTags, 'access', _224 => _224.inputRef, 'access', _225 => _225.current, 'optionalAccess', _226 => _226.focus, 'call', _227 => _227()]);
|
|
11434
11475
|
openDropdown();
|
|
11435
11476
|
}
|
|
11436
11477
|
},
|
|
@@ -11546,10 +11587,10 @@ function AutocompleteInner(props, ref) {
|
|
|
11546
11587
|
align: "start",
|
|
11547
11588
|
onOpenAutoFocus: (e) => {
|
|
11548
11589
|
e.preventDefault();
|
|
11549
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11590
|
+
_optionalChain([autoLimitTags, 'access', _228 => _228.inputRef, 'access', _229 => _229.current, 'optionalAccess', _230 => _230.focus, 'call', _231 => _231()]);
|
|
11550
11591
|
},
|
|
11551
11592
|
onInteractOutside: (e) => {
|
|
11552
|
-
if (_optionalChain([containerRef, 'access',
|
|
11593
|
+
if (_optionalChain([containerRef, 'access', _232 => _232.current, 'optionalAccess', _233 => _233.contains, 'call', _234 => _234(e.target)])) {
|
|
11553
11594
|
e.preventDefault();
|
|
11554
11595
|
}
|
|
11555
11596
|
},
|
|
@@ -11942,7 +11983,7 @@ var defaultFormatDate = (date) => {
|
|
|
11942
11983
|
});
|
|
11943
11984
|
};
|
|
11944
11985
|
var formatDateRange2 = (range, formatFn) => {
|
|
11945
|
-
if (!_optionalChain([range, 'optionalAccess',
|
|
11986
|
+
if (!_optionalChain([range, 'optionalAccess', _235 => _235.from])) return "";
|
|
11946
11987
|
if (!range.to) return formatFn(range.from);
|
|
11947
11988
|
return `${formatFn(range.from)} - ${formatFn(range.to)}`;
|
|
11948
11989
|
};
|
|
@@ -11976,16 +12017,16 @@ function DatePickerCalendar({
|
|
|
11976
12017
|
);
|
|
11977
12018
|
const [hoveredDate, setHoveredDate] = React38.useState(void 0);
|
|
11978
12019
|
const rangeSelected = draftRange;
|
|
11979
|
-
const hasCompleteRange = mode === "range" && !!_optionalChain([rangeSelected, 'optionalAccess',
|
|
12020
|
+
const hasCompleteRange = mode === "range" && !!_optionalChain([rangeSelected, 'optionalAccess', _236 => _236.from]) && !!_optionalChain([rangeSelected, 'optionalAccess', _237 => _237.to]) && rangeSelected.from.getTime() !== rangeSelected.to.getTime();
|
|
11980
12021
|
const isPreviewDate = (date) => {
|
|
11981
|
-
if (!_optionalChain([draftRange, 'optionalAccess',
|
|
12022
|
+
if (!_optionalChain([draftRange, 'optionalAccess', _238 => _238.from]) || draftRange.to || !hoveredDate) return false;
|
|
11982
12023
|
const start = Math.min(draftRange.from.getTime(), hoveredDate.getTime());
|
|
11983
12024
|
const end = Math.max(draftRange.from.getTime(), hoveredDate.getTime());
|
|
11984
12025
|
return date.getTime() >= start && date.getTime() <= end;
|
|
11985
12026
|
};
|
|
11986
12027
|
const handleRangeSelect = (triggerDate) => {
|
|
11987
12028
|
if (!triggerDate) return;
|
|
11988
|
-
if (!_optionalChain([draftRange, 'optionalAccess',
|
|
12029
|
+
if (!_optionalChain([draftRange, 'optionalAccess', _239 => _239.from]) || draftRange.to) {
|
|
11989
12030
|
setDraftRange({ from: triggerDate, to: void 0 });
|
|
11990
12031
|
return;
|
|
11991
12032
|
}
|
|
@@ -12045,7 +12086,7 @@ function DatePickerCalendar({
|
|
|
12045
12086
|
range_middle: "range-middle !bg-[var(--ods-open-yellow-light)] !text-ods-card !font-medium !rounded-none hover:!bg-[var(--ods-open-yellow-light)]"
|
|
12046
12087
|
};
|
|
12047
12088
|
const [month, setMonth] = React38.useState(
|
|
12048
|
-
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess',
|
|
12089
|
+
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess', _240 => _240.from]) || today
|
|
12049
12090
|
);
|
|
12050
12091
|
const handlePreviousMonth = () => {
|
|
12051
12092
|
setMonth((prev) => {
|
|
@@ -12277,14 +12318,14 @@ function DatePicker(props) {
|
|
|
12277
12318
|
}, [props.mode, props.value, formatDate2]);
|
|
12278
12319
|
const handleSelect = (value) => {
|
|
12279
12320
|
if (props.mode === "single") {
|
|
12280
|
-
_optionalChain([props, 'access',
|
|
12321
|
+
_optionalChain([props, 'access', _241 => _241.onChange, 'optionalCall', _242 => _242(value)]);
|
|
12281
12322
|
if (value) {
|
|
12282
12323
|
setOpen(false);
|
|
12283
12324
|
}
|
|
12284
12325
|
} else {
|
|
12285
12326
|
const range = value;
|
|
12286
|
-
_optionalChain([props, 'access',
|
|
12287
|
-
if (_optionalChain([range, 'optionalAccess',
|
|
12327
|
+
_optionalChain([props, 'access', _243 => _243.onChange, 'optionalCall', _244 => _244(range)]);
|
|
12328
|
+
if (_optionalChain([range, 'optionalAccess', _245 => _245.from]) && _optionalChain([range, 'optionalAccess', _246 => _246.to])) {
|
|
12288
12329
|
setOpen(false);
|
|
12289
12330
|
}
|
|
12290
12331
|
}
|
|
@@ -12391,7 +12432,7 @@ function DatePickerInput({
|
|
|
12391
12432
|
if (newDate && value) {
|
|
12392
12433
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
12393
12434
|
}
|
|
12394
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12435
|
+
_optionalChain([onChange, 'optionalCall', _247 => _247(newDate)]);
|
|
12395
12436
|
if (newDate) {
|
|
12396
12437
|
setOpen(false);
|
|
12397
12438
|
}
|
|
@@ -12408,12 +12449,12 @@ function DatePickerInput({
|
|
|
12408
12449
|
}
|
|
12409
12450
|
}
|
|
12410
12451
|
date.setHours(hours);
|
|
12411
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12452
|
+
_optionalChain([onChange, 'optionalCall', _248 => _248(date)]);
|
|
12412
12453
|
};
|
|
12413
12454
|
const handleMinuteChange = (newMinute) => {
|
|
12414
12455
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
12415
12456
|
date.setMinutes(parseInt(newMinute, 10));
|
|
12416
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12457
|
+
_optionalChain([onChange, 'optionalCall', _249 => _249(date)]);
|
|
12417
12458
|
};
|
|
12418
12459
|
const handlePeriodChange = (newPeriod) => {
|
|
12419
12460
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
@@ -12424,7 +12465,7 @@ function DatePickerInput({
|
|
|
12424
12465
|
hours += 12;
|
|
12425
12466
|
}
|
|
12426
12467
|
date.setHours(hours);
|
|
12427
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12468
|
+
_optionalChain([onChange, 'optionalCall', _250 => _250(date)]);
|
|
12428
12469
|
};
|
|
12429
12470
|
const hourOptions = React38.useMemo(() => generateHourOptions(use24HourFormat), [use24HourFormat]);
|
|
12430
12471
|
const minuteOptions = React38.useMemo(() => generateMinuteOptions(), []);
|
|
@@ -12585,7 +12626,7 @@ function DatePickerInputSimple({
|
|
|
12585
12626
|
if (newDate && value) {
|
|
12586
12627
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
12587
12628
|
}
|
|
12588
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12629
|
+
_optionalChain([onChange, 'optionalCall', _251 => _251(newDate)]);
|
|
12589
12630
|
if (newDate) {
|
|
12590
12631
|
setOpen(false);
|
|
12591
12632
|
}
|
|
@@ -12594,7 +12635,7 @@ function DatePickerInputSimple({
|
|
|
12594
12635
|
const [hours, minutes] = newTime.split(":").map(Number);
|
|
12595
12636
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
12596
12637
|
date.setHours(hours, minutes, 0, 0);
|
|
12597
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12638
|
+
_optionalChain([onChange, 'optionalCall', _252 => _252(date)]);
|
|
12598
12639
|
};
|
|
12599
12640
|
const timeOptions = React38.useMemo(
|
|
12600
12641
|
() => generateTimeOptions(timeInterval, use24HourFormat),
|
|
@@ -12688,7 +12729,7 @@ function DurationInput({ value, onChange, invalid, className }) {
|
|
|
12688
12729
|
setSegments((prev) => compose(prev) === value ? prev : split(value));
|
|
12689
12730
|
}, [value]);
|
|
12690
12731
|
const focusSegment = (i) => {
|
|
12691
|
-
const el = _optionalChain([refs, 'access',
|
|
12732
|
+
const el = _optionalChain([refs, 'access', _253 => _253[i], 'optionalAccess', _254 => _254.current]);
|
|
12692
12733
|
if (!el) return;
|
|
12693
12734
|
el.focus();
|
|
12694
12735
|
el.select();
|
|
@@ -13178,7 +13219,7 @@ var NoData = React112.default.forwardRef(function NoData2({
|
|
|
13178
13219
|
...props
|
|
13179
13220
|
}, ref) {
|
|
13180
13221
|
const hasMessage = !!(icon || title || description);
|
|
13181
|
-
const hasActions = !!_optionalChain([actions, 'optionalAccess',
|
|
13222
|
+
const hasActions = !!_optionalChain([actions, 'optionalAccess', _255 => _255.length]);
|
|
13182
13223
|
const footerButton = _nullishCoalesce(button, () => ( (buttonLabel != null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13183
13224
|
_chunkQJGRP2YEcjs.Button,
|
|
13184
13225
|
{
|
|
@@ -13186,7 +13227,7 @@ var NoData = React112.default.forwardRef(function NoData2({
|
|
|
13186
13227
|
leftIcon: buttonIcon,
|
|
13187
13228
|
onClick: onButtonClick,
|
|
13188
13229
|
...buttonProps,
|
|
13189
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess',
|
|
13230
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess', _256 => _256.className])),
|
|
13190
13231
|
children: buttonLabel
|
|
13191
13232
|
}
|
|
13192
13233
|
) : null)));
|
|
@@ -13421,7 +13462,7 @@ var Switch = React47.forwardRef(({ className, checked, onCheckedChange, ...props
|
|
|
13421
13462
|
}, [checked]);
|
|
13422
13463
|
const handleCheckedChange = (newChecked) => {
|
|
13423
13464
|
setIsChecked(newChecked);
|
|
13424
|
-
_optionalChain([onCheckedChange, 'optionalCall',
|
|
13465
|
+
_optionalChain([onCheckedChange, 'optionalCall', _257 => _257(newChecked)]);
|
|
13425
13466
|
};
|
|
13426
13467
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13427
13468
|
SwitchPrimitives.Root,
|
|
@@ -13630,7 +13671,7 @@ function TagsManager({
|
|
|
13630
13671
|
const name = search.trim();
|
|
13631
13672
|
if (!name) return;
|
|
13632
13673
|
const result = await onCreateTag(name);
|
|
13633
|
-
if (_optionalChain([result, 'optionalAccess',
|
|
13674
|
+
if (_optionalChain([result, 'optionalAccess', _258 => _258.id])) {
|
|
13634
13675
|
onChange([...selectedIds, result.id]);
|
|
13635
13676
|
setSearch("");
|
|
13636
13677
|
}
|
|
@@ -13638,7 +13679,7 @@ function TagsManager({
|
|
|
13638
13679
|
const startEdit = React49.useCallback((id, name) => {
|
|
13639
13680
|
setEditingId(id);
|
|
13640
13681
|
setEditingName(name);
|
|
13641
|
-
setTimeout(() => _optionalChain([editInputRef, 'access',
|
|
13682
|
+
setTimeout(() => _optionalChain([editInputRef, 'access', _259 => _259.current, 'optionalAccess', _260 => _260.focus, 'call', _261 => _261()]), 0);
|
|
13642
13683
|
}, []);
|
|
13643
13684
|
const confirmEdit = React49.useCallback(async () => {
|
|
13644
13685
|
if (!onUpdateTag || !editingId || !editingName.trim()) return;
|
|
@@ -13665,7 +13706,7 @@ function TagsManager({
|
|
|
13665
13706
|
e.stopPropagation();
|
|
13666
13707
|
onChange([]);
|
|
13667
13708
|
setSearch("");
|
|
13668
|
-
_optionalChain([inputRef, 'access',
|
|
13709
|
+
_optionalChain([inputRef, 'access', _262 => _262.current, 'optionalAccess', _263 => _263.focus, 'call', _264 => _264()]);
|
|
13669
13710
|
},
|
|
13670
13711
|
[onChange]
|
|
13671
13712
|
);
|
|
@@ -13764,10 +13805,10 @@ function TagsManager({
|
|
|
13764
13805
|
align: "start",
|
|
13765
13806
|
onOpenAutoFocus: (e) => {
|
|
13766
13807
|
e.preventDefault();
|
|
13767
|
-
_optionalChain([inputRef, 'access',
|
|
13808
|
+
_optionalChain([inputRef, 'access', _265 => _265.current, 'optionalAccess', _266 => _266.focus, 'call', _267 => _267()]);
|
|
13768
13809
|
},
|
|
13769
13810
|
onInteractOutside: (e) => {
|
|
13770
|
-
if (_optionalChain([containerRef, 'access',
|
|
13811
|
+
if (_optionalChain([containerRef, 'access', _268 => _268.current, 'optionalAccess', _269 => _269.contains, 'call', _270 => _270(e.target)])) {
|
|
13771
13812
|
e.preventDefault();
|
|
13772
13813
|
}
|
|
13773
13814
|
},
|
|
@@ -14052,7 +14093,7 @@ var Textarea = React50.forwardRef(
|
|
|
14052
14093
|
"button",
|
|
14053
14094
|
{
|
|
14054
14095
|
type: "button",
|
|
14055
|
-
"aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess',
|
|
14096
|
+
"aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess', _271 => _271["aria-label"]]), () => ( "Submit")),
|
|
14056
14097
|
...endIconButtonProps,
|
|
14057
14098
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
14058
14099
|
// `h-6` matches the textarea's `leading-6` line box so the icon's
|
|
@@ -14066,7 +14107,7 @@ var Textarea = React50.forwardRef(
|
|
|
14066
14107
|
"cursor-pointer hover:text-ods-text-primary",
|
|
14067
14108
|
"focus-visible:outline-none focus-visible:text-ods-accent",
|
|
14068
14109
|
"disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:text-ods-text-secondary",
|
|
14069
|
-
_optionalChain([endIconButtonProps, 'optionalAccess',
|
|
14110
|
+
_optionalChain([endIconButtonProps, 'optionalAccess', _272 => _272.className])
|
|
14070
14111
|
),
|
|
14071
14112
|
children: endIcon
|
|
14072
14113
|
}
|
|
@@ -15303,19 +15344,19 @@ function TabNavigation({
|
|
|
15303
15344
|
const validTabIds = _react.useMemo.call(void 0, () => new Set(tabs.map((t) => t.id)), [tabs]);
|
|
15304
15345
|
const getInitialTab = () => {
|
|
15305
15346
|
if (isUrlSyncEnabled) {
|
|
15306
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
15347
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _273 => _273.get, 'call', _274 => _274(paramName)]) || "";
|
|
15307
15348
|
if (validTabIds.has(fromUrl)) {
|
|
15308
15349
|
return fromUrl;
|
|
15309
15350
|
}
|
|
15310
15351
|
}
|
|
15311
|
-
return defaultTab || _optionalChain([tabs, 'access',
|
|
15352
|
+
return defaultTab || _optionalChain([tabs, 'access', _275 => _275[0], 'optionalAccess', _276 => _276.id]) || "";
|
|
15312
15353
|
};
|
|
15313
15354
|
const [internalActiveTab, setInternalActiveTab] = _react.useState.call(void 0, getInitialTab);
|
|
15314
15355
|
const activeTab = isUrlSyncEnabled ? internalActiveTab : controlledActiveTab || "";
|
|
15315
15356
|
_react.useEffect.call(void 0, () => {
|
|
15316
15357
|
if (!isUrlSyncEnabled) return;
|
|
15317
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
15318
|
-
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access',
|
|
15358
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _277 => _277.get, 'call', _278 => _278(paramName)]) || "";
|
|
15359
|
+
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access', _279 => _279[0], 'optionalAccess', _280 => _280.id]) || "";
|
|
15319
15360
|
if (nextTab !== internalActiveTab) {
|
|
15320
15361
|
setInternalActiveTab(nextTab);
|
|
15321
15362
|
}
|
|
@@ -15323,13 +15364,13 @@ function TabNavigation({
|
|
|
15323
15364
|
const handleTabChange = (tabId) => {
|
|
15324
15365
|
if (isUrlSyncEnabled) {
|
|
15325
15366
|
setInternalActiveTab(tabId);
|
|
15326
|
-
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess',
|
|
15367
|
+
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess', _281 => _281.toString, 'call', _282 => _282()]));
|
|
15327
15368
|
params.set(paramName, tabId);
|
|
15328
15369
|
const method = replaceState ? "replace" : "push";
|
|
15329
15370
|
router[method](`${pathname}?${params.toString()}`);
|
|
15330
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
15371
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _283 => _283(tabId)]);
|
|
15331
15372
|
} else {
|
|
15332
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
15373
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _284 => _284(tabId)]);
|
|
15333
15374
|
}
|
|
15334
15375
|
};
|
|
15335
15376
|
const scrollRef = _react.useRef.call(void 0, null);
|
|
@@ -15417,7 +15458,7 @@ function TabNavigation({
|
|
|
15417
15458
|
var getTabById = (tabs, tabId) => tabs.find((tab) => tab.id === tabId);
|
|
15418
15459
|
var getTabComponent = (tabs, tabId) => {
|
|
15419
15460
|
const tab = getTabById(tabs, tabId);
|
|
15420
|
-
return _optionalChain([tab, 'optionalAccess',
|
|
15461
|
+
return _optionalChain([tab, 'optionalAccess', _285 => _285.component]) || null;
|
|
15421
15462
|
};
|
|
15422
15463
|
|
|
15423
15464
|
// src/components/ui/alert.tsx
|
|
@@ -15668,13 +15709,13 @@ var SocialEmbedCache = class _SocialEmbedCache {
|
|
|
15668
15709
|
errorData = await response.json();
|
|
15669
15710
|
} catch (e19) {
|
|
15670
15711
|
}
|
|
15671
|
-
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess',
|
|
15712
|
+
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess', _286 => _286.error]) && _optionalChain([errorData, 'optionalAccess', _287 => _287.message])) {
|
|
15672
15713
|
console.log(`\u{1F6AB} [${platformName} Proxy] Content unavailable: ${errorData.message}`);
|
|
15673
15714
|
onError(errorData.message);
|
|
15674
15715
|
onLoading(false);
|
|
15675
15716
|
return;
|
|
15676
15717
|
}
|
|
15677
|
-
if (_optionalChain([errorData, 'optionalAccess',
|
|
15718
|
+
if (_optionalChain([errorData, 'optionalAccess', _288 => _288.error])) {
|
|
15678
15719
|
throw new Error(`Server error: ${errorData.error}`);
|
|
15679
15720
|
}
|
|
15680
15721
|
throw new Error(`Server proxy failed: ${response.status}`);
|
|
@@ -16126,7 +16167,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16126
16167
|
apiEndpoint: redditProxyUrl,
|
|
16127
16168
|
dataValidator: validateRedditData,
|
|
16128
16169
|
onDataUpdate: (data) => {
|
|
16129
|
-
if (_optionalChain([data, 'access',
|
|
16170
|
+
if (_optionalChain([data, 'access', _289 => _289[0], 'optionalAccess', _290 => _290.data, 'optionalAccess', _291 => _291.children, 'optionalAccess', _292 => _292[0], 'optionalAccess', _293 => _293.data])) {
|
|
16130
16171
|
setRedditData(data[0].data.children[0].data);
|
|
16131
16172
|
}
|
|
16132
16173
|
},
|
|
@@ -16197,11 +16238,11 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16197
16238
|
gallery_data: redditData.gallery_data,
|
|
16198
16239
|
media_metadata: redditData.media_metadata
|
|
16199
16240
|
});
|
|
16200
|
-
const video = _optionalChain([redditData, 'access',
|
|
16241
|
+
const video = _optionalChain([redditData, 'access', _294 => _294.media, 'optionalAccess', _295 => _295.reddit_video]) || _optionalChain([redditData, 'access', _296 => _296.secure_media, 'optionalAccess', _297 => _297.reddit_video]);
|
|
16201
16242
|
if (video && video.fallback_url) {
|
|
16202
16243
|
console.log("\u{1F4F9} Found Reddit video:", video);
|
|
16203
16244
|
let posterUrl = "";
|
|
16204
|
-
if (_optionalChain([redditData, 'access',
|
|
16245
|
+
if (_optionalChain([redditData, 'access', _298 => _298.preview, 'optionalAccess', _299 => _299.images, 'optionalAccess', _300 => _300[0], 'optionalAccess', _301 => _301.source, 'optionalAccess', _302 => _302.url])) {
|
|
16205
16246
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
16206
16247
|
console.log("\u2705 Using preview image as video poster:", posterUrl);
|
|
16207
16248
|
} else {
|
|
@@ -16254,7 +16295,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16254
16295
|
return media;
|
|
16255
16296
|
}
|
|
16256
16297
|
}
|
|
16257
|
-
if (_optionalChain([redditData, 'access',
|
|
16298
|
+
if (_optionalChain([redditData, 'access', _303 => _303.preview, 'optionalAccess', _304 => _304.images, 'optionalAccess', _305 => _305[0]]) && !redditData.is_video) {
|
|
16258
16299
|
const imageData = redditData.preview.images[0];
|
|
16259
16300
|
console.log("\u{1F5BC}\uFE0F Found preview image data:", imageData);
|
|
16260
16301
|
let source = imageData.source;
|
|
@@ -16289,7 +16330,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16289
16330
|
} else if (directUrl.match(/\.(mp4|webm|mov|avi)(\?.*)?$/i)) {
|
|
16290
16331
|
console.log("\u{1F3AC} Found direct video URL");
|
|
16291
16332
|
let posterUrl = "";
|
|
16292
|
-
if (_optionalChain([redditData, 'access',
|
|
16333
|
+
if (_optionalChain([redditData, 'access', _306 => _306.preview, 'optionalAccess', _307 => _307.images, 'optionalAccess', _308 => _308[0], 'optionalAccess', _309 => _309.source, 'optionalAccess', _310 => _310.url])) {
|
|
16293
16334
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
16294
16335
|
}
|
|
16295
16336
|
media.push({
|
|
@@ -16302,7 +16343,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16302
16343
|
});
|
|
16303
16344
|
} else if (directUrl.includes("imgur.com") && !directUrl.includes(".gifv")) {
|
|
16304
16345
|
console.log("\u{1F310} Found Imgur link");
|
|
16305
|
-
const imgurId = _optionalChain([directUrl, 'access',
|
|
16346
|
+
const imgurId = _optionalChain([directUrl, 'access', _311 => _311.match, 'call', _312 => _312(/imgur\.com\/([a-zA-Z0-9]+)/), 'optionalAccess', _313 => _313[1]]);
|
|
16306
16347
|
if (imgurId && !directUrl.includes("/a/") && !directUrl.includes("/gallery/")) {
|
|
16307
16348
|
media.push({
|
|
16308
16349
|
type: "image",
|
|
@@ -16451,7 +16492,7 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
16451
16492
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
16452
16493
|
const [error, setError] = _react.useState.call(void 0, null);
|
|
16453
16494
|
const initializationDone = _react.useRef.call(void 0, false);
|
|
16454
|
-
const extractedTweetId = tweetId || _optionalChain([url, 'access',
|
|
16495
|
+
const extractedTweetId = tweetId || _optionalChain([url, 'access', _314 => _314.match, 'call', _315 => _315(/status\/(\d+)/), 'optionalAccess', _316 => _316[1]]);
|
|
16455
16496
|
const tweetUrl = url.includes("twitter.com") || url.includes("x.com") ? url : `https://twitter.com/twitter/status/${extractedTweetId}`;
|
|
16456
16497
|
_react.useEffect.call(void 0, () => {
|
|
16457
16498
|
if (initializationDone.current) return;
|
|
@@ -16518,10 +16559,10 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
16518
16559
|
const parser = new DOMParser();
|
|
16519
16560
|
const doc = parser.parseFromString(tweetData.html, "text/html");
|
|
16520
16561
|
const blockquote = doc.querySelector("blockquote");
|
|
16521
|
-
const fullText = _optionalChain([blockquote, 'optionalAccess',
|
|
16562
|
+
const fullText = _optionalChain([blockquote, 'optionalAccess', _317 => _317.textContent]) || "";
|
|
16522
16563
|
const tweetText = fullText.replace(/- .* \(@.*\).*$/, "").trim();
|
|
16523
16564
|
const username = tweetData.author_url ? tweetData.author_url.split("/").pop() : "";
|
|
16524
|
-
const links = Array.from(_optionalChain([blockquote, 'optionalAccess',
|
|
16565
|
+
const links = Array.from(_optionalChain([blockquote, 'optionalAccess', _318 => _318.querySelectorAll, 'call', _319 => _319("a")]) || []).map((link) => ({
|
|
16525
16566
|
url: link.href,
|
|
16526
16567
|
text: link.textContent || link.href
|
|
16527
16568
|
})).filter((link) => !link.url.includes("twitter.com") && !link.url.includes("x.com"));
|
|
@@ -16776,7 +16817,7 @@ var OGLinkPreview = ({
|
|
|
16776
16817
|
const response = await fetch(endpoint);
|
|
16777
16818
|
if (response.ok) {
|
|
16778
16819
|
const data = await response.json();
|
|
16779
|
-
if (_optionalChain([data, 'optionalAccess',
|
|
16820
|
+
if (_optionalChain([data, 'optionalAccess', _320 => _320.title]) && data.title !== "Link Preview Unavailable") {
|
|
16780
16821
|
setOgData(data);
|
|
16781
16822
|
} else {
|
|
16782
16823
|
setError(true);
|
|
@@ -16803,8 +16844,8 @@ var OGLinkPreview = ({
|
|
|
16803
16844
|
type: "website",
|
|
16804
16845
|
favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`
|
|
16805
16846
|
} : null)));
|
|
16806
|
-
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess',
|
|
16807
|
-
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess',
|
|
16847
|
+
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess', _321 => _321.title]) ? buildPlaceholderUrl(effectiveData.title, effectiveData.siteName || domain) : null;
|
|
16848
|
+
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess', _322 => _322.image]) && !imageError ? effectiveData.image : _optionalChain([effectiveData, 'optionalAccess', _323 => _323.originalImage]) && !originalImageError ? effectiveData.originalImage : fallbackImage && !fallbackImageError ? fallbackImage : placeholderImageUrl;
|
|
16808
16849
|
const hasImage = !!resolvedImageUrl;
|
|
16809
16850
|
const isFallbackImage = resolvedImageUrl === fallbackImage;
|
|
16810
16851
|
const isPlaceholder = resolvedImageUrl === placeholderImageUrl && !isFallbackImage;
|
|
@@ -17050,9 +17091,9 @@ function toFigmaEmbedUrl(url, opts) {
|
|
|
17050
17091
|
if (match2) {
|
|
17051
17092
|
const [, urlType, fileKey, titleSlug, queryString] = match2;
|
|
17052
17093
|
const isSlides = urlType === "slides" || urlType === "deck";
|
|
17053
|
-
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess',
|
|
17094
|
+
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess', _324 => _324.slidesView]) === "browse" ? "slides" : "deck" : "design";
|
|
17054
17095
|
const pathSuffix = titleSlug ? `/${titleSlug}` : "";
|
|
17055
|
-
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess',
|
|
17096
|
+
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess', _325 => _325.replace, 'call', _326 => _326(/^\?/, "")]) || "");
|
|
17056
17097
|
if (!params.has("embed-host")) {
|
|
17057
17098
|
params.set("embed-host", "flamingo");
|
|
17058
17099
|
}
|
|
@@ -17133,7 +17174,7 @@ function EmbedIframe({
|
|
|
17133
17174
|
allow,
|
|
17134
17175
|
referrerPolicy,
|
|
17135
17176
|
loading,
|
|
17136
|
-
allowFullScreen: _optionalChain([allow, 'optionalAccess',
|
|
17177
|
+
allowFullScreen: _optionalChain([allow, 'optionalAccess', _327 => _327.includes, 'call', _328 => _328("fullscreen")]) ? void 0 : allowFullScreen
|
|
17137
17178
|
},
|
|
17138
17179
|
src
|
|
17139
17180
|
)
|
|
@@ -17884,7 +17925,7 @@ var RichMarkdownInner = ({
|
|
|
17884
17925
|
const extractText2 = (node) => {
|
|
17885
17926
|
if (typeof node === "string") return node;
|
|
17886
17927
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17887
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17928
|
+
if (_optionalChain([node, 'optionalAccess', _329 => _329.props, 'optionalAccess', _330 => _330.children])) return extractText2(node.props.children);
|
|
17888
17929
|
return "";
|
|
17889
17930
|
};
|
|
17890
17931
|
const text = extractText2(children);
|
|
@@ -17900,7 +17941,7 @@ var RichMarkdownInner = ({
|
|
|
17900
17941
|
const extractText2 = (node) => {
|
|
17901
17942
|
if (typeof node === "string") return node;
|
|
17902
17943
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17903
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17944
|
+
if (_optionalChain([node, 'optionalAccess', _331 => _331.props, 'optionalAccess', _332 => _332.children])) return extractText2(node.props.children);
|
|
17904
17945
|
return "";
|
|
17905
17946
|
};
|
|
17906
17947
|
const text = extractText2(children);
|
|
@@ -17918,7 +17959,7 @@ var RichMarkdownInner = ({
|
|
|
17918
17959
|
const extractText2 = (node) => {
|
|
17919
17960
|
if (typeof node === "string") return node;
|
|
17920
17961
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17921
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17962
|
+
if (_optionalChain([node, 'optionalAccess', _333 => _333.props, 'optionalAccess', _334 => _334.children])) return extractText2(node.props.children);
|
|
17922
17963
|
return "";
|
|
17923
17964
|
};
|
|
17924
17965
|
const text = extractText2(children);
|
|
@@ -17936,7 +17977,7 @@ var RichMarkdownInner = ({
|
|
|
17936
17977
|
const extractText2 = (node) => {
|
|
17937
17978
|
if (typeof node === "string") return node;
|
|
17938
17979
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17939
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17980
|
+
if (_optionalChain([node, 'optionalAccess', _335 => _335.props, 'optionalAccess', _336 => _336.children])) return extractText2(node.props.children);
|
|
17940
17981
|
return "";
|
|
17941
17982
|
};
|
|
17942
17983
|
const text = extractText2(children);
|
|
@@ -17954,7 +17995,7 @@ var RichMarkdownInner = ({
|
|
|
17954
17995
|
const extractText2 = (node) => {
|
|
17955
17996
|
if (typeof node === "string") return node;
|
|
17956
17997
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17957
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17998
|
+
if (_optionalChain([node, 'optionalAccess', _337 => _337.props, 'optionalAccess', _338 => _338.children])) return extractText2(node.props.children);
|
|
17958
17999
|
return "";
|
|
17959
18000
|
};
|
|
17960
18001
|
const text = extractText2(children);
|
|
@@ -17972,7 +18013,7 @@ var RichMarkdownInner = ({
|
|
|
17972
18013
|
const extractText2 = (node) => {
|
|
17973
18014
|
if (typeof node === "string") return node;
|
|
17974
18015
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17975
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18016
|
+
if (_optionalChain([node, 'optionalAccess', _339 => _339.props, 'optionalAccess', _340 => _340.children])) return extractText2(node.props.children);
|
|
17976
18017
|
return "";
|
|
17977
18018
|
};
|
|
17978
18019
|
const text = extractText2(children);
|
|
@@ -18048,8 +18089,8 @@ var RichMarkdownInner = ({
|
|
|
18048
18089
|
{
|
|
18049
18090
|
href,
|
|
18050
18091
|
className: `text-ods-accent no-underline relative transition-colors duration-200 hover:after:w-full after:content-[''] after:absolute after:w-0 after:h-0.5 after:-bottom-0.5 after:left-0 after:bg-ods-accent after:transition-all after:duration-300 ${className2 || ""}`,
|
|
18051
|
-
target: _optionalChain([href, 'optionalAccess',
|
|
18052
|
-
rel: _optionalChain([href, 'optionalAccess',
|
|
18092
|
+
target: _optionalChain([href, 'optionalAccess', _341 => _341.startsWith, 'call', _342 => _342("http")]) ? "_blank" : void 0,
|
|
18093
|
+
rel: _optionalChain([href, 'optionalAccess', _343 => _343.startsWith, 'call', _344 => _344("http")]) ? "noopener noreferrer" : void 0,
|
|
18053
18094
|
children
|
|
18054
18095
|
}
|
|
18055
18096
|
);
|
|
@@ -18173,7 +18214,7 @@ function ReleaseChangelogSection({
|
|
|
18173
18214
|
className: "overflow-hidden transition-[max-height] duration-500",
|
|
18174
18215
|
style: {
|
|
18175
18216
|
transitionTimingFunction: "cubic-bezier(0.33, 1, 0.68, 1)",
|
|
18176
|
-
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access',
|
|
18217
|
+
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access', _345 => _345.current, 'optionalAccess', _346 => _346.scrollHeight]), () => ( 2e3)) : PREVIEW_COLLAPSED_HEIGHT,
|
|
18177
18218
|
...previewNeedsFade && !previewExpanded ? {
|
|
18178
18219
|
maskImage: "linear-gradient(to bottom, black 30%, transparent 100%)",
|
|
18179
18220
|
WebkitMaskImage: "linear-gradient(to bottom, black 30%, transparent 100%)"
|
|
@@ -18610,16 +18651,16 @@ function FilterModal({
|
|
|
18610
18651
|
};
|
|
18611
18652
|
const handleReset = () => {
|
|
18612
18653
|
onFilterChange({});
|
|
18613
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
18654
|
+
_optionalChain([onTagsChange, 'optionalCall', _347 => _347([])]);
|
|
18614
18655
|
onClose();
|
|
18615
18656
|
};
|
|
18616
18657
|
const handleApply = () => {
|
|
18617
18658
|
onFilterChange(selectedFilters);
|
|
18618
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
18659
|
+
_optionalChain([onTagsChange, 'optionalCall', _348 => _348(pendingTags)]);
|
|
18619
18660
|
onClose();
|
|
18620
18661
|
};
|
|
18621
18662
|
const getColumnDirection = (columnKey) => {
|
|
18622
|
-
return _optionalChain([sortConfig, 'optionalAccess',
|
|
18663
|
+
return _optionalChain([sortConfig, 'optionalAccess', _349 => _349.sortBy]) === columnKey ? sortConfig.sortDirection : void 0;
|
|
18623
18664
|
};
|
|
18624
18665
|
const hasSort = !!sortConfig && sortConfig.columns.length > 0;
|
|
18625
18666
|
const hasFilterGroups = filterGroups.length > 0;
|
|
@@ -18668,7 +18709,7 @@ function FilterModal({
|
|
|
18668
18709
|
{
|
|
18669
18710
|
column,
|
|
18670
18711
|
currentDirection: getColumnDirection(column.key),
|
|
18671
|
-
onSort: (direction) => _optionalChain([onSort, 'optionalCall',
|
|
18712
|
+
onSort: (direction) => _optionalChain([onSort, 'optionalCall', _350 => _350(column.key, direction)]),
|
|
18672
18713
|
onClear: onSortClear ? () => onSortClear(column.key) : void 0
|
|
18673
18714
|
},
|
|
18674
18715
|
column.key
|
|
@@ -18846,7 +18887,7 @@ function IconButtonsVariant({
|
|
|
18846
18887
|
}) {
|
|
18847
18888
|
const desktopActions = actions.filter((a) => !a.showOnlyMobile);
|
|
18848
18889
|
const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
|
|
18849
|
-
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access',
|
|
18890
|
+
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _351 => _351[0], 'access', _352 => _352.submenu, 'optionalAccess', _353 => _353.length]);
|
|
18850
18891
|
const singleAction = isSingleAction ? actions[0] : null;
|
|
18851
18892
|
const useSingleActionMobile = isSingleAction && !hasMenuActions;
|
|
18852
18893
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -20002,7 +20043,7 @@ function getShellIcon(shellType) {
|
|
|
20002
20043
|
if (!shellType) return void 0;
|
|
20003
20044
|
const normalized = shellType.toUpperCase();
|
|
20004
20045
|
const shellDef = SHELL_TYPES.find((s) => s.id === normalized);
|
|
20005
|
-
return _optionalChain([shellDef, 'optionalAccess',
|
|
20046
|
+
return _optionalChain([shellDef, 'optionalAccess', _354 => _354.icon]);
|
|
20006
20047
|
}
|
|
20007
20048
|
|
|
20008
20049
|
// src/types/os.types.ts
|
|
@@ -20075,7 +20116,7 @@ function getOSIcon(osType) {
|
|
|
20075
20116
|
const normalized = normalizeOSType(osType);
|
|
20076
20117
|
if (!normalized) return void 0;
|
|
20077
20118
|
const osTypeDef = OS_TYPES.find((t) => t.id === normalized);
|
|
20078
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
20119
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _355 => _355.icon]);
|
|
20079
20120
|
}
|
|
20080
20121
|
function getOSTypeDefinition(osType) {
|
|
20081
20122
|
if (!osType) return void 0;
|
|
@@ -20085,7 +20126,7 @@ function getOSTypeDefinition(osType) {
|
|
|
20085
20126
|
}
|
|
20086
20127
|
function getOSPlatformId(osType) {
|
|
20087
20128
|
const osTypeDef = getOSTypeDefinition(osType);
|
|
20088
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
20129
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _356 => _356.platformId]);
|
|
20089
20130
|
}
|
|
20090
20131
|
function isOSPlatform(deviceOS, targetPlatform) {
|
|
20091
20132
|
if (!deviceOS || !targetPlatform) return false;
|
|
@@ -20178,10 +20219,10 @@ var GENERIC_EMAIL_DOMAINS = [
|
|
|
20178
20219
|
];
|
|
20179
20220
|
function extractDomainFromEmail(email) {
|
|
20180
20221
|
if (!email || !email.includes("@")) return null;
|
|
20181
|
-
return _optionalChain([email, 'access',
|
|
20222
|
+
return _optionalChain([email, 'access', _357 => _357.split, 'call', _358 => _358("@"), 'access', _359 => _359[1], 'optionalAccess', _360 => _360.toLowerCase, 'call', _361 => _361()]) || null;
|
|
20182
20223
|
}
|
|
20183
20224
|
function normalizeDomain(domain) {
|
|
20184
|
-
return _optionalChain([domain, 'optionalAccess',
|
|
20225
|
+
return _optionalChain([domain, 'optionalAccess', _362 => _362.toLowerCase, 'call', _363 => _363(), 'access', _364 => _364.replace, 'call', _365 => _365(/^https?:\/\//, ""), 'access', _366 => _366.replace, 'call', _367 => _367(/^www\./, ""), 'access', _368 => _368.split, 'call', _369 => _369("/"), 'access', _370 => _370[0], 'access', _371 => _371.trim, 'call', _372 => _372()]) || "";
|
|
20185
20226
|
}
|
|
20186
20227
|
function isGenericDomain(domain) {
|
|
20187
20228
|
const normalized = normalizeDomain(domain);
|
|
@@ -20615,7 +20656,7 @@ function defaultTableIdForDocumentType(documentType) {
|
|
|
20615
20656
|
|
|
20616
20657
|
// src/utils/sse-decision-frame.ts
|
|
20617
20658
|
async function readLeadingDecisionFrame(response) {
|
|
20618
|
-
const reader = _optionalChain([response, 'access',
|
|
20659
|
+
const reader = _optionalChain([response, 'access', _373 => _373.body, 'optionalAccess', _374 => _374.getReader, 'call', _375 => _375()]);
|
|
20619
20660
|
if (!reader) throw new Error("readLeadingDecisionFrame: response has no body");
|
|
20620
20661
|
const decoder = new TextDecoder();
|
|
20621
20662
|
let buffer = "";
|
|
@@ -20644,9 +20685,9 @@ async function readLeadingDecisionFrame(response) {
|
|
|
20644
20685
|
);
|
|
20645
20686
|
}
|
|
20646
20687
|
const obj = parsed;
|
|
20647
|
-
if (_optionalChain([obj, 'optionalAccess',
|
|
20688
|
+
if (_optionalChain([obj, 'optionalAccess', _376 => _376.kind]) !== "decision_resolved") {
|
|
20648
20689
|
throw new Error(
|
|
20649
|
-
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess',
|
|
20690
|
+
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _377 => _377.kind]))}`
|
|
20650
20691
|
);
|
|
20651
20692
|
}
|
|
20652
20693
|
frame = normalizeDecisionFrame(obj);
|
|
@@ -20687,7 +20728,7 @@ var AUTO_CONTINUATION_DIRECTIVE_PREFIX = "[internal-auto-continuation]";
|
|
|
20687
20728
|
function buildAutoContinuationDirective(toolName, opts = {}) {
|
|
20688
20729
|
const ticketRef = opts.ticketId ? ` (ticket #${opts.ticketId})` : "";
|
|
20689
20730
|
const ticketHash = opts.ticketId ? ` #${opts.ticketId}` : "";
|
|
20690
|
-
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access',
|
|
20731
|
+
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _378 => _378.status, 'optionalAccess', _379 => _379.toUpperCase, 'call', _380 => _380()]) === "CLOSED";
|
|
20691
20732
|
if (toolName === "create_ticket") {
|
|
20692
20733
|
return `${AUTO_CONTINUATION_DIRECTIVE_PREFIX} The user just approved create_ticket${ticketRef}. Per ticket-protocol \xA71a, ask 2-4 SHORT, issue-specific diagnostic follow-up questions tailored to the symptom they reported in their original message. When they answer, propose an update_ticket with content_addendum carrying a clean Q&A digest. Do NOT call any tool in this turn \u2014 just write the questions as prose.`;
|
|
20693
20734
|
}
|
|
@@ -20749,7 +20790,7 @@ function formatSingularLookupInvocation(cmdId, value) {
|
|
|
20749
20790
|
return safe ? `/${cmdId} "${safe}"` : `/${cmdId}`;
|
|
20750
20791
|
}
|
|
20751
20792
|
function extractEntityIdFilter(override, expectedTableId) {
|
|
20752
|
-
const f = _optionalChain([override, 'optionalAccess',
|
|
20793
|
+
const f = _optionalChain([override, 'optionalAccess', _381 => _381.entityIdFilter]);
|
|
20753
20794
|
if (!f) return null;
|
|
20754
20795
|
const tableId = typeof f.tableId === "string" ? f.tableId : "";
|
|
20755
20796
|
const id = typeof f.id === "string" ? f.id : "";
|
|
@@ -20824,7 +20865,7 @@ function getTaskTypeLabel(customItemId) {
|
|
|
20824
20865
|
|
|
20825
20866
|
// src/components/chat/utils/agent-status-message.ts
|
|
20826
20867
|
function getStatusColorScheme(status) {
|
|
20827
|
-
const s = _optionalChain([status, 'optionalAccess',
|
|
20868
|
+
const s = _optionalChain([status, 'optionalAccess', _382 => _382.toLowerCase, 'call', _383 => _383()]) || "";
|
|
20828
20869
|
switch (status) {
|
|
20829
20870
|
case "completed":
|
|
20830
20871
|
case "success":
|
|
@@ -21106,10 +21147,10 @@ var CONTENT_REF_GROUPS = {
|
|
|
21106
21147
|
what_i_shipped: { label: "What I Shipped", order: 10, layout: "grid", gridSize: "default" }
|
|
21107
21148
|
};
|
|
21108
21149
|
function getContentRefLabel(type) {
|
|
21109
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
21150
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _384 => _384[type], 'optionalAccess', _385 => _385.label]), () => ( null));
|
|
21110
21151
|
}
|
|
21111
21152
|
function getContentRefLabelOrTitleCase(type) {
|
|
21112
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
21153
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _386 => _386[type], 'optionalAccess', _387 => _387.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
|
|
21113
21154
|
}
|
|
21114
21155
|
function orderContentRefTypes(present) {
|
|
21115
21156
|
const presentSet = new Set(present);
|
|
@@ -21268,7 +21309,7 @@ function getDocSourceDefaultPath(structure, folderIndexFile = DEFAULT_FOLDER_IND
|
|
|
21268
21309
|
const firstFolderWithReadme = structure.find(
|
|
21269
21310
|
(node) => node.type === "folder" && node.hasReadme && !!node.path
|
|
21270
21311
|
);
|
|
21271
|
-
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess',
|
|
21312
|
+
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _388 => _388.path]), () => ( null));
|
|
21272
21313
|
}
|
|
21273
21314
|
|
|
21274
21315
|
// src/utils/doc-path-utils.ts
|
|
@@ -21279,7 +21320,7 @@ function pathToNodeId(path) {
|
|
|
21279
21320
|
return path.replace(/[\/\s]/g, "-").toLowerCase();
|
|
21280
21321
|
}
|
|
21281
21322
|
function normalizeDocPath(segments, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE) {
|
|
21282
|
-
const lowerPath = (_optionalChain([segments, 'optionalAccess',
|
|
21323
|
+
const lowerPath = (_optionalChain([segments, 'optionalAccess', _389 => _389.join, 'call', _390 => _390("/")]) || "").toLowerCase();
|
|
21283
21324
|
const lowerIndex = folderIndexFile.toLowerCase();
|
|
21284
21325
|
const suffix = `/${lowerIndex}`;
|
|
21285
21326
|
if (lowerPath.endsWith(suffix)) return lowerPath.slice(0, -suffix.length);
|
|
@@ -22101,26 +22142,26 @@ function DeviceCard({
|
|
|
22101
22142
|
] }),
|
|
22102
22143
|
device.organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary truncate", title: device.organization, children: device.organization })
|
|
22103
22144
|
] }),
|
|
22104
|
-
_optionalChain([actions, 'access',
|
|
22145
|
+
_optionalChain([actions, 'access', _391 => _391.moreButton, 'optionalAccess', _392 => _392.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22105
22146
|
"div",
|
|
22106
22147
|
{
|
|
22107
22148
|
className: "flex items-center justify-center p-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
|
|
22108
22149
|
onClick: (e) => {
|
|
22109
22150
|
e.stopPropagation();
|
|
22110
|
-
_optionalChain([actions, 'access',
|
|
22151
|
+
_optionalChain([actions, 'access', _393 => _393.moreButton, 'optionalAccess', _394 => _394.onClick, 'optionalCall', _395 => _395()]);
|
|
22111
22152
|
},
|
|
22112
22153
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
|
|
22113
22154
|
}
|
|
22114
22155
|
),
|
|
22115
|
-
_optionalChain([actions, 'access',
|
|
22116
|
-
_optionalChain([actions, 'access',
|
|
22156
|
+
_optionalChain([actions, 'access', _396 => _396.detailsButton, 'optionalAccess', _397 => _397.visible]) !== false && _optionalChain([actions, 'access', _398 => _398.detailsButton, 'optionalAccess', _399 => _399.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
|
|
22157
|
+
_optionalChain([actions, 'access', _400 => _400.customActions, 'optionalAccess', _401 => _401.map, 'call', _402 => _402(
|
|
22117
22158
|
(action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22118
22159
|
"div",
|
|
22119
22160
|
{
|
|
22120
22161
|
className: "flex items-center justify-center px-4 py-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
|
|
22121
22162
|
onClick: (e) => {
|
|
22122
22163
|
e.stopPropagation();
|
|
22123
|
-
_optionalChain([action, 'access',
|
|
22164
|
+
_optionalChain([action, 'access', _403 => _403.onClick, 'optionalCall', _404 => _404()]);
|
|
22124
22165
|
},
|
|
22125
22166
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3 text-ods-text-primary text-nowrap tracking-[-0.36px]", children: action.label })
|
|
22126
22167
|
},
|
|
@@ -22620,7 +22661,7 @@ function MoreActionsMenu({
|
|
|
22620
22661
|
] });
|
|
22621
22662
|
const handleActivate = (e) => {
|
|
22622
22663
|
e.stopPropagation();
|
|
22623
|
-
if (!item.disabled) _optionalChain([item, 'access',
|
|
22664
|
+
if (!item.disabled) _optionalChain([item, 'access', _405 => _405.onClick, 'optionalCall', _406 => _406()]);
|
|
22624
22665
|
};
|
|
22625
22666
|
if (item.href) {
|
|
22626
22667
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22687,7 +22728,7 @@ function OrganizationCard({
|
|
|
22687
22728
|
const handleActionClick = (e) => {
|
|
22688
22729
|
e.preventDefault();
|
|
22689
22730
|
e.stopPropagation();
|
|
22690
|
-
_optionalChain([actionButton, 'optionalAccess',
|
|
22731
|
+
_optionalChain([actionButton, 'optionalAccess', _407 => _407.onClick, 'call', _408 => _408(organization, e)]);
|
|
22691
22732
|
};
|
|
22692
22733
|
const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22693
22734
|
"div",
|
|
@@ -23593,10 +23634,10 @@ var getContentDimensions = (config) => {
|
|
|
23593
23634
|
const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
|
|
23594
23635
|
const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
|
|
23595
23636
|
const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
|
|
23596
|
-
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
23597
|
-
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
23598
|
-
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
23599
|
-
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
23637
|
+
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _409 => _409.mobileContentDimensions, 'optionalAccess', _410 => _410.width]))), () => ( defaultMobile.width));
|
|
23638
|
+
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _411 => _411.mobileContentDimensions, 'optionalAccess', _412 => _412.height]))), () => ( defaultMobile.height));
|
|
23639
|
+
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _413 => _413.desktopContentDimensions, 'optionalAccess', _414 => _414.width]))), () => ( defaultDesktop.width));
|
|
23640
|
+
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _415 => _415.desktopContentDimensions, 'optionalAccess', _416 => _416.height]))), () => ( defaultDesktop.height));
|
|
23600
23641
|
return {
|
|
23601
23642
|
mobile: { width: mobileWidth, height: mobileHeight },
|
|
23602
23643
|
desktop: { width: desktopWidth, height: desktopHeight }
|
|
@@ -23730,7 +23771,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
|
|
|
23730
23771
|
const contentDimensions = getContentDimensions(config);
|
|
23731
23772
|
const mobileHeight = contentDimensions.mobile.height;
|
|
23732
23773
|
const calculatedHeight = Math.max(mobileHeight + 100, 400);
|
|
23733
|
-
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess',
|
|
23774
|
+
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _417 => _417.innerHeight]) * 0.85 || 650)}px`;
|
|
23734
23775
|
})(),
|
|
23735
23776
|
minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
|
|
23736
23777
|
const contentDimensions = getContentDimensions(config);
|
|
@@ -23835,7 +23876,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23835
23876
|
const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
|
|
23836
23877
|
const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
|
|
23837
23878
|
const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
|
|
23838
|
-
config.defaultSectionId || _optionalChain([config, 'access',
|
|
23879
|
+
config.defaultSectionId || _optionalChain([config, 'access', _418 => _418.sections, 'access', _419 => _419[0], 'optionalAccess', _420 => _420.id]) || ""
|
|
23839
23880
|
);
|
|
23840
23881
|
const activeSection = externalActiveSection || internalActiveSection;
|
|
23841
23882
|
const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
|
|
@@ -23925,7 +23966,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23925
23966
|
const handleMessage = (event) => {
|
|
23926
23967
|
if (event.origin !== "https://www.figma.com") return;
|
|
23927
23968
|
const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
|
|
23928
|
-
if (_optionalChain([event, 'access',
|
|
23969
|
+
if (_optionalChain([event, 'access', _421 => _421.data, 'optionalAccess', _422 => _422.type]) && validEvents.includes(event.data.type)) {
|
|
23929
23970
|
const figmaEvent = event.data;
|
|
23930
23971
|
console.log("[Figma Event]", figmaEvent.type, viewMode);
|
|
23931
23972
|
switch (figmaEvent.type) {
|
|
@@ -23935,19 +23976,19 @@ var FigmaPrototypeViewer = ({
|
|
|
23935
23976
|
setIframeState("READY");
|
|
23936
23977
|
break;
|
|
23937
23978
|
case "PRESENTED_NODE_CHANGED":
|
|
23938
|
-
if (_optionalChain([figmaEvent, 'access',
|
|
23979
|
+
if (_optionalChain([figmaEvent, 'access', _423 => _423.data, 'optionalAccess', _424 => _424.presentedNodeId])) {
|
|
23939
23980
|
setCurrentNodeId(figmaEvent.data.presentedNodeId);
|
|
23940
23981
|
if (!isNavigating) {
|
|
23941
23982
|
const matchingSection = config.sections.find((s) => {
|
|
23942
|
-
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access',
|
|
23943
|
-
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access',
|
|
23983
|
+
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _425 => _425.data, 'optionalAccess', _426 => _426.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _427 => _427.data, 'optionalAccess', _428 => _428.presentedNodeId]);
|
|
23984
|
+
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _429 => _429.data, 'optionalAccess', _430 => _430.presentedNodeId]) || _optionalChain([s, 'access', _431 => _431.mobileStartingNodeId, 'optionalAccess', _432 => _432.replace, 'call', _433 => _433(":", "-")]) === _optionalChain([figmaEvent, 'access', _434 => _434.data, 'optionalAccess', _435 => _435.presentedNodeId]);
|
|
23944
23985
|
return desktopMatch || mobileMatch;
|
|
23945
23986
|
});
|
|
23946
23987
|
if (matchingSection && matchingSection.id !== activeSection) {
|
|
23947
23988
|
if (!externalActiveSection) {
|
|
23948
23989
|
setInternalActiveSection(matchingSection.id);
|
|
23949
23990
|
}
|
|
23950
|
-
_optionalChain([config, 'access',
|
|
23991
|
+
_optionalChain([config, 'access', _436 => _436.onSectionChange, 'optionalCall', _437 => _437(matchingSection.id)]);
|
|
23951
23992
|
}
|
|
23952
23993
|
}
|
|
23953
23994
|
}
|
|
@@ -23960,7 +24001,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23960
24001
|
}, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
|
|
23961
24002
|
const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
|
|
23962
24003
|
const section = config.sections.find((s) => s.id === sectionId);
|
|
23963
|
-
if (!section || !_optionalChain([iframeRef, 'access',
|
|
24004
|
+
if (!section || !_optionalChain([iframeRef, 'access', _438 => _438.current, 'optionalAccess', _439 => _439.contentWindow]) || !isInitialized) {
|
|
23964
24005
|
return;
|
|
23965
24006
|
}
|
|
23966
24007
|
setIsNavigating(true);
|
|
@@ -23968,7 +24009,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23968
24009
|
if (!externalActiveSection) {
|
|
23969
24010
|
setInternalActiveSection(sectionId);
|
|
23970
24011
|
}
|
|
23971
|
-
_optionalChain([config, 'access',
|
|
24012
|
+
_optionalChain([config, 'access', _440 => _440.onSectionChange, 'optionalCall', _441 => _441(sectionId)]);
|
|
23972
24013
|
const command = {
|
|
23973
24014
|
type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
|
|
23974
24015
|
data: { nodeId }
|
|
@@ -24288,7 +24329,7 @@ var FiltersDropdown = ({
|
|
|
24288
24329
|
defaults[section.id] = section.defaultSelected || [];
|
|
24289
24330
|
});
|
|
24290
24331
|
setSelectedFilters(defaults);
|
|
24291
|
-
_optionalChain([onReset, 'optionalCall',
|
|
24332
|
+
_optionalChain([onReset, 'optionalCall', _442 => _442()]);
|
|
24292
24333
|
setIsOpen(false);
|
|
24293
24334
|
};
|
|
24294
24335
|
const handleApply = () => {
|
|
@@ -24581,7 +24622,7 @@ function MediaGalleryManager({
|
|
|
24581
24622
|
const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
|
|
24582
24623
|
const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
|
|
24583
24624
|
const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
|
|
24584
|
-
const file = _optionalChain([event, 'access',
|
|
24625
|
+
const file = _optionalChain([event, 'access', _443 => _443.target, 'access', _444 => _444.files, 'optionalAccess', _445 => _445[0]]);
|
|
24585
24626
|
if (!file) return;
|
|
24586
24627
|
let mediaType;
|
|
24587
24628
|
if (file.type.startsWith("image/")) {
|
|
@@ -24696,7 +24737,7 @@ function MediaGalleryManager({
|
|
|
24696
24737
|
{
|
|
24697
24738
|
type: "button",
|
|
24698
24739
|
variant: "outline",
|
|
24699
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
24740
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _446 => _446.current, 'optionalAccess', _447 => _447.click, 'call', _448 => _448()]),
|
|
24700
24741
|
disabled: isUploading,
|
|
24701
24742
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
24702
24743
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -25364,7 +25405,7 @@ function ReleaseMediaManager({
|
|
|
25364
25405
|
const fileInputRef = _react.useRef.call(void 0, null);
|
|
25365
25406
|
const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
|
|
25366
25407
|
const handleFileSelect = async (event) => {
|
|
25367
|
-
const file = _optionalChain([event, 'access',
|
|
25408
|
+
const file = _optionalChain([event, 'access', _449 => _449.target, 'access', _450 => _450.files, 'optionalAccess', _451 => _451[0]]);
|
|
25368
25409
|
if (!file) return;
|
|
25369
25410
|
let mediaType;
|
|
25370
25411
|
if (file.type.startsWith("image/")) {
|
|
@@ -25444,7 +25485,7 @@ function ReleaseMediaManager({
|
|
|
25444
25485
|
{
|
|
25445
25486
|
type: "button",
|
|
25446
25487
|
variant: "outline",
|
|
25447
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
25488
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _452 => _452.current, 'optionalAccess', _453 => _453.click, 'call', _454 => _454()]),
|
|
25448
25489
|
disabled: uploadingIndex !== null,
|
|
25449
25490
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
25450
25491
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -25659,7 +25700,7 @@ function SEOEditorPreview({
|
|
|
25659
25700
|
const displayImage = hasOgImage || hasFeaturedImage;
|
|
25660
25701
|
const handleImageUpload = async (event) => {
|
|
25661
25702
|
if (!onOgImageUpload) return;
|
|
25662
|
-
const file = _optionalChain([event, 'access',
|
|
25703
|
+
const file = _optionalChain([event, 'access', _455 => _455.target, 'access', _456 => _456.files, 'optionalAccess', _457 => _457[0]]);
|
|
25663
25704
|
if (!file) return;
|
|
25664
25705
|
setIsUploading(true);
|
|
25665
25706
|
try {
|
|
@@ -25809,7 +25850,7 @@ function SEOEditorPreview({
|
|
|
25809
25850
|
type: "button",
|
|
25810
25851
|
variant: "outline",
|
|
25811
25852
|
size: "icon",
|
|
25812
|
-
onClick: () => _optionalChain([fileInputRef, 'optionalAccess',
|
|
25853
|
+
onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _458 => _458.click, 'call', _459 => _459()]),
|
|
25813
25854
|
disabled: disabled || isUploading,
|
|
25814
25855
|
className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
|
|
25815
25856
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
|
|
@@ -25832,7 +25873,7 @@ function SEOEditorPreview({
|
|
|
25832
25873
|
"div",
|
|
25833
25874
|
{
|
|
25834
25875
|
className: "h-full min-h-[280px] border-2 border-dashed border-ods-border rounded-lg flex flex-col items-center justify-center cursor-pointer hover:border-ods-accent transition-colors bg-ods-bg-hover",
|
|
25835
|
-
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess',
|
|
25876
|
+
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _460 => _460.click, 'call', _461 => _461()]),
|
|
25836
25877
|
children: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
25837
25878
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
|
|
25838
25879
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-sm text-ods-text-secondary font-['DM_Sans']", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
|
|
@@ -25917,7 +25958,7 @@ function SocialLinksManager({
|
|
|
25917
25958
|
className = ""
|
|
25918
25959
|
}) {
|
|
25919
25960
|
const addLink = () => {
|
|
25920
|
-
const firstPlatform = _optionalChain([platforms, 'access',
|
|
25961
|
+
const firstPlatform = _optionalChain([platforms, 'access', _462 => _462[0], 'optionalAccess', _463 => _463.name]) || "website";
|
|
25921
25962
|
onChange([...links, { platform: firstPlatform, url: "" }]);
|
|
25922
25963
|
};
|
|
25923
25964
|
const removeLink = (index) => {
|
|
@@ -25929,7 +25970,7 @@ function SocialLinksManager({
|
|
|
25929
25970
|
onChange(updated);
|
|
25930
25971
|
};
|
|
25931
25972
|
const getIcon = (link, platform) => {
|
|
25932
|
-
const iconKey = _optionalChain([platform, 'optionalAccess',
|
|
25973
|
+
const iconKey = _optionalChain([platform, 'optionalAccess', _464 => _464.icon_name]) || link.platform;
|
|
25933
25974
|
const IconComponent = iconMap[iconKey];
|
|
25934
25975
|
return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
|
|
25935
25976
|
};
|
|
@@ -25954,7 +25995,7 @@ function SocialLinksManager({
|
|
|
25954
25995
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25955
25996
|
_chunkQJGRP2YEcjs.Input,
|
|
25956
25997
|
{
|
|
25957
|
-
placeholder: _optionalChain([platform, 'optionalAccess',
|
|
25998
|
+
placeholder: _optionalChain([platform, 'optionalAccess', _465 => _465.placeholder]) || "Profile URL",
|
|
25958
25999
|
value: link.url,
|
|
25959
26000
|
onChange: (e) => updateLink(index, "url", e.target.value),
|
|
25960
26001
|
onKeyDown: (e) => {
|
|
@@ -26333,7 +26374,7 @@ function useVideoOriginPreconnect({
|
|
|
26333
26374
|
supabaseStorageOrigin
|
|
26334
26375
|
} = {}) {
|
|
26335
26376
|
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
26336
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
26377
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _466 => _466.endpoints, 'access', _467 => _467.supabaseStorageOrigin])));
|
|
26337
26378
|
try {
|
|
26338
26379
|
ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
|
|
26339
26380
|
ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
|
|
@@ -26352,13 +26393,13 @@ function useVideoWarmup({
|
|
|
26352
26393
|
nearMargin = "1000px"
|
|
26353
26394
|
} = {}) {
|
|
26354
26395
|
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
26355
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
26396
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _468 => _468.endpoints, 'access', _469 => _469.supabaseStorageOrigin])));
|
|
26356
26397
|
useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
|
|
26357
26398
|
const { ref, isNear } = _chunk27IO7V3Pcjs.useNearViewport.call(void 0, nearMargin);
|
|
26358
26399
|
_react.useEffect.call(void 0, () => {
|
|
26359
26400
|
if (!isNear || !videoUrl || !resolvedOrigin) return;
|
|
26360
26401
|
const conn = navigator.connection;
|
|
26361
|
-
if (_optionalChain([conn, 'optionalAccess',
|
|
26402
|
+
if (_optionalChain([conn, 'optionalAccess', _470 => _470.saveData]) === true) return;
|
|
26362
26403
|
let videoOrigin;
|
|
26363
26404
|
try {
|
|
26364
26405
|
videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
|
|
@@ -26428,7 +26469,7 @@ function VideoSourceSelector({
|
|
|
26428
26469
|
input.accept = "video/*";
|
|
26429
26470
|
input.onchange = async (e) => {
|
|
26430
26471
|
const target = e.target;
|
|
26431
|
-
const file = _optionalChain([target, 'access',
|
|
26472
|
+
const file = _optionalChain([target, 'access', _471 => _471.files, 'optionalAccess', _472 => _472[0]]);
|
|
26432
26473
|
if (!file) return;
|
|
26433
26474
|
setIsUploading(true);
|
|
26434
26475
|
setUploadProgress(0);
|
|
@@ -26789,7 +26830,7 @@ function TranscriptSummaryEditor({
|
|
|
26789
26830
|
{
|
|
26790
26831
|
id: "subtitles",
|
|
26791
26832
|
value: subtitles || "",
|
|
26792
|
-
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall',
|
|
26833
|
+
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _473 => _473(e.target.value)]),
|
|
26793
26834
|
placeholder: subtitlesPlaceholder,
|
|
26794
26835
|
disabled: disabled || !onSubtitlesChange,
|
|
26795
26836
|
className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 font-mono text-sm",
|
|
@@ -26942,7 +26983,7 @@ var AIEnrichSection = ({
|
|
|
26942
26983
|
}) => {
|
|
26943
26984
|
const hasResults = status === "success" || status === "error";
|
|
26944
26985
|
const shouldDisable = disabled || !canEnrich;
|
|
26945
|
-
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess',
|
|
26986
|
+
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _474 => _474.filter, 'call', _475 => _475((f) => !f.isFilled)]) || [];
|
|
26946
26987
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26947
26988
|
"div",
|
|
26948
26989
|
{
|
|
@@ -26980,7 +27021,7 @@ var AIEnrichSection = ({
|
|
|
26980
27021
|
{
|
|
26981
27022
|
id: "ai-enrich-custom-instructions",
|
|
26982
27023
|
value: _nullishCoalesce(customInstructions, () => ( "")),
|
|
26983
|
-
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall',
|
|
27024
|
+
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _476 => _476(e.target.value)]),
|
|
26984
27025
|
placeholder: customInstructionsPlaceholder,
|
|
26985
27026
|
disabled: loading,
|
|
26986
27027
|
maxLength: customInstructionsMaxLength,
|
|
@@ -27109,7 +27150,7 @@ function HighlightVideoSection({
|
|
|
27109
27150
|
input.accept = "video/*";
|
|
27110
27151
|
input.onchange = async (e) => {
|
|
27111
27152
|
const target = e.target;
|
|
27112
|
-
const file = _optionalChain([target, 'access',
|
|
27153
|
+
const file = _optionalChain([target, 'access', _477 => _477.files, 'optionalAccess', _478 => _478[0]]);
|
|
27113
27154
|
if (!file) return;
|
|
27114
27155
|
setUploadError(null);
|
|
27115
27156
|
try {
|
|
@@ -27611,7 +27652,7 @@ function HighlightVideoPreview({
|
|
|
27611
27652
|
input.accept = "video/*";
|
|
27612
27653
|
input.onchange = async (e) => {
|
|
27613
27654
|
const target = e.target;
|
|
27614
|
-
const file = _optionalChain([target, 'access',
|
|
27655
|
+
const file = _optionalChain([target, 'access', _479 => _479.files, 'optionalAccess', _480 => _480[0]]);
|
|
27615
27656
|
if (!file) return;
|
|
27616
27657
|
await onUpload(file);
|
|
27617
27658
|
};
|
|
@@ -27798,7 +27839,7 @@ function HighlightVideoCombinedSection({
|
|
|
27798
27839
|
input.accept = "video/*";
|
|
27799
27840
|
input.onchange = async (e) => {
|
|
27800
27841
|
const target = e.target;
|
|
27801
|
-
const file = _optionalChain([target, 'access',
|
|
27842
|
+
const file = _optionalChain([target, 'access', _481 => _481.files, 'optionalAccess', _482 => _482[0]]);
|
|
27802
27843
|
if (!file) return;
|
|
27803
27844
|
await onUpload(file);
|
|
27804
27845
|
};
|
|
@@ -28095,7 +28136,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
|
|
|
28095
28136
|
return editMode ? "Set Global Permission" : "";
|
|
28096
28137
|
}
|
|
28097
28138
|
const option = approvalLevelOptions.find((opt) => opt.value === level);
|
|
28098
|
-
return _optionalChain([option, 'optionalAccess',
|
|
28139
|
+
return _optionalChain([option, 'optionalAccess', _483 => _483.label]) || level;
|
|
28099
28140
|
};
|
|
28100
28141
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
28101
28142
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border-b border-ods-border flex gap-4 items-center px-4 py-3", children: [
|
|
@@ -28309,12 +28350,12 @@ function PhoneInput({
|
|
|
28309
28350
|
const runValidation = _react.useCallback.call(void 0, (phone) => {
|
|
28310
28351
|
if (!phone || digitCount(phone) === 0) {
|
|
28311
28352
|
setIsInvalid(false);
|
|
28312
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
28353
|
+
_optionalChain([onValidationChange, 'optionalCall', _484 => _484(false)]);
|
|
28313
28354
|
return;
|
|
28314
28355
|
}
|
|
28315
28356
|
const invalid = !validatePhoneNumber(phone, countryCode);
|
|
28316
28357
|
setIsInvalid(invalid);
|
|
28317
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
28358
|
+
_optionalChain([onValidationChange, 'optionalCall', _485 => _485(invalid)]);
|
|
28318
28359
|
}, [countryCode, digitCount, onValidationChange]);
|
|
28319
28360
|
const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
|
|
28320
28361
|
if (debounceRef.current) clearTimeout(debounceRef.current);
|
|
@@ -28363,7 +28404,7 @@ function PhoneInput({
|
|
|
28363
28404
|
debouncedValidation(val);
|
|
28364
28405
|
} else if (digitCount(val) === 0) {
|
|
28365
28406
|
setIsInvalid(false);
|
|
28366
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
28407
|
+
_optionalChain([onValidationChange, 'optionalCall', _486 => _486(false)]);
|
|
28367
28408
|
}
|
|
28368
28409
|
}
|
|
28369
28410
|
},
|
|
@@ -28704,19 +28745,19 @@ function NotificationsProvider({
|
|
|
28704
28745
|
}, []);
|
|
28705
28746
|
const markRead = React90.useCallback((id) => {
|
|
28706
28747
|
dispatch({ type: "markRead", id });
|
|
28707
|
-
void _optionalChain([actionsRef, 'access',
|
|
28748
|
+
void _optionalChain([actionsRef, 'access', _487 => _487.current, 'optionalAccess', _488 => _488.onMarkRead, 'optionalCall', _489 => _489(id)]);
|
|
28708
28749
|
}, []);
|
|
28709
28750
|
const markAllRead = React90.useCallback(() => {
|
|
28710
28751
|
dispatch({ type: "markAllRead" });
|
|
28711
|
-
void _optionalChain([actionsRef, 'access',
|
|
28752
|
+
void _optionalChain([actionsRef, 'access', _490 => _490.current, 'optionalAccess', _491 => _491.onMarkAllRead, 'optionalCall', _492 => _492()]);
|
|
28712
28753
|
}, []);
|
|
28713
28754
|
const markSettled = React90.useCallback((id) => {
|
|
28714
28755
|
dispatch({ type: "markSettled", id });
|
|
28715
|
-
void _optionalChain([actionsRef, 'access',
|
|
28756
|
+
void _optionalChain([actionsRef, 'access', _493 => _493.current, 'optionalAccess', _494 => _494.onMarkSettled, 'optionalCall', _495 => _495(id)]);
|
|
28716
28757
|
}, []);
|
|
28717
28758
|
const remove = React90.useCallback((id) => {
|
|
28718
28759
|
dispatch({ type: "remove", id });
|
|
28719
|
-
void _optionalChain([actionsRef, 'access',
|
|
28760
|
+
void _optionalChain([actionsRef, 'access', _496 => _496.current, 'optionalAccess', _497 => _497.onRemove, 'optionalCall', _498 => _498(id)]);
|
|
28720
28761
|
}, []);
|
|
28721
28762
|
const clear = React90.useCallback(() => dispatch({ type: "clear" }), []);
|
|
28722
28763
|
const open = React90.useCallback(() => setIsOpen(true), []);
|
|
@@ -28725,14 +28766,14 @@ function NotificationsProvider({
|
|
|
28725
28766
|
const setShowPopups = React90.useCallback(
|
|
28726
28767
|
(value2) => {
|
|
28727
28768
|
setShowPopupsState(value2);
|
|
28728
|
-
_optionalChain([onShowPopupsChange, 'optionalCall',
|
|
28769
|
+
_optionalChain([onShowPopupsChange, 'optionalCall', _499 => _499(value2)]);
|
|
28729
28770
|
},
|
|
28730
28771
|
[onShowPopupsChange]
|
|
28731
28772
|
);
|
|
28732
28773
|
const setShowDesktopPopups = React90.useCallback(
|
|
28733
28774
|
(value2) => {
|
|
28734
28775
|
setShowDesktopPopupsState(value2);
|
|
28735
|
-
_optionalChain([onShowDesktopPopupsChange, 'optionalCall',
|
|
28776
|
+
_optionalChain([onShowDesktopPopupsChange, 'optionalCall', _500 => _500(value2)]);
|
|
28736
28777
|
},
|
|
28737
28778
|
[onShowDesktopPopupsChange]
|
|
28738
28779
|
);
|
|
@@ -28836,7 +28877,7 @@ function NotificationTile({
|
|
|
28836
28877
|
if (!counting) return;
|
|
28837
28878
|
const remaining = Math.max(0, liveDurationMs - initialElapsed);
|
|
28838
28879
|
const timer = window.setTimeout(() => {
|
|
28839
|
-
_optionalChain([onSettle, 'optionalCall',
|
|
28880
|
+
_optionalChain([onSettle, 'optionalCall', _501 => _501(id)]);
|
|
28840
28881
|
}, remaining);
|
|
28841
28882
|
return () => window.clearTimeout(timer);
|
|
28842
28883
|
}, [id, counting, initialElapsed, liveDurationMs, onSettle]);
|
|
@@ -28898,7 +28939,7 @@ function NotificationTile({
|
|
|
28898
28939
|
"button",
|
|
28899
28940
|
{
|
|
28900
28941
|
type: "button",
|
|
28901
|
-
onClick: () => _optionalChain([onSettle, 'optionalCall',
|
|
28942
|
+
onClick: () => _optionalChain([onSettle, 'optionalCall', _502 => _502(id)]),
|
|
28902
28943
|
"aria-label": "Dismiss notification",
|
|
28903
28944
|
tabIndex: isLive ? 0 : -1,
|
|
28904
28945
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -29031,7 +29072,7 @@ function DrawerScrollList({
|
|
|
29031
29072
|
if (!sentinel || !root) return;
|
|
29032
29073
|
const observer = new IntersectionObserver(
|
|
29033
29074
|
(entries) => {
|
|
29034
|
-
if (_optionalChain([entries, 'access',
|
|
29075
|
+
if (_optionalChain([entries, 'access', _503 => _503[0], 'optionalAccess', _504 => _504.isIntersecting])) _optionalChain([loadMoreRef, 'access', _505 => _505.current, 'optionalCall', _506 => _506()]);
|
|
29035
29076
|
},
|
|
29036
29077
|
{ root, rootMargin: loadMoreRootMargin }
|
|
29037
29078
|
);
|
|
@@ -29046,7 +29087,7 @@ function DrawerScrollList({
|
|
|
29046
29087
|
className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
|
|
29047
29088
|
children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
29048
29089
|
unreadNotifications.map((n) => {
|
|
29049
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
29090
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _507 => _507(n, { onComplete, onSettle, liveDurationMs })]);
|
|
29050
29091
|
if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
|
|
29051
29092
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29052
29093
|
NotificationTile,
|
|
@@ -29210,7 +29251,7 @@ function NotificationPopups({
|
|
|
29210
29251
|
className
|
|
29211
29252
|
),
|
|
29212
29253
|
children: live.map((n) => {
|
|
29213
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
29254
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _508 => _508(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
|
|
29214
29255
|
if (custom) {
|
|
29215
29256
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
|
|
29216
29257
|
}
|
|
@@ -29390,21 +29431,21 @@ function transformWebinarToProgram(webinar) {
|
|
|
29390
29431
|
// src/components/features/notifications/types.ts
|
|
29391
29432
|
var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
|
|
29392
29433
|
function isApprovalNotification(notification) {
|
|
29393
|
-
return _optionalChain([notification, 'access',
|
|
29434
|
+
return _optionalChain([notification, 'access', _509 => _509.meta, 'optionalAccess', _510 => _510.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
|
|
29394
29435
|
}
|
|
29395
29436
|
function getApprovalMeta(notification) {
|
|
29396
29437
|
if (!isApprovalNotification(notification)) return null;
|
|
29397
29438
|
const meta = notification.meta;
|
|
29398
|
-
const approvalRequestId = _optionalChain([meta, 'optionalAccess',
|
|
29399
|
-
const toolCalls = _optionalChain([meta, 'optionalAccess',
|
|
29439
|
+
const approvalRequestId = _optionalChain([meta, 'optionalAccess', _511 => _511.approvalRequestId]);
|
|
29440
|
+
const toolCalls = _optionalChain([meta, 'optionalAccess', _512 => _512.toolCalls]);
|
|
29400
29441
|
if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
|
|
29401
29442
|
return {
|
|
29402
29443
|
approvalRequestId,
|
|
29403
|
-
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29404
|
-
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29405
|
-
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29406
|
-
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29407
|
-
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29444
|
+
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _513 => _513.dialogId]), () => ( null)),
|
|
29445
|
+
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _514 => _514.ticketId]), () => ( null)),
|
|
29446
|
+
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _515 => _515.approvalType]), () => ( null)),
|
|
29447
|
+
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _516 => _516.resolution]), () => ( null)),
|
|
29448
|
+
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _517 => _517.resolvedByName]), () => ( null)),
|
|
29408
29449
|
toolCalls
|
|
29409
29450
|
};
|
|
29410
29451
|
}
|
|
@@ -29453,7 +29494,7 @@ function ApprovalRequestNotificationTile({
|
|
|
29453
29494
|
const [pinned, setPinned] = _react.useState.call(void 0, defaultExpanded);
|
|
29454
29495
|
const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
|
|
29455
29496
|
const approval = getApprovalMeta(notification);
|
|
29456
|
-
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess',
|
|
29497
|
+
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _518 => _518.resolution]));
|
|
29457
29498
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
29458
29499
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
29459
29500
|
const { innerRef, containerStyle } = useCollapsible({ expanded });
|
|
@@ -29721,7 +29762,7 @@ function TimeTrackerPanel({
|
|
|
29721
29762
|
error: showFieldError ? "Required if no notes added" : void 0,
|
|
29722
29763
|
disableClientFilter: !!onTicketSearch,
|
|
29723
29764
|
onInputChange: (value, reason) => {
|
|
29724
|
-
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall',
|
|
29765
|
+
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _519 => _519(value)]);
|
|
29725
29766
|
}
|
|
29726
29767
|
}
|
|
29727
29768
|
)
|
|
@@ -29805,7 +29846,7 @@ function LastEntryRow({ entry, onClick }) {
|
|
|
29805
29846
|
{
|
|
29806
29847
|
variant: "outline",
|
|
29807
29848
|
size: "icon",
|
|
29808
|
-
onClick: () => _optionalChain([onClick, 'optionalCall',
|
|
29849
|
+
onClick: () => _optionalChain([onClick, 'optionalCall', _520 => _520(entry)]),
|
|
29809
29850
|
disabled: !onClick,
|
|
29810
29851
|
"aria-label": `Open entry: ${entry.title}`,
|
|
29811
29852
|
className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
|
|
@@ -29849,9 +29890,9 @@ function HeaderButton({
|
|
|
29849
29890
|
function TimeTrackerHeaderButton({ className, disabled }) {
|
|
29850
29891
|
const ctx = useOptionalTimeTracker();
|
|
29851
29892
|
const elapsedLabel = useTrackerClock({
|
|
29852
|
-
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
29853
|
-
runningSince: _optionalChain([ctx, 'optionalAccess',
|
|
29854
|
-
accumulatedMs: _optionalChain([ctx, 'optionalAccess',
|
|
29893
|
+
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _521 => _521.status]), () => ( "ready")),
|
|
29894
|
+
runningSince: _optionalChain([ctx, 'optionalAccess', _522 => _522.runningSince]),
|
|
29895
|
+
accumulatedMs: _optionalChain([ctx, 'optionalAccess', _523 => _523.accumulatedMs])
|
|
29855
29896
|
});
|
|
29856
29897
|
if (!ctx) return null;
|
|
29857
29898
|
const { isOpen, open, close, status } = ctx;
|
|
@@ -30134,15 +30175,15 @@ function TicketCard({
|
|
|
30134
30175
|
transition: sortable.transition
|
|
30135
30176
|
};
|
|
30136
30177
|
if (showNewMessage) style.borderColor = columnColor;
|
|
30137
|
-
const showDeviceRow = !!(_optionalChain([ticket, 'access',
|
|
30178
|
+
const showDeviceRow = !!(_optionalChain([ticket, 'access', _524 => _524.deviceHostnames, 'optionalAccess', _525 => _525.length]) || ticket.organizationName);
|
|
30138
30179
|
const deviceText = [
|
|
30139
|
-
_optionalChain([ticket, 'access',
|
|
30180
|
+
_optionalChain([ticket, 'access', _526 => _526.deviceHostnames, 'optionalAccess', _527 => _527.join, 'call', _528 => _528(", ")]),
|
|
30140
30181
|
ticket.organizationName
|
|
30141
30182
|
].filter(Boolean).join(", ");
|
|
30142
30183
|
const handleClick = (e) => {
|
|
30143
30184
|
if (sortable.isDragging) e.preventDefault();
|
|
30144
30185
|
};
|
|
30145
|
-
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access',
|
|
30186
|
+
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _529 => _529.assignees, 'optionalAccess', _530 => _530.length]) || renderAssignSlot);
|
|
30146
30187
|
const rightSection = hasRightSection ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex shrink-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
30147
30188
|
ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30148
30189
|
_chunkGXRWE7NBcjs.Flag02Icon,
|
|
@@ -30151,7 +30192,7 @@ function TicketCard({
|
|
|
30151
30192
|
"aria-label": `Priority: ${ticket.priority}`
|
|
30152
30193
|
}
|
|
30153
30194
|
),
|
|
30154
|
-
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access',
|
|
30195
|
+
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _531 => _531.assignees, 'optionalAccess', _532 => _532.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
|
|
30155
30196
|
ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30156
30197
|
SquareAvatar,
|
|
30157
30198
|
{
|
|
@@ -30182,7 +30223,7 @@ function TicketCard({
|
|
|
30182
30223
|
] }),
|
|
30183
30224
|
rightSection
|
|
30184
30225
|
] }),
|
|
30185
|
-
_optionalChain([ticket, 'access',
|
|
30226
|
+
_optionalChain([ticket, 'access', _533 => _533.tags, 'optionalAccess', _534 => _534.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
|
|
30186
30227
|
timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
|
|
30187
30228
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto text-h6 truncate text-ods-text-secondary", children: timestampLabel }) }),
|
|
30188
30229
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
|
|
@@ -30382,7 +30423,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30382
30423
|
const observer = new IntersectionObserver(
|
|
30383
30424
|
(entries) => {
|
|
30384
30425
|
if (entries.some((e) => e.isIntersecting)) {
|
|
30385
|
-
_optionalChain([loadMoreRef, 'access',
|
|
30426
|
+
_optionalChain([loadMoreRef, 'access', _535 => _535.current, 'optionalCall', _536 => _536(columnIdRef.current)]);
|
|
30386
30427
|
}
|
|
30387
30428
|
},
|
|
30388
30429
|
{ root, rootMargin: loadMoreRootMargin }
|
|
@@ -30412,7 +30453,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30412
30453
|
ticket: t,
|
|
30413
30454
|
columnId: column.id,
|
|
30414
30455
|
columnColor: column.color,
|
|
30415
|
-
href: _optionalChain([getTicketHref, 'optionalCall',
|
|
30456
|
+
href: _optionalChain([getTicketHref, 'optionalCall', _537 => _537(t.id)]),
|
|
30416
30457
|
renderAssignSlot,
|
|
30417
30458
|
onApprove,
|
|
30418
30459
|
onReject,
|
|
@@ -30512,17 +30553,17 @@ function Board({
|
|
|
30512
30553
|
const pointer = _core.pointerWithin.call(void 0, args);
|
|
30513
30554
|
const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
|
|
30514
30555
|
const ticketHit = intersections.find(
|
|
30515
|
-
(c) => _optionalChain([c, 'access',
|
|
30556
|
+
(c) => _optionalChain([c, 'access', _538 => _538.data, 'optionalAccess', _539 => _539.droppableContainer, 'optionalAccess', _540 => _540.data, 'optionalAccess', _541 => _541.current, 'optionalAccess', _542 => _542.type]) === "ticket"
|
|
30516
30557
|
);
|
|
30517
30558
|
if (ticketHit) return [ticketHit];
|
|
30518
30559
|
const columnHit = intersections.find(
|
|
30519
|
-
(c) => _optionalChain([c, 'access',
|
|
30560
|
+
(c) => _optionalChain([c, 'access', _543 => _543.data, 'optionalAccess', _544 => _544.droppableContainer, 'optionalAccess', _545 => _545.data, 'optionalAccess', _546 => _546.current, 'optionalAccess', _547 => _547.type]) === "column"
|
|
30520
30561
|
);
|
|
30521
30562
|
if (columnHit) {
|
|
30522
|
-
const columnId = _optionalChain([columnHit, 'access',
|
|
30563
|
+
const columnId = _optionalChain([columnHit, 'access', _548 => _548.data, 'optionalAccess', _549 => _549.droppableContainer, 'optionalAccess', _550 => _550.data, 'optionalAccess', _551 => _551.current, 'optionalAccess', _552 => _552.columnId]);
|
|
30523
30564
|
const ticketsInColumn = args.droppableContainers.filter((c) => {
|
|
30524
30565
|
const d = c.data.current;
|
|
30525
|
-
return _optionalChain([d, 'optionalAccess',
|
|
30566
|
+
return _optionalChain([d, 'optionalAccess', _553 => _553.type]) === "ticket" && d.columnId === columnId;
|
|
30526
30567
|
});
|
|
30527
30568
|
if (ticketsInColumn.length > 0) {
|
|
30528
30569
|
const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
|
|
@@ -30547,20 +30588,20 @@ function Board({
|
|
|
30547
30588
|
const overId = String(over.id);
|
|
30548
30589
|
if (activeId === overId) return;
|
|
30549
30590
|
const overData = over.data.current;
|
|
30550
|
-
const fromColumnId = _optionalChain([locate, 'call',
|
|
30551
|
-
const toColumnId = _optionalChain([overData, 'optionalAccess',
|
|
30591
|
+
const fromColumnId = _optionalChain([locate, 'call', _554 => _554(items, activeId), 'optionalAccess', _555 => _555.columnId]);
|
|
30592
|
+
const toColumnId = _optionalChain([overData, 'optionalAccess', _556 => _556.columnId]);
|
|
30552
30593
|
if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
|
|
30553
30594
|
const origin = dragOriginRef.current;
|
|
30554
|
-
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess',
|
|
30595
|
+
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _557 => _557.fromColumnId]) === toColumnId;
|
|
30555
30596
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
30556
|
-
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess',
|
|
30557
|
-
if (_optionalChain([targetCol, 'optionalAccess',
|
|
30597
|
+
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _558 => _558.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
|
|
30598
|
+
if (_optionalChain([targetCol, 'optionalAccess', _559 => _559.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
|
|
30558
30599
|
setItems((prev) => {
|
|
30559
30600
|
const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
|
|
30560
30601
|
const toCol = prev.find((c) => c.id === toColumnId);
|
|
30561
30602
|
if (fromIndex < 0 || !toCol) return prev;
|
|
30562
30603
|
let toIndex;
|
|
30563
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
30604
|
+
if (_optionalChain([overData, 'optionalAccess', _560 => _560.type]) === "column") {
|
|
30564
30605
|
toIndex = toCol.tickets.length;
|
|
30565
30606
|
} else {
|
|
30566
30607
|
const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
|
|
@@ -30602,14 +30643,14 @@ function Board({
|
|
|
30602
30643
|
const toColumnId = located.columnId;
|
|
30603
30644
|
const isCrossColumn = origin.fromColumnId !== toColumnId;
|
|
30604
30645
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
30605
|
-
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess',
|
|
30646
|
+
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _561 => _561.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _562 => _562.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
|
|
30606
30647
|
setItems(columns);
|
|
30607
30648
|
return;
|
|
30608
30649
|
}
|
|
30609
30650
|
let finalIndex = located.index;
|
|
30610
|
-
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access',
|
|
30651
|
+
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _563 => _563.find, 'call', _564 => _564((c) => c.id === toColumnId), 'optionalAccess', _565 => _565.tickets]), () => ( []));
|
|
30611
30652
|
const overData = over.data.current;
|
|
30612
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
30653
|
+
if (_optionalChain([overData, 'optionalAccess', _566 => _566.type]) === "ticket") {
|
|
30613
30654
|
const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
|
|
30614
30655
|
if (overIndex >= 0 && overIndex !== located.index) {
|
|
30615
30656
|
finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
|
|
@@ -30629,8 +30670,8 @@ function Board({
|
|
|
30629
30670
|
ticketId: origin.ticketId,
|
|
30630
30671
|
fromColumnId: origin.fromColumnId,
|
|
30631
30672
|
toColumnId,
|
|
30632
|
-
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
30633
|
-
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
30673
|
+
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _567 => _567[finalIndex - 1], 'optionalAccess', _568 => _568.id]), () => ( null)),
|
|
30674
|
+
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _569 => _569[finalIndex + 1], 'optionalAccess', _570 => _570.id]), () => ( null))
|
|
30634
30675
|
});
|
|
30635
30676
|
};
|
|
30636
30677
|
const handleDragCancel = () => {
|
|
@@ -30659,8 +30700,8 @@ function Board({
|
|
|
30659
30700
|
children: items.map((column, i) => {
|
|
30660
30701
|
const prev = items[i - 1];
|
|
30661
30702
|
const next = items[i + 1];
|
|
30662
|
-
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess',
|
|
30663
|
-
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess',
|
|
30703
|
+
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _571 => _571.system]));
|
|
30704
|
+
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _572 => _572.system]));
|
|
30664
30705
|
const showGap = i > 0 && !joinLeft;
|
|
30665
30706
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React96.Fragment, { children: [
|
|
30666
30707
|
showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
|
|
@@ -30713,7 +30754,7 @@ function Board({
|
|
|
30713
30754
|
{
|
|
30714
30755
|
ticket: activeTicket.ticket,
|
|
30715
30756
|
columnId: activeTicket.columnId,
|
|
30716
|
-
columnColor: _optionalChain([items, 'access',
|
|
30757
|
+
columnColor: _optionalChain([items, 'access', _573 => _573.find, 'call', _574 => _574((c) => c.id === activeTicket.columnId), 'optionalAccess', _575 => _575.color]),
|
|
30717
30758
|
isOverlay: true
|
|
30718
30759
|
}
|
|
30719
30760
|
) : null })
|
|
@@ -30729,7 +30770,7 @@ function locate(cols, ticketId) {
|
|
|
30729
30770
|
return null;
|
|
30730
30771
|
}
|
|
30731
30772
|
function findIndexInColumn(cols, columnId, ticketId) {
|
|
30732
|
-
return _nullishCoalesce(_optionalChain([cols, 'access',
|
|
30773
|
+
return _nullishCoalesce(_optionalChain([cols, 'access', _576 => _576.find, 'call', _577 => _577((c) => c.id === columnId), 'optionalAccess', _578 => _578.tickets, 'access', _579 => _579.findIndex, 'call', _580 => _580((t) => t.id === ticketId)]), () => ( -1));
|
|
30733
30774
|
}
|
|
30734
30775
|
|
|
30735
30776
|
// src/components/features/board/types.ts
|
|
@@ -30977,7 +31018,7 @@ function Header2({ config, platform }) {
|
|
|
30977
31018
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
30978
31019
|
"flex justify-start w-full",
|
|
30979
31020
|
"font-bold text-[16px] leading-none tracking-[-0.32px]",
|
|
30980
|
-
index < (_nullishCoalesce(_optionalChain([item, 'access',
|
|
31021
|
+
index < (_nullishCoalesce(_optionalChain([item, 'access', _581 => _581.children, 'optionalAccess', _582 => _582.length]), () => ( 0))) - 1 && "mb-1",
|
|
30981
31022
|
"text-ods-text-primary",
|
|
30982
31023
|
// All dropdown items use primary text color
|
|
30983
31024
|
child.isActive && "bg-ods-bg-hover"
|
|
@@ -31069,7 +31110,7 @@ function Header2({ config, platform }) {
|
|
|
31069
31110
|
style: config.style,
|
|
31070
31111
|
children: [
|
|
31071
31112
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
31072
|
-
_optionalChain([config, 'access',
|
|
31113
|
+
_optionalChain([config, 'access', _583 => _583.actions, 'optionalAccess', _584 => _584.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
|
|
31073
31114
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWBR7H6E3cjs.next_link_default, { href: config.logo.href, className: "transition-opacity duration-200 hover:opacity-80", children: config.logo.element })
|
|
31074
31115
|
] }),
|
|
31075
31116
|
config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -31086,7 +31127,7 @@ function Header2({ config, platform }) {
|
|
|
31086
31127
|
}
|
|
31087
31128
|
),
|
|
31088
31129
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
|
|
31089
|
-
_optionalChain([config, 'access',
|
|
31130
|
+
_optionalChain([config, 'access', _585 => _585.actions, 'optionalAccess', _586 => _586.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
|
|
31090
31131
|
config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31091
31132
|
_chunkQJGRP2YEcjs.Button,
|
|
31092
31133
|
{
|
|
@@ -31094,10 +31135,10 @@ function Header2({ config, platform }) {
|
|
|
31094
31135
|
size: "icon",
|
|
31095
31136
|
className: "flex md:hidden",
|
|
31096
31137
|
onClick: () => {
|
|
31097
|
-
_optionalChain([config, 'access',
|
|
31138
|
+
_optionalChain([config, 'access', _587 => _587.mobile, 'optionalAccess', _588 => _588.onToggle, 'optionalCall', _589 => _589()]);
|
|
31098
31139
|
},
|
|
31099
|
-
"aria-label": _optionalChain([config, 'access',
|
|
31100
|
-
leftIcon: _optionalChain([config, 'access',
|
|
31140
|
+
"aria-label": _optionalChain([config, 'access', _590 => _590.mobile, 'optionalAccess', _591 => _591.isOpen]) ? "Close menu" : "Open menu",
|
|
31141
|
+
leftIcon: _optionalChain([config, 'access', _592 => _592.mobile, 'optionalAccess', _593 => _593.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.Menu01Icon, {})
|
|
31101
31142
|
}
|
|
31102
31143
|
)
|
|
31103
31144
|
] })
|
|
@@ -31114,10 +31155,10 @@ function Header2({ config, platform }) {
|
|
|
31114
31155
|
// src/components/navigation/header-skeleton.tsx
|
|
31115
31156
|
|
|
31116
31157
|
function HeaderSkeleton({ config }) {
|
|
31117
|
-
const showNavigation = _optionalChain([config, 'optionalAccess',
|
|
31118
|
-
const showActions = _optionalChain([config, 'optionalAccess',
|
|
31119
|
-
const showMobileMenu = _optionalChain([config, 'optionalAccess',
|
|
31120
|
-
const isAdminHeader = _optionalChain([config, 'optionalAccess',
|
|
31158
|
+
const showNavigation = _optionalChain([config, 'optionalAccess', _594 => _594.navigation]) && config.navigation.items.length > 0;
|
|
31159
|
+
const showActions = _optionalChain([config, 'optionalAccess', _595 => _595.actions, 'optionalAccess', _596 => _596.right]) && config.actions.right.length > 0;
|
|
31160
|
+
const showMobileMenu = _optionalChain([config, 'optionalAccess', _597 => _597.mobile, 'optionalAccess', _598 => _598.enabled]);
|
|
31161
|
+
const isAdminHeader = _optionalChain([config, 'optionalAccess', _599 => _599.className, 'optionalAccess', _600 => _600.includes, 'call', _601 => _601("admin")]);
|
|
31121
31162
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31122
31163
|
"header",
|
|
31123
31164
|
{
|
|
@@ -31126,11 +31167,11 @@ function HeaderSkeleton({ config }) {
|
|
|
31126
31167
|
"bg-ods-card border-b border-ods-border backdrop-blur-sm",
|
|
31127
31168
|
"px-6 py-3",
|
|
31128
31169
|
"transition-opacity duration-300 ease-in-out",
|
|
31129
|
-
_optionalChain([config, 'optionalAccess',
|
|
31170
|
+
_optionalChain([config, 'optionalAccess', _602 => _602.className])
|
|
31130
31171
|
),
|
|
31131
31172
|
children: [
|
|
31132
31173
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
31133
|
-
isAdminHeader && _optionalChain([config, 'optionalAccess',
|
|
31174
|
+
isAdminHeader && _optionalChain([config, 'optionalAccess', _603 => _603.actions, 'optionalAccess', _604 => _604.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mr-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-10 bg-ods-border rounded animate-pulse" }) }),
|
|
31134
31175
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
31135
31176
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
|
|
31136
31177
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
|
|
@@ -31138,8 +31179,8 @@ function HeaderSkeleton({ config }) {
|
|
|
31138
31179
|
] }),
|
|
31139
31180
|
showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
31140
31181
|
"hidden md:flex items-center gap-2",
|
|
31141
|
-
_optionalChain([config, 'optionalAccess',
|
|
31142
|
-
_optionalChain([config, 'optionalAccess',
|
|
31182
|
+
_optionalChain([config, 'optionalAccess', _605 => _605.navigation, 'optionalAccess', _606 => _606.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
|
|
31183
|
+
_optionalChain([config, 'optionalAccess', _607 => _607.navigation, 'optionalAccess', _608 => _608.position]) === "right" && "ml-auto mr-4"
|
|
31143
31184
|
), children: [
|
|
31144
31185
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
|
|
31145
31186
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
|
|
@@ -31187,7 +31228,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
31187
31228
|
_react.useEffect.call(void 0, () => {
|
|
31188
31229
|
const handleKeyDown = (e) => {
|
|
31189
31230
|
if (e.key === "Escape" && isOpen) {
|
|
31190
|
-
_optionalChain([config, 'access',
|
|
31231
|
+
_optionalChain([config, 'access', _609 => _609.onClose, 'optionalCall', _610 => _610()]);
|
|
31191
31232
|
}
|
|
31192
31233
|
};
|
|
31193
31234
|
if (isOpen) {
|
|
@@ -31204,7 +31245,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
31204
31245
|
if (item.onClick) {
|
|
31205
31246
|
item.onClick();
|
|
31206
31247
|
}
|
|
31207
|
-
_optionalChain([config, 'access',
|
|
31248
|
+
_optionalChain([config, 'access', _611 => _611.onClose, 'optionalCall', _612 => _612()]);
|
|
31208
31249
|
};
|
|
31209
31250
|
if (item.href) {
|
|
31210
31251
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -31374,7 +31415,7 @@ function SlidingSidebar({ config }) {
|
|
|
31374
31415
|
variant: "transparent",
|
|
31375
31416
|
size: "default",
|
|
31376
31417
|
onClick: () => {
|
|
31377
|
-
_optionalChain([item, 'access',
|
|
31418
|
+
_optionalChain([item, 'access', _613 => _613.onClick, 'optionalCall', _614 => _614()]);
|
|
31378
31419
|
config.onClose();
|
|
31379
31420
|
},
|
|
31380
31421
|
leftIcon: item.icon,
|
|
@@ -31397,7 +31438,7 @@ function SlidingSidebar({ config }) {
|
|
|
31397
31438
|
variant: "transparent",
|
|
31398
31439
|
size: "default",
|
|
31399
31440
|
onClick: () => {
|
|
31400
|
-
_optionalChain([item, 'access',
|
|
31441
|
+
_optionalChain([item, 'access', _615 => _615.onClick, 'optionalCall', _616 => _616()]);
|
|
31401
31442
|
config.onClose();
|
|
31402
31443
|
},
|
|
31403
31444
|
leftIcon: item.icon,
|
|
@@ -31524,7 +31565,7 @@ function StickySectionNav({
|
|
|
31524
31565
|
] });
|
|
31525
31566
|
}
|
|
31526
31567
|
function useSectionNavigation(sections, options) {
|
|
31527
|
-
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access',
|
|
31568
|
+
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _617 => _617[0], 'optionalAccess', _618 => _618.id]) || "");
|
|
31528
31569
|
const isScrollingFromClick = _react.useRef.call(void 0, false);
|
|
31529
31570
|
const { offset: offset2 = 100 } = options || {};
|
|
31530
31571
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
@@ -31548,7 +31589,7 @@ function useSectionNavigation(sections, options) {
|
|
|
31548
31589
|
const handleScroll = () => {
|
|
31549
31590
|
if (isScrollingFromClick.current) return;
|
|
31550
31591
|
const scrollPosition = window.scrollY + offset2 + 50;
|
|
31551
|
-
let currentSection = _optionalChain([sections, 'access',
|
|
31592
|
+
let currentSection = _optionalChain([sections, 'access', _619 => _619[0], 'optionalAccess', _620 => _620.id]) || "";
|
|
31552
31593
|
for (let i = sections.length - 1; i >= 0; i--) {
|
|
31553
31594
|
const element = document.getElementById(sections[i].id);
|
|
31554
31595
|
if (element && scrollPosition >= element.offsetTop) {
|
|
@@ -31749,7 +31790,7 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
31749
31790
|
} else {
|
|
31750
31791
|
setDesktopMinimized((prev) => !prev);
|
|
31751
31792
|
}
|
|
31752
|
-
_optionalChain([config, 'access',
|
|
31793
|
+
_optionalChain([config, 'access', _621 => _621.onToggleMinimized, 'optionalCall', _622 => _622()]);
|
|
31753
31794
|
}, [isTablet, setDesktopMinimized, config]);
|
|
31754
31795
|
const closeOverlay = _react.useCallback.call(void 0, () => {
|
|
31755
31796
|
setTabletMinimized(true);
|
|
@@ -31763,11 +31804,11 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
31763
31804
|
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
31764
31805
|
}, [isOverlayOpen, closeOverlay]);
|
|
31765
31806
|
const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
|
|
31766
|
-
_optionalChain([event, 'optionalAccess',
|
|
31807
|
+
_optionalChain([event, 'optionalAccess', _623 => _623.stopPropagation, 'call', _624 => _624()]);
|
|
31767
31808
|
if (item.onClick) {
|
|
31768
31809
|
item.onClick();
|
|
31769
31810
|
} else if (item.path) {
|
|
31770
|
-
_optionalChain([config, 'access',
|
|
31811
|
+
_optionalChain([config, 'access', _625 => _625.onNavigate, 'optionalCall', _626 => _626(item.path)]);
|
|
31771
31812
|
}
|
|
31772
31813
|
if (isTablet) setTabletMinimized(true);
|
|
31773
31814
|
}, [config, isTablet]);
|
|
@@ -31887,11 +31928,11 @@ function HeaderGlobalSearch({
|
|
|
31887
31928
|
};
|
|
31888
31929
|
const handleSubmit = (e) => {
|
|
31889
31930
|
e.preventDefault();
|
|
31890
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
31931
|
+
_optionalChain([onSubmit, 'optionalCall', _627 => _627(currentValue)]);
|
|
31891
31932
|
};
|
|
31892
31933
|
const handleKeyDown = (e) => {
|
|
31893
31934
|
if (e.key === "Enter") {
|
|
31894
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
31935
|
+
_optionalChain([onSubmit, 'optionalCall', _628 => _628(currentValue)]);
|
|
31895
31936
|
}
|
|
31896
31937
|
};
|
|
31897
31938
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -31985,8 +32026,8 @@ function HeaderOrganizationFilter({
|
|
|
31985
32026
|
className
|
|
31986
32027
|
}) {
|
|
31987
32028
|
const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
|
|
31988
|
-
const displayName = _optionalChain([selectedOrg, 'optionalAccess',
|
|
31989
|
-
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess',
|
|
32029
|
+
const displayName = _optionalChain([selectedOrg, 'optionalAccess', _629 => _629.name]) || "All Organizations";
|
|
32030
|
+
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _630 => _630.deviceCount]), () => ( totalDeviceCount));
|
|
31990
32031
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenu, { children: [
|
|
31991
32032
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31992
32033
|
"button",
|
|
@@ -32011,11 +32052,11 @@ function HeaderOrganizationFilter({
|
|
|
32011
32052
|
}
|
|
32012
32053
|
) }),
|
|
32013
32054
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
|
|
32014
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
32055
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _631 => _631("")]), children: "All Organizations" }),
|
|
32015
32056
|
organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32016
32057
|
_chunkQJGRP2YEcjs.DropdownMenuItem,
|
|
32017
32058
|
{
|
|
32018
|
-
onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
32059
|
+
onClick: () => _optionalChain([onOrgChange, 'optionalCall', _632 => _632(org.id)]),
|
|
32019
32060
|
children: org.name
|
|
32020
32061
|
},
|
|
32021
32062
|
org.id
|
|
@@ -32205,9 +32246,9 @@ function NotificationsHeaderButton({
|
|
|
32205
32246
|
dimmedClass
|
|
32206
32247
|
}) {
|
|
32207
32248
|
const ctx = useOptionalNotifications();
|
|
32208
|
-
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
32209
|
-
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
32210
|
-
const onClick = _optionalChain([ctx, 'optionalAccess',
|
|
32249
|
+
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _633 => _633.unreadCount]), () => ( fallbackUnreadCount))) > 0;
|
|
32250
|
+
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _634 => _634.isOpen]), () => ( false));
|
|
32251
|
+
const onClick = _optionalChain([ctx, 'optionalAccess', _635 => _635.toggle]);
|
|
32211
32252
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32212
32253
|
HeaderButton,
|
|
32213
32254
|
{
|
|
@@ -32271,7 +32312,7 @@ var MobileBurgerMenu = React112.default.memo(function MobileBurgerMenu2({
|
|
|
32271
32312
|
if (item.onClick) {
|
|
32272
32313
|
item.onClick();
|
|
32273
32314
|
} else if (item.path) {
|
|
32274
|
-
_optionalChain([config, 'access',
|
|
32315
|
+
_optionalChain([config, 'access', _636 => _636.onNavigate, 'optionalCall', _637 => _637(item.path)]);
|
|
32275
32316
|
}
|
|
32276
32317
|
onClose();
|
|
32277
32318
|
}, [config, onClose]);
|
|
@@ -32514,7 +32555,7 @@ var AppLayoutDrawerRoot = ({
|
|
|
32514
32555
|
const handleOpenChange = React105.useCallback(
|
|
32515
32556
|
(next) => {
|
|
32516
32557
|
if (!isControlled) setInternalOpen(next);
|
|
32517
|
-
_optionalChain([onOpenChange, 'optionalCall',
|
|
32558
|
+
_optionalChain([onOpenChange, 'optionalCall', _638 => _638(next)]);
|
|
32518
32559
|
},
|
|
32519
32560
|
[isControlled, onOpenChange]
|
|
32520
32561
|
);
|
|
@@ -32895,10 +32936,10 @@ var AppLayoutDrawerContent = React105.forwardRef(
|
|
|
32895
32936
|
),
|
|
32896
32937
|
style,
|
|
32897
32938
|
onInteractOutside: (event) => {
|
|
32898
|
-
_optionalChain([onInteractOutside, 'optionalCall',
|
|
32939
|
+
_optionalChain([onInteractOutside, 'optionalCall', _639 => _639(event)]);
|
|
32899
32940
|
if (event.defaultPrevented) return;
|
|
32900
32941
|
const target = event.target;
|
|
32901
|
-
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess',
|
|
32942
|
+
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _640 => _640.contains, 'call', _641 => _641(target)]);
|
|
32902
32943
|
if (!isInsideContainer) {
|
|
32903
32944
|
event.preventDefault();
|
|
32904
32945
|
return;
|
|
@@ -33311,7 +33352,7 @@ var ShellTypeBadge = ({
|
|
|
33311
33352
|
className,
|
|
33312
33353
|
iconClassName
|
|
33313
33354
|
}) => {
|
|
33314
|
-
const normalizedType = _optionalChain([shellType, 'optionalAccess',
|
|
33355
|
+
const normalizedType = _optionalChain([shellType, 'optionalAccess', _642 => _642.toUpperCase, 'call', _643 => _643()]);
|
|
33315
33356
|
const label = getShellLabel(normalizedType);
|
|
33316
33357
|
const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
|
|
33317
33358
|
const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
|
|
@@ -33698,12 +33739,12 @@ function OnboardingWalkthrough({
|
|
|
33698
33739
|
}
|
|
33699
33740
|
}, [state.completedSteps, markComplete]);
|
|
33700
33741
|
const handleStepSkip = (step) => {
|
|
33701
|
-
_optionalChain([step, 'access',
|
|
33742
|
+
_optionalChain([step, 'access', _644 => _644.onSkip, 'optionalCall', _645 => _645()]);
|
|
33702
33743
|
markSkipped(step.id);
|
|
33703
33744
|
};
|
|
33704
33745
|
const handleDismiss = () => {
|
|
33705
33746
|
dismissOnboarding();
|
|
33706
|
-
_optionalChain([onDismiss, 'optionalCall',
|
|
33747
|
+
_optionalChain([onDismiss, 'optionalCall', _646 => _646()]);
|
|
33707
33748
|
};
|
|
33708
33749
|
if (state.dismissed) {
|
|
33709
33750
|
return null;
|
|
@@ -33833,7 +33874,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
33833
33874
|
onKeyDown: (e) => {
|
|
33834
33875
|
if (e.key === "Enter" || e.key === " ") {
|
|
33835
33876
|
e.preventDefault();
|
|
33836
|
-
_optionalChain([onClick, 'optionalCall',
|
|
33877
|
+
_optionalChain([onClick, 'optionalCall', _647 => _647()]);
|
|
33837
33878
|
}
|
|
33838
33879
|
},
|
|
33839
33880
|
children: [
|
|
@@ -33934,7 +33975,7 @@ var LogsList = React109.forwardRef(({
|
|
|
33934
33975
|
log,
|
|
33935
33976
|
isLast: index === logs.length - 1,
|
|
33936
33977
|
showConnector,
|
|
33937
|
-
onClick: () => _optionalChain([onLogClick, 'optionalCall',
|
|
33978
|
+
onClick: () => _optionalChain([onLogClick, 'optionalCall', _648 => _648(log)])
|
|
33938
33979
|
},
|
|
33939
33980
|
log.id
|
|
33940
33981
|
))
|
|
@@ -34035,7 +34076,7 @@ var Slider = React111.forwardRef(
|
|
|
34035
34076
|
({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
|
|
34036
34077
|
const handleChange = (e) => {
|
|
34037
34078
|
const newValue = [Number(e.target.value)];
|
|
34038
|
-
_optionalChain([onValueChange, 'optionalCall',
|
|
34079
|
+
_optionalChain([onValueChange, 'optionalCall', _649 => _649(newValue)]);
|
|
34039
34080
|
};
|
|
34040
34081
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34041
34082
|
"input",
|
|
@@ -34466,7 +34507,7 @@ function CursorPaginationSimple({
|
|
|
34466
34507
|
{
|
|
34467
34508
|
variant: "transparent",
|
|
34468
34509
|
size: "icon",
|
|
34469
|
-
onClick: () => _optionalChain([onPrevious, 'optionalCall',
|
|
34510
|
+
onClick: () => _optionalChain([onPrevious, 'optionalCall', _650 => _650("")]),
|
|
34470
34511
|
disabled: !hasPreviousPage || loading,
|
|
34471
34512
|
className: "h-8 w-8",
|
|
34472
34513
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -34478,7 +34519,7 @@ function CursorPaginationSimple({
|
|
|
34478
34519
|
{
|
|
34479
34520
|
variant: "transparent",
|
|
34480
34521
|
size: "icon",
|
|
34481
|
-
onClick: () => _optionalChain([onNext, 'optionalCall',
|
|
34522
|
+
onClick: () => _optionalChain([onNext, 'optionalCall', _651 => _651("")]),
|
|
34482
34523
|
disabled: !hasNextPage || loading,
|
|
34483
34524
|
className: "h-8 w-8",
|
|
34484
34525
|
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
|
|
@@ -34498,8 +34539,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
|
|
|
34498
34539
|
icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
|
|
34499
34540
|
title: _nullishCoalesce(message2, () => ( "No results found")),
|
|
34500
34541
|
description: message2 == null ? "Try adjusting your search or filters" : void 0,
|
|
34501
|
-
buttonLabel: _optionalChain([action, 'optionalAccess',
|
|
34502
|
-
onButtonClick: _optionalChain([action, 'optionalAccess',
|
|
34542
|
+
buttonLabel: _optionalChain([action, 'optionalAccess', _652 => _652.label]),
|
|
34543
|
+
onButtonClick: _optionalChain([action, 'optionalAccess', _653 => _653.onClick]),
|
|
34503
34544
|
className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
|
|
34504
34545
|
}
|
|
34505
34546
|
);
|
|
@@ -34520,7 +34561,7 @@ function TableColumnFilterDropdown({
|
|
|
34520
34561
|
placement = "bottom-start",
|
|
34521
34562
|
dropdownClassName = "min-w-[240px]"
|
|
34522
34563
|
}) {
|
|
34523
|
-
const activeCount = _optionalChain([filters, 'optionalAccess',
|
|
34564
|
+
const activeCount = _optionalChain([filters, 'optionalAccess', _654 => _654[columnKey], 'optionalAccess', _655 => _655.length]) || 0;
|
|
34524
34565
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34525
34566
|
FiltersDropdown,
|
|
34526
34567
|
{
|
|
@@ -34563,7 +34604,7 @@ function TableColumnFilterDropdown({
|
|
|
34563
34604
|
delete newFilters[columnKey];
|
|
34564
34605
|
onFilterChange(newFilters);
|
|
34565
34606
|
},
|
|
34566
|
-
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess',
|
|
34607
|
+
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _656 => _656[columnKey]]) || [] },
|
|
34567
34608
|
placement,
|
|
34568
34609
|
dropdownClassName
|
|
34569
34610
|
}
|
|
@@ -34860,7 +34901,7 @@ function TableRow({
|
|
|
34860
34901
|
const keys = column.key.split(".");
|
|
34861
34902
|
let value = item;
|
|
34862
34903
|
for (const key of keys) {
|
|
34863
|
-
value = _optionalChain([value, 'optionalAccess',
|
|
34904
|
+
value = _optionalChain([value, 'optionalAccess', _657 => _657[key]]);
|
|
34864
34905
|
}
|
|
34865
34906
|
if (value === null || value === void 0) {
|
|
34866
34907
|
return "-";
|
|
@@ -34930,7 +34971,7 @@ function TableRow({
|
|
|
34930
34971
|
// src/components/ui/table/table.tsx
|
|
34931
34972
|
|
|
34932
34973
|
function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
|
|
34933
|
-
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess',
|
|
34974
|
+
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _658 => _658.length])) || Boolean(renderRowActions);
|
|
34934
34975
|
const result = [...columns];
|
|
34935
34976
|
if (hasActions) {
|
|
34936
34977
|
const actionsColumn = {
|
|
@@ -35024,7 +35065,7 @@ function Table({
|
|
|
35024
35065
|
return rowKey(item);
|
|
35025
35066
|
}
|
|
35026
35067
|
const key = item[rowKey];
|
|
35027
|
-
return _optionalChain([key, 'optionalAccess',
|
|
35068
|
+
return _optionalChain([key, 'optionalAccess', _659 => _659.toString, 'call', _660 => _660()]) || index.toString();
|
|
35028
35069
|
};
|
|
35029
35070
|
const getRowClassName = (item, index) => {
|
|
35030
35071
|
if (typeof rowClassName === "function") {
|
|
@@ -35058,23 +35099,23 @@ function Table({
|
|
|
35058
35099
|
const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
|
|
35059
35100
|
const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
|
|
35060
35101
|
const sentinelRef = _react.useRef.call(void 0, null);
|
|
35061
|
-
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess',
|
|
35062
|
-
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess',
|
|
35102
|
+
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _661 => _661.onLoadMore]));
|
|
35103
|
+
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _662 => _662.onLoadMore]);
|
|
35063
35104
|
_react.useEffect.call(void 0, () => {
|
|
35064
|
-
if (!_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35105
|
+
if (!_optionalChain([infiniteScroll, 'optionalAccess', _663 => _663.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
|
|
35065
35106
|
const sentinel = sentinelRef.current;
|
|
35066
35107
|
if (!sentinel) return;
|
|
35067
35108
|
const observer = new IntersectionObserver(
|
|
35068
35109
|
(entries) => {
|
|
35069
|
-
if (_optionalChain([entries, 'access',
|
|
35070
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
35110
|
+
if (_optionalChain([entries, 'access', _664 => _664[0], 'optionalAccess', _665 => _665.isIntersecting])) {
|
|
35111
|
+
_optionalChain([onLoadMoreRef, 'access', _666 => _666.current, 'optionalCall', _667 => _667()]);
|
|
35071
35112
|
}
|
|
35072
35113
|
},
|
|
35073
35114
|
{ rootMargin: "200px" }
|
|
35074
35115
|
);
|
|
35075
35116
|
observer.observe(sentinel);
|
|
35076
35117
|
return () => observer.disconnect();
|
|
35077
|
-
}, [_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35118
|
+
}, [_optionalChain([infiniteScroll, 'optionalAccess', _668 => _668.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _669 => _669.isFetchingNextPage])]);
|
|
35078
35119
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
|
|
35079
35120
|
showToolbar && bulkActions && selectedRows.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between bg-ods-card border border-ods-border rounded-[6px] p-3 mb-2", children: [
|
|
35080
35121
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
|
|
@@ -35145,7 +35186,7 @@ function Table({
|
|
|
35145
35186
|
},
|
|
35146
35187
|
getRowKey(item, index)
|
|
35147
35188
|
)),
|
|
35148
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35189
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _670 => _670.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35149
35190
|
TableCardSkeleton,
|
|
35150
35191
|
{
|
|
35151
35192
|
columns,
|
|
@@ -35154,7 +35195,7 @@ function Table({
|
|
|
35154
35195
|
hasChevron: Boolean(rowHref)
|
|
35155
35196
|
}
|
|
35156
35197
|
),
|
|
35157
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35198
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _671 => _671.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
|
|
35158
35199
|
!infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
35159
35200
|
"div",
|
|
35160
35201
|
{
|
|
@@ -35512,7 +35553,7 @@ function QueryReportTable({
|
|
|
35512
35553
|
);
|
|
35513
35554
|
const handleExport = () => {
|
|
35514
35555
|
exportToCSV(data, columns, exportFilename);
|
|
35515
|
-
_optionalChain([onExport, 'optionalCall',
|
|
35556
|
+
_optionalChain([onExport, 'optionalCall', _672 => _672()]);
|
|
35516
35557
|
};
|
|
35517
35558
|
const tableMinWidth = columns.length * (columnWidth + 16);
|
|
35518
35559
|
const {
|
|
@@ -35685,7 +35726,7 @@ function DataTableColumnFilter({
|
|
|
35685
35726
|
align = "left"
|
|
35686
35727
|
}) {
|
|
35687
35728
|
const currentValue = column.getFilterValue();
|
|
35688
|
-
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess',
|
|
35729
|
+
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _673 => _673.length]), () => ( 0));
|
|
35689
35730
|
const sections = _react.useMemo.call(void 0,
|
|
35690
35731
|
() => [
|
|
35691
35732
|
{
|
|
@@ -35765,7 +35806,7 @@ function DataTableHeader({
|
|
|
35765
35806
|
const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
|
|
35766
35807
|
if (header.isPlaceholder) return false;
|
|
35767
35808
|
if (isLgUp) return true;
|
|
35768
|
-
return Boolean(_optionalChain([header, 'access',
|
|
35809
|
+
return Boolean(_optionalChain([header, 'access', _674 => _674.column, 'access', _675 => _675.columnDef, 'access', _676 => _676.meta, 'optionalAccess', _677 => _677.filter]));
|
|
35769
35810
|
});
|
|
35770
35811
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35771
35812
|
"div",
|
|
@@ -35795,20 +35836,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
35795
35836
|
if (header.isPlaceholder) return null;
|
|
35796
35837
|
const column = header.column;
|
|
35797
35838
|
const meta = column.columnDef.meta;
|
|
35798
|
-
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess',
|
|
35799
|
-
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
35800
|
-
const canSort = _optionalChain([meta, 'optionalAccess',
|
|
35801
|
-
const sortDir = _optionalChain([sort, 'optionalAccess',
|
|
35839
|
+
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _678 => _678.filter]));
|
|
35840
|
+
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _679 => _679.align]), () => ( "left"));
|
|
35841
|
+
const canSort = _optionalChain([meta, 'optionalAccess', _680 => _680.sortable]) === true;
|
|
35842
|
+
const sortDir = _optionalChain([sort, 'optionalAccess', _681 => _681.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
|
|
35802
35843
|
if (!isLgUp && !hasFilter) return null;
|
|
35803
35844
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35804
35845
|
"div",
|
|
35805
35846
|
{
|
|
35806
35847
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
35807
35848
|
"flex items-stretch",
|
|
35808
|
-
isLgUp && (_optionalChain([meta, 'optionalAccess',
|
|
35809
|
-
_optionalChain([meta, 'optionalAccess',
|
|
35849
|
+
isLgUp && (_optionalChain([meta, 'optionalAccess', _682 => _682.width]) || "flex-1 min-w-0"),
|
|
35850
|
+
_optionalChain([meta, 'optionalAccess', _683 => _683.headerClassName]),
|
|
35810
35851
|
// Don't apply hide classes if column is filterable on tablet (keep filter accessible)
|
|
35811
|
-
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
35852
|
+
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _684 => _684.hideAt]))
|
|
35812
35853
|
),
|
|
35813
35854
|
children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35814
35855
|
DataTableColumnFilter,
|
|
@@ -35827,7 +35868,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
35827
35868
|
isLgUp && alignJustify(align),
|
|
35828
35869
|
canSort && "group cursor-pointer"
|
|
35829
35870
|
),
|
|
35830
|
-
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall',
|
|
35871
|
+
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _685 => _685(column.id)]) : void 0,
|
|
35831
35872
|
children: [
|
|
35832
35873
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
35833
35874
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -35892,7 +35933,7 @@ function DataTableSkeleton({
|
|
|
35892
35933
|
}) {
|
|
35893
35934
|
const table = useDataTableContext();
|
|
35894
35935
|
const columns = table.getVisibleFlatColumns();
|
|
35895
|
-
const firstColumnId = _optionalChain([columns, 'access',
|
|
35936
|
+
const firstColumnId = _optionalChain([columns, 'access', _686 => _686[0], 'optionalAccess', _687 => _687.id]);
|
|
35896
35937
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
35897
35938
|
"div",
|
|
35898
35939
|
{
|
|
@@ -35916,7 +35957,7 @@ function DataTableSkeleton({
|
|
|
35916
35957
|
{
|
|
35917
35958
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
35918
35959
|
"flex flex-col justify-center shrink-0",
|
|
35919
|
-
_optionalChain([meta, 'optionalAccess',
|
|
35960
|
+
_optionalChain([meta, 'optionalAccess', _688 => _688.width]) || "flex-1"
|
|
35920
35961
|
),
|
|
35921
35962
|
children: [
|
|
35922
35963
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
|
|
@@ -35965,7 +36006,7 @@ function DataTableRowImpl({
|
|
|
35965
36006
|
const handleClick = _react.useCallback.call(void 0,
|
|
35966
36007
|
(e) => {
|
|
35967
36008
|
const target = e.target;
|
|
35968
|
-
if (!_optionalChain([containerRef, 'access',
|
|
36009
|
+
if (!_optionalChain([containerRef, 'access', _689 => _689.current, 'optionalAccess', _690 => _690.contains, 'call', _691 => _691(target)])) {
|
|
35969
36010
|
if (isLinkMode) e.preventDefault();
|
|
35970
36011
|
return;
|
|
35971
36012
|
}
|
|
@@ -35973,7 +36014,7 @@ function DataTableRowImpl({
|
|
|
35973
36014
|
if (isLinkMode) e.preventDefault();
|
|
35974
36015
|
return;
|
|
35975
36016
|
}
|
|
35976
|
-
_optionalChain([onClick, 'optionalCall',
|
|
36017
|
+
_optionalChain([onClick, 'optionalCall', _692 => _692(row.original)]);
|
|
35977
36018
|
},
|
|
35978
36019
|
[onClick, row.original, isLinkMode]
|
|
35979
36020
|
);
|
|
@@ -35998,10 +36039,10 @@ function DataTableRowImpl({
|
|
|
35998
36039
|
{
|
|
35999
36040
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
36000
36041
|
"flex flex-col overflow-hidden",
|
|
36001
|
-
alignJustify(_optionalChain([meta, 'optionalAccess',
|
|
36002
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36003
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36004
|
-
getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
36042
|
+
alignJustify(_optionalChain([meta, 'optionalAccess', _693 => _693.align])),
|
|
36043
|
+
_optionalChain([meta, 'optionalAccess', _694 => _694.width]) || "flex-1 min-w-0",
|
|
36044
|
+
_optionalChain([meta, 'optionalAccess', _695 => _695.cellClassName]),
|
|
36045
|
+
getHideClasses2(_optionalChain([meta, 'optionalAccess', _696 => _696.hideAt]))
|
|
36005
36046
|
),
|
|
36006
36047
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
|
|
36007
36048
|
},
|
|
@@ -36080,7 +36121,7 @@ function DataTableBody({
|
|
|
36080
36121
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xsf)] w-full", className), children: [
|
|
36081
36122
|
rows.map((row, index) => {
|
|
36082
36123
|
const item = row.original;
|
|
36083
|
-
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall',
|
|
36124
|
+
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _697 => _697(item)]), () => ( void 0));
|
|
36084
36125
|
const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
|
|
36085
36126
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36086
36127
|
DataTableRow,
|
|
@@ -36090,7 +36131,7 @@ function DataTableBody({
|
|
|
36090
36131
|
href,
|
|
36091
36132
|
compact,
|
|
36092
36133
|
className: cls,
|
|
36093
|
-
subRow: _optionalChain([renderSubRow, 'optionalCall',
|
|
36134
|
+
subRow: _optionalChain([renderSubRow, 'optionalCall', _698 => _698(item)])
|
|
36094
36135
|
},
|
|
36095
36136
|
row.id
|
|
36096
36137
|
);
|
|
@@ -36145,7 +36186,7 @@ function DataTableInfiniteFooter({
|
|
|
36145
36186
|
if (!sentinel) return;
|
|
36146
36187
|
const observer = new IntersectionObserver(
|
|
36147
36188
|
(entries) => {
|
|
36148
|
-
if (_optionalChain([entries, 'access',
|
|
36189
|
+
if (_optionalChain([entries, 'access', _699 => _699[0], 'optionalAccess', _700 => _700.isIntersecting])) onLoadMoreRef.current();
|
|
36149
36190
|
},
|
|
36150
36191
|
{ rootMargin }
|
|
36151
36192
|
);
|
|
@@ -36193,7 +36234,7 @@ function DataTableRowCount({
|
|
|
36193
36234
|
const table = useDataTableContext();
|
|
36194
36235
|
const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
|
|
36195
36236
|
if (hideWhenEmpty && count === 0) return null;
|
|
36196
|
-
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall',
|
|
36237
|
+
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _701 => _701(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
|
|
36197
36238
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36198
36239
|
"span",
|
|
36199
36240
|
{
|
|
@@ -36352,7 +36393,7 @@ function SearchInput({
|
|
|
36352
36393
|
if (!showHiddenTags) return;
|
|
36353
36394
|
const handleClick = (e) => {
|
|
36354
36395
|
const target = e.target;
|
|
36355
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
36396
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _702 => _702.current, 'optionalAccess', _703 => _703.contains, 'call', _704 => _704(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _705 => _705.current, 'optionalAccess', _706 => _706.contains, 'call', _707 => _707(target)])) {
|
|
36356
36397
|
setShowHiddenTags(false);
|
|
36357
36398
|
}
|
|
36358
36399
|
};
|
|
@@ -36400,10 +36441,10 @@ function SearchInput({
|
|
|
36400
36441
|
} else {
|
|
36401
36442
|
setInternalValue("");
|
|
36402
36443
|
}
|
|
36403
|
-
_optionalChain([inputRef, 'access',
|
|
36444
|
+
_optionalChain([inputRef, 'access', _708 => _708.current, 'optionalAccess', _709 => _709.focus, 'call', _710 => _710()]);
|
|
36404
36445
|
};
|
|
36405
36446
|
const handleResultClick = (result, e) => {
|
|
36406
|
-
_optionalChain([onResultSelect, 'optionalCall',
|
|
36447
|
+
_optionalChain([onResultSelect, 'optionalCall', _711 => _711(
|
|
36407
36448
|
result,
|
|
36408
36449
|
e ? {
|
|
36409
36450
|
metaKey: e.metaKey,
|
|
@@ -36435,7 +36476,7 @@ function SearchInput({
|
|
|
36435
36476
|
if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
|
|
36436
36477
|
handleResultClick(flatResults[highlightedIndex]);
|
|
36437
36478
|
} else {
|
|
36438
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
36479
|
+
_optionalChain([onSubmit, 'optionalCall', _712 => _712(currentValue)]);
|
|
36439
36480
|
}
|
|
36440
36481
|
break;
|
|
36441
36482
|
case "Escape":
|
|
@@ -36513,7 +36554,7 @@ function SearchInput({
|
|
|
36513
36554
|
dropdownVisible && "!border-ods-accent"
|
|
36514
36555
|
),
|
|
36515
36556
|
onClick: () => {
|
|
36516
|
-
_optionalChain([inputRef, 'access',
|
|
36557
|
+
_optionalChain([inputRef, 'access', _713 => _713.current, 'optionalAccess', _714 => _714.focus, 'call', _715 => _715()]);
|
|
36517
36558
|
setIsOpen(true);
|
|
36518
36559
|
},
|
|
36519
36560
|
children: [
|
|
@@ -36597,10 +36638,10 @@ function SearchInput({
|
|
|
36597
36638
|
align: "start",
|
|
36598
36639
|
onOpenAutoFocus: (e) => {
|
|
36599
36640
|
e.preventDefault();
|
|
36600
|
-
_optionalChain([inputRef, 'access',
|
|
36641
|
+
_optionalChain([inputRef, 'access', _716 => _716.current, 'optionalAccess', _717 => _717.focus, 'call', _718 => _718()]);
|
|
36601
36642
|
},
|
|
36602
36643
|
onInteractOutside: (e) => {
|
|
36603
|
-
if (_optionalChain([containerRef, 'access',
|
|
36644
|
+
if (_optionalChain([containerRef, 'access', _719 => _719.current, 'optionalAccess', _720 => _720.contains, 'call', _721 => _721(e.target)])) {
|
|
36604
36645
|
e.preventDefault();
|
|
36605
36646
|
}
|
|
36606
36647
|
},
|
|
@@ -36617,10 +36658,10 @@ function SearchInput({
|
|
|
36617
36658
|
ref: hiddenTagsPopupRef,
|
|
36618
36659
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
36619
36660
|
style: {
|
|
36620
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access',
|
|
36661
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _722 => _722.current, 'optionalAccess', _723 => _723.getBoundingClientRect, 'call', _724 => _724(), 'access', _725 => _725.left]), () => ( 0))) : 0
|
|
36621
36662
|
},
|
|
36622
36663
|
onRemove: (value2) => {
|
|
36623
|
-
_optionalChain([onFilterRemove, 'optionalCall',
|
|
36664
|
+
_optionalChain([onFilterRemove, 'optionalCall', _726 => _726(value2)]);
|
|
36624
36665
|
if (hiddenCount <= 1) setShowHiddenTags(false);
|
|
36625
36666
|
}
|
|
36626
36667
|
}
|
|
@@ -36671,7 +36712,7 @@ function FilterListItem({
|
|
|
36671
36712
|
}) {
|
|
36672
36713
|
const handleToggle = () => {
|
|
36673
36714
|
if (disabled) return;
|
|
36674
|
-
_optionalChain([onToggle, 'optionalCall',
|
|
36715
|
+
_optionalChain([onToggle, 'optionalCall', _727 => _727(!selected)]);
|
|
36675
36716
|
};
|
|
36676
36717
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36677
36718
|
"div",
|
|
@@ -36718,7 +36759,7 @@ function FilterListItem({
|
|
|
36718
36759
|
CheckboxPrimitive4.Root,
|
|
36719
36760
|
{
|
|
36720
36761
|
checked: selected,
|
|
36721
|
-
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall',
|
|
36762
|
+
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _728 => _728(c === true)]),
|
|
36722
36763
|
onClick: (e) => e.stopPropagation(),
|
|
36723
36764
|
disabled,
|
|
36724
36765
|
"aria-label": title,
|
|
@@ -36817,7 +36858,7 @@ function TagSearchInput({
|
|
|
36817
36858
|
if (!showHiddenTags) return;
|
|
36818
36859
|
const handleClick = (e) => {
|
|
36819
36860
|
const target = e.target;
|
|
36820
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
36861
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _729 => _729.current, 'optionalAccess', _730 => _730.contains, 'call', _731 => _731(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _732 => _732.current, 'optionalAccess', _733 => _733.contains, 'call', _734 => _734(target)])) {
|
|
36821
36862
|
setShowHiddenTags(false);
|
|
36822
36863
|
}
|
|
36823
36864
|
};
|
|
@@ -36833,13 +36874,13 @@ function TagSearchInput({
|
|
|
36833
36874
|
e.preventDefault();
|
|
36834
36875
|
onSubmit(searchValue);
|
|
36835
36876
|
}
|
|
36836
|
-
_optionalChain([onKeyDown, 'optionalCall',
|
|
36877
|
+
_optionalChain([onKeyDown, 'optionalCall', _735 => _735(e)]);
|
|
36837
36878
|
};
|
|
36838
36879
|
const handleClearAll = (e) => {
|
|
36839
36880
|
e.stopPropagation();
|
|
36840
36881
|
e.preventDefault();
|
|
36841
|
-
_optionalChain([onClearAll, 'optionalCall',
|
|
36842
|
-
_optionalChain([inputRef, 'access',
|
|
36882
|
+
_optionalChain([onClearAll, 'optionalCall', _736 => _736()]);
|
|
36883
|
+
_optionalChain([inputRef, 'access', _737 => _737.current, 'optionalAccess', _738 => _738.focus, 'call', _739 => _739()]);
|
|
36843
36884
|
};
|
|
36844
36885
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
|
|
36845
36886
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -36856,7 +36897,7 @@ function TagSearchInput({
|
|
|
36856
36897
|
className
|
|
36857
36898
|
),
|
|
36858
36899
|
onClick: () => {
|
|
36859
|
-
if (!disabled) _optionalChain([inputRef, 'access',
|
|
36900
|
+
if (!disabled) _optionalChain([inputRef, 'access', _740 => _740.current, 'optionalAccess', _741 => _741.focus, 'call', _742 => _742()]);
|
|
36860
36901
|
},
|
|
36861
36902
|
children: [
|
|
36862
36903
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 flex items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "text-ods-text-secondary size-4 md:size-6" }) }),
|
|
@@ -36928,7 +36969,7 @@ function TagSearchInput({
|
|
|
36928
36969
|
items: hiddenTags,
|
|
36929
36970
|
disabled,
|
|
36930
36971
|
style: {
|
|
36931
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access',
|
|
36972
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _743 => _743.current, 'optionalAccess', _744 => _744.getBoundingClientRect, 'call', _745 => _745(), 'access', _746 => _746.left]), () => ( 0))) : 0
|
|
36932
36973
|
},
|
|
36933
36974
|
onRemove: (value) => {
|
|
36934
36975
|
onTagRemove(value);
|
|
@@ -37029,7 +37070,7 @@ function MarkdownEditor({
|
|
|
37029
37070
|
const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
|
|
37030
37071
|
_react.useEffect.call(void 0, () => {
|
|
37031
37072
|
Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
|
|
37032
|
-
if (_optionalChain([mod, 'access',
|
|
37073
|
+
if (_optionalChain([mod, 'access', _747 => _747.commands, 'optionalAccess', _748 => _748.getExtraCommands])) {
|
|
37033
37074
|
setDefaultExtraCommands(mod.commands.getExtraCommands());
|
|
37034
37075
|
}
|
|
37035
37076
|
});
|
|
@@ -37063,7 +37104,7 @@ function MarkdownEditor({
|
|
|
37063
37104
|
const isImage = file.type.startsWith("image/");
|
|
37064
37105
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
37065
37106
|
insertTextAtCursor(markdown);
|
|
37066
|
-
_optionalChain([onFileUploaded, 'optionalCall',
|
|
37107
|
+
_optionalChain([onFileUploaded, 'optionalCall', _749 => _749(url, file.name)]);
|
|
37067
37108
|
} catch (error) {
|
|
37068
37109
|
console.error("File upload failed:", error);
|
|
37069
37110
|
setUploadProgress("Upload failed. Please try again.");
|
|
@@ -37076,7 +37117,7 @@ function MarkdownEditor({
|
|
|
37076
37117
|
);
|
|
37077
37118
|
const handleFileInputChange = _react.useCallback.call(void 0,
|
|
37078
37119
|
(e) => {
|
|
37079
|
-
const file = _optionalChain([e, 'access',
|
|
37120
|
+
const file = _optionalChain([e, 'access', _750 => _750.target, 'access', _751 => _751.files, 'optionalAccess', _752 => _752[0]]);
|
|
37080
37121
|
if (file) {
|
|
37081
37122
|
handleFileUpload(file);
|
|
37082
37123
|
e.target.value = "";
|
|
@@ -37087,7 +37128,7 @@ function MarkdownEditor({
|
|
|
37087
37128
|
const handlePaste = _react.useCallback.call(void 0,
|
|
37088
37129
|
(e) => {
|
|
37089
37130
|
if (!onUploadFile) return;
|
|
37090
|
-
const items = _optionalChain([e, 'access',
|
|
37131
|
+
const items = _optionalChain([e, 'access', _753 => _753.clipboardData, 'optionalAccess', _754 => _754.items]);
|
|
37091
37132
|
if (!items) return;
|
|
37092
37133
|
for (const item of items) {
|
|
37093
37134
|
if (item.type.startsWith("image/")) {
|
|
@@ -37112,7 +37153,7 @@ function MarkdownEditor({
|
|
|
37112
37153
|
buttonProps: { "aria-label": "Upload file", title: "Upload file" },
|
|
37113
37154
|
icon: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "w-3 h-3 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "w-3 h-3" }),
|
|
37114
37155
|
execute: () => {
|
|
37115
|
-
_optionalChain([fileInputRef, 'access',
|
|
37156
|
+
_optionalChain([fileInputRef, 'access', _755 => _755.current, 'optionalAccess', _756 => _756.click, 'call', _757 => _757()]);
|
|
37116
37157
|
}
|
|
37117
37158
|
} : null;
|
|
37118
37159
|
const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
|
|
@@ -37124,7 +37165,7 @@ function MarkdownEditor({
|
|
|
37124
37165
|
const EDGE_ZONE = 60;
|
|
37125
37166
|
const MAX_SCROLL_SPEED = 15;
|
|
37126
37167
|
const findScrollParent = _react.useCallback.call(void 0, (el) => {
|
|
37127
|
-
let node = _optionalChain([el, 'optionalAccess',
|
|
37168
|
+
let node = _optionalChain([el, 'optionalAccess', _758 => _758.parentElement]);
|
|
37128
37169
|
while (node && node !== document.documentElement) {
|
|
37129
37170
|
const { overflowY } = window.getComputedStyle(node);
|
|
37130
37171
|
if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
|
|
@@ -37267,7 +37308,7 @@ function matchesAccept(file, accept) {
|
|
|
37267
37308
|
});
|
|
37268
37309
|
}
|
|
37269
37310
|
function dragHasFiles(e) {
|
|
37270
|
-
const types = _optionalChain([e, 'access',
|
|
37311
|
+
const types = _optionalChain([e, 'access', _759 => _759.dataTransfer, 'optionalAccess', _760 => _760.types]);
|
|
37271
37312
|
if (!types) return false;
|
|
37272
37313
|
for (let i = 0; i < types.length; i++) {
|
|
37273
37314
|
if (types[i] === "Files") return true;
|
|
@@ -37362,7 +37403,7 @@ function FileUpload({
|
|
|
37362
37403
|
e.stopPropagation();
|
|
37363
37404
|
setDragActive(false);
|
|
37364
37405
|
if (disabled) return;
|
|
37365
|
-
if (_optionalChain([e, 'access',
|
|
37406
|
+
if (_optionalChain([e, 'access', _761 => _761.dataTransfer, 'access', _762 => _762.files, 'optionalAccess', _763 => _763.length])) {
|
|
37366
37407
|
handleFiles(e.dataTransfer.files);
|
|
37367
37408
|
}
|
|
37368
37409
|
};
|
|
@@ -37390,7 +37431,7 @@ function FileUpload({
|
|
|
37390
37431
|
e.preventDefault();
|
|
37391
37432
|
dragCounter = 0;
|
|
37392
37433
|
setDragActive(false);
|
|
37393
|
-
if (_optionalChain([e, 'access',
|
|
37434
|
+
if (_optionalChain([e, 'access', _764 => _764.dataTransfer, 'optionalAccess', _765 => _765.files, 'optionalAccess', _766 => _766.length])) {
|
|
37394
37435
|
handleFilesRef.current(e.dataTransfer.files);
|
|
37395
37436
|
}
|
|
37396
37437
|
};
|
|
@@ -37412,7 +37453,7 @@ function FileUpload({
|
|
|
37412
37453
|
};
|
|
37413
37454
|
}, [acceptWindowDrops, disabled]);
|
|
37414
37455
|
const handleFileSelect = (e) => {
|
|
37415
|
-
if (_optionalChain([e, 'access',
|
|
37456
|
+
if (_optionalChain([e, 'access', _767 => _767.target, 'access', _768 => _768.files, 'optionalAccess', _769 => _769.length])) {
|
|
37416
37457
|
handleFiles(e.target.files);
|
|
37417
37458
|
}
|
|
37418
37459
|
};
|
|
@@ -37429,7 +37470,7 @@ function FileUpload({
|
|
|
37429
37470
|
};
|
|
37430
37471
|
const openDialog = async () => {
|
|
37431
37472
|
if (disabled) return;
|
|
37432
|
-
_optionalChain([fileInputRef, 'access',
|
|
37473
|
+
_optionalChain([fileInputRef, 'access', _770 => _770.current, 'optionalAccess', _771 => _771.click, 'call', _772 => _772()]);
|
|
37433
37474
|
};
|
|
37434
37475
|
const displayError = error || validationError || void 0;
|
|
37435
37476
|
const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
|
|
@@ -37507,7 +37548,7 @@ function FileUpload({
|
|
|
37507
37548
|
"button",
|
|
37508
37549
|
{
|
|
37509
37550
|
type: "button",
|
|
37510
|
-
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall',
|
|
37551
|
+
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _773 => _773(entry.id)]),
|
|
37511
37552
|
className: "shrink-0 p-1 rounded hover:bg-ods-bg transition-colors",
|
|
37512
37553
|
"aria-label": `Remove ${entry.fileName}`,
|
|
37513
37554
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-4 text-ods-text-secondary" })
|
|
@@ -37630,7 +37671,7 @@ function ImageUploader({
|
|
|
37630
37671
|
onChange(file);
|
|
37631
37672
|
};
|
|
37632
37673
|
const handleFileSelect = (e) => {
|
|
37633
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
37674
|
+
validateAndEmit(_optionalChain([e, 'access', _774 => _774.target, 'access', _775 => _775.files, 'optionalAccess', _776 => _776[0]]));
|
|
37634
37675
|
if (inputRef.current) inputRef.current.value = "";
|
|
37635
37676
|
};
|
|
37636
37677
|
const handleDrag = (e) => {
|
|
@@ -37645,11 +37686,11 @@ function ImageUploader({
|
|
|
37645
37686
|
e.stopPropagation();
|
|
37646
37687
|
setDragActive(false);
|
|
37647
37688
|
if (!interactive) return;
|
|
37648
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
37689
|
+
validateAndEmit(_optionalChain([e, 'access', _777 => _777.dataTransfer, 'access', _778 => _778.files, 'optionalAccess', _779 => _779[0]]));
|
|
37649
37690
|
};
|
|
37650
37691
|
const openDialog = () => {
|
|
37651
37692
|
if (!interactive) return;
|
|
37652
|
-
_optionalChain([inputRef, 'access',
|
|
37693
|
+
_optionalChain([inputRef, 'access', _780 => _780.current, 'optionalAccess', _781 => _781.click, 'call', _782 => _782()]);
|
|
37653
37694
|
};
|
|
37654
37695
|
const handleRootKeyDown = (e) => {
|
|
37655
37696
|
if (hasImage || !interactive) return;
|
|
@@ -37839,8 +37880,8 @@ function ColorPresetSelect({
|
|
|
37839
37880
|
}) {
|
|
37840
37881
|
const selectedPreset = presets.find((p) => p.key === presetKey);
|
|
37841
37882
|
const isCustom = !selectedPreset;
|
|
37842
|
-
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
37843
|
-
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
37883
|
+
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _783 => _783.label]), () => ( "Custom"));
|
|
37884
|
+
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _784 => _784.color]), () => ( value));
|
|
37844
37885
|
const groups = [
|
|
37845
37886
|
{
|
|
37846
37887
|
items: [
|
|
@@ -38130,7 +38171,7 @@ function TicketStatusConfigRow({
|
|
|
38130
38171
|
_chunkQJGRP2YEcjs.Input,
|
|
38131
38172
|
{
|
|
38132
38173
|
value: name,
|
|
38133
|
-
onChange: (e) => _optionalChain([onNameChange, 'optionalCall',
|
|
38174
|
+
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _785 => _785(e.target.value)]),
|
|
38134
38175
|
disabled: isSystem,
|
|
38135
38176
|
readOnly: isSystem,
|
|
38136
38177
|
"aria-label": "Status name",
|
|
@@ -38213,7 +38254,7 @@ function CompactAssigneeDropdown({
|
|
|
38213
38254
|
return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
|
|
38214
38255
|
}, [filtered, currentAssignee]);
|
|
38215
38256
|
const handleSelect = (userId) => {
|
|
38216
|
-
const next = _optionalChain([currentAssignee, 'optionalAccess',
|
|
38257
|
+
const next = _optionalChain([currentAssignee, 'optionalAccess', _786 => _786.id]) === userId ? null : userId;
|
|
38217
38258
|
onAssign(next);
|
|
38218
38259
|
setIsOpen(false);
|
|
38219
38260
|
};
|
|
@@ -38278,7 +38319,7 @@ function CompactAssigneeDropdown({
|
|
|
38278
38319
|
}
|
|
38279
38320
|
) }),
|
|
38280
38321
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "max-h-80 overflow-y-auto py-[var(--spacing-system-xs)]", role: "listbox", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "Loading\u2026" }) : orderedOptions.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "No users found" }) : orderedOptions.map((opt) => {
|
|
38281
|
-
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess',
|
|
38322
|
+
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _787 => _787.id]) === opt.value;
|
|
38282
38323
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
38283
38324
|
"button",
|
|
38284
38325
|
{
|
|
@@ -38347,7 +38388,7 @@ function DefaultAssigneeDropdown({
|
|
|
38347
38388
|
Autocomplete,
|
|
38348
38389
|
{
|
|
38349
38390
|
options,
|
|
38350
|
-
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess',
|
|
38391
|
+
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _788 => _788.id]), () => ( null)),
|
|
38351
38392
|
onChange: (val) => {
|
|
38352
38393
|
onAssign(val);
|
|
38353
38394
|
setIsEditing(false);
|
|
@@ -38736,14 +38777,14 @@ function TicketInfoSection({
|
|
|
38736
38777
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38737
38778
|
SquareAvatar,
|
|
38738
38779
|
{
|
|
38739
|
-
src: _optionalChain([organization, 'optionalAccess',
|
|
38740
|
-
alt: _optionalChain([organization, 'optionalAccess',
|
|
38741
|
-
fallback: _optionalChain([organization, 'optionalAccess',
|
|
38780
|
+
src: _optionalChain([organization, 'optionalAccess', _789 => _789.imageSrc]),
|
|
38781
|
+
alt: _optionalChain([organization, 'optionalAccess', _790 => _790.name]),
|
|
38782
|
+
fallback: _optionalChain([organization, 'optionalAccess', _791 => _791.name]) || "Org",
|
|
38742
38783
|
size: "md",
|
|
38743
38784
|
className: "shrink-0"
|
|
38744
38785
|
}
|
|
38745
38786
|
),
|
|
38746
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess',
|
|
38787
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _792 => _792.name]) || "Unassigned", label: "Organization" })
|
|
38747
38788
|
] }),
|
|
38748
38789
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38749
38790
|
AssigneeDropdown,
|
|
@@ -38764,10 +38805,10 @@ function TicketInfoSection({
|
|
|
38764
38805
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38765
38806
|
InfoCell2,
|
|
38766
38807
|
{
|
|
38767
|
-
value: _optionalChain([device, 'optionalAccess',
|
|
38808
|
+
value: _optionalChain([device, 'optionalAccess', _793 => _793.name]) || "Unassigned",
|
|
38768
38809
|
label: "Device",
|
|
38769
|
-
icon: _optionalChain([device, 'optionalAccess',
|
|
38770
|
-
onClick: _optionalChain([device, 'optionalAccess',
|
|
38810
|
+
icon: _optionalChain([device, 'optionalAccess', _794 => _794.icon]),
|
|
38811
|
+
onClick: _optionalChain([device, 'optionalAccess', _795 => _795.onClick])
|
|
38771
38812
|
}
|
|
38772
38813
|
),
|
|
38773
38814
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
|
|
@@ -39097,7 +39138,7 @@ function RoadmapCard({
|
|
|
39097
39138
|
const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
|
|
39098
39139
|
const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
|
|
39099
39140
|
const hasFigma = !!item.figmaUrl;
|
|
39100
|
-
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access',
|
|
39141
|
+
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _796 => _796.screenshots, 'optionalAccess', _797 => _797.length]), () => ( 0))) > 0;
|
|
39101
39142
|
const typeLabel = getTaskTypeLabel(item.customItemId);
|
|
39102
39143
|
const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
|
|
39103
39144
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -39116,7 +39157,7 @@ function RoadmapCard({
|
|
|
39116
39157
|
unoptimized: true,
|
|
39117
39158
|
className: "h-8 w-8 object-contain"
|
|
39118
39159
|
}
|
|
39119
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
39160
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _798 => _798.title, 'optionalAccess', _799 => _799.substring, 'call', _800 => _800(0, 2)]) || "??" })
|
|
39120
39161
|
}
|
|
39121
39162
|
),
|
|
39122
39163
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -39191,7 +39232,7 @@ function RoadmapCard({
|
|
|
39191
39232
|
unoptimized: true,
|
|
39192
39233
|
className: "object-contain p-1"
|
|
39193
39234
|
}
|
|
39194
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
39235
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _801 => _801.title, 'optionalAccess', _802 => _802.substring, 'call', _803 => _803(0, 2)]) || "??" }) }),
|
|
39195
39236
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
|
|
39196
39237
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[48px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary tracking-[-0.36px] flex-1 line-clamp-2", children: item.title }) }),
|
|
39197
39238
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[20px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h5 text-ods-text-secondary uppercase tracking-[-0.28px] truncate", children: [
|
|
@@ -39701,7 +39742,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
|
|
|
39701
39742
|
] }) : null,
|
|
39702
39743
|
item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-[13px] leading-5 text-ods-text-secondary", children: item.preview }) }) : null
|
|
39703
39744
|
] }),
|
|
39704
|
-
_optionalChain([anchorProps, 'optionalAccess',
|
|
39745
|
+
_optionalChain([anchorProps, 'optionalAccess', _804 => _804.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
|
|
39705
39746
|
] });
|
|
39706
39747
|
if (!anchorProps) {
|
|
39707
39748
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
@@ -39771,7 +39812,7 @@ function getDefaultOptions() {
|
|
|
39771
39812
|
// node_modules/date-fns/startOfWeek.mjs
|
|
39772
39813
|
function startOfWeek(date, options) {
|
|
39773
39814
|
const defaultOptions2 = getDefaultOptions();
|
|
39774
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
39815
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _805 => _805.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _806 => _806.locale, 'optionalAccess', _807 => _807.options, 'optionalAccess', _808 => _808.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _809 => _809.locale, 'optionalAccess', _810 => _810.options, 'optionalAccess', _811 => _811.weekStartsOn]))), () => ( 0));
|
|
39775
39816
|
const _date = toDate(date);
|
|
39776
39817
|
const day = _date.getDay();
|
|
39777
39818
|
const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
|
|
@@ -39946,7 +39987,7 @@ var formatDistance = (token, count, options) => {
|
|
|
39946
39987
|
} else {
|
|
39947
39988
|
result = tokenValue.other.replace("{{count}}", count.toString());
|
|
39948
39989
|
}
|
|
39949
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
39990
|
+
if (_optionalChain([options, 'optionalAccess', _812 => _812.addSuffix])) {
|
|
39950
39991
|
if (options.comparison && options.comparison > 0) {
|
|
39951
39992
|
return "in " + result;
|
|
39952
39993
|
} else {
|
|
@@ -40013,15 +40054,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
|
|
|
40013
40054
|
// node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
|
|
40014
40055
|
function buildLocalizeFn(args) {
|
|
40015
40056
|
return (value, options) => {
|
|
40016
|
-
const context = _optionalChain([options, 'optionalAccess',
|
|
40057
|
+
const context = _optionalChain([options, 'optionalAccess', _813 => _813.context]) ? String(options.context) : "standalone";
|
|
40017
40058
|
let valuesArray;
|
|
40018
40059
|
if (context === "formatting" && args.formattingValues) {
|
|
40019
40060
|
const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
|
|
40020
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
40061
|
+
const width = _optionalChain([options, 'optionalAccess', _814 => _814.width]) ? String(options.width) : defaultWidth;
|
|
40021
40062
|
valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
|
|
40022
40063
|
} else {
|
|
40023
40064
|
const defaultWidth = args.defaultWidth;
|
|
40024
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
40065
|
+
const width = _optionalChain([options, 'optionalAccess', _815 => _815.width]) ? String(options.width) : args.defaultWidth;
|
|
40025
40066
|
valuesArray = args.values[width] || args.values[defaultWidth];
|
|
40026
40067
|
}
|
|
40027
40068
|
const index = args.argumentCallback ? args.argumentCallback(value) : value;
|
|
@@ -40401,7 +40442,7 @@ function getWeekYear(date, options) {
|
|
|
40401
40442
|
const _date = toDate(date);
|
|
40402
40443
|
const year = _date.getFullYear();
|
|
40403
40444
|
const defaultOptions2 = getDefaultOptions();
|
|
40404
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40445
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _816 => _816.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _817 => _817.locale, 'optionalAccess', _818 => _818.options, 'optionalAccess', _819 => _819.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _820 => _820.locale, 'optionalAccess', _821 => _821.options, 'optionalAccess', _822 => _822.firstWeekContainsDate]))), () => ( 1));
|
|
40405
40446
|
const firstWeekOfNextYear = constructFrom(date, 0);
|
|
40406
40447
|
firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
|
|
40407
40448
|
firstWeekOfNextYear.setHours(0, 0, 0, 0);
|
|
@@ -40422,7 +40463,7 @@ function getWeekYear(date, options) {
|
|
|
40422
40463
|
// node_modules/date-fns/startOfWeekYear.mjs
|
|
40423
40464
|
function startOfWeekYear(date, options) {
|
|
40424
40465
|
const defaultOptions2 = getDefaultOptions();
|
|
40425
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40466
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _823 => _823.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _824 => _824.locale, 'optionalAccess', _825 => _825.options, 'optionalAccess', _826 => _826.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _827 => _827.locale, 'optionalAccess', _828 => _828.options, 'optionalAccess', _829 => _829.firstWeekContainsDate]))), () => ( 1));
|
|
40426
40467
|
const year = getWeekYear(date, options);
|
|
40427
40468
|
const firstWeek = constructFrom(date, 0);
|
|
40428
40469
|
firstWeek.setFullYear(year, 0, firstWeekContainsDate);
|
|
@@ -41237,9 +41278,9 @@ var doubleQuoteRegExp = /''/g;
|
|
|
41237
41278
|
var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
|
|
41238
41279
|
function format(date, formatStr, options) {
|
|
41239
41280
|
const defaultOptions2 = getDefaultOptions();
|
|
41240
|
-
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
41241
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
41242
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
41281
|
+
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _830 => _830.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
|
|
41282
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _831 => _831.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _832 => _832.locale, 'optionalAccess', _833 => _833.options, 'optionalAccess', _834 => _834.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _835 => _835.locale, 'optionalAccess', _836 => _836.options, 'optionalAccess', _837 => _837.firstWeekContainsDate]))), () => ( 1));
|
|
41283
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _838 => _838.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _839 => _839.locale, 'optionalAccess', _840 => _840.options, 'optionalAccess', _841 => _841.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _842 => _842.locale, 'optionalAccess', _843 => _843.options, 'optionalAccess', _844 => _844.weekStartsOn]))), () => ( 0));
|
|
41243
41284
|
const originalDate = toDate(date);
|
|
41244
41285
|
if (!isValid(originalDate)) {
|
|
41245
41286
|
throw new RangeError("Invalid time value");
|
|
@@ -41280,7 +41321,7 @@ function format(date, formatStr, options) {
|
|
|
41280
41321
|
return parts.map((part) => {
|
|
41281
41322
|
if (!part.isToken) return part.value;
|
|
41282
41323
|
const token = part.value;
|
|
41283
|
-
if (!_optionalChain([options, 'optionalAccess',
|
|
41324
|
+
if (!_optionalChain([options, 'optionalAccess', _845 => _845.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _846 => _846.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
|
|
41284
41325
|
warnOrThrowProtectedError(token, formatStr, String(date));
|
|
41285
41326
|
}
|
|
41286
41327
|
const formatter = formatters[token[0]];
|
|
@@ -41461,7 +41502,7 @@ function ProgramCard({
|
|
|
41461
41502
|
const dur = formatDurationFromRange(w.start_at, w.end_at);
|
|
41462
41503
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
41463
41504
|
}
|
|
41464
|
-
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access',
|
|
41505
|
+
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _847 => _847.labels, 'optionalAccess', _848 => _848.singular])].filter(
|
|
41465
41506
|
(s) => typeof s === "string" && s.length > 0
|
|
41466
41507
|
);
|
|
41467
41508
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
|
|
@@ -41618,7 +41659,7 @@ function ProgramCard({
|
|
|
41618
41659
|
|
|
41619
41660
|
|
|
41620
41661
|
function CampaignCardAdmin({ campaign, className, anchorProps }) {
|
|
41621
|
-
const goalsCount = _optionalChain([campaign, 'access',
|
|
41662
|
+
const goalsCount = _optionalChain([campaign, 'access', _849 => _849.goals, 'optionalAccess', _850 => _850.length]) || 0;
|
|
41622
41663
|
const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
41623
41664
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
|
|
41624
41665
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -41780,7 +41821,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
41780
41821
|
if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
|
|
41781
41822
|
const safePath = sanitizePath(row.path);
|
|
41782
41823
|
if (safePath) {
|
|
41783
|
-
const docTarget = row.documentType ? _optionalChain([ctx, 'access',
|
|
41824
|
+
const docTarget = row.documentType ? _optionalChain([ctx, 'access', _851 => _851.docPlatformTargets, 'optionalAccess', _852 => _852[row.documentType]]) : void 0;
|
|
41784
41825
|
if (docTarget) {
|
|
41785
41826
|
const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
|
|
41786
41827
|
const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
|
|
@@ -41995,8 +42036,8 @@ function cardMenuGroups(href, discuss, openDetails) {
|
|
|
41995
42036
|
if (href) {
|
|
41996
42037
|
items.push({
|
|
41997
42038
|
id: "open-details",
|
|
41998
|
-
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
41999
|
-
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
42039
|
+
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _853 => _853.label]), () => ( "Open Details")),
|
|
42040
|
+
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _854 => _854.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.EyeIcon, { size: 20 }))),
|
|
42000
42041
|
// Main row → open the entity (same tab, soft Link nav).
|
|
42001
42042
|
href,
|
|
42002
42043
|
// Trailing 40px ↗ side-button → open in a new tab.
|
|
@@ -42026,8 +42067,8 @@ function HubspotTicketChatCard({
|
|
|
42026
42067
|
isNewTab,
|
|
42027
42068
|
discuss
|
|
42028
42069
|
}) {
|
|
42029
|
-
const status = typeof _optionalChain([chatRef, 'access',
|
|
42030
|
-
const statusLabel = typeof _optionalChain([chatRef, 'access',
|
|
42070
|
+
const status = typeof _optionalChain([chatRef, 'access', _855 => _855.metadata, 'optionalAccess', _856 => _856.status]) === "string" ? chatRef.metadata.status : void 0;
|
|
42071
|
+
const statusLabel = typeof _optionalChain([chatRef, 'access', _857 => _857.metadata, 'optionalAccess', _858 => _858.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
|
|
42031
42072
|
const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
|
|
42032
42073
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42033
42074
|
MingoInfoCard,
|
|
@@ -42050,7 +42091,7 @@ function FaqChatCard({
|
|
|
42050
42091
|
isNewTab,
|
|
42051
42092
|
discuss
|
|
42052
42093
|
}) {
|
|
42053
|
-
const section = typeof _optionalChain([chatRef, 'access',
|
|
42094
|
+
const section = typeof _optionalChain([chatRef, 'access', _859 => _859.metadata, 'optionalAccess', _860 => _860.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
|
|
42054
42095
|
const statusLabel = section && section.length > 0 ? section : "FAQ";
|
|
42055
42096
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42056
42097
|
MingoInfoCard,
|
|
@@ -42070,7 +42111,7 @@ function SlackChatCard({
|
|
|
42070
42111
|
isNewTab,
|
|
42071
42112
|
discuss
|
|
42072
42113
|
}) {
|
|
42073
|
-
const channelName = typeof _optionalChain([chatRef, 'access',
|
|
42114
|
+
const channelName = typeof _optionalChain([chatRef, 'access', _861 => _861.metadata, 'optionalAccess', _862 => _862.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
|
|
42074
42115
|
const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
|
|
42075
42116
|
const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
|
|
42076
42117
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -42110,7 +42151,7 @@ function GenericFinancialChatCard({
|
|
|
42110
42151
|
isNewTab,
|
|
42111
42152
|
discuss
|
|
42112
42153
|
}) {
|
|
42113
|
-
const subtitle = typeof _optionalChain([chatRef, 'access',
|
|
42154
|
+
const subtitle = typeof _optionalChain([chatRef, 'access', _863 => _863.metadata, 'optionalAccess', _864 => _864.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
|
|
42114
42155
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42115
42156
|
MingoInfoCard,
|
|
42116
42157
|
{
|
|
@@ -42179,12 +42220,12 @@ function ProductReleaseChatCard({
|
|
|
42179
42220
|
discuss
|
|
42180
42221
|
}) {
|
|
42181
42222
|
const releaseProps = buildProps(item);
|
|
42182
|
-
const status = _optionalChain([item, 'optionalAccess',
|
|
42223
|
+
const status = _optionalChain([item, 'optionalAccess', _865 => _865.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
|
|
42183
42224
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42184
42225
|
EntityMingoCard,
|
|
42185
42226
|
{
|
|
42186
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42187
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42227
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _866 => _866.title]), () => ( "")),
|
|
42228
|
+
description: _optionalChain([item, 'optionalAccess', _867 => _867.summary]) || releaseProps.formattedDate || void 0,
|
|
42188
42229
|
cover: releaseProps.coverImage || void 0,
|
|
42189
42230
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.Rocket02Icon, { size: 24 }),
|
|
42190
42231
|
status,
|
|
@@ -42201,17 +42242,17 @@ function CampaignChatCard({
|
|
|
42201
42242
|
isNewTab,
|
|
42202
42243
|
discuss
|
|
42203
42244
|
}) {
|
|
42204
|
-
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
42245
|
+
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _868 => _868.goals])) ? item.goals.length : 0;
|
|
42205
42246
|
const meta = [
|
|
42206
|
-
_optionalChain([item, 'optionalAccess',
|
|
42247
|
+
_optionalChain([item, 'optionalAccess', _869 => _869.start_date]) ? formatDateShort(item.start_date) : null,
|
|
42207
42248
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
42208
42249
|
"Marketing campaign"
|
|
42209
42250
|
].filter(Boolean).join(" \xB7 ");
|
|
42210
42251
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42211
42252
|
EntityMingoCard,
|
|
42212
42253
|
{
|
|
42213
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42214
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
42254
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _870 => _870.name]), () => ( "")),
|
|
42255
|
+
description: meta || _optionalChain([item, 'optionalAccess', _871 => _871.description]) || void 0,
|
|
42215
42256
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.Megaphone01Icon, { size: 24 }),
|
|
42216
42257
|
chatRef,
|
|
42217
42258
|
isNewTab,
|
|
@@ -42264,14 +42305,14 @@ function BlogChatCard({
|
|
|
42264
42305
|
hasEmbeddedVideo,
|
|
42265
42306
|
discuss
|
|
42266
42307
|
}) {
|
|
42267
|
-
const category = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
42308
|
+
const category = Array.isArray(_optionalChain([item, 'optionalAccess', _872 => _872.categories])) ? _optionalChain([item, 'access', _873 => _873.categories, 'access', _874 => _874.find, 'call', _875 => _875((c) => c && c.name), 'optionalAccess', _876 => _876.name]) : void 0;
|
|
42268
42309
|
const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
|
|
42269
42310
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42270
42311
|
EntityMingoCard,
|
|
42271
42312
|
{
|
|
42272
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42273
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42274
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42313
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _877 => _877.title]), () => ( "")),
|
|
42314
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _878 => _878.summary]), () => ( void 0)),
|
|
42315
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _879 => _879.featured_image]), ogPlaceholder),
|
|
42275
42316
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.NewspaperIcon, { size: 24 }),
|
|
42276
42317
|
status,
|
|
42277
42318
|
chatRef,
|
|
@@ -42288,13 +42329,13 @@ function CaseStudyChatCard({
|
|
|
42288
42329
|
ogPlaceholder,
|
|
42289
42330
|
discuss
|
|
42290
42331
|
}) {
|
|
42291
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
42332
|
+
const meta = [_optionalChain([item, 'optionalAccess', _880 => _880.msp, 'optionalAccess', _881 => _881.name]), _optionalChain([item, 'optionalAccess', _882 => _882.user, 'optionalAccess', _883 => _883.full_name])].filter(Boolean).join(" \xB7 ");
|
|
42292
42333
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42293
42334
|
EntityMingoCard,
|
|
42294
42335
|
{
|
|
42295
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42296
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42297
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42336
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _884 => _884.title]), () => ( "")),
|
|
42337
|
+
description: _optionalChain([item, 'optionalAccess', _885 => _885.summary]) || meta || void 0,
|
|
42338
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _886 => _886.featured_image]), ogPlaceholder),
|
|
42298
42339
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.TrophyIcon, { size: 24 }),
|
|
42299
42340
|
status: { label: "Case study", variant: "grey" },
|
|
42300
42341
|
chatRef,
|
|
@@ -42311,13 +42352,13 @@ function CustomerInterviewChatCard({
|
|
|
42311
42352
|
ogPlaceholder,
|
|
42312
42353
|
discuss
|
|
42313
42354
|
}) {
|
|
42314
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
42355
|
+
const meta = [_optionalChain([item, 'optionalAccess', _887 => _887.user, 'optionalAccess', _888 => _888.full_name]), _optionalChain([item, 'optionalAccess', _889 => _889.msp, 'optionalAccess', _890 => _890.name])].filter(Boolean).join(" \xB7 ");
|
|
42315
42356
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42316
42357
|
EntityMingoCard,
|
|
42317
42358
|
{
|
|
42318
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42319
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42320
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42359
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _891 => _891.title]), () => ( "")),
|
|
42360
|
+
description: _optionalChain([item, 'optionalAccess', _892 => _892.video_summary]) || meta || void 0,
|
|
42361
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _893 => _893.featured_image]), ogPlaceholder),
|
|
42321
42362
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.MicrophoneIcon, { size: 24 }),
|
|
42322
42363
|
status: { label: "Interview", variant: "grey" },
|
|
42323
42364
|
chatRef,
|
|
@@ -42334,13 +42375,13 @@ function InvestorUpdateChatCard({
|
|
|
42334
42375
|
ogPlaceholder,
|
|
42335
42376
|
discuss
|
|
42336
42377
|
}) {
|
|
42337
|
-
const title = _optionalChain([item, 'optionalAccess',
|
|
42378
|
+
const title = _optionalChain([item, 'optionalAccess', _894 => _894.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _895 => _895.update_number]), () => ( "?"))}`;
|
|
42338
42379
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42339
42380
|
EntityMingoCard,
|
|
42340
42381
|
{
|
|
42341
42382
|
title,
|
|
42342
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42343
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42383
|
+
description: _optionalChain([item, 'optionalAccess', _896 => _896.strategic_update]) || _optionalChain([item, 'optionalAccess', _897 => _897.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _898 => _898.period_start]), _optionalChain([item, 'optionalAccess', _899 => _899.period_end])) || void 0,
|
|
42384
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _900 => _900.featured_image]), ogPlaceholder),
|
|
42344
42385
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.PresentationLineIcon, { size: 24 }),
|
|
42345
42386
|
status: { label: "Investor update", variant: "grey" },
|
|
42346
42387
|
chatRef,
|
|
@@ -42357,12 +42398,12 @@ function OnboardingGuideChatCard({
|
|
|
42357
42398
|
ogPlaceholder,
|
|
42358
42399
|
discuss
|
|
42359
42400
|
}) {
|
|
42360
|
-
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess',
|
|
42401
|
+
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _901 => _901.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _902 => _902.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _903 => _903.og_image_url]), ogPlaceholder)));
|
|
42361
42402
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42362
42403
|
EntityMingoCard,
|
|
42363
42404
|
{
|
|
42364
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42365
|
-
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42405
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _904 => _904.title]), () => ( "")),
|
|
42406
|
+
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _905 => _905.summary]), () => ( _optionalChain([item, 'optionalAccess', _906 => _906.description]))), () => ( void 0)),
|
|
42366
42407
|
cover,
|
|
42367
42408
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.CompassIcon, { size: 24 }),
|
|
42368
42409
|
status: { label: "Guide", variant: "grey" },
|
|
@@ -42383,25 +42424,25 @@ function ProgramChatCard({
|
|
|
42383
42424
|
discuss
|
|
42384
42425
|
}) {
|
|
42385
42426
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.MicrophoneIcon, { size: 24 });
|
|
42386
|
-
const isScheduled = _optionalChain([item, 'optionalAccess',
|
|
42427
|
+
const isScheduled = _optionalChain([item, 'optionalAccess', _907 => _907.status]) === "scheduled";
|
|
42387
42428
|
let typeMeta;
|
|
42388
|
-
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess',
|
|
42429
|
+
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _908 => _908.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
|
|
42389
42430
|
typeMeta = formatDurationCompact(item.duration_seconds);
|
|
42390
|
-
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess',
|
|
42431
|
+
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _909 => _909.location_name]) === "string" && item.location_name.trim().length > 0) {
|
|
42391
42432
|
typeMeta = item.location_name;
|
|
42392
|
-
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess',
|
|
42433
|
+
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _910 => _910.start_at])) {
|
|
42393
42434
|
const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
|
|
42394
42435
|
const dur = formatDurationFromRange(item.start_at, item.end_at);
|
|
42395
42436
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
42396
42437
|
}
|
|
42397
|
-
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42438
|
+
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _911 => _911.date]), () => ( null)), { fallback: "", timezone: "local" });
|
|
42398
42439
|
const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
|
|
42399
42440
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42400
42441
|
EntityMingoCard,
|
|
42401
42442
|
{
|
|
42402
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42403
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
42404
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42443
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _912 => _912.title]), () => ( "")),
|
|
42444
|
+
description: meta || _optionalChain([item, 'optionalAccess', _913 => _913.description]) || void 0,
|
|
42445
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _914 => _914.cover_url]), ogPlaceholder),
|
|
42405
42446
|
fallbackIcon: icon,
|
|
42406
42447
|
status: { label, variant: "grey" },
|
|
42407
42448
|
chatRef,
|
|
@@ -42418,10 +42459,10 @@ function RoadmapChatCard({
|
|
|
42418
42459
|
cardType,
|
|
42419
42460
|
discuss
|
|
42420
42461
|
}) {
|
|
42421
|
-
const logoUrl = typeof _optionalChain([item, 'optionalAccess',
|
|
42422
|
-
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess',
|
|
42462
|
+
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _915 => _915.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
42463
|
+
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _916 => _916.customItemId]) != null;
|
|
42423
42464
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.MapIcon, { size: 24 });
|
|
42424
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess',
|
|
42465
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _917 => _917.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
42425
42466
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
42426
42467
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
42427
42468
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
|
|
@@ -42429,10 +42470,10 @@ function RoadmapChatCard({
|
|
|
42429
42470
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42430
42471
|
EntityMingoCard,
|
|
42431
42472
|
{
|
|
42432
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42433
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42473
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _918 => _918.title]), () => ( "")),
|
|
42474
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _919 => _919.description]), () => ( void 0)),
|
|
42434
42475
|
fallbackIcon: icon,
|
|
42435
|
-
status: statusPill(_optionalChain([item, 'optionalAccess',
|
|
42476
|
+
status: statusPill(_optionalChain([item, 'optionalAccess', _920 => _920.status])),
|
|
42436
42477
|
chatRef,
|
|
42437
42478
|
isNewTab,
|
|
42438
42479
|
discuss,
|
|
@@ -42518,7 +42559,7 @@ function programRegistryEntries() {
|
|
|
42518
42559
|
discuss: opts.discuss,
|
|
42519
42560
|
configKey: cfg.configKey,
|
|
42520
42561
|
label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
|
|
42521
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42562
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _921 => _921.extras, 'optionalAccess', _922 => _922.buildOgPlaceholderUrl, 'optionalCall', _923 => _923(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _924 => _924.title]), () => ( "")))]), () => ( null))
|
|
42522
42563
|
}
|
|
42523
42564
|
)
|
|
42524
42565
|
};
|
|
@@ -42670,8 +42711,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42670
42711
|
chatRef,
|
|
42671
42712
|
isNewTab: opts.isNewTab,
|
|
42672
42713
|
discuss: opts.discuss,
|
|
42673
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42674
|
-
hasEmbeddedVideo: _optionalChain([chatRef, 'access',
|
|
42714
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _925 => _925.extras, 'optionalAccess', _926 => _926.buildOgPlaceholderUrl, 'optionalCall', _927 => _927(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _928 => _928.title]), () => ( "")))]), () => ( null)),
|
|
42715
|
+
hasEmbeddedVideo: _optionalChain([chatRef, 'access', _929 => _929.metadata, 'optionalAccess', _930 => _930.hasEmbeddedVideo]) === true
|
|
42675
42716
|
}
|
|
42676
42717
|
)
|
|
42677
42718
|
},
|
|
@@ -42688,7 +42729,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42688
42729
|
chatRef,
|
|
42689
42730
|
isNewTab: opts.isNewTab,
|
|
42690
42731
|
discuss: opts.discuss,
|
|
42691
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42732
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _931 => _931.extras, 'optionalAccess', _932 => _932.buildOgPlaceholderUrl, 'optionalCall', _933 => _933(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _934 => _934.title]), () => ( "")))]), () => ( null))
|
|
42692
42733
|
}
|
|
42693
42734
|
)
|
|
42694
42735
|
},
|
|
@@ -42705,7 +42746,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42705
42746
|
chatRef,
|
|
42706
42747
|
isNewTab: opts.isNewTab,
|
|
42707
42748
|
discuss: opts.discuss,
|
|
42708
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42749
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _935 => _935.extras, 'optionalAccess', _936 => _936.buildOgPlaceholderUrl, 'optionalCall', _937 => _937(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _938 => _938.title]), () => ( "")))]), () => ( null))
|
|
42709
42750
|
}
|
|
42710
42751
|
)
|
|
42711
42752
|
},
|
|
@@ -42716,7 +42757,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42716
42757
|
bareInline: true,
|
|
42717
42758
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
|
|
42718
42759
|
render: (item, chatRef, opts) => {
|
|
42719
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42760
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _939 => _939.extras, 'optionalAccess', _940 => _940.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
|
|
42720
42761
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42721
42762
|
ProductReleaseChatCard,
|
|
42722
42763
|
{
|
|
@@ -42743,7 +42784,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42743
42784
|
chatRef,
|
|
42744
42785
|
isNewTab: opts.isNewTab,
|
|
42745
42786
|
discuss: opts.discuss,
|
|
42746
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42787
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _941 => _941.extras, 'optionalAccess', _942 => _942.buildOgPlaceholderUrl, 'optionalCall', _943 => _943(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _944 => _944.title]), () => ( "")))]), () => ( null))
|
|
42747
42788
|
}
|
|
42748
42789
|
)
|
|
42749
42790
|
},
|
|
@@ -42762,7 +42803,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42762
42803
|
chatRef,
|
|
42763
42804
|
isNewTab: opts.isNewTab,
|
|
42764
42805
|
discuss: opts.discuss,
|
|
42765
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42806
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _945 => _945.extras, 'optionalAccess', _946 => _946.buildOgPlaceholderUrl, 'optionalCall', _947 => _947(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _948 => _948.title]), () => ( "")))]), () => ( null))
|
|
42766
42807
|
}
|
|
42767
42808
|
)
|
|
42768
42809
|
},
|
|
@@ -42774,7 +42815,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42774
42815
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
|
|
42775
42816
|
// No public viewer — synthesize the hub-internal admin URL post-fetch
|
|
42776
42817
|
// so the wrapper + isNewTab computation see the actual destination.
|
|
42777
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
42818
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _949 => _949.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
|
|
42778
42819
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42779
42820
|
CampaignChatCard,
|
|
42780
42821
|
{
|
|
@@ -42800,12 +42841,12 @@ function ChatCardNavWrap({
|
|
|
42800
42841
|
const onClickCapture = (e) => {
|
|
42801
42842
|
if (!href) return;
|
|
42802
42843
|
const targetEl = e.target;
|
|
42803
|
-
if (_optionalChain([targetEl, 'optionalAccess',
|
|
42804
|
-
if (!_optionalChain([targetEl, 'optionalAccess',
|
|
42844
|
+
if (_optionalChain([targetEl, 'optionalAccess', _950 => _950.closest, 'optionalCall', _951 => _951("button")])) return;
|
|
42845
|
+
if (!_optionalChain([targetEl, 'optionalAccess', _952 => _952.closest, 'optionalCall', _953 => _953("a")])) return;
|
|
42805
42846
|
const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
|
|
42806
42847
|
if (!handled) return;
|
|
42807
42848
|
e.stopPropagation();
|
|
42808
|
-
if (!isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
42849
|
+
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _954 => _954.closeChat])) panel.closeChat();
|
|
42809
42850
|
};
|
|
42810
42851
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
|
|
42811
42852
|
}
|
|
@@ -42827,7 +42868,7 @@ function ChatCardLoader({
|
|
|
42827
42868
|
title: chatRef.title,
|
|
42828
42869
|
externalUrl: chatRef.url,
|
|
42829
42870
|
targetPlatform: chatRef.targetPlatform,
|
|
42830
|
-
path: typeof _optionalChain([chatRef, 'access',
|
|
42871
|
+
path: typeof _optionalChain([chatRef, 'access', _955 => _955.metadata, 'optionalAccess', _956 => _956.path]) === "string" ? chatRef.metadata.path : null
|
|
42831
42872
|
},
|
|
42832
42873
|
sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
|
|
42833
42874
|
);
|
|
@@ -42841,7 +42882,7 @@ function ChatCardLoader({
|
|
|
42841
42882
|
const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
|
|
42842
42883
|
const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
|
|
42843
42884
|
const { item, isLoading } = useChatCardItem(
|
|
42844
|
-
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess',
|
|
42885
|
+
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _957 => _957.contentRefType]), () => ( "")),
|
|
42845
42886
|
fetchEntry ? resolvedChatRef.id : ""
|
|
42846
42887
|
);
|
|
42847
42888
|
if (!entry) return null;
|
|
@@ -42872,7 +42913,7 @@ function ChatCardLoader({
|
|
|
42872
42913
|
isNewTab,
|
|
42873
42914
|
discuss
|
|
42874
42915
|
};
|
|
42875
|
-
const path = typeof _optionalChain([finalChatRef, 'access',
|
|
42916
|
+
const path = typeof _optionalChain([finalChatRef, 'access', _958 => _958.metadata, 'optionalAccess', _959 => _959.path]) === "string" ? finalChatRef.metadata.path : null;
|
|
42876
42917
|
const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42877
42918
|
ChatCardNavWrap,
|
|
42878
42919
|
{
|
|
@@ -43258,7 +43299,7 @@ function useJetStreamDialogSubscription({
|
|
|
43258
43299
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
43259
43300
|
conn: sharedConn,
|
|
43260
43301
|
wsUrl,
|
|
43261
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
43302
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _960 => _960.current, 'optionalCall', _961 => _961()]),
|
|
43262
43303
|
backoff: reconnectionBackoffRef.current,
|
|
43263
43304
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
43264
43305
|
// JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
|
|
@@ -43273,7 +43314,7 @@ function useJetStreamDialogSubscription({
|
|
|
43273
43314
|
setReconnectionCount((c) => c + 1);
|
|
43274
43315
|
}
|
|
43275
43316
|
hadConnectionBeforeRef.current = true;
|
|
43276
|
-
_optionalChain([onConnectRef, 'access',
|
|
43317
|
+
_optionalChain([onConnectRef, 'access', _962 => _962.current, 'optionalCall', _963 => _963()]);
|
|
43277
43318
|
}
|
|
43278
43319
|
if (status === "error") {
|
|
43279
43320
|
console.warn("[JetStream] NATS protocol error:", evt.data);
|
|
@@ -43283,7 +43324,7 @@ function useJetStreamDialogSubscription({
|
|
|
43283
43324
|
setIsConnected(false);
|
|
43284
43325
|
setIsSubscribed(false);
|
|
43285
43326
|
tearDownSubscription();
|
|
43286
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
43327
|
+
_optionalChain([onDisconnectRef, 'access', _964 => _964.current, 'optionalCall', _965 => _965()]);
|
|
43287
43328
|
}
|
|
43288
43329
|
}
|
|
43289
43330
|
});
|
|
@@ -43362,7 +43403,7 @@ function useJetStreamDialogSubscription({
|
|
|
43362
43403
|
}
|
|
43363
43404
|
subscriptionRef.current = handle;
|
|
43364
43405
|
setIsSubscribed(true);
|
|
43365
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
43406
|
+
_optionalChain([onSubscribedRef, 'access', _966 => _966.current, 'optionalCall', _967 => _967()]);
|
|
43366
43407
|
} catch (e44) {
|
|
43367
43408
|
if (!cancelled) {
|
|
43368
43409
|
setIsSubscribed(false);
|
|
@@ -43475,20 +43516,20 @@ function useNatsDialogSubscription({
|
|
|
43475
43516
|
const tearDownSubscriptions = () => {
|
|
43476
43517
|
subscriptionRefs.current.forEach((sub) => {
|
|
43477
43518
|
try {
|
|
43478
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43519
|
+
_optionalChain([sub, 'optionalAccess', _968 => _968.unsubscribe, 'call', _969 => _969()]);
|
|
43479
43520
|
} catch (e46) {
|
|
43480
43521
|
}
|
|
43481
43522
|
});
|
|
43482
43523
|
subscriptionRefs.current.clear();
|
|
43483
43524
|
lastSubscribedDialogIdRef.current = null;
|
|
43484
|
-
_optionalChain([abortControllerRef, 'access',
|
|
43525
|
+
_optionalChain([abortControllerRef, 'access', _970 => _970.current, 'optionalAccess', _971 => _971.abort, 'call', _972 => _972()]);
|
|
43485
43526
|
abortControllerRef.current = null;
|
|
43486
43527
|
};
|
|
43487
43528
|
const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
|
|
43488
43529
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
43489
43530
|
conn: sharedConn,
|
|
43490
43531
|
wsUrl,
|
|
43491
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
43532
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _973 => _973.current, 'optionalCall', _974 => _974()]),
|
|
43492
43533
|
backoff: reconnectionBackoffRef.current,
|
|
43493
43534
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
43494
43535
|
shouldRetryOn: isDisconnectStatus,
|
|
@@ -43499,7 +43540,7 @@ function useNatsDialogSubscription({
|
|
|
43499
43540
|
setReconnectionCount((c) => c + 1);
|
|
43500
43541
|
}
|
|
43501
43542
|
hadConnectionBeforeRef.current = true;
|
|
43502
|
-
_optionalChain([onConnectRef, 'access',
|
|
43543
|
+
_optionalChain([onConnectRef, 'access', _975 => _975.current, 'optionalCall', _976 => _976()]);
|
|
43503
43544
|
}
|
|
43504
43545
|
if (status === "error") {
|
|
43505
43546
|
console.warn("[NATS] protocol error:", evt.data);
|
|
@@ -43509,7 +43550,7 @@ function useNatsDialogSubscription({
|
|
|
43509
43550
|
setIsConnected(false);
|
|
43510
43551
|
setIsSubscribed(false);
|
|
43511
43552
|
tearDownSubscriptions();
|
|
43512
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
43553
|
+
_optionalChain([onDisconnectRef, 'access', _977 => _977.current, 'optionalCall', _978 => _978()]);
|
|
43513
43554
|
}
|
|
43514
43555
|
}
|
|
43515
43556
|
});
|
|
@@ -43540,13 +43581,13 @@ function useNatsDialogSubscription({
|
|
|
43540
43581
|
setIsSubscribed(false);
|
|
43541
43582
|
subscriptionRefs.current.forEach((sub) => {
|
|
43542
43583
|
try {
|
|
43543
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43584
|
+
_optionalChain([sub, 'optionalAccess', _979 => _979.unsubscribe, 'call', _980 => _980()]);
|
|
43544
43585
|
} catch (e47) {
|
|
43545
43586
|
}
|
|
43546
43587
|
});
|
|
43547
43588
|
subscriptionRefs.current.clear();
|
|
43548
43589
|
lastSubscribedDialogIdRef.current = null;
|
|
43549
|
-
_optionalChain([abortControllerRef, 'access',
|
|
43590
|
+
_optionalChain([abortControllerRef, 'access', _981 => _981.current, 'optionalAccess', _982 => _982.abort, 'call', _983 => _983()]);
|
|
43550
43591
|
abortControllerRef.current = null;
|
|
43551
43592
|
}
|
|
43552
43593
|
return;
|
|
@@ -43558,12 +43599,12 @@ function useNatsDialogSubscription({
|
|
|
43558
43599
|
if (subscriptionRefs.current.size > 0) {
|
|
43559
43600
|
subscriptionRefs.current.forEach((sub) => {
|
|
43560
43601
|
try {
|
|
43561
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43602
|
+
_optionalChain([sub, 'optionalAccess', _984 => _984.unsubscribe, 'call', _985 => _985()]);
|
|
43562
43603
|
} catch (e48) {
|
|
43563
43604
|
}
|
|
43564
43605
|
});
|
|
43565
43606
|
subscriptionRefs.current.clear();
|
|
43566
|
-
_optionalChain([abortControllerRef, 'access',
|
|
43607
|
+
_optionalChain([abortControllerRef, 'access', _986 => _986.current, 'optionalAccess', _987 => _987.abort, 'call', _988 => _988()]);
|
|
43567
43608
|
}
|
|
43568
43609
|
abortControllerRef.current = new AbortController();
|
|
43569
43610
|
const abort = abortControllerRef.current;
|
|
@@ -43595,7 +43636,7 @@ function useNatsDialogSubscription({
|
|
|
43595
43636
|
});
|
|
43596
43637
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
43597
43638
|
setIsSubscribed(true);
|
|
43598
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
43639
|
+
_optionalChain([onSubscribedRef, 'access', _989 => _989.current, 'optionalCall', _990 => _990()]);
|
|
43599
43640
|
};
|
|
43600
43641
|
if (isConnectedRef.current) {
|
|
43601
43642
|
createSubscriptions();
|
|
@@ -43605,7 +43646,7 @@ function useNatsDialogSubscription({
|
|
|
43605
43646
|
abort.abort();
|
|
43606
43647
|
subscriptionRefs.current.forEach((sub) => {
|
|
43607
43648
|
try {
|
|
43608
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43649
|
+
_optionalChain([sub, 'optionalAccess', _991 => _991.unsubscribe, 'call', _992 => _992()]);
|
|
43609
43650
|
} catch (e50) {
|
|
43610
43651
|
}
|
|
43611
43652
|
});
|
|
@@ -43646,7 +43687,7 @@ function useNatsDialogSubscription({
|
|
|
43646
43687
|
});
|
|
43647
43688
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
43648
43689
|
setIsSubscribed(true);
|
|
43649
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
43690
|
+
_optionalChain([onSubscribedRef, 'access', _993 => _993.current, 'optionalCall', _994 => _994()]);
|
|
43650
43691
|
} else if (subscriptionRefs.current.size > 0) {
|
|
43651
43692
|
setIsSubscribed(true);
|
|
43652
43693
|
}
|
|
@@ -43654,10 +43695,10 @@ function useNatsDialogSubscription({
|
|
|
43654
43695
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
43655
43696
|
}
|
|
43656
43697
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
43657
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
43698
|
+
const path = _optionalChain([options, 'optionalAccess', _995 => _995.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
43658
43699
|
const u = new URL(path, apiBaseUrl);
|
|
43659
43700
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
43660
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
43701
|
+
if (_optionalChain([options, 'optionalAccess', _996 => _996.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _997 => _997.token])) {
|
|
43661
43702
|
u.searchParams.set("authorization", options.token);
|
|
43662
43703
|
}
|
|
43663
43704
|
return u.toString();
|
|
@@ -43793,7 +43834,7 @@ function parseChunkToAction(chunk) {
|
|
|
43793
43834
|
// is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
|
|
43794
43835
|
// historical path in `process-historical-messages.ts`) — keeps both
|
|
43795
43836
|
// message sources producing an identical shape.
|
|
43796
|
-
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess',
|
|
43837
|
+
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _998 => _998.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _999 => _999.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
|
|
43797
43838
|
};
|
|
43798
43839
|
case MESSAGE_TYPE.TOKEN_USAGE:
|
|
43799
43840
|
return {
|
|
@@ -43985,8 +44026,8 @@ var MessageSegmentAccumulator = class {
|
|
|
43985
44026
|
type: "tool_execution",
|
|
43986
44027
|
data: {
|
|
43987
44028
|
...toolData,
|
|
43988
|
-
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
43989
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
44029
|
+
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1000 => _1000.data, 'access', _1001 => _1001.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1002 => _1002.toolTitle]))),
|
|
44030
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1003 => _1003.parameters])
|
|
43990
44031
|
}
|
|
43991
44032
|
};
|
|
43992
44033
|
if (existingIndex !== -1) {
|
|
@@ -44010,8 +44051,8 @@ var MessageSegmentAccumulator = class {
|
|
|
44010
44051
|
if (seg.type !== "approval_batch") return seg;
|
|
44011
44052
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
44012
44053
|
if (!hasCall) return seg;
|
|
44013
|
-
const prev = _optionalChain([seg, 'access',
|
|
44014
|
-
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess',
|
|
44054
|
+
const prev = _optionalChain([seg, 'access', _1004 => _1004.data, 'access', _1005 => _1005.executions, 'optionalAccess', _1006 => _1006[execId]]);
|
|
44055
|
+
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1007 => _1007.result]), success: _optionalChain([prev, 'optionalAccess', _1008 => _1008.success]) };
|
|
44015
44056
|
matched = true;
|
|
44016
44057
|
return {
|
|
44017
44058
|
...seg,
|
|
@@ -44133,10 +44174,10 @@ var MessageSegmentAccumulator = class {
|
|
|
44133
44174
|
const segment = {
|
|
44134
44175
|
type: "approval_request",
|
|
44135
44176
|
data: {
|
|
44136
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
44137
|
-
explanation: _optionalChain([pendingApproval, 'optionalAccess',
|
|
44177
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _1009 => _1009.command]) || "",
|
|
44178
|
+
explanation: _optionalChain([pendingApproval, 'optionalAccess', _1010 => _1010.explanation]),
|
|
44138
44179
|
requestId,
|
|
44139
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
44180
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1011 => _1011.approvalType]) || approvalType
|
|
44140
44181
|
},
|
|
44141
44182
|
status,
|
|
44142
44183
|
onApprove: this.callbacks.onApprove,
|
|
@@ -44328,7 +44369,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44328
44369
|
if (initialState.escalatedApprovals) {
|
|
44329
44370
|
pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
|
|
44330
44371
|
initialState.escalatedApprovals.forEach((data, requestId) => {
|
|
44331
|
-
_optionalChain([callbacks, 'access',
|
|
44372
|
+
_optionalChain([callbacks, 'access', _1012 => _1012.onEscalatedApproval, 'optionalCall', _1013 => _1013(requestId, data)]);
|
|
44332
44373
|
});
|
|
44333
44374
|
}
|
|
44334
44375
|
hasEverStreamedRef.current = true;
|
|
@@ -44349,12 +44390,12 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44349
44390
|
if (!action) return;
|
|
44350
44391
|
const accumulator = accumulatorRef.current;
|
|
44351
44392
|
const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
|
|
44352
|
-
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access',
|
|
44393
|
+
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1014 => _1014.onSegmentsUpdate, 'optionalCall', _1015 => _1015(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
|
|
44353
44394
|
if (action.action === "direct_message") sawDirectMessageRef.current = true;
|
|
44354
44395
|
if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
|
|
44355
44396
|
if (isInStreamRef.current) {
|
|
44356
44397
|
isInStreamRef.current = false;
|
|
44357
|
-
_optionalChain([callbacks, 'access',
|
|
44398
|
+
_optionalChain([callbacks, 'access', _1016 => _1016.onStreamEnd, 'optionalCall', _1017 => _1017()]);
|
|
44358
44399
|
accumulator.resetSegments();
|
|
44359
44400
|
}
|
|
44360
44401
|
return;
|
|
@@ -44363,16 +44404,16 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44363
44404
|
case "message_start":
|
|
44364
44405
|
isInStreamRef.current = true;
|
|
44365
44406
|
hasEverStreamedRef.current = true;
|
|
44366
|
-
_optionalChain([callbacks, 'access',
|
|
44407
|
+
_optionalChain([callbacks, 'access', _1018 => _1018.onStreamStart, 'optionalCall', _1019 => _1019()]);
|
|
44367
44408
|
accumulator.resetSegments();
|
|
44368
44409
|
break;
|
|
44369
44410
|
case "message_end":
|
|
44370
44411
|
isInStreamRef.current = false;
|
|
44371
|
-
_optionalChain([callbacks, 'access',
|
|
44412
|
+
_optionalChain([callbacks, 'access', _1020 => _1020.onStreamEnd, 'optionalCall', _1021 => _1021()]);
|
|
44372
44413
|
accumulator.resetSegments();
|
|
44373
44414
|
break;
|
|
44374
44415
|
case "metadata":
|
|
44375
|
-
_optionalChain([callbacks, 'access',
|
|
44416
|
+
_optionalChain([callbacks, 'access', _1022 => _1022.onMetadata, 'optionalCall', _1023 => _1023(action)]);
|
|
44376
44417
|
break;
|
|
44377
44418
|
case "text": {
|
|
44378
44419
|
const segments = accumulator.appendText(action.text);
|
|
@@ -44415,7 +44456,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44415
44456
|
emitSegments(segments);
|
|
44416
44457
|
} else {
|
|
44417
44458
|
pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
|
|
44418
|
-
_optionalChain([callbacks, 'access',
|
|
44459
|
+
_optionalChain([callbacks, 'access', _1024 => _1024.onEscalatedApproval, 'optionalCall', _1025 => _1025(requestId, { command, explanation, approvalType })]);
|
|
44419
44460
|
}
|
|
44420
44461
|
break;
|
|
44421
44462
|
}
|
|
@@ -44427,13 +44468,13 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44427
44468
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
44428
44469
|
pendingEscalatedRef.current.set(requestId, {
|
|
44429
44470
|
command: summary,
|
|
44430
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
44471
|
+
explanation: _optionalChain([required, 'optionalAccess', _1026 => _1026.toolExplanation]),
|
|
44431
44472
|
approvalType,
|
|
44432
44473
|
toolCalls
|
|
44433
44474
|
});
|
|
44434
|
-
_optionalChain([callbacks, 'access',
|
|
44475
|
+
_optionalChain([callbacks, 'access', _1027 => _1027.onEscalatedApproval, 'optionalCall', _1028 => _1028(requestId, {
|
|
44435
44476
|
command: summary,
|
|
44436
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
44477
|
+
explanation: _optionalChain([required, 'optionalAccess', _1029 => _1029.toolExplanation]),
|
|
44437
44478
|
approvalType
|
|
44438
44479
|
})]);
|
|
44439
44480
|
break;
|
|
@@ -44463,7 +44504,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44463
44504
|
const status = approved ? "approved" : "rejected";
|
|
44464
44505
|
if (escalatedData) {
|
|
44465
44506
|
pendingEscalatedRef.current.delete(requestId);
|
|
44466
|
-
_optionalChain([callbacks, 'access',
|
|
44507
|
+
_optionalChain([callbacks, 'access', _1030 => _1030.onEscalatedApprovalResult, 'optionalCall', _1031 => _1031(requestId, approved, {
|
|
44467
44508
|
command: escalatedData.command,
|
|
44468
44509
|
explanation: escalatedData.explanation,
|
|
44469
44510
|
approvalType: escalatedData.approvalType
|
|
@@ -44509,29 +44550,29 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44509
44550
|
emitSegments(accumulator.getSegments());
|
|
44510
44551
|
}
|
|
44511
44552
|
}
|
|
44512
|
-
_optionalChain([callbacks, 'access',
|
|
44553
|
+
_optionalChain([callbacks, 'access', _1032 => _1032.onApprovalResolved, 'optionalCall', _1033 => _1033(requestId, status, approvalType, resolvedByName)]);
|
|
44513
44554
|
break;
|
|
44514
44555
|
}
|
|
44515
44556
|
case "error": {
|
|
44516
44557
|
let message2;
|
|
44517
|
-
if ("details" in action && _optionalChain([action, 'optionalAccess',
|
|
44558
|
+
if ("details" in action && _optionalChain([action, 'optionalAccess', _1034 => _1034.details])) {
|
|
44518
44559
|
try {
|
|
44519
|
-
message2 = _optionalChain([JSON, 'access',
|
|
44560
|
+
message2 = _optionalChain([JSON, 'access', _1035 => _1035.parse, 'call', _1036 => _1036(action.details), 'optionalAccess', _1037 => _1037.error, 'optionalAccess', _1038 => _1038.message]);
|
|
44520
44561
|
} catch (e52) {
|
|
44521
44562
|
message2 = action.details;
|
|
44522
44563
|
}
|
|
44523
44564
|
}
|
|
44524
44565
|
const segments = accumulator.addError(action.error, message2);
|
|
44525
44566
|
emitSegments(segments);
|
|
44526
|
-
_optionalChain([callbacks, 'access',
|
|
44567
|
+
_optionalChain([callbacks, 'access', _1039 => _1039.onError, 'optionalCall', _1040 => _1040(action.error, message2)]);
|
|
44527
44568
|
break;
|
|
44528
44569
|
}
|
|
44529
44570
|
case "system": {
|
|
44530
|
-
_optionalChain([callbacks, 'access',
|
|
44571
|
+
_optionalChain([callbacks, 'access', _1041 => _1041.onSystemMessage, 'optionalCall', _1042 => _1042(action.text, { streamSeq })]);
|
|
44531
44572
|
break;
|
|
44532
44573
|
}
|
|
44533
44574
|
case "direct_message": {
|
|
44534
|
-
_optionalChain([callbacks, 'access',
|
|
44575
|
+
_optionalChain([callbacks, 'access', _1043 => _1043.onDirectMessage, 'optionalCall', _1044 => _1044(action.text, {
|
|
44535
44576
|
ownerType: action.ownerType,
|
|
44536
44577
|
displayName: action.displayName,
|
|
44537
44578
|
userId: action.userId,
|
|
@@ -44540,7 +44581,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44540
44581
|
break;
|
|
44541
44582
|
}
|
|
44542
44583
|
case "message_request":
|
|
44543
|
-
_optionalChain([callbacks, 'access',
|
|
44584
|
+
_optionalChain([callbacks, 'access', _1045 => _1045.onUserMessage, 'optionalCall', _1046 => _1046(action.text, {
|
|
44544
44585
|
ownerType: action.ownerType,
|
|
44545
44586
|
displayName: action.displayName,
|
|
44546
44587
|
userId: action.userId,
|
|
@@ -44549,7 +44590,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44549
44590
|
})]);
|
|
44550
44591
|
break;
|
|
44551
44592
|
case "token_usage":
|
|
44552
|
-
_optionalChain([callbacks, 'access',
|
|
44593
|
+
_optionalChain([callbacks, 'access', _1047 => _1047.onTokenUsage, 'optionalCall', _1048 => _1048(action.data)]);
|
|
44553
44594
|
break;
|
|
44554
44595
|
case "context_compaction_start": {
|
|
44555
44596
|
const standalone = !isInStreamRef.current;
|
|
@@ -44564,7 +44605,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44564
44605
|
break;
|
|
44565
44606
|
}
|
|
44566
44607
|
case "dialog_closed":
|
|
44567
|
-
_optionalChain([callbacks, 'access',
|
|
44608
|
+
_optionalChain([callbacks, 'access', _1049 => _1049.onDialogClosed, 'optionalCall', _1050 => _1050()]);
|
|
44568
44609
|
break;
|
|
44569
44610
|
default:
|
|
44570
44611
|
break;
|
|
@@ -44611,7 +44652,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
|
|
|
44611
44652
|
const data = await res.json();
|
|
44612
44653
|
return _nullishCoalesce(data.commands, () => ( []));
|
|
44613
44654
|
} catch (err) {
|
|
44614
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
44655
|
+
if (_optionalChain([err, 'optionalAccess', _1051 => _1051.name]) === "AbortError") throw err;
|
|
44615
44656
|
console.warn("[chat] slash-commands fetch failed, showing none:", err);
|
|
44616
44657
|
return [];
|
|
44617
44658
|
}
|
|
@@ -44632,7 +44673,7 @@ function useSlashCommands(prefix, commandsUrl) {
|
|
|
44632
44673
|
const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
|
|
44633
44674
|
if (!cancelled) setCommands(next);
|
|
44634
44675
|
} catch (err) {
|
|
44635
|
-
if (!cancelled && _optionalChain([err, 'optionalAccess',
|
|
44676
|
+
if (!cancelled && _optionalChain([err, 'optionalAccess', _1052 => _1052.name]) !== "AbortError") {
|
|
44636
44677
|
console.warn("[use-slash-commands] fetch failed:", err);
|
|
44637
44678
|
}
|
|
44638
44679
|
} finally {
|
|
@@ -44651,7 +44692,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
|
|
|
44651
44692
|
const query = _reactquery.useQuery.call(void 0, {
|
|
44652
44693
|
queryKey: ["chat-slash-commands", commandsUrl],
|
|
44653
44694
|
queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
|
|
44654
|
-
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
44695
|
+
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1053 => _1053.enabled]), () => ( true)),
|
|
44655
44696
|
staleTime: Infinity,
|
|
44656
44697
|
gcTime: Infinity,
|
|
44657
44698
|
// The commands registry is non-critical chrome — a failure degrades to an
|
|
@@ -44687,18 +44728,18 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
|
|
|
44687
44728
|
}
|
|
44688
44729
|
const data = await res.json();
|
|
44689
44730
|
return {
|
|
44690
|
-
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
44691
|
-
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
44692
|
-
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
44731
|
+
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1054 => _1054.greeting]), () => ( null)),
|
|
44732
|
+
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1055 => _1055.enabledRagTableIds]), () => ( [])),
|
|
44733
|
+
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1056 => _1056.suggestedQueries]), () => ( []))
|
|
44693
44734
|
};
|
|
44694
44735
|
} catch (err) {
|
|
44695
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
44736
|
+
if (_optionalChain([err, 'optionalAccess', _1057 => _1057.name]) === "AbortError") throw err;
|
|
44696
44737
|
console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
|
|
44697
44738
|
return EMPTY_STATE_FALLBACK;
|
|
44698
44739
|
}
|
|
44699
44740
|
}
|
|
44700
44741
|
function useEmptyStateConfig(emptyStateUrl, options) {
|
|
44701
|
-
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
44742
|
+
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1058 => _1058.enabled]), () => ( true))) && !!emptyStateUrl;
|
|
44702
44743
|
const query = _reactquery.useQuery.call(void 0, {
|
|
44703
44744
|
queryKey: ["chat-empty-state", emptyStateUrl],
|
|
44704
44745
|
queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
|
|
@@ -44727,7 +44768,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
|
|
|
44727
44768
|
var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
|
|
44728
44769
|
function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
44729
44770
|
return new Promise((resolve, reject) => {
|
|
44730
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
44771
|
+
if (_optionalChain([signal, 'optionalAccess', _1059 => _1059.aborted])) {
|
|
44731
44772
|
reject(new Error("Upload cancelled"));
|
|
44732
44773
|
return;
|
|
44733
44774
|
}
|
|
@@ -44741,7 +44782,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
44741
44782
|
xhr.removeEventListener("error", handleError);
|
|
44742
44783
|
xhr.removeEventListener("abort", handleAbort);
|
|
44743
44784
|
xhr.removeEventListener("timeout", handleTimeout);
|
|
44744
|
-
_optionalChain([signal, 'optionalAccess',
|
|
44785
|
+
_optionalChain([signal, 'optionalAccess', _1060 => _1060.removeEventListener, 'call', _1061 => _1061("abort", handleSignalAbort)]);
|
|
44745
44786
|
if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
|
|
44746
44787
|
};
|
|
44747
44788
|
const handleProgress = (event) => {
|
|
@@ -44777,7 +44818,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
44777
44818
|
const handleSignalAbort = () => {
|
|
44778
44819
|
xhr.abort();
|
|
44779
44820
|
};
|
|
44780
|
-
_optionalChain([signal, 'optionalAccess',
|
|
44821
|
+
_optionalChain([signal, 'optionalAccess', _1062 => _1062.addEventListener, 'call', _1063 => _1063("abort", handleSignalAbort, { once: true })]);
|
|
44781
44822
|
xhr.upload.addEventListener("progress", handleProgress);
|
|
44782
44823
|
xhr.addEventListener("load", handleLoad);
|
|
44783
44824
|
xhr.addEventListener("error", handleError);
|
|
@@ -44821,12 +44862,12 @@ function useChatAttachments() {
|
|
|
44821
44862
|
try {
|
|
44822
44863
|
sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
|
|
44823
44864
|
} catch (err) {
|
|
44824
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44865
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1064 => _1064.signal, 'access', _1065 => _1065.aborted])) return;
|
|
44825
44866
|
throw new Error(
|
|
44826
44867
|
`Could not read file content: ${err instanceof Error ? err.message : String(err)}`
|
|
44827
44868
|
);
|
|
44828
44869
|
}
|
|
44829
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44870
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1066 => _1066.signal, 'access', _1067 => _1067.aborted])) return;
|
|
44830
44871
|
if (!sniffed) {
|
|
44831
44872
|
throw new Error("Unrecognized file format");
|
|
44832
44873
|
}
|
|
@@ -44840,7 +44881,7 @@ function useChatAttachments() {
|
|
|
44840
44881
|
const urlResp = await _chunk27IO7V3Pcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
|
|
44841
44882
|
method: "POST",
|
|
44842
44883
|
headers: { "Content-Type": "application/json" },
|
|
44843
|
-
signal: _optionalChain([ctrl, 'optionalAccess',
|
|
44884
|
+
signal: _optionalChain([ctrl, 'optionalAccess', _1068 => _1068.signal]),
|
|
44844
44885
|
body: JSON.stringify({
|
|
44845
44886
|
fileName: att.file.name,
|
|
44846
44887
|
// Pass the SNIFFED MIME (not `file.type`, which can be a
|
|
@@ -44866,9 +44907,9 @@ function useChatAttachments() {
|
|
|
44866
44907
|
(pct) => {
|
|
44867
44908
|
updateOne(att.id, { progress: pct });
|
|
44868
44909
|
},
|
|
44869
|
-
_optionalChain([ctrl, 'optionalAccess',
|
|
44910
|
+
_optionalChain([ctrl, 'optionalAccess', _1069 => _1069.signal])
|
|
44870
44911
|
);
|
|
44871
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44912
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1070 => _1070.signal, 'access', _1071 => _1071.aborted])) return;
|
|
44872
44913
|
updateOne(att.id, {
|
|
44873
44914
|
status: "ready",
|
|
44874
44915
|
progress: 100,
|
|
@@ -44876,7 +44917,7 @@ function useChatAttachments() {
|
|
|
44876
44917
|
viewToken: mintData.viewToken
|
|
44877
44918
|
});
|
|
44878
44919
|
} catch (err) {
|
|
44879
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44920
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1072 => _1072.signal, 'access', _1073 => _1073.aborted])) return;
|
|
44880
44921
|
const message2 = err instanceof Error ? err.message : String(err);
|
|
44881
44922
|
updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
|
|
44882
44923
|
} finally {
|
|
@@ -45027,7 +45068,7 @@ var ANON_DEFAULTS = {
|
|
|
45027
45068
|
function useResolveChatIdentity(enabled) {
|
|
45028
45069
|
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
45029
45070
|
const url = runtime.endpoints.identityUrl;
|
|
45030
|
-
const proxyEmail = _nullishCoalesce(_optionalChain([_chunk27IO7V3Pcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess',
|
|
45071
|
+
const proxyEmail = _nullishCoalesce(_optionalChain([_chunk27IO7V3Pcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1074 => _1074.email]), () => ( null));
|
|
45031
45072
|
const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
|
|
45032
45073
|
const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
|
|
45033
45074
|
_react.useEffect.call(void 0, () => {
|
|
@@ -45118,7 +45159,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
|
|
|
45118
45159
|
yield chunk;
|
|
45119
45160
|
}
|
|
45120
45161
|
} catch (err) {
|
|
45121
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
45162
|
+
if (_optionalChain([err, 'optionalAccess', _1075 => _1075.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
45122
45163
|
return;
|
|
45123
45164
|
}
|
|
45124
45165
|
const errorMessage = err instanceof Error ? err.message : "An error occurred";
|
|
@@ -45169,7 +45210,7 @@ function useChat({
|
|
|
45169
45210
|
const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
|
|
45170
45211
|
onMessagesChangeRef.current = onMessagesChange;
|
|
45171
45212
|
_react.useEffect.call(void 0, () => {
|
|
45172
|
-
_optionalChain([onMessagesChangeRef, 'access',
|
|
45213
|
+
_optionalChain([onMessagesChangeRef, 'access', _1076 => _1076.current, 'optionalCall', _1077 => _1077(messages)]);
|
|
45173
45214
|
}, [messages]);
|
|
45174
45215
|
const {
|
|
45175
45216
|
streamMessage,
|
|
@@ -45206,7 +45247,7 @@ function useChat({
|
|
|
45206
45247
|
name: "You",
|
|
45207
45248
|
content: text,
|
|
45208
45249
|
timestamp: /* @__PURE__ */ new Date(),
|
|
45209
|
-
..._optionalChain([options, 'optionalAccess',
|
|
45250
|
+
..._optionalChain([options, 'optionalAccess', _1078 => _1078.hidden]) ? { hidden: true } : {}
|
|
45210
45251
|
};
|
|
45211
45252
|
addMessage(userMessage);
|
|
45212
45253
|
setIsTyping(true);
|
|
@@ -45268,7 +45309,7 @@ function useChat({
|
|
|
45268
45309
|
currentTextSegment = "";
|
|
45269
45310
|
}
|
|
45270
45311
|
const seg = segment;
|
|
45271
|
-
const proposalId = _optionalChain([seg, 'access',
|
|
45312
|
+
const proposalId = _optionalChain([seg, 'access', _1079 => _1079.data, 'optionalAccess', _1080 => _1080.requestId]);
|
|
45272
45313
|
const updateApprovalMessage = (transform) => {
|
|
45273
45314
|
setMessages((prev) => {
|
|
45274
45315
|
for (let i = prev.length - 1; i >= 0; i--) {
|
|
@@ -45277,7 +45318,7 @@ function useChat({
|
|
|
45277
45318
|
if (!Array.isArray(m.content)) continue;
|
|
45278
45319
|
const segments = m.content;
|
|
45279
45320
|
const hasMatch = segments.some(
|
|
45280
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
45321
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1081 => _1081.data, 'optionalAccess', _1082 => _1082.requestId]) === proposalId
|
|
45281
45322
|
);
|
|
45282
45323
|
if (!hasMatch) continue;
|
|
45283
45324
|
const next = [...prev];
|
|
@@ -45319,11 +45360,11 @@ function useChat({
|
|
|
45319
45360
|
if (!Array.isArray(m.content)) continue;
|
|
45320
45361
|
const segments = m.content;
|
|
45321
45362
|
const hasMatch = segments.some(
|
|
45322
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
45363
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1083 => _1083.data, 'optionalAccess', _1084 => _1084.requestId]) === decision.proposalId
|
|
45323
45364
|
);
|
|
45324
45365
|
if (!hasMatch) continue;
|
|
45325
45366
|
const flipped = segments.map(
|
|
45326
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
45367
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1085 => _1085.data, 'optionalAccess', _1086 => _1086.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
|
|
45327
45368
|
);
|
|
45328
45369
|
const next = [...prev];
|
|
45329
45370
|
next[i] = { ...m, content: flipped };
|
|
@@ -45485,8 +45526,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45485
45526
|
})),
|
|
45486
45527
|
{ role: "user", content: message2 }
|
|
45487
45528
|
];
|
|
45488
|
-
const targetPath = _optionalChain([extra, 'optionalAccess',
|
|
45489
|
-
const requestBody = _optionalChain([extra, 'optionalAccess',
|
|
45529
|
+
const targetPath = _optionalChain([extra, 'optionalAccess', _1087 => _1087.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
|
|
45530
|
+
const requestBody = _optionalChain([extra, 'optionalAccess', _1088 => _1088.approvalAction]) ? {
|
|
45490
45531
|
proposal_id: extra.approvalAction.proposalId,
|
|
45491
45532
|
action: extra.approvalAction.action,
|
|
45492
45533
|
messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
|
|
@@ -45495,8 +45536,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45495
45536
|
}))
|
|
45496
45537
|
} : {
|
|
45497
45538
|
messages: apiMessages,
|
|
45498
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
45499
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
45539
|
+
..._optionalChain([extra, 'optionalAccess', _1089 => _1089.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
|
|
45540
|
+
..._optionalChain([extra, 'optionalAccess', _1090 => _1090.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
|
|
45500
45541
|
};
|
|
45501
45542
|
const response = await _chunk27IO7V3Pcjs.embedAuthedFetch.call(void 0, targetPath, {
|
|
45502
45543
|
method: "POST",
|
|
@@ -45506,7 +45547,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45506
45547
|
if (!response.ok) {
|
|
45507
45548
|
throw new Error(`Chat request failed: ${response.status}`);
|
|
45508
45549
|
}
|
|
45509
|
-
const reader = _optionalChain([response, 'access',
|
|
45550
|
+
const reader = _optionalChain([response, 'access', _1091 => _1091.body, 'optionalAccess', _1092 => _1092.getReader, 'call', _1093 => _1093()]);
|
|
45510
45551
|
if (!reader) throw new Error("No response body");
|
|
45511
45552
|
const decoder = new TextDecoder();
|
|
45512
45553
|
let buffer = "";
|
|
@@ -45589,7 +45630,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45589
45630
|
const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
|
|
45590
45631
|
const result = _nullishCoalesce(meta.result, () => ( null));
|
|
45591
45632
|
const card = _nullishCoalesce(meta.card, () => ( null));
|
|
45592
|
-
if (_optionalChain([card, 'optionalAccess',
|
|
45633
|
+
if (_optionalChain([card, 'optionalAccess', _1094 => _1094.ref, 'optionalAccess', _1095 => _1095.id]) && _optionalChain([card, 'optionalAccess', _1096 => _1096.type])) {
|
|
45593
45634
|
const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
|
|
45594
45635
|
const key = buildChatRefKey(card.type, card.ref.id);
|
|
45595
45636
|
refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
|
|
@@ -45602,8 +45643,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45602
45643
|
willAutoContinue: meta.willAutoContinue === true,
|
|
45603
45644
|
...toolName ? { toolName } : {},
|
|
45604
45645
|
...result ? { result } : {},
|
|
45605
|
-
..._optionalChain([card, 'optionalAccess',
|
|
45606
|
-
..._optionalChain([card, 'optionalAccess',
|
|
45646
|
+
..._optionalChain([card, 'optionalAccess', _1097 => _1097.marker]) ? { marker: card.marker } : {},
|
|
45647
|
+
..._optionalChain([card, 'optionalAccess', _1098 => _1098.ref]) ? { cardRef: card.ref } : {},
|
|
45607
45648
|
...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
|
|
45608
45649
|
proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
|
|
45609
45650
|
};
|
|
@@ -45722,7 +45763,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
|
|
|
45722
45763
|
var chatStorageKey = (source) => {
|
|
45723
45764
|
const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
|
|
45724
45765
|
const auth = _chunk27IO7V3Pcjs.getEmbedProxyAuth.call(void 0, );
|
|
45725
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
45766
|
+
if (_optionalChain([auth, 'optionalAccess', _1099 => _1099.email])) {
|
|
45726
45767
|
return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
|
|
45727
45768
|
}
|
|
45728
45769
|
return base;
|
|
@@ -45777,7 +45818,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
45777
45818
|
const { active = true } = runtimeOptions;
|
|
45778
45819
|
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
45779
45820
|
const source = runtime.source || DEFAULT_CHAT_SOURCE;
|
|
45780
|
-
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
45821
|
+
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1100 => _1100.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
|
|
45781
45822
|
const persistedRef = _react.useRef.call(void 0, null);
|
|
45782
45823
|
if (persistedRef.current === null) {
|
|
45783
45824
|
pruneStaleChatStorage(source);
|
|
@@ -45882,7 +45923,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
45882
45923
|
const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
|
|
45883
45924
|
sources = sourcesMapRef.current.get(lookupIdx);
|
|
45884
45925
|
chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
|
|
45885
|
-
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access',
|
|
45926
|
+
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1101 => _1101.current, 'access', _1102 => _1102.get, 'call', _1103 => _1103(lookupIdx), 'optionalAccess', _1104 => _1104.scrollAnchor]), () => ( void 0));
|
|
45886
45927
|
}
|
|
45887
45928
|
return {
|
|
45888
45929
|
id: m.id,
|
|
@@ -45930,7 +45971,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
45930
45971
|
);
|
|
45931
45972
|
return;
|
|
45932
45973
|
}
|
|
45933
|
-
const refSlug = typeof _optionalChain([reference, 'access',
|
|
45974
|
+
const refSlug = typeof _optionalChain([reference, 'access', _1105 => _1105.metadata, 'optionalAccess', _1106 => _1106.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
|
|
45934
45975
|
const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
|
|
45935
45976
|
const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
45936
45977
|
const text = `/${cmdId} display "${escaped}"`;
|
|
@@ -46002,18 +46043,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
46002
46043
|
clearMessages,
|
|
46003
46044
|
streamingPhase,
|
|
46004
46045
|
/** Provider key for the lib's `<ModelDisplay>` icon. */
|
|
46005
|
-
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46006
|
-
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46007
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46046
|
+
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1107 => _1107.provider]), () => ( null)),
|
|
46047
|
+
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1108 => _1108.modelLabel]), () => ( null)),
|
|
46048
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1109 => _1109.contextWindowMaxTokens]), () => ( null)),
|
|
46008
46049
|
/** Input tokens (known after server's message_start frame; null until). */
|
|
46009
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46050
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1110 => _1110.inputTokens]), () => ( null)),
|
|
46010
46051
|
/** Output tokens (known only after server's trailing usage frame). */
|
|
46011
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46052
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1111 => _1111.outputTokens]), () => ( null)),
|
|
46012
46053
|
/** Cache hit % (read / total-input × 100). null during streaming. */
|
|
46013
|
-
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46054
|
+
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1112 => _1112.cacheHitRatePct]), () => ( null)),
|
|
46014
46055
|
/** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
|
|
46015
46056
|
* token counts). null until the trailing usage frame lands. */
|
|
46016
|
-
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46057
|
+
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1113 => _1113.breakdown]), () => ( null)),
|
|
46017
46058
|
// ─── Dialog management — stubs for v1 ────────────────────────────────
|
|
46018
46059
|
// Guide mode currently keeps its history in `localStorage` opaquely
|
|
46019
46060
|
// under the hood (`runtime.source` namespaced key). Surfacing that
|
|
@@ -46071,15 +46112,15 @@ var noopRejectRequest = async (_id, _reason) => {
|
|
|
46071
46112
|
|
|
46072
46113
|
// src/components/chat/utils/process-historical-messages.ts
|
|
46073
46114
|
function getOwnerDisplayName(owner) {
|
|
46074
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
46115
|
+
if (_optionalChain([owner, 'optionalAccess', _1114 => _1114.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
46075
46116
|
const { firstName, lastName } = owner.user;
|
|
46076
46117
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
46077
46118
|
if (name) return name;
|
|
46078
46119
|
}
|
|
46079
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
46120
|
+
return _optionalChain([owner, 'optionalAccess', _1115 => _1115.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
46080
46121
|
}
|
|
46081
46122
|
function getOwnerAvatar(owner) {
|
|
46082
|
-
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess',
|
|
46123
|
+
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1116 => _1116.user, 'optionalAccess', _1117 => _1117.image, 'optionalAccess', _1118 => _1118.imageUrl]), () => ( void 0));
|
|
46083
46124
|
}
|
|
46084
46125
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
46085
46126
|
messageDataArray.forEach((data) => {
|
|
@@ -46142,14 +46183,14 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
46142
46183
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
46143
46184
|
return;
|
|
46144
46185
|
}
|
|
46145
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
46186
|
+
const isUserMessage = _optionalChain([msg, 'access', _1119 => _1119.owner, 'optionalAccess', _1120 => _1120.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1121 => _1121.owner, 'optionalAccess', _1122 => _1122.type]) === OWNER_TYPE.ADMIN;
|
|
46146
46187
|
if (isUserMessage) {
|
|
46147
46188
|
flushAssistantMessage();
|
|
46148
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
46189
|
+
const userAuthorType = _optionalChain([msg, 'access', _1123 => _1123.owner, 'optionalAccess', _1124 => _1124.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
46149
46190
|
messageDataArray.forEach((data) => {
|
|
46150
46191
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
46151
46192
|
const rawContext = data.contextItems;
|
|
46152
|
-
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess',
|
|
46193
|
+
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1125 => _1125.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1126 => _1126.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
|
|
46153
46194
|
processedMessages.push({
|
|
46154
46195
|
id: msg.id,
|
|
46155
46196
|
role: "user",
|
|
@@ -46173,7 +46214,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
46173
46214
|
});
|
|
46174
46215
|
const nextMsg = messages[index + 1];
|
|
46175
46216
|
const isLastMessage = index === messages.length - 1;
|
|
46176
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
46217
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1127 => _1127.owner, 'optionalAccess', _1128 => _1128.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1129 => _1129.owner, 'optionalAccess', _1130 => _1130.type]) === OWNER_TYPE.ADMIN);
|
|
46177
46218
|
if (isLastMessage || nextIsFromUser) {
|
|
46178
46219
|
flushAssistantMessage();
|
|
46179
46220
|
}
|
|
@@ -46283,7 +46324,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46283
46324
|
}
|
|
46284
46325
|
}
|
|
46285
46326
|
} else {
|
|
46286
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46327
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1131 => _1131.set, 'call', _1132 => _1132(data.approvalRequestId, {
|
|
46287
46328
|
command: data.command || "",
|
|
46288
46329
|
explanation: data.explanation,
|
|
46289
46330
|
approvalType,
|
|
@@ -46297,8 +46338,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46297
46338
|
const existingStatus = approvalStatuses[data.approvalRequestId];
|
|
46298
46339
|
const status = existingStatus || (data.approved ? "approved" : "rejected");
|
|
46299
46340
|
const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
|
|
46300
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46301
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
46341
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1133 => _1133.get, 'call', _1134 => _1134(data.approvalRequestId)]);
|
|
46342
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _1135 => _1135.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
46302
46343
|
if (batchApprovalsEnabled) {
|
|
46303
46344
|
accumulator.addApprovalBatch(
|
|
46304
46345
|
data.approvalRequestId,
|
|
@@ -46320,7 +46361,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46320
46361
|
);
|
|
46321
46362
|
}
|
|
46322
46363
|
}
|
|
46323
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46364
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1136 => _1136.delete, 'call', _1137 => _1137(data.approvalRequestId)]);
|
|
46324
46365
|
break;
|
|
46325
46366
|
}
|
|
46326
46367
|
if (escalatedData) {
|
|
@@ -46329,7 +46370,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46329
46370
|
explanation: escalatedData.explanation,
|
|
46330
46371
|
approvalType: escalatedData.approvalType
|
|
46331
46372
|
});
|
|
46332
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46373
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1138 => _1138.delete, 'call', _1139 => _1139(data.approvalRequestId)]);
|
|
46333
46374
|
}
|
|
46334
46375
|
const before = accumulator.getSegments();
|
|
46335
46376
|
const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
|
|
@@ -46345,9 +46386,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46345
46386
|
case MESSAGE_TYPE.ERROR:
|
|
46346
46387
|
if ("error" in data) {
|
|
46347
46388
|
let message2;
|
|
46348
|
-
if ("details" in data && _optionalChain([data, 'optionalAccess',
|
|
46389
|
+
if ("details" in data && _optionalChain([data, 'optionalAccess', _1140 => _1140.details])) {
|
|
46349
46390
|
try {
|
|
46350
|
-
message2 = _optionalChain([JSON, 'access',
|
|
46391
|
+
message2 = _optionalChain([JSON, 'access', _1141 => _1141.parse, 'call', _1142 => _1142(data.details), 'optionalAccess', _1143 => _1143.error, 'optionalAccess', _1144 => _1144.message]);
|
|
46351
46392
|
} catch (e59) {
|
|
46352
46393
|
message2 = data.details;
|
|
46353
46394
|
}
|
|
@@ -46430,14 +46471,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
46430
46471
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
46431
46472
|
return;
|
|
46432
46473
|
}
|
|
46433
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
46474
|
+
const isUserMessage = _optionalChain([msg, 'access', _1145 => _1145.owner, 'optionalAccess', _1146 => _1146.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1147 => _1147.owner, 'optionalAccess', _1148 => _1148.type]) === OWNER_TYPE.ADMIN;
|
|
46434
46475
|
if (isUserMessage) {
|
|
46435
46476
|
flushAssistantMessage();
|
|
46436
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
46477
|
+
const userAuthorType = _optionalChain([msg, 'access', _1149 => _1149.owner, 'optionalAccess', _1150 => _1150.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
46437
46478
|
messageDataArray.forEach((data) => {
|
|
46438
46479
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
46439
46480
|
const rawContext = data.contextItems;
|
|
46440
|
-
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess',
|
|
46481
|
+
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1151 => _1151.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1152 => _1152.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
|
|
46441
46482
|
processedMessages.push({
|
|
46442
46483
|
id: msg.id,
|
|
46443
46484
|
role: "user",
|
|
@@ -46461,7 +46502,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
46461
46502
|
});
|
|
46462
46503
|
const nextMsg = messages[index + 1];
|
|
46463
46504
|
const isLastMessage = index === messages.length - 1;
|
|
46464
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
46505
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1153 => _1153.owner, 'optionalAccess', _1154 => _1154.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1155 => _1155.owner, 'optionalAccess', _1156 => _1156.type]) === OWNER_TYPE.ADMIN);
|
|
46465
46506
|
if (isLastMessage || nextIsFromUser) {
|
|
46466
46507
|
flushAssistantMessage();
|
|
46467
46508
|
}
|
|
@@ -46797,7 +46838,7 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
46797
46838
|
}, [active, fetchDialogs, loadDialogsPage]);
|
|
46798
46839
|
const sendMessage = _react.useCallback.call(void 0,
|
|
46799
46840
|
async (text, sendOptions) => {
|
|
46800
|
-
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess',
|
|
46841
|
+
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1157 => _1157.hidden]), () => ( false));
|
|
46801
46842
|
setMessages((prev) => [
|
|
46802
46843
|
...prev,
|
|
46803
46844
|
{
|
|
@@ -46961,11 +47002,11 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
46961
47002
|
// Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
|
|
46962
47003
|
// contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
|
|
46963
47004
|
// matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
|
|
46964
|
-
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
46965
|
-
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
46966
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
46967
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
46968
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
47005
|
+
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1158 => _1158.provider]), () => ( modelProvider)), () => ( null)),
|
|
47006
|
+
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1159 => _1159.modelLabel]), () => ( modelLabel)), () => ( null)),
|
|
47007
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1160 => _1160.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1161 => _1161.contextWindowMaxTokens]))), () => ( null)),
|
|
47008
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1162 => _1162.inputTokensSize]), () => ( null)),
|
|
47009
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1163 => _1163.outputTokensSize]), () => ( null)),
|
|
46969
47010
|
currentCacheHitRatePct: null,
|
|
46970
47011
|
currentUsageBreakdown: null,
|
|
46971
47012
|
// Dialog management
|
|
@@ -47213,7 +47254,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
47213
47254
|
break;
|
|
47214
47255
|
case "approval_batch": {
|
|
47215
47256
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
47216
|
-
(c) => _optionalChain([segment, 'access',
|
|
47257
|
+
(c) => _optionalChain([segment, 'access', _1164 => _1164.data, 'access', _1165 => _1165.executions, 'optionalAccess', _1166 => _1166[c.toolExecutionRequestId], 'optionalAccess', _1167 => _1167.status]) === "done"
|
|
47217
47258
|
);
|
|
47218
47259
|
if (segment.status !== "rejected" && !allDone) {
|
|
47219
47260
|
hasIncompleteState = true;
|
|
@@ -47281,20 +47322,20 @@ function mergeHistoryWithRealtime(input) {
|
|
|
47281
47322
|
const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
|
|
47282
47323
|
const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
|
|
47283
47324
|
const trailing = processedHistory[processedHistory.length - 1];
|
|
47284
|
-
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess',
|
|
47285
|
-
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access',
|
|
47325
|
+
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1168 => _1168.role]) === "assistant" ? trailing : null;
|
|
47326
|
+
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1169 => _1169.content, 'access', _1170 => _1170.find, 'call', _1171 => _1171((s) => s.type === "approval_batch"), 'optionalAccess', _1172 => _1172.data, 'optionalAccess', _1173 => _1173.approvalRequestId]), () => ( null)) : null;
|
|
47286
47327
|
let processedToUse = processedHistory;
|
|
47287
47328
|
const pinnedSyntheticIds = /* @__PURE__ */ new Set();
|
|
47288
47329
|
const droppedSyntheticIds = /* @__PURE__ */ new Set();
|
|
47289
47330
|
if (historyBatchId) {
|
|
47290
47331
|
const batchTwins = existingMessages.filter(
|
|
47291
47332
|
(m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
|
|
47292
|
-
(s) => s.type === "approval_batch" && _optionalChain([s, 'access',
|
|
47333
|
+
(s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1174 => _1174.data, 'optionalAccess', _1175 => _1175.approvalRequestId]) === historyBatchId
|
|
47293
47334
|
)
|
|
47294
47335
|
);
|
|
47295
47336
|
const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
|
|
47296
47337
|
if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
|
|
47297
|
-
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess',
|
|
47338
|
+
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1176 => _1176.content])) ? historyTrailingAssistant.content.length : 0;
|
|
47298
47339
|
const realtimeSize = existingWithSameBatch.content.length;
|
|
47299
47340
|
if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
|
|
47300
47341
|
processedToUse = processedHistory.slice(0, -1);
|
|
@@ -47310,16 +47351,16 @@ function mergeHistoryWithRealtime(input) {
|
|
|
47310
47351
|
if (pinnedSyntheticIds.has(m.id)) return true;
|
|
47311
47352
|
if (droppedSyntheticIds.has(m.id)) return false;
|
|
47312
47353
|
if (processedIds.has(m.id)) return false;
|
|
47313
|
-
if (_optionalChain([rawHistoryIds, 'optionalAccess',
|
|
47354
|
+
if (_optionalChain([rawHistoryIds, 'optionalAccess', _1177 => _1177.has, 'call', _1178 => _1178(m.id)])) return false;
|
|
47314
47355
|
if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
|
|
47315
|
-
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access',
|
|
47356
|
+
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1179 => _1179.timestamp, 'optionalAccess', _1180 => _1180.getTime, 'call', _1181 => _1181()]), () => ( 0))) <= historyFetchedAt;
|
|
47316
47357
|
return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
|
|
47317
47358
|
}
|
|
47318
47359
|
if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
|
|
47319
47360
|
if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
|
|
47320
47361
|
return false;
|
|
47321
47362
|
}
|
|
47322
|
-
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access',
|
|
47363
|
+
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1182 => _1182.timestamp, 'optionalAccess', _1183 => _1183.getTime, 'call', _1184 => _1184()]), () => ( 0))) <= historyFetchedAt;
|
|
47323
47364
|
if (covered) return false;
|
|
47324
47365
|
}
|
|
47325
47366
|
return true;
|
|
@@ -47539,7 +47580,7 @@ function useChatDialogManager({
|
|
|
47539
47580
|
const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
|
|
47540
47581
|
if (restoreTarget) {
|
|
47541
47582
|
try {
|
|
47542
|
-
await _optionalChain([unarchiveDialog, 'optionalCall',
|
|
47583
|
+
await _optionalChain([unarchiveDialog, 'optionalCall', _1185 => _1185(restoreTarget.id)]);
|
|
47543
47584
|
} catch (err) {
|
|
47544
47585
|
console.error("[useChatDialogManager] unarchive failed:", err);
|
|
47545
47586
|
return;
|
|
@@ -47948,7 +47989,7 @@ function EmbeddableChatInner({
|
|
|
47948
47989
|
}),
|
|
47949
47990
|
[commandsUrl]
|
|
47950
47991
|
);
|
|
47951
|
-
const userName = _optionalChain([identityUser, 'optionalAccess',
|
|
47992
|
+
const userName = _optionalChain([identityUser, 'optionalAccess', _1186 => _1186.firstName, 'optionalAccess', _1187 => _1187.trim, 'call', _1188 => _1188()]) || _optionalChain([identityUser, 'optionalAccess', _1189 => _1189.name, 'optionalAccess', _1190 => _1190.split, 'call', _1191 => _1191(" "), 'access', _1192 => _1192[0], 'optionalAccess', _1193 => _1193.trim, 'call', _1194 => _1194()]) || void 0;
|
|
47952
47993
|
const effectiveModes = _react.useMemo.call(void 0, () => {
|
|
47953
47994
|
if (modes) return modes;
|
|
47954
47995
|
const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
|
|
@@ -47957,17 +47998,21 @@ function EmbeddableChatInner({
|
|
|
47957
47998
|
const mingoCaps = _react.useMemo.call(void 0, () => {
|
|
47958
47999
|
if (mingoState) {
|
|
47959
48000
|
return {
|
|
47960
|
-
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
47961
|
-
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
47962
|
-
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
47963
|
-
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
48001
|
+
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1195 => _1195.canRename]), () => ( false)),
|
|
48002
|
+
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1196 => _1196.canArchive]), () => ( false)),
|
|
48003
|
+
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1197 => _1197.fetchArchivedDialogs]),
|
|
48004
|
+
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1198 => _1198.unarchiveDialog]),
|
|
48005
|
+
searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1199 => _1199.searchQuery]),
|
|
48006
|
+
onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1200 => _1200.onSearchChange])
|
|
47964
48007
|
};
|
|
47965
48008
|
}
|
|
47966
48009
|
return {
|
|
47967
|
-
canRename: !!_optionalChain([effectiveModes, 'access',
|
|
47968
|
-
canArchive: !!_optionalChain([effectiveModes, 'access',
|
|
47969
|
-
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access',
|
|
47970
|
-
unarchiveDialog: _optionalChain([effectiveModes, 'access',
|
|
48010
|
+
canRename: !!_optionalChain([effectiveModes, 'access', _1201 => _1201.mingo, 'optionalAccess', _1202 => _1202.renameDialog]),
|
|
48011
|
+
canArchive: !!_optionalChain([effectiveModes, 'access', _1203 => _1203.mingo, 'optionalAccess', _1204 => _1204.archiveDialog]),
|
|
48012
|
+
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1205 => _1205.mingo, 'optionalAccess', _1206 => _1206.fetchArchivedDialogs]),
|
|
48013
|
+
unarchiveDialog: _optionalChain([effectiveModes, 'access', _1207 => _1207.mingo, 'optionalAccess', _1208 => _1208.unarchiveDialog]),
|
|
48014
|
+
searchQuery: void 0,
|
|
48015
|
+
onSearchChange: void 0
|
|
47971
48016
|
};
|
|
47972
48017
|
}, [mingoState, mingoDialogCapabilities, effectiveModes]);
|
|
47973
48018
|
const hasMingoMode = !!effectiveModes.mingo || !!mingoState;
|
|
@@ -47979,7 +48024,7 @@ function EmbeddableChatInner({
|
|
|
47979
48024
|
if (controlledActiveMode === void 0) {
|
|
47980
48025
|
setUncontrolledActiveMode(next);
|
|
47981
48026
|
}
|
|
47982
|
-
_optionalChain([onActiveModeChange, 'optionalCall',
|
|
48027
|
+
_optionalChain([onActiveModeChange, 'optionalCall', _1209 => _1209(next)]);
|
|
47983
48028
|
},
|
|
47984
48029
|
[controlledActiveMode, onActiveModeChange]
|
|
47985
48030
|
);
|
|
@@ -48033,7 +48078,7 @@ function EmbeddableChatInner({
|
|
|
48033
48078
|
clear: clearAttachments
|
|
48034
48079
|
} = useChatAttachments();
|
|
48035
48080
|
const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
|
|
48036
|
-
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
48081
|
+
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1210 => _1210.maxItems]), () => ( 10));
|
|
48037
48082
|
const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
|
|
48038
48083
|
const [contextItems, setContextItems] = _react.useState.call(void 0, []);
|
|
48039
48084
|
const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
|
|
@@ -48050,10 +48095,10 @@ function EmbeddableChatInner({
|
|
|
48050
48095
|
}, [activeDialogId, activeMode]);
|
|
48051
48096
|
const mentionMarkerByType = _react.useMemo.call(void 0, () => {
|
|
48052
48097
|
const m = /* @__PURE__ */ new Map();
|
|
48053
|
-
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
48098
|
+
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1211 => _1211.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
|
|
48054
48099
|
return m;
|
|
48055
|
-
}, [_optionalChain([contextPicker, 'optionalAccess',
|
|
48056
|
-
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess',
|
|
48100
|
+
}, [_optionalChain([contextPicker, 'optionalAccess', _1212 => _1212.entityTypes])]);
|
|
48101
|
+
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1213 => _1213.entityTypes]);
|
|
48057
48102
|
const resolveContextIcon = _react.useMemo.call(void 0, () => {
|
|
48058
48103
|
const byType = /* @__PURE__ */ new Map();
|
|
48059
48104
|
for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
|
|
@@ -48065,7 +48110,7 @@ function EmbeddableChatInner({
|
|
|
48065
48110
|
if (mentionActiveRef.current) {
|
|
48066
48111
|
if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
|
|
48067
48112
|
if (contextItems.length >= contextMaxItems) return;
|
|
48068
|
-
_optionalChain([chatInputRef, 'access',
|
|
48113
|
+
_optionalChain([chatInputRef, 'access', _1214 => _1214.current, 'optionalAccess', _1215 => _1215.commitMention, 'call', _1216 => _1216(mentionTokenOf(key, mentionMarkerByType), {
|
|
48069
48114
|
label: item.label,
|
|
48070
48115
|
icon: resolveContextIcon(item)
|
|
48071
48116
|
})]);
|
|
@@ -48087,9 +48132,9 @@ function EmbeddableChatInner({
|
|
|
48087
48132
|
setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
|
|
48088
48133
|
if (mentionKeysRef.current.has(key)) {
|
|
48089
48134
|
mentionKeysRef.current.delete(key);
|
|
48090
|
-
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access',
|
|
48135
|
+
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1217 => _1217.current, 'optionalAccess', _1218 => _1218.getValue, 'call', _1219 => _1219()]), () => ( ""));
|
|
48091
48136
|
const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
|
|
48092
|
-
_optionalChain([chatInputRef, 'access',
|
|
48137
|
+
_optionalChain([chatInputRef, 'access', _1220 => _1220.current, 'optionalAccess', _1221 => _1221.setValue, 'call', _1222 => _1222(next)]);
|
|
48093
48138
|
}
|
|
48094
48139
|
}, [mentionMarkerByType]);
|
|
48095
48140
|
const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
|
|
@@ -48106,7 +48151,7 @@ function EmbeddableChatInner({
|
|
|
48106
48151
|
}, []);
|
|
48107
48152
|
const closeContextPicker = _react.useCallback.call(void 0, () => {
|
|
48108
48153
|
if (mentionActiveRef.current) {
|
|
48109
|
-
_optionalChain([chatInputRef, 'access',
|
|
48154
|
+
_optionalChain([chatInputRef, 'access', _1223 => _1223.current, 'optionalAccess', _1224 => _1224.removeMentionTrigger, 'call', _1225 => _1225()]);
|
|
48110
48155
|
}
|
|
48111
48156
|
setContextPickerOpen(false);
|
|
48112
48157
|
setMentionQuery(null);
|
|
@@ -48140,8 +48185,8 @@ function EmbeddableChatInner({
|
|
|
48140
48185
|
[]
|
|
48141
48186
|
);
|
|
48142
48187
|
const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
|
|
48143
|
-
const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess',
|
|
48144
|
-
const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess',
|
|
48188
|
+
const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1226 => _1226.firstName]), _optionalChain([identityUser, 'optionalAccess', _1227 => _1227.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1228 => _1228.name, 'optionalAccess', _1229 => _1229.trim, 'call', _1230 => _1230()]) || void 0 : void 0;
|
|
48189
|
+
const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1231 => _1231.avatarUrl, 'optionalAccess', _1232 => _1232.trim, 'call', _1233 => _1233()]) || void 0 : void 0;
|
|
48145
48190
|
const messages = _react.useMemo.call(void 0, () => {
|
|
48146
48191
|
const cache = timestampCacheRef.current;
|
|
48147
48192
|
const seenIds = /* @__PURE__ */ new Set();
|
|
@@ -48289,9 +48334,9 @@ function EmbeddableChatInner({
|
|
|
48289
48334
|
const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
|
|
48290
48335
|
const lastSources = _react.useMemo.call(void 0, () => {
|
|
48291
48336
|
if (chatLoading) return void 0;
|
|
48292
|
-
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
48337
|
+
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1234 => _1234.sources]);
|
|
48293
48338
|
if (!sources || sources.length === 0) return void 0;
|
|
48294
|
-
const content = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
48339
|
+
const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1235 => _1235.content]) || "";
|
|
48295
48340
|
const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
|
|
48296
48341
|
(m) => parseInt(m[1], 10)
|
|
48297
48342
|
);
|
|
@@ -48338,7 +48383,7 @@ function EmbeddableChatInner({
|
|
|
48338
48383
|
ChatPanelHeader,
|
|
48339
48384
|
{
|
|
48340
48385
|
showBack: hasConversation || guideCanReturnToMingo,
|
|
48341
|
-
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
48386
|
+
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1236 => _1236.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
|
|
48342
48387
|
backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
|
|
48343
48388
|
isArchivedView: isViewingArchived,
|
|
48344
48389
|
onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
|
|
@@ -48420,20 +48465,30 @@ function EmbeddableChatInner({
|
|
|
48420
48465
|
isLoadingHistory: dialogsInitialLoading,
|
|
48421
48466
|
loadError: dialogsLoadError,
|
|
48422
48467
|
onRetry: reloadDialogs,
|
|
48423
|
-
|
|
48424
|
-
|
|
48425
|
-
|
|
48426
|
-
|
|
48427
|
-
|
|
48428
|
-
|
|
48429
|
-
|
|
48430
|
-
|
|
48431
|
-
|
|
48432
|
-
|
|
48433
|
-
|
|
48468
|
+
historySearchable: !!mingoCaps.onSearchChange,
|
|
48469
|
+
dialogHistory: (
|
|
48470
|
+
// Keep the history (and its search bar) mounted during an
|
|
48471
|
+
// active search even at 0 results — otherwise a no-match
|
|
48472
|
+
// query would unmount the bar and flash the new-user
|
|
48473
|
+
// greeting. `MingoWelcome` renders `dialogHistory` with top
|
|
48474
|
+
// priority, so this wins over the greeting.
|
|
48475
|
+
dialogs.length > 0 || !!mingoCaps.searchQuery ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
48476
|
+
MingoChatHistory,
|
|
48477
|
+
{
|
|
48478
|
+
dialogs,
|
|
48479
|
+
onSelectDialog: handleSelectDialog,
|
|
48480
|
+
onRequestRename: mingoCaps.canRename ? setRenameTarget : void 0,
|
|
48481
|
+
onRequestArchive: mingoCaps.canArchive ? setArchiveTarget : void 0,
|
|
48482
|
+
searchQuery: mingoCaps.searchQuery,
|
|
48483
|
+
onSearchChange: mingoCaps.onSearchChange,
|
|
48484
|
+
hasMore: hasMoreDialogs,
|
|
48485
|
+
isLoadingMore: isDialogsLoading && dialogs.length > 0,
|
|
48486
|
+
onLoadMore: () => {
|
|
48487
|
+
void loadMoreDialogs();
|
|
48488
|
+
}
|
|
48434
48489
|
}
|
|
48435
|
-
|
|
48436
|
-
)
|
|
48490
|
+
) : void 0
|
|
48491
|
+
)
|
|
48437
48492
|
}
|
|
48438
48493
|
)
|
|
48439
48494
|
) : (
|
|
@@ -48446,7 +48501,7 @@ function EmbeddableChatInner({
|
|
|
48446
48501
|
subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
|
|
48447
48502
|
subtitleLoading: emptyStateLoading,
|
|
48448
48503
|
...guideWelcome,
|
|
48449
|
-
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess',
|
|
48504
|
+
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1237 => _1237.quickActions]), () => ( guideSuggestedActions)),
|
|
48450
48505
|
onQuickAction: (action) => {
|
|
48451
48506
|
handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
|
|
48452
48507
|
},
|
|
@@ -49516,4 +49571,4 @@ function EmbeddableChatInner({
|
|
|
49516
49571
|
|
|
49517
49572
|
|
|
49518
49573
|
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.Progress = Progress; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.SquareAvatar = SquareAvatar; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ONBOARDING_ICONS = ONBOARDING_ICONS; exports.resolveOnboardingIcon = resolveOnboardingIcon; exports.ONBOARDING_ICON_OPTIONS = ONBOARDING_ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
|
|
49519
|
-
//# sourceMappingURL=chunk-
|
|
49574
|
+
//# sourceMappingURL=chunk-UFUOM6ZT.cjs.map
|