@flamingo-stack/openframe-frontend-core 0.0.181 → 0.0.182-snapshot.20260514221132
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-L5AAJ3QN.cjs → chunk-JHWVLIFZ.cjs} +497 -374
- package/dist/chunk-JHWVLIFZ.cjs.map +1 -0
- package/dist/{chunk-VEOBMVF5.js → chunk-Z2A6RJCK.js} +4285 -4162
- package/dist/chunk-Z2A6RJCK.js.map +1 -0
- package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
- package/dist/components/chat/chat-message-list.d.ts.map +1 -1
- package/dist/components/chat/cycling-phrase.d.ts +30 -0
- package/dist/components/chat/cycling-phrase.d.ts.map +1 -0
- package/dist/components/chat/hooks/index.d.ts +0 -1
- package/dist/components/chat/hooks/index.d.ts.map +1 -1
- package/dist/components/chat/index.d.ts +0 -1
- package/dist/components/chat/index.d.ts.map +1 -1
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/features/video-source-selector.d.ts +3 -3
- package/dist/components/features/video-source-selector.d.ts.map +1 -1
- package/dist/components/features/video.d.ts.map +1 -1
- package/dist/components/index.cjs +2 -6
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +1 -5
- package/dist/components/media-carousel.d.ts.map +1 -1
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/ui/index.cjs +2 -6
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.js +1 -5
- package/dist/index.cjs +2 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -5
- package/dist/types/case-study.d.ts +2 -2
- package/dist/types/case-study.d.ts.map +1 -1
- package/dist/types/supabase.d.ts +6 -6
- package/dist/types/supabase.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/chat/chat-message-enhanced.tsx +37 -5
- package/src/components/chat/chat-message-list.tsx +51 -179
- package/src/components/chat/cycling-phrase.tsx +129 -0
- package/src/components/chat/hooks/index.ts +0 -1
- package/src/components/chat/index.ts +0 -1
- package/src/components/features/video-source-selector.tsx +11 -11
- package/src/components/features/video.tsx +126 -75
- package/src/components/media-carousel.tsx +2 -3
- package/src/types/case-study.ts +2 -2
- package/src/types/supabase.ts +6 -6
- package/dist/chunk-L5AAJ3QN.cjs.map +0 -1
- package/dist/chunk-VEOBMVF5.js.map +0 -1
- package/dist/components/chat/chat-message-loader.d.ts +0 -23
- package/dist/components/chat/chat-message-loader.d.ts.map +0 -1
- package/dist/components/chat/hooks/use-delayed-flag.d.ts +0 -25
- package/dist/components/chat/hooks/use-delayed-flag.d.ts.map +0 -1
- package/src/components/chat/chat-message-loader.tsx +0 -67
- package/src/components/chat/hooks/use-delayed-flag.ts +0 -56
|
@@ -66,7 +66,6 @@ var _chunkBJTOSUT4cjs = require('./chunk-BJTOSUT4.cjs');
|
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
|
|
69
|
-
|
|
70
69
|
|
|
71
70
|
|
|
72
71
|
var _chunkEWIC26TWcjs = require('./chunk-EWIC26TW.cjs');
|
|
@@ -124,6 +123,7 @@ var _chunkOFAYLG6Dcjs = require('./chunk-OFAYLG6D.cjs');
|
|
|
124
123
|
|
|
125
124
|
|
|
126
125
|
|
|
126
|
+
|
|
127
127
|
|
|
128
128
|
|
|
129
129
|
var _chunkTMD5LDX4cjs = require('./chunk-TMD5LDX4.cjs');
|
|
@@ -4992,6 +4992,91 @@ ChatInput.displayName = "ChatInput";
|
|
|
4992
4992
|
_chunkOFAYLG6Dcjs.init_cn.call(void 0, );
|
|
4993
4993
|
|
|
4994
4994
|
|
|
4995
|
+
// src/components/chat/cycling-phrase.tsx
|
|
4996
|
+
_chunkOFAYLG6Dcjs.init_cn.call(void 0, );
|
|
4997
|
+
|
|
4998
|
+
|
|
4999
|
+
var BLINK_KEYFRAMES = `
|
|
5000
|
+
@keyframes cyclingCursorBlink {
|
|
5001
|
+
50% { opacity: 0; }
|
|
5002
|
+
}
|
|
5003
|
+
`;
|
|
5004
|
+
function CyclingPhrase({
|
|
5005
|
+
words,
|
|
5006
|
+
className,
|
|
5007
|
+
charMs = 60,
|
|
5008
|
+
holdMs = 4500
|
|
5009
|
+
}) {
|
|
5010
|
+
const [wordIndex, setWordIndex] = _react.useState.call(void 0, 0);
|
|
5011
|
+
const [text, setText] = _react.useState.call(void 0, "");
|
|
5012
|
+
const [cursor, setCursor] = _react.useState.call(void 0, 0);
|
|
5013
|
+
const [holding, setHolding] = _react.useState.call(void 0, false);
|
|
5014
|
+
const placeholder = _react.useMemo.call(void 0,
|
|
5015
|
+
() => words.reduce((longest, w) => w.length > longest.length ? w : longest, ""),
|
|
5016
|
+
[words]
|
|
5017
|
+
);
|
|
5018
|
+
_react.useEffect.call(void 0, () => {
|
|
5019
|
+
if (words.length === 0) return;
|
|
5020
|
+
const target = words[wordIndex];
|
|
5021
|
+
let timeoutId;
|
|
5022
|
+
if (holding) {
|
|
5023
|
+
timeoutId = setTimeout(() => {
|
|
5024
|
+
setWordIndex((i) => (i + 1) % words.length);
|
|
5025
|
+
setCursor(0);
|
|
5026
|
+
setHolding(false);
|
|
5027
|
+
}, holdMs);
|
|
5028
|
+
return () => clearTimeout(timeoutId);
|
|
5029
|
+
}
|
|
5030
|
+
const maxLen = Math.max(text.length, target.length);
|
|
5031
|
+
if (cursor >= maxLen) {
|
|
5032
|
+
if (text !== target) setText(target);
|
|
5033
|
+
setHolding(true);
|
|
5034
|
+
return;
|
|
5035
|
+
}
|
|
5036
|
+
timeoutId = setTimeout(() => {
|
|
5037
|
+
setText((prev) => {
|
|
5038
|
+
if (cursor < target.length) {
|
|
5039
|
+
return target.slice(0, cursor + 1) + prev.slice(cursor + 1);
|
|
5040
|
+
}
|
|
5041
|
+
return prev.slice(0, cursor);
|
|
5042
|
+
});
|
|
5043
|
+
setCursor((c) => c + 1);
|
|
5044
|
+
}, charMs);
|
|
5045
|
+
return () => clearTimeout(timeoutId);
|
|
5046
|
+
}, [wordIndex, cursor, text, holding, words, charMs, holdMs]);
|
|
5047
|
+
if (words.length === 0) return null;
|
|
5048
|
+
const before = text.slice(0, cursor);
|
|
5049
|
+
const after = text.slice(cursor);
|
|
5050
|
+
const cursorBlock = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5051
|
+
"span",
|
|
5052
|
+
{
|
|
5053
|
+
"aria-hidden": true,
|
|
5054
|
+
className: "inline-block bg-current align-baseline",
|
|
5055
|
+
style: {
|
|
5056
|
+
width: "0.6em",
|
|
5057
|
+
height: "1em",
|
|
5058
|
+
verticalAlign: "-0.1em",
|
|
5059
|
+
marginLeft: "1px",
|
|
5060
|
+
marginRight: "1px",
|
|
5061
|
+
animation: "cyclingCursorBlink 1s steps(1) infinite"
|
|
5062
|
+
}
|
|
5063
|
+
}
|
|
5064
|
+
);
|
|
5065
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkOFAYLG6Dcjs.cn.call(void 0, "relative inline-block whitespace-nowrap", className), children: [
|
|
5066
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "style", { dangerouslySetInnerHTML: { __html: BLINK_KEYFRAMES } }),
|
|
5067
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { "aria-hidden": true, className: "invisible", children: [
|
|
5068
|
+
placeholder,
|
|
5069
|
+
"..."
|
|
5070
|
+
] }),
|
|
5071
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "absolute inset-0 inline-flex items-baseline", "aria-live": "polite", children: [
|
|
5072
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: before }),
|
|
5073
|
+
!holding && cursorBlock,
|
|
5074
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: after }),
|
|
5075
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "..." })
|
|
5076
|
+
] })
|
|
5077
|
+
] });
|
|
5078
|
+
}
|
|
5079
|
+
|
|
4995
5080
|
// src/components/chat/tool-execution-display.tsx
|
|
4996
5081
|
_chunkOFAYLG6Dcjs.init_cn.call(void 0, );
|
|
4997
5082
|
|
|
@@ -5119,6 +5204,18 @@ function normalizeContent(content) {
|
|
|
5119
5204
|
}
|
|
5120
5205
|
return content;
|
|
5121
5206
|
}
|
|
5207
|
+
var STREAMING_WORDS = [
|
|
5208
|
+
"Thinking",
|
|
5209
|
+
"Vibing",
|
|
5210
|
+
"Mingoing",
|
|
5211
|
+
"Strutting",
|
|
5212
|
+
"Pondering",
|
|
5213
|
+
"Wading",
|
|
5214
|
+
"Hatching",
|
|
5215
|
+
"Preening",
|
|
5216
|
+
"Conjuring",
|
|
5217
|
+
"Riffing"
|
|
5218
|
+
];
|
|
5122
5219
|
var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
5123
5220
|
({ className, role, content, name, avatar, isTyping = false, timestamp, showAvatar = true, assistantType, authorType: authorTypeProp, assistantIcon, chatRefs, renderEntityCard, ...props }, ref) => {
|
|
5124
5221
|
const isUser = role === "user";
|
|
@@ -5188,6 +5285,8 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5188
5285
|
const avatarProps = getAvatarProps();
|
|
5189
5286
|
const segments = normalizeContent(content);
|
|
5190
5287
|
const isSystem = authorType === "system";
|
|
5288
|
+
const lastSegment = segments[segments.length - 1];
|
|
5289
|
+
const isPausedOnApproval = !!lastSegment && (lastSegment.type === "approval_request" || lastSegment.type === "approval_batch") && (lastSegment.status === void 0 || lastSegment.status === "pending");
|
|
5191
5290
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
5192
5291
|
"div",
|
|
5193
5292
|
{
|
|
@@ -5216,80 +5315,92 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5216
5315
|
] }),
|
|
5217
5316
|
timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-sans text-heading-5 font-medium text-ods-text-secondary shrink-0 whitespace-nowrap", children: timestamp.toLocaleTimeString([], { hour: "numeric", minute: "2-digit" }) })
|
|
5218
5317
|
] }),
|
|
5219
|
-
(!isSystem || segments.length > 0) && /* @__PURE__ */ _jsxruntime.
|
|
5220
|
-
|
|
5221
|
-
|
|
5222
|
-
|
|
5223
|
-
|
|
5224
|
-
|
|
5225
|
-
|
|
5318
|
+
(!isSystem || segments.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2", children: [
|
|
5319
|
+
segments.map((segment, index) => {
|
|
5320
|
+
if (segment.type === "text") {
|
|
5321
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
5322
|
+
"min-w-0 w-full break-words text-h4",
|
|
5323
|
+
isError ? "text-ods-error" : "text-ods-text-primary"
|
|
5324
|
+
), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5325
|
+
SimpleMarkdownRenderer,
|
|
5326
|
+
{
|
|
5327
|
+
content: segment.text,
|
|
5328
|
+
textSize: "compact",
|
|
5329
|
+
additionalRemarkPlugins: cardRemarkPlugins,
|
|
5330
|
+
componentOverrides: cardComponentOverrides
|
|
5331
|
+
}
|
|
5332
|
+
) }, index);
|
|
5333
|
+
} else if (segment.type === "tool_execution") {
|
|
5334
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5335
|
+
ToolExecutionDisplay,
|
|
5336
|
+
{
|
|
5337
|
+
message: segment.data
|
|
5338
|
+
},
|
|
5339
|
+
index
|
|
5340
|
+
);
|
|
5341
|
+
} else if (segment.type === "approval_request") {
|
|
5342
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5343
|
+
ApprovalRequestMessage,
|
|
5344
|
+
{
|
|
5345
|
+
data: segment.data,
|
|
5346
|
+
status: segment.status,
|
|
5347
|
+
onApprove: segment.onApprove,
|
|
5348
|
+
onReject: segment.onReject
|
|
5349
|
+
},
|
|
5350
|
+
index
|
|
5351
|
+
);
|
|
5352
|
+
} else if (segment.type === "approval_batch") {
|
|
5353
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5354
|
+
ApprovalBatchMessage,
|
|
5355
|
+
{
|
|
5356
|
+
data: segment.data,
|
|
5357
|
+
status: segment.status,
|
|
5358
|
+
onApprove: segment.onApprove,
|
|
5359
|
+
onReject: segment.onReject
|
|
5360
|
+
},
|
|
5361
|
+
index
|
|
5362
|
+
);
|
|
5363
|
+
} else if (segment.type === "error") {
|
|
5364
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5365
|
+
ErrorMessageDisplay,
|
|
5366
|
+
{
|
|
5367
|
+
title: segment.title,
|
|
5368
|
+
details: segment.details
|
|
5369
|
+
},
|
|
5370
|
+
index
|
|
5371
|
+
);
|
|
5372
|
+
} else if (segment.type === "context_compaction") {
|
|
5373
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5374
|
+
ContextCompactionDisplay,
|
|
5375
|
+
{
|
|
5376
|
+
status: segment.status
|
|
5377
|
+
},
|
|
5378
|
+
index
|
|
5379
|
+
);
|
|
5380
|
+
} else if (segment.type === "thinking") {
|
|
5381
|
+
const isStreaming = index === segments.length - 1 && isTyping;
|
|
5382
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5383
|
+
ThinkingDisplay,
|
|
5384
|
+
{
|
|
5385
|
+
text: segment.text,
|
|
5386
|
+
isStreaming
|
|
5387
|
+
},
|
|
5388
|
+
index
|
|
5389
|
+
);
|
|
5390
|
+
}
|
|
5391
|
+
return null;
|
|
5392
|
+
}),
|
|
5393
|
+
isTyping && !isPausedOnApproval && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
5394
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatTypingIndicator, {}),
|
|
5395
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5396
|
+
CyclingPhrase,
|
|
5226
5397
|
{
|
|
5227
|
-
|
|
5228
|
-
|
|
5229
|
-
additionalRemarkPlugins: cardRemarkPlugins,
|
|
5230
|
-
componentOverrides: cardComponentOverrides
|
|
5398
|
+
words: STREAMING_WORDS,
|
|
5399
|
+
className: "text-ods-text-secondary text-body-sm"
|
|
5231
5400
|
}
|
|
5232
|
-
)
|
|
5233
|
-
}
|
|
5234
|
-
|
|
5235
|
-
ToolExecutionDisplay,
|
|
5236
|
-
{
|
|
5237
|
-
message: segment.data
|
|
5238
|
-
},
|
|
5239
|
-
index
|
|
5240
|
-
);
|
|
5241
|
-
} else if (segment.type === "approval_request") {
|
|
5242
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5243
|
-
ApprovalRequestMessage,
|
|
5244
|
-
{
|
|
5245
|
-
data: segment.data,
|
|
5246
|
-
status: segment.status,
|
|
5247
|
-
onApprove: segment.onApprove,
|
|
5248
|
-
onReject: segment.onReject
|
|
5249
|
-
},
|
|
5250
|
-
index
|
|
5251
|
-
);
|
|
5252
|
-
} else if (segment.type === "approval_batch") {
|
|
5253
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5254
|
-
ApprovalBatchMessage,
|
|
5255
|
-
{
|
|
5256
|
-
data: segment.data,
|
|
5257
|
-
status: segment.status,
|
|
5258
|
-
onApprove: segment.onApprove,
|
|
5259
|
-
onReject: segment.onReject
|
|
5260
|
-
},
|
|
5261
|
-
index
|
|
5262
|
-
);
|
|
5263
|
-
} else if (segment.type === "error") {
|
|
5264
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5265
|
-
ErrorMessageDisplay,
|
|
5266
|
-
{
|
|
5267
|
-
title: segment.title,
|
|
5268
|
-
details: segment.details
|
|
5269
|
-
},
|
|
5270
|
-
index
|
|
5271
|
-
);
|
|
5272
|
-
} else if (segment.type === "context_compaction") {
|
|
5273
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5274
|
-
ContextCompactionDisplay,
|
|
5275
|
-
{
|
|
5276
|
-
status: segment.status
|
|
5277
|
-
},
|
|
5278
|
-
index
|
|
5279
|
-
);
|
|
5280
|
-
} else if (segment.type === "thinking") {
|
|
5281
|
-
const isStreaming = index === segments.length - 1 && isTyping;
|
|
5282
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5283
|
-
ThinkingDisplay,
|
|
5284
|
-
{
|
|
5285
|
-
text: segment.text,
|
|
5286
|
-
isStreaming
|
|
5287
|
-
},
|
|
5288
|
-
index
|
|
5289
|
-
);
|
|
5290
|
-
}
|
|
5291
|
-
return null;
|
|
5292
|
-
}) })
|
|
5401
|
+
)
|
|
5402
|
+
] })
|
|
5403
|
+
] })
|
|
5293
5404
|
] })
|
|
5294
5405
|
]
|
|
5295
5406
|
}
|
|
@@ -5311,69 +5422,79 @@ _chunkOFAYLG6Dcjs.init_cn.call(void 0, );
|
|
|
5311
5422
|
|
|
5312
5423
|
var _usesticktobottom = require('use-stick-to-bottom');
|
|
5313
5424
|
|
|
5314
|
-
// src/components/chat/chat-message-
|
|
5425
|
+
// src/components/chat/chat-message-skeleton.tsx
|
|
5315
5426
|
_chunkOFAYLG6Dcjs.init_cn.call(void 0, );
|
|
5316
5427
|
|
|
5317
|
-
function
|
|
5428
|
+
function ChatMessageSkeleton({
|
|
5318
5429
|
className,
|
|
5319
|
-
|
|
5320
|
-
|
|
5321
|
-
|
|
5430
|
+
showAvatar = true,
|
|
5431
|
+
isUser = false,
|
|
5432
|
+
assistantType = "fae"
|
|
5322
5433
|
}) {
|
|
5323
|
-
const
|
|
5434
|
+
const isMingo = assistantType === "mingo";
|
|
5324
5435
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
5325
5436
|
"div",
|
|
5326
5437
|
{
|
|
5327
|
-
role: "status",
|
|
5328
|
-
"aria-live": "polite",
|
|
5329
|
-
"aria-busy": "true",
|
|
5330
5438
|
className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
5331
|
-
"
|
|
5332
|
-
"
|
|
5439
|
+
"flex flex-row items-start gap-4",
|
|
5440
|
+
!isUser && "bg-ods-card/50 rounded-lg px-4 -mx-4",
|
|
5333
5441
|
className
|
|
5334
5442
|
),
|
|
5335
5443
|
children: [
|
|
5336
|
-
/* @__PURE__ */ _jsxruntime.
|
|
5337
|
-
|
|
5338
|
-
|
|
5339
|
-
|
|
5340
|
-
|
|
5341
|
-
|
|
5342
|
-
|
|
5343
|
-
}
|
|
5344
|
-
),
|
|
5345
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "
|
|
5346
|
-
|
|
5347
|
-
|
|
5444
|
+
showAvatar && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
5445
|
+
"flex-shrink-0 mt-1 w-8 h-8 rounded animate-pulse",
|
|
5446
|
+
isUser ? "invisible" : isMingo ? "bg-gradient-to-br from-cyan-400/30 to-cyan-600/30" : "bg-gradient-to-br from-pink-400/30 to-pink-600/30"
|
|
5447
|
+
) }),
|
|
5448
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col gap-1 min-w-0", children: [
|
|
5449
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between pr-2", children: [
|
|
5450
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 w-16 bg-ods-border rounded animate-pulse" }),
|
|
5451
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-12 bg-ods-border rounded animate-pulse" })
|
|
5452
|
+
] }),
|
|
5453
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-col gap-2", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-2", children: [
|
|
5454
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-full bg-ods-border rounded animate-pulse" }),
|
|
5455
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-4/5 bg-ods-border rounded animate-pulse" }),
|
|
5456
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-4 w-3/5 bg-ods-border rounded animate-pulse" })
|
|
5457
|
+
] }) })
|
|
5458
|
+
] })
|
|
5348
5459
|
]
|
|
5349
5460
|
}
|
|
5350
5461
|
);
|
|
5351
5462
|
}
|
|
5352
|
-
|
|
5353
|
-
|
|
5354
|
-
|
|
5355
|
-
|
|
5356
|
-
|
|
5357
|
-
|
|
5358
|
-
|
|
5359
|
-
|
|
5360
|
-
|
|
5361
|
-
|
|
5362
|
-
|
|
5363
|
-
|
|
5364
|
-
|
|
5365
|
-
|
|
5366
|
-
|
|
5367
|
-
|
|
5368
|
-
|
|
5369
|
-
|
|
5370
|
-
|
|
5371
|
-
|
|
5372
|
-
|
|
5373
|
-
|
|
5374
|
-
|
|
5375
|
-
|
|
5376
|
-
|
|
5463
|
+
function ChatMessageListSkeleton({
|
|
5464
|
+
className,
|
|
5465
|
+
messageCount = 6,
|
|
5466
|
+
showAvatars = true,
|
|
5467
|
+
assistantType = "fae",
|
|
5468
|
+
contentClassName
|
|
5469
|
+
}) {
|
|
5470
|
+
const messages = Array.from({ length: messageCount }, (_, index) => ({
|
|
5471
|
+
id: index,
|
|
5472
|
+
isUser: index % 3 === 0,
|
|
5473
|
+
assistantType
|
|
5474
|
+
}));
|
|
5475
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative flex-1 min-h-0 flex flex-col", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5476
|
+
"div",
|
|
5477
|
+
{
|
|
5478
|
+
className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
5479
|
+
"flex h-full w-full flex-col overflow-y-auto overflow-x-hidden flex-1",
|
|
5480
|
+
"[scroll-behavior:smooth]",
|
|
5481
|
+
"scrollbar-thin scrollbar-track-transparent scrollbar-thumb-ods-border/30 hover:scrollbar-thumb-ods-text-secondary/30",
|
|
5482
|
+
className
|
|
5483
|
+
),
|
|
5484
|
+
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkOFAYLG6Dcjs.cn.call(void 0, "mx-auto flex w-full max-w-3xl flex-col pb-2 min-w-0", contentClassName || "px-4"), style: { minHeight: "100%" }, children: [
|
|
5485
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
|
|
5486
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-6", children: messages.map((message) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5487
|
+
ChatMessageSkeleton,
|
|
5488
|
+
{
|
|
5489
|
+
showAvatar: showAvatars,
|
|
5490
|
+
isUser: message.isUser,
|
|
5491
|
+
assistantType: message.assistantType
|
|
5492
|
+
},
|
|
5493
|
+
message.id
|
|
5494
|
+
)) })
|
|
5495
|
+
] })
|
|
5496
|
+
}
|
|
5497
|
+
) });
|
|
5377
5498
|
}
|
|
5378
5499
|
|
|
5379
5500
|
// src/components/chat/chat-message-list.tsx
|
|
@@ -5397,20 +5518,19 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
5397
5518
|
renderEntityCard,
|
|
5398
5519
|
...props
|
|
5399
5520
|
}, ref) => {
|
|
5400
|
-
const { scrollRef, contentRef, scrollToBottom
|
|
5521
|
+
const { scrollRef, contentRef, scrollToBottom } = _usesticktobottom.useStickToBottom.call(void 0, {
|
|
5401
5522
|
resize: "smooth",
|
|
5402
|
-
initial:
|
|
5523
|
+
initial: false
|
|
5403
5524
|
});
|
|
5404
|
-
const
|
|
5405
|
-
const [sentinelEl, setSentinelEl] = _react.useState.call(void 0, null);
|
|
5525
|
+
const sentinelRef = _react.useRef.call(void 0, null);
|
|
5406
5526
|
const onLoadMoreRef = _react.useRef.call(void 0, onLoadMore);
|
|
5407
5527
|
onLoadMoreRef.current = onLoadMore;
|
|
5408
5528
|
const isFetchingRef = _react.useRef.call(void 0, isFetchingNextPage);
|
|
5409
5529
|
isFetchingRef.current = isFetchingNextPage;
|
|
5410
5530
|
const prevRenderRef = _react.useRef.call(void 0, { dialogId: void 0, messageCount: 0, lastMessageId: void 0 });
|
|
5411
5531
|
const prependRef = _react.useRef.call(void 0, { firstMessageId: void 0, firstMessageContent: void 0, scrollHeight: 0 });
|
|
5412
|
-
_react.
|
|
5413
|
-
if (!autoScroll
|
|
5532
|
+
_react.useEffect.call(void 0, () => {
|
|
5533
|
+
if (!autoScroll) return;
|
|
5414
5534
|
const dialogChanged = dialogId !== prevRenderRef.current.dialogId;
|
|
5415
5535
|
const prevCount = prevRenderRef.current.messageCount;
|
|
5416
5536
|
const newCount = messages.length;
|
|
@@ -5425,29 +5545,21 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
5425
5545
|
return;
|
|
5426
5546
|
}
|
|
5427
5547
|
if (newCount > prevCount) {
|
|
5428
|
-
const isPrepend = prependRef.current.firstMessageId !== void 0 && _optionalChain([messages, 'access', _110 => _110[0], 'optionalAccess', _111 => _111.id]) !== prependRef.current.firstMessageId;
|
|
5429
|
-
if (isPrepend) return;
|
|
5430
5548
|
const newSlice = messages.slice(prevCount);
|
|
5431
5549
|
const hasNewUser = newSlice.some((m) => m.role === "user");
|
|
5432
5550
|
if (hasNewUser) {
|
|
5433
5551
|
void scrollToBottom({ animation: "instant", ignoreEscapes: true });
|
|
5434
|
-
return;
|
|
5435
5552
|
}
|
|
5436
|
-
void scrollToBottom({ animation: "instant", ignoreEscapes: true });
|
|
5437
|
-
return;
|
|
5438
5553
|
}
|
|
5439
|
-
|
|
5440
|
-
void scrollToBottom({ animation: "smooth" });
|
|
5441
|
-
}
|
|
5442
|
-
}, [autoScroll, messages, dialogId, scrollToBottom, scrollEl, escapedFromLock]);
|
|
5554
|
+
}, [autoScroll, messages, dialogId, scrollToBottom]);
|
|
5443
5555
|
_react.useLayoutEffect.call(void 0, () => {
|
|
5444
|
-
const el =
|
|
5556
|
+
const el = scrollRef.current;
|
|
5445
5557
|
if (!el) {
|
|
5446
5558
|
prependRef.current = { firstMessageId: void 0, firstMessageContent: void 0, scrollHeight: 0 };
|
|
5447
5559
|
return;
|
|
5448
5560
|
}
|
|
5449
|
-
const currentFirstId = _optionalChain([messages, 'access',
|
|
5450
|
-
const currentFirstContent = _optionalChain([messages, 'access',
|
|
5561
|
+
const currentFirstId = _optionalChain([messages, 'access', _110 => _110[0], 'optionalAccess', _111 => _111.id]);
|
|
5562
|
+
const currentFirstContent = _optionalChain([messages, 'access', _112 => _112[0], 'optionalAccess', _113 => _113.content]);
|
|
5451
5563
|
const prevFirstId = prependRef.current.firstMessageId;
|
|
5452
5564
|
const prevHeight = prependRef.current.scrollHeight;
|
|
5453
5565
|
if (currentFirstId !== prevFirstId) {
|
|
@@ -5469,54 +5581,43 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
5469
5581
|
if (currentFirstContent !== prependRef.current.firstMessageContent) {
|
|
5470
5582
|
prependRef.current.firstMessageContent = currentFirstContent;
|
|
5471
5583
|
}
|
|
5472
|
-
}, [messages,
|
|
5584
|
+
}, [messages, scrollRef]);
|
|
5473
5585
|
_react.useEffect.call(void 0, () => {
|
|
5474
|
-
const scrollContainer =
|
|
5475
|
-
const sentinelElement =
|
|
5476
|
-
if (!scrollContainer || !hasNextPage) return;
|
|
5477
|
-
const
|
|
5478
|
-
|
|
5479
|
-
|
|
5480
|
-
|
|
5481
|
-
|
|
5482
|
-
|
|
5483
|
-
|
|
5484
|
-
|
|
5485
|
-
|
|
5486
|
-
|
|
5487
|
-
|
|
5488
|
-
|
|
5489
|
-
|
|
5490
|
-
observer.observe(sentinelElement);
|
|
5491
|
-
}
|
|
5492
|
-
const onScroll = () => {
|
|
5493
|
-
if (scrollContainer.scrollTop <= 200) tryLoad();
|
|
5494
|
-
};
|
|
5495
|
-
scrollContainer.addEventListener("scroll", onScroll, { passive: true });
|
|
5496
|
-
return () => {
|
|
5497
|
-
_optionalChain([observer, 'optionalAccess', _119 => _119.disconnect, 'call', _120 => _120()]);
|
|
5498
|
-
scrollContainer.removeEventListener("scroll", onScroll);
|
|
5499
|
-
};
|
|
5500
|
-
}, [hasNextPage, scrollEl, sentinelEl, messages.length]);
|
|
5586
|
+
const scrollContainer = scrollRef.current;
|
|
5587
|
+
const sentinelElement = sentinelRef.current;
|
|
5588
|
+
if (!scrollContainer || !sentinelElement || !hasNextPage) return;
|
|
5589
|
+
const observer = new IntersectionObserver(
|
|
5590
|
+
(entries) => {
|
|
5591
|
+
const entry = entries[0];
|
|
5592
|
+
if (!entry) return;
|
|
5593
|
+
if (entry.isIntersecting && !isFetchingRef.current) {
|
|
5594
|
+
_optionalChain([onLoadMoreRef, 'access', _114 => _114.current, 'optionalCall', _115 => _115()]);
|
|
5595
|
+
}
|
|
5596
|
+
},
|
|
5597
|
+
{ root: scrollContainer, rootMargin: "200px", threshold: 0.1 }
|
|
5598
|
+
);
|
|
5599
|
+
observer.observe(sentinelElement);
|
|
5600
|
+
return () => observer.disconnect();
|
|
5601
|
+
}, [hasNextPage, scrollRef]);
|
|
5501
5602
|
_react.useImperativeHandle.call(void 0, ref, () => scrollRef.current, [scrollRef]);
|
|
5502
|
-
|
|
5503
|
-
const setScrollRef = _react.useCallback.call(void 0, (el) => {
|
|
5504
|
-
scrollRef(el);
|
|
5505
|
-
setScrollEl(el);
|
|
5506
|
-
}, [scrollRef]);
|
|
5507
|
-
const setContentRef = _react.useCallback.call(void 0, (el) => {
|
|
5508
|
-
contentRef(el);
|
|
5509
|
-
}, [contentRef]);
|
|
5510
|
-
if (showLoader) {
|
|
5603
|
+
if (isLoading) {
|
|
5511
5604
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5512
|
-
|
|
5605
|
+
ChatMessageListSkeleton,
|
|
5513
5606
|
{
|
|
5514
5607
|
className,
|
|
5515
|
-
|
|
5516
|
-
assistantType
|
|
5608
|
+
showAvatars,
|
|
5609
|
+
assistantType,
|
|
5610
|
+
contentClassName,
|
|
5611
|
+
messageCount: 6
|
|
5517
5612
|
}
|
|
5518
5613
|
);
|
|
5519
5614
|
}
|
|
5615
|
+
const setScrollRef = (el) => {
|
|
5616
|
+
scrollRef(el);
|
|
5617
|
+
};
|
|
5618
|
+
const setContentRef = (el) => {
|
|
5619
|
+
contentRef(el);
|
|
5620
|
+
};
|
|
5520
5621
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex-1 min-h-0 flex flex-col", children: [
|
|
5521
5622
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5522
5623
|
"div",
|
|
@@ -5538,17 +5639,7 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
5538
5639
|
),
|
|
5539
5640
|
style: { minHeight: "100%" },
|
|
5540
5641
|
children: [
|
|
5541
|
-
hasNextPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref:
|
|
5542
|
-
isFetchingNextPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5543
|
-
"div",
|
|
5544
|
-
{
|
|
5545
|
-
className: "flex justify-center py-3 animate-in fade-in duration-200",
|
|
5546
|
-
role: "status",
|
|
5547
|
-
"aria-live": "polite",
|
|
5548
|
-
"aria-busy": "true",
|
|
5549
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PulseDots, { size: "sm" })
|
|
5550
|
-
}
|
|
5551
|
-
),
|
|
5642
|
+
hasNextPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-px" }),
|
|
5552
5643
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
|
|
5553
5644
|
messages.map((message, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5554
5645
|
MemoizedChatMessageEnhanced,
|
|
@@ -5657,7 +5748,7 @@ var ChatTicketItem = React15.forwardRef(
|
|
|
5657
5748
|
{
|
|
5658
5749
|
ref,
|
|
5659
5750
|
type: "button",
|
|
5660
|
-
onClick: () => _optionalChain([onClick, 'optionalCall',
|
|
5751
|
+
onClick: () => _optionalChain([onClick, 'optionalCall', _116 => _116(ticket.id)]),
|
|
5661
5752
|
className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
5662
5753
|
"flex items-center gap-4 w-full h-20 px-4",
|
|
5663
5754
|
"bg-ods-card border-b border-ods-border",
|
|
@@ -6005,8 +6096,8 @@ ChatSidebarSkeleton.displayName = "ChatSidebarSkeleton";
|
|
|
6005
6096
|
var DialogListItem = _react.forwardRef.call(void 0,
|
|
6006
6097
|
({ className, dialog, isActive, onDialogSelect, onClick, ...props }, ref) => {
|
|
6007
6098
|
const handleClick = (e) => {
|
|
6008
|
-
_optionalChain([onDialogSelect, 'optionalCall',
|
|
6009
|
-
_optionalChain([onClick, 'optionalCall',
|
|
6099
|
+
_optionalChain([onDialogSelect, 'optionalCall', _117 => _117(dialog.id)]);
|
|
6100
|
+
_optionalChain([onClick, 'optionalCall', _118 => _118(e)]);
|
|
6010
6101
|
};
|
|
6011
6102
|
const formatTimestamp2 = (timestamp) => {
|
|
6012
6103
|
if (!timestamp) return "";
|
|
@@ -6065,7 +6156,7 @@ var ChatSidebar = _react.forwardRef.call(void 0,
|
|
|
6065
6156
|
(entries) => {
|
|
6066
6157
|
const [entry] = entries;
|
|
6067
6158
|
if (entry.isIntersecting && !isFetchingRef.current) {
|
|
6068
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
6159
|
+
_optionalChain([onLoadMoreRef, 'access', _119 => _119.current, 'optionalCall', _120 => _120()]);
|
|
6069
6160
|
}
|
|
6070
6161
|
},
|
|
6071
6162
|
{ root: scrollContainer, rootMargin: "100px", threshold: 0.1 }
|
|
@@ -6483,7 +6574,7 @@ function useNatsDialogSubscription({
|
|
|
6483
6574
|
reconnectionBackoffRef.current = reconnectionBackoff;
|
|
6484
6575
|
}, [reconnectionBackoff]);
|
|
6485
6576
|
const acquireClient = _react.useCallback.call(void 0, (url) => {
|
|
6486
|
-
if (_optionalChain([shared, 'optionalAccess',
|
|
6577
|
+
if (_optionalChain([shared, 'optionalAccess', _121 => _121.wsUrl]) !== url) {
|
|
6487
6578
|
if (shared) {
|
|
6488
6579
|
shared.closeTimer && clearTimeout(shared.closeTimer);
|
|
6489
6580
|
const old = shared;
|
|
@@ -6574,7 +6665,7 @@ function useNatsDialogSubscription({
|
|
|
6574
6665
|
if (closed) return;
|
|
6575
6666
|
if (shared !== sharedConn) return;
|
|
6576
6667
|
try {
|
|
6577
|
-
await _optionalChain([onBeforeReconnectRef, 'access',
|
|
6668
|
+
await _optionalChain([onBeforeReconnectRef, 'access', _122 => _122.current, 'optionalCall', _123 => _123()]);
|
|
6578
6669
|
} catch (e7) {
|
|
6579
6670
|
}
|
|
6580
6671
|
if (closed) return;
|
|
@@ -6607,22 +6698,22 @@ function useNatsDialogSubscription({
|
|
|
6607
6698
|
}
|
|
6608
6699
|
hadConnectionBeforeRef.current = true;
|
|
6609
6700
|
retryAttempt = 0;
|
|
6610
|
-
_optionalChain([onConnectRef, 'access',
|
|
6701
|
+
_optionalChain([onConnectRef, 'access', _124 => _124.current, 'optionalCall', _125 => _125()]);
|
|
6611
6702
|
}
|
|
6612
6703
|
if (disconnected) {
|
|
6613
6704
|
setIsConnected(false);
|
|
6614
6705
|
setIsSubscribed(false);
|
|
6615
6706
|
subscriptionRefs.current.forEach((sub) => {
|
|
6616
6707
|
try {
|
|
6617
|
-
_optionalChain([sub, 'optionalAccess',
|
|
6708
|
+
_optionalChain([sub, 'optionalAccess', _126 => _126.unsubscribe, 'call', _127 => _127()]);
|
|
6618
6709
|
} catch (e9) {
|
|
6619
6710
|
}
|
|
6620
6711
|
});
|
|
6621
6712
|
subscriptionRefs.current.clear();
|
|
6622
6713
|
lastSubscribedDialogIdRef.current = null;
|
|
6623
|
-
_optionalChain([abortControllerRef, 'access',
|
|
6714
|
+
_optionalChain([abortControllerRef, 'access', _128 => _128.current, 'optionalAccess', _129 => _129.abort, 'call', _130 => _130()]);
|
|
6624
6715
|
abortControllerRef.current = null;
|
|
6625
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
6716
|
+
_optionalChain([onDisconnectRef, 'access', _131 => _131.current, 'optionalCall', _132 => _132()]);
|
|
6626
6717
|
scheduleRetry();
|
|
6627
6718
|
}
|
|
6628
6719
|
});
|
|
@@ -6638,7 +6729,7 @@ function useNatsDialogSubscription({
|
|
|
6638
6729
|
sharedConn.connectPromise = null;
|
|
6639
6730
|
if (!closed) {
|
|
6640
6731
|
setIsConnected(false);
|
|
6641
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
6732
|
+
_optionalChain([onDisconnectRef, 'access', _133 => _133.current, 'optionalCall', _134 => _134()]);
|
|
6642
6733
|
scheduleRetry();
|
|
6643
6734
|
}
|
|
6644
6735
|
}
|
|
@@ -6654,7 +6745,7 @@ function useNatsDialogSubscription({
|
|
|
6654
6745
|
}
|
|
6655
6746
|
subscriptionRefs.current.forEach((sub) => {
|
|
6656
6747
|
try {
|
|
6657
|
-
_optionalChain([sub, 'optionalAccess',
|
|
6748
|
+
_optionalChain([sub, 'optionalAccess', _135 => _135.unsubscribe, 'call', _136 => _136()]);
|
|
6658
6749
|
} catch (e11) {
|
|
6659
6750
|
}
|
|
6660
6751
|
});
|
|
@@ -6682,13 +6773,13 @@ function useNatsDialogSubscription({
|
|
|
6682
6773
|
setIsSubscribed(false);
|
|
6683
6774
|
subscriptionRefs.current.forEach((sub) => {
|
|
6684
6775
|
try {
|
|
6685
|
-
_optionalChain([sub, 'optionalAccess',
|
|
6776
|
+
_optionalChain([sub, 'optionalAccess', _137 => _137.unsubscribe, 'call', _138 => _138()]);
|
|
6686
6777
|
} catch (e12) {
|
|
6687
6778
|
}
|
|
6688
6779
|
});
|
|
6689
6780
|
subscriptionRefs.current.clear();
|
|
6690
6781
|
lastSubscribedDialogIdRef.current = null;
|
|
6691
|
-
_optionalChain([abortControllerRef, 'access',
|
|
6782
|
+
_optionalChain([abortControllerRef, 'access', _139 => _139.current, 'optionalAccess', _140 => _140.abort, 'call', _141 => _141()]);
|
|
6692
6783
|
abortControllerRef.current = null;
|
|
6693
6784
|
}
|
|
6694
6785
|
return;
|
|
@@ -6700,12 +6791,12 @@ function useNatsDialogSubscription({
|
|
|
6700
6791
|
if (subscriptionRefs.current.size > 0) {
|
|
6701
6792
|
subscriptionRefs.current.forEach((sub) => {
|
|
6702
6793
|
try {
|
|
6703
|
-
_optionalChain([sub, 'optionalAccess',
|
|
6794
|
+
_optionalChain([sub, 'optionalAccess', _142 => _142.unsubscribe, 'call', _143 => _143()]);
|
|
6704
6795
|
} catch (e13) {
|
|
6705
6796
|
}
|
|
6706
6797
|
});
|
|
6707
6798
|
subscriptionRefs.current.clear();
|
|
6708
|
-
_optionalChain([abortControllerRef, 'access',
|
|
6799
|
+
_optionalChain([abortControllerRef, 'access', _144 => _144.current, 'optionalAccess', _145 => _145.abort, 'call', _146 => _146()]);
|
|
6709
6800
|
}
|
|
6710
6801
|
abortControllerRef.current = new AbortController();
|
|
6711
6802
|
const abort = abortControllerRef.current;
|
|
@@ -6737,7 +6828,7 @@ function useNatsDialogSubscription({
|
|
|
6737
6828
|
});
|
|
6738
6829
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
6739
6830
|
setIsSubscribed(true);
|
|
6740
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
6831
|
+
_optionalChain([onSubscribedRef, 'access', _147 => _147.current, 'optionalCall', _148 => _148()]);
|
|
6741
6832
|
};
|
|
6742
6833
|
if (isConnectedRef.current) {
|
|
6743
6834
|
createSubscriptions();
|
|
@@ -6747,7 +6838,7 @@ function useNatsDialogSubscription({
|
|
|
6747
6838
|
abort.abort();
|
|
6748
6839
|
subscriptionRefs.current.forEach((sub) => {
|
|
6749
6840
|
try {
|
|
6750
|
-
_optionalChain([sub, 'optionalAccess',
|
|
6841
|
+
_optionalChain([sub, 'optionalAccess', _149 => _149.unsubscribe, 'call', _150 => _150()]);
|
|
6751
6842
|
} catch (e15) {
|
|
6752
6843
|
}
|
|
6753
6844
|
});
|
|
@@ -6788,7 +6879,7 @@ function useNatsDialogSubscription({
|
|
|
6788
6879
|
});
|
|
6789
6880
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
6790
6881
|
setIsSubscribed(true);
|
|
6791
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
6882
|
+
_optionalChain([onSubscribedRef, 'access', _151 => _151.current, 'optionalCall', _152 => _152()]);
|
|
6792
6883
|
} else if (subscriptionRefs.current.size > 0) {
|
|
6793
6884
|
setIsSubscribed(true);
|
|
6794
6885
|
}
|
|
@@ -6796,10 +6887,10 @@ function useNatsDialogSubscription({
|
|
|
6796
6887
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
6797
6888
|
}
|
|
6798
6889
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
6799
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
6890
|
+
const path = _optionalChain([options, 'optionalAccess', _153 => _153.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
6800
6891
|
const u = new URL(path, apiBaseUrl);
|
|
6801
6892
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
6802
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
6893
|
+
if (_optionalChain([options, 'optionalAccess', _154 => _154.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _155 => _155.token])) {
|
|
6803
6894
|
u.searchParams.set("authorization", options.token);
|
|
6804
6895
|
}
|
|
6805
6896
|
return u.toString();
|
|
@@ -7110,7 +7201,7 @@ var MessageSegmentAccumulator = class {
|
|
|
7110
7201
|
type: "tool_execution",
|
|
7111
7202
|
data: {
|
|
7112
7203
|
...toolData,
|
|
7113
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
7204
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _156 => _156.parameters])
|
|
7114
7205
|
}
|
|
7115
7206
|
};
|
|
7116
7207
|
if (existingIndex !== -1) {
|
|
@@ -7134,8 +7225,8 @@ var MessageSegmentAccumulator = class {
|
|
|
7134
7225
|
if (seg.type !== "approval_batch") return seg;
|
|
7135
7226
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
7136
7227
|
if (!hasCall) return seg;
|
|
7137
|
-
const prev = _optionalChain([seg, 'access',
|
|
7138
|
-
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess',
|
|
7228
|
+
const prev = _optionalChain([seg, 'access', _157 => _157.data, 'access', _158 => _158.executions, 'optionalAccess', _159 => _159[execId]]);
|
|
7229
|
+
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _160 => _160.result]), success: _optionalChain([prev, 'optionalAccess', _161 => _161.success]) };
|
|
7139
7230
|
matched = true;
|
|
7140
7231
|
return {
|
|
7141
7232
|
...seg,
|
|
@@ -7231,10 +7322,10 @@ var MessageSegmentAccumulator = class {
|
|
|
7231
7322
|
const segment = {
|
|
7232
7323
|
type: "approval_request",
|
|
7233
7324
|
data: {
|
|
7234
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
7235
|
-
explanation: _optionalChain([pendingApproval, 'optionalAccess',
|
|
7325
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _162 => _162.command]) || "",
|
|
7326
|
+
explanation: _optionalChain([pendingApproval, 'optionalAccess', _163 => _163.explanation]),
|
|
7236
7327
|
requestId,
|
|
7237
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
7328
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _164 => _164.approvalType]) || approvalType
|
|
7238
7329
|
},
|
|
7239
7330
|
status,
|
|
7240
7331
|
onApprove: this.callbacks.onApprove,
|
|
@@ -7422,7 +7513,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7422
7513
|
if (initialState.escalatedApprovals) {
|
|
7423
7514
|
pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
|
|
7424
7515
|
initialState.escalatedApprovals.forEach((data, requestId) => {
|
|
7425
|
-
_optionalChain([callbacks, 'access',
|
|
7516
|
+
_optionalChain([callbacks, 'access', _165 => _165.onEscalatedApproval, 'optionalCall', _166 => _166(requestId, data)]);
|
|
7426
7517
|
});
|
|
7427
7518
|
}
|
|
7428
7519
|
hasInitializedWithData.current = true;
|
|
@@ -7441,30 +7532,30 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7441
7532
|
switch (action.action) {
|
|
7442
7533
|
case "message_start":
|
|
7443
7534
|
isInStreamRef.current = true;
|
|
7444
|
-
_optionalChain([callbacks, 'access',
|
|
7535
|
+
_optionalChain([callbacks, 'access', _167 => _167.onStreamStart, 'optionalCall', _168 => _168()]);
|
|
7445
7536
|
accumulator.resetSegments();
|
|
7446
7537
|
break;
|
|
7447
7538
|
case "message_end":
|
|
7448
7539
|
isInStreamRef.current = false;
|
|
7449
|
-
_optionalChain([callbacks, 'access',
|
|
7540
|
+
_optionalChain([callbacks, 'access', _169 => _169.onStreamEnd, 'optionalCall', _170 => _170()]);
|
|
7450
7541
|
accumulator.resetSegments();
|
|
7451
7542
|
break;
|
|
7452
7543
|
case "metadata":
|
|
7453
|
-
_optionalChain([callbacks, 'access',
|
|
7544
|
+
_optionalChain([callbacks, 'access', _171 => _171.onMetadata, 'optionalCall', _172 => _172(action)]);
|
|
7454
7545
|
break;
|
|
7455
7546
|
case "text": {
|
|
7456
7547
|
const segments = accumulator.appendText(action.text);
|
|
7457
|
-
_optionalChain([callbacks, 'access',
|
|
7548
|
+
_optionalChain([callbacks, 'access', _173 => _173.onSegmentsUpdate, 'optionalCall', _174 => _174(segments)]);
|
|
7458
7549
|
break;
|
|
7459
7550
|
}
|
|
7460
7551
|
case "thinking": {
|
|
7461
7552
|
const segments = accumulator.appendThinking(action.text);
|
|
7462
|
-
_optionalChain([callbacks, 'access',
|
|
7553
|
+
_optionalChain([callbacks, 'access', _175 => _175.onSegmentsUpdate, 'optionalCall', _176 => _176(segments)]);
|
|
7463
7554
|
break;
|
|
7464
7555
|
}
|
|
7465
7556
|
case "tool_execution": {
|
|
7466
7557
|
const segments = accumulator.addToolExecution(action.segment);
|
|
7467
|
-
_optionalChain([callbacks, 'access',
|
|
7558
|
+
_optionalChain([callbacks, 'access', _177 => _177.onSegmentsUpdate, 'optionalCall', _178 => _178(segments)]);
|
|
7468
7559
|
break;
|
|
7469
7560
|
}
|
|
7470
7561
|
case "approval_request": {
|
|
@@ -7478,10 +7569,10 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7478
7569
|
approvalType,
|
|
7479
7570
|
status
|
|
7480
7571
|
);
|
|
7481
|
-
_optionalChain([callbacks, 'access',
|
|
7572
|
+
_optionalChain([callbacks, 'access', _179 => _179.onSegmentsUpdate, 'optionalCall', _180 => _180(segments)]);
|
|
7482
7573
|
} else {
|
|
7483
7574
|
pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
|
|
7484
|
-
_optionalChain([callbacks, 'access',
|
|
7575
|
+
_optionalChain([callbacks, 'access', _181 => _181.onEscalatedApproval, 'optionalCall', _182 => _182(requestId, { command, explanation, approvalType })]);
|
|
7485
7576
|
}
|
|
7486
7577
|
break;
|
|
7487
7578
|
}
|
|
@@ -7493,20 +7584,20 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7493
7584
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
7494
7585
|
pendingEscalatedRef.current.set(requestId, {
|
|
7495
7586
|
command: summary,
|
|
7496
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
7587
|
+
explanation: _optionalChain([required, 'optionalAccess', _183 => _183.toolExplanation]),
|
|
7497
7588
|
approvalType,
|
|
7498
7589
|
toolCalls
|
|
7499
7590
|
});
|
|
7500
|
-
_optionalChain([callbacks, 'access',
|
|
7591
|
+
_optionalChain([callbacks, 'access', _184 => _184.onEscalatedApproval, 'optionalCall', _185 => _185(requestId, {
|
|
7501
7592
|
command: summary,
|
|
7502
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
7593
|
+
explanation: _optionalChain([required, 'optionalAccess', _186 => _186.toolExplanation]),
|
|
7503
7594
|
approvalType
|
|
7504
7595
|
})]);
|
|
7505
7596
|
break;
|
|
7506
7597
|
}
|
|
7507
7598
|
if (batchApprovalsEnabled) {
|
|
7508
7599
|
const segments2 = accumulator.addApprovalBatch(requestId, approvalType, toolCalls, status);
|
|
7509
|
-
_optionalChain([callbacks, 'access',
|
|
7600
|
+
_optionalChain([callbacks, 'access', _187 => _187.onSegmentsUpdate, 'optionalCall', _188 => _188(segments2)]);
|
|
7510
7601
|
break;
|
|
7511
7602
|
}
|
|
7512
7603
|
let segments = accumulator.getSegments();
|
|
@@ -7520,7 +7611,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7520
7611
|
status
|
|
7521
7612
|
);
|
|
7522
7613
|
}
|
|
7523
|
-
_optionalChain([callbacks, 'access',
|
|
7614
|
+
_optionalChain([callbacks, 'access', _189 => _189.onSegmentsUpdate, 'optionalCall', _190 => _190(segments)]);
|
|
7524
7615
|
break;
|
|
7525
7616
|
}
|
|
7526
7617
|
case "approval_result": {
|
|
@@ -7529,7 +7620,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7529
7620
|
const status = approved ? "approved" : "rejected";
|
|
7530
7621
|
if (escalatedData) {
|
|
7531
7622
|
pendingEscalatedRef.current.delete(requestId);
|
|
7532
|
-
_optionalChain([callbacks, 'access',
|
|
7623
|
+
_optionalChain([callbacks, 'access', _191 => _191.onEscalatedApprovalResult, 'optionalCall', _192 => _192(requestId, approved, {
|
|
7533
7624
|
command: escalatedData.command,
|
|
7534
7625
|
explanation: escalatedData.explanation,
|
|
7535
7626
|
approvalType: escalatedData.approvalType
|
|
@@ -7542,7 +7633,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7542
7633
|
escalatedData.toolCalls,
|
|
7543
7634
|
status
|
|
7544
7635
|
);
|
|
7545
|
-
_optionalChain([callbacks, 'access',
|
|
7636
|
+
_optionalChain([callbacks, 'access', _193 => _193.onSegmentsUpdate, 'optionalCall', _194 => _194(segments)]);
|
|
7546
7637
|
} else {
|
|
7547
7638
|
let segments = accumulator.getSegments();
|
|
7548
7639
|
for (const call of escalatedData.toolCalls) {
|
|
@@ -7555,7 +7646,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7555
7646
|
status
|
|
7556
7647
|
);
|
|
7557
7648
|
}
|
|
7558
|
-
_optionalChain([callbacks, 'access',
|
|
7649
|
+
_optionalChain([callbacks, 'access', _195 => _195.onSegmentsUpdate, 'optionalCall', _196 => _196(segments)]);
|
|
7559
7650
|
}
|
|
7560
7651
|
} else {
|
|
7561
7652
|
const segments = accumulator.addApprovalRequest(
|
|
@@ -7565,63 +7656,63 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7565
7656
|
escalatedData.approvalType,
|
|
7566
7657
|
status
|
|
7567
7658
|
);
|
|
7568
|
-
_optionalChain([callbacks, 'access',
|
|
7659
|
+
_optionalChain([callbacks, 'access', _197 => _197.onSegmentsUpdate, 'optionalCall', _198 => _198(segments)]);
|
|
7569
7660
|
}
|
|
7570
7661
|
} else {
|
|
7571
7662
|
const segments = accumulator.updateApprovalStatus(requestId, status);
|
|
7572
|
-
_optionalChain([callbacks, 'access',
|
|
7663
|
+
_optionalChain([callbacks, 'access', _199 => _199.onSegmentsUpdate, 'optionalCall', _200 => _200(segments)]);
|
|
7573
7664
|
}
|
|
7574
7665
|
void approvalType;
|
|
7575
7666
|
break;
|
|
7576
7667
|
}
|
|
7577
7668
|
case "error": {
|
|
7578
7669
|
let message;
|
|
7579
|
-
if ("details" in action && _optionalChain([action, 'optionalAccess',
|
|
7670
|
+
if ("details" in action && _optionalChain([action, 'optionalAccess', _201 => _201.details])) {
|
|
7580
7671
|
try {
|
|
7581
|
-
message = _optionalChain([JSON, 'access',
|
|
7672
|
+
message = _optionalChain([JSON, 'access', _202 => _202.parse, 'call', _203 => _203(action.details), 'optionalAccess', _204 => _204.error, 'optionalAccess', _205 => _205.message]);
|
|
7582
7673
|
} catch (e17) {
|
|
7583
7674
|
message = action.details;
|
|
7584
7675
|
}
|
|
7585
7676
|
}
|
|
7586
7677
|
const segments = accumulator.addError(action.error, message);
|
|
7587
|
-
_optionalChain([callbacks, 'access',
|
|
7588
|
-
_optionalChain([callbacks, 'access',
|
|
7678
|
+
_optionalChain([callbacks, 'access', _206 => _206.onSegmentsUpdate, 'optionalCall', _207 => _207(segments)]);
|
|
7679
|
+
_optionalChain([callbacks, 'access', _208 => _208.onError, 'optionalCall', _209 => _209(action.error, message)]);
|
|
7589
7680
|
break;
|
|
7590
7681
|
}
|
|
7591
7682
|
case "system": {
|
|
7592
|
-
_optionalChain([callbacks, 'access',
|
|
7683
|
+
_optionalChain([callbacks, 'access', _210 => _210.onSystemMessage, 'optionalCall', _211 => _211(action.text)]);
|
|
7593
7684
|
break;
|
|
7594
7685
|
}
|
|
7595
7686
|
case "direct_message": {
|
|
7596
|
-
_optionalChain([callbacks, 'access',
|
|
7687
|
+
_optionalChain([callbacks, 'access', _212 => _212.onDirectMessage, 'optionalCall', _213 => _213(action.text, {
|
|
7597
7688
|
ownerType: action.ownerType,
|
|
7598
7689
|
displayName: action.displayName
|
|
7599
7690
|
})]);
|
|
7600
7691
|
break;
|
|
7601
7692
|
}
|
|
7602
7693
|
case "message_request":
|
|
7603
|
-
_optionalChain([callbacks, 'access',
|
|
7694
|
+
_optionalChain([callbacks, 'access', _214 => _214.onUserMessage, 'optionalCall', _215 => _215(action.text, {
|
|
7604
7695
|
ownerType: action.ownerType,
|
|
7605
7696
|
displayName: action.displayName
|
|
7606
7697
|
})]);
|
|
7607
7698
|
break;
|
|
7608
7699
|
case "token_usage":
|
|
7609
|
-
_optionalChain([callbacks, 'access',
|
|
7700
|
+
_optionalChain([callbacks, 'access', _216 => _216.onTokenUsage, 'optionalCall', _217 => _217(action.data)]);
|
|
7610
7701
|
break;
|
|
7611
7702
|
case "context_compaction_start": {
|
|
7612
7703
|
const standalone = !isInStreamRef.current;
|
|
7613
7704
|
const segments = accumulator.addContextCompaction();
|
|
7614
|
-
_optionalChain([callbacks, 'access',
|
|
7705
|
+
_optionalChain([callbacks, 'access', _218 => _218.onSegmentsUpdate, 'optionalCall', _219 => _219(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
|
|
7615
7706
|
break;
|
|
7616
7707
|
}
|
|
7617
7708
|
case "context_compaction_end": {
|
|
7618
7709
|
const standalone = !isInStreamRef.current;
|
|
7619
7710
|
const segments = accumulator.completeContextCompaction(action.summary);
|
|
7620
|
-
_optionalChain([callbacks, 'access',
|
|
7711
|
+
_optionalChain([callbacks, 'access', _220 => _220.onSegmentsUpdate, 'optionalCall', _221 => _221(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
|
|
7621
7712
|
break;
|
|
7622
7713
|
}
|
|
7623
7714
|
case "dialog_closed":
|
|
7624
|
-
_optionalChain([callbacks, 'access',
|
|
7715
|
+
_optionalChain([callbacks, 'access', _222 => _222.onDialogClosed, 'optionalCall', _223 => _223()]);
|
|
7625
7716
|
break;
|
|
7626
7717
|
default:
|
|
7627
7718
|
break;
|
|
@@ -7657,12 +7748,12 @@ function useRealtimeChunkProcessor(options) {
|
|
|
7657
7748
|
|
|
7658
7749
|
// src/components/chat/utils/process-historical-messages.ts
|
|
7659
7750
|
function getOwnerDisplayName(owner) {
|
|
7660
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
7751
|
+
if (_optionalChain([owner, 'optionalAccess', _224 => _224.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
7661
7752
|
const { firstName, lastName } = owner.user;
|
|
7662
7753
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
7663
7754
|
if (name) return name;
|
|
7664
7755
|
}
|
|
7665
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
7756
|
+
return _optionalChain([owner, 'optionalAccess', _225 => _225.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
7666
7757
|
}
|
|
7667
7758
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
7668
7759
|
messageDataArray.forEach((data) => {
|
|
@@ -7725,10 +7816,10 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
7725
7816
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
7726
7817
|
return;
|
|
7727
7818
|
}
|
|
7728
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
7819
|
+
const isUserMessage = _optionalChain([msg, 'access', _226 => _226.owner, 'optionalAccess', _227 => _227.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _228 => _228.owner, 'optionalAccess', _229 => _229.type]) === OWNER_TYPE.ADMIN;
|
|
7729
7820
|
if (isUserMessage) {
|
|
7730
7821
|
flushAssistantMessage();
|
|
7731
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
7822
|
+
const userAuthorType = _optionalChain([msg, 'access', _230 => _230.owner, 'optionalAccess', _231 => _231.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
7732
7823
|
messageDataArray.forEach((data) => {
|
|
7733
7824
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
7734
7825
|
processedMessages.push({
|
|
@@ -7752,7 +7843,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
7752
7843
|
});
|
|
7753
7844
|
const nextMsg = messages[index + 1];
|
|
7754
7845
|
const isLastMessage = index === messages.length - 1;
|
|
7755
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
7846
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _232 => _232.owner, 'optionalAccess', _233 => _233.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _234 => _234.owner, 'optionalAccess', _235 => _235.type]) === OWNER_TYPE.ADMIN);
|
|
7756
7847
|
if (isLastMessage || nextIsFromUser) {
|
|
7757
7848
|
flushAssistantMessage();
|
|
7758
7849
|
}
|
|
@@ -7849,7 +7940,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
7849
7940
|
});
|
|
7850
7941
|
}
|
|
7851
7942
|
} else {
|
|
7852
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
7943
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _236 => _236.set, 'call', _237 => _237(data.approvalRequestId, {
|
|
7853
7944
|
command: data.command || "",
|
|
7854
7945
|
explanation: data.explanation,
|
|
7855
7946
|
approvalType,
|
|
@@ -7862,8 +7953,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
7862
7953
|
if ("approvalRequestId" in data && data.approvalRequestId) {
|
|
7863
7954
|
const existingStatus = approvalStatuses[data.approvalRequestId];
|
|
7864
7955
|
const status = existingStatus || (data.approved ? "approved" : "rejected");
|
|
7865
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
7866
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
7956
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _238 => _238.get, 'call', _239 => _239(data.approvalRequestId)]);
|
|
7957
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _240 => _240.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
7867
7958
|
if (batchApprovalsEnabled) {
|
|
7868
7959
|
accumulator.addApprovalBatch(
|
|
7869
7960
|
data.approvalRequestId,
|
|
@@ -7883,7 +7974,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
7883
7974
|
);
|
|
7884
7975
|
}
|
|
7885
7976
|
}
|
|
7886
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
7977
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _241 => _241.delete, 'call', _242 => _242(data.approvalRequestId)]);
|
|
7887
7978
|
break;
|
|
7888
7979
|
}
|
|
7889
7980
|
if (escalatedData) {
|
|
@@ -7892,7 +7983,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
7892
7983
|
explanation: escalatedData.explanation,
|
|
7893
7984
|
approvalType: escalatedData.approvalType
|
|
7894
7985
|
});
|
|
7895
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
7986
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _243 => _243.delete, 'call', _244 => _244(data.approvalRequestId)]);
|
|
7896
7987
|
}
|
|
7897
7988
|
const before = accumulator.getSegments();
|
|
7898
7989
|
const after = accumulator.updateApprovalStatus(data.approvalRequestId, status);
|
|
@@ -7908,9 +7999,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
7908
7999
|
case MESSAGE_TYPE.ERROR:
|
|
7909
8000
|
if ("error" in data) {
|
|
7910
8001
|
let message;
|
|
7911
|
-
if ("details" in data && _optionalChain([data, 'optionalAccess',
|
|
8002
|
+
if ("details" in data && _optionalChain([data, 'optionalAccess', _245 => _245.details])) {
|
|
7912
8003
|
try {
|
|
7913
|
-
message = _optionalChain([JSON, 'access',
|
|
8004
|
+
message = _optionalChain([JSON, 'access', _246 => _246.parse, 'call', _247 => _247(data.details), 'optionalAccess', _248 => _248.error, 'optionalAccess', _249 => _249.message]);
|
|
7914
8005
|
} catch (e18) {
|
|
7915
8006
|
message = data.details;
|
|
7916
8007
|
}
|
|
@@ -7993,10 +8084,10 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
7993
8084
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
7994
8085
|
return;
|
|
7995
8086
|
}
|
|
7996
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
8087
|
+
const isUserMessage = _optionalChain([msg, 'access', _250 => _250.owner, 'optionalAccess', _251 => _251.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _252 => _252.owner, 'optionalAccess', _253 => _253.type]) === OWNER_TYPE.ADMIN;
|
|
7997
8088
|
if (isUserMessage) {
|
|
7998
8089
|
flushAssistantMessage();
|
|
7999
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
8090
|
+
const userAuthorType = _optionalChain([msg, 'access', _254 => _254.owner, 'optionalAccess', _255 => _255.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
8000
8091
|
messageDataArray.forEach((data) => {
|
|
8001
8092
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
8002
8093
|
processedMessages.push({
|
|
@@ -8020,7 +8111,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
8020
8111
|
});
|
|
8021
8112
|
const nextMsg = messages[index + 1];
|
|
8022
8113
|
const isLastMessage = index === messages.length - 1;
|
|
8023
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
8114
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _256 => _256.owner, 'optionalAccess', _257 => _257.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _258 => _258.owner, 'optionalAccess', _259 => _259.type]) === OWNER_TYPE.ADMIN);
|
|
8024
8115
|
if (isLastMessage || nextIsFromUser) {
|
|
8025
8116
|
flushAssistantMessage();
|
|
8026
8117
|
}
|
|
@@ -8079,7 +8170,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
8079
8170
|
break;
|
|
8080
8171
|
case "approval_batch": {
|
|
8081
8172
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
8082
|
-
(c) => _optionalChain([segment, 'access',
|
|
8173
|
+
(c) => _optionalChain([segment, 'access', _260 => _260.data, 'access', _261 => _261.executions, 'optionalAccess', _262 => _262[c.toolExecutionRequestId], 'optionalAccess', _263 => _263.status]) === "done"
|
|
8083
8174
|
);
|
|
8084
8175
|
if (segment.status !== "rejected" && !allDone) {
|
|
8085
8176
|
hasIncompleteState = true;
|
|
@@ -8241,7 +8332,7 @@ function Header({ config, platform }) {
|
|
|
8241
8332
|
className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
8242
8333
|
"flex justify-start w-full",
|
|
8243
8334
|
"font-bold text-[16px] leading-none tracking-[-0.32px]",
|
|
8244
|
-
index < (_nullishCoalesce(_optionalChain([item, 'access',
|
|
8335
|
+
index < (_nullishCoalesce(_optionalChain([item, 'access', _264 => _264.children, 'optionalAccess', _265 => _265.length]), () => ( 0))) - 1 && "mb-1",
|
|
8245
8336
|
"text-ods-text-primary",
|
|
8246
8337
|
// All dropdown items use primary text color
|
|
8247
8338
|
child.isActive && "bg-ods-bg-hover"
|
|
@@ -8333,7 +8424,7 @@ function Header({ config, platform }) {
|
|
|
8333
8424
|
style: config.style,
|
|
8334
8425
|
children: [
|
|
8335
8426
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
8336
|
-
_optionalChain([config, 'access',
|
|
8427
|
+
_optionalChain([config, 'access', _266 => _266.actions, 'optionalAccess', _267 => _267.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
|
|
8337
8428
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _link2.default, { href: config.logo.href, className: "transition-opacity duration-200 hover:opacity-80", children: config.logo.element })
|
|
8338
8429
|
] }),
|
|
8339
8430
|
config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -8350,7 +8441,7 @@ function Header({ config, platform }) {
|
|
|
8350
8441
|
}
|
|
8351
8442
|
),
|
|
8352
8443
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
|
|
8353
|
-
_optionalChain([config, 'access',
|
|
8444
|
+
_optionalChain([config, 'access', _268 => _268.actions, 'optionalAccess', _269 => _269.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
|
|
8354
8445
|
config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8355
8446
|
_chunkBJTOSUT4cjs.Button,
|
|
8356
8447
|
{
|
|
@@ -8358,10 +8449,10 @@ function Header({ config, platform }) {
|
|
|
8358
8449
|
size: "icon",
|
|
8359
8450
|
className: "flex md:hidden",
|
|
8360
8451
|
onClick: () => {
|
|
8361
|
-
_optionalChain([config, 'access',
|
|
8452
|
+
_optionalChain([config, 'access', _270 => _270.mobile, 'optionalAccess', _271 => _271.onToggle, 'optionalCall', _272 => _272()]);
|
|
8362
8453
|
},
|
|
8363
|
-
"aria-label": _optionalChain([config, 'access',
|
|
8364
|
-
leftIcon: _optionalChain([config, 'access',
|
|
8454
|
+
"aria-label": _optionalChain([config, 'access', _273 => _273.mobile, 'optionalAccess', _274 => _274.isOpen]) ? "Close menu" : "Open menu",
|
|
8455
|
+
leftIcon: _optionalChain([config, 'access', _275 => _275.mobile, 'optionalAccess', _276 => _276.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTMD5LDX4cjs.Menu01Icon, {})
|
|
8365
8456
|
}
|
|
8366
8457
|
)
|
|
8367
8458
|
] })
|
|
@@ -8378,10 +8469,10 @@ function Header({ config, platform }) {
|
|
|
8378
8469
|
// src/components/navigation/header-skeleton.tsx
|
|
8379
8470
|
|
|
8380
8471
|
function HeaderSkeleton({ config }) {
|
|
8381
|
-
const showNavigation = _optionalChain([config, 'optionalAccess',
|
|
8382
|
-
const showActions = _optionalChain([config, 'optionalAccess',
|
|
8383
|
-
const showMobileMenu = _optionalChain([config, 'optionalAccess',
|
|
8384
|
-
const isAdminHeader = _optionalChain([config, 'optionalAccess',
|
|
8472
|
+
const showNavigation = _optionalChain([config, 'optionalAccess', _277 => _277.navigation]) && config.navigation.items.length > 0;
|
|
8473
|
+
const showActions = _optionalChain([config, 'optionalAccess', _278 => _278.actions, 'optionalAccess', _279 => _279.right]) && config.actions.right.length > 0;
|
|
8474
|
+
const showMobileMenu = _optionalChain([config, 'optionalAccess', _280 => _280.mobile, 'optionalAccess', _281 => _281.enabled]);
|
|
8475
|
+
const isAdminHeader = _optionalChain([config, 'optionalAccess', _282 => _282.className, 'optionalAccess', _283 => _283.includes, 'call', _284 => _284("admin")]);
|
|
8385
8476
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8386
8477
|
"header",
|
|
8387
8478
|
{
|
|
@@ -8390,11 +8481,11 @@ function HeaderSkeleton({ config }) {
|
|
|
8390
8481
|
"bg-ods-card border-b border-ods-border backdrop-blur-sm",
|
|
8391
8482
|
"px-6 py-3",
|
|
8392
8483
|
"transition-opacity duration-300 ease-in-out",
|
|
8393
|
-
_optionalChain([config, 'optionalAccess',
|
|
8484
|
+
_optionalChain([config, 'optionalAccess', _285 => _285.className])
|
|
8394
8485
|
),
|
|
8395
8486
|
children: [
|
|
8396
8487
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
8397
|
-
isAdminHeader && _optionalChain([config, 'optionalAccess',
|
|
8488
|
+
isAdminHeader && _optionalChain([config, 'optionalAccess', _286 => _286.actions, 'optionalAccess', _287 => _287.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mr-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-10 bg-ods-border rounded animate-pulse" }) }),
|
|
8398
8489
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
8399
8490
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
|
|
8400
8491
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
|
|
@@ -8402,8 +8493,8 @@ function HeaderSkeleton({ config }) {
|
|
|
8402
8493
|
] }),
|
|
8403
8494
|
showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
8404
8495
|
"hidden md:flex items-center gap-2",
|
|
8405
|
-
_optionalChain([config, 'optionalAccess',
|
|
8406
|
-
_optionalChain([config, 'optionalAccess',
|
|
8496
|
+
_optionalChain([config, 'optionalAccess', _288 => _288.navigation, 'optionalAccess', _289 => _289.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
|
|
8497
|
+
_optionalChain([config, 'optionalAccess', _290 => _290.navigation, 'optionalAccess', _291 => _291.position]) === "right" && "ml-auto mr-4"
|
|
8407
8498
|
), children: [
|
|
8408
8499
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
|
|
8409
8500
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
|
|
@@ -8451,7 +8542,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
8451
8542
|
_react.useEffect.call(void 0, () => {
|
|
8452
8543
|
const handleKeyDown = (e) => {
|
|
8453
8544
|
if (e.key === "Escape" && isOpen) {
|
|
8454
|
-
_optionalChain([config, 'access',
|
|
8545
|
+
_optionalChain([config, 'access', _292 => _292.onClose, 'optionalCall', _293 => _293()]);
|
|
8455
8546
|
}
|
|
8456
8547
|
};
|
|
8457
8548
|
if (isOpen) {
|
|
@@ -8468,7 +8559,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
8468
8559
|
if (item.onClick) {
|
|
8469
8560
|
item.onClick();
|
|
8470
8561
|
}
|
|
8471
|
-
_optionalChain([config, 'access',
|
|
8562
|
+
_optionalChain([config, 'access', _294 => _294.onClose, 'optionalCall', _295 => _295()]);
|
|
8472
8563
|
};
|
|
8473
8564
|
if (item.href) {
|
|
8474
8565
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -8686,7 +8777,7 @@ function SlidingSidebar({ config }) {
|
|
|
8686
8777
|
variant: "transparent",
|
|
8687
8778
|
size: "default",
|
|
8688
8779
|
onClick: () => {
|
|
8689
|
-
_optionalChain([item, 'access',
|
|
8780
|
+
_optionalChain([item, 'access', _296 => _296.onClick, 'optionalCall', _297 => _297()]);
|
|
8690
8781
|
config.onClose();
|
|
8691
8782
|
},
|
|
8692
8783
|
leftIcon: item.icon,
|
|
@@ -8709,7 +8800,7 @@ function SlidingSidebar({ config }) {
|
|
|
8709
8800
|
variant: "transparent",
|
|
8710
8801
|
size: "default",
|
|
8711
8802
|
onClick: () => {
|
|
8712
|
-
_optionalChain([item, 'access',
|
|
8803
|
+
_optionalChain([item, 'access', _298 => _298.onClick, 'optionalCall', _299 => _299()]);
|
|
8713
8804
|
config.onClose();
|
|
8714
8805
|
},
|
|
8715
8806
|
leftIcon: item.icon,
|
|
@@ -8836,7 +8927,7 @@ function StickySectionNav({
|
|
|
8836
8927
|
] });
|
|
8837
8928
|
}
|
|
8838
8929
|
function useSectionNavigation(sections, options) {
|
|
8839
|
-
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access',
|
|
8930
|
+
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _300 => _300[0], 'optionalAccess', _301 => _301.id]) || "");
|
|
8840
8931
|
const isScrollingFromClick = _react.useRef.call(void 0, false);
|
|
8841
8932
|
const { offset: offset2 = 100 } = options || {};
|
|
8842
8933
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
@@ -8861,7 +8952,7 @@ function useSectionNavigation(sections, options) {
|
|
|
8861
8952
|
const handleScroll = () => {
|
|
8862
8953
|
if (isScrollingFromClick.current) return;
|
|
8863
8954
|
const scrollPosition = window.scrollY + offset2 + 50;
|
|
8864
|
-
let currentSection = _optionalChain([sections, 'access',
|
|
8955
|
+
let currentSection = _optionalChain([sections, 'access', _302 => _302[0], 'optionalAccess', _303 => _303.id]) || "";
|
|
8865
8956
|
for (let i = sections.length - 1; i >= 0; i--) {
|
|
8866
8957
|
const element = document.getElementById(sections[i].id);
|
|
8867
8958
|
if (element && scrollPosition >= element.offsetTop) {
|
|
@@ -9045,14 +9136,14 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
9045
9136
|
const showLabel = isLgUp && !minimized;
|
|
9046
9137
|
const handleToggle = _react.useCallback.call(void 0, () => {
|
|
9047
9138
|
setMinimized((prev) => !prev);
|
|
9048
|
-
_optionalChain([config, 'access',
|
|
9139
|
+
_optionalChain([config, 'access', _304 => _304.onToggleMinimized, 'optionalCall', _305 => _305()]);
|
|
9049
9140
|
}, [setMinimized, config]);
|
|
9050
9141
|
const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
|
|
9051
|
-
_optionalChain([event, 'optionalAccess',
|
|
9142
|
+
_optionalChain([event, 'optionalAccess', _306 => _306.stopPropagation, 'call', _307 => _307()]);
|
|
9052
9143
|
if (item.onClick) {
|
|
9053
9144
|
item.onClick();
|
|
9054
9145
|
} else if (item.path) {
|
|
9055
|
-
_optionalChain([config, 'access',
|
|
9146
|
+
_optionalChain([config, 'access', _308 => _308.onNavigate, 'optionalCall', _309 => _309(item.path)]);
|
|
9056
9147
|
}
|
|
9057
9148
|
}, [config]);
|
|
9058
9149
|
const { primaryItems, secondaryItems } = _react.useMemo.call(void 0, () => ({
|
|
@@ -9192,7 +9283,7 @@ function NotificationsProvider({
|
|
|
9192
9283
|
const setShowPopups = React24.useCallback(
|
|
9193
9284
|
(value2) => {
|
|
9194
9285
|
setShowPopupsState(value2);
|
|
9195
|
-
_optionalChain([onShowPopupsChange, 'optionalCall',
|
|
9286
|
+
_optionalChain([onShowPopupsChange, 'optionalCall', _310 => _310(value2)]);
|
|
9196
9287
|
},
|
|
9197
9288
|
[onShowPopupsChange]
|
|
9198
9289
|
);
|
|
@@ -9297,11 +9388,11 @@ function HeaderGlobalSearch({
|
|
|
9297
9388
|
};
|
|
9298
9389
|
const handleSubmit = (e) => {
|
|
9299
9390
|
e.preventDefault();
|
|
9300
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
9391
|
+
_optionalChain([onSubmit, 'optionalCall', _311 => _311(currentValue)]);
|
|
9301
9392
|
};
|
|
9302
9393
|
const handleKeyDown = (e) => {
|
|
9303
9394
|
if (e.key === "Enter") {
|
|
9304
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
9395
|
+
_optionalChain([onSubmit, 'optionalCall', _312 => _312(currentValue)]);
|
|
9305
9396
|
}
|
|
9306
9397
|
};
|
|
9307
9398
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -9347,8 +9438,8 @@ function HeaderOrganizationFilter({
|
|
|
9347
9438
|
className
|
|
9348
9439
|
}) {
|
|
9349
9440
|
const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
|
|
9350
|
-
const displayName = _optionalChain([selectedOrg, 'optionalAccess',
|
|
9351
|
-
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess',
|
|
9441
|
+
const displayName = _optionalChain([selectedOrg, 'optionalAccess', _313 => _313.name]) || "All Organizations";
|
|
9442
|
+
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _314 => _314.deviceCount]), () => ( totalDeviceCount));
|
|
9352
9443
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkBJTOSUT4cjs.DropdownMenu, { children: [
|
|
9353
9444
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBJTOSUT4cjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
9354
9445
|
"button",
|
|
@@ -9373,11 +9464,11 @@ function HeaderOrganizationFilter({
|
|
|
9373
9464
|
}
|
|
9374
9465
|
) }),
|
|
9375
9466
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkBJTOSUT4cjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
|
|
9376
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBJTOSUT4cjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
9467
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBJTOSUT4cjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _315 => _315("")]), children: "All Organizations" }),
|
|
9377
9468
|
organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9378
9469
|
_chunkBJTOSUT4cjs.DropdownMenuItem,
|
|
9379
9470
|
{
|
|
9380
|
-
onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
9471
|
+
onClick: () => _optionalChain([onOrgChange, 'optionalCall', _316 => _316(org.id)]),
|
|
9381
9472
|
children: org.name
|
|
9382
9473
|
},
|
|
9383
9474
|
org.id
|
|
@@ -9549,9 +9640,9 @@ function NotificationsHeaderButton({
|
|
|
9549
9640
|
dimmedClass
|
|
9550
9641
|
}) {
|
|
9551
9642
|
const ctx = useOptionalNotifications();
|
|
9552
|
-
const unreadCount = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
9553
|
-
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
9554
|
-
const onClick = _optionalChain([ctx, 'optionalAccess',
|
|
9643
|
+
const unreadCount = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _317 => _317.unreadCount]), () => ( fallbackUnreadCount));
|
|
9644
|
+
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _318 => _318.isOpen]), () => ( false));
|
|
9645
|
+
const onClick = _optionalChain([ctx, 'optionalAccess', _319 => _319.toggle]);
|
|
9555
9646
|
const Icon2 = unreadCount > 0 ? _chunkTMD5LDX4cjs.BellRingingIcon : _chunkTMD5LDX4cjs.BellIcon;
|
|
9556
9647
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9557
9648
|
HeaderButton,
|
|
@@ -9725,7 +9816,7 @@ var Switch = React28.forwardRef(({ className, checked, onCheckedChange, ...props
|
|
|
9725
9816
|
}, [checked]);
|
|
9726
9817
|
const handleCheckedChange = (newChecked) => {
|
|
9727
9818
|
setIsChecked(newChecked);
|
|
9728
|
-
_optionalChain([onCheckedChange, 'optionalCall',
|
|
9819
|
+
_optionalChain([onCheckedChange, 'optionalCall', _320 => _320(newChecked)]);
|
|
9729
9820
|
};
|
|
9730
9821
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9731
9822
|
SwitchPrimitives.Root,
|
|
@@ -9778,7 +9869,7 @@ function NotificationTile({
|
|
|
9778
9869
|
if (!isLive) return;
|
|
9779
9870
|
const remaining = Math.max(0, liveDurationMs - initialElapsed);
|
|
9780
9871
|
const timer = window.setTimeout(() => {
|
|
9781
|
-
_optionalChain([onSettle, 'optionalCall',
|
|
9872
|
+
_optionalChain([onSettle, 'optionalCall', _321 => _321(id)]);
|
|
9782
9873
|
}, remaining);
|
|
9783
9874
|
return () => window.clearTimeout(timer);
|
|
9784
9875
|
}, [id, isLive, initialElapsed, liveDurationMs, onSettle]);
|
|
@@ -9816,7 +9907,7 @@ function NotificationTile({
|
|
|
9816
9907
|
"button",
|
|
9817
9908
|
{
|
|
9818
9909
|
type: "button",
|
|
9819
|
-
onClick: () => _optionalChain([onSettle, 'optionalCall',
|
|
9910
|
+
onClick: () => _optionalChain([onSettle, 'optionalCall', _322 => _322(id)]),
|
|
9820
9911
|
"aria-label": "Dismiss notification",
|
|
9821
9912
|
tabIndex: isLive ? 0 : -1,
|
|
9822
9913
|
className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
@@ -9988,7 +10079,7 @@ var MobileBurgerMenu = React33.default.memo(function MobileBurgerMenu2({
|
|
|
9988
10079
|
if (item.onClick) {
|
|
9989
10080
|
item.onClick();
|
|
9990
10081
|
} else if (item.path) {
|
|
9991
|
-
_optionalChain([config, 'access',
|
|
10082
|
+
_optionalChain([config, 'access', _323 => _323.onNavigate, 'optionalCall', _324 => _324(item.path)]);
|
|
9992
10083
|
}
|
|
9993
10084
|
onClose();
|
|
9994
10085
|
}, [config, onClose]);
|
|
@@ -10332,7 +10423,7 @@ var ShellTypeBadge = ({
|
|
|
10332
10423
|
className,
|
|
10333
10424
|
iconClassName
|
|
10334
10425
|
}) => {
|
|
10335
|
-
const normalizedType = _optionalChain([shellType, 'optionalAccess',
|
|
10426
|
+
const normalizedType = _optionalChain([shellType, 'optionalAccess', _325 => _325.toUpperCase, 'call', _326 => _326()]);
|
|
10336
10427
|
const label = getShellLabel(normalizedType);
|
|
10337
10428
|
const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
|
|
10338
10429
|
const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
|
|
@@ -10789,7 +10880,7 @@ function AnnouncementBar() {
|
|
|
10789
10880
|
setIsVisible(false);
|
|
10790
10881
|
};
|
|
10791
10882
|
const handleCtaClick = () => {
|
|
10792
|
-
if (!_optionalChain([announcement, 'optionalAccess',
|
|
10883
|
+
if (!_optionalChain([announcement, 'optionalAccess', _327 => _327.cta_url])) return;
|
|
10793
10884
|
announcement.cta_target === "_blank" ? window.open(announcement.cta_url, "_blank", "noopener,noreferrer") : window.location.href = announcement.cta_url;
|
|
10794
10885
|
};
|
|
10795
10886
|
const renderIcon = () => {
|
|
@@ -10915,8 +11006,8 @@ function getVendorLogo(vendor) {
|
|
|
10915
11006
|
if (vendor.logo) {
|
|
10916
11007
|
return fixSupabaseStorageUrl(vendor.logo);
|
|
10917
11008
|
}
|
|
10918
|
-
const logoMedia = _optionalChain([vendor, 'access',
|
|
10919
|
-
if (_optionalChain([logoMedia, 'optionalAccess',
|
|
11009
|
+
const logoMedia = _optionalChain([vendor, 'access', _328 => _328.vendor_media, 'optionalAccess', _329 => _329.find, 'call', _330 => _330((m) => m.media_type === "logo")]);
|
|
11010
|
+
if (_optionalChain([logoMedia, 'optionalAccess', _331 => _331.media_url])) {
|
|
10920
11011
|
return fixSupabaseStorageUrl(logoMedia.media_url);
|
|
10921
11012
|
}
|
|
10922
11013
|
return null;
|
|
@@ -10991,7 +11082,7 @@ function VendorIcon({
|
|
|
10991
11082
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkOFAYLG6Dcjs.cn.call(void 0,
|
|
10992
11083
|
"flex items-center justify-center text-xs font-medium uppercase",
|
|
10993
11084
|
backgroundStyle === "white" ? "text-[#333333]" : "text-ods-text-secondary"
|
|
10994
|
-
), children: _optionalChain([vendor, 'access',
|
|
11085
|
+
), children: _optionalChain([vendor, 'access', _332 => _332.title, 'optionalAccess', _333 => _333.substring, 'call', _334 => _334(0, 2)]) || "??" }) });
|
|
10995
11086
|
}
|
|
10996
11087
|
|
|
10997
11088
|
// src/components/categories-cart.tsx
|
|
@@ -11275,7 +11366,7 @@ function UserSummary({
|
|
|
11275
11366
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
11276
11367
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h4 text-ods-text-primary truncate", children: [
|
|
11277
11368
|
name,
|
|
11278
|
-
_optionalChain([mspPreview, 'optionalAccess',
|
|
11369
|
+
_optionalChain([mspPreview, 'optionalAccess', _335 => _335.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
11279
11370
|
" \u2022 ",
|
|
11280
11371
|
mspPreview.name
|
|
11281
11372
|
] })
|
|
@@ -11297,7 +11388,7 @@ function UserSummary({
|
|
|
11297
11388
|
height: 40,
|
|
11298
11389
|
className: "object-cover"
|
|
11299
11390
|
}
|
|
11300
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary font-heading text-sm font-bold", children: _optionalChain([mspPreview, 'access',
|
|
11391
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary font-heading text-sm font-bold", children: _optionalChain([mspPreview, 'access', _336 => _336.name, 'optionalAccess', _337 => _337.charAt, 'call', _338 => _338(0), 'access', _339 => _339.toUpperCase, 'call', _340 => _340()]) || "?" }) })
|
|
11301
11392
|
] }),
|
|
11302
11393
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 grid grid-cols-[1fr_auto] gap-4", children: [
|
|
11303
11394
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-[6rem] flex flex-col justify-center space-y-3 truncate", children: [
|
|
@@ -11310,7 +11401,7 @@ function UserSummary({
|
|
|
11310
11401
|
typeof mspPreview.annualRevenue === "number" ? `$${formatNumber2(mspPreview.annualRevenue)}` : null
|
|
11311
11402
|
].filter(Boolean).flatMap((txt, idx) => idx === 0 ? [txt] : [" \u2022 ", txt]).map((seg, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: seg === " \u2022 " ? "text-ods-text-secondary" : "", children: seg }, idx)) })
|
|
11312
11403
|
] }),
|
|
11313
|
-
(_optionalChain([authProviders, 'optionalAccess',
|
|
11404
|
+
(_optionalChain([authProviders, 'optionalAccess', _341 => _341.length]) || showEditButton) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "hidden md:flex flex-col items-end justify-between flex-shrink-0 min-h-[6rem]", children: [
|
|
11314
11405
|
authProviders && authProviders.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
11315
11406
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs text-ods-text-secondary whitespace-nowrap select-none", children: "Authorized by" }),
|
|
11316
11407
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-2", children: authProviders.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center w-4 h-4", children: getAuthProviderIcon(p) }, p)) })
|
|
@@ -11319,7 +11410,7 @@ function UserSummary({
|
|
|
11319
11410
|
] })
|
|
11320
11411
|
] })
|
|
11321
11412
|
] }),
|
|
11322
|
-
(_optionalChain([authProviders, 'optionalAccess',
|
|
11413
|
+
(_optionalChain([authProviders, 'optionalAccess', _342 => _342.length]) || showEditButton) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex md:hidden items-center justify-between w-full gap-4", children: [
|
|
11323
11414
|
authProviders && authProviders.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
11324
11415
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs text-ods-text-secondary whitespace-nowrap select-none", children: "Authorized by" }),
|
|
11325
11416
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-2", children: authProviders.map((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center w-4 h-4", children: getAuthProviderIcon(p) }, p)) })
|
|
@@ -12040,7 +12131,7 @@ function FilterChip({
|
|
|
12040
12131
|
onClick: disabled ? void 0 : (e) => {
|
|
12041
12132
|
e.preventDefault();
|
|
12042
12133
|
e.stopPropagation();
|
|
12043
|
-
_optionalChain([onClick, 'optionalCall',
|
|
12134
|
+
_optionalChain([onClick, 'optionalCall', _343 => _343()]);
|
|
12044
12135
|
},
|
|
12045
12136
|
role: onClick ? "button" : void 0,
|
|
12046
12137
|
tabIndex: onClick && !disabled ? 0 : void 0,
|
|
@@ -12227,13 +12318,13 @@ function useUnifiedFiltering(config) {
|
|
|
12227
12318
|
const searchParams = _navigation.useSearchParams.call(void 0, );
|
|
12228
12319
|
const [isPending, startTransition] = _react.useTransition.call(void 0, );
|
|
12229
12320
|
const getCurrentFilterState = () => {
|
|
12230
|
-
const search = _optionalChain([searchParams, 'optionalAccess',
|
|
12231
|
-
const categories = _optionalChain([searchParams, 'optionalAccess',
|
|
12232
|
-
const subcategories = _optionalChain([searchParams, 'optionalAccess',
|
|
12233
|
-
const tags = _optionalChain([searchParams, 'optionalAccess',
|
|
12234
|
-
const filters = _optionalChain([searchParams, 'optionalAccess',
|
|
12235
|
-
const pricing = _optionalChain([searchParams, 'optionalAccess',
|
|
12236
|
-
const page = parseInt(_optionalChain([searchParams, 'optionalAccess',
|
|
12321
|
+
const search = _optionalChain([searchParams, 'optionalAccess', _344 => _344.get, 'call', _345 => _345("search")]) || void 0;
|
|
12322
|
+
const categories = _optionalChain([searchParams, 'optionalAccess', _346 => _346.get, 'call', _347 => _347("category"), 'optionalAccess', _348 => _348.split, 'call', _349 => _349(","), 'access', _350 => _350.filter, 'call', _351 => _351(Boolean)]) || [];
|
|
12323
|
+
const subcategories = _optionalChain([searchParams, 'optionalAccess', _352 => _352.get, 'call', _353 => _353("subcategory"), 'optionalAccess', _354 => _354.split, 'call', _355 => _355(","), 'access', _356 => _356.filter, 'call', _357 => _357(Boolean)]) || [];
|
|
12324
|
+
const tags = _optionalChain([searchParams, 'optionalAccess', _358 => _358.get, 'call', _359 => _359("tag"), 'optionalAccess', _360 => _360.split, 'call', _361 => _361(","), 'access', _362 => _362.filter, 'call', _363 => _363(Boolean)]) || [];
|
|
12325
|
+
const filters = _optionalChain([searchParams, 'optionalAccess', _364 => _364.getAll, 'call', _365 => _365("filter")]) || [];
|
|
12326
|
+
const pricing = _optionalChain([searchParams, 'optionalAccess', _366 => _366.get, 'call', _367 => _367("pricing")]) || void 0;
|
|
12327
|
+
const page = parseInt(_optionalChain([searchParams, 'optionalAccess', _368 => _368.get, 'call', _369 => _369("page")]) || "1");
|
|
12237
12328
|
return {
|
|
12238
12329
|
search,
|
|
12239
12330
|
categories,
|
|
@@ -12514,13 +12605,13 @@ function FooterWaitlistButton({ className }) {
|
|
|
12514
12605
|
const router = _navigation.useRouter.call(void 0, );
|
|
12515
12606
|
const pathname = _navigation.usePathname.call(void 0, );
|
|
12516
12607
|
const handleClick = _react.useCallback.call(void 0, () => {
|
|
12517
|
-
if (_optionalChain([pathname, 'optionalAccess',
|
|
12608
|
+
if (_optionalChain([pathname, 'optionalAccess', _370 => _370.startsWith, 'call', _371 => _371("/waitlist")])) {
|
|
12518
12609
|
const anchor = document.getElementById("waitlist-form");
|
|
12519
12610
|
if (anchor) {
|
|
12520
12611
|
anchor.scrollIntoView({ behavior: "smooth", block: "center" });
|
|
12521
12612
|
setTimeout(() => {
|
|
12522
12613
|
const input = anchor.querySelector('input[type="email"]');
|
|
12523
|
-
_optionalChain([input, 'optionalAccess',
|
|
12614
|
+
_optionalChain([input, 'optionalAccess', _372 => _372.focus, 'call', _373 => _373()]);
|
|
12524
12615
|
}, 400);
|
|
12525
12616
|
return;
|
|
12526
12617
|
}
|
|
@@ -12549,7 +12640,7 @@ function HeroImageUploader({ imageUrl, onChange, uploadEndpoint, height = 300, o
|
|
|
12549
12640
|
const [uploading, setUploading] = _react.useState.call(void 0, false);
|
|
12550
12641
|
const ALLOWED_TYPES = ["image/jpeg", "image/jpg", "image/png", "image/webp", "image/gif"];
|
|
12551
12642
|
const MAX_SIZE = 5 * 1024 * 1024;
|
|
12552
|
-
const openDialog = () => _optionalChain([inputRef, 'access',
|
|
12643
|
+
const openDialog = () => _optionalChain([inputRef, 'access', _374 => _374.current, 'optionalAccess', _375 => _375.click, 'call', _376 => _376()]);
|
|
12553
12644
|
async function handleFile(file) {
|
|
12554
12645
|
if (!file) return;
|
|
12555
12646
|
if (!ALLOWED_TYPES.includes(file.type)) {
|
|
@@ -12605,7 +12696,7 @@ function HeroImageUploader({ imageUrl, onChange, uploadEndpoint, height = 300, o
|
|
|
12605
12696
|
}
|
|
12606
12697
|
}
|
|
12607
12698
|
const handleSelect = (e) => {
|
|
12608
|
-
handleFile(_optionalChain([e, 'access',
|
|
12699
|
+
handleFile(_optionalChain([e, 'access', _377 => _377.target, 'access', _378 => _378.files, 'optionalAccess', _379 => _379[0]]));
|
|
12609
12700
|
};
|
|
12610
12701
|
const handleRemove = async () => {
|
|
12611
12702
|
if (onDelete) {
|
|
@@ -12742,7 +12833,7 @@ function ResponsiveIconsBlock({ loading = false }) {
|
|
|
12742
12833
|
const getIconForIndex = (index) => {
|
|
12743
12834
|
const col = index % displayColumns;
|
|
12744
12835
|
const row = Math.floor(index / displayColumns);
|
|
12745
|
-
return _optionalChain([iconGrid, 'access',
|
|
12836
|
+
return _optionalChain([iconGrid, 'access', _380 => _380[row], 'optionalAccess', _381 => _381[col]]) || availableIcons[0];
|
|
12746
12837
|
};
|
|
12747
12838
|
if (loading || iconGrid.length === 0) {
|
|
12748
12839
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -12828,7 +12919,7 @@ var Slider = React35.forwardRef(
|
|
|
12828
12919
|
({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
|
|
12829
12920
|
const handleChange = (e) => {
|
|
12830
12921
|
const newValue = [Number(e.target.value)];
|
|
12831
|
-
_optionalChain([onValueChange, 'optionalCall',
|
|
12922
|
+
_optionalChain([onValueChange, 'optionalCall', _382 => _382(newValue)]);
|
|
12832
12923
|
};
|
|
12833
12924
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12834
12925
|
"input",
|
|
@@ -12941,7 +13032,7 @@ var ImageCropper = ({
|
|
|
12941
13032
|
});
|
|
12942
13033
|
} else if (e.key === "Escape") {
|
|
12943
13034
|
e.preventDefault();
|
|
12944
|
-
_optionalChain([onCancel, 'optionalCall',
|
|
13035
|
+
_optionalChain([onCancel, 'optionalCall', _383 => _383()]);
|
|
12945
13036
|
}
|
|
12946
13037
|
};
|
|
12947
13038
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -13182,6 +13273,10 @@ function YouTubeFacade({
|
|
|
13182
13273
|
if (!videoId) return null;
|
|
13183
13274
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, YouTubeFacadeInner, { videoId, title, priority, className, minimalControls });
|
|
13184
13275
|
}
|
|
13276
|
+
var YT_NOCOOKIE_ORIGIN = "https://www.youtube-nocookie.com";
|
|
13277
|
+
var YT_STATE_ENDED = 0;
|
|
13278
|
+
var YT_STATE_PLAYING = 1;
|
|
13279
|
+
var YT_PLAYING_BLUR_DELAY_MS = 1e3;
|
|
13185
13280
|
function YouTubeFacadeInner({
|
|
13186
13281
|
videoId,
|
|
13187
13282
|
title,
|
|
@@ -13190,49 +13285,79 @@ function YouTubeFacadeInner({
|
|
|
13190
13285
|
minimalControls
|
|
13191
13286
|
}) {
|
|
13192
13287
|
const [activated, setActivated] = _react.useState.call(void 0, false);
|
|
13193
|
-
const
|
|
13194
|
-
const
|
|
13195
|
-
|
|
13196
|
-
|
|
13197
|
-
|
|
13198
|
-
|
|
13199
|
-
|
|
13200
|
-
|
|
13201
|
-
|
|
13202
|
-
|
|
13203
|
-
|
|
13204
|
-
|
|
13205
|
-
|
|
13206
|
-
|
|
13207
|
-
|
|
13208
|
-
const embedUrl = `https://www.youtube-nocookie.com/embed/${videoId}?${embedParams.toString()}`;
|
|
13209
|
-
const posterJpg = `https://i.ytimg.com/vi/${videoId}/mqdefault.jpg`;
|
|
13210
|
-
const posterWebp = `https://i.ytimg.com/vi_webp/${videoId}/mqdefault.webp`;
|
|
13211
|
-
_react.useEffect.call(void 0, () => {
|
|
13212
|
-
if (!activated) return;
|
|
13213
|
-
function handleOutsideClick(event) {
|
|
13214
|
-
const target = event.target;
|
|
13215
|
-
if (!target) return;
|
|
13216
|
-
if (_optionalChain([wrapperRef, 'access', _389 => _389.current, 'optionalAccess', _390 => _390.contains, 'call', _391 => _391(target)])) return;
|
|
13217
|
-
setActivated(false);
|
|
13288
|
+
const iframeRef = _react.useRef.call(void 0, null);
|
|
13289
|
+
const { embedUrl, posterJpg, posterWebp } = _react.useMemo.call(void 0, () => {
|
|
13290
|
+
const params = new URLSearchParams({
|
|
13291
|
+
autoplay: "1",
|
|
13292
|
+
rel: "0",
|
|
13293
|
+
modestbranding: "1",
|
|
13294
|
+
playsinline: "1",
|
|
13295
|
+
enablejsapi: "1"
|
|
13296
|
+
});
|
|
13297
|
+
if (minimalControls) {
|
|
13298
|
+
params.set("controls", "0");
|
|
13299
|
+
params.set("fs", "0");
|
|
13300
|
+
params.set("iv_load_policy", "3");
|
|
13301
|
+
params.set("cc_load_policy", "0");
|
|
13302
|
+
params.set("disablekb", "1");
|
|
13218
13303
|
}
|
|
13219
|
-
|
|
13220
|
-
|
|
13221
|
-
|
|
13304
|
+
return {
|
|
13305
|
+
embedUrl: `${YT_NOCOOKIE_ORIGIN}/embed/${videoId}?${params.toString()}`,
|
|
13306
|
+
posterJpg: `https://i.ytimg.com/vi/${videoId}/mqdefault.jpg`,
|
|
13307
|
+
posterWebp: `https://i.ytimg.com/vi_webp/${videoId}/mqdefault.webp`
|
|
13308
|
+
};
|
|
13309
|
+
}, [videoId, minimalControls]);
|
|
13222
13310
|
_react.useEffect.call(void 0, () => {
|
|
13223
13311
|
if (!activated) return;
|
|
13224
|
-
|
|
13225
|
-
|
|
13312
|
+
const iframe = iframeRef.current;
|
|
13313
|
+
if (!iframe) return;
|
|
13314
|
+
function subscribe() {
|
|
13315
|
+
_optionalChain([iframe, 'optionalAccess', _384 => _384.contentWindow, 'optionalAccess', _385 => _385.postMessage, 'call', _386 => _386(
|
|
13316
|
+
'{"event":"listening"}',
|
|
13317
|
+
YT_NOCOOKIE_ORIGIN
|
|
13318
|
+
)]);
|
|
13319
|
+
}
|
|
13320
|
+
iframe.addEventListener("load", subscribe);
|
|
13321
|
+
subscribe();
|
|
13322
|
+
let blurTimer = null;
|
|
13323
|
+
function handleMessage(event) {
|
|
13324
|
+
if (event.origin !== YT_NOCOOKIE_ORIGIN) return;
|
|
13325
|
+
if (typeof event.data !== "string") return;
|
|
13326
|
+
let payload = null;
|
|
13327
|
+
try {
|
|
13328
|
+
payload = JSON.parse(event.data);
|
|
13329
|
+
} catch (e24) {
|
|
13330
|
+
return;
|
|
13331
|
+
}
|
|
13332
|
+
if (!payload || payload.event !== "infoDelivery") return;
|
|
13333
|
+
const state = _optionalChain([payload, 'access', _387 => _387.info, 'optionalAccess', _388 => _388.playerState]);
|
|
13334
|
+
if (typeof state !== "number") return;
|
|
13335
|
+
if (state === YT_STATE_PLAYING) {
|
|
13336
|
+
if (blurTimer !== null) return;
|
|
13337
|
+
blurTimer = setTimeout(() => {
|
|
13338
|
+
blurTimer = null;
|
|
13339
|
+
_optionalChain([iframeRef, 'access', _389 => _389.current, 'optionalAccess', _390 => _390.blur, 'call', _391 => _391()]);
|
|
13340
|
+
}, YT_PLAYING_BLUR_DELAY_MS);
|
|
13341
|
+
return;
|
|
13342
|
+
}
|
|
13343
|
+
if (state === YT_STATE_ENDED) {
|
|
13344
|
+
setActivated(false);
|
|
13345
|
+
}
|
|
13226
13346
|
}
|
|
13227
|
-
|
|
13228
|
-
return () =>
|
|
13347
|
+
window.addEventListener("message", handleMessage);
|
|
13348
|
+
return () => {
|
|
13349
|
+
iframe.removeEventListener("load", subscribe);
|
|
13350
|
+
window.removeEventListener("message", handleMessage);
|
|
13351
|
+
if (blurTimer !== null) clearTimeout(blurTimer);
|
|
13352
|
+
};
|
|
13229
13353
|
}, [activated]);
|
|
13230
13354
|
const wrapperClass = `relative w-full ${_nullishCoalesce(className, () => ( ""))}`;
|
|
13231
13355
|
const wrapperStyle = { paddingBottom: "56.25%" };
|
|
13232
13356
|
if (activated) {
|
|
13233
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", {
|
|
13357
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: wrapperClass, style: wrapperStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13234
13358
|
"iframe",
|
|
13235
13359
|
{
|
|
13360
|
+
ref: iframeRef,
|
|
13236
13361
|
src: embedUrl,
|
|
13237
13362
|
allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
|
|
13238
13363
|
allowFullScreen: true,
|
|
@@ -13241,7 +13366,7 @@ function YouTubeFacadeInner({
|
|
|
13241
13366
|
}
|
|
13242
13367
|
) });
|
|
13243
13368
|
}
|
|
13244
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", {
|
|
13369
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: wrapperClass, style: wrapperStyle, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13245
13370
|
"button",
|
|
13246
13371
|
{
|
|
13247
13372
|
type: "button",
|
|
@@ -13263,7 +13388,7 @@ function YouTubeFacadeInner({
|
|
|
13263
13388
|
}
|
|
13264
13389
|
)
|
|
13265
13390
|
] }),
|
|
13266
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute inset-0 flex items-center justify-center bg-ods-bg-inverse bg-opacity-20 transition-opacity duration-200 group-hover:bg-opacity-30", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex items-center justify-center w-16 h-16 rounded-full bg-ods-accent text-ods-text-on-accent shadow-lg transition-transform duration-200 group-hover:scale-110", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13391
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute inset-0 flex items-center justify-center bg-ods-bg-inverse bg-opacity-20 transition-opacity duration-200 group-hover:bg-opacity-30", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex items-center justify-center w-16 h-16 rounded-full bg-ods-accent text-ods-text-on-accent shadow-lg transition-transform duration-200 group-hover:scale-110", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTMD5LDX4cjs.PlayIcon, { size: 24, color: "currentColor", className: "ml-1" }) }) })
|
|
13267
13392
|
]
|
|
13268
13393
|
}
|
|
13269
13394
|
) });
|
|
@@ -13410,7 +13535,7 @@ var MediaCarousel = _react.memo.call(void 0, function MediaCarousel2({
|
|
|
13410
13535
|
loading: "lazy"
|
|
13411
13536
|
}
|
|
13412
13537
|
),
|
|
13413
|
-
(item.type === "video" || item.type === "youtube") && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute inset-0 flex items-center justify-center bg-black/30", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-black/70 rounded-full p-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13538
|
+
(item.type === "video" || item.type === "youtube") && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute inset-0 flex items-center justify-center bg-black/30", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-black/70 rounded-full p-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTMD5LDX4cjs.PlayIcon, { size: 12, color: "white" }) }) }),
|
|
13414
13539
|
isActive && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute bottom-1 right-1 w-2 h-2 bg-[#FFC008] rounded-full" })
|
|
13415
13540
|
]
|
|
13416
13541
|
},
|
|
@@ -30336,8 +30461,8 @@ function VideoSourceSelector({
|
|
|
30336
30461
|
onVideoSourceTypeChange,
|
|
30337
30462
|
youtubeUrl,
|
|
30338
30463
|
onYoutubeUrlChange,
|
|
30339
|
-
|
|
30340
|
-
|
|
30464
|
+
mainVideoUrl,
|
|
30465
|
+
onMainVideoUrlChange,
|
|
30341
30466
|
onUploadVideo,
|
|
30342
30467
|
showAIBadge = true,
|
|
30343
30468
|
isAIGenerated = false,
|
|
@@ -30375,7 +30500,7 @@ function VideoSourceSelector({
|
|
|
30375
30500
|
});
|
|
30376
30501
|
setUploadProgress(100);
|
|
30377
30502
|
setUploadMessage("Upload complete!");
|
|
30378
|
-
|
|
30503
|
+
onMainVideoUrlChange(url);
|
|
30379
30504
|
} catch (err) {
|
|
30380
30505
|
setUploadError(err instanceof Error ? err.message : "Failed to upload video");
|
|
30381
30506
|
} finally {
|
|
@@ -30387,10 +30512,10 @@ function VideoSourceSelector({
|
|
|
30387
30512
|
}
|
|
30388
30513
|
};
|
|
30389
30514
|
input.click();
|
|
30390
|
-
}, [onUploadVideo,
|
|
30515
|
+
}, [onUploadVideo, onMainVideoUrlChange]);
|
|
30391
30516
|
const handleDeleteVideo = _react.useCallback.call(void 0, () => {
|
|
30392
|
-
|
|
30393
|
-
}, [
|
|
30517
|
+
onMainVideoUrlChange("");
|
|
30518
|
+
}, [onMainVideoUrlChange]);
|
|
30394
30519
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `space-y-4 p-6 bg-ods-card border border-ods-border rounded-lg ${className}`, children: [
|
|
30395
30520
|
showTitle && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h3", { className: "font-['Azeret_Mono'] text-[18px] font-semibold uppercase text-ods-text-primary flex items-center gap-2", children: [
|
|
30396
30521
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Video, { className: "h-5 w-5" }),
|
|
@@ -30481,10 +30606,10 @@ function VideoSourceSelector({
|
|
|
30481
30606
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-xs text-ods-text-secondary", children: uploadMessage })
|
|
30482
30607
|
] }),
|
|
30483
30608
|
uploadError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-sm text-ods-attention-red-error mb-3", children: uploadError }),
|
|
30484
|
-
|
|
30609
|
+
mainVideoUrl ? VideoPreviewComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30485
30610
|
VideoPreviewComponent,
|
|
30486
30611
|
{
|
|
30487
|
-
videoUrl:
|
|
30612
|
+
videoUrl: mainVideoUrl,
|
|
30488
30613
|
onDelete: handleDeleteVideo,
|
|
30489
30614
|
isAIGenerated
|
|
30490
30615
|
}
|
|
@@ -30494,7 +30619,7 @@ function VideoSourceSelector({
|
|
|
30494
30619
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30495
30620
|
"video",
|
|
30496
30621
|
{
|
|
30497
|
-
src:
|
|
30622
|
+
src: mainVideoUrl,
|
|
30498
30623
|
className: "w-full h-auto max-h-[300px] object-contain bg-black",
|
|
30499
30624
|
controls: true
|
|
30500
30625
|
}
|
|
@@ -32251,7 +32376,7 @@ function WaitlistForm({
|
|
|
32251
32376
|
const finalPhone = phone ? formatPhoneE164(phone, countryCode) : void 0;
|
|
32252
32377
|
try {
|
|
32253
32378
|
await onRegister(email, finalPhone);
|
|
32254
|
-
} catch (
|
|
32379
|
+
} catch (e25) {
|
|
32255
32380
|
}
|
|
32256
32381
|
};
|
|
32257
32382
|
if (!isClient) {
|
|
@@ -33687,7 +33812,5 @@ function canonicalize(status) {
|
|
|
33687
33812
|
|
|
33688
33813
|
|
|
33689
33814
|
|
|
33690
|
-
|
|
33691
|
-
|
|
33692
|
-
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.validateAccessCode = validateAccessCode; exports.consumeAccessCode = consumeAccessCode; exports.validateAndConsumeAccessCode = validateAndConsumeAccessCode; exports.useAccessCodeIntegration = useAccessCodeIntegration; 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.formatReleaseDate = formatReleaseDate; exports.formatRelativeTime = formatRelativeTime; exports.getDynamicIcon = getDynamicIcon; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.PulseDots = PulseDots; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.SquareAvatar = SquareAvatar; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.TicketStatusTag = TicketStatusTag; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.Textarea = Textarea; exports.ChatTypingIndicator = ChatTypingIndicator; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageListLoader = ChatMessageListLoader; exports.useDelayedFlag = useDelayedFlag; exports.ChatMessageList = ChatMessageList; exports.ChatQuickAction = ChatQuickAction; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.ErrorBoundary = ErrorBoundary; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.Progress = Progress; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OrganizationIcon = OrganizationIcon; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.PlatformBadge = PlatformBadge; 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.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.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.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.Switch = Switch; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.Header = Header; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderButton = HeaderButton; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.AnnouncementBar = AnnouncementBar; exports.VendorIcon = VendorIcon; exports.CategoriesCart = CategoriesCart; exports.CategoryCard = CategoryCard; exports.VendorDisplayButton = VendorDisplayButton; exports.setRealAuthHook = setRealAuthHook; exports.useAuth = useAuth; exports.AuthProvider = AuthProvider; exports.CommentCard = CommentCard; exports.ContentLoadingContainer = ContentLoadingContainer; exports.useContentLoading = useContentLoading; exports.DynamicSkeleton = DynamicSkeleton; exports.SkeletonPresets = SkeletonPresets; exports.PlatformSkeletonContainer = PlatformSkeletonContainer; exports.ProgressiveSkeleton = ProgressiveSkeleton; exports.EmptyState = EmptyState2; exports.ChevronButton = ChevronButton; exports.FaqAccordion = FaqAccordion; exports.FilterChip = FilterChip; exports.SocialIconRow = SocialIconRow; exports.Footer = Footer; exports.useUnifiedFiltering = useUnifiedFiltering; exports.vendorFilterConfig = vendorFilterConfig; exports.blogFilterConfig = blogFilterConfig; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.UnifiedPagination = UnifiedPagination; exports.FooterWaitlistButton = FooterWaitlistButton; exports.HeroImageUploader = HeroImageUploader; exports.ResponsiveIconsBlock = ResponsiveIconsBlock; exports.Slider = Slider; exports.ImageCropper = ImageCropper; exports.MediaCarousel = MediaCarousel; exports.MetricValue = MetricValue; exports.MSPDisplay = MSPDisplay; exports.PersistentFilterControls = PersistentFilterControls; exports.PersistentSearchContainer = PersistentSearchContainer; exports.PersistentSidebar = PersistentSidebar; exports.PersistentMobileDropdown = PersistentMobileDropdown; exports.PersistentPagination = PersistentPagination; exports.usePaginationLoading = usePaginationLoading; exports.PersistentPaginationWrapper = PersistentPaginationWrapper; exports.PRICING_STYLES = PRICING_STYLES; exports.PricingDisplay = PricingDisplay; exports.formatPricingForDisplay = formatPricingForDisplay; exports.ResultsCount = ResultsCount; exports.VendorTag = VendorTag; exports.SelectionSourceBadge = SelectionSourceBadge; exports.UserDisplay = UserDisplay; exports.UnifiedSkeleton = UnifiedSkeleton; exports.TextSkeleton = TextSkeleton; exports.InteractiveSkeleton = InteractiveSkeleton; exports.MediaSkeleton = MediaSkeleton; exports.CardSkeleton = CardSkeleton; exports.CardSkeletonGrid = CardSkeletonGrid; exports.AnnouncementBarSkeleton = AnnouncementBarSkeleton; exports.HeroSkeleton = HeroSkeleton; exports.SearchContainerSkeleton = SearchContainerSkeleton; exports.CategorySidebarSkeleton = CategorySidebarSkeleton; exports.BreadcrumbSkeleton = BreadcrumbSkeleton; exports.ResultsHeaderSkeleton = ResultsHeaderSkeleton; exports.TwoColumnLayoutSkeleton = TwoColumnLayoutSkeleton; exports.ArticleLayoutSkeleton = ArticleLayoutSkeleton; exports.VendorDetailLayoutSkeleton = VendorDetailLayoutSkeleton; exports.StatsSectionSkeleton = StatsSectionSkeleton; exports.BlogCardGridSkeleton = BlogCardGridSkeleton; exports.VendorGridSkeleton = VendorGridSkeleton; exports.SlackCommunitySkeleton = SlackCommunitySkeleton; exports.ParagraphSkeleton = ParagraphSkeleton; exports.ListSkeleton = ListSkeleton; exports.TableSkeleton = TableSkeleton; exports.FormSkeleton = FormSkeleton; exports.NavigationSkeleton = NavigationSkeleton; exports.ProfileSkeleton = ProfileSkeleton; exports.CommentSkeleton = CommentSkeleton; exports.FeatureListSkeleton = FeatureListSkeleton; exports.TimelineSkeleton = TimelineSkeleton; exports.PricingSkeleton = PricingSkeleton; exports.ProfileLoadingSkeleton = ProfileLoadingSkeleton; exports.MspProfileFormSkeleton = MspProfileFormSkeleton; exports.CategoryCardSkeleton = CategoryCardSkeleton; exports.CategoryVendorSelectorSkeleton = CategoryVendorSelectorSkeleton; exports.WizardLayoutSkeleton = WizardLayoutSkeleton; exports.MarginReportSkeleton = MarginReportSkeleton; exports.UsersGridSkeleton = UsersGridSkeleton; exports.OrganizationIconSkeleton = OrganizationIconSkeleton; exports.OrganizationCardSkeleton = OrganizationCardSkeleton; exports.OrganizationCardSkeletonGrid = OrganizationCardSkeletonGrid; exports.DeviceCardSkeleton = DeviceCardSkeleton; exports.DeviceCardSkeletonGrid = DeviceCardSkeletonGrid; exports.VendorPageSkeleton = VendorPageSkeleton; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon3; exports.XCircleIcon = XCircleIcon; exports.YesNoDisplay = YesNoDisplay; exports.evaluateFeatureValue = evaluateFeatureValue; exports.MadeWithLove = MadeWithLove; exports.DateTimePicker = DateTimePicker; exports.InteractiveCard = InteractiveCard; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.ImageGalleryModal = ImageGalleryModal; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.DetailPageSkeleton = DetailPageSkeleton; exports.ReleaseDetailPage = ReleaseDetailPage; exports.ReleaseDetailSkeleton = ReleaseDetailSkeleton; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.MediaTypeSelector = MediaTypeSelector; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.ProgressBar = ProgressBar; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; 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.Modal = Modal; exports.ModalContent = ModalContent; exports.ModalHeader = ModalHeader; exports.ModalTitle = ModalTitle; exports.ModalFooter = ModalFooter; exports.Modal2 = Modal2; exports.ModalContent2 = ModalContent2; exports.ModalHeader2 = ModalHeader2; exports.ModalTitle2 = ModalTitle2; exports.ModalFooter2 = ModalFooter2; 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.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.StatusIndicator = StatusIndicator; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.ListPageLayout = ListPageLayout; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.CircularProgress = CircularProgress; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.MoreActionsMenu = MoreActionsMenu; exports.DropdownButton = DropdownButton; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; 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.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.assets = assets;
|
|
33693
|
-
//# sourceMappingURL=chunk-L5AAJ3QN.cjs.map
|
|
33815
|
+
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.validateAccessCode = validateAccessCode; exports.consumeAccessCode = consumeAccessCode; exports.validateAndConsumeAccessCode = validateAndConsumeAccessCode; exports.useAccessCodeIntegration = useAccessCodeIntegration; 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.formatReleaseDate = formatReleaseDate; exports.formatRelativeTime = formatRelativeTime; exports.getDynamicIcon = getDynamicIcon; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.PulseDots = PulseDots; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.SquareAvatar = SquareAvatar; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.TicketStatusTag = TicketStatusTag; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.Textarea = Textarea; exports.ChatTypingIndicator = ChatTypingIndicator; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageList = ChatMessageList; exports.ChatQuickAction = ChatQuickAction; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.ErrorBoundary = ErrorBoundary; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.Progress = Progress; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OrganizationIcon = OrganizationIcon; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.PlatformBadge = PlatformBadge; 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.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.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.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.Switch = Switch; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.Header = Header; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderButton = HeaderButton; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.AnnouncementBar = AnnouncementBar; exports.VendorIcon = VendorIcon; exports.CategoriesCart = CategoriesCart; exports.CategoryCard = CategoryCard; exports.VendorDisplayButton = VendorDisplayButton; exports.setRealAuthHook = setRealAuthHook; exports.useAuth = useAuth; exports.AuthProvider = AuthProvider; exports.CommentCard = CommentCard; exports.ContentLoadingContainer = ContentLoadingContainer; exports.useContentLoading = useContentLoading; exports.DynamicSkeleton = DynamicSkeleton; exports.SkeletonPresets = SkeletonPresets; exports.PlatformSkeletonContainer = PlatformSkeletonContainer; exports.ProgressiveSkeleton = ProgressiveSkeleton; exports.EmptyState = EmptyState2; exports.ChevronButton = ChevronButton; exports.FaqAccordion = FaqAccordion; exports.FilterChip = FilterChip; exports.SocialIconRow = SocialIconRow; exports.Footer = Footer; exports.useUnifiedFiltering = useUnifiedFiltering; exports.vendorFilterConfig = vendorFilterConfig; exports.blogFilterConfig = blogFilterConfig; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.UnifiedPagination = UnifiedPagination; exports.FooterWaitlistButton = FooterWaitlistButton; exports.HeroImageUploader = HeroImageUploader; exports.ResponsiveIconsBlock = ResponsiveIconsBlock; exports.Slider = Slider; exports.ImageCropper = ImageCropper; exports.MediaCarousel = MediaCarousel; exports.MetricValue = MetricValue; exports.MSPDisplay = MSPDisplay; exports.PersistentFilterControls = PersistentFilterControls; exports.PersistentSearchContainer = PersistentSearchContainer; exports.PersistentSidebar = PersistentSidebar; exports.PersistentMobileDropdown = PersistentMobileDropdown; exports.PersistentPagination = PersistentPagination; exports.usePaginationLoading = usePaginationLoading; exports.PersistentPaginationWrapper = PersistentPaginationWrapper; exports.PRICING_STYLES = PRICING_STYLES; exports.PricingDisplay = PricingDisplay; exports.formatPricingForDisplay = formatPricingForDisplay; exports.ResultsCount = ResultsCount; exports.VendorTag = VendorTag; exports.SelectionSourceBadge = SelectionSourceBadge; exports.UserDisplay = UserDisplay; exports.UnifiedSkeleton = UnifiedSkeleton; exports.TextSkeleton = TextSkeleton; exports.InteractiveSkeleton = InteractiveSkeleton; exports.MediaSkeleton = MediaSkeleton; exports.CardSkeleton = CardSkeleton; exports.CardSkeletonGrid = CardSkeletonGrid; exports.AnnouncementBarSkeleton = AnnouncementBarSkeleton; exports.HeroSkeleton = HeroSkeleton; exports.SearchContainerSkeleton = SearchContainerSkeleton; exports.CategorySidebarSkeleton = CategorySidebarSkeleton; exports.BreadcrumbSkeleton = BreadcrumbSkeleton; exports.ResultsHeaderSkeleton = ResultsHeaderSkeleton; exports.TwoColumnLayoutSkeleton = TwoColumnLayoutSkeleton; exports.ArticleLayoutSkeleton = ArticleLayoutSkeleton; exports.VendorDetailLayoutSkeleton = VendorDetailLayoutSkeleton; exports.StatsSectionSkeleton = StatsSectionSkeleton; exports.BlogCardGridSkeleton = BlogCardGridSkeleton; exports.VendorGridSkeleton = VendorGridSkeleton; exports.SlackCommunitySkeleton = SlackCommunitySkeleton; exports.ParagraphSkeleton = ParagraphSkeleton; exports.ListSkeleton = ListSkeleton; exports.TableSkeleton = TableSkeleton; exports.FormSkeleton = FormSkeleton; exports.NavigationSkeleton = NavigationSkeleton; exports.ProfileSkeleton = ProfileSkeleton; exports.CommentSkeleton = CommentSkeleton; exports.FeatureListSkeleton = FeatureListSkeleton; exports.TimelineSkeleton = TimelineSkeleton; exports.PricingSkeleton = PricingSkeleton; exports.ProfileLoadingSkeleton = ProfileLoadingSkeleton; exports.MspProfileFormSkeleton = MspProfileFormSkeleton; exports.CategoryCardSkeleton = CategoryCardSkeleton; exports.CategoryVendorSelectorSkeleton = CategoryVendorSelectorSkeleton; exports.WizardLayoutSkeleton = WizardLayoutSkeleton; exports.MarginReportSkeleton = MarginReportSkeleton; exports.UsersGridSkeleton = UsersGridSkeleton; exports.OrganizationIconSkeleton = OrganizationIconSkeleton; exports.OrganizationCardSkeleton = OrganizationCardSkeleton; exports.OrganizationCardSkeletonGrid = OrganizationCardSkeletonGrid; exports.DeviceCardSkeleton = DeviceCardSkeleton; exports.DeviceCardSkeletonGrid = DeviceCardSkeletonGrid; exports.VendorPageSkeleton = VendorPageSkeleton; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon3; exports.XCircleIcon = XCircleIcon; exports.YesNoDisplay = YesNoDisplay; exports.evaluateFeatureValue = evaluateFeatureValue; exports.MadeWithLove = MadeWithLove; exports.DateTimePicker = DateTimePicker; exports.InteractiveCard = InteractiveCard; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.ImageGalleryModal = ImageGalleryModal; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.DetailPageSkeleton = DetailPageSkeleton; exports.ReleaseDetailPage = ReleaseDetailPage; exports.ReleaseDetailSkeleton = ReleaseDetailSkeleton; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.MediaTypeSelector = MediaTypeSelector; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.ProgressBar = ProgressBar; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; 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.Modal = Modal; exports.ModalContent = ModalContent; exports.ModalHeader = ModalHeader; exports.ModalTitle = ModalTitle; exports.ModalFooter = ModalFooter; exports.Modal2 = Modal2; exports.ModalContent2 = ModalContent2; exports.ModalHeader2 = ModalHeader2; exports.ModalTitle2 = ModalTitle2; exports.ModalFooter2 = ModalFooter2; 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.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.StatusIndicator = StatusIndicator; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.ListPageLayout = ListPageLayout; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.CircularProgress = CircularProgress; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.MoreActionsMenu = MoreActionsMenu; exports.DropdownButton = DropdownButton; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; 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.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.assets = assets;
|
|
33816
|
+
//# sourceMappingURL=chunk-JHWVLIFZ.cjs.map
|