@flamingo-stack/openframe-frontend-core 0.0.537 → 0.0.538-1791.4733.1
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/chat-protocol/events.d.ts +15 -1
- package/dist/chat-protocol/events.d.ts.map +1 -1
- package/dist/chat-protocol/index.cjs +15 -0
- package/dist/chat-protocol/index.cjs.map +1 -1
- package/dist/chat-protocol/index.js +15 -0
- package/dist/chat-protocol/index.js.map +1 -1
- package/dist/chat-protocol/nats-decoder.d.ts.map +1 -1
- package/dist/{chunk-7FXZHI5D.js → chunk-4BK5Z763.js} +2 -2
- package/dist/{chunk-C4LEH3VE.js → chunk-56QT3JBZ.js} +2 -2
- package/dist/{chunk-LFMIAPBP.js → chunk-67CKAX7Z.js} +2 -2
- package/dist/{chunk-CZHCXCWL.js → chunk-73W4L656.js} +2 -2
- package/dist/{chunk-TCSSYTDN.js → chunk-7CBQWZAH.js} +4 -4
- package/dist/{chunk-YIDGB5KP.js → chunk-BNF6FZLP.js} +4 -4
- package/dist/{chunk-CATY4DVR.cjs → chunk-BUKQ6B65.cjs} +87 -87
- package/dist/{chunk-CATY4DVR.cjs.map → chunk-BUKQ6B65.cjs.map} +1 -1
- package/dist/{chunk-KKZ2QMQD.cjs → chunk-C6776X43.cjs} +26 -26
- package/dist/{chunk-KKZ2QMQD.cjs.map → chunk-C6776X43.cjs.map} +1 -1
- package/dist/{chunk-MOIHWYSA.js → chunk-C6NKOHFW.js} +2 -2
- package/dist/{chunk-HRC56BQW.js → chunk-EH6LNTOT.js} +5 -5
- package/dist/{chunk-YPI3JIR6.cjs → chunk-F4QOOHZL.cjs} +11 -11
- package/dist/{chunk-YPI3JIR6.cjs.map → chunk-F4QOOHZL.cjs.map} +1 -1
- package/dist/{chunk-3GXMS4OP.js → chunk-KUKHUECE.js} +2 -2
- package/dist/{chunk-DHSVBGOX.cjs → chunk-LJW7B6GY.cjs} +9 -9
- package/dist/{chunk-DHSVBGOX.cjs.map → chunk-LJW7B6GY.cjs.map} +1 -1
- package/dist/{chunk-WJIBB3KT.cjs → chunk-MGYNZ7SA.cjs} +31 -31
- package/dist/{chunk-WJIBB3KT.cjs.map → chunk-MGYNZ7SA.cjs.map} +1 -1
- package/dist/{chunk-OYTM3YXO.cjs → chunk-NE67LT3B.cjs} +7 -7
- package/dist/{chunk-OYTM3YXO.cjs.map → chunk-NE67LT3B.cjs.map} +1 -1
- package/dist/{chunk-SKIM263K.cjs → chunk-NUHDE7CB.cjs} +37 -37
- package/dist/{chunk-SKIM263K.cjs.map → chunk-NUHDE7CB.cjs.map} +1 -1
- package/dist/{chunk-MDP3YKFI.cjs → chunk-PFGRHRBO.cjs} +5 -5
- package/dist/{chunk-MDP3YKFI.cjs.map → chunk-PFGRHRBO.cjs.map} +1 -1
- package/dist/{chunk-SGNWSUL3.js → chunk-QK4SQAYG.js} +6 -6
- package/dist/{chunk-YMPRMZDD.cjs → chunk-QQ3HUSDJ.cjs} +599 -328
- package/dist/chunk-QQ3HUSDJ.cjs.map +1 -0
- package/dist/{chunk-QPPG3KHW.cjs → chunk-QU6P2U2Q.cjs} +3 -3
- package/dist/{chunk-QPPG3KHW.cjs.map → chunk-QU6P2U2Q.cjs.map} +1 -1
- package/dist/{chunk-V4D5MPB7.cjs → chunk-R3XO2KO4.cjs} +4 -4
- package/dist/{chunk-V4D5MPB7.cjs.map → chunk-R3XO2KO4.cjs.map} +1 -1
- package/dist/{chunk-7EHGP4QK.js → chunk-RBBWKSRC.js} +4638 -4367
- package/dist/chunk-RBBWKSRC.js.map +1 -0
- package/dist/{chunk-VSIHO7DJ.cjs → chunk-TWVRCPWY.cjs} +61 -61
- package/dist/{chunk-VSIHO7DJ.cjs.map → chunk-TWVRCPWY.cjs.map} +1 -1
- package/dist/{chunk-CQQXB25K.js → chunk-UBEVU6LS.js} +2 -2
- package/dist/{chunk-7WNJ7RFO.cjs → chunk-YO5BWF4L.cjs} +14 -14
- package/dist/{chunk-7WNJ7RFO.cjs.map → chunk-YO5BWF4L.cjs.map} +1 -1
- package/dist/{chunk-WHUEUACV.js → chunk-ZBRKTF6S.js} +2 -2
- package/dist/{chunk-5JPSQOZQ.js → chunk-ZHW5VLHY.js} +2 -2
- package/dist/{chunk-YEKXTTAC.cjs → chunk-ZNWW4WAT.cjs} +26 -26
- package/dist/{chunk-YEKXTTAC.cjs.map → chunk-ZNWW4WAT.cjs.map} +1 -1
- package/dist/components/case-studies/index.cjs +8 -8
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/chat/ai-assistant-info.d.ts +31 -0
- package/dist/components/chat/ai-assistant-info.d.ts.map +1 -0
- package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +8 -2
- package/dist/components/chat/index.cjs.map +1 -1
- package/dist/components/chat/index.d.ts +2 -0
- package/dist/components/chat/index.d.ts.map +1 -1
- package/dist/components/chat/index.js +7 -1
- package/dist/components/chat/stream/chat-stream-reducer.d.ts.map +1 -1
- package/dist/components/chat/stream/message-mutations.d.ts.map +1 -1
- package/dist/components/chat/ticket-escalated-message.d.ts +2 -8
- package/dist/components/chat/ticket-escalated-message.d.ts.map +1 -1
- package/dist/components/chat/ticket-event-message.d.ts +24 -0
- package/dist/components/chat/ticket-event-message.d.ts.map +1 -0
- package/dist/components/chat/types/message.types.d.ts +51 -2
- package/dist/components/chat/types/message.types.d.ts.map +1 -1
- package/dist/components/chat/utils/message-segment-accumulator.d.ts +13 -1
- package/dist/components/chat/utils/message-segment-accumulator.d.ts.map +1 -1
- package/dist/components/chat/utils/process-historical-messages.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +5 -5
- package/dist/components/docs/index.js +4 -4
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/help-center-pages/index.cjs +22 -22
- package/dist/components/help-center-pages/index.js +13 -13
- package/dist/components/index.cjs +144 -132
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +23 -11
- package/dist/components/index.js.map +1 -1
- package/dist/components/meeting-scheduler/index.cjs +34 -34
- package/dist/components/meeting-scheduler/index.js +3 -3
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +6 -6
- package/dist/components/tickets/index.js +5 -5
- package/dist/components/ui/index.cjs +14 -2
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +13 -1
- package/dist/components/ui/reopen-ticket-modal.d.ts +42 -0
- package/dist/components/ui/reopen-ticket-modal.d.ts.map +1 -0
- package/dist/components/ui/take-over-ticket-modal.d.ts +5 -0
- package/dist/components/ui/take-over-ticket-modal.d.ts.map +1 -1
- package/dist/index.cjs +14 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +13 -1
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +1 -1
- package/src/chat-protocol/__tests__/__snapshots__/nats-decoder-golden.test.ts.snap +44 -0
- package/src/chat-protocol/__tests__/nats-decoder-golden.test.ts +32 -0
- package/src/chat-protocol/events.ts +16 -0
- package/src/chat-protocol/nats-decoder.ts +27 -0
- package/src/components/chat/__tests__/ticket-event.test.ts +194 -0
- package/src/components/chat/ai-assistant-info.tsx +71 -0
- package/src/components/chat/chat-message-enhanced.tsx +3 -0
- package/src/components/chat/index.ts +2 -0
- package/src/components/chat/stream/chat-stream-reducer.ts +19 -0
- package/src/components/chat/stream/message-mutations.ts +5 -0
- package/src/components/chat/ticket-escalated-message.tsx +10 -32
- package/src/components/chat/ticket-event-message.tsx +79 -0
- package/src/components/chat/types/message.types.ts +60 -1
- package/src/components/chat/utils/message-segment-accumulator.ts +41 -0
- package/src/components/chat/utils/process-historical-messages.ts +31 -0
- package/src/components/ui/index.ts +1 -0
- package/src/components/ui/reopen-ticket-modal.tsx +174 -0
- package/src/components/ui/take-over-ticket-modal.tsx +7 -4
- package/src/stories/ReopenTicketModal.stories.tsx +114 -0
- package/src/stories/TicketEventMessage.stories.tsx +100 -0
- package/dist/chunk-7EHGP4QK.js.map +0 -1
- package/dist/chunk-YMPRMZDD.cjs.map +0 -1
- /package/dist/{chunk-7FXZHI5D.js.map → chunk-4BK5Z763.js.map} +0 -0
- /package/dist/{chunk-C4LEH3VE.js.map → chunk-56QT3JBZ.js.map} +0 -0
- /package/dist/{chunk-LFMIAPBP.js.map → chunk-67CKAX7Z.js.map} +0 -0
- /package/dist/{chunk-CZHCXCWL.js.map → chunk-73W4L656.js.map} +0 -0
- /package/dist/{chunk-TCSSYTDN.js.map → chunk-7CBQWZAH.js.map} +0 -0
- /package/dist/{chunk-YIDGB5KP.js.map → chunk-BNF6FZLP.js.map} +0 -0
- /package/dist/{chunk-MOIHWYSA.js.map → chunk-C6NKOHFW.js.map} +0 -0
- /package/dist/{chunk-HRC56BQW.js.map → chunk-EH6LNTOT.js.map} +0 -0
- /package/dist/{chunk-3GXMS4OP.js.map → chunk-KUKHUECE.js.map} +0 -0
- /package/dist/{chunk-SGNWSUL3.js.map → chunk-QK4SQAYG.js.map} +0 -0
- /package/dist/{chunk-CQQXB25K.js.map → chunk-UBEVU6LS.js.map} +0 -0
- /package/dist/{chunk-WHUEUACV.js.map → chunk-ZBRKTF6S.js.map} +0 -0
- /package/dist/{chunk-5JPSQOZQ.js.map → chunk-ZHW5VLHY.js.map} +0 -0
|
@@ -291,7 +291,7 @@ var _chunkVRHGVLSLcjs = require('./chunk-VRHGVLSL.cjs');
|
|
|
291
291
|
|
|
292
292
|
// src/components/pagination.tsx
|
|
293
293
|
var _lucidereact = require('lucide-react');
|
|
294
|
-
var _react = require('react'); var React130 = _interopRequireWildcard(_react); var React = _interopRequireWildcard(_react); var React10 = _interopRequireWildcard(_react); var React4 = _interopRequireWildcard(_react); var React7 = _interopRequireWildcard(_react); var React5 = _interopRequireWildcard(_react); var React22 = _interopRequireWildcard(_react); var React6 = _interopRequireWildcard(_react); var React8 = _interopRequireWildcard(_react); var React11 = _interopRequireWildcard(_react); var React12 = _interopRequireWildcard(_react); var React14 = _interopRequireWildcard(_react); var React17 = _interopRequireWildcard(_react); var React16 = _interopRequireWildcard(_react); var React15 = _interopRequireWildcard(_react); var React20 = _interopRequireWildcard(_react); var React18 = _interopRequireWildcard(_react); var React19 = _interopRequireWildcard(_react); var React23 = _interopRequireWildcard(_react); var React21 = _interopRequireWildcard(_react); var React24 = _interopRequireWildcard(_react); var React25 = _interopRequireWildcard(_react); var React27 = _interopRequireWildcard(_react); var React26 = _interopRequireWildcard(_react); var React28 = _interopRequireWildcard(_react); var React29 = _interopRequireWildcard(_react); var React32 = _interopRequireWildcard(_react); var React30 = _interopRequireWildcard(_react); var React33 = _interopRequireWildcard(_react); var React34 = _interopRequireWildcard(_react); var React37 = _interopRequireWildcard(_react); var React45 = _interopRequireWildcard(_react); var React44 = _interopRequireWildcard(_react); var React46 = _interopRequireWildcard(_react); var React47 = _interopRequireWildcard(_react); var React49 = _interopRequireWildcard(_react); var React48 = _interopRequireWildcard(_react); var React51 = _interopRequireWildcard(_react); var React50 = _interopRequireWildcard(_react); var React55 = _interopRequireWildcard(_react); var React54 = _interopRequireWildcard(_react); var React56 = _interopRequireWildcard(_react); var React57 = _interopRequireWildcard(_react); var React61 = _interopRequireWildcard(_react); var React62 = _interopRequireWildcard(_react); var React63 = _interopRequireWildcard(_react); var React64 = _interopRequireWildcard(_react); var React65 = _interopRequireWildcard(_react); var React66 = _interopRequireWildcard(_react); var React67 = _interopRequireWildcard(_react); var React68 = _interopRequireWildcard(_react); var React69 = _interopRequireWildcard(_react); var React70 = _interopRequireWildcard(_react); var React71 = _interopRequireWildcard(_react); var React72 = _interopRequireWildcard(_react); var React73 = _interopRequireWildcard(_react); var React74 = _interopRequireWildcard(_react); var React75 = _interopRequireWildcard(_react); var React76 = _interopRequireWildcard(_react); var React77 = _interopRequireWildcard(_react); var React79 = _interopRequireWildcard(_react); var React81 = _interopRequireWildcard(_react); var React91 = _interopRequireWildcard(_react); var React90 = _interopRequireWildcard(_react); var React94 = _interopRequireWildcard(_react); var React95 = _interopRequireWildcard(_react); var React97 = _interopRequireWildcard(_react); var React98 = _interopRequireWildcard(_react); var React103 = _interopRequireWildcard(_react); var React107 = _interopRequireWildcard(_react); var React108 = _interopRequireWildcard(_react); var React109 = _interopRequireWildcard(_react); var React114 = _interopRequireWildcard(_react); var React113 = _interopRequireWildcard(_react); var React111 = _interopRequireWildcard(_react); var React110 = _interopRequireWildcard(_react); var React112 = _interopRequireWildcard(_react); var React115 = _interopRequireWildcard(_react); var React127 = _interopRequireWildcard(_react); var React126 = _interopRequireWildcard(_react); var React129 = _interopRequireWildcard(_react); var React132 = _interopRequireWildcard(_react); var React133 = _interopRequireWildcard(_react); var React135 = _interopRequireWildcard(_react); var React136 = _interopRequireWildcard(_react); var React139 = _interopRequireWildcard(_react); var React138 = _interopRequireWildcard(_react); var React137 = _interopRequireWildcard(_react); var React140 = _interopRequireWildcard(_react); var React142 = _interopRequireWildcard(_react); var React141 = _interopRequireWildcard(_react); var React143 = _interopRequireWildcard(_react); var
|
|
294
|
+
var _react = require('react'); var React130 = _interopRequireWildcard(_react); var React = _interopRequireWildcard(_react); var React10 = _interopRequireWildcard(_react); var React4 = _interopRequireWildcard(_react); var React7 = _interopRequireWildcard(_react); var React5 = _interopRequireWildcard(_react); var React22 = _interopRequireWildcard(_react); var React6 = _interopRequireWildcard(_react); var React8 = _interopRequireWildcard(_react); var React11 = _interopRequireWildcard(_react); var React12 = _interopRequireWildcard(_react); var React14 = _interopRequireWildcard(_react); var React17 = _interopRequireWildcard(_react); var React16 = _interopRequireWildcard(_react); var React15 = _interopRequireWildcard(_react); var React20 = _interopRequireWildcard(_react); var React18 = _interopRequireWildcard(_react); var React19 = _interopRequireWildcard(_react); var React23 = _interopRequireWildcard(_react); var React21 = _interopRequireWildcard(_react); var React24 = _interopRequireWildcard(_react); var React25 = _interopRequireWildcard(_react); var React27 = _interopRequireWildcard(_react); var React26 = _interopRequireWildcard(_react); var React28 = _interopRequireWildcard(_react); var React29 = _interopRequireWildcard(_react); var React32 = _interopRequireWildcard(_react); var React30 = _interopRequireWildcard(_react); var React33 = _interopRequireWildcard(_react); var React34 = _interopRequireWildcard(_react); var React37 = _interopRequireWildcard(_react); var React45 = _interopRequireWildcard(_react); var React44 = _interopRequireWildcard(_react); var React46 = _interopRequireWildcard(_react); var React47 = _interopRequireWildcard(_react); var React49 = _interopRequireWildcard(_react); var React48 = _interopRequireWildcard(_react); var React51 = _interopRequireWildcard(_react); var React50 = _interopRequireWildcard(_react); var React55 = _interopRequireWildcard(_react); var React54 = _interopRequireWildcard(_react); var React56 = _interopRequireWildcard(_react); var React57 = _interopRequireWildcard(_react); var React61 = _interopRequireWildcard(_react); var React62 = _interopRequireWildcard(_react); var React63 = _interopRequireWildcard(_react); var React64 = _interopRequireWildcard(_react); var React65 = _interopRequireWildcard(_react); var React66 = _interopRequireWildcard(_react); var React67 = _interopRequireWildcard(_react); var React68 = _interopRequireWildcard(_react); var React69 = _interopRequireWildcard(_react); var React70 = _interopRequireWildcard(_react); var React71 = _interopRequireWildcard(_react); var React72 = _interopRequireWildcard(_react); var React73 = _interopRequireWildcard(_react); var React74 = _interopRequireWildcard(_react); var React75 = _interopRequireWildcard(_react); var React76 = _interopRequireWildcard(_react); var React77 = _interopRequireWildcard(_react); var React79 = _interopRequireWildcard(_react); var React81 = _interopRequireWildcard(_react); var React91 = _interopRequireWildcard(_react); var React90 = _interopRequireWildcard(_react); var React94 = _interopRequireWildcard(_react); var React95 = _interopRequireWildcard(_react); var React97 = _interopRequireWildcard(_react); var React98 = _interopRequireWildcard(_react); var React103 = _interopRequireWildcard(_react); var React107 = _interopRequireWildcard(_react); var React108 = _interopRequireWildcard(_react); var React109 = _interopRequireWildcard(_react); var React114 = _interopRequireWildcard(_react); var React113 = _interopRequireWildcard(_react); var React111 = _interopRequireWildcard(_react); var React110 = _interopRequireWildcard(_react); var React112 = _interopRequireWildcard(_react); var React115 = _interopRequireWildcard(_react); var React127 = _interopRequireWildcard(_react); var React126 = _interopRequireWildcard(_react); var React129 = _interopRequireWildcard(_react); var React132 = _interopRequireWildcard(_react); var React133 = _interopRequireWildcard(_react); var React135 = _interopRequireWildcard(_react); var React136 = _interopRequireWildcard(_react); var React139 = _interopRequireWildcard(_react); var React138 = _interopRequireWildcard(_react); var React137 = _interopRequireWildcard(_react); var React140 = _interopRequireWildcard(_react); var React142 = _interopRequireWildcard(_react); var React141 = _interopRequireWildcard(_react); var React143 = _interopRequireWildcard(_react); var React144 = _interopRequireWildcard(_react); var React152 = _interopRequireWildcard(_react); var React151 = _interopRequireWildcard(_react);
|
|
295
295
|
var _jsxruntime = require('react/jsx-runtime');
|
|
296
296
|
var Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationEllipsis, PaginationPrevious, PaginationNext;
|
|
297
297
|
var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
|
|
@@ -1325,6 +1325,9 @@ var EscalationOfferMessage = _react.forwardRef.call(void 0,
|
|
|
1325
1325
|
EscalationOfferMessage.displayName = "EscalationOfferMessage";
|
|
1326
1326
|
|
|
1327
1327
|
// src/components/chat/ticket-escalated-message.tsx
|
|
1328
|
+
|
|
1329
|
+
|
|
1330
|
+
// src/components/chat/ai-assistant-info.tsx
|
|
1328
1331
|
_chunkKI4EGKNVcjs.init_cn.call(void 0, );
|
|
1329
1332
|
|
|
1330
1333
|
|
|
@@ -1340,13 +1343,10 @@ var format = (input, fmt) => {
|
|
|
1340
1343
|
var formatDate = (input) => format(input, dateFmt);
|
|
1341
1344
|
var formatTime = (input) => format(input, timeFmt);
|
|
1342
1345
|
|
|
1343
|
-
// src/components/chat/
|
|
1346
|
+
// src/components/chat/ai-assistant-info.tsx
|
|
1344
1347
|
|
|
1345
|
-
var
|
|
1346
|
-
|
|
1347
|
-
var TicketEscalatedMessage = _react.forwardRef.call(void 0,
|
|
1348
|
-
({ className, data, timestamp, ...props }, ref) => {
|
|
1349
|
-
const body = _optionalChain([data, 'access', _22 => _22.text, 'optionalAccess', _23 => _23.trim, 'call', _24 => _24()]) || DEFAULT_BODY;
|
|
1348
|
+
var AiAssistantInfo = _react.forwardRef.call(void 0,
|
|
1349
|
+
({ className, icon, leading, title, body, timestamp, ...props }, ref) => {
|
|
1350
1350
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1351
1351
|
"div",
|
|
1352
1352
|
{
|
|
@@ -1357,21 +1357,106 @@ var TicketEscalatedMessage = _react.forwardRef.call(void 0,
|
|
|
1357
1357
|
),
|
|
1358
1358
|
...props,
|
|
1359
1359
|
children: [
|
|
1360
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex size-12 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children:
|
|
1360
|
+
_nullishCoalesce(leading, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex size-12 shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-bg", children: icon }))),
|
|
1361
1361
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
1362
1362
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start", children: [
|
|
1363
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 min-w-0 flex-1 truncate text-ods-text-primary", title
|
|
1363
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 min-w-0 flex-1 truncate text-ods-text-primary", title, children: title }),
|
|
1364
1364
|
timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 shrink-0 text-right text-ods-text-secondary", children: formatTime(timestamp) })
|
|
1365
1365
|
] }),
|
|
1366
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 w-full break-words text-ods-text-secondary", children: body })
|
|
1366
|
+
body != null && body !== "" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 w-full break-words text-ods-text-secondary", children: body })
|
|
1367
1367
|
] })
|
|
1368
1368
|
]
|
|
1369
1369
|
}
|
|
1370
1370
|
);
|
|
1371
1371
|
}
|
|
1372
1372
|
);
|
|
1373
|
+
AiAssistantInfo.displayName = "AiAssistantInfo";
|
|
1374
|
+
|
|
1375
|
+
// src/components/chat/ticket-escalated-message.tsx
|
|
1376
|
+
|
|
1377
|
+
var TITLE = "Handed Off to a Technician";
|
|
1378
|
+
var DEFAULT_BODY = "A technician will reply when available.";
|
|
1379
|
+
var TicketEscalatedMessage = _react.forwardRef.call(void 0,
|
|
1380
|
+
({ data, timestamp, ...props }, ref) => {
|
|
1381
|
+
const body = _optionalChain([data, 'access', _22 => _22.text, 'optionalAccess', _23 => _23.trim, 'call', _24 => _24()]) || DEFAULT_BODY;
|
|
1382
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1383
|
+
AiAssistantInfo,
|
|
1384
|
+
{
|
|
1385
|
+
ref,
|
|
1386
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.InfoCircleIcon, { className: "size-6 text-ods-flamingo-pink" }),
|
|
1387
|
+
title: TITLE,
|
|
1388
|
+
body,
|
|
1389
|
+
timestamp,
|
|
1390
|
+
...props
|
|
1391
|
+
}
|
|
1392
|
+
);
|
|
1393
|
+
}
|
|
1394
|
+
);
|
|
1373
1395
|
TicketEscalatedMessage.displayName = "TicketEscalatedMessage";
|
|
1374
1396
|
|
|
1397
|
+
// src/components/chat/ticket-event-message.tsx
|
|
1398
|
+
|
|
1399
|
+
|
|
1400
|
+
// src/components/chat/types/message.types.ts
|
|
1401
|
+
var MESSAGE_TYPE = {
|
|
1402
|
+
TEXT: "TEXT",
|
|
1403
|
+
THINKING: "THINKING",
|
|
1404
|
+
GUIDE: "GUIDE",
|
|
1405
|
+
ASK: "ASK",
|
|
1406
|
+
EXECUTING_TOOL: "EXECUTING_TOOL",
|
|
1407
|
+
EXECUTED_TOOL: "EXECUTED_TOOL",
|
|
1408
|
+
APPROVAL_REQUEST: "APPROVAL_REQUEST",
|
|
1409
|
+
APPROVAL_RESULT: "APPROVAL_RESULT",
|
|
1410
|
+
ESCALATION_OFFER: "ESCALATION_OFFER",
|
|
1411
|
+
TICKET_ESCALATED: "TICKET_ESCALATED",
|
|
1412
|
+
TICKET_EVENT: "TICKET_EVENT",
|
|
1413
|
+
ERROR: "ERROR",
|
|
1414
|
+
MESSAGE_START: "MESSAGE_START",
|
|
1415
|
+
MESSAGE_END: "MESSAGE_END",
|
|
1416
|
+
MESSAGE_REQUEST: "MESSAGE_REQUEST",
|
|
1417
|
+
AI_METADATA: "AI_METADATA",
|
|
1418
|
+
TOKEN_USAGE: "TOKEN_USAGE",
|
|
1419
|
+
CONTEXT_COMPACTION_START: "CONTEXT_COMPACTION_START",
|
|
1420
|
+
CONTEXT_COMPACTION_END: "CONTEXT_COMPACTION_END",
|
|
1421
|
+
DIRECT_MESSAGE: "DIRECT_MESSAGE",
|
|
1422
|
+
SYSTEM: "SYSTEM",
|
|
1423
|
+
DIALOG_CLOSED: "DIALOG_CLOSED"
|
|
1424
|
+
};
|
|
1425
|
+
var SCROLL_ANCHOR = { TOP: "top", BOTTOM: "bottom" };
|
|
1426
|
+
var TICKET_EVENT_KIND = {
|
|
1427
|
+
RESOLVED: "RESOLVED",
|
|
1428
|
+
REOPENED: "REOPENED"
|
|
1429
|
+
};
|
|
1430
|
+
|
|
1431
|
+
// src/components/chat/ticket-event-message.tsx
|
|
1432
|
+
|
|
1433
|
+
var AI_ACTOR_TYPES = /* @__PURE__ */ new Set(["AI", "AGENT", "ASSISTANT", "BOT"]);
|
|
1434
|
+
function isAiActor(actorType) {
|
|
1435
|
+
return !!actorType && AI_ACTOR_TYPES.has(actorType.toUpperCase());
|
|
1436
|
+
}
|
|
1437
|
+
function humanizeKind(kind) {
|
|
1438
|
+
return kind.split(/[_\s-]+/).filter(Boolean).map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()).join(" ");
|
|
1439
|
+
}
|
|
1440
|
+
var TicketEventMessage = _react.forwardRef.call(void 0,
|
|
1441
|
+
({ data, timestamp, ...props }, ref) => {
|
|
1442
|
+
const { kind, actorName, actorType, reason } = data;
|
|
1443
|
+
const resolved = kind === TICKET_EVENT_KIND.RESOLVED;
|
|
1444
|
+
const reopened = kind === TICKET_EVENT_KIND.REOPENED;
|
|
1445
|
+
const title = resolved ? "Ticket Resolved" : reopened ? "Ticket Reopened" : humanizeKind(kind);
|
|
1446
|
+
let body;
|
|
1447
|
+
if (resolved) {
|
|
1448
|
+
body = actorName ? `Resolved by ${actorName}.` : "The ticket has been resolved.";
|
|
1449
|
+
} else if (reopened) {
|
|
1450
|
+
body = reason ? `Reason: ${reason}` : isAiActor(actorType) ? `${actorName || "Fae"} will continue assisting in this conversation.` : "A technician will reply when available.";
|
|
1451
|
+
} else {
|
|
1452
|
+
body = reason || (actorName ? `By ${actorName}.` : void 0);
|
|
1453
|
+
}
|
|
1454
|
+
const icon = resolved ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CheckCircleIcon, { className: "size-6 text-ods-attention-green-success" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.InfoCircleIcon, { className: "size-6 text-ods-flamingo-pink" });
|
|
1455
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AiAssistantInfo, { ref, icon, title, body, timestamp, ...props });
|
|
1456
|
+
}
|
|
1457
|
+
);
|
|
1458
|
+
TicketEventMessage.displayName = "TicketEventMessage";
|
|
1459
|
+
|
|
1375
1460
|
// src/components/chat/context-compaction-display.tsx
|
|
1376
1461
|
_chunkKI4EGKNVcjs.init_cn.call(void 0, );
|
|
1377
1462
|
|
|
@@ -8010,6 +8095,8 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
8010
8095
|
);
|
|
8011
8096
|
} else if (segment.type === "ticket_escalated") {
|
|
8012
8097
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketEscalatedMessage, { data: segment.data, timestamp }, index);
|
|
8098
|
+
} else if (segment.type === "ticket_event") {
|
|
8099
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketEventMessage, { data: segment.data, timestamp }, index);
|
|
8013
8100
|
} else if (segment.type === "error") {
|
|
8014
8101
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8015
8102
|
ErrorMessageDisplay,
|
|
@@ -8231,32 +8318,6 @@ function CyclingPhrase({
|
|
|
8231
8318
|
] });
|
|
8232
8319
|
}
|
|
8233
8320
|
|
|
8234
|
-
// src/components/chat/types/message.types.ts
|
|
8235
|
-
var MESSAGE_TYPE = {
|
|
8236
|
-
TEXT: "TEXT",
|
|
8237
|
-
THINKING: "THINKING",
|
|
8238
|
-
GUIDE: "GUIDE",
|
|
8239
|
-
ASK: "ASK",
|
|
8240
|
-
EXECUTING_TOOL: "EXECUTING_TOOL",
|
|
8241
|
-
EXECUTED_TOOL: "EXECUTED_TOOL",
|
|
8242
|
-
APPROVAL_REQUEST: "APPROVAL_REQUEST",
|
|
8243
|
-
APPROVAL_RESULT: "APPROVAL_RESULT",
|
|
8244
|
-
ESCALATION_OFFER: "ESCALATION_OFFER",
|
|
8245
|
-
TICKET_ESCALATED: "TICKET_ESCALATED",
|
|
8246
|
-
ERROR: "ERROR",
|
|
8247
|
-
MESSAGE_START: "MESSAGE_START",
|
|
8248
|
-
MESSAGE_END: "MESSAGE_END",
|
|
8249
|
-
MESSAGE_REQUEST: "MESSAGE_REQUEST",
|
|
8250
|
-
AI_METADATA: "AI_METADATA",
|
|
8251
|
-
TOKEN_USAGE: "TOKEN_USAGE",
|
|
8252
|
-
CONTEXT_COMPACTION_START: "CONTEXT_COMPACTION_START",
|
|
8253
|
-
CONTEXT_COMPACTION_END: "CONTEXT_COMPACTION_END",
|
|
8254
|
-
DIRECT_MESSAGE: "DIRECT_MESSAGE",
|
|
8255
|
-
SYSTEM: "SYSTEM",
|
|
8256
|
-
DIALOG_CLOSED: "DIALOG_CLOSED"
|
|
8257
|
-
};
|
|
8258
|
-
var SCROLL_ANCHOR = { TOP: "top", BOTTOM: "bottom" };
|
|
8259
|
-
|
|
8260
8321
|
// src/components/chat/chat-message-list.tsx
|
|
8261
8322
|
|
|
8262
8323
|
var STREAMING_WORDS = [
|
|
@@ -48494,7 +48555,7 @@ function TicketInfoSection({
|
|
|
48494
48555
|
|
|
48495
48556
|
_chunk7INXXQVKcjs.init_button2.call(void 0, );
|
|
48496
48557
|
|
|
48497
|
-
function
|
|
48558
|
+
function renderTicketStatusOption(option, isSelected) {
|
|
48498
48559
|
const { label, color } = option;
|
|
48499
48560
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between w-full min-w-0 gap-[var(--spacing-system-xs)]", children: [
|
|
48500
48561
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)] min-w-0", children: [
|
|
@@ -48504,7 +48565,7 @@ function renderStatusOption(option, isSelected) {
|
|
|
48504
48565
|
isSelected && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CheckIcon, { className: "text-ods-accent", size: 20 })
|
|
48505
48566
|
] });
|
|
48506
48567
|
}
|
|
48507
|
-
function
|
|
48568
|
+
function renderTicketAssigneeOption(option, isSelected) {
|
|
48508
48569
|
const { label, imageUrl } = option;
|
|
48509
48570
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between w-full min-w-0 gap-[var(--spacing-system-xs)]", children: [
|
|
48510
48571
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xs)] min-w-0", children: [
|
|
@@ -48558,7 +48619,7 @@ function TakeOverTicketModal({
|
|
|
48558
48619
|
onChange: setStatusId,
|
|
48559
48620
|
placeholder: "Select Status",
|
|
48560
48621
|
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
48561
|
-
renderOption:
|
|
48622
|
+
renderOption: renderTicketStatusOption
|
|
48562
48623
|
}
|
|
48563
48624
|
) }),
|
|
48564
48625
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -48580,7 +48641,7 @@ function TakeOverTicketModal({
|
|
|
48580
48641
|
variant: "round"
|
|
48581
48642
|
}
|
|
48582
48643
|
) : void 0,
|
|
48583
|
-
renderOption:
|
|
48644
|
+
renderOption: renderTicketAssigneeOption
|
|
48584
48645
|
}
|
|
48585
48646
|
) })
|
|
48586
48647
|
] }),
|
|
@@ -48603,6 +48664,118 @@ function TakeOverTicketModal({
|
|
|
48603
48664
|
] });
|
|
48604
48665
|
}
|
|
48605
48666
|
|
|
48667
|
+
// src/components/ui/reopen-ticket-modal.tsx
|
|
48668
|
+
|
|
48669
|
+
_chunk7INXXQVKcjs.init_button2.call(void 0, );
|
|
48670
|
+
|
|
48671
|
+
var REASON_MAX_LENGTH = 1e3;
|
|
48672
|
+
function ReopenTicketModal({
|
|
48673
|
+
isOpen,
|
|
48674
|
+
onClose,
|
|
48675
|
+
ticketRef,
|
|
48676
|
+
statusOptions,
|
|
48677
|
+
assigneeOptions,
|
|
48678
|
+
assigneesLoading,
|
|
48679
|
+
initialStatusId,
|
|
48680
|
+
initialAssigneeId,
|
|
48681
|
+
isPending = false,
|
|
48682
|
+
onConfirm
|
|
48683
|
+
}) {
|
|
48684
|
+
const [statusId, setStatusId] = React144.useState(null);
|
|
48685
|
+
const [assigneeId, setAssigneeId] = React144.useState(null);
|
|
48686
|
+
const [reason, setReason] = React144.useState("");
|
|
48687
|
+
React144.useEffect(() => {
|
|
48688
|
+
if (!isOpen) return;
|
|
48689
|
+
setStatusId(_nullishCoalesce(initialStatusId, () => ( null)));
|
|
48690
|
+
setAssigneeId(_nullishCoalesce(initialAssigneeId, () => ( null)));
|
|
48691
|
+
setReason("");
|
|
48692
|
+
}, [isOpen, initialStatusId, initialAssigneeId]);
|
|
48693
|
+
const selectedStatusId = _nullishCoalesce(_nullishCoalesce(statusId, () => ( _optionalChain([statusOptions, 'access', _1189 => _1189[0], 'optionalAccess', _1190 => _1190.value]))), () => ( null));
|
|
48694
|
+
const selectedStatus = statusOptions.find((o) => o.value === selectedStatusId);
|
|
48695
|
+
const selectedAssignee = assigneeOptions.find((o) => o.value === assigneeId);
|
|
48696
|
+
const handleConfirm = () => {
|
|
48697
|
+
if (!selectedStatusId || isPending) return;
|
|
48698
|
+
const trimmedReason = reason.trim();
|
|
48699
|
+
onConfirm({
|
|
48700
|
+
statusId: selectedStatusId,
|
|
48701
|
+
assigneeId: _nullishCoalesce(assigneeId, () => ( null)),
|
|
48702
|
+
reason: trimmedReason ? trimmedReason.slice(0, REASON_MAX_LENGTH) : null
|
|
48703
|
+
});
|
|
48704
|
+
};
|
|
48705
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Modal, { isOpen, onClose: isPending ? () => {
|
|
48706
|
+
} : onClose, className: "text-left md:max-w-[600px]", children: [
|
|
48707
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ModalTitle, { children: "Reopen Ticket" }) }),
|
|
48708
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h4 text-ods-text-primary", children: [
|
|
48709
|
+
"The ticket ",
|
|
48710
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ticketRef }),
|
|
48711
|
+
" will return to the selected status and appear on the board. Assigned admins and the user will be notified."
|
|
48712
|
+
] }),
|
|
48713
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col md:flex-row gap-[var(--spacing-system-l)] w-full", children: [
|
|
48714
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
48715
|
+
Autocomplete,
|
|
48716
|
+
{
|
|
48717
|
+
label: "Status",
|
|
48718
|
+
options: statusOptions,
|
|
48719
|
+
value: selectedStatusId,
|
|
48720
|
+
onChange: setStatusId,
|
|
48721
|
+
placeholder: "Select Status",
|
|
48722
|
+
startAdornment: selectedStatus ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ColorSwatch, { color: selectedStatus.color }) : void 0,
|
|
48723
|
+
renderOption: renderTicketStatusOption
|
|
48724
|
+
}
|
|
48725
|
+
) }),
|
|
48726
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
48727
|
+
Autocomplete,
|
|
48728
|
+
{
|
|
48729
|
+
label: "Assigned",
|
|
48730
|
+
options: assigneeOptions,
|
|
48731
|
+
value: assigneeId,
|
|
48732
|
+
onChange: setAssigneeId,
|
|
48733
|
+
placeholder: "Select Technician",
|
|
48734
|
+
loading: assigneesLoading,
|
|
48735
|
+
startAdornment: selectedAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
48736
|
+
SquareAvatar,
|
|
48737
|
+
{
|
|
48738
|
+
src: selectedAssignee.imageUrl,
|
|
48739
|
+
alt: selectedAssignee.label,
|
|
48740
|
+
fallback: selectedAssignee.label,
|
|
48741
|
+
size: "sm",
|
|
48742
|
+
variant: "round"
|
|
48743
|
+
}
|
|
48744
|
+
) : void 0,
|
|
48745
|
+
renderOption: renderTicketAssigneeOption
|
|
48746
|
+
}
|
|
48747
|
+
) })
|
|
48748
|
+
] }),
|
|
48749
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
48750
|
+
Textarea,
|
|
48751
|
+
{
|
|
48752
|
+
label: "Reason",
|
|
48753
|
+
value: reason,
|
|
48754
|
+
onChange: (event) => setReason(event.target.value),
|
|
48755
|
+
placeholder: "Describe what's still not working (optional)",
|
|
48756
|
+
maxLength: REASON_MAX_LENGTH,
|
|
48757
|
+
disabled: isPending
|
|
48758
|
+
}
|
|
48759
|
+
) }),
|
|
48760
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ModalFooter, { children: [
|
|
48761
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7INXXQVKcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
|
|
48762
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:block flex-1" }),
|
|
48763
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
48764
|
+
_chunk7INXXQVKcjs.Button,
|
|
48765
|
+
{
|
|
48766
|
+
type: "button",
|
|
48767
|
+
variant: "accent",
|
|
48768
|
+
onClick: handleConfirm,
|
|
48769
|
+
loading: isPending,
|
|
48770
|
+
disabled: !selectedStatusId,
|
|
48771
|
+
className: "flex-1",
|
|
48772
|
+
children: "Reopen Ticket"
|
|
48773
|
+
}
|
|
48774
|
+
)
|
|
48775
|
+
] })
|
|
48776
|
+
] });
|
|
48777
|
+
}
|
|
48778
|
+
|
|
48606
48779
|
// src/components/ui/filter-pill-row.tsx
|
|
48607
48780
|
_chunk7INXXQVKcjs.init_button2.call(void 0, );
|
|
48608
48781
|
|
|
@@ -48882,7 +49055,7 @@ function RoadmapCard({
|
|
|
48882
49055
|
const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
|
|
48883
49056
|
const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
|
|
48884
49057
|
const hasFigma = !!item.figmaUrl;
|
|
48885
|
-
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access',
|
|
49058
|
+
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _1191 => _1191.screenshots, 'optionalAccess', _1192 => _1192.length]), () => ( 0))) > 0;
|
|
48886
49059
|
const typeLabel = getTaskTypeLabel(item.customItemId);
|
|
48887
49060
|
const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
|
|
48888
49061
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -48901,7 +49074,7 @@ function RoadmapCard({
|
|
|
48901
49074
|
unoptimized: true,
|
|
48902
49075
|
className: "h-8 w-8 object-contain"
|
|
48903
49076
|
}
|
|
48904
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
49077
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _1193 => _1193.title, 'optionalAccess', _1194 => _1194.substring, 'call', _1195 => _1195(0, 2)]) || "??" })
|
|
48905
49078
|
}
|
|
48906
49079
|
),
|
|
48907
49080
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -48977,7 +49150,7 @@ function RoadmapCard({
|
|
|
48977
49150
|
unoptimized: true,
|
|
48978
49151
|
className: "object-contain p-1"
|
|
48979
49152
|
}
|
|
48980
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
49153
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _1196 => _1196.title, 'optionalAccess', _1197 => _1197.substring, 'call', _1198 => _1198(0, 2)]) || "??" }) }),
|
|
48981
49154
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
|
|
48982
49155
|
/* @__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 flex-1 line-clamp-2", children: item.title }) }),
|
|
48983
49156
|
/* @__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 truncate", children: [
|
|
@@ -49488,7 +49661,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
|
|
|
49488
49661
|
] }) : null,
|
|
49489
49662
|
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-h6 text-ods-text-secondary", children: item.preview }) }) : null
|
|
49490
49663
|
] }),
|
|
49491
|
-
_optionalChain([anchorProps, 'optionalAccess',
|
|
49664
|
+
_optionalChain([anchorProps, 'optionalAccess', _1199 => _1199.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
|
|
49492
49665
|
] });
|
|
49493
49666
|
if (!anchorProps) {
|
|
49494
49667
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
@@ -49558,7 +49731,7 @@ function getDefaultOptions() {
|
|
|
49558
49731
|
// node_modules/date-fns/startOfWeek.mjs
|
|
49559
49732
|
function startOfWeek(date, options) {
|
|
49560
49733
|
const defaultOptions2 = getDefaultOptions();
|
|
49561
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
49734
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1200 => _1200.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _1201 => _1201.locale, 'optionalAccess', _1202 => _1202.options, 'optionalAccess', _1203 => _1203.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _1204 => _1204.locale, 'optionalAccess', _1205 => _1205.options, 'optionalAccess', _1206 => _1206.weekStartsOn]))), () => ( 0));
|
|
49562
49735
|
const _date = toDate2(date);
|
|
49563
49736
|
const day = _date.getDay();
|
|
49564
49737
|
const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
|
|
@@ -49733,7 +49906,7 @@ var formatDistance = (token, count, options) => {
|
|
|
49733
49906
|
} else {
|
|
49734
49907
|
result = tokenValue.other.replace("{{count}}", count.toString());
|
|
49735
49908
|
}
|
|
49736
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
49909
|
+
if (_optionalChain([options, 'optionalAccess', _1207 => _1207.addSuffix])) {
|
|
49737
49910
|
if (options.comparison && options.comparison > 0) {
|
|
49738
49911
|
return "in " + result;
|
|
49739
49912
|
} else {
|
|
@@ -49800,15 +49973,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
|
|
|
49800
49973
|
// node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
|
|
49801
49974
|
function buildLocalizeFn(args) {
|
|
49802
49975
|
return (value, options) => {
|
|
49803
|
-
const context = _optionalChain([options, 'optionalAccess',
|
|
49976
|
+
const context = _optionalChain([options, 'optionalAccess', _1208 => _1208.context]) ? String(options.context) : "standalone";
|
|
49804
49977
|
let valuesArray;
|
|
49805
49978
|
if (context === "formatting" && args.formattingValues) {
|
|
49806
49979
|
const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
|
|
49807
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
49980
|
+
const width = _optionalChain([options, 'optionalAccess', _1209 => _1209.width]) ? String(options.width) : defaultWidth;
|
|
49808
49981
|
valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
|
|
49809
49982
|
} else {
|
|
49810
49983
|
const defaultWidth = args.defaultWidth;
|
|
49811
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
49984
|
+
const width = _optionalChain([options, 'optionalAccess', _1210 => _1210.width]) ? String(options.width) : args.defaultWidth;
|
|
49812
49985
|
valuesArray = args.values[width] || args.values[defaultWidth];
|
|
49813
49986
|
}
|
|
49814
49987
|
const index = args.argumentCallback ? args.argumentCallback(value) : value;
|
|
@@ -50188,7 +50361,7 @@ function getWeekYear(date, options) {
|
|
|
50188
50361
|
const _date = toDate2(date);
|
|
50189
50362
|
const year = _date.getFullYear();
|
|
50190
50363
|
const defaultOptions2 = getDefaultOptions();
|
|
50191
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
50364
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1211 => _1211.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1212 => _1212.locale, 'optionalAccess', _1213 => _1213.options, 'optionalAccess', _1214 => _1214.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1215 => _1215.locale, 'optionalAccess', _1216 => _1216.options, 'optionalAccess', _1217 => _1217.firstWeekContainsDate]))), () => ( 1));
|
|
50192
50365
|
const firstWeekOfNextYear = constructFrom(date, 0);
|
|
50193
50366
|
firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
|
|
50194
50367
|
firstWeekOfNextYear.setHours(0, 0, 0, 0);
|
|
@@ -50209,7 +50382,7 @@ function getWeekYear(date, options) {
|
|
|
50209
50382
|
// node_modules/date-fns/startOfWeekYear.mjs
|
|
50210
50383
|
function startOfWeekYear(date, options) {
|
|
50211
50384
|
const defaultOptions2 = getDefaultOptions();
|
|
50212
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
50385
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1218 => _1218.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1219 => _1219.locale, 'optionalAccess', _1220 => _1220.options, 'optionalAccess', _1221 => _1221.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1222 => _1222.locale, 'optionalAccess', _1223 => _1223.options, 'optionalAccess', _1224 => _1224.firstWeekContainsDate]))), () => ( 1));
|
|
50213
50386
|
const year = getWeekYear(date, options);
|
|
50214
50387
|
const firstWeek = constructFrom(date, 0);
|
|
50215
50388
|
firstWeek.setFullYear(year, 0, firstWeekContainsDate);
|
|
@@ -51024,9 +51197,9 @@ var doubleQuoteRegExp = /''/g;
|
|
|
51024
51197
|
var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
|
|
51025
51198
|
function format2(date, formatStr, options) {
|
|
51026
51199
|
const defaultOptions2 = getDefaultOptions();
|
|
51027
|
-
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
51028
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
51029
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
51200
|
+
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1225 => _1225.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
|
|
51201
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1226 => _1226.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _1227 => _1227.locale, 'optionalAccess', _1228 => _1228.options, 'optionalAccess', _1229 => _1229.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _1230 => _1230.locale, 'optionalAccess', _1231 => _1231.options, 'optionalAccess', _1232 => _1232.firstWeekContainsDate]))), () => ( 1));
|
|
51202
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1233 => _1233.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _1234 => _1234.locale, 'optionalAccess', _1235 => _1235.options, 'optionalAccess', _1236 => _1236.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _1237 => _1237.locale, 'optionalAccess', _1238 => _1238.options, 'optionalAccess', _1239 => _1239.weekStartsOn]))), () => ( 0));
|
|
51030
51203
|
const originalDate = toDate2(date);
|
|
51031
51204
|
if (!isValid(originalDate)) {
|
|
51032
51205
|
throw new RangeError("Invalid time value");
|
|
@@ -51067,7 +51240,7 @@ function format2(date, formatStr, options) {
|
|
|
51067
51240
|
return parts.map((part) => {
|
|
51068
51241
|
if (!part.isToken) return part.value;
|
|
51069
51242
|
const token = part.value;
|
|
51070
|
-
if (!_optionalChain([options, 'optionalAccess',
|
|
51243
|
+
if (!_optionalChain([options, 'optionalAccess', _1240 => _1240.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _1241 => _1241.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
|
|
51071
51244
|
warnOrThrowProtectedError(token, formatStr, String(date));
|
|
51072
51245
|
}
|
|
51073
51246
|
const formatter = formatters[token[0]];
|
|
@@ -51273,7 +51446,7 @@ function ProgramCard({
|
|
|
51273
51446
|
const itemDate2 = compactDate;
|
|
51274
51447
|
const compactCover = coverImage || placeholderUrl || null;
|
|
51275
51448
|
const typeMeta = compactTypeMeta();
|
|
51276
|
-
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access',
|
|
51449
|
+
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _1242 => _1242.labels, 'optionalAccess', _1243 => _1243.singular])].filter(
|
|
51277
51450
|
(s) => typeof s === "string" && s.length > 0
|
|
51278
51451
|
);
|
|
51279
51452
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkKI4EGKNVcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
|
|
@@ -51430,7 +51603,7 @@ function ProgramCard({
|
|
|
51430
51603
|
|
|
51431
51604
|
|
|
51432
51605
|
function CampaignCardAdmin({ campaign, className, anchorProps }) {
|
|
51433
|
-
const goalsCount = _optionalChain([campaign, 'access',
|
|
51606
|
+
const goalsCount = _optionalChain([campaign, 'access', _1244 => _1244.goals, 'optionalAccess', _1245 => _1245.length]) || 0;
|
|
51434
51607
|
const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
51435
51608
|
/* @__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" }) }),
|
|
51436
51609
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -51598,7 +51771,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
51598
51771
|
if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
|
|
51599
51772
|
const safePath = sanitizePath(row.path);
|
|
51600
51773
|
if (safePath) {
|
|
51601
|
-
const docTarget = row.documentType ? _optionalChain([ctx, 'access',
|
|
51774
|
+
const docTarget = row.documentType ? _optionalChain([ctx, 'access', _1246 => _1246.docPlatformTargets, 'optionalAccess', _1247 => _1247[row.documentType]]) : void 0;
|
|
51602
51775
|
if (docTarget) {
|
|
51603
51776
|
const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
|
|
51604
51777
|
const base = `${_chunkKI4EGKNVcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
|
|
@@ -51897,8 +52070,8 @@ function cardMenuGroups(href, discuss, openDetails, externalLink) {
|
|
|
51897
52070
|
if (href) {
|
|
51898
52071
|
items.push({
|
|
51899
52072
|
id: "open-details",
|
|
51900
|
-
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
51901
|
-
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
52073
|
+
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1248 => _1248.label]), () => ( "Open Details")),
|
|
52074
|
+
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1249 => _1249.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.EyeIcon, { size: 20 }))),
|
|
51902
52075
|
// Main row → open the entity (same tab, soft Link nav).
|
|
51903
52076
|
href,
|
|
51904
52077
|
// Trailing 40px ↗ side-button → open in a new tab.
|
|
@@ -51958,16 +52131,16 @@ function itemVideoMetadata(item) {
|
|
|
51958
52131
|
for (const v of vals) if (typeof v === "string" && v.length > 0) return v;
|
|
51959
52132
|
return void 0;
|
|
51960
52133
|
};
|
|
51961
|
-
const m = _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52134
|
+
const m = _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1250 => _1250.metadata]), () => ( {}));
|
|
51962
52135
|
const out = {};
|
|
51963
|
-
const videoUrl = pick(m.videoUrl, _optionalChain([item, 'optionalAccess',
|
|
51964
|
-
const youtubeUrl = pick(m.youtubeUrl, _optionalChain([item, 'optionalAccess',
|
|
51965
|
-
const highlightVideoUrl = pick(m.highlightVideoUrl, _optionalChain([item, 'optionalAccess',
|
|
52136
|
+
const videoUrl = pick(m.videoUrl, _optionalChain([item, 'optionalAccess', _1251 => _1251.custom_video_url]), _optionalChain([item, 'optionalAccess', _1252 => _1252.main_video_url]));
|
|
52137
|
+
const youtubeUrl = pick(m.youtubeUrl, _optionalChain([item, 'optionalAccess', _1253 => _1253.youtube_url]), _optionalChain([item, 'optionalAccess', _1254 => _1254.testimonial_video_url]));
|
|
52138
|
+
const highlightVideoUrl = pick(m.highlightVideoUrl, _optionalChain([item, 'optionalAccess', _1255 => _1255.highlight_video_url]));
|
|
51966
52139
|
const videoPoster = pick(
|
|
51967
52140
|
m.videoPoster,
|
|
51968
|
-
_optionalChain([item, 'optionalAccess',
|
|
51969
|
-
_optionalChain([item, 'optionalAccess',
|
|
51970
|
-
_optionalChain([item, 'optionalAccess',
|
|
52141
|
+
_optionalChain([item, 'optionalAccess', _1256 => _1256.main_video_thumbnail]),
|
|
52142
|
+
_optionalChain([item, 'optionalAccess', _1257 => _1257.highlight_video_thumbnail]),
|
|
52143
|
+
_optionalChain([item, 'optionalAccess', _1258 => _1258.featured_image])
|
|
51971
52144
|
);
|
|
51972
52145
|
if (videoUrl) out.videoUrl = videoUrl;
|
|
51973
52146
|
if (youtubeUrl) out.youtubeUrl = youtubeUrl;
|
|
@@ -52001,15 +52174,15 @@ function fetchedItemDisplayRef(item, chatRef) {
|
|
|
52001
52174
|
}
|
|
52002
52175
|
function fetchedFaqDisplayRef(item, chatRef) {
|
|
52003
52176
|
const it = item;
|
|
52004
|
-
const answer = typeof _optionalChain([it, 'optionalAccess',
|
|
52177
|
+
const answer = typeof _optionalChain([it, 'optionalAccess', _1259 => _1259.answer]) === "string" && it.answer.trim().length > 0 ? it.answer.trim() : null;
|
|
52005
52178
|
return {
|
|
52006
52179
|
type: "faq",
|
|
52007
52180
|
id: chatRef.id,
|
|
52008
52181
|
sourceRepo: chatRef.sourceRepo,
|
|
52009
|
-
title: typeof _optionalChain([it, 'optionalAccess',
|
|
52182
|
+
title: typeof _optionalChain([it, 'optionalAccess', _1260 => _1260.question]) === "string" && it.question ? it.question : chatRef.id,
|
|
52010
52183
|
url: _nullishCoalesce(chatRef.url, () => ( null)),
|
|
52011
52184
|
...answer ? { preview: answer.length > 400 ? `${answer.slice(0, 397)}\u2026` : answer } : {},
|
|
52012
|
-
metadata: typeof _optionalChain([it, 'optionalAccess',
|
|
52185
|
+
metadata: typeof _optionalChain([it, 'optionalAccess', _1261 => _1261.section]) === "string" && it.section ? { section: it.section } : {}
|
|
52013
52186
|
};
|
|
52014
52187
|
}
|
|
52015
52188
|
function HubspotTicketChatCard({
|
|
@@ -52017,8 +52190,8 @@ function HubspotTicketChatCard({
|
|
|
52017
52190
|
isNewTab,
|
|
52018
52191
|
discuss
|
|
52019
52192
|
}) {
|
|
52020
|
-
const status = typeof _optionalChain([chatRef, 'access',
|
|
52021
|
-
const statusLabel = typeof _optionalChain([chatRef, 'access',
|
|
52193
|
+
const status = typeof _optionalChain([chatRef, 'access', _1262 => _1262.metadata, 'optionalAccess', _1263 => _1263.status]) === "string" ? chatRef.metadata.status : void 0;
|
|
52194
|
+
const statusLabel = typeof _optionalChain([chatRef, 'access', _1264 => _1264.metadata, 'optionalAccess', _1265 => _1265.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
|
|
52022
52195
|
const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
|
|
52023
52196
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52024
52197
|
MingoInfoCard,
|
|
@@ -52041,7 +52214,7 @@ function FaqChatCard({
|
|
|
52041
52214
|
isNewTab,
|
|
52042
52215
|
discuss
|
|
52043
52216
|
}) {
|
|
52044
|
-
const section = typeof _optionalChain([chatRef, 'access',
|
|
52217
|
+
const section = typeof _optionalChain([chatRef, 'access', _1266 => _1266.metadata, 'optionalAccess', _1267 => _1267.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
|
|
52045
52218
|
const statusLabel = section && section.length > 0 ? section : "FAQ";
|
|
52046
52219
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52047
52220
|
MingoInfoCard,
|
|
@@ -52061,7 +52234,7 @@ function SlackChatCard({
|
|
|
52061
52234
|
isNewTab,
|
|
52062
52235
|
discuss
|
|
52063
52236
|
}) {
|
|
52064
|
-
const channelName = typeof _optionalChain([chatRef, 'access',
|
|
52237
|
+
const channelName = typeof _optionalChain([chatRef, 'access', _1268 => _1268.metadata, 'optionalAccess', _1269 => _1269.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
|
|
52065
52238
|
const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
|
|
52066
52239
|
const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
|
|
52067
52240
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -52101,7 +52274,7 @@ function GenericFinancialChatCard({
|
|
|
52101
52274
|
isNewTab,
|
|
52102
52275
|
discuss
|
|
52103
52276
|
}) {
|
|
52104
|
-
const subtitle = typeof _optionalChain([chatRef, 'access',
|
|
52277
|
+
const subtitle = typeof _optionalChain([chatRef, 'access', _1270 => _1270.metadata, 'optionalAccess', _1271 => _1271.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
|
|
52105
52278
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52106
52279
|
MingoInfoCard,
|
|
52107
52280
|
{
|
|
@@ -52170,12 +52343,12 @@ function ProductReleaseChatCard({
|
|
|
52170
52343
|
discuss
|
|
52171
52344
|
}) {
|
|
52172
52345
|
const releaseProps = buildProps(item);
|
|
52173
|
-
const status = _optionalChain([item, 'optionalAccess',
|
|
52346
|
+
const status = _optionalChain([item, 'optionalAccess', _1272 => _1272.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
|
|
52174
52347
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52175
52348
|
EntityMingoCard,
|
|
52176
52349
|
{
|
|
52177
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52178
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
52350
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1273 => _1273.title]), () => ( "")),
|
|
52351
|
+
description: _optionalChain([item, 'optionalAccess', _1274 => _1274.summary]) || releaseProps.formattedDate || void 0,
|
|
52179
52352
|
cover: releaseProps.coverImage || void 0,
|
|
52180
52353
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Rocket02Icon, { size: 24 }),
|
|
52181
52354
|
status,
|
|
@@ -52192,17 +52365,17 @@ function CampaignChatCard({
|
|
|
52192
52365
|
isNewTab,
|
|
52193
52366
|
discuss
|
|
52194
52367
|
}) {
|
|
52195
|
-
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
52368
|
+
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1275 => _1275.goals])) ? item.goals.length : 0;
|
|
52196
52369
|
const meta = [
|
|
52197
|
-
_optionalChain([item, 'optionalAccess',
|
|
52370
|
+
_optionalChain([item, 'optionalAccess', _1276 => _1276.start_date]) ? formatDateShort(item.start_date) : null,
|
|
52198
52371
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
52199
52372
|
"Marketing campaign"
|
|
52200
52373
|
].filter(Boolean).join(" \xB7 ");
|
|
52201
52374
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52202
52375
|
EntityMingoCard,
|
|
52203
52376
|
{
|
|
52204
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52205
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
52377
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1277 => _1277.name]), () => ( "")),
|
|
52378
|
+
description: meta || _optionalChain([item, 'optionalAccess', _1278 => _1278.description]) || void 0,
|
|
52206
52379
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.Megaphone01Icon, { size: 24 }),
|
|
52207
52380
|
chatRef,
|
|
52208
52381
|
isNewTab,
|
|
@@ -52257,14 +52430,14 @@ function BlogChatCard({
|
|
|
52257
52430
|
hasEmbeddedVideo,
|
|
52258
52431
|
discuss
|
|
52259
52432
|
}) {
|
|
52260
|
-
const category = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
52433
|
+
const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1279 => _1279.categories])) ? _optionalChain([item, 'access', _1280 => _1280.categories, 'access', _1281 => _1281.find, 'call', _1282 => _1282((c) => c && c.name), 'optionalAccess', _1283 => _1283.name]) : void 0;
|
|
52261
52434
|
const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
|
|
52262
52435
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52263
52436
|
EntityMingoCard,
|
|
52264
52437
|
{
|
|
52265
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52266
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52267
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
52438
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1284 => _1284.title]), () => ( "")),
|
|
52439
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1285 => _1285.summary]), () => ( void 0)),
|
|
52440
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _1286 => _1286.featured_image]), ogPlaceholder),
|
|
52268
52441
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.NewspaperIcon, { size: 24 }),
|
|
52269
52442
|
status,
|
|
52270
52443
|
chatRef,
|
|
@@ -52281,13 +52454,13 @@ function CaseStudyChatCard({
|
|
|
52281
52454
|
ogPlaceholder,
|
|
52282
52455
|
discuss
|
|
52283
52456
|
}) {
|
|
52284
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
52457
|
+
const meta = [_optionalChain([item, 'optionalAccess', _1287 => _1287.msp, 'optionalAccess', _1288 => _1288.name]), _optionalChain([item, 'optionalAccess', _1289 => _1289.user, 'optionalAccess', _1290 => _1290.full_name])].filter(Boolean).join(" \xB7 ");
|
|
52285
52458
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52286
52459
|
EntityMingoCard,
|
|
52287
52460
|
{
|
|
52288
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52289
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
52290
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
52461
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1291 => _1291.title]), () => ( "")),
|
|
52462
|
+
description: _optionalChain([item, 'optionalAccess', _1292 => _1292.summary]) || meta || void 0,
|
|
52463
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _1293 => _1293.featured_image]), ogPlaceholder),
|
|
52291
52464
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.TrophyIcon, { size: 24 }),
|
|
52292
52465
|
status: { label: "Case study", variant: "grey" },
|
|
52293
52466
|
chatRef,
|
|
@@ -52304,13 +52477,13 @@ function CustomerInterviewChatCard({
|
|
|
52304
52477
|
ogPlaceholder,
|
|
52305
52478
|
discuss
|
|
52306
52479
|
}) {
|
|
52307
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
52480
|
+
const meta = [_optionalChain([item, 'optionalAccess', _1294 => _1294.user, 'optionalAccess', _1295 => _1295.full_name]), _optionalChain([item, 'optionalAccess', _1296 => _1296.msp, 'optionalAccess', _1297 => _1297.name])].filter(Boolean).join(" \xB7 ");
|
|
52308
52481
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52309
52482
|
EntityMingoCard,
|
|
52310
52483
|
{
|
|
52311
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52312
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
52313
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
52484
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1298 => _1298.title]), () => ( "")),
|
|
52485
|
+
description: _optionalChain([item, 'optionalAccess', _1299 => _1299.video_summary]) || meta || void 0,
|
|
52486
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _1300 => _1300.featured_image]), ogPlaceholder),
|
|
52314
52487
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.MicrophoneIcon, { size: 24 }),
|
|
52315
52488
|
status: { label: "Interview", variant: "grey" },
|
|
52316
52489
|
chatRef,
|
|
@@ -52327,13 +52500,13 @@ function InvestorUpdateChatCard({
|
|
|
52327
52500
|
ogPlaceholder,
|
|
52328
52501
|
discuss
|
|
52329
52502
|
}) {
|
|
52330
|
-
const title = _optionalChain([item, 'optionalAccess',
|
|
52503
|
+
const title = _optionalChain([item, 'optionalAccess', _1301 => _1301.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1302 => _1302.update_number]), () => ( "?"))}`;
|
|
52331
52504
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52332
52505
|
EntityMingoCard,
|
|
52333
52506
|
{
|
|
52334
52507
|
title,
|
|
52335
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
52336
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
52508
|
+
description: _optionalChain([item, 'optionalAccess', _1303 => _1303.strategic_update]) || _optionalChain([item, 'optionalAccess', _1304 => _1304.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1305 => _1305.period_start]), _optionalChain([item, 'optionalAccess', _1306 => _1306.period_end])) || void 0,
|
|
52509
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _1307 => _1307.featured_image]), ogPlaceholder),
|
|
52337
52510
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.PresentationLineIcon, { size: 24 }),
|
|
52338
52511
|
status: { label: "Investor update", variant: "grey" },
|
|
52339
52512
|
chatRef,
|
|
@@ -52350,12 +52523,12 @@ function OnboardingGuideChatCard({
|
|
|
52350
52523
|
ogPlaceholder,
|
|
52351
52524
|
discuss
|
|
52352
52525
|
}) {
|
|
52353
|
-
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess',
|
|
52526
|
+
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1308 => _1308.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1309 => _1309.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1310 => _1310.og_image_url]), ogPlaceholder)));
|
|
52354
52527
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52355
52528
|
EntityMingoCard,
|
|
52356
52529
|
{
|
|
52357
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52358
|
-
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52530
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1311 => _1311.title]), () => ( "")),
|
|
52531
|
+
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1312 => _1312.summary]), () => ( _optionalChain([item, 'optionalAccess', _1313 => _1313.description]))), () => ( void 0)),
|
|
52359
52532
|
cover,
|
|
52360
52533
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CompassIcon, { size: 24 }),
|
|
52361
52534
|
status: { label: "Guide", variant: "grey" },
|
|
@@ -52376,25 +52549,25 @@ function ProgramChatCard({
|
|
|
52376
52549
|
discuss
|
|
52377
52550
|
}) {
|
|
52378
52551
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.MicrophoneIcon, { size: 24 });
|
|
52379
|
-
const isScheduled = _optionalChain([item, 'optionalAccess',
|
|
52552
|
+
const isScheduled = _optionalChain([item, 'optionalAccess', _1314 => _1314.status]) === "scheduled";
|
|
52380
52553
|
let typeMeta;
|
|
52381
|
-
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess',
|
|
52554
|
+
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1315 => _1315.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
|
|
52382
52555
|
typeMeta = formatDurationCompact(item.duration_seconds);
|
|
52383
|
-
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess',
|
|
52556
|
+
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1316 => _1316.location_name]) === "string" && item.location_name.trim().length > 0) {
|
|
52384
52557
|
typeMeta = item.location_name;
|
|
52385
|
-
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess',
|
|
52558
|
+
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1317 => _1317.start_at])) {
|
|
52386
52559
|
const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
|
|
52387
52560
|
const dur = formatDurationFromRange(item.start_at, item.end_at);
|
|
52388
52561
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
52389
52562
|
}
|
|
52390
|
-
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52563
|
+
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1318 => _1318.date]), () => ( null)), { fallback: "", timezone: "local" });
|
|
52391
52564
|
const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
|
|
52392
52565
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52393
52566
|
EntityMingoCard,
|
|
52394
52567
|
{
|
|
52395
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52396
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
52397
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
52568
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1319 => _1319.title]), () => ( "")),
|
|
52569
|
+
description: meta || _optionalChain([item, 'optionalAccess', _1320 => _1320.description]) || void 0,
|
|
52570
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _1321 => _1321.cover_url]), ogPlaceholder),
|
|
52398
52571
|
fallbackIcon: icon,
|
|
52399
52572
|
status: { label, variant: "grey" },
|
|
52400
52573
|
chatRef,
|
|
@@ -52411,10 +52584,10 @@ function RoadmapChatCard({
|
|
|
52411
52584
|
cardType,
|
|
52412
52585
|
discuss
|
|
52413
52586
|
}) {
|
|
52414
|
-
const logoUrl = typeof _optionalChain([item, 'optionalAccess',
|
|
52415
|
-
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess',
|
|
52587
|
+
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1322 => _1322.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
52588
|
+
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1323 => _1323.customItemId]) != null;
|
|
52416
52589
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.MapIcon, { size: 24 });
|
|
52417
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess',
|
|
52590
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1324 => _1324.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
52418
52591
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
52419
52592
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
52420
52593
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
|
|
@@ -52425,10 +52598,10 @@ function RoadmapChatCard({
|
|
|
52425
52598
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52426
52599
|
EntityMingoCard,
|
|
52427
52600
|
{
|
|
52428
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52429
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52601
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1325 => _1325.title]), () => ( "")),
|
|
52602
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1326 => _1326.description]), () => ( void 0)),
|
|
52430
52603
|
fallbackIcon: icon,
|
|
52431
|
-
status: statusPill(_optionalChain([item, 'optionalAccess',
|
|
52604
|
+
status: statusPill(_optionalChain([item, 'optionalAccess', _1327 => _1327.status])),
|
|
52432
52605
|
chatRef,
|
|
52433
52606
|
isNewTab,
|
|
52434
52607
|
discuss,
|
|
@@ -52444,7 +52617,7 @@ function refHydratedEntry(docType, label, renderRef) {
|
|
|
52444
52617
|
bareInline: true,
|
|
52445
52618
|
contentRefType: docType,
|
|
52446
52619
|
noComposedHref: true,
|
|
52447
|
-
fallbackHref: (item) => _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
52620
|
+
fallbackHref: (item) => _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1328 => _1328.url]), () => ( null)),
|
|
52448
52621
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
|
|
52449
52622
|
render: (item, chatRef, opts) => renderRef(fetchedItemDisplayRef(item, chatRef), opts)
|
|
52450
52623
|
};
|
|
@@ -52517,7 +52690,7 @@ function programRegistryEntries() {
|
|
|
52517
52690
|
discuss: opts.discuss,
|
|
52518
52691
|
configKey: cfg.configKey,
|
|
52519
52692
|
label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
|
|
52520
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
52693
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1329 => _1329.extras, 'optionalAccess', _1330 => _1330.buildOgPlaceholderUrl, 'optionalCall', _1331 => _1331(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1332 => _1332.title]), () => ( "")))]), () => ( null))
|
|
52521
52694
|
}
|
|
52522
52695
|
)
|
|
52523
52696
|
}));
|
|
@@ -52538,7 +52711,7 @@ var ROADMAP_CARD_CONFIGS = {
|
|
|
52538
52711
|
// The card's destination IS the ClickUp deep link, derived from the
|
|
52539
52712
|
// task id post-fetch (the refs frame used to carry it).
|
|
52540
52713
|
noComposedHref: true,
|
|
52541
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
52714
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1333 => _1333.id]) != null ? clickupTaskUrl(String(item.id)) : null
|
|
52542
52715
|
}
|
|
52543
52716
|
};
|
|
52544
52717
|
function roadmapRegistryEntries() {
|
|
@@ -52580,8 +52753,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52580
52753
|
DeletedDataCard,
|
|
52581
52754
|
{
|
|
52582
52755
|
title: chatRef.title && chatRef.title !== chatRef.id ? chatRef.title : null,
|
|
52583
|
-
entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access',
|
|
52584
|
-
recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access',
|
|
52756
|
+
entityLabel: _nullishCoalesce(_optionalChain([chatRef, 'access', _1334 => _1334.metadata, 'optionalAccess', _1335 => _1335.entity_label]), () => ( null)),
|
|
52757
|
+
recoveryNote: _nullishCoalesce(_optionalChain([chatRef, 'access', _1336 => _1336.metadata, 'optionalAccess', _1337 => _1337.recovery_note]), () => ( null))
|
|
52585
52758
|
}
|
|
52586
52759
|
)
|
|
52587
52760
|
},
|
|
@@ -52595,7 +52768,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52595
52768
|
bareInline: true,
|
|
52596
52769
|
contentRefType: "faq",
|
|
52597
52770
|
noComposedHref: true,
|
|
52598
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
52771
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1338 => _1338.id]) != null ? `/faqs#${faqItemAnchor(item.id)}` : null,
|
|
52599
52772
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
|
|
52600
52773
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52601
52774
|
FaqChatCard,
|
|
@@ -52679,8 +52852,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52679
52852
|
chatRef,
|
|
52680
52853
|
isNewTab: opts.isNewTab,
|
|
52681
52854
|
discuss: opts.discuss,
|
|
52682
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
52683
|
-
hasEmbeddedVideo: _optionalChain([chatRef, 'access',
|
|
52855
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1339 => _1339.extras, 'optionalAccess', _1340 => _1340.buildOgPlaceholderUrl, 'optionalCall', _1341 => _1341(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1342 => _1342.title]), () => ( "")))]), () => ( null)),
|
|
52856
|
+
hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1343 => _1343.metadata, 'optionalAccess', _1344 => _1344.hasEmbeddedVideo]) === true
|
|
52684
52857
|
}
|
|
52685
52858
|
)
|
|
52686
52859
|
},
|
|
@@ -52696,7 +52869,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52696
52869
|
chatRef,
|
|
52697
52870
|
isNewTab: opts.isNewTab,
|
|
52698
52871
|
discuss: opts.discuss,
|
|
52699
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
52872
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1345 => _1345.extras, 'optionalAccess', _1346 => _1346.buildOgPlaceholderUrl, 'optionalCall', _1347 => _1347(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1348 => _1348.title]), () => ( "")))]), () => ( null))
|
|
52700
52873
|
}
|
|
52701
52874
|
)
|
|
52702
52875
|
},
|
|
@@ -52712,7 +52885,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52712
52885
|
chatRef,
|
|
52713
52886
|
isNewTab: opts.isNewTab,
|
|
52714
52887
|
discuss: opts.discuss,
|
|
52715
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
52888
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1349 => _1349.extras, 'optionalAccess', _1350 => _1350.buildOgPlaceholderUrl, 'optionalCall', _1351 => _1351(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1352 => _1352.title]), () => ( "")))]), () => ( null))
|
|
52716
52889
|
}
|
|
52717
52890
|
)
|
|
52718
52891
|
},
|
|
@@ -52722,7 +52895,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52722
52895
|
bareInline: true,
|
|
52723
52896
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
|
|
52724
52897
|
render: (item, chatRef, opts) => {
|
|
52725
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
52898
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1353 => _1353.extras, 'optionalAccess', _1354 => _1354.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
|
|
52726
52899
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52727
52900
|
ProductReleaseChatCard,
|
|
52728
52901
|
{
|
|
@@ -52748,7 +52921,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52748
52921
|
chatRef,
|
|
52749
52922
|
isNewTab: opts.isNewTab,
|
|
52750
52923
|
discuss: opts.discuss,
|
|
52751
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
52924
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1355 => _1355.extras, 'optionalAccess', _1356 => _1356.buildOgPlaceholderUrl, 'optionalCall', _1357 => _1357(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1358 => _1358.title]), () => ( "")))]), () => ( null))
|
|
52752
52925
|
}
|
|
52753
52926
|
)
|
|
52754
52927
|
},
|
|
@@ -52766,7 +52939,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52766
52939
|
chatRef,
|
|
52767
52940
|
isNewTab: opts.isNewTab,
|
|
52768
52941
|
discuss: opts.discuss,
|
|
52769
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
52942
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1359 => _1359.extras, 'optionalAccess', _1360 => _1360.buildOgPlaceholderUrl, 'optionalCall', _1361 => _1361(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1362 => _1362.title]), () => ( "")))]), () => ( null))
|
|
52770
52943
|
}
|
|
52771
52944
|
)
|
|
52772
52945
|
},
|
|
@@ -52777,7 +52950,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
52777
52950
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
|
|
52778
52951
|
// No public viewer — synthesize the hub-internal admin URL post-fetch
|
|
52779
52952
|
// so the wrapper + isNewTab computation see the actual destination.
|
|
52780
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
52953
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1363 => _1363.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
|
|
52781
52954
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52782
52955
|
CampaignChatCard,
|
|
52783
52956
|
{
|
|
@@ -52804,13 +52977,13 @@ function ChatCardNavWrap({
|
|
|
52804
52977
|
if (!href) return;
|
|
52805
52978
|
const targetEl = e.target;
|
|
52806
52979
|
const host = e.currentTarget;
|
|
52807
|
-
if (!_optionalChain([host, 'optionalAccess',
|
|
52808
|
-
if (_optionalChain([targetEl, 'optionalAccess',
|
|
52809
|
-
if (!_optionalChain([targetEl, 'optionalAccess',
|
|
52980
|
+
if (!_optionalChain([host, 'optionalAccess', _1364 => _1364.contains, 'call', _1365 => _1365(targetEl)])) return;
|
|
52981
|
+
if (_optionalChain([targetEl, 'optionalAccess', _1366 => _1366.closest, 'optionalCall', _1367 => _1367("button")])) return;
|
|
52982
|
+
if (!_optionalChain([targetEl, 'optionalAccess', _1368 => _1368.closest, 'optionalCall', _1369 => _1369("a")])) return;
|
|
52810
52983
|
const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
|
|
52811
52984
|
if (!handled) return;
|
|
52812
52985
|
e.stopPropagation();
|
|
52813
|
-
if (!isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
52986
|
+
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1370 => _1370.closeChat])) panel.closeChat();
|
|
52814
52987
|
};
|
|
52815
52988
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
|
|
52816
52989
|
}
|
|
@@ -52832,7 +53005,7 @@ function ChatCardLoader({
|
|
|
52832
53005
|
title: chatRef.title,
|
|
52833
53006
|
externalUrl: chatRef.url,
|
|
52834
53007
|
targetPlatform: chatRef.targetPlatform,
|
|
52835
|
-
path: typeof _optionalChain([chatRef, 'access',
|
|
53008
|
+
path: typeof _optionalChain([chatRef, 'access', _1371 => _1371.metadata, 'optionalAccess', _1372 => _1372.path]) === "string" ? chatRef.metadata.path : null
|
|
52836
53009
|
},
|
|
52837
53010
|
sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
|
|
52838
53011
|
);
|
|
@@ -52846,11 +53019,11 @@ function ChatCardLoader({
|
|
|
52846
53019
|
const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
|
|
52847
53020
|
const fetchEntry = entry && entry.contentRefType ? entry : null;
|
|
52848
53021
|
const { item, isLoading, isError, isFetched } = useChatCardItem(
|
|
52849
|
-
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess',
|
|
53022
|
+
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1373 => _1373.contentRefType]), () => ( "")),
|
|
52850
53023
|
fetchEntry ? resolvedChatRef.id : ""
|
|
52851
53024
|
);
|
|
52852
53025
|
if (!entry) return null;
|
|
52853
|
-
const composedHref = _optionalChain([fetchEntry, 'optionalAccess',
|
|
53026
|
+
const composedHref = _optionalChain([fetchEntry, 'optionalAccess', _1374 => _1374.contentRefType]) && !resolvedChatRef.url && item && !fetchEntry.fallbackHref && !fetchEntry.noComposedHref ? resolveFetchedCardHref({
|
|
52854
53027
|
contentRefType: fetchEntry.contentRefType,
|
|
52855
53028
|
id: resolvedChatRef.id,
|
|
52856
53029
|
item,
|
|
@@ -52889,7 +53062,7 @@ function ChatCardLoader({
|
|
|
52889
53062
|
isNewTab,
|
|
52890
53063
|
discuss
|
|
52891
53064
|
};
|
|
52892
|
-
const path = typeof _optionalChain([finalChatRef, 'access',
|
|
53065
|
+
const path = typeof _optionalChain([finalChatRef, 'access', _1375 => _1375.metadata, 'optionalAccess', _1376 => _1376.path]) === "string" ? finalChatRef.metadata.path : null;
|
|
52893
53066
|
const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
52894
53067
|
ChatCardNavWrap,
|
|
52895
53068
|
{
|
|
@@ -52913,7 +53086,7 @@ function ChatCardLoader({
|
|
|
52913
53086
|
if (!fetchEntry) {
|
|
52914
53087
|
return finish(entry.render(void 0, finalChatRef, renderOpts));
|
|
52915
53088
|
}
|
|
52916
|
-
if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access',
|
|
53089
|
+
if (isLoading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: _nullishCoalesce(_optionalChain([fetchEntry, 'access', _1377 => _1377.skeleton, 'optionalCall', _1378 => _1378()]), () => ( null)) });
|
|
52917
53090
|
if (!item) {
|
|
52918
53091
|
if (isError) {
|
|
52919
53092
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardLoadFailure, { label: entry.label, id: finalChatRef.id, detail: "Failed to load" });
|
|
@@ -53176,7 +53349,7 @@ function useChunkCatchup({
|
|
|
53176
53349
|
console.error("Error during chunk catchup:", error);
|
|
53177
53350
|
} finally {
|
|
53178
53351
|
if (dialogId2 !== dialogIdRef.current) {
|
|
53179
|
-
if (_optionalChain([pendingCatchupRef, 'access',
|
|
53352
|
+
if (_optionalChain([pendingCatchupRef, 'access', _1379 => _1379.current, 'optionalAccess', _1380 => _1380.dialogId]) === dialogId2) {
|
|
53180
53353
|
pendingCatchupRef.current = null;
|
|
53181
53354
|
}
|
|
53182
53355
|
} else {
|
|
@@ -53189,7 +53362,7 @@ function useChunkCatchup({
|
|
|
53189
53362
|
lastFetchParams.current = null;
|
|
53190
53363
|
bufferUntilInitialCatchupComplete.current = true;
|
|
53191
53364
|
try {
|
|
53192
|
-
await _optionalChain([catchUpChunksRef, 'access',
|
|
53365
|
+
await _optionalChain([catchUpChunksRef, 'access', _1381 => _1381.current, 'optionalCall', _1382 => _1382(pending.fromSequenceId)]);
|
|
53193
53366
|
} catch (rerunError) {
|
|
53194
53367
|
console.error("Queued catch-up re-run failed:", rerunError);
|
|
53195
53368
|
}
|
|
@@ -53253,7 +53426,7 @@ function useChunkCatchup({
|
|
|
53253
53426
|
|
|
53254
53427
|
var EMPTY_FRAME = { messages: [], phase: "idle", typing: false, delayMs: 0 };
|
|
53255
53428
|
function prefersReducedMotion() {
|
|
53256
|
-
return typeof window !== "undefined" && _optionalChain([window, 'access',
|
|
53429
|
+
return typeof window !== "undefined" && _optionalChain([window, 'access', _1383 => _1383.matchMedia, 'optionalCall', _1384 => _1384("(prefers-reduced-motion: reduce)"), 'access', _1385 => _1385.matches]) === true;
|
|
53257
53430
|
}
|
|
53258
53431
|
function useScriptedStream(frames, resetKey, enabled = true) {
|
|
53259
53432
|
const [index, setIndex] = _react.useState.call(void 0, 0);
|
|
@@ -53265,7 +53438,7 @@ function useScriptedStream(frames, resetKey, enabled = true) {
|
|
|
53265
53438
|
}
|
|
53266
53439
|
_react.useEffect.call(void 0, () => {
|
|
53267
53440
|
setReducedMotion(prefersReducedMotion());
|
|
53268
|
-
const mq = _optionalChain([window, 'access',
|
|
53441
|
+
const mq = _optionalChain([window, 'access', _1386 => _1386.matchMedia, 'optionalCall', _1387 => _1387("(prefers-reduced-motion: reduce)")]);
|
|
53269
53442
|
if (!mq) return;
|
|
53270
53443
|
const onChange = () => setReducedMotion(mq.matches);
|
|
53271
53444
|
mq.addEventListener("change", onChange);
|
|
@@ -53401,7 +53574,7 @@ function useJetStreamDialogSubscription({
|
|
|
53401
53574
|
const lifecycle = _chunkKQKU4VXBcjs.startConnectionLifecycle.call(void 0, {
|
|
53402
53575
|
conn: sharedConn,
|
|
53403
53576
|
wsUrl,
|
|
53404
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
53577
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1388 => _1388.current, 'optionalCall', _1389 => _1389()]),
|
|
53405
53578
|
backoff: reconnectionBackoffRef.current,
|
|
53406
53579
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
53407
53580
|
// JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
|
|
@@ -53416,7 +53589,7 @@ function useJetStreamDialogSubscription({
|
|
|
53416
53589
|
setReconnectionCount((c) => c + 1);
|
|
53417
53590
|
}
|
|
53418
53591
|
hadConnectionBeforeRef.current = true;
|
|
53419
|
-
_optionalChain([onConnectRef, 'access',
|
|
53592
|
+
_optionalChain([onConnectRef, 'access', _1390 => _1390.current, 'optionalCall', _1391 => _1391()]);
|
|
53420
53593
|
}
|
|
53421
53594
|
if (status === "error") {
|
|
53422
53595
|
console.warn("[JetStream] NATS protocol error:", evt.data);
|
|
@@ -53426,7 +53599,7 @@ function useJetStreamDialogSubscription({
|
|
|
53426
53599
|
setIsConnected(false);
|
|
53427
53600
|
setIsSubscribed(false);
|
|
53428
53601
|
tearDownSubscription();
|
|
53429
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
53602
|
+
_optionalChain([onDisconnectRef, 'access', _1392 => _1392.current, 'optionalCall', _1393 => _1393()]);
|
|
53430
53603
|
}
|
|
53431
53604
|
}
|
|
53432
53605
|
});
|
|
@@ -53555,7 +53728,7 @@ function useJetStreamDialogSubscription({
|
|
|
53555
53728
|
}
|
|
53556
53729
|
subscriptionRef.current = handle;
|
|
53557
53730
|
setIsSubscribed(true);
|
|
53558
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
53731
|
+
_optionalChain([onSubscribedRef, 'access', _1394 => _1394.current, 'optionalCall', _1395 => _1395()]);
|
|
53559
53732
|
} catch (e90) {
|
|
53560
53733
|
if (!cancelled) {
|
|
53561
53734
|
setIsSubscribed(false);
|
|
@@ -53669,20 +53842,20 @@ function useNatsDialogSubscription({
|
|
|
53669
53842
|
const tearDownSubscriptions = () => {
|
|
53670
53843
|
subscriptionRefs.current.forEach((sub) => {
|
|
53671
53844
|
try {
|
|
53672
|
-
_optionalChain([sub, 'optionalAccess',
|
|
53845
|
+
_optionalChain([sub, 'optionalAccess', _1396 => _1396.unsubscribe, 'call', _1397 => _1397()]);
|
|
53673
53846
|
} catch (e92) {
|
|
53674
53847
|
}
|
|
53675
53848
|
});
|
|
53676
53849
|
subscriptionRefs.current.clear();
|
|
53677
53850
|
lastSubscribedDialogIdRef.current = null;
|
|
53678
|
-
_optionalChain([abortControllerRef, 'access',
|
|
53851
|
+
_optionalChain([abortControllerRef, 'access', _1398 => _1398.current, 'optionalAccess', _1399 => _1399.abort, 'call', _1400 => _1400()]);
|
|
53679
53852
|
abortControllerRef.current = null;
|
|
53680
53853
|
};
|
|
53681
53854
|
const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
|
|
53682
53855
|
const lifecycle = _chunkKQKU4VXBcjs.startConnectionLifecycle.call(void 0, {
|
|
53683
53856
|
conn: sharedConn,
|
|
53684
53857
|
wsUrl,
|
|
53685
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
53858
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1401 => _1401.current, 'optionalCall', _1402 => _1402()]),
|
|
53686
53859
|
backoff: reconnectionBackoffRef.current,
|
|
53687
53860
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
53688
53861
|
shouldRetryOn: isDisconnectStatus,
|
|
@@ -53693,7 +53866,7 @@ function useNatsDialogSubscription({
|
|
|
53693
53866
|
setReconnectionCount((c) => c + 1);
|
|
53694
53867
|
}
|
|
53695
53868
|
hadConnectionBeforeRef.current = true;
|
|
53696
|
-
_optionalChain([onConnectRef, 'access',
|
|
53869
|
+
_optionalChain([onConnectRef, 'access', _1403 => _1403.current, 'optionalCall', _1404 => _1404()]);
|
|
53697
53870
|
}
|
|
53698
53871
|
if (status === "error") {
|
|
53699
53872
|
console.warn("[NATS] protocol error:", evt.data);
|
|
@@ -53703,7 +53876,7 @@ function useNatsDialogSubscription({
|
|
|
53703
53876
|
setIsConnected(false);
|
|
53704
53877
|
setIsSubscribed(false);
|
|
53705
53878
|
tearDownSubscriptions();
|
|
53706
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
53879
|
+
_optionalChain([onDisconnectRef, 'access', _1405 => _1405.current, 'optionalCall', _1406 => _1406()]);
|
|
53707
53880
|
}
|
|
53708
53881
|
}
|
|
53709
53882
|
});
|
|
@@ -53736,13 +53909,13 @@ function useNatsDialogSubscription({
|
|
|
53736
53909
|
setIsSubscribed(false);
|
|
53737
53910
|
subscriptionRefs.current.forEach((sub) => {
|
|
53738
53911
|
try {
|
|
53739
|
-
_optionalChain([sub, 'optionalAccess',
|
|
53912
|
+
_optionalChain([sub, 'optionalAccess', _1407 => _1407.unsubscribe, 'call', _1408 => _1408()]);
|
|
53740
53913
|
} catch (e93) {
|
|
53741
53914
|
}
|
|
53742
53915
|
});
|
|
53743
53916
|
subscriptionRefs.current.clear();
|
|
53744
53917
|
lastSubscribedDialogIdRef.current = null;
|
|
53745
|
-
_optionalChain([abortControllerRef, 'access',
|
|
53918
|
+
_optionalChain([abortControllerRef, 'access', _1409 => _1409.current, 'optionalAccess', _1410 => _1410.abort, 'call', _1411 => _1411()]);
|
|
53746
53919
|
abortControllerRef.current = null;
|
|
53747
53920
|
}
|
|
53748
53921
|
return;
|
|
@@ -53754,12 +53927,12 @@ function useNatsDialogSubscription({
|
|
|
53754
53927
|
if (subscriptionRefs.current.size > 0) {
|
|
53755
53928
|
subscriptionRefs.current.forEach((sub) => {
|
|
53756
53929
|
try {
|
|
53757
|
-
_optionalChain([sub, 'optionalAccess',
|
|
53930
|
+
_optionalChain([sub, 'optionalAccess', _1412 => _1412.unsubscribe, 'call', _1413 => _1413()]);
|
|
53758
53931
|
} catch (e94) {
|
|
53759
53932
|
}
|
|
53760
53933
|
});
|
|
53761
53934
|
subscriptionRefs.current.clear();
|
|
53762
|
-
_optionalChain([abortControllerRef, 'access',
|
|
53935
|
+
_optionalChain([abortControllerRef, 'access', _1414 => _1414.current, 'optionalAccess', _1415 => _1415.abort, 'call', _1416 => _1416()]);
|
|
53763
53936
|
}
|
|
53764
53937
|
abortControllerRef.current = new AbortController();
|
|
53765
53938
|
const abort = abortControllerRef.current;
|
|
@@ -53791,7 +53964,7 @@ function useNatsDialogSubscription({
|
|
|
53791
53964
|
});
|
|
53792
53965
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
53793
53966
|
setIsSubscribed(true);
|
|
53794
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
53967
|
+
_optionalChain([onSubscribedRef, 'access', _1417 => _1417.current, 'optionalCall', _1418 => _1418()]);
|
|
53795
53968
|
};
|
|
53796
53969
|
if (isConnectedRef.current) {
|
|
53797
53970
|
createSubscriptions();
|
|
@@ -53801,7 +53974,7 @@ function useNatsDialogSubscription({
|
|
|
53801
53974
|
abort.abort();
|
|
53802
53975
|
subscriptionRefs.current.forEach((sub) => {
|
|
53803
53976
|
try {
|
|
53804
|
-
_optionalChain([sub, 'optionalAccess',
|
|
53977
|
+
_optionalChain([sub, 'optionalAccess', _1419 => _1419.unsubscribe, 'call', _1420 => _1420()]);
|
|
53805
53978
|
} catch (e96) {
|
|
53806
53979
|
}
|
|
53807
53980
|
});
|
|
@@ -53842,7 +54015,7 @@ function useNatsDialogSubscription({
|
|
|
53842
54015
|
});
|
|
53843
54016
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
53844
54017
|
setIsSubscribed(true);
|
|
53845
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
54018
|
+
_optionalChain([onSubscribedRef, 'access', _1421 => _1421.current, 'optionalCall', _1422 => _1422()]);
|
|
53846
54019
|
} else if (subscriptionRefs.current.size > 0) {
|
|
53847
54020
|
setIsSubscribed(true);
|
|
53848
54021
|
}
|
|
@@ -53850,10 +54023,10 @@ function useNatsDialogSubscription({
|
|
|
53850
54023
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
53851
54024
|
}
|
|
53852
54025
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
53853
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
54026
|
+
const path = _optionalChain([options, 'optionalAccess', _1423 => _1423.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
53854
54027
|
const u = new URL(path, apiBaseUrl);
|
|
53855
54028
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
53856
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
54029
|
+
if (_optionalChain([options, 'optionalAccess', _1424 => _1424.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1425 => _1425.token])) {
|
|
53857
54030
|
u.searchParams.set("authorization", options.token);
|
|
53858
54031
|
}
|
|
53859
54032
|
return u.toString();
|
|
@@ -53871,7 +54044,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
|
|
|
53871
54044
|
const data = await res.json();
|
|
53872
54045
|
return _nullishCoalesce(data.commands, () => ( []));
|
|
53873
54046
|
} catch (err) {
|
|
53874
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
54047
|
+
if (_optionalChain([err, 'optionalAccess', _1426 => _1426.name]) === "AbortError") throw err;
|
|
53875
54048
|
console.warn("[chat] slash-commands fetch failed, showing none:", err);
|
|
53876
54049
|
return [];
|
|
53877
54050
|
}
|
|
@@ -53892,7 +54065,7 @@ function useSlashCommands(prefix, commandsUrl) {
|
|
|
53892
54065
|
const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
|
|
53893
54066
|
if (!cancelled) setCommands(next);
|
|
53894
54067
|
} catch (err) {
|
|
53895
|
-
if (!cancelled && _optionalChain([err, 'optionalAccess',
|
|
54068
|
+
if (!cancelled && _optionalChain([err, 'optionalAccess', _1427 => _1427.name]) !== "AbortError") {
|
|
53896
54069
|
console.warn("[use-slash-commands] fetch failed:", err);
|
|
53897
54070
|
}
|
|
53898
54071
|
} finally {
|
|
@@ -53911,7 +54084,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
|
|
|
53911
54084
|
const query = _reactquery.useQuery.call(void 0, {
|
|
53912
54085
|
queryKey: ["chat-slash-commands", commandsUrl],
|
|
53913
54086
|
queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
|
|
53914
|
-
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
54087
|
+
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1428 => _1428.enabled]), () => ( true)),
|
|
53915
54088
|
staleTime: Infinity,
|
|
53916
54089
|
gcTime: Infinity,
|
|
53917
54090
|
// The commands registry is non-critical chrome — a failure degrades to an
|
|
@@ -53950,21 +54123,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
|
|
|
53950
54123
|
}
|
|
53951
54124
|
const data = await res.json();
|
|
53952
54125
|
return {
|
|
53953
|
-
name: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
53954
|
-
icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
53955
|
-
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
53956
|
-
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
53957
|
-
quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
53958
|
-
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
54126
|
+
name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1429 => _1429.name]), () => ( null)),
|
|
54127
|
+
icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1430 => _1430.icon]), () => ( null)),
|
|
54128
|
+
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1431 => _1431.greeting]), () => ( null)),
|
|
54129
|
+
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1432 => _1432.enabledRagTableIds]), () => ( [])),
|
|
54130
|
+
quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1433 => _1433.quickActions]), () => ( [])),
|
|
54131
|
+
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1434 => _1434.suggestedQueries]), () => ( []))
|
|
53959
54132
|
};
|
|
53960
54133
|
} catch (err) {
|
|
53961
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
54134
|
+
if (_optionalChain([err, 'optionalAccess', _1435 => _1435.name]) === "AbortError") throw err;
|
|
53962
54135
|
console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
|
|
53963
54136
|
return EMPTY_STATE_FALLBACK;
|
|
53964
54137
|
}
|
|
53965
54138
|
}
|
|
53966
54139
|
function useEmptyStateConfig(emptyStateUrl, options) {
|
|
53967
|
-
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
54140
|
+
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1436 => _1436.enabled]), () => ( true))) && !!emptyStateUrl;
|
|
53968
54141
|
const query = _reactquery.useQuery.call(void 0, {
|
|
53969
54142
|
queryKey: ["chat-empty-state", emptyStateUrl],
|
|
53970
54143
|
queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
|
|
@@ -53993,7 +54166,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
|
|
|
53993
54166
|
var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
|
|
53994
54167
|
function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
53995
54168
|
return new Promise((resolve, reject) => {
|
|
53996
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
54169
|
+
if (_optionalChain([signal, 'optionalAccess', _1437 => _1437.aborted])) {
|
|
53997
54170
|
reject(new Error("Upload cancelled"));
|
|
53998
54171
|
return;
|
|
53999
54172
|
}
|
|
@@ -54007,7 +54180,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
54007
54180
|
xhr.removeEventListener("error", handleError);
|
|
54008
54181
|
xhr.removeEventListener("abort", handleAbort);
|
|
54009
54182
|
xhr.removeEventListener("timeout", handleTimeout);
|
|
54010
|
-
_optionalChain([signal, 'optionalAccess',
|
|
54183
|
+
_optionalChain([signal, 'optionalAccess', _1438 => _1438.removeEventListener, 'call', _1439 => _1439("abort", handleSignalAbort)]);
|
|
54011
54184
|
if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
|
|
54012
54185
|
};
|
|
54013
54186
|
const handleProgress = (event) => {
|
|
@@ -54043,7 +54216,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
54043
54216
|
const handleSignalAbort = () => {
|
|
54044
54217
|
xhr.abort();
|
|
54045
54218
|
};
|
|
54046
|
-
_optionalChain([signal, 'optionalAccess',
|
|
54219
|
+
_optionalChain([signal, 'optionalAccess', _1440 => _1440.addEventListener, 'call', _1441 => _1441("abort", handleSignalAbort, { once: true })]);
|
|
54047
54220
|
xhr.upload.addEventListener("progress", handleProgress);
|
|
54048
54221
|
xhr.addEventListener("load", handleLoad);
|
|
54049
54222
|
xhr.addEventListener("error", handleError);
|
|
@@ -54087,12 +54260,12 @@ function useChatAttachments() {
|
|
|
54087
54260
|
try {
|
|
54088
54261
|
sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
|
|
54089
54262
|
} catch (err) {
|
|
54090
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
54263
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1442 => _1442.signal, 'access', _1443 => _1443.aborted])) return;
|
|
54091
54264
|
throw new Error(
|
|
54092
54265
|
`Could not read file content: ${err instanceof Error ? err.message : String(err)}`
|
|
54093
54266
|
);
|
|
54094
54267
|
}
|
|
54095
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
54268
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1444 => _1444.signal, 'access', _1445 => _1445.aborted])) return;
|
|
54096
54269
|
if (!sniffed) {
|
|
54097
54270
|
throw new Error("Unrecognized file format");
|
|
54098
54271
|
}
|
|
@@ -54106,7 +54279,7 @@ function useChatAttachments() {
|
|
|
54106
54279
|
const urlResp = await _chunk5RJUHUCIcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
|
|
54107
54280
|
method: "POST",
|
|
54108
54281
|
headers: { "Content-Type": "application/json" },
|
|
54109
|
-
signal: _optionalChain([ctrl, 'optionalAccess',
|
|
54282
|
+
signal: _optionalChain([ctrl, 'optionalAccess', _1446 => _1446.signal]),
|
|
54110
54283
|
body: JSON.stringify({
|
|
54111
54284
|
fileName: att.file.name,
|
|
54112
54285
|
// Pass the SNIFFED MIME (not `file.type`, which can be a
|
|
@@ -54132,9 +54305,9 @@ function useChatAttachments() {
|
|
|
54132
54305
|
(pct) => {
|
|
54133
54306
|
updateOne(att.id, { progress: pct });
|
|
54134
54307
|
},
|
|
54135
|
-
_optionalChain([ctrl, 'optionalAccess',
|
|
54308
|
+
_optionalChain([ctrl, 'optionalAccess', _1447 => _1447.signal])
|
|
54136
54309
|
);
|
|
54137
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
54310
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1448 => _1448.signal, 'access', _1449 => _1449.aborted])) return;
|
|
54138
54311
|
updateOne(att.id, {
|
|
54139
54312
|
status: "ready",
|
|
54140
54313
|
progress: 100,
|
|
@@ -54142,7 +54315,7 @@ function useChatAttachments() {
|
|
|
54142
54315
|
viewToken: mintData.viewToken
|
|
54143
54316
|
});
|
|
54144
54317
|
} catch (err) {
|
|
54145
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
54318
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1450 => _1450.signal, 'access', _1451 => _1451.aborted])) return;
|
|
54146
54319
|
const message2 = err instanceof Error ? err.message : String(err);
|
|
54147
54320
|
updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
|
|
54148
54321
|
} finally {
|
|
@@ -54329,7 +54502,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
|
|
|
54329
54502
|
yield chunk;
|
|
54330
54503
|
}
|
|
54331
54504
|
} catch (err) {
|
|
54332
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
54505
|
+
if (_optionalChain([err, 'optionalAccess', _1452 => _1452.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
54333
54506
|
return;
|
|
54334
54507
|
}
|
|
54335
54508
|
const errorMessage = err instanceof Error ? err.message : "An error occurred";
|
|
@@ -54380,7 +54553,7 @@ function useChat({
|
|
|
54380
54553
|
const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
|
|
54381
54554
|
onMessagesChangeRef.current = onMessagesChange;
|
|
54382
54555
|
_react.useEffect.call(void 0, () => {
|
|
54383
|
-
_optionalChain([onMessagesChangeRef, 'access',
|
|
54556
|
+
_optionalChain([onMessagesChangeRef, 'access', _1453 => _1453.current, 'optionalCall', _1454 => _1454(messages)]);
|
|
54384
54557
|
}, [messages]);
|
|
54385
54558
|
const {
|
|
54386
54559
|
streamMessage,
|
|
@@ -54417,7 +54590,7 @@ function useChat({
|
|
|
54417
54590
|
name: "You",
|
|
54418
54591
|
content: text,
|
|
54419
54592
|
timestamp: /* @__PURE__ */ new Date(),
|
|
54420
|
-
..._optionalChain([options, 'optionalAccess',
|
|
54593
|
+
..._optionalChain([options, 'optionalAccess', _1455 => _1455.hidden]) ? { hidden: true } : {}
|
|
54421
54594
|
};
|
|
54422
54595
|
addMessage(userMessage);
|
|
54423
54596
|
setIsTyping(true);
|
|
@@ -54479,7 +54652,7 @@ function useChat({
|
|
|
54479
54652
|
currentTextSegment = "";
|
|
54480
54653
|
}
|
|
54481
54654
|
const seg = segment;
|
|
54482
|
-
const proposalId = _optionalChain([seg, 'access',
|
|
54655
|
+
const proposalId = _optionalChain([seg, 'access', _1456 => _1456.data, 'optionalAccess', _1457 => _1457.requestId]);
|
|
54483
54656
|
const updateApprovalMessage = (transform) => {
|
|
54484
54657
|
setMessages((prev) => {
|
|
54485
54658
|
for (let i = prev.length - 1; i >= 0; i--) {
|
|
@@ -54488,7 +54661,7 @@ function useChat({
|
|
|
54488
54661
|
if (!Array.isArray(m.content)) continue;
|
|
54489
54662
|
const segments = m.content;
|
|
54490
54663
|
const hasMatch = segments.some(
|
|
54491
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
54664
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1458 => _1458.data, 'optionalAccess', _1459 => _1459.requestId]) === proposalId
|
|
54492
54665
|
);
|
|
54493
54666
|
if (!hasMatch) continue;
|
|
54494
54667
|
const next = [...prev];
|
|
@@ -54530,11 +54703,11 @@ function useChat({
|
|
|
54530
54703
|
if (!Array.isArray(m.content)) continue;
|
|
54531
54704
|
const segments = m.content;
|
|
54532
54705
|
const hasMatch = segments.some(
|
|
54533
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
54706
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1460 => _1460.data, 'optionalAccess', _1461 => _1461.requestId]) === decision.proposalId
|
|
54534
54707
|
);
|
|
54535
54708
|
if (!hasMatch) continue;
|
|
54536
54709
|
const flipped = segments.map(
|
|
54537
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
54710
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1462 => _1462.data, 'optionalAccess', _1463 => _1463.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
|
|
54538
54711
|
);
|
|
54539
54712
|
const next = [...prev];
|
|
54540
54713
|
next[i] = { ...m, content: flipped };
|
|
@@ -54662,7 +54835,7 @@ function buildConfirmToolBody(request) {
|
|
|
54662
54835
|
async function readServerErrorMessage(response) {
|
|
54663
54836
|
try {
|
|
54664
54837
|
const body = await response.json();
|
|
54665
|
-
if (typeof _optionalChain([body, 'optionalAccess',
|
|
54838
|
+
if (typeof _optionalChain([body, 'optionalAccess', _1464 => _1464.error]) === "string" && body.error.length > 0) return body.error;
|
|
54666
54839
|
} catch (e98) {
|
|
54667
54840
|
}
|
|
54668
54841
|
return null;
|
|
@@ -54883,7 +55056,7 @@ var STORAGE_KEY2 = "conversation";
|
|
|
54883
55056
|
var namespaceFor = (source) => {
|
|
54884
55057
|
const base = `mingo-chat-${source}`;
|
|
54885
55058
|
const auth = _chunk5RJUHUCIcjs.getEmbedProxyAuth.call(void 0, );
|
|
54886
|
-
return _optionalChain([auth, 'optionalAccess',
|
|
55059
|
+
return _optionalChain([auth, 'optionalAccess', _1465 => _1465.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
|
|
54887
55060
|
};
|
|
54888
55061
|
function createChatConversationStorage(source) {
|
|
54889
55062
|
return _chunk5RJUHUCIcjs.createLocalStorageAdapter.call(void 0, {
|
|
@@ -54945,8 +55118,8 @@ function useChatHistoryHydration({
|
|
|
54945
55118
|
);
|
|
54946
55119
|
if (!res.ok) return;
|
|
54947
55120
|
const payload = await res.json().catch(() => null);
|
|
54948
|
-
const body = _nullishCoalesce(_optionalChain([payload, 'optionalAccess',
|
|
54949
|
-
const rows = Array.isArray(_optionalChain([body, 'optionalAccess',
|
|
55121
|
+
const body = _nullishCoalesce(_optionalChain([payload, 'optionalAccess', _1466 => _1466.data]), () => ( payload));
|
|
55122
|
+
const rows = Array.isArray(_optionalChain([body, 'optionalAccess', _1467 => _1467.messages])) ? body.messages : [];
|
|
54950
55123
|
if (cancelled || rows.length === 0) return;
|
|
54951
55124
|
const hydrated = [];
|
|
54952
55125
|
const sourcesSeed = /* @__PURE__ */ new Map();
|
|
@@ -55034,6 +55207,8 @@ function upsertKey(seg) {
|
|
|
55034
55207
|
return `offer:${seg.data.offerId}`;
|
|
55035
55208
|
case "ticket_escalated":
|
|
55036
55209
|
return `escalated:${seg.data.ticketId}`;
|
|
55210
|
+
case "ticket_event":
|
|
55211
|
+
return seg.streamSeq !== void 0 ? `ticket-event:${seg.streamSeq}` : null;
|
|
55037
55212
|
default:
|
|
55038
55213
|
return null;
|
|
55039
55214
|
}
|
|
@@ -55051,11 +55226,11 @@ function appendToTrailingAssistant(prev, segments) {
|
|
|
55051
55226
|
for (const seg of segments) {
|
|
55052
55227
|
const tail = merged[merged.length - 1];
|
|
55053
55228
|
const key = upsertKey(seg);
|
|
55054
|
-
if (seg.type === "text" && _optionalChain([tail, 'optionalAccess',
|
|
55229
|
+
if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _1468 => _1468.type]) === "text") {
|
|
55055
55230
|
merged[merged.length - 1] = { type: "text", text: tail.text + seg.text };
|
|
55056
|
-
} else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess',
|
|
55231
|
+
} else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _1469 => _1469.type]) === "thinking") {
|
|
55057
55232
|
merged[merged.length - 1] = { type: "thinking", text: tail.text + seg.text };
|
|
55058
|
-
} else if (seg.type === "guide" && _optionalChain([tail, 'optionalAccess',
|
|
55233
|
+
} else if (seg.type === "guide" && _optionalChain([tail, 'optionalAccess', _1470 => _1470.type]) === "guide") {
|
|
55059
55234
|
merged[merged.length - 1] = { type: "guide", text: tail.text + seg.text };
|
|
55060
55235
|
} else if (key) {
|
|
55061
55236
|
const idx = merged.findIndex((m) => upsertKey(m) === key);
|
|
@@ -55095,7 +55270,7 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
|
|
|
55095
55270
|
}
|
|
55096
55271
|
if (s.type !== "approval_batch") return s;
|
|
55097
55272
|
const isAnchor = s.data.approvalRequestId === requestId;
|
|
55098
|
-
const hasRow = _optionalChain([s, 'access',
|
|
55273
|
+
const hasRow = _optionalChain([s, 'access', _1471 => _1471.data, 'access', _1472 => _1472.toolCalls, 'optionalAccess', _1473 => _1473.some, 'call', _1474 => _1474((c) => c.toolExecutionRequestId === requestId)]);
|
|
55099
55274
|
if (!isAnchor && !hasRow) return s;
|
|
55100
55275
|
const nextResolvedBy = _nullishCoalesce(resolvedByName, () => ( s.resolvedByName));
|
|
55101
55276
|
const nextExecutions = hasRow ? {
|
|
@@ -55117,8 +55292,8 @@ function applyApprovalStatusToSegment(s, requestId, status, resolvedByName) {
|
|
|
55117
55292
|
};
|
|
55118
55293
|
}
|
|
55119
55294
|
function nextBatchExecution(prevExec, toolData) {
|
|
55120
|
-
if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess',
|
|
55121
|
-
return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess',
|
|
55295
|
+
if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _1475 => _1475.status]) === "done") return null;
|
|
55296
|
+
return toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _1476 => _1476.result]), success: _optionalChain([prevExec, 'optionalAccess', _1477 => _1477.success]) };
|
|
55122
55297
|
}
|
|
55123
55298
|
function withBatchExecution(seg, execId, state) {
|
|
55124
55299
|
return {
|
|
@@ -55135,11 +55310,11 @@ function projectBatchStatusToMessages(prev, anchorId, status) {
|
|
|
55135
55310
|
}
|
|
55136
55311
|
function projectBatchRowFailureToMessages(prev, rowRequestId) {
|
|
55137
55312
|
return mapSegments(prev, (s) => {
|
|
55138
|
-
if (s.type !== "approval_batch" || !_optionalChain([s, 'access',
|
|
55313
|
+
if (s.type !== "approval_batch" || !_optionalChain([s, 'access', _1478 => _1478.data, 'access', _1479 => _1479.toolCalls, 'optionalAccess', _1480 => _1480.some, 'call', _1481 => _1481((c) => c.toolExecutionRequestId === rowRequestId)])) {
|
|
55139
55314
|
return s;
|
|
55140
55315
|
}
|
|
55141
|
-
const existing = _optionalChain([s, 'access',
|
|
55142
|
-
if (_optionalChain([existing, 'optionalAccess',
|
|
55316
|
+
const existing = _optionalChain([s, 'access', _1482 => _1482.data, 'access', _1483 => _1483.executions, 'optionalAccess', _1484 => _1484[rowRequestId]]);
|
|
55317
|
+
if (_optionalChain([existing, 'optionalAccess', _1485 => _1485.status]) === "done") return s;
|
|
55143
55318
|
return withBatchExecution(s, rowRequestId, { status: "done", success: false });
|
|
55144
55319
|
});
|
|
55145
55320
|
}
|
|
@@ -55178,7 +55353,7 @@ function mergeToolExecutionIfPresent(prev, segment) {
|
|
|
55178
55353
|
for (let j = message2.segments.length - 1; j >= 0; j--) {
|
|
55179
55354
|
const seg = message2.segments[j];
|
|
55180
55355
|
if (execId && seg.type === "approval_batch" && seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId)) {
|
|
55181
|
-
const prevExec = _optionalChain([seg, 'access',
|
|
55356
|
+
const prevExec = _optionalChain([seg, 'access', _1486 => _1486.data, 'access', _1487 => _1487.executions, 'optionalAccess', _1488 => _1488[execId]]);
|
|
55182
55357
|
const nextExec = nextBatchExecution(prevExec, toolData);
|
|
55183
55358
|
if (nextExec === null) return prev;
|
|
55184
55359
|
if (sameExecutionState(prevExec, nextExec)) return prev;
|
|
@@ -55367,9 +55542,9 @@ var MessageSegmentAccumulator = class {
|
|
|
55367
55542
|
type: "tool_execution",
|
|
55368
55543
|
data: {
|
|
55369
55544
|
...toolData,
|
|
55370
|
-
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
55371
|
-
toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
55372
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
55545
|
+
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1489 => _1489.data, 'access', _1490 => _1490.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1491 => _1491.toolTitle]))),
|
|
55546
|
+
toolExplanation: _nullishCoalesce(_nullishCoalesce(toolData.toolExplanation, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1492 => _1492.data, 'access', _1493 => _1493.toolExplanation]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1494 => _1494.toolExplanation]))),
|
|
55547
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1495 => _1495.parameters])
|
|
55373
55548
|
}
|
|
55374
55549
|
};
|
|
55375
55550
|
if (existingIndex !== -1) {
|
|
@@ -55393,7 +55568,7 @@ var MessageSegmentAccumulator = class {
|
|
|
55393
55568
|
if (seg.type !== "approval_batch") return seg;
|
|
55394
55569
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
55395
55570
|
if (!hasCall) return seg;
|
|
55396
|
-
const prev = _optionalChain([seg, 'access',
|
|
55571
|
+
const prev = _optionalChain([seg, 'access', _1496 => _1496.data, 'access', _1497 => _1497.executions, 'optionalAccess', _1498 => _1498[execId]]);
|
|
55397
55572
|
const next = nextBatchExecution(prev, toolData);
|
|
55398
55573
|
matched = true;
|
|
55399
55574
|
if (next === null) return seg;
|
|
@@ -55535,8 +55710,8 @@ var MessageSegmentAccumulator = class {
|
|
|
55535
55710
|
requestId,
|
|
55536
55711
|
{
|
|
55537
55712
|
...pendingApproval,
|
|
55538
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
55539
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
55713
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _1499 => _1499.command]) || "",
|
|
55714
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1500 => _1500.approvalType]) || approvalType
|
|
55540
55715
|
},
|
|
55541
55716
|
status
|
|
55542
55717
|
);
|
|
@@ -55561,9 +55736,9 @@ var MessageSegmentAccumulator = class {
|
|
|
55561
55736
|
type: "escalation_offer",
|
|
55562
55737
|
// The resolved chunk carries no text/origin — a redelivered offer must
|
|
55563
55738
|
// not blank the card the PENDING chunk already painted.
|
|
55564
|
-
data: { offerId, text: text || _optionalChain([existing, 'optionalAccess',
|
|
55739
|
+
data: { offerId, text: text || _optionalChain([existing, 'optionalAccess', _1501 => _1501.data, 'access', _1502 => _1502.text]) || "", origin: _nullishCoalesce(origin, () => ( _optionalChain([existing, 'optionalAccess', _1503 => _1503.data, 'access', _1504 => _1504.origin]))) },
|
|
55565
55740
|
status,
|
|
55566
|
-
resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess',
|
|
55741
|
+
resolvedByName: _nullishCoalesce(resolvedByName, () => ( _optionalChain([existing, 'optionalAccess', _1505 => _1505.resolvedByName]))),
|
|
55567
55742
|
onApprove: this.callbacks.onEscalationApprove,
|
|
55568
55743
|
onReject: this.callbacks.onEscalationReject
|
|
55569
55744
|
};
|
|
@@ -55590,6 +55765,35 @@ var MessageSegmentAccumulator = class {
|
|
|
55590
55765
|
this.segments.push(segment);
|
|
55591
55766
|
return this.getSegments();
|
|
55592
55767
|
}
|
|
55768
|
+
/**
|
|
55769
|
+
* Add a ticket lifecycle receipt (resolved / reopened / unknown kind).
|
|
55770
|
+
*
|
|
55771
|
+
* Upsert identity is the chunk's stream sequence when BOTH sides know it;
|
|
55772
|
+
* otherwise full payload equality. History-hydrated segments come back
|
|
55773
|
+
* seq-less (the persisted row's seq lives on the message, not the
|
|
55774
|
+
* `messageData`), so a JetStream catch-up redelivery of the same event must
|
|
55775
|
+
* still match its hydrated twin — payload equality is what catches that.
|
|
55776
|
+
* Two genuinely distinct events (resolve → reopen → resolve) differ in seq
|
|
55777
|
+
* or payload and both render.
|
|
55778
|
+
*/
|
|
55779
|
+
addTicketEvent(data, streamSeq) {
|
|
55780
|
+
const segment = {
|
|
55781
|
+
type: "ticket_event",
|
|
55782
|
+
data,
|
|
55783
|
+
...streamSeq !== void 0 ? { streamSeq } : {}
|
|
55784
|
+
};
|
|
55785
|
+
const existingIndex = this.segments.findIndex((s) => {
|
|
55786
|
+
if (s.type !== "ticket_event") return false;
|
|
55787
|
+
if (s.streamSeq !== void 0 && streamSeq !== void 0) return s.streamSeq === streamSeq;
|
|
55788
|
+
return s.data.kind === data.kind && s.data.actorId === data.actorId && s.data.actorName === data.actorName && s.data.actorType === data.actorType && s.data.reason === data.reason;
|
|
55789
|
+
});
|
|
55790
|
+
if (existingIndex !== -1) {
|
|
55791
|
+
this.segments[existingIndex] = segment;
|
|
55792
|
+
return this.getSegments();
|
|
55793
|
+
}
|
|
55794
|
+
this.segments.push(segment);
|
|
55795
|
+
return this.getSegments();
|
|
55796
|
+
}
|
|
55593
55797
|
/**
|
|
55594
55798
|
* Update status of an existing approval segment (single, batch, or
|
|
55595
55799
|
* escalation offer).
|
|
@@ -55713,6 +55917,9 @@ var MessageSegmentAccumulator = class {
|
|
|
55713
55917
|
case "ticket_escalated":
|
|
55714
55918
|
this.addTicketEscalated(segment.data);
|
|
55715
55919
|
break;
|
|
55920
|
+
case "ticket_event":
|
|
55921
|
+
this.addTicketEvent(segment.data, segment.streamSeq);
|
|
55922
|
+
break;
|
|
55716
55923
|
case "error":
|
|
55717
55924
|
this.addError(segment.title, segment.details);
|
|
55718
55925
|
break;
|
|
@@ -55747,7 +55954,7 @@ function createMessageSegmentAccumulator(callbacks) {
|
|
|
55747
55954
|
// src/chat-protocol/events.ts
|
|
55748
55955
|
var GUIDE_ORIGIN = "guide";
|
|
55749
55956
|
function isGuideOrigin(source) {
|
|
55750
|
-
return _optionalChain([source, 'optionalAccess',
|
|
55957
|
+
return _optionalChain([source, 'optionalAccess', _1506 => _1506.origin]) === GUIDE_ORIGIN;
|
|
55751
55958
|
}
|
|
55752
55959
|
var ESCALATION_STATE = {
|
|
55753
55960
|
PENDING: "PENDING",
|
|
@@ -55870,7 +56077,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
55870
56077
|
let stateCache = null;
|
|
55871
56078
|
function invalidate() {
|
|
55872
56079
|
stateCache = null;
|
|
55873
|
-
_optionalChain([onChange, 'optionalCall',
|
|
56080
|
+
_optionalChain([onChange, 'optionalCall', _1507 => _1507()]);
|
|
55874
56081
|
}
|
|
55875
56082
|
function getState() {
|
|
55876
56083
|
if (!stateCache) {
|
|
@@ -55887,7 +56094,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
55887
56094
|
return stateCache;
|
|
55888
56095
|
}
|
|
55889
56096
|
function emit(name, ...args) {
|
|
55890
|
-
_optionalChain([onEffect, 'optionalCall',
|
|
56097
|
+
_optionalChain([onEffect, 'optionalCall', _1508 => _1508({ name, args })]);
|
|
55891
56098
|
}
|
|
55892
56099
|
function setMessagesInternal(next) {
|
|
55893
56100
|
if (next !== messages) {
|
|
@@ -55918,12 +56125,12 @@ function createChatStreamReducer(options = {}) {
|
|
|
55918
56125
|
return [...next.slice(0, -1), { ...last, streamSeq: seq }];
|
|
55919
56126
|
}
|
|
55920
56127
|
function applySegmentsToState(segments, meta) {
|
|
55921
|
-
const seq = _optionalChain([meta, 'optionalAccess',
|
|
55922
|
-
if (_optionalChain([meta, 'optionalAccess',
|
|
56128
|
+
const seq = _optionalChain([meta, 'optionalAccess', _1509 => _1509.streamSeq]);
|
|
56129
|
+
if (_optionalChain([meta, 'optionalAccess', _1510 => _1510.append]) && meta.isCompacting) {
|
|
55923
56130
|
setMessagesInternal(stampTrailingAssistantSeq(upsertTrailingCompaction(messages, segments), seq));
|
|
55924
56131
|
return;
|
|
55925
56132
|
}
|
|
55926
|
-
if (_optionalChain([meta, 'optionalAccess',
|
|
56133
|
+
if (_optionalChain([meta, 'optionalAccess', _1511 => _1511.append])) {
|
|
55927
56134
|
setMessagesInternal(stampTrailingAssistantSeq(appendToTrailingAssistant(messages, segments), seq));
|
|
55928
56135
|
return;
|
|
55929
56136
|
}
|
|
@@ -55935,7 +56142,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
55935
56142
|
adoptTrailingAssistant = false;
|
|
55936
56143
|
const last = messages[messages.length - 1];
|
|
55937
56144
|
if (!last || last.role !== "assistant" || adoptTail) return;
|
|
55938
|
-
const hasContent2 = (_nullishCoalesce(_optionalChain([last, 'access',
|
|
56145
|
+
const hasContent2 = (_nullishCoalesce(_optionalChain([last, 'access', _1512 => _1512.segments, 'optionalAccess', _1513 => _1513.length]), () => ( 0))) > 0 || last.content !== "";
|
|
55939
56146
|
if (!hasContent2) return;
|
|
55940
56147
|
setMessagesInternal([
|
|
55941
56148
|
...messages,
|
|
@@ -56163,13 +56370,13 @@ function createChatStreamReducer(options = {}) {
|
|
|
56163
56370
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
56164
56371
|
pendingEscalated.set(requestId, {
|
|
56165
56372
|
command: summary,
|
|
56166
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
56373
|
+
explanation: _optionalChain([required, 'optionalAccess', _1514 => _1514.toolExplanation]),
|
|
56167
56374
|
approvalType,
|
|
56168
56375
|
toolCalls
|
|
56169
56376
|
});
|
|
56170
56377
|
emit("onEscalatedApproval", requestId, {
|
|
56171
56378
|
command: summary,
|
|
56172
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
56379
|
+
explanation: _optionalChain([required, 'optionalAccess', _1515 => _1515.toolExplanation]),
|
|
56173
56380
|
approvalType
|
|
56174
56381
|
});
|
|
56175
56382
|
break;
|
|
@@ -56339,11 +56546,26 @@ function createChatStreamReducer(options = {}) {
|
|
|
56339
56546
|
applyAccumulated(before, segments);
|
|
56340
56547
|
break;
|
|
56341
56548
|
}
|
|
56549
|
+
case "ticket-event": {
|
|
56550
|
+
const before = accumulator.getSegments().length;
|
|
56551
|
+
const segments = accumulator.addTicketEvent(
|
|
56552
|
+
{
|
|
56553
|
+
kind: event.kind,
|
|
56554
|
+
actorId: event.actorId,
|
|
56555
|
+
actorName: event.actorName,
|
|
56556
|
+
actorType: event.actorType,
|
|
56557
|
+
reason: event.reason
|
|
56558
|
+
},
|
|
56559
|
+
seq
|
|
56560
|
+
);
|
|
56561
|
+
applyAccumulated(before, segments);
|
|
56562
|
+
break;
|
|
56563
|
+
}
|
|
56342
56564
|
case "error": {
|
|
56343
56565
|
let message2;
|
|
56344
56566
|
if (event.details) {
|
|
56345
56567
|
try {
|
|
56346
|
-
message2 = _optionalChain([JSON, 'access',
|
|
56568
|
+
message2 = _optionalChain([JSON, 'access', _1516 => _1516.parse, 'call', _1517 => _1517(event.details), 'optionalAccess', _1518 => _1518.error, 'optionalAccess', _1519 => _1519.message]);
|
|
56347
56569
|
} catch (e103) {
|
|
56348
56570
|
message2 = event.details;
|
|
56349
56571
|
}
|
|
@@ -56560,7 +56782,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
56560
56782
|
const resolveBatch = (status, confirm) => async () => {
|
|
56561
56783
|
setMessagesInternal(projectBatchStatusToMessages(messages, anchorId, status));
|
|
56562
56784
|
for (const id of ids) {
|
|
56563
|
-
const ok = await _optionalChain([confirm, 'optionalCall',
|
|
56785
|
+
const ok = await _optionalChain([confirm, 'optionalCall', _1520 => _1520(id)]);
|
|
56564
56786
|
if (ok === false) {
|
|
56565
56787
|
setMessagesInternal(projectBatchRowFailureToMessages(messages, id));
|
|
56566
56788
|
}
|
|
@@ -56703,8 +56925,8 @@ function createChatStreamReducer(options = {}) {
|
|
|
56703
56925
|
}
|
|
56704
56926
|
}
|
|
56705
56927
|
}
|
|
56706
|
-
hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess',
|
|
56707
|
-
if (_optionalChain([extras, 'optionalAccess',
|
|
56928
|
+
hasEverStreamed = hasEverStreamed || (_nullishCoalesce(_optionalChain([extras, 'optionalAccess', _1521 => _1521.resumed]), () => ( messages.length > 0)));
|
|
56929
|
+
if (_optionalChain([extras, 'optionalAccess', _1522 => _1522.agentBusy])) agentBusyState();
|
|
56708
56930
|
invalidate();
|
|
56709
56931
|
}
|
|
56710
56932
|
return {
|
|
@@ -56789,7 +57011,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
56789
57011
|
},
|
|
56790
57012
|
endSseTurn() {
|
|
56791
57013
|
const last = messages[messages.length - 1];
|
|
56792
|
-
if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access',
|
|
57014
|
+
if (last && last.role === "assistant" && (_nullishCoalesce(_optionalChain([last, 'access', _1523 => _1523.segments, 'optionalAccess', _1524 => _1524.length]), () => ( 0))) === 0 && last.content === "") {
|
|
56793
57015
|
messages = messages.slice(0, -1);
|
|
56794
57016
|
}
|
|
56795
57017
|
sseCurrentText = "";
|
|
@@ -56943,10 +57165,10 @@ function createChatDialogStore(options = {}) {
|
|
|
56943
57165
|
if (onEvict) {
|
|
56944
57166
|
const sep = key.indexOf(KEY_SEP);
|
|
56945
57167
|
onEvict(key.slice(0, sep), key.slice(sep + 1), {
|
|
56946
|
-
messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess',
|
|
56947
|
-
approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess',
|
|
56948
|
-
lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess',
|
|
56949
|
-
pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess',
|
|
57168
|
+
messages: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1525 => _1525.state, 'access', _1526 => _1526.messages]), () => ( EMPTY_STATE.messages)),
|
|
57169
|
+
approvalStatuses: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1527 => _1527.state, 'access', _1528 => _1528.approvalStatuses]), () => ( EMPTY_STATE.approvalStatuses)),
|
|
57170
|
+
lastAppliedSeq: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1529 => _1529.getLastAppliedSeq, 'call', _1530 => _1530()]), () => ( Number.NEGATIVE_INFINITY)),
|
|
57171
|
+
pendingEchoes: _nullishCoalesce(_optionalChain([dropped, 'optionalAccess', _1531 => _1531.getPendingEchoes, 'call', _1532 => _1532()]), () => ( EMPTY_PENDING_ECHOES))
|
|
56950
57172
|
});
|
|
56951
57173
|
}
|
|
56952
57174
|
}
|
|
@@ -56956,12 +57178,12 @@ function createChatDialogStore(options = {}) {
|
|
|
56956
57178
|
const key = keyOf(dialogId, side);
|
|
56957
57179
|
let reducer2 = reducers.get(key);
|
|
56958
57180
|
if (!reducer2) {
|
|
56959
|
-
const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall',
|
|
57181
|
+
const base = _nullishCoalesce(_optionalChain([(_nullishCoalesce(createOptions, () => ( defaultCreateOptions))), 'optionalCall', _1533 => _1533(dialogId, side)]), () => ( {}));
|
|
56960
57182
|
const userOnChange = base.onChange;
|
|
56961
57183
|
reducer2 = createChatStreamReducer({
|
|
56962
57184
|
...base,
|
|
56963
57185
|
onChange: () => {
|
|
56964
|
-
_optionalChain([userOnChange, 'optionalCall',
|
|
57186
|
+
_optionalChain([userOnChange, 'optionalCall', _1534 => _1534()]);
|
|
56965
57187
|
notify();
|
|
56966
57188
|
}
|
|
56967
57189
|
});
|
|
@@ -57006,7 +57228,7 @@ function createChatDialogStore(options = {}) {
|
|
|
57006
57228
|
};
|
|
57007
57229
|
}
|
|
57008
57230
|
function getSnapshot(dialogId, side = DEFAULT_DIALOG_SIDE) {
|
|
57009
|
-
return _nullishCoalesce(_optionalChain([reducers, 'access',
|
|
57231
|
+
return _nullishCoalesce(_optionalChain([reducers, 'access', _1535 => _1535.get, 'call', _1536 => _1536(keyOf(dialogId, side)), 'optionalAccess', _1537 => _1537.state]), () => ( EMPTY_STATE));
|
|
57010
57232
|
}
|
|
57011
57233
|
function getServerSnapshot() {
|
|
57012
57234
|
return EMPTY_STATE;
|
|
@@ -57098,7 +57320,7 @@ function createDeltaBatcher({
|
|
|
57098
57320
|
pending = [];
|
|
57099
57321
|
const key = pendingKey;
|
|
57100
57322
|
for (const delta of batch) applyOne(delta, key);
|
|
57101
|
-
_optionalChain([onFlushed, 'optionalCall',
|
|
57323
|
+
_optionalChain([onFlushed, 'optionalCall', _1538 => _1538(batch.length)]);
|
|
57102
57324
|
}
|
|
57103
57325
|
function schedule() {
|
|
57104
57326
|
if (raf !== null || timer !== null) return;
|
|
@@ -57122,7 +57344,7 @@ function createDeltaBatcher({
|
|
|
57122
57344
|
}
|
|
57123
57345
|
if (!isDeltaEvent(event)) return false;
|
|
57124
57346
|
const tail = pending[pending.length - 1];
|
|
57125
|
-
const seqAdvances = _optionalChain([tail, 'optionalAccess',
|
|
57347
|
+
const seqAdvances = _optionalChain([tail, 'optionalAccess', _1539 => _1539.seq]) == null ? event.seq == null : event.seq != null && event.seq > tail.seq;
|
|
57126
57348
|
if (tail && seqAdvances && tail.type === event.type && (tail.type !== "text-delta" || tail.leading === event.leading)) {
|
|
57127
57349
|
pending[pending.length - 1] = {
|
|
57128
57350
|
...tail,
|
|
@@ -57155,7 +57377,7 @@ function useChatStreamReducer({
|
|
|
57155
57377
|
}) {
|
|
57156
57378
|
const optionsRef = _react.useRef.call(void 0, createReducerOptions);
|
|
57157
57379
|
optionsRef.current = createReducerOptions;
|
|
57158
|
-
const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access',
|
|
57380
|
+
const reducer2 = store.getReducer(dialogId, side, () => _nullishCoalesce(_optionalChain([optionsRef, 'access', _1540 => _1540.current, 'optionalCall', _1541 => _1541()]), () => ( {})));
|
|
57159
57381
|
const getSnapshot = _react.useCallback.call(void 0, () => store.getSnapshot(dialogId, side), [store, dialogId, side]);
|
|
57160
57382
|
const getServerSnapshot = _react.useCallback.call(void 0, () => store.getServerSnapshot(), [store]);
|
|
57161
57383
|
const subscribe = _react.useCallback.call(void 0, (listener) => store.subscribe(listener), [store]);
|
|
@@ -57215,7 +57437,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57215
57437
|
const { active = true } = runtimeOptions;
|
|
57216
57438
|
const runtime = _chunk7OPWSWEJcjs.useRequiredChatRuntime.call(void 0, );
|
|
57217
57439
|
const source = runtime.source || DEFAULT_CHAT_SOURCE;
|
|
57218
|
-
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
57440
|
+
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1542 => _1542.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
|
|
57219
57441
|
const sendMessageRef = _react.useRef.call(void 0, async () => true);
|
|
57220
57442
|
const cardResolve = _react.useCallback.call(void 0,
|
|
57221
57443
|
(action) => (reqId) => {
|
|
@@ -57250,7 +57472,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57250
57472
|
if (!restoredConversationRef.current) {
|
|
57251
57473
|
restoredConversationRef.current = true;
|
|
57252
57474
|
pruneStaleChatConversationStorage(source);
|
|
57253
|
-
conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access',
|
|
57475
|
+
conversationIdRef.current = _nullishCoalesce(_optionalChain([conversationStorage, 'access', _1543 => _1543.load, 'call', _1544 => _1544(), 'optionalAccess', _1545 => _1545.conversationId]), () => ( null));
|
|
57254
57476
|
}
|
|
57255
57477
|
const commandsUrl = runtime.endpoints.commandsUrl;
|
|
57256
57478
|
const { commands: slashCommands } = useSlashCommandRegistry(commandsUrl, {
|
|
@@ -57357,7 +57579,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57357
57579
|
const serverMessage = await readServerErrorMessage(response);
|
|
57358
57580
|
throw new Error(_nullishCoalesce(serverMessage, () => ( `Chat request failed: ${response.status}`)));
|
|
57359
57581
|
}
|
|
57360
|
-
const reader = _optionalChain([response, 'access',
|
|
57582
|
+
const reader = _optionalChain([response, 'access', _1546 => _1546.body, 'optionalAccess', _1547 => _1547.getReader, 'call', _1548 => _1548()]);
|
|
57361
57583
|
if (!reader) throw new Error("No response body");
|
|
57362
57584
|
const frameDecoder = createSseFrameDecoder();
|
|
57363
57585
|
let finished = false;
|
|
@@ -57380,7 +57602,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57380
57602
|
}
|
|
57381
57603
|
return true;
|
|
57382
57604
|
} catch (err) {
|
|
57383
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
57605
|
+
if (_optionalChain([err, 'optionalAccess', _1549 => _1549.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
57384
57606
|
return true;
|
|
57385
57607
|
}
|
|
57386
57608
|
flushDeltas();
|
|
@@ -57402,7 +57624,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57402
57624
|
);
|
|
57403
57625
|
sendMessageRef.current = sendMessage;
|
|
57404
57626
|
const stopMessage = _react.useCallback.call(void 0, () => {
|
|
57405
|
-
_optionalChain([abortControllerRef, 'access',
|
|
57627
|
+
_optionalChain([abortControllerRef, 'access', _1550 => _1550.current, 'optionalAccess', _1551 => _1551.abort, 'call', _1552 => _1552()]);
|
|
57406
57628
|
flushDeltas();
|
|
57407
57629
|
mutate((r) => r.setPhase("idle"));
|
|
57408
57630
|
}, [mutate, flushDeltas]);
|
|
@@ -57418,7 +57640,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57418
57640
|
let sendIdx = -1;
|
|
57419
57641
|
return state.messages.map((m) => {
|
|
57420
57642
|
const segments = m.segments;
|
|
57421
|
-
const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess',
|
|
57643
|
+
const content = typeof m.content === "string" && !segments ? m.content : _nullishCoalesce(_optionalChain([segments, 'optionalAccess', _1553 => _1553.filter, 'call', _1554 => _1554((s) => s.type === "text"), 'access', _1555 => _1555.map, 'call', _1556 => _1556((s) => s.text), 'access', _1557 => _1557.join, 'call', _1558 => _1558("")]), () => ( ""));
|
|
57422
57644
|
let sources;
|
|
57423
57645
|
let scrollAnchor;
|
|
57424
57646
|
if (m.role === "user" && !m.hidden) {
|
|
@@ -57427,7 +57649,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57427
57649
|
if (m.role === "assistant") {
|
|
57428
57650
|
const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
|
|
57429
57651
|
sources = sourcesMap.get(lookupIdx);
|
|
57430
|
-
scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access',
|
|
57652
|
+
scrollAnchor = _nullishCoalesce(_optionalChain([meta, 'access', _1559 => _1559.get, 'call', _1560 => _1560(lookupIdx), 'optionalAccess', _1561 => _1561.scrollAnchor]), () => ( void 0));
|
|
57431
57653
|
}
|
|
57432
57654
|
return {
|
|
57433
57655
|
id: m.id,
|
|
@@ -57456,7 +57678,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57456
57678
|
);
|
|
57457
57679
|
return;
|
|
57458
57680
|
}
|
|
57459
|
-
const refSlug = typeof _optionalChain([reference, 'access',
|
|
57681
|
+
const refSlug = typeof _optionalChain([reference, 'access', _1562 => _1562.metadata, 'optionalAccess', _1563 => _1563.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
|
|
57460
57682
|
const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
|
|
57461
57683
|
const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
57462
57684
|
const text = `/${cmdId} display "${escaped}"`;
|
|
@@ -57506,18 +57728,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
57506
57728
|
/** True while the mount-time rebuild from the server transcript runs. */
|
|
57507
57729
|
isHydratingHistory,
|
|
57508
57730
|
/** Provider key for the lib's `<ModelDisplay>` icon. */
|
|
57509
|
-
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
57510
|
-
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
57511
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
57731
|
+
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1564 => _1564.provider]), () => ( null)),
|
|
57732
|
+
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1565 => _1565.modelLabel]), () => ( null)),
|
|
57733
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1566 => _1566.contextWindowMaxTokens]), () => ( null)),
|
|
57512
57734
|
/** Input tokens (known after server's message_start frame; null until). */
|
|
57513
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
57735
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1567 => _1567.inputTokens]), () => ( null)),
|
|
57514
57736
|
/** Output tokens (known only after server's trailing usage frame). */
|
|
57515
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
57737
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1568 => _1568.outputTokens]), () => ( null)),
|
|
57516
57738
|
/** Cache hit % (read / total-input × 100). null during streaming. */
|
|
57517
|
-
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
57739
|
+
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1569 => _1569.cacheHitRatePct]), () => ( null)),
|
|
57518
57740
|
/** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
|
|
57519
57741
|
* token counts). null until the trailing usage frame lands. */
|
|
57520
|
-
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
57742
|
+
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1570 => _1570.breakdown]), () => ( null)),
|
|
57521
57743
|
// ─── Dialog management — stubs for v1 ────────────────────────────────
|
|
57522
57744
|
// Guide mode keeps ONE server-side conversation per stored id
|
|
57523
57745
|
// (`chat_conversations`, hydrated on mount). Surfacing multiple threads
|
|
@@ -57780,6 +58002,20 @@ function decodeNatsChunk(chunk) {
|
|
|
57780
58002
|
...seq
|
|
57781
58003
|
};
|
|
57782
58004
|
}
|
|
58005
|
+
case MESSAGE_TYPE.TICKET_EVENT: {
|
|
58006
|
+
const kind = typeof data.kind === "string" ? data.kind.trim() : "";
|
|
58007
|
+
if (!kind) return null;
|
|
58008
|
+
const eventSeq = seq.seq !== void 0 ? seq : typeof data.sequenceId === "number" ? { seq: data.sequenceId } : {};
|
|
58009
|
+
return {
|
|
58010
|
+
type: "ticket-event",
|
|
58011
|
+
kind,
|
|
58012
|
+
actorId: typeof data.actorId === "string" ? data.actorId : void 0,
|
|
58013
|
+
actorName: typeof data.actorName === "string" ? data.actorName : void 0,
|
|
58014
|
+
actorType: typeof data.actorType === "string" ? data.actorType : void 0,
|
|
58015
|
+
reason: typeof data.reason === "string" && data.reason.trim() ? data.reason : void 0,
|
|
58016
|
+
...eventSeq
|
|
58017
|
+
};
|
|
58018
|
+
}
|
|
57783
58019
|
case MESSAGE_TYPE.ERROR:
|
|
57784
58020
|
return {
|
|
57785
58021
|
type: "error",
|
|
@@ -57797,7 +58033,7 @@ function decodeNatsChunk(chunk) {
|
|
|
57797
58033
|
userId: typeof data.userId === "string" ? data.userId : void 0,
|
|
57798
58034
|
// Wire shape carries no label; fall back to the id (parity with
|
|
57799
58035
|
// the history path in `process-historical-messages.ts`).
|
|
57800
|
-
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess',
|
|
58036
|
+
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1571 => _1571.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1572 => _1572.id]) === "string").map((it) => ({
|
|
57801
58037
|
type: it.type,
|
|
57802
58038
|
id: it.id,
|
|
57803
58039
|
label: it.id
|
|
@@ -57849,15 +58085,15 @@ function decodeNatsChunk(chunk) {
|
|
|
57849
58085
|
|
|
57850
58086
|
// src/components/chat/utils/process-historical-messages.ts
|
|
57851
58087
|
function getOwnerDisplayName(owner) {
|
|
57852
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
58088
|
+
if (_optionalChain([owner, 'optionalAccess', _1573 => _1573.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
57853
58089
|
const { firstName, lastName } = owner.user;
|
|
57854
58090
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
57855
58091
|
if (name) return name;
|
|
57856
58092
|
}
|
|
57857
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
58093
|
+
return _optionalChain([owner, 'optionalAccess', _1574 => _1574.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
57858
58094
|
}
|
|
57859
58095
|
function getOwnerAvatar(owner) {
|
|
57860
|
-
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess',
|
|
58096
|
+
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1575 => _1575.user, 'optionalAccess', _1576 => _1576.image, 'optionalAccess', _1577 => _1577.imageUrl]), () => ( void 0));
|
|
57861
58097
|
}
|
|
57862
58098
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
57863
58099
|
messageDataArray.forEach((data) => {
|
|
@@ -58005,6 +58241,22 @@ function decodeHistoricalMessageData(data) {
|
|
|
58005
58241
|
};
|
|
58006
58242
|
}
|
|
58007
58243
|
return null;
|
|
58244
|
+
// Same completeness gate as the live decoder: `kind` (an OPEN string —
|
|
58245
|
+
// unknown kinds render as a neutral line) is the only required field.
|
|
58246
|
+
// Field names match the chunk, so ONE mapping covers both paths; the
|
|
58247
|
+
// typeof gates also fold the row's GraphQL nulls to undefined.
|
|
58248
|
+
case MESSAGE_TYPE.TICKET_EVENT: {
|
|
58249
|
+
const kind = "kind" in data && typeof data.kind === "string" ? data.kind.trim() : "";
|
|
58250
|
+
if (!kind) return null;
|
|
58251
|
+
return {
|
|
58252
|
+
type: "ticket-event",
|
|
58253
|
+
kind,
|
|
58254
|
+
actorId: typeof data.actorId === "string" ? data.actorId : void 0,
|
|
58255
|
+
actorName: typeof data.actorName === "string" ? data.actorName : void 0,
|
|
58256
|
+
actorType: typeof data.actorType === "string" ? data.actorType : void 0,
|
|
58257
|
+
reason: typeof data.reason === "string" && data.reason.trim() ? data.reason : void 0
|
|
58258
|
+
};
|
|
58259
|
+
}
|
|
58008
58260
|
case MESSAGE_TYPE.ERROR:
|
|
58009
58261
|
if ("error" in data) {
|
|
58010
58262
|
return {
|
|
@@ -58039,7 +58291,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
58039
58291
|
event.offerId,
|
|
58040
58292
|
event.text,
|
|
58041
58293
|
event.origin,
|
|
58042
|
-
_nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess',
|
|
58294
|
+
_nullishCoalesce(_optionalChain([escalationOfferStates, 'optionalAccess', _1578 => _1578[event.offerId]]), () => ( "pending"))
|
|
58043
58295
|
);
|
|
58044
58296
|
break;
|
|
58045
58297
|
case "ticket-escalated":
|
|
@@ -58050,8 +58302,21 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
58050
58302
|
text: event.text
|
|
58051
58303
|
});
|
|
58052
58304
|
break;
|
|
58305
|
+
// Seq-less on purpose: the persisted row's sequence lives on the message
|
|
58306
|
+
// (`lastChunkStreamSeq`), not in `messageData`. A live redelivery of the
|
|
58307
|
+
// same event matches this segment by payload equality (see
|
|
58308
|
+
// `addTicketEvent`).
|
|
58309
|
+
case "ticket-event":
|
|
58310
|
+
accumulator.addTicketEvent({
|
|
58311
|
+
kind: event.kind,
|
|
58312
|
+
actorId: event.actorId,
|
|
58313
|
+
actorName: event.actorName,
|
|
58314
|
+
actorType: event.actorType,
|
|
58315
|
+
reason: event.reason
|
|
58316
|
+
});
|
|
58317
|
+
break;
|
|
58053
58318
|
case "escalation-offer-resolved":
|
|
58054
|
-
_optionalChain([offerResolutions, 'optionalAccess',
|
|
58319
|
+
_optionalChain([offerResolutions, 'optionalAccess', _1579 => _1579.set, 'call', _1580 => _1580(event.offerId, {
|
|
58055
58320
|
status: event.status,
|
|
58056
58321
|
resolvedByName: event.resolvedByName
|
|
58057
58322
|
})]);
|
|
@@ -58129,7 +58394,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
58129
58394
|
}
|
|
58130
58395
|
}
|
|
58131
58396
|
} else {
|
|
58132
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
58397
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1581 => _1581.set, 'call', _1582 => _1582(event.requestId, {
|
|
58133
58398
|
command: event.command || "",
|
|
58134
58399
|
explanation: event.explanation,
|
|
58135
58400
|
approvalType,
|
|
@@ -58144,8 +58409,8 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
58144
58409
|
const existingStatus = approvalStatuses[requestId];
|
|
58145
58410
|
const status = existingStatus || event.status;
|
|
58146
58411
|
const resolvedByName = event.resolvedByName;
|
|
58147
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
58148
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
58412
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1583 => _1583.get, 'call', _1584 => _1584(requestId)]);
|
|
58413
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _1585 => _1585.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
58149
58414
|
if (batchApprovalsEnabled) {
|
|
58150
58415
|
accumulator.addApprovalBatch(
|
|
58151
58416
|
requestId,
|
|
@@ -58167,7 +58432,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
58167
58432
|
);
|
|
58168
58433
|
}
|
|
58169
58434
|
}
|
|
58170
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
58435
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1586 => _1586.delete, 'call', _1587 => _1587(requestId)]);
|
|
58171
58436
|
break;
|
|
58172
58437
|
}
|
|
58173
58438
|
if (escalatedData) {
|
|
@@ -58176,7 +58441,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
58176
58441
|
explanation: escalatedData.explanation,
|
|
58177
58442
|
approvalType: escalatedData.approvalType
|
|
58178
58443
|
});
|
|
58179
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
58444
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1588 => _1588.delete, 'call', _1589 => _1589(requestId)]);
|
|
58180
58445
|
}
|
|
58181
58446
|
const before = accumulator.getSegments();
|
|
58182
58447
|
const after = accumulator.updateApprovalStatus(requestId, status, resolvedByName);
|
|
@@ -58193,7 +58458,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
58193
58458
|
let message2;
|
|
58194
58459
|
if (event.details) {
|
|
58195
58460
|
try {
|
|
58196
|
-
message2 = _optionalChain([JSON, 'access',
|
|
58461
|
+
message2 = _optionalChain([JSON, 'access', _1590 => _1590.parse, 'call', _1591 => _1591(event.details), 'optionalAccess', _1592 => _1592.error, 'optionalAccess', _1593 => _1593.message]);
|
|
58197
58462
|
} catch (e104) {
|
|
58198
58463
|
message2 = event.details;
|
|
58199
58464
|
}
|
|
@@ -58279,14 +58544,14 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
58279
58544
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
58280
58545
|
return;
|
|
58281
58546
|
}
|
|
58282
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
58547
|
+
const isUserMessage = _optionalChain([msg, 'access', _1594 => _1594.owner, 'optionalAccess', _1595 => _1595.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1596 => _1596.owner, 'optionalAccess', _1597 => _1597.type]) === OWNER_TYPE.ADMIN;
|
|
58283
58548
|
if (isUserMessage) {
|
|
58284
58549
|
flushAssistantMessage();
|
|
58285
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
58550
|
+
const userAuthorType = _optionalChain([msg, 'access', _1598 => _1598.owner, 'optionalAccess', _1599 => _1599.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
58286
58551
|
messageDataArray.forEach((data) => {
|
|
58287
58552
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
58288
58553
|
const rawContext = data.contextItems;
|
|
58289
|
-
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess',
|
|
58554
|
+
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1600 => _1600.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1601 => _1601.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
|
|
58290
58555
|
processedMessages.push({
|
|
58291
58556
|
id: msg.id,
|
|
58292
58557
|
role: "user",
|
|
@@ -58323,7 +58588,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
58323
58588
|
});
|
|
58324
58589
|
const nextMsg = messages[index + 1];
|
|
58325
58590
|
const isLastMessage = index === messages.length - 1;
|
|
58326
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
58591
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1602 => _1602.owner, 'optionalAccess', _1603 => _1603.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1604 => _1604.owner, 'optionalAccess', _1605 => _1605.type]) === OWNER_TYPE.ADMIN);
|
|
58327
58592
|
if (isLastMessage || nextIsFromUser) {
|
|
58328
58593
|
flushAssistantMessage();
|
|
58329
58594
|
}
|
|
@@ -58435,7 +58700,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
58435
58700
|
break;
|
|
58436
58701
|
case "approval_batch": {
|
|
58437
58702
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
58438
|
-
(c) => _optionalChain([segment, 'access',
|
|
58703
|
+
(c) => _optionalChain([segment, 'access', _1606 => _1606.data, 'access', _1607 => _1607.executions, 'optionalAccess', _1608 => _1608[c.toolExecutionRequestId], 'optionalAccess', _1609 => _1609.status]) === "done"
|
|
58439
58704
|
);
|
|
58440
58705
|
if (segment.status !== "rejected" && !allDone) {
|
|
58441
58706
|
hasIncompleteState = true;
|
|
@@ -58471,11 +58736,11 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
58471
58736
|
function extractIncompleteTailState(messages) {
|
|
58472
58737
|
if (!messages || messages.length === 0) return void 0;
|
|
58473
58738
|
let start = messages.length;
|
|
58474
|
-
while (start > 0 && _optionalChain([messages, 'access',
|
|
58739
|
+
while (start > 0 && _optionalChain([messages, 'access', _1610 => _1610[start - 1], 'optionalAccess', _1611 => _1611.role]) === "assistant") start -= 1;
|
|
58475
58740
|
if (start === messages.length) return void 0;
|
|
58476
58741
|
const segments = [];
|
|
58477
58742
|
for (let i = start; i < messages.length; i += 1) {
|
|
58478
|
-
const content = _optionalChain([messages, 'access',
|
|
58743
|
+
const content = _optionalChain([messages, 'access', _1612 => _1612[i], 'optionalAccess', _1613 => _1613.content]);
|
|
58479
58744
|
if (Array.isArray(content)) segments.push(...content);
|
|
58480
58745
|
}
|
|
58481
58746
|
if (segments.length === 0) return void 0;
|
|
@@ -58829,7 +59094,7 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
58829
59094
|
}, [active, fetchDialogs, loadDialogsPage]);
|
|
58830
59095
|
const sendMessage = _react.useCallback.call(void 0,
|
|
58831
59096
|
async (text, sendOptions) => {
|
|
58832
|
-
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess',
|
|
59097
|
+
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1614 => _1614.hidden]), () => ( false));
|
|
58833
59098
|
mutate((r) => r.pushOptimisticSend(text, hidden));
|
|
58834
59099
|
await publishUserMessage(text, { hidden, dialogId });
|
|
58835
59100
|
},
|
|
@@ -58985,11 +59250,11 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
58985
59250
|
// Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
|
|
58986
59251
|
// contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
|
|
58987
59252
|
// matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
|
|
58988
|
-
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
58989
|
-
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
58990
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
58991
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
58992
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
59253
|
+
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1615 => _1615.provider]), () => ( modelProvider)), () => ( null)),
|
|
59254
|
+
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1616 => _1616.modelLabel]), () => ( modelLabel)), () => ( null)),
|
|
59255
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1617 => _1617.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1618 => _1618.contextWindowMaxTokens]))), () => ( null)),
|
|
59256
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1619 => _1619.inputTokensSize]), () => ( null)),
|
|
59257
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1620 => _1620.outputTokensSize]), () => ( null)),
|
|
58993
59258
|
currentCacheHitRatePct: null,
|
|
58994
59259
|
currentUsageBreakdown: null,
|
|
58995
59260
|
// Dialog management
|
|
@@ -59126,7 +59391,7 @@ function useUnifiedChat(options) {
|
|
|
59126
59391
|
[]
|
|
59127
59392
|
);
|
|
59128
59393
|
const setDialogScope = _react.useCallback.call(void 0,
|
|
59129
|
-
(scope) => _optionalChain([activeStateRef, 'access',
|
|
59394
|
+
(scope) => _optionalChain([activeStateRef, 'access', _1621 => _1621.current, 'access', _1622 => _1622.setDialogScope, 'optionalCall', _1623 => _1623(scope)]),
|
|
59130
59395
|
[]
|
|
59131
59396
|
);
|
|
59132
59397
|
const reloadDialogs = _react.useCallback.call(void 0,
|
|
@@ -59230,19 +59495,19 @@ function turnRequestKeys(content) {
|
|
|
59230
59495
|
if (!Array.isArray(content)) return keys;
|
|
59231
59496
|
for (const seg of content) {
|
|
59232
59497
|
if (seg.type === "tool_execution") {
|
|
59233
|
-
const id = _optionalChain([seg, 'access',
|
|
59498
|
+
const id = _optionalChain([seg, 'access', _1624 => _1624.data, 'optionalAccess', _1625 => _1625.toolExecutionRequestId]);
|
|
59234
59499
|
if (id) keys.add(id);
|
|
59235
59500
|
} else if (seg.type === "approval_request") {
|
|
59236
|
-
const id = _optionalChain([seg, 'access',
|
|
59501
|
+
const id = _optionalChain([seg, 'access', _1626 => _1626.data, 'optionalAccess', _1627 => _1627.requestId]);
|
|
59237
59502
|
if (id) keys.add(id);
|
|
59238
59503
|
} else if (seg.type === "escalation_offer") {
|
|
59239
|
-
const id = _optionalChain([seg, 'access',
|
|
59504
|
+
const id = _optionalChain([seg, 'access', _1628 => _1628.data, 'optionalAccess', _1629 => _1629.offerId]);
|
|
59240
59505
|
if (id) keys.add(id);
|
|
59241
59506
|
} else if (seg.type === "approval_batch") {
|
|
59242
59507
|
const data = seg.data;
|
|
59243
|
-
if (_optionalChain([data, 'optionalAccess',
|
|
59244
|
-
for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
59245
|
-
if (_optionalChain([call, 'optionalAccess',
|
|
59508
|
+
if (_optionalChain([data, 'optionalAccess', _1630 => _1630.approvalRequestId])) keys.add(data.approvalRequestId);
|
|
59509
|
+
for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1631 => _1631.toolCalls]), () => ( []))) {
|
|
59510
|
+
if (_optionalChain([call, 'optionalAccess', _1632 => _1632.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
|
|
59246
59511
|
}
|
|
59247
59512
|
}
|
|
59248
59513
|
}
|
|
@@ -59294,20 +59559,20 @@ function mergeHistoryWithRealtime(input) {
|
|
|
59294
59559
|
}
|
|
59295
59560
|
}
|
|
59296
59561
|
const trailing = processedHistory[processedHistory.length - 1];
|
|
59297
|
-
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess',
|
|
59298
|
-
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access',
|
|
59562
|
+
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1633 => _1633.role]) === "assistant" ? trailing : null;
|
|
59563
|
+
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1634 => _1634.content, 'access', _1635 => _1635.find, 'call', _1636 => _1636((s) => s.type === "approval_batch"), 'optionalAccess', _1637 => _1637.data, 'optionalAccess', _1638 => _1638.approvalRequestId]), () => ( null)) : null;
|
|
59299
59564
|
let processedToUse = processedHistory;
|
|
59300
59565
|
const pinnedSyntheticIds = /* @__PURE__ */ new Set();
|
|
59301
59566
|
const droppedSyntheticIds = /* @__PURE__ */ new Set();
|
|
59302
59567
|
if (historyBatchId) {
|
|
59303
59568
|
const batchTwins = existingMessages.filter(
|
|
59304
59569
|
(m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
|
|
59305
|
-
(s) => s.type === "approval_batch" && _optionalChain([s, 'access',
|
|
59570
|
+
(s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1639 => _1639.data, 'optionalAccess', _1640 => _1640.approvalRequestId]) === historyBatchId
|
|
59306
59571
|
)
|
|
59307
59572
|
);
|
|
59308
59573
|
const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
|
|
59309
59574
|
if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
|
|
59310
|
-
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess',
|
|
59575
|
+
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1641 => _1641.content])) ? historyTrailingAssistant.content.length : 0;
|
|
59311
59576
|
const realtimeSize = existingWithSameBatch.content.length;
|
|
59312
59577
|
if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
|
|
59313
59578
|
processedToUse = processedHistory.slice(0, -1);
|
|
@@ -59349,9 +59614,9 @@ function mergeHistoryWithRealtime(input) {
|
|
|
59349
59614
|
if (pinnedSyntheticIds.has(m.id)) return true;
|
|
59350
59615
|
if (droppedSyntheticIds.has(m.id)) return false;
|
|
59351
59616
|
if (processedIds.has(m.id)) return false;
|
|
59352
|
-
if (_optionalChain([rawHistoryIds, 'optionalAccess',
|
|
59617
|
+
if (_optionalChain([rawHistoryIds, 'optionalAccess', _1642 => _1642.has, 'call', _1643 => _1643(m.id)])) return false;
|
|
59353
59618
|
if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
|
|
59354
|
-
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access',
|
|
59619
|
+
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1644 => _1644.timestamp, 'optionalAccess', _1645 => _1645.getTime, 'call', _1646 => _1646()]), () => ( 0))) <= historyFetchedAt;
|
|
59355
59620
|
return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
|
|
59356
59621
|
}
|
|
59357
59622
|
if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
|
|
@@ -59375,7 +59640,7 @@ function mergeHistoryWithRealtime(input) {
|
|
|
59375
59640
|
} else if (typeof m.streamSeq === "number") {
|
|
59376
59641
|
covered = historyMaxStreamSeq > 0 && historyMaxStreamSeq >= m.streamSeq;
|
|
59377
59642
|
} else {
|
|
59378
|
-
covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access',
|
|
59643
|
+
covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1647 => _1647.timestamp, 'optionalAccess', _1648 => _1648.getTime, 'call', _1649 => _1649()]), () => ( 0))) <= historyFetchedAt;
|
|
59379
59644
|
}
|
|
59380
59645
|
if (covered) return false;
|
|
59381
59646
|
}
|
|
@@ -59431,7 +59696,7 @@ function normalizeHistoricalMessageData(md) {
|
|
|
59431
59696
|
function isHistoricalUserTurn(m) {
|
|
59432
59697
|
return !!m.owner;
|
|
59433
59698
|
}
|
|
59434
|
-
var isTextSegment = (d) => _optionalChain([d, 'optionalAccess',
|
|
59699
|
+
var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1650 => _1650.type]) === "TEXT" && typeof d.text === "string";
|
|
59435
59700
|
var THINK_MS = 550;
|
|
59436
59701
|
var TOKEN_MS = 55;
|
|
59437
59702
|
var USER_MS = 480;
|
|
@@ -59520,7 +59785,7 @@ var NODES = [
|
|
|
59520
59785
|
];
|
|
59521
59786
|
var Primitive = NODES.reduce((primitive, node) => {
|
|
59522
59787
|
const Slot2 = _reactslot.createSlot.call(void 0, `Primitive.${node}`);
|
|
59523
|
-
const Node2 =
|
|
59788
|
+
const Node2 = React151.forwardRef((props, forwardedRef) => {
|
|
59524
59789
|
const { asChild, ...primitiveProps } = props;
|
|
59525
59790
|
const Comp = asChild ? Slot2 : node;
|
|
59526
59791
|
if (typeof window !== "undefined") {
|
|
@@ -59553,7 +59818,7 @@ var VISUALLY_HIDDEN_STYLES = Object.freeze({
|
|
|
59553
59818
|
whiteSpace: "nowrap",
|
|
59554
59819
|
wordWrap: "normal"
|
|
59555
59820
|
});
|
|
59556
|
-
var VisuallyHidden = /* @__PURE__ */
|
|
59821
|
+
var VisuallyHidden = /* @__PURE__ */ React152.forwardRef(
|
|
59557
59822
|
/* @__PURE__ */ __name4(function VisuallyHidden2(props, forwardedRef) {
|
|
59558
59823
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
59559
59824
|
Primitive.span,
|
|
@@ -59678,7 +59943,7 @@ function useChatDialogManager({
|
|
|
59678
59943
|
const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
|
|
59679
59944
|
if (restoreTarget) {
|
|
59680
59945
|
try {
|
|
59681
|
-
await _optionalChain([unarchiveDialog, 'optionalCall',
|
|
59946
|
+
await _optionalChain([unarchiveDialog, 'optionalCall', _1651 => _1651(restoreTarget.id)]);
|
|
59682
59947
|
} catch (err) {
|
|
59683
59948
|
console.error("[useChatDialogManager] unarchive failed:", err);
|
|
59684
59949
|
return;
|
|
@@ -60160,7 +60425,7 @@ function EmbeddableChatInner({
|
|
|
60160
60425
|
}),
|
|
60161
60426
|
[commandsUrl]
|
|
60162
60427
|
);
|
|
60163
|
-
const headerUserName = _optionalChain([identityUser, 'optionalAccess',
|
|
60428
|
+
const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1652 => _1652.name, 'optionalAccess', _1653 => _1653.trim, 'call', _1654 => _1654()]) || [_optionalChain([identityUser, 'optionalAccess', _1655 => _1655.firstName]), _optionalChain([identityUser, 'optionalAccess', _1656 => _1656.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1657 => _1657.trim, 'call', _1658 => _1658()]) || void 0;
|
|
60164
60429
|
const effectiveModes = _react.useMemo.call(void 0, () => {
|
|
60165
60430
|
if (modes) return modes;
|
|
60166
60431
|
const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
|
|
@@ -60169,19 +60434,19 @@ function EmbeddableChatInner({
|
|
|
60169
60434
|
const mingoCaps = _react.useMemo.call(void 0, () => {
|
|
60170
60435
|
if (mingoState) {
|
|
60171
60436
|
return {
|
|
60172
|
-
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
60173
|
-
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
60174
|
-
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
60175
|
-
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
60176
|
-
searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
60177
|
-
onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
60437
|
+
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1659 => _1659.canRename]), () => ( false)),
|
|
60438
|
+
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1660 => _1660.canArchive]), () => ( false)),
|
|
60439
|
+
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1661 => _1661.fetchArchivedDialogs]),
|
|
60440
|
+
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1662 => _1662.unarchiveDialog]),
|
|
60441
|
+
searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1663 => _1663.searchQuery]),
|
|
60442
|
+
onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1664 => _1664.onSearchChange])
|
|
60178
60443
|
};
|
|
60179
60444
|
}
|
|
60180
60445
|
return {
|
|
60181
|
-
canRename: !!_optionalChain([effectiveModes, 'access',
|
|
60182
|
-
canArchive: !!_optionalChain([effectiveModes, 'access',
|
|
60183
|
-
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access',
|
|
60184
|
-
unarchiveDialog: _optionalChain([effectiveModes, 'access',
|
|
60446
|
+
canRename: !!_optionalChain([effectiveModes, 'access', _1665 => _1665.mingo, 'optionalAccess', _1666 => _1666.renameDialog]),
|
|
60447
|
+
canArchive: !!_optionalChain([effectiveModes, 'access', _1667 => _1667.mingo, 'optionalAccess', _1668 => _1668.archiveDialog]),
|
|
60448
|
+
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1669 => _1669.mingo, 'optionalAccess', _1670 => _1670.fetchArchivedDialogs]),
|
|
60449
|
+
unarchiveDialog: _optionalChain([effectiveModes, 'access', _1671 => _1671.mingo, 'optionalAccess', _1672 => _1672.unarchiveDialog]),
|
|
60185
60450
|
searchQuery: void 0,
|
|
60186
60451
|
onSearchChange: void 0
|
|
60187
60452
|
};
|
|
@@ -60195,7 +60460,7 @@ function EmbeddableChatInner({
|
|
|
60195
60460
|
if (controlledActiveMode === void 0) {
|
|
60196
60461
|
setUncontrolledActiveMode(next);
|
|
60197
60462
|
}
|
|
60198
|
-
_optionalChain([onActiveModeChange, 'optionalCall',
|
|
60463
|
+
_optionalChain([onActiveModeChange, 'optionalCall', _1673 => _1673(next)]);
|
|
60199
60464
|
},
|
|
60200
60465
|
[controlledActiveMode, onActiveModeChange]
|
|
60201
60466
|
);
|
|
@@ -60217,7 +60482,7 @@ function EmbeddableChatInner({
|
|
|
60217
60482
|
const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
|
|
60218
60483
|
const effectiveAssistantName = emptyStateConfig.name;
|
|
60219
60484
|
const effectiveAssistantIcon = emptyStateConfig.icon;
|
|
60220
|
-
const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess',
|
|
60485
|
+
const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1674 => _1674.title]) === "string" ? guideWelcome.title : null)));
|
|
60221
60486
|
const {
|
|
60222
60487
|
messages: rawMessages,
|
|
60223
60488
|
isLoading: chatLoading,
|
|
@@ -60259,7 +60524,7 @@ function EmbeddableChatInner({
|
|
|
60259
60524
|
if (activeMode !== "guide" || guidePromptSentRef.current) return;
|
|
60260
60525
|
guidePromptSentRef.current = true;
|
|
60261
60526
|
void sendMessage(guidePendingPrompt);
|
|
60262
|
-
_optionalChain([onGuidePromptConsumed, 'optionalCall',
|
|
60527
|
+
_optionalChain([onGuidePromptConsumed, 'optionalCall', _1675 => _1675()]);
|
|
60263
60528
|
}, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
|
|
60264
60529
|
const {
|
|
60265
60530
|
attachments: stagedAttachments,
|
|
@@ -60270,7 +60535,7 @@ function EmbeddableChatInner({
|
|
|
60270
60535
|
clear: clearAttachments
|
|
60271
60536
|
} = useChatAttachments();
|
|
60272
60537
|
const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
|
|
60273
|
-
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
60538
|
+
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1676 => _1676.maxItems]), () => ( 10));
|
|
60274
60539
|
const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
|
|
60275
60540
|
const [contextItems, setContextItems] = _react.useState.call(void 0, []);
|
|
60276
60541
|
const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
|
|
@@ -60287,10 +60552,10 @@ function EmbeddableChatInner({
|
|
|
60287
60552
|
}, [activeDialogId, activeMode]);
|
|
60288
60553
|
const mentionMarkerByType = _react.useMemo.call(void 0, () => {
|
|
60289
60554
|
const m = /* @__PURE__ */ new Map();
|
|
60290
|
-
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
60555
|
+
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1677 => _1677.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
|
|
60291
60556
|
return m;
|
|
60292
|
-
}, [_optionalChain([contextPicker, 'optionalAccess',
|
|
60293
|
-
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess',
|
|
60557
|
+
}, [_optionalChain([contextPicker, 'optionalAccess', _1678 => _1678.entityTypes])]);
|
|
60558
|
+
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1679 => _1679.entityTypes]);
|
|
60294
60559
|
const resolveContextIcon = _react.useMemo.call(void 0, () => {
|
|
60295
60560
|
const byType = /* @__PURE__ */ new Map();
|
|
60296
60561
|
for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
|
|
@@ -60302,7 +60567,7 @@ function EmbeddableChatInner({
|
|
|
60302
60567
|
if (mentionActiveRef.current) {
|
|
60303
60568
|
if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
|
|
60304
60569
|
if (contextItems.length >= contextMaxItems) return;
|
|
60305
|
-
_optionalChain([chatInputRef, 'access',
|
|
60570
|
+
_optionalChain([chatInputRef, 'access', _1680 => _1680.current, 'optionalAccess', _1681 => _1681.commitMention, 'call', _1682 => _1682(mentionTokenOf(key, mentionMarkerByType), {
|
|
60306
60571
|
label: item.label,
|
|
60307
60572
|
icon: resolveContextIcon(item)
|
|
60308
60573
|
})]);
|
|
@@ -60324,9 +60589,9 @@ function EmbeddableChatInner({
|
|
|
60324
60589
|
setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
|
|
60325
60590
|
if (mentionKeysRef.current.has(key)) {
|
|
60326
60591
|
mentionKeysRef.current.delete(key);
|
|
60327
|
-
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access',
|
|
60592
|
+
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1683 => _1683.current, 'optionalAccess', _1684 => _1684.getValue, 'call', _1685 => _1685()]), () => ( ""));
|
|
60328
60593
|
const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
|
|
60329
|
-
_optionalChain([chatInputRef, 'access',
|
|
60594
|
+
_optionalChain([chatInputRef, 'access', _1686 => _1686.current, 'optionalAccess', _1687 => _1687.setValue, 'call', _1688 => _1688(next)]);
|
|
60330
60595
|
}
|
|
60331
60596
|
}, [mentionMarkerByType]);
|
|
60332
60597
|
const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
|
|
@@ -60343,7 +60608,7 @@ function EmbeddableChatInner({
|
|
|
60343
60608
|
}, []);
|
|
60344
60609
|
const closeContextPicker = _react.useCallback.call(void 0, () => {
|
|
60345
60610
|
if (mentionActiveRef.current) {
|
|
60346
|
-
_optionalChain([chatInputRef, 'access',
|
|
60611
|
+
_optionalChain([chatInputRef, 'access', _1689 => _1689.current, 'optionalAccess', _1690 => _1690.removeMentionTrigger, 'call', _1691 => _1691()]);
|
|
60347
60612
|
}
|
|
60348
60613
|
setContextPickerOpen(false);
|
|
60349
60614
|
setMentionQuery(null);
|
|
@@ -60377,8 +60642,8 @@ function EmbeddableChatInner({
|
|
|
60377
60642
|
[effectiveAssistantIcon]
|
|
60378
60643
|
);
|
|
60379
60644
|
const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
|
|
60380
|
-
const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess',
|
|
60381
|
-
const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess',
|
|
60645
|
+
const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1692 => _1692.firstName]), _optionalChain([identityUser, 'optionalAccess', _1693 => _1693.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1694 => _1694.name, 'optionalAccess', _1695 => _1695.trim, 'call', _1696 => _1696()]) || void 0 : void 0;
|
|
60646
|
+
const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1697 => _1697.avatarUrl, 'optionalAccess', _1698 => _1698.trim, 'call', _1699 => _1699()]) || void 0 : void 0;
|
|
60382
60647
|
const messages = _react.useMemo.call(void 0, () => {
|
|
60383
60648
|
const cache = timestampCacheRef.current;
|
|
60384
60649
|
const seenIds = /* @__PURE__ */ new Set();
|
|
@@ -60569,9 +60834,9 @@ function EmbeddableChatInner({
|
|
|
60569
60834
|
const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
|
|
60570
60835
|
const lastSources = _react.useMemo.call(void 0, () => {
|
|
60571
60836
|
if (chatLoading) return void 0;
|
|
60572
|
-
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
60837
|
+
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1700 => _1700.sources]);
|
|
60573
60838
|
if (!sources || sources.length === 0) return void 0;
|
|
60574
|
-
const content = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
60839
|
+
const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1701 => _1701.content]) || "";
|
|
60575
60840
|
const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
|
|
60576
60841
|
(m) => parseInt(m[1], 10)
|
|
60577
60842
|
);
|
|
@@ -60591,7 +60856,7 @@ function EmbeddableChatInner({
|
|
|
60591
60856
|
const el = panelMeasureRef.current;
|
|
60592
60857
|
if (!el || typeof ResizeObserver === "undefined") return;
|
|
60593
60858
|
const ro = new ResizeObserver((entries) => {
|
|
60594
|
-
const w = _optionalChain([entries, 'access',
|
|
60859
|
+
const w = _optionalChain([entries, 'access', _1702 => _1702[0], 'optionalAccess', _1703 => _1703.contentRect, 'optionalAccess', _1704 => _1704.width]);
|
|
60595
60860
|
if (typeof w === "number") setPanelWidth(w);
|
|
60596
60861
|
});
|
|
60597
60862
|
ro.observe(el);
|
|
@@ -60634,16 +60899,16 @@ function EmbeddableChatInner({
|
|
|
60634
60899
|
const isMingoMode = activeMode === "mingo";
|
|
60635
60900
|
const stackedListView = isMingoMode && !hasConversation && !archiveOpen && !wideMingo && !composeOpen;
|
|
60636
60901
|
const headerShowBack = hasConversation || guideCanReturnToMingo;
|
|
60637
|
-
const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
60902
|
+
const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1705 => _1705.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
|
|
60638
60903
|
const headerBackAriaLabel = hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo";
|
|
60639
60904
|
const headerOnBack = hasConversation ? handleBack : () => handleActiveModeChange("mingo");
|
|
60640
60905
|
const headerOnRestore = isViewingArchived && unarchiveDialog && activeDialog ? () => setRestoreTarget(activeDialog) : void 0;
|
|
60641
60906
|
const headerOnRename = activeDialogId && activeDialog && mingoCaps.canRename ? () => setRenameTarget(activeDialog) : void 0;
|
|
60642
60907
|
const headerOnArchive = activeDialogId && activeDialog && mingoCaps.canArchive ? () => setArchiveTarget(activeDialog) : void 0;
|
|
60643
60908
|
const headerOnOpenArchive = fetchArchivedDialogs ? openArchive : void 0;
|
|
60644
|
-
const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
60645
|
-
const headerPersonName = _optionalChain([headerOwner, 'optionalAccess',
|
|
60646
|
-
const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access',
|
|
60909
|
+
const headerOwner = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1706 => _1706.owner]) : void 0;
|
|
60910
|
+
const headerPersonName = _optionalChain([headerOwner, 'optionalAccess', _1707 => _1707.name, 'optionalAccess', _1708 => _1708.trim, 'call', _1709 => _1709()]) || headerUserName;
|
|
60911
|
+
const headerPersonAvatarUrl = headerOwner ? _optionalChain([headerOwner, 'access', _1710 => _1710.avatarUrl, 'optionalAccess', _1711 => _1711.trim, 'call', _1712 => _1712()]) || void 0 : _optionalChain([identityUser, 'optionalAccess', _1713 => _1713.avatarUrl, 'optionalAccess', _1714 => _1714.trim, 'call', _1715 => _1715()]) || _optionalChain([userAvatarUrl, 'optionalAccess', _1716 => _1716.trim, 'call', _1717 => _1717()]) || void 0;
|
|
60647
60912
|
const headerAvatar = headerPersonName || headerPersonAvatarUrl ? { name: headerPersonName, avatarUrl: headerPersonAvatarUrl } : void 0;
|
|
60648
60913
|
const handleNewChat = _react.useCallback.call(void 0, () => {
|
|
60649
60914
|
resetToNewChat();
|
|
@@ -61004,9 +61269,9 @@ function EmbeddableChatInner({
|
|
|
61004
61269
|
subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
|
|
61005
61270
|
subtitleLoading: emptyStateLoading,
|
|
61006
61271
|
...guideWelcome,
|
|
61007
|
-
title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess',
|
|
61008
|
-
icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess',
|
|
61009
|
-
quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess',
|
|
61272
|
+
title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1718 => _1718.title]))),
|
|
61273
|
+
icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1719 => _1719.icon]))),
|
|
61274
|
+
quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1720 => _1720.quickActions]), () => ( guideSuggestedActions)),
|
|
61010
61275
|
onQuickAction: (action) => {
|
|
61011
61276
|
setQuickActionPreview(null);
|
|
61012
61277
|
handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
|
|
@@ -61086,8 +61351,8 @@ function EmbeddableChatInner({
|
|
|
61086
61351
|
selectedContextItems: contextItems,
|
|
61087
61352
|
onToggleContextItem: toggleContextItem,
|
|
61088
61353
|
onRemoveContextItem: removeContextItem,
|
|
61089
|
-
contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess',
|
|
61090
|
-
onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess',
|
|
61354
|
+
contextMemoryItems: _optionalChain([contextMemory, 'optionalAccess', _1721 => _1721.items]),
|
|
61355
|
+
onRemoveContextMemoryItem: _optionalChain([contextMemory, 'optionalAccess', _1722 => _1722.onRemove]),
|
|
61091
61356
|
contextPickerOpen,
|
|
61092
61357
|
onOpenContextPicker: openContextPicker,
|
|
61093
61358
|
onCloseContextPicker: closeContextPicker,
|
|
@@ -62276,5 +62541,11 @@ function EmbeddableChatInner({
|
|
|
62276
62541
|
|
|
62277
62542
|
|
|
62278
62543
|
|
|
62279
|
-
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.FloatingTooltip = FloatingTooltip; exports.TruncateText = TruncateText; 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.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.InfoHint = InfoHint; exports.Field = Field; exports.HoneypotField = HoneypotField; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; exports.SearchableSelect = SearchableSelect; exports.formatDate = formatDate2; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.titleCaseFromSlug = titleCaseFromSlug; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; exports.ScrollShadow = ScrollShadow; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; 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.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; 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.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.SAFE_HTML_TAGS = SAFE_HTML_TAGS; exports.SVG_TAGS = SVG_TAGS; exports.buildEffectiveTagSet = buildEffectiveTagSet; exports.buildSanitizeSchema = buildSanitizeSchema; exports.rehypeStripUnsafe = rehypeStripUnsafe; exports.escapeUnknownHtmlTags = escapeUnknownHtmlTags; exports.cardAwareUrlTransform = cardAwareUrlTransform; exports.TEXT_SIZE_PRESETS = TEXT_SIZE_PRESETS; exports.resolveTextSizeConfig = resolveTextSizeConfig; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.MermaidDiagram = MermaidDiagram; exports.splitStreamingBlocks = splitStreamingBlocks; exports.completeStreamingTail = completeStreamingTail; exports.MarkdownEngine = MarkdownEngine; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.fetchPriorityProp = fetchPriorityProp; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.saveDataEnabled = saveDataEnabled; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; exports.TicketEscalatedMessage = TicketEscalatedMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.ThinkingDisplay = ThinkingDisplay; exports.GuideDisplay = GuideDisplay; exports.AskDisplay = AskDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.useMarqueeSync = useMarqueeSync; exports.getMarqueeTrackOffset = getMarqueeTrackOffset; exports.getMarqueeAppliedOffset = getMarqueeAppliedOffset; exports.getMarqueeCloneTwin = getMarqueeCloneTwin; exports.MarqueeWallFades = MarqueeWallFades; exports.MarqueeWall = MarqueeWall; exports.WALL_SKELETON_LABEL_CH = WALL_SKELETON_LABEL_CH; exports.interleave = interleave; exports.QuickActionWall = QuickActionWall; exports.QuickActionMarquee = QuickActionMarquee; 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.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.ChatHeaderSearchField = ChatHeaderSearchField; 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.ChatContextMemoryBar = ChatContextMemoryBar; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.VideoHoverPreviewSurface = VideoHoverPreviewSurface; exports.CardHitLayer = CardHitLayer; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; 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.AvatarStack = AvatarStack; 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.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.readFetchedCardTitle = readFetchedCardTitle; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.clickupTaskUrl = clickupTaskUrl; 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.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.buildDiscussPrompt = buildDiscussPrompt; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.isGuideApproval = isGuideApproval; exports.guideApprovalOrigin = guideApprovalOrigin; exports.approvalDisplaysInline = approvalDisplaysInline; exports.isGuideApprovalSegment = isGuideApprovalSegment; exports.createEmptyTurnMeta = createEmptyTurnMeta; exports.createChatStreamReducer = createChatStreamReducer; exports.DEFAULT_DIALOG_SIDE = DEFAULT_DIALOG_SIDE; exports.DEFAULT_MAX_REDUCERS = DEFAULT_MAX_REDUCERS; exports.MAX_PENDING_RETAIN_KEYS = MAX_PENDING_RETAIN_KEYS; exports.createChatDialogStore = createChatDialogStore; exports.createDeltaBatcher = createDeltaBatcher; exports.useChatStreamReducer = useChatStreamReducer; exports.useSseChatAdapter = useSseChatAdapter; exports.decodeHistoricalMessageData = decodeHistoricalMessageData; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.extractIncompleteTailState = extractIncompleteTailState; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; 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.flattenAssistantContent = flattenAssistantContent; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.EmbeddableChat = EmbeddableChat; exports.BackButton = BackButton; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; 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.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; 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.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; 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.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; 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.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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; 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.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; 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.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; 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.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; 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.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.TakeOverTicketModal = TakeOverTicketModal; exports.FilterPillRow = FilterPillRow; exports.MingoAiButton = MingoAiButton; exports.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.useOptionalTicketLive = useOptionalTicketLive; exports.useTicketLive = useTicketLive; exports.TicketLiveProvider = TicketLiveProvider; exports.isOptimistic = isOptimistic; exports.TICKET_TEXT_MAX_CHARS = TICKET_TEXT_MAX_CHARS; exports.TICKET_MARK_READ_DEBOUNCE_MS = TICKET_MARK_READ_DEBOUNCE_MS; exports.TOAST_COPY = TOAST_COPY; exports.TicketAlertsButton = TicketAlertsButton; exports.TopNavigation = TopNavigation; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NAVIGATION_SIDEBAR_WIDTH_VAR = NAVIGATION_SIDEBAR_WIDTH_VAR; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
|
|
62280
|
-
|
|
62544
|
+
|
|
62545
|
+
|
|
62546
|
+
|
|
62547
|
+
|
|
62548
|
+
|
|
62549
|
+
|
|
62550
|
+
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.FloatingTooltip = FloatingTooltip; exports.TruncateText = TruncateText; 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.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.InfoHint = InfoHint; exports.Field = Field; exports.HoneypotField = HoneypotField; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.DeletedUserAvatar = DeletedUserAvatar; exports.SearchableSelect = SearchableSelect; exports.formatDate = formatDate2; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.titleCaseFromSlug = titleCaseFromSlug; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; exports.ScrollShadow = ScrollShadow; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; 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.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; 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.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.SAFE_HTML_TAGS = SAFE_HTML_TAGS; exports.SVG_TAGS = SVG_TAGS; exports.buildEffectiveTagSet = buildEffectiveTagSet; exports.buildSanitizeSchema = buildSanitizeSchema; exports.rehypeStripUnsafe = rehypeStripUnsafe; exports.escapeUnknownHtmlTags = escapeUnknownHtmlTags; exports.cardAwareUrlTransform = cardAwareUrlTransform; exports.TEXT_SIZE_PRESETS = TEXT_SIZE_PRESETS; exports.resolveTextSizeConfig = resolveTextSizeConfig; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.buildHeadingIdMap = buildHeadingIdMap; exports.useHeadingIdMap = useHeadingIdMap; exports.extractText = extractText; exports.MermaidDiagram = MermaidDiagram; exports.splitStreamingBlocks = splitStreamingBlocks; exports.completeStreamingTail = completeStreamingTail; exports.MarkdownEngine = MarkdownEngine; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.fetchPriorityProp = fetchPriorityProp; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.saveDataEnabled = saveDataEnabled; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.EscalationOfferMessage = EscalationOfferMessage; exports.AiAssistantInfo = AiAssistantInfo; exports.TicketEscalatedMessage = TicketEscalatedMessage; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.TICKET_EVENT_KIND = TICKET_EVENT_KIND; exports.TicketEventMessage = TicketEventMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.ThinkingDisplay = ThinkingDisplay; exports.GuideDisplay = GuideDisplay; exports.AskDisplay = AskDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.isQuickActionIconSpec = isQuickActionIconSpec; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.QuickActionChipFromData = QuickActionChipFromData; exports.useMarqueeSync = useMarqueeSync; exports.getMarqueeTrackOffset = getMarqueeTrackOffset; exports.getMarqueeAppliedOffset = getMarqueeAppliedOffset; exports.getMarqueeCloneTwin = getMarqueeCloneTwin; exports.MarqueeWallFades = MarqueeWallFades; exports.MarqueeWall = MarqueeWall; exports.WALL_SKELETON_LABEL_CH = WALL_SKELETON_LABEL_CH; exports.interleave = interleave; exports.QuickActionWall = QuickActionWall; exports.QuickActionMarquee = QuickActionMarquee; 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.TabSelector = TabSelector; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.ChatHeaderSearchField = ChatHeaderSearchField; 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.ChatContextMemoryBar = ChatContextMemoryBar; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.VideoHoverPreviewSurface = VideoHoverPreviewSurface; exports.CardHitLayer = CardHitLayer; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; 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.AvatarStack = AvatarStack; 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.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.readFetchedCardTitle = readFetchedCardTitle; exports.resolveFetchedCardHref = resolveFetchedCardHref; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.clickupTaskUrl = clickupTaskUrl; 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.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.buildDiscussPrompt = buildDiscussPrompt; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.isGuideApproval = isGuideApproval; exports.guideApprovalOrigin = guideApprovalOrigin; exports.approvalDisplaysInline = approvalDisplaysInline; exports.isGuideApprovalSegment = isGuideApprovalSegment; exports.createEmptyTurnMeta = createEmptyTurnMeta; exports.createChatStreamReducer = createChatStreamReducer; exports.DEFAULT_DIALOG_SIDE = DEFAULT_DIALOG_SIDE; exports.DEFAULT_MAX_REDUCERS = DEFAULT_MAX_REDUCERS; exports.MAX_PENDING_RETAIN_KEYS = MAX_PENDING_RETAIN_KEYS; exports.createChatDialogStore = createChatDialogStore; exports.createDeltaBatcher = createDeltaBatcher; exports.useChatStreamReducer = useChatStreamReducer; exports.useSseChatAdapter = useSseChatAdapter; exports.decodeHistoricalMessageData = decodeHistoricalMessageData; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.extractIncompleteTailState = extractIncompleteTailState; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; 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.flattenAssistantContent = flattenAssistantContent; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.EmbeddableChat = EmbeddableChat; exports.BackButton = BackButton; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; 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.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; 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.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; 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.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; 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.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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; 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.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; 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.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; 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.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; 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.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.FilterPillRow = FilterPillRow; exports.MingoAiButton = MingoAiButton; exports.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.useOptionalTicketLive = useOptionalTicketLive; exports.useTicketLive = useTicketLive; exports.TicketLiveProvider = TicketLiveProvider; exports.isOptimistic = isOptimistic; exports.TICKET_TEXT_MAX_CHARS = TICKET_TEXT_MAX_CHARS; exports.TICKET_MARK_READ_DEBOUNCE_MS = TICKET_MARK_READ_DEBOUNCE_MS; exports.TOAST_COPY = TOAST_COPY; exports.TicketAlertsButton = TicketAlertsButton; exports.TopNavigation = TopNavigation; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NAVIGATION_SIDEBAR_WIDTH_VAR = NAVIGATION_SIDEBAR_WIDTH_VAR; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
|
|
62551
|
+
//# sourceMappingURL=chunk-QQ3HUSDJ.cjs.map
|