@flamingo-stack/openframe-frontend-core 0.0.776 → 0.0.780
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/case-study-card-WXMWYGSW.cjs +25 -0
- package/dist/{chunk-2MF547RG.cjs → chunk-2JO5HNEF.cjs} +28 -26
- package/dist/{chunk-DDXQGTWB.cjs → chunk-2W3VDE4D.cjs} +5 -5
- package/dist/{chunk-R3JX4MXD.cjs → chunk-3ZLPYEL5.cjs} +10 -10
- package/dist/{chunk-3V27UHSH.cjs → chunk-4BBOHZM3.cjs} +17 -17
- package/dist/{chunk-XT5WEHFM.cjs → chunk-4NRVV3KO.cjs} +3 -3
- package/dist/{chunk-DGFDBPO7.cjs → chunk-5GJM7VRR.cjs} +1 -94
- package/dist/{chunk-E64HPPRH.cjs → chunk-5PK22JP7.cjs} +50 -50
- package/dist/{chunk-57B5RUYD.cjs → chunk-64KBI5MI.cjs} +2 -2
- package/dist/{chunk-ASMNNSUQ.cjs → chunk-7PNRXJX2.cjs} +3 -3
- package/dist/{chunk-OTZQP53Y.cjs → chunk-AQXEM7GI.cjs} +8 -8
- package/dist/{chunk-VFZFCRAL.cjs → chunk-AQXKXZWB.cjs} +4 -4
- package/dist/{chunk-VFUMM6JC.cjs → chunk-BEMGJDXI.cjs} +2 -2
- package/dist/{chunk-HY6BCZH7.cjs → chunk-BNUZKBNV.cjs} +3 -3
- package/dist/{chunk-2YB4X5WT.cjs → chunk-DQALLDTZ.cjs} +6 -6
- package/dist/{chunk-MWH5ZTMB.cjs → chunk-F3BASIMT.cjs} +97 -95
- package/dist/{chunk-Z5KX56TK.cjs → chunk-HUPDPANN.cjs} +4 -4
- package/dist/{chunk-2AZAJ7RK.cjs → chunk-I4IC3BRC.cjs} +53 -53
- package/dist/{chunk-BDYI6HBT.cjs → chunk-IE3QCYBT.cjs} +18 -16
- package/dist/{chunk-UM6HFGTI.cjs → chunk-ILRQXZBA.cjs} +53 -51
- package/dist/{chunk-CZIMISAR.cjs → chunk-JB2SEF6Q.cjs} +7 -7
- package/dist/{chunk-AMVI5VXM.cjs → chunk-KA3VQ6X2.cjs} +91 -89
- package/dist/{chunk-LJT2KRE2.cjs → chunk-KLTUTZBO.cjs} +24 -24
- package/dist/{chunk-EHJE3UWZ.cjs → chunk-LBGAHB6X.cjs} +20 -20
- package/dist/{chunk-LNCBN4BL.cjs → chunk-MLX6Z7TU.cjs} +2 -2
- package/dist/chunk-OH5LAH3X.cjs +1456 -0
- package/dist/{chunk-XXJL5GY3.cjs → chunk-OJZBZH56.cjs} +3 -3
- package/dist/{chunk-IXZNBDXT.cjs → chunk-OMHQZXCD.cjs} +28 -28
- package/dist/{chunk-KM2TVQCH.cjs → chunk-OWQVDWTK.cjs} +259 -247
- package/dist/{chunk-YFTQ2ALU.cjs → chunk-PQBGSVZE.cjs} +116 -82
- package/dist/{chunk-OJLZ7PGO.cjs → chunk-QEFDGI3Z.cjs} +37 -35
- package/dist/{chunk-6HY2NH7D.cjs → chunk-QIQYD75I.cjs} +2 -2
- package/dist/{chunk-RB7VLVMD.cjs → chunk-R6BKQKIF.cjs} +9 -7
- package/dist/{chunk-V3W56L2D.cjs → chunk-SIDDZZKL.cjs} +38 -38
- package/dist/chunk-SZHDXXMK.cjs +102 -0
- package/dist/{chunk-5P4TDV7V.cjs → chunk-TUAATMUE.cjs} +5 -93
- package/dist/{chunk-F65RSJVV.cjs → chunk-TVDQMG7I.cjs} +23 -21
- package/dist/{chunk-XN6LXMH5.cjs → chunk-UPAE4IV5.cjs} +595 -591
- package/dist/chunk-V4FXUIMH.cjs +92 -0
- package/dist/{chunk-2JRSYWFP.cjs → chunk-VXAKQRV7.cjs} +5 -5
- package/dist/{chunk-L55XLH5A.cjs → chunk-WR7KJML6.cjs} +33 -31
- package/dist/{chunk-5QP3K2CE.cjs → chunk-XEYL6AFZ.cjs} +9 -9
- package/dist/{chunk-MYHS4W2H.cjs → chunk-YG72MEHY.cjs} +213 -1647
- package/dist/{chunk-WAQPW4CB.cjs → chunk-YNECNYQF.cjs} +6 -6
- package/dist/{chunk-NWZSYG4S.cjs → chunk-YWQ3VXPL.cjs} +114 -112
- package/dist/{chunk-24OYQQZC.cjs → chunk-ZGWS3NJR.cjs} +22 -22
- package/dist/{cloud-tenants-QFE6QMR5.cjs → cloud-tenants-2ZLGCSGK.cjs} +27 -24
- package/dist/components/case-studies/index.cjs +45 -41
- package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
- package/dist/components/chat/chat-message-enhanced.js +8 -4
- package/dist/components/chat/chat-message-list.d.ts.map +1 -1
- package/dist/components/chat/chat-message-list.js +2 -0
- package/dist/components/chat/index.cjs +21 -17
- package/dist/components/chat/types/component.types.d.ts +9 -0
- package/dist/components/chat/types/component.types.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +28 -25
- package/dist/components/docs/index.cjs +31 -28
- package/dist/components/embeds/index.cjs +28 -25
- package/dist/components/faq/index.cjs +29 -26
- package/dist/components/features/index.cjs +28 -24
- package/dist/components/features/video-hover-preview.d.ts.map +1 -1
- package/dist/components/features/video-hover-preview.js +2 -5
- package/dist/components/features/video.d.ts.map +1 -1
- package/dist/components/features/video.js +1 -44
- package/dist/components/help-center-pages/index.cjs +131 -127
- package/dist/components/index.cjs +94 -90
- package/dist/components/meeting-scheduler/index.cjs +95 -92
- package/dist/components/navigation/index.cjs +30 -27
- package/dist/components/navigation/nav-panel.d.ts.map +1 -1
- package/dist/components/navigation/nav-panel.js +47 -13
- package/dist/components/onboarding-guides/index.cjs +30 -27
- package/dist/components/product-demo/index.cjs +38 -35
- package/dist/components/related-content/index.cjs +15 -12
- package/dist/components/tickets/index.cjs +33 -30
- package/dist/components/ui/index.cjs +28 -24
- package/dist/{devices-SFJDLXSW.cjs → devices-UOBQFPV3.cjs} +28 -25
- package/dist/{embeddable-chat-XZUWAK4W.cjs → embeddable-chat-SFQWRUIV.cjs} +99 -95
- package/dist/hooks/index.cjs +12 -10
- package/dist/index.cjs +36 -30
- package/dist/{knowledge-SAK3ZGCO.cjs → knowledge-5K3LTHGB.cjs} +28 -25
- package/dist/{logs-CYBGMFA5.cjs → logs-WU3N6ESS.cjs} +35 -32
- package/dist/{policies-XXDOICWF.cjs → policies-2IYASCQO.cjs} +31 -28
- package/dist/{remote-session-TC3BZDBZ.cjs → remote-session-TGM2OTTV.cjs} +12 -10
- package/dist/{scripts-C5T2AQPA.cjs → scripts-IQBKOQEY.cjs} +34 -31
- package/dist/{software-update-XU5AI4TP.cjs → software-update-GJLDO5X5.cjs} +31 -28
- package/dist/{tickets-board-YT25IX3O.cjs → tickets-board-FB5AGLJD.cjs} +16 -14
- package/dist/{video-file-player-6ZFOZFER.cjs → video-file-player-SIJW5UWU.cjs} +3 -2
- package/package.json +1 -1
- package/src/components/chat/chat-message-enhanced.tsx +13 -4
- package/src/components/chat/chat-message-list.tsx +2 -0
- package/src/components/chat/types/component.types.ts +9 -0
- package/src/components/features/video-hover-preview.tsx +37 -46
- package/src/components/features/video.tsx +1 -61
- package/src/components/navigation/nav-panel.tsx +74 -14
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunkLBGAHB6Xcjs = require('./chunk-LBGAHB6X.cjs');
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
var _chunkKKAY6GPUcjs = require('./chunk-KKAY6GPU.cjs');
|
|
@@ -32,7 +32,7 @@ var _chunkKKAY6GPUcjs = require('./chunk-KKAY6GPU.cjs');
|
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
35
|
-
var
|
|
35
|
+
var _chunkXEYL6AFZcjs = require('./chunk-XEYL6AFZ.cjs');
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
|
|
@@ -239,10 +239,10 @@ var _chunk7WT2C5YYcjs = require('./chunk-7WT2C5YY.cjs');
|
|
|
239
239
|
|
|
240
240
|
|
|
241
241
|
|
|
242
|
-
var
|
|
242
|
+
var _chunkOJZBZH56cjs = require('./chunk-OJZBZH56.cjs');
|
|
243
243
|
|
|
244
244
|
|
|
245
|
-
var
|
|
245
|
+
var _chunk64KBI5MIcjs = require('./chunk-64KBI5MI.cjs');
|
|
246
246
|
|
|
247
247
|
|
|
248
248
|
var _chunkJKX2C3I2cjs = require('./chunk-JKX2C3I2.cjs');
|
|
@@ -286,6 +286,7 @@ var _chunkWWUSFOJ7cjs = require('./chunk-WWUSFOJ7.cjs');
|
|
|
286
286
|
|
|
287
287
|
|
|
288
288
|
|
|
289
|
+
var _chunkYG72MEHYcjs = require('./chunk-YG72MEHY.cjs');
|
|
289
290
|
|
|
290
291
|
|
|
291
292
|
|
|
@@ -315,12 +316,12 @@ var _chunkWWUSFOJ7cjs = require('./chunk-WWUSFOJ7.cjs');
|
|
|
315
316
|
|
|
316
317
|
|
|
317
318
|
|
|
318
|
-
var _chunkMYHS4W2Hcjs = require('./chunk-MYHS4W2H.cjs');
|
|
319
319
|
|
|
320
|
+
var _chunkOH5LAH3Xcjs = require('./chunk-OH5LAH3X.cjs');
|
|
320
321
|
|
|
321
322
|
|
|
322
|
-
var _chunkVFUMM6JCcjs = require('./chunk-VFUMM6JC.cjs');
|
|
323
323
|
|
|
324
|
+
var _chunkBEMGJDXIcjs = require('./chunk-BEMGJDXI.cjs');
|
|
324
325
|
|
|
325
326
|
|
|
326
327
|
|
|
@@ -328,7 +329,8 @@ var _chunkVFUMM6JCcjs = require('./chunk-VFUMM6JC.cjs');
|
|
|
328
329
|
|
|
329
330
|
|
|
330
331
|
|
|
331
|
-
|
|
332
|
+
|
|
333
|
+
var _chunkBNUZKBNVcjs = require('./chunk-BNUZKBNV.cjs');
|
|
332
334
|
|
|
333
335
|
|
|
334
336
|
var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
|
|
@@ -338,14 +340,18 @@ var _chunkNTPX5GXIcjs = require('./chunk-NTPX5GXI.cjs');
|
|
|
338
340
|
|
|
339
341
|
|
|
340
342
|
|
|
343
|
+
var _chunkV4FXUIMHcjs = require('./chunk-V4FXUIMH.cjs');
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
var _chunkSZHDXXMKcjs = require('./chunk-SZHDXXMK.cjs');
|
|
341
347
|
|
|
342
|
-
var _chunk5P4TDV7Vcjs = require('./chunk-5P4TDV7V.cjs');
|
|
343
348
|
|
|
349
|
+
var _chunkTUAATMUEcjs = require('./chunk-TUAATMUE.cjs');
|
|
344
350
|
|
|
345
351
|
|
|
346
352
|
|
|
347
353
|
|
|
348
|
-
var
|
|
354
|
+
var _chunk5GJM7VRRcjs = require('./chunk-5GJM7VRR.cjs');
|
|
349
355
|
|
|
350
356
|
|
|
351
357
|
var _chunkE76ONBKFcjs = require('./chunk-E76ONBKF.cjs');
|
|
@@ -721,14 +727,14 @@ function buildHeadingIdMap(content, sectionIds) {
|
|
|
721
727
|
for (const section of sectionIds) {
|
|
722
728
|
sectionIdMap.set(section.title, section.id);
|
|
723
729
|
sectionIdMap.set(section.title.toLowerCase(), section.id);
|
|
724
|
-
sectionIdMap.set(
|
|
730
|
+
sectionIdMap.set(_chunkOJZBZH56cjs.stripHeadingEmojis.call(void 0, section.title).toLowerCase(), section.id);
|
|
725
731
|
}
|
|
726
732
|
}
|
|
727
|
-
const dedupe =
|
|
733
|
+
const dedupe = _chunkOJZBZH56cjs.createHeadingIdDeduper.call(void 0, );
|
|
728
734
|
const map = /* @__PURE__ */ new Map();
|
|
729
735
|
let sectionOrdinal = 0;
|
|
730
736
|
let headingOrdinal = 0;
|
|
731
|
-
for (const { line, level, text: rawText } of
|
|
737
|
+
for (const { line, level, text: rawText } of _chunkOJZBZH56cjs.scanHeadings.call(void 0, content)) {
|
|
732
738
|
const text2 = stripInlineMarkdown(rawText).trim();
|
|
733
739
|
headingOrdinal++;
|
|
734
740
|
if (level <= EXTRACTOR_MAX_LEVEL) sectionOrdinal++;
|
|
@@ -737,8 +743,8 @@ function buildHeadingIdMap(content, sectionIds) {
|
|
|
737
743
|
for (const variation of [
|
|
738
744
|
text2,
|
|
739
745
|
text2.toLowerCase(),
|
|
740
|
-
|
|
741
|
-
|
|
746
|
+
_chunkOJZBZH56cjs.stripHeadingEmojis.call(void 0, text2),
|
|
747
|
+
_chunkOJZBZH56cjs.stripHeadingEmojis.call(void 0, text2).toLowerCase()
|
|
742
748
|
]) {
|
|
743
749
|
const id = sectionIdMap.get(variation);
|
|
744
750
|
if (id) {
|
|
@@ -748,7 +754,7 @@ function buildHeadingIdMap(content, sectionIds) {
|
|
|
748
754
|
}
|
|
749
755
|
}
|
|
750
756
|
if (assigned === void 0) {
|
|
751
|
-
const baseId =
|
|
757
|
+
const baseId = _chunkOJZBZH56cjs.slugifyHeadingText.call(void 0, text2);
|
|
752
758
|
assigned = dedupe(
|
|
753
759
|
baseId || (level <= EXTRACTOR_MAX_LEVEL ? `section-${sectionOrdinal}` : `heading-${headingOrdinal}`)
|
|
754
760
|
);
|
|
@@ -1183,7 +1189,7 @@ var MARKDOWN_H2_CLASS = "mb-4 mt-8 border-b border-ods-border pb-2 font-sans fon
|
|
|
1183
1189
|
var MARKDOWN_PARAGRAPH_CLASS = "mb-4 leading-relaxed text-ods-text-primary first:mt-0 last:mb-0";
|
|
1184
1190
|
var MarkdownContentImage = ({ src, alt }) => {
|
|
1185
1191
|
const inScope = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
|
|
1186
|
-
const authedSrc =
|
|
1192
|
+
const authedSrc = _chunkV4FXUIMHcjs.useAuthedImageSrc.call(void 0, inScope ? void 0 : src);
|
|
1187
1193
|
const resolvedSrc = inScope ? src : authedSrc;
|
|
1188
1194
|
if (!resolvedSrc) return null;
|
|
1189
1195
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -1257,7 +1263,7 @@ function buildBaseComponents({
|
|
|
1257
1263
|
const mapped = useHeadingId(node);
|
|
1258
1264
|
const taken = useAssignedHeadingIds();
|
|
1259
1265
|
const explicit = typeof _optionalChain([node, 'optionalAccess', _25 => _25.properties, 'optionalAccess', _26 => _26.id]) === "string" && node.properties.id !== "" ? node.properties.id : void 0;
|
|
1260
|
-
const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(
|
|
1266
|
+
const id = _nullishCoalesce(_nullishCoalesce(explicit, () => ( mapped)), () => ( resolveFallbackHeadingId(_chunkOJZBZH56cjs.slugifyHeadingText.call(void 0, extractText(children)), taken)));
|
|
1261
1267
|
const EffectiveTag = Tag2 === "h1" && demoteMarkdownH1ToH2 ? "h2" : Tag2;
|
|
1262
1268
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EffectiveTag, { id: id || void 0, className: headingClassName, children });
|
|
1263
1269
|
}
|
|
@@ -1329,10 +1335,10 @@ function buildBaseComponents({
|
|
|
1329
1335
|
const handleAnchorClick = (e) => {
|
|
1330
1336
|
if (inPageAnchorId === null) return;
|
|
1331
1337
|
if (e.metaKey || e.ctrlKey || e.shiftKey || e.altKey || e.button !== 0) return;
|
|
1332
|
-
const target =
|
|
1338
|
+
const target = _chunkOJZBZH56cjs.getHashTargetElement.call(void 0, inPageAnchorId);
|
|
1333
1339
|
if (!_optionalChain([target, 'optionalAccess', _27 => _27.id])) return;
|
|
1334
1340
|
e.preventDefault();
|
|
1335
|
-
|
|
1341
|
+
_chunkOJZBZH56cjs.navigateSamePageHash.call(void 0, `#${target.id}`, { headerOffset: _chunkOJZBZH56cjs.HUB_HEADER_OFFSET_PX });
|
|
1336
1342
|
};
|
|
1337
1343
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1338
1344
|
_chunkV45KLJQPcjs.next_link_default,
|
|
@@ -1872,7 +1878,7 @@ function findInlineCodeRanges(source) {
|
|
|
1872
1878
|
while (pos <= len) {
|
|
1873
1879
|
let end = source.indexOf("\n", pos);
|
|
1874
1880
|
if (end === -1) end = len;
|
|
1875
|
-
const blank =
|
|
1881
|
+
const blank = _chunkOJZBZH56cjs.isBlankLine.call(void 0, source.slice(pos, end));
|
|
1876
1882
|
if (blank && segStart !== -1) break;
|
|
1877
1883
|
if (!blank) {
|
|
1878
1884
|
if (segStart === -1) segStart = pos;
|
|
@@ -1954,7 +1960,7 @@ function toMaskLines(source) {
|
|
|
1954
1960
|
return out;
|
|
1955
1961
|
}
|
|
1956
1962
|
function blankFencedRegions(masked, lines) {
|
|
1957
|
-
const fences =
|
|
1963
|
+
const fences = _chunkOJZBZH56cjs.createFenceTracker.call(void 0, );
|
|
1958
1964
|
const ranges = [];
|
|
1959
1965
|
let openStart = null;
|
|
1960
1966
|
let lastEnd = 0;
|
|
@@ -1993,7 +1999,7 @@ function blankIndentedCode(masked, lines) {
|
|
|
1993
1999
|
const listContentCols = [];
|
|
1994
2000
|
const ranges = [];
|
|
1995
2001
|
for (const line of lines) {
|
|
1996
|
-
if (
|
|
2002
|
+
if (_chunkOJZBZH56cjs.isBlankLine.call(void 0, line.content)) continue;
|
|
1997
2003
|
const indent = leadingIndent(line.content);
|
|
1998
2004
|
const top = listContentCols.length ? listContentCols[listContentCols.length - 1] : 0;
|
|
1999
2005
|
if (indent >= top + 4) {
|
|
@@ -2084,7 +2090,7 @@ function contPrefixLen(c) {
|
|
|
2084
2090
|
function findLabelClose(lines, i, from) {
|
|
2085
2091
|
for (let j = i; j < lines.length; j++) {
|
|
2086
2092
|
const c = stripCr(lines[j].content);
|
|
2087
|
-
if (j > i &&
|
|
2093
|
+
if (j > i && _chunkOJZBZH56cjs.isBlankLine.call(void 0, c)) return { stoppedAt: j };
|
|
2088
2094
|
for (let q = j === i ? from : contPrefixLen(c); q < c.length; q = skipEscaped(c, q)) {
|
|
2089
2095
|
if (c[q] === "[") return { stoppedAt: j };
|
|
2090
2096
|
if (c[q] !== "]") continue;
|
|
@@ -2102,7 +2108,7 @@ function blankLinkDefinitions(masked, lines) {
|
|
|
2102
2108
|
let k = from;
|
|
2103
2109
|
for (; k < lines.length; k++) {
|
|
2104
2110
|
const c = stripCr(lines[k].content);
|
|
2105
|
-
if (
|
|
2111
|
+
if (_chunkOJZBZH56cjs.isBlankLine.call(void 0, c)) break;
|
|
2106
2112
|
blankLine(lines[k]);
|
|
2107
2113
|
if (stop(c)) {
|
|
2108
2114
|
k++;
|
|
@@ -2145,7 +2151,7 @@ function blankLinkDefinitions(masked, lines) {
|
|
|
2145
2151
|
const k = j + 1;
|
|
2146
2152
|
if (k >= lines.length) break;
|
|
2147
2153
|
const c = stripCr(lines[k].content);
|
|
2148
|
-
if (
|
|
2154
|
+
if (_chunkOJZBZH56cjs.isBlankLine.call(void 0, c)) break;
|
|
2149
2155
|
const at = contPrefixLen(c);
|
|
2150
2156
|
const next = tail.k === "needDest" ? parseDefTail(c, at) : parseTitleTail(c, skipSpaces(c, at));
|
|
2151
2157
|
if (next.k === "decline") break;
|
|
@@ -2215,7 +2221,7 @@ function blankUnreferencedFootnotes(masked, lines, folded) {
|
|
|
2215
2221
|
let sawBlank = false;
|
|
2216
2222
|
for (let k = i + 1; k < lines.length; k++) {
|
|
2217
2223
|
const c = text2(lines[k]);
|
|
2218
|
-
if (
|
|
2224
|
+
if (_chunkOJZBZH56cjs.isBlankLine.call(void 0, c)) {
|
|
2219
2225
|
sawBlank = true;
|
|
2220
2226
|
continue;
|
|
2221
2227
|
}
|
|
@@ -2315,7 +2321,7 @@ function paragraphEnd(s, from) {
|
|
|
2315
2321
|
lineStart += 1;
|
|
2316
2322
|
const next = s.indexOf("\n", lineStart);
|
|
2317
2323
|
const line = s.slice(lineStart, next === -1 ? s.length : next);
|
|
2318
|
-
if (
|
|
2324
|
+
if (_chunkOJZBZH56cjs.isBlankLine.call(void 0, line)) return lineStart;
|
|
2319
2325
|
if (next === -1) break;
|
|
2320
2326
|
lineStart = next;
|
|
2321
2327
|
}
|
|
@@ -2469,7 +2475,7 @@ function blankListItemCode(masked, lines, depth = 0) {
|
|
|
2469
2475
|
run = [];
|
|
2470
2476
|
};
|
|
2471
2477
|
for (const line of lines) {
|
|
2472
|
-
if (
|
|
2478
|
+
if (_chunkOJZBZH56cjs.isBlankLine.call(void 0, line.content)) {
|
|
2473
2479
|
if (run.length > 0) run.push({ ...line, content: "" });
|
|
2474
2480
|
continue;
|
|
2475
2481
|
}
|
|
@@ -2694,7 +2700,7 @@ function htmlBlockStartKind(line, inParagraph) {
|
|
|
2694
2700
|
function computeHtmlBlockRanges(text2) {
|
|
2695
2701
|
if (text2.indexOf("<") === -1) return [];
|
|
2696
2702
|
const ranges = [];
|
|
2697
|
-
const fences =
|
|
2703
|
+
const fences = _chunkOJZBZH56cjs.createFenceTracker.call(void 0, );
|
|
2698
2704
|
let kind = null;
|
|
2699
2705
|
let start = 0;
|
|
2700
2706
|
let lastEnd = 0;
|
|
@@ -2709,9 +2715,9 @@ function computeHtmlBlockRanges(text2) {
|
|
|
2709
2715
|
const expanded = expandTabs(line);
|
|
2710
2716
|
const norm = stripContainerPrefix(expanded, listContentCol);
|
|
2711
2717
|
if (norm.openedListCol >= 0) listContentCol = norm.openedListCol;
|
|
2712
|
-
else if (!
|
|
2713
|
-
const normBlank =
|
|
2714
|
-
const blank = openPrefixLen > 0 ?
|
|
2718
|
+
else if (!_chunkOJZBZH56cjs.isBlankLine.call(void 0, norm.text) && norm.text === expanded) listContentCol = 0;
|
|
2719
|
+
const normBlank = _chunkOJZBZH56cjs.isBlankLine.call(void 0, norm.text);
|
|
2720
|
+
const blank = openPrefixLen > 0 ? _chunkOJZBZH56cjs.isBlankLine.call(void 0, expanded.slice(openPrefixLen)) : _chunkOJZBZH56cjs.isBlankLine.call(void 0, line);
|
|
2715
2721
|
if (kind !== null) {
|
|
2716
2722
|
if (kind >= 6) {
|
|
2717
2723
|
if (blank) {
|
|
@@ -2865,7 +2871,7 @@ var ScanState = class {
|
|
|
2865
2871
|
* `FENCE_RE` plus its own open/close state machine, cross-referenced by a
|
|
2866
2872
|
* comment) is precisely the drift that produced the `~~~` bug.
|
|
2867
2873
|
*/
|
|
2868
|
-
this.fences =
|
|
2874
|
+
this.fences = _chunkOJZBZH56cjs.createFenceTracker.call(void 0, );
|
|
2869
2875
|
/** Depth of currently open raw HTML block containers. */
|
|
2870
2876
|
this.htmlDepth = 0;
|
|
2871
2877
|
/** Raw-block tag name of a start tag still waiting for its `>`, or null. */
|
|
@@ -2938,7 +2944,7 @@ function splitStreamingBlocks(content) {
|
|
|
2938
2944
|
const isListOrQuote = (line) => /^\s{0,3}(?:[-+*]\s|\d{1,9}[.)]\s|>)/.test(line);
|
|
2939
2945
|
const firstNonBlank = (arr) => {
|
|
2940
2946
|
for (const line of arr) {
|
|
2941
|
-
if (!
|
|
2947
|
+
if (!_chunkOJZBZH56cjs.isBlankLine.call(void 0, line)) return line;
|
|
2942
2948
|
}
|
|
2943
2949
|
return void 0;
|
|
2944
2950
|
};
|
|
@@ -2948,10 +2954,10 @@ function splitStreamingBlocks(content) {
|
|
|
2948
2954
|
state.scanLine(line);
|
|
2949
2955
|
if (state.htmlMark() !== markBefore || state.htmlLatched()) currentTouchedHtml = true;
|
|
2950
2956
|
current.push(line);
|
|
2951
|
-
const isBlank =
|
|
2957
|
+
const isBlank = _chunkOJZBZH56cjs.isBlankLine.call(void 0, line);
|
|
2952
2958
|
if (!isBlank || state.fences.openChar() !== null || state.htmlBlocksCut()) continue;
|
|
2953
2959
|
let j = i + 1;
|
|
2954
|
-
while (j < lines.length &&
|
|
2960
|
+
while (j < lines.length && _chunkOJZBZH56cjs.isBlankLine.call(void 0, lines[j])) j++;
|
|
2955
2961
|
if (j >= lines.length) continue;
|
|
2956
2962
|
const next = lines[j];
|
|
2957
2963
|
if (/^\s/.test(next)) continue;
|
|
@@ -2959,7 +2965,7 @@ function splitStreamingBlocks(content) {
|
|
|
2959
2965
|
if (isListOrQuote(next) && unitOpener !== void 0 && isListOrQuote(unitOpener)) {
|
|
2960
2966
|
continue;
|
|
2961
2967
|
}
|
|
2962
|
-
if (current.every(
|
|
2968
|
+
if (current.every(_chunkOJZBZH56cjs.isBlankLine)) continue;
|
|
2963
2969
|
units.push(current);
|
|
2964
2970
|
unitTouchedHtml.push(currentTouchedHtml);
|
|
2965
2971
|
current = [];
|
|
@@ -3361,7 +3367,7 @@ function onAskAiIntent(run) {
|
|
|
3361
3367
|
|
|
3362
3368
|
// src/components/chat/chat-appearance-context.tsx
|
|
3363
3369
|
|
|
3364
|
-
var ChatAppearanceContext = _react.createContext.call(void 0,
|
|
3370
|
+
var ChatAppearanceContext = _react.createContext.call(void 0, _chunkXEYL6AFZcjs.CHAT_APPEARANCE.CLASSIC);
|
|
3365
3371
|
function useChatAppearance() {
|
|
3366
3372
|
return _react.useContext.call(void 0, ChatAppearanceContext);
|
|
3367
3373
|
}
|
|
@@ -3400,7 +3406,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3400
3406
|
...props
|
|
3401
3407
|
}, ref) => {
|
|
3402
3408
|
const [isProcessing, setIsProcessing] = _react.useState.call(void 0, false);
|
|
3403
|
-
const isV2 = useChatAppearance() ===
|
|
3409
|
+
const isV2 = useChatAppearance() === _chunkXEYL6AFZcjs.CHAT_APPEARANCE.V2;
|
|
3404
3410
|
const handleApprove = async () => {
|
|
3405
3411
|
setIsProcessing(true);
|
|
3406
3412
|
try {
|
|
@@ -3423,7 +3429,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3423
3429
|
{
|
|
3424
3430
|
ref,
|
|
3425
3431
|
className: _chunk65VVJSQZcjs.cn.call(void 0,
|
|
3426
|
-
|
|
3432
|
+
_chunkLBGAHB6Xcjs.CHAT_BLOCK_CLASS,
|
|
3427
3433
|
// v2: the thread owns the space below the card.
|
|
3428
3434
|
!isV2 && "mb-[var(--spacing-system-xsf)]",
|
|
3429
3435
|
className
|
|
@@ -3431,7 +3437,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3431
3437
|
...props,
|
|
3432
3438
|
children: [
|
|
3433
3439
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full whitespace-pre-line break-words text-ods-text-primary text-h4", children: _optionalChain([data, 'access', _49 => _49.explanation, 'optionalAccess', _50 => _50.trim, 'call', _51 => _51()]) || "Approval required" }),
|
|
3434
|
-
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3440
|
+
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ApprovalWaitingLine, {}),
|
|
3435
3441
|
!showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
3436
3442
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3437
3443
|
_chunkTF5D5MNOcjs.Button,
|
|
@@ -3463,14 +3469,14 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3463
3469
|
children: "Reject"
|
|
3464
3470
|
}
|
|
3465
3471
|
)
|
|
3466
|
-
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3472
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
|
|
3467
3473
|
]
|
|
3468
3474
|
}
|
|
3469
3475
|
);
|
|
3470
3476
|
}
|
|
3471
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "mb-[var(--spacing-system-xsf)]",
|
|
3477
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "mb-[var(--spacing-system-xsf)]", _chunkLBGAHB6Xcjs.CHAT_BLOCK_CLASS, className), ...props, children: [
|
|
3472
3478
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalCardBody, { data }),
|
|
3473
|
-
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3479
|
+
showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ApprovalWaitingLine, {}),
|
|
3474
3480
|
!showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
3475
3481
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3476
3482
|
_chunkTF5D5MNOcjs.Button,
|
|
@@ -3502,7 +3508,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
|
|
|
3502
3508
|
children: "Reject"
|
|
3503
3509
|
}
|
|
3504
3510
|
)
|
|
3505
|
-
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3511
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
|
|
3506
3512
|
] });
|
|
3507
3513
|
}
|
|
3508
3514
|
);
|
|
@@ -3532,7 +3538,7 @@ EscalationOfferMessage.displayName = "EscalationOfferMessage";
|
|
|
3532
3538
|
|
|
3533
3539
|
var AiAssistantInfo = _react.forwardRef.call(void 0,
|
|
3534
3540
|
({ className, icon, leading, title, body, timestamp, ...props }, ref) => {
|
|
3535
|
-
const isV2 = useChatAppearance() ===
|
|
3541
|
+
const isV2 = useChatAppearance() === _chunkXEYL6AFZcjs.CHAT_APPEARANCE.V2;
|
|
3536
3542
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3537
3543
|
"div",
|
|
3538
3544
|
{
|
|
@@ -3548,7 +3554,7 @@ var AiAssistantInfo = _react.forwardRef.call(void 0,
|
|
|
3548
3554
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
3549
3555
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-start", children: [
|
|
3550
3556
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "min-w-0 flex-1 truncate text-ods-text-primary text-h4", title, children: title }),
|
|
3551
|
-
timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-right text-ods-text-secondary text-h6", children:
|
|
3557
|
+
timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-right text-ods-text-secondary text-h6", children: _chunkXEYL6AFZcjs.formatTime.call(void 0, timestamp) })
|
|
3552
3558
|
] }),
|
|
3553
3559
|
body != null && body !== "" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full break-words text-ods-text-secondary text-h4", children: body })
|
|
3554
3560
|
] })
|
|
@@ -3663,7 +3669,7 @@ var SystemEventMessage = _react.forwardRef.call(void 0, ({ text: text2, timestam
|
|
|
3663
3669
|
AiAssistantInfo,
|
|
3664
3670
|
{
|
|
3665
3671
|
ref,
|
|
3666
|
-
leading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3672
|
+
leading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBNUZKBNVcjs.SquareAvatar, { alt: joined, fallback: joined, size: "lg", variant: "round", className: "shrink-0" }),
|
|
3667
3673
|
title: "Technician Joined",
|
|
3668
3674
|
body: `You're now chatting with ${joined}.`,
|
|
3669
3675
|
timestamp,
|
|
@@ -3747,7 +3753,7 @@ var thoughtMdClasses = [
|
|
|
3747
3753
|
var ThinkingDisplay = _react.forwardRef.call(void 0,
|
|
3748
3754
|
({ className, text: text2, isStreaming = false, ...props }, ref) => {
|
|
3749
3755
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
3750
|
-
const { innerRef, isOverflowing, containerStyle } =
|
|
3756
|
+
const { innerRef, isOverflowing, containerStyle } = _chunkLBGAHB6Xcjs.useCollapsible.call(void 0, {
|
|
3751
3757
|
expanded,
|
|
3752
3758
|
collapsedHeight: 19,
|
|
3753
3759
|
disableTransition: isStreaming
|
|
@@ -3762,7 +3768,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
|
|
|
3762
3768
|
setExpanded(!expanded);
|
|
3763
3769
|
}
|
|
3764
3770
|
};
|
|
3765
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0,
|
|
3771
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, _chunkLBGAHB6Xcjs.CHAT_BLOCK_FRAME_CLASS, "p-1.5", className), ...props, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3766
3772
|
"div",
|
|
3767
3773
|
{
|
|
3768
3774
|
role: "button",
|
|
@@ -3780,7 +3786,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
|
|
|
3780
3786
|
isStreaming && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC7GIHB3Vcjs.DotsLoaderIcon, { size: 16, className: "text-ods-text-secondary" })
|
|
3781
3787
|
] }),
|
|
3782
3788
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, className: _chunk65VVJSQZcjs.cn.call(void 0, "text-sm leading-snug text-ods-text-secondary", thoughtMdClasses), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SimpleMarkdownRenderer, { content: text2, textSize: "compact" }) }) }),
|
|
3783
|
-
canToggle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[19px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3789
|
+
canToggle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[19px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ExpandChevron, { expanded }) })
|
|
3784
3790
|
]
|
|
3785
3791
|
}
|
|
3786
3792
|
) });
|
|
@@ -3923,7 +3929,7 @@ function renderQuickActionIcon(icon) {
|
|
|
3923
3929
|
if (!spec.name && !spec.url) return void 0;
|
|
3924
3930
|
const accentClass = spec.accent ? ACCENT_CLASS[spec.accent] : void 0;
|
|
3925
3931
|
const props = spec.accent && !accentClass ? { color: spec.accent, ..._nullishCoalesce(spec.props, () => ( {})) } : spec.props;
|
|
3926
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3932
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.EntityIcon, { icon: { name: spec.name, url: spec.url, props }, size: _nullishCoalesce(spec.size, () => ( 16)), className: accentClass });
|
|
3927
3933
|
}
|
|
3928
3934
|
function composeChipLabel(label, lozenge) {
|
|
3929
3935
|
if (!lozenge) return label;
|
|
@@ -3957,7 +3963,7 @@ function QuickActionChipSkeleton({
|
|
|
3957
3963
|
}) {
|
|
3958
3964
|
const question = variant === "question";
|
|
3959
3965
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3960
|
-
|
|
3966
|
+
_chunkBNUZKBNVcjs.Tag,
|
|
3961
3967
|
{
|
|
3962
3968
|
variant: "outline",
|
|
3963
3969
|
size: question ? "sentence" : size,
|
|
@@ -4001,7 +4007,7 @@ function QuickActionChipButton({
|
|
|
4001
4007
|
const tagVariant = selected ? selectedAccent === "cyan" ? "selectedCyan" : "selected" : question ? "outline" : variant;
|
|
4002
4008
|
const tagSize = question ? "sentence" : size;
|
|
4003
4009
|
if (!interactive) {
|
|
4004
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4010
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBNUZKBNVcjs.Tag, { variant: tagVariant, size: tagSize, icon: resolvedIcon, label: resolvedLabel, className });
|
|
4005
4011
|
}
|
|
4006
4012
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4007
4013
|
"button",
|
|
@@ -4020,7 +4026,7 @@ function QuickActionChipButton({
|
|
|
4020
4026
|
className
|
|
4021
4027
|
),
|
|
4022
4028
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4023
|
-
|
|
4029
|
+
_chunkBNUZKBNVcjs.Tag,
|
|
4024
4030
|
{
|
|
4025
4031
|
variant: tagVariant,
|
|
4026
4032
|
size: tagSize,
|
|
@@ -4092,9 +4098,9 @@ var iconTint = {
|
|
|
4092
4098
|
var ErrorMessageDisplay = _react.forwardRef.call(void 0,
|
|
4093
4099
|
({ className, title, details, type = "error", ...props }, ref) => {
|
|
4094
4100
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
4095
|
-
const { innerRef, containerStyle } =
|
|
4101
|
+
const { innerRef, containerStyle } = _chunkLBGAHB6Xcjs.useCollapsible.call(void 0, { expanded });
|
|
4096
4102
|
const hasDetails = Boolean(details);
|
|
4097
|
-
const isV2 = useChatAppearance() ===
|
|
4103
|
+
const isV2 = useChatAppearance() === _chunkXEYL6AFZcjs.CHAT_APPEARANCE.V2;
|
|
4098
4104
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
4099
4105
|
"div",
|
|
4100
4106
|
{
|
|
@@ -4131,7 +4137,7 @@ var ErrorMessageDisplay = _react.forwardRef.call(void 0,
|
|
|
4131
4137
|
children: title
|
|
4132
4138
|
}
|
|
4133
4139
|
),
|
|
4134
|
-
hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4140
|
+
hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ExpandChevron, { expanded })
|
|
4135
4141
|
]
|
|
4136
4142
|
}
|
|
4137
4143
|
),
|
|
@@ -4175,7 +4181,7 @@ function MspOrganizationCard({
|
|
|
4175
4181
|
className
|
|
4176
4182
|
),
|
|
4177
4183
|
children: [
|
|
4178
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4184
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBNUZKBNVcjs.SquareAvatar, { src: logoUrl, alt: name, fallback: name, size: "sm", variant: "square" }),
|
|
4179
4185
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
4180
4186
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: "Your IT is managed by" }),
|
|
4181
4187
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h4", children: _nullishCoalesce(title, () => ( name)) })
|
|
@@ -4196,7 +4202,7 @@ function MspOrganizationCard({
|
|
|
4196
4202
|
className
|
|
4197
4203
|
),
|
|
4198
4204
|
children: [
|
|
4199
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4205
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBNUZKBNVcjs.SquareAvatar, { src: logoUrl, alt: name, fallback: name, size: "lg", variant: "square" }),
|
|
4200
4206
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
4201
4207
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h3", children: _nullishCoalesce(title, () => ( `Your IT is managed by ${name}`)) }),
|
|
4202
4208
|
website ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h4", children: website }) : null
|
|
@@ -4330,7 +4336,7 @@ var ChatHeader = _react.forwardRef.call(void 0,
|
|
|
4330
4336
|
] })
|
|
4331
4337
|
] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
|
|
4332
4338
|
userIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-16 w-16 items-center justify-center rounded-full bg-ods-accent", children: userIcon }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4333
|
-
|
|
4339
|
+
_chunkBNUZKBNVcjs.SquareAvatar,
|
|
4334
4340
|
{
|
|
4335
4341
|
src: userAvatar,
|
|
4336
4342
|
alt: userName,
|
|
@@ -4406,9 +4412,9 @@ var ChatHeader = _react.forwardRef.call(void 0,
|
|
|
4406
4412
|
)
|
|
4407
4413
|
] }),
|
|
4408
4414
|
(ticketInfo.status || ticketInfo.statusName) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4409
|
-
|
|
4415
|
+
_chunkLBGAHB6Xcjs.TicketStatusTag,
|
|
4410
4416
|
{
|
|
4411
|
-
...
|
|
4417
|
+
..._chunkLBGAHB6Xcjs.resolveStatusTagProps.call(void 0, {
|
|
4412
4418
|
status: ticketInfo.status,
|
|
4413
4419
|
statusKind: ticketInfo.statusKind,
|
|
4414
4420
|
statusName: ticketInfo.statusName,
|
|
@@ -4966,11 +4972,11 @@ var remarkMentionChips = () => {
|
|
|
4966
4972
|
// src/components/chat/tool-execution-display.tsx
|
|
4967
4973
|
|
|
4968
4974
|
|
|
4969
|
-
var COMMAND_BODY_KEYS = new Set(
|
|
4975
|
+
var COMMAND_BODY_KEYS = new Set(_chunkLBGAHB6Xcjs.COMMAND_BODY_ARG_KEYS);
|
|
4970
4976
|
var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
4971
4977
|
({ className, message, assistantType, variant = "admin", ...props }, ref) => {
|
|
4972
4978
|
const [expanded, setExpanded] = _react.useState.call(void 0, false);
|
|
4973
|
-
const { innerRef, containerStyle } =
|
|
4979
|
+
const { innerRef, containerStyle } = _chunkLBGAHB6Xcjs.useCollapsible.call(void 0, { expanded });
|
|
4974
4980
|
const isClient = assistantType === "fae";
|
|
4975
4981
|
const isClientView = variant === "client";
|
|
4976
4982
|
const isExecuting = message.type === "EXECUTING_TOOL";
|
|
@@ -5001,7 +5007,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5001
5007
|
const statusTone = isExecuting ? "working" : message.success === false ? "error" : "success";
|
|
5002
5008
|
const statusLabel = _optionalChain([message, 'access', _83 => _83.statusLabel, 'optionalAccess', _84 => _84.trim, 'call', _85 => _85()]) || (isExecuting ? "Working on it" : message.success === false ? "Failed" : "Done");
|
|
5003
5009
|
const headerContent = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
5004
|
-
!isClient && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5010
|
+
!isClient && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk64KBI5MIcjs.ToolIcon, { toolType: integratedToolType, size: 16 }) }),
|
|
5005
5011
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5006
5012
|
"div",
|
|
5007
5013
|
{
|
|
@@ -5013,7 +5019,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5013
5019
|
}
|
|
5014
5020
|
),
|
|
5015
5021
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: renderStatusIcon() }),
|
|
5016
|
-
!isStaticRow && hasBody && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5022
|
+
!isStaticRow && hasBody && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ExpandChevron, { expanded: isExpanded }) })
|
|
5017
5023
|
] });
|
|
5018
5024
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5019
5025
|
"div",
|
|
@@ -5023,7 +5029,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5023
5029
|
// The command running block keeps its bordered box in both chats
|
|
5024
5030
|
// (Figma 1972-6109). CLIENT (Fae) only drops the tool icon below.
|
|
5025
5031
|
"flex w-full flex-col overflow-hidden",
|
|
5026
|
-
|
|
5032
|
+
_chunkLBGAHB6Xcjs.CHAT_BLOCK_FRAME_CLASS,
|
|
5027
5033
|
className
|
|
5028
5034
|
),
|
|
5029
5035
|
...props,
|
|
@@ -5034,7 +5040,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5034
5040
|
// It reads as a card: what was done, then one status line under it.
|
|
5035
5041
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] p-[var(--spacing-system-sf)] text-left", children: [
|
|
5036
5042
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 whitespace-pre-wrap break-words text-ods-text-primary text-h4", children: previewText }),
|
|
5037
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5043
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.StatusLine, { tone: statusTone, label: statusLabel })
|
|
5038
5044
|
] })
|
|
5039
5045
|
) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
5040
5046
|
hasBody ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -5047,9 +5053,9 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
5047
5053
|
}
|
|
5048
5054
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-start gap-[var(--spacing-system-xs)] p-[var(--spacing-system-s)] text-left", children: headerContent }),
|
|
5049
5055
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: hasBody && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start gap-0 border-t border-ods-border p-[var(--spacing-system-sf)] text-h6", children: [
|
|
5050
|
-
argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5056
|
+
argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.ArgRow, { argKey: key, value }, key)),
|
|
5051
5057
|
hasResult && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5052
|
-
|
|
5058
|
+
_chunkLBGAHB6Xcjs.ResultBlock,
|
|
5053
5059
|
{
|
|
5054
5060
|
result: message.result,
|
|
5055
5061
|
className: argEntries.length > 0 ? "mt-[var(--spacing-system-xsf)]" : void 0
|
|
@@ -5103,8 +5109,8 @@ var remarkStripCitations = () => {
|
|
|
5103
5109
|
var MENTION_MARKER_REGEX = /(^|[^\w@])@[a-zA-Z]+:([A-Za-z0-9_.+/=-]*[A-Za-z0-9_+/=])/g;
|
|
5104
5110
|
var CARD_MARKER_REGEX = createCardMarkerScanner();
|
|
5105
5111
|
function formatMessageTimestamp(timestamp) {
|
|
5106
|
-
const time =
|
|
5107
|
-
return
|
|
5112
|
+
const time = _chunkXEYL6AFZcjs.formatTime.call(void 0, timestamp);
|
|
5113
|
+
return _chunkLBGAHB6Xcjs.isToday.call(void 0, timestamp) ? time : `${_chunkXEYL6AFZcjs.formatDate.call(void 0, timestamp)} ${time}`;
|
|
5108
5114
|
}
|
|
5109
5115
|
function normalizeContent(content) {
|
|
5110
5116
|
if (typeof content === "string") {
|
|
@@ -5144,6 +5150,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5144
5150
|
appearance: appearanceProp,
|
|
5145
5151
|
authorType: authorTypeProp,
|
|
5146
5152
|
selfAuthorType,
|
|
5153
|
+
nameEveryTurn = false,
|
|
5147
5154
|
assistantIcon,
|
|
5148
5155
|
contextItems,
|
|
5149
5156
|
resolveContextIcon,
|
|
@@ -5159,7 +5166,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5159
5166
|
const isError = role === "error";
|
|
5160
5167
|
const inheritedAppearance = useChatAppearance();
|
|
5161
5168
|
const appearance = _nullishCoalesce(appearanceProp, () => ( inheritedAppearance));
|
|
5162
|
-
const isV2 = appearance ===
|
|
5169
|
+
const isV2 = appearance === _chunkXEYL6AFZcjs.CHAT_APPEARANCE.V2;
|
|
5163
5170
|
const authorType = _nullishCoalesce(authorTypeProp, () => ( (isHuman ? "user" : assistantType === "mingo" ? "mingo" : "fae")));
|
|
5164
5171
|
const isOtherPerson = isHuman && selfAuthorType !== void 0 && authorType !== "system" && authorType !== selfAuthorType;
|
|
5165
5172
|
const isUser = isHuman && !isOtherPerson;
|
|
@@ -5340,14 +5347,16 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5340
5347
|
});
|
|
5341
5348
|
};
|
|
5342
5349
|
const isSystem = authorType === "system";
|
|
5343
|
-
const showName = isSystem || isOtherPerson || authorType === "admin" && !isUser;
|
|
5350
|
+
const showName = isSystem || isOtherPerson || authorType === "admin" && !isUser || nameEveryTurn && role === "assistant";
|
|
5351
|
+
const showSelfName = nameEveryTurn && isUser && !isSystem;
|
|
5344
5352
|
const displayName = name || (isHuman ? "User" : assistantType === "mingo" ? "Mingo" : "Fae");
|
|
5353
|
+
const nameLabel = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate text-ods-open-yellow text-h6", children: displayName });
|
|
5345
5354
|
const faceBox = "h-5 w-5 flex-shrink-0";
|
|
5346
5355
|
const face = !showAvatar || isSystem ? null : !isHuman && !avatar && assistantIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: displayName, className: _chunk65VVJSQZcjs.cn.call(void 0, "flex items-center justify-center", faceBox), children: assistantIcon }) : !isHuman && !avatar && assistantType ? (
|
|
5347
5356
|
// An agent with no picture shows its packaged mark, never initials.
|
|
5348
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": displayName, title: displayName, className: _chunk65VVJSQZcjs.cn.call(void 0, "inline-flex", faceBox), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5357
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": displayName, title: displayName, className: _chunk65VVJSQZcjs.cn.call(void 0, "inline-flex", faceBox), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.AgentMark, { agent: assistantType, className: "h-full w-full rounded-full" }) })
|
|
5349
5358
|
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: displayName, className: "inline-flex flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5350
|
-
|
|
5359
|
+
_chunkBNUZKBNVcjs.SquareAvatar,
|
|
5351
5360
|
{
|
|
5352
5361
|
src: avatar || void 0,
|
|
5353
5362
|
alt: displayName,
|
|
@@ -5374,9 +5383,10 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5374
5383
|
),
|
|
5375
5384
|
...props,
|
|
5376
5385
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid min-w-0 grid-cols-1 gap-[var(--spacing-system-xxs)]", children: [
|
|
5377
|
-
(face || showName) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex items-center gap-[var(--spacing-system-xs)]", isUser && "justify-end"), children: [
|
|
5386
|
+
(face || showName || showSelfName) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex items-center gap-[var(--spacing-system-xs)]", isUser && "justify-end"), children: [
|
|
5387
|
+
showSelfName && nameLabel,
|
|
5378
5388
|
face,
|
|
5379
|
-
showName &&
|
|
5389
|
+
showName && nameLabel,
|
|
5380
5390
|
showName && timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "ml-auto shrink-0 whitespace-nowrap text-ods-text-secondary text-h6", children: formatMessageTimestamp(timestamp) })
|
|
5381
5391
|
] }),
|
|
5382
5392
|
(!isSystem || segments.length > 0) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid grid-cols-1 gap-2", children: segments.map((segment, index) => {
|
|
@@ -5428,7 +5438,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5428
5438
|
);
|
|
5429
5439
|
} else if (segment.type === "approval_batch") {
|
|
5430
5440
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
5431
|
-
|
|
5441
|
+
_chunkLBGAHB6Xcjs.ApprovalBatchMessage,
|
|
5432
5442
|
{
|
|
5433
5443
|
data: segment.data,
|
|
5434
5444
|
status: segment.status,
|
|
@@ -5483,7 +5493,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
5483
5493
|
);
|
|
5484
5494
|
ChatMessageEnhanced.displayName = "ChatMessageEnhanced";
|
|
5485
5495
|
var MemoizedChatMessageEnhanced = _react.memo.call(void 0, ChatMessageEnhanced, (prevProps, nextProps) => {
|
|
5486
|
-
return prevProps.role === nextProps.role && prevProps.content === nextProps.content && prevProps.name === nextProps.name && prevProps.avatar === nextProps.avatar && prevProps.isTyping === nextProps.isTyping && _optionalChain([prevProps, 'access', _99 => _99.timestamp, 'optionalAccess', _100 => _100.getTime, 'call', _101 => _101()]) === _optionalChain([nextProps, 'access', _102 => _102.timestamp, 'optionalAccess', _103 => _103.getTime, 'call', _104 => _104()]) && prevProps.showAvatar === nextProps.showAvatar && prevProps.assistantType === nextProps.assistantType && prevProps.approvalVariant === nextProps.approvalVariant && prevProps.appearance === nextProps.appearance && prevProps.authorType === nextProps.authorType && prevProps.selfAuthorType === nextProps.selfAuthorType && prevProps.assistantIcon === nextProps.assistantIcon && prevProps.className === nextProps.className && // Reference equality — the host re-uses the same array instance per
|
|
5496
|
+
return prevProps.role === nextProps.role && prevProps.content === nextProps.content && prevProps.name === nextProps.name && prevProps.avatar === nextProps.avatar && prevProps.isTyping === nextProps.isTyping && _optionalChain([prevProps, 'access', _99 => _99.timestamp, 'optionalAccess', _100 => _100.getTime, 'call', _101 => _101()]) === _optionalChain([nextProps, 'access', _102 => _102.timestamp, 'optionalAccess', _103 => _103.getTime, 'call', _104 => _104()]) && prevProps.showAvatar === nextProps.showAvatar && prevProps.assistantType === nextProps.assistantType && prevProps.approvalVariant === nextProps.approvalVariant && prevProps.appearance === nextProps.appearance && prevProps.authorType === nextProps.authorType && prevProps.selfAuthorType === nextProps.selfAuthorType && prevProps.nameEveryTurn === nextProps.nameEveryTurn && prevProps.assistantIcon === nextProps.assistantIcon && prevProps.className === nextProps.className && // Reference equality — the host re-uses the same array instance per
|
|
5487
5497
|
// message (it's set once on the optimistic send and never mutated).
|
|
5488
5498
|
prevProps.contextItems === nextProps.contextItems && prevProps.resolveContextIcon === nextProps.resolveContextIcon && prevProps.renderContextItem === nextProps.renderContextItem && // Host keeps this stable (module const / useCallback), so reference
|
|
5489
5499
|
// equality holds across streaming chunks.
|
|
@@ -5689,7 +5699,8 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
5689
5699
|
assistantType,
|
|
5690
5700
|
approvalVariant,
|
|
5691
5701
|
selfAuthorType,
|
|
5692
|
-
|
|
5702
|
+
nameEveryTurn,
|
|
5703
|
+
appearance = _chunkXEYL6AFZcjs.CHAT_APPEARANCE.CLASSIC,
|
|
5693
5704
|
assistantIcon,
|
|
5694
5705
|
pendingApprovals,
|
|
5695
5706
|
hasNextPage,
|
|
@@ -6095,6 +6106,7 @@ var ChatMessageList = _react.forwardRef.call(void 0,
|
|
|
6095
6106
|
approvalVariant,
|
|
6096
6107
|
authorType: message.authorType,
|
|
6097
6108
|
selfAuthorType,
|
|
6109
|
+
nameEveryTurn,
|
|
6098
6110
|
assistantIcon: message.role !== "user" ? assistantIcon : void 0,
|
|
6099
6111
|
contextItems: message.contextItems,
|
|
6100
6112
|
resolveContextIcon,
|
|
@@ -6724,7 +6736,7 @@ function formatChatAttachmentMarkdownForBubble(att, viewUrlPrefix) {
|
|
|
6724
6736
|
|
|
6725
6737
|
[Attached: ${safeName}](${url})`;
|
|
6726
6738
|
}
|
|
6727
|
-
var CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED =
|
|
6739
|
+
var CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = _chunkYG72MEHYcjs.escapeRegExp.call(void 0, CHAT_ATTACHMENT_VIEW_URL_PREFIX);
|
|
6728
6740
|
var CHAT_ATTACHMENT_MARKDOWN_PATTERN = new RegExp(
|
|
6729
6741
|
`^\\s*!?\\[[^\\]]*\\]\\(${CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED}[^)]+\\)\\s*$`,
|
|
6730
6742
|
"gm"
|
|
@@ -6974,7 +6986,7 @@ function MarqueeWallFades({
|
|
|
6974
6986
|
}) });
|
|
6975
6987
|
}
|
|
6976
6988
|
function CloneCopy({ className, style, children }) {
|
|
6977
|
-
const ref =
|
|
6989
|
+
const ref = _chunkOJZBZH56cjs.useSuppressCloneFocus.call(void 0, true);
|
|
6978
6990
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, "aria-hidden": true, "data-marquee-copy": "clone", className, style, children });
|
|
6979
6991
|
}
|
|
6980
6992
|
function MarqueeWall({
|
|
@@ -7001,7 +7013,7 @@ function MarqueeWall({
|
|
|
7001
7013
|
const containerRef = _react.useRef.call(void 0, null);
|
|
7002
7014
|
const trackRef = _react.useRef.call(void 0, null);
|
|
7003
7015
|
const copyRef = _react.useRef.call(void 0, null);
|
|
7004
|
-
const reducedMotion = _nullishCoalesce(
|
|
7016
|
+
const reducedMotion = _nullishCoalesce(_chunkV4FXUIMHcjs.useMediaQuery.call(void 0, "(prefers-reduced-motion: reduce)"), () => ( false));
|
|
7005
7017
|
const [overflows, setOverflows] = _react.useState.call(void 0, false);
|
|
7006
7018
|
const copySizeRef = _react.useRef.call(void 0, 0);
|
|
7007
7019
|
const wrapSizeRef = _react.useRef.call(void 0, 0);
|
|
@@ -7028,7 +7040,7 @@ function MarqueeWall({
|
|
|
7028
7040
|
ro.observe(copy);
|
|
7029
7041
|
return () => ro.disconnect();
|
|
7030
7042
|
}, [measure, marqueeMounted]);
|
|
7031
|
-
const { ref: observe, inView: nearViewport } =
|
|
7043
|
+
const { ref: observe, inView: nearViewport } = _chunkOJZBZH56cjs.useInView.call(void 0, {
|
|
7032
7044
|
rootMargin: _chunkNTPX5GXIcjs.NEAR_VIEWPORT_ROOT_MARGIN,
|
|
7033
7045
|
initial: true
|
|
7034
7046
|
});
|
|
@@ -7036,7 +7048,7 @@ function MarqueeWall({
|
|
|
7036
7048
|
observe(containerRef.current);
|
|
7037
7049
|
return () => observe(null);
|
|
7038
7050
|
}, [observe]);
|
|
7039
|
-
const autoplay =
|
|
7051
|
+
const autoplay = _chunkOJZBZH56cjs.useAutoplay.call(void 0, nearViewport);
|
|
7040
7052
|
const pointerInsideRef = _react.useRef.call(void 0, false);
|
|
7041
7053
|
const clearPointerInside = _react.useCallback.call(void 0, () => {
|
|
7042
7054
|
pointerInsideRef.current = false;
|
|
@@ -7049,7 +7061,7 @@ function MarqueeWall({
|
|
|
7049
7061
|
if (e.pointerType === "touch") return;
|
|
7050
7062
|
pointerInsideRef.current = false;
|
|
7051
7063
|
}, []);
|
|
7052
|
-
|
|
7064
|
+
_chunkOJZBZH56cjs.useResetOnPageHidden.call(void 0, clearPointerInside);
|
|
7053
7065
|
const draggingRef = _react.useRef.call(void 0, false);
|
|
7054
7066
|
const dragSuppressUntilRef = _react.useRef.call(void 0, 0);
|
|
7055
7067
|
const applyTransform = _react.useCallback.call(void 0,
|
|
@@ -7102,7 +7114,7 @@ function MarqueeWall({
|
|
|
7102
7114
|
if (!sync) return void 0;
|
|
7103
7115
|
return sync.register(member);
|
|
7104
7116
|
}, [sync, member]);
|
|
7105
|
-
const { posRef, wrap } =
|
|
7117
|
+
const { posRef, wrap } = _chunkOJZBZH56cjs.useMarqueeEngine.call(void 0, {
|
|
7106
7118
|
active: marqueeActive && autoplay.playing && isDriver,
|
|
7107
7119
|
speed,
|
|
7108
7120
|
isPaused: (now) => pauseOnHover && pointerInsideRef.current || draggingRef.current || now < dragSuppressUntilRef.current,
|
|
@@ -7671,7 +7683,7 @@ function MingoChatHistoryRow({
|
|
|
7671
7683
|
hasMenu && (menuOpen ? "pointer-events-none opacity-0" : "md:group-hover/row:pointer-events-none md:group-hover/row:opacity-0 md:peer-[:focus-within]/menu:pointer-events-none md:peer-[:focus-within]/menu:opacity-0")
|
|
7672
7684
|
),
|
|
7673
7685
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7674
|
-
|
|
7686
|
+
_chunkBNUZKBNVcjs.SquareAvatar,
|
|
7675
7687
|
{
|
|
7676
7688
|
variant: "round",
|
|
7677
7689
|
sizePx: 24,
|
|
@@ -7879,7 +7891,7 @@ function MingoWelcome({
|
|
|
7879
7891
|
onScroll: updateScrollFade,
|
|
7880
7892
|
className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-m)] overflow-y-auto overscroll-contain",
|
|
7881
7893
|
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col items-center justify-center gap-[var(--spacing-system-l)] px-[var(--spacing-system-l)] py-[var(--spacing-system-xxl)] text-center", children: [
|
|
7882
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7894
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
|
|
7883
7895
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
|
|
7884
7896
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: heading }),
|
|
7885
7897
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
|
|
@@ -8001,8 +8013,8 @@ function GuideWelcome({
|
|
|
8001
8013
|
icon && (icon.name || icon.url) ? (
|
|
8002
8014
|
// Agent-mode identity glyph (chat-config Identity tab). Sized to
|
|
8003
8015
|
// match the default Mingo mark (48px).
|
|
8004
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8005
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8016
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.EntityIcon, { icon: { name: icon.name, url: icon.url, props: icon.props }, size: 48 })
|
|
8017
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
|
|
8006
8018
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
|
|
8007
8019
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: title }),
|
|
8008
8020
|
subtitle ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle }) : subtitleLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-5 w-3/4 max-w-80 rounded-sm" }) }) : null
|
|
@@ -8204,9 +8216,9 @@ function MingoArchiveList({
|
|
|
8204
8216
|
title: dialog.title || "Untitled Chat",
|
|
8205
8217
|
onClick: () => _optionalChain([onSelectDialog, 'optionalCall', _177 => _177(dialog.id)]),
|
|
8206
8218
|
trailing: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
|
|
8207
|
-
dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children:
|
|
8219
|
+
dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children: _chunkLBGAHB6Xcjs.formatRelativeTime.call(void 0, dialog.timestamp) }),
|
|
8208
8220
|
dialog.owner && (dialog.owner.name || dialog.owner.avatarUrl) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8209
|
-
|
|
8221
|
+
_chunkBNUZKBNVcjs.SquareAvatar,
|
|
8210
8222
|
{
|
|
8211
8223
|
variant: "round",
|
|
8212
8224
|
sizePx: 24,
|
|
@@ -8293,7 +8305,7 @@ function MingoChatHeader({
|
|
|
8293
8305
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: subtitle })
|
|
8294
8306
|
] }),
|
|
8295
8307
|
avatar && (avatar.name || avatar.avatarUrl) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8296
|
-
|
|
8308
|
+
_chunkBNUZKBNVcjs.SquareAvatar,
|
|
8297
8309
|
{
|
|
8298
8310
|
variant: "round",
|
|
8299
8311
|
sizePx: 32,
|
|
@@ -8330,7 +8342,7 @@ function ChatHeaderSearchField({
|
|
|
8330
8342
|
className
|
|
8331
8343
|
}) {
|
|
8332
8344
|
const [value, setValue] = _react.useState.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
|
|
8333
|
-
const debounced =
|
|
8345
|
+
const debounced = _chunkOJZBZH56cjs.useDebounce.call(void 0, value, 300);
|
|
8334
8346
|
const lastEmitted = _react.useRef.call(void 0, _nullishCoalesce(initialValue, () => ( "")));
|
|
8335
8347
|
const [exiting, setExiting] = _react.useState.call(void 0, false);
|
|
8336
8348
|
const collapsedRef = _react.useRef.call(void 0, false);
|
|
@@ -8569,7 +8581,7 @@ function MingoChatRail({
|
|
|
8569
8581
|
"data-accent": "mingo",
|
|
8570
8582
|
"aria-label": "Mingo chats",
|
|
8571
8583
|
logo: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 items-center justify-between", children: [
|
|
8572
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8584
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.AgentMark, { agent: "mingo", className: "size-6 text-ods-text-primary" }),
|
|
8573
8585
|
onExpand && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8574
8586
|
_chunkTF5D5MNOcjs.Button,
|
|
8575
8587
|
{
|
|
@@ -8849,8 +8861,8 @@ function RenameChatModal({ isOpen, initialName = "", onClose, onSave }) {
|
|
|
8849
8861
|
const save = () => {
|
|
8850
8862
|
if (canSave) onSave(name.trim());
|
|
8851
8863
|
};
|
|
8852
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8853
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8864
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXEYL6AFZcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
|
|
8865
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXEYL6AFZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXEYL6AFZcjs.ModalTitle, { children: "Rename Chat" }) }),
|
|
8854
8866
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xxs)]", children: [
|
|
8855
8867
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "label", { htmlFor: "rename-chat-input", className: "text-ods-text-primary text-h4", children: "Chat Name" }),
|
|
8856
8868
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -8867,27 +8879,27 @@ function RenameChatModal({ isOpen, initialName = "", onClose, onSave }) {
|
|
|
8867
8879
|
}
|
|
8868
8880
|
)
|
|
8869
8881
|
] }),
|
|
8870
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8882
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXEYL6AFZcjs.ModalFooter, { children: [
|
|
8871
8883
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: onClose, className: cancelBtn, children: "Cancel" }),
|
|
8872
8884
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: save, disabled: !canSave, className: saveBtn, children: "Save" })
|
|
8873
8885
|
] })
|
|
8874
8886
|
] });
|
|
8875
8887
|
}
|
|
8876
8888
|
function ArchiveChatModal({ isOpen, onClose, onConfirm }) {
|
|
8877
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8878
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8889
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXEYL6AFZcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
|
|
8890
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXEYL6AFZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXEYL6AFZcjs.ModalTitle, { children: "Archive Chat" }) }),
|
|
8879
8891
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This chat will be hidden from your current chats." }),
|
|
8880
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8892
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXEYL6AFZcjs.ModalFooter, { children: [
|
|
8881
8893
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: onClose, className: cancelBtn, children: "Cancel" }),
|
|
8882
8894
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: onConfirm, className: dangerBtn, children: "Archive Chat" })
|
|
8883
8895
|
] })
|
|
8884
8896
|
] });
|
|
8885
8897
|
}
|
|
8886
8898
|
function UnarchiveChatModal({ isOpen, onClose, onConfirm }) {
|
|
8887
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8888
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8899
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXEYL6AFZcjs.Modal, { isOpen, onClose, className: "md:max-w-[600px]", children: [
|
|
8900
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXEYL6AFZcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXEYL6AFZcjs.ModalTitle, { children: "Unarchive Chat" }) }),
|
|
8889
8901
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This chat will be moved back to your current chats." }),
|
|
8890
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
8902
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXEYL6AFZcjs.ModalFooter, { children: [
|
|
8891
8903
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: onClose, className: cancelBtn, children: "Cancel" }),
|
|
8892
8904
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick: onConfirm, className: saveBtn, children: "Unarchive Chat" })
|
|
8893
8905
|
] })
|
|
@@ -9060,7 +9072,7 @@ function ChatPanelHeader({
|
|
|
9060
9072
|
avatar && (avatar.name || avatar.avatarUrl) ? (
|
|
9061
9073
|
// Owner avatar at the title cell's right edge (Figma 113:63273).
|
|
9062
9074
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9063
|
-
|
|
9075
|
+
_chunkBNUZKBNVcjs.SquareAvatar,
|
|
9064
9076
|
{
|
|
9065
9077
|
variant: "round",
|
|
9066
9078
|
sizePx: 32,
|
|
@@ -9218,8 +9230,8 @@ function AttachmentChip({ attachment, onRemove, disabled, size = "default" }) {
|
|
|
9218
9230
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "truncate text-ods-text-primary text-h6", title: file.name, children: file.name }),
|
|
9219
9231
|
(!compact || status !== "ready") && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "text-ods-text-muted text-h6", children: [
|
|
9220
9232
|
status === "sniffing" && "Checking the file",
|
|
9221
|
-
status === "uploading" && `${progress}% \xB7 ${
|
|
9222
|
-
status === "ready" &&
|
|
9233
|
+
status === "uploading" && `${progress}% \xB7 ${_chunkBNUZKBNVcjs.formatFileSize.call(void 0, file.size)}`,
|
|
9234
|
+
status === "ready" && _chunkBNUZKBNVcjs.formatFileSize.call(void 0, file.size),
|
|
9223
9235
|
status === "error" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-error", title: errorMessage, children: _nullishCoalesce(errorMessage, () => ( "Upload failed")) })
|
|
9224
9236
|
] })
|
|
9225
9237
|
] }),
|
|
@@ -9467,7 +9479,7 @@ var ModelDisplay = _react2.default.forwardRef(
|
|
|
9467
9479
|
}, ref) => {
|
|
9468
9480
|
const icon = getProviderIcon(provider);
|
|
9469
9481
|
const name = displayName || modelName;
|
|
9470
|
-
const isV2 = useChatAppearance() ===
|
|
9482
|
+
const isV2 = useChatAppearance() === _chunkXEYL6AFZcjs.CHAT_APPEARANCE.V2;
|
|
9471
9483
|
const formatCount = (count) => isV2 ? count.toLocaleString("en-US") : formatTokenCount(count);
|
|
9472
9484
|
const inline = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "flex items-center gap-1 text-ods-text-secondary", "text-h6", className), ...props, children: [
|
|
9473
9485
|
icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex items-center justify-center", children: icon }),
|
|
@@ -9596,7 +9608,7 @@ function ChatComposer({
|
|
|
9596
9608
|
}, [entityTypes]);
|
|
9597
9609
|
const resolveContextIcon = _react.useCallback.call(void 0, (item) => iconByType.get(item.type), [iconByType]);
|
|
9598
9610
|
const inputNode = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9599
|
-
|
|
9611
|
+
_chunkXEYL6AFZcjs.ChatInput,
|
|
9600
9612
|
{
|
|
9601
9613
|
ref: inputRef,
|
|
9602
9614
|
onSend,
|
|
@@ -9756,17 +9768,17 @@ function ChatArchivePage(props) {
|
|
|
9756
9768
|
|
|
9757
9769
|
// src/components/chat/utils/execute-navigation.ts
|
|
9758
9770
|
function isForeignOriginHref(href) {
|
|
9759
|
-
return /^https?:\/\//i.test(href) && !
|
|
9771
|
+
return /^https?:\/\//i.test(href) && !_chunkOH5LAH3Xcjs.isSameOriginAbsoluteHref.call(void 0, href);
|
|
9760
9772
|
}
|
|
9761
9773
|
function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
|
|
9762
|
-
const isNewTab = runtime ?
|
|
9774
|
+
const isNewTab = runtime ? _chunkOH5LAH3Xcjs.computeIsNewTab.call(void 0, runtime, href, _nullishCoalesce(targetPlatform, () => ( null))) : false;
|
|
9763
9775
|
if (isNewTab) {
|
|
9764
9776
|
if (_optionalChain([runtime, 'optionalAccess', _203 => _203.navigation, 'access', _204 => _204.openExternal])) runtime.navigation.openExternal(href);
|
|
9765
|
-
else window.open(href, "_blank",
|
|
9777
|
+
else window.open(href, "_blank", _chunkYG72MEHYcjs.NEW_TAB_FEATURES);
|
|
9766
9778
|
return;
|
|
9767
9779
|
}
|
|
9768
|
-
const target = isForeignOriginHref(href) ? href :
|
|
9769
|
-
if (target.includes("#") &&
|
|
9780
|
+
const target = isForeignOriginHref(href) ? href : _chunkYG72MEHYcjs.stripSameOriginToPath.call(void 0, href);
|
|
9781
|
+
if (target.includes("#") && _chunkOJZBZH56cjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunkOJZBZH56cjs.STICKY_HEADER_OFFSET_PX })) {
|
|
9770
9782
|
return;
|
|
9771
9783
|
}
|
|
9772
9784
|
const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _205 => _205.navigation, 'access', _206 => _206.navigate, 'optionalCall', _207 => _207({ href, path, targetPlatform })]), () => ( false));
|
|
@@ -9816,8 +9828,8 @@ function useNavLinkViaRuntime({
|
|
|
9816
9828
|
const runtime = _chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, );
|
|
9817
9829
|
const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
|
|
9818
9830
|
const panel = useChatPanel();
|
|
9819
|
-
const resolvedHref =
|
|
9820
|
-
const isNewTab =
|
|
9831
|
+
const resolvedHref = _chunkYG72MEHYcjs.resolveHrefForRuntime.call(void 0, href, runtime);
|
|
9832
|
+
const isNewTab = _chunkOH5LAH3Xcjs.computeIsNewTab.call(void 0, runtime, resolvedHref, _nullishCoalesce(targetPlatform, () => ( null)));
|
|
9821
9833
|
const onClick = (e) => {
|
|
9822
9834
|
_optionalChain([onClickProp, 'optionalCall', _208 => _208(e)]);
|
|
9823
9835
|
if (e.defaultPrevented) return;
|
|
@@ -9831,7 +9843,7 @@ function useNavLinkViaRuntime({
|
|
|
9831
9843
|
});
|
|
9832
9844
|
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _209 => _209.closeChat])) panel.closeChat();
|
|
9833
9845
|
};
|
|
9834
|
-
const attrs =
|
|
9846
|
+
const attrs = _chunkOH5LAH3Xcjs.newTabAnchorAttrs.call(void 0, isNewTab);
|
|
9835
9847
|
return {
|
|
9836
9848
|
href: resolvedHref,
|
|
9837
9849
|
...attrs,
|
|
@@ -9976,7 +9988,7 @@ function UserDisplay({
|
|
|
9976
9988
|
compact = false,
|
|
9977
9989
|
className
|
|
9978
9990
|
}) {
|
|
9979
|
-
const avatarSrc =
|
|
9991
|
+
const avatarSrc = _chunkYG72MEHYcjs.useProxiedImageUrl.call(void 0, avatarUrl);
|
|
9980
9992
|
if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) {
|
|
9981
9993
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
9982
9994
|
UserDisplaySkeleton,
|
|
@@ -9990,7 +10002,7 @@ function UserDisplay({
|
|
|
9990
10002
|
);
|
|
9991
10003
|
}
|
|
9992
10004
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, USER_ROW_CLASS, className), children: [
|
|
9993
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10005
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBNUZKBNVcjs.SquareAvatar, { src: avatarSrc || void 0, fallback: name, alt: name, sizePx: size, variant: shape }),
|
|
9994
10006
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: USER_TEXT_CLASS, children: [
|
|
9995
10007
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk65VVJSQZcjs.cn.call(void 0, "truncate text-ods-text-primary", compact ? "text-h6" : "text-h4"), children: name }),
|
|
9996
10008
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "block truncate text-ods-text-secondary text-h6", children: subtitle })
|
|
@@ -10005,7 +10017,7 @@ function UserDisplaySkeleton({
|
|
|
10005
10017
|
className
|
|
10006
10018
|
}) {
|
|
10007
10019
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, USER_ROW_CLASS, className), "aria-hidden": true, children: [
|
|
10008
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10020
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBNUZKBNVcjs.SquareAvatarSkeleton, { sizePx: size, variant: shape }),
|
|
10009
10021
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: USER_TEXT_CLASS, children: [
|
|
10010
10022
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: compact ? "h6" : "h4", className: "w-28" }),
|
|
10011
10023
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h6", className: "w-16" })
|
|
@@ -10115,7 +10127,7 @@ function ManagedCell({
|
|
|
10115
10127
|
}) {
|
|
10116
10128
|
const hintedWidth = _react2.default.isValidElement(item) ? item.props["data-strip-cell-width"] : void 0;
|
|
10117
10129
|
const desktopWidth = typeof hintedWidth === "number" ? hintedWidth : cardWidthDesktop;
|
|
10118
|
-
const cloneRef =
|
|
10130
|
+
const cloneRef = _chunkOJZBZH56cjs.useSuppressCloneFocus.call(void 0, ctx.isClone);
|
|
10119
10131
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10120
10132
|
"div",
|
|
10121
10133
|
{
|
|
@@ -10233,12 +10245,12 @@ function CardsStrip(props) {
|
|
|
10233
10245
|
}, [measure, items.length, marqueeActive, isMobile]);
|
|
10234
10246
|
const chevronSuppressUntilRef = _react.useRef.call(void 0, 0);
|
|
10235
10247
|
const userScrollSuppressUntilRef = _react.useRef.call(void 0, 0);
|
|
10236
|
-
const { ref: observe, inView: nearViewport } =
|
|
10248
|
+
const { ref: observe, inView: nearViewport } = _chunkOJZBZH56cjs.useInView.call(void 0, { rootMargin: "200px", initial: true });
|
|
10237
10249
|
_react.useEffect.call(void 0, () => {
|
|
10238
10250
|
observe(wrapperRef.current);
|
|
10239
10251
|
return () => observe(null);
|
|
10240
10252
|
}, [observe]);
|
|
10241
|
-
const autoplay =
|
|
10253
|
+
const autoplay = _chunkOJZBZH56cjs.useAutoplay.call(void 0, nearViewport);
|
|
10242
10254
|
const [activeKey, setActiveKey] = _react.useState.call(void 0, null);
|
|
10243
10255
|
const activeKeyRef = _react.useRef.call(void 0, null);
|
|
10244
10256
|
const activate = _react.useCallback.call(void 0, (key) => {
|
|
@@ -10285,7 +10297,7 @@ function CardsStrip(props) {
|
|
|
10285
10297
|
const current = activeKeyRef.current;
|
|
10286
10298
|
if (current !== null) deactivate(current);
|
|
10287
10299
|
}, [deactivate]);
|
|
10288
|
-
|
|
10300
|
+
_chunkOJZBZH56cjs.useResetOnPageHidden.call(void 0, clearHover);
|
|
10289
10301
|
const syncHoverIfScrolled = _react.useCallback.call(void 0, () => {
|
|
10290
10302
|
const scroller = scrollerRef.current;
|
|
10291
10303
|
if (!scroller) return;
|
|
@@ -10306,7 +10318,7 @@ function CardsStrip(props) {
|
|
|
10306
10318
|
},
|
|
10307
10319
|
[reverse, seamBuffer]
|
|
10308
10320
|
);
|
|
10309
|
-
const { posRef: marqueePosRef, glideBy } =
|
|
10321
|
+
const { posRef: marqueePosRef, glideBy } = _chunkOJZBZH56cjs.useMarqueeEngine.call(void 0, {
|
|
10310
10322
|
// Viewport gates `active` (the rAF fully stops off-screen — a paused
|
|
10311
10323
|
// engine would keep scheduling frames forever), same treatment as
|
|
10312
10324
|
// <MarqueeWall>; the envelope persists, so re-entry resumes at cruise.
|
|
@@ -10440,7 +10452,7 @@ function CardsStrip(props) {
|
|
|
10440
10452
|
}
|
|
10441
10453
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ManagedCell, { item, ctx, cardWidthMobile, cardWidthDesktop });
|
|
10442
10454
|
};
|
|
10443
|
-
const heading = showTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${
|
|
10455
|
+
const heading = showTitle && title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkYG72MEHYcjs.SECTION_HEADING_CLASS} break-words`, children: _chunkYG72MEHYcjs.accentSentenceMarks.call(void 0, title) });
|
|
10444
10456
|
if (items.length === 0) {
|
|
10445
10457
|
if (!inScope || !skeleton) return null;
|
|
10446
10458
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, STRIP_ROOT_CLASS, className), children: [
|
|
@@ -10630,7 +10642,7 @@ var VIDEO_BITES_SKELETON_COUNT = Math.ceil(
|
|
|
10630
10642
|
);
|
|
10631
10643
|
function VideoBitesStrip({
|
|
10632
10644
|
bites,
|
|
10633
|
-
title =
|
|
10645
|
+
title = _chunkOH5LAH3Xcjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
10634
10646
|
showTitle = true,
|
|
10635
10647
|
filterPublished = true,
|
|
10636
10648
|
profile = null,
|
|
@@ -10643,7 +10655,7 @@ function VideoBitesStrip({
|
|
|
10643
10655
|
cardHeightMobile = VIDEO_BITES_CARD_HEIGHT_MOBILE_PX,
|
|
10644
10656
|
showChevrons = true,
|
|
10645
10657
|
onBiteNavigate,
|
|
10646
|
-
sortComparator =
|
|
10658
|
+
sortComparator = _chunkOH5LAH3Xcjs.sortBitesByCreatedAtDesc,
|
|
10647
10659
|
skeletonCount,
|
|
10648
10660
|
className
|
|
10649
10661
|
}) {
|
|
@@ -10746,7 +10758,7 @@ function VideoBiteCardSkeleton({
|
|
|
10746
10758
|
function VideoBitesStripSkeleton({
|
|
10747
10759
|
count = VIDEO_BITES_SKELETON_COUNT,
|
|
10748
10760
|
aspect = "9:16",
|
|
10749
|
-
title =
|
|
10761
|
+
title = _chunkOH5LAH3Xcjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
10750
10762
|
showTitle = true,
|
|
10751
10763
|
headerSlot,
|
|
10752
10764
|
cardHeightDesktop = VIDEO_BITES_CARD_HEIGHT_DESKTOP_PX,
|
|
@@ -10801,7 +10813,7 @@ function VideoBiteCard({
|
|
|
10801
10813
|
const activate = () => controlled ? _optionalChain([onActivate, 'optionalCall', _234 => _234(key)]) : setSelfActive(true);
|
|
10802
10814
|
const deactivate = () => controlled ? _optionalChain([onDeactivate, 'optionalCall', _235 => _235(key)]) : setSelfActive(false);
|
|
10803
10815
|
const titleInputRef = _react.useRef.call(void 0, null);
|
|
10804
|
-
|
|
10816
|
+
_chunkSZHDXXMKcjs.useIsomorphicLayoutEffect.call(void 0, () => {
|
|
10805
10817
|
const el = titleInputRef.current;
|
|
10806
10818
|
if (!el) return;
|
|
10807
10819
|
el.style.height = "auto";
|
|
@@ -10878,7 +10890,7 @@ function VideoBiteCard({
|
|
|
10878
10890
|
style: biteMediaStyle(cssAspect, height, heightMobile),
|
|
10879
10891
|
children: [
|
|
10880
10892
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10881
|
-
|
|
10893
|
+
_chunkOH5LAH3Xcjs.VideoHoverPreviewSurface,
|
|
10882
10894
|
{
|
|
10883
10895
|
url: bite.url,
|
|
10884
10896
|
posterUrl: bite.thumbnail_url,
|
|
@@ -10950,7 +10962,7 @@ function EntityVideoSection({
|
|
|
10950
10962
|
title = "Video",
|
|
10951
10963
|
videoSummary,
|
|
10952
10964
|
videoBites,
|
|
10953
|
-
bitesTitle =
|
|
10965
|
+
bitesTitle = _chunkOH5LAH3Xcjs.DEFAULT_VIDEO_BITES_TITLE,
|
|
10954
10966
|
filterPublishedBites = true,
|
|
10955
10967
|
bitesProfile = null,
|
|
10956
10968
|
bitesHref,
|
|
@@ -10985,7 +10997,7 @@ function EntityVideoSection({
|
|
|
10985
10997
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsTrigger, { value: "highlights", className: VIDEO_TAB_TRIGGER_CLASS, children: HIGHLIGHTS_TAB_LABEL })
|
|
10986
10998
|
] }),
|
|
10987
10999
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "full-video", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10988
|
-
|
|
11000
|
+
_chunkOH5LAH3Xcjs.Video,
|
|
10989
11001
|
{
|
|
10990
11002
|
kind: fullVideoKind,
|
|
10991
11003
|
url: fullVideoUrl,
|
|
@@ -10997,7 +11009,7 @@ function EntityVideoSection({
|
|
|
10997
11009
|
}
|
|
10998
11010
|
) }),
|
|
10999
11011
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "highlights", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11000
|
-
|
|
11012
|
+
_chunkOH5LAH3Xcjs.Video,
|
|
11001
11013
|
{
|
|
11002
11014
|
url: highlightVideoUrl,
|
|
11003
11015
|
poster: highlightVideoThumbnail,
|
|
@@ -11006,7 +11018,7 @@ function EntityVideoSection({
|
|
|
11006
11018
|
}
|
|
11007
11019
|
) })
|
|
11008
11020
|
] }) : fullVideoUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11009
|
-
|
|
11021
|
+
_chunkOH5LAH3Xcjs.Video,
|
|
11010
11022
|
{
|
|
11011
11023
|
kind: fullVideoKind,
|
|
11012
11024
|
url: fullVideoUrl,
|
|
@@ -11017,7 +11029,7 @@ function EntityVideoSection({
|
|
|
11017
11029
|
priority
|
|
11018
11030
|
}
|
|
11019
11031
|
) : highlightVideoUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11020
|
-
|
|
11032
|
+
_chunkOH5LAH3Xcjs.Video,
|
|
11021
11033
|
{
|
|
11022
11034
|
url: highlightVideoUrl,
|
|
11023
11035
|
poster: highlightVideoThumbnail,
|
|
@@ -11027,7 +11039,7 @@ function EntityVideoSection({
|
|
|
11027
11039
|
}
|
|
11028
11040
|
) : null),
|
|
11029
11041
|
videoSummary && MarkdownRenderer && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-col gap-6", children: [
|
|
11030
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${
|
|
11042
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkYG72MEHYcjs.SECTION_HEADING_CLASS} break-words`, children: "Summary" }),
|
|
11031
11043
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "overflow-hidden break-words text-ods-text-primary text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownRenderer, { content: videoSummary }) })
|
|
11032
11044
|
] }),
|
|
11033
11045
|
videoBites && videoBites.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -11046,13 +11058,13 @@ function EntityVideoSection({
|
|
|
11046
11058
|
] });
|
|
11047
11059
|
}
|
|
11048
11060
|
function EntityVideoSectionSkeleton({ tabs = false, className }) {
|
|
11049
|
-
if (!tabs) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11061
|
+
if (!tabs) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.VideoSkeleton, { layout: "centered", className });
|
|
11050
11062
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tabs, { defaultValue: "full-video", className: _chunk65VVJSQZcjs.cn.call(void 0, "w-full", className), "aria-hidden": true, inert: true, children: [
|
|
11051
11063
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, TabsList, { className: VIDEO_TAB_LIST_CLASS, children: [
|
|
11052
11064
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsTrigger, { value: "full-video", className: VIDEO_TAB_TRIGGER_CLASS, children: FULL_VIDEO_TAB_LABEL }),
|
|
11053
11065
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsTrigger, { value: "highlights", className: VIDEO_TAB_TRIGGER_CLASS, children: HIGHLIGHTS_TAB_LABEL })
|
|
11054
11066
|
] }),
|
|
11055
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "full-video", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11067
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TabsContent, { value: "full-video", className: VIDEO_TAB_CONTENT_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.VideoSkeleton, { layout: "centered" }) })
|
|
11056
11068
|
] });
|
|
11057
11069
|
}
|
|
11058
11070
|
|
|
@@ -11099,7 +11111,7 @@ function designDocPeople(doc) {
|
|
|
11099
11111
|
return people;
|
|
11100
11112
|
}
|
|
11101
11113
|
function designDocMetaLine(doc) {
|
|
11102
|
-
return [_optionalChain([doc, 'access', _244 => _244.author, 'optionalAccess', _245 => _245.full_name]) ? `DRI ${doc.author.full_name}` : null, `updated ${
|
|
11114
|
+
return [_optionalChain([doc, 'access', _244 => _244.author, 'optionalAccess', _245 => _245.full_name]) ? `DRI ${doc.author.full_name}` : null, `updated ${_chunkYG72MEHYcjs.formatDateShort.call(void 0, doc.updated_at)}`].filter(Boolean).join(" \xB7 ");
|
|
11103
11115
|
}
|
|
11104
11116
|
var DESIGN_DOC_CARD_BODY = "flex h-full flex-col gap-[var(--spacing-system-mf)] p-[var(--spacing-system-lf)]";
|
|
11105
11117
|
var DESIGN_DOC_CARD_HEADER = "flex w-full items-center gap-[16px]";
|
|
@@ -11109,27 +11121,27 @@ var DESIGN_DOC_CARD_META_ROW = `flex items-center text-h5 ${_chunkXFRBEXQNcjs.TE
|
|
|
11109
11121
|
var DESIGN_DOC_CARD_SUMMARY_ROW = `flex items-center text-h4 ${_chunkXFRBEXQNcjs.TEXT_LINES_MIN[3]}`;
|
|
11110
11122
|
var DESIGN_DOC_CARD_FOOTER = "flex w-full items-center justify-between gap-2";
|
|
11111
11123
|
function DesignDocCardSkeleton({ className } = {}) {
|
|
11112
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0,
|
|
11124
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, _chunkOH5LAH3Xcjs.CONTENT_CARD_SKELETON_FRAME_CLASS, DESIGN_DOC_CARD_BODY, className), "aria-hidden": true, children: [
|
|
11113
11125
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_HEADER, children: [
|
|
11114
11126
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_HEADING, children: [
|
|
11115
11127
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h3", lines: 2, className: "w-3/4" }) }),
|
|
11116
11128
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h5", className: "w-1/3" }) })
|
|
11117
11129
|
] }),
|
|
11118
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11130
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.StatusBadgeSkeleton, { variant: "button", className: "hidden md:inline-flex" })
|
|
11119
11131
|
] }),
|
|
11120
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11132
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.StatusBadgeSkeleton, { variant: "button" }) }),
|
|
11121
11133
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_SUMMARY_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h4", lines: 3, className: "w-full" }) }),
|
|
11122
11134
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
|
|
11123
11135
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_FOOTER, children: [
|
|
11124
11136
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h6", className: "w-1/3" }),
|
|
11125
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11137
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBEMGJDXIcjs.AvatarStackSkeleton, { count: 1, size: "xs", className: "shrink-0" })
|
|
11126
11138
|
] })
|
|
11127
11139
|
] });
|
|
11128
11140
|
}
|
|
11129
11141
|
function DesignDocCard({ doc, href, target, rel, className }) {
|
|
11130
11142
|
const readiness = DESIGN_DOC_READINESS_DISPLAY[designDocReadiness(doc.completion)];
|
|
11131
11143
|
const people = designDocPeople(doc);
|
|
11132
|
-
const link =
|
|
11144
|
+
const link = _chunkOH5LAH3Xcjs.safeHref.call(void 0, _nullishCoalesce(href, () => ( null)));
|
|
11133
11145
|
if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DesignDocCardSkeleton, { className });
|
|
11134
11146
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
11135
11147
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_HEADER, children: [
|
|
@@ -11138,7 +11150,7 @@ function DesignDocCard({ doc, href, target, rel, className }) {
|
|
|
11138
11150
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h5", children: designDocMetaLine(doc) }) })
|
|
11139
11151
|
] }),
|
|
11140
11152
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11141
|
-
|
|
11153
|
+
_chunkOH5LAH3Xcjs.StatusBadge,
|
|
11142
11154
|
{
|
|
11143
11155
|
text: readiness.label,
|
|
11144
11156
|
colorScheme: readiness.scheme,
|
|
@@ -11148,15 +11160,15 @@ function DesignDocCard({ doc, href, target, rel, className }) {
|
|
|
11148
11160
|
}
|
|
11149
11161
|
)
|
|
11150
11162
|
] }),
|
|
11151
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11163
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "md:hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.StatusBadge, { text: readiness.label, colorScheme: readiness.scheme, variant: "button", singleLine: true }) }),
|
|
11152
11164
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DESIGN_DOC_CARD_SUMMARY_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "line-clamp-3 text-ods-text-secondary text-h4", children: doc.summary || "" }) }),
|
|
11153
11165
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" }),
|
|
11154
11166
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: DESIGN_DOC_CARD_FOOTER, children: [
|
|
11155
11167
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-secondary text-h6", children: formatCompletionLabelWithBlockers(doc.completion) }),
|
|
11156
|
-
people.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11168
|
+
people.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBEMGJDXIcjs.AvatarStack, { size: "xs", people, className: "shrink-0" }) : null
|
|
11157
11169
|
] })
|
|
11158
11170
|
] });
|
|
11159
|
-
const outer = _chunk65VVJSQZcjs.cn.call(void 0,
|
|
11171
|
+
const outer = _chunk65VVJSQZcjs.cn.call(void 0, _chunkOH5LAH3Xcjs.CONTENT_CARD_FRAME_CLASS, DESIGN_DOC_CARD_BODY, className);
|
|
11160
11172
|
return link ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href: link, target, rel, className: outer, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: outer, children: body });
|
|
11161
11173
|
}
|
|
11162
11174
|
|
|
@@ -11264,7 +11276,7 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
|
|
|
11264
11276
|
if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, GitHubActivityCardSkeleton, { variant, className });
|
|
11265
11277
|
const kind = _nullishCoalesce(item.kind, () => ( "commit"));
|
|
11266
11278
|
const repo = _nullishCoalesce(_nullishCoalesce(item.repo, () => ( parseRepoFromUrl(item.url))), () => ( ""));
|
|
11267
|
-
const dateText =
|
|
11279
|
+
const dateText = _chunkBNUZKBNVcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
|
|
11268
11280
|
const idLabel = formatActivityId(item.id, kind);
|
|
11269
11281
|
const { display: title, reviewState } = parseGithubTitle(item.title, kind);
|
|
11270
11282
|
const primaryText = kind === "pr_review" ? title.replace(/^by\s+/i, "").trim() || "Reviewer" : title;
|
|
@@ -11298,26 +11310,26 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
|
|
|
11298
11310
|
metaParts.push(
|
|
11299
11311
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }, "date")
|
|
11300
11312
|
);
|
|
11301
|
-
const href =
|
|
11313
|
+
const href = _chunkOH5LAH3Xcjs.safeHref.call(void 0, item.url);
|
|
11302
11314
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
11303
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
11304
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className:
|
|
11305
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${
|
|
11315
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_ICON_SLOT, children: kindIcon(kind, "h-5 w-5") }),
|
|
11316
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_TEXT_COL, children: [
|
|
11317
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunkOH5LAH3Xcjs.COMPACT_CARD_TITLE_ROW} flex-nowrap gap-1.5`, children: [
|
|
11306
11318
|
reviewState ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReviewStateBadge, { state: reviewState }) : null,
|
|
11307
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
11319
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_TITLE, children: primaryText })
|
|
11308
11320
|
] }),
|
|
11309
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
11321
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
|
|
11310
11322
|
i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/40", children: "\xB7" }) : null,
|
|
11311
11323
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
|
|
11312
11324
|
] }, i)) }) }),
|
|
11313
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className:
|
|
11325
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_SUMMARY, children: _chunkOH5LAH3Xcjs.COMPACT_CARD_ROW_FILLER }) })
|
|
11314
11326
|
] }),
|
|
11315
11327
|
href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
|
|
11316
11328
|
] });
|
|
11317
11329
|
if (anchorProps) {
|
|
11318
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${
|
|
11330
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunkOH5LAH3Xcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
|
|
11319
11331
|
}
|
|
11320
|
-
return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${
|
|
11332
|
+
return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkOH5LAH3Xcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkOH5LAH3Xcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
11321
11333
|
}
|
|
11322
11334
|
function GitHubActivityCardSkeleton({
|
|
11323
11335
|
variant = "compact",
|
|
@@ -11325,7 +11337,7 @@ function GitHubActivityCardSkeleton({
|
|
|
11325
11337
|
}) {
|
|
11326
11338
|
if (variant === "row") {
|
|
11327
11339
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11328
|
-
|
|
11340
|
+
_chunkOH5LAH3Xcjs.ActivityRowSkeleton,
|
|
11329
11341
|
{
|
|
11330
11342
|
lead: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-28 shrink-0 items-center gap-2", children: [
|
|
11331
11343
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-3.5 w-3.5 rounded" }),
|
|
@@ -11336,7 +11348,7 @@ function GitHubActivityCardSkeleton({
|
|
|
11336
11348
|
}
|
|
11337
11349
|
);
|
|
11338
11350
|
}
|
|
11339
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11351
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.CompactCardSkeleton, { titleWidth: "w-2/3", rows: [{ width: "w-1/2" }, {}], trailingIcon: true, className });
|
|
11340
11352
|
}
|
|
11341
11353
|
|
|
11342
11354
|
// src/utils/url-fix.ts
|
|
@@ -11418,7 +11430,7 @@ function VendorIcon({
|
|
|
11418
11430
|
}) {
|
|
11419
11431
|
const loading = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
|
|
11420
11432
|
const logoUrl = getVendorLogo(vendor);
|
|
11421
|
-
const logoSrc =
|
|
11433
|
+
const logoSrc = _chunkYG72MEHYcjs.useProxiedImageUrl.call(void 0, logoUrl, { directHttps: false });
|
|
11422
11434
|
const { width, height } = showBackground ? imageSizeMap[size] : { width: tilePxMap[size], height: tilePxMap[size] };
|
|
11423
11435
|
const containerClasses = _chunk65VVJSQZcjs.cn.call(void 0,
|
|
11424
11436
|
sizeClasses[size],
|
|
@@ -11458,11 +11470,11 @@ function useChatCardItem(type, id) {
|
|
|
11458
11470
|
queryKey: ["chat-card-item", type, id],
|
|
11459
11471
|
queryFn: async () => {
|
|
11460
11472
|
if (!url) return null;
|
|
11461
|
-
const res = await
|
|
11473
|
+
const res = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, url);
|
|
11462
11474
|
if (!res.ok) throw new Error(`chat card fetch failed: ${res.status}`);
|
|
11463
11475
|
const data = await res.json();
|
|
11464
|
-
const items =
|
|
11465
|
-
const match = items.find((it) =>
|
|
11476
|
+
const items = _chunkYG72MEHYcjs.extractCardItems.call(void 0, type, data);
|
|
11477
|
+
const match = items.find((it) => _chunkYG72MEHYcjs.extractItemId.call(void 0, type, it) === id);
|
|
11466
11478
|
return _nullishCoalesce(match, () => ( null));
|
|
11467
11479
|
},
|
|
11468
11480
|
enabled: !!url && id.length > 0,
|
|
@@ -11504,7 +11516,7 @@ var TRAILING_BUTTON_CLASS = "flex w-[56px] shrink-0 items-center justify-center
|
|
|
11504
11516
|
function CardMedia({ imageSrc, imageAlt, icon }) {
|
|
11505
11517
|
if (imageSrc) {
|
|
11506
11518
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "relative block size-10 shrink-0", children: [
|
|
11507
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "absolute inset-0 flex items-center justify-center rounded-sm border border-ods-border bg-ods-bg text-ods-text-primary text-h6", children:
|
|
11519
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "absolute inset-0 flex items-center justify-center rounded-sm border border-ods-border bg-ods-bg text-ods-text-primary text-h6", children: _chunkBNUZKBNVcjs.personInitials.call(void 0, imageAlt) || "?" }),
|
|
11508
11520
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11509
11521
|
_chunkE76ONBKFcjs.next_image_default,
|
|
11510
11522
|
{
|
|
@@ -11573,7 +11585,7 @@ function MingoInfoCard({
|
|
|
11573
11585
|
status ? (
|
|
11574
11586
|
// Reuse the shared Tag palette (single source of truth for colours)
|
|
11575
11587
|
// without rendering Tag's `<div>` — span-only for `<p>` validity.
|
|
11576
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk65VVJSQZcjs.cn.call(void 0,
|
|
11588
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk65VVJSQZcjs.cn.call(void 0, _chunkBNUZKBNVcjs.tagVariants.call(void 0, { variant: _nullishCoalesce(status.variant, () => ( "success")) }), "shrink-0"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate uppercase tracking-[-0.28px]", children: status.label }) })
|
|
11577
11589
|
) : null
|
|
11578
11590
|
] });
|
|
11579
11591
|
const contentClass = _chunk65VVJSQZcjs.cn.call(void 0,
|
|
@@ -11664,7 +11676,7 @@ function resolveFetchedCardHref({
|
|
|
11664
11676
|
composeContentUrl
|
|
11665
11677
|
}) {
|
|
11666
11678
|
if (!composeContentUrl || !contentRefType || !id) return null;
|
|
11667
|
-
const canonicalType =
|
|
11679
|
+
const canonicalType = _chunkYG72MEHYcjs.canonicalContentRefType.call(void 0, contentRefType);
|
|
11668
11680
|
return composeContentUrl({
|
|
11669
11681
|
// The card registry keys some entries by the legacy rail vocabulary
|
|
11670
11682
|
// (`blog_post_existing`) because that is what `buildListUrl` expects.
|
|
@@ -11694,7 +11706,7 @@ function sourceRowCtxFromRuntime(runtime, surface = {}) {
|
|
|
11694
11706
|
}
|
|
11695
11707
|
function pickSourceIcon(sourceRepo, documentType) {
|
|
11696
11708
|
const iconName = sourceRepo ? getSourceIconName(sourceRepo) : void 0;
|
|
11697
|
-
const icon = iconName ?
|
|
11709
|
+
const icon = iconName ? _chunkTUAATMUEcjs.resolveIcon.call(void 0, iconName, { variant: "brand" }) : _lucidereact.FileText;
|
|
11698
11710
|
const iconLabel = _nullishCoalesce(documentType, () => ( "Source"));
|
|
11699
11711
|
return { icon, iconLabel };
|
|
11700
11712
|
}
|
|
@@ -11714,16 +11726,16 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
11714
11726
|
if (docTarget) {
|
|
11715
11727
|
const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
|
|
11716
11728
|
const base = `${getPlatformUrl(docTarget.platform)}${seg ? `/${seg}` : ""}/`;
|
|
11717
|
-
href = _nullishCoalesce(
|
|
11729
|
+
href = _nullishCoalesce(_chunkOH5LAH3Xcjs.safeHref.call(void 0, new URL(safePath, base).toString()), () => ( null));
|
|
11718
11730
|
targetPlatform = docTarget.platform;
|
|
11719
11731
|
} else if (ctx.chipBasePlatform) {
|
|
11720
11732
|
const base = `${getPlatformUrl(ctx.chipBasePlatform)}/knowledge-base/`;
|
|
11721
|
-
href = _nullishCoalesce(
|
|
11733
|
+
href = _nullishCoalesce(_chunkOH5LAH3Xcjs.safeHref.call(void 0, new URL(safePath, base).toString()), () => ( null));
|
|
11722
11734
|
targetPlatform = ctx.chipBasePlatform;
|
|
11723
11735
|
} else if (ctx.baseRoute) {
|
|
11724
11736
|
const synthetic = `https://_internal_.local${ctx.baseRoute.startsWith("/") ? ctx.baseRoute : "/" + ctx.baseRoute}/`;
|
|
11725
11737
|
const absolute = new URL(safePath, synthetic).toString();
|
|
11726
|
-
href = _nullishCoalesce(
|
|
11738
|
+
href = _nullishCoalesce(_chunkOH5LAH3Xcjs.safeHref.call(void 0, absolute.replace("https://_internal_.local", "")), () => ( null));
|
|
11727
11739
|
targetPlatform = _nullishCoalesce(ctx.currentPlatform, () => ( null));
|
|
11728
11740
|
}
|
|
11729
11741
|
}
|
|
@@ -11732,15 +11744,15 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
11732
11744
|
// Canonical vocabulary only — a rail-vocab alias would miss the host's
|
|
11733
11745
|
// `hostedTypes` / `overrides` and fall through to the seam's default
|
|
11734
11746
|
// `<origin>/<type>/<id>` branch. Same canonicalizer `buildListUrl` uses.
|
|
11735
|
-
type:
|
|
11747
|
+
type: _chunkYG72MEHYcjs.canonicalContentRefType.call(void 0, row.documentType),
|
|
11736
11748
|
identifier: idValue,
|
|
11737
11749
|
externalUrl: row.externalUrl,
|
|
11738
11750
|
targetPlatform: _nullishCoalesce(row.targetPlatform, () => ( null))
|
|
11739
11751
|
});
|
|
11740
|
-
href = composed.href ? _nullishCoalesce(
|
|
11752
|
+
href = composed.href ? _nullishCoalesce(_chunkOH5LAH3Xcjs.safeHref.call(void 0, composed.href), () => ( null)) : null;
|
|
11741
11753
|
targetPlatform = composed.targetPlatform;
|
|
11742
11754
|
} else if (row.externalUrl) {
|
|
11743
|
-
href = _nullishCoalesce(
|
|
11755
|
+
href = _nullishCoalesce(_chunkOH5LAH3Xcjs.safeHref.call(void 0, row.externalUrl), () => ( null));
|
|
11744
11756
|
targetPlatform = _nullishCoalesce(row.targetPlatform, () => ( null));
|
|
11745
11757
|
}
|
|
11746
11758
|
const documentType = row.documentType;
|
|
@@ -11807,7 +11819,7 @@ function resolveCardDestination({
|
|
|
11807
11819
|
itemHref: _nullishCoalesce(_optionalChain([entry, 'access', _259 => _259.fallbackHref, 'optionalCall', _260 => _260(item)]), () => ( null)),
|
|
11808
11820
|
allowComposed: !entry.noComposedHref
|
|
11809
11821
|
});
|
|
11810
|
-
const url = choice ? _nullishCoalesce(
|
|
11822
|
+
const url = choice ? _nullishCoalesce(_chunkOH5LAH3Xcjs.safeHref.call(void 0, choice.href), () => ( null)) : null;
|
|
11811
11823
|
if (choice && url) {
|
|
11812
11824
|
return { url, targetPlatform: _nullishCoalesce(choice.targetPlatform, () => ( rowPlatform)), path, source: choice.source };
|
|
11813
11825
|
}
|
|
@@ -11820,11 +11832,11 @@ function resolveCardDestination({
|
|
|
11820
11832
|
|
|
11821
11833
|
function DeletedDataCard({ title, entityLabel, recoveryNote, className }) {
|
|
11822
11834
|
const label = entityLabel || "Item";
|
|
11823
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `${
|
|
11824
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
11825
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className:
|
|
11826
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
11827
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className:
|
|
11835
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `${_chunkOH5LAH3Xcjs.COMPACT_CARD_OUTER_STATIC} opacity-70 ${_nullishCoalesce(className, () => ( ""))}`, children: [
|
|
11836
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Trash2, { className: "h-4 w-4 text-ods-text-secondary" }) }),
|
|
11837
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_TEXT_COL, children: [
|
|
11838
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkOH5LAH3Xcjs.COMPACT_CARD_TITLE} text-ods-text-secondary line-through`, children: title || `Deleted ${label.toLowerCase()}` }) }),
|
|
11839
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkOH5LAH3Xcjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
11828
11840
|
label,
|
|
11829
11841
|
" deleted",
|
|
11830
11842
|
recoveryNote ? ` \xB7 ${recoveryNote}` : ""
|
|
@@ -11870,7 +11882,7 @@ function GitHubChatCard({
|
|
|
11870
11882
|
const title = kind === "pr_review" ? display.replace(/^by\s+/i, "").trim() || "Reviewer" : display;
|
|
11871
11883
|
const status = kind === "pr_review" && reviewState ? { label: reviewStateLabel(reviewState), variant: reviewStateToVariant(reviewState) } : { label: kindLabel(kind), variant: "grey" };
|
|
11872
11884
|
const idLabel = formatActivityId(chatRef.id, kind);
|
|
11873
|
-
const dateText =
|
|
11885
|
+
const dateText = _chunkBNUZKBNVcjs.formatDateUTC.call(void 0, _nullishCoalesce(chatRef.date, () => ( null)), { fallback: "", timezone: "local" });
|
|
11874
11886
|
const description = [idLabel, dateText].filter(Boolean).join(" \xB7 ") || void 0;
|
|
11875
11887
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
11876
11888
|
MingoInfoCard,
|
|
@@ -11879,7 +11891,7 @@ function GitHubChatCard({
|
|
|
11879
11891
|
description,
|
|
11880
11892
|
icon: githubKindIcon(kind),
|
|
11881
11893
|
status,
|
|
11882
|
-
anchorProps:
|
|
11894
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
11883
11895
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
11884
11896
|
menuAriaLabel: "Activity actions"
|
|
11885
11897
|
}
|
|
@@ -12026,7 +12038,7 @@ function HubspotTicketChatCard({
|
|
|
12026
12038
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
12027
12039
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOSS23NHHcjs.TagIcon, { size: 24 }),
|
|
12028
12040
|
status: statusText ? { label: statusText, variant: hubspotStatusToVariant(status) } : void 0,
|
|
12029
|
-
anchorProps:
|
|
12041
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12030
12042
|
menuGroups: cardMenuGroups(chatRef.url, discuss, {
|
|
12031
12043
|
label: "Open Ticket Details",
|
|
12032
12044
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOSS23NHHcjs.TagIcon, { size: 20 })
|
|
@@ -12049,7 +12061,7 @@ function FaqChatCard({
|
|
|
12049
12061
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
12050
12062
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFO6DOP6Mcjs.QuestionCircleIcon, { size: 24 }),
|
|
12051
12063
|
status: { label: statusLabel, variant: "grey" },
|
|
12052
|
-
anchorProps:
|
|
12064
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12053
12065
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
12054
12066
|
menuAriaLabel: "FAQ actions"
|
|
12055
12067
|
}
|
|
@@ -12069,7 +12081,7 @@ function SlackChatCard({
|
|
|
12069
12081
|
title,
|
|
12070
12082
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
12071
12083
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZUHFVG4Fcjs.SlackLogoGreyIcon, { size: 24 }),
|
|
12072
|
-
anchorProps:
|
|
12084
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12073
12085
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
12074
12086
|
menuAriaLabel: "Message actions"
|
|
12075
12087
|
}
|
|
@@ -12087,7 +12099,7 @@ function GlyphChatCard({
|
|
|
12087
12099
|
title: chatRef.title,
|
|
12088
12100
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
12089
12101
|
icon,
|
|
12090
|
-
anchorProps:
|
|
12102
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12091
12103
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
12092
12104
|
menuAriaLabel: "Card actions"
|
|
12093
12105
|
}
|
|
@@ -12105,20 +12117,20 @@ function TrustCenterChatCard({
|
|
|
12105
12117
|
}) {
|
|
12106
12118
|
const raw2 = _optionalChain([item, 'optionalAccess', _284 => _284.frameworks]);
|
|
12107
12119
|
const frameworks = Array.isArray(raw2) ? raw2 : [];
|
|
12108
|
-
const summary =
|
|
12120
|
+
const summary = _chunkYG72MEHYcjs.trustFrameworksSummary.call(void 0, frameworks);
|
|
12109
12121
|
const leadFramework = frameworks[0];
|
|
12110
12122
|
const lead = leadFramework ? {
|
|
12111
|
-
label:
|
|
12112
|
-
color:
|
|
12123
|
+
label: _chunkYG72MEHYcjs.trustFrameworkBadge.call(void 0, leadFramework),
|
|
12124
|
+
color: _chunkYG72MEHYcjs.trustFrameworkMonitoringEntry.call(void 0, leadFramework.monitoring).color
|
|
12113
12125
|
} : void 0;
|
|
12114
12126
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12115
12127
|
MingoInfoCard,
|
|
12116
12128
|
{
|
|
12117
|
-
title:
|
|
12118
|
-
description: summary ||
|
|
12129
|
+
title: _chunkYG72MEHYcjs.TRUST_CENTER_TITLE,
|
|
12130
|
+
description: summary || _chunkYG72MEHYcjs.TRUST_CENTER_TAGLINE,
|
|
12119
12131
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOBGYDNT6cjs.ShieldCheckIcon, { size: 24 }),
|
|
12120
12132
|
status: lead ? { label: lead.label, variant: TRUST_STATUS_TAG_VARIANT[lead.color] } : void 0,
|
|
12121
|
-
anchorProps:
|
|
12133
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12122
12134
|
menuGroups: cardMenuGroups(chatRef.url, discuss, {
|
|
12123
12135
|
label: "View trust center",
|
|
12124
12136
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOBGYDNT6cjs.ShieldCheckIcon, { size: 20 })
|
|
@@ -12140,7 +12152,7 @@ function DataRoomDocChatCard({
|
|
|
12140
12152
|
description: _nullishCoalesce(chatRef.preview, () => ( void 0)),
|
|
12141
12153
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 24 }),
|
|
12142
12154
|
status: { label: badgeText, variant: "grey" },
|
|
12143
|
-
anchorProps:
|
|
12155
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12144
12156
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
12145
12157
|
menuAriaLabel: "Document actions"
|
|
12146
12158
|
}
|
|
@@ -12159,7 +12171,7 @@ function GenericFinancialChatCard({
|
|
|
12159
12171
|
title: chatRef.title,
|
|
12160
12172
|
description: subtitle,
|
|
12161
12173
|
icon,
|
|
12162
|
-
anchorProps:
|
|
12174
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12163
12175
|
menuGroups: cardMenuGroups(chatRef.url, discuss),
|
|
12164
12176
|
menuAriaLabel: "Document actions"
|
|
12165
12177
|
}
|
|
@@ -12245,7 +12257,7 @@ function CampaignChatCard({
|
|
|
12245
12257
|
}) {
|
|
12246
12258
|
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _290 => _290.goals])) ? item.goals.length : 0;
|
|
12247
12259
|
const meta = [
|
|
12248
|
-
_optionalChain([item, 'optionalAccess', _291 => _291.start_date]) ?
|
|
12260
|
+
_optionalChain([item, 'optionalAccess', _291 => _291.start_date]) ? _chunkYG72MEHYcjs.formatDateShort.call(void 0, item.start_date) : null,
|
|
12249
12261
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
12250
12262
|
"Marketing campaign"
|
|
12251
12263
|
].filter(Boolean).join(" \xB7 ");
|
|
@@ -12287,7 +12299,7 @@ function EntityMingoCard({
|
|
|
12287
12299
|
imageAlt: typeof title === "string" ? title : void 0,
|
|
12288
12300
|
icon: fallbackIcon,
|
|
12289
12301
|
status,
|
|
12290
|
-
anchorProps:
|
|
12302
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, chatRef.url, isNewTab),
|
|
12291
12303
|
menuGroups: cardMenuGroups(chatRef.url, discuss, openDetails, externalLink),
|
|
12292
12304
|
menuAriaLabel
|
|
12293
12305
|
}
|
|
@@ -12299,7 +12311,7 @@ function entityCover(image, ogPlaceholder) {
|
|
|
12299
12311
|
function statusPill(status) {
|
|
12300
12312
|
const s = typeof status === "string" ? status.trim() : "";
|
|
12301
12313
|
if (!s) return void 0;
|
|
12302
|
-
const scheme =
|
|
12314
|
+
const scheme = _chunkYG72MEHYcjs.getStatusColorScheme.call(void 0, s);
|
|
12303
12315
|
const variant = scheme === "success" || scheme === "error" || scheme === "warning" ? scheme : "grey";
|
|
12304
12316
|
return { label: s, variant };
|
|
12305
12317
|
}
|
|
@@ -12390,7 +12402,7 @@ function DesignDocChatCard({
|
|
|
12390
12402
|
description: doc ? [designDocMetaLine(doc), formatCompletionLabel(doc.completion)].join(" \xB7 ") : _nullishCoalesce(displayRef.preview, () => ( void 0)),
|
|
12391
12403
|
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 24 }),
|
|
12392
12404
|
status: readiness ? { label: readiness.label, variant: readiness.scheme === "success" ? "success" : "grey" } : { label: "Design doc", variant: "grey" },
|
|
12393
|
-
anchorProps:
|
|
12405
|
+
anchorProps: _chunkOH5LAH3Xcjs.buildAnchorProps.call(void 0, displayRef.url, isNewTab),
|
|
12394
12406
|
menuGroups: cardMenuGroups(displayRef.url, discuss),
|
|
12395
12407
|
menuAriaLabel: "Design doc actions"
|
|
12396
12408
|
}
|
|
@@ -12408,7 +12420,7 @@ function InvestorUpdateChatCard({
|
|
|
12408
12420
|
EntityMingoCard,
|
|
12409
12421
|
{
|
|
12410
12422
|
title,
|
|
12411
|
-
description: _optionalChain([item, 'optionalAccess', _321 => _321.strategic_update]) || _optionalChain([item, 'optionalAccess', _322 => _322.content]) ||
|
|
12423
|
+
description: _optionalChain([item, 'optionalAccess', _321 => _321.strategic_update]) || _optionalChain([item, 'optionalAccess', _322 => _322.content]) || _chunkYG72MEHYcjs.formatInvestorUpdatePeriod.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _323 => _323.period_start]), () => ( null)), _nullishCoalesce(_optionalChain([item, 'optionalAccess', _324 => _324.period_end]), () => ( null))) || void 0,
|
|
12412
12424
|
cover: entityCover(_optionalChain([item, 'optionalAccess', _325 => _325.featured_image]), ogPlaceholder),
|
|
12413
12425
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk37SGOMF5cjs.PresentationLineIcon, { size: 24 }),
|
|
12414
12426
|
status: { label: "Investor update", variant: "grey" },
|
|
@@ -12452,7 +12464,7 @@ function ProgramChatCard({
|
|
|
12452
12464
|
discuss
|
|
12453
12465
|
}) {
|
|
12454
12466
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZ6NU2C2cjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkM4KPLFFAcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZL4LQNYXcjs.MicrophoneIcon, { size: 24 });
|
|
12455
|
-
const { line: meta } =
|
|
12467
|
+
const { line: meta } = _chunkYG72MEHYcjs.programMetaLine.call(void 0, _nullishCoalesce(item, () => ( {})), configKey, _chunkYG72MEHYcjs.programMetaFormatters.call(void 0, _chunkYG72MEHYcjs.PROGRAM_META_RENDERERS));
|
|
12456
12468
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12457
12469
|
EntityMingoCard,
|
|
12458
12470
|
{
|
|
@@ -12478,7 +12490,7 @@ function RoadmapChatCard({
|
|
|
12478
12490
|
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _335 => _335.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
12479
12491
|
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _336 => _336.customItemId]) != null;
|
|
12480
12492
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3UIJR4PYcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6DN5HKRWcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMQDSQKK2cjs.MapIcon, { size: 24 });
|
|
12481
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12493
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _337 => _337.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
12482
12494
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
12483
12495
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
12484
12496
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE76ONBKFcjs.next_image_default, { src: logoUrl, alt: "", className: "size-6 object-contain", width: 24, height: 24, unoptimized: true })
|
|
@@ -12544,11 +12556,11 @@ function refText(ref, key) {
|
|
|
12544
12556
|
return typeof value === "string" && value.length > 0 ? value : null;
|
|
12545
12557
|
}
|
|
12546
12558
|
function VendorGlyph({ title, logoUrl }) {
|
|
12547
|
-
if (!logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12559
|
+
if (!logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.EntityIcon, { icon: { name: SOURCE_ICON_NAMES.vendors }, size: 24 });
|
|
12548
12560
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, VendorIcon, { vendor: { title, logo_url: logoUrl }, size: "xs", showBackground: false });
|
|
12549
12561
|
}
|
|
12550
12562
|
function SitePageGlyph({ iconName }) {
|
|
12551
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12563
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.EntityIcon, { icon: { name: _nullishCoalesce(iconName, () => ( SOURCE_ICON_NAMES["website-pages"])) }, size: 24 });
|
|
12552
12564
|
}
|
|
12553
12565
|
var GITHUB_CARD_CONFIGS = {
|
|
12554
12566
|
github_commit: { label: "GitHub commit", kind: "commit" },
|
|
@@ -12665,7 +12677,7 @@ function programRegistryEntries() {
|
|
|
12665
12677
|
label: cfg.label,
|
|
12666
12678
|
contentRefType: cfg.contentRefType,
|
|
12667
12679
|
bareInline: true,
|
|
12668
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12680
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.ProgramCardSkeleton, { size: "sm" }),
|
|
12669
12681
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12670
12682
|
ProgramChatCard,
|
|
12671
12683
|
{
|
|
@@ -12706,7 +12718,7 @@ function roadmapRegistryEntries() {
|
|
|
12706
12718
|
bareInline: true,
|
|
12707
12719
|
...cfg.noComposedHref ? { noComposedHref: true } : {},
|
|
12708
12720
|
...cfg.fallbackHref ? { fallbackHref: cfg.fallbackHref } : {},
|
|
12709
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12721
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.RoadmapCardSkeleton, { size: "sm" }),
|
|
12710
12722
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12711
12723
|
RoadmapChatCard,
|
|
12712
12724
|
{
|
|
@@ -12764,12 +12776,12 @@ var CHAT_CARD_REGISTRY = {
|
|
|
12764
12776
|
// projection route; `extractCardItems` turns its object payload into the
|
|
12765
12777
|
// single matched row. Destination is the public page unless the host
|
|
12766
12778
|
// re-homes the type (`composeContentUrl` override).
|
|
12767
|
-
[
|
|
12779
|
+
[_chunkYG72MEHYcjs.TRUST_CENTER_DOCUMENT_TYPE]: {
|
|
12768
12780
|
label: "Trust center",
|
|
12769
12781
|
bareInline: true,
|
|
12770
|
-
contentRefType:
|
|
12782
|
+
contentRefType: _chunkYG72MEHYcjs.TRUST_CENTER_DOCUMENT_TYPE,
|
|
12771
12783
|
noComposedHref: true,
|
|
12772
|
-
fallbackHref: () =>
|
|
12784
|
+
fallbackHref: () => _chunkYG72MEHYcjs.TRUST_CENTER_PAGE_PATH,
|
|
12773
12785
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoInfoCardSkeleton, {}),
|
|
12774
12786
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterChatCard, { item, chatRef, isNewTab: opts.isNewTab, discuss: opts.discuss })
|
|
12775
12787
|
},
|
|
@@ -12795,7 +12807,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
12795
12807
|
label: "Blog post",
|
|
12796
12808
|
contentRefType: "blog_post_existing",
|
|
12797
12809
|
bareInline: true,
|
|
12798
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12810
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.BlogCardSkeleton, { size: "sm" }),
|
|
12799
12811
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12800
12812
|
BlogChatCard,
|
|
12801
12813
|
{
|
|
@@ -12812,7 +12824,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
12812
12824
|
label: "Case study",
|
|
12813
12825
|
contentRefType: "case_study",
|
|
12814
12826
|
bareInline: true,
|
|
12815
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12827
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.CaseStudyCardSkeleton, { size: "sm" }),
|
|
12816
12828
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12817
12829
|
CaseStudyChatCard,
|
|
12818
12830
|
{
|
|
@@ -12837,7 +12849,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
12837
12849
|
label: "Customer interview",
|
|
12838
12850
|
contentRefType: "customer_interview",
|
|
12839
12851
|
bareInline: true,
|
|
12840
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12852
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.CustomerInterviewCardSkeleton, { size: "sm" }),
|
|
12841
12853
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12842
12854
|
CustomerInterviewChatCard,
|
|
12843
12855
|
{
|
|
@@ -12853,9 +12865,9 @@ var CHAT_CARD_REGISTRY = {
|
|
|
12853
12865
|
label: "Product release",
|
|
12854
12866
|
contentRefType: "product_release",
|
|
12855
12867
|
bareInline: true,
|
|
12856
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12868
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.ProductReleaseCardSkeleton, { size: "sm" }),
|
|
12857
12869
|
render: (item, chatRef, opts) => {
|
|
12858
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _378 => _378.extras, 'optionalAccess', _379 => _379.buildProductReleaseCardProps]), () => (
|
|
12870
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _378 => _378.extras, 'optionalAccess', _379 => _379.buildProductReleaseCardProps]), () => ( _chunkYG72MEHYcjs.defaultBuildProductReleaseCardProps));
|
|
12859
12871
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12860
12872
|
ProductReleaseChatCard,
|
|
12861
12873
|
{
|
|
@@ -12873,7 +12885,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
12873
12885
|
label: "Investor update",
|
|
12874
12886
|
contentRefType: "investor_update",
|
|
12875
12887
|
bareInline: true,
|
|
12876
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12888
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.InvestorUpdateCardSkeleton, { size: "sm" }),
|
|
12877
12889
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12878
12890
|
InvestorUpdateChatCard,
|
|
12879
12891
|
{
|
|
@@ -12891,7 +12903,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
12891
12903
|
bareInline: true,
|
|
12892
12904
|
// "Display" affordance (verbatim guide body) instead of "Ask".
|
|
12893
12905
|
displayAction: true,
|
|
12894
|
-
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12906
|
+
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYG72MEHYcjs.OnboardingGuideCardSkeleton, { size: "sm" }),
|
|
12895
12907
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12896
12908
|
OnboardingGuideChatCard,
|
|
12897
12909
|
{
|
|
@@ -12964,7 +12976,7 @@ function ChatCardLoader({
|
|
|
12964
12976
|
entry: fetchEntry,
|
|
12965
12977
|
ctx: sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform }),
|
|
12966
12978
|
composeContentUrl: runtime.composeContentUrl,
|
|
12967
|
-
resolveHref: (href) =>
|
|
12979
|
+
resolveHref: (href) => _chunkYG72MEHYcjs.resolveHrefForRuntime.call(void 0, href, runtime)
|
|
12968
12980
|
});
|
|
12969
12981
|
const hrefResolvedChatRef = {
|
|
12970
12982
|
...chatRef,
|
|
@@ -12975,12 +12987,12 @@ function ChatCardLoader({
|
|
|
12975
12987
|
};
|
|
12976
12988
|
const fetchedTitle = fetchEntry && item ? readFetchedCardTitle(item) : null;
|
|
12977
12989
|
const finalChatRef = fetchedTitle && (!hrefResolvedChatRef.title || hrefResolvedChatRef.title === hrefResolvedChatRef.id) ? { ...hrefResolvedChatRef, title: fetchedTitle } : hrefResolvedChatRef;
|
|
12978
|
-
const isNewTab =
|
|
12990
|
+
const isNewTab = _chunkOH5LAH3Xcjs.computeIsNewTab.call(void 0, runtime, finalChatRef.url, _nullishCoalesce(finalChatRef.targetPlatform, () => ( null)));
|
|
12979
12991
|
const useDisplay = !!entry.displayAction && !!onDisplay;
|
|
12980
12992
|
const discussFn = useDisplay ? onDisplay : onDiscuss;
|
|
12981
12993
|
const discuss = discussFn ? {
|
|
12982
12994
|
label: useDisplay ? "Display" : "Ask Mingo",
|
|
12983
|
-
icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12995
|
+
icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLBGAHB6Xcjs.AgentMark, { agent: "mingo", className: "size-5" }),
|
|
12984
12996
|
run: () => discussFn(finalChatRef)
|
|
12985
12997
|
} : void 0;
|
|
12986
12998
|
const renderOpts = {
|
|
@@ -13089,12 +13101,12 @@ function makeBatchDedupKey(item) {
|
|
|
13089
13101
|
return `${item.messageType}:${seq}:${type}:${text2}:${integratedToolType}:${toolFunction}:${approvalRequestId}`;
|
|
13090
13102
|
}
|
|
13091
13103
|
function getChatTypeMessageType(chatType) {
|
|
13092
|
-
return chatType ===
|
|
13104
|
+
return chatType === _chunkXEYL6AFZcjs.CHAT_TYPE.ADMIN ? "admin-message" : "message";
|
|
13093
13105
|
}
|
|
13094
13106
|
function useChunkCatchup({
|
|
13095
13107
|
dialogId,
|
|
13096
13108
|
onChunkReceived,
|
|
13097
|
-
chatTypes = [
|
|
13109
|
+
chatTypes = [_chunkXEYL6AFZcjs.CHAT_TYPE.CLIENT],
|
|
13098
13110
|
fetchChunks
|
|
13099
13111
|
}) {
|
|
13100
13112
|
const processedSequenceKeys = _react.useRef.call(void 0, /* @__PURE__ */ new Set());
|
|
@@ -13662,7 +13674,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
|
|
|
13662
13674
|
try {
|
|
13663
13675
|
const url = new URL(commandsUrl, window.location.origin);
|
|
13664
13676
|
if (prefix) url.searchParams.set("q", prefix);
|
|
13665
|
-
const res = await
|
|
13677
|
+
const res = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
|
|
13666
13678
|
if (!res.ok) return [];
|
|
13667
13679
|
const data = await res.json();
|
|
13668
13680
|
return _nullishCoalesce(data.commands, () => ( []));
|
|
@@ -13739,7 +13751,7 @@ var EMPTY_STATE_FALLBACK = {
|
|
|
13739
13751
|
async function fetchEmptyStateConfig(signal, emptyStateUrl) {
|
|
13740
13752
|
try {
|
|
13741
13753
|
const url = new URL(emptyStateUrl, window.location.origin);
|
|
13742
|
-
const res = await
|
|
13754
|
+
const res = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
|
|
13743
13755
|
if (!res.ok) {
|
|
13744
13756
|
if (res.status >= 500) {
|
|
13745
13757
|
console.error(`[chat] empty-state config fetch failed (${res.status}): ${url.pathname}`);
|
|
@@ -13891,7 +13903,7 @@ function useChatAttachments() {
|
|
|
13891
13903
|
);
|
|
13892
13904
|
}
|
|
13893
13905
|
updateOne(att.id, { status: "uploading", progress: 5 });
|
|
13894
|
-
const urlResp = await
|
|
13906
|
+
const urlResp = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
|
|
13895
13907
|
method: "POST",
|
|
13896
13908
|
headers: { "Content-Type": "application/json" },
|
|
13897
13909
|
signal: _optionalChain([ctrl, 'optionalAccess', _457 => _457.signal]),
|
|
@@ -14055,7 +14067,7 @@ function useChatAttachmentImageGallery() {
|
|
|
14055
14067
|
return () => root.removeEventListener("click", onClick);
|
|
14056
14068
|
}, [viewUrlPrefix]);
|
|
14057
14069
|
const modal = state.isOpen ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14058
|
-
|
|
14070
|
+
_chunkYG72MEHYcjs.ImageGalleryModal,
|
|
14059
14071
|
{
|
|
14060
14072
|
images: state.images,
|
|
14061
14073
|
isOpen: state.isOpen,
|
|
@@ -14082,7 +14094,7 @@ var ANON_DEFAULTS = {
|
|
|
14082
14094
|
function useResolveChatIdentity(enabled) {
|
|
14083
14095
|
const runtime = _chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, );
|
|
14084
14096
|
const url = runtime.endpoints.identityUrl;
|
|
14085
|
-
const proxyEmail = _nullishCoalesce(_optionalChain([
|
|
14097
|
+
const proxyEmail = _nullishCoalesce(_optionalChain([_chunk5GJM7VRRcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _463 => _463.email]), () => ( null));
|
|
14086
14098
|
const requestKey = enabled ? `${url}\0${_nullishCoalesce(proxyEmail, () => ( ""))}` : null;
|
|
14087
14099
|
const [resolved, setResolved] = _react.useState.call(void 0, null);
|
|
14088
14100
|
const data = _optionalChain([resolved, 'optionalAccess', _464 => _464.key]) === requestKey ? resolved.data : ANON_DEFAULTS;
|
|
@@ -14091,7 +14103,7 @@ function useResolveChatIdentity(enabled) {
|
|
|
14091
14103
|
if (requestKey === null) return void 0;
|
|
14092
14104
|
let cancelled = false;
|
|
14093
14105
|
const ctrl = new AbortController();
|
|
14094
|
-
|
|
14106
|
+
_chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, url, { signal: ctrl.signal }).then(async (resp) => {
|
|
14095
14107
|
if (!resp.ok) return ANON_DEFAULTS;
|
|
14096
14108
|
return await resp.json();
|
|
14097
14109
|
}).then((next) => {
|
|
@@ -15217,7 +15229,7 @@ function nullableText(value) {
|
|
|
15217
15229
|
}
|
|
15218
15230
|
function httpsUrl(value) {
|
|
15219
15231
|
const candidate = text(value);
|
|
15220
|
-
if (!candidate ||
|
|
15232
|
+
if (!candidate || _chunkOH5LAH3Xcjs.UNSAFE_URL_CHARS.test(candidate)) return void 0;
|
|
15221
15233
|
try {
|
|
15222
15234
|
return new URL(candidate).protocol === "https:" ? candidate : void 0;
|
|
15223
15235
|
} catch (e17) {
|
|
@@ -15801,7 +15813,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
15801
15813
|
const status = approvalStatuses[requestId] || "pending";
|
|
15802
15814
|
if (!displayInline(approvalType)) {
|
|
15803
15815
|
const required = _nullishCoalesce(toolCalls.find((c) => c.requiresApproval), () => ( toolCalls[0]));
|
|
15804
|
-
const summary = required ?
|
|
15816
|
+
const summary = required ? _chunkLBGAHB6Xcjs.getCommandText.call(void 0, required) : `Batch of ${toolCalls.length} tool calls`;
|
|
15805
15817
|
pendingEscalated.set(requestId, {
|
|
15806
15818
|
command: summary,
|
|
15807
15819
|
explanation: _optionalChain([required, 'optionalAccess', _534 => _534.toolExplanation]),
|
|
@@ -15834,7 +15846,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
15834
15846
|
if (!call.requiresApproval) continue;
|
|
15835
15847
|
segments = accumulator.addApprovalRequest(
|
|
15836
15848
|
requestId,
|
|
15837
|
-
|
|
15849
|
+
_chunkLBGAHB6Xcjs.getCommandText.call(void 0, call),
|
|
15838
15850
|
call.toolExplanation,
|
|
15839
15851
|
approvalType,
|
|
15840
15852
|
status,
|
|
@@ -15913,7 +15925,7 @@ function createChatStreamReducer(options = {}) {
|
|
|
15913
15925
|
if (!call.requiresApproval) continue;
|
|
15914
15926
|
segments = accumulator.addApprovalRequest(
|
|
15915
15927
|
requestId,
|
|
15916
|
-
|
|
15928
|
+
_chunkLBGAHB6Xcjs.getCommandText.call(void 0, call),
|
|
15917
15929
|
call.toolExplanation,
|
|
15918
15930
|
escalatedData.approvalType,
|
|
15919
15931
|
status
|
|
@@ -16856,7 +16868,7 @@ async function failWith(response, fallback) {
|
|
|
16856
16868
|
function createChatConversationsApi(baseUrl) {
|
|
16857
16869
|
const base = baseUrl.replace(/\/+$/, "");
|
|
16858
16870
|
const patch = async (id, body, what) => {
|
|
16859
|
-
const response = await
|
|
16871
|
+
const response = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, `${base}/${encodeURIComponent(id)}`, {
|
|
16860
16872
|
method: "PATCH",
|
|
16861
16873
|
body: JSON.stringify(body)
|
|
16862
16874
|
});
|
|
@@ -16869,7 +16881,7 @@ function createChatConversationsApi(baseUrl) {
|
|
|
16869
16881
|
if (limit !== void 0) qs.set("limit", String(limit));
|
|
16870
16882
|
if (cursor) qs.set("cursor", cursor);
|
|
16871
16883
|
if (search) qs.set("search", search);
|
|
16872
|
-
const response = await
|
|
16884
|
+
const response = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, `${base}?${qs.toString()}`, { method: "GET" });
|
|
16873
16885
|
if (!response.ok) await failWith(response, "Conversation list failed");
|
|
16874
16886
|
const body = unwrapEnvelope(await response.json());
|
|
16875
16887
|
const rawDialogs = isRecord(body) && Array.isArray(body.dialogs) ? body.dialogs : [];
|
|
@@ -17210,11 +17222,11 @@ function createSseFrameDecoder() {
|
|
|
17210
17222
|
var STORAGE_KEY = "conversation";
|
|
17211
17223
|
var namespaceFor = (source) => {
|
|
17212
17224
|
const base = `mingo-chat-${source}`;
|
|
17213
|
-
const auth =
|
|
17225
|
+
const auth = _chunk5GJM7VRRcjs.getEmbedProxyAuth.call(void 0, );
|
|
17214
17226
|
return _optionalChain([auth, 'optionalAccess', _566 => _566.email]) ? `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}` : base;
|
|
17215
17227
|
};
|
|
17216
17228
|
function createChatConversationStorage(source) {
|
|
17217
|
-
return
|
|
17229
|
+
return _chunk5GJM7VRRcjs.createLocalStorageAdapter.call(void 0, {
|
|
17218
17230
|
key: STORAGE_KEY,
|
|
17219
17231
|
namespace: () => namespaceFor(source),
|
|
17220
17232
|
validate: (parsed) => !!parsed && typeof parsed.conversationId === "string" && parsed.conversationId.length > 0,
|
|
@@ -17270,7 +17282,7 @@ function useChatHistoryHydration({
|
|
|
17270
17282
|
setIsHydratingHistory(true);
|
|
17271
17283
|
void (async () => {
|
|
17272
17284
|
try {
|
|
17273
|
-
const res = await
|
|
17285
|
+
const res = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, `${historyUrl}?conversationId=${encodeURIComponent(conversationId)}`, {
|
|
17274
17286
|
method: "GET"
|
|
17275
17287
|
});
|
|
17276
17288
|
if (!res.ok) {
|
|
@@ -17581,7 +17593,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
17581
17593
|
abortControllerRef.current = ctrl;
|
|
17582
17594
|
let mintedThisTurn = false;
|
|
17583
17595
|
try {
|
|
17584
|
-
const response = await
|
|
17596
|
+
const response = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, targetPath, {
|
|
17585
17597
|
method: "POST",
|
|
17586
17598
|
body: JSON.stringify(requestBody),
|
|
17587
17599
|
signal: ctrl.signal
|
|
@@ -18211,12 +18223,12 @@ function decodeNatsChunk(chunk) {
|
|
|
18211
18223
|
|
|
18212
18224
|
// src/components/chat/utils/process-historical-messages.ts
|
|
18213
18225
|
function getOwnerDisplayName(owner) {
|
|
18214
|
-
if (_optionalChain([owner, 'optionalAccess', _612 => _612.type]) ===
|
|
18226
|
+
if (_optionalChain([owner, 'optionalAccess', _612 => _612.type]) === _chunkXEYL6AFZcjs.OWNER_TYPE.ADMIN && owner.user) {
|
|
18215
18227
|
const { firstName, lastName } = owner.user;
|
|
18216
18228
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
18217
18229
|
if (name) return name;
|
|
18218
18230
|
}
|
|
18219
|
-
return _optionalChain([owner, 'optionalAccess', _613 => _613.type]) ===
|
|
18231
|
+
return _optionalChain([owner, 'optionalAccess', _613 => _613.type]) === _chunkXEYL6AFZcjs.OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
18220
18232
|
}
|
|
18221
18233
|
function getOwnerAvatar(owner) {
|
|
18222
18234
|
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _614 => _614.user, 'optionalAccess', _615 => _615.image, 'optionalAccess', _616 => _616.imageUrl]), () => ( void 0));
|
|
@@ -18479,7 +18491,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
18479
18491
|
if (!call.requiresApproval) continue;
|
|
18480
18492
|
accumulator.addApprovalRequest(
|
|
18481
18493
|
event.requestId,
|
|
18482
|
-
|
|
18494
|
+
_chunkLBGAHB6Xcjs.getCommandText.call(void 0, call),
|
|
18483
18495
|
call.toolExplanation,
|
|
18484
18496
|
approvalType,
|
|
18485
18497
|
status,
|
|
@@ -18540,7 +18552,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
|
|
|
18540
18552
|
if (!call.requiresApproval) continue;
|
|
18541
18553
|
accumulator.addApprovalRequest(
|
|
18542
18554
|
requestId,
|
|
18543
|
-
|
|
18555
|
+
_chunkLBGAHB6Xcjs.getCommandText.call(void 0, call),
|
|
18544
18556
|
call.toolExplanation,
|
|
18545
18557
|
escalatedData.approvalType,
|
|
18546
18558
|
status
|
|
@@ -18648,10 +18660,10 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
18648
18660
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
18649
18661
|
return;
|
|
18650
18662
|
}
|
|
18651
|
-
const isUserMessage = _optionalChain([msg, 'access', _629 => _629.owner, 'optionalAccess', _630 => _630.type]) ===
|
|
18663
|
+
const isUserMessage = _optionalChain([msg, 'access', _629 => _629.owner, 'optionalAccess', _630 => _630.type]) === _chunkXEYL6AFZcjs.OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _631 => _631.owner, 'optionalAccess', _632 => _632.type]) === _chunkXEYL6AFZcjs.OWNER_TYPE.ADMIN;
|
|
18652
18664
|
if (isUserMessage) {
|
|
18653
18665
|
flushAssistantMessage();
|
|
18654
|
-
const userAuthorType = _optionalChain([msg, 'access', _633 => _633.owner, 'optionalAccess', _634 => _634.type]) ===
|
|
18666
|
+
const userAuthorType = _optionalChain([msg, 'access', _633 => _633.owner, 'optionalAccess', _634 => _634.type]) === _chunkXEYL6AFZcjs.OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
18655
18667
|
messageDataArray.forEach((data) => {
|
|
18656
18668
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
18657
18669
|
const rawContext = data.contextItems;
|
|
@@ -18702,7 +18714,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
18702
18714
|
});
|
|
18703
18715
|
const nextMsg = messages[index + 1];
|
|
18704
18716
|
const isLastMessage = index === messages.length - 1;
|
|
18705
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _637 => _637.owner, 'optionalAccess', _638 => _638.type]) ===
|
|
18717
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _637 => _637.owner, 'optionalAccess', _638 => _638.type]) === _chunkXEYL6AFZcjs.OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _639 => _639.owner, 'optionalAccess', _640 => _640.type]) === _chunkXEYL6AFZcjs.OWNER_TYPE.ADMIN);
|
|
18706
18718
|
if (isLastMessage || nextIsFromUser) {
|
|
18707
18719
|
flushAssistantMessage();
|
|
18708
18720
|
}
|