@flamingo-stack/openframe-frontend-core 0.0.243 → 0.0.244
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-MKVKVJQQ.js → chunk-APGMNHPY.js} +19 -32
- package/dist/chunk-APGMNHPY.js.map +1 -0
- package/dist/{chunk-3TDLFCCS.cjs → chunk-DV3YZWGN.cjs} +20 -33
- package/dist/chunk-DV3YZWGN.cjs.map +1 -0
- package/dist/{chunk-BKPS6M2F.cjs → chunk-EJ7J4QAD.cjs} +12 -12
- package/dist/{chunk-BKPS6M2F.cjs.map → chunk-EJ7J4QAD.cjs.map} +1 -1
- package/dist/{chunk-CZITXP77.cjs → chunk-EPXROXYC.cjs} +713 -645
- package/dist/chunk-EPXROXYC.cjs.map +1 -0
- package/dist/{chunk-SGJBUL2Y.cjs → chunk-FSS2MIEA.cjs} +3 -20
- package/dist/chunk-FSS2MIEA.cjs.map +1 -0
- package/dist/{chunk-VAUI3CND.js → chunk-LJGBFD52.js} +1 -18
- package/dist/chunk-LJGBFD52.js.map +1 -0
- package/dist/{chunk-FRRMXLU5.js → chunk-M7DPUWAL.js} +188 -120
- package/dist/chunk-M7DPUWAL.js.map +1 -0
- package/dist/{chunk-SEVJT2HP.js → chunk-NKGNRFSS.js} +8 -8
- package/dist/{chunk-VFKQMAUF.cjs → chunk-OB45JHDY.cjs} +3 -3
- package/dist/{chunk-VFKQMAUF.cjs.map → chunk-OB45JHDY.cjs.map} +1 -1
- package/dist/{chunk-4XLJWX2N.js → chunk-ORJREQ2W.js} +4 -4
- package/dist/{chunk-7ZHFCEJH.js → chunk-P5C732SC.js} +6 -6
- package/dist/{chunk-JJV3XGCY.js → chunk-PTSAF7T2.js} +2 -2
- package/dist/{chunk-VXP553WT.cjs → chunk-RJC3L5DT.cjs} +7 -7
- package/dist/{chunk-VXP553WT.cjs.map → chunk-RJC3L5DT.cjs.map} +1 -1
- package/dist/{chunk-MP5HOP7N.cjs → chunk-STKMIMLP.cjs} +12 -12
- package/dist/{chunk-MP5HOP7N.cjs.map → chunk-STKMIMLP.cjs.map} +1 -1
- package/dist/{chunk-V35PZSUA.js → chunk-WD2MZVJI.js} +5 -5
- package/dist/{chunk-DUZBTUXF.cjs → chunk-Z6GGYZDR.cjs} +27 -27
- package/dist/{chunk-DUZBTUXF.cjs.map → chunk-Z6GGYZDR.cjs.map} +1 -1
- package/dist/components/chat/chat-message-list.d.ts.map +1 -1
- package/dist/components/chat/hooks/use-chat-card-item.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +16 -6
- package/dist/components/chat/index.cjs.map +1 -1
- package/dist/components/chat/index.js +15 -5
- package/dist/components/chat/types/entities/content-ref.d.ts +20 -5
- package/dist/components/chat/types/entities/content-ref.d.ts.map +1 -1
- package/dist/components/chat/utils/history-merge.d.ts +92 -0
- package/dist/components/chat/utils/history-merge.d.ts.map +1 -0
- package/dist/components/chat/utils/index.d.ts +1 -0
- package/dist/components/chat/utils/index.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +7 -7
- package/dist/components/contact/index.js +6 -6
- package/dist/components/faq/faq-section.d.ts +1 -7
- package/dist/components/faq/faq-section.d.ts.map +1 -1
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +6 -6
- package/dist/components/features/index.js +5 -5
- package/dist/components/features/policy-configuration-panel.d.ts.map +1 -1
- package/dist/components/index.cjs +93 -87
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.ts +0 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +37 -31
- package/dist/components/index.js.map +1 -1
- package/dist/components/navigation/index.cjs +6 -6
- package/dist/components/navigation/index.js +5 -5
- package/dist/components/onboarding-guides/index.cjs +30 -30
- package/dist/components/onboarding-guides/index.cjs.map +1 -1
- package/dist/components/onboarding-guides/index.js +11 -11
- package/dist/components/tickets/index.cjs +73 -73
- package/dist/components/tickets/index.cjs.map +1 -1
- package/dist/components/tickets/index.js +15 -15
- package/dist/components/ui/index.cjs +19 -9
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.js +23 -13
- package/dist/embed-shims/index.cjs +3 -3
- package/dist/embed-shims/index.cjs.map +1 -1
- package/dist/embed-shims/index.js +5 -5
- package/dist/index.cjs +11 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +49 -55
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/index.cjs +0 -81
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +1 -4
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -74
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/list-url.d.ts +0 -6
- package/dist/utils/list-url.d.ts.map +1 -1
- package/package.json +1 -7
- package/src/components/chat/__tests__/chat-message-list.test.tsx +92 -0
- package/src/components/chat/chat-message-list.tsx +74 -49
- package/src/components/chat/hooks/use-chat-card-item.ts +38 -3
- package/src/components/chat/types/entities/content-ref.ts +21 -5
- package/src/components/chat/utils/__tests__/history-merge.test.ts +339 -0
- package/src/components/chat/utils/history-merge.ts +255 -0
- package/src/components/chat/utils/index.ts +12 -0
- package/src/components/faq/faq-section.tsx +24 -69
- package/src/components/features/policy-configuration-panel.tsx +1 -0
- package/src/components/index.ts +0 -1
- package/src/types/index.ts +0 -1
- package/src/utils/index.ts +1 -16
- package/src/utils/list-url.ts +0 -9
- package/dist/chunk-3TDLFCCS.cjs.map +0 -1
- package/dist/chunk-CZITXP77.cjs.map +0 -1
- package/dist/chunk-F3GMWNAT.js +0 -285
- package/dist/chunk-F3GMWNAT.js.map +0 -1
- package/dist/chunk-FRRMXLU5.js.map +0 -1
- package/dist/chunk-HU252PYJ.cjs +0 -285
- package/dist/chunk-HU252PYJ.cjs.map +0 -1
- package/dist/chunk-MKVKVJQQ.js.map +0 -1
- package/dist/chunk-SGJBUL2Y.cjs.map +0 -1
- package/dist/chunk-VAUI3CND.js.map +0 -1
- package/dist/components/related-content/index.cjs +0 -26
- package/dist/components/related-content/index.cjs.map +0 -1
- package/dist/components/related-content/index.d.ts +0 -2
- package/dist/components/related-content/index.d.ts.map +0 -1
- package/dist/components/related-content/index.js +0 -26
- package/dist/components/related-content/index.js.map +0 -1
- package/dist/components/related-content/related-content-section.d.ts +0 -141
- package/dist/components/related-content/related-content-section.d.ts.map +0 -1
- package/dist/types/content-ref.d.ts +0 -35
- package/dist/types/content-ref.d.ts.map +0 -1
- package/dist/utils/content-ref-groups.d.ts +0 -58
- package/dist/utils/content-ref-groups.d.ts.map +0 -1
- package/dist/utils/extract-items.d.ts +0 -18
- package/dist/utils/extract-items.d.ts.map +0 -1
- package/dist/utils/suggestion-url.d.ts +0 -26
- package/dist/utils/suggestion-url.d.ts.map +0 -1
- package/src/components/related-content/index.ts +0 -9
- package/src/components/related-content/related-content-section.tsx +0 -612
- package/src/types/content-ref.ts +0 -34
- package/src/utils/content-ref-groups.ts +0 -89
- package/src/utils/extract-items.ts +0 -48
- package/src/utils/suggestion-url.ts +0 -39
- /package/dist/{chunk-SEVJT2HP.js.map → chunk-NKGNRFSS.js.map} +0 -0
- /package/dist/{chunk-4XLJWX2N.js.map → chunk-ORJREQ2W.js.map} +0 -0
- /package/dist/{chunk-7ZHFCEJH.js.map → chunk-P5C732SC.js.map} +0 -0
- /package/dist/{chunk-JJV3XGCY.js.map → chunk-PTSAF7T2.js.map} +0 -0
- /package/dist/{chunk-V35PZSUA.js.map → chunk-WD2MZVJI.js.map} +0 -0
|
@@ -2,10 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
+
var _chunkMEAR2WHScjs = require('./chunk-MEAR2WHS.cjs');
|
|
5
6
|
|
|
6
7
|
|
|
8
|
+
var _chunkXL4V2PYGcjs = require('./chunk-XL4V2PYG.cjs');
|
|
7
9
|
|
|
8
10
|
|
|
11
|
+
var _chunkBZFW3FOFcjs = require('./chunk-BZFW3FOF.cjs');
|
|
9
12
|
|
|
10
13
|
|
|
11
14
|
|
|
@@ -18,23 +21,20 @@
|
|
|
18
21
|
|
|
19
22
|
|
|
20
23
|
|
|
21
|
-
var _chunk27VVOBDBcjs = require('./chunk-27VVOBDB.cjs');
|
|
22
24
|
|
|
23
25
|
|
|
24
26
|
|
|
25
|
-
var _chunkMEAR2WHScjs = require('./chunk-MEAR2WHS.cjs');
|
|
26
27
|
|
|
28
|
+
var _chunkGRTZ23GLcjs = require('./chunk-GRTZ23GL.cjs');
|
|
27
29
|
|
|
28
|
-
var _chunkXL4V2PYGcjs = require('./chunk-XL4V2PYG.cjs');
|
|
29
30
|
|
|
30
31
|
|
|
31
|
-
var
|
|
32
|
+
var _chunkWBR7H6E3cjs = require('./chunk-WBR7H6E3.cjs');
|
|
32
33
|
|
|
33
34
|
|
|
34
35
|
|
|
35
36
|
|
|
36
37
|
|
|
37
|
-
var _chunkG7UE6RKVcjs = require('./chunk-G7UE6RKV.cjs');
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
|
|
@@ -49,13 +49,13 @@ var _chunkG7UE6RKVcjs = require('./chunk-G7UE6RKV.cjs');
|
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
|
|
52
|
+
var _chunk27VVOBDBcjs = require('./chunk-27VVOBDB.cjs');
|
|
52
53
|
|
|
53
54
|
|
|
54
|
-
var _chunkGRTZ23GLcjs = require('./chunk-GRTZ23GL.cjs');
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
var
|
|
58
|
+
var _chunkG7UE6RKVcjs = require('./chunk-G7UE6RKV.cjs');
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
|
|
@@ -4397,12 +4397,15 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
4397
4397
|
onLoadMoreRef.current = onLoadMore;
|
|
4398
4398
|
const isFetchingRef = _react.useRef.call(void 0, isFetchingNextPage);
|
|
4399
4399
|
isFetchingRef.current = isFetchingNextPage;
|
|
4400
|
+
const dialogIdRef = _react.useRef.call(void 0, dialogId);
|
|
4401
|
+
dialogIdRef.current = dialogId;
|
|
4400
4402
|
const prevRenderRef = _react.useRef.call(void 0, { dialogId: void 0, messageCount: 0, lastMessageId: void 0 });
|
|
4401
|
-
const
|
|
4403
|
+
const loadOlderAnchorRef = _react.useRef.call(void 0, null);
|
|
4402
4404
|
_react.useEffect.call(void 0, () => {
|
|
4403
4405
|
if (!autoScroll) return;
|
|
4404
4406
|
const dialogChanged = dialogId !== prevRenderRef.current.dialogId;
|
|
4405
4407
|
const prevCount = prevRenderRef.current.messageCount;
|
|
4408
|
+
const prevLastId = prevRenderRef.current.lastMessageId;
|
|
4406
4409
|
const newCount = messages.length;
|
|
4407
4410
|
const currentLastId = _optionalChain([messages, 'access', _63 => _63[messages.length - 1], 'optionalAccess', _64 => _64.id]);
|
|
4408
4411
|
prevRenderRef.current = { dialogId, messageCount: newCount, lastMessageId: currentLastId };
|
|
@@ -4415,7 +4418,8 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
4415
4418
|
return;
|
|
4416
4419
|
}
|
|
4417
4420
|
if (newCount > prevCount) {
|
|
4418
|
-
const
|
|
4421
|
+
const prevLastIdx = prevLastId ? messages.findIndex((m) => m.id === prevLastId) : -1;
|
|
4422
|
+
const newSlice = prevLastIdx >= 0 ? messages.slice(prevLastIdx + 1) : messages.slice(prevCount);
|
|
4419
4423
|
const hasNewUser = newSlice.some((m) => m.role === "user");
|
|
4420
4424
|
if (hasNewUser) {
|
|
4421
4425
|
void scrollToBottom({ animation: "instant", ignoreEscapes: true });
|
|
@@ -4439,34 +4443,17 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
4439
4443
|
}, [autoScroll, messages, dialogId, scrollToBottom, contentRef]);
|
|
4440
4444
|
_react.useLayoutEffect.call(void 0, () => {
|
|
4441
4445
|
const el = scrollRef.current;
|
|
4442
|
-
|
|
4443
|
-
|
|
4444
|
-
|
|
4445
|
-
|
|
4446
|
-
const currentFirstId = _optionalChain([messages, 'access', _65 => _65[0], 'optionalAccess', _66 => _66.id]);
|
|
4447
|
-
const currentFirstContent = _optionalChain([messages, 'access', _67 => _67[0], 'optionalAccess', _68 => _68.content]);
|
|
4448
|
-
const prevFirstId = prependRef.current.firstMessageId;
|
|
4449
|
-
const prevHeight = prependRef.current.scrollHeight;
|
|
4450
|
-
if (currentFirstId !== prevFirstId) {
|
|
4451
|
-
if (prevFirstId && prevHeight > 0) {
|
|
4452
|
-
const prevIdx = messages.findIndex((m) => m.id === prevFirstId);
|
|
4453
|
-
if (prevIdx > 0) {
|
|
4454
|
-
const addedHeight = el.scrollHeight - prevHeight;
|
|
4455
|
-
if (addedHeight > 0) el.scrollTop += addedHeight;
|
|
4456
|
-
}
|
|
4457
|
-
}
|
|
4458
|
-
prependRef.current = {
|
|
4459
|
-
firstMessageId: currentFirstId,
|
|
4460
|
-
firstMessageContent: currentFirstContent,
|
|
4461
|
-
scrollHeight: el.scrollHeight
|
|
4462
|
-
};
|
|
4446
|
+
const anchor = loadOlderAnchorRef.current;
|
|
4447
|
+
if (!el || !anchor) return;
|
|
4448
|
+
if (anchor.dialogId !== dialogId) {
|
|
4449
|
+
loadOlderAnchorRef.current = null;
|
|
4463
4450
|
return;
|
|
4464
4451
|
}
|
|
4465
|
-
|
|
4466
|
-
if (
|
|
4467
|
-
|
|
4468
|
-
|
|
4469
|
-
}, [messages, scrollRef]);
|
|
4452
|
+
const addedHeight = el.scrollHeight - anchor.scrollHeight;
|
|
4453
|
+
if (addedHeight <= 0) return;
|
|
4454
|
+
loadOlderAnchorRef.current = null;
|
|
4455
|
+
el.scrollTop = anchor.scrollTop + addedHeight;
|
|
4456
|
+
}, [messages, dialogId, scrollRef]);
|
|
4470
4457
|
const messageElsRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
|
|
4471
4458
|
const refCallbacksRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
|
|
4472
4459
|
const getRegisterMessageEl = (id) => {
|
|
@@ -4519,7 +4506,7 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
4519
4506
|
ro.observe(node);
|
|
4520
4507
|
const timer = setTimeout(() => {
|
|
4521
4508
|
ro.disconnect();
|
|
4522
|
-
if (_optionalChain([anchorWatcherRef, 'access',
|
|
4509
|
+
if (_optionalChain([anchorWatcherRef, 'access', _65 => _65.current, 'optionalAccess', _66 => _66.id]) === last.id) {
|
|
4523
4510
|
anchorWatcherRef.current = null;
|
|
4524
4511
|
}
|
|
4525
4512
|
}, 2e3);
|
|
@@ -4538,14 +4525,22 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
4538
4525
|
const entry = entries[0];
|
|
4539
4526
|
if (!entry) return;
|
|
4540
4527
|
if (entry.isIntersecting && !isFetchingRef.current) {
|
|
4541
|
-
|
|
4528
|
+
const el = scrollRef.current;
|
|
4529
|
+
if (el) {
|
|
4530
|
+
loadOlderAnchorRef.current = {
|
|
4531
|
+
dialogId: dialogIdRef.current,
|
|
4532
|
+
scrollHeight: el.scrollHeight,
|
|
4533
|
+
scrollTop: el.scrollTop
|
|
4534
|
+
};
|
|
4535
|
+
}
|
|
4536
|
+
_optionalChain([onLoadMoreRef, 'access', _67 => _67.current, 'optionalCall', _68 => _68()]);
|
|
4542
4537
|
}
|
|
4543
4538
|
},
|
|
4544
4539
|
{ root: scrollContainer, rootMargin: "200px", threshold: 0.1 }
|
|
4545
4540
|
);
|
|
4546
4541
|
observer.observe(sentinelElement);
|
|
4547
4542
|
return () => observer.disconnect();
|
|
4548
|
-
}, [hasNextPage, scrollRef]);
|
|
4543
|
+
}, [hasNextPage, isFetchingNextPage, scrollRef]);
|
|
4549
4544
|
_react.useImperativeHandle.call(void 0, ref, () => scrollRef.current, [scrollRef]);
|
|
4550
4545
|
if (isLoading) {
|
|
4551
4546
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -4566,8 +4561,8 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
4566
4561
|
contentRef(el);
|
|
4567
4562
|
};
|
|
4568
4563
|
const lastMessage = messages[messages.length - 1];
|
|
4569
|
-
const lastSegments = Array.isArray(_optionalChain([lastMessage, 'optionalAccess',
|
|
4570
|
-
const lastSegment = _optionalChain([lastSegments, 'optionalAccess',
|
|
4564
|
+
const lastSegments = Array.isArray(_optionalChain([lastMessage, 'optionalAccess', _69 => _69.content])) ? lastMessage.content : null;
|
|
4565
|
+
const lastSegment = _optionalChain([lastSegments, 'optionalAccess', _70 => _70[lastSegments.length - 1]]);
|
|
4571
4566
|
const isPausedOnApproval = !!lastSegment && (lastSegment.type === "approval_request" || lastSegment.type === "approval_batch") && (lastSegment.status === void 0 || lastSegment.status === "pending");
|
|
4572
4567
|
const showStreamingLoader = isTyping && !isPausedOnApproval && !(pendingApprovals && pendingApprovals.length > 0);
|
|
4573
4568
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex-1 min-h-0 flex flex-col", children: [
|
|
@@ -4666,9 +4661,9 @@ ChatMessageList.displayName = "ChatMessageList";
|
|
|
4666
4661
|
// src/utils/image-proxy.ts
|
|
4667
4662
|
function getProxiedImageUrl(imageUrl, options) {
|
|
4668
4663
|
if (!imageUrl) return null;
|
|
4669
|
-
const proxyPrefix = _optionalChain([options, 'optionalAccess',
|
|
4670
|
-
const skipDomains = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
4671
|
-
const directHttps = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
4664
|
+
const proxyPrefix = _optionalChain([options, 'optionalAccess', _71 => _71.proxyPrefix]);
|
|
4665
|
+
const skipDomains = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _72 => _72.skipDomains]), () => ( []));
|
|
4666
|
+
const directHttps = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _73 => _73.directHttps]), () => ( false));
|
|
4672
4667
|
if (proxyPrefix && imageUrl.includes(proxyPrefix)) {
|
|
4673
4668
|
return imageUrl;
|
|
4674
4669
|
}
|
|
@@ -4834,7 +4829,7 @@ var ChatTicketItem = React11.forwardRef(
|
|
|
4834
4829
|
{
|
|
4835
4830
|
ref,
|
|
4836
4831
|
type: "button",
|
|
4837
|
-
onClick: () => _optionalChain([onClick, 'optionalCall',
|
|
4832
|
+
onClick: () => _optionalChain([onClick, 'optionalCall', _74 => _74(ticket.id)]),
|
|
4838
4833
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
4839
4834
|
"flex items-center gap-4 w-full h-20 px-4",
|
|
4840
4835
|
"bg-ods-card border-b border-ods-border",
|
|
@@ -5087,11 +5082,11 @@ function MingoChatHistoryRow({
|
|
|
5087
5082
|
{
|
|
5088
5083
|
role: "button",
|
|
5089
5084
|
tabIndex: 0,
|
|
5090
|
-
onClick: () => _optionalChain([onSelect, 'optionalCall',
|
|
5085
|
+
onClick: () => _optionalChain([onSelect, 'optionalCall', _75 => _75(dialog.id)]),
|
|
5091
5086
|
onKeyDown: (e) => {
|
|
5092
5087
|
if (e.key === "Enter" || e.key === " ") {
|
|
5093
5088
|
e.preventDefault();
|
|
5094
|
-
_optionalChain([onSelect, 'optionalCall',
|
|
5089
|
+
_optionalChain([onSelect, 'optionalCall', _76 => _76(dialog.id)]);
|
|
5095
5090
|
}
|
|
5096
5091
|
},
|
|
5097
5092
|
className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)] p-[var(--spacing-system-s)] cursor-pointer focus:outline-none focus-visible:bg-ods-bg-hover",
|
|
@@ -5224,7 +5219,7 @@ function MingoChatHistory({
|
|
|
5224
5219
|
const io = new IntersectionObserver(
|
|
5225
5220
|
([entry]) => {
|
|
5226
5221
|
if (entry.isIntersecting && !isLoadingMoreRef.current) {
|
|
5227
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
5222
|
+
_optionalChain([onLoadMoreRef, 'access', _77 => _77.current, 'optionalCall', _78 => _78()]);
|
|
5228
5223
|
}
|
|
5229
5224
|
},
|
|
5230
5225
|
{ root, rootMargin: "120px", threshold: 0.1 }
|
|
@@ -5726,7 +5721,7 @@ function GuideWelcome({
|
|
|
5726
5721
|
"button",
|
|
5727
5722
|
{
|
|
5728
5723
|
type: "button",
|
|
5729
|
-
onClick: () => _optionalChain([onQuickAction, 'optionalCall',
|
|
5724
|
+
onClick: () => _optionalChain([onQuickAction, 'optionalCall', _79 => _79(action)]),
|
|
5730
5725
|
className: "rounded-md focus:outline-none focus-visible:ring-2 focus-visible:ring-ods-accent",
|
|
5731
5726
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { variant: "outline", label: action.label })
|
|
5732
5727
|
},
|
|
@@ -5741,7 +5736,7 @@ function GuideWelcome({
|
|
|
5741
5736
|
items: overflowActions.map((action) => ({
|
|
5742
5737
|
id: action.id,
|
|
5743
5738
|
label: action.label,
|
|
5744
|
-
onClick: () => _optionalChain([onQuickAction, 'optionalCall',
|
|
5739
|
+
onClick: () => _optionalChain([onQuickAction, 'optionalCall', _80 => _80(action)])
|
|
5745
5740
|
}))
|
|
5746
5741
|
}],
|
|
5747
5742
|
customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -6071,7 +6066,7 @@ function ChatDialogModals({
|
|
|
6071
6066
|
RenameChatModal,
|
|
6072
6067
|
{
|
|
6073
6068
|
isOpen: renameTarget != null,
|
|
6074
|
-
initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess',
|
|
6069
|
+
initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess', _81 => _81.title]), () => ( "")),
|
|
6075
6070
|
onClose: () => setRenameTarget(null),
|
|
6076
6071
|
onSave: onConfirmRename
|
|
6077
6072
|
}
|
|
@@ -6332,7 +6327,7 @@ function ChatAttachmentAddButton({
|
|
|
6332
6327
|
const canAddMore = slotsAvailable > 0 && !disabled;
|
|
6333
6328
|
const handlePick = () => {
|
|
6334
6329
|
if (!canAddMore) return;
|
|
6335
|
-
_optionalChain([fileInputRef, 'access',
|
|
6330
|
+
_optionalChain([fileInputRef, 'access', _82 => _82.current, 'optionalAccess', _83 => _83.click, 'call', _84 => _84()]);
|
|
6336
6331
|
};
|
|
6337
6332
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
6338
6333
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -6870,8 +6865,8 @@ ChatSidebarSkeleton.displayName = "ChatSidebarSkeleton";
|
|
|
6870
6865
|
var DialogListItem = _react.forwardRef.call(void 0,
|
|
6871
6866
|
({ className, dialog, isActive, onDialogSelect, onClick, ...props }, ref) => {
|
|
6872
6867
|
const handleClick = (e) => {
|
|
6873
|
-
_optionalChain([onDialogSelect, 'optionalCall',
|
|
6874
|
-
_optionalChain([onClick, 'optionalCall',
|
|
6868
|
+
_optionalChain([onDialogSelect, 'optionalCall', _85 => _85(dialog.id)]);
|
|
6869
|
+
_optionalChain([onClick, 'optionalCall', _86 => _86(e)]);
|
|
6875
6870
|
};
|
|
6876
6871
|
const formatTimestamp2 = (timestamp) => {
|
|
6877
6872
|
if (!timestamp) return "";
|
|
@@ -6930,7 +6925,7 @@ var ChatSidebar = _react.forwardRef.call(void 0,
|
|
|
6930
6925
|
(entries) => {
|
|
6931
6926
|
const [entry] = entries;
|
|
6932
6927
|
if (entry.isIntersecting && !isFetchingRef.current) {
|
|
6933
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
6928
|
+
_optionalChain([onLoadMoreRef, 'access', _87 => _87.current, 'optionalCall', _88 => _88()]);
|
|
6934
6929
|
}
|
|
6935
6930
|
},
|
|
6936
6931
|
{ root: scrollContainer, rootMargin: "100px", threshold: 0.1 }
|
|
@@ -7037,7 +7032,7 @@ function decideNewTab(input) {
|
|
|
7037
7032
|
function computeIsNewTab(runtime, href, targetPlatform) {
|
|
7038
7033
|
if (!href) return false;
|
|
7039
7034
|
if (runtime.navigation.mode === "embed") return true;
|
|
7040
|
-
return _nullishCoalesce(_optionalChain([runtime, 'access',
|
|
7035
|
+
return _nullishCoalesce(_optionalChain([runtime, 'access', _89 => _89.navigation, 'access', _90 => _90.decideNewTab, 'optionalCall', _91 => _91({ href, targetPlatform })]), () => ( decideNewTab({
|
|
7041
7036
|
href,
|
|
7042
7037
|
targetPlatform,
|
|
7043
7038
|
currentSource: _nullishCoalesce(runtime.source, () => ( ""))
|
|
@@ -7101,11 +7096,11 @@ function resolveExternalNavigation(args) {
|
|
|
7101
7096
|
function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
|
|
7102
7097
|
const isNewTab = runtime ? computeIsNewTab(runtime, href, _nullishCoalesce(targetPlatform, () => ( null))) : false;
|
|
7103
7098
|
if (isNewTab) {
|
|
7104
|
-
if (_optionalChain([runtime, 'optionalAccess',
|
|
7099
|
+
if (_optionalChain([runtime, 'optionalAccess', _92 => _92.navigation, 'access', _93 => _93.openExternal])) runtime.navigation.openExternal(href);
|
|
7105
7100
|
else window.open(href, "_blank", NEW_TAB_FEATURES);
|
|
7106
7101
|
return;
|
|
7107
7102
|
}
|
|
7108
|
-
const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
|
7103
|
+
const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _94 => _94.navigation, 'access', _95 => _95.navigate, 'optionalCall', _96 => _96({ href, path, targetPlatform })]), () => ( false));
|
|
7109
7104
|
if (!handled) {
|
|
7110
7105
|
const target = stripSameOriginToPath(href);
|
|
7111
7106
|
if (fallbackNavigate) fallbackNavigate(target);
|
|
@@ -7171,7 +7166,7 @@ function NavLinkAnchorViaRuntime({
|
|
|
7171
7166
|
path,
|
|
7172
7167
|
targetPlatform
|
|
7173
7168
|
}, router.push);
|
|
7174
|
-
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
7169
|
+
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _97 => _97.closeChat])) panel.closeChat();
|
|
7175
7170
|
};
|
|
7176
7171
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7177
7172
|
"a",
|
|
@@ -7292,7 +7287,7 @@ function EntityAuthorCard({
|
|
|
7292
7287
|
renderEmptyAuthor = false,
|
|
7293
7288
|
className
|
|
7294
7289
|
}) {
|
|
7295
|
-
const hasAuthor = !!_optionalChain([author, 'optionalAccess',
|
|
7290
|
+
const hasAuthor = !!_optionalChain([author, 'optionalAccess', _98 => _98.full_name]);
|
|
7296
7291
|
if (!hasAuthor && !renderEmptyAuthor) return null;
|
|
7297
7292
|
const effectiveAuthor = hasAuthor ? author : EMPTY_AUTHOR_PLACEHOLDER;
|
|
7298
7293
|
const formatted = publishedAt ? formatDate(publishedAt) : "";
|
|
@@ -7628,8 +7623,8 @@ function AdminContentCard({
|
|
|
7628
7623
|
/* @__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 }),
|
|
7629
7624
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] text-ods-text-secondary truncate", children: subtitle }),
|
|
7630
7625
|
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 }),
|
|
7631
|
-
(Number(_optionalChain([platforms, 'optionalAccess',
|
|
7632
|
-
_optionalChain([platforms, 'optionalAccess',
|
|
7626
|
+
(Number(_optionalChain([platforms, 'optionalAccess', _99 => _99.length])) > 0 || badges) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 flex-wrap", children: [
|
|
7627
|
+
_optionalChain([platforms, 'optionalAccess', _100 => _100.map, 'call', _101 => _101((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7633
7628
|
PlatformBadge,
|
|
7634
7629
|
{
|
|
7635
7630
|
platform: { id: p.id || p.platform_id || "", name: p.name, display_name: p.display_name || p.name },
|
|
@@ -7705,7 +7700,7 @@ function fetchPriorityProp(priority) {
|
|
|
7705
7700
|
|
|
7706
7701
|
if (typeof window !== "undefined") {
|
|
7707
7702
|
const w = window;
|
|
7708
|
-
if (!_optionalChain([w, 'access',
|
|
7703
|
+
if (!_optionalChain([w, 'access', _102 => _102.chrome, 'optionalAccess', _103 => _103.cast])) {
|
|
7709
7704
|
w.chrome = { ..._nullishCoalesce(w.chrome, () => ( {})), cast: { isAvailable: false } };
|
|
7710
7705
|
}
|
|
7711
7706
|
}
|
|
@@ -7895,7 +7890,7 @@ function YouTubeFacadeInner({
|
|
|
7895
7890
|
const iframe = iframeRef.current;
|
|
7896
7891
|
if (!iframe) return;
|
|
7897
7892
|
function subscribe() {
|
|
7898
|
-
_optionalChain([iframe, 'optionalAccess',
|
|
7893
|
+
_optionalChain([iframe, 'optionalAccess', _104 => _104.contentWindow, 'optionalAccess', _105 => _105.postMessage, 'call', _106 => _106(
|
|
7899
7894
|
'{"event":"listening"}',
|
|
7900
7895
|
YT_NOCOOKIE_ORIGIN
|
|
7901
7896
|
)]);
|
|
@@ -7913,13 +7908,13 @@ function YouTubeFacadeInner({
|
|
|
7913
7908
|
return;
|
|
7914
7909
|
}
|
|
7915
7910
|
if (!payload || payload.event !== "infoDelivery") return;
|
|
7916
|
-
const state = _optionalChain([payload, 'access',
|
|
7911
|
+
const state = _optionalChain([payload, 'access', _107 => _107.info, 'optionalAccess', _108 => _108.playerState]);
|
|
7917
7912
|
if (typeof state !== "number") return;
|
|
7918
7913
|
if (state === YT_STATE_PLAYING) {
|
|
7919
7914
|
if (blurTimer !== null) return;
|
|
7920
7915
|
blurTimer = setTimeout(() => {
|
|
7921
7916
|
blurTimer = null;
|
|
7922
|
-
_optionalChain([iframeRef, 'access',
|
|
7917
|
+
_optionalChain([iframeRef, 'access', _109 => _109.current, 'optionalAccess', _110 => _110.blur, 'call', _111 => _111()]);
|
|
7923
7918
|
}, YT_PLAYING_BLUR_DELAY_MS);
|
|
7924
7919
|
return;
|
|
7925
7920
|
}
|
|
@@ -8504,7 +8499,7 @@ function ProductReleaseCard({
|
|
|
8504
8499
|
changelogCounts
|
|
8505
8500
|
}) {
|
|
8506
8501
|
if (size === "lg") {
|
|
8507
|
-
const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess',
|
|
8502
|
+
const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _112 => _112.features]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _113 => _113.fixes]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _114 => _114.improvements]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _115 => _115.breaking]), () => ( 0)));
|
|
8508
8503
|
const valueCells = [
|
|
8509
8504
|
releaseType && releaseTypeBadgeColor ? {
|
|
8510
8505
|
value: releaseType.toUpperCase(),
|
|
@@ -8523,7 +8518,7 @@ function ProductReleaseCard({
|
|
|
8523
8518
|
uppercase: false
|
|
8524
8519
|
} : { value: "\u2014", label: "Released", uppercase: false }
|
|
8525
8520
|
];
|
|
8526
|
-
const effectiveAuthor = _optionalChain([author, 'optionalAccess',
|
|
8521
|
+
const effectiveAuthor = _optionalChain([author, 'optionalAccess', _116 => _116.full_name]) ? author : { full_name: "\u2014", avatar_url: null, job_title: "Unknown" };
|
|
8527
8522
|
const gridColsClass = "md:grid-cols-4";
|
|
8528
8523
|
const dividerClass = "border-b md:border-b-0 md:border-r border-ods-border";
|
|
8529
8524
|
const frameClass = _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -8936,10 +8931,10 @@ function buildProductReleaseCardProps(item) {
|
|
|
8936
8931
|
job_title: release.author.job_title
|
|
8937
8932
|
} : void 0,
|
|
8938
8933
|
changelogCounts: {
|
|
8939
|
-
features: _nullishCoalesce(_optionalChain([release, 'access',
|
|
8940
|
-
fixes: _nullishCoalesce(_optionalChain([release, 'access',
|
|
8941
|
-
improvements: _nullishCoalesce(_optionalChain([release, 'access',
|
|
8942
|
-
breaking: _nullishCoalesce(_optionalChain([release, 'access',
|
|
8934
|
+
features: _nullishCoalesce(_optionalChain([release, 'access', _117 => _117.features_added, 'optionalAccess', _118 => _118.length]), () => ( 0)),
|
|
8935
|
+
fixes: _nullishCoalesce(_optionalChain([release, 'access', _119 => _119.bugs_fixed, 'optionalAccess', _120 => _120.length]), () => ( 0)),
|
|
8936
|
+
improvements: _nullishCoalesce(_optionalChain([release, 'access', _121 => _121.improvements, 'optionalAccess', _122 => _122.length]), () => ( 0)),
|
|
8937
|
+
breaking: _nullishCoalesce(_optionalChain([release, 'access', _123 => _123.breaking_changes, 'optionalAccess', _124 => _124.length]), () => ( 0))
|
|
8943
8938
|
}
|
|
8944
8939
|
};
|
|
8945
8940
|
}
|
|
@@ -8977,8 +8972,8 @@ function useEntityCardPlaceholder({
|
|
|
8977
8972
|
aspect = "wide"
|
|
8978
8973
|
}) {
|
|
8979
8974
|
const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
|
|
8980
|
-
const builder = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
|
8981
|
-
const enabled = placeholderUrl === void 0 && !!_optionalChain([runtime, 'optionalAccess',
|
|
8975
|
+
const builder = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _125 => _125.resolvePlaceholderUrl]), () => ( NO_OP_BUILDER));
|
|
8976
|
+
const enabled = placeholderUrl === void 0 && !!_optionalChain([runtime, 'optionalAccess', _126 => _126.resolvePlaceholderUrl]);
|
|
8982
8977
|
const derived = _chunk27VVOBDBcjs.useOgPlaceholder.call(void 0, builder, title, siteName, enabled, aspect);
|
|
8983
8978
|
return placeholderUrl !== void 0 ? placeholderUrl : derived;
|
|
8984
8979
|
}
|
|
@@ -9071,7 +9066,7 @@ function BlogCard({
|
|
|
9071
9066
|
const displayImage = post.featured_image && !imageError ? post.featured_image : placeholderUrl;
|
|
9072
9067
|
if (size === "sm") {
|
|
9073
9068
|
const dateStr2 = post.published_at ? new Date(post.published_at).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric" }) : "";
|
|
9074
|
-
const firstCategory = _optionalChain([post, 'access',
|
|
9069
|
+
const firstCategory = _optionalChain([post, 'access', _127 => _127.categories, 'optionalAccess', _128 => _128.find, 'call', _129 => _129((c) => c && c.name), 'optionalAccess', _130 => _130.name]);
|
|
9075
9070
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9076
9071
|
"a",
|
|
9077
9072
|
{
|
|
@@ -9277,14 +9272,14 @@ function CaseStudyCard({
|
|
|
9277
9272
|
"img",
|
|
9278
9273
|
{
|
|
9279
9274
|
src: coverImage,
|
|
9280
|
-
alt: `${_optionalChain([study, 'access',
|
|
9275
|
+
alt: `${_optionalChain([study, 'access', _131 => _131.msp, 'optionalAccess', _132 => _132.name]) || study.title} cover`,
|
|
9281
9276
|
className: "absolute inset-0 block w-full h-full object-contain",
|
|
9282
9277
|
onError: hideOnError
|
|
9283
9278
|
}
|
|
9284
9279
|
) : null }),
|
|
9285
9280
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
9286
9281
|
/* @__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 }) }),
|
|
9287
|
-
/* @__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',
|
|
9282
|
+
/* @__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', _133 => _133.msp, 'optionalAccess', _134 => _134.name]), _optionalChain([study, 'access', _135 => _135.user, 'optionalAccess', _136 => _136.full_name])].filter(Boolean).join(" \xB7 ") || "Case study" }) }),
|
|
9288
9283
|
/* @__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 }) })
|
|
9289
9284
|
] })
|
|
9290
9285
|
] });
|
|
@@ -9294,7 +9289,7 @@ function CaseStudyCard({
|
|
|
9294
9289
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
9295
9290
|
{
|
|
9296
9291
|
src: coverImage,
|
|
9297
|
-
alt: _optionalChain([study, 'access',
|
|
9292
|
+
alt: _optionalChain([study, 'access', _137 => _137.msp, 'optionalAccess', _138 => _138.name]) || study.title,
|
|
9298
9293
|
className: "w-full h-full object-cover",
|
|
9299
9294
|
sizes: "(min-width: 1545px) 515px, (min-width: 1280px) 33vw, (min-width: 800px) 50vw, 100vw",
|
|
9300
9295
|
fill: true,
|
|
@@ -9305,18 +9300,18 @@ function CaseStudyCard({
|
|
|
9305
9300
|
/* @__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 }) }),
|
|
9306
9301
|
/* @__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: [
|
|
9307
9302
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
9308
|
-
_optionalChain([study, 'access',
|
|
9303
|
+
_optionalChain([study, 'access', _139 => _139.user, 'optionalAccess', _140 => _140.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9309
9304
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
9310
9305
|
{
|
|
9311
9306
|
src: study.user.avatar_url,
|
|
9312
|
-
alt: _optionalChain([study, 'access',
|
|
9307
|
+
alt: _optionalChain([study, 'access', _141 => _141.user, 'optionalAccess', _142 => _142.full_name]) || "User",
|
|
9313
9308
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border",
|
|
9314
9309
|
width: 48,
|
|
9315
9310
|
height: 48,
|
|
9316
9311
|
unoptimized: true
|
|
9317
9312
|
}
|
|
9318
|
-
) : /* @__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',
|
|
9319
|
-
_optionalChain([study, 'access',
|
|
9313
|
+
) : /* @__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', _143 => _143.user, 'optionalAccess', _144 => _144.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
9314
|
+
_optionalChain([study, 'access', _145 => _145.msp, 'optionalAccess', _146 => _146.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,
|
|
9320
9315
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
9321
9316
|
{
|
|
9322
9317
|
src: study.msp.icon_url,
|
|
@@ -9330,13 +9325,13 @@ function CaseStudyCard({
|
|
|
9330
9325
|
] }),
|
|
9331
9326
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
9332
9327
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
9333
|
-
_optionalChain([study, 'access',
|
|
9334
|
-
_optionalChain([study, 'access',
|
|
9328
|
+
_optionalChain([study, 'access', _147 => _147.user, 'optionalAccess', _148 => _148.full_name]) || "Anonymous",
|
|
9329
|
+
_optionalChain([study, 'access', _149 => _149.msp, 'optionalAccess', _150 => _150.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
9335
9330
|
" \u2022 ",
|
|
9336
9331
|
study.msp.name
|
|
9337
9332
|
] })
|
|
9338
9333
|
] }),
|
|
9339
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access',
|
|
9334
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access', _151 => _151.user, 'optionalAccess', _152 => _152.job_title]) || "\xA0" })
|
|
9340
9335
|
] })
|
|
9341
9336
|
] }) })
|
|
9342
9337
|
] }) });
|
|
@@ -9419,7 +9414,7 @@ function CustomerInterviewCard({
|
|
|
9419
9414
|
] }),
|
|
9420
9415
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
9421
9416
|
/* @__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 }) }),
|
|
9422
|
-
/* @__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',
|
|
9417
|
+
/* @__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', _153 => _153.user, 'optionalAccess', _154 => _154.full_name]), _optionalChain([interview, 'access', _155 => _155.msp, 'optionalAccess', _156 => _156.name])].filter(Boolean).join(" \xB7 ") || "Customer interview" }) }),
|
|
9423
9418
|
/* @__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 }) })
|
|
9424
9419
|
] })
|
|
9425
9420
|
] });
|
|
@@ -9441,15 +9436,15 @@ function CustomerInterviewCard({
|
|
|
9441
9436
|
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 }) }),
|
|
9442
9437
|
/* @__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: [
|
|
9443
9438
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
9444
|
-
_optionalChain([interview, 'access',
|
|
9439
|
+
_optionalChain([interview, 'access', _157 => _157.user, 'optionalAccess', _158 => _158.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9445
9440
|
"img",
|
|
9446
9441
|
{
|
|
9447
9442
|
src: interview.user.avatar_url,
|
|
9448
|
-
alt: _optionalChain([interview, 'access',
|
|
9443
|
+
alt: _optionalChain([interview, 'access', _159 => _159.user, 'optionalAccess', _160 => _160.full_name]) || "Customer",
|
|
9449
9444
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border"
|
|
9450
9445
|
}
|
|
9451
|
-
) : /* @__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',
|
|
9452
|
-
_optionalChain([interview, 'access',
|
|
9446
|
+
) : /* @__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', _161 => _161.user, 'optionalAccess', _162 => _162.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
9447
|
+
_optionalChain([interview, 'access', _163 => _163.msp, 'optionalAccess', _164 => _164.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,
|
|
9453
9448
|
"img",
|
|
9454
9449
|
{
|
|
9455
9450
|
src: interview.msp.icon_url,
|
|
@@ -9460,13 +9455,13 @@ function CustomerInterviewCard({
|
|
|
9460
9455
|
] }),
|
|
9461
9456
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
9462
9457
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
9463
|
-
_optionalChain([interview, 'access',
|
|
9464
|
-
_optionalChain([interview, 'access',
|
|
9458
|
+
_optionalChain([interview, 'access', _165 => _165.user, 'optionalAccess', _166 => _166.full_name]) || "Anonymous",
|
|
9459
|
+
_optionalChain([interview, 'access', _167 => _167.msp, 'optionalAccess', _168 => _168.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
9465
9460
|
" \u2022 ",
|
|
9466
9461
|
interview.msp.name
|
|
9467
9462
|
] })
|
|
9468
9463
|
] }),
|
|
9469
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access',
|
|
9464
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access', _169 => _169.user, 'optionalAccess', _170 => _170.job_title]) || " " })
|
|
9470
9465
|
] })
|
|
9471
9466
|
] }) })
|
|
9472
9467
|
] }) });
|
|
@@ -9479,7 +9474,7 @@ function CustomerInterviewCard({
|
|
|
9479
9474
|
function formatInvestorUpdatePeriod(start, end, options) {
|
|
9480
9475
|
if (!start && !end) return "";
|
|
9481
9476
|
const fmt = (d) => new Date(d).toLocaleDateString("en-US", {
|
|
9482
|
-
month: _optionalChain([options, 'optionalAccess',
|
|
9477
|
+
month: _optionalChain([options, 'optionalAccess', _171 => _171.monthFormat]) || "short",
|
|
9483
9478
|
year: "numeric"
|
|
9484
9479
|
});
|
|
9485
9480
|
const s = start ? fmt(start) : "?";
|
|
@@ -9569,7 +9564,7 @@ function InvestorUpdateCard({
|
|
|
9569
9564
|
imageUrl: update.featured_image,
|
|
9570
9565
|
placeholderUrl,
|
|
9571
9566
|
title: update.title || `Update #${update.update_number || "?"}`,
|
|
9572
|
-
summary: _optionalChain([update, 'access',
|
|
9567
|
+
summary: _optionalChain([update, 'access', _172 => _172.strategic_update, 'optionalAccess', _173 => _173.slice, 'call', _174 => _174(0, 120)]) || _optionalChain([update, 'access', _175 => _175.content, 'optionalAccess', _176 => _176.slice, 'call', _177 => _177(0, 120)]) || "No description",
|
|
9573
9568
|
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: [
|
|
9574
9569
|
"#",
|
|
9575
9570
|
update.update_number
|
|
@@ -9758,7 +9753,7 @@ function OnboardingGuideCard({
|
|
|
9758
9753
|
const compactCover = coverImage || placeholderUrl || null;
|
|
9759
9754
|
const hasVideoCover = !guide.featured_image && !!guide.main_video_thumbnail;
|
|
9760
9755
|
const summary2 = (guide.video_summary || guide.content || "").trim();
|
|
9761
|
-
const author = _optionalChain([guide, 'access',
|
|
9756
|
+
const author = _optionalChain([guide, 'access', _178 => _178.author, 'optionalAccess', _179 => _179.full_name, 'optionalAccess', _180 => _180.trim, 'call', _181 => _181()]) || "";
|
|
9762
9757
|
const subtitleParts = [
|
|
9763
9758
|
`Step ${guide.step_order}`,
|
|
9764
9759
|
guide.section,
|
|
@@ -10129,7 +10124,7 @@ function AutocompleteInner(props, ref) {
|
|
|
10129
10124
|
if (!isInputControlled) {
|
|
10130
10125
|
setInternalInputValue(value);
|
|
10131
10126
|
}
|
|
10132
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
10127
|
+
_optionalChain([onInputChange, 'optionalCall', _182 => _182(value, reason)]);
|
|
10133
10128
|
};
|
|
10134
10129
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
10135
10130
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
@@ -10157,8 +10152,8 @@ function AutocompleteInner(props, ref) {
|
|
|
10157
10152
|
if (!showHiddenTags) return;
|
|
10158
10153
|
const handleClick = (e) => {
|
|
10159
10154
|
const target = e.target;
|
|
10160
|
-
const inButton = _optionalChain([hiddenTagsRef, 'access',
|
|
10161
|
-
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access',
|
|
10155
|
+
const inButton = _optionalChain([hiddenTagsRef, 'access', _183 => _183.current, 'optionalAccess', _184 => _184.contains, 'call', _185 => _185(target)]);
|
|
10156
|
+
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _186 => _186.current, 'optionalAccess', _187 => _187.contains, 'call', _188 => _188(target)]);
|
|
10162
10157
|
if (!inButton && !inPopup) {
|
|
10163
10158
|
setShowHiddenTags(false);
|
|
10164
10159
|
}
|
|
@@ -10202,7 +10197,7 @@ function AutocompleteInner(props, ref) {
|
|
|
10202
10197
|
}
|
|
10203
10198
|
updateInputValue("", "reset");
|
|
10204
10199
|
setIsOpen(false);
|
|
10205
|
-
_optionalChain([onCreateOption, 'optionalCall',
|
|
10200
|
+
_optionalChain([onCreateOption, 'optionalCall', _189 => _189(trimmed)]);
|
|
10206
10201
|
};
|
|
10207
10202
|
_react.useEffect.call(void 0, () => {
|
|
10208
10203
|
setHighlightedIndex(-1);
|
|
@@ -10226,7 +10221,7 @@ function AutocompleteInner(props, ref) {
|
|
|
10226
10221
|
props.onChange([...valueArray, option.value]);
|
|
10227
10222
|
}
|
|
10228
10223
|
updateInputValue("", "reset");
|
|
10229
|
-
_optionalChain([autoLimitTags, 'access',
|
|
10224
|
+
_optionalChain([autoLimitTags, 'access', _190 => _190.inputRef, 'access', _191 => _191.current, 'optionalAccess', _192 => _192.focus, 'call', _193 => _193()]);
|
|
10230
10225
|
} else {
|
|
10231
10226
|
;
|
|
10232
10227
|
props.onChange(option.value);
|
|
@@ -10247,7 +10242,7 @@ function AutocompleteInner(props, ref) {
|
|
|
10247
10242
|
if (!isInputControlled) {
|
|
10248
10243
|
setInternalInputValue("");
|
|
10249
10244
|
}
|
|
10250
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
10245
|
+
_optionalChain([onInputChange, 'optionalCall', _194 => _194("", "clear")]);
|
|
10251
10246
|
setIsOpen(false);
|
|
10252
10247
|
};
|
|
10253
10248
|
const handleKeyDown = (e) => {
|
|
@@ -10321,7 +10316,7 @@ function AutocompleteInner(props, ref) {
|
|
|
10321
10316
|
),
|
|
10322
10317
|
onClick: () => {
|
|
10323
10318
|
if (!disabled) {
|
|
10324
|
-
_optionalChain([autoLimitTags, 'access',
|
|
10319
|
+
_optionalChain([autoLimitTags, 'access', _195 => _195.inputRef, 'access', _196 => _196.current, 'optionalAccess', _197 => _197.focus, 'call', _198 => _198()]);
|
|
10325
10320
|
openDropdown();
|
|
10326
10321
|
}
|
|
10327
10322
|
},
|
|
@@ -10437,10 +10432,10 @@ function AutocompleteInner(props, ref) {
|
|
|
10437
10432
|
align: "start",
|
|
10438
10433
|
onOpenAutoFocus: (e) => {
|
|
10439
10434
|
e.preventDefault();
|
|
10440
|
-
_optionalChain([autoLimitTags, 'access',
|
|
10435
|
+
_optionalChain([autoLimitTags, 'access', _199 => _199.inputRef, 'access', _200 => _200.current, 'optionalAccess', _201 => _201.focus, 'call', _202 => _202()]);
|
|
10441
10436
|
},
|
|
10442
10437
|
onInteractOutside: (e) => {
|
|
10443
|
-
if (_optionalChain([containerRef, 'access',
|
|
10438
|
+
if (_optionalChain([containerRef, 'access', _203 => _203.current, 'optionalAccess', _204 => _204.contains, 'call', _205 => _205(e.target)])) {
|
|
10444
10439
|
e.preventDefault();
|
|
10445
10440
|
}
|
|
10446
10441
|
},
|
|
@@ -10512,7 +10507,7 @@ function AutocompleteInner(props, ref) {
|
|
|
10512
10507
|
items: hiddenTags,
|
|
10513
10508
|
disabled,
|
|
10514
10509
|
style: {
|
|
10515
|
-
left: autoLimitTags.badgeRef.current ? autoLimitTags.badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access',
|
|
10510
|
+
left: autoLimitTags.badgeRef.current ? autoLimitTags.badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _206 => _206.current, 'optionalAccess', _207 => _207.getBoundingClientRect, 'call', _208 => _208(), 'access', _209 => _209.left]), () => ( 0))) : 0
|
|
10516
10511
|
},
|
|
10517
10512
|
onRemove: (value) => {
|
|
10518
10513
|
const newValue = valueArray.filter((v) => v !== value);
|
|
@@ -10835,7 +10830,7 @@ var defaultFormatDate = (date) => {
|
|
|
10835
10830
|
});
|
|
10836
10831
|
};
|
|
10837
10832
|
var formatDateRange2 = (range, formatFn) => {
|
|
10838
|
-
if (!_optionalChain([range, 'optionalAccess',
|
|
10833
|
+
if (!_optionalChain([range, 'optionalAccess', _210 => _210.from])) return "";
|
|
10839
10834
|
if (!range.to) return formatFn(range.from);
|
|
10840
10835
|
return `${formatFn(range.from)} - ${formatFn(range.to)}`;
|
|
10841
10836
|
};
|
|
@@ -10863,7 +10858,7 @@ function DatePickerCalendar({
|
|
|
10863
10858
|
}) {
|
|
10864
10859
|
const today = /* @__PURE__ */ new Date();
|
|
10865
10860
|
const rangeSelected = selected;
|
|
10866
|
-
const hasCompleteRange = mode === "range" && _optionalChain([rangeSelected, 'optionalAccess',
|
|
10861
|
+
const hasCompleteRange = mode === "range" && _optionalChain([rangeSelected, 'optionalAccess', _211 => _211.from]) && _optionalChain([rangeSelected, 'optionalAccess', _212 => _212.to]) && rangeSelected.from.getTime() !== rangeSelected.to.getTime();
|
|
10867
10862
|
const classNames = {
|
|
10868
10863
|
root: "p-4 date-picker-calendar",
|
|
10869
10864
|
months: "flex gap-8",
|
|
@@ -10914,7 +10909,7 @@ function DatePickerCalendar({
|
|
|
10914
10909
|
range_middle: "range-middle !bg-[var(--ods-open-yellow-light)] !text-ods-card !font-medium !rounded-none hover:!bg-[var(--ods-open-yellow-light)]"
|
|
10915
10910
|
};
|
|
10916
10911
|
const [month, setMonth] = React37.useState(
|
|
10917
|
-
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess',
|
|
10912
|
+
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess', _213 => _213.from]) || today
|
|
10918
10913
|
);
|
|
10919
10914
|
const handlePreviousMonth = () => {
|
|
10920
10915
|
setMonth((prev) => {
|
|
@@ -11133,14 +11128,14 @@ function DatePicker(props) {
|
|
|
11133
11128
|
}, [props.mode, props.value, formatDate2]);
|
|
11134
11129
|
const handleSelect = (value) => {
|
|
11135
11130
|
if (props.mode === "single") {
|
|
11136
|
-
_optionalChain([props, 'access',
|
|
11131
|
+
_optionalChain([props, 'access', _214 => _214.onChange, 'optionalCall', _215 => _215(value)]);
|
|
11137
11132
|
if (value) {
|
|
11138
11133
|
setOpen(false);
|
|
11139
11134
|
}
|
|
11140
11135
|
} else {
|
|
11141
11136
|
const range = value;
|
|
11142
|
-
_optionalChain([props, 'access',
|
|
11143
|
-
if (_optionalChain([range, 'optionalAccess',
|
|
11137
|
+
_optionalChain([props, 'access', _216 => _216.onChange, 'optionalCall', _217 => _217(range)]);
|
|
11138
|
+
if (_optionalChain([range, 'optionalAccess', _218 => _218.from]) && _optionalChain([range, 'optionalAccess', _219 => _219.to]) && range.from.getTime() !== range.to.getTime()) {
|
|
11144
11139
|
setOpen(false);
|
|
11145
11140
|
}
|
|
11146
11141
|
}
|
|
@@ -11247,7 +11242,7 @@ function DatePickerInput({
|
|
|
11247
11242
|
if (newDate && value) {
|
|
11248
11243
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
11249
11244
|
}
|
|
11250
|
-
_optionalChain([onChange, 'optionalCall',
|
|
11245
|
+
_optionalChain([onChange, 'optionalCall', _220 => _220(newDate)]);
|
|
11251
11246
|
if (newDate) {
|
|
11252
11247
|
setOpen(false);
|
|
11253
11248
|
}
|
|
@@ -11264,12 +11259,12 @@ function DatePickerInput({
|
|
|
11264
11259
|
}
|
|
11265
11260
|
}
|
|
11266
11261
|
date.setHours(hours);
|
|
11267
|
-
_optionalChain([onChange, 'optionalCall',
|
|
11262
|
+
_optionalChain([onChange, 'optionalCall', _221 => _221(date)]);
|
|
11268
11263
|
};
|
|
11269
11264
|
const handleMinuteChange = (newMinute) => {
|
|
11270
11265
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
11271
11266
|
date.setMinutes(parseInt(newMinute, 10));
|
|
11272
|
-
_optionalChain([onChange, 'optionalCall',
|
|
11267
|
+
_optionalChain([onChange, 'optionalCall', _222 => _222(date)]);
|
|
11273
11268
|
};
|
|
11274
11269
|
const handlePeriodChange = (newPeriod) => {
|
|
11275
11270
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
@@ -11280,7 +11275,7 @@ function DatePickerInput({
|
|
|
11280
11275
|
hours += 12;
|
|
11281
11276
|
}
|
|
11282
11277
|
date.setHours(hours);
|
|
11283
|
-
_optionalChain([onChange, 'optionalCall',
|
|
11278
|
+
_optionalChain([onChange, 'optionalCall', _223 => _223(date)]);
|
|
11284
11279
|
};
|
|
11285
11280
|
const hourOptions = React37.useMemo(() => generateHourOptions(use24HourFormat), [use24HourFormat]);
|
|
11286
11281
|
const minuteOptions = React37.useMemo(() => generateMinuteOptions(), []);
|
|
@@ -11441,7 +11436,7 @@ function DatePickerInputSimple({
|
|
|
11441
11436
|
if (newDate && value) {
|
|
11442
11437
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
11443
11438
|
}
|
|
11444
|
-
_optionalChain([onChange, 'optionalCall',
|
|
11439
|
+
_optionalChain([onChange, 'optionalCall', _224 => _224(newDate)]);
|
|
11445
11440
|
if (newDate) {
|
|
11446
11441
|
setOpen(false);
|
|
11447
11442
|
}
|
|
@@ -11450,7 +11445,7 @@ function DatePickerInputSimple({
|
|
|
11450
11445
|
const [hours, minutes] = newTime.split(":").map(Number);
|
|
11451
11446
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
11452
11447
|
date.setHours(hours, minutes, 0, 0);
|
|
11453
|
-
_optionalChain([onChange, 'optionalCall',
|
|
11448
|
+
_optionalChain([onChange, 'optionalCall', _225 => _225(date)]);
|
|
11454
11449
|
};
|
|
11455
11450
|
const timeOptions = React37.useMemo(
|
|
11456
11451
|
() => generateTimeOptions(timeInterval, use24HourFormat),
|
|
@@ -11999,7 +11994,7 @@ var Switch = React43.forwardRef(({ className, checked, onCheckedChange, ...props
|
|
|
11999
11994
|
}, [checked]);
|
|
12000
11995
|
const handleCheckedChange = (newChecked) => {
|
|
12001
11996
|
setIsChecked(newChecked);
|
|
12002
|
-
_optionalChain([onCheckedChange, 'optionalCall',
|
|
11997
|
+
_optionalChain([onCheckedChange, 'optionalCall', _226 => _226(newChecked)]);
|
|
12003
11998
|
};
|
|
12004
11999
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12005
12000
|
SwitchPrimitives.Root,
|
|
@@ -12208,7 +12203,7 @@ function TagsManager({
|
|
|
12208
12203
|
const name = search.trim();
|
|
12209
12204
|
if (!name) return;
|
|
12210
12205
|
const result = await onCreateTag(name);
|
|
12211
|
-
if (_optionalChain([result, 'optionalAccess',
|
|
12206
|
+
if (_optionalChain([result, 'optionalAccess', _227 => _227.id])) {
|
|
12212
12207
|
onChange([...selectedIds, result.id]);
|
|
12213
12208
|
setSearch("");
|
|
12214
12209
|
}
|
|
@@ -12216,7 +12211,7 @@ function TagsManager({
|
|
|
12216
12211
|
const startEdit = React45.useCallback((id, name) => {
|
|
12217
12212
|
setEditingId(id);
|
|
12218
12213
|
setEditingName(name);
|
|
12219
|
-
setTimeout(() => _optionalChain([editInputRef, 'access',
|
|
12214
|
+
setTimeout(() => _optionalChain([editInputRef, 'access', _228 => _228.current, 'optionalAccess', _229 => _229.focus, 'call', _230 => _230()]), 0);
|
|
12220
12215
|
}, []);
|
|
12221
12216
|
const confirmEdit = React45.useCallback(async () => {
|
|
12222
12217
|
if (!onUpdateTag || !editingId || !editingName.trim()) return;
|
|
@@ -12243,7 +12238,7 @@ function TagsManager({
|
|
|
12243
12238
|
e.stopPropagation();
|
|
12244
12239
|
onChange([]);
|
|
12245
12240
|
setSearch("");
|
|
12246
|
-
_optionalChain([inputRef, 'access',
|
|
12241
|
+
_optionalChain([inputRef, 'access', _231 => _231.current, 'optionalAccess', _232 => _232.focus, 'call', _233 => _233()]);
|
|
12247
12242
|
},
|
|
12248
12243
|
[onChange]
|
|
12249
12244
|
);
|
|
@@ -12342,10 +12337,10 @@ function TagsManager({
|
|
|
12342
12337
|
align: "start",
|
|
12343
12338
|
onOpenAutoFocus: (e) => {
|
|
12344
12339
|
e.preventDefault();
|
|
12345
|
-
_optionalChain([inputRef, 'access',
|
|
12340
|
+
_optionalChain([inputRef, 'access', _234 => _234.current, 'optionalAccess', _235 => _235.focus, 'call', _236 => _236()]);
|
|
12346
12341
|
},
|
|
12347
12342
|
onInteractOutside: (e) => {
|
|
12348
|
-
if (_optionalChain([containerRef, 'access',
|
|
12343
|
+
if (_optionalChain([containerRef, 'access', _237 => _237.current, 'optionalAccess', _238 => _238.contains, 'call', _239 => _239(e.target)])) {
|
|
12349
12344
|
e.preventDefault();
|
|
12350
12345
|
}
|
|
12351
12346
|
},
|
|
@@ -13740,19 +13735,19 @@ function TabNavigation({
|
|
|
13740
13735
|
const validTabIds = _react.useMemo.call(void 0, () => new Set(tabs.map((t) => t.id)), [tabs]);
|
|
13741
13736
|
const getInitialTab = () => {
|
|
13742
13737
|
if (isUrlSyncEnabled) {
|
|
13743
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
13738
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _240 => _240.get, 'call', _241 => _241(paramName)]) || "";
|
|
13744
13739
|
if (validTabIds.has(fromUrl)) {
|
|
13745
13740
|
return fromUrl;
|
|
13746
13741
|
}
|
|
13747
13742
|
}
|
|
13748
|
-
return defaultTab || _optionalChain([tabs, 'access',
|
|
13743
|
+
return defaultTab || _optionalChain([tabs, 'access', _242 => _242[0], 'optionalAccess', _243 => _243.id]) || "";
|
|
13749
13744
|
};
|
|
13750
13745
|
const [internalActiveTab, setInternalActiveTab] = _react.useState.call(void 0, getInitialTab);
|
|
13751
13746
|
const activeTab = isUrlSyncEnabled ? internalActiveTab : controlledActiveTab || "";
|
|
13752
13747
|
_react.useEffect.call(void 0, () => {
|
|
13753
13748
|
if (!isUrlSyncEnabled) return;
|
|
13754
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
13755
|
-
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access',
|
|
13749
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _244 => _244.get, 'call', _245 => _245(paramName)]) || "";
|
|
13750
|
+
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access', _246 => _246[0], 'optionalAccess', _247 => _247.id]) || "";
|
|
13756
13751
|
if (nextTab !== internalActiveTab) {
|
|
13757
13752
|
setInternalActiveTab(nextTab);
|
|
13758
13753
|
}
|
|
@@ -13760,13 +13755,13 @@ function TabNavigation({
|
|
|
13760
13755
|
const handleTabChange = (tabId) => {
|
|
13761
13756
|
if (isUrlSyncEnabled) {
|
|
13762
13757
|
setInternalActiveTab(tabId);
|
|
13763
|
-
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess',
|
|
13758
|
+
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess', _248 => _248.toString, 'call', _249 => _249()]));
|
|
13764
13759
|
params.set(paramName, tabId);
|
|
13765
13760
|
const method = replaceState ? "replace" : "push";
|
|
13766
13761
|
router[method](`${pathname}?${params.toString()}`);
|
|
13767
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
13762
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _250 => _250(tabId)]);
|
|
13768
13763
|
} else {
|
|
13769
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
13764
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _251 => _251(tabId)]);
|
|
13770
13765
|
}
|
|
13771
13766
|
};
|
|
13772
13767
|
const scrollRef = _react.useRef.call(void 0, null);
|
|
@@ -13854,7 +13849,7 @@ function TabNavigation({
|
|
|
13854
13849
|
var getTabById = (tabs, tabId) => tabs.find((tab) => tab.id === tabId);
|
|
13855
13850
|
var getTabComponent = (tabs, tabId) => {
|
|
13856
13851
|
const tab = getTabById(tabs, tabId);
|
|
13857
|
-
return _optionalChain([tab, 'optionalAccess',
|
|
13852
|
+
return _optionalChain([tab, 'optionalAccess', _252 => _252.component]) || null;
|
|
13858
13853
|
};
|
|
13859
13854
|
|
|
13860
13855
|
// src/components/ui/alert.tsx
|
|
@@ -13994,7 +13989,7 @@ function ReleaseChangelogSection({
|
|
|
13994
13989
|
className: "overflow-hidden transition-[max-height] duration-500",
|
|
13995
13990
|
style: {
|
|
13996
13991
|
transitionTimingFunction: "cubic-bezier(0.33, 1, 0.68, 1)",
|
|
13997
|
-
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access',
|
|
13992
|
+
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access', _253 => _253.current, 'optionalAccess', _254 => _254.scrollHeight]), () => ( 2e3)) : PREVIEW_COLLAPSED_HEIGHT,
|
|
13998
13993
|
...previewNeedsFade && !previewExpanded ? {
|
|
13999
13994
|
maskImage: "linear-gradient(to bottom, black 30%, transparent 100%)",
|
|
14000
13995
|
WebkitMaskImage: "linear-gradient(to bottom, black 30%, transparent 100%)"
|
|
@@ -14431,16 +14426,16 @@ function FilterModal({
|
|
|
14431
14426
|
};
|
|
14432
14427
|
const handleReset = () => {
|
|
14433
14428
|
onFilterChange({});
|
|
14434
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
14429
|
+
_optionalChain([onTagsChange, 'optionalCall', _255 => _255([])]);
|
|
14435
14430
|
onClose();
|
|
14436
14431
|
};
|
|
14437
14432
|
const handleApply = () => {
|
|
14438
14433
|
onFilterChange(selectedFilters);
|
|
14439
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
14434
|
+
_optionalChain([onTagsChange, 'optionalCall', _256 => _256(pendingTags)]);
|
|
14440
14435
|
onClose();
|
|
14441
14436
|
};
|
|
14442
14437
|
const getColumnDirection = (columnKey) => {
|
|
14443
|
-
return _optionalChain([sortConfig, 'optionalAccess',
|
|
14438
|
+
return _optionalChain([sortConfig, 'optionalAccess', _257 => _257.sortBy]) === columnKey ? sortConfig.sortDirection : void 0;
|
|
14444
14439
|
};
|
|
14445
14440
|
const hasSort = !!sortConfig && sortConfig.columns.length > 0;
|
|
14446
14441
|
const hasFilterGroups = filterGroups.length > 0;
|
|
@@ -14489,7 +14484,7 @@ function FilterModal({
|
|
|
14489
14484
|
{
|
|
14490
14485
|
column,
|
|
14491
14486
|
currentDirection: getColumnDirection(column.key),
|
|
14492
|
-
onSort: (direction) => _optionalChain([onSort, 'optionalCall',
|
|
14487
|
+
onSort: (direction) => _optionalChain([onSort, 'optionalCall', _258 => _258(column.key, direction)]),
|
|
14493
14488
|
onClear: onSortClear ? () => onSortClear(column.key) : void 0
|
|
14494
14489
|
},
|
|
14495
14490
|
column.key
|
|
@@ -14667,7 +14662,7 @@ function IconButtonsVariant({
|
|
|
14667
14662
|
}) {
|
|
14668
14663
|
const desktopActions = actions.filter((a) => !a.showOnlyMobile);
|
|
14669
14664
|
const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
|
|
14670
|
-
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access',
|
|
14665
|
+
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _259 => _259[0], 'access', _260 => _260.submenu, 'optionalAccess', _261 => _261.length]);
|
|
14671
14666
|
const singleAction = isSingleAction ? actions[0] : null;
|
|
14672
14667
|
const useSingleActionMobile = isSingleAction && !hasMenuActions;
|
|
14673
14668
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -15818,7 +15813,7 @@ function getShellIcon(shellType) {
|
|
|
15818
15813
|
if (!shellType) return void 0;
|
|
15819
15814
|
const normalized = shellType.toUpperCase();
|
|
15820
15815
|
const shellDef = SHELL_TYPES.find((s) => s.id === normalized);
|
|
15821
|
-
return _optionalChain([shellDef, 'optionalAccess',
|
|
15816
|
+
return _optionalChain([shellDef, 'optionalAccess', _262 => _262.icon]);
|
|
15822
15817
|
}
|
|
15823
15818
|
|
|
15824
15819
|
// src/types/os.types.ts
|
|
@@ -15891,7 +15886,7 @@ function getOSIcon(osType) {
|
|
|
15891
15886
|
const normalized = normalizeOSType(osType);
|
|
15892
15887
|
if (!normalized) return void 0;
|
|
15893
15888
|
const osTypeDef = OS_TYPES.find((t) => t.id === normalized);
|
|
15894
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
15889
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _263 => _263.icon]);
|
|
15895
15890
|
}
|
|
15896
15891
|
function getOSTypeDefinition(osType) {
|
|
15897
15892
|
if (!osType) return void 0;
|
|
@@ -15901,7 +15896,7 @@ function getOSTypeDefinition(osType) {
|
|
|
15901
15896
|
}
|
|
15902
15897
|
function getOSPlatformId(osType) {
|
|
15903
15898
|
const osTypeDef = getOSTypeDefinition(osType);
|
|
15904
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
15899
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _264 => _264.platformId]);
|
|
15905
15900
|
}
|
|
15906
15901
|
function isOSPlatform(deviceOS, targetPlatform) {
|
|
15907
15902
|
if (!deviceOS || !targetPlatform) return false;
|
|
@@ -15994,10 +15989,10 @@ var GENERIC_EMAIL_DOMAINS = [
|
|
|
15994
15989
|
];
|
|
15995
15990
|
function extractDomainFromEmail(email) {
|
|
15996
15991
|
if (!email || !email.includes("@")) return null;
|
|
15997
|
-
return _optionalChain([email, 'access',
|
|
15992
|
+
return _optionalChain([email, 'access', _265 => _265.split, 'call', _266 => _266("@"), 'access', _267 => _267[1], 'optionalAccess', _268 => _268.toLowerCase, 'call', _269 => _269()]) || null;
|
|
15998
15993
|
}
|
|
15999
15994
|
function normalizeDomain(domain) {
|
|
16000
|
-
return _optionalChain([domain, 'optionalAccess',
|
|
15995
|
+
return _optionalChain([domain, 'optionalAccess', _270 => _270.toLowerCase, 'call', _271 => _271(), 'access', _272 => _272.replace, 'call', _273 => _273(/^https?:\/\//, ""), 'access', _274 => _274.replace, 'call', _275 => _275(/^www\./, ""), 'access', _276 => _276.split, 'call', _277 => _277("/"), 'access', _278 => _278[0], 'access', _279 => _279.trim, 'call', _280 => _280()]) || "";
|
|
16001
15996
|
}
|
|
16002
15997
|
function isGenericDomain(domain) {
|
|
16003
15998
|
const normalized = normalizeDomain(domain);
|
|
@@ -16406,7 +16401,7 @@ function createLocalStorageAdapter(options) {
|
|
|
16406
16401
|
const tag = _nullishCoalesce(options.logTag, () => ( "[local-storage]"));
|
|
16407
16402
|
const backend = _nullishCoalesce(options.backend, () => ( "local"));
|
|
16408
16403
|
const resolveKey = () => {
|
|
16409
|
-
const ns = _optionalChain([options, 'access',
|
|
16404
|
+
const ns = _optionalChain([options, 'access', _281 => _281.namespace, 'optionalCall', _282 => _282()]);
|
|
16410
16405
|
return ns ? `${ns}.${options.key}` : options.key;
|
|
16411
16406
|
};
|
|
16412
16407
|
return {
|
|
@@ -16493,7 +16488,7 @@ function getEmbedProxyAuth() {
|
|
|
16493
16488
|
}
|
|
16494
16489
|
function getPersistedProxyEmail() {
|
|
16495
16490
|
const persisted = adapter.load();
|
|
16496
|
-
return _nullishCoalesce(_optionalChain([persisted, 'optionalAccess',
|
|
16491
|
+
return _nullishCoalesce(_optionalChain([persisted, 'optionalAccess', _283 => _283.email, 'access', _284 => _284.trim, 'call', _285 => _285(), 'access', _286 => _286.toLowerCase, 'call', _287 => _287()]), () => ( null));
|
|
16497
16492
|
}
|
|
16498
16493
|
function setEmbedProxyAuth(value) {
|
|
16499
16494
|
adapter.save({
|
|
@@ -16510,15 +16505,15 @@ function clearEmbedProxyAuth() {
|
|
|
16510
16505
|
function applyProxyAuth(url, baseHeaders = { "Content-Type": "application/json" }) {
|
|
16511
16506
|
const auth = getEmbedProxyAuth();
|
|
16512
16507
|
const headers = { ...baseHeaders };
|
|
16513
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
16508
|
+
if (_optionalChain([auth, 'optionalAccess', _288 => _288.secret])) {
|
|
16514
16509
|
headers.Authorization = `Bearer ${auth.secret}`;
|
|
16515
16510
|
}
|
|
16516
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
16511
|
+
if (_optionalChain([auth, 'optionalAccess', _289 => _289.email])) {
|
|
16517
16512
|
headers["X-Chat-Act-As"] = auth.email;
|
|
16518
16513
|
}
|
|
16519
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
16520
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
16521
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
16514
|
+
if (_optionalChain([auth, 'optionalAccess', _290 => _290.firstName])) headers["X-Chat-First-Name"] = auth.firstName;
|
|
16515
|
+
if (_optionalChain([auth, 'optionalAccess', _291 => _291.lastName])) headers["X-Chat-Last-Name"] = auth.lastName;
|
|
16516
|
+
if (_optionalChain([auth, 'optionalAccess', _292 => _292.avatarUrl])) headers["X-Chat-Avatar-Url"] = auth.avatarUrl;
|
|
16522
16517
|
return { url, headers };
|
|
16523
16518
|
}
|
|
16524
16519
|
|
|
@@ -16570,7 +16565,7 @@ function setInFlightRefresh(refresh) {
|
|
|
16570
16565
|
}
|
|
16571
16566
|
function dedupedRefresh() {
|
|
16572
16567
|
const adapter2 = getRegisteredAuthAdapter();
|
|
16573
|
-
if (!_optionalChain([adapter2, 'optionalAccess',
|
|
16568
|
+
if (!_optionalChain([adapter2, 'optionalAccess', _293 => _293.refresh])) return Promise.resolve(false);
|
|
16574
16569
|
let inFlightRefresh = getInFlightRefresh();
|
|
16575
16570
|
if (!inFlightRefresh) {
|
|
16576
16571
|
inFlightRefresh = Promise.resolve().then(() => adapter2.refresh()).catch(() => false).finally(() => {
|
|
@@ -16583,12 +16578,12 @@ function dedupedRefresh() {
|
|
|
16583
16578
|
async function fetchWithRefresh(url, init, baseHeaders, isRetry) {
|
|
16584
16579
|
const { url: authedUrl, headers } = applyProxyAuth(url, { ...baseHeaders });
|
|
16585
16580
|
const adapter2 = getRegisteredAuthAdapter();
|
|
16586
|
-
if (_optionalChain([adapter2, 'optionalAccess',
|
|
16581
|
+
if (_optionalChain([adapter2, 'optionalAccess', _294 => _294.getHeaders])) {
|
|
16587
16582
|
for (const [k, v] of Object.entries(adapter2.getHeaders())) {
|
|
16588
16583
|
if (v !== void 0) headers[k] = v;
|
|
16589
16584
|
}
|
|
16590
16585
|
}
|
|
16591
|
-
const credentials = _nullishCoalesce(_nullishCoalesce(_optionalChain([adapter2, 'optionalAccess',
|
|
16586
|
+
const credentials = _nullishCoalesce(_nullishCoalesce(_optionalChain([adapter2, 'optionalAccess', _295 => _295.credentials]), () => ( init.credentials)), () => ( "same-origin"));
|
|
16592
16587
|
const response = await fetch(authedUrl, {
|
|
16593
16588
|
...init,
|
|
16594
16589
|
headers,
|
|
@@ -16599,7 +16594,7 @@ async function fetchWithRefresh(url, init, baseHeaders, isRetry) {
|
|
|
16599
16594
|
// `SameSite=None` must be configured server-side for that to work).
|
|
16600
16595
|
credentials
|
|
16601
16596
|
});
|
|
16602
|
-
if (response.status === 401 && !isRetry && _optionalChain([adapter2, 'optionalAccess',
|
|
16597
|
+
if (response.status === 401 && !isRetry && _optionalChain([adapter2, 'optionalAccess', _296 => _296.refresh])) {
|
|
16603
16598
|
const refreshed = await dedupedRefresh();
|
|
16604
16599
|
if (refreshed) {
|
|
16605
16600
|
return fetchWithRefresh(url, init, baseHeaders, true);
|
|
@@ -16637,7 +16632,7 @@ function assertSameOrigin(url) {
|
|
|
16637
16632
|
|
|
16638
16633
|
// src/utils/sse-decision-frame.ts
|
|
16639
16634
|
async function readLeadingDecisionFrame(response) {
|
|
16640
|
-
const reader = _optionalChain([response, 'access',
|
|
16635
|
+
const reader = _optionalChain([response, 'access', _297 => _297.body, 'optionalAccess', _298 => _298.getReader, 'call', _299 => _299()]);
|
|
16641
16636
|
if (!reader) throw new Error("readLeadingDecisionFrame: response has no body");
|
|
16642
16637
|
const decoder = new TextDecoder();
|
|
16643
16638
|
let buffer = "";
|
|
@@ -16666,9 +16661,9 @@ async function readLeadingDecisionFrame(response) {
|
|
|
16666
16661
|
);
|
|
16667
16662
|
}
|
|
16668
16663
|
const obj = parsed;
|
|
16669
|
-
if (_optionalChain([obj, 'optionalAccess',
|
|
16664
|
+
if (_optionalChain([obj, 'optionalAccess', _300 => _300.kind]) !== "decision_resolved") {
|
|
16670
16665
|
throw new Error(
|
|
16671
|
-
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess',
|
|
16666
|
+
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _301 => _301.kind]))}`
|
|
16672
16667
|
);
|
|
16673
16668
|
}
|
|
16674
16669
|
frame = normalizeDecisionFrame(obj);
|
|
@@ -16709,7 +16704,7 @@ var AUTO_CONTINUATION_DIRECTIVE_PREFIX = "[internal-auto-continuation]";
|
|
|
16709
16704
|
function buildAutoContinuationDirective(toolName, opts = {}) {
|
|
16710
16705
|
const ticketRef = opts.ticketId ? ` (ticket #${opts.ticketId})` : "";
|
|
16711
16706
|
const ticketHash = opts.ticketId ? ` #${opts.ticketId}` : "";
|
|
16712
|
-
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access',
|
|
16707
|
+
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _302 => _302.status, 'optionalAccess', _303 => _303.toUpperCase, 'call', _304 => _304()]) === "CLOSED";
|
|
16713
16708
|
if (toolName === "create_ticket") {
|
|
16714
16709
|
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.`;
|
|
16715
16710
|
}
|
|
@@ -16771,7 +16766,7 @@ function formatSingularLookupInvocation(cmdId, value) {
|
|
|
16771
16766
|
return safe ? `/${cmdId} "${safe}"` : `/${cmdId}`;
|
|
16772
16767
|
}
|
|
16773
16768
|
function extractEntityIdFilter(override, expectedTableId) {
|
|
16774
|
-
const f = _optionalChain([override, 'optionalAccess',
|
|
16769
|
+
const f = _optionalChain([override, 'optionalAccess', _305 => _305.entityIdFilter]);
|
|
16775
16770
|
if (!f) return null;
|
|
16776
16771
|
const tableId = typeof f.tableId === "string" ? f.tableId : "";
|
|
16777
16772
|
const id = typeof f.id === "string" ? f.id : "";
|
|
@@ -16846,7 +16841,7 @@ function getTaskTypeLabel(customItemId) {
|
|
|
16846
16841
|
|
|
16847
16842
|
// src/components/chat/utils/agent-status-message.ts
|
|
16848
16843
|
function getStatusColorScheme(status) {
|
|
16849
|
-
const s = _optionalChain([status, 'optionalAccess',
|
|
16844
|
+
const s = _optionalChain([status, 'optionalAccess', _306 => _306.toLowerCase, 'call', _307 => _307()]) || "";
|
|
16850
16845
|
switch (status) {
|
|
16851
16846
|
case "completed":
|
|
16852
16847
|
case "success":
|
|
@@ -17132,9 +17127,6 @@ function scrollElementIntoView(target, options = {}) {
|
|
|
17132
17127
|
|
|
17133
17128
|
// src/utils/list-url.ts
|
|
17134
17129
|
var ALIASES = { blog_post_existing: "blog_post" };
|
|
17135
|
-
function canonicalContentRefType(contentRefType) {
|
|
17136
|
-
return _nullishCoalesce(ALIASES[contentRefType], () => ( contentRefType));
|
|
17137
|
-
}
|
|
17138
17130
|
var BUILDERS = {
|
|
17139
17131
|
roadmap_item: (ids, b) => `${b}/api/roadmap?task_ids=${ids.join(",")}`,
|
|
17140
17132
|
delivery_item: (ids, b) => `${b}/api/delivery?task_ids=${ids.join(",")}`,
|
|
@@ -17159,60 +17151,6 @@ function buildListUrl(contentRefType, ids, base = "") {
|
|
|
17159
17151
|
return fn ? fn(ids, base) : null;
|
|
17160
17152
|
}
|
|
17161
17153
|
|
|
17162
|
-
// src/utils/content-ref-groups.ts
|
|
17163
|
-
var CONTENT_REF_GROUPS = {
|
|
17164
|
-
investor_update: { label: "Investor Updates", order: 1, layout: "grid", gridSize: "default" },
|
|
17165
|
-
product_release: { label: "Product Releases", order: 2, layout: "list", gridSize: "lg" },
|
|
17166
|
-
podcast: { label: "Podcasts", order: 3, layout: "list", gridSize: "default" },
|
|
17167
|
-
webinar: { label: "Webinars", order: 4, layout: "list", gridSize: "default" },
|
|
17168
|
-
case_study: { label: "Case Studies", order: 5, layout: "grid", gridSize: "default" },
|
|
17169
|
-
event: { label: "Events", order: 6, layout: "list", gridSize: "default" },
|
|
17170
|
-
blog_post_existing: { label: "Blog Posts", order: 7, layout: "grid", gridSize: "default" },
|
|
17171
|
-
customer_interview: { label: "Customer Interviews", order: 8, layout: "grid", gridSize: "default" },
|
|
17172
|
-
onboarding_guide: { label: "Onboarding Guides", order: 9, layout: "list", gridSize: "default" }
|
|
17173
|
-
};
|
|
17174
|
-
function getContentRefLabel(type) {
|
|
17175
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _312 => _312[type], 'optionalAccess', _313 => _313.label]), () => ( null));
|
|
17176
|
-
}
|
|
17177
|
-
function getContentRefLabelOrTitleCase(type) {
|
|
17178
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _314 => _314[type], 'optionalAccess', _315 => _315.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
|
|
17179
|
-
}
|
|
17180
|
-
function orderContentRefTypes(present) {
|
|
17181
|
-
const presentSet = new Set(present);
|
|
17182
|
-
const registeredInOrder = Object.entries(CONTENT_REF_GROUPS).sort(([, a], [, b]) => a.order - b.order).map(([type]) => type).filter((type) => presentSet.has(type));
|
|
17183
|
-
const unregistered = [...presentSet].filter((type) => !CONTENT_REF_GROUPS[type]);
|
|
17184
|
-
return [...registeredInOrder, ...unregistered];
|
|
17185
|
-
}
|
|
17186
|
-
|
|
17187
|
-
// src/utils/extract-items.ts
|
|
17188
|
-
function extractItems(data) {
|
|
17189
|
-
if (!data || typeof data !== "object") return [];
|
|
17190
|
-
const obj = data;
|
|
17191
|
-
if (Array.isArray(obj.items)) return obj.items;
|
|
17192
|
-
if (Array.isArray(obj.posts)) return obj.posts;
|
|
17193
|
-
if (Array.isArray(obj.campaigns)) return obj.campaigns;
|
|
17194
|
-
if (Array.isArray(obj.completed) || Array.isArray(obj.inProgress)) {
|
|
17195
|
-
const completed = Array.isArray(obj.completed) ? obj.completed : [];
|
|
17196
|
-
const inProgress = Array.isArray(obj.inProgress) ? obj.inProgress : [];
|
|
17197
|
-
return [...completed, ...inProgress];
|
|
17198
|
-
}
|
|
17199
|
-
if (Array.isArray(obj.data)) return obj.data;
|
|
17200
|
-
if (Array.isArray(data)) return data;
|
|
17201
|
-
return [];
|
|
17202
|
-
}
|
|
17203
|
-
function extractItemId(type, item) {
|
|
17204
|
-
if (!item || typeof item !== "object") return null;
|
|
17205
|
-
const obj = item;
|
|
17206
|
-
if (type === "roadmap_item" || type === "delivery_item" || type === "internal_task") {
|
|
17207
|
-
const ext = obj.external_id;
|
|
17208
|
-
if (typeof ext === "string") return ext;
|
|
17209
|
-
}
|
|
17210
|
-
const id = obj.id;
|
|
17211
|
-
if (typeof id === "string") return id;
|
|
17212
|
-
if (typeof id === "number") return String(id);
|
|
17213
|
-
return null;
|
|
17214
|
-
}
|
|
17215
|
-
|
|
17216
17154
|
// src/utils/content-href.ts
|
|
17217
17155
|
var DEFAULT_CONTENT_SUFFIXES = {
|
|
17218
17156
|
onboarding_guide: "onboarding-guides",
|
|
@@ -17889,26 +17827,26 @@ function DeviceCard({
|
|
|
17889
17827
|
] }),
|
|
17890
17828
|
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 })
|
|
17891
17829
|
] }),
|
|
17892
|
-
_optionalChain([actions, 'access',
|
|
17830
|
+
_optionalChain([actions, 'access', _308 => _308.moreButton, 'optionalAccess', _309 => _309.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17893
17831
|
"div",
|
|
17894
17832
|
{
|
|
17895
17833
|
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",
|
|
17896
17834
|
onClick: (e) => {
|
|
17897
17835
|
e.stopPropagation();
|
|
17898
|
-
_optionalChain([actions, 'access',
|
|
17836
|
+
_optionalChain([actions, 'access', _310 => _310.moreButton, 'optionalAccess', _311 => _311.onClick, 'optionalCall', _312 => _312()]);
|
|
17899
17837
|
},
|
|
17900
17838
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
|
|
17901
17839
|
}
|
|
17902
17840
|
),
|
|
17903
|
-
_optionalChain([actions, 'access',
|
|
17904
|
-
_optionalChain([actions, 'access',
|
|
17841
|
+
_optionalChain([actions, 'access', _313 => _313.detailsButton, 'optionalAccess', _314 => _314.visible]) !== false && _optionalChain([actions, 'access', _315 => _315.detailsButton, 'optionalAccess', _316 => _316.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
|
|
17842
|
+
_optionalChain([actions, 'access', _317 => _317.customActions, 'optionalAccess', _318 => _318.map, 'call', _319 => _319(
|
|
17905
17843
|
(action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
17906
17844
|
"div",
|
|
17907
17845
|
{
|
|
17908
17846
|
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",
|
|
17909
17847
|
onClick: (e) => {
|
|
17910
17848
|
e.stopPropagation();
|
|
17911
|
-
_optionalChain([action, 'access',
|
|
17849
|
+
_optionalChain([action, 'access', _320 => _320.onClick, 'optionalCall', _321 => _321()]);
|
|
17912
17850
|
},
|
|
17913
17851
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3 text-ods-text-primary text-nowrap tracking-[-0.36px]", children: action.label })
|
|
17914
17852
|
},
|
|
@@ -18408,7 +18346,7 @@ function MoreActionsMenu({
|
|
|
18408
18346
|
] });
|
|
18409
18347
|
const handleActivate = (e) => {
|
|
18410
18348
|
e.stopPropagation();
|
|
18411
|
-
if (!item.disabled) _optionalChain([item, 'access',
|
|
18349
|
+
if (!item.disabled) _optionalChain([item, 'access', _322 => _322.onClick, 'optionalCall', _323 => _323()]);
|
|
18412
18350
|
};
|
|
18413
18351
|
if (item.href) {
|
|
18414
18352
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -18475,7 +18413,7 @@ function OrganizationCard({
|
|
|
18475
18413
|
const handleActionClick = (e) => {
|
|
18476
18414
|
e.preventDefault();
|
|
18477
18415
|
e.stopPropagation();
|
|
18478
|
-
_optionalChain([actionButton, 'optionalAccess',
|
|
18416
|
+
_optionalChain([actionButton, 'optionalAccess', _324 => _324.onClick, 'call', _325 => _325(organization, e)]);
|
|
18479
18417
|
};
|
|
18480
18418
|
const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
18481
18419
|
"div",
|
|
@@ -19380,10 +19318,10 @@ var getContentDimensions = (config) => {
|
|
|
19380
19318
|
const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
|
|
19381
19319
|
const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
|
|
19382
19320
|
const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
|
|
19383
|
-
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
19384
|
-
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
19385
|
-
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
19386
|
-
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
19321
|
+
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _326 => _326.mobileContentDimensions, 'optionalAccess', _327 => _327.width]))), () => ( defaultMobile.width));
|
|
19322
|
+
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _328 => _328.mobileContentDimensions, 'optionalAccess', _329 => _329.height]))), () => ( defaultMobile.height));
|
|
19323
|
+
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _330 => _330.desktopContentDimensions, 'optionalAccess', _331 => _331.width]))), () => ( defaultDesktop.width));
|
|
19324
|
+
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _332 => _332.desktopContentDimensions, 'optionalAccess', _333 => _333.height]))), () => ( defaultDesktop.height));
|
|
19387
19325
|
return {
|
|
19388
19326
|
mobile: { width: mobileWidth, height: mobileHeight },
|
|
19389
19327
|
desktop: { width: desktopWidth, height: desktopHeight }
|
|
@@ -19517,7 +19455,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
|
|
|
19517
19455
|
const contentDimensions = getContentDimensions(config);
|
|
19518
19456
|
const mobileHeight = contentDimensions.mobile.height;
|
|
19519
19457
|
const calculatedHeight = Math.max(mobileHeight + 100, 400);
|
|
19520
|
-
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess',
|
|
19458
|
+
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _334 => _334.innerHeight]) * 0.85 || 650)}px`;
|
|
19521
19459
|
})(),
|
|
19522
19460
|
minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
|
|
19523
19461
|
const contentDimensions = getContentDimensions(config);
|
|
@@ -19622,7 +19560,7 @@ var FigmaPrototypeViewer = ({
|
|
|
19622
19560
|
const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
|
|
19623
19561
|
const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
|
|
19624
19562
|
const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
|
|
19625
|
-
config.defaultSectionId || _optionalChain([config, 'access',
|
|
19563
|
+
config.defaultSectionId || _optionalChain([config, 'access', _335 => _335.sections, 'access', _336 => _336[0], 'optionalAccess', _337 => _337.id]) || ""
|
|
19626
19564
|
);
|
|
19627
19565
|
const activeSection = externalActiveSection || internalActiveSection;
|
|
19628
19566
|
const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
|
|
@@ -19712,7 +19650,7 @@ var FigmaPrototypeViewer = ({
|
|
|
19712
19650
|
const handleMessage = (event) => {
|
|
19713
19651
|
if (event.origin !== "https://www.figma.com") return;
|
|
19714
19652
|
const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
|
|
19715
|
-
if (_optionalChain([event, 'access',
|
|
19653
|
+
if (_optionalChain([event, 'access', _338 => _338.data, 'optionalAccess', _339 => _339.type]) && validEvents.includes(event.data.type)) {
|
|
19716
19654
|
const figmaEvent = event.data;
|
|
19717
19655
|
console.log("[Figma Event]", figmaEvent.type, viewMode);
|
|
19718
19656
|
switch (figmaEvent.type) {
|
|
@@ -19722,19 +19660,19 @@ var FigmaPrototypeViewer = ({
|
|
|
19722
19660
|
setIframeState("READY");
|
|
19723
19661
|
break;
|
|
19724
19662
|
case "PRESENTED_NODE_CHANGED":
|
|
19725
|
-
if (_optionalChain([figmaEvent, 'access',
|
|
19663
|
+
if (_optionalChain([figmaEvent, 'access', _340 => _340.data, 'optionalAccess', _341 => _341.presentedNodeId])) {
|
|
19726
19664
|
setCurrentNodeId(figmaEvent.data.presentedNodeId);
|
|
19727
19665
|
if (!isNavigating) {
|
|
19728
19666
|
const matchingSection = config.sections.find((s) => {
|
|
19729
|
-
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access',
|
|
19730
|
-
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access',
|
|
19667
|
+
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _342 => _342.data, 'optionalAccess', _343 => _343.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _344 => _344.data, 'optionalAccess', _345 => _345.presentedNodeId]);
|
|
19668
|
+
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _346 => _346.data, 'optionalAccess', _347 => _347.presentedNodeId]) || _optionalChain([s, 'access', _348 => _348.mobileStartingNodeId, 'optionalAccess', _349 => _349.replace, 'call', _350 => _350(":", "-")]) === _optionalChain([figmaEvent, 'access', _351 => _351.data, 'optionalAccess', _352 => _352.presentedNodeId]);
|
|
19731
19669
|
return desktopMatch || mobileMatch;
|
|
19732
19670
|
});
|
|
19733
19671
|
if (matchingSection && matchingSection.id !== activeSection) {
|
|
19734
19672
|
if (!externalActiveSection) {
|
|
19735
19673
|
setInternalActiveSection(matchingSection.id);
|
|
19736
19674
|
}
|
|
19737
|
-
_optionalChain([config, 'access',
|
|
19675
|
+
_optionalChain([config, 'access', _353 => _353.onSectionChange, 'optionalCall', _354 => _354(matchingSection.id)]);
|
|
19738
19676
|
}
|
|
19739
19677
|
}
|
|
19740
19678
|
}
|
|
@@ -19747,7 +19685,7 @@ var FigmaPrototypeViewer = ({
|
|
|
19747
19685
|
}, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
|
|
19748
19686
|
const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
|
|
19749
19687
|
const section = config.sections.find((s) => s.id === sectionId);
|
|
19750
|
-
if (!section || !_optionalChain([iframeRef, 'access',
|
|
19688
|
+
if (!section || !_optionalChain([iframeRef, 'access', _355 => _355.current, 'optionalAccess', _356 => _356.contentWindow]) || !isInitialized) {
|
|
19751
19689
|
return;
|
|
19752
19690
|
}
|
|
19753
19691
|
setIsNavigating(true);
|
|
@@ -19755,7 +19693,7 @@ var FigmaPrototypeViewer = ({
|
|
|
19755
19693
|
if (!externalActiveSection) {
|
|
19756
19694
|
setInternalActiveSection(sectionId);
|
|
19757
19695
|
}
|
|
19758
|
-
_optionalChain([config, 'access',
|
|
19696
|
+
_optionalChain([config, 'access', _357 => _357.onSectionChange, 'optionalCall', _358 => _358(sectionId)]);
|
|
19759
19697
|
const command = {
|
|
19760
19698
|
type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
|
|
19761
19699
|
data: { nodeId }
|
|
@@ -20075,7 +20013,7 @@ var FiltersDropdown = ({
|
|
|
20075
20013
|
defaults[section.id] = section.defaultSelected || [];
|
|
20076
20014
|
});
|
|
20077
20015
|
setSelectedFilters(defaults);
|
|
20078
|
-
_optionalChain([onReset, 'optionalCall',
|
|
20016
|
+
_optionalChain([onReset, 'optionalCall', _359 => _359()]);
|
|
20079
20017
|
setIsOpen(false);
|
|
20080
20018
|
};
|
|
20081
20019
|
const handleApply = () => {
|
|
@@ -20368,7 +20306,7 @@ function MediaGalleryManager({
|
|
|
20368
20306
|
const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
|
|
20369
20307
|
const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
|
|
20370
20308
|
const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
|
|
20371
|
-
const file = _optionalChain([event, 'access',
|
|
20309
|
+
const file = _optionalChain([event, 'access', _360 => _360.target, 'access', _361 => _361.files, 'optionalAccess', _362 => _362[0]]);
|
|
20372
20310
|
if (!file) return;
|
|
20373
20311
|
let mediaType;
|
|
20374
20312
|
if (file.type.startsWith("image/")) {
|
|
@@ -20483,7 +20421,7 @@ function MediaGalleryManager({
|
|
|
20483
20421
|
{
|
|
20484
20422
|
type: "button",
|
|
20485
20423
|
variant: "outline",
|
|
20486
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
20424
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _363 => _363.current, 'optionalAccess', _364 => _364.click, 'call', _365 => _365()]),
|
|
20487
20425
|
disabled: isUploading,
|
|
20488
20426
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
20489
20427
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -21134,7 +21072,7 @@ function ReleaseMediaManager({
|
|
|
21134
21072
|
const fileInputRef = _react.useRef.call(void 0, null);
|
|
21135
21073
|
const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
|
|
21136
21074
|
const handleFileSelect = async (event) => {
|
|
21137
|
-
const file = _optionalChain([event, 'access',
|
|
21075
|
+
const file = _optionalChain([event, 'access', _366 => _366.target, 'access', _367 => _367.files, 'optionalAccess', _368 => _368[0]]);
|
|
21138
21076
|
if (!file) return;
|
|
21139
21077
|
let mediaType;
|
|
21140
21078
|
if (file.type.startsWith("image/")) {
|
|
@@ -21214,7 +21152,7 @@ function ReleaseMediaManager({
|
|
|
21214
21152
|
{
|
|
21215
21153
|
type: "button",
|
|
21216
21154
|
variant: "outline",
|
|
21217
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
21155
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _369 => _369.current, 'optionalAccess', _370 => _370.click, 'call', _371 => _371()]),
|
|
21218
21156
|
disabled: uploadingIndex !== null,
|
|
21219
21157
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
21220
21158
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -21427,7 +21365,7 @@ function SEOEditorPreview({
|
|
|
21427
21365
|
const displayImage = hasOgImage || hasFeaturedImage;
|
|
21428
21366
|
const handleImageUpload = async (event) => {
|
|
21429
21367
|
if (!onOgImageUpload) return;
|
|
21430
|
-
const file = _optionalChain([event, 'access',
|
|
21368
|
+
const file = _optionalChain([event, 'access', _372 => _372.target, 'access', _373 => _373.files, 'optionalAccess', _374 => _374[0]]);
|
|
21431
21369
|
if (!file) return;
|
|
21432
21370
|
setIsUploading(true);
|
|
21433
21371
|
try {
|
|
@@ -21558,7 +21496,7 @@ function SEOEditorPreview({
|
|
|
21558
21496
|
type: "button",
|
|
21559
21497
|
variant: "outline",
|
|
21560
21498
|
size: "icon",
|
|
21561
|
-
onClick: () => _optionalChain([fileInputRef, 'optionalAccess',
|
|
21499
|
+
onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _375 => _375.click, 'call', _376 => _376()]),
|
|
21562
21500
|
disabled: disabled || isUploading,
|
|
21563
21501
|
className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
|
|
21564
21502
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
|
|
@@ -21581,7 +21519,7 @@ function SEOEditorPreview({
|
|
|
21581
21519
|
"div",
|
|
21582
21520
|
{
|
|
21583
21521
|
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",
|
|
21584
|
-
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess',
|
|
21522
|
+
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _377 => _377.click, 'call', _378 => _378()]),
|
|
21585
21523
|
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: [
|
|
21586
21524
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
|
|
21587
21525
|
/* @__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" })
|
|
@@ -21666,7 +21604,7 @@ function SocialLinksManager({
|
|
|
21666
21604
|
className = ""
|
|
21667
21605
|
}) {
|
|
21668
21606
|
const addLink = () => {
|
|
21669
|
-
const firstPlatform = _optionalChain([platforms, 'access',
|
|
21607
|
+
const firstPlatform = _optionalChain([platforms, 'access', _379 => _379[0], 'optionalAccess', _380 => _380.name]) || "website";
|
|
21670
21608
|
onChange([...links, { platform: firstPlatform, url: "" }]);
|
|
21671
21609
|
};
|
|
21672
21610
|
const removeLink = (index) => {
|
|
@@ -21678,7 +21616,7 @@ function SocialLinksManager({
|
|
|
21678
21616
|
onChange(updated);
|
|
21679
21617
|
};
|
|
21680
21618
|
const getIcon = (link, platform) => {
|
|
21681
|
-
const iconKey = _optionalChain([platform, 'optionalAccess',
|
|
21619
|
+
const iconKey = _optionalChain([platform, 'optionalAccess', _381 => _381.icon_name]) || link.platform;
|
|
21682
21620
|
const IconComponent = iconMap[iconKey];
|
|
21683
21621
|
return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
|
|
21684
21622
|
};
|
|
@@ -21703,7 +21641,7 @@ function SocialLinksManager({
|
|
|
21703
21641
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21704
21642
|
_chunkGRTZ23GLcjs.Input,
|
|
21705
21643
|
{
|
|
21706
|
-
placeholder: _optionalChain([platform, 'optionalAccess',
|
|
21644
|
+
placeholder: _optionalChain([platform, 'optionalAccess', _382 => _382.placeholder]) || "Profile URL",
|
|
21707
21645
|
value: link.url,
|
|
21708
21646
|
onChange: (e) => updateLink(index, "url", e.target.value),
|
|
21709
21647
|
onKeyDown: (e) => {
|
|
@@ -22055,7 +21993,7 @@ function useVideoOriginPreconnect({
|
|
|
22055
21993
|
supabaseStorageOrigin
|
|
22056
21994
|
} = {}) {
|
|
22057
21995
|
const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
|
|
22058
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
21996
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _383 => _383.endpoints, 'access', _384 => _384.supabaseStorageOrigin])));
|
|
22059
21997
|
try {
|
|
22060
21998
|
ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
|
|
22061
21999
|
ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
|
|
@@ -22074,13 +22012,13 @@ function useVideoWarmup({
|
|
|
22074
22012
|
nearMargin = "1000px"
|
|
22075
22013
|
} = {}) {
|
|
22076
22014
|
const runtime = _chunkMEAR2WHScjs.useChatRuntime.call(void 0, );
|
|
22077
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
22015
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _385 => _385.endpoints, 'access', _386 => _386.supabaseStorageOrigin])));
|
|
22078
22016
|
useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
|
|
22079
22017
|
const { ref, isNear } = _chunk27VVOBDBcjs.useNearViewport.call(void 0, nearMargin);
|
|
22080
22018
|
_react.useEffect.call(void 0, () => {
|
|
22081
22019
|
if (!isNear || !videoUrl || !resolvedOrigin) return;
|
|
22082
22020
|
const conn = navigator.connection;
|
|
22083
|
-
if (_optionalChain([conn, 'optionalAccess',
|
|
22021
|
+
if (_optionalChain([conn, 'optionalAccess', _387 => _387.saveData]) === true) return;
|
|
22084
22022
|
let videoOrigin;
|
|
22085
22023
|
try {
|
|
22086
22024
|
videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
|
|
@@ -22149,7 +22087,7 @@ function VideoSourceSelector({
|
|
|
22149
22087
|
input.accept = "video/*";
|
|
22150
22088
|
input.onchange = async (e) => {
|
|
22151
22089
|
const target = e.target;
|
|
22152
|
-
const file = _optionalChain([target, 'access',
|
|
22090
|
+
const file = _optionalChain([target, 'access', _388 => _388.files, 'optionalAccess', _389 => _389[0]]);
|
|
22153
22091
|
if (!file) return;
|
|
22154
22092
|
setIsUploading(true);
|
|
22155
22093
|
setUploadProgress(0);
|
|
@@ -22479,7 +22417,7 @@ function TranscriptSummaryEditor({
|
|
|
22479
22417
|
{
|
|
22480
22418
|
id: "subtitles",
|
|
22481
22419
|
value: subtitles || "",
|
|
22482
|
-
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall',
|
|
22420
|
+
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _390 => _390(e.target.value)]),
|
|
22483
22421
|
placeholder: subtitlesPlaceholder,
|
|
22484
22422
|
disabled: disabled || !onSubtitlesChange,
|
|
22485
22423
|
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",
|
|
@@ -22632,7 +22570,7 @@ var AIEnrichSection = ({
|
|
|
22632
22570
|
}) => {
|
|
22633
22571
|
const hasResults = status === "success" || status === "error";
|
|
22634
22572
|
const shouldDisable = disabled || !canEnrich;
|
|
22635
|
-
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess',
|
|
22573
|
+
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _391 => _391.filter, 'call', _392 => _392((f) => !f.isFilled)]) || [];
|
|
22636
22574
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22637
22575
|
"div",
|
|
22638
22576
|
{
|
|
@@ -22670,7 +22608,7 @@ var AIEnrichSection = ({
|
|
|
22670
22608
|
{
|
|
22671
22609
|
id: "ai-enrich-custom-instructions",
|
|
22672
22610
|
value: _nullishCoalesce(customInstructions, () => ( "")),
|
|
22673
|
-
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall',
|
|
22611
|
+
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _393 => _393(e.target.value)]),
|
|
22674
22612
|
placeholder: customInstructionsPlaceholder,
|
|
22675
22613
|
disabled: loading,
|
|
22676
22614
|
maxLength: customInstructionsMaxLength,
|
|
@@ -22799,7 +22737,7 @@ function HighlightVideoSection({
|
|
|
22799
22737
|
input.accept = "video/*";
|
|
22800
22738
|
input.onchange = async (e) => {
|
|
22801
22739
|
const target = e.target;
|
|
22802
|
-
const file = _optionalChain([target, 'access',
|
|
22740
|
+
const file = _optionalChain([target, 'access', _394 => _394.files, 'optionalAccess', _395 => _395[0]]);
|
|
22803
22741
|
if (!file) return;
|
|
22804
22742
|
setUploadError(null);
|
|
22805
22743
|
try {
|
|
@@ -23301,7 +23239,7 @@ function HighlightVideoPreview({
|
|
|
23301
23239
|
input.accept = "video/*";
|
|
23302
23240
|
input.onchange = async (e) => {
|
|
23303
23241
|
const target = e.target;
|
|
23304
|
-
const file = _optionalChain([target, 'access',
|
|
23242
|
+
const file = _optionalChain([target, 'access', _396 => _396.files, 'optionalAccess', _397 => _397[0]]);
|
|
23305
23243
|
if (!file) return;
|
|
23306
23244
|
await onUpload(file);
|
|
23307
23245
|
};
|
|
@@ -23488,7 +23426,7 @@ function HighlightVideoCombinedSection({
|
|
|
23488
23426
|
input.accept = "video/*";
|
|
23489
23427
|
input.onchange = async (e) => {
|
|
23490
23428
|
const target = e.target;
|
|
23491
|
-
const file = _optionalChain([target, 'access',
|
|
23429
|
+
const file = _optionalChain([target, 'access', _398 => _398.files, 'optionalAccess', _399 => _399[0]]);
|
|
23492
23430
|
if (!file) return;
|
|
23493
23431
|
await onUpload(file);
|
|
23494
23432
|
};
|
|
@@ -23785,7 +23723,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
|
|
|
23785
23723
|
return editMode ? "Set Global Permission" : "";
|
|
23786
23724
|
}
|
|
23787
23725
|
const option = approvalLevelOptions.find((opt) => opt.value === level);
|
|
23788
|
-
return _optionalChain([option, 'optionalAccess',
|
|
23726
|
+
return _optionalChain([option, 'optionalAccess', _400 => _400.label]) || level;
|
|
23789
23727
|
};
|
|
23790
23728
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
23791
23729
|
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: [
|
|
@@ -23899,6 +23837,7 @@ var CategorySection = ({
|
|
|
23899
23837
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23900
23838
|
_chunkGRTZ23GLcjs.Button,
|
|
23901
23839
|
{
|
|
23840
|
+
type: "button",
|
|
23902
23841
|
variant: "transparent",
|
|
23903
23842
|
onClick: (e) => {
|
|
23904
23843
|
e.stopPropagation();
|
|
@@ -23998,12 +23937,12 @@ function PhoneInput({
|
|
|
23998
23937
|
const runValidation = _react.useCallback.call(void 0, (phone) => {
|
|
23999
23938
|
if (!phone || digitCount(phone) === 0) {
|
|
24000
23939
|
setIsInvalid(false);
|
|
24001
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
23940
|
+
_optionalChain([onValidationChange, 'optionalCall', _401 => _401(false)]);
|
|
24002
23941
|
return;
|
|
24003
23942
|
}
|
|
24004
23943
|
const invalid = !validatePhoneNumber(phone, countryCode);
|
|
24005
23944
|
setIsInvalid(invalid);
|
|
24006
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
23945
|
+
_optionalChain([onValidationChange, 'optionalCall', _402 => _402(invalid)]);
|
|
24007
23946
|
}, [countryCode, digitCount, onValidationChange]);
|
|
24008
23947
|
const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
|
|
24009
23948
|
if (debounceRef.current) clearTimeout(debounceRef.current);
|
|
@@ -24052,7 +23991,7 @@ function PhoneInput({
|
|
|
24052
23991
|
debouncedValidation(val);
|
|
24053
23992
|
} else if (digitCount(val) === 0) {
|
|
24054
23993
|
setIsInvalid(false);
|
|
24055
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
23994
|
+
_optionalChain([onValidationChange, 'optionalCall', _403 => _403(false)]);
|
|
24056
23995
|
}
|
|
24057
23996
|
}
|
|
24058
23997
|
},
|
|
@@ -24388,19 +24327,19 @@ function NotificationsProvider({
|
|
|
24388
24327
|
}, []);
|
|
24389
24328
|
const markRead = React81.useCallback((id) => {
|
|
24390
24329
|
dispatch({ type: "markRead", id });
|
|
24391
|
-
void _optionalChain([actionsRef, 'access',
|
|
24330
|
+
void _optionalChain([actionsRef, 'access', _404 => _404.current, 'optionalAccess', _405 => _405.onMarkRead, 'optionalCall', _406 => _406(id)]);
|
|
24392
24331
|
}, []);
|
|
24393
24332
|
const markAllRead = React81.useCallback(() => {
|
|
24394
24333
|
dispatch({ type: "markAllRead" });
|
|
24395
|
-
void _optionalChain([actionsRef, 'access',
|
|
24334
|
+
void _optionalChain([actionsRef, 'access', _407 => _407.current, 'optionalAccess', _408 => _408.onMarkAllRead, 'optionalCall', _409 => _409()]);
|
|
24396
24335
|
}, []);
|
|
24397
24336
|
const markSettled = React81.useCallback((id) => {
|
|
24398
24337
|
dispatch({ type: "markSettled", id });
|
|
24399
|
-
void _optionalChain([actionsRef, 'access',
|
|
24338
|
+
void _optionalChain([actionsRef, 'access', _410 => _410.current, 'optionalAccess', _411 => _411.onMarkSettled, 'optionalCall', _412 => _412(id)]);
|
|
24400
24339
|
}, []);
|
|
24401
24340
|
const remove = React81.useCallback((id) => {
|
|
24402
24341
|
dispatch({ type: "remove", id });
|
|
24403
|
-
void _optionalChain([actionsRef, 'access',
|
|
24342
|
+
void _optionalChain([actionsRef, 'access', _413 => _413.current, 'optionalAccess', _414 => _414.onRemove, 'optionalCall', _415 => _415(id)]);
|
|
24404
24343
|
}, []);
|
|
24405
24344
|
const clear = React81.useCallback(() => dispatch({ type: "clear" }), []);
|
|
24406
24345
|
const open = React81.useCallback(() => setIsOpen(true), []);
|
|
@@ -24409,7 +24348,7 @@ function NotificationsProvider({
|
|
|
24409
24348
|
const setShowPopups = React81.useCallback(
|
|
24410
24349
|
(value2) => {
|
|
24411
24350
|
setShowPopupsState(value2);
|
|
24412
|
-
_optionalChain([onShowPopupsChange, 'optionalCall',
|
|
24351
|
+
_optionalChain([onShowPopupsChange, 'optionalCall', _416 => _416(value2)]);
|
|
24413
24352
|
},
|
|
24414
24353
|
[onShowPopupsChange]
|
|
24415
24354
|
);
|
|
@@ -24506,7 +24445,7 @@ function NotificationTile({
|
|
|
24506
24445
|
if (!counting) return;
|
|
24507
24446
|
const remaining = Math.max(0, liveDurationMs - initialElapsed);
|
|
24508
24447
|
const timer = window.setTimeout(() => {
|
|
24509
|
-
_optionalChain([onSettle, 'optionalCall',
|
|
24448
|
+
_optionalChain([onSettle, 'optionalCall', _417 => _417(id)]);
|
|
24510
24449
|
}, remaining);
|
|
24511
24450
|
return () => window.clearTimeout(timer);
|
|
24512
24451
|
}, [id, counting, initialElapsed, liveDurationMs, onSettle]);
|
|
@@ -24568,7 +24507,7 @@ function NotificationTile({
|
|
|
24568
24507
|
"button",
|
|
24569
24508
|
{
|
|
24570
24509
|
type: "button",
|
|
24571
|
-
onClick: () => _optionalChain([onSettle, 'optionalCall',
|
|
24510
|
+
onClick: () => _optionalChain([onSettle, 'optionalCall', _418 => _418(id)]),
|
|
24572
24511
|
"aria-label": "Dismiss notification",
|
|
24573
24512
|
tabIndex: isLive ? 0 : -1,
|
|
24574
24513
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -24687,7 +24626,7 @@ function DrawerScrollList({
|
|
|
24687
24626
|
if (!sentinel || !root) return;
|
|
24688
24627
|
const observer = new IntersectionObserver(
|
|
24689
24628
|
(entries) => {
|
|
24690
|
-
if (_optionalChain([entries, 'access',
|
|
24629
|
+
if (_optionalChain([entries, 'access', _419 => _419[0], 'optionalAccess', _420 => _420.isIntersecting])) _optionalChain([loadMoreRef, 'access', _421 => _421.current, 'optionalCall', _422 => _422()]);
|
|
24691
24630
|
},
|
|
24692
24631
|
{ root, rootMargin: loadMoreRootMargin }
|
|
24693
24632
|
);
|
|
@@ -24702,7 +24641,7 @@ function DrawerScrollList({
|
|
|
24702
24641
|
className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
|
|
24703
24642
|
children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
24704
24643
|
unreadNotifications.map((n) => {
|
|
24705
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
24644
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _423 => _423(n, { onComplete, onSettle, liveDurationMs })]);
|
|
24706
24645
|
if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
|
|
24707
24646
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24708
24647
|
NotificationTile,
|
|
@@ -24831,7 +24770,7 @@ function NotificationPopups({
|
|
|
24831
24770
|
className
|
|
24832
24771
|
),
|
|
24833
24772
|
children: live.map((n) => {
|
|
24834
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
24773
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _424 => _424(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
|
|
24835
24774
|
if (custom) {
|
|
24836
24775
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
|
|
24837
24776
|
}
|
|
@@ -24870,19 +24809,19 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
24870
24809
|
// src/components/features/notifications/types.ts
|
|
24871
24810
|
var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
|
|
24872
24811
|
function isApprovalNotification(notification) {
|
|
24873
|
-
return _optionalChain([notification, 'access',
|
|
24812
|
+
return _optionalChain([notification, 'access', _425 => _425.meta, 'optionalAccess', _426 => _426.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
|
|
24874
24813
|
}
|
|
24875
24814
|
function getApprovalMeta(notification) {
|
|
24876
24815
|
if (!isApprovalNotification(notification)) return null;
|
|
24877
24816
|
const meta = notification.meta;
|
|
24878
|
-
const approvalRequestId = _optionalChain([meta, 'optionalAccess',
|
|
24879
|
-
const toolCalls = _optionalChain([meta, 'optionalAccess',
|
|
24817
|
+
const approvalRequestId = _optionalChain([meta, 'optionalAccess', _427 => _427.approvalRequestId]);
|
|
24818
|
+
const toolCalls = _optionalChain([meta, 'optionalAccess', _428 => _428.toolCalls]);
|
|
24880
24819
|
if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
|
|
24881
24820
|
return {
|
|
24882
24821
|
approvalRequestId,
|
|
24883
|
-
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
24884
|
-
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
24885
|
-
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
24822
|
+
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _429 => _429.dialogId]), () => ( null)),
|
|
24823
|
+
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _430 => _430.ticketId]), () => ( null)),
|
|
24824
|
+
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _431 => _431.approvalType]), () => ( null)),
|
|
24886
24825
|
toolCalls
|
|
24887
24826
|
};
|
|
24888
24827
|
}
|
|
@@ -25143,15 +25082,15 @@ function TicketCard({
|
|
|
25143
25082
|
transform: _utilities.CSS.Transform.toString(sortable.transform),
|
|
25144
25083
|
transition: sortable.transition
|
|
25145
25084
|
};
|
|
25146
|
-
const showDeviceRow = !!(_optionalChain([ticket, 'access',
|
|
25085
|
+
const showDeviceRow = !!(_optionalChain([ticket, 'access', _432 => _432.deviceHostnames, 'optionalAccess', _433 => _433.length]) || ticket.organizationName);
|
|
25147
25086
|
const deviceText = [
|
|
25148
|
-
_optionalChain([ticket, 'access',
|
|
25087
|
+
_optionalChain([ticket, 'access', _434 => _434.deviceHostnames, 'optionalAccess', _435 => _435.join, 'call', _436 => _436(", ")]),
|
|
25149
25088
|
ticket.organizationName
|
|
25150
25089
|
].filter(Boolean).join(", ");
|
|
25151
25090
|
const handleClick = (e) => {
|
|
25152
25091
|
if (sortable.isDragging) e.preventDefault();
|
|
25153
25092
|
};
|
|
25154
|
-
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access',
|
|
25093
|
+
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _437 => _437.assignees, 'optionalAccess', _438 => _438.length]) || renderAssignSlot);
|
|
25155
25094
|
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: [
|
|
25156
25095
|
ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25157
25096
|
_chunkC6ASEPZLcjs.Flag02Icon,
|
|
@@ -25160,7 +25099,7 @@ function TicketCard({
|
|
|
25160
25099
|
"aria-label": `Priority: ${ticket.priority}`
|
|
25161
25100
|
}
|
|
25162
25101
|
),
|
|
25163
|
-
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access',
|
|
25102
|
+
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _439 => _439.assignees, 'optionalAccess', _440 => _440.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
|
|
25164
25103
|
ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25165
25104
|
SquareAvatar,
|
|
25166
25105
|
{
|
|
@@ -25189,7 +25128,7 @@ function TicketCard({
|
|
|
25189
25128
|
] }),
|
|
25190
25129
|
rightSection
|
|
25191
25130
|
] }),
|
|
25192
|
-
_optionalChain([ticket, 'access',
|
|
25131
|
+
_optionalChain([ticket, 'access', _441 => _441.tags, 'optionalAccess', _442 => _442.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null
|
|
25193
25132
|
] });
|
|
25194
25133
|
const cardClasses = _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
25195
25134
|
"relative flex flex-col gap-[var(--spacing-system-sf)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-sf)] select-none text-left",
|
|
@@ -25364,7 +25303,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onLoadMore, loadM
|
|
|
25364
25303
|
const observer = new IntersectionObserver(
|
|
25365
25304
|
(entries) => {
|
|
25366
25305
|
if (entries.some((e) => e.isIntersecting)) {
|
|
25367
|
-
_optionalChain([loadMoreRef, 'access',
|
|
25306
|
+
_optionalChain([loadMoreRef, 'access', _443 => _443.current, 'optionalCall', _444 => _444(columnIdRef.current)]);
|
|
25368
25307
|
}
|
|
25369
25308
|
},
|
|
25370
25309
|
{ root, rootMargin: loadMoreRootMargin }
|
|
@@ -25393,7 +25332,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onLoadMore, loadM
|
|
|
25393
25332
|
{
|
|
25394
25333
|
ticket: t,
|
|
25395
25334
|
columnId: column.id,
|
|
25396
|
-
href: _optionalChain([getTicketHref, 'optionalCall',
|
|
25335
|
+
href: _optionalChain([getTicketHref, 'optionalCall', _445 => _445(t.id)]),
|
|
25397
25336
|
renderAssignSlot,
|
|
25398
25337
|
dragDisabled: column.dragDisabled
|
|
25399
25338
|
},
|
|
@@ -25489,17 +25428,17 @@ function Board({
|
|
|
25489
25428
|
const pointer = _core.pointerWithin.call(void 0, args);
|
|
25490
25429
|
const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
|
|
25491
25430
|
const ticketHit = intersections.find(
|
|
25492
|
-
(c) => _optionalChain([c, 'access',
|
|
25431
|
+
(c) => _optionalChain([c, 'access', _446 => _446.data, 'optionalAccess', _447 => _447.droppableContainer, 'optionalAccess', _448 => _448.data, 'optionalAccess', _449 => _449.current, 'optionalAccess', _450 => _450.type]) === "ticket"
|
|
25493
25432
|
);
|
|
25494
25433
|
if (ticketHit) return [ticketHit];
|
|
25495
25434
|
const columnHit = intersections.find(
|
|
25496
|
-
(c) => _optionalChain([c, 'access',
|
|
25435
|
+
(c) => _optionalChain([c, 'access', _451 => _451.data, 'optionalAccess', _452 => _452.droppableContainer, 'optionalAccess', _453 => _453.data, 'optionalAccess', _454 => _454.current, 'optionalAccess', _455 => _455.type]) === "column"
|
|
25497
25436
|
);
|
|
25498
25437
|
if (columnHit) {
|
|
25499
|
-
const columnId = _optionalChain([columnHit, 'access',
|
|
25438
|
+
const columnId = _optionalChain([columnHit, 'access', _456 => _456.data, 'optionalAccess', _457 => _457.droppableContainer, 'optionalAccess', _458 => _458.data, 'optionalAccess', _459 => _459.current, 'optionalAccess', _460 => _460.columnId]);
|
|
25500
25439
|
const ticketsInColumn = args.droppableContainers.filter((c) => {
|
|
25501
25440
|
const d = c.data.current;
|
|
25502
|
-
return _optionalChain([d, 'optionalAccess',
|
|
25441
|
+
return _optionalChain([d, 'optionalAccess', _461 => _461.type]) === "ticket" && d.columnId === columnId;
|
|
25503
25442
|
});
|
|
25504
25443
|
if (ticketsInColumn.length > 0) {
|
|
25505
25444
|
const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
|
|
@@ -25524,20 +25463,20 @@ function Board({
|
|
|
25524
25463
|
const overId = String(over.id);
|
|
25525
25464
|
if (activeId === overId) return;
|
|
25526
25465
|
const overData = over.data.current;
|
|
25527
|
-
const fromColumnId = _optionalChain([locate, 'call',
|
|
25528
|
-
const toColumnId = _optionalChain([overData, 'optionalAccess',
|
|
25466
|
+
const fromColumnId = _optionalChain([locate, 'call', _462 => _462(items, activeId), 'optionalAccess', _463 => _463.columnId]);
|
|
25467
|
+
const toColumnId = _optionalChain([overData, 'optionalAccess', _464 => _464.columnId]);
|
|
25529
25468
|
if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
|
|
25530
25469
|
const origin = dragOriginRef.current;
|
|
25531
|
-
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess',
|
|
25470
|
+
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _465 => _465.fromColumnId]) === toColumnId;
|
|
25532
25471
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
25533
|
-
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess',
|
|
25534
|
-
if (_optionalChain([targetCol, 'optionalAccess',
|
|
25472
|
+
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _466 => _466.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
|
|
25473
|
+
if (_optionalChain([targetCol, 'optionalAccess', _467 => _467.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
|
|
25535
25474
|
setItems((prev) => {
|
|
25536
25475
|
const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
|
|
25537
25476
|
const toCol = prev.find((c) => c.id === toColumnId);
|
|
25538
25477
|
if (fromIndex < 0 || !toCol) return prev;
|
|
25539
25478
|
let toIndex;
|
|
25540
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
25479
|
+
if (_optionalChain([overData, 'optionalAccess', _468 => _468.type]) === "column") {
|
|
25541
25480
|
toIndex = toCol.tickets.length;
|
|
25542
25481
|
} else {
|
|
25543
25482
|
const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
|
|
@@ -25579,14 +25518,14 @@ function Board({
|
|
|
25579
25518
|
const toColumnId = located.columnId;
|
|
25580
25519
|
const isCrossColumn = origin.fromColumnId !== toColumnId;
|
|
25581
25520
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
25582
|
-
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess',
|
|
25521
|
+
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _469 => _469.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _470 => _470.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
|
|
25583
25522
|
setItems(columns);
|
|
25584
25523
|
return;
|
|
25585
25524
|
}
|
|
25586
25525
|
let finalIndex = located.index;
|
|
25587
|
-
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access',
|
|
25526
|
+
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _471 => _471.find, 'call', _472 => _472((c) => c.id === toColumnId), 'optionalAccess', _473 => _473.tickets]), () => ( []));
|
|
25588
25527
|
const overData = over.data.current;
|
|
25589
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
25528
|
+
if (_optionalChain([overData, 'optionalAccess', _474 => _474.type]) === "ticket") {
|
|
25590
25529
|
const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
|
|
25591
25530
|
if (overIndex >= 0 && overIndex !== located.index) {
|
|
25592
25531
|
finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
|
|
@@ -25606,8 +25545,8 @@ function Board({
|
|
|
25606
25545
|
ticketId: origin.ticketId,
|
|
25607
25546
|
fromColumnId: origin.fromColumnId,
|
|
25608
25547
|
toColumnId,
|
|
25609
|
-
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
25610
|
-
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
25548
|
+
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _475 => _475[finalIndex - 1], 'optionalAccess', _476 => _476.id]), () => ( null)),
|
|
25549
|
+
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _477 => _477[finalIndex + 1], 'optionalAccess', _478 => _478.id]), () => ( null))
|
|
25611
25550
|
});
|
|
25612
25551
|
};
|
|
25613
25552
|
const handleDragCancel = () => {
|
|
@@ -25636,8 +25575,8 @@ function Board({
|
|
|
25636
25575
|
children: items.map((column, i) => {
|
|
25637
25576
|
const prev = items[i - 1];
|
|
25638
25577
|
const next = items[i + 1];
|
|
25639
|
-
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess',
|
|
25640
|
-
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess',
|
|
25578
|
+
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _479 => _479.system]));
|
|
25579
|
+
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _480 => _480.system]));
|
|
25641
25580
|
const showGap = i > 0 && !joinLeft;
|
|
25642
25581
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React85.Fragment, { children: [
|
|
25643
25582
|
showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
|
|
@@ -25696,7 +25635,7 @@ function locate(cols, ticketId) {
|
|
|
25696
25635
|
return null;
|
|
25697
25636
|
}
|
|
25698
25637
|
function findIndexInColumn(cols, columnId, ticketId) {
|
|
25699
|
-
return _nullishCoalesce(_optionalChain([cols, 'access',
|
|
25638
|
+
return _nullishCoalesce(_optionalChain([cols, 'access', _481 => _481.find, 'call', _482 => _482((c) => c.id === columnId), 'optionalAccess', _483 => _483.tickets, 'access', _484 => _484.findIndex, 'call', _485 => _485((t) => t.id === ticketId)]), () => ( -1));
|
|
25700
25639
|
}
|
|
25701
25640
|
|
|
25702
25641
|
// src/components/features/board/types.ts
|
|
@@ -25944,7 +25883,7 @@ function Header2({ config, platform }) {
|
|
|
25944
25883
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
25945
25884
|
"flex justify-start w-full",
|
|
25946
25885
|
"font-bold text-[16px] leading-none tracking-[-0.32px]",
|
|
25947
|
-
index < (_nullishCoalesce(_optionalChain([item, 'access',
|
|
25886
|
+
index < (_nullishCoalesce(_optionalChain([item, 'access', _486 => _486.children, 'optionalAccess', _487 => _487.length]), () => ( 0))) - 1 && "mb-1",
|
|
25948
25887
|
"text-ods-text-primary",
|
|
25949
25888
|
// All dropdown items use primary text color
|
|
25950
25889
|
child.isActive && "bg-ods-bg-hover"
|
|
@@ -26036,7 +25975,7 @@ function Header2({ config, platform }) {
|
|
|
26036
25975
|
style: config.style,
|
|
26037
25976
|
children: [
|
|
26038
25977
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
26039
|
-
_optionalChain([config, 'access',
|
|
25978
|
+
_optionalChain([config, 'access', _488 => _488.actions, 'optionalAccess', _489 => _489.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
|
|
26040
25979
|
/* @__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 })
|
|
26041
25980
|
] }),
|
|
26042
25981
|
config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -26053,7 +25992,7 @@ function Header2({ config, platform }) {
|
|
|
26053
25992
|
}
|
|
26054
25993
|
),
|
|
26055
25994
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
|
|
26056
|
-
_optionalChain([config, 'access',
|
|
25995
|
+
_optionalChain([config, 'access', _490 => _490.actions, 'optionalAccess', _491 => _491.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
|
|
26057
25996
|
config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26058
25997
|
_chunkGRTZ23GLcjs.Button,
|
|
26059
25998
|
{
|
|
@@ -26061,10 +26000,10 @@ function Header2({ config, platform }) {
|
|
|
26061
26000
|
size: "icon",
|
|
26062
26001
|
className: "flex md:hidden",
|
|
26063
26002
|
onClick: () => {
|
|
26064
|
-
_optionalChain([config, 'access',
|
|
26003
|
+
_optionalChain([config, 'access', _492 => _492.mobile, 'optionalAccess', _493 => _493.onToggle, 'optionalCall', _494 => _494()]);
|
|
26065
26004
|
},
|
|
26066
|
-
"aria-label": _optionalChain([config, 'access',
|
|
26067
|
-
leftIcon: _optionalChain([config, 'access',
|
|
26005
|
+
"aria-label": _optionalChain([config, 'access', _495 => _495.mobile, 'optionalAccess', _496 => _496.isOpen]) ? "Close menu" : "Open menu",
|
|
26006
|
+
leftIcon: _optionalChain([config, 'access', _497 => _497.mobile, 'optionalAccess', _498 => _498.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Menu01Icon, {})
|
|
26068
26007
|
}
|
|
26069
26008
|
)
|
|
26070
26009
|
] })
|
|
@@ -26081,10 +26020,10 @@ function Header2({ config, platform }) {
|
|
|
26081
26020
|
// src/components/navigation/header-skeleton.tsx
|
|
26082
26021
|
|
|
26083
26022
|
function HeaderSkeleton({ config }) {
|
|
26084
|
-
const showNavigation = _optionalChain([config, 'optionalAccess',
|
|
26085
|
-
const showActions = _optionalChain([config, 'optionalAccess',
|
|
26086
|
-
const showMobileMenu = _optionalChain([config, 'optionalAccess',
|
|
26087
|
-
const isAdminHeader = _optionalChain([config, 'optionalAccess',
|
|
26023
|
+
const showNavigation = _optionalChain([config, 'optionalAccess', _499 => _499.navigation]) && config.navigation.items.length > 0;
|
|
26024
|
+
const showActions = _optionalChain([config, 'optionalAccess', _500 => _500.actions, 'optionalAccess', _501 => _501.right]) && config.actions.right.length > 0;
|
|
26025
|
+
const showMobileMenu = _optionalChain([config, 'optionalAccess', _502 => _502.mobile, 'optionalAccess', _503 => _503.enabled]);
|
|
26026
|
+
const isAdminHeader = _optionalChain([config, 'optionalAccess', _504 => _504.className, 'optionalAccess', _505 => _505.includes, 'call', _506 => _506("admin")]);
|
|
26088
26027
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26089
26028
|
"header",
|
|
26090
26029
|
{
|
|
@@ -26093,11 +26032,11 @@ function HeaderSkeleton({ config }) {
|
|
|
26093
26032
|
"bg-ods-card border-b border-ods-border backdrop-blur-sm",
|
|
26094
26033
|
"px-6 py-3",
|
|
26095
26034
|
"transition-opacity duration-300 ease-in-out",
|
|
26096
|
-
_optionalChain([config, 'optionalAccess',
|
|
26035
|
+
_optionalChain([config, 'optionalAccess', _507 => _507.className])
|
|
26097
26036
|
),
|
|
26098
26037
|
children: [
|
|
26099
26038
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
26100
|
-
isAdminHeader && _optionalChain([config, 'optionalAccess',
|
|
26039
|
+
isAdminHeader && _optionalChain([config, 'optionalAccess', _508 => _508.actions, 'optionalAccess', _509 => _509.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" }) }),
|
|
26101
26040
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
26102
26041
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
|
|
26103
26042
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
|
|
@@ -26105,8 +26044,8 @@ function HeaderSkeleton({ config }) {
|
|
|
26105
26044
|
] }),
|
|
26106
26045
|
showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
26107
26046
|
"hidden md:flex items-center gap-2",
|
|
26108
|
-
_optionalChain([config, 'optionalAccess',
|
|
26109
|
-
_optionalChain([config, 'optionalAccess',
|
|
26047
|
+
_optionalChain([config, 'optionalAccess', _510 => _510.navigation, 'optionalAccess', _511 => _511.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
|
|
26048
|
+
_optionalChain([config, 'optionalAccess', _512 => _512.navigation, 'optionalAccess', _513 => _513.position]) === "right" && "ml-auto mr-4"
|
|
26110
26049
|
), children: [
|
|
26111
26050
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
|
|
26112
26051
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
|
|
@@ -26154,7 +26093,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
26154
26093
|
_react.useEffect.call(void 0, () => {
|
|
26155
26094
|
const handleKeyDown = (e) => {
|
|
26156
26095
|
if (e.key === "Escape" && isOpen) {
|
|
26157
|
-
_optionalChain([config, 'access',
|
|
26096
|
+
_optionalChain([config, 'access', _514 => _514.onClose, 'optionalCall', _515 => _515()]);
|
|
26158
26097
|
}
|
|
26159
26098
|
};
|
|
26160
26099
|
if (isOpen) {
|
|
@@ -26171,7 +26110,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
26171
26110
|
if (item.onClick) {
|
|
26172
26111
|
item.onClick();
|
|
26173
26112
|
}
|
|
26174
|
-
_optionalChain([config, 'access',
|
|
26113
|
+
_optionalChain([config, 'access', _516 => _516.onClose, 'optionalCall', _517 => _517()]);
|
|
26175
26114
|
};
|
|
26176
26115
|
if (item.href) {
|
|
26177
26116
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -26389,7 +26328,7 @@ function SlidingSidebar({ config }) {
|
|
|
26389
26328
|
variant: "transparent",
|
|
26390
26329
|
size: "default",
|
|
26391
26330
|
onClick: () => {
|
|
26392
|
-
_optionalChain([item, 'access',
|
|
26331
|
+
_optionalChain([item, 'access', _518 => _518.onClick, 'optionalCall', _519 => _519()]);
|
|
26393
26332
|
config.onClose();
|
|
26394
26333
|
},
|
|
26395
26334
|
leftIcon: item.icon,
|
|
@@ -26412,7 +26351,7 @@ function SlidingSidebar({ config }) {
|
|
|
26412
26351
|
variant: "transparent",
|
|
26413
26352
|
size: "default",
|
|
26414
26353
|
onClick: () => {
|
|
26415
|
-
_optionalChain([item, 'access',
|
|
26354
|
+
_optionalChain([item, 'access', _520 => _520.onClick, 'optionalCall', _521 => _521()]);
|
|
26416
26355
|
config.onClose();
|
|
26417
26356
|
},
|
|
26418
26357
|
leftIcon: item.icon,
|
|
@@ -26539,7 +26478,7 @@ function StickySectionNav({
|
|
|
26539
26478
|
] });
|
|
26540
26479
|
}
|
|
26541
26480
|
function useSectionNavigation(sections, options) {
|
|
26542
|
-
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access',
|
|
26481
|
+
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _522 => _522[0], 'optionalAccess', _523 => _523.id]) || "");
|
|
26543
26482
|
const isScrollingFromClick = _react.useRef.call(void 0, false);
|
|
26544
26483
|
const { offset: offset2 = 100 } = options || {};
|
|
26545
26484
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
@@ -26563,7 +26502,7 @@ function useSectionNavigation(sections, options) {
|
|
|
26563
26502
|
const handleScroll = () => {
|
|
26564
26503
|
if (isScrollingFromClick.current) return;
|
|
26565
26504
|
const scrollPosition = window.scrollY + offset2 + 50;
|
|
26566
|
-
let currentSection = _optionalChain([sections, 'access',
|
|
26505
|
+
let currentSection = _optionalChain([sections, 'access', _524 => _524[0], 'optionalAccess', _525 => _525.id]) || "";
|
|
26567
26506
|
for (let i = sections.length - 1; i >= 0; i--) {
|
|
26568
26507
|
const element = document.getElementById(sections[i].id);
|
|
26569
26508
|
if (element && scrollPosition >= element.offsetTop) {
|
|
@@ -26758,7 +26697,7 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
26758
26697
|
} else {
|
|
26759
26698
|
setDesktopMinimized((prev) => !prev);
|
|
26760
26699
|
}
|
|
26761
|
-
_optionalChain([config, 'access',
|
|
26700
|
+
_optionalChain([config, 'access', _526 => _526.onToggleMinimized, 'optionalCall', _527 => _527()]);
|
|
26762
26701
|
}, [isTablet, setDesktopMinimized, config]);
|
|
26763
26702
|
const closeOverlay = _react.useCallback.call(void 0, () => {
|
|
26764
26703
|
setTabletMinimized(true);
|
|
@@ -26772,11 +26711,11 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
26772
26711
|
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
26773
26712
|
}, [isOverlayOpen, closeOverlay]);
|
|
26774
26713
|
const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
|
|
26775
|
-
_optionalChain([event, 'optionalAccess',
|
|
26714
|
+
_optionalChain([event, 'optionalAccess', _528 => _528.stopPropagation, 'call', _529 => _529()]);
|
|
26776
26715
|
if (item.onClick) {
|
|
26777
26716
|
item.onClick();
|
|
26778
26717
|
} else if (item.path) {
|
|
26779
|
-
_optionalChain([config, 'access',
|
|
26718
|
+
_optionalChain([config, 'access', _530 => _530.onNavigate, 'optionalCall', _531 => _531(item.path)]);
|
|
26780
26719
|
}
|
|
26781
26720
|
if (isTablet) setTabletMinimized(true);
|
|
26782
26721
|
}, [config, isTablet]);
|
|
@@ -26921,11 +26860,11 @@ function HeaderGlobalSearch({
|
|
|
26921
26860
|
};
|
|
26922
26861
|
const handleSubmit = (e) => {
|
|
26923
26862
|
e.preventDefault();
|
|
26924
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
26863
|
+
_optionalChain([onSubmit, 'optionalCall', _532 => _532(currentValue)]);
|
|
26925
26864
|
};
|
|
26926
26865
|
const handleKeyDown = (e) => {
|
|
26927
26866
|
if (e.key === "Enter") {
|
|
26928
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
26867
|
+
_optionalChain([onSubmit, 'optionalCall', _533 => _533(currentValue)]);
|
|
26929
26868
|
}
|
|
26930
26869
|
};
|
|
26931
26870
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -27019,8 +26958,8 @@ function HeaderOrganizationFilter({
|
|
|
27019
26958
|
className
|
|
27020
26959
|
}) {
|
|
27021
26960
|
const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
|
|
27022
|
-
const displayName = _optionalChain([selectedOrg, 'optionalAccess',
|
|
27023
|
-
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess',
|
|
26961
|
+
const displayName = _optionalChain([selectedOrg, 'optionalAccess', _534 => _534.name]) || "All Organizations";
|
|
26962
|
+
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _535 => _535.deviceCount]), () => ( totalDeviceCount));
|
|
27024
26963
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGRTZ23GLcjs.DropdownMenu, { children: [
|
|
27025
26964
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
27026
26965
|
"button",
|
|
@@ -27045,11 +26984,11 @@ function HeaderOrganizationFilter({
|
|
|
27045
26984
|
}
|
|
27046
26985
|
) }),
|
|
27047
26986
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
|
|
27048
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
26987
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGRTZ23GLcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _536 => _536("")]), children: "All Organizations" }),
|
|
27049
26988
|
organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27050
26989
|
_chunkGRTZ23GLcjs.DropdownMenuItem,
|
|
27051
26990
|
{
|
|
27052
|
-
onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
26991
|
+
onClick: () => _optionalChain([onOrgChange, 'optionalCall', _537 => _537(org.id)]),
|
|
27053
26992
|
children: org.name
|
|
27054
26993
|
},
|
|
27055
26994
|
org.id
|
|
@@ -27234,9 +27173,9 @@ function NotificationsHeaderButton({
|
|
|
27234
27173
|
dimmedClass
|
|
27235
27174
|
}) {
|
|
27236
27175
|
const ctx = useOptionalNotifications();
|
|
27237
|
-
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
27238
|
-
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
27239
|
-
const onClick = _optionalChain([ctx, 'optionalAccess',
|
|
27176
|
+
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _538 => _538.unreadCount]), () => ( fallbackUnreadCount))) > 0;
|
|
27177
|
+
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _539 => _539.isOpen]), () => ( false));
|
|
27178
|
+
const onClick = _optionalChain([ctx, 'optionalAccess', _540 => _540.toggle]);
|
|
27240
27179
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27241
27180
|
HeaderButton,
|
|
27242
27181
|
{
|
|
@@ -27300,7 +27239,7 @@ var MobileBurgerMenu = React101.default.memo(function MobileBurgerMenu2({
|
|
|
27300
27239
|
if (item.onClick) {
|
|
27301
27240
|
item.onClick();
|
|
27302
27241
|
} else if (item.path) {
|
|
27303
|
-
_optionalChain([config, 'access',
|
|
27242
|
+
_optionalChain([config, 'access', _541 => _541.onNavigate, 'optionalCall', _542 => _542(item.path)]);
|
|
27304
27243
|
}
|
|
27305
27244
|
onClose();
|
|
27306
27245
|
}, [config, onClose]);
|
|
@@ -27543,7 +27482,7 @@ var AppLayoutDrawerRoot = ({
|
|
|
27543
27482
|
const handleOpenChange = React94.useCallback(
|
|
27544
27483
|
(next) => {
|
|
27545
27484
|
if (!isControlled) setInternalOpen(next);
|
|
27546
|
-
_optionalChain([onOpenChange, 'optionalCall',
|
|
27485
|
+
_optionalChain([onOpenChange, 'optionalCall', _543 => _543(next)]);
|
|
27547
27486
|
},
|
|
27548
27487
|
[isControlled, onOpenChange]
|
|
27549
27488
|
);
|
|
@@ -27924,10 +27863,10 @@ var AppLayoutDrawerContent = React94.forwardRef(
|
|
|
27924
27863
|
),
|
|
27925
27864
|
style,
|
|
27926
27865
|
onInteractOutside: (event) => {
|
|
27927
|
-
_optionalChain([onInteractOutside, 'optionalCall',
|
|
27866
|
+
_optionalChain([onInteractOutside, 'optionalCall', _544 => _544(event)]);
|
|
27928
27867
|
if (event.defaultPrevented) return;
|
|
27929
27868
|
const target = event.target;
|
|
27930
|
-
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess',
|
|
27869
|
+
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _545 => _545.contains, 'call', _546 => _546(target)]);
|
|
27931
27870
|
if (!isInsideContainer) {
|
|
27932
27871
|
event.preventDefault();
|
|
27933
27872
|
return;
|
|
@@ -28116,7 +28055,7 @@ var ShellTypeBadge = ({
|
|
|
28116
28055
|
className,
|
|
28117
28056
|
iconClassName
|
|
28118
28057
|
}) => {
|
|
28119
|
-
const normalizedType = _optionalChain([shellType, 'optionalAccess',
|
|
28058
|
+
const normalizedType = _optionalChain([shellType, 'optionalAccess', _547 => _547.toUpperCase, 'call', _548 => _548()]);
|
|
28120
28059
|
const label = getShellLabel(normalizedType);
|
|
28121
28060
|
const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
|
|
28122
28061
|
const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
|
|
@@ -28503,12 +28442,12 @@ function OnboardingWalkthrough({
|
|
|
28503
28442
|
}
|
|
28504
28443
|
}, [state.completedSteps, markComplete]);
|
|
28505
28444
|
const handleStepSkip = (step) => {
|
|
28506
|
-
_optionalChain([step, 'access',
|
|
28445
|
+
_optionalChain([step, 'access', _549 => _549.onSkip, 'optionalCall', _550 => _550()]);
|
|
28507
28446
|
markSkipped(step.id);
|
|
28508
28447
|
};
|
|
28509
28448
|
const handleDismiss = () => {
|
|
28510
28449
|
dismissOnboarding();
|
|
28511
|
-
_optionalChain([onDismiss, 'optionalCall',
|
|
28450
|
+
_optionalChain([onDismiss, 'optionalCall', _551 => _551()]);
|
|
28512
28451
|
};
|
|
28513
28452
|
if (state.dismissed) {
|
|
28514
28453
|
return null;
|
|
@@ -28638,7 +28577,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
28638
28577
|
onKeyDown: (e) => {
|
|
28639
28578
|
if (e.key === "Enter" || e.key === " ") {
|
|
28640
28579
|
e.preventDefault();
|
|
28641
|
-
_optionalChain([onClick, 'optionalCall',
|
|
28580
|
+
_optionalChain([onClick, 'optionalCall', _552 => _552()]);
|
|
28642
28581
|
}
|
|
28643
28582
|
},
|
|
28644
28583
|
children: [
|
|
@@ -28739,7 +28678,7 @@ var LogsList = React98.forwardRef(({
|
|
|
28739
28678
|
log,
|
|
28740
28679
|
isLast: index === logs.length - 1,
|
|
28741
28680
|
showConnector,
|
|
28742
|
-
onClick: () => _optionalChain([onLogClick, 'optionalCall',
|
|
28681
|
+
onClick: () => _optionalChain([onLogClick, 'optionalCall', _553 => _553(log)])
|
|
28743
28682
|
},
|
|
28744
28683
|
log.id
|
|
28745
28684
|
))
|
|
@@ -28840,7 +28779,7 @@ var Slider = React100.forwardRef(
|
|
|
28840
28779
|
({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
|
|
28841
28780
|
const handleChange = (e) => {
|
|
28842
28781
|
const newValue = [Number(e.target.value)];
|
|
28843
|
-
_optionalChain([onValueChange, 'optionalCall',
|
|
28782
|
+
_optionalChain([onValueChange, 'optionalCall', _554 => _554(newValue)]);
|
|
28844
28783
|
};
|
|
28845
28784
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28846
28785
|
"input",
|
|
@@ -29271,7 +29210,7 @@ function CursorPaginationSimple({
|
|
|
29271
29210
|
{
|
|
29272
29211
|
variant: "transparent",
|
|
29273
29212
|
size: "icon",
|
|
29274
|
-
onClick: () => _optionalChain([onPrevious, 'optionalCall',
|
|
29213
|
+
onClick: () => _optionalChain([onPrevious, 'optionalCall', _555 => _555("")]),
|
|
29275
29214
|
disabled: !hasPreviousPage || loading,
|
|
29276
29215
|
className: "h-8 w-8",
|
|
29277
29216
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -29283,7 +29222,7 @@ function CursorPaginationSimple({
|
|
|
29283
29222
|
{
|
|
29284
29223
|
variant: "transparent",
|
|
29285
29224
|
size: "icon",
|
|
29286
|
-
onClick: () => _optionalChain([onNext, 'optionalCall',
|
|
29225
|
+
onClick: () => _optionalChain([onNext, 'optionalCall', _556 => _556("")]),
|
|
29287
29226
|
disabled: !hasNextPage || loading,
|
|
29288
29227
|
className: "h-8 w-8",
|
|
29289
29228
|
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
|
|
@@ -29343,7 +29282,7 @@ function TableColumnFilterDropdown({
|
|
|
29343
29282
|
placement = "bottom-start",
|
|
29344
29283
|
dropdownClassName = "min-w-[240px]"
|
|
29345
29284
|
}) {
|
|
29346
|
-
const activeCount = _optionalChain([filters, 'optionalAccess',
|
|
29285
|
+
const activeCount = _optionalChain([filters, 'optionalAccess', _557 => _557[columnKey], 'optionalAccess', _558 => _558.length]) || 0;
|
|
29347
29286
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29348
29287
|
FiltersDropdown,
|
|
29349
29288
|
{
|
|
@@ -29386,7 +29325,7 @@ function TableColumnFilterDropdown({
|
|
|
29386
29325
|
delete newFilters[columnKey];
|
|
29387
29326
|
onFilterChange(newFilters);
|
|
29388
29327
|
},
|
|
29389
|
-
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess',
|
|
29328
|
+
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _559 => _559[columnKey]]) || [] },
|
|
29390
29329
|
placement,
|
|
29391
29330
|
dropdownClassName
|
|
29392
29331
|
}
|
|
@@ -29683,7 +29622,7 @@ function TableRow({
|
|
|
29683
29622
|
const keys = column.key.split(".");
|
|
29684
29623
|
let value = item;
|
|
29685
29624
|
for (const key of keys) {
|
|
29686
|
-
value = _optionalChain([value, 'optionalAccess',
|
|
29625
|
+
value = _optionalChain([value, 'optionalAccess', _560 => _560[key]]);
|
|
29687
29626
|
}
|
|
29688
29627
|
if (value === null || value === void 0) {
|
|
29689
29628
|
return "-";
|
|
@@ -29753,7 +29692,7 @@ function TableRow({
|
|
|
29753
29692
|
// src/components/ui/table/table.tsx
|
|
29754
29693
|
|
|
29755
29694
|
function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
|
|
29756
|
-
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess',
|
|
29695
|
+
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _561 => _561.length])) || Boolean(renderRowActions);
|
|
29757
29696
|
const result = [...columns];
|
|
29758
29697
|
if (hasActions) {
|
|
29759
29698
|
const actionsColumn = {
|
|
@@ -29847,7 +29786,7 @@ function Table({
|
|
|
29847
29786
|
return rowKey(item);
|
|
29848
29787
|
}
|
|
29849
29788
|
const key = item[rowKey];
|
|
29850
|
-
return _optionalChain([key, 'optionalAccess',
|
|
29789
|
+
return _optionalChain([key, 'optionalAccess', _562 => _562.toString, 'call', _563 => _563()]) || index.toString();
|
|
29851
29790
|
};
|
|
29852
29791
|
const getRowClassName = (item, index) => {
|
|
29853
29792
|
if (typeof rowClassName === "function") {
|
|
@@ -29881,23 +29820,23 @@ function Table({
|
|
|
29881
29820
|
const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
|
|
29882
29821
|
const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
|
|
29883
29822
|
const sentinelRef = _react.useRef.call(void 0, null);
|
|
29884
|
-
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess',
|
|
29885
|
-
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess',
|
|
29823
|
+
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _564 => _564.onLoadMore]));
|
|
29824
|
+
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _565 => _565.onLoadMore]);
|
|
29886
29825
|
_react.useEffect.call(void 0, () => {
|
|
29887
|
-
if (!_optionalChain([infiniteScroll, 'optionalAccess',
|
|
29826
|
+
if (!_optionalChain([infiniteScroll, 'optionalAccess', _566 => _566.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
|
|
29888
29827
|
const sentinel = sentinelRef.current;
|
|
29889
29828
|
if (!sentinel) return;
|
|
29890
29829
|
const observer = new IntersectionObserver(
|
|
29891
29830
|
(entries) => {
|
|
29892
|
-
if (_optionalChain([entries, 'access',
|
|
29893
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
29831
|
+
if (_optionalChain([entries, 'access', _567 => _567[0], 'optionalAccess', _568 => _568.isIntersecting])) {
|
|
29832
|
+
_optionalChain([onLoadMoreRef, 'access', _569 => _569.current, 'optionalCall', _570 => _570()]);
|
|
29894
29833
|
}
|
|
29895
29834
|
},
|
|
29896
29835
|
{ rootMargin: "200px" }
|
|
29897
29836
|
);
|
|
29898
29837
|
observer.observe(sentinel);
|
|
29899
29838
|
return () => observer.disconnect();
|
|
29900
|
-
}, [_optionalChain([infiniteScroll, 'optionalAccess',
|
|
29839
|
+
}, [_optionalChain([infiniteScroll, 'optionalAccess', _571 => _571.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _572 => _572.isFetchingNextPage])]);
|
|
29901
29840
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
|
|
29902
29841
|
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: [
|
|
29903
29842
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
|
|
@@ -29968,7 +29907,7 @@ function Table({
|
|
|
29968
29907
|
},
|
|
29969
29908
|
getRowKey(item, index)
|
|
29970
29909
|
)),
|
|
29971
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
29910
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _573 => _573.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29972
29911
|
TableCardSkeleton,
|
|
29973
29912
|
{
|
|
29974
29913
|
columns,
|
|
@@ -29977,7 +29916,7 @@ function Table({
|
|
|
29977
29916
|
hasChevron: Boolean(rowHref)
|
|
29978
29917
|
}
|
|
29979
29918
|
),
|
|
29980
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
29919
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _574 => _574.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
|
|
29981
29920
|
!infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
29982
29921
|
"div",
|
|
29983
29922
|
{
|
|
@@ -30335,7 +30274,7 @@ function QueryReportTable({
|
|
|
30335
30274
|
);
|
|
30336
30275
|
const handleExport = () => {
|
|
30337
30276
|
exportToCSV(data, columns, exportFilename);
|
|
30338
|
-
_optionalChain([onExport, 'optionalCall',
|
|
30277
|
+
_optionalChain([onExport, 'optionalCall', _575 => _575()]);
|
|
30339
30278
|
};
|
|
30340
30279
|
const tableMinWidth = columns.length * (columnWidth + 16);
|
|
30341
30280
|
const {
|
|
@@ -30508,7 +30447,7 @@ function DataTableColumnFilter({
|
|
|
30508
30447
|
align = "left"
|
|
30509
30448
|
}) {
|
|
30510
30449
|
const currentValue = column.getFilterValue();
|
|
30511
|
-
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess',
|
|
30450
|
+
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _576 => _576.length]), () => ( 0));
|
|
30512
30451
|
const sections = _react.useMemo.call(void 0,
|
|
30513
30452
|
() => [
|
|
30514
30453
|
{
|
|
@@ -30588,7 +30527,7 @@ function DataTableHeader({
|
|
|
30588
30527
|
const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
|
|
30589
30528
|
if (header.isPlaceholder) return false;
|
|
30590
30529
|
if (isLgUp) return true;
|
|
30591
|
-
return Boolean(_optionalChain([header, 'access',
|
|
30530
|
+
return Boolean(_optionalChain([header, 'access', _577 => _577.column, 'access', _578 => _578.columnDef, 'access', _579 => _579.meta, 'optionalAccess', _580 => _580.filter]));
|
|
30592
30531
|
});
|
|
30593
30532
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30594
30533
|
"div",
|
|
@@ -30618,20 +30557,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
30618
30557
|
if (header.isPlaceholder) return null;
|
|
30619
30558
|
const column = header.column;
|
|
30620
30559
|
const meta = column.columnDef.meta;
|
|
30621
|
-
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess',
|
|
30622
|
-
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
30623
|
-
const canSort = _optionalChain([meta, 'optionalAccess',
|
|
30624
|
-
const sortDir = _optionalChain([sort, 'optionalAccess',
|
|
30560
|
+
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _581 => _581.filter]));
|
|
30561
|
+
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _582 => _582.align]), () => ( "left"));
|
|
30562
|
+
const canSort = _optionalChain([meta, 'optionalAccess', _583 => _583.sortable]) === true;
|
|
30563
|
+
const sortDir = _optionalChain([sort, 'optionalAccess', _584 => _584.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
|
|
30625
30564
|
if (!isLgUp && !hasFilter) return null;
|
|
30626
30565
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30627
30566
|
"div",
|
|
30628
30567
|
{
|
|
30629
30568
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
30630
30569
|
"flex items-stretch",
|
|
30631
|
-
isLgUp && (_optionalChain([meta, 'optionalAccess',
|
|
30632
|
-
_optionalChain([meta, 'optionalAccess',
|
|
30570
|
+
isLgUp && (_optionalChain([meta, 'optionalAccess', _585 => _585.width]) || "flex-1 min-w-0"),
|
|
30571
|
+
_optionalChain([meta, 'optionalAccess', _586 => _586.headerClassName]),
|
|
30633
30572
|
// Don't apply hide classes if column is filterable on tablet (keep filter accessible)
|
|
30634
|
-
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
30573
|
+
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _587 => _587.hideAt]))
|
|
30635
30574
|
),
|
|
30636
30575
|
children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30637
30576
|
DataTableColumnFilter,
|
|
@@ -30650,7 +30589,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
30650
30589
|
isLgUp && alignJustify(align),
|
|
30651
30590
|
canSort && "group cursor-pointer"
|
|
30652
30591
|
),
|
|
30653
|
-
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall',
|
|
30592
|
+
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _588 => _588(column.id)]) : void 0,
|
|
30654
30593
|
children: [
|
|
30655
30594
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
30656
30595
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -30734,7 +30673,7 @@ function DataTableSkeleton({
|
|
|
30734
30673
|
}) {
|
|
30735
30674
|
const table = useDataTableContext();
|
|
30736
30675
|
const columns = table.getVisibleFlatColumns();
|
|
30737
|
-
const firstColumnId = _optionalChain([columns, 'access',
|
|
30676
|
+
const firstColumnId = _optionalChain([columns, 'access', _589 => _589[0], 'optionalAccess', _590 => _590.id]);
|
|
30738
30677
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30739
30678
|
"div",
|
|
30740
30679
|
{
|
|
@@ -30758,7 +30697,7 @@ function DataTableSkeleton({
|
|
|
30758
30697
|
{
|
|
30759
30698
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
30760
30699
|
"flex flex-col justify-center shrink-0",
|
|
30761
|
-
_optionalChain([meta, 'optionalAccess',
|
|
30700
|
+
_optionalChain([meta, 'optionalAccess', _591 => _591.width]) || "flex-1"
|
|
30762
30701
|
),
|
|
30763
30702
|
children: [
|
|
30764
30703
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
|
|
@@ -30807,7 +30746,7 @@ function DataTableRowImpl({
|
|
|
30807
30746
|
const handleClick = _react.useCallback.call(void 0,
|
|
30808
30747
|
(e) => {
|
|
30809
30748
|
const target = e.target;
|
|
30810
|
-
if (!_optionalChain([containerRef, 'access',
|
|
30749
|
+
if (!_optionalChain([containerRef, 'access', _592 => _592.current, 'optionalAccess', _593 => _593.contains, 'call', _594 => _594(target)])) {
|
|
30811
30750
|
if (isLinkMode) e.preventDefault();
|
|
30812
30751
|
return;
|
|
30813
30752
|
}
|
|
@@ -30815,7 +30754,7 @@ function DataTableRowImpl({
|
|
|
30815
30754
|
if (isLinkMode) e.preventDefault();
|
|
30816
30755
|
return;
|
|
30817
30756
|
}
|
|
30818
|
-
_optionalChain([onClick, 'optionalCall',
|
|
30757
|
+
_optionalChain([onClick, 'optionalCall', _595 => _595(row.original)]);
|
|
30819
30758
|
},
|
|
30820
30759
|
[onClick, row.original, isLinkMode]
|
|
30821
30760
|
);
|
|
@@ -30840,10 +30779,10 @@ function DataTableRowImpl({
|
|
|
30840
30779
|
{
|
|
30841
30780
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
30842
30781
|
"flex flex-col overflow-hidden",
|
|
30843
|
-
alignJustify(_optionalChain([meta, 'optionalAccess',
|
|
30844
|
-
_optionalChain([meta, 'optionalAccess',
|
|
30845
|
-
_optionalChain([meta, 'optionalAccess',
|
|
30846
|
-
getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
30782
|
+
alignJustify(_optionalChain([meta, 'optionalAccess', _596 => _596.align])),
|
|
30783
|
+
_optionalChain([meta, 'optionalAccess', _597 => _597.width]) || "flex-1 min-w-0",
|
|
30784
|
+
_optionalChain([meta, 'optionalAccess', _598 => _598.cellClassName]),
|
|
30785
|
+
getHideClasses2(_optionalChain([meta, 'optionalAccess', _599 => _599.hideAt]))
|
|
30847
30786
|
),
|
|
30848
30787
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
|
|
30849
30788
|
},
|
|
@@ -30921,7 +30860,7 @@ function DataTableBody({
|
|
|
30921
30860
|
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: [
|
|
30922
30861
|
rows.map((row, index) => {
|
|
30923
30862
|
const item = row.original;
|
|
30924
|
-
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall',
|
|
30863
|
+
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _600 => _600(item)]), () => ( void 0));
|
|
30925
30864
|
const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
|
|
30926
30865
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30927
30866
|
DataTableRow,
|
|
@@ -30931,7 +30870,7 @@ function DataTableBody({
|
|
|
30931
30870
|
href,
|
|
30932
30871
|
compact,
|
|
30933
30872
|
className: cls,
|
|
30934
|
-
subRow: _optionalChain([renderSubRow, 'optionalCall',
|
|
30873
|
+
subRow: _optionalChain([renderSubRow, 'optionalCall', _601 => _601(item)])
|
|
30935
30874
|
},
|
|
30936
30875
|
row.id
|
|
30937
30876
|
);
|
|
@@ -30986,7 +30925,7 @@ function DataTableInfiniteFooter({
|
|
|
30986
30925
|
if (!sentinel) return;
|
|
30987
30926
|
const observer = new IntersectionObserver(
|
|
30988
30927
|
(entries) => {
|
|
30989
|
-
if (_optionalChain([entries, 'access',
|
|
30928
|
+
if (_optionalChain([entries, 'access', _602 => _602[0], 'optionalAccess', _603 => _603.isIntersecting])) onLoadMoreRef.current();
|
|
30990
30929
|
},
|
|
30991
30930
|
{ rootMargin }
|
|
30992
30931
|
);
|
|
@@ -31034,7 +30973,7 @@ function DataTableRowCount({
|
|
|
31034
30973
|
const table = useDataTableContext();
|
|
31035
30974
|
const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
|
|
31036
30975
|
if (hideWhenEmpty && count === 0) return null;
|
|
31037
|
-
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall',
|
|
30976
|
+
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _604 => _604(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
|
|
31038
30977
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31039
30978
|
"span",
|
|
31040
30979
|
{
|
|
@@ -31193,7 +31132,7 @@ function SearchInput({
|
|
|
31193
31132
|
if (!showHiddenTags) return;
|
|
31194
31133
|
const handleClick = (e) => {
|
|
31195
31134
|
const target = e.target;
|
|
31196
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
31135
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _605 => _605.current, 'optionalAccess', _606 => _606.contains, 'call', _607 => _607(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _608 => _608.current, 'optionalAccess', _609 => _609.contains, 'call', _610 => _610(target)])) {
|
|
31197
31136
|
setShowHiddenTags(false);
|
|
31198
31137
|
}
|
|
31199
31138
|
};
|
|
@@ -31241,10 +31180,10 @@ function SearchInput({
|
|
|
31241
31180
|
} else {
|
|
31242
31181
|
setInternalValue("");
|
|
31243
31182
|
}
|
|
31244
|
-
_optionalChain([inputRef, 'access',
|
|
31183
|
+
_optionalChain([inputRef, 'access', _611 => _611.current, 'optionalAccess', _612 => _612.focus, 'call', _613 => _613()]);
|
|
31245
31184
|
};
|
|
31246
31185
|
const handleResultClick = (result, e) => {
|
|
31247
|
-
_optionalChain([onResultSelect, 'optionalCall',
|
|
31186
|
+
_optionalChain([onResultSelect, 'optionalCall', _614 => _614(
|
|
31248
31187
|
result,
|
|
31249
31188
|
e ? {
|
|
31250
31189
|
metaKey: e.metaKey,
|
|
@@ -31276,7 +31215,7 @@ function SearchInput({
|
|
|
31276
31215
|
if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
|
|
31277
31216
|
handleResultClick(flatResults[highlightedIndex]);
|
|
31278
31217
|
} else {
|
|
31279
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
31218
|
+
_optionalChain([onSubmit, 'optionalCall', _615 => _615(currentValue)]);
|
|
31280
31219
|
}
|
|
31281
31220
|
break;
|
|
31282
31221
|
case "Escape":
|
|
@@ -31354,7 +31293,7 @@ function SearchInput({
|
|
|
31354
31293
|
dropdownVisible && "!border-ods-accent"
|
|
31355
31294
|
),
|
|
31356
31295
|
onClick: () => {
|
|
31357
|
-
_optionalChain([inputRef, 'access',
|
|
31296
|
+
_optionalChain([inputRef, 'access', _616 => _616.current, 'optionalAccess', _617 => _617.focus, 'call', _618 => _618()]);
|
|
31358
31297
|
setIsOpen(true);
|
|
31359
31298
|
},
|
|
31360
31299
|
children: [
|
|
@@ -31438,10 +31377,10 @@ function SearchInput({
|
|
|
31438
31377
|
align: "start",
|
|
31439
31378
|
onOpenAutoFocus: (e) => {
|
|
31440
31379
|
e.preventDefault();
|
|
31441
|
-
_optionalChain([inputRef, 'access',
|
|
31380
|
+
_optionalChain([inputRef, 'access', _619 => _619.current, 'optionalAccess', _620 => _620.focus, 'call', _621 => _621()]);
|
|
31442
31381
|
},
|
|
31443
31382
|
onInteractOutside: (e) => {
|
|
31444
|
-
if (_optionalChain([containerRef, 'access',
|
|
31383
|
+
if (_optionalChain([containerRef, 'access', _622 => _622.current, 'optionalAccess', _623 => _623.contains, 'call', _624 => _624(e.target)])) {
|
|
31445
31384
|
e.preventDefault();
|
|
31446
31385
|
}
|
|
31447
31386
|
},
|
|
@@ -31458,10 +31397,10 @@ function SearchInput({
|
|
|
31458
31397
|
ref: hiddenTagsPopupRef,
|
|
31459
31398
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
31460
31399
|
style: {
|
|
31461
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access',
|
|
31400
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _625 => _625.current, 'optionalAccess', _626 => _626.getBoundingClientRect, 'call', _627 => _627(), 'access', _628 => _628.left]), () => ( 0))) : 0
|
|
31462
31401
|
},
|
|
31463
31402
|
onRemove: (value2) => {
|
|
31464
|
-
_optionalChain([onFilterRemove, 'optionalCall',
|
|
31403
|
+
_optionalChain([onFilterRemove, 'optionalCall', _629 => _629(value2)]);
|
|
31465
31404
|
if (hiddenCount <= 1) setShowHiddenTags(false);
|
|
31466
31405
|
}
|
|
31467
31406
|
}
|
|
@@ -31512,7 +31451,7 @@ function FilterListItem({
|
|
|
31512
31451
|
}) {
|
|
31513
31452
|
const handleToggle = () => {
|
|
31514
31453
|
if (disabled) return;
|
|
31515
|
-
_optionalChain([onToggle, 'optionalCall',
|
|
31454
|
+
_optionalChain([onToggle, 'optionalCall', _630 => _630(!selected)]);
|
|
31516
31455
|
};
|
|
31517
31456
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31518
31457
|
"div",
|
|
@@ -31559,7 +31498,7 @@ function FilterListItem({
|
|
|
31559
31498
|
CheckboxPrimitive4.Root,
|
|
31560
31499
|
{
|
|
31561
31500
|
checked: selected,
|
|
31562
|
-
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall',
|
|
31501
|
+
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _631 => _631(c === true)]),
|
|
31563
31502
|
onClick: (e) => e.stopPropagation(),
|
|
31564
31503
|
disabled,
|
|
31565
31504
|
"aria-label": title,
|
|
@@ -31658,7 +31597,7 @@ function TagSearchInput({
|
|
|
31658
31597
|
if (!showHiddenTags) return;
|
|
31659
31598
|
const handleClick = (e) => {
|
|
31660
31599
|
const target = e.target;
|
|
31661
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
31600
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _632 => _632.current, 'optionalAccess', _633 => _633.contains, 'call', _634 => _634(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _635 => _635.current, 'optionalAccess', _636 => _636.contains, 'call', _637 => _637(target)])) {
|
|
31662
31601
|
setShowHiddenTags(false);
|
|
31663
31602
|
}
|
|
31664
31603
|
};
|
|
@@ -31674,13 +31613,13 @@ function TagSearchInput({
|
|
|
31674
31613
|
e.preventDefault();
|
|
31675
31614
|
onSubmit(searchValue);
|
|
31676
31615
|
}
|
|
31677
|
-
_optionalChain([onKeyDown, 'optionalCall',
|
|
31616
|
+
_optionalChain([onKeyDown, 'optionalCall', _638 => _638(e)]);
|
|
31678
31617
|
};
|
|
31679
31618
|
const handleClearAll = (e) => {
|
|
31680
31619
|
e.stopPropagation();
|
|
31681
31620
|
e.preventDefault();
|
|
31682
|
-
_optionalChain([onClearAll, 'optionalCall',
|
|
31683
|
-
_optionalChain([inputRef, 'access',
|
|
31621
|
+
_optionalChain([onClearAll, 'optionalCall', _639 => _639()]);
|
|
31622
|
+
_optionalChain([inputRef, 'access', _640 => _640.current, 'optionalAccess', _641 => _641.focus, 'call', _642 => _642()]);
|
|
31684
31623
|
};
|
|
31685
31624
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
|
|
31686
31625
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -31697,7 +31636,7 @@ function TagSearchInput({
|
|
|
31697
31636
|
className
|
|
31698
31637
|
),
|
|
31699
31638
|
onClick: () => {
|
|
31700
|
-
if (!disabled) _optionalChain([inputRef, 'access',
|
|
31639
|
+
if (!disabled) _optionalChain([inputRef, 'access', _643 => _643.current, 'optionalAccess', _644 => _644.focus, 'call', _645 => _645()]);
|
|
31701
31640
|
},
|
|
31702
31641
|
children: [
|
|
31703
31642
|
/* @__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" }) }),
|
|
@@ -31769,7 +31708,7 @@ function TagSearchInput({
|
|
|
31769
31708
|
items: hiddenTags,
|
|
31770
31709
|
disabled,
|
|
31771
31710
|
style: {
|
|
31772
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access',
|
|
31711
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _646 => _646.current, 'optionalAccess', _647 => _647.getBoundingClientRect, 'call', _648 => _648(), 'access', _649 => _649.left]), () => ( 0))) : 0
|
|
31773
31712
|
},
|
|
31774
31713
|
onRemove: (value) => {
|
|
31775
31714
|
onTagRemove(value);
|
|
@@ -31870,7 +31809,7 @@ function MarkdownEditor({
|
|
|
31870
31809
|
const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
|
|
31871
31810
|
_react.useEffect.call(void 0, () => {
|
|
31872
31811
|
Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
|
|
31873
|
-
if (_optionalChain([mod, 'access',
|
|
31812
|
+
if (_optionalChain([mod, 'access', _650 => _650.commands, 'optionalAccess', _651 => _651.getExtraCommands])) {
|
|
31874
31813
|
setDefaultExtraCommands(mod.commands.getExtraCommands());
|
|
31875
31814
|
}
|
|
31876
31815
|
});
|
|
@@ -31904,7 +31843,7 @@ function MarkdownEditor({
|
|
|
31904
31843
|
const isImage = file.type.startsWith("image/");
|
|
31905
31844
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
31906
31845
|
insertTextAtCursor(markdown);
|
|
31907
|
-
_optionalChain([onFileUploaded, 'optionalCall',
|
|
31846
|
+
_optionalChain([onFileUploaded, 'optionalCall', _652 => _652(url, file.name)]);
|
|
31908
31847
|
} catch (error) {
|
|
31909
31848
|
console.error("File upload failed:", error);
|
|
31910
31849
|
setUploadProgress("Upload failed. Please try again.");
|
|
@@ -31917,7 +31856,7 @@ function MarkdownEditor({
|
|
|
31917
31856
|
);
|
|
31918
31857
|
const handleFileInputChange = _react.useCallback.call(void 0,
|
|
31919
31858
|
(e) => {
|
|
31920
|
-
const file = _optionalChain([e, 'access',
|
|
31859
|
+
const file = _optionalChain([e, 'access', _653 => _653.target, 'access', _654 => _654.files, 'optionalAccess', _655 => _655[0]]);
|
|
31921
31860
|
if (file) {
|
|
31922
31861
|
handleFileUpload(file);
|
|
31923
31862
|
e.target.value = "";
|
|
@@ -31928,7 +31867,7 @@ function MarkdownEditor({
|
|
|
31928
31867
|
const handlePaste = _react.useCallback.call(void 0,
|
|
31929
31868
|
(e) => {
|
|
31930
31869
|
if (!onUploadFile) return;
|
|
31931
|
-
const items = _optionalChain([e, 'access',
|
|
31870
|
+
const items = _optionalChain([e, 'access', _656 => _656.clipboardData, 'optionalAccess', _657 => _657.items]);
|
|
31932
31871
|
if (!items) return;
|
|
31933
31872
|
for (const item of items) {
|
|
31934
31873
|
if (item.type.startsWith("image/")) {
|
|
@@ -31953,7 +31892,7 @@ function MarkdownEditor({
|
|
|
31953
31892
|
buttonProps: { "aria-label": "Upload file", title: "Upload file" },
|
|
31954
31893
|
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" }),
|
|
31955
31894
|
execute: () => {
|
|
31956
|
-
_optionalChain([fileInputRef, 'access',
|
|
31895
|
+
_optionalChain([fileInputRef, 'access', _658 => _658.current, 'optionalAccess', _659 => _659.click, 'call', _660 => _660()]);
|
|
31957
31896
|
}
|
|
31958
31897
|
} : null;
|
|
31959
31898
|
const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
|
|
@@ -31965,7 +31904,7 @@ function MarkdownEditor({
|
|
|
31965
31904
|
const EDGE_ZONE = 60;
|
|
31966
31905
|
const MAX_SCROLL_SPEED = 15;
|
|
31967
31906
|
const findScrollParent = _react.useCallback.call(void 0, (el) => {
|
|
31968
|
-
let node = _optionalChain([el, 'optionalAccess',
|
|
31907
|
+
let node = _optionalChain([el, 'optionalAccess', _661 => _661.parentElement]);
|
|
31969
31908
|
while (node && node !== document.documentElement) {
|
|
31970
31909
|
const { overflowY } = window.getComputedStyle(node);
|
|
31971
31910
|
if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
|
|
@@ -32108,7 +32047,7 @@ function matchesAccept(file, accept) {
|
|
|
32108
32047
|
});
|
|
32109
32048
|
}
|
|
32110
32049
|
function dragHasFiles(e) {
|
|
32111
|
-
const types = _optionalChain([e, 'access',
|
|
32050
|
+
const types = _optionalChain([e, 'access', _662 => _662.dataTransfer, 'optionalAccess', _663 => _663.types]);
|
|
32112
32051
|
if (!types) return false;
|
|
32113
32052
|
for (let i = 0; i < types.length; i++) {
|
|
32114
32053
|
if (types[i] === "Files") return true;
|
|
@@ -32203,7 +32142,7 @@ function FileUpload({
|
|
|
32203
32142
|
e.stopPropagation();
|
|
32204
32143
|
setDragActive(false);
|
|
32205
32144
|
if (disabled) return;
|
|
32206
|
-
if (_optionalChain([e, 'access',
|
|
32145
|
+
if (_optionalChain([e, 'access', _664 => _664.dataTransfer, 'access', _665 => _665.files, 'optionalAccess', _666 => _666.length])) {
|
|
32207
32146
|
handleFiles(e.dataTransfer.files);
|
|
32208
32147
|
}
|
|
32209
32148
|
};
|
|
@@ -32231,7 +32170,7 @@ function FileUpload({
|
|
|
32231
32170
|
e.preventDefault();
|
|
32232
32171
|
dragCounter = 0;
|
|
32233
32172
|
setDragActive(false);
|
|
32234
|
-
if (_optionalChain([e, 'access',
|
|
32173
|
+
if (_optionalChain([e, 'access', _667 => _667.dataTransfer, 'optionalAccess', _668 => _668.files, 'optionalAccess', _669 => _669.length])) {
|
|
32235
32174
|
handleFilesRef.current(e.dataTransfer.files);
|
|
32236
32175
|
}
|
|
32237
32176
|
};
|
|
@@ -32253,7 +32192,7 @@ function FileUpload({
|
|
|
32253
32192
|
};
|
|
32254
32193
|
}, [acceptWindowDrops, disabled]);
|
|
32255
32194
|
const handleFileSelect = (e) => {
|
|
32256
|
-
if (_optionalChain([e, 'access',
|
|
32195
|
+
if (_optionalChain([e, 'access', _670 => _670.target, 'access', _671 => _671.files, 'optionalAccess', _672 => _672.length])) {
|
|
32257
32196
|
handleFiles(e.target.files);
|
|
32258
32197
|
}
|
|
32259
32198
|
};
|
|
@@ -32270,7 +32209,7 @@ function FileUpload({
|
|
|
32270
32209
|
};
|
|
32271
32210
|
const openDialog = async () => {
|
|
32272
32211
|
if (disabled) return;
|
|
32273
|
-
_optionalChain([fileInputRef, 'access',
|
|
32212
|
+
_optionalChain([fileInputRef, 'access', _673 => _673.current, 'optionalAccess', _674 => _674.click, 'call', _675 => _675()]);
|
|
32274
32213
|
};
|
|
32275
32214
|
const displayError = error || validationError || void 0;
|
|
32276
32215
|
const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
|
|
@@ -32348,7 +32287,7 @@ function FileUpload({
|
|
|
32348
32287
|
"button",
|
|
32349
32288
|
{
|
|
32350
32289
|
type: "button",
|
|
32351
|
-
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall',
|
|
32290
|
+
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _676 => _676(entry.id)]),
|
|
32352
32291
|
className: "shrink-0 p-1 rounded hover:bg-ods-bg transition-colors",
|
|
32353
32292
|
"aria-label": `Remove ${entry.fileName}`,
|
|
32354
32293
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-4 text-ods-text-secondary" })
|
|
@@ -32471,7 +32410,7 @@ function ImageUploader({
|
|
|
32471
32410
|
onChange(file);
|
|
32472
32411
|
};
|
|
32473
32412
|
const handleFileSelect = (e) => {
|
|
32474
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
32413
|
+
validateAndEmit(_optionalChain([e, 'access', _677 => _677.target, 'access', _678 => _678.files, 'optionalAccess', _679 => _679[0]]));
|
|
32475
32414
|
if (inputRef.current) inputRef.current.value = "";
|
|
32476
32415
|
};
|
|
32477
32416
|
const handleDrag = (e) => {
|
|
@@ -32486,11 +32425,11 @@ function ImageUploader({
|
|
|
32486
32425
|
e.stopPropagation();
|
|
32487
32426
|
setDragActive(false);
|
|
32488
32427
|
if (!interactive) return;
|
|
32489
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
32428
|
+
validateAndEmit(_optionalChain([e, 'access', _680 => _680.dataTransfer, 'access', _681 => _681.files, 'optionalAccess', _682 => _682[0]]));
|
|
32490
32429
|
};
|
|
32491
32430
|
const openDialog = () => {
|
|
32492
32431
|
if (!interactive) return;
|
|
32493
|
-
_optionalChain([inputRef, 'access',
|
|
32432
|
+
_optionalChain([inputRef, 'access', _683 => _683.current, 'optionalAccess', _684 => _684.click, 'call', _685 => _685()]);
|
|
32494
32433
|
};
|
|
32495
32434
|
const handleRootKeyDown = (e) => {
|
|
32496
32435
|
if (hasImage || !interactive) return;
|
|
@@ -32680,8 +32619,8 @@ function ColorPresetSelect({
|
|
|
32680
32619
|
}) {
|
|
32681
32620
|
const selectedPreset = presets.find((p) => p.key === presetKey);
|
|
32682
32621
|
const isCustom = !selectedPreset;
|
|
32683
|
-
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
32684
|
-
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
32622
|
+
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _686 => _686.label]), () => ( "Custom"));
|
|
32623
|
+
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _687 => _687.color]), () => ( value));
|
|
32685
32624
|
const groups = [
|
|
32686
32625
|
{
|
|
32687
32626
|
items: [
|
|
@@ -32971,7 +32910,7 @@ function TicketStatusConfigRow({
|
|
|
32971
32910
|
_chunkGRTZ23GLcjs.Input,
|
|
32972
32911
|
{
|
|
32973
32912
|
value: name,
|
|
32974
|
-
onChange: (e) => _optionalChain([onNameChange, 'optionalCall',
|
|
32913
|
+
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _688 => _688(e.target.value)]),
|
|
32975
32914
|
disabled: isSystem,
|
|
32976
32915
|
readOnly: isSystem,
|
|
32977
32916
|
"aria-label": "Status name",
|
|
@@ -33054,7 +32993,7 @@ function CompactAssigneeDropdown({
|
|
|
33054
32993
|
return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
|
|
33055
32994
|
}, [filtered, currentAssignee]);
|
|
33056
32995
|
const handleSelect = (userId) => {
|
|
33057
|
-
const next = _optionalChain([currentAssignee, 'optionalAccess',
|
|
32996
|
+
const next = _optionalChain([currentAssignee, 'optionalAccess', _689 => _689.id]) === userId ? null : userId;
|
|
33058
32997
|
onAssign(next);
|
|
33059
32998
|
setIsOpen(false);
|
|
33060
32999
|
};
|
|
@@ -33119,7 +33058,7 @@ function CompactAssigneeDropdown({
|
|
|
33119
33058
|
}
|
|
33120
33059
|
) }),
|
|
33121
33060
|
/* @__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) => {
|
|
33122
|
-
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess',
|
|
33061
|
+
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _690 => _690.id]) === opt.value;
|
|
33123
33062
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
33124
33063
|
"button",
|
|
33125
33064
|
{
|
|
@@ -33188,7 +33127,7 @@ function DefaultAssigneeDropdown({
|
|
|
33188
33127
|
Autocomplete,
|
|
33189
33128
|
{
|
|
33190
33129
|
options,
|
|
33191
|
-
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess',
|
|
33130
|
+
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _691 => _691.id]), () => ( null)),
|
|
33192
33131
|
onChange: (val) => {
|
|
33193
33132
|
onAssign(val);
|
|
33194
33133
|
setIsEditing(false);
|
|
@@ -33577,14 +33516,14 @@ function TicketInfoSection({
|
|
|
33577
33516
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33578
33517
|
SquareAvatar,
|
|
33579
33518
|
{
|
|
33580
|
-
src: _optionalChain([organization, 'optionalAccess',
|
|
33581
|
-
alt: _optionalChain([organization, 'optionalAccess',
|
|
33582
|
-
fallback: _optionalChain([organization, 'optionalAccess',
|
|
33519
|
+
src: _optionalChain([organization, 'optionalAccess', _692 => _692.imageSrc]),
|
|
33520
|
+
alt: _optionalChain([organization, 'optionalAccess', _693 => _693.name]),
|
|
33521
|
+
fallback: _optionalChain([organization, 'optionalAccess', _694 => _694.name]) || "Org",
|
|
33583
33522
|
size: "md",
|
|
33584
33523
|
className: "shrink-0"
|
|
33585
33524
|
}
|
|
33586
33525
|
),
|
|
33587
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess',
|
|
33526
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _695 => _695.name]) || "Unassigned", label: "Organization" })
|
|
33588
33527
|
] }),
|
|
33589
33528
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33590
33529
|
AssigneeDropdown,
|
|
@@ -33605,10 +33544,10 @@ function TicketInfoSection({
|
|
|
33605
33544
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33606
33545
|
InfoCell2,
|
|
33607
33546
|
{
|
|
33608
|
-
value: _optionalChain([device, 'optionalAccess',
|
|
33547
|
+
value: _optionalChain([device, 'optionalAccess', _696 => _696.name]) || "Unassigned",
|
|
33609
33548
|
label: "Device",
|
|
33610
|
-
icon: _optionalChain([device, 'optionalAccess',
|
|
33611
|
-
onClick: _optionalChain([device, 'optionalAccess',
|
|
33549
|
+
icon: _optionalChain([device, 'optionalAccess', _697 => _697.icon]),
|
|
33550
|
+
onClick: _optionalChain([device, 'optionalAccess', _698 => _698.onClick])
|
|
33612
33551
|
}
|
|
33613
33552
|
),
|
|
33614
33553
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
|
|
@@ -33937,7 +33876,7 @@ function RoadmapCard({
|
|
|
33937
33876
|
const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
|
|
33938
33877
|
const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
|
|
33939
33878
|
const hasFigma = !!item.figmaUrl;
|
|
33940
|
-
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access',
|
|
33879
|
+
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _699 => _699.screenshots, 'optionalAccess', _700 => _700.length]), () => ( 0))) > 0;
|
|
33941
33880
|
const typeLabel = getTaskTypeLabel(item.customItemId);
|
|
33942
33881
|
const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
|
|
33943
33882
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -33956,7 +33895,7 @@ function RoadmapCard({
|
|
|
33956
33895
|
unoptimized: true,
|
|
33957
33896
|
className: "h-8 w-8 object-contain"
|
|
33958
33897
|
}
|
|
33959
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
33898
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _701 => _701.title, 'optionalAccess', _702 => _702.substring, 'call', _703 => _703(0, 2)]) || "??" })
|
|
33960
33899
|
}
|
|
33961
33900
|
),
|
|
33962
33901
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -34031,7 +33970,7 @@ function RoadmapCard({
|
|
|
34031
33970
|
unoptimized: true,
|
|
34032
33971
|
className: "object-contain p-1"
|
|
34033
33972
|
}
|
|
34034
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
33973
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _704 => _704.title, 'optionalAccess', _705 => _705.substring, 'call', _706 => _706(0, 2)]) || "??" }) }),
|
|
34035
33974
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
|
|
34036
33975
|
/* @__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 }) }),
|
|
34037
33976
|
/* @__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: [
|
|
@@ -34541,7 +34480,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
|
|
|
34541
34480
|
] }) : null,
|
|
34542
34481
|
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
|
|
34543
34482
|
] }),
|
|
34544
|
-
_optionalChain([anchorProps, 'optionalAccess',
|
|
34483
|
+
_optionalChain([anchorProps, 'optionalAccess', _707 => _707.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
|
|
34545
34484
|
] });
|
|
34546
34485
|
if (!anchorProps) {
|
|
34547
34486
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
@@ -34611,7 +34550,7 @@ function getDefaultOptions() {
|
|
|
34611
34550
|
// node_modules/date-fns/startOfWeek.mjs
|
|
34612
34551
|
function startOfWeek(date, options) {
|
|
34613
34552
|
const defaultOptions2 = getDefaultOptions();
|
|
34614
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
34553
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _708 => _708.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _709 => _709.locale, 'optionalAccess', _710 => _710.options, 'optionalAccess', _711 => _711.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _712 => _712.locale, 'optionalAccess', _713 => _713.options, 'optionalAccess', _714 => _714.weekStartsOn]))), () => ( 0));
|
|
34615
34554
|
const _date = toDate(date);
|
|
34616
34555
|
const day = _date.getDay();
|
|
34617
34556
|
const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
|
|
@@ -34786,7 +34725,7 @@ var formatDistance = (token, count, options) => {
|
|
|
34786
34725
|
} else {
|
|
34787
34726
|
result = tokenValue.other.replace("{{count}}", count.toString());
|
|
34788
34727
|
}
|
|
34789
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
34728
|
+
if (_optionalChain([options, 'optionalAccess', _715 => _715.addSuffix])) {
|
|
34790
34729
|
if (options.comparison && options.comparison > 0) {
|
|
34791
34730
|
return "in " + result;
|
|
34792
34731
|
} else {
|
|
@@ -34853,15 +34792,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
|
|
|
34853
34792
|
// node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
|
|
34854
34793
|
function buildLocalizeFn(args) {
|
|
34855
34794
|
return (value, options) => {
|
|
34856
|
-
const context = _optionalChain([options, 'optionalAccess',
|
|
34795
|
+
const context = _optionalChain([options, 'optionalAccess', _716 => _716.context]) ? String(options.context) : "standalone";
|
|
34857
34796
|
let valuesArray;
|
|
34858
34797
|
if (context === "formatting" && args.formattingValues) {
|
|
34859
34798
|
const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
|
|
34860
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
34799
|
+
const width = _optionalChain([options, 'optionalAccess', _717 => _717.width]) ? String(options.width) : defaultWidth;
|
|
34861
34800
|
valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
|
|
34862
34801
|
} else {
|
|
34863
34802
|
const defaultWidth = args.defaultWidth;
|
|
34864
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
34803
|
+
const width = _optionalChain([options, 'optionalAccess', _718 => _718.width]) ? String(options.width) : args.defaultWidth;
|
|
34865
34804
|
valuesArray = args.values[width] || args.values[defaultWidth];
|
|
34866
34805
|
}
|
|
34867
34806
|
const index = args.argumentCallback ? args.argumentCallback(value) : value;
|
|
@@ -35241,7 +35180,7 @@ function getWeekYear(date, options) {
|
|
|
35241
35180
|
const _date = toDate(date);
|
|
35242
35181
|
const year = _date.getFullYear();
|
|
35243
35182
|
const defaultOptions2 = getDefaultOptions();
|
|
35244
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
35183
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _719 => _719.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _720 => _720.locale, 'optionalAccess', _721 => _721.options, 'optionalAccess', _722 => _722.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _723 => _723.locale, 'optionalAccess', _724 => _724.options, 'optionalAccess', _725 => _725.firstWeekContainsDate]))), () => ( 1));
|
|
35245
35184
|
const firstWeekOfNextYear = constructFrom(date, 0);
|
|
35246
35185
|
firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
|
|
35247
35186
|
firstWeekOfNextYear.setHours(0, 0, 0, 0);
|
|
@@ -35262,7 +35201,7 @@ function getWeekYear(date, options) {
|
|
|
35262
35201
|
// node_modules/date-fns/startOfWeekYear.mjs
|
|
35263
35202
|
function startOfWeekYear(date, options) {
|
|
35264
35203
|
const defaultOptions2 = getDefaultOptions();
|
|
35265
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
35204
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _726 => _726.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _727 => _727.locale, 'optionalAccess', _728 => _728.options, 'optionalAccess', _729 => _729.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _730 => _730.locale, 'optionalAccess', _731 => _731.options, 'optionalAccess', _732 => _732.firstWeekContainsDate]))), () => ( 1));
|
|
35266
35205
|
const year = getWeekYear(date, options);
|
|
35267
35206
|
const firstWeek = constructFrom(date, 0);
|
|
35268
35207
|
firstWeek.setFullYear(year, 0, firstWeekContainsDate);
|
|
@@ -36077,9 +36016,9 @@ var doubleQuoteRegExp = /''/g;
|
|
|
36077
36016
|
var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
|
|
36078
36017
|
function format(date, formatStr, options) {
|
|
36079
36018
|
const defaultOptions2 = getDefaultOptions();
|
|
36080
|
-
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
36081
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
36082
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
36019
|
+
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _733 => _733.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
|
|
36020
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _734 => _734.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _735 => _735.locale, 'optionalAccess', _736 => _736.options, 'optionalAccess', _737 => _737.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _738 => _738.locale, 'optionalAccess', _739 => _739.options, 'optionalAccess', _740 => _740.firstWeekContainsDate]))), () => ( 1));
|
|
36021
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _741 => _741.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _742 => _742.locale, 'optionalAccess', _743 => _743.options, 'optionalAccess', _744 => _744.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _745 => _745.locale, 'optionalAccess', _746 => _746.options, 'optionalAccess', _747 => _747.weekStartsOn]))), () => ( 0));
|
|
36083
36022
|
const originalDate = toDate(date);
|
|
36084
36023
|
if (!isValid(originalDate)) {
|
|
36085
36024
|
throw new RangeError("Invalid time value");
|
|
@@ -36120,7 +36059,7 @@ function format(date, formatStr, options) {
|
|
|
36120
36059
|
return parts.map((part) => {
|
|
36121
36060
|
if (!part.isToken) return part.value;
|
|
36122
36061
|
const token = part.value;
|
|
36123
|
-
if (!_optionalChain([options, 'optionalAccess',
|
|
36062
|
+
if (!_optionalChain([options, 'optionalAccess', _748 => _748.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _749 => _749.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
|
|
36124
36063
|
warnOrThrowProtectedError(token, formatStr, String(date));
|
|
36125
36064
|
}
|
|
36126
36065
|
const formatter = formatters[token[0]];
|
|
@@ -36298,7 +36237,7 @@ function ProgramCard({
|
|
|
36298
36237
|
const dur = formatDurationFromRange(w.start_at, w.end_at);
|
|
36299
36238
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
36300
36239
|
}
|
|
36301
|
-
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access',
|
|
36240
|
+
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _750 => _750.labels, 'optionalAccess', _751 => _751.singular])].filter(
|
|
36302
36241
|
(s) => typeof s === "string" && s.length > 0
|
|
36303
36242
|
);
|
|
36304
36243
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
|
|
@@ -36455,7 +36394,7 @@ function ProgramCard({
|
|
|
36455
36394
|
|
|
36456
36395
|
|
|
36457
36396
|
function CampaignCardAdmin({ campaign, className, anchorProps }) {
|
|
36458
|
-
const goalsCount = _optionalChain([campaign, 'access',
|
|
36397
|
+
const goalsCount = _optionalChain([campaign, 'access', _752 => _752.goals, 'optionalAccess', _753 => _753.length]) || 0;
|
|
36459
36398
|
const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
36460
36399
|
/* @__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" }) }),
|
|
36461
36400
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -36546,6 +36485,33 @@ _chunkG7UE6RKVcjs.init_next_navigation.call(void 0, );
|
|
|
36546
36485
|
|
|
36547
36486
|
// src/components/chat/hooks/use-chat-card-item.ts
|
|
36548
36487
|
var _reactquery = require('@tanstack/react-query');
|
|
36488
|
+
function extractItems(data) {
|
|
36489
|
+
if (!data || typeof data !== "object") return [];
|
|
36490
|
+
const obj = data;
|
|
36491
|
+
if (Array.isArray(obj.items)) return obj.items;
|
|
36492
|
+
if (Array.isArray(obj.posts)) return obj.posts;
|
|
36493
|
+
if (Array.isArray(obj.campaigns)) return obj.campaigns;
|
|
36494
|
+
if (Array.isArray(obj.completed) || Array.isArray(obj.inProgress)) {
|
|
36495
|
+
const completed = Array.isArray(obj.completed) ? obj.completed : [];
|
|
36496
|
+
const inProgress = Array.isArray(obj.inProgress) ? obj.inProgress : [];
|
|
36497
|
+
return [...completed, ...inProgress];
|
|
36498
|
+
}
|
|
36499
|
+
if (Array.isArray(obj.data)) return obj.data;
|
|
36500
|
+
if (Array.isArray(data)) return data;
|
|
36501
|
+
return [];
|
|
36502
|
+
}
|
|
36503
|
+
function extractItemId(type, item) {
|
|
36504
|
+
if (!item || typeof item !== "object") return null;
|
|
36505
|
+
const obj = item;
|
|
36506
|
+
if (type === "roadmap_item" || type === "delivery_item" || type === "internal_task") {
|
|
36507
|
+
const ext = obj.external_id;
|
|
36508
|
+
if (typeof ext === "string") return ext;
|
|
36509
|
+
}
|
|
36510
|
+
const id = obj.id;
|
|
36511
|
+
if (typeof id === "string") return id;
|
|
36512
|
+
if (typeof id === "number") return String(id);
|
|
36513
|
+
return null;
|
|
36514
|
+
}
|
|
36549
36515
|
function useChatCardItem(type, id) {
|
|
36550
36516
|
const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
|
|
36551
36517
|
const url = runtime.endpoints.buildListUrl(type, [id]);
|
|
@@ -36617,7 +36583,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
36617
36583
|
if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
|
|
36618
36584
|
const safePath = sanitizePath(row.path);
|
|
36619
36585
|
if (safePath) {
|
|
36620
|
-
const docTarget = row.documentType ? _optionalChain([ctx, 'access',
|
|
36586
|
+
const docTarget = row.documentType ? _optionalChain([ctx, 'access', _754 => _754.docPlatformTargets, 'optionalAccess', _755 => _755[row.documentType]]) : void 0;
|
|
36621
36587
|
if (docTarget) {
|
|
36622
36588
|
const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
|
|
36623
36589
|
const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
|
|
@@ -36832,8 +36798,8 @@ function cardMenuGroups(href, discuss, openDetails) {
|
|
|
36832
36798
|
if (href) {
|
|
36833
36799
|
items.push({
|
|
36834
36800
|
id: "open-details",
|
|
36835
|
-
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
36836
|
-
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
36801
|
+
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _756 => _756.label]), () => ( "Open Details")),
|
|
36802
|
+
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _757 => _757.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.EyeIcon, { size: 20 }))),
|
|
36837
36803
|
// Main row → open the entity (same tab, soft Link nav).
|
|
36838
36804
|
href,
|
|
36839
36805
|
// Trailing 40px ↗ side-button → open in a new tab.
|
|
@@ -36863,8 +36829,8 @@ function HubspotTicketChatCard({
|
|
|
36863
36829
|
isNewTab,
|
|
36864
36830
|
discuss
|
|
36865
36831
|
}) {
|
|
36866
|
-
const status = typeof _optionalChain([chatRef, 'access',
|
|
36867
|
-
const statusLabel = typeof _optionalChain([chatRef, 'access',
|
|
36832
|
+
const status = typeof _optionalChain([chatRef, 'access', _758 => _758.metadata, 'optionalAccess', _759 => _759.status]) === "string" ? chatRef.metadata.status : void 0;
|
|
36833
|
+
const statusLabel = typeof _optionalChain([chatRef, 'access', _760 => _760.metadata, 'optionalAccess', _761 => _761.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
|
|
36868
36834
|
const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
|
|
36869
36835
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36870
36836
|
MingoInfoCard,
|
|
@@ -36887,7 +36853,7 @@ function SlackChatCard({
|
|
|
36887
36853
|
isNewTab,
|
|
36888
36854
|
discuss
|
|
36889
36855
|
}) {
|
|
36890
|
-
const channelName = typeof _optionalChain([chatRef, 'access',
|
|
36856
|
+
const channelName = typeof _optionalChain([chatRef, 'access', _762 => _762.metadata, 'optionalAccess', _763 => _763.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
|
|
36891
36857
|
const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
|
|
36892
36858
|
const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
|
|
36893
36859
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -36927,7 +36893,7 @@ function GenericFinancialChatCard({
|
|
|
36927
36893
|
isNewTab,
|
|
36928
36894
|
discuss
|
|
36929
36895
|
}) {
|
|
36930
|
-
const subtitle = typeof _optionalChain([chatRef, 'access',
|
|
36896
|
+
const subtitle = typeof _optionalChain([chatRef, 'access', _764 => _764.metadata, 'optionalAccess', _765 => _765.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
|
|
36931
36897
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36932
36898
|
MingoInfoCard,
|
|
36933
36899
|
{
|
|
@@ -36996,12 +36962,12 @@ function ProductReleaseChatCard({
|
|
|
36996
36962
|
discuss
|
|
36997
36963
|
}) {
|
|
36998
36964
|
const releaseProps = buildProps(item);
|
|
36999
|
-
const status = _optionalChain([item, 'optionalAccess',
|
|
36965
|
+
const status = _optionalChain([item, 'optionalAccess', _766 => _766.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
|
|
37000
36966
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37001
36967
|
EntityMingoCard,
|
|
37002
36968
|
{
|
|
37003
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37004
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
36969
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _767 => _767.title]), () => ( "")),
|
|
36970
|
+
description: _optionalChain([item, 'optionalAccess', _768 => _768.summary]) || releaseProps.formattedDate || void 0,
|
|
37005
36971
|
cover: releaseProps.coverImage || void 0,
|
|
37006
36972
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Rocket02Icon, { size: 24 }),
|
|
37007
36973
|
status,
|
|
@@ -37018,17 +36984,17 @@ function CampaignChatCard({
|
|
|
37018
36984
|
isNewTab,
|
|
37019
36985
|
discuss
|
|
37020
36986
|
}) {
|
|
37021
|
-
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
36987
|
+
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _769 => _769.goals])) ? item.goals.length : 0;
|
|
37022
36988
|
const meta = [
|
|
37023
|
-
_optionalChain([item, 'optionalAccess',
|
|
36989
|
+
_optionalChain([item, 'optionalAccess', _770 => _770.start_date]) ? formatDateShort(item.start_date) : null,
|
|
37024
36990
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
37025
36991
|
"Marketing campaign"
|
|
37026
36992
|
].filter(Boolean).join(" \xB7 ");
|
|
37027
36993
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37028
36994
|
EntityMingoCard,
|
|
37029
36995
|
{
|
|
37030
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37031
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
36996
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _771 => _771.name]), () => ( "")),
|
|
36997
|
+
description: meta || _optionalChain([item, 'optionalAccess', _772 => _772.description]) || void 0,
|
|
37032
36998
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Megaphone01Icon, { size: 24 }),
|
|
37033
36999
|
chatRef,
|
|
37034
37000
|
isNewTab,
|
|
@@ -37081,14 +37047,14 @@ function BlogChatCard({
|
|
|
37081
37047
|
hasEmbeddedVideo,
|
|
37082
37048
|
discuss
|
|
37083
37049
|
}) {
|
|
37084
|
-
const category = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
37050
|
+
const category = Array.isArray(_optionalChain([item, 'optionalAccess', _773 => _773.categories])) ? _optionalChain([item, 'access', _774 => _774.categories, 'access', _775 => _775.find, 'call', _776 => _776((c) => c && c.name), 'optionalAccess', _777 => _777.name]) : void 0;
|
|
37085
37051
|
const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
|
|
37086
37052
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37087
37053
|
EntityMingoCard,
|
|
37088
37054
|
{
|
|
37089
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37090
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37091
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
37055
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _778 => _778.title]), () => ( "")),
|
|
37056
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _779 => _779.summary]), () => ( void 0)),
|
|
37057
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _780 => _780.featured_image]), ogPlaceholder),
|
|
37092
37058
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.NewspaperIcon, { size: 24 }),
|
|
37093
37059
|
status,
|
|
37094
37060
|
chatRef,
|
|
@@ -37105,13 +37071,13 @@ function CaseStudyChatCard({
|
|
|
37105
37071
|
ogPlaceholder,
|
|
37106
37072
|
discuss
|
|
37107
37073
|
}) {
|
|
37108
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
37074
|
+
const meta = [_optionalChain([item, 'optionalAccess', _781 => _781.msp, 'optionalAccess', _782 => _782.name]), _optionalChain([item, 'optionalAccess', _783 => _783.user, 'optionalAccess', _784 => _784.full_name])].filter(Boolean).join(" \xB7 ");
|
|
37109
37075
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37110
37076
|
EntityMingoCard,
|
|
37111
37077
|
{
|
|
37112
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37113
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
37114
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
37078
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _785 => _785.title]), () => ( "")),
|
|
37079
|
+
description: _optionalChain([item, 'optionalAccess', _786 => _786.summary]) || meta || void 0,
|
|
37080
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _787 => _787.featured_image]), ogPlaceholder),
|
|
37115
37081
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.TrophyIcon, { size: 24 }),
|
|
37116
37082
|
status: { label: "Case study", variant: "grey" },
|
|
37117
37083
|
chatRef,
|
|
@@ -37128,13 +37094,13 @@ function CustomerInterviewChatCard({
|
|
|
37128
37094
|
ogPlaceholder,
|
|
37129
37095
|
discuss
|
|
37130
37096
|
}) {
|
|
37131
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
37097
|
+
const meta = [_optionalChain([item, 'optionalAccess', _788 => _788.user, 'optionalAccess', _789 => _789.full_name]), _optionalChain([item, 'optionalAccess', _790 => _790.msp, 'optionalAccess', _791 => _791.name])].filter(Boolean).join(" \xB7 ");
|
|
37132
37098
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37133
37099
|
EntityMingoCard,
|
|
37134
37100
|
{
|
|
37135
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37136
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
37137
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
37101
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _792 => _792.title]), () => ( "")),
|
|
37102
|
+
description: _optionalChain([item, 'optionalAccess', _793 => _793.video_summary]) || meta || void 0,
|
|
37103
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _794 => _794.featured_image]), ogPlaceholder),
|
|
37138
37104
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MicrophoneIcon, { size: 24 }),
|
|
37139
37105
|
status: { label: "Interview", variant: "grey" },
|
|
37140
37106
|
chatRef,
|
|
@@ -37151,13 +37117,13 @@ function InvestorUpdateChatCard({
|
|
|
37151
37117
|
ogPlaceholder,
|
|
37152
37118
|
discuss
|
|
37153
37119
|
}) {
|
|
37154
|
-
const title = _optionalChain([item, 'optionalAccess',
|
|
37120
|
+
const title = _optionalChain([item, 'optionalAccess', _795 => _795.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _796 => _796.update_number]), () => ( "?"))}`;
|
|
37155
37121
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37156
37122
|
EntityMingoCard,
|
|
37157
37123
|
{
|
|
37158
37124
|
title,
|
|
37159
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
37160
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
37125
|
+
description: _optionalChain([item, 'optionalAccess', _797 => _797.strategic_update]) || _optionalChain([item, 'optionalAccess', _798 => _798.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _799 => _799.period_start]), _optionalChain([item, 'optionalAccess', _800 => _800.period_end])) || void 0,
|
|
37126
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _801 => _801.featured_image]), ogPlaceholder),
|
|
37161
37127
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.PresentationLineIcon, { size: 24 }),
|
|
37162
37128
|
status: { label: "Investor update", variant: "grey" },
|
|
37163
37129
|
chatRef,
|
|
@@ -37174,12 +37140,12 @@ function OnboardingGuideChatCard({
|
|
|
37174
37140
|
ogPlaceholder,
|
|
37175
37141
|
discuss
|
|
37176
37142
|
}) {
|
|
37177
|
-
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess',
|
|
37143
|
+
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _802 => _802.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _803 => _803.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _804 => _804.og_image_url]), ogPlaceholder)));
|
|
37178
37144
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37179
37145
|
EntityMingoCard,
|
|
37180
37146
|
{
|
|
37181
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37182
|
-
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37147
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _805 => _805.title]), () => ( "")),
|
|
37148
|
+
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _806 => _806.summary]), () => ( _optionalChain([item, 'optionalAccess', _807 => _807.description]))), () => ( void 0)),
|
|
37183
37149
|
cover,
|
|
37184
37150
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CompassIcon, { size: 24 }),
|
|
37185
37151
|
status: { label: "Guide", variant: "grey" },
|
|
@@ -37200,25 +37166,25 @@ function ProgramChatCard({
|
|
|
37200
37166
|
discuss
|
|
37201
37167
|
}) {
|
|
37202
37168
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MicrophoneIcon, { size: 24 });
|
|
37203
|
-
const isScheduled = _optionalChain([item, 'optionalAccess',
|
|
37169
|
+
const isScheduled = _optionalChain([item, 'optionalAccess', _808 => _808.status]) === "scheduled";
|
|
37204
37170
|
let typeMeta;
|
|
37205
|
-
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess',
|
|
37171
|
+
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _809 => _809.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
|
|
37206
37172
|
typeMeta = formatDurationCompact(item.duration_seconds);
|
|
37207
|
-
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess',
|
|
37173
|
+
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _810 => _810.location_name]) === "string" && item.location_name.trim().length > 0) {
|
|
37208
37174
|
typeMeta = item.location_name;
|
|
37209
|
-
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess',
|
|
37175
|
+
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _811 => _811.start_at])) {
|
|
37210
37176
|
const time = formatTimeWithTimezone(item.start_at, null);
|
|
37211
37177
|
const dur = formatDurationFromRange(item.start_at, item.end_at);
|
|
37212
37178
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
37213
37179
|
}
|
|
37214
|
-
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37180
|
+
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _812 => _812.date]), () => ( null)), { fallback: "", timezone: "local" });
|
|
37215
37181
|
const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
|
|
37216
37182
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37217
37183
|
EntityMingoCard,
|
|
37218
37184
|
{
|
|
37219
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37220
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
37221
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
37185
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _813 => _813.title]), () => ( "")),
|
|
37186
|
+
description: meta || _optionalChain([item, 'optionalAccess', _814 => _814.description]) || void 0,
|
|
37187
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _815 => _815.cover_url]), ogPlaceholder),
|
|
37222
37188
|
fallbackIcon: icon,
|
|
37223
37189
|
status: { label, variant: "grey" },
|
|
37224
37190
|
chatRef,
|
|
@@ -37235,10 +37201,10 @@ function RoadmapChatCard({
|
|
|
37235
37201
|
cardType,
|
|
37236
37202
|
discuss
|
|
37237
37203
|
}) {
|
|
37238
|
-
const logoUrl = typeof _optionalChain([item, 'optionalAccess',
|
|
37239
|
-
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess',
|
|
37204
|
+
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _816 => _816.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
37205
|
+
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _817 => _817.customItemId]) != null;
|
|
37240
37206
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MapIcon, { size: 24 });
|
|
37241
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess',
|
|
37207
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _818 => _818.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
37242
37208
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
37243
37209
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
37244
37210
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
|
|
@@ -37246,10 +37212,10 @@ function RoadmapChatCard({
|
|
|
37246
37212
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37247
37213
|
EntityMingoCard,
|
|
37248
37214
|
{
|
|
37249
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37250
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
37215
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _819 => _819.title]), () => ( "")),
|
|
37216
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _820 => _820.description]), () => ( void 0)),
|
|
37251
37217
|
fallbackIcon: icon,
|
|
37252
|
-
status: statusPill(_optionalChain([item, 'optionalAccess',
|
|
37218
|
+
status: statusPill(_optionalChain([item, 'optionalAccess', _821 => _821.status])),
|
|
37253
37219
|
chatRef,
|
|
37254
37220
|
isNewTab,
|
|
37255
37221
|
discuss,
|
|
@@ -37335,7 +37301,7 @@ function programRegistryEntries() {
|
|
|
37335
37301
|
discuss: opts.discuss,
|
|
37336
37302
|
configKey: cfg.configKey,
|
|
37337
37303
|
label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
|
|
37338
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
37304
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _822 => _822.extras, 'optionalAccess', _823 => _823.buildOgPlaceholderUrl, 'optionalCall', _824 => _824(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _825 => _825.title]), () => ( "")))]), () => ( null))
|
|
37339
37305
|
}
|
|
37340
37306
|
)
|
|
37341
37307
|
};
|
|
@@ -37481,8 +37447,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
37481
37447
|
chatRef,
|
|
37482
37448
|
isNewTab: opts.isNewTab,
|
|
37483
37449
|
discuss: opts.discuss,
|
|
37484
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
37485
|
-
hasEmbeddedVideo: _optionalChain([chatRef, 'access',
|
|
37450
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _826 => _826.extras, 'optionalAccess', _827 => _827.buildOgPlaceholderUrl, 'optionalCall', _828 => _828(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _829 => _829.title]), () => ( "")))]), () => ( null)),
|
|
37451
|
+
hasEmbeddedVideo: _optionalChain([chatRef, 'access', _830 => _830.metadata, 'optionalAccess', _831 => _831.hasEmbeddedVideo]) === true
|
|
37486
37452
|
}
|
|
37487
37453
|
)
|
|
37488
37454
|
},
|
|
@@ -37499,7 +37465,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
37499
37465
|
chatRef,
|
|
37500
37466
|
isNewTab: opts.isNewTab,
|
|
37501
37467
|
discuss: opts.discuss,
|
|
37502
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
37468
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _832 => _832.extras, 'optionalAccess', _833 => _833.buildOgPlaceholderUrl, 'optionalCall', _834 => _834(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _835 => _835.title]), () => ( "")))]), () => ( null))
|
|
37503
37469
|
}
|
|
37504
37470
|
)
|
|
37505
37471
|
},
|
|
@@ -37516,7 +37482,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
37516
37482
|
chatRef,
|
|
37517
37483
|
isNewTab: opts.isNewTab,
|
|
37518
37484
|
discuss: opts.discuss,
|
|
37519
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
37485
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _836 => _836.extras, 'optionalAccess', _837 => _837.buildOgPlaceholderUrl, 'optionalCall', _838 => _838(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _839 => _839.title]), () => ( "")))]), () => ( null))
|
|
37520
37486
|
}
|
|
37521
37487
|
)
|
|
37522
37488
|
},
|
|
@@ -37527,7 +37493,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
37527
37493
|
bareInline: true,
|
|
37528
37494
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
|
|
37529
37495
|
render: (item, chatRef, opts) => {
|
|
37530
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
37496
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _840 => _840.extras, 'optionalAccess', _841 => _841.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
|
|
37531
37497
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37532
37498
|
ProductReleaseChatCard,
|
|
37533
37499
|
{
|
|
@@ -37554,7 +37520,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
37554
37520
|
chatRef,
|
|
37555
37521
|
isNewTab: opts.isNewTab,
|
|
37556
37522
|
discuss: opts.discuss,
|
|
37557
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
37523
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _842 => _842.extras, 'optionalAccess', _843 => _843.buildOgPlaceholderUrl, 'optionalCall', _844 => _844(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _845 => _845.title]), () => ( "")))]), () => ( null))
|
|
37558
37524
|
}
|
|
37559
37525
|
)
|
|
37560
37526
|
},
|
|
@@ -37573,7 +37539,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
37573
37539
|
chatRef,
|
|
37574
37540
|
isNewTab: opts.isNewTab,
|
|
37575
37541
|
discuss: opts.discuss,
|
|
37576
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
37542
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _846 => _846.extras, 'optionalAccess', _847 => _847.buildOgPlaceholderUrl, 'optionalCall', _848 => _848(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _849 => _849.title]), () => ( "")))]), () => ( null))
|
|
37577
37543
|
}
|
|
37578
37544
|
)
|
|
37579
37545
|
},
|
|
@@ -37585,7 +37551,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
37585
37551
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
|
|
37586
37552
|
// No public viewer — synthesize the hub-internal admin URL post-fetch
|
|
37587
37553
|
// so the wrapper + isNewTab computation see the actual destination.
|
|
37588
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
37554
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _850 => _850.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
|
|
37589
37555
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37590
37556
|
CampaignChatCard,
|
|
37591
37557
|
{
|
|
@@ -37611,12 +37577,12 @@ function ChatCardNavWrap({
|
|
|
37611
37577
|
const onClickCapture = (e) => {
|
|
37612
37578
|
if (!href) return;
|
|
37613
37579
|
const targetEl = e.target;
|
|
37614
|
-
if (_optionalChain([targetEl, 'optionalAccess',
|
|
37615
|
-
if (!_optionalChain([targetEl, 'optionalAccess',
|
|
37580
|
+
if (_optionalChain([targetEl, 'optionalAccess', _851 => _851.closest, 'optionalCall', _852 => _852("button")])) return;
|
|
37581
|
+
if (!_optionalChain([targetEl, 'optionalAccess', _853 => _853.closest, 'optionalCall', _854 => _854("a")])) return;
|
|
37616
37582
|
const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
|
|
37617
37583
|
if (!handled) return;
|
|
37618
37584
|
e.stopPropagation();
|
|
37619
|
-
if (!isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
37585
|
+
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _855 => _855.closeChat])) panel.closeChat();
|
|
37620
37586
|
};
|
|
37621
37587
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
|
|
37622
37588
|
}
|
|
@@ -37638,7 +37604,7 @@ function ChatCardLoader({
|
|
|
37638
37604
|
title: chatRef.title,
|
|
37639
37605
|
externalUrl: chatRef.url,
|
|
37640
37606
|
targetPlatform: chatRef.targetPlatform,
|
|
37641
|
-
path: typeof _optionalChain([chatRef, 'access',
|
|
37607
|
+
path: typeof _optionalChain([chatRef, 'access', _856 => _856.metadata, 'optionalAccess', _857 => _857.path]) === "string" ? chatRef.metadata.path : null
|
|
37642
37608
|
},
|
|
37643
37609
|
sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
|
|
37644
37610
|
);
|
|
@@ -37652,7 +37618,7 @@ function ChatCardLoader({
|
|
|
37652
37618
|
const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
|
|
37653
37619
|
const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
|
|
37654
37620
|
const { item, isLoading } = useChatCardItem(
|
|
37655
|
-
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess',
|
|
37621
|
+
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _858 => _858.contentRefType]), () => ( "")),
|
|
37656
37622
|
fetchEntry ? resolvedChatRef.id : ""
|
|
37657
37623
|
);
|
|
37658
37624
|
if (!entry) return null;
|
|
@@ -37683,7 +37649,7 @@ function ChatCardLoader({
|
|
|
37683
37649
|
isNewTab,
|
|
37684
37650
|
discuss
|
|
37685
37651
|
};
|
|
37686
|
-
const path = typeof _optionalChain([finalChatRef, 'access',
|
|
37652
|
+
const path = typeof _optionalChain([finalChatRef, 'access', _859 => _859.metadata, 'optionalAccess', _860 => _860.path]) === "string" ? finalChatRef.metadata.path : null;
|
|
37687
37653
|
const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37688
37654
|
ChatCardNavWrap,
|
|
37689
37655
|
{
|
|
@@ -38209,7 +38175,7 @@ function useJetStreamDialogSubscription({
|
|
|
38209
38175
|
const lifecycle = _chunkOZ3GH6OQcjs.startConnectionLifecycle.call(void 0, {
|
|
38210
38176
|
conn: sharedConn,
|
|
38211
38177
|
wsUrl,
|
|
38212
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
38178
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _861 => _861.current, 'optionalCall', _862 => _862()]),
|
|
38213
38179
|
backoff: reconnectionBackoffRef.current,
|
|
38214
38180
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
38215
38181
|
// JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
|
|
@@ -38224,7 +38190,7 @@ function useJetStreamDialogSubscription({
|
|
|
38224
38190
|
setReconnectionCount((c) => c + 1);
|
|
38225
38191
|
}
|
|
38226
38192
|
hadConnectionBeforeRef.current = true;
|
|
38227
|
-
_optionalChain([onConnectRef, 'access',
|
|
38193
|
+
_optionalChain([onConnectRef, 'access', _863 => _863.current, 'optionalCall', _864 => _864()]);
|
|
38228
38194
|
}
|
|
38229
38195
|
if (status === "error") {
|
|
38230
38196
|
console.warn("[JetStream] NATS protocol error:", evt.data);
|
|
@@ -38234,7 +38200,7 @@ function useJetStreamDialogSubscription({
|
|
|
38234
38200
|
setIsConnected(false);
|
|
38235
38201
|
setIsSubscribed(false);
|
|
38236
38202
|
tearDownSubscription();
|
|
38237
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
38203
|
+
_optionalChain([onDisconnectRef, 'access', _865 => _865.current, 'optionalCall', _866 => _866()]);
|
|
38238
38204
|
}
|
|
38239
38205
|
}
|
|
38240
38206
|
});
|
|
@@ -38313,7 +38279,7 @@ function useJetStreamDialogSubscription({
|
|
|
38313
38279
|
}
|
|
38314
38280
|
subscriptionRef.current = handle;
|
|
38315
38281
|
setIsSubscribed(true);
|
|
38316
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
38282
|
+
_optionalChain([onSubscribedRef, 'access', _867 => _867.current, 'optionalCall', _868 => _868()]);
|
|
38317
38283
|
} catch (e35) {
|
|
38318
38284
|
if (!cancelled) {
|
|
38319
38285
|
setIsSubscribed(false);
|
|
@@ -38426,20 +38392,20 @@ function useNatsDialogSubscription({
|
|
|
38426
38392
|
const tearDownSubscriptions = () => {
|
|
38427
38393
|
subscriptionRefs.current.forEach((sub) => {
|
|
38428
38394
|
try {
|
|
38429
|
-
_optionalChain([sub, 'optionalAccess',
|
|
38395
|
+
_optionalChain([sub, 'optionalAccess', _869 => _869.unsubscribe, 'call', _870 => _870()]);
|
|
38430
38396
|
} catch (e37) {
|
|
38431
38397
|
}
|
|
38432
38398
|
});
|
|
38433
38399
|
subscriptionRefs.current.clear();
|
|
38434
38400
|
lastSubscribedDialogIdRef.current = null;
|
|
38435
|
-
_optionalChain([abortControllerRef, 'access',
|
|
38401
|
+
_optionalChain([abortControllerRef, 'access', _871 => _871.current, 'optionalAccess', _872 => _872.abort, 'call', _873 => _873()]);
|
|
38436
38402
|
abortControllerRef.current = null;
|
|
38437
38403
|
};
|
|
38438
38404
|
const isDisconnectStatus = (status) => status === "closed" || status === "disconnected" || status === "error";
|
|
38439
38405
|
const lifecycle = _chunkOZ3GH6OQcjs.startConnectionLifecycle.call(void 0, {
|
|
38440
38406
|
conn: sharedConn,
|
|
38441
38407
|
wsUrl,
|
|
38442
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
38408
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _874 => _874.current, 'optionalCall', _875 => _875()]),
|
|
38443
38409
|
backoff: reconnectionBackoffRef.current,
|
|
38444
38410
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
38445
38411
|
shouldRetryOn: isDisconnectStatus,
|
|
@@ -38450,13 +38416,13 @@ function useNatsDialogSubscription({
|
|
|
38450
38416
|
setReconnectionCount((c) => c + 1);
|
|
38451
38417
|
}
|
|
38452
38418
|
hadConnectionBeforeRef.current = true;
|
|
38453
|
-
_optionalChain([onConnectRef, 'access',
|
|
38419
|
+
_optionalChain([onConnectRef, 'access', _876 => _876.current, 'optionalCall', _877 => _877()]);
|
|
38454
38420
|
}
|
|
38455
38421
|
if (isDisconnectStatus(status)) {
|
|
38456
38422
|
setIsConnected(false);
|
|
38457
38423
|
setIsSubscribed(false);
|
|
38458
38424
|
tearDownSubscriptions();
|
|
38459
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
38425
|
+
_optionalChain([onDisconnectRef, 'access', _878 => _878.current, 'optionalCall', _879 => _879()]);
|
|
38460
38426
|
}
|
|
38461
38427
|
}
|
|
38462
38428
|
});
|
|
@@ -38487,13 +38453,13 @@ function useNatsDialogSubscription({
|
|
|
38487
38453
|
setIsSubscribed(false);
|
|
38488
38454
|
subscriptionRefs.current.forEach((sub) => {
|
|
38489
38455
|
try {
|
|
38490
|
-
_optionalChain([sub, 'optionalAccess',
|
|
38456
|
+
_optionalChain([sub, 'optionalAccess', _880 => _880.unsubscribe, 'call', _881 => _881()]);
|
|
38491
38457
|
} catch (e38) {
|
|
38492
38458
|
}
|
|
38493
38459
|
});
|
|
38494
38460
|
subscriptionRefs.current.clear();
|
|
38495
38461
|
lastSubscribedDialogIdRef.current = null;
|
|
38496
|
-
_optionalChain([abortControllerRef, 'access',
|
|
38462
|
+
_optionalChain([abortControllerRef, 'access', _882 => _882.current, 'optionalAccess', _883 => _883.abort, 'call', _884 => _884()]);
|
|
38497
38463
|
abortControllerRef.current = null;
|
|
38498
38464
|
}
|
|
38499
38465
|
return;
|
|
@@ -38505,12 +38471,12 @@ function useNatsDialogSubscription({
|
|
|
38505
38471
|
if (subscriptionRefs.current.size > 0) {
|
|
38506
38472
|
subscriptionRefs.current.forEach((sub) => {
|
|
38507
38473
|
try {
|
|
38508
|
-
_optionalChain([sub, 'optionalAccess',
|
|
38474
|
+
_optionalChain([sub, 'optionalAccess', _885 => _885.unsubscribe, 'call', _886 => _886()]);
|
|
38509
38475
|
} catch (e39) {
|
|
38510
38476
|
}
|
|
38511
38477
|
});
|
|
38512
38478
|
subscriptionRefs.current.clear();
|
|
38513
|
-
_optionalChain([abortControllerRef, 'access',
|
|
38479
|
+
_optionalChain([abortControllerRef, 'access', _887 => _887.current, 'optionalAccess', _888 => _888.abort, 'call', _889 => _889()]);
|
|
38514
38480
|
}
|
|
38515
38481
|
abortControllerRef.current = new AbortController();
|
|
38516
38482
|
const abort = abortControllerRef.current;
|
|
@@ -38542,7 +38508,7 @@ function useNatsDialogSubscription({
|
|
|
38542
38508
|
});
|
|
38543
38509
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
38544
38510
|
setIsSubscribed(true);
|
|
38545
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
38511
|
+
_optionalChain([onSubscribedRef, 'access', _890 => _890.current, 'optionalCall', _891 => _891()]);
|
|
38546
38512
|
};
|
|
38547
38513
|
if (isConnectedRef.current) {
|
|
38548
38514
|
createSubscriptions();
|
|
@@ -38552,7 +38518,7 @@ function useNatsDialogSubscription({
|
|
|
38552
38518
|
abort.abort();
|
|
38553
38519
|
subscriptionRefs.current.forEach((sub) => {
|
|
38554
38520
|
try {
|
|
38555
|
-
_optionalChain([sub, 'optionalAccess',
|
|
38521
|
+
_optionalChain([sub, 'optionalAccess', _892 => _892.unsubscribe, 'call', _893 => _893()]);
|
|
38556
38522
|
} catch (e41) {
|
|
38557
38523
|
}
|
|
38558
38524
|
});
|
|
@@ -38593,7 +38559,7 @@ function useNatsDialogSubscription({
|
|
|
38593
38559
|
});
|
|
38594
38560
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
38595
38561
|
setIsSubscribed(true);
|
|
38596
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
38562
|
+
_optionalChain([onSubscribedRef, 'access', _894 => _894.current, 'optionalCall', _895 => _895()]);
|
|
38597
38563
|
} else if (subscriptionRefs.current.size > 0) {
|
|
38598
38564
|
setIsSubscribed(true);
|
|
38599
38565
|
}
|
|
@@ -38601,10 +38567,10 @@ function useNatsDialogSubscription({
|
|
|
38601
38567
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
38602
38568
|
}
|
|
38603
38569
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
38604
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
38570
|
+
const path = _optionalChain([options, 'optionalAccess', _896 => _896.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
38605
38571
|
const u = new URL(path, apiBaseUrl);
|
|
38606
38572
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
38607
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
38573
|
+
if (_optionalChain([options, 'optionalAccess', _897 => _897.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _898 => _898.token])) {
|
|
38608
38574
|
u.searchParams.set("authorization", options.token);
|
|
38609
38575
|
}
|
|
38610
38576
|
return u.toString();
|
|
@@ -38922,8 +38888,8 @@ var MessageSegmentAccumulator = class {
|
|
|
38922
38888
|
type: "tool_execution",
|
|
38923
38889
|
data: {
|
|
38924
38890
|
...toolData,
|
|
38925
|
-
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
38926
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
38891
|
+
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _899 => _899.data, 'access', _900 => _900.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _901 => _901.toolTitle]))),
|
|
38892
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _902 => _902.parameters])
|
|
38927
38893
|
}
|
|
38928
38894
|
};
|
|
38929
38895
|
if (existingIndex !== -1) {
|
|
@@ -38947,8 +38913,8 @@ var MessageSegmentAccumulator = class {
|
|
|
38947
38913
|
if (seg.type !== "approval_batch") return seg;
|
|
38948
38914
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
38949
38915
|
if (!hasCall) return seg;
|
|
38950
|
-
const prev = _optionalChain([seg, 'access',
|
|
38951
|
-
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess',
|
|
38916
|
+
const prev = _optionalChain([seg, 'access', _903 => _903.data, 'access', _904 => _904.executions, 'optionalAccess', _905 => _905[execId]]);
|
|
38917
|
+
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _906 => _906.result]), success: _optionalChain([prev, 'optionalAccess', _907 => _907.success]) };
|
|
38952
38918
|
matched = true;
|
|
38953
38919
|
return {
|
|
38954
38920
|
...seg,
|
|
@@ -39068,10 +39034,10 @@ var MessageSegmentAccumulator = class {
|
|
|
39068
39034
|
const segment = {
|
|
39069
39035
|
type: "approval_request",
|
|
39070
39036
|
data: {
|
|
39071
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
39072
|
-
explanation: _optionalChain([pendingApproval, 'optionalAccess',
|
|
39037
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _908 => _908.command]) || "",
|
|
39038
|
+
explanation: _optionalChain([pendingApproval, 'optionalAccess', _909 => _909.explanation]),
|
|
39073
39039
|
requestId,
|
|
39074
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
39040
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _910 => _910.approvalType]) || approvalType
|
|
39075
39041
|
},
|
|
39076
39042
|
status,
|
|
39077
39043
|
onApprove: this.callbacks.onApprove,
|
|
@@ -39261,7 +39227,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39261
39227
|
if (initialState.escalatedApprovals) {
|
|
39262
39228
|
pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
|
|
39263
39229
|
initialState.escalatedApprovals.forEach((data, requestId) => {
|
|
39264
|
-
_optionalChain([callbacks, 'access',
|
|
39230
|
+
_optionalChain([callbacks, 'access', _911 => _911.onEscalatedApproval, 'optionalCall', _912 => _912(requestId, data)]);
|
|
39265
39231
|
});
|
|
39266
39232
|
}
|
|
39267
39233
|
hasEverStreamedRef.current = true;
|
|
@@ -39288,7 +39254,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39288
39254
|
if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
|
|
39289
39255
|
if (isInStreamRef.current) {
|
|
39290
39256
|
isInStreamRef.current = false;
|
|
39291
|
-
_optionalChain([callbacks, 'access',
|
|
39257
|
+
_optionalChain([callbacks, 'access', _913 => _913.onStreamEnd, 'optionalCall', _914 => _914()]);
|
|
39292
39258
|
accumulator.resetSegments();
|
|
39293
39259
|
}
|
|
39294
39260
|
return;
|
|
@@ -39297,32 +39263,32 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39297
39263
|
case "message_start":
|
|
39298
39264
|
isInStreamRef.current = true;
|
|
39299
39265
|
hasEverStreamedRef.current = true;
|
|
39300
|
-
_optionalChain([callbacks, 'access',
|
|
39266
|
+
_optionalChain([callbacks, 'access', _915 => _915.onStreamStart, 'optionalCall', _916 => _916()]);
|
|
39301
39267
|
accumulator.resetSegments();
|
|
39302
39268
|
break;
|
|
39303
39269
|
case "message_end":
|
|
39304
39270
|
isInStreamRef.current = false;
|
|
39305
|
-
_optionalChain([callbacks, 'access',
|
|
39271
|
+
_optionalChain([callbacks, 'access', _917 => _917.onStreamEnd, 'optionalCall', _918 => _918()]);
|
|
39306
39272
|
accumulator.resetSegments();
|
|
39307
39273
|
break;
|
|
39308
39274
|
case "metadata":
|
|
39309
|
-
_optionalChain([callbacks, 'access',
|
|
39275
|
+
_optionalChain([callbacks, 'access', _919 => _919.onMetadata, 'optionalCall', _920 => _920(action)]);
|
|
39310
39276
|
break;
|
|
39311
39277
|
case "text": {
|
|
39312
39278
|
const segments = accumulator.appendText(action.text);
|
|
39313
39279
|
if (isInStreamRef.current || !hasEverStreamedRef.current) {
|
|
39314
|
-
_optionalChain([callbacks, 'access',
|
|
39280
|
+
_optionalChain([callbacks, 'access', _921 => _921.onSegmentsUpdate, 'optionalCall', _922 => _922(segments)]);
|
|
39315
39281
|
} else {
|
|
39316
|
-
_optionalChain([callbacks, 'access',
|
|
39282
|
+
_optionalChain([callbacks, 'access', _923 => _923.onSegmentsUpdate, 'optionalCall', _924 => _924([{ type: "text", text: action.text }], { append: true })]);
|
|
39317
39283
|
}
|
|
39318
39284
|
break;
|
|
39319
39285
|
}
|
|
39320
39286
|
case "thinking": {
|
|
39321
39287
|
const segments = accumulator.appendThinking(action.text);
|
|
39322
39288
|
if (isInStreamRef.current || !hasEverStreamedRef.current) {
|
|
39323
|
-
_optionalChain([callbacks, 'access',
|
|
39289
|
+
_optionalChain([callbacks, 'access', _925 => _925.onSegmentsUpdate, 'optionalCall', _926 => _926(segments)]);
|
|
39324
39290
|
} else {
|
|
39325
|
-
_optionalChain([callbacks, 'access',
|
|
39291
|
+
_optionalChain([callbacks, 'access', _927 => _927.onSegmentsUpdate, 'optionalCall', _928 => _928([{ type: "thinking", text: action.text }], { append: true })]);
|
|
39326
39292
|
}
|
|
39327
39293
|
break;
|
|
39328
39294
|
}
|
|
@@ -39332,7 +39298,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39332
39298
|
break;
|
|
39333
39299
|
}
|
|
39334
39300
|
const segments = accumulator.addToolExecution(action.segment);
|
|
39335
|
-
_optionalChain([callbacks, 'access',
|
|
39301
|
+
_optionalChain([callbacks, 'access', _929 => _929.onSegmentsUpdate, 'optionalCall', _930 => _930(segments)]);
|
|
39336
39302
|
break;
|
|
39337
39303
|
}
|
|
39338
39304
|
case "approval_request": {
|
|
@@ -39346,10 +39312,10 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39346
39312
|
approvalType,
|
|
39347
39313
|
status
|
|
39348
39314
|
);
|
|
39349
|
-
_optionalChain([callbacks, 'access',
|
|
39315
|
+
_optionalChain([callbacks, 'access', _931 => _931.onSegmentsUpdate, 'optionalCall', _932 => _932(segments)]);
|
|
39350
39316
|
} else {
|
|
39351
39317
|
pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
|
|
39352
|
-
_optionalChain([callbacks, 'access',
|
|
39318
|
+
_optionalChain([callbacks, 'access', _933 => _933.onEscalatedApproval, 'optionalCall', _934 => _934(requestId, { command, explanation, approvalType })]);
|
|
39353
39319
|
}
|
|
39354
39320
|
break;
|
|
39355
39321
|
}
|
|
@@ -39361,20 +39327,20 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39361
39327
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
39362
39328
|
pendingEscalatedRef.current.set(requestId, {
|
|
39363
39329
|
command: summary,
|
|
39364
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
39330
|
+
explanation: _optionalChain([required, 'optionalAccess', _935 => _935.toolExplanation]),
|
|
39365
39331
|
approvalType,
|
|
39366
39332
|
toolCalls
|
|
39367
39333
|
});
|
|
39368
|
-
_optionalChain([callbacks, 'access',
|
|
39334
|
+
_optionalChain([callbacks, 'access', _936 => _936.onEscalatedApproval, 'optionalCall', _937 => _937(requestId, {
|
|
39369
39335
|
command: summary,
|
|
39370
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
39336
|
+
explanation: _optionalChain([required, 'optionalAccess', _938 => _938.toolExplanation]),
|
|
39371
39337
|
approvalType
|
|
39372
39338
|
})]);
|
|
39373
39339
|
break;
|
|
39374
39340
|
}
|
|
39375
39341
|
if (batchApprovalsEnabled) {
|
|
39376
39342
|
const segments2 = accumulator.addApprovalBatch(requestId, approvalType, toolCalls, status);
|
|
39377
|
-
_optionalChain([callbacks, 'access',
|
|
39343
|
+
_optionalChain([callbacks, 'access', _939 => _939.onSegmentsUpdate, 'optionalCall', _940 => _940(segments2)]);
|
|
39378
39344
|
break;
|
|
39379
39345
|
}
|
|
39380
39346
|
let segments = accumulator.getSegments();
|
|
@@ -39388,7 +39354,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39388
39354
|
status
|
|
39389
39355
|
);
|
|
39390
39356
|
}
|
|
39391
|
-
_optionalChain([callbacks, 'access',
|
|
39357
|
+
_optionalChain([callbacks, 'access', _941 => _941.onSegmentsUpdate, 'optionalCall', _942 => _942(segments)]);
|
|
39392
39358
|
break;
|
|
39393
39359
|
}
|
|
39394
39360
|
case "approval_result": {
|
|
@@ -39397,7 +39363,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39397
39363
|
const status = approved ? "approved" : "rejected";
|
|
39398
39364
|
if (escalatedData) {
|
|
39399
39365
|
pendingEscalatedRef.current.delete(requestId);
|
|
39400
|
-
_optionalChain([callbacks, 'access',
|
|
39366
|
+
_optionalChain([callbacks, 'access', _943 => _943.onEscalatedApprovalResult, 'optionalCall', _944 => _944(requestId, approved, {
|
|
39401
39367
|
command: escalatedData.command,
|
|
39402
39368
|
explanation: escalatedData.explanation,
|
|
39403
39369
|
approvalType: escalatedData.approvalType
|
|
@@ -39410,7 +39376,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39410
39376
|
escalatedData.toolCalls,
|
|
39411
39377
|
status
|
|
39412
39378
|
);
|
|
39413
|
-
_optionalChain([callbacks, 'access',
|
|
39379
|
+
_optionalChain([callbacks, 'access', _945 => _945.onSegmentsUpdate, 'optionalCall', _946 => _946(segments)]);
|
|
39414
39380
|
} else {
|
|
39415
39381
|
let segments = accumulator.getSegments();
|
|
39416
39382
|
for (const call of escalatedData.toolCalls) {
|
|
@@ -39423,7 +39389,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39423
39389
|
status
|
|
39424
39390
|
);
|
|
39425
39391
|
}
|
|
39426
|
-
_optionalChain([callbacks, 'access',
|
|
39392
|
+
_optionalChain([callbacks, 'access', _947 => _947.onSegmentsUpdate, 'optionalCall', _948 => _948(segments)]);
|
|
39427
39393
|
}
|
|
39428
39394
|
} else {
|
|
39429
39395
|
const segments = accumulator.addApprovalRequest(
|
|
@@ -39433,37 +39399,37 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39433
39399
|
escalatedData.approvalType,
|
|
39434
39400
|
status
|
|
39435
39401
|
);
|
|
39436
|
-
_optionalChain([callbacks, 'access',
|
|
39402
|
+
_optionalChain([callbacks, 'access', _949 => _949.onSegmentsUpdate, 'optionalCall', _950 => _950(segments)]);
|
|
39437
39403
|
}
|
|
39438
39404
|
} else {
|
|
39439
39405
|
accumulator.updateApprovalStatus(requestId, status);
|
|
39440
39406
|
if (!callbacks.onApprovalResolved) {
|
|
39441
|
-
_optionalChain([callbacks, 'access',
|
|
39407
|
+
_optionalChain([callbacks, 'access', _951 => _951.onSegmentsUpdate, 'optionalCall', _952 => _952(accumulator.getSegments())]);
|
|
39442
39408
|
}
|
|
39443
39409
|
}
|
|
39444
|
-
_optionalChain([callbacks, 'access',
|
|
39410
|
+
_optionalChain([callbacks, 'access', _953 => _953.onApprovalResolved, 'optionalCall', _954 => _954(requestId, status, approvalType)]);
|
|
39445
39411
|
break;
|
|
39446
39412
|
}
|
|
39447
39413
|
case "error": {
|
|
39448
39414
|
let message2;
|
|
39449
|
-
if ("details" in action && _optionalChain([action, 'optionalAccess',
|
|
39415
|
+
if ("details" in action && _optionalChain([action, 'optionalAccess', _955 => _955.details])) {
|
|
39450
39416
|
try {
|
|
39451
|
-
message2 = _optionalChain([JSON, 'access',
|
|
39417
|
+
message2 = _optionalChain([JSON, 'access', _956 => _956.parse, 'call', _957 => _957(action.details), 'optionalAccess', _958 => _958.error, 'optionalAccess', _959 => _959.message]);
|
|
39452
39418
|
} catch (e43) {
|
|
39453
39419
|
message2 = action.details;
|
|
39454
39420
|
}
|
|
39455
39421
|
}
|
|
39456
39422
|
const segments = accumulator.addError(action.error, message2);
|
|
39457
|
-
_optionalChain([callbacks, 'access',
|
|
39458
|
-
_optionalChain([callbacks, 'access',
|
|
39423
|
+
_optionalChain([callbacks, 'access', _960 => _960.onSegmentsUpdate, 'optionalCall', _961 => _961(segments)]);
|
|
39424
|
+
_optionalChain([callbacks, 'access', _962 => _962.onError, 'optionalCall', _963 => _963(action.error, message2)]);
|
|
39459
39425
|
break;
|
|
39460
39426
|
}
|
|
39461
39427
|
case "system": {
|
|
39462
|
-
_optionalChain([callbacks, 'access',
|
|
39428
|
+
_optionalChain([callbacks, 'access', _964 => _964.onSystemMessage, 'optionalCall', _965 => _965(action.text)]);
|
|
39463
39429
|
break;
|
|
39464
39430
|
}
|
|
39465
39431
|
case "direct_message": {
|
|
39466
|
-
_optionalChain([callbacks, 'access',
|
|
39432
|
+
_optionalChain([callbacks, 'access', _966 => _966.onDirectMessage, 'optionalCall', _967 => _967(action.text, {
|
|
39467
39433
|
ownerType: action.ownerType,
|
|
39468
39434
|
displayName: action.displayName,
|
|
39469
39435
|
userId: action.userId
|
|
@@ -39471,29 +39437,29 @@ function useRealtimeChunkProcessor(options) {
|
|
|
39471
39437
|
break;
|
|
39472
39438
|
}
|
|
39473
39439
|
case "message_request":
|
|
39474
|
-
_optionalChain([callbacks, 'access',
|
|
39440
|
+
_optionalChain([callbacks, 'access', _968 => _968.onUserMessage, 'optionalCall', _969 => _969(action.text, {
|
|
39475
39441
|
ownerType: action.ownerType,
|
|
39476
39442
|
displayName: action.displayName,
|
|
39477
39443
|
userId: action.userId
|
|
39478
39444
|
})]);
|
|
39479
39445
|
break;
|
|
39480
39446
|
case "token_usage":
|
|
39481
|
-
_optionalChain([callbacks, 'access',
|
|
39447
|
+
_optionalChain([callbacks, 'access', _970 => _970.onTokenUsage, 'optionalCall', _971 => _971(action.data)]);
|
|
39482
39448
|
break;
|
|
39483
39449
|
case "context_compaction_start": {
|
|
39484
39450
|
const standalone = !isInStreamRef.current;
|
|
39485
39451
|
const segments = accumulator.addContextCompaction();
|
|
39486
|
-
_optionalChain([callbacks, 'access',
|
|
39452
|
+
_optionalChain([callbacks, 'access', _972 => _972.onSegmentsUpdate, 'optionalCall', _973 => _973(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
|
|
39487
39453
|
break;
|
|
39488
39454
|
}
|
|
39489
39455
|
case "context_compaction_end": {
|
|
39490
39456
|
const standalone = !isInStreamRef.current;
|
|
39491
39457
|
const segments = accumulator.completeContextCompaction(action.summary);
|
|
39492
|
-
_optionalChain([callbacks, 'access',
|
|
39458
|
+
_optionalChain([callbacks, 'access', _974 => _974.onSegmentsUpdate, 'optionalCall', _975 => _975(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
|
|
39493
39459
|
break;
|
|
39494
39460
|
}
|
|
39495
39461
|
case "dialog_closed":
|
|
39496
|
-
_optionalChain([callbacks, 'access',
|
|
39462
|
+
_optionalChain([callbacks, 'access', _976 => _976.onDialogClosed, 'optionalCall', _977 => _977()]);
|
|
39497
39463
|
break;
|
|
39498
39464
|
default:
|
|
39499
39465
|
break;
|
|
@@ -39555,7 +39521,7 @@ function useSlashCommands(prefix, commandsUrl) {
|
|
|
39555
39521
|
const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
|
|
39556
39522
|
if (!cancelled) setCommands(next);
|
|
39557
39523
|
} catch (err) {
|
|
39558
|
-
if (!cancelled && _optionalChain([err, 'optionalAccess',
|
|
39524
|
+
if (!cancelled && _optionalChain([err, 'optionalAccess', _978 => _978.name]) !== "AbortError") {
|
|
39559
39525
|
console.warn("[use-slash-commands] fetch failed:", err);
|
|
39560
39526
|
}
|
|
39561
39527
|
} finally {
|
|
@@ -39574,7 +39540,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
|
|
|
39574
39540
|
const query = _reactquery.useQuery.call(void 0, {
|
|
39575
39541
|
queryKey: ["chat-slash-commands", commandsUrl],
|
|
39576
39542
|
queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
|
|
39577
|
-
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
39543
|
+
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _979 => _979.enabled]), () => ( true)),
|
|
39578
39544
|
staleTime: Infinity,
|
|
39579
39545
|
gcTime: Infinity
|
|
39580
39546
|
});
|
|
@@ -39595,7 +39561,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
|
|
|
39595
39561
|
var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
|
|
39596
39562
|
function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
39597
39563
|
return new Promise((resolve, reject) => {
|
|
39598
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
39564
|
+
if (_optionalChain([signal, 'optionalAccess', _980 => _980.aborted])) {
|
|
39599
39565
|
reject(new Error("Upload cancelled"));
|
|
39600
39566
|
return;
|
|
39601
39567
|
}
|
|
@@ -39609,7 +39575,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
39609
39575
|
xhr.removeEventListener("error", handleError);
|
|
39610
39576
|
xhr.removeEventListener("abort", handleAbort);
|
|
39611
39577
|
xhr.removeEventListener("timeout", handleTimeout);
|
|
39612
|
-
_optionalChain([signal, 'optionalAccess',
|
|
39578
|
+
_optionalChain([signal, 'optionalAccess', _981 => _981.removeEventListener, 'call', _982 => _982("abort", handleSignalAbort)]);
|
|
39613
39579
|
if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
|
|
39614
39580
|
};
|
|
39615
39581
|
const handleProgress = (event) => {
|
|
@@ -39645,7 +39611,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
39645
39611
|
const handleSignalAbort = () => {
|
|
39646
39612
|
xhr.abort();
|
|
39647
39613
|
};
|
|
39648
|
-
_optionalChain([signal, 'optionalAccess',
|
|
39614
|
+
_optionalChain([signal, 'optionalAccess', _983 => _983.addEventListener, 'call', _984 => _984("abort", handleSignalAbort, { once: true })]);
|
|
39649
39615
|
xhr.upload.addEventListener("progress", handleProgress);
|
|
39650
39616
|
xhr.addEventListener("load", handleLoad);
|
|
39651
39617
|
xhr.addEventListener("error", handleError);
|
|
@@ -39689,12 +39655,12 @@ function useChatAttachments() {
|
|
|
39689
39655
|
try {
|
|
39690
39656
|
sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
|
|
39691
39657
|
} catch (err) {
|
|
39692
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
39658
|
+
if (_optionalChain([ctrl, 'optionalAccess', _985 => _985.signal, 'access', _986 => _986.aborted])) return;
|
|
39693
39659
|
throw new Error(
|
|
39694
39660
|
`Could not read file content: ${err instanceof Error ? err.message : String(err)}`
|
|
39695
39661
|
);
|
|
39696
39662
|
}
|
|
39697
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
39663
|
+
if (_optionalChain([ctrl, 'optionalAccess', _987 => _987.signal, 'access', _988 => _988.aborted])) return;
|
|
39698
39664
|
if (!sniffed) {
|
|
39699
39665
|
throw new Error("Unrecognized file format");
|
|
39700
39666
|
}
|
|
@@ -39708,7 +39674,7 @@ function useChatAttachments() {
|
|
|
39708
39674
|
const urlResp = await embedAuthedFetch(uploadUrlEndpoint, {
|
|
39709
39675
|
method: "POST",
|
|
39710
39676
|
headers: { "Content-Type": "application/json" },
|
|
39711
|
-
signal: _optionalChain([ctrl, 'optionalAccess',
|
|
39677
|
+
signal: _optionalChain([ctrl, 'optionalAccess', _989 => _989.signal]),
|
|
39712
39678
|
body: JSON.stringify({
|
|
39713
39679
|
fileName: att.file.name,
|
|
39714
39680
|
// Pass the SNIFFED MIME (not `file.type`, which can be a
|
|
@@ -39734,9 +39700,9 @@ function useChatAttachments() {
|
|
|
39734
39700
|
(pct) => {
|
|
39735
39701
|
updateOne(att.id, { progress: pct });
|
|
39736
39702
|
},
|
|
39737
|
-
_optionalChain([ctrl, 'optionalAccess',
|
|
39703
|
+
_optionalChain([ctrl, 'optionalAccess', _990 => _990.signal])
|
|
39738
39704
|
);
|
|
39739
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
39705
|
+
if (_optionalChain([ctrl, 'optionalAccess', _991 => _991.signal, 'access', _992 => _992.aborted])) return;
|
|
39740
39706
|
updateOne(att.id, {
|
|
39741
39707
|
status: "ready",
|
|
39742
39708
|
progress: 100,
|
|
@@ -39744,7 +39710,7 @@ function useChatAttachments() {
|
|
|
39744
39710
|
viewToken: mintData.viewToken
|
|
39745
39711
|
});
|
|
39746
39712
|
} catch (err) {
|
|
39747
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
39713
|
+
if (_optionalChain([ctrl, 'optionalAccess', _993 => _993.signal, 'access', _994 => _994.aborted])) return;
|
|
39748
39714
|
const message2 = err instanceof Error ? err.message : String(err);
|
|
39749
39715
|
updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
|
|
39750
39716
|
} finally {
|
|
@@ -39895,7 +39861,7 @@ var ANON_DEFAULTS = {
|
|
|
39895
39861
|
function useResolveChatIdentity(enabled) {
|
|
39896
39862
|
const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
|
|
39897
39863
|
const url = runtime.endpoints.identityUrl;
|
|
39898
|
-
const proxyEmail = _nullishCoalesce(_optionalChain([getEmbedProxyAuth, 'call',
|
|
39864
|
+
const proxyEmail = _nullishCoalesce(_optionalChain([getEmbedProxyAuth, 'call', _995 => _995(), 'optionalAccess', _996 => _996.email]), () => ( null));
|
|
39899
39865
|
const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
|
|
39900
39866
|
const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
|
|
39901
39867
|
_react.useEffect.call(void 0, () => {
|
|
@@ -39983,7 +39949,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
|
|
|
39983
39949
|
yield chunk;
|
|
39984
39950
|
}
|
|
39985
39951
|
} catch (err) {
|
|
39986
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
39952
|
+
if (_optionalChain([err, 'optionalAccess', _997 => _997.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
39987
39953
|
return;
|
|
39988
39954
|
}
|
|
39989
39955
|
const errorMessage = err instanceof Error ? err.message : "An error occurred";
|
|
@@ -40034,7 +40000,7 @@ function useChat({
|
|
|
40034
40000
|
const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
|
|
40035
40001
|
onMessagesChangeRef.current = onMessagesChange;
|
|
40036
40002
|
_react.useEffect.call(void 0, () => {
|
|
40037
|
-
_optionalChain([onMessagesChangeRef, 'access',
|
|
40003
|
+
_optionalChain([onMessagesChangeRef, 'access', _998 => _998.current, 'optionalCall', _999 => _999(messages)]);
|
|
40038
40004
|
}, [messages]);
|
|
40039
40005
|
const {
|
|
40040
40006
|
streamMessage,
|
|
@@ -40071,7 +40037,7 @@ function useChat({
|
|
|
40071
40037
|
name: "You",
|
|
40072
40038
|
content: text,
|
|
40073
40039
|
timestamp: /* @__PURE__ */ new Date(),
|
|
40074
|
-
..._optionalChain([options, 'optionalAccess',
|
|
40040
|
+
..._optionalChain([options, 'optionalAccess', _1000 => _1000.hidden]) ? { hidden: true } : {}
|
|
40075
40041
|
};
|
|
40076
40042
|
addMessage(userMessage);
|
|
40077
40043
|
setIsTyping(true);
|
|
@@ -40133,7 +40099,7 @@ function useChat({
|
|
|
40133
40099
|
currentTextSegment = "";
|
|
40134
40100
|
}
|
|
40135
40101
|
const seg = segment;
|
|
40136
|
-
const proposalId = _optionalChain([seg, 'access',
|
|
40102
|
+
const proposalId = _optionalChain([seg, 'access', _1001 => _1001.data, 'optionalAccess', _1002 => _1002.requestId]);
|
|
40137
40103
|
const updateApprovalMessage = (transform) => {
|
|
40138
40104
|
setMessages((prev) => {
|
|
40139
40105
|
for (let i = prev.length - 1; i >= 0; i--) {
|
|
@@ -40142,7 +40108,7 @@ function useChat({
|
|
|
40142
40108
|
if (!Array.isArray(m.content)) continue;
|
|
40143
40109
|
const segments = m.content;
|
|
40144
40110
|
const hasMatch = segments.some(
|
|
40145
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
40111
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1003 => _1003.data, 'optionalAccess', _1004 => _1004.requestId]) === proposalId
|
|
40146
40112
|
);
|
|
40147
40113
|
if (!hasMatch) continue;
|
|
40148
40114
|
const next = [...prev];
|
|
@@ -40184,11 +40150,11 @@ function useChat({
|
|
|
40184
40150
|
if (!Array.isArray(m.content)) continue;
|
|
40185
40151
|
const segments = m.content;
|
|
40186
40152
|
const hasMatch = segments.some(
|
|
40187
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
40153
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1005 => _1005.data, 'optionalAccess', _1006 => _1006.requestId]) === decision.proposalId
|
|
40188
40154
|
);
|
|
40189
40155
|
if (!hasMatch) continue;
|
|
40190
40156
|
const flipped = segments.map(
|
|
40191
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
40157
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1007 => _1007.data, 'optionalAccess', _1008 => _1008.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
|
|
40192
40158
|
);
|
|
40193
40159
|
const next = [...prev];
|
|
40194
40160
|
next[i] = { ...m, content: flipped };
|
|
@@ -40350,8 +40316,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
40350
40316
|
})),
|
|
40351
40317
|
{ role: "user", content: message2 }
|
|
40352
40318
|
];
|
|
40353
|
-
const targetPath = _optionalChain([extra, 'optionalAccess',
|
|
40354
|
-
const requestBody = _optionalChain([extra, 'optionalAccess',
|
|
40319
|
+
const targetPath = _optionalChain([extra, 'optionalAccess', _1009 => _1009.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
|
|
40320
|
+
const requestBody = _optionalChain([extra, 'optionalAccess', _1010 => _1010.approvalAction]) ? {
|
|
40355
40321
|
proposal_id: extra.approvalAction.proposalId,
|
|
40356
40322
|
action: extra.approvalAction.action,
|
|
40357
40323
|
messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
|
|
@@ -40360,8 +40326,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
40360
40326
|
}))
|
|
40361
40327
|
} : {
|
|
40362
40328
|
messages: apiMessages,
|
|
40363
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
40364
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
40329
|
+
..._optionalChain([extra, 'optionalAccess', _1011 => _1011.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
|
|
40330
|
+
..._optionalChain([extra, 'optionalAccess', _1012 => _1012.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
|
|
40365
40331
|
};
|
|
40366
40332
|
const response = await embedAuthedFetch(targetPath, {
|
|
40367
40333
|
method: "POST",
|
|
@@ -40371,7 +40337,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
40371
40337
|
if (!response.ok) {
|
|
40372
40338
|
throw new Error(`Chat request failed: ${response.status}`);
|
|
40373
40339
|
}
|
|
40374
|
-
const reader = _optionalChain([response, 'access',
|
|
40340
|
+
const reader = _optionalChain([response, 'access', _1013 => _1013.body, 'optionalAccess', _1014 => _1014.getReader, 'call', _1015 => _1015()]);
|
|
40375
40341
|
if (!reader) throw new Error("No response body");
|
|
40376
40342
|
const decoder = new TextDecoder();
|
|
40377
40343
|
let buffer = "";
|
|
@@ -40454,7 +40420,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
40454
40420
|
const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
|
|
40455
40421
|
const result = _nullishCoalesce(meta.result, () => ( null));
|
|
40456
40422
|
const card = _nullishCoalesce(meta.card, () => ( null));
|
|
40457
|
-
if (_optionalChain([card, 'optionalAccess',
|
|
40423
|
+
if (_optionalChain([card, 'optionalAccess', _1016 => _1016.ref, 'optionalAccess', _1017 => _1017.id]) && _optionalChain([card, 'optionalAccess', _1018 => _1018.type])) {
|
|
40458
40424
|
const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
|
|
40459
40425
|
const key = buildChatRefKey(card.type, card.ref.id);
|
|
40460
40426
|
refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
|
|
@@ -40467,8 +40433,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
40467
40433
|
willAutoContinue: meta.willAutoContinue === true,
|
|
40468
40434
|
...toolName ? { toolName } : {},
|
|
40469
40435
|
...result ? { result } : {},
|
|
40470
|
-
..._optionalChain([card, 'optionalAccess',
|
|
40471
|
-
..._optionalChain([card, 'optionalAccess',
|
|
40436
|
+
..._optionalChain([card, 'optionalAccess', _1019 => _1019.marker]) ? { marker: card.marker } : {},
|
|
40437
|
+
..._optionalChain([card, 'optionalAccess', _1020 => _1020.ref]) ? { cardRef: card.ref } : {},
|
|
40472
40438
|
...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
|
|
40473
40439
|
proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
|
|
40474
40440
|
};
|
|
@@ -40587,7 +40553,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
|
|
|
40587
40553
|
var chatStorageKey = (source) => {
|
|
40588
40554
|
const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
|
|
40589
40555
|
const auth = getEmbedProxyAuth();
|
|
40590
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
40556
|
+
if (_optionalChain([auth, 'optionalAccess', _1021 => _1021.email])) {
|
|
40591
40557
|
return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
|
|
40592
40558
|
}
|
|
40593
40559
|
return base;
|
|
@@ -40642,7 +40608,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
40642
40608
|
const { active = true } = runtimeOptions;
|
|
40643
40609
|
const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
|
|
40644
40610
|
const source = runtime.source || DEFAULT_CHAT_SOURCE;
|
|
40645
|
-
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40611
|
+
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1022 => _1022.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
|
|
40646
40612
|
const persistedRef = _react.useRef.call(void 0, null);
|
|
40647
40613
|
if (persistedRef.current === null) {
|
|
40648
40614
|
pruneStaleChatStorage(source);
|
|
@@ -40747,7 +40713,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
40747
40713
|
const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
|
|
40748
40714
|
sources = sourcesMapRef.current.get(lookupIdx);
|
|
40749
40715
|
chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
|
|
40750
|
-
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access',
|
|
40716
|
+
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1023 => _1023.current, 'access', _1024 => _1024.get, 'call', _1025 => _1025(lookupIdx), 'optionalAccess', _1026 => _1026.scrollAnchor]), () => ( void 0));
|
|
40751
40717
|
}
|
|
40752
40718
|
return {
|
|
40753
40719
|
id: m.id,
|
|
@@ -40795,7 +40761,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
40795
40761
|
);
|
|
40796
40762
|
return;
|
|
40797
40763
|
}
|
|
40798
|
-
const refSlug = typeof _optionalChain([reference, 'access',
|
|
40764
|
+
const refSlug = typeof _optionalChain([reference, 'access', _1027 => _1027.metadata, 'optionalAccess', _1028 => _1028.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
|
|
40799
40765
|
const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
|
|
40800
40766
|
const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
40801
40767
|
const text = `/${cmdId} display "${escaped}"`;
|
|
@@ -40867,18 +40833,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
40867
40833
|
clearMessages,
|
|
40868
40834
|
streamingPhase,
|
|
40869
40835
|
/** Provider key for the lib's `<ModelDisplay>` icon. */
|
|
40870
|
-
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
40871
|
-
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
40872
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
40836
|
+
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1029 => _1029.provider]), () => ( null)),
|
|
40837
|
+
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1030 => _1030.modelLabel]), () => ( null)),
|
|
40838
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1031 => _1031.contextWindowMaxTokens]), () => ( null)),
|
|
40873
40839
|
/** Input tokens (known after server's message_start frame; null until). */
|
|
40874
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
40840
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1032 => _1032.inputTokens]), () => ( null)),
|
|
40875
40841
|
/** Output tokens (known only after server's trailing usage frame). */
|
|
40876
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
40842
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1033 => _1033.outputTokens]), () => ( null)),
|
|
40877
40843
|
/** Cache hit % (read / total-input × 100). null during streaming. */
|
|
40878
|
-
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
40844
|
+
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1034 => _1034.cacheHitRatePct]), () => ( null)),
|
|
40879
40845
|
/** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
|
|
40880
40846
|
* token counts). null until the trailing usage frame lands. */
|
|
40881
|
-
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
40847
|
+
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1035 => _1035.breakdown]), () => ( null)),
|
|
40882
40848
|
// ─── Dialog management — stubs for v1 ────────────────────────────────
|
|
40883
40849
|
// Guide mode currently keeps its history in `localStorage` opaquely
|
|
40884
40850
|
// under the hood (`runtime.source` namespaced key). Surfacing that
|
|
@@ -40936,15 +40902,15 @@ var noopRejectRequest = async (_id, _reason) => {
|
|
|
40936
40902
|
|
|
40937
40903
|
// src/components/chat/utils/process-historical-messages.ts
|
|
40938
40904
|
function getOwnerDisplayName(owner) {
|
|
40939
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
40905
|
+
if (_optionalChain([owner, 'optionalAccess', _1036 => _1036.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
40940
40906
|
const { firstName, lastName } = owner.user;
|
|
40941
40907
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
40942
40908
|
if (name) return name;
|
|
40943
40909
|
}
|
|
40944
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
40910
|
+
return _optionalChain([owner, 'optionalAccess', _1037 => _1037.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
40945
40911
|
}
|
|
40946
40912
|
function getOwnerAvatar(owner) {
|
|
40947
|
-
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess',
|
|
40913
|
+
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1038 => _1038.user, 'optionalAccess', _1039 => _1039.image, 'optionalAccess', _1040 => _1040.imageUrl]), () => ( void 0));
|
|
40948
40914
|
}
|
|
40949
40915
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
40950
40916
|
messageDataArray.forEach((data) => {
|
|
@@ -41007,10 +40973,10 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
41007
40973
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
41008
40974
|
return;
|
|
41009
40975
|
}
|
|
41010
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
40976
|
+
const isUserMessage = _optionalChain([msg, 'access', _1041 => _1041.owner, 'optionalAccess', _1042 => _1042.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1043 => _1043.owner, 'optionalAccess', _1044 => _1044.type]) === OWNER_TYPE.ADMIN;
|
|
41011
40977
|
if (isUserMessage) {
|
|
41012
40978
|
flushAssistantMessage();
|
|
41013
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
40979
|
+
const userAuthorType = _optionalChain([msg, 'access', _1045 => _1045.owner, 'optionalAccess', _1046 => _1046.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
41014
40980
|
messageDataArray.forEach((data) => {
|
|
41015
40981
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
41016
40982
|
processedMessages.push({
|
|
@@ -41035,7 +41001,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
41035
41001
|
});
|
|
41036
41002
|
const nextMsg = messages[index + 1];
|
|
41037
41003
|
const isLastMessage = index === messages.length - 1;
|
|
41038
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
41004
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1047 => _1047.owner, 'optionalAccess', _1048 => _1048.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1049 => _1049.owner, 'optionalAccess', _1050 => _1050.type]) === OWNER_TYPE.ADMIN);
|
|
41039
41005
|
if (isLastMessage || nextIsFromUser) {
|
|
41040
41006
|
flushAssistantMessage();
|
|
41041
41007
|
}
|
|
@@ -41145,7 +41111,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
41145
41111
|
}
|
|
41146
41112
|
}
|
|
41147
41113
|
} else {
|
|
41148
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
41114
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1051 => _1051.set, 'call', _1052 => _1052(data.approvalRequestId, {
|
|
41149
41115
|
command: data.command || "",
|
|
41150
41116
|
explanation: data.explanation,
|
|
41151
41117
|
approvalType,
|
|
@@ -41158,8 +41124,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
41158
41124
|
if ("approvalRequestId" in data && data.approvalRequestId) {
|
|
41159
41125
|
const existingStatus = approvalStatuses[data.approvalRequestId];
|
|
41160
41126
|
const status = existingStatus || (data.approved ? "approved" : "rejected");
|
|
41161
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
41162
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
41127
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1053 => _1053.get, 'call', _1054 => _1054(data.approvalRequestId)]);
|
|
41128
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _1055 => _1055.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
41163
41129
|
if (batchApprovalsEnabled) {
|
|
41164
41130
|
accumulator.addApprovalBatch(
|
|
41165
41131
|
data.approvalRequestId,
|
|
@@ -41179,7 +41145,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
41179
41145
|
);
|
|
41180
41146
|
}
|
|
41181
41147
|
}
|
|
41182
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
41148
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1056 => _1056.delete, 'call', _1057 => _1057(data.approvalRequestId)]);
|
|
41183
41149
|
break;
|
|
41184
41150
|
}
|
|
41185
41151
|
if (escalatedData) {
|
|
@@ -41188,7 +41154,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
41188
41154
|
explanation: escalatedData.explanation,
|
|
41189
41155
|
approvalType: escalatedData.approvalType
|
|
41190
41156
|
});
|
|
41191
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
41157
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1058 => _1058.delete, 'call', _1059 => _1059(data.approvalRequestId)]);
|
|
41192
41158
|
}
|
|
41193
41159
|
const before = accumulator.getSegments();
|
|
41194
41160
|
const after = accumulator.updateApprovalStatus(data.approvalRequestId, status);
|
|
@@ -41204,9 +41170,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
41204
41170
|
case MESSAGE_TYPE.ERROR:
|
|
41205
41171
|
if ("error" in data) {
|
|
41206
41172
|
let message2;
|
|
41207
|
-
if ("details" in data && _optionalChain([data, 'optionalAccess',
|
|
41173
|
+
if ("details" in data && _optionalChain([data, 'optionalAccess', _1060 => _1060.details])) {
|
|
41208
41174
|
try {
|
|
41209
|
-
message2 = _optionalChain([JSON, 'access',
|
|
41175
|
+
message2 = _optionalChain([JSON, 'access', _1061 => _1061.parse, 'call', _1062 => _1062(data.details), 'optionalAccess', _1063 => _1063.error, 'optionalAccess', _1064 => _1064.message]);
|
|
41210
41176
|
} catch (e50) {
|
|
41211
41177
|
message2 = data.details;
|
|
41212
41178
|
}
|
|
@@ -41289,10 +41255,10 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
41289
41255
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
41290
41256
|
return;
|
|
41291
41257
|
}
|
|
41292
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
41258
|
+
const isUserMessage = _optionalChain([msg, 'access', _1065 => _1065.owner, 'optionalAccess', _1066 => _1066.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1067 => _1067.owner, 'optionalAccess', _1068 => _1068.type]) === OWNER_TYPE.ADMIN;
|
|
41293
41259
|
if (isUserMessage) {
|
|
41294
41260
|
flushAssistantMessage();
|
|
41295
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
41261
|
+
const userAuthorType = _optionalChain([msg, 'access', _1069 => _1069.owner, 'optionalAccess', _1070 => _1070.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
41296
41262
|
messageDataArray.forEach((data) => {
|
|
41297
41263
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
41298
41264
|
processedMessages.push({
|
|
@@ -41317,7 +41283,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
41317
41283
|
});
|
|
41318
41284
|
const nextMsg = messages[index + 1];
|
|
41319
41285
|
const isLastMessage = index === messages.length - 1;
|
|
41320
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
41286
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1071 => _1071.owner, 'optionalAccess', _1072 => _1072.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1073 => _1073.owner, 'optionalAccess', _1074 => _1074.type]) === OWNER_TYPE.ADMIN);
|
|
41321
41287
|
if (isLastMessage || nextIsFromUser) {
|
|
41322
41288
|
flushAssistantMessage();
|
|
41323
41289
|
}
|
|
@@ -41655,7 +41621,7 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
41655
41621
|
}, [active, fetchDialogs, loadDialogsPage]);
|
|
41656
41622
|
const sendMessage = _react.useCallback.call(void 0,
|
|
41657
41623
|
async (text, sendOptions) => {
|
|
41658
|
-
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess',
|
|
41624
|
+
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1075 => _1075.hidden]), () => ( false));
|
|
41659
41625
|
setMessages((prev) => [
|
|
41660
41626
|
...prev,
|
|
41661
41627
|
{
|
|
@@ -41819,11 +41785,11 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
41819
41785
|
// Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
|
|
41820
41786
|
// contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
|
|
41821
41787
|
// matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
|
|
41822
|
-
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
41823
|
-
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
41824
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
41825
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
41826
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
41788
|
+
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1076 => _1076.provider]), () => ( modelProvider)), () => ( null)),
|
|
41789
|
+
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1077 => _1077.modelLabel]), () => ( modelLabel)), () => ( null)),
|
|
41790
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1078 => _1078.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1079 => _1079.contextWindowMaxTokens]))), () => ( null)),
|
|
41791
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1080 => _1080.inputTokensSize]), () => ( null)),
|
|
41792
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1081 => _1081.outputTokensSize]), () => ( null)),
|
|
41827
41793
|
currentCacheHitRatePct: null,
|
|
41828
41794
|
currentUsageBreakdown: null,
|
|
41829
41795
|
// Dialog management
|
|
@@ -42071,7 +42037,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
42071
42037
|
break;
|
|
42072
42038
|
case "approval_batch": {
|
|
42073
42039
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
42074
|
-
(c) => _optionalChain([segment, 'access',
|
|
42040
|
+
(c) => _optionalChain([segment, 'access', _1082 => _1082.data, 'access', _1083 => _1083.executions, 'optionalAccess', _1084 => _1084[c.toolExecutionRequestId], 'optionalAccess', _1085 => _1085.status]) === "done"
|
|
42075
42041
|
);
|
|
42076
42042
|
if (segment.status !== "rejected" && !allDone) {
|
|
42077
42043
|
hasIncompleteState = true;
|
|
@@ -42095,6 +42061,110 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
42095
42061
|
};
|
|
42096
42062
|
}
|
|
42097
42063
|
|
|
42064
|
+
// src/components/chat/utils/history-merge.ts
|
|
42065
|
+
var SYNTHETIC_REALTIME_ID_PREFIXES = ["assistant-", "user-", "error-"];
|
|
42066
|
+
function isSyntheticRealtimeId(id) {
|
|
42067
|
+
return SYNTHETIC_REALTIME_ID_PREFIXES.some((prefix) => id.startsWith(prefix));
|
|
42068
|
+
}
|
|
42069
|
+
function flattenMessagePagesChronological(pages) {
|
|
42070
|
+
if (!pages) return [];
|
|
42071
|
+
return [...pages].reverse().flatMap((page) => [...page.messages].reverse());
|
|
42072
|
+
}
|
|
42073
|
+
function maxPersistedStreamSeq(pages) {
|
|
42074
|
+
let max = 0;
|
|
42075
|
+
if (!pages) return max;
|
|
42076
|
+
for (const page of pages) {
|
|
42077
|
+
for (const msg of page.messages) {
|
|
42078
|
+
const seq = msg.lastChunkStreamSeq;
|
|
42079
|
+
if (typeof seq === "number" && seq > max) max = seq;
|
|
42080
|
+
}
|
|
42081
|
+
}
|
|
42082
|
+
return max;
|
|
42083
|
+
}
|
|
42084
|
+
function mergeHistoryWithRealtime(input) {
|
|
42085
|
+
const {
|
|
42086
|
+
processedHistory,
|
|
42087
|
+
rawHistoryIds,
|
|
42088
|
+
existingMessages,
|
|
42089
|
+
streamingMessageId,
|
|
42090
|
+
historyFetchedAt,
|
|
42091
|
+
historyMaxStreamSeq = 0,
|
|
42092
|
+
realtimeSeenStreamSeq = 0
|
|
42093
|
+
} = input;
|
|
42094
|
+
if (processedHistory.length === 0) return existingMessages;
|
|
42095
|
+
const processedIds = new Set(processedHistory.map((m) => m.id));
|
|
42096
|
+
const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
|
|
42097
|
+
const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
|
|
42098
|
+
const trailing = processedHistory[processedHistory.length - 1];
|
|
42099
|
+
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1086 => _1086.role]) === "assistant" ? trailing : null;
|
|
42100
|
+
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1087 => _1087.content, 'access', _1088 => _1088.find, 'call', _1089 => _1089((s) => s.type === "approval_batch"), 'optionalAccess', _1090 => _1090.data, 'optionalAccess', _1091 => _1091.approvalRequestId]), () => ( null)) : null;
|
|
42101
|
+
let processedToUse = processedHistory;
|
|
42102
|
+
const pinnedSyntheticIds = /* @__PURE__ */ new Set();
|
|
42103
|
+
const droppedSyntheticIds = /* @__PURE__ */ new Set();
|
|
42104
|
+
if (historyBatchId) {
|
|
42105
|
+
const batchTwins = existingMessages.filter(
|
|
42106
|
+
(m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
|
|
42107
|
+
(s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1092 => _1092.data, 'optionalAccess', _1093 => _1093.approvalRequestId]) === historyBatchId
|
|
42108
|
+
)
|
|
42109
|
+
);
|
|
42110
|
+
const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
|
|
42111
|
+
if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
|
|
42112
|
+
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1094 => _1094.content])) ? historyTrailingAssistant.content.length : 0;
|
|
42113
|
+
const realtimeSize = existingWithSameBatch.content.length;
|
|
42114
|
+
if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
|
|
42115
|
+
processedToUse = processedHistory.slice(0, -1);
|
|
42116
|
+
pinnedSyntheticIds.add(existingWithSameBatch.id);
|
|
42117
|
+
} else {
|
|
42118
|
+
droppedSyntheticIds.add(existingWithSameBatch.id);
|
|
42119
|
+
}
|
|
42120
|
+
}
|
|
42121
|
+
}
|
|
42122
|
+
const realtimeMessages = existingMessages.filter((m) => {
|
|
42123
|
+
if (pinnedSyntheticIds.has(m.id)) return true;
|
|
42124
|
+
if (droppedSyntheticIds.has(m.id)) return false;
|
|
42125
|
+
if (processedIds.has(m.id)) return false;
|
|
42126
|
+
if (_optionalChain([rawHistoryIds, 'optionalAccess', _1095 => _1095.has, 'call', _1096 => _1096(m.id)])) return false;
|
|
42127
|
+
if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
|
|
42128
|
+
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1097 => _1097.timestamp, 'optionalAccess', _1098 => _1098.getTime, 'call', _1099 => _1099()]), () => ( 0))) <= historyFetchedAt;
|
|
42129
|
+
return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
|
|
42130
|
+
}
|
|
42131
|
+
if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
|
|
42132
|
+
const covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1100 => _1100.timestamp, 'optionalAccess', _1101 => _1101.getTime, 'call', _1102 => _1102()]), () => ( 0))) <= historyFetchedAt;
|
|
42133
|
+
if (covered) return false;
|
|
42134
|
+
}
|
|
42135
|
+
return true;
|
|
42136
|
+
});
|
|
42137
|
+
return [...processedToUse, ...realtimeMessages];
|
|
42138
|
+
}
|
|
42139
|
+
function computeHistoryPrepend(processedHistory, existingMessages) {
|
|
42140
|
+
const existingIds = new Set(existingMessages.map((m) => m.id));
|
|
42141
|
+
const newMessages = [];
|
|
42142
|
+
let boundaryMessageIndex = -1;
|
|
42143
|
+
for (let i = 0; i < processedHistory.length; i++) {
|
|
42144
|
+
if (existingIds.has(processedHistory[i].id)) {
|
|
42145
|
+
boundaryMessageIndex = i;
|
|
42146
|
+
break;
|
|
42147
|
+
}
|
|
42148
|
+
newMessages.push(processedHistory[i]);
|
|
42149
|
+
}
|
|
42150
|
+
let boundaryMessageId;
|
|
42151
|
+
let boundaryUpdates;
|
|
42152
|
+
if (boundaryMessageIndex >= 0) {
|
|
42153
|
+
const boundaryMessage = processedHistory[boundaryMessageIndex];
|
|
42154
|
+
const existingBoundary = existingMessages.find((m) => m.id === boundaryMessage.id);
|
|
42155
|
+
if (existingBoundary) {
|
|
42156
|
+
const existingContent = JSON.stringify(existingBoundary.content);
|
|
42157
|
+
const newContent = JSON.stringify(boundaryMessage.content);
|
|
42158
|
+
if (existingContent !== newContent) {
|
|
42159
|
+
boundaryMessageId = boundaryMessage.id;
|
|
42160
|
+
boundaryUpdates = { content: boundaryMessage.content };
|
|
42161
|
+
}
|
|
42162
|
+
}
|
|
42163
|
+
}
|
|
42164
|
+
if (newMessages.length === 0 && !boundaryUpdates) return null;
|
|
42165
|
+
return { newMessages, boundaryMessageId, boundaryUpdates };
|
|
42166
|
+
}
|
|
42167
|
+
|
|
42098
42168
|
// src/components/chat/utils/chip-action-class.ts
|
|
42099
42169
|
var CHIP_ACTION_BUTTON_CLASS = "text-[11px] font-medium text-ods-text-secondary hover:text-ods-text-primary bg-transparent hover:bg-ods-card-hover border border-ods-border rounded-md px-2 py-1 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus";
|
|
42100
42170
|
|
|
@@ -42279,7 +42349,7 @@ function useChatDialogManager({
|
|
|
42279
42349
|
const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
|
|
42280
42350
|
if (restoreTarget) {
|
|
42281
42351
|
try {
|
|
42282
|
-
await _optionalChain([unarchiveDialog, 'optionalCall',
|
|
42352
|
+
await _optionalChain([unarchiveDialog, 'optionalCall', _1103 => _1103(restoreTarget.id)]);
|
|
42283
42353
|
} catch (err) {
|
|
42284
42354
|
console.error("[useChatDialogManager] unarchive failed:", err);
|
|
42285
42355
|
return;
|
|
@@ -42678,7 +42748,7 @@ function EmbeddableChatInner({
|
|
|
42678
42748
|
}),
|
|
42679
42749
|
[commandsUrl]
|
|
42680
42750
|
);
|
|
42681
|
-
const userName = _optionalChain([identityUser, 'optionalAccess',
|
|
42751
|
+
const userName = _optionalChain([identityUser, 'optionalAccess', _1104 => _1104.firstName, 'optionalAccess', _1105 => _1105.trim, 'call', _1106 => _1106()]) || _optionalChain([identityUser, 'optionalAccess', _1107 => _1107.name, 'optionalAccess', _1108 => _1108.split, 'call', _1109 => _1109(" "), 'access', _1110 => _1110[0], 'optionalAccess', _1111 => _1111.trim, 'call', _1112 => _1112()]) || void 0;
|
|
42682
42752
|
const effectiveModes = _react.useMemo.call(void 0, () => {
|
|
42683
42753
|
if (modes) return modes;
|
|
42684
42754
|
const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
|
|
@@ -42687,17 +42757,17 @@ function EmbeddableChatInner({
|
|
|
42687
42757
|
const mingoCaps = _react.useMemo.call(void 0, () => {
|
|
42688
42758
|
if (mingoState) {
|
|
42689
42759
|
return {
|
|
42690
|
-
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
42691
|
-
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
42692
|
-
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
42693
|
-
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
42760
|
+
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1113 => _1113.canRename]), () => ( false)),
|
|
42761
|
+
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1114 => _1114.canArchive]), () => ( false)),
|
|
42762
|
+
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1115 => _1115.fetchArchivedDialogs]),
|
|
42763
|
+
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1116 => _1116.unarchiveDialog])
|
|
42694
42764
|
};
|
|
42695
42765
|
}
|
|
42696
42766
|
return {
|
|
42697
|
-
canRename: !!_optionalChain([effectiveModes, 'access',
|
|
42698
|
-
canArchive: !!_optionalChain([effectiveModes, 'access',
|
|
42699
|
-
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access',
|
|
42700
|
-
unarchiveDialog: _optionalChain([effectiveModes, 'access',
|
|
42767
|
+
canRename: !!_optionalChain([effectiveModes, 'access', _1117 => _1117.mingo, 'optionalAccess', _1118 => _1118.renameDialog]),
|
|
42768
|
+
canArchive: !!_optionalChain([effectiveModes, 'access', _1119 => _1119.mingo, 'optionalAccess', _1120 => _1120.archiveDialog]),
|
|
42769
|
+
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1121 => _1121.mingo, 'optionalAccess', _1122 => _1122.fetchArchivedDialogs]),
|
|
42770
|
+
unarchiveDialog: _optionalChain([effectiveModes, 'access', _1123 => _1123.mingo, 'optionalAccess', _1124 => _1124.unarchiveDialog])
|
|
42701
42771
|
};
|
|
42702
42772
|
}, [mingoState, mingoDialogCapabilities, effectiveModes]);
|
|
42703
42773
|
const hasMingoMode = !!effectiveModes.mingo || !!mingoState;
|
|
@@ -42709,7 +42779,7 @@ function EmbeddableChatInner({
|
|
|
42709
42779
|
if (controlledActiveMode === void 0) {
|
|
42710
42780
|
setUncontrolledActiveMode(next);
|
|
42711
42781
|
}
|
|
42712
|
-
_optionalChain([onActiveModeChange, 'optionalCall',
|
|
42782
|
+
_optionalChain([onActiveModeChange, 'optionalCall', _1125 => _1125(next)]);
|
|
42713
42783
|
},
|
|
42714
42784
|
[controlledActiveMode, onActiveModeChange]
|
|
42715
42785
|
);
|
|
@@ -42916,9 +42986,9 @@ function EmbeddableChatInner({
|
|
|
42916
42986
|
const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
|
|
42917
42987
|
const lastSources = _react.useMemo.call(void 0, () => {
|
|
42918
42988
|
if (chatLoading) return void 0;
|
|
42919
|
-
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
42989
|
+
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1126 => _1126.sources]);
|
|
42920
42990
|
if (!sources || sources.length === 0) return void 0;
|
|
42921
|
-
const content = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
42991
|
+
const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1127 => _1127.content]) || "";
|
|
42922
42992
|
const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
|
|
42923
42993
|
(m) => parseInt(m[1], 10)
|
|
42924
42994
|
);
|
|
@@ -42965,7 +43035,7 @@ function EmbeddableChatInner({
|
|
|
42965
43035
|
ChatPanelHeader,
|
|
42966
43036
|
{
|
|
42967
43037
|
showBack: hasConversation || guideCanReturnToMingo,
|
|
42968
|
-
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
43038
|
+
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1128 => _1128.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
|
|
42969
43039
|
backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
|
|
42970
43040
|
isArchivedView: isViewingArchived,
|
|
42971
43041
|
onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
|
|
@@ -43070,10 +43140,10 @@ function EmbeddableChatInner({
|
|
|
43070
43140
|
subtitle: _nullishCoalesce(emptyStateGreeting, () => ( void 0)),
|
|
43071
43141
|
...guideWelcome,
|
|
43072
43142
|
onQuickAction: (action) => {
|
|
43073
|
-
_optionalChain([chatInputRef, 'access',
|
|
43143
|
+
_optionalChain([chatInputRef, 'access', _1129 => _1129.current, 'optionalAccess', _1130 => _1130.setValue, 'call', _1131 => _1131(
|
|
43074
43144
|
_nullishCoalesce(action.prompt, () => ( action.label))
|
|
43075
43145
|
)]);
|
|
43076
|
-
_optionalChain([chatInputRef, 'access',
|
|
43146
|
+
_optionalChain([chatInputRef, 'access', _1132 => _1132.current, 'optionalAccess', _1133 => _1133.focus, 'call', _1134 => _1134()]);
|
|
43077
43147
|
},
|
|
43078
43148
|
children: (chipCommands.length > 0 || !commandsLoaded) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-md border border-ods-border", children: [
|
|
43079
43149
|
!commandsLoaded && chipCommands.length === 0 && SKELETON_ROW_VARIANTS.map((variant, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -44025,7 +44095,5 @@ function EmbeddableChatInner({
|
|
|
44025
44095
|
|
|
44026
44096
|
|
|
44027
44097
|
|
|
44028
|
-
|
|
44029
|
-
|
|
44030
|
-
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.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; 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.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.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; 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.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.SquareAvatar = SquareAvatar; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.HEX_PATTERN = HEX_PATTERN; 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.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.BlockCard = BlockCard; 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.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; 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.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.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; 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.getAppType = getAppType; exports.getEmbedProxyAuth = getEmbedProxyAuth; exports.getPersistedProxyEmail = getPersistedProxyEmail; exports.setEmbedProxyAuth = setEmbedProxyAuth; exports.clearEmbedProxyAuth = clearEmbedProxyAuth; exports.applyProxyAuth = applyProxyAuth; exports.setEmbedAuthAdapter = setEmbedAuthAdapter; exports.embedAuthedFetch = embedAuthedFetch; 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.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.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.BackButton = BackButton; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.PageHeading = PageHeading; exports.EntityImage = EntityImage; 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.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; 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.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.hexToRgb = hexToRgb2; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; 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.scrollElementIntoView = scrollElementIntoView; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; 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.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.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.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.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; 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.HeaderButton = HeaderButton; 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.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;
|
|
44031
|
-
//# sourceMappingURL=chunk-CZITXP77.cjs.map
|
|
44098
|
+
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.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; 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.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.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; 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.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.SquareAvatar = SquareAvatar; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.HEX_PATTERN = HEX_PATTERN; 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.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.BlockCard = BlockCard; 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.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; 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.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.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; 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.getAppType = getAppType; exports.getEmbedProxyAuth = getEmbedProxyAuth; exports.getPersistedProxyEmail = getPersistedProxyEmail; exports.setEmbedProxyAuth = setEmbedProxyAuth; exports.clearEmbedProxyAuth = clearEmbedProxyAuth; exports.applyProxyAuth = applyProxyAuth; exports.setEmbedAuthAdapter = setEmbedAuthAdapter; exports.embedAuthedFetch = embedAuthedFetch; 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.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.BackButton = BackButton; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.PageHeading = PageHeading; exports.EntityImage = EntityImage; 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.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; 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.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.hexToRgb = hexToRgb2; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; 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.scrollElementIntoView = scrollElementIntoView; exports.buildListUrl = buildListUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; 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.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.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.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.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; 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.HeaderButton = HeaderButton; 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.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;
|
|
44099
|
+
//# sourceMappingURL=chunk-EPXROXYC.cjs.map
|