@flamingo-stack/openframe-frontend-core 0.0.338 → 0.0.339-snapshot.20260630004216
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-FNPF5OQS.cjs → chunk-4K2M2WC4.cjs} +26 -26
- package/dist/{chunk-FNPF5OQS.cjs.map → chunk-4K2M2WC4.cjs.map} +1 -1
- package/dist/{chunk-JI7EPGRA.js → chunk-53MGSWCC.js} +4 -4
- package/dist/{chunk-FGVYJPT4.js → chunk-573LTCRV.js} +2 -2
- package/dist/{chunk-GOTCZBP2.js → chunk-7TENQYAJ.js} +2 -2
- package/dist/{chunk-IJ2OYHRH.cjs → chunk-BMSJTLGO.cjs} +12 -12
- package/dist/{chunk-IJ2OYHRH.cjs.map → chunk-BMSJTLGO.cjs.map} +1 -1
- package/dist/{chunk-IBCTHO3A.cjs → chunk-DFFOCQFO.cjs} +5 -5
- package/dist/{chunk-IBCTHO3A.cjs.map → chunk-DFFOCQFO.cjs.map} +1 -1
- package/dist/{chunk-RSA7DPZN.cjs → chunk-DRO773DG.cjs} +56 -56
- package/dist/{chunk-RSA7DPZN.cjs.map → chunk-DRO773DG.cjs.map} +1 -1
- package/dist/{chunk-2FDRZIX2.cjs → chunk-ERMMMQET.cjs} +683 -632
- package/dist/chunk-ERMMMQET.cjs.map +1 -0
- package/dist/{chunk-RLHOSQ7X.cjs → chunk-EXFHHZ2C.cjs} +9 -9
- package/dist/{chunk-RLHOSQ7X.cjs.map → chunk-EXFHHZ2C.cjs.map} +1 -1
- package/dist/{chunk-GFBCUSFN.js → chunk-GGFJ5OQ3.js} +4 -4
- package/dist/{chunk-YHDF4WMG.cjs → chunk-HVYR323G.cjs} +15 -15
- package/dist/{chunk-YHDF4WMG.cjs.map → chunk-HVYR323G.cjs.map} +1 -1
- package/dist/{chunk-HI367AS3.js → chunk-KE2PMD6A.js} +2 -2
- package/dist/{chunk-QJR7QLNW.cjs → chunk-L6YX6D26.cjs} +31 -31
- package/dist/{chunk-QJR7QLNW.cjs.map → chunk-L6YX6D26.cjs.map} +1 -1
- package/dist/{chunk-HKBV4OJK.js → chunk-MNLQMAY3.js} +2 -2
- package/dist/{chunk-3BWH262F.js → chunk-NC3DJLP5.js} +4 -4
- package/dist/{chunk-BG44XQB2.js → chunk-NDHQG4I4.js} +90 -39
- package/dist/chunk-NDHQG4I4.js.map +1 -0
- package/dist/{chunk-N7MH2OSW.js → chunk-OVN265XQ.js} +2 -2
- package/dist/{chunk-IVY5R6L2.cjs → chunk-SIK5LBUN.cjs} +25 -25
- package/dist/{chunk-IVY5R6L2.cjs.map → chunk-SIK5LBUN.cjs.map} +1 -1
- package/dist/{chunk-DPU7VTTV.js → chunk-T4SW6GOR.js} +4 -4
- package/dist/{chunk-A4X3DZSS.js → chunk-TOMTBXM7.js} +2 -2
- package/dist/{chunk-DPFJPCFL.cjs → chunk-TVCBMR3N.cjs} +7 -7
- package/dist/{chunk-DPFJPCFL.cjs.map → chunk-TVCBMR3N.cjs.map} +1 -1
- package/dist/{chunk-FDKTAOEO.cjs → chunk-VA3GDVOV.cjs} +37 -37
- package/dist/{chunk-FDKTAOEO.cjs.map → chunk-VA3GDVOV.cjs.map} +1 -1
- package/dist/{chunk-IOEGV4DP.js → chunk-W7J46YKF.js} +2 -2
- package/dist/{chunk-Y2VDAVIX.cjs → chunk-YEB5Z76W.cjs} +62 -62
- package/dist/{chunk-Y2VDAVIX.cjs.map → chunk-YEB5Z76W.cjs.map} +1 -1
- package/dist/components/case-studies/index.cjs +8 -8
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/chat/chat-quick-action-row.d.ts +5 -0
- package/dist/components/chat/chat-quick-action-row.d.ts.map +1 -1
- package/dist/components/chat/guide-welcome.d.ts +6 -1
- package/dist/components/chat/guide-welcome.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +5 -5
- package/dist/components/docs/index.js +4 -4
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/help-center-pages/index.cjs +20 -20
- package/dist/components/help-center-pages/index.js +11 -11
- package/dist/components/index.cjs +121 -121
- package/dist/components/index.js +9 -9
- package/dist/components/layout/page-layout.d.ts +6 -1
- package/dist/components/layout/page-layout.d.ts.map +1 -1
- package/dist/components/layout/title-block.d.ts +8 -1
- package/dist/components/layout/title-block.d.ts.map +1 -1
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +5 -5
- package/dist/components/tickets/index.js +4 -4
- package/dist/components/ui/index.cjs +2 -2
- package/dist/components/ui/index.js +1 -1
- package/dist/components/ui/info-card.d.ts.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/src/components/chat/chat-quick-action-row.tsx +9 -0
- package/src/components/chat/embeddable-chat.tsx +24 -3
- package/src/components/chat/guide-welcome.tsx +10 -1
- package/src/components/layout/page-layout.tsx +10 -1
- package/src/components/layout/title-block.tsx +56 -5
- package/src/components/ui/info-card.tsx +55 -41
- package/dist/chunk-2FDRZIX2.cjs.map +0 -1
- package/dist/chunk-BG44XQB2.js.map +0 -1
- /package/dist/{chunk-JI7EPGRA.js.map → chunk-53MGSWCC.js.map} +0 -0
- /package/dist/{chunk-FGVYJPT4.js.map → chunk-573LTCRV.js.map} +0 -0
- /package/dist/{chunk-GOTCZBP2.js.map → chunk-7TENQYAJ.js.map} +0 -0
- /package/dist/{chunk-GFBCUSFN.js.map → chunk-GGFJ5OQ3.js.map} +0 -0
- /package/dist/{chunk-HI367AS3.js.map → chunk-KE2PMD6A.js.map} +0 -0
- /package/dist/{chunk-HKBV4OJK.js.map → chunk-MNLQMAY3.js.map} +0 -0
- /package/dist/{chunk-3BWH262F.js.map → chunk-NC3DJLP5.js.map} +0 -0
- /package/dist/{chunk-N7MH2OSW.js.map → chunk-OVN265XQ.js.map} +0 -0
- /package/dist/{chunk-DPU7VTTV.js.map → chunk-T4SW6GOR.js.map} +0 -0
- /package/dist/{chunk-A4X3DZSS.js.map → chunk-TOMTBXM7.js.map} +0 -0
- /package/dist/{chunk-IOEGV4DP.js.map → chunk-W7J46YKF.js.map} +0 -0
|
@@ -5672,6 +5672,10 @@ function ChipButton({ chip }) {
|
|
|
5672
5672
|
{
|
|
5673
5673
|
type: "button",
|
|
5674
5674
|
onClick: chip.onSelect,
|
|
5675
|
+
onMouseEnter: chip.onHoverStart,
|
|
5676
|
+
onMouseLeave: chip.onHoverEnd,
|
|
5677
|
+
onFocus: chip.onHoverStart,
|
|
5678
|
+
onBlur: chip.onHoverEnd,
|
|
5675
5679
|
className: "shrink-0 rounded-md focus:outline-none focus-visible:ring-2 focus-visible:ring-ods-accent",
|
|
5676
5680
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Tag, { variant: _nullishCoalesce(chip.variant, () => ( "outline")), icon: chip.icon, label: chip.label })
|
|
5677
5681
|
}
|
|
@@ -6577,6 +6581,8 @@ function GuideWelcome({
|
|
|
6577
6581
|
subtitleLoading = false,
|
|
6578
6582
|
quickActions = [],
|
|
6579
6583
|
onQuickAction,
|
|
6584
|
+
onQuickActionHover,
|
|
6585
|
+
onQuickActionHoverEnd,
|
|
6580
6586
|
children,
|
|
6581
6587
|
className
|
|
6582
6588
|
}) {
|
|
@@ -6603,9 +6609,11 @@ function GuideWelcome({
|
|
|
6603
6609
|
() => quickActions.map((action) => ({
|
|
6604
6610
|
id: action.id,
|
|
6605
6611
|
label: action.label,
|
|
6606
|
-
onSelect: () => _optionalChain([onQuickAction, 'optionalCall', _102 => _102(action)])
|
|
6612
|
+
onSelect: () => _optionalChain([onQuickAction, 'optionalCall', _102 => _102(action)]),
|
|
6613
|
+
onHoverStart: () => _optionalChain([onQuickActionHover, 'optionalCall', _103 => _103(action)]),
|
|
6614
|
+
onHoverEnd: () => _optionalChain([onQuickActionHoverEnd, 'optionalCall', _104 => _104()])
|
|
6607
6615
|
})),
|
|
6608
|
-
[quickActions, onQuickAction]
|
|
6616
|
+
[quickActions, onQuickAction, onQuickActionHover, onQuickActionHoverEnd]
|
|
6609
6617
|
);
|
|
6610
6618
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
6611
6619
|
"div",
|
|
@@ -7044,7 +7052,7 @@ function ChatDialogModals({
|
|
|
7044
7052
|
RenameChatModal,
|
|
7045
7053
|
{
|
|
7046
7054
|
isOpen: renameTarget != null,
|
|
7047
|
-
initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess',
|
|
7055
|
+
initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess', _105 => _105.title]), () => ( "")),
|
|
7048
7056
|
onClose: () => setRenameTarget(null),
|
|
7049
7057
|
onSave: onConfirmRename
|
|
7050
7058
|
}
|
|
@@ -7308,7 +7316,7 @@ function ChatAttachmentAddButton({
|
|
|
7308
7316
|
const canAddMore = slotsAvailable > 0 && !disabled;
|
|
7309
7317
|
const handlePick = () => {
|
|
7310
7318
|
if (!canAddMore) return;
|
|
7311
|
-
_optionalChain([fileInputRef, 'access',
|
|
7319
|
+
_optionalChain([fileInputRef, 'access', _106 => _106.current, 'optionalAccess', _107 => _107.click, 'call', _108 => _108()]);
|
|
7312
7320
|
};
|
|
7313
7321
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
7314
7322
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -7674,7 +7682,7 @@ function ChatComposer({
|
|
|
7674
7682
|
}) {
|
|
7675
7683
|
const contextEnabled = !!contextPicker && !archived;
|
|
7676
7684
|
const selected = _nullishCoalesce(selectedContextItems, () => ( []));
|
|
7677
|
-
const entityTypes = _optionalChain([contextPicker, 'optionalAccess',
|
|
7685
|
+
const entityTypes = _optionalChain([contextPicker, 'optionalAccess', _109 => _109.entityTypes]);
|
|
7678
7686
|
const iconByType = React23.useMemo(() => {
|
|
7679
7687
|
const map = /* @__PURE__ */ new Map();
|
|
7680
7688
|
for (const t of _nullishCoalesce(entityTypes, () => ( []))) map.set(t.type, t.icon);
|
|
@@ -7703,7 +7711,7 @@ function ChatComposer({
|
|
|
7703
7711
|
startIcon: contextEnabled ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7704
7712
|
ChatComposerPlusMenu,
|
|
7705
7713
|
{
|
|
7706
|
-
onToggle: () => contextPickerOpen ? _optionalChain([onCloseContextPicker, 'optionalCall',
|
|
7714
|
+
onToggle: () => contextPickerOpen ? _optionalChain([onCloseContextPicker, 'optionalCall', _110 => _110()]) : _optionalChain([onOpenContextPicker, 'optionalCall', _111 => _111()]),
|
|
7707
7715
|
open: contextPickerOpen,
|
|
7708
7716
|
disabled: attachmentsDisabled,
|
|
7709
7717
|
dropdown: contextPicker ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -7712,8 +7720,8 @@ function ChatComposer({
|
|
|
7712
7720
|
open: contextPickerOpen,
|
|
7713
7721
|
config: contextPicker,
|
|
7714
7722
|
selectedItems: selected,
|
|
7715
|
-
onToggleItem: (item) => _optionalChain([onToggleContextItem, 'optionalCall',
|
|
7716
|
-
onClose: () => _optionalChain([onCloseContextPicker, 'optionalCall',
|
|
7723
|
+
onToggleItem: (item) => _optionalChain([onToggleContextItem, 'optionalCall', _112 => _112(item)]),
|
|
7724
|
+
onClose: () => _optionalChain([onCloseContextPicker, 'optionalCall', _113 => _113()]),
|
|
7717
7725
|
mentionQuery
|
|
7718
7726
|
}
|
|
7719
7727
|
) : void 0
|
|
@@ -7920,8 +7928,8 @@ ChatSidebarSkeleton.displayName = "ChatSidebarSkeleton";
|
|
|
7920
7928
|
var DialogListItem = _react.forwardRef.call(void 0,
|
|
7921
7929
|
({ className, dialog, isActive, onDialogSelect, onClick, ...props }, ref) => {
|
|
7922
7930
|
const handleClick = (e) => {
|
|
7923
|
-
_optionalChain([onDialogSelect, 'optionalCall',
|
|
7924
|
-
_optionalChain([onClick, 'optionalCall',
|
|
7931
|
+
_optionalChain([onDialogSelect, 'optionalCall', _114 => _114(dialog.id)]);
|
|
7932
|
+
_optionalChain([onClick, 'optionalCall', _115 => _115(e)]);
|
|
7925
7933
|
};
|
|
7926
7934
|
const formatTimestamp2 = (timestamp) => {
|
|
7927
7935
|
if (!timestamp) return "";
|
|
@@ -7980,7 +7988,7 @@ var ChatSidebar = _react.forwardRef.call(void 0,
|
|
|
7980
7988
|
(entries) => {
|
|
7981
7989
|
const [entry] = entries;
|
|
7982
7990
|
if (entry.isIntersecting && !isFetchingRef.current) {
|
|
7983
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
7991
|
+
_optionalChain([onLoadMoreRef, 'access', _116 => _116.current, 'optionalCall', _117 => _117()]);
|
|
7984
7992
|
}
|
|
7985
7993
|
},
|
|
7986
7994
|
{ root: scrollContainer, rootMargin: "100px", threshold: 0.1 }
|
|
@@ -8096,7 +8104,7 @@ function isSameOriginAbsoluteHref(href) {
|
|
|
8096
8104
|
function computeIsNewTab(runtime, href, targetPlatform) {
|
|
8097
8105
|
if (!href) return false;
|
|
8098
8106
|
if (runtime.navigation.mode === "embed") return !isSameOriginAbsoluteHref(href);
|
|
8099
|
-
return _nullishCoalesce(_optionalChain([runtime, 'access',
|
|
8107
|
+
return _nullishCoalesce(_optionalChain([runtime, 'access', _118 => _118.navigation, 'access', _119 => _119.decideNewTab, 'optionalCall', _120 => _120({ href, targetPlatform })]), () => ( decideNewTab({
|
|
8100
8108
|
href,
|
|
8101
8109
|
targetPlatform,
|
|
8102
8110
|
currentSource: _nullishCoalesce(runtime.source, () => ( ""))
|
|
@@ -8160,7 +8168,7 @@ function resolveExternalNavigation(args) {
|
|
|
8160
8168
|
function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
|
|
8161
8169
|
const isNewTab = runtime ? computeIsNewTab(runtime, href, _nullishCoalesce(targetPlatform, () => ( null))) : false;
|
|
8162
8170
|
if (isNewTab) {
|
|
8163
|
-
if (_optionalChain([runtime, 'optionalAccess',
|
|
8171
|
+
if (_optionalChain([runtime, 'optionalAccess', _121 => _121.navigation, 'access', _122 => _122.openExternal])) runtime.navigation.openExternal(href);
|
|
8164
8172
|
else window.open(href, "_blank", NEW_TAB_FEATURES);
|
|
8165
8173
|
return;
|
|
8166
8174
|
}
|
|
@@ -8168,7 +8176,7 @@ function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
|
|
|
8168
8176
|
if (target.includes("#") && _chunkDCIB6AK3cjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunkDCIB6AK3cjs.STICKY_HEADER_OFFSET_PX })) {
|
|
8169
8177
|
return;
|
|
8170
8178
|
}
|
|
8171
|
-
const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess',
|
|
8179
|
+
const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _123 => _123.navigation, 'access', _124 => _124.navigate, 'optionalCall', _125 => _125({ href, path, targetPlatform })]), () => ( false));
|
|
8172
8180
|
if (!handled) {
|
|
8173
8181
|
if (fallbackNavigate) fallbackNavigate(target);
|
|
8174
8182
|
else window.location.assign(target);
|
|
@@ -8233,7 +8241,7 @@ function NavLinkAnchorViaRuntime({
|
|
|
8233
8241
|
path,
|
|
8234
8242
|
targetPlatform
|
|
8235
8243
|
}, router.push);
|
|
8236
|
-
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
8244
|
+
if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _126 => _126.closeChat])) panel.closeChat();
|
|
8237
8245
|
};
|
|
8238
8246
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8239
8247
|
"a",
|
|
@@ -8358,7 +8366,7 @@ function EntityAuthorCard({
|
|
|
8358
8366
|
renderEmptyAuthor = false,
|
|
8359
8367
|
className
|
|
8360
8368
|
}) {
|
|
8361
|
-
const hasAuthor = !!_optionalChain([author, 'optionalAccess',
|
|
8369
|
+
const hasAuthor = !!_optionalChain([author, 'optionalAccess', _127 => _127.full_name]);
|
|
8362
8370
|
if (!hasAuthor && !renderEmptyAuthor) return null;
|
|
8363
8371
|
const effectiveAuthor = hasAuthor ? author : EMPTY_AUTHOR_PLACEHOLDER;
|
|
8364
8372
|
const formatted = publishedAt ? formatDate(publishedAt) : "";
|
|
@@ -8694,8 +8702,8 @@ function AdminContentCard({
|
|
|
8694
8702
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-['DM_Sans'] font-bold text-ods-text-primary text-[18px] leading-snug line-clamp-2 break-words", children: title }),
|
|
8695
8703
|
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] text-ods-text-secondary truncate", children: subtitle }),
|
|
8696
8704
|
summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-relaxed text-ods-text-secondary line-clamp-2", children: summary }),
|
|
8697
|
-
(Number(_optionalChain([platforms, 'optionalAccess',
|
|
8698
|
-
_optionalChain([platforms, 'optionalAccess',
|
|
8705
|
+
(Number(_optionalChain([platforms, 'optionalAccess', _128 => _128.length])) > 0 || badges) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 flex-wrap", children: [
|
|
8706
|
+
_optionalChain([platforms, 'optionalAccess', _129 => _129.map, 'call', _130 => _130((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8699
8707
|
PlatformBadge,
|
|
8700
8708
|
{
|
|
8701
8709
|
platform: { id: p.id || p.platform_id || "", name: p.name, display_name: p.display_name || p.name },
|
|
@@ -8751,8 +8759,8 @@ function WhatIShippedCard({ entry, placeholderUrl, actions, anchorProps, classNa
|
|
|
8751
8759
|
) : null,
|
|
8752
8760
|
meta: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
8753
8761
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2 min-w-0", children: [
|
|
8754
|
-
_optionalChain([entry, 'access',
|
|
8755
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _nullishCoalesce(_optionalChain([entry, 'access',
|
|
8762
|
+
_optionalChain([entry, 'access', _131 => _131.author, 'optionalAccess', _132 => _132.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: _nullishCoalesce(getProxiedImageUrl2(entry.author.avatar_url), () => ( entry.author.avatar_url)), alt: "", className: "h-5 w-5 rounded-full object-cover shrink-0" }) : null,
|
|
8763
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _nullishCoalesce(_optionalChain([entry, 'access', _133 => _133.author, 'optionalAccess', _134 => _134.full_name]), () => ( "")) })
|
|
8756
8764
|
] }),
|
|
8757
8765
|
month ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: month }) : null
|
|
8758
8766
|
] }),
|
|
@@ -8837,7 +8845,7 @@ function fetchPriorityProp(priority) {
|
|
|
8837
8845
|
|
|
8838
8846
|
if (typeof window !== "undefined") {
|
|
8839
8847
|
const w = window;
|
|
8840
|
-
if (!_optionalChain([w, 'access',
|
|
8848
|
+
if (!_optionalChain([w, 'access', _135 => _135.chrome, 'optionalAccess', _136 => _136.cast])) {
|
|
8841
8849
|
w.chrome = { ..._nullishCoalesce(w.chrome, () => ( {})), cast: { isAvailable: false } };
|
|
8842
8850
|
}
|
|
8843
8851
|
}
|
|
@@ -9027,7 +9035,7 @@ function YouTubeFacadeInner({
|
|
|
9027
9035
|
const iframe = iframeRef.current;
|
|
9028
9036
|
if (!iframe) return;
|
|
9029
9037
|
function subscribe() {
|
|
9030
|
-
_optionalChain([iframe, 'optionalAccess',
|
|
9038
|
+
_optionalChain([iframe, 'optionalAccess', _137 => _137.contentWindow, 'optionalAccess', _138 => _138.postMessage, 'call', _139 => _139(
|
|
9031
9039
|
'{"event":"listening"}',
|
|
9032
9040
|
YT_NOCOOKIE_ORIGIN
|
|
9033
9041
|
)]);
|
|
@@ -9045,13 +9053,13 @@ function YouTubeFacadeInner({
|
|
|
9045
9053
|
return;
|
|
9046
9054
|
}
|
|
9047
9055
|
if (!payload || payload.event !== "infoDelivery") return;
|
|
9048
|
-
const state = _optionalChain([payload, 'access',
|
|
9056
|
+
const state = _optionalChain([payload, 'access', _140 => _140.info, 'optionalAccess', _141 => _141.playerState]);
|
|
9049
9057
|
if (typeof state !== "number") return;
|
|
9050
9058
|
if (state === YT_STATE_PLAYING) {
|
|
9051
9059
|
if (blurTimer !== null) return;
|
|
9052
9060
|
blurTimer = setTimeout(() => {
|
|
9053
9061
|
blurTimer = null;
|
|
9054
|
-
_optionalChain([iframeRef, 'access',
|
|
9062
|
+
_optionalChain([iframeRef, 'access', _142 => _142.current, 'optionalAccess', _143 => _143.blur, 'call', _144 => _144()]);
|
|
9055
9063
|
}, YT_PLAYING_BLUR_DELAY_MS);
|
|
9056
9064
|
return;
|
|
9057
9065
|
}
|
|
@@ -9657,7 +9665,7 @@ function ProductReleaseCard({
|
|
|
9657
9665
|
changelogCounts
|
|
9658
9666
|
}) {
|
|
9659
9667
|
if (size === "lg") {
|
|
9660
|
-
const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess',
|
|
9668
|
+
const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _145 => _145.features]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _146 => _146.fixes]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _147 => _147.improvements]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _148 => _148.breaking]), () => ( 0)));
|
|
9661
9669
|
const valueCells = [
|
|
9662
9670
|
releaseType && releaseTypeBadgeColor ? {
|
|
9663
9671
|
value: releaseType.toUpperCase(),
|
|
@@ -9676,7 +9684,7 @@ function ProductReleaseCard({
|
|
|
9676
9684
|
uppercase: false
|
|
9677
9685
|
} : { value: "\u2014", label: "Released", uppercase: false }
|
|
9678
9686
|
];
|
|
9679
|
-
const effectiveAuthor = _optionalChain([author, 'optionalAccess',
|
|
9687
|
+
const effectiveAuthor = _optionalChain([author, 'optionalAccess', _149 => _149.full_name]) ? author : { full_name: "\u2014", avatar_url: null, job_title: "Unknown" };
|
|
9680
9688
|
const gridColsClass = "md:grid-cols-4";
|
|
9681
9689
|
const dividerClass = "border-b md:border-b-0 md:border-r border-ods-border";
|
|
9682
9690
|
const frameClass = _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -10089,10 +10097,10 @@ function buildProductReleaseCardProps(item) {
|
|
|
10089
10097
|
job_title: release.author.job_title
|
|
10090
10098
|
} : void 0,
|
|
10091
10099
|
changelogCounts: {
|
|
10092
|
-
features: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10093
|
-
fixes: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10094
|
-
improvements: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10095
|
-
breaking: _nullishCoalesce(_optionalChain([release, 'access',
|
|
10100
|
+
features: _nullishCoalesce(_optionalChain([release, 'access', _150 => _150.features_added, 'optionalAccess', _151 => _151.length]), () => ( 0)),
|
|
10101
|
+
fixes: _nullishCoalesce(_optionalChain([release, 'access', _152 => _152.bugs_fixed, 'optionalAccess', _153 => _153.length]), () => ( 0)),
|
|
10102
|
+
improvements: _nullishCoalesce(_optionalChain([release, 'access', _154 => _154.improvements, 'optionalAccess', _155 => _155.length]), () => ( 0)),
|
|
10103
|
+
breaking: _nullishCoalesce(_optionalChain([release, 'access', _156 => _156.breaking_changes, 'optionalAccess', _157 => _157.length]), () => ( 0))
|
|
10096
10104
|
}
|
|
10097
10105
|
};
|
|
10098
10106
|
}
|
|
@@ -10220,7 +10228,7 @@ function BlogCard({
|
|
|
10220
10228
|
const displayImage = post.featured_image && !imageError ? post.featured_image : placeholderUrl;
|
|
10221
10229
|
if (size === "sm") {
|
|
10222
10230
|
const dateStr2 = post.published_at ? new Date(post.published_at).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric", timeZone: "UTC" }) : "";
|
|
10223
|
-
const firstCategory = _optionalChain([post, 'access',
|
|
10231
|
+
const firstCategory = _optionalChain([post, 'access', _158 => _158.categories, 'optionalAccess', _159 => _159.find, 'call', _160 => _160((c) => c && c.name), 'optionalAccess', _161 => _161.name]);
|
|
10224
10232
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10225
10233
|
"a",
|
|
10226
10234
|
{
|
|
@@ -10426,14 +10434,14 @@ function CaseStudyCard({
|
|
|
10426
10434
|
"img",
|
|
10427
10435
|
{
|
|
10428
10436
|
src: coverImage,
|
|
10429
|
-
alt: `${_optionalChain([study, 'access',
|
|
10437
|
+
alt: `${_optionalChain([study, 'access', _162 => _162.msp, 'optionalAccess', _163 => _163.name]) || study.title} cover`,
|
|
10430
10438
|
className: "absolute inset-0 block w-full h-full object-contain",
|
|
10431
10439
|
onError: hideOnError
|
|
10432
10440
|
}
|
|
10433
10441
|
) : null }),
|
|
10434
10442
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
10435
10443
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: study.title }) }),
|
|
10436
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([study, 'access',
|
|
10444
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([study, 'access', _164 => _164.msp, 'optionalAccess', _165 => _165.name]), _optionalChain([study, 'access', _166 => _166.user, 'optionalAccess', _167 => _167.full_name])].filter(Boolean).join(" \xB7 ") || "Case study" }) }),
|
|
10437
10445
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: study.summary || COMPACT_CARD_ROW_FILLER }) })
|
|
10438
10446
|
] })
|
|
10439
10447
|
] });
|
|
@@ -10443,7 +10451,7 @@ function CaseStudyCard({
|
|
|
10443
10451
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10444
10452
|
{
|
|
10445
10453
|
src: coverImage,
|
|
10446
|
-
alt: _optionalChain([study, 'access',
|
|
10454
|
+
alt: _optionalChain([study, 'access', _168 => _168.msp, 'optionalAccess', _169 => _169.name]) || study.title,
|
|
10447
10455
|
className: "w-full h-full object-cover",
|
|
10448
10456
|
sizes: "(min-width: 1545px) 515px, (min-width: 1280px) 33vw, (min-width: 800px) 50vw, 100vw",
|
|
10449
10457
|
fill: true,
|
|
@@ -10454,18 +10462,18 @@ function CaseStudyCard({
|
|
|
10454
10462
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[72px] flex items-center shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-primary line-clamp-3 break-words", children: study.title }) }),
|
|
10455
10463
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[60px] flex items-center shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 min-w-0 w-full", children: [
|
|
10456
10464
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
10457
|
-
_optionalChain([study, 'access',
|
|
10465
|
+
_optionalChain([study, 'access', _170 => _170.user, 'optionalAccess', _171 => _171.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10458
10466
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10459
10467
|
{
|
|
10460
10468
|
src: study.user.avatar_url,
|
|
10461
|
-
alt: _optionalChain([study, 'access',
|
|
10469
|
+
alt: _optionalChain([study, 'access', _172 => _172.user, 'optionalAccess', _173 => _173.full_name]) || "User",
|
|
10462
10470
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border",
|
|
10463
10471
|
width: 48,
|
|
10464
10472
|
height: 48,
|
|
10465
10473
|
unoptimized: true
|
|
10466
10474
|
}
|
|
10467
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([study, 'access',
|
|
10468
|
-
_optionalChain([study, 'access',
|
|
10475
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([study, 'access', _174 => _174.user, 'optionalAccess', _175 => _175.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
10476
|
+
_optionalChain([study, 'access', _176 => _176.msp, 'optionalAccess', _177 => _177.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10469
10477
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10470
10478
|
{
|
|
10471
10479
|
src: study.msp.icon_url,
|
|
@@ -10479,13 +10487,13 @@ function CaseStudyCard({
|
|
|
10479
10487
|
] }),
|
|
10480
10488
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
10481
10489
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
10482
|
-
_optionalChain([study, 'access',
|
|
10483
|
-
_optionalChain([study, 'access',
|
|
10490
|
+
_optionalChain([study, 'access', _178 => _178.user, 'optionalAccess', _179 => _179.full_name]) || "Anonymous",
|
|
10491
|
+
_optionalChain([study, 'access', _180 => _180.msp, 'optionalAccess', _181 => _181.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
10484
10492
|
" \u2022 ",
|
|
10485
10493
|
study.msp.name
|
|
10486
10494
|
] })
|
|
10487
10495
|
] }),
|
|
10488
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access',
|
|
10496
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access', _182 => _182.user, 'optionalAccess', _183 => _183.job_title]) || "\xA0" })
|
|
10489
10497
|
] })
|
|
10490
10498
|
] }) })
|
|
10491
10499
|
] }) });
|
|
@@ -10568,7 +10576,7 @@ function CustomerInterviewCard({
|
|
|
10568
10576
|
] }),
|
|
10569
10577
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
10570
10578
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: interview.title }) }),
|
|
10571
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([interview, 'access',
|
|
10579
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([interview, 'access', _184 => _184.user, 'optionalAccess', _185 => _185.full_name]), _optionalChain([interview, 'access', _186 => _186.msp, 'optionalAccess', _187 => _187.name])].filter(Boolean).join(" \xB7 ") || "Customer interview" }) }),
|
|
10572
10580
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: interview.video_summary || COMPACT_CARD_ROW_FILLER }) })
|
|
10573
10581
|
] })
|
|
10574
10582
|
] });
|
|
@@ -10590,15 +10598,15 @@ function CustomerInterviewCard({
|
|
|
10590
10598
|
interview.video_summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-[20px] text-ods-text-secondary line-clamp-3", children: interview.video_summary }) }),
|
|
10591
10599
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[60px] flex items-center shrink-0 mt-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 min-w-0 w-full", children: [
|
|
10592
10600
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
10593
|
-
_optionalChain([interview, 'access',
|
|
10601
|
+
_optionalChain([interview, 'access', _188 => _188.user, 'optionalAccess', _189 => _189.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10594
10602
|
"img",
|
|
10595
10603
|
{
|
|
10596
10604
|
src: interview.user.avatar_url,
|
|
10597
|
-
alt: _optionalChain([interview, 'access',
|
|
10605
|
+
alt: _optionalChain([interview, 'access', _190 => _190.user, 'optionalAccess', _191 => _191.full_name]) || "Customer",
|
|
10598
10606
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border"
|
|
10599
10607
|
}
|
|
10600
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([interview, 'access',
|
|
10601
|
-
_optionalChain([interview, 'access',
|
|
10608
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([interview, 'access', _192 => _192.user, 'optionalAccess', _193 => _193.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
10609
|
+
_optionalChain([interview, 'access', _194 => _194.msp, 'optionalAccess', _195 => _195.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10602
10610
|
"img",
|
|
10603
10611
|
{
|
|
10604
10612
|
src: interview.msp.icon_url,
|
|
@@ -10609,13 +10617,13 @@ function CustomerInterviewCard({
|
|
|
10609
10617
|
] }),
|
|
10610
10618
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
10611
10619
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
10612
|
-
_optionalChain([interview, 'access',
|
|
10613
|
-
_optionalChain([interview, 'access',
|
|
10620
|
+
_optionalChain([interview, 'access', _196 => _196.user, 'optionalAccess', _197 => _197.full_name]) || "Anonymous",
|
|
10621
|
+
_optionalChain([interview, 'access', _198 => _198.msp, 'optionalAccess', _199 => _199.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
10614
10622
|
" \u2022 ",
|
|
10615
10623
|
interview.msp.name
|
|
10616
10624
|
] })
|
|
10617
10625
|
] }),
|
|
10618
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access',
|
|
10626
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access', _200 => _200.user, 'optionalAccess', _201 => _201.job_title]) || " " })
|
|
10619
10627
|
] })
|
|
10620
10628
|
] }) })
|
|
10621
10629
|
] }) });
|
|
@@ -10628,7 +10636,7 @@ function CustomerInterviewCard({
|
|
|
10628
10636
|
function formatInvestorUpdatePeriod(start, end, options) {
|
|
10629
10637
|
if (!start && !end) return "";
|
|
10630
10638
|
const fmt = (d) => new Date(d).toLocaleDateString("en-US", {
|
|
10631
|
-
month: _optionalChain([options, 'optionalAccess',
|
|
10639
|
+
month: _optionalChain([options, 'optionalAccess', _202 => _202.monthFormat]) || "short",
|
|
10632
10640
|
year: "numeric",
|
|
10633
10641
|
// Pin to UTC so SSR (Vercel = UTC) and the client agree (React #418).
|
|
10634
10642
|
timeZone: "UTC"
|
|
@@ -10720,7 +10728,7 @@ function InvestorUpdateCard({
|
|
|
10720
10728
|
imageUrl: update.featured_image,
|
|
10721
10729
|
placeholderUrl,
|
|
10722
10730
|
title: update.title || `Update #${update.update_number || "?"}`,
|
|
10723
|
-
summary: _optionalChain([update, 'access',
|
|
10731
|
+
summary: _optionalChain([update, 'access', _203 => _203.strategic_update, 'optionalAccess', _204 => _204.slice, 'call', _205 => _205(0, 120)]) || _optionalChain([update, 'access', _206 => _206.content, 'optionalAccess', _207 => _207.slice, 'call', _208 => _208(0, 120)]) || "No description",
|
|
10724
10732
|
badges: update.update_number ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "px-2 py-0.5 rounded text-xs font-medium bg-ods-accent/10 text-ods-accent", children: [
|
|
10725
10733
|
"#",
|
|
10726
10734
|
update.update_number
|
|
@@ -10912,7 +10920,7 @@ function OnboardingGuideCard({
|
|
|
10912
10920
|
const compactCover = coverImage || placeholderUrl || null;
|
|
10913
10921
|
const hasVideoCover = !guide.featured_image && !!guide.main_video_thumbnail;
|
|
10914
10922
|
const summary2 = stripMarkdownPreview(guide.video_summary || guide.content || "");
|
|
10915
|
-
const author = _optionalChain([guide, 'access',
|
|
10923
|
+
const author = _optionalChain([guide, 'access', _209 => _209.author, 'optionalAccess', _210 => _210.full_name, 'optionalAccess', _211 => _211.trim, 'call', _212 => _212()]) || "";
|
|
10916
10924
|
const subtitleParts = [
|
|
10917
10925
|
`Step ${guide.step_order}`,
|
|
10918
10926
|
guide.section,
|
|
@@ -11288,7 +11296,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11288
11296
|
if (!isInputControlled) {
|
|
11289
11297
|
setInternalInputValue(value);
|
|
11290
11298
|
}
|
|
11291
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
11299
|
+
_optionalChain([onInputChange, 'optionalCall', _213 => _213(value, reason)]);
|
|
11292
11300
|
};
|
|
11293
11301
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
11294
11302
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
@@ -11316,8 +11324,8 @@ function AutocompleteInner(props, ref) {
|
|
|
11316
11324
|
if (!showHiddenTags) return;
|
|
11317
11325
|
const handleClick = (e) => {
|
|
11318
11326
|
const target = e.target;
|
|
11319
|
-
const inButton = _optionalChain([hiddenTagsRef, 'access',
|
|
11320
|
-
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access',
|
|
11327
|
+
const inButton = _optionalChain([hiddenTagsRef, 'access', _214 => _214.current, 'optionalAccess', _215 => _215.contains, 'call', _216 => _216(target)]);
|
|
11328
|
+
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _217 => _217.current, 'optionalAccess', _218 => _218.contains, 'call', _219 => _219(target)]);
|
|
11321
11329
|
if (!inButton && !inPopup) {
|
|
11322
11330
|
setShowHiddenTags(false);
|
|
11323
11331
|
}
|
|
@@ -11362,7 +11370,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11362
11370
|
}
|
|
11363
11371
|
updateInputValue("", "reset");
|
|
11364
11372
|
setIsOpen(false);
|
|
11365
|
-
_optionalChain([onCreateOption, 'optionalCall',
|
|
11373
|
+
_optionalChain([onCreateOption, 'optionalCall', _220 => _220(trimmed)]);
|
|
11366
11374
|
};
|
|
11367
11375
|
_react.useEffect.call(void 0, () => {
|
|
11368
11376
|
setHighlightedIndex(-1);
|
|
@@ -11386,7 +11394,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11386
11394
|
props.onChange([...valueArray, option.value]);
|
|
11387
11395
|
}
|
|
11388
11396
|
updateInputValue("", "reset");
|
|
11389
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11397
|
+
_optionalChain([autoLimitTags, 'access', _221 => _221.inputRef, 'access', _222 => _222.current, 'optionalAccess', _223 => _223.focus, 'call', _224 => _224()]);
|
|
11390
11398
|
} else {
|
|
11391
11399
|
;
|
|
11392
11400
|
props.onChange(option.value);
|
|
@@ -11407,7 +11415,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11407
11415
|
if (!isInputControlled) {
|
|
11408
11416
|
setInternalInputValue("");
|
|
11409
11417
|
}
|
|
11410
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
11418
|
+
_optionalChain([onInputChange, 'optionalCall', _225 => _225("", "clear")]);
|
|
11411
11419
|
setIsOpen(false);
|
|
11412
11420
|
};
|
|
11413
11421
|
const handleKeyDown = (e) => {
|
|
@@ -11481,7 +11489,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11481
11489
|
),
|
|
11482
11490
|
onClick: () => {
|
|
11483
11491
|
if (!disabled) {
|
|
11484
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11492
|
+
_optionalChain([autoLimitTags, 'access', _226 => _226.inputRef, 'access', _227 => _227.current, 'optionalAccess', _228 => _228.focus, 'call', _229 => _229()]);
|
|
11485
11493
|
openDropdown();
|
|
11486
11494
|
}
|
|
11487
11495
|
},
|
|
@@ -11597,10 +11605,10 @@ function AutocompleteInner(props, ref) {
|
|
|
11597
11605
|
align: "start",
|
|
11598
11606
|
onOpenAutoFocus: (e) => {
|
|
11599
11607
|
e.preventDefault();
|
|
11600
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11608
|
+
_optionalChain([autoLimitTags, 'access', _230 => _230.inputRef, 'access', _231 => _231.current, 'optionalAccess', _232 => _232.focus, 'call', _233 => _233()]);
|
|
11601
11609
|
},
|
|
11602
11610
|
onInteractOutside: (e) => {
|
|
11603
|
-
if (_optionalChain([containerRef, 'access',
|
|
11611
|
+
if (_optionalChain([containerRef, 'access', _234 => _234.current, 'optionalAccess', _235 => _235.contains, 'call', _236 => _236(e.target)])) {
|
|
11604
11612
|
e.preventDefault();
|
|
11605
11613
|
}
|
|
11606
11614
|
},
|
|
@@ -12013,7 +12021,7 @@ var defaultFormatDate = (date) => {
|
|
|
12013
12021
|
});
|
|
12014
12022
|
};
|
|
12015
12023
|
var formatDateRange2 = (range, formatFn) => {
|
|
12016
|
-
if (!_optionalChain([range, 'optionalAccess',
|
|
12024
|
+
if (!_optionalChain([range, 'optionalAccess', _237 => _237.from])) return "";
|
|
12017
12025
|
if (!range.to) return formatFn(range.from);
|
|
12018
12026
|
return `${formatFn(range.from)} - ${formatFn(range.to)}`;
|
|
12019
12027
|
};
|
|
@@ -12048,16 +12056,16 @@ function DatePickerCalendar({
|
|
|
12048
12056
|
);
|
|
12049
12057
|
const [hoveredDate, setHoveredDate] = React38.useState(void 0);
|
|
12050
12058
|
const rangeSelected = draftRange;
|
|
12051
|
-
const hasCompleteRange = mode === "range" && !!_optionalChain([rangeSelected, 'optionalAccess',
|
|
12059
|
+
const hasCompleteRange = mode === "range" && !!_optionalChain([rangeSelected, 'optionalAccess', _238 => _238.from]) && !!_optionalChain([rangeSelected, 'optionalAccess', _239 => _239.to]) && rangeSelected.from.getTime() !== rangeSelected.to.getTime();
|
|
12052
12060
|
const isPreviewDate = (date) => {
|
|
12053
|
-
if (!_optionalChain([draftRange, 'optionalAccess',
|
|
12061
|
+
if (!_optionalChain([draftRange, 'optionalAccess', _240 => _240.from]) || draftRange.to || !hoveredDate) return false;
|
|
12054
12062
|
const start = Math.min(draftRange.from.getTime(), hoveredDate.getTime());
|
|
12055
12063
|
const end = Math.max(draftRange.from.getTime(), hoveredDate.getTime());
|
|
12056
12064
|
return date.getTime() >= start && date.getTime() <= end;
|
|
12057
12065
|
};
|
|
12058
12066
|
const handleRangeSelect = (triggerDate) => {
|
|
12059
12067
|
if (!triggerDate) return;
|
|
12060
|
-
if (!_optionalChain([draftRange, 'optionalAccess',
|
|
12068
|
+
if (!_optionalChain([draftRange, 'optionalAccess', _241 => _241.from]) || draftRange.to) {
|
|
12061
12069
|
setDraftRange({ from: triggerDate, to: void 0 });
|
|
12062
12070
|
return;
|
|
12063
12071
|
}
|
|
@@ -12122,7 +12130,7 @@ function DatePickerCalendar({
|
|
|
12122
12130
|
range_middle: "range-middle !bg-[var(--ods-open-yellow-light)] !text-ods-card !font-medium !rounded-none hover:!bg-[var(--ods-open-yellow-light)]"
|
|
12123
12131
|
};
|
|
12124
12132
|
const [month, setMonth] = React38.useState(
|
|
12125
|
-
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess',
|
|
12133
|
+
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess', _242 => _242.from]) || today
|
|
12126
12134
|
);
|
|
12127
12135
|
const handlePreviousMonth = () => {
|
|
12128
12136
|
setMonth((prev) => {
|
|
@@ -12354,14 +12362,14 @@ function DatePicker(props) {
|
|
|
12354
12362
|
}, [props.mode, props.value, formatDate2]);
|
|
12355
12363
|
const handleSelect = (value) => {
|
|
12356
12364
|
if (props.mode === "single") {
|
|
12357
|
-
_optionalChain([props, 'access',
|
|
12365
|
+
_optionalChain([props, 'access', _243 => _243.onChange, 'optionalCall', _244 => _244(value)]);
|
|
12358
12366
|
if (value) {
|
|
12359
12367
|
setOpen(false);
|
|
12360
12368
|
}
|
|
12361
12369
|
} else {
|
|
12362
12370
|
const range = value;
|
|
12363
|
-
_optionalChain([props, 'access',
|
|
12364
|
-
if (_optionalChain([range, 'optionalAccess',
|
|
12371
|
+
_optionalChain([props, 'access', _245 => _245.onChange, 'optionalCall', _246 => _246(range)]);
|
|
12372
|
+
if (_optionalChain([range, 'optionalAccess', _247 => _247.from]) && _optionalChain([range, 'optionalAccess', _248 => _248.to])) {
|
|
12365
12373
|
setOpen(false);
|
|
12366
12374
|
}
|
|
12367
12375
|
}
|
|
@@ -12468,7 +12476,7 @@ function DatePickerInput({
|
|
|
12468
12476
|
if (newDate && value) {
|
|
12469
12477
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
12470
12478
|
}
|
|
12471
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12479
|
+
_optionalChain([onChange, 'optionalCall', _249 => _249(newDate)]);
|
|
12472
12480
|
if (newDate) {
|
|
12473
12481
|
setOpen(false);
|
|
12474
12482
|
}
|
|
@@ -12485,12 +12493,12 @@ function DatePickerInput({
|
|
|
12485
12493
|
}
|
|
12486
12494
|
}
|
|
12487
12495
|
date.setHours(hours);
|
|
12488
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12496
|
+
_optionalChain([onChange, 'optionalCall', _250 => _250(date)]);
|
|
12489
12497
|
};
|
|
12490
12498
|
const handleMinuteChange = (newMinute) => {
|
|
12491
12499
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
12492
12500
|
date.setMinutes(parseInt(newMinute, 10));
|
|
12493
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12501
|
+
_optionalChain([onChange, 'optionalCall', _251 => _251(date)]);
|
|
12494
12502
|
};
|
|
12495
12503
|
const handlePeriodChange = (newPeriod) => {
|
|
12496
12504
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
@@ -12501,7 +12509,7 @@ function DatePickerInput({
|
|
|
12501
12509
|
hours += 12;
|
|
12502
12510
|
}
|
|
12503
12511
|
date.setHours(hours);
|
|
12504
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12512
|
+
_optionalChain([onChange, 'optionalCall', _252 => _252(date)]);
|
|
12505
12513
|
};
|
|
12506
12514
|
const hourOptions = React38.useMemo(() => generateHourOptions(use24HourFormat), [use24HourFormat]);
|
|
12507
12515
|
const minuteOptions = React38.useMemo(() => generateMinuteOptions(), []);
|
|
@@ -12662,7 +12670,7 @@ function DatePickerInputSimple({
|
|
|
12662
12670
|
if (newDate && value) {
|
|
12663
12671
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
12664
12672
|
}
|
|
12665
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12673
|
+
_optionalChain([onChange, 'optionalCall', _253 => _253(newDate)]);
|
|
12666
12674
|
if (newDate) {
|
|
12667
12675
|
setOpen(false);
|
|
12668
12676
|
}
|
|
@@ -12671,7 +12679,7 @@ function DatePickerInputSimple({
|
|
|
12671
12679
|
const [hours, minutes] = newTime.split(":").map(Number);
|
|
12672
12680
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
12673
12681
|
date.setHours(hours, minutes, 0, 0);
|
|
12674
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12682
|
+
_optionalChain([onChange, 'optionalCall', _254 => _254(date)]);
|
|
12675
12683
|
};
|
|
12676
12684
|
const timeOptions = React38.useMemo(
|
|
12677
12685
|
() => generateTimeOptions(timeInterval, use24HourFormat),
|
|
@@ -12770,17 +12778,17 @@ function DateFilterMenu({
|
|
|
12770
12778
|
if (next) {
|
|
12771
12779
|
resetDraft();
|
|
12772
12780
|
} else {
|
|
12773
|
-
_optionalChain([onClose, 'optionalCall',
|
|
12781
|
+
_optionalChain([onClose, 'optionalCall', _255 => _255()]);
|
|
12774
12782
|
}
|
|
12775
12783
|
setOpen(next);
|
|
12776
12784
|
};
|
|
12777
12785
|
const handleApply = () => {
|
|
12778
12786
|
const result = mode === "single" ? { sort: draftSort, date: draftSelected } : { sort: draftSort, range: draftSelected };
|
|
12779
|
-
_optionalChain([onApply, 'optionalCall',
|
|
12787
|
+
_optionalChain([onApply, 'optionalCall', _256 => _256(result)]);
|
|
12780
12788
|
setOpen(false);
|
|
12781
12789
|
};
|
|
12782
12790
|
const handleClose = () => {
|
|
12783
|
-
_optionalChain([onClose, 'optionalCall',
|
|
12791
|
+
_optionalChain([onClose, 'optionalCall', _257 => _257()]);
|
|
12784
12792
|
setOpen(false);
|
|
12785
12793
|
};
|
|
12786
12794
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Popover.Root, { open, onOpenChange: handleOpenChange, children: [
|
|
@@ -12890,7 +12898,7 @@ function DurationInput({ value, onChange, invalid, className }) {
|
|
|
12890
12898
|
setSegments((prev) => compose(prev) === value ? prev : split(value));
|
|
12891
12899
|
}, [value]);
|
|
12892
12900
|
const focusSegment = (i) => {
|
|
12893
|
-
const el = _optionalChain([refs, 'access',
|
|
12901
|
+
const el = _optionalChain([refs, 'access', _258 => _258[i], 'optionalAccess', _259 => _259.current]);
|
|
12894
12902
|
if (!el) return;
|
|
12895
12903
|
el.focus();
|
|
12896
12904
|
el.select();
|
|
@@ -13078,36 +13086,43 @@ function InfoCard({ data, className = "" }) {
|
|
|
13078
13086
|
className
|
|
13079
13087
|
),
|
|
13080
13088
|
children: [
|
|
13081
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "p-[var(--spacing-system-m)] flex flex-col gap-[var(--spacing-system-
|
|
13082
|
-
data.title && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex
|
|
13083
|
-
/* @__PURE__ */ _jsxruntime.
|
|
13084
|
-
|
|
13089
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "p-[var(--spacing-system-m)] flex flex-col gap-[var(--spacing-system-l)] items-start w-full", children: [
|
|
13090
|
+
(data.title || data.subtitle) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col items-start self-stretch w-full", children: [
|
|
13091
|
+
data.title && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)] self-stretch", children: [
|
|
13092
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary truncate min-w-0", title: data.title, children: data.title }),
|
|
13093
|
+
data.icon
|
|
13094
|
+
] }),
|
|
13095
|
+
data.subtitle && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)] self-stretch", children: [
|
|
13096
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-secondary truncate min-w-0", title: data.subtitle, children: data.subtitle }),
|
|
13097
|
+
!data.title && data.icon
|
|
13098
|
+
] })
|
|
13085
13099
|
] }),
|
|
13086
|
-
data.
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
|
|
13090
|
-
|
|
13100
|
+
(data.items.length > 0 || data.progress) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)] items-start self-stretch w-full", children: [
|
|
13101
|
+
data.items.map((item, index) => {
|
|
13102
|
+
const values = Array.isArray(item.value) ? item.value : [item.value];
|
|
13103
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React114.default.Fragment, { children: values.map((val, valIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13104
|
+
InfoCardValueRow,
|
|
13105
|
+
{
|
|
13106
|
+
label: item.label,
|
|
13107
|
+
value: val,
|
|
13108
|
+
showLabel: valIndex === 0,
|
|
13109
|
+
copyable: item.copyable,
|
|
13110
|
+
icon: valIndex === 0 ? item.icon : void 0,
|
|
13111
|
+
copyAriaLabel: `Copy ${_nullishCoalesce(item.label, () => ( "value"))} ${valIndex + 1}`
|
|
13112
|
+
},
|
|
13113
|
+
`${index}-${valIndex}`
|
|
13114
|
+
)) }, index);
|
|
13115
|
+
}),
|
|
13116
|
+
data.progress && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13117
|
+
ProgressBar,
|
|
13091
13118
|
{
|
|
13092
|
-
|
|
13093
|
-
|
|
13094
|
-
|
|
13095
|
-
|
|
13096
|
-
|
|
13097
|
-
|
|
13098
|
-
|
|
13099
|
-
`${index}-${valIndex}`
|
|
13100
|
-
)) }, index);
|
|
13101
|
-
}),
|
|
13102
|
-
data.progress && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13103
|
-
ProgressBar,
|
|
13104
|
-
{
|
|
13105
|
-
progress: data.progress.value,
|
|
13106
|
-
warningThreshold: data.progress.warningThreshold,
|
|
13107
|
-
criticalThreshold: data.progress.criticalThreshold,
|
|
13108
|
-
inverted: data.progress.inverted
|
|
13109
|
-
}
|
|
13110
|
-
)
|
|
13119
|
+
progress: data.progress.value,
|
|
13120
|
+
warningThreshold: data.progress.warningThreshold,
|
|
13121
|
+
criticalThreshold: data.progress.criticalThreshold,
|
|
13122
|
+
inverted: data.progress.inverted
|
|
13123
|
+
}
|
|
13124
|
+
)
|
|
13125
|
+
] })
|
|
13111
13126
|
] }),
|
|
13112
13127
|
data.footer && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCardFooter, { footer: data.footer })
|
|
13113
13128
|
]
|
|
@@ -13220,7 +13235,7 @@ function CompactAssigneeDropdown({
|
|
|
13220
13235
|
return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
|
|
13221
13236
|
}, [filtered, currentAssignee]);
|
|
13222
13237
|
const handleSelect = (userId) => {
|
|
13223
|
-
const next = _optionalChain([currentAssignee, 'optionalAccess',
|
|
13238
|
+
const next = _optionalChain([currentAssignee, 'optionalAccess', _260 => _260.id]) === userId ? null : userId;
|
|
13224
13239
|
onAssign(next);
|
|
13225
13240
|
setIsOpen(false);
|
|
13226
13241
|
};
|
|
@@ -13285,7 +13300,7 @@ function CompactAssigneeDropdown({
|
|
|
13285
13300
|
}
|
|
13286
13301
|
) }),
|
|
13287
13302
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "max-h-80 overflow-y-auto py-[var(--spacing-system-xs)]", role: "listbox", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "Loading\u2026" }) : orderedOptions.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "No users found" }) : orderedOptions.map((opt) => {
|
|
13288
|
-
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess',
|
|
13303
|
+
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _261 => _261.id]) === opt.value;
|
|
13289
13304
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13290
13305
|
"button",
|
|
13291
13306
|
{
|
|
@@ -13354,7 +13369,7 @@ function DefaultAssigneeDropdown({
|
|
|
13354
13369
|
Autocomplete,
|
|
13355
13370
|
{
|
|
13356
13371
|
options,
|
|
13357
|
-
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess',
|
|
13372
|
+
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _262 => _262.id]), () => ( null)),
|
|
13358
13373
|
onChange: (val) => {
|
|
13359
13374
|
onAssign(val);
|
|
13360
13375
|
setIsEditing(false);
|
|
@@ -13687,7 +13702,7 @@ var NoData = React114.default.forwardRef(function NoData2({
|
|
|
13687
13702
|
...props
|
|
13688
13703
|
}, ref) {
|
|
13689
13704
|
const hasMessage = !!(icon || title || description);
|
|
13690
|
-
const hasActions = !!_optionalChain([actions, 'optionalAccess',
|
|
13705
|
+
const hasActions = !!_optionalChain([actions, 'optionalAccess', _263 => _263.length]);
|
|
13691
13706
|
const footerButton = _nullishCoalesce(button, () => ( (buttonLabel != null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13692
13707
|
_chunkQJGRP2YEcjs.Button,
|
|
13693
13708
|
{
|
|
@@ -13695,7 +13710,7 @@ var NoData = React114.default.forwardRef(function NoData2({
|
|
|
13695
13710
|
leftIcon: buttonIcon,
|
|
13696
13711
|
onClick: onButtonClick,
|
|
13697
13712
|
...buttonProps,
|
|
13698
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess',
|
|
13713
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess', _264 => _264.className])),
|
|
13699
13714
|
children: buttonLabel
|
|
13700
13715
|
}
|
|
13701
13716
|
) : null)));
|
|
@@ -13930,7 +13945,7 @@ var Switch = React48.forwardRef(({ className, checked, onCheckedChange, ...props
|
|
|
13930
13945
|
}, [checked]);
|
|
13931
13946
|
const handleCheckedChange = (newChecked) => {
|
|
13932
13947
|
setIsChecked(newChecked);
|
|
13933
|
-
_optionalChain([onCheckedChange, 'optionalCall',
|
|
13948
|
+
_optionalChain([onCheckedChange, 'optionalCall', _265 => _265(newChecked)]);
|
|
13934
13949
|
};
|
|
13935
13950
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13936
13951
|
SwitchPrimitives.Root,
|
|
@@ -14316,7 +14331,7 @@ function TagsManager({
|
|
|
14316
14331
|
const name = search.trim();
|
|
14317
14332
|
if (!name) return;
|
|
14318
14333
|
const result = await onCreateTag(name);
|
|
14319
|
-
if (_optionalChain([result, 'optionalAccess',
|
|
14334
|
+
if (_optionalChain([result, 'optionalAccess', _266 => _266.id])) {
|
|
14320
14335
|
onChange([...selectedIds, result.id]);
|
|
14321
14336
|
setSearch("");
|
|
14322
14337
|
}
|
|
@@ -14324,7 +14339,7 @@ function TagsManager({
|
|
|
14324
14339
|
const startEdit = React51.useCallback((id, name) => {
|
|
14325
14340
|
setEditingId(id);
|
|
14326
14341
|
setEditingName(name);
|
|
14327
|
-
setTimeout(() => _optionalChain([editInputRef, 'access',
|
|
14342
|
+
setTimeout(() => _optionalChain([editInputRef, 'access', _267 => _267.current, 'optionalAccess', _268 => _268.focus, 'call', _269 => _269()]), 0);
|
|
14328
14343
|
}, []);
|
|
14329
14344
|
const confirmEdit = React51.useCallback(async () => {
|
|
14330
14345
|
if (!onUpdateTag || !editingId || !editingName.trim()) return;
|
|
@@ -14351,7 +14366,7 @@ function TagsManager({
|
|
|
14351
14366
|
e.stopPropagation();
|
|
14352
14367
|
onChange([]);
|
|
14353
14368
|
setSearch("");
|
|
14354
|
-
_optionalChain([inputRef, 'access',
|
|
14369
|
+
_optionalChain([inputRef, 'access', _270 => _270.current, 'optionalAccess', _271 => _271.focus, 'call', _272 => _272()]);
|
|
14355
14370
|
},
|
|
14356
14371
|
[onChange]
|
|
14357
14372
|
);
|
|
@@ -14450,10 +14465,10 @@ function TagsManager({
|
|
|
14450
14465
|
align: "start",
|
|
14451
14466
|
onOpenAutoFocus: (e) => {
|
|
14452
14467
|
e.preventDefault();
|
|
14453
|
-
_optionalChain([inputRef, 'access',
|
|
14468
|
+
_optionalChain([inputRef, 'access', _273 => _273.current, 'optionalAccess', _274 => _274.focus, 'call', _275 => _275()]);
|
|
14454
14469
|
},
|
|
14455
14470
|
onInteractOutside: (e) => {
|
|
14456
|
-
if (_optionalChain([containerRef, 'access',
|
|
14471
|
+
if (_optionalChain([containerRef, 'access', _276 => _276.current, 'optionalAccess', _277 => _277.contains, 'call', _278 => _278(e.target)])) {
|
|
14457
14472
|
e.preventDefault();
|
|
14458
14473
|
}
|
|
14459
14474
|
},
|
|
@@ -14738,7 +14753,7 @@ var Textarea = React52.forwardRef(
|
|
|
14738
14753
|
"button",
|
|
14739
14754
|
{
|
|
14740
14755
|
type: "button",
|
|
14741
|
-
"aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess',
|
|
14756
|
+
"aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess', _279 => _279["aria-label"]]), () => ( "Submit")),
|
|
14742
14757
|
...endIconButtonProps,
|
|
14743
14758
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
14744
14759
|
// `h-6` matches the textarea's `leading-6` line box so the icon's
|
|
@@ -14752,7 +14767,7 @@ var Textarea = React52.forwardRef(
|
|
|
14752
14767
|
"cursor-pointer hover:text-ods-text-primary",
|
|
14753
14768
|
"focus-visible:outline-none focus-visible:text-ods-accent",
|
|
14754
14769
|
"disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:text-ods-text-secondary",
|
|
14755
|
-
_optionalChain([endIconButtonProps, 'optionalAccess',
|
|
14770
|
+
_optionalChain([endIconButtonProps, 'optionalAccess', _280 => _280.className])
|
|
14756
14771
|
),
|
|
14757
14772
|
children: endIcon
|
|
14758
14773
|
}
|
|
@@ -15989,19 +16004,19 @@ function TabNavigation({
|
|
|
15989
16004
|
const validTabIds = _react.useMemo.call(void 0, () => new Set(tabs.map((t) => t.id)), [tabs]);
|
|
15990
16005
|
const getInitialTab = () => {
|
|
15991
16006
|
if (isUrlSyncEnabled) {
|
|
15992
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
16007
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _281 => _281.get, 'call', _282 => _282(paramName)]) || "";
|
|
15993
16008
|
if (validTabIds.has(fromUrl)) {
|
|
15994
16009
|
return fromUrl;
|
|
15995
16010
|
}
|
|
15996
16011
|
}
|
|
15997
|
-
return defaultTab || _optionalChain([tabs, 'access',
|
|
16012
|
+
return defaultTab || _optionalChain([tabs, 'access', _283 => _283[0], 'optionalAccess', _284 => _284.id]) || "";
|
|
15998
16013
|
};
|
|
15999
16014
|
const [internalActiveTab, setInternalActiveTab] = _react.useState.call(void 0, getInitialTab);
|
|
16000
16015
|
const activeTab = isUrlSyncEnabled ? internalActiveTab : controlledActiveTab || "";
|
|
16001
16016
|
_react.useEffect.call(void 0, () => {
|
|
16002
16017
|
if (!isUrlSyncEnabled) return;
|
|
16003
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
16004
|
-
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access',
|
|
16018
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _285 => _285.get, 'call', _286 => _286(paramName)]) || "";
|
|
16019
|
+
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access', _287 => _287[0], 'optionalAccess', _288 => _288.id]) || "";
|
|
16005
16020
|
if (nextTab !== internalActiveTab) {
|
|
16006
16021
|
setInternalActiveTab(nextTab);
|
|
16007
16022
|
}
|
|
@@ -16009,13 +16024,13 @@ function TabNavigation({
|
|
|
16009
16024
|
const handleTabChange = (tabId) => {
|
|
16010
16025
|
if (isUrlSyncEnabled) {
|
|
16011
16026
|
setInternalActiveTab(tabId);
|
|
16012
|
-
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess',
|
|
16027
|
+
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess', _289 => _289.toString, 'call', _290 => _290()]));
|
|
16013
16028
|
params.set(paramName, tabId);
|
|
16014
16029
|
const method = replaceState ? "replace" : "push";
|
|
16015
16030
|
router[method](`${pathname}?${params.toString()}`);
|
|
16016
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
16031
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _291 => _291(tabId)]);
|
|
16017
16032
|
} else {
|
|
16018
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
16033
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _292 => _292(tabId)]);
|
|
16019
16034
|
}
|
|
16020
16035
|
};
|
|
16021
16036
|
const scrollRef = _react.useRef.call(void 0, null);
|
|
@@ -16103,7 +16118,7 @@ function TabNavigation({
|
|
|
16103
16118
|
var getTabById = (tabs, tabId) => tabs.find((tab) => tab.id === tabId);
|
|
16104
16119
|
var getTabComponent = (tabs, tabId) => {
|
|
16105
16120
|
const tab = getTabById(tabs, tabId);
|
|
16106
|
-
return _optionalChain([tab, 'optionalAccess',
|
|
16121
|
+
return _optionalChain([tab, 'optionalAccess', _293 => _293.component]) || null;
|
|
16107
16122
|
};
|
|
16108
16123
|
|
|
16109
16124
|
// src/components/ui/alert.tsx
|
|
@@ -16365,13 +16380,13 @@ var SocialEmbedCache = class _SocialEmbedCache {
|
|
|
16365
16380
|
errorData = await response.json();
|
|
16366
16381
|
} catch (e19) {
|
|
16367
16382
|
}
|
|
16368
|
-
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess',
|
|
16383
|
+
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess', _294 => _294.error]) && _optionalChain([errorData, 'optionalAccess', _295 => _295.message])) {
|
|
16369
16384
|
console.log(`\u{1F6AB} [${platformName} Proxy] Content unavailable: ${errorData.message}`);
|
|
16370
16385
|
onError(errorData.message);
|
|
16371
16386
|
onLoading(false);
|
|
16372
16387
|
return;
|
|
16373
16388
|
}
|
|
16374
|
-
if (_optionalChain([errorData, 'optionalAccess',
|
|
16389
|
+
if (_optionalChain([errorData, 'optionalAccess', _296 => _296.error])) {
|
|
16375
16390
|
throw new Error(`Server error: ${errorData.error}`);
|
|
16376
16391
|
}
|
|
16377
16392
|
throw new Error(`Server proxy failed: ${response.status}`);
|
|
@@ -16823,7 +16838,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16823
16838
|
apiEndpoint: redditProxyUrl,
|
|
16824
16839
|
dataValidator: validateRedditData,
|
|
16825
16840
|
onDataUpdate: (data) => {
|
|
16826
|
-
if (_optionalChain([data, 'access',
|
|
16841
|
+
if (_optionalChain([data, 'access', _297 => _297[0], 'optionalAccess', _298 => _298.data, 'optionalAccess', _299 => _299.children, 'optionalAccess', _300 => _300[0], 'optionalAccess', _301 => _301.data])) {
|
|
16827
16842
|
setRedditData(data[0].data.children[0].data);
|
|
16828
16843
|
}
|
|
16829
16844
|
},
|
|
@@ -16894,11 +16909,11 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16894
16909
|
gallery_data: redditData.gallery_data,
|
|
16895
16910
|
media_metadata: redditData.media_metadata
|
|
16896
16911
|
});
|
|
16897
|
-
const video = _optionalChain([redditData, 'access',
|
|
16912
|
+
const video = _optionalChain([redditData, 'access', _302 => _302.media, 'optionalAccess', _303 => _303.reddit_video]) || _optionalChain([redditData, 'access', _304 => _304.secure_media, 'optionalAccess', _305 => _305.reddit_video]);
|
|
16898
16913
|
if (video && video.fallback_url) {
|
|
16899
16914
|
console.log("\u{1F4F9} Found Reddit video:", video);
|
|
16900
16915
|
let posterUrl = "";
|
|
16901
|
-
if (_optionalChain([redditData, 'access',
|
|
16916
|
+
if (_optionalChain([redditData, 'access', _306 => _306.preview, 'optionalAccess', _307 => _307.images, 'optionalAccess', _308 => _308[0], 'optionalAccess', _309 => _309.source, 'optionalAccess', _310 => _310.url])) {
|
|
16902
16917
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
16903
16918
|
console.log("\u2705 Using preview image as video poster:", posterUrl);
|
|
16904
16919
|
} else {
|
|
@@ -16951,7 +16966,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16951
16966
|
return media;
|
|
16952
16967
|
}
|
|
16953
16968
|
}
|
|
16954
|
-
if (_optionalChain([redditData, 'access',
|
|
16969
|
+
if (_optionalChain([redditData, 'access', _311 => _311.preview, 'optionalAccess', _312 => _312.images, 'optionalAccess', _313 => _313[0]]) && !redditData.is_video) {
|
|
16955
16970
|
const imageData = redditData.preview.images[0];
|
|
16956
16971
|
console.log("\u{1F5BC}\uFE0F Found preview image data:", imageData);
|
|
16957
16972
|
let source = imageData.source;
|
|
@@ -16986,7 +17001,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16986
17001
|
} else if (directUrl.match(/\.(mp4|webm|mov|avi)(\?.*)?$/i)) {
|
|
16987
17002
|
console.log("\u{1F3AC} Found direct video URL");
|
|
16988
17003
|
let posterUrl = "";
|
|
16989
|
-
if (_optionalChain([redditData, 'access',
|
|
17004
|
+
if (_optionalChain([redditData, 'access', _314 => _314.preview, 'optionalAccess', _315 => _315.images, 'optionalAccess', _316 => _316[0], 'optionalAccess', _317 => _317.source, 'optionalAccess', _318 => _318.url])) {
|
|
16990
17005
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
16991
17006
|
}
|
|
16992
17007
|
media.push({
|
|
@@ -16999,7 +17014,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16999
17014
|
});
|
|
17000
17015
|
} else if (directUrl.includes("imgur.com") && !directUrl.includes(".gifv")) {
|
|
17001
17016
|
console.log("\u{1F310} Found Imgur link");
|
|
17002
|
-
const imgurId = _optionalChain([directUrl, 'access',
|
|
17017
|
+
const imgurId = _optionalChain([directUrl, 'access', _319 => _319.match, 'call', _320 => _320(/imgur\.com\/([a-zA-Z0-9]+)/), 'optionalAccess', _321 => _321[1]]);
|
|
17003
17018
|
if (imgurId && !directUrl.includes("/a/") && !directUrl.includes("/gallery/")) {
|
|
17004
17019
|
media.push({
|
|
17005
17020
|
type: "image",
|
|
@@ -17148,7 +17163,7 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
17148
17163
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
17149
17164
|
const [error, setError] = _react.useState.call(void 0, null);
|
|
17150
17165
|
const initializationDone = _react.useRef.call(void 0, false);
|
|
17151
|
-
const extractedTweetId = tweetId || _optionalChain([url, 'access',
|
|
17166
|
+
const extractedTweetId = tweetId || _optionalChain([url, 'access', _322 => _322.match, 'call', _323 => _323(/status\/(\d+)/), 'optionalAccess', _324 => _324[1]]);
|
|
17152
17167
|
const tweetUrl = url.includes("twitter.com") || url.includes("x.com") ? url : `https://twitter.com/twitter/status/${extractedTweetId}`;
|
|
17153
17168
|
_react.useEffect.call(void 0, () => {
|
|
17154
17169
|
if (initializationDone.current) return;
|
|
@@ -17215,10 +17230,10 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
17215
17230
|
const parser = new DOMParser();
|
|
17216
17231
|
const doc = parser.parseFromString(tweetData.html, "text/html");
|
|
17217
17232
|
const blockquote = doc.querySelector("blockquote");
|
|
17218
|
-
const fullText = _optionalChain([blockquote, 'optionalAccess',
|
|
17233
|
+
const fullText = _optionalChain([blockquote, 'optionalAccess', _325 => _325.textContent]) || "";
|
|
17219
17234
|
const tweetText = fullText.replace(/- .* \(@.*\).*$/, "").trim();
|
|
17220
17235
|
const username = tweetData.author_url ? tweetData.author_url.split("/").pop() : "";
|
|
17221
|
-
const links = Array.from(_optionalChain([blockquote, 'optionalAccess',
|
|
17236
|
+
const links = Array.from(_optionalChain([blockquote, 'optionalAccess', _326 => _326.querySelectorAll, 'call', _327 => _327("a")]) || []).map((link) => ({
|
|
17222
17237
|
url: link.href,
|
|
17223
17238
|
text: link.textContent || link.href
|
|
17224
17239
|
})).filter((link) => !link.url.includes("twitter.com") && !link.url.includes("x.com"));
|
|
@@ -17473,7 +17488,7 @@ var OGLinkPreview = ({
|
|
|
17473
17488
|
const response = await fetch(endpoint);
|
|
17474
17489
|
if (response.ok) {
|
|
17475
17490
|
const data = await response.json();
|
|
17476
|
-
if (_optionalChain([data, 'optionalAccess',
|
|
17491
|
+
if (_optionalChain([data, 'optionalAccess', _328 => _328.title]) && data.title !== "Link Preview Unavailable") {
|
|
17477
17492
|
setOgData(data);
|
|
17478
17493
|
} else {
|
|
17479
17494
|
setError(true);
|
|
@@ -17500,8 +17515,8 @@ var OGLinkPreview = ({
|
|
|
17500
17515
|
type: "website",
|
|
17501
17516
|
favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`
|
|
17502
17517
|
} : null)));
|
|
17503
|
-
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess',
|
|
17504
|
-
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess',
|
|
17518
|
+
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess', _329 => _329.title]) ? buildPlaceholderUrl(effectiveData.title, effectiveData.siteName || domain) : null;
|
|
17519
|
+
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess', _330 => _330.image]) && !imageError ? effectiveData.image : _optionalChain([effectiveData, 'optionalAccess', _331 => _331.originalImage]) && !originalImageError ? effectiveData.originalImage : fallbackImage && !fallbackImageError ? fallbackImage : placeholderImageUrl;
|
|
17505
17520
|
const hasImage = !!resolvedImageUrl;
|
|
17506
17521
|
const isFallbackImage = resolvedImageUrl === fallbackImage;
|
|
17507
17522
|
const isPlaceholder = resolvedImageUrl === placeholderImageUrl && !isFallbackImage;
|
|
@@ -17747,9 +17762,9 @@ function toFigmaEmbedUrl(url, opts) {
|
|
|
17747
17762
|
if (match2) {
|
|
17748
17763
|
const [, urlType, fileKey, titleSlug, queryString] = match2;
|
|
17749
17764
|
const isSlides = urlType === "slides" || urlType === "deck";
|
|
17750
|
-
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess',
|
|
17765
|
+
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess', _332 => _332.slidesView]) === "browse" ? "slides" : "deck" : "design";
|
|
17751
17766
|
const pathSuffix = titleSlug ? `/${titleSlug}` : "";
|
|
17752
|
-
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess',
|
|
17767
|
+
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess', _333 => _333.replace, 'call', _334 => _334(/^\?/, "")]) || "");
|
|
17753
17768
|
if (!params.has("embed-host")) {
|
|
17754
17769
|
params.set("embed-host", "flamingo");
|
|
17755
17770
|
}
|
|
@@ -17830,7 +17845,7 @@ function EmbedIframe({
|
|
|
17830
17845
|
allow,
|
|
17831
17846
|
referrerPolicy,
|
|
17832
17847
|
loading,
|
|
17833
|
-
allowFullScreen: _optionalChain([allow, 'optionalAccess',
|
|
17848
|
+
allowFullScreen: _optionalChain([allow, 'optionalAccess', _335 => _335.includes, 'call', _336 => _336("fullscreen")]) ? void 0 : allowFullScreen
|
|
17834
17849
|
},
|
|
17835
17850
|
src
|
|
17836
17851
|
)
|
|
@@ -18581,7 +18596,7 @@ var RichMarkdownInner = ({
|
|
|
18581
18596
|
const extractText2 = (node) => {
|
|
18582
18597
|
if (typeof node === "string") return node;
|
|
18583
18598
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18584
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18599
|
+
if (_optionalChain([node, 'optionalAccess', _337 => _337.props, 'optionalAccess', _338 => _338.children])) return extractText2(node.props.children);
|
|
18585
18600
|
return "";
|
|
18586
18601
|
};
|
|
18587
18602
|
const text = extractText2(children);
|
|
@@ -18597,7 +18612,7 @@ var RichMarkdownInner = ({
|
|
|
18597
18612
|
const extractText2 = (node) => {
|
|
18598
18613
|
if (typeof node === "string") return node;
|
|
18599
18614
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18600
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18615
|
+
if (_optionalChain([node, 'optionalAccess', _339 => _339.props, 'optionalAccess', _340 => _340.children])) return extractText2(node.props.children);
|
|
18601
18616
|
return "";
|
|
18602
18617
|
};
|
|
18603
18618
|
const text = extractText2(children);
|
|
@@ -18615,7 +18630,7 @@ var RichMarkdownInner = ({
|
|
|
18615
18630
|
const extractText2 = (node) => {
|
|
18616
18631
|
if (typeof node === "string") return node;
|
|
18617
18632
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18618
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18633
|
+
if (_optionalChain([node, 'optionalAccess', _341 => _341.props, 'optionalAccess', _342 => _342.children])) return extractText2(node.props.children);
|
|
18619
18634
|
return "";
|
|
18620
18635
|
};
|
|
18621
18636
|
const text = extractText2(children);
|
|
@@ -18633,7 +18648,7 @@ var RichMarkdownInner = ({
|
|
|
18633
18648
|
const extractText2 = (node) => {
|
|
18634
18649
|
if (typeof node === "string") return node;
|
|
18635
18650
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18636
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18651
|
+
if (_optionalChain([node, 'optionalAccess', _343 => _343.props, 'optionalAccess', _344 => _344.children])) return extractText2(node.props.children);
|
|
18637
18652
|
return "";
|
|
18638
18653
|
};
|
|
18639
18654
|
const text = extractText2(children);
|
|
@@ -18651,7 +18666,7 @@ var RichMarkdownInner = ({
|
|
|
18651
18666
|
const extractText2 = (node) => {
|
|
18652
18667
|
if (typeof node === "string") return node;
|
|
18653
18668
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18654
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18669
|
+
if (_optionalChain([node, 'optionalAccess', _345 => _345.props, 'optionalAccess', _346 => _346.children])) return extractText2(node.props.children);
|
|
18655
18670
|
return "";
|
|
18656
18671
|
};
|
|
18657
18672
|
const text = extractText2(children);
|
|
@@ -18669,7 +18684,7 @@ var RichMarkdownInner = ({
|
|
|
18669
18684
|
const extractText2 = (node) => {
|
|
18670
18685
|
if (typeof node === "string") return node;
|
|
18671
18686
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18672
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18687
|
+
if (_optionalChain([node, 'optionalAccess', _347 => _347.props, 'optionalAccess', _348 => _348.children])) return extractText2(node.props.children);
|
|
18673
18688
|
return "";
|
|
18674
18689
|
};
|
|
18675
18690
|
const text = extractText2(children);
|
|
@@ -18745,8 +18760,8 @@ var RichMarkdownInner = ({
|
|
|
18745
18760
|
{
|
|
18746
18761
|
href,
|
|
18747
18762
|
className: `text-ods-accent no-underline relative transition-colors duration-200 hover:after:w-full after:content-[''] after:absolute after:w-0 after:h-0.5 after:-bottom-0.5 after:left-0 after:bg-ods-accent after:transition-all after:duration-300 ${className2 || ""}`,
|
|
18748
|
-
target: _optionalChain([href, 'optionalAccess',
|
|
18749
|
-
rel: _optionalChain([href, 'optionalAccess',
|
|
18763
|
+
target: _optionalChain([href, 'optionalAccess', _349 => _349.startsWith, 'call', _350 => _350("http")]) ? "_blank" : void 0,
|
|
18764
|
+
rel: _optionalChain([href, 'optionalAccess', _351 => _351.startsWith, 'call', _352 => _352("http")]) ? "noopener noreferrer" : void 0,
|
|
18750
18765
|
children
|
|
18751
18766
|
}
|
|
18752
18767
|
);
|
|
@@ -18870,7 +18885,7 @@ function ReleaseChangelogSection({
|
|
|
18870
18885
|
className: "overflow-hidden transition-[max-height] duration-500",
|
|
18871
18886
|
style: {
|
|
18872
18887
|
transitionTimingFunction: "cubic-bezier(0.33, 1, 0.68, 1)",
|
|
18873
|
-
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access',
|
|
18888
|
+
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access', _353 => _353.current, 'optionalAccess', _354 => _354.scrollHeight]), () => ( 2e3)) : PREVIEW_COLLAPSED_HEIGHT,
|
|
18874
18889
|
...previewNeedsFade && !previewExpanded ? {
|
|
18875
18890
|
maskImage: "linear-gradient(to bottom, black 30%, transparent 100%)",
|
|
18876
18891
|
WebkitMaskImage: "linear-gradient(to bottom, black 30%, transparent 100%)"
|
|
@@ -19307,16 +19322,16 @@ function FilterModal({
|
|
|
19307
19322
|
};
|
|
19308
19323
|
const handleReset = () => {
|
|
19309
19324
|
onFilterChange({});
|
|
19310
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
19325
|
+
_optionalChain([onTagsChange, 'optionalCall', _355 => _355([])]);
|
|
19311
19326
|
onClose();
|
|
19312
19327
|
};
|
|
19313
19328
|
const handleApply = () => {
|
|
19314
19329
|
onFilterChange(selectedFilters);
|
|
19315
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
19330
|
+
_optionalChain([onTagsChange, 'optionalCall', _356 => _356(pendingTags)]);
|
|
19316
19331
|
onClose();
|
|
19317
19332
|
};
|
|
19318
19333
|
const getColumnDirection = (columnKey) => {
|
|
19319
|
-
return _optionalChain([sortConfig, 'optionalAccess',
|
|
19334
|
+
return _optionalChain([sortConfig, 'optionalAccess', _357 => _357.sortBy]) === columnKey ? sortConfig.sortDirection : void 0;
|
|
19320
19335
|
};
|
|
19321
19336
|
const hasSort = !!sortConfig && sortConfig.columns.length > 0;
|
|
19322
19337
|
const hasFilterGroups = filterGroups.length > 0;
|
|
@@ -19365,7 +19380,7 @@ function FilterModal({
|
|
|
19365
19380
|
{
|
|
19366
19381
|
column,
|
|
19367
19382
|
currentDirection: getColumnDirection(column.key),
|
|
19368
|
-
onSort: (direction) => _optionalChain([onSort, 'optionalCall',
|
|
19383
|
+
onSort: (direction) => _optionalChain([onSort, 'optionalCall', _358 => _358(column.key, direction)]),
|
|
19369
19384
|
onClear: onSortClear ? () => onSortClear(column.key) : void 0
|
|
19370
19385
|
},
|
|
19371
19386
|
column.key
|
|
@@ -19551,7 +19566,7 @@ function IconButtonsVariant({
|
|
|
19551
19566
|
}) {
|
|
19552
19567
|
const desktopActions = actions.filter((a) => !a.showOnlyMobile);
|
|
19553
19568
|
const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
|
|
19554
|
-
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access',
|
|
19569
|
+
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _359 => _359[0], 'access', _360 => _360.submenu, 'optionalAccess', _361 => _361.length]);
|
|
19555
19570
|
const singleAction = isSingleAction ? actions[0] : null;
|
|
19556
19571
|
const useSingleActionMobile = isSingleAction && !hasMenuActions;
|
|
19557
19572
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -19983,6 +19998,15 @@ function EntityImage({ src, alt, fallbackText, className }) {
|
|
|
19983
19998
|
// src/components/layout/title-block.tsx
|
|
19984
19999
|
|
|
19985
20000
|
var TITLE_BLOCK_MIN_HEIGHT = "min-h-11 md:min-h-12";
|
|
20001
|
+
function TitleTextSkeleton({ widthClass, heightClass }) {
|
|
20002
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20003
|
+
"span",
|
|
20004
|
+
{
|
|
20005
|
+
"aria-hidden": true,
|
|
20006
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0, "inline-block max-w-full rounded-md bg-ods-border animate-pulse", widthClass, heightClass)
|
|
20007
|
+
}
|
|
20008
|
+
);
|
|
20009
|
+
}
|
|
19986
20010
|
function TitleBlock({
|
|
19987
20011
|
title,
|
|
19988
20012
|
subtitle,
|
|
@@ -19994,7 +20018,9 @@ function TitleBlock({
|
|
|
19994
20018
|
selector,
|
|
19995
20019
|
variant = "plain",
|
|
19996
20020
|
className,
|
|
19997
|
-
titleSize = "h2"
|
|
20021
|
+
titleSize = "h2",
|
|
20022
|
+
titleAdornment,
|
|
20023
|
+
loading
|
|
19998
20024
|
}) {
|
|
19999
20025
|
const hasActions = actions && actions.length > 0;
|
|
20000
20026
|
const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
|
|
@@ -20025,7 +20051,7 @@ function TitleBlock({
|
|
|
20025
20051
|
className: "hidden md:inline-flex"
|
|
20026
20052
|
}
|
|
20027
20053
|
),
|
|
20028
|
-
image || subtitle ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20054
|
+
image || subtitle || loading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20029
20055
|
image && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20030
20056
|
EntityImage,
|
|
20031
20057
|
{
|
|
@@ -20035,10 +20061,16 @@ function TitleBlock({
|
|
|
20035
20061
|
}
|
|
20036
20062
|
),
|
|
20037
20063
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col justify-center min-w-0 flex-1", children: [
|
|
20038
|
-
title && /* @__PURE__ */ _jsxruntime.
|
|
20039
|
-
|
|
20064
|
+
(loading || title) && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20065
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: _chunkFIG2RKZFcjs.cn.call(void 0, titleClass, "text-ods-text-primary truncate min-w-0"), title, children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TitleTextSkeleton, { widthClass: "w-48 md:w-72", heightClass: "h-4 md:h-6" }) : title }),
|
|
20066
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
|
|
20067
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: _chunkFIG2RKZFcjs.cn.call(void 0, titleClass, "text-ods-text-primary truncate"), title, children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TitleTextSkeleton, { widthClass: "w-48 md:w-72", heightClass: "h-4 md:h-6" }) : title })),
|
|
20068
|
+
subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary truncate", title: subtitle, children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TitleTextSkeleton, { widthClass: "w-28 md:w-36", heightClass: "h-2.5 md:h-3" }) : subtitle })
|
|
20040
20069
|
] })
|
|
20041
|
-
] }) : title && /* @__PURE__ */ _jsxruntime.
|
|
20070
|
+
] }) : title && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20071
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: _chunkFIG2RKZFcjs.cn.call(void 0, titleClass, "text-ods-text-primary truncate min-w-0"), title, children: title }),
|
|
20072
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
|
|
20073
|
+
] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: _chunkFIG2RKZFcjs.cn.call(void 0, titleClass, "text-ods-text-primary"), children: title }))
|
|
20042
20074
|
] }),
|
|
20043
20075
|
(hasActions || hasMenuActions || selector) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex gap-2 items-center shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20044
20076
|
PageActions,
|
|
@@ -20070,11 +20102,13 @@ function PageLayout({
|
|
|
20070
20102
|
className,
|
|
20071
20103
|
contentClassName,
|
|
20072
20104
|
showHeader = true,
|
|
20073
|
-
titleSize
|
|
20105
|
+
titleSize,
|
|
20106
|
+
titleAdornment,
|
|
20107
|
+
loading
|
|
20074
20108
|
}) {
|
|
20075
20109
|
const hasActions = actions && actions.length > 0;
|
|
20076
20110
|
const needsBottomPadding = hasActions && actionsVariant === "primary-buttons";
|
|
20077
|
-
const hasHeader = showHeader && (title || subtitle || image || backButton || hasActions || selector);
|
|
20111
|
+
const hasHeader = showHeader && (title || subtitle || image || backButton || hasActions || selector || loading);
|
|
20078
20112
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col w-full", className), children: [
|
|
20079
20113
|
hasHeader && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20080
20114
|
TitleBlock,
|
|
@@ -20088,7 +20122,9 @@ function PageLayout({
|
|
|
20088
20122
|
menuActions,
|
|
20089
20123
|
selector,
|
|
20090
20124
|
variant: headerVariant,
|
|
20091
|
-
titleSize
|
|
20125
|
+
titleSize,
|
|
20126
|
+
titleAdornment,
|
|
20127
|
+
loading
|
|
20092
20128
|
}
|
|
20093
20129
|
),
|
|
20094
20130
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col flex-1 gap-[var(--spacing-system-l)]", needsBottomPadding && "pb-28 md:pb-0", contentClassName), children })
|
|
@@ -20752,7 +20788,7 @@ function getShellIcon(shellType) {
|
|
|
20752
20788
|
if (!shellType) return void 0;
|
|
20753
20789
|
const normalized = shellType.toUpperCase();
|
|
20754
20790
|
const shellDef = SHELL_TYPES.find((s) => s.id === normalized);
|
|
20755
|
-
return _optionalChain([shellDef, 'optionalAccess',
|
|
20791
|
+
return _optionalChain([shellDef, 'optionalAccess', _362 => _362.icon]);
|
|
20756
20792
|
}
|
|
20757
20793
|
|
|
20758
20794
|
// src/types/os.types.ts
|
|
@@ -20825,7 +20861,7 @@ function getOSIcon(osType) {
|
|
|
20825
20861
|
const normalized = normalizeOSType(osType);
|
|
20826
20862
|
if (!normalized) return void 0;
|
|
20827
20863
|
const osTypeDef = OS_TYPES.find((t) => t.id === normalized);
|
|
20828
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
20864
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _363 => _363.icon]);
|
|
20829
20865
|
}
|
|
20830
20866
|
function getOSTypeDefinition(osType) {
|
|
20831
20867
|
if (!osType) return void 0;
|
|
@@ -20835,7 +20871,7 @@ function getOSTypeDefinition(osType) {
|
|
|
20835
20871
|
}
|
|
20836
20872
|
function getOSPlatformId(osType) {
|
|
20837
20873
|
const osTypeDef = getOSTypeDefinition(osType);
|
|
20838
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
20874
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _364 => _364.platformId]);
|
|
20839
20875
|
}
|
|
20840
20876
|
function isOSPlatform(deviceOS, targetPlatform) {
|
|
20841
20877
|
if (!deviceOS || !targetPlatform) return false;
|
|
@@ -20928,10 +20964,10 @@ var GENERIC_EMAIL_DOMAINS = [
|
|
|
20928
20964
|
];
|
|
20929
20965
|
function extractDomainFromEmail(email) {
|
|
20930
20966
|
if (!email || !email.includes("@")) return null;
|
|
20931
|
-
return _optionalChain([email, 'access',
|
|
20967
|
+
return _optionalChain([email, 'access', _365 => _365.split, 'call', _366 => _366("@"), 'access', _367 => _367[1], 'optionalAccess', _368 => _368.toLowerCase, 'call', _369 => _369()]) || null;
|
|
20932
20968
|
}
|
|
20933
20969
|
function normalizeDomain(domain) {
|
|
20934
|
-
return _optionalChain([domain, 'optionalAccess',
|
|
20970
|
+
return _optionalChain([domain, 'optionalAccess', _370 => _370.toLowerCase, 'call', _371 => _371(), 'access', _372 => _372.replace, 'call', _373 => _373(/^https?:\/\//, ""), 'access', _374 => _374.replace, 'call', _375 => _375(/^www\./, ""), 'access', _376 => _376.split, 'call', _377 => _377("/"), 'access', _378 => _378[0], 'access', _379 => _379.trim, 'call', _380 => _380()]) || "";
|
|
20935
20971
|
}
|
|
20936
20972
|
function isGenericDomain(domain) {
|
|
20937
20973
|
const normalized = normalizeDomain(domain);
|
|
@@ -21365,7 +21401,7 @@ function defaultTableIdForDocumentType(documentType) {
|
|
|
21365
21401
|
|
|
21366
21402
|
// src/utils/sse-decision-frame.ts
|
|
21367
21403
|
async function readLeadingDecisionFrame(response) {
|
|
21368
|
-
const reader = _optionalChain([response, 'access',
|
|
21404
|
+
const reader = _optionalChain([response, 'access', _381 => _381.body, 'optionalAccess', _382 => _382.getReader, 'call', _383 => _383()]);
|
|
21369
21405
|
if (!reader) throw new Error("readLeadingDecisionFrame: response has no body");
|
|
21370
21406
|
const decoder = new TextDecoder();
|
|
21371
21407
|
let buffer = "";
|
|
@@ -21394,9 +21430,9 @@ async function readLeadingDecisionFrame(response) {
|
|
|
21394
21430
|
);
|
|
21395
21431
|
}
|
|
21396
21432
|
const obj = parsed;
|
|
21397
|
-
if (_optionalChain([obj, 'optionalAccess',
|
|
21433
|
+
if (_optionalChain([obj, 'optionalAccess', _384 => _384.kind]) !== "decision_resolved") {
|
|
21398
21434
|
throw new Error(
|
|
21399
|
-
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess',
|
|
21435
|
+
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _385 => _385.kind]))}`
|
|
21400
21436
|
);
|
|
21401
21437
|
}
|
|
21402
21438
|
frame = normalizeDecisionFrame(obj);
|
|
@@ -21437,7 +21473,7 @@ var AUTO_CONTINUATION_DIRECTIVE_PREFIX = "[internal-auto-continuation]";
|
|
|
21437
21473
|
function buildAutoContinuationDirective(toolName, opts = {}) {
|
|
21438
21474
|
const ticketRef = opts.ticketId ? ` (ticket #${opts.ticketId})` : "";
|
|
21439
21475
|
const ticketHash = opts.ticketId ? ` #${opts.ticketId}` : "";
|
|
21440
|
-
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access',
|
|
21476
|
+
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _386 => _386.status, 'optionalAccess', _387 => _387.toUpperCase, 'call', _388 => _388()]) === "CLOSED";
|
|
21441
21477
|
if (toolName === "create_ticket") {
|
|
21442
21478
|
return `${AUTO_CONTINUATION_DIRECTIVE_PREFIX} The user just approved create_ticket${ticketRef}. Per ticket-protocol \xA71a, ask 2-4 SHORT, issue-specific diagnostic follow-up questions tailored to the symptom they reported in their original message. When they answer, propose an update_ticket with content_addendum carrying a clean Q&A digest. Do NOT call any tool in this turn \u2014 just write the questions as prose.`;
|
|
21443
21479
|
}
|
|
@@ -21499,7 +21535,7 @@ function formatSingularLookupInvocation(cmdId, value) {
|
|
|
21499
21535
|
return safe ? `/${cmdId} "${safe}"` : `/${cmdId}`;
|
|
21500
21536
|
}
|
|
21501
21537
|
function extractEntityIdFilter(override, expectedTableId) {
|
|
21502
|
-
const f = _optionalChain([override, 'optionalAccess',
|
|
21538
|
+
const f = _optionalChain([override, 'optionalAccess', _389 => _389.entityIdFilter]);
|
|
21503
21539
|
if (!f) return null;
|
|
21504
21540
|
const tableId = typeof f.tableId === "string" ? f.tableId : "";
|
|
21505
21541
|
const id = typeof f.id === "string" ? f.id : "";
|
|
@@ -21574,7 +21610,7 @@ function getTaskTypeLabel(customItemId) {
|
|
|
21574
21610
|
|
|
21575
21611
|
// src/components/chat/utils/agent-status-message.ts
|
|
21576
21612
|
function getStatusColorScheme(status) {
|
|
21577
|
-
const s = _optionalChain([status, 'optionalAccess',
|
|
21613
|
+
const s = _optionalChain([status, 'optionalAccess', _390 => _390.toLowerCase, 'call', _391 => _391()]) || "";
|
|
21578
21614
|
switch (status) {
|
|
21579
21615
|
case "completed":
|
|
21580
21616
|
case "success":
|
|
@@ -21856,10 +21892,10 @@ var CONTENT_REF_GROUPS = {
|
|
|
21856
21892
|
what_i_shipped: { label: "What I Shipped", order: 10, layout: "grid", gridSize: "default" }
|
|
21857
21893
|
};
|
|
21858
21894
|
function getContentRefLabel(type) {
|
|
21859
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
21895
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _392 => _392[type], 'optionalAccess', _393 => _393.label]), () => ( null));
|
|
21860
21896
|
}
|
|
21861
21897
|
function getContentRefLabelOrTitleCase(type) {
|
|
21862
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
21898
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _394 => _394[type], 'optionalAccess', _395 => _395.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
|
|
21863
21899
|
}
|
|
21864
21900
|
function orderContentRefTypes(present) {
|
|
21865
21901
|
const presentSet = new Set(present);
|
|
@@ -22018,7 +22054,7 @@ function getDocSourceDefaultPath(structure, folderIndexFile = DEFAULT_FOLDER_IND
|
|
|
22018
22054
|
const firstFolderWithReadme = structure.find(
|
|
22019
22055
|
(node) => node.type === "folder" && node.hasReadme && !!node.path
|
|
22020
22056
|
);
|
|
22021
|
-
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess',
|
|
22057
|
+
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _396 => _396.path]), () => ( null));
|
|
22022
22058
|
}
|
|
22023
22059
|
|
|
22024
22060
|
// src/utils/doc-path-utils.ts
|
|
@@ -22029,7 +22065,7 @@ function pathToNodeId(path) {
|
|
|
22029
22065
|
return path.replace(/[\/\s]/g, "-").toLowerCase();
|
|
22030
22066
|
}
|
|
22031
22067
|
function normalizeDocPath(segments, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE) {
|
|
22032
|
-
const lowerPath = (_optionalChain([segments, 'optionalAccess',
|
|
22068
|
+
const lowerPath = (_optionalChain([segments, 'optionalAccess', _397 => _397.join, 'call', _398 => _398("/")]) || "").toLowerCase();
|
|
22033
22069
|
const lowerIndex = folderIndexFile.toLowerCase();
|
|
22034
22070
|
const suffix = `/${lowerIndex}`;
|
|
22035
22071
|
if (lowerPath.endsWith(suffix)) return lowerPath.slice(0, -suffix.length);
|
|
@@ -22890,26 +22926,26 @@ function DeviceCard({
|
|
|
22890
22926
|
] }),
|
|
22891
22927
|
device.organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary truncate", title: device.organization, children: device.organization })
|
|
22892
22928
|
] }),
|
|
22893
|
-
_optionalChain([actions, 'access',
|
|
22929
|
+
_optionalChain([actions, 'access', _399 => _399.moreButton, 'optionalAccess', _400 => _400.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22894
22930
|
"div",
|
|
22895
22931
|
{
|
|
22896
22932
|
className: "flex items-center justify-center p-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
|
|
22897
22933
|
onClick: (e) => {
|
|
22898
22934
|
e.stopPropagation();
|
|
22899
|
-
_optionalChain([actions, 'access',
|
|
22935
|
+
_optionalChain([actions, 'access', _401 => _401.moreButton, 'optionalAccess', _402 => _402.onClick, 'optionalCall', _403 => _403()]);
|
|
22900
22936
|
},
|
|
22901
22937
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
|
|
22902
22938
|
}
|
|
22903
22939
|
),
|
|
22904
|
-
_optionalChain([actions, 'access',
|
|
22905
|
-
_optionalChain([actions, 'access',
|
|
22940
|
+
_optionalChain([actions, 'access', _404 => _404.detailsButton, 'optionalAccess', _405 => _405.visible]) !== false && _optionalChain([actions, 'access', _406 => _406.detailsButton, 'optionalAccess', _407 => _407.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
|
|
22941
|
+
_optionalChain([actions, 'access', _408 => _408.customActions, 'optionalAccess', _409 => _409.map, 'call', _410 => _410(
|
|
22906
22942
|
(action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22907
22943
|
"div",
|
|
22908
22944
|
{
|
|
22909
22945
|
className: "flex items-center justify-center px-4 py-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
|
|
22910
22946
|
onClick: (e) => {
|
|
22911
22947
|
e.stopPropagation();
|
|
22912
|
-
_optionalChain([action, 'access',
|
|
22948
|
+
_optionalChain([action, 'access', _411 => _411.onClick, 'optionalCall', _412 => _412()]);
|
|
22913
22949
|
},
|
|
22914
22950
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3 text-ods-text-primary text-nowrap tracking-[-0.36px]", children: action.label })
|
|
22915
22951
|
},
|
|
@@ -23409,7 +23445,7 @@ function MoreActionsMenu({
|
|
|
23409
23445
|
] });
|
|
23410
23446
|
const handleActivate = (e) => {
|
|
23411
23447
|
e.stopPropagation();
|
|
23412
|
-
if (!item.disabled) _optionalChain([item, 'access',
|
|
23448
|
+
if (!item.disabled) _optionalChain([item, 'access', _413 => _413.onClick, 'optionalCall', _414 => _414()]);
|
|
23413
23449
|
};
|
|
23414
23450
|
if (item.href) {
|
|
23415
23451
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -23476,7 +23512,7 @@ function OrganizationCard({
|
|
|
23476
23512
|
const handleActionClick = (e) => {
|
|
23477
23513
|
e.preventDefault();
|
|
23478
23514
|
e.stopPropagation();
|
|
23479
|
-
_optionalChain([actionButton, 'optionalAccess',
|
|
23515
|
+
_optionalChain([actionButton, 'optionalAccess', _415 => _415.onClick, 'call', _416 => _416(organization, e)]);
|
|
23480
23516
|
};
|
|
23481
23517
|
const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23482
23518
|
"div",
|
|
@@ -24382,10 +24418,10 @@ var getContentDimensions = (config) => {
|
|
|
24382
24418
|
const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
|
|
24383
24419
|
const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
|
|
24384
24420
|
const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
|
|
24385
|
-
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
24386
|
-
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
24387
|
-
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
24388
|
-
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
24421
|
+
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _417 => _417.mobileContentDimensions, 'optionalAccess', _418 => _418.width]))), () => ( defaultMobile.width));
|
|
24422
|
+
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _419 => _419.mobileContentDimensions, 'optionalAccess', _420 => _420.height]))), () => ( defaultMobile.height));
|
|
24423
|
+
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _421 => _421.desktopContentDimensions, 'optionalAccess', _422 => _422.width]))), () => ( defaultDesktop.width));
|
|
24424
|
+
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _423 => _423.desktopContentDimensions, 'optionalAccess', _424 => _424.height]))), () => ( defaultDesktop.height));
|
|
24389
24425
|
return {
|
|
24390
24426
|
mobile: { width: mobileWidth, height: mobileHeight },
|
|
24391
24427
|
desktop: { width: desktopWidth, height: desktopHeight }
|
|
@@ -24519,7 +24555,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
|
|
|
24519
24555
|
const contentDimensions = getContentDimensions(config);
|
|
24520
24556
|
const mobileHeight = contentDimensions.mobile.height;
|
|
24521
24557
|
const calculatedHeight = Math.max(mobileHeight + 100, 400);
|
|
24522
|
-
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess',
|
|
24558
|
+
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _425 => _425.innerHeight]) * 0.85 || 650)}px`;
|
|
24523
24559
|
})(),
|
|
24524
24560
|
minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
|
|
24525
24561
|
const contentDimensions = getContentDimensions(config);
|
|
@@ -24624,7 +24660,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24624
24660
|
const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
|
|
24625
24661
|
const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
|
|
24626
24662
|
const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
|
|
24627
|
-
config.defaultSectionId || _optionalChain([config, 'access',
|
|
24663
|
+
config.defaultSectionId || _optionalChain([config, 'access', _426 => _426.sections, 'access', _427 => _427[0], 'optionalAccess', _428 => _428.id]) || ""
|
|
24628
24664
|
);
|
|
24629
24665
|
const activeSection = externalActiveSection || internalActiveSection;
|
|
24630
24666
|
const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
|
|
@@ -24714,7 +24750,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24714
24750
|
const handleMessage = (event) => {
|
|
24715
24751
|
if (event.origin !== "https://www.figma.com") return;
|
|
24716
24752
|
const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
|
|
24717
|
-
if (_optionalChain([event, 'access',
|
|
24753
|
+
if (_optionalChain([event, 'access', _429 => _429.data, 'optionalAccess', _430 => _430.type]) && validEvents.includes(event.data.type)) {
|
|
24718
24754
|
const figmaEvent = event.data;
|
|
24719
24755
|
console.log("[Figma Event]", figmaEvent.type, viewMode);
|
|
24720
24756
|
switch (figmaEvent.type) {
|
|
@@ -24724,19 +24760,19 @@ var FigmaPrototypeViewer = ({
|
|
|
24724
24760
|
setIframeState("READY");
|
|
24725
24761
|
break;
|
|
24726
24762
|
case "PRESENTED_NODE_CHANGED":
|
|
24727
|
-
if (_optionalChain([figmaEvent, 'access',
|
|
24763
|
+
if (_optionalChain([figmaEvent, 'access', _431 => _431.data, 'optionalAccess', _432 => _432.presentedNodeId])) {
|
|
24728
24764
|
setCurrentNodeId(figmaEvent.data.presentedNodeId);
|
|
24729
24765
|
if (!isNavigating) {
|
|
24730
24766
|
const matchingSection = config.sections.find((s) => {
|
|
24731
|
-
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access',
|
|
24732
|
-
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access',
|
|
24767
|
+
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _433 => _433.data, 'optionalAccess', _434 => _434.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _435 => _435.data, 'optionalAccess', _436 => _436.presentedNodeId]);
|
|
24768
|
+
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _437 => _437.data, 'optionalAccess', _438 => _438.presentedNodeId]) || _optionalChain([s, 'access', _439 => _439.mobileStartingNodeId, 'optionalAccess', _440 => _440.replace, 'call', _441 => _441(":", "-")]) === _optionalChain([figmaEvent, 'access', _442 => _442.data, 'optionalAccess', _443 => _443.presentedNodeId]);
|
|
24733
24769
|
return desktopMatch || mobileMatch;
|
|
24734
24770
|
});
|
|
24735
24771
|
if (matchingSection && matchingSection.id !== activeSection) {
|
|
24736
24772
|
if (!externalActiveSection) {
|
|
24737
24773
|
setInternalActiveSection(matchingSection.id);
|
|
24738
24774
|
}
|
|
24739
|
-
_optionalChain([config, 'access',
|
|
24775
|
+
_optionalChain([config, 'access', _444 => _444.onSectionChange, 'optionalCall', _445 => _445(matchingSection.id)]);
|
|
24740
24776
|
}
|
|
24741
24777
|
}
|
|
24742
24778
|
}
|
|
@@ -24749,7 +24785,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24749
24785
|
}, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
|
|
24750
24786
|
const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
|
|
24751
24787
|
const section = config.sections.find((s) => s.id === sectionId);
|
|
24752
|
-
if (!section || !_optionalChain([iframeRef, 'access',
|
|
24788
|
+
if (!section || !_optionalChain([iframeRef, 'access', _446 => _446.current, 'optionalAccess', _447 => _447.contentWindow]) || !isInitialized) {
|
|
24753
24789
|
return;
|
|
24754
24790
|
}
|
|
24755
24791
|
setIsNavigating(true);
|
|
@@ -24757,7 +24793,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24757
24793
|
if (!externalActiveSection) {
|
|
24758
24794
|
setInternalActiveSection(sectionId);
|
|
24759
24795
|
}
|
|
24760
|
-
_optionalChain([config, 'access',
|
|
24796
|
+
_optionalChain([config, 'access', _448 => _448.onSectionChange, 'optionalCall', _449 => _449(sectionId)]);
|
|
24761
24797
|
const command = {
|
|
24762
24798
|
type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
|
|
24763
24799
|
data: { nodeId }
|
|
@@ -25077,7 +25113,7 @@ var FiltersDropdown = ({
|
|
|
25077
25113
|
defaults[section.id] = section.defaultSelected || [];
|
|
25078
25114
|
});
|
|
25079
25115
|
setSelectedFilters(defaults);
|
|
25080
|
-
_optionalChain([onReset, 'optionalCall',
|
|
25116
|
+
_optionalChain([onReset, 'optionalCall', _450 => _450()]);
|
|
25081
25117
|
setIsOpen(false);
|
|
25082
25118
|
};
|
|
25083
25119
|
const handleApply = () => {
|
|
@@ -25370,7 +25406,7 @@ function MediaGalleryManager({
|
|
|
25370
25406
|
const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
|
|
25371
25407
|
const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
|
|
25372
25408
|
const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
|
|
25373
|
-
const file = _optionalChain([event, 'access',
|
|
25409
|
+
const file = _optionalChain([event, 'access', _451 => _451.target, 'access', _452 => _452.files, 'optionalAccess', _453 => _453[0]]);
|
|
25374
25410
|
if (!file) return;
|
|
25375
25411
|
let mediaType;
|
|
25376
25412
|
if (file.type.startsWith("image/")) {
|
|
@@ -25485,7 +25521,7 @@ function MediaGalleryManager({
|
|
|
25485
25521
|
{
|
|
25486
25522
|
type: "button",
|
|
25487
25523
|
variant: "outline",
|
|
25488
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
25524
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _454 => _454.current, 'optionalAccess', _455 => _455.click, 'call', _456 => _456()]),
|
|
25489
25525
|
disabled: isUploading,
|
|
25490
25526
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
25491
25527
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -26153,7 +26189,7 @@ function ReleaseMediaManager({
|
|
|
26153
26189
|
const fileInputRef = _react.useRef.call(void 0, null);
|
|
26154
26190
|
const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
|
|
26155
26191
|
const handleFileSelect = async (event) => {
|
|
26156
|
-
const file = _optionalChain([event, 'access',
|
|
26192
|
+
const file = _optionalChain([event, 'access', _457 => _457.target, 'access', _458 => _458.files, 'optionalAccess', _459 => _459[0]]);
|
|
26157
26193
|
if (!file) return;
|
|
26158
26194
|
let mediaType;
|
|
26159
26195
|
if (file.type.startsWith("image/")) {
|
|
@@ -26233,7 +26269,7 @@ function ReleaseMediaManager({
|
|
|
26233
26269
|
{
|
|
26234
26270
|
type: "button",
|
|
26235
26271
|
variant: "outline",
|
|
26236
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
26272
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _460 => _460.current, 'optionalAccess', _461 => _461.click, 'call', _462 => _462()]),
|
|
26237
26273
|
disabled: uploadingIndex !== null,
|
|
26238
26274
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
26239
26275
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -26448,7 +26484,7 @@ function SEOEditorPreview({
|
|
|
26448
26484
|
const displayImage = hasOgImage || hasFeaturedImage;
|
|
26449
26485
|
const handleImageUpload = async (event) => {
|
|
26450
26486
|
if (!onOgImageUpload) return;
|
|
26451
|
-
const file = _optionalChain([event, 'access',
|
|
26487
|
+
const file = _optionalChain([event, 'access', _463 => _463.target, 'access', _464 => _464.files, 'optionalAccess', _465 => _465[0]]);
|
|
26452
26488
|
if (!file) return;
|
|
26453
26489
|
setIsUploading(true);
|
|
26454
26490
|
try {
|
|
@@ -26589,7 +26625,7 @@ function SEOEditorPreview({
|
|
|
26589
26625
|
type: "button",
|
|
26590
26626
|
variant: "outline",
|
|
26591
26627
|
size: "icon",
|
|
26592
|
-
onClick: () => _optionalChain([fileInputRef, 'optionalAccess',
|
|
26628
|
+
onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _466 => _466.click, 'call', _467 => _467()]),
|
|
26593
26629
|
disabled: disabled || isUploading,
|
|
26594
26630
|
className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
|
|
26595
26631
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
|
|
@@ -26612,7 +26648,7 @@ function SEOEditorPreview({
|
|
|
26612
26648
|
"div",
|
|
26613
26649
|
{
|
|
26614
26650
|
className: "h-full min-h-[280px] border-2 border-dashed border-ods-border rounded-lg flex flex-col items-center justify-center cursor-pointer hover:border-ods-accent transition-colors bg-ods-bg-hover",
|
|
26615
|
-
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess',
|
|
26651
|
+
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _468 => _468.click, 'call', _469 => _469()]),
|
|
26616
26652
|
children: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
26617
26653
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
|
|
26618
26654
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-sm text-ods-text-secondary font-['DM_Sans']", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
|
|
@@ -26699,7 +26735,7 @@ function SocialLinksManager({
|
|
|
26699
26735
|
className = ""
|
|
26700
26736
|
}) {
|
|
26701
26737
|
const addLink = () => {
|
|
26702
|
-
const firstPlatform = _optionalChain([platforms, 'access',
|
|
26738
|
+
const firstPlatform = _optionalChain([platforms, 'access', _470 => _470[0], 'optionalAccess', _471 => _471.name]) || "website";
|
|
26703
26739
|
onChange([...links, { platform: firstPlatform, url: "" }]);
|
|
26704
26740
|
};
|
|
26705
26741
|
const removeLink = (index) => {
|
|
@@ -26711,7 +26747,7 @@ function SocialLinksManager({
|
|
|
26711
26747
|
onChange(updated);
|
|
26712
26748
|
};
|
|
26713
26749
|
const getIcon = (link, platform) => {
|
|
26714
|
-
const iconKey = _optionalChain([platform, 'optionalAccess',
|
|
26750
|
+
const iconKey = _optionalChain([platform, 'optionalAccess', _472 => _472.icon_name]) || link.platform;
|
|
26715
26751
|
const IconComponent = iconMap[iconKey];
|
|
26716
26752
|
return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
|
|
26717
26753
|
};
|
|
@@ -26736,7 +26772,7 @@ function SocialLinksManager({
|
|
|
26736
26772
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26737
26773
|
_chunkQJGRP2YEcjs.Input,
|
|
26738
26774
|
{
|
|
26739
|
-
placeholder: _optionalChain([platform, 'optionalAccess',
|
|
26775
|
+
placeholder: _optionalChain([platform, 'optionalAccess', _473 => _473.placeholder]) || "Profile URL",
|
|
26740
26776
|
value: link.url,
|
|
26741
26777
|
onChange: (e) => updateLink(index, "url", e.target.value),
|
|
26742
26778
|
onKeyDown: (e) => {
|
|
@@ -27129,7 +27165,7 @@ function useVideoOriginPreconnect({
|
|
|
27129
27165
|
supabaseStorageOrigin
|
|
27130
27166
|
} = {}) {
|
|
27131
27167
|
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
27132
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
27168
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _474 => _474.endpoints, 'access', _475 => _475.supabaseStorageOrigin])));
|
|
27133
27169
|
try {
|
|
27134
27170
|
ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
|
|
27135
27171
|
ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
|
|
@@ -27148,13 +27184,13 @@ function useVideoWarmup({
|
|
|
27148
27184
|
nearMargin = "1000px"
|
|
27149
27185
|
} = {}) {
|
|
27150
27186
|
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
27151
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
27187
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _476 => _476.endpoints, 'access', _477 => _477.supabaseStorageOrigin])));
|
|
27152
27188
|
useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
|
|
27153
27189
|
const { ref, isNear } = _chunkDCIB6AK3cjs.useNearViewport.call(void 0, nearMargin);
|
|
27154
27190
|
_react.useEffect.call(void 0, () => {
|
|
27155
27191
|
if (!isNear || !videoUrl || !resolvedOrigin) return;
|
|
27156
27192
|
const conn = navigator.connection;
|
|
27157
|
-
if (_optionalChain([conn, 'optionalAccess',
|
|
27193
|
+
if (_optionalChain([conn, 'optionalAccess', _478 => _478.saveData]) === true) return;
|
|
27158
27194
|
let videoOrigin;
|
|
27159
27195
|
try {
|
|
27160
27196
|
videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
|
|
@@ -27224,7 +27260,7 @@ function VideoSourceSelector({
|
|
|
27224
27260
|
input.accept = "video/*";
|
|
27225
27261
|
input.onchange = async (e) => {
|
|
27226
27262
|
const target = e.target;
|
|
27227
|
-
const file = _optionalChain([target, 'access',
|
|
27263
|
+
const file = _optionalChain([target, 'access', _479 => _479.files, 'optionalAccess', _480 => _480[0]]);
|
|
27228
27264
|
if (!file) return;
|
|
27229
27265
|
setIsUploading(true);
|
|
27230
27266
|
setUploadProgress(0);
|
|
@@ -27573,7 +27609,7 @@ function TranscriptSummaryEditor({
|
|
|
27573
27609
|
{
|
|
27574
27610
|
id: "subtitles",
|
|
27575
27611
|
value: subtitles || "",
|
|
27576
|
-
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall',
|
|
27612
|
+
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _481 => _481(e.target.value)]),
|
|
27577
27613
|
placeholder: subtitlesPlaceholder,
|
|
27578
27614
|
disabled: disabled || !onSubtitlesChange,
|
|
27579
27615
|
className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 font-mono text-sm",
|
|
@@ -27726,7 +27762,7 @@ var AIEnrichSection = ({
|
|
|
27726
27762
|
}) => {
|
|
27727
27763
|
const hasResults = status === "success" || status === "error";
|
|
27728
27764
|
const shouldDisable = disabled || !canEnrich;
|
|
27729
|
-
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess',
|
|
27765
|
+
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _482 => _482.filter, 'call', _483 => _483((f) => !f.isFilled)]) || [];
|
|
27730
27766
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
27731
27767
|
"div",
|
|
27732
27768
|
{
|
|
@@ -27764,7 +27800,7 @@ var AIEnrichSection = ({
|
|
|
27764
27800
|
{
|
|
27765
27801
|
id: "ai-enrich-custom-instructions",
|
|
27766
27802
|
value: _nullishCoalesce(customInstructions, () => ( "")),
|
|
27767
|
-
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall',
|
|
27803
|
+
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _484 => _484(e.target.value)]),
|
|
27768
27804
|
placeholder: customInstructionsPlaceholder,
|
|
27769
27805
|
disabled: loading,
|
|
27770
27806
|
maxLength: customInstructionsMaxLength,
|
|
@@ -27893,7 +27929,7 @@ function HighlightVideoSection({
|
|
|
27893
27929
|
input.accept = "video/*";
|
|
27894
27930
|
input.onchange = async (e) => {
|
|
27895
27931
|
const target = e.target;
|
|
27896
|
-
const file = _optionalChain([target, 'access',
|
|
27932
|
+
const file = _optionalChain([target, 'access', _485 => _485.files, 'optionalAccess', _486 => _486[0]]);
|
|
27897
27933
|
if (!file) return;
|
|
27898
27934
|
setUploadError(null);
|
|
27899
27935
|
try {
|
|
@@ -28388,7 +28424,7 @@ function HighlightVideoPreview({
|
|
|
28388
28424
|
input.accept = "video/*";
|
|
28389
28425
|
input.onchange = async (e) => {
|
|
28390
28426
|
const target = e.target;
|
|
28391
|
-
const file = _optionalChain([target, 'access',
|
|
28427
|
+
const file = _optionalChain([target, 'access', _487 => _487.files, 'optionalAccess', _488 => _488[0]]);
|
|
28392
28428
|
if (!file) return;
|
|
28393
28429
|
await onUpload(file);
|
|
28394
28430
|
};
|
|
@@ -28572,7 +28608,7 @@ function HighlightVideoCombinedSection({
|
|
|
28572
28608
|
input.accept = "video/*";
|
|
28573
28609
|
input.onchange = async (e) => {
|
|
28574
28610
|
const target = e.target;
|
|
28575
|
-
const file = _optionalChain([target, 'access',
|
|
28611
|
+
const file = _optionalChain([target, 'access', _489 => _489.files, 'optionalAccess', _490 => _490[0]]);
|
|
28576
28612
|
if (!file) return;
|
|
28577
28613
|
await onUpload(file);
|
|
28578
28614
|
};
|
|
@@ -28866,7 +28902,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
|
|
|
28866
28902
|
return editMode ? "Set Global Permission" : "";
|
|
28867
28903
|
}
|
|
28868
28904
|
const option = approvalLevelOptions.find((opt) => opt.value === level);
|
|
28869
|
-
return _optionalChain([option, 'optionalAccess',
|
|
28905
|
+
return _optionalChain([option, 'optionalAccess', _491 => _491.label]) || level;
|
|
28870
28906
|
};
|
|
28871
28907
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
28872
28908
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border-b border-ods-border flex gap-4 items-center px-4 py-3", children: [
|
|
@@ -29080,12 +29116,12 @@ function PhoneInput({
|
|
|
29080
29116
|
const runValidation = _react.useCallback.call(void 0, (phone) => {
|
|
29081
29117
|
if (!phone || digitCount(phone) === 0) {
|
|
29082
29118
|
setIsInvalid(false);
|
|
29083
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
29119
|
+
_optionalChain([onValidationChange, 'optionalCall', _492 => _492(false)]);
|
|
29084
29120
|
return;
|
|
29085
29121
|
}
|
|
29086
29122
|
const invalid = !validatePhoneNumber(phone, countryCode);
|
|
29087
29123
|
setIsInvalid(invalid);
|
|
29088
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
29124
|
+
_optionalChain([onValidationChange, 'optionalCall', _493 => _493(invalid)]);
|
|
29089
29125
|
}, [countryCode, digitCount, onValidationChange]);
|
|
29090
29126
|
const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
|
|
29091
29127
|
if (debounceRef.current) clearTimeout(debounceRef.current);
|
|
@@ -29134,7 +29170,7 @@ function PhoneInput({
|
|
|
29134
29170
|
debouncedValidation(val);
|
|
29135
29171
|
} else if (digitCount(val) === 0) {
|
|
29136
29172
|
setIsInvalid(false);
|
|
29137
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
29173
|
+
_optionalChain([onValidationChange, 'optionalCall', _494 => _494(false)]);
|
|
29138
29174
|
}
|
|
29139
29175
|
}
|
|
29140
29176
|
},
|
|
@@ -29475,19 +29511,19 @@ function NotificationsProvider({
|
|
|
29475
29511
|
}, []);
|
|
29476
29512
|
const markRead = React92.useCallback((id) => {
|
|
29477
29513
|
dispatch({ type: "markRead", id });
|
|
29478
|
-
void _optionalChain([actionsRef, 'access',
|
|
29514
|
+
void _optionalChain([actionsRef, 'access', _495 => _495.current, 'optionalAccess', _496 => _496.onMarkRead, 'optionalCall', _497 => _497(id)]);
|
|
29479
29515
|
}, []);
|
|
29480
29516
|
const markAllRead = React92.useCallback(() => {
|
|
29481
29517
|
dispatch({ type: "markAllRead" });
|
|
29482
|
-
void _optionalChain([actionsRef, 'access',
|
|
29518
|
+
void _optionalChain([actionsRef, 'access', _498 => _498.current, 'optionalAccess', _499 => _499.onMarkAllRead, 'optionalCall', _500 => _500()]);
|
|
29483
29519
|
}, []);
|
|
29484
29520
|
const markSettled = React92.useCallback((id) => {
|
|
29485
29521
|
dispatch({ type: "markSettled", id });
|
|
29486
|
-
void _optionalChain([actionsRef, 'access',
|
|
29522
|
+
void _optionalChain([actionsRef, 'access', _501 => _501.current, 'optionalAccess', _502 => _502.onMarkSettled, 'optionalCall', _503 => _503(id)]);
|
|
29487
29523
|
}, []);
|
|
29488
29524
|
const remove = React92.useCallback((id) => {
|
|
29489
29525
|
dispatch({ type: "remove", id });
|
|
29490
|
-
void _optionalChain([actionsRef, 'access',
|
|
29526
|
+
void _optionalChain([actionsRef, 'access', _504 => _504.current, 'optionalAccess', _505 => _505.onRemove, 'optionalCall', _506 => _506(id)]);
|
|
29491
29527
|
}, []);
|
|
29492
29528
|
const clear = React92.useCallback(() => dispatch({ type: "clear" }), []);
|
|
29493
29529
|
const open = React92.useCallback(() => setIsOpen(true), []);
|
|
@@ -29496,14 +29532,14 @@ function NotificationsProvider({
|
|
|
29496
29532
|
const setShowPopups = React92.useCallback(
|
|
29497
29533
|
(value2) => {
|
|
29498
29534
|
setShowPopupsState(value2);
|
|
29499
|
-
_optionalChain([onShowPopupsChange, 'optionalCall',
|
|
29535
|
+
_optionalChain([onShowPopupsChange, 'optionalCall', _507 => _507(value2)]);
|
|
29500
29536
|
},
|
|
29501
29537
|
[onShowPopupsChange]
|
|
29502
29538
|
);
|
|
29503
29539
|
const setShowDesktopPopups = React92.useCallback(
|
|
29504
29540
|
(value2) => {
|
|
29505
29541
|
setShowDesktopPopupsState(value2);
|
|
29506
|
-
_optionalChain([onShowDesktopPopupsChange, 'optionalCall',
|
|
29542
|
+
_optionalChain([onShowDesktopPopupsChange, 'optionalCall', _508 => _508(value2)]);
|
|
29507
29543
|
},
|
|
29508
29544
|
[onShowDesktopPopupsChange]
|
|
29509
29545
|
);
|
|
@@ -29607,7 +29643,7 @@ function NotificationTile({
|
|
|
29607
29643
|
if (!counting) return;
|
|
29608
29644
|
const remaining = Math.max(0, liveDurationMs - initialElapsed);
|
|
29609
29645
|
const timer = window.setTimeout(() => {
|
|
29610
|
-
_optionalChain([onSettle, 'optionalCall',
|
|
29646
|
+
_optionalChain([onSettle, 'optionalCall', _509 => _509(id)]);
|
|
29611
29647
|
}, remaining);
|
|
29612
29648
|
return () => window.clearTimeout(timer);
|
|
29613
29649
|
}, [id, counting, initialElapsed, liveDurationMs, onSettle]);
|
|
@@ -29669,7 +29705,7 @@ function NotificationTile({
|
|
|
29669
29705
|
"button",
|
|
29670
29706
|
{
|
|
29671
29707
|
type: "button",
|
|
29672
|
-
onClick: () => _optionalChain([onSettle, 'optionalCall',
|
|
29708
|
+
onClick: () => _optionalChain([onSettle, 'optionalCall', _510 => _510(id)]),
|
|
29673
29709
|
"aria-label": "Dismiss notification",
|
|
29674
29710
|
tabIndex: isLive ? 0 : -1,
|
|
29675
29711
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -29802,7 +29838,7 @@ function DrawerScrollList({
|
|
|
29802
29838
|
if (!sentinel || !root) return;
|
|
29803
29839
|
const observer = new IntersectionObserver(
|
|
29804
29840
|
(entries) => {
|
|
29805
|
-
if (_optionalChain([entries, 'access',
|
|
29841
|
+
if (_optionalChain([entries, 'access', _511 => _511[0], 'optionalAccess', _512 => _512.isIntersecting])) _optionalChain([loadMoreRef, 'access', _513 => _513.current, 'optionalCall', _514 => _514()]);
|
|
29806
29842
|
},
|
|
29807
29843
|
{ root, rootMargin: loadMoreRootMargin }
|
|
29808
29844
|
);
|
|
@@ -29817,7 +29853,7 @@ function DrawerScrollList({
|
|
|
29817
29853
|
className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
|
|
29818
29854
|
children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
29819
29855
|
unreadNotifications.map((n) => {
|
|
29820
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
29856
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _515 => _515(n, { onComplete, onSettle, liveDurationMs })]);
|
|
29821
29857
|
if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
|
|
29822
29858
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29823
29859
|
NotificationTile,
|
|
@@ -29981,7 +30017,7 @@ function NotificationPopups({
|
|
|
29981
30017
|
className
|
|
29982
30018
|
),
|
|
29983
30019
|
children: live.map((n) => {
|
|
29984
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
30020
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _516 => _516(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
|
|
29985
30021
|
if (custom) {
|
|
29986
30022
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
|
|
29987
30023
|
}
|
|
@@ -30161,21 +30197,21 @@ function transformWebinarToProgram(webinar) {
|
|
|
30161
30197
|
// src/components/features/notifications/types.ts
|
|
30162
30198
|
var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
|
|
30163
30199
|
function isApprovalNotification(notification) {
|
|
30164
|
-
return _optionalChain([notification, 'access',
|
|
30200
|
+
return _optionalChain([notification, 'access', _517 => _517.meta, 'optionalAccess', _518 => _518.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
|
|
30165
30201
|
}
|
|
30166
30202
|
function getApprovalMeta(notification) {
|
|
30167
30203
|
if (!isApprovalNotification(notification)) return null;
|
|
30168
30204
|
const meta = notification.meta;
|
|
30169
|
-
const approvalRequestId = _optionalChain([meta, 'optionalAccess',
|
|
30170
|
-
const toolCalls = _optionalChain([meta, 'optionalAccess',
|
|
30205
|
+
const approvalRequestId = _optionalChain([meta, 'optionalAccess', _519 => _519.approvalRequestId]);
|
|
30206
|
+
const toolCalls = _optionalChain([meta, 'optionalAccess', _520 => _520.toolCalls]);
|
|
30171
30207
|
if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
|
|
30172
30208
|
return {
|
|
30173
30209
|
approvalRequestId,
|
|
30174
|
-
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
30175
|
-
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
30176
|
-
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
30177
|
-
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
30178
|
-
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
30210
|
+
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _521 => _521.dialogId]), () => ( null)),
|
|
30211
|
+
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _522 => _522.ticketId]), () => ( null)),
|
|
30212
|
+
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _523 => _523.approvalType]), () => ( null)),
|
|
30213
|
+
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _524 => _524.resolution]), () => ( null)),
|
|
30214
|
+
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _525 => _525.resolvedByName]), () => ( null)),
|
|
30179
30215
|
toolCalls
|
|
30180
30216
|
};
|
|
30181
30217
|
}
|
|
@@ -30224,7 +30260,7 @@ function ApprovalRequestNotificationTile({
|
|
|
30224
30260
|
const [pinned, setPinned] = _react.useState.call(void 0, defaultExpanded);
|
|
30225
30261
|
const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
|
|
30226
30262
|
const approval = getApprovalMeta(notification);
|
|
30227
|
-
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess',
|
|
30263
|
+
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _526 => _526.resolution]));
|
|
30228
30264
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
30229
30265
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
30230
30266
|
const { innerRef, containerStyle } = useCollapsible({ expanded });
|
|
@@ -30492,7 +30528,7 @@ function TimeTrackerPanel({
|
|
|
30492
30528
|
error: showFieldError ? "Required if no notes added" : void 0,
|
|
30493
30529
|
disableClientFilter: !!onTicketSearch,
|
|
30494
30530
|
onInputChange: (value, reason) => {
|
|
30495
|
-
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall',
|
|
30531
|
+
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _527 => _527(value)]);
|
|
30496
30532
|
}
|
|
30497
30533
|
}
|
|
30498
30534
|
)
|
|
@@ -30582,7 +30618,7 @@ function LastEntryRow({ entry, onClick }) {
|
|
|
30582
30618
|
{
|
|
30583
30619
|
variant: "outline",
|
|
30584
30620
|
size: "icon",
|
|
30585
|
-
onClick: () => _optionalChain([onClick, 'optionalCall',
|
|
30621
|
+
onClick: () => _optionalChain([onClick, 'optionalCall', _528 => _528(entry)]),
|
|
30586
30622
|
disabled: !onClick,
|
|
30587
30623
|
"aria-label": `Open entry: ${entry.title}`,
|
|
30588
30624
|
className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
|
|
@@ -30626,9 +30662,9 @@ function HeaderButton({
|
|
|
30626
30662
|
function TimeTrackerHeaderButton({ className, disabled }) {
|
|
30627
30663
|
const ctx = useOptionalTimeTracker();
|
|
30628
30664
|
const elapsedLabel = useTrackerClock({
|
|
30629
|
-
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
30630
|
-
runningSince: _optionalChain([ctx, 'optionalAccess',
|
|
30631
|
-
accumulatedMs: _optionalChain([ctx, 'optionalAccess',
|
|
30665
|
+
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _529 => _529.status]), () => ( "ready")),
|
|
30666
|
+
runningSince: _optionalChain([ctx, 'optionalAccess', _530 => _530.runningSince]),
|
|
30667
|
+
accumulatedMs: _optionalChain([ctx, 'optionalAccess', _531 => _531.accumulatedMs])
|
|
30632
30668
|
});
|
|
30633
30669
|
if (!ctx) return null;
|
|
30634
30670
|
const { isOpen, open, close, status } = ctx;
|
|
@@ -30911,15 +30947,15 @@ function TicketCard({
|
|
|
30911
30947
|
transition: sortable.transition
|
|
30912
30948
|
};
|
|
30913
30949
|
if (showNewMessage) style.borderColor = columnColor;
|
|
30914
|
-
const showDeviceRow = !!(_optionalChain([ticket, 'access',
|
|
30950
|
+
const showDeviceRow = !!(_optionalChain([ticket, 'access', _532 => _532.deviceHostnames, 'optionalAccess', _533 => _533.length]) || ticket.organizationName);
|
|
30915
30951
|
const deviceText = [
|
|
30916
|
-
_optionalChain([ticket, 'access',
|
|
30952
|
+
_optionalChain([ticket, 'access', _534 => _534.deviceHostnames, 'optionalAccess', _535 => _535.join, 'call', _536 => _536(", ")]),
|
|
30917
30953
|
ticket.organizationName
|
|
30918
30954
|
].filter(Boolean).join(", ");
|
|
30919
30955
|
const handleClick = (e) => {
|
|
30920
30956
|
if (sortable.isDragging) e.preventDefault();
|
|
30921
30957
|
};
|
|
30922
|
-
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access',
|
|
30958
|
+
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _537 => _537.assignees, 'optionalAccess', _538 => _538.length]) || renderAssignSlot);
|
|
30923
30959
|
const rightSection = hasRightSection ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex shrink-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
30924
30960
|
ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30925
30961
|
_chunkCCG4DARMcjs.Flag02Icon,
|
|
@@ -30928,7 +30964,7 @@ function TicketCard({
|
|
|
30928
30964
|
"aria-label": `Priority: ${ticket.priority}`
|
|
30929
30965
|
}
|
|
30930
30966
|
),
|
|
30931
|
-
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access',
|
|
30967
|
+
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _539 => _539.assignees, 'optionalAccess', _540 => _540.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
|
|
30932
30968
|
ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30933
30969
|
SquareAvatar,
|
|
30934
30970
|
{
|
|
@@ -30959,7 +30995,7 @@ function TicketCard({
|
|
|
30959
30995
|
] }),
|
|
30960
30996
|
rightSection
|
|
30961
30997
|
] }),
|
|
30962
|
-
_optionalChain([ticket, 'access',
|
|
30998
|
+
_optionalChain([ticket, 'access', _541 => _541.tags, 'optionalAccess', _542 => _542.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
|
|
30963
30999
|
timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
|
|
30964
31000
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto text-h6 truncate text-ods-text-secondary", children: timestampLabel }) }),
|
|
30965
31001
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
|
|
@@ -31159,7 +31195,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
31159
31195
|
const observer = new IntersectionObserver(
|
|
31160
31196
|
(entries) => {
|
|
31161
31197
|
if (entries.some((e) => e.isIntersecting)) {
|
|
31162
|
-
_optionalChain([loadMoreRef, 'access',
|
|
31198
|
+
_optionalChain([loadMoreRef, 'access', _543 => _543.current, 'optionalCall', _544 => _544(columnIdRef.current)]);
|
|
31163
31199
|
}
|
|
31164
31200
|
},
|
|
31165
31201
|
{ root, rootMargin: loadMoreRootMargin }
|
|
@@ -31189,7 +31225,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
31189
31225
|
ticket: t,
|
|
31190
31226
|
columnId: column.id,
|
|
31191
31227
|
columnColor: column.color,
|
|
31192
|
-
href: _optionalChain([getTicketHref, 'optionalCall',
|
|
31228
|
+
href: _optionalChain([getTicketHref, 'optionalCall', _545 => _545(t.id)]),
|
|
31193
31229
|
renderAssignSlot,
|
|
31194
31230
|
onApprove,
|
|
31195
31231
|
onReject,
|
|
@@ -31289,17 +31325,17 @@ function Board({
|
|
|
31289
31325
|
const pointer = _core.pointerWithin.call(void 0, args);
|
|
31290
31326
|
const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
|
|
31291
31327
|
const ticketHit = intersections.find(
|
|
31292
|
-
(c) => _optionalChain([c, 'access',
|
|
31328
|
+
(c) => _optionalChain([c, 'access', _546 => _546.data, 'optionalAccess', _547 => _547.droppableContainer, 'optionalAccess', _548 => _548.data, 'optionalAccess', _549 => _549.current, 'optionalAccess', _550 => _550.type]) === "ticket"
|
|
31293
31329
|
);
|
|
31294
31330
|
if (ticketHit) return [ticketHit];
|
|
31295
31331
|
const columnHit = intersections.find(
|
|
31296
|
-
(c) => _optionalChain([c, 'access',
|
|
31332
|
+
(c) => _optionalChain([c, 'access', _551 => _551.data, 'optionalAccess', _552 => _552.droppableContainer, 'optionalAccess', _553 => _553.data, 'optionalAccess', _554 => _554.current, 'optionalAccess', _555 => _555.type]) === "column"
|
|
31297
31333
|
);
|
|
31298
31334
|
if (columnHit) {
|
|
31299
|
-
const columnId = _optionalChain([columnHit, 'access',
|
|
31335
|
+
const columnId = _optionalChain([columnHit, 'access', _556 => _556.data, 'optionalAccess', _557 => _557.droppableContainer, 'optionalAccess', _558 => _558.data, 'optionalAccess', _559 => _559.current, 'optionalAccess', _560 => _560.columnId]);
|
|
31300
31336
|
const ticketsInColumn = args.droppableContainers.filter((c) => {
|
|
31301
31337
|
const d = c.data.current;
|
|
31302
|
-
return _optionalChain([d, 'optionalAccess',
|
|
31338
|
+
return _optionalChain([d, 'optionalAccess', _561 => _561.type]) === "ticket" && d.columnId === columnId;
|
|
31303
31339
|
});
|
|
31304
31340
|
if (ticketsInColumn.length > 0) {
|
|
31305
31341
|
const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
|
|
@@ -31324,20 +31360,20 @@ function Board({
|
|
|
31324
31360
|
const overId = String(over.id);
|
|
31325
31361
|
if (activeId === overId) return;
|
|
31326
31362
|
const overData = over.data.current;
|
|
31327
|
-
const fromColumnId = _optionalChain([locate, 'call',
|
|
31328
|
-
const toColumnId = _optionalChain([overData, 'optionalAccess',
|
|
31363
|
+
const fromColumnId = _optionalChain([locate, 'call', _562 => _562(items, activeId), 'optionalAccess', _563 => _563.columnId]);
|
|
31364
|
+
const toColumnId = _optionalChain([overData, 'optionalAccess', _564 => _564.columnId]);
|
|
31329
31365
|
if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
|
|
31330
31366
|
const origin = dragOriginRef.current;
|
|
31331
|
-
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess',
|
|
31367
|
+
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _565 => _565.fromColumnId]) === toColumnId;
|
|
31332
31368
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
31333
|
-
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess',
|
|
31334
|
-
if (_optionalChain([targetCol, 'optionalAccess',
|
|
31369
|
+
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _566 => _566.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
|
|
31370
|
+
if (_optionalChain([targetCol, 'optionalAccess', _567 => _567.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
|
|
31335
31371
|
setItems((prev) => {
|
|
31336
31372
|
const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
|
|
31337
31373
|
const toCol = prev.find((c) => c.id === toColumnId);
|
|
31338
31374
|
if (fromIndex < 0 || !toCol) return prev;
|
|
31339
31375
|
let toIndex;
|
|
31340
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
31376
|
+
if (_optionalChain([overData, 'optionalAccess', _568 => _568.type]) === "column") {
|
|
31341
31377
|
toIndex = toCol.tickets.length;
|
|
31342
31378
|
} else {
|
|
31343
31379
|
const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
|
|
@@ -31379,14 +31415,14 @@ function Board({
|
|
|
31379
31415
|
const toColumnId = located.columnId;
|
|
31380
31416
|
const isCrossColumn = origin.fromColumnId !== toColumnId;
|
|
31381
31417
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
31382
|
-
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess',
|
|
31418
|
+
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _569 => _569.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _570 => _570.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
|
|
31383
31419
|
setItems(columns);
|
|
31384
31420
|
return;
|
|
31385
31421
|
}
|
|
31386
31422
|
let finalIndex = located.index;
|
|
31387
|
-
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access',
|
|
31423
|
+
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _571 => _571.find, 'call', _572 => _572((c) => c.id === toColumnId), 'optionalAccess', _573 => _573.tickets]), () => ( []));
|
|
31388
31424
|
const overData = over.data.current;
|
|
31389
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
31425
|
+
if (_optionalChain([overData, 'optionalAccess', _574 => _574.type]) === "ticket") {
|
|
31390
31426
|
const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
|
|
31391
31427
|
if (overIndex >= 0 && overIndex !== located.index) {
|
|
31392
31428
|
finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
|
|
@@ -31406,8 +31442,8 @@ function Board({
|
|
|
31406
31442
|
ticketId: origin.ticketId,
|
|
31407
31443
|
fromColumnId: origin.fromColumnId,
|
|
31408
31444
|
toColumnId,
|
|
31409
|
-
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
31410
|
-
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
31445
|
+
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _575 => _575[finalIndex - 1], 'optionalAccess', _576 => _576.id]), () => ( null)),
|
|
31446
|
+
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _577 => _577[finalIndex + 1], 'optionalAccess', _578 => _578.id]), () => ( null))
|
|
31411
31447
|
});
|
|
31412
31448
|
};
|
|
31413
31449
|
const handleDragCancel = () => {
|
|
@@ -31436,8 +31472,8 @@ function Board({
|
|
|
31436
31472
|
children: items.map((column, i) => {
|
|
31437
31473
|
const prev = items[i - 1];
|
|
31438
31474
|
const next = items[i + 1];
|
|
31439
|
-
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess',
|
|
31440
|
-
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess',
|
|
31475
|
+
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _579 => _579.system]));
|
|
31476
|
+
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _580 => _580.system]));
|
|
31441
31477
|
const showGap = i > 0 && !joinLeft;
|
|
31442
31478
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React98.Fragment, { children: [
|
|
31443
31479
|
showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
|
|
@@ -31490,7 +31526,7 @@ function Board({
|
|
|
31490
31526
|
{
|
|
31491
31527
|
ticket: activeTicket.ticket,
|
|
31492
31528
|
columnId: activeTicket.columnId,
|
|
31493
|
-
columnColor: _optionalChain([items, 'access',
|
|
31529
|
+
columnColor: _optionalChain([items, 'access', _581 => _581.find, 'call', _582 => _582((c) => c.id === activeTicket.columnId), 'optionalAccess', _583 => _583.color]),
|
|
31494
31530
|
isOverlay: true
|
|
31495
31531
|
}
|
|
31496
31532
|
) : null })
|
|
@@ -31506,7 +31542,7 @@ function locate(cols, ticketId) {
|
|
|
31506
31542
|
return null;
|
|
31507
31543
|
}
|
|
31508
31544
|
function findIndexInColumn(cols, columnId, ticketId) {
|
|
31509
|
-
return _nullishCoalesce(_optionalChain([cols, 'access',
|
|
31545
|
+
return _nullishCoalesce(_optionalChain([cols, 'access', _584 => _584.find, 'call', _585 => _585((c) => c.id === columnId), 'optionalAccess', _586 => _586.tickets, 'access', _587 => _587.findIndex, 'call', _588 => _588((t) => t.id === ticketId)]), () => ( -1));
|
|
31510
31546
|
}
|
|
31511
31547
|
|
|
31512
31548
|
// src/components/features/board/types.ts
|
|
@@ -31754,7 +31790,7 @@ function Header2({ config, platform }) {
|
|
|
31754
31790
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
31755
31791
|
"flex justify-start w-full",
|
|
31756
31792
|
"font-bold text-[16px] leading-none tracking-[-0.32px]",
|
|
31757
|
-
index < (_nullishCoalesce(_optionalChain([item, 'access',
|
|
31793
|
+
index < (_nullishCoalesce(_optionalChain([item, 'access', _589 => _589.children, 'optionalAccess', _590 => _590.length]), () => ( 0))) - 1 && "mb-1",
|
|
31758
31794
|
"text-ods-text-primary",
|
|
31759
31795
|
// All dropdown items use primary text color
|
|
31760
31796
|
child.isActive && "bg-ods-bg-hover"
|
|
@@ -31846,7 +31882,7 @@ function Header2({ config, platform }) {
|
|
|
31846
31882
|
style: config.style,
|
|
31847
31883
|
children: [
|
|
31848
31884
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
31849
|
-
_optionalChain([config, 'access',
|
|
31885
|
+
_optionalChain([config, 'access', _591 => _591.actions, 'optionalAccess', _592 => _592.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
|
|
31850
31886
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWBR7H6E3cjs.next_link_default, { href: config.logo.href, className: "transition-opacity duration-200 hover:opacity-80", children: config.logo.element })
|
|
31851
31887
|
] }),
|
|
31852
31888
|
config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -31863,7 +31899,7 @@ function Header2({ config, platform }) {
|
|
|
31863
31899
|
}
|
|
31864
31900
|
),
|
|
31865
31901
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
|
|
31866
|
-
_optionalChain([config, 'access',
|
|
31902
|
+
_optionalChain([config, 'access', _593 => _593.actions, 'optionalAccess', _594 => _594.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
|
|
31867
31903
|
config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31868
31904
|
_chunkQJGRP2YEcjs.Button,
|
|
31869
31905
|
{
|
|
@@ -31871,10 +31907,10 @@ function Header2({ config, platform }) {
|
|
|
31871
31907
|
size: "icon",
|
|
31872
31908
|
className: "flex md:hidden",
|
|
31873
31909
|
onClick: () => {
|
|
31874
|
-
_optionalChain([config, 'access',
|
|
31910
|
+
_optionalChain([config, 'access', _595 => _595.mobile, 'optionalAccess', _596 => _596.onToggle, 'optionalCall', _597 => _597()]);
|
|
31875
31911
|
},
|
|
31876
|
-
"aria-label": _optionalChain([config, 'access',
|
|
31877
|
-
leftIcon: _optionalChain([config, 'access',
|
|
31912
|
+
"aria-label": _optionalChain([config, 'access', _598 => _598.mobile, 'optionalAccess', _599 => _599.isOpen]) ? "Close menu" : "Open menu",
|
|
31913
|
+
leftIcon: _optionalChain([config, 'access', _600 => _600.mobile, 'optionalAccess', _601 => _601.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Menu01Icon, {})
|
|
31878
31914
|
}
|
|
31879
31915
|
)
|
|
31880
31916
|
] })
|
|
@@ -31891,10 +31927,10 @@ function Header2({ config, platform }) {
|
|
|
31891
31927
|
// src/components/navigation/header-skeleton.tsx
|
|
31892
31928
|
|
|
31893
31929
|
function HeaderSkeleton({ config }) {
|
|
31894
|
-
const showNavigation = _optionalChain([config, 'optionalAccess',
|
|
31895
|
-
const showActions = _optionalChain([config, 'optionalAccess',
|
|
31896
|
-
const showMobileMenu = _optionalChain([config, 'optionalAccess',
|
|
31897
|
-
const isAdminHeader = _optionalChain([config, 'optionalAccess',
|
|
31930
|
+
const showNavigation = _optionalChain([config, 'optionalAccess', _602 => _602.navigation]) && config.navigation.items.length > 0;
|
|
31931
|
+
const showActions = _optionalChain([config, 'optionalAccess', _603 => _603.actions, 'optionalAccess', _604 => _604.right]) && config.actions.right.length > 0;
|
|
31932
|
+
const showMobileMenu = _optionalChain([config, 'optionalAccess', _605 => _605.mobile, 'optionalAccess', _606 => _606.enabled]);
|
|
31933
|
+
const isAdminHeader = _optionalChain([config, 'optionalAccess', _607 => _607.className, 'optionalAccess', _608 => _608.includes, 'call', _609 => _609("admin")]);
|
|
31898
31934
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31899
31935
|
"header",
|
|
31900
31936
|
{
|
|
@@ -31903,11 +31939,11 @@ function HeaderSkeleton({ config }) {
|
|
|
31903
31939
|
"bg-ods-card border-b border-ods-border backdrop-blur-sm",
|
|
31904
31940
|
"px-6 py-3",
|
|
31905
31941
|
"transition-opacity duration-300 ease-in-out",
|
|
31906
|
-
_optionalChain([config, 'optionalAccess',
|
|
31942
|
+
_optionalChain([config, 'optionalAccess', _610 => _610.className])
|
|
31907
31943
|
),
|
|
31908
31944
|
children: [
|
|
31909
31945
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
31910
|
-
isAdminHeader && _optionalChain([config, 'optionalAccess',
|
|
31946
|
+
isAdminHeader && _optionalChain([config, 'optionalAccess', _611 => _611.actions, 'optionalAccess', _612 => _612.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mr-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-10 bg-ods-border rounded animate-pulse" }) }),
|
|
31911
31947
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
31912
31948
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
|
|
31913
31949
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
|
|
@@ -31915,8 +31951,8 @@ function HeaderSkeleton({ config }) {
|
|
|
31915
31951
|
] }),
|
|
31916
31952
|
showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
31917
31953
|
"hidden md:flex items-center gap-2",
|
|
31918
|
-
_optionalChain([config, 'optionalAccess',
|
|
31919
|
-
_optionalChain([config, 'optionalAccess',
|
|
31954
|
+
_optionalChain([config, 'optionalAccess', _613 => _613.navigation, 'optionalAccess', _614 => _614.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
|
|
31955
|
+
_optionalChain([config, 'optionalAccess', _615 => _615.navigation, 'optionalAccess', _616 => _616.position]) === "right" && "ml-auto mr-4"
|
|
31920
31956
|
), children: [
|
|
31921
31957
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
|
|
31922
31958
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
|
|
@@ -31964,7 +32000,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
31964
32000
|
_react.useEffect.call(void 0, () => {
|
|
31965
32001
|
const handleKeyDown = (e) => {
|
|
31966
32002
|
if (e.key === "Escape" && isOpen) {
|
|
31967
|
-
_optionalChain([config, 'access',
|
|
32003
|
+
_optionalChain([config, 'access', _617 => _617.onClose, 'optionalCall', _618 => _618()]);
|
|
31968
32004
|
}
|
|
31969
32005
|
};
|
|
31970
32006
|
if (isOpen) {
|
|
@@ -31981,7 +32017,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
31981
32017
|
if (item.onClick) {
|
|
31982
32018
|
item.onClick();
|
|
31983
32019
|
}
|
|
31984
|
-
_optionalChain([config, 'access',
|
|
32020
|
+
_optionalChain([config, 'access', _619 => _619.onClose, 'optionalCall', _620 => _620()]);
|
|
31985
32021
|
};
|
|
31986
32022
|
if (item.href) {
|
|
31987
32023
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -32151,7 +32187,7 @@ function SlidingSidebar({ config }) {
|
|
|
32151
32187
|
variant: "transparent",
|
|
32152
32188
|
size: "default",
|
|
32153
32189
|
onClick: () => {
|
|
32154
|
-
_optionalChain([item, 'access',
|
|
32190
|
+
_optionalChain([item, 'access', _621 => _621.onClick, 'optionalCall', _622 => _622()]);
|
|
32155
32191
|
config.onClose();
|
|
32156
32192
|
},
|
|
32157
32193
|
leftIcon: item.icon,
|
|
@@ -32174,7 +32210,7 @@ function SlidingSidebar({ config }) {
|
|
|
32174
32210
|
variant: "transparent",
|
|
32175
32211
|
size: "default",
|
|
32176
32212
|
onClick: () => {
|
|
32177
|
-
_optionalChain([item, 'access',
|
|
32213
|
+
_optionalChain([item, 'access', _623 => _623.onClick, 'optionalCall', _624 => _624()]);
|
|
32178
32214
|
config.onClose();
|
|
32179
32215
|
},
|
|
32180
32216
|
leftIcon: item.icon,
|
|
@@ -32301,7 +32337,7 @@ function StickySectionNav({
|
|
|
32301
32337
|
] });
|
|
32302
32338
|
}
|
|
32303
32339
|
function useSectionNavigation(sections, options) {
|
|
32304
|
-
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access',
|
|
32340
|
+
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _625 => _625[0], 'optionalAccess', _626 => _626.id]) || "");
|
|
32305
32341
|
const isScrollingFromClick = _react.useRef.call(void 0, false);
|
|
32306
32342
|
const { offset: offset2 = 100 } = options || {};
|
|
32307
32343
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
@@ -32325,7 +32361,7 @@ function useSectionNavigation(sections, options) {
|
|
|
32325
32361
|
const handleScroll = () => {
|
|
32326
32362
|
if (isScrollingFromClick.current) return;
|
|
32327
32363
|
const scrollPosition = window.scrollY + offset2 + 50;
|
|
32328
|
-
let currentSection = _optionalChain([sections, 'access',
|
|
32364
|
+
let currentSection = _optionalChain([sections, 'access', _627 => _627[0], 'optionalAccess', _628 => _628.id]) || "";
|
|
32329
32365
|
for (let i = sections.length - 1; i >= 0; i--) {
|
|
32330
32366
|
const element = document.getElementById(sections[i].id);
|
|
32331
32367
|
if (element && scrollPosition >= element.offsetTop) {
|
|
@@ -32526,7 +32562,7 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
32526
32562
|
} else {
|
|
32527
32563
|
setDesktopMinimized((prev) => !prev);
|
|
32528
32564
|
}
|
|
32529
|
-
_optionalChain([config, 'access',
|
|
32565
|
+
_optionalChain([config, 'access', _629 => _629.onToggleMinimized, 'optionalCall', _630 => _630()]);
|
|
32530
32566
|
}, [isTablet, setDesktopMinimized, config]);
|
|
32531
32567
|
const closeOverlay = _react.useCallback.call(void 0, () => {
|
|
32532
32568
|
setTabletMinimized(true);
|
|
@@ -32540,11 +32576,11 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
32540
32576
|
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
32541
32577
|
}, [isOverlayOpen, closeOverlay]);
|
|
32542
32578
|
const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
|
|
32543
|
-
_optionalChain([event, 'optionalAccess',
|
|
32579
|
+
_optionalChain([event, 'optionalAccess', _631 => _631.stopPropagation, 'call', _632 => _632()]);
|
|
32544
32580
|
if (item.onClick) {
|
|
32545
32581
|
item.onClick();
|
|
32546
32582
|
} else if (item.path) {
|
|
32547
|
-
_optionalChain([config, 'access',
|
|
32583
|
+
_optionalChain([config, 'access', _633 => _633.onNavigate, 'optionalCall', _634 => _634(item.path)]);
|
|
32548
32584
|
}
|
|
32549
32585
|
if (isTablet) setTabletMinimized(true);
|
|
32550
32586
|
}, [config, isTablet]);
|
|
@@ -32664,11 +32700,11 @@ function HeaderGlobalSearch({
|
|
|
32664
32700
|
};
|
|
32665
32701
|
const handleSubmit = (e) => {
|
|
32666
32702
|
e.preventDefault();
|
|
32667
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
32703
|
+
_optionalChain([onSubmit, 'optionalCall', _635 => _635(currentValue)]);
|
|
32668
32704
|
};
|
|
32669
32705
|
const handleKeyDown = (e) => {
|
|
32670
32706
|
if (e.key === "Enter") {
|
|
32671
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
32707
|
+
_optionalChain([onSubmit, 'optionalCall', _636 => _636(currentValue)]);
|
|
32672
32708
|
}
|
|
32673
32709
|
};
|
|
32674
32710
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -32762,8 +32798,8 @@ function HeaderOrganizationFilter({
|
|
|
32762
32798
|
className
|
|
32763
32799
|
}) {
|
|
32764
32800
|
const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
|
|
32765
|
-
const displayName = _optionalChain([selectedOrg, 'optionalAccess',
|
|
32766
|
-
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess',
|
|
32801
|
+
const displayName = _optionalChain([selectedOrg, 'optionalAccess', _637 => _637.name]) || "All Organizations";
|
|
32802
|
+
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _638 => _638.deviceCount]), () => ( totalDeviceCount));
|
|
32767
32803
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenu, { children: [
|
|
32768
32804
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32769
32805
|
"button",
|
|
@@ -32788,11 +32824,11 @@ function HeaderOrganizationFilter({
|
|
|
32788
32824
|
}
|
|
32789
32825
|
) }),
|
|
32790
32826
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
|
|
32791
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
32827
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _639 => _639("")]), children: "All Organizations" }),
|
|
32792
32828
|
organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32793
32829
|
_chunkQJGRP2YEcjs.DropdownMenuItem,
|
|
32794
32830
|
{
|
|
32795
|
-
onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
32831
|
+
onClick: () => _optionalChain([onOrgChange, 'optionalCall', _640 => _640(org.id)]),
|
|
32796
32832
|
children: org.name
|
|
32797
32833
|
},
|
|
32798
32834
|
org.id
|
|
@@ -32982,9 +33018,9 @@ function NotificationsHeaderButton({
|
|
|
32982
33018
|
dimmedClass
|
|
32983
33019
|
}) {
|
|
32984
33020
|
const ctx = useOptionalNotifications();
|
|
32985
|
-
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
32986
|
-
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
32987
|
-
const onClick = _optionalChain([ctx, 'optionalAccess',
|
|
33021
|
+
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _641 => _641.unreadCount]), () => ( fallbackUnreadCount))) > 0;
|
|
33022
|
+
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _642 => _642.isOpen]), () => ( false));
|
|
33023
|
+
const onClick = _optionalChain([ctx, 'optionalAccess', _643 => _643.toggle]);
|
|
32988
33024
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32989
33025
|
HeaderButton,
|
|
32990
33026
|
{
|
|
@@ -33048,7 +33084,7 @@ var MobileBurgerMenu = React114.default.memo(function MobileBurgerMenu2({
|
|
|
33048
33084
|
if (item.onClick) {
|
|
33049
33085
|
item.onClick();
|
|
33050
33086
|
} else if (item.path) {
|
|
33051
|
-
_optionalChain([config, 'access',
|
|
33087
|
+
_optionalChain([config, 'access', _644 => _644.onNavigate, 'optionalCall', _645 => _645(item.path)]);
|
|
33052
33088
|
}
|
|
33053
33089
|
onClose();
|
|
33054
33090
|
}, [config, onClose]);
|
|
@@ -33291,7 +33327,7 @@ var AppLayoutDrawerRoot = ({
|
|
|
33291
33327
|
const handleOpenChange = React107.useCallback(
|
|
33292
33328
|
(next) => {
|
|
33293
33329
|
if (!isControlled) setInternalOpen(next);
|
|
33294
|
-
_optionalChain([onOpenChange, 'optionalCall',
|
|
33330
|
+
_optionalChain([onOpenChange, 'optionalCall', _646 => _646(next)]);
|
|
33295
33331
|
},
|
|
33296
33332
|
[isControlled, onOpenChange]
|
|
33297
33333
|
);
|
|
@@ -33672,10 +33708,10 @@ var AppLayoutDrawerContent = React107.forwardRef(
|
|
|
33672
33708
|
),
|
|
33673
33709
|
style,
|
|
33674
33710
|
onInteractOutside: (event) => {
|
|
33675
|
-
_optionalChain([onInteractOutside, 'optionalCall',
|
|
33711
|
+
_optionalChain([onInteractOutside, 'optionalCall', _647 => _647(event)]);
|
|
33676
33712
|
if (event.defaultPrevented) return;
|
|
33677
33713
|
const target = event.target;
|
|
33678
|
-
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess',
|
|
33714
|
+
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _648 => _648.contains, 'call', _649 => _649(target)]);
|
|
33679
33715
|
if (!isInsideContainer) {
|
|
33680
33716
|
event.preventDefault();
|
|
33681
33717
|
return;
|
|
@@ -34088,7 +34124,7 @@ var ShellTypeBadge = ({
|
|
|
34088
34124
|
className,
|
|
34089
34125
|
iconClassName
|
|
34090
34126
|
}) => {
|
|
34091
|
-
const normalizedType = _optionalChain([shellType, 'optionalAccess',
|
|
34127
|
+
const normalizedType = _optionalChain([shellType, 'optionalAccess', _650 => _650.toUpperCase, 'call', _651 => _651()]);
|
|
34092
34128
|
const label = getShellLabel(normalizedType);
|
|
34093
34129
|
const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
|
|
34094
34130
|
const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
|
|
@@ -34475,12 +34511,12 @@ function OnboardingWalkthrough({
|
|
|
34475
34511
|
}
|
|
34476
34512
|
}, [state.completedSteps, markComplete]);
|
|
34477
34513
|
const handleStepSkip = (step) => {
|
|
34478
|
-
_optionalChain([step, 'access',
|
|
34514
|
+
_optionalChain([step, 'access', _652 => _652.onSkip, 'optionalCall', _653 => _653()]);
|
|
34479
34515
|
markSkipped(step.id);
|
|
34480
34516
|
};
|
|
34481
34517
|
const handleDismiss = () => {
|
|
34482
34518
|
dismissOnboarding();
|
|
34483
|
-
_optionalChain([onDismiss, 'optionalCall',
|
|
34519
|
+
_optionalChain([onDismiss, 'optionalCall', _654 => _654()]);
|
|
34484
34520
|
};
|
|
34485
34521
|
if (state.dismissed) {
|
|
34486
34522
|
return null;
|
|
@@ -34610,7 +34646,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
34610
34646
|
onKeyDown: (e) => {
|
|
34611
34647
|
if (e.key === "Enter" || e.key === " ") {
|
|
34612
34648
|
e.preventDefault();
|
|
34613
|
-
_optionalChain([onClick, 'optionalCall',
|
|
34649
|
+
_optionalChain([onClick, 'optionalCall', _655 => _655()]);
|
|
34614
34650
|
}
|
|
34615
34651
|
},
|
|
34616
34652
|
children: [
|
|
@@ -34711,7 +34747,7 @@ var LogsList = React111.forwardRef(({
|
|
|
34711
34747
|
log,
|
|
34712
34748
|
isLast: index === logs.length - 1,
|
|
34713
34749
|
showConnector,
|
|
34714
|
-
onClick: () => _optionalChain([onLogClick, 'optionalCall',
|
|
34750
|
+
onClick: () => _optionalChain([onLogClick, 'optionalCall', _656 => _656(log)])
|
|
34715
34751
|
},
|
|
34716
34752
|
log.id
|
|
34717
34753
|
))
|
|
@@ -34815,7 +34851,7 @@ var Slider = React113.forwardRef(
|
|
|
34815
34851
|
({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
|
|
34816
34852
|
const handleChange = (e) => {
|
|
34817
34853
|
const newValue = [Number(e.target.value)];
|
|
34818
|
-
_optionalChain([onValueChange, 'optionalCall',
|
|
34854
|
+
_optionalChain([onValueChange, 'optionalCall', _657 => _657(newValue)]);
|
|
34819
34855
|
};
|
|
34820
34856
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34821
34857
|
"input",
|
|
@@ -35246,7 +35282,7 @@ function CursorPaginationSimple({
|
|
|
35246
35282
|
{
|
|
35247
35283
|
variant: "transparent",
|
|
35248
35284
|
size: "icon",
|
|
35249
|
-
onClick: () => _optionalChain([onPrevious, 'optionalCall',
|
|
35285
|
+
onClick: () => _optionalChain([onPrevious, 'optionalCall', _658 => _658("")]),
|
|
35250
35286
|
disabled: !hasPreviousPage || loading,
|
|
35251
35287
|
className: "h-8 w-8",
|
|
35252
35288
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -35258,7 +35294,7 @@ function CursorPaginationSimple({
|
|
|
35258
35294
|
{
|
|
35259
35295
|
variant: "transparent",
|
|
35260
35296
|
size: "icon",
|
|
35261
|
-
onClick: () => _optionalChain([onNext, 'optionalCall',
|
|
35297
|
+
onClick: () => _optionalChain([onNext, 'optionalCall', _659 => _659("")]),
|
|
35262
35298
|
disabled: !hasNextPage || loading,
|
|
35263
35299
|
className: "h-8 w-8",
|
|
35264
35300
|
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
|
|
@@ -35278,8 +35314,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
|
|
|
35278
35314
|
icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
|
|
35279
35315
|
title: _nullishCoalesce(message2, () => ( "No results found")),
|
|
35280
35316
|
description: message2 == null ? "Try adjusting your search or filters" : void 0,
|
|
35281
|
-
buttonLabel: _optionalChain([action, 'optionalAccess',
|
|
35282
|
-
onButtonClick: _optionalChain([action, 'optionalAccess',
|
|
35317
|
+
buttonLabel: _optionalChain([action, 'optionalAccess', _660 => _660.label]),
|
|
35318
|
+
onButtonClick: _optionalChain([action, 'optionalAccess', _661 => _661.onClick]),
|
|
35283
35319
|
className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
|
|
35284
35320
|
}
|
|
35285
35321
|
);
|
|
@@ -35300,7 +35336,7 @@ function TableColumnFilterDropdown({
|
|
|
35300
35336
|
placement = "bottom-start",
|
|
35301
35337
|
dropdownClassName = "min-w-[240px]"
|
|
35302
35338
|
}) {
|
|
35303
|
-
const activeCount = _optionalChain([filters, 'optionalAccess',
|
|
35339
|
+
const activeCount = _optionalChain([filters, 'optionalAccess', _662 => _662[columnKey], 'optionalAccess', _663 => _663.length]) || 0;
|
|
35304
35340
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35305
35341
|
FiltersDropdown,
|
|
35306
35342
|
{
|
|
@@ -35343,7 +35379,7 @@ function TableColumnFilterDropdown({
|
|
|
35343
35379
|
delete newFilters[columnKey];
|
|
35344
35380
|
onFilterChange(newFilters);
|
|
35345
35381
|
},
|
|
35346
|
-
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess',
|
|
35382
|
+
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _664 => _664[columnKey]]) || [] },
|
|
35347
35383
|
placement,
|
|
35348
35384
|
dropdownClassName
|
|
35349
35385
|
}
|
|
@@ -35553,7 +35589,7 @@ function TableCardSkeleton({
|
|
|
35553
35589
|
className,
|
|
35554
35590
|
rowClassName
|
|
35555
35591
|
}) {
|
|
35556
|
-
const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess',
|
|
35592
|
+
const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _665 => _665.key]);
|
|
35557
35593
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
35558
35594
|
"div",
|
|
35559
35595
|
{
|
|
@@ -35641,7 +35677,7 @@ function TableRow({
|
|
|
35641
35677
|
const keys = column.key.split(".");
|
|
35642
35678
|
let value = item;
|
|
35643
35679
|
for (const key of keys) {
|
|
35644
|
-
value = _optionalChain([value, 'optionalAccess',
|
|
35680
|
+
value = _optionalChain([value, 'optionalAccess', _666 => _666[key]]);
|
|
35645
35681
|
}
|
|
35646
35682
|
if (value === null || value === void 0) {
|
|
35647
35683
|
return "-";
|
|
@@ -35711,7 +35747,7 @@ function TableRow({
|
|
|
35711
35747
|
// src/components/ui/table/table.tsx
|
|
35712
35748
|
|
|
35713
35749
|
function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
|
|
35714
|
-
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess',
|
|
35750
|
+
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _667 => _667.length])) || Boolean(renderRowActions);
|
|
35715
35751
|
const result = [...columns];
|
|
35716
35752
|
if (hasActions) {
|
|
35717
35753
|
const actionsColumn = {
|
|
@@ -35805,7 +35841,7 @@ function Table({
|
|
|
35805
35841
|
return rowKey(item);
|
|
35806
35842
|
}
|
|
35807
35843
|
const key = item[rowKey];
|
|
35808
|
-
return _optionalChain([key, 'optionalAccess',
|
|
35844
|
+
return _optionalChain([key, 'optionalAccess', _668 => _668.toString, 'call', _669 => _669()]) || index.toString();
|
|
35809
35845
|
};
|
|
35810
35846
|
const getRowClassName = (item, index) => {
|
|
35811
35847
|
if (typeof rowClassName === "function") {
|
|
@@ -35839,23 +35875,23 @@ function Table({
|
|
|
35839
35875
|
const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
|
|
35840
35876
|
const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
|
|
35841
35877
|
const sentinelRef = _react.useRef.call(void 0, null);
|
|
35842
|
-
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess',
|
|
35843
|
-
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess',
|
|
35878
|
+
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _670 => _670.onLoadMore]));
|
|
35879
|
+
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _671 => _671.onLoadMore]);
|
|
35844
35880
|
_react.useEffect.call(void 0, () => {
|
|
35845
|
-
if (!_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35881
|
+
if (!_optionalChain([infiniteScroll, 'optionalAccess', _672 => _672.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
|
|
35846
35882
|
const sentinel = sentinelRef.current;
|
|
35847
35883
|
if (!sentinel) return;
|
|
35848
35884
|
const observer = new IntersectionObserver(
|
|
35849
35885
|
(entries) => {
|
|
35850
|
-
if (_optionalChain([entries, 'access',
|
|
35851
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
35886
|
+
if (_optionalChain([entries, 'access', _673 => _673[0], 'optionalAccess', _674 => _674.isIntersecting])) {
|
|
35887
|
+
_optionalChain([onLoadMoreRef, 'access', _675 => _675.current, 'optionalCall', _676 => _676()]);
|
|
35852
35888
|
}
|
|
35853
35889
|
},
|
|
35854
35890
|
{ rootMargin: "200px" }
|
|
35855
35891
|
);
|
|
35856
35892
|
observer.observe(sentinel);
|
|
35857
35893
|
return () => observer.disconnect();
|
|
35858
|
-
}, [_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35894
|
+
}, [_optionalChain([infiniteScroll, 'optionalAccess', _677 => _677.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _678 => _678.isFetchingNextPage])]);
|
|
35859
35895
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
|
|
35860
35896
|
showToolbar && bulkActions && selectedRows.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between bg-ods-card border border-ods-border rounded-[6px] p-3 mb-2", children: [
|
|
35861
35897
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
|
|
@@ -35926,7 +35962,7 @@ function Table({
|
|
|
35926
35962
|
},
|
|
35927
35963
|
getRowKey(item, index)
|
|
35928
35964
|
)),
|
|
35929
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35965
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _679 => _679.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35930
35966
|
TableCardSkeleton,
|
|
35931
35967
|
{
|
|
35932
35968
|
columns,
|
|
@@ -35935,7 +35971,7 @@ function Table({
|
|
|
35935
35971
|
hasChevron: Boolean(rowHref)
|
|
35936
35972
|
}
|
|
35937
35973
|
),
|
|
35938
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35974
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _680 => _680.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
|
|
35939
35975
|
!infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
35940
35976
|
"div",
|
|
35941
35977
|
{
|
|
@@ -36293,7 +36329,7 @@ function QueryReportTable({
|
|
|
36293
36329
|
);
|
|
36294
36330
|
const handleExport = () => {
|
|
36295
36331
|
exportToCSV(data, columns, exportFilename);
|
|
36296
|
-
_optionalChain([onExport, 'optionalCall',
|
|
36332
|
+
_optionalChain([onExport, 'optionalCall', _681 => _681()]);
|
|
36297
36333
|
};
|
|
36298
36334
|
const tableMinWidth = columns.length * (columnWidth + 16);
|
|
36299
36335
|
const {
|
|
@@ -36466,7 +36502,7 @@ function DataTableColumnFilter({
|
|
|
36466
36502
|
align = "left"
|
|
36467
36503
|
}) {
|
|
36468
36504
|
const currentValue = column.getFilterValue();
|
|
36469
|
-
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess',
|
|
36505
|
+
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _682 => _682.length]), () => ( 0));
|
|
36470
36506
|
const sections = _react.useMemo.call(void 0,
|
|
36471
36507
|
() => [
|
|
36472
36508
|
{
|
|
@@ -36546,7 +36582,7 @@ function DataTableHeader({
|
|
|
36546
36582
|
const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
|
|
36547
36583
|
if (header.isPlaceholder) return false;
|
|
36548
36584
|
if (isLgUp) return true;
|
|
36549
|
-
return Boolean(_optionalChain([header, 'access',
|
|
36585
|
+
return Boolean(_optionalChain([header, 'access', _683 => _683.column, 'access', _684 => _684.columnDef, 'access', _685 => _685.meta, 'optionalAccess', _686 => _686.filter]));
|
|
36550
36586
|
});
|
|
36551
36587
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36552
36588
|
"div",
|
|
@@ -36576,20 +36612,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
36576
36612
|
if (header.isPlaceholder) return null;
|
|
36577
36613
|
const column = header.column;
|
|
36578
36614
|
const meta = column.columnDef.meta;
|
|
36579
|
-
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess',
|
|
36580
|
-
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
36581
|
-
const canSort = _optionalChain([meta, 'optionalAccess',
|
|
36582
|
-
const sortDir = _optionalChain([sort, 'optionalAccess',
|
|
36615
|
+
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _687 => _687.filter]));
|
|
36616
|
+
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _688 => _688.align]), () => ( "left"));
|
|
36617
|
+
const canSort = _optionalChain([meta, 'optionalAccess', _689 => _689.sortable]) === true;
|
|
36618
|
+
const sortDir = _optionalChain([sort, 'optionalAccess', _690 => _690.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
|
|
36583
36619
|
if (!isLgUp && !hasFilter) return null;
|
|
36584
36620
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36585
36621
|
"div",
|
|
36586
36622
|
{
|
|
36587
36623
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
36588
36624
|
"flex items-stretch",
|
|
36589
|
-
isLgUp && (_optionalChain([meta, 'optionalAccess',
|
|
36590
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36625
|
+
isLgUp && (_optionalChain([meta, 'optionalAccess', _691 => _691.width]) || "flex-1 min-w-0"),
|
|
36626
|
+
_optionalChain([meta, 'optionalAccess', _692 => _692.headerClassName]),
|
|
36591
36627
|
// Don't apply hide classes if column is filterable on tablet (keep filter accessible)
|
|
36592
|
-
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
36628
|
+
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _693 => _693.hideAt]))
|
|
36593
36629
|
),
|
|
36594
36630
|
children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36595
36631
|
DataTableColumnFilter,
|
|
@@ -36608,7 +36644,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
36608
36644
|
isLgUp && alignJustify(align),
|
|
36609
36645
|
canSort && "group cursor-pointer"
|
|
36610
36646
|
),
|
|
36611
|
-
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall',
|
|
36647
|
+
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _694 => _694(column.id)]) : void 0,
|
|
36612
36648
|
children: [
|
|
36613
36649
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
36614
36650
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -36673,7 +36709,7 @@ function DataTableSkeleton({
|
|
|
36673
36709
|
}) {
|
|
36674
36710
|
const table = useDataTableContext();
|
|
36675
36711
|
const columns = table.getVisibleFlatColumns();
|
|
36676
|
-
const firstColumnId = _optionalChain([columns, 'access',
|
|
36712
|
+
const firstColumnId = _optionalChain([columns, 'access', _695 => _695[0], 'optionalAccess', _696 => _696.id]);
|
|
36677
36713
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36678
36714
|
"div",
|
|
36679
36715
|
{
|
|
@@ -36697,7 +36733,7 @@ function DataTableSkeleton({
|
|
|
36697
36733
|
{
|
|
36698
36734
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
36699
36735
|
"flex flex-col justify-center shrink-0",
|
|
36700
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36736
|
+
_optionalChain([meta, 'optionalAccess', _697 => _697.width]) || "flex-1"
|
|
36701
36737
|
),
|
|
36702
36738
|
children: [
|
|
36703
36739
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
|
|
@@ -36746,7 +36782,7 @@ function DataTableRowImpl({
|
|
|
36746
36782
|
const handleClick = _react.useCallback.call(void 0,
|
|
36747
36783
|
(e) => {
|
|
36748
36784
|
const target = e.target;
|
|
36749
|
-
if (!_optionalChain([containerRef, 'access',
|
|
36785
|
+
if (!_optionalChain([containerRef, 'access', _698 => _698.current, 'optionalAccess', _699 => _699.contains, 'call', _700 => _700(target)])) {
|
|
36750
36786
|
if (isLinkMode) e.preventDefault();
|
|
36751
36787
|
return;
|
|
36752
36788
|
}
|
|
@@ -36754,7 +36790,7 @@ function DataTableRowImpl({
|
|
|
36754
36790
|
if (isLinkMode) e.preventDefault();
|
|
36755
36791
|
return;
|
|
36756
36792
|
}
|
|
36757
|
-
_optionalChain([onClick, 'optionalCall',
|
|
36793
|
+
_optionalChain([onClick, 'optionalCall', _701 => _701(row.original)]);
|
|
36758
36794
|
},
|
|
36759
36795
|
[onClick, row.original, isLinkMode]
|
|
36760
36796
|
);
|
|
@@ -36779,10 +36815,10 @@ function DataTableRowImpl({
|
|
|
36779
36815
|
{
|
|
36780
36816
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
36781
36817
|
"flex flex-col overflow-hidden",
|
|
36782
|
-
alignJustify(_optionalChain([meta, 'optionalAccess',
|
|
36783
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36784
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36785
|
-
getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
36818
|
+
alignJustify(_optionalChain([meta, 'optionalAccess', _702 => _702.align])),
|
|
36819
|
+
_optionalChain([meta, 'optionalAccess', _703 => _703.width]) || "flex-1 min-w-0",
|
|
36820
|
+
_optionalChain([meta, 'optionalAccess', _704 => _704.cellClassName]),
|
|
36821
|
+
getHideClasses2(_optionalChain([meta, 'optionalAccess', _705 => _705.hideAt]))
|
|
36786
36822
|
),
|
|
36787
36823
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
|
|
36788
36824
|
},
|
|
@@ -36861,7 +36897,7 @@ function DataTableBody({
|
|
|
36861
36897
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xsf)] w-full", className), children: [
|
|
36862
36898
|
rows.map((row, index) => {
|
|
36863
36899
|
const item = row.original;
|
|
36864
|
-
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall',
|
|
36900
|
+
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _706 => _706(item)]), () => ( void 0));
|
|
36865
36901
|
const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
|
|
36866
36902
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36867
36903
|
DataTableRow,
|
|
@@ -36871,7 +36907,7 @@ function DataTableBody({
|
|
|
36871
36907
|
href,
|
|
36872
36908
|
compact,
|
|
36873
36909
|
className: cls,
|
|
36874
|
-
subRow: _optionalChain([renderSubRow, 'optionalCall',
|
|
36910
|
+
subRow: _optionalChain([renderSubRow, 'optionalCall', _707 => _707(item)])
|
|
36875
36911
|
},
|
|
36876
36912
|
row.id
|
|
36877
36913
|
);
|
|
@@ -36926,7 +36962,7 @@ function DataTableInfiniteFooter({
|
|
|
36926
36962
|
if (!sentinel) return;
|
|
36927
36963
|
const observer = new IntersectionObserver(
|
|
36928
36964
|
(entries) => {
|
|
36929
|
-
if (_optionalChain([entries, 'access',
|
|
36965
|
+
if (_optionalChain([entries, 'access', _708 => _708[0], 'optionalAccess', _709 => _709.isIntersecting])) onLoadMoreRef.current();
|
|
36930
36966
|
},
|
|
36931
36967
|
{ rootMargin }
|
|
36932
36968
|
);
|
|
@@ -36974,7 +37010,7 @@ function DataTableRowCount({
|
|
|
36974
37010
|
const table = useDataTableContext();
|
|
36975
37011
|
const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
|
|
36976
37012
|
if (hideWhenEmpty && count === 0) return null;
|
|
36977
|
-
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall',
|
|
37013
|
+
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _710 => _710(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
|
|
36978
37014
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36979
37015
|
"span",
|
|
36980
37016
|
{
|
|
@@ -37133,7 +37169,7 @@ function SearchInput({
|
|
|
37133
37169
|
if (!showHiddenTags) return;
|
|
37134
37170
|
const handleClick = (e) => {
|
|
37135
37171
|
const target = e.target;
|
|
37136
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
37172
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _711 => _711.current, 'optionalAccess', _712 => _712.contains, 'call', _713 => _713(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _714 => _714.current, 'optionalAccess', _715 => _715.contains, 'call', _716 => _716(target)])) {
|
|
37137
37173
|
setShowHiddenTags(false);
|
|
37138
37174
|
}
|
|
37139
37175
|
};
|
|
@@ -37181,10 +37217,10 @@ function SearchInput({
|
|
|
37181
37217
|
} else {
|
|
37182
37218
|
setInternalValue("");
|
|
37183
37219
|
}
|
|
37184
|
-
_optionalChain([inputRef, 'access',
|
|
37220
|
+
_optionalChain([inputRef, 'access', _717 => _717.current, 'optionalAccess', _718 => _718.focus, 'call', _719 => _719()]);
|
|
37185
37221
|
};
|
|
37186
37222
|
const handleResultClick = (result, e) => {
|
|
37187
|
-
_optionalChain([onResultSelect, 'optionalCall',
|
|
37223
|
+
_optionalChain([onResultSelect, 'optionalCall', _720 => _720(
|
|
37188
37224
|
result,
|
|
37189
37225
|
e ? {
|
|
37190
37226
|
metaKey: e.metaKey,
|
|
@@ -37216,7 +37252,7 @@ function SearchInput({
|
|
|
37216
37252
|
if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
|
|
37217
37253
|
handleResultClick(flatResults[highlightedIndex]);
|
|
37218
37254
|
} else {
|
|
37219
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
37255
|
+
_optionalChain([onSubmit, 'optionalCall', _721 => _721(currentValue)]);
|
|
37220
37256
|
}
|
|
37221
37257
|
break;
|
|
37222
37258
|
case "Escape":
|
|
@@ -37294,7 +37330,7 @@ function SearchInput({
|
|
|
37294
37330
|
dropdownVisible && "!border-ods-accent"
|
|
37295
37331
|
),
|
|
37296
37332
|
onClick: () => {
|
|
37297
|
-
_optionalChain([inputRef, 'access',
|
|
37333
|
+
_optionalChain([inputRef, 'access', _722 => _722.current, 'optionalAccess', _723 => _723.focus, 'call', _724 => _724()]);
|
|
37298
37334
|
setIsOpen(true);
|
|
37299
37335
|
},
|
|
37300
37336
|
children: [
|
|
@@ -37378,10 +37414,10 @@ function SearchInput({
|
|
|
37378
37414
|
align: "start",
|
|
37379
37415
|
onOpenAutoFocus: (e) => {
|
|
37380
37416
|
e.preventDefault();
|
|
37381
|
-
_optionalChain([inputRef, 'access',
|
|
37417
|
+
_optionalChain([inputRef, 'access', _725 => _725.current, 'optionalAccess', _726 => _726.focus, 'call', _727 => _727()]);
|
|
37382
37418
|
},
|
|
37383
37419
|
onInteractOutside: (e) => {
|
|
37384
|
-
if (_optionalChain([containerRef, 'access',
|
|
37420
|
+
if (_optionalChain([containerRef, 'access', _728 => _728.current, 'optionalAccess', _729 => _729.contains, 'call', _730 => _730(e.target)])) {
|
|
37385
37421
|
e.preventDefault();
|
|
37386
37422
|
}
|
|
37387
37423
|
},
|
|
@@ -37398,10 +37434,10 @@ function SearchInput({
|
|
|
37398
37434
|
ref: hiddenTagsPopupRef,
|
|
37399
37435
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
37400
37436
|
style: {
|
|
37401
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access',
|
|
37437
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _731 => _731.current, 'optionalAccess', _732 => _732.getBoundingClientRect, 'call', _733 => _733(), 'access', _734 => _734.left]), () => ( 0))) : 0
|
|
37402
37438
|
},
|
|
37403
37439
|
onRemove: (value2) => {
|
|
37404
|
-
_optionalChain([onFilterRemove, 'optionalCall',
|
|
37440
|
+
_optionalChain([onFilterRemove, 'optionalCall', _735 => _735(value2)]);
|
|
37405
37441
|
if (hiddenCount <= 1) setShowHiddenTags(false);
|
|
37406
37442
|
}
|
|
37407
37443
|
}
|
|
@@ -37452,7 +37488,7 @@ function FilterListItem({
|
|
|
37452
37488
|
}) {
|
|
37453
37489
|
const handleToggle = () => {
|
|
37454
37490
|
if (disabled) return;
|
|
37455
|
-
_optionalChain([onToggle, 'optionalCall',
|
|
37491
|
+
_optionalChain([onToggle, 'optionalCall', _736 => _736(!selected)]);
|
|
37456
37492
|
};
|
|
37457
37493
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
37458
37494
|
"div",
|
|
@@ -37499,7 +37535,7 @@ function FilterListItem({
|
|
|
37499
37535
|
CheckboxPrimitive4.Root,
|
|
37500
37536
|
{
|
|
37501
37537
|
checked: selected,
|
|
37502
|
-
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall',
|
|
37538
|
+
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _737 => _737(c === true)]),
|
|
37503
37539
|
onClick: (e) => e.stopPropagation(),
|
|
37504
37540
|
disabled,
|
|
37505
37541
|
"aria-label": title,
|
|
@@ -37598,7 +37634,7 @@ function TagSearchInput({
|
|
|
37598
37634
|
if (!showHiddenTags) return;
|
|
37599
37635
|
const handleClick = (e) => {
|
|
37600
37636
|
const target = e.target;
|
|
37601
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
37637
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _738 => _738.current, 'optionalAccess', _739 => _739.contains, 'call', _740 => _740(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _741 => _741.current, 'optionalAccess', _742 => _742.contains, 'call', _743 => _743(target)])) {
|
|
37602
37638
|
setShowHiddenTags(false);
|
|
37603
37639
|
}
|
|
37604
37640
|
};
|
|
@@ -37614,13 +37650,13 @@ function TagSearchInput({
|
|
|
37614
37650
|
e.preventDefault();
|
|
37615
37651
|
onSubmit(searchValue);
|
|
37616
37652
|
}
|
|
37617
|
-
_optionalChain([onKeyDown, 'optionalCall',
|
|
37653
|
+
_optionalChain([onKeyDown, 'optionalCall', _744 => _744(e)]);
|
|
37618
37654
|
};
|
|
37619
37655
|
const handleClearAll = (e) => {
|
|
37620
37656
|
e.stopPropagation();
|
|
37621
37657
|
e.preventDefault();
|
|
37622
|
-
_optionalChain([onClearAll, 'optionalCall',
|
|
37623
|
-
_optionalChain([inputRef, 'access',
|
|
37658
|
+
_optionalChain([onClearAll, 'optionalCall', _745 => _745()]);
|
|
37659
|
+
_optionalChain([inputRef, 'access', _746 => _746.current, 'optionalAccess', _747 => _747.focus, 'call', _748 => _748()]);
|
|
37624
37660
|
};
|
|
37625
37661
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
|
|
37626
37662
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -37637,7 +37673,7 @@ function TagSearchInput({
|
|
|
37637
37673
|
className
|
|
37638
37674
|
),
|
|
37639
37675
|
onClick: () => {
|
|
37640
|
-
if (!disabled) _optionalChain([inputRef, 'access',
|
|
37676
|
+
if (!disabled) _optionalChain([inputRef, 'access', _749 => _749.current, 'optionalAccess', _750 => _750.focus, 'call', _751 => _751()]);
|
|
37641
37677
|
},
|
|
37642
37678
|
children: [
|
|
37643
37679
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 flex items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "text-ods-text-secondary size-4 md:size-6" }) }),
|
|
@@ -37709,7 +37745,7 @@ function TagSearchInput({
|
|
|
37709
37745
|
items: hiddenTags,
|
|
37710
37746
|
disabled,
|
|
37711
37747
|
style: {
|
|
37712
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access',
|
|
37748
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _752 => _752.current, 'optionalAccess', _753 => _753.getBoundingClientRect, 'call', _754 => _754(), 'access', _755 => _755.left]), () => ( 0))) : 0
|
|
37713
37749
|
},
|
|
37714
37750
|
onRemove: (value) => {
|
|
37715
37751
|
onTagRemove(value);
|
|
@@ -37810,7 +37846,7 @@ function MarkdownEditor({
|
|
|
37810
37846
|
const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
|
|
37811
37847
|
_react.useEffect.call(void 0, () => {
|
|
37812
37848
|
Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
|
|
37813
|
-
if (_optionalChain([mod, 'access',
|
|
37849
|
+
if (_optionalChain([mod, 'access', _756 => _756.commands, 'optionalAccess', _757 => _757.getExtraCommands])) {
|
|
37814
37850
|
setDefaultExtraCommands(mod.commands.getExtraCommands());
|
|
37815
37851
|
}
|
|
37816
37852
|
});
|
|
@@ -37844,7 +37880,7 @@ function MarkdownEditor({
|
|
|
37844
37880
|
const isImage = file.type.startsWith("image/");
|
|
37845
37881
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
37846
37882
|
insertTextAtCursor(markdown);
|
|
37847
|
-
_optionalChain([onFileUploaded, 'optionalCall',
|
|
37883
|
+
_optionalChain([onFileUploaded, 'optionalCall', _758 => _758(url, file.name)]);
|
|
37848
37884
|
} catch (error) {
|
|
37849
37885
|
console.error("File upload failed:", error);
|
|
37850
37886
|
setUploadProgress("Upload failed. Please try again.");
|
|
@@ -37857,7 +37893,7 @@ function MarkdownEditor({
|
|
|
37857
37893
|
);
|
|
37858
37894
|
const handleFileInputChange = _react.useCallback.call(void 0,
|
|
37859
37895
|
(e) => {
|
|
37860
|
-
const file = _optionalChain([e, 'access',
|
|
37896
|
+
const file = _optionalChain([e, 'access', _759 => _759.target, 'access', _760 => _760.files, 'optionalAccess', _761 => _761[0]]);
|
|
37861
37897
|
if (file) {
|
|
37862
37898
|
handleFileUpload(file);
|
|
37863
37899
|
e.target.value = "";
|
|
@@ -37868,7 +37904,7 @@ function MarkdownEditor({
|
|
|
37868
37904
|
const handlePaste = _react.useCallback.call(void 0,
|
|
37869
37905
|
(e) => {
|
|
37870
37906
|
if (!onUploadFile) return;
|
|
37871
|
-
const items = _optionalChain([e, 'access',
|
|
37907
|
+
const items = _optionalChain([e, 'access', _762 => _762.clipboardData, 'optionalAccess', _763 => _763.items]);
|
|
37872
37908
|
if (!items) return;
|
|
37873
37909
|
for (const item of items) {
|
|
37874
37910
|
if (item.type.startsWith("image/")) {
|
|
@@ -37893,7 +37929,7 @@ function MarkdownEditor({
|
|
|
37893
37929
|
buttonProps: { "aria-label": "Upload file", title: "Upload file" },
|
|
37894
37930
|
icon: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "w-3 h-3 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "w-3 h-3" }),
|
|
37895
37931
|
execute: () => {
|
|
37896
|
-
_optionalChain([fileInputRef, 'access',
|
|
37932
|
+
_optionalChain([fileInputRef, 'access', _764 => _764.current, 'optionalAccess', _765 => _765.click, 'call', _766 => _766()]);
|
|
37897
37933
|
}
|
|
37898
37934
|
} : null;
|
|
37899
37935
|
const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
|
|
@@ -37905,7 +37941,7 @@ function MarkdownEditor({
|
|
|
37905
37941
|
const EDGE_ZONE = 60;
|
|
37906
37942
|
const MAX_SCROLL_SPEED = 15;
|
|
37907
37943
|
const findScrollParent = _react.useCallback.call(void 0, (el) => {
|
|
37908
|
-
let node = _optionalChain([el, 'optionalAccess',
|
|
37944
|
+
let node = _optionalChain([el, 'optionalAccess', _767 => _767.parentElement]);
|
|
37909
37945
|
while (node && node !== document.documentElement) {
|
|
37910
37946
|
const { overflowY } = window.getComputedStyle(node);
|
|
37911
37947
|
if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
|
|
@@ -38048,7 +38084,7 @@ function matchesAccept(file, accept) {
|
|
|
38048
38084
|
});
|
|
38049
38085
|
}
|
|
38050
38086
|
function dragHasFiles(e) {
|
|
38051
|
-
const types = _optionalChain([e, 'access',
|
|
38087
|
+
const types = _optionalChain([e, 'access', _768 => _768.dataTransfer, 'optionalAccess', _769 => _769.types]);
|
|
38052
38088
|
if (!types) return false;
|
|
38053
38089
|
for (let i = 0; i < types.length; i++) {
|
|
38054
38090
|
if (types[i] === "Files") return true;
|
|
@@ -38144,7 +38180,7 @@ function FileUpload({
|
|
|
38144
38180
|
e.stopPropagation();
|
|
38145
38181
|
setDragActive(false);
|
|
38146
38182
|
if (disabled) return;
|
|
38147
|
-
if (_optionalChain([e, 'access',
|
|
38183
|
+
if (_optionalChain([e, 'access', _770 => _770.dataTransfer, 'access', _771 => _771.files, 'optionalAccess', _772 => _772.length])) {
|
|
38148
38184
|
handleFiles(e.dataTransfer.files);
|
|
38149
38185
|
}
|
|
38150
38186
|
};
|
|
@@ -38172,7 +38208,7 @@ function FileUpload({
|
|
|
38172
38208
|
e.preventDefault();
|
|
38173
38209
|
dragCounter = 0;
|
|
38174
38210
|
setDragActive(false);
|
|
38175
|
-
if (_optionalChain([e, 'access',
|
|
38211
|
+
if (_optionalChain([e, 'access', _773 => _773.dataTransfer, 'optionalAccess', _774 => _774.files, 'optionalAccess', _775 => _775.length])) {
|
|
38176
38212
|
handleFilesRef.current(e.dataTransfer.files);
|
|
38177
38213
|
}
|
|
38178
38214
|
};
|
|
@@ -38194,7 +38230,7 @@ function FileUpload({
|
|
|
38194
38230
|
};
|
|
38195
38231
|
}, [acceptWindowDrops, disabled]);
|
|
38196
38232
|
const handleFileSelect = (e) => {
|
|
38197
|
-
if (_optionalChain([e, 'access',
|
|
38233
|
+
if (_optionalChain([e, 'access', _776 => _776.target, 'access', _777 => _777.files, 'optionalAccess', _778 => _778.length])) {
|
|
38198
38234
|
handleFiles(e.target.files);
|
|
38199
38235
|
}
|
|
38200
38236
|
};
|
|
@@ -38211,7 +38247,7 @@ function FileUpload({
|
|
|
38211
38247
|
};
|
|
38212
38248
|
const openDialog = async () => {
|
|
38213
38249
|
if (disabled) return;
|
|
38214
|
-
_optionalChain([fileInputRef, 'access',
|
|
38250
|
+
_optionalChain([fileInputRef, 'access', _779 => _779.current, 'optionalAccess', _780 => _780.click, 'call', _781 => _781()]);
|
|
38215
38251
|
};
|
|
38216
38252
|
const displayError = error || validationError || void 0;
|
|
38217
38253
|
const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
|
|
@@ -38273,7 +38309,7 @@ function FileUpload({
|
|
|
38273
38309
|
"button",
|
|
38274
38310
|
{
|
|
38275
38311
|
type: "button",
|
|
38276
|
-
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall',
|
|
38312
|
+
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _782 => _782(entry.id)]),
|
|
38277
38313
|
className: "shrink-0 text-ods-error hover:opacity-80 transition-opacity",
|
|
38278
38314
|
"aria-label": `Remove ${entry.fileName}`,
|
|
38279
38315
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.TrashIcon, { className: "size-6" })
|
|
@@ -38404,7 +38440,7 @@ function ImageUploader({
|
|
|
38404
38440
|
onChange(file);
|
|
38405
38441
|
};
|
|
38406
38442
|
const handleFileSelect = (e) => {
|
|
38407
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
38443
|
+
validateAndEmit(_optionalChain([e, 'access', _783 => _783.target, 'access', _784 => _784.files, 'optionalAccess', _785 => _785[0]]));
|
|
38408
38444
|
if (inputRef.current) inputRef.current.value = "";
|
|
38409
38445
|
};
|
|
38410
38446
|
const handleDrag = (e) => {
|
|
@@ -38419,11 +38455,11 @@ function ImageUploader({
|
|
|
38419
38455
|
e.stopPropagation();
|
|
38420
38456
|
setDragActive(false);
|
|
38421
38457
|
if (!interactive) return;
|
|
38422
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
38458
|
+
validateAndEmit(_optionalChain([e, 'access', _786 => _786.dataTransfer, 'access', _787 => _787.files, 'optionalAccess', _788 => _788[0]]));
|
|
38423
38459
|
};
|
|
38424
38460
|
const openDialog = () => {
|
|
38425
38461
|
if (!interactive) return;
|
|
38426
|
-
_optionalChain([inputRef, 'access',
|
|
38462
|
+
_optionalChain([inputRef, 'access', _789 => _789.current, 'optionalAccess', _790 => _790.click, 'call', _791 => _791()]);
|
|
38427
38463
|
};
|
|
38428
38464
|
const handleRootKeyDown = (e) => {
|
|
38429
38465
|
if (hasImage || !interactive) return;
|
|
@@ -38614,8 +38650,8 @@ function ColorPresetSelect({
|
|
|
38614
38650
|
}) {
|
|
38615
38651
|
const selectedPreset = presets.find((p) => p.key === presetKey);
|
|
38616
38652
|
const isCustom = !selectedPreset;
|
|
38617
|
-
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
38618
|
-
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
38653
|
+
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _792 => _792.label]), () => ( "Custom"));
|
|
38654
|
+
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _793 => _793.color]), () => ( value));
|
|
38619
38655
|
const groups = [
|
|
38620
38656
|
{
|
|
38621
38657
|
items: [
|
|
@@ -38905,7 +38941,7 @@ function TicketStatusConfigRow({
|
|
|
38905
38941
|
_chunkQJGRP2YEcjs.Input,
|
|
38906
38942
|
{
|
|
38907
38943
|
value: name,
|
|
38908
|
-
onChange: (e) => _optionalChain([onNameChange, 'optionalCall',
|
|
38944
|
+
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _794 => _794(e.target.value)]),
|
|
38909
38945
|
disabled: isSystem,
|
|
38910
38946
|
readOnly: isSystem,
|
|
38911
38947
|
"aria-label": "Status name",
|
|
@@ -39278,14 +39314,14 @@ function TicketInfoSection({
|
|
|
39278
39314
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
39279
39315
|
SquareAvatar,
|
|
39280
39316
|
{
|
|
39281
|
-
src: _optionalChain([organization, 'optionalAccess',
|
|
39282
|
-
alt: _optionalChain([organization, 'optionalAccess',
|
|
39283
|
-
fallback: _optionalChain([organization, 'optionalAccess',
|
|
39317
|
+
src: _optionalChain([organization, 'optionalAccess', _795 => _795.imageSrc]),
|
|
39318
|
+
alt: _optionalChain([organization, 'optionalAccess', _796 => _796.name]),
|
|
39319
|
+
fallback: _optionalChain([organization, 'optionalAccess', _797 => _797.name]) || "Org",
|
|
39284
39320
|
size: "md",
|
|
39285
39321
|
className: "shrink-0"
|
|
39286
39322
|
}
|
|
39287
39323
|
),
|
|
39288
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess',
|
|
39324
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _798 => _798.name]) || "Unassigned", label: "Organization" })
|
|
39289
39325
|
] }),
|
|
39290
39326
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
39291
39327
|
AssigneeDropdown,
|
|
@@ -39306,10 +39342,10 @@ function TicketInfoSection({
|
|
|
39306
39342
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
39307
39343
|
InfoCell2,
|
|
39308
39344
|
{
|
|
39309
|
-
value: _optionalChain([device, 'optionalAccess',
|
|
39345
|
+
value: _optionalChain([device, 'optionalAccess', _799 => _799.name]) || "Unassigned",
|
|
39310
39346
|
label: "Device",
|
|
39311
|
-
icon: _optionalChain([device, 'optionalAccess',
|
|
39312
|
-
onClick: _optionalChain([device, 'optionalAccess',
|
|
39347
|
+
icon: _optionalChain([device, 'optionalAccess', _800 => _800.icon]),
|
|
39348
|
+
onClick: _optionalChain([device, 'optionalAccess', _801 => _801.onClick])
|
|
39313
39349
|
}
|
|
39314
39350
|
),
|
|
39315
39351
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
|
|
@@ -39639,7 +39675,7 @@ function RoadmapCard({
|
|
|
39639
39675
|
const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
|
|
39640
39676
|
const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
|
|
39641
39677
|
const hasFigma = !!item.figmaUrl;
|
|
39642
|
-
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access',
|
|
39678
|
+
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _802 => _802.screenshots, 'optionalAccess', _803 => _803.length]), () => ( 0))) > 0;
|
|
39643
39679
|
const typeLabel = getTaskTypeLabel(item.customItemId);
|
|
39644
39680
|
const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
|
|
39645
39681
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -39658,7 +39694,7 @@ function RoadmapCard({
|
|
|
39658
39694
|
unoptimized: true,
|
|
39659
39695
|
className: "h-8 w-8 object-contain"
|
|
39660
39696
|
}
|
|
39661
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
39697
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _804 => _804.title, 'optionalAccess', _805 => _805.substring, 'call', _806 => _806(0, 2)]) || "??" })
|
|
39662
39698
|
}
|
|
39663
39699
|
),
|
|
39664
39700
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -39733,7 +39769,7 @@ function RoadmapCard({
|
|
|
39733
39769
|
unoptimized: true,
|
|
39734
39770
|
className: "object-contain p-1"
|
|
39735
39771
|
}
|
|
39736
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
39772
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _807 => _807.title, 'optionalAccess', _808 => _808.substring, 'call', _809 => _809(0, 2)]) || "??" }) }),
|
|
39737
39773
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
|
|
39738
39774
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[48px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary tracking-[-0.36px] flex-1 line-clamp-2", children: item.title }) }),
|
|
39739
39775
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[20px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h5 text-ods-text-secondary uppercase tracking-[-0.28px] truncate", children: [
|
|
@@ -40243,7 +40279,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
|
|
|
40243
40279
|
] }) : null,
|
|
40244
40280
|
item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-[13px] leading-5 text-ods-text-secondary", children: item.preview }) }) : null
|
|
40245
40281
|
] }),
|
|
40246
|
-
_optionalChain([anchorProps, 'optionalAccess',
|
|
40282
|
+
_optionalChain([anchorProps, 'optionalAccess', _810 => _810.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
|
|
40247
40283
|
] });
|
|
40248
40284
|
if (!anchorProps) {
|
|
40249
40285
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
@@ -40313,7 +40349,7 @@ function getDefaultOptions() {
|
|
|
40313
40349
|
// node_modules/date-fns/startOfWeek.mjs
|
|
40314
40350
|
function startOfWeek(date, options) {
|
|
40315
40351
|
const defaultOptions2 = getDefaultOptions();
|
|
40316
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40352
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _811 => _811.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _812 => _812.locale, 'optionalAccess', _813 => _813.options, 'optionalAccess', _814 => _814.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _815 => _815.locale, 'optionalAccess', _816 => _816.options, 'optionalAccess', _817 => _817.weekStartsOn]))), () => ( 0));
|
|
40317
40353
|
const _date = toDate(date);
|
|
40318
40354
|
const day = _date.getDay();
|
|
40319
40355
|
const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
|
|
@@ -40488,7 +40524,7 @@ var formatDistance = (token, count, options) => {
|
|
|
40488
40524
|
} else {
|
|
40489
40525
|
result = tokenValue.other.replace("{{count}}", count.toString());
|
|
40490
40526
|
}
|
|
40491
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
40527
|
+
if (_optionalChain([options, 'optionalAccess', _818 => _818.addSuffix])) {
|
|
40492
40528
|
if (options.comparison && options.comparison > 0) {
|
|
40493
40529
|
return "in " + result;
|
|
40494
40530
|
} else {
|
|
@@ -40555,15 +40591,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
|
|
|
40555
40591
|
// node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
|
|
40556
40592
|
function buildLocalizeFn(args) {
|
|
40557
40593
|
return (value, options) => {
|
|
40558
|
-
const context = _optionalChain([options, 'optionalAccess',
|
|
40594
|
+
const context = _optionalChain([options, 'optionalAccess', _819 => _819.context]) ? String(options.context) : "standalone";
|
|
40559
40595
|
let valuesArray;
|
|
40560
40596
|
if (context === "formatting" && args.formattingValues) {
|
|
40561
40597
|
const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
|
|
40562
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
40598
|
+
const width = _optionalChain([options, 'optionalAccess', _820 => _820.width]) ? String(options.width) : defaultWidth;
|
|
40563
40599
|
valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
|
|
40564
40600
|
} else {
|
|
40565
40601
|
const defaultWidth = args.defaultWidth;
|
|
40566
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
40602
|
+
const width = _optionalChain([options, 'optionalAccess', _821 => _821.width]) ? String(options.width) : args.defaultWidth;
|
|
40567
40603
|
valuesArray = args.values[width] || args.values[defaultWidth];
|
|
40568
40604
|
}
|
|
40569
40605
|
const index = args.argumentCallback ? args.argumentCallback(value) : value;
|
|
@@ -40943,7 +40979,7 @@ function getWeekYear(date, options) {
|
|
|
40943
40979
|
const _date = toDate(date);
|
|
40944
40980
|
const year = _date.getFullYear();
|
|
40945
40981
|
const defaultOptions2 = getDefaultOptions();
|
|
40946
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40982
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _822 => _822.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _823 => _823.locale, 'optionalAccess', _824 => _824.options, 'optionalAccess', _825 => _825.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _826 => _826.locale, 'optionalAccess', _827 => _827.options, 'optionalAccess', _828 => _828.firstWeekContainsDate]))), () => ( 1));
|
|
40947
40983
|
const firstWeekOfNextYear = constructFrom(date, 0);
|
|
40948
40984
|
firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
|
|
40949
40985
|
firstWeekOfNextYear.setHours(0, 0, 0, 0);
|
|
@@ -40964,7 +41000,7 @@ function getWeekYear(date, options) {
|
|
|
40964
41000
|
// node_modules/date-fns/startOfWeekYear.mjs
|
|
40965
41001
|
function startOfWeekYear(date, options) {
|
|
40966
41002
|
const defaultOptions2 = getDefaultOptions();
|
|
40967
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
41003
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _829 => _829.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _830 => _830.locale, 'optionalAccess', _831 => _831.options, 'optionalAccess', _832 => _832.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _833 => _833.locale, 'optionalAccess', _834 => _834.options, 'optionalAccess', _835 => _835.firstWeekContainsDate]))), () => ( 1));
|
|
40968
41004
|
const year = getWeekYear(date, options);
|
|
40969
41005
|
const firstWeek = constructFrom(date, 0);
|
|
40970
41006
|
firstWeek.setFullYear(year, 0, firstWeekContainsDate);
|
|
@@ -41779,9 +41815,9 @@ var doubleQuoteRegExp = /''/g;
|
|
|
41779
41815
|
var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
|
|
41780
41816
|
function format(date, formatStr, options) {
|
|
41781
41817
|
const defaultOptions2 = getDefaultOptions();
|
|
41782
|
-
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
41783
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
41784
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
41818
|
+
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _836 => _836.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
|
|
41819
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _837 => _837.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _838 => _838.locale, 'optionalAccess', _839 => _839.options, 'optionalAccess', _840 => _840.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _841 => _841.locale, 'optionalAccess', _842 => _842.options, 'optionalAccess', _843 => _843.firstWeekContainsDate]))), () => ( 1));
|
|
41820
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _844 => _844.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _845 => _845.locale, 'optionalAccess', _846 => _846.options, 'optionalAccess', _847 => _847.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _848 => _848.locale, 'optionalAccess', _849 => _849.options, 'optionalAccess', _850 => _850.weekStartsOn]))), () => ( 0));
|
|
41785
41821
|
const originalDate = toDate(date);
|
|
41786
41822
|
if (!isValid(originalDate)) {
|
|
41787
41823
|
throw new RangeError("Invalid time value");
|
|
@@ -41822,7 +41858,7 @@ function format(date, formatStr, options) {
|
|
|
41822
41858
|
return parts.map((part) => {
|
|
41823
41859
|
if (!part.isToken) return part.value;
|
|
41824
41860
|
const token = part.value;
|
|
41825
|
-
if (!_optionalChain([options, 'optionalAccess',
|
|
41861
|
+
if (!_optionalChain([options, 'optionalAccess', _851 => _851.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _852 => _852.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
|
|
41826
41862
|
warnOrThrowProtectedError(token, formatStr, String(date));
|
|
41827
41863
|
}
|
|
41828
41864
|
const formatter = formatters[token[0]];
|
|
@@ -42003,7 +42039,7 @@ function ProgramCard({
|
|
|
42003
42039
|
const dur = formatDurationFromRange(w.start_at, w.end_at);
|
|
42004
42040
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
42005
42041
|
}
|
|
42006
|
-
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access',
|
|
42042
|
+
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _853 => _853.labels, 'optionalAccess', _854 => _854.singular])].filter(
|
|
42007
42043
|
(s) => typeof s === "string" && s.length > 0
|
|
42008
42044
|
);
|
|
42009
42045
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
|
|
@@ -42160,7 +42196,7 @@ function ProgramCard({
|
|
|
42160
42196
|
|
|
42161
42197
|
|
|
42162
42198
|
function CampaignCardAdmin({ campaign, className, anchorProps }) {
|
|
42163
|
-
const goalsCount = _optionalChain([campaign, 'access',
|
|
42199
|
+
const goalsCount = _optionalChain([campaign, 'access', _855 => _855.goals, 'optionalAccess', _856 => _856.length]) || 0;
|
|
42164
42200
|
const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
42165
42201
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
|
|
42166
42202
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -42322,7 +42358,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
42322
42358
|
if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
|
|
42323
42359
|
const safePath = sanitizePath(row.path);
|
|
42324
42360
|
if (safePath) {
|
|
42325
|
-
const docTarget = row.documentType ? _optionalChain([ctx, 'access',
|
|
42361
|
+
const docTarget = row.documentType ? _optionalChain([ctx, 'access', _857 => _857.docPlatformTargets, 'optionalAccess', _858 => _858[row.documentType]]) : void 0;
|
|
42326
42362
|
if (docTarget) {
|
|
42327
42363
|
const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
|
|
42328
42364
|
const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
|
|
@@ -42537,8 +42573,8 @@ function cardMenuGroups(href, discuss, openDetails) {
|
|
|
42537
42573
|
if (href) {
|
|
42538
42574
|
items.push({
|
|
42539
42575
|
id: "open-details",
|
|
42540
|
-
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
42541
|
-
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
42576
|
+
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _859 => _859.label]), () => ( "Open Details")),
|
|
42577
|
+
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _860 => _860.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.EyeIcon, { size: 20 }))),
|
|
42542
42578
|
// Main row → open the entity (same tab, soft Link nav).
|
|
42543
42579
|
href,
|
|
42544
42580
|
// Trailing 40px ↗ side-button → open in a new tab.
|
|
@@ -42568,8 +42604,8 @@ function HubspotTicketChatCard({
|
|
|
42568
42604
|
isNewTab,
|
|
42569
42605
|
discuss
|
|
42570
42606
|
}) {
|
|
42571
|
-
const status = typeof _optionalChain([chatRef, 'access',
|
|
42572
|
-
const statusLabel = typeof _optionalChain([chatRef, 'access',
|
|
42607
|
+
const status = typeof _optionalChain([chatRef, 'access', _861 => _861.metadata, 'optionalAccess', _862 => _862.status]) === "string" ? chatRef.metadata.status : void 0;
|
|
42608
|
+
const statusLabel = typeof _optionalChain([chatRef, 'access', _863 => _863.metadata, 'optionalAccess', _864 => _864.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
|
|
42573
42609
|
const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
|
|
42574
42610
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42575
42611
|
MingoInfoCard,
|
|
@@ -42592,7 +42628,7 @@ function FaqChatCard({
|
|
|
42592
42628
|
isNewTab,
|
|
42593
42629
|
discuss
|
|
42594
42630
|
}) {
|
|
42595
|
-
const section = typeof _optionalChain([chatRef, 'access',
|
|
42631
|
+
const section = typeof _optionalChain([chatRef, 'access', _865 => _865.metadata, 'optionalAccess', _866 => _866.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
|
|
42596
42632
|
const statusLabel = section && section.length > 0 ? section : "FAQ";
|
|
42597
42633
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42598
42634
|
MingoInfoCard,
|
|
@@ -42612,7 +42648,7 @@ function SlackChatCard({
|
|
|
42612
42648
|
isNewTab,
|
|
42613
42649
|
discuss
|
|
42614
42650
|
}) {
|
|
42615
|
-
const channelName = typeof _optionalChain([chatRef, 'access',
|
|
42651
|
+
const channelName = typeof _optionalChain([chatRef, 'access', _867 => _867.metadata, 'optionalAccess', _868 => _868.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
|
|
42616
42652
|
const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
|
|
42617
42653
|
const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
|
|
42618
42654
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -42652,7 +42688,7 @@ function GenericFinancialChatCard({
|
|
|
42652
42688
|
isNewTab,
|
|
42653
42689
|
discuss
|
|
42654
42690
|
}) {
|
|
42655
|
-
const subtitle = typeof _optionalChain([chatRef, 'access',
|
|
42691
|
+
const subtitle = typeof _optionalChain([chatRef, 'access', _869 => _869.metadata, 'optionalAccess', _870 => _870.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
|
|
42656
42692
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42657
42693
|
MingoInfoCard,
|
|
42658
42694
|
{
|
|
@@ -42721,12 +42757,12 @@ function ProductReleaseChatCard({
|
|
|
42721
42757
|
discuss
|
|
42722
42758
|
}) {
|
|
42723
42759
|
const releaseProps = buildProps(item);
|
|
42724
|
-
const status = _optionalChain([item, 'optionalAccess',
|
|
42760
|
+
const status = _optionalChain([item, 'optionalAccess', _871 => _871.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
|
|
42725
42761
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42726
42762
|
EntityMingoCard,
|
|
42727
42763
|
{
|
|
42728
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42729
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42764
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _872 => _872.title]), () => ( "")),
|
|
42765
|
+
description: _optionalChain([item, 'optionalAccess', _873 => _873.summary]) || releaseProps.formattedDate || void 0,
|
|
42730
42766
|
cover: releaseProps.coverImage || void 0,
|
|
42731
42767
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Rocket02Icon, { size: 24 }),
|
|
42732
42768
|
status,
|
|
@@ -42743,17 +42779,17 @@ function CampaignChatCard({
|
|
|
42743
42779
|
isNewTab,
|
|
42744
42780
|
discuss
|
|
42745
42781
|
}) {
|
|
42746
|
-
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
42782
|
+
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _874 => _874.goals])) ? item.goals.length : 0;
|
|
42747
42783
|
const meta = [
|
|
42748
|
-
_optionalChain([item, 'optionalAccess',
|
|
42784
|
+
_optionalChain([item, 'optionalAccess', _875 => _875.start_date]) ? formatDateShort(item.start_date) : null,
|
|
42749
42785
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
42750
42786
|
"Marketing campaign"
|
|
42751
42787
|
].filter(Boolean).join(" \xB7 ");
|
|
42752
42788
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42753
42789
|
EntityMingoCard,
|
|
42754
42790
|
{
|
|
42755
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42756
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
42791
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _876 => _876.name]), () => ( "")),
|
|
42792
|
+
description: meta || _optionalChain([item, 'optionalAccess', _877 => _877.description]) || void 0,
|
|
42757
42793
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Megaphone01Icon, { size: 24 }),
|
|
42758
42794
|
chatRef,
|
|
42759
42795
|
isNewTab,
|
|
@@ -42806,14 +42842,14 @@ function BlogChatCard({
|
|
|
42806
42842
|
hasEmbeddedVideo,
|
|
42807
42843
|
discuss
|
|
42808
42844
|
}) {
|
|
42809
|
-
const category = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
42845
|
+
const category = Array.isArray(_optionalChain([item, 'optionalAccess', _878 => _878.categories])) ? _optionalChain([item, 'access', _879 => _879.categories, 'access', _880 => _880.find, 'call', _881 => _881((c) => c && c.name), 'optionalAccess', _882 => _882.name]) : void 0;
|
|
42810
42846
|
const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
|
|
42811
42847
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42812
42848
|
EntityMingoCard,
|
|
42813
42849
|
{
|
|
42814
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42815
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42816
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42850
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _883 => _883.title]), () => ( "")),
|
|
42851
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _884 => _884.summary]), () => ( void 0)),
|
|
42852
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _885 => _885.featured_image]), ogPlaceholder),
|
|
42817
42853
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.NewspaperIcon, { size: 24 }),
|
|
42818
42854
|
status,
|
|
42819
42855
|
chatRef,
|
|
@@ -42830,13 +42866,13 @@ function CaseStudyChatCard({
|
|
|
42830
42866
|
ogPlaceholder,
|
|
42831
42867
|
discuss
|
|
42832
42868
|
}) {
|
|
42833
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
42869
|
+
const meta = [_optionalChain([item, 'optionalAccess', _886 => _886.msp, 'optionalAccess', _887 => _887.name]), _optionalChain([item, 'optionalAccess', _888 => _888.user, 'optionalAccess', _889 => _889.full_name])].filter(Boolean).join(" \xB7 ");
|
|
42834
42870
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42835
42871
|
EntityMingoCard,
|
|
42836
42872
|
{
|
|
42837
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42838
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42839
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42873
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _890 => _890.title]), () => ( "")),
|
|
42874
|
+
description: _optionalChain([item, 'optionalAccess', _891 => _891.summary]) || meta || void 0,
|
|
42875
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _892 => _892.featured_image]), ogPlaceholder),
|
|
42840
42876
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.TrophyIcon, { size: 24 }),
|
|
42841
42877
|
status: { label: "Case study", variant: "grey" },
|
|
42842
42878
|
chatRef,
|
|
@@ -42853,13 +42889,13 @@ function CustomerInterviewChatCard({
|
|
|
42853
42889
|
ogPlaceholder,
|
|
42854
42890
|
discuss
|
|
42855
42891
|
}) {
|
|
42856
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
42892
|
+
const meta = [_optionalChain([item, 'optionalAccess', _893 => _893.user, 'optionalAccess', _894 => _894.full_name]), _optionalChain([item, 'optionalAccess', _895 => _895.msp, 'optionalAccess', _896 => _896.name])].filter(Boolean).join(" \xB7 ");
|
|
42857
42893
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42858
42894
|
EntityMingoCard,
|
|
42859
42895
|
{
|
|
42860
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42861
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42862
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42896
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _897 => _897.title]), () => ( "")),
|
|
42897
|
+
description: _optionalChain([item, 'optionalAccess', _898 => _898.video_summary]) || meta || void 0,
|
|
42898
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _899 => _899.featured_image]), ogPlaceholder),
|
|
42863
42899
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.MicrophoneIcon, { size: 24 }),
|
|
42864
42900
|
status: { label: "Interview", variant: "grey" },
|
|
42865
42901
|
chatRef,
|
|
@@ -42876,13 +42912,13 @@ function InvestorUpdateChatCard({
|
|
|
42876
42912
|
ogPlaceholder,
|
|
42877
42913
|
discuss
|
|
42878
42914
|
}) {
|
|
42879
|
-
const title = _optionalChain([item, 'optionalAccess',
|
|
42915
|
+
const title = _optionalChain([item, 'optionalAccess', _900 => _900.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _901 => _901.update_number]), () => ( "?"))}`;
|
|
42880
42916
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42881
42917
|
EntityMingoCard,
|
|
42882
42918
|
{
|
|
42883
42919
|
title,
|
|
42884
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
42885
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42920
|
+
description: _optionalChain([item, 'optionalAccess', _902 => _902.strategic_update]) || _optionalChain([item, 'optionalAccess', _903 => _903.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _904 => _904.period_start]), _optionalChain([item, 'optionalAccess', _905 => _905.period_end])) || void 0,
|
|
42921
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _906 => _906.featured_image]), ogPlaceholder),
|
|
42886
42922
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.PresentationLineIcon, { size: 24 }),
|
|
42887
42923
|
status: { label: "Investor update", variant: "grey" },
|
|
42888
42924
|
chatRef,
|
|
@@ -42899,12 +42935,12 @@ function OnboardingGuideChatCard({
|
|
|
42899
42935
|
ogPlaceholder,
|
|
42900
42936
|
discuss
|
|
42901
42937
|
}) {
|
|
42902
|
-
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess',
|
|
42938
|
+
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _907 => _907.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _908 => _908.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _909 => _909.og_image_url]), ogPlaceholder)));
|
|
42903
42939
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42904
42940
|
EntityMingoCard,
|
|
42905
42941
|
{
|
|
42906
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42907
|
-
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42942
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _910 => _910.title]), () => ( "")),
|
|
42943
|
+
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _911 => _911.summary]), () => ( _optionalChain([item, 'optionalAccess', _912 => _912.description]))), () => ( void 0)),
|
|
42908
42944
|
cover,
|
|
42909
42945
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CompassIcon, { size: 24 }),
|
|
42910
42946
|
status: { label: "Guide", variant: "grey" },
|
|
@@ -42925,25 +42961,25 @@ function ProgramChatCard({
|
|
|
42925
42961
|
discuss
|
|
42926
42962
|
}) {
|
|
42927
42963
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.MicrophoneIcon, { size: 24 });
|
|
42928
|
-
const isScheduled = _optionalChain([item, 'optionalAccess',
|
|
42964
|
+
const isScheduled = _optionalChain([item, 'optionalAccess', _913 => _913.status]) === "scheduled";
|
|
42929
42965
|
let typeMeta;
|
|
42930
|
-
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess',
|
|
42966
|
+
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _914 => _914.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
|
|
42931
42967
|
typeMeta = formatDurationCompact(item.duration_seconds);
|
|
42932
|
-
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess',
|
|
42968
|
+
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _915 => _915.location_name]) === "string" && item.location_name.trim().length > 0) {
|
|
42933
42969
|
typeMeta = item.location_name;
|
|
42934
|
-
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess',
|
|
42970
|
+
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _916 => _916.start_at])) {
|
|
42935
42971
|
const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
|
|
42936
42972
|
const dur = formatDurationFromRange(item.start_at, item.end_at);
|
|
42937
42973
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
42938
42974
|
}
|
|
42939
|
-
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42975
|
+
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _917 => _917.date]), () => ( null)), { fallback: "", timezone: "local" });
|
|
42940
42976
|
const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
|
|
42941
42977
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42942
42978
|
EntityMingoCard,
|
|
42943
42979
|
{
|
|
42944
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42945
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
42946
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
42980
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _918 => _918.title]), () => ( "")),
|
|
42981
|
+
description: meta || _optionalChain([item, 'optionalAccess', _919 => _919.description]) || void 0,
|
|
42982
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _920 => _920.cover_url]), ogPlaceholder),
|
|
42947
42983
|
fallbackIcon: icon,
|
|
42948
42984
|
status: { label, variant: "grey" },
|
|
42949
42985
|
chatRef,
|
|
@@ -42960,10 +42996,10 @@ function RoadmapChatCard({
|
|
|
42960
42996
|
cardType,
|
|
42961
42997
|
discuss
|
|
42962
42998
|
}) {
|
|
42963
|
-
const logoUrl = typeof _optionalChain([item, 'optionalAccess',
|
|
42964
|
-
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess',
|
|
42999
|
+
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _921 => _921.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
43000
|
+
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _922 => _922.customItemId]) != null;
|
|
42965
43001
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.MapIcon, { size: 24 });
|
|
42966
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess',
|
|
43002
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _923 => _923.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
42967
43003
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
42968
43004
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
42969
43005
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
|
|
@@ -42971,10 +43007,10 @@ function RoadmapChatCard({
|
|
|
42971
43007
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42972
43008
|
EntityMingoCard,
|
|
42973
43009
|
{
|
|
42974
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42975
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
43010
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _924 => _924.title]), () => ( "")),
|
|
43011
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _925 => _925.description]), () => ( void 0)),
|
|
42976
43012
|
fallbackIcon: icon,
|
|
42977
|
-
status: statusPill(_optionalChain([item, 'optionalAccess',
|
|
43013
|
+
status: statusPill(_optionalChain([item, 'optionalAccess', _926 => _926.status])),
|
|
42978
43014
|
chatRef,
|
|
42979
43015
|
isNewTab,
|
|
42980
43016
|
discuss,
|
|
@@ -43060,7 +43096,7 @@ function programRegistryEntries() {
|
|
|
43060
43096
|
discuss: opts.discuss,
|
|
43061
43097
|
configKey: cfg.configKey,
|
|
43062
43098
|
label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
|
|
43063
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
43099
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _927 => _927.extras, 'optionalAccess', _928 => _928.buildOgPlaceholderUrl, 'optionalCall', _929 => _929(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _930 => _930.title]), () => ( "")))]), () => ( null))
|
|
43064
43100
|
}
|
|
43065
43101
|
)
|
|
43066
43102
|
};
|
|
@@ -43212,8 +43248,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
43212
43248
|
chatRef,
|
|
43213
43249
|
isNewTab: opts.isNewTab,
|
|
43214
43250
|
discuss: opts.discuss,
|
|
43215
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
43216
|
-
hasEmbeddedVideo: _optionalChain([chatRef, 'access',
|
|
43251
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _931 => _931.extras, 'optionalAccess', _932 => _932.buildOgPlaceholderUrl, 'optionalCall', _933 => _933(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _934 => _934.title]), () => ( "")))]), () => ( null)),
|
|
43252
|
+
hasEmbeddedVideo: _optionalChain([chatRef, 'access', _935 => _935.metadata, 'optionalAccess', _936 => _936.hasEmbeddedVideo]) === true
|
|
43217
43253
|
}
|
|
43218
43254
|
)
|
|
43219
43255
|
},
|
|
@@ -43230,7 +43266,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
43230
43266
|
chatRef,
|
|
43231
43267
|
isNewTab: opts.isNewTab,
|
|
43232
43268
|
discuss: opts.discuss,
|
|
43233
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
43269
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _937 => _937.extras, 'optionalAccess', _938 => _938.buildOgPlaceholderUrl, 'optionalCall', _939 => _939(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _940 => _940.title]), () => ( "")))]), () => ( null))
|
|
43234
43270
|
}
|
|
43235
43271
|
)
|
|
43236
43272
|
},
|
|
@@ -43247,7 +43283,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
43247
43283
|
chatRef,
|
|
43248
43284
|
isNewTab: opts.isNewTab,
|
|
43249
43285
|
discuss: opts.discuss,
|
|
43250
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
43286
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _941 => _941.extras, 'optionalAccess', _942 => _942.buildOgPlaceholderUrl, 'optionalCall', _943 => _943(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _944 => _944.title]), () => ( "")))]), () => ( null))
|
|
43251
43287
|
}
|
|
43252
43288
|
)
|
|
43253
43289
|
},
|
|
@@ -43258,7 +43294,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
43258
43294
|
bareInline: true,
|
|
43259
43295
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
|
|
43260
43296
|
render: (item, chatRef, opts) => {
|
|
43261
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
43297
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _945 => _945.extras, 'optionalAccess', _946 => _946.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
|
|
43262
43298
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
43263
43299
|
ProductReleaseChatCard,
|
|
43264
43300
|
{
|
|
@@ -43285,7 +43321,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
43285
43321
|
chatRef,
|
|
43286
43322
|
isNewTab: opts.isNewTab,
|
|
43287
43323
|
discuss: opts.discuss,
|
|
43288
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
43324
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _947 => _947.extras, 'optionalAccess', _948 => _948.buildOgPlaceholderUrl, 'optionalCall', _949 => _949(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _950 => _950.title]), () => ( "")))]), () => ( null))
|
|
43289
43325
|
}
|
|
43290
43326
|
)
|
|
43291
43327
|
},
|
|
@@ -43304,7 +43340,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
43304
43340
|
chatRef,
|
|
43305
43341
|
isNewTab: opts.isNewTab,
|
|
43306
43342
|
discuss: opts.discuss,
|
|
43307
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
43343
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _951 => _951.extras, 'optionalAccess', _952 => _952.buildOgPlaceholderUrl, 'optionalCall', _953 => _953(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _954 => _954.title]), () => ( "")))]), () => ( null))
|
|
43308
43344
|
}
|
|
43309
43345
|
)
|
|
43310
43346
|
},
|
|
@@ -43316,7 +43352,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
43316
43352
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
|
|
43317
43353
|
// No public viewer — synthesize the hub-internal admin URL post-fetch
|
|
43318
43354
|
// so the wrapper + isNewTab computation see the actual destination.
|
|
43319
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
43355
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _955 => _955.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
|
|
43320
43356
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
43321
43357
|
CampaignChatCard,
|
|
43322
43358
|
{
|
|
@@ -43342,12 +43378,12 @@ function ChatCardNavWrap({
|
|
|
43342
43378
|
const onClickCapture = (e) => {
|
|
43343
43379
|
if (!href) return;
|
|
43344
43380
|
const targetEl = e.target;
|
|
43345
|
-
if (_optionalChain([targetEl, 'optionalAccess',
|
|
43346
|
-
if (!_optionalChain([targetEl, 'optionalAccess',
|
|
43381
|
+
if (_optionalChain([targetEl, 'optionalAccess', _956 => _956.closest, 'optionalCall', _957 => _957("button")])) return;
|
|
43382
|
+
if (!_optionalChain([targetEl, 'optionalAccess', _958 => _958.closest, 'optionalCall', _959 => _959("a")])) return;
|
|
43347
43383
|
const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
|
|
43348
43384
|
if (!handled) return;
|
|
43349
43385
|
e.stopPropagation();
|
|
43350
|
-
if (!isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
43386
|
+
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _960 => _960.closeChat])) panel.closeChat();
|
|
43351
43387
|
};
|
|
43352
43388
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
|
|
43353
43389
|
}
|
|
@@ -43369,7 +43405,7 @@ function ChatCardLoader({
|
|
|
43369
43405
|
title: chatRef.title,
|
|
43370
43406
|
externalUrl: chatRef.url,
|
|
43371
43407
|
targetPlatform: chatRef.targetPlatform,
|
|
43372
|
-
path: typeof _optionalChain([chatRef, 'access',
|
|
43408
|
+
path: typeof _optionalChain([chatRef, 'access', _961 => _961.metadata, 'optionalAccess', _962 => _962.path]) === "string" ? chatRef.metadata.path : null
|
|
43373
43409
|
},
|
|
43374
43410
|
sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
|
|
43375
43411
|
);
|
|
@@ -43383,7 +43419,7 @@ function ChatCardLoader({
|
|
|
43383
43419
|
const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
|
|
43384
43420
|
const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
|
|
43385
43421
|
const { item, isLoading } = useChatCardItem(
|
|
43386
|
-
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess',
|
|
43422
|
+
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _963 => _963.contentRefType]), () => ( "")),
|
|
43387
43423
|
fetchEntry ? resolvedChatRef.id : ""
|
|
43388
43424
|
);
|
|
43389
43425
|
if (!entry) return null;
|
|
@@ -43414,7 +43450,7 @@ function ChatCardLoader({
|
|
|
43414
43450
|
isNewTab,
|
|
43415
43451
|
discuss
|
|
43416
43452
|
};
|
|
43417
|
-
const path = typeof _optionalChain([finalChatRef, 'access',
|
|
43453
|
+
const path = typeof _optionalChain([finalChatRef, 'access', _964 => _964.metadata, 'optionalAccess', _965 => _965.path]) === "string" ? finalChatRef.metadata.path : null;
|
|
43418
43454
|
const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
43419
43455
|
ChatCardNavWrap,
|
|
43420
43456
|
{
|
|
@@ -43800,7 +43836,7 @@ function useJetStreamDialogSubscription({
|
|
|
43800
43836
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
43801
43837
|
conn: sharedConn,
|
|
43802
43838
|
wsUrl,
|
|
43803
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
43839
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _966 => _966.current, 'optionalCall', _967 => _967()]),
|
|
43804
43840
|
backoff: reconnectionBackoffRef.current,
|
|
43805
43841
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
43806
43842
|
// JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
|
|
@@ -43815,7 +43851,7 @@ function useJetStreamDialogSubscription({
|
|
|
43815
43851
|
setReconnectionCount((c) => c + 1);
|
|
43816
43852
|
}
|
|
43817
43853
|
hadConnectionBeforeRef.current = true;
|
|
43818
|
-
_optionalChain([onConnectRef, 'access',
|
|
43854
|
+
_optionalChain([onConnectRef, 'access', _968 => _968.current, 'optionalCall', _969 => _969()]);
|
|
43819
43855
|
}
|
|
43820
43856
|
if (status === "error") {
|
|
43821
43857
|
console.warn("[JetStream] NATS protocol error:", evt.data);
|
|
@@ -43825,7 +43861,7 @@ function useJetStreamDialogSubscription({
|
|
|
43825
43861
|
setIsConnected(false);
|
|
43826
43862
|
setIsSubscribed(false);
|
|
43827
43863
|
tearDownSubscription();
|
|
43828
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
43864
|
+
_optionalChain([onDisconnectRef, 'access', _970 => _970.current, 'optionalCall', _971 => _971()]);
|
|
43829
43865
|
}
|
|
43830
43866
|
}
|
|
43831
43867
|
});
|
|
@@ -43904,7 +43940,7 @@ function useJetStreamDialogSubscription({
|
|
|
43904
43940
|
}
|
|
43905
43941
|
subscriptionRef.current = handle;
|
|
43906
43942
|
setIsSubscribed(true);
|
|
43907
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
43943
|
+
_optionalChain([onSubscribedRef, 'access', _972 => _972.current, 'optionalCall', _973 => _973()]);
|
|
43908
43944
|
} catch (e44) {
|
|
43909
43945
|
if (!cancelled) {
|
|
43910
43946
|
setIsSubscribed(false);
|
|
@@ -44017,20 +44053,20 @@ function useNatsDialogSubscription({
|
|
|
44017
44053
|
const tearDownSubscriptions = () => {
|
|
44018
44054
|
subscriptionRefs.current.forEach((sub) => {
|
|
44019
44055
|
try {
|
|
44020
|
-
_optionalChain([sub, 'optionalAccess',
|
|
44056
|
+
_optionalChain([sub, 'optionalAccess', _974 => _974.unsubscribe, 'call', _975 => _975()]);
|
|
44021
44057
|
} catch (e46) {
|
|
44022
44058
|
}
|
|
44023
44059
|
});
|
|
44024
44060
|
subscriptionRefs.current.clear();
|
|
44025
44061
|
lastSubscribedDialogIdRef.current = null;
|
|
44026
|
-
_optionalChain([abortControllerRef, 'access',
|
|
44062
|
+
_optionalChain([abortControllerRef, 'access', _976 => _976.current, 'optionalAccess', _977 => _977.abort, 'call', _978 => _978()]);
|
|
44027
44063
|
abortControllerRef.current = null;
|
|
44028
44064
|
};
|
|
44029
44065
|
const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
|
|
44030
44066
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
44031
44067
|
conn: sharedConn,
|
|
44032
44068
|
wsUrl,
|
|
44033
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
44069
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _979 => _979.current, 'optionalCall', _980 => _980()]),
|
|
44034
44070
|
backoff: reconnectionBackoffRef.current,
|
|
44035
44071
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
44036
44072
|
shouldRetryOn: isDisconnectStatus,
|
|
@@ -44041,7 +44077,7 @@ function useNatsDialogSubscription({
|
|
|
44041
44077
|
setReconnectionCount((c) => c + 1);
|
|
44042
44078
|
}
|
|
44043
44079
|
hadConnectionBeforeRef.current = true;
|
|
44044
|
-
_optionalChain([onConnectRef, 'access',
|
|
44080
|
+
_optionalChain([onConnectRef, 'access', _981 => _981.current, 'optionalCall', _982 => _982()]);
|
|
44045
44081
|
}
|
|
44046
44082
|
if (status === "error") {
|
|
44047
44083
|
console.warn("[NATS] protocol error:", evt.data);
|
|
@@ -44051,7 +44087,7 @@ function useNatsDialogSubscription({
|
|
|
44051
44087
|
setIsConnected(false);
|
|
44052
44088
|
setIsSubscribed(false);
|
|
44053
44089
|
tearDownSubscriptions();
|
|
44054
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
44090
|
+
_optionalChain([onDisconnectRef, 'access', _983 => _983.current, 'optionalCall', _984 => _984()]);
|
|
44055
44091
|
}
|
|
44056
44092
|
}
|
|
44057
44093
|
});
|
|
@@ -44082,13 +44118,13 @@ function useNatsDialogSubscription({
|
|
|
44082
44118
|
setIsSubscribed(false);
|
|
44083
44119
|
subscriptionRefs.current.forEach((sub) => {
|
|
44084
44120
|
try {
|
|
44085
|
-
_optionalChain([sub, 'optionalAccess',
|
|
44121
|
+
_optionalChain([sub, 'optionalAccess', _985 => _985.unsubscribe, 'call', _986 => _986()]);
|
|
44086
44122
|
} catch (e47) {
|
|
44087
44123
|
}
|
|
44088
44124
|
});
|
|
44089
44125
|
subscriptionRefs.current.clear();
|
|
44090
44126
|
lastSubscribedDialogIdRef.current = null;
|
|
44091
|
-
_optionalChain([abortControllerRef, 'access',
|
|
44127
|
+
_optionalChain([abortControllerRef, 'access', _987 => _987.current, 'optionalAccess', _988 => _988.abort, 'call', _989 => _989()]);
|
|
44092
44128
|
abortControllerRef.current = null;
|
|
44093
44129
|
}
|
|
44094
44130
|
return;
|
|
@@ -44100,12 +44136,12 @@ function useNatsDialogSubscription({
|
|
|
44100
44136
|
if (subscriptionRefs.current.size > 0) {
|
|
44101
44137
|
subscriptionRefs.current.forEach((sub) => {
|
|
44102
44138
|
try {
|
|
44103
|
-
_optionalChain([sub, 'optionalAccess',
|
|
44139
|
+
_optionalChain([sub, 'optionalAccess', _990 => _990.unsubscribe, 'call', _991 => _991()]);
|
|
44104
44140
|
} catch (e48) {
|
|
44105
44141
|
}
|
|
44106
44142
|
});
|
|
44107
44143
|
subscriptionRefs.current.clear();
|
|
44108
|
-
_optionalChain([abortControllerRef, 'access',
|
|
44144
|
+
_optionalChain([abortControllerRef, 'access', _992 => _992.current, 'optionalAccess', _993 => _993.abort, 'call', _994 => _994()]);
|
|
44109
44145
|
}
|
|
44110
44146
|
abortControllerRef.current = new AbortController();
|
|
44111
44147
|
const abort = abortControllerRef.current;
|
|
@@ -44137,7 +44173,7 @@ function useNatsDialogSubscription({
|
|
|
44137
44173
|
});
|
|
44138
44174
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
44139
44175
|
setIsSubscribed(true);
|
|
44140
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
44176
|
+
_optionalChain([onSubscribedRef, 'access', _995 => _995.current, 'optionalCall', _996 => _996()]);
|
|
44141
44177
|
};
|
|
44142
44178
|
if (isConnectedRef.current) {
|
|
44143
44179
|
createSubscriptions();
|
|
@@ -44147,7 +44183,7 @@ function useNatsDialogSubscription({
|
|
|
44147
44183
|
abort.abort();
|
|
44148
44184
|
subscriptionRefs.current.forEach((sub) => {
|
|
44149
44185
|
try {
|
|
44150
|
-
_optionalChain([sub, 'optionalAccess',
|
|
44186
|
+
_optionalChain([sub, 'optionalAccess', _997 => _997.unsubscribe, 'call', _998 => _998()]);
|
|
44151
44187
|
} catch (e50) {
|
|
44152
44188
|
}
|
|
44153
44189
|
});
|
|
@@ -44188,7 +44224,7 @@ function useNatsDialogSubscription({
|
|
|
44188
44224
|
});
|
|
44189
44225
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
44190
44226
|
setIsSubscribed(true);
|
|
44191
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
44227
|
+
_optionalChain([onSubscribedRef, 'access', _999 => _999.current, 'optionalCall', _1000 => _1000()]);
|
|
44192
44228
|
} else if (subscriptionRefs.current.size > 0) {
|
|
44193
44229
|
setIsSubscribed(true);
|
|
44194
44230
|
}
|
|
@@ -44196,10 +44232,10 @@ function useNatsDialogSubscription({
|
|
|
44196
44232
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
44197
44233
|
}
|
|
44198
44234
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
44199
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
44235
|
+
const path = _optionalChain([options, 'optionalAccess', _1001 => _1001.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
44200
44236
|
const u = new URL(path, apiBaseUrl);
|
|
44201
44237
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
44202
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
44238
|
+
if (_optionalChain([options, 'optionalAccess', _1002 => _1002.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1003 => _1003.token])) {
|
|
44203
44239
|
u.searchParams.set("authorization", options.token);
|
|
44204
44240
|
}
|
|
44205
44241
|
return u.toString();
|
|
@@ -44335,7 +44371,7 @@ function parseChunkToAction(chunk) {
|
|
|
44335
44371
|
// is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
|
|
44336
44372
|
// historical path in `process-historical-messages.ts`) — keeps both
|
|
44337
44373
|
// message sources producing an identical shape.
|
|
44338
|
-
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess',
|
|
44374
|
+
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1004 => _1004.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1005 => _1005.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
|
|
44339
44375
|
};
|
|
44340
44376
|
case MESSAGE_TYPE.TOKEN_USAGE:
|
|
44341
44377
|
return {
|
|
@@ -44527,8 +44563,8 @@ var MessageSegmentAccumulator = class {
|
|
|
44527
44563
|
type: "tool_execution",
|
|
44528
44564
|
data: {
|
|
44529
44565
|
...toolData,
|
|
44530
|
-
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
44531
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
44566
|
+
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1006 => _1006.data, 'access', _1007 => _1007.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1008 => _1008.toolTitle]))),
|
|
44567
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1009 => _1009.parameters])
|
|
44532
44568
|
}
|
|
44533
44569
|
};
|
|
44534
44570
|
if (existingIndex !== -1) {
|
|
@@ -44552,8 +44588,8 @@ var MessageSegmentAccumulator = class {
|
|
|
44552
44588
|
if (seg.type !== "approval_batch") return seg;
|
|
44553
44589
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
44554
44590
|
if (!hasCall) return seg;
|
|
44555
|
-
const prev = _optionalChain([seg, 'access',
|
|
44556
|
-
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess',
|
|
44591
|
+
const prev = _optionalChain([seg, 'access', _1010 => _1010.data, 'access', _1011 => _1011.executions, 'optionalAccess', _1012 => _1012[execId]]);
|
|
44592
|
+
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1013 => _1013.result]), success: _optionalChain([prev, 'optionalAccess', _1014 => _1014.success]) };
|
|
44557
44593
|
matched = true;
|
|
44558
44594
|
return {
|
|
44559
44595
|
...seg,
|
|
@@ -44675,10 +44711,10 @@ var MessageSegmentAccumulator = class {
|
|
|
44675
44711
|
const segment = {
|
|
44676
44712
|
type: "approval_request",
|
|
44677
44713
|
data: {
|
|
44678
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
44679
|
-
explanation: _optionalChain([pendingApproval, 'optionalAccess',
|
|
44714
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _1015 => _1015.command]) || "",
|
|
44715
|
+
explanation: _optionalChain([pendingApproval, 'optionalAccess', _1016 => _1016.explanation]),
|
|
44680
44716
|
requestId,
|
|
44681
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
44717
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1017 => _1017.approvalType]) || approvalType
|
|
44682
44718
|
},
|
|
44683
44719
|
status,
|
|
44684
44720
|
onApprove: this.callbacks.onApprove,
|
|
@@ -44870,7 +44906,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44870
44906
|
if (initialState.escalatedApprovals) {
|
|
44871
44907
|
pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
|
|
44872
44908
|
initialState.escalatedApprovals.forEach((data, requestId) => {
|
|
44873
|
-
_optionalChain([callbacks, 'access',
|
|
44909
|
+
_optionalChain([callbacks, 'access', _1018 => _1018.onEscalatedApproval, 'optionalCall', _1019 => _1019(requestId, data)]);
|
|
44874
44910
|
});
|
|
44875
44911
|
}
|
|
44876
44912
|
hasEverStreamedRef.current = true;
|
|
@@ -44891,12 +44927,12 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44891
44927
|
if (!action) return;
|
|
44892
44928
|
const accumulator = accumulatorRef.current;
|
|
44893
44929
|
const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
|
|
44894
|
-
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access',
|
|
44930
|
+
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1020 => _1020.onSegmentsUpdate, 'optionalCall', _1021 => _1021(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
|
|
44895
44931
|
if (action.action === "direct_message") sawDirectMessageRef.current = true;
|
|
44896
44932
|
if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
|
|
44897
44933
|
if (isInStreamRef.current) {
|
|
44898
44934
|
isInStreamRef.current = false;
|
|
44899
|
-
_optionalChain([callbacks, 'access',
|
|
44935
|
+
_optionalChain([callbacks, 'access', _1022 => _1022.onStreamEnd, 'optionalCall', _1023 => _1023()]);
|
|
44900
44936
|
accumulator.resetSegments();
|
|
44901
44937
|
}
|
|
44902
44938
|
return;
|
|
@@ -44905,16 +44941,16 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44905
44941
|
case "message_start":
|
|
44906
44942
|
isInStreamRef.current = true;
|
|
44907
44943
|
hasEverStreamedRef.current = true;
|
|
44908
|
-
_optionalChain([callbacks, 'access',
|
|
44944
|
+
_optionalChain([callbacks, 'access', _1024 => _1024.onStreamStart, 'optionalCall', _1025 => _1025()]);
|
|
44909
44945
|
accumulator.resetSegments();
|
|
44910
44946
|
break;
|
|
44911
44947
|
case "message_end":
|
|
44912
44948
|
isInStreamRef.current = false;
|
|
44913
|
-
_optionalChain([callbacks, 'access',
|
|
44949
|
+
_optionalChain([callbacks, 'access', _1026 => _1026.onStreamEnd, 'optionalCall', _1027 => _1027()]);
|
|
44914
44950
|
accumulator.resetSegments();
|
|
44915
44951
|
break;
|
|
44916
44952
|
case "metadata":
|
|
44917
|
-
_optionalChain([callbacks, 'access',
|
|
44953
|
+
_optionalChain([callbacks, 'access', _1028 => _1028.onMetadata, 'optionalCall', _1029 => _1029(action)]);
|
|
44918
44954
|
break;
|
|
44919
44955
|
case "text": {
|
|
44920
44956
|
const segments = accumulator.appendText(action.text);
|
|
@@ -44957,7 +44993,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44957
44993
|
emitSegments(segments);
|
|
44958
44994
|
} else {
|
|
44959
44995
|
pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
|
|
44960
|
-
_optionalChain([callbacks, 'access',
|
|
44996
|
+
_optionalChain([callbacks, 'access', _1030 => _1030.onEscalatedApproval, 'optionalCall', _1031 => _1031(requestId, { command, explanation, approvalType })]);
|
|
44961
44997
|
}
|
|
44962
44998
|
break;
|
|
44963
44999
|
}
|
|
@@ -44969,13 +45005,13 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44969
45005
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
44970
45006
|
pendingEscalatedRef.current.set(requestId, {
|
|
44971
45007
|
command: summary,
|
|
44972
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
45008
|
+
explanation: _optionalChain([required, 'optionalAccess', _1032 => _1032.toolExplanation]),
|
|
44973
45009
|
approvalType,
|
|
44974
45010
|
toolCalls
|
|
44975
45011
|
});
|
|
44976
|
-
_optionalChain([callbacks, 'access',
|
|
45012
|
+
_optionalChain([callbacks, 'access', _1033 => _1033.onEscalatedApproval, 'optionalCall', _1034 => _1034(requestId, {
|
|
44977
45013
|
command: summary,
|
|
44978
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
45014
|
+
explanation: _optionalChain([required, 'optionalAccess', _1035 => _1035.toolExplanation]),
|
|
44979
45015
|
approvalType
|
|
44980
45016
|
})]);
|
|
44981
45017
|
break;
|
|
@@ -45005,7 +45041,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
45005
45041
|
const status = approved ? "approved" : "rejected";
|
|
45006
45042
|
if (escalatedData) {
|
|
45007
45043
|
pendingEscalatedRef.current.delete(requestId);
|
|
45008
|
-
_optionalChain([callbacks, 'access',
|
|
45044
|
+
_optionalChain([callbacks, 'access', _1036 => _1036.onEscalatedApprovalResult, 'optionalCall', _1037 => _1037(requestId, approved, {
|
|
45009
45045
|
command: escalatedData.command,
|
|
45010
45046
|
explanation: escalatedData.explanation,
|
|
45011
45047
|
approvalType: escalatedData.approvalType
|
|
@@ -45051,29 +45087,29 @@ function useRealtimeChunkProcessor(options) {
|
|
|
45051
45087
|
emitSegments(accumulator.getSegments());
|
|
45052
45088
|
}
|
|
45053
45089
|
}
|
|
45054
|
-
_optionalChain([callbacks, 'access',
|
|
45090
|
+
_optionalChain([callbacks, 'access', _1038 => _1038.onApprovalResolved, 'optionalCall', _1039 => _1039(requestId, status, approvalType, resolvedByName)]);
|
|
45055
45091
|
break;
|
|
45056
45092
|
}
|
|
45057
45093
|
case "error": {
|
|
45058
45094
|
let message2;
|
|
45059
|
-
if ("details" in action && _optionalChain([action, 'optionalAccess',
|
|
45095
|
+
if ("details" in action && _optionalChain([action, 'optionalAccess', _1040 => _1040.details])) {
|
|
45060
45096
|
try {
|
|
45061
|
-
message2 = _optionalChain([JSON, 'access',
|
|
45097
|
+
message2 = _optionalChain([JSON, 'access', _1041 => _1041.parse, 'call', _1042 => _1042(action.details), 'optionalAccess', _1043 => _1043.error, 'optionalAccess', _1044 => _1044.message]);
|
|
45062
45098
|
} catch (e52) {
|
|
45063
45099
|
message2 = action.details;
|
|
45064
45100
|
}
|
|
45065
45101
|
}
|
|
45066
45102
|
const segments = accumulator.addError(action.error, message2);
|
|
45067
45103
|
emitSegments(segments);
|
|
45068
|
-
_optionalChain([callbacks, 'access',
|
|
45104
|
+
_optionalChain([callbacks, 'access', _1045 => _1045.onError, 'optionalCall', _1046 => _1046(action.error, message2)]);
|
|
45069
45105
|
break;
|
|
45070
45106
|
}
|
|
45071
45107
|
case "system": {
|
|
45072
|
-
_optionalChain([callbacks, 'access',
|
|
45108
|
+
_optionalChain([callbacks, 'access', _1047 => _1047.onSystemMessage, 'optionalCall', _1048 => _1048(action.text, { streamSeq })]);
|
|
45073
45109
|
break;
|
|
45074
45110
|
}
|
|
45075
45111
|
case "direct_message": {
|
|
45076
|
-
_optionalChain([callbacks, 'access',
|
|
45112
|
+
_optionalChain([callbacks, 'access', _1049 => _1049.onDirectMessage, 'optionalCall', _1050 => _1050(action.text, {
|
|
45077
45113
|
ownerType: action.ownerType,
|
|
45078
45114
|
displayName: action.displayName,
|
|
45079
45115
|
userId: action.userId,
|
|
@@ -45082,7 +45118,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
45082
45118
|
break;
|
|
45083
45119
|
}
|
|
45084
45120
|
case "message_request":
|
|
45085
|
-
_optionalChain([callbacks, 'access',
|
|
45121
|
+
_optionalChain([callbacks, 'access', _1051 => _1051.onUserMessage, 'optionalCall', _1052 => _1052(action.text, {
|
|
45086
45122
|
ownerType: action.ownerType,
|
|
45087
45123
|
displayName: action.displayName,
|
|
45088
45124
|
userId: action.userId,
|
|
@@ -45091,7 +45127,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
45091
45127
|
})]);
|
|
45092
45128
|
break;
|
|
45093
45129
|
case "token_usage":
|
|
45094
|
-
_optionalChain([callbacks, 'access',
|
|
45130
|
+
_optionalChain([callbacks, 'access', _1053 => _1053.onTokenUsage, 'optionalCall', _1054 => _1054(action.data)]);
|
|
45095
45131
|
break;
|
|
45096
45132
|
case "context_compaction_start": {
|
|
45097
45133
|
const standalone = !isInStreamRef.current;
|
|
@@ -45106,7 +45142,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
45106
45142
|
break;
|
|
45107
45143
|
}
|
|
45108
45144
|
case "dialog_closed":
|
|
45109
|
-
_optionalChain([callbacks, 'access',
|
|
45145
|
+
_optionalChain([callbacks, 'access', _1055 => _1055.onDialogClosed, 'optionalCall', _1056 => _1056()]);
|
|
45110
45146
|
break;
|
|
45111
45147
|
default:
|
|
45112
45148
|
break;
|
|
@@ -45153,7 +45189,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
|
|
|
45153
45189
|
const data = await res.json();
|
|
45154
45190
|
return _nullishCoalesce(data.commands, () => ( []));
|
|
45155
45191
|
} catch (err) {
|
|
45156
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
45192
|
+
if (_optionalChain([err, 'optionalAccess', _1057 => _1057.name]) === "AbortError") throw err;
|
|
45157
45193
|
console.warn("[chat] slash-commands fetch failed, showing none:", err);
|
|
45158
45194
|
return [];
|
|
45159
45195
|
}
|
|
@@ -45174,7 +45210,7 @@ function useSlashCommands(prefix, commandsUrl) {
|
|
|
45174
45210
|
const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
|
|
45175
45211
|
if (!cancelled) setCommands(next);
|
|
45176
45212
|
} catch (err) {
|
|
45177
|
-
if (!cancelled && _optionalChain([err, 'optionalAccess',
|
|
45213
|
+
if (!cancelled && _optionalChain([err, 'optionalAccess', _1058 => _1058.name]) !== "AbortError") {
|
|
45178
45214
|
console.warn("[use-slash-commands] fetch failed:", err);
|
|
45179
45215
|
}
|
|
45180
45216
|
} finally {
|
|
@@ -45193,7 +45229,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
|
|
|
45193
45229
|
const query = _reactquery.useQuery.call(void 0, {
|
|
45194
45230
|
queryKey: ["chat-slash-commands", commandsUrl],
|
|
45195
45231
|
queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
|
|
45196
|
-
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
45232
|
+
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1059 => _1059.enabled]), () => ( true)),
|
|
45197
45233
|
staleTime: Infinity,
|
|
45198
45234
|
gcTime: Infinity,
|
|
45199
45235
|
// The commands registry is non-critical chrome — a failure degrades to an
|
|
@@ -45229,18 +45265,18 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
|
|
|
45229
45265
|
}
|
|
45230
45266
|
const data = await res.json();
|
|
45231
45267
|
return {
|
|
45232
|
-
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
45233
|
-
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
45234
|
-
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
45268
|
+
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1060 => _1060.greeting]), () => ( null)),
|
|
45269
|
+
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1061 => _1061.enabledRagTableIds]), () => ( [])),
|
|
45270
|
+
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1062 => _1062.suggestedQueries]), () => ( []))
|
|
45235
45271
|
};
|
|
45236
45272
|
} catch (err) {
|
|
45237
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
45273
|
+
if (_optionalChain([err, 'optionalAccess', _1063 => _1063.name]) === "AbortError") throw err;
|
|
45238
45274
|
console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
|
|
45239
45275
|
return EMPTY_STATE_FALLBACK;
|
|
45240
45276
|
}
|
|
45241
45277
|
}
|
|
45242
45278
|
function useEmptyStateConfig(emptyStateUrl, options) {
|
|
45243
|
-
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
45279
|
+
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1064 => _1064.enabled]), () => ( true))) && !!emptyStateUrl;
|
|
45244
45280
|
const query = _reactquery.useQuery.call(void 0, {
|
|
45245
45281
|
queryKey: ["chat-empty-state", emptyStateUrl],
|
|
45246
45282
|
queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
|
|
@@ -45269,7 +45305,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
|
|
|
45269
45305
|
var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
|
|
45270
45306
|
function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
45271
45307
|
return new Promise((resolve, reject) => {
|
|
45272
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
45308
|
+
if (_optionalChain([signal, 'optionalAccess', _1065 => _1065.aborted])) {
|
|
45273
45309
|
reject(new Error("Upload cancelled"));
|
|
45274
45310
|
return;
|
|
45275
45311
|
}
|
|
@@ -45283,7 +45319,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
45283
45319
|
xhr.removeEventListener("error", handleError);
|
|
45284
45320
|
xhr.removeEventListener("abort", handleAbort);
|
|
45285
45321
|
xhr.removeEventListener("timeout", handleTimeout);
|
|
45286
|
-
_optionalChain([signal, 'optionalAccess',
|
|
45322
|
+
_optionalChain([signal, 'optionalAccess', _1066 => _1066.removeEventListener, 'call', _1067 => _1067("abort", handleSignalAbort)]);
|
|
45287
45323
|
if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
|
|
45288
45324
|
};
|
|
45289
45325
|
const handleProgress = (event) => {
|
|
@@ -45319,7 +45355,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
45319
45355
|
const handleSignalAbort = () => {
|
|
45320
45356
|
xhr.abort();
|
|
45321
45357
|
};
|
|
45322
|
-
_optionalChain([signal, 'optionalAccess',
|
|
45358
|
+
_optionalChain([signal, 'optionalAccess', _1068 => _1068.addEventListener, 'call', _1069 => _1069("abort", handleSignalAbort, { once: true })]);
|
|
45323
45359
|
xhr.upload.addEventListener("progress", handleProgress);
|
|
45324
45360
|
xhr.addEventListener("load", handleLoad);
|
|
45325
45361
|
xhr.addEventListener("error", handleError);
|
|
@@ -45363,12 +45399,12 @@ function useChatAttachments() {
|
|
|
45363
45399
|
try {
|
|
45364
45400
|
sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
|
|
45365
45401
|
} catch (err) {
|
|
45366
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
45402
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1070 => _1070.signal, 'access', _1071 => _1071.aborted])) return;
|
|
45367
45403
|
throw new Error(
|
|
45368
45404
|
`Could not read file content: ${err instanceof Error ? err.message : String(err)}`
|
|
45369
45405
|
);
|
|
45370
45406
|
}
|
|
45371
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
45407
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1072 => _1072.signal, 'access', _1073 => _1073.aborted])) return;
|
|
45372
45408
|
if (!sniffed) {
|
|
45373
45409
|
throw new Error("Unrecognized file format");
|
|
45374
45410
|
}
|
|
@@ -45382,7 +45418,7 @@ function useChatAttachments() {
|
|
|
45382
45418
|
const urlResp = await _chunkDCIB6AK3cjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
|
|
45383
45419
|
method: "POST",
|
|
45384
45420
|
headers: { "Content-Type": "application/json" },
|
|
45385
|
-
signal: _optionalChain([ctrl, 'optionalAccess',
|
|
45421
|
+
signal: _optionalChain([ctrl, 'optionalAccess', _1074 => _1074.signal]),
|
|
45386
45422
|
body: JSON.stringify({
|
|
45387
45423
|
fileName: att.file.name,
|
|
45388
45424
|
// Pass the SNIFFED MIME (not `file.type`, which can be a
|
|
@@ -45408,9 +45444,9 @@ function useChatAttachments() {
|
|
|
45408
45444
|
(pct) => {
|
|
45409
45445
|
updateOne(att.id, { progress: pct });
|
|
45410
45446
|
},
|
|
45411
|
-
_optionalChain([ctrl, 'optionalAccess',
|
|
45447
|
+
_optionalChain([ctrl, 'optionalAccess', _1075 => _1075.signal])
|
|
45412
45448
|
);
|
|
45413
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
45449
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1076 => _1076.signal, 'access', _1077 => _1077.aborted])) return;
|
|
45414
45450
|
updateOne(att.id, {
|
|
45415
45451
|
status: "ready",
|
|
45416
45452
|
progress: 100,
|
|
@@ -45418,7 +45454,7 @@ function useChatAttachments() {
|
|
|
45418
45454
|
viewToken: mintData.viewToken
|
|
45419
45455
|
});
|
|
45420
45456
|
} catch (err) {
|
|
45421
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
45457
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1078 => _1078.signal, 'access', _1079 => _1079.aborted])) return;
|
|
45422
45458
|
const message2 = err instanceof Error ? err.message : String(err);
|
|
45423
45459
|
updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
|
|
45424
45460
|
} finally {
|
|
@@ -45569,7 +45605,7 @@ var ANON_DEFAULTS = {
|
|
|
45569
45605
|
function useResolveChatIdentity(enabled) {
|
|
45570
45606
|
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
45571
45607
|
const url = runtime.endpoints.identityUrl;
|
|
45572
|
-
const proxyEmail = _nullishCoalesce(_optionalChain([_chunkDCIB6AK3cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess',
|
|
45608
|
+
const proxyEmail = _nullishCoalesce(_optionalChain([_chunkDCIB6AK3cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1080 => _1080.email]), () => ( null));
|
|
45573
45609
|
const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
|
|
45574
45610
|
const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
|
|
45575
45611
|
_react.useEffect.call(void 0, () => {
|
|
@@ -45660,7 +45696,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
|
|
|
45660
45696
|
yield chunk;
|
|
45661
45697
|
}
|
|
45662
45698
|
} catch (err) {
|
|
45663
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
45699
|
+
if (_optionalChain([err, 'optionalAccess', _1081 => _1081.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
45664
45700
|
return;
|
|
45665
45701
|
}
|
|
45666
45702
|
const errorMessage = err instanceof Error ? err.message : "An error occurred";
|
|
@@ -45711,7 +45747,7 @@ function useChat({
|
|
|
45711
45747
|
const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
|
|
45712
45748
|
onMessagesChangeRef.current = onMessagesChange;
|
|
45713
45749
|
_react.useEffect.call(void 0, () => {
|
|
45714
|
-
_optionalChain([onMessagesChangeRef, 'access',
|
|
45750
|
+
_optionalChain([onMessagesChangeRef, 'access', _1082 => _1082.current, 'optionalCall', _1083 => _1083(messages)]);
|
|
45715
45751
|
}, [messages]);
|
|
45716
45752
|
const {
|
|
45717
45753
|
streamMessage,
|
|
@@ -45748,7 +45784,7 @@ function useChat({
|
|
|
45748
45784
|
name: "You",
|
|
45749
45785
|
content: text,
|
|
45750
45786
|
timestamp: /* @__PURE__ */ new Date(),
|
|
45751
|
-
..._optionalChain([options, 'optionalAccess',
|
|
45787
|
+
..._optionalChain([options, 'optionalAccess', _1084 => _1084.hidden]) ? { hidden: true } : {}
|
|
45752
45788
|
};
|
|
45753
45789
|
addMessage(userMessage);
|
|
45754
45790
|
setIsTyping(true);
|
|
@@ -45810,7 +45846,7 @@ function useChat({
|
|
|
45810
45846
|
currentTextSegment = "";
|
|
45811
45847
|
}
|
|
45812
45848
|
const seg = segment;
|
|
45813
|
-
const proposalId = _optionalChain([seg, 'access',
|
|
45849
|
+
const proposalId = _optionalChain([seg, 'access', _1085 => _1085.data, 'optionalAccess', _1086 => _1086.requestId]);
|
|
45814
45850
|
const updateApprovalMessage = (transform) => {
|
|
45815
45851
|
setMessages((prev) => {
|
|
45816
45852
|
for (let i = prev.length - 1; i >= 0; i--) {
|
|
@@ -45819,7 +45855,7 @@ function useChat({
|
|
|
45819
45855
|
if (!Array.isArray(m.content)) continue;
|
|
45820
45856
|
const segments = m.content;
|
|
45821
45857
|
const hasMatch = segments.some(
|
|
45822
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
45858
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1087 => _1087.data, 'optionalAccess', _1088 => _1088.requestId]) === proposalId
|
|
45823
45859
|
);
|
|
45824
45860
|
if (!hasMatch) continue;
|
|
45825
45861
|
const next = [...prev];
|
|
@@ -45861,11 +45897,11 @@ function useChat({
|
|
|
45861
45897
|
if (!Array.isArray(m.content)) continue;
|
|
45862
45898
|
const segments = m.content;
|
|
45863
45899
|
const hasMatch = segments.some(
|
|
45864
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
45900
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1089 => _1089.data, 'optionalAccess', _1090 => _1090.requestId]) === decision.proposalId
|
|
45865
45901
|
);
|
|
45866
45902
|
if (!hasMatch) continue;
|
|
45867
45903
|
const flipped = segments.map(
|
|
45868
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
45904
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1091 => _1091.data, 'optionalAccess', _1092 => _1092.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
|
|
45869
45905
|
);
|
|
45870
45906
|
const next = [...prev];
|
|
45871
45907
|
next[i] = { ...m, content: flipped };
|
|
@@ -46027,8 +46063,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
46027
46063
|
})),
|
|
46028
46064
|
{ role: "user", content: message2 }
|
|
46029
46065
|
];
|
|
46030
|
-
const targetPath = _optionalChain([extra, 'optionalAccess',
|
|
46031
|
-
const requestBody = _optionalChain([extra, 'optionalAccess',
|
|
46066
|
+
const targetPath = _optionalChain([extra, 'optionalAccess', _1093 => _1093.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
|
|
46067
|
+
const requestBody = _optionalChain([extra, 'optionalAccess', _1094 => _1094.approvalAction]) ? {
|
|
46032
46068
|
proposal_id: extra.approvalAction.proposalId,
|
|
46033
46069
|
action: extra.approvalAction.action,
|
|
46034
46070
|
messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
|
|
@@ -46037,8 +46073,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
46037
46073
|
}))
|
|
46038
46074
|
} : {
|
|
46039
46075
|
messages: apiMessages,
|
|
46040
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
46041
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
46076
|
+
..._optionalChain([extra, 'optionalAccess', _1095 => _1095.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
|
|
46077
|
+
..._optionalChain([extra, 'optionalAccess', _1096 => _1096.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
|
|
46042
46078
|
};
|
|
46043
46079
|
const response = await _chunkDCIB6AK3cjs.embedAuthedFetch.call(void 0, targetPath, {
|
|
46044
46080
|
method: "POST",
|
|
@@ -46048,7 +46084,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
46048
46084
|
if (!response.ok) {
|
|
46049
46085
|
throw new Error(`Chat request failed: ${response.status}`);
|
|
46050
46086
|
}
|
|
46051
|
-
const reader = _optionalChain([response, 'access',
|
|
46087
|
+
const reader = _optionalChain([response, 'access', _1097 => _1097.body, 'optionalAccess', _1098 => _1098.getReader, 'call', _1099 => _1099()]);
|
|
46052
46088
|
if (!reader) throw new Error("No response body");
|
|
46053
46089
|
const decoder = new TextDecoder();
|
|
46054
46090
|
let buffer = "";
|
|
@@ -46131,7 +46167,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
46131
46167
|
const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
|
|
46132
46168
|
const result = _nullishCoalesce(meta.result, () => ( null));
|
|
46133
46169
|
const card = _nullishCoalesce(meta.card, () => ( null));
|
|
46134
|
-
if (_optionalChain([card, 'optionalAccess',
|
|
46170
|
+
if (_optionalChain([card, 'optionalAccess', _1100 => _1100.ref, 'optionalAccess', _1101 => _1101.id]) && _optionalChain([card, 'optionalAccess', _1102 => _1102.type])) {
|
|
46135
46171
|
const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
|
|
46136
46172
|
const key = buildChatRefKey(card.type, card.ref.id);
|
|
46137
46173
|
refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
|
|
@@ -46144,8 +46180,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
46144
46180
|
willAutoContinue: meta.willAutoContinue === true,
|
|
46145
46181
|
...toolName ? { toolName } : {},
|
|
46146
46182
|
...result ? { result } : {},
|
|
46147
|
-
..._optionalChain([card, 'optionalAccess',
|
|
46148
|
-
..._optionalChain([card, 'optionalAccess',
|
|
46183
|
+
..._optionalChain([card, 'optionalAccess', _1103 => _1103.marker]) ? { marker: card.marker } : {},
|
|
46184
|
+
..._optionalChain([card, 'optionalAccess', _1104 => _1104.ref]) ? { cardRef: card.ref } : {},
|
|
46149
46185
|
...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
|
|
46150
46186
|
proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
|
|
46151
46187
|
};
|
|
@@ -46264,7 +46300,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
|
|
|
46264
46300
|
var chatStorageKey = (source) => {
|
|
46265
46301
|
const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
|
|
46266
46302
|
const auth = _chunkDCIB6AK3cjs.getEmbedProxyAuth.call(void 0, );
|
|
46267
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
46303
|
+
if (_optionalChain([auth, 'optionalAccess', _1105 => _1105.email])) {
|
|
46268
46304
|
return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
|
|
46269
46305
|
}
|
|
46270
46306
|
return base;
|
|
@@ -46319,7 +46355,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
46319
46355
|
const { active = true } = runtimeOptions;
|
|
46320
46356
|
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
46321
46357
|
const source = runtime.source || DEFAULT_CHAT_SOURCE;
|
|
46322
|
-
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
46358
|
+
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1106 => _1106.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
|
|
46323
46359
|
const persistedRef = _react.useRef.call(void 0, null);
|
|
46324
46360
|
if (persistedRef.current === null) {
|
|
46325
46361
|
pruneStaleChatStorage(source);
|
|
@@ -46424,7 +46460,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
46424
46460
|
const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
|
|
46425
46461
|
sources = sourcesMapRef.current.get(lookupIdx);
|
|
46426
46462
|
chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
|
|
46427
|
-
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access',
|
|
46463
|
+
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1107 => _1107.current, 'access', _1108 => _1108.get, 'call', _1109 => _1109(lookupIdx), 'optionalAccess', _1110 => _1110.scrollAnchor]), () => ( void 0));
|
|
46428
46464
|
}
|
|
46429
46465
|
return {
|
|
46430
46466
|
id: m.id,
|
|
@@ -46472,7 +46508,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
46472
46508
|
);
|
|
46473
46509
|
return;
|
|
46474
46510
|
}
|
|
46475
|
-
const refSlug = typeof _optionalChain([reference, 'access',
|
|
46511
|
+
const refSlug = typeof _optionalChain([reference, 'access', _1111 => _1111.metadata, 'optionalAccess', _1112 => _1112.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
|
|
46476
46512
|
const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
|
|
46477
46513
|
const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
46478
46514
|
const text = `/${cmdId} display "${escaped}"`;
|
|
@@ -46544,18 +46580,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
46544
46580
|
clearMessages,
|
|
46545
46581
|
streamingPhase,
|
|
46546
46582
|
/** Provider key for the lib's `<ModelDisplay>` icon. */
|
|
46547
|
-
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46548
|
-
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46549
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46583
|
+
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1113 => _1113.provider]), () => ( null)),
|
|
46584
|
+
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1114 => _1114.modelLabel]), () => ( null)),
|
|
46585
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1115 => _1115.contextWindowMaxTokens]), () => ( null)),
|
|
46550
46586
|
/** Input tokens (known after server's message_start frame; null until). */
|
|
46551
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46587
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1116 => _1116.inputTokens]), () => ( null)),
|
|
46552
46588
|
/** Output tokens (known only after server's trailing usage frame). */
|
|
46553
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46589
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1117 => _1117.outputTokens]), () => ( null)),
|
|
46554
46590
|
/** Cache hit % (read / total-input × 100). null during streaming. */
|
|
46555
|
-
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46591
|
+
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1118 => _1118.cacheHitRatePct]), () => ( null)),
|
|
46556
46592
|
/** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
|
|
46557
46593
|
* token counts). null until the trailing usage frame lands. */
|
|
46558
|
-
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
46594
|
+
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1119 => _1119.breakdown]), () => ( null)),
|
|
46559
46595
|
// ─── Dialog management — stubs for v1 ────────────────────────────────
|
|
46560
46596
|
// Guide mode currently keeps its history in `localStorage` opaquely
|
|
46561
46597
|
// under the hood (`runtime.source` namespaced key). Surfacing that
|
|
@@ -46613,15 +46649,15 @@ var noopRejectRequest = async (_id, _reason) => {
|
|
|
46613
46649
|
|
|
46614
46650
|
// src/components/chat/utils/process-historical-messages.ts
|
|
46615
46651
|
function getOwnerDisplayName(owner) {
|
|
46616
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
46652
|
+
if (_optionalChain([owner, 'optionalAccess', _1120 => _1120.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
46617
46653
|
const { firstName, lastName } = owner.user;
|
|
46618
46654
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
46619
46655
|
if (name) return name;
|
|
46620
46656
|
}
|
|
46621
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
46657
|
+
return _optionalChain([owner, 'optionalAccess', _1121 => _1121.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
46622
46658
|
}
|
|
46623
46659
|
function getOwnerAvatar(owner) {
|
|
46624
|
-
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess',
|
|
46660
|
+
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1122 => _1122.user, 'optionalAccess', _1123 => _1123.image, 'optionalAccess', _1124 => _1124.imageUrl]), () => ( void 0));
|
|
46625
46661
|
}
|
|
46626
46662
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
46627
46663
|
messageDataArray.forEach((data) => {
|
|
@@ -46684,14 +46720,14 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
46684
46720
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
46685
46721
|
return;
|
|
46686
46722
|
}
|
|
46687
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
46723
|
+
const isUserMessage = _optionalChain([msg, 'access', _1125 => _1125.owner, 'optionalAccess', _1126 => _1126.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1127 => _1127.owner, 'optionalAccess', _1128 => _1128.type]) === OWNER_TYPE.ADMIN;
|
|
46688
46724
|
if (isUserMessage) {
|
|
46689
46725
|
flushAssistantMessage();
|
|
46690
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
46726
|
+
const userAuthorType = _optionalChain([msg, 'access', _1129 => _1129.owner, 'optionalAccess', _1130 => _1130.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
46691
46727
|
messageDataArray.forEach((data) => {
|
|
46692
46728
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
46693
46729
|
const rawContext = data.contextItems;
|
|
46694
|
-
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess',
|
|
46730
|
+
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1131 => _1131.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1132 => _1132.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
|
|
46695
46731
|
processedMessages.push({
|
|
46696
46732
|
id: msg.id,
|
|
46697
46733
|
role: "user",
|
|
@@ -46715,7 +46751,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
46715
46751
|
});
|
|
46716
46752
|
const nextMsg = messages[index + 1];
|
|
46717
46753
|
const isLastMessage = index === messages.length - 1;
|
|
46718
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
46754
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1133 => _1133.owner, 'optionalAccess', _1134 => _1134.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1135 => _1135.owner, 'optionalAccess', _1136 => _1136.type]) === OWNER_TYPE.ADMIN);
|
|
46719
46755
|
if (isLastMessage || nextIsFromUser) {
|
|
46720
46756
|
flushAssistantMessage();
|
|
46721
46757
|
}
|
|
@@ -46825,7 +46861,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46825
46861
|
}
|
|
46826
46862
|
}
|
|
46827
46863
|
} else {
|
|
46828
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46864
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1137 => _1137.set, 'call', _1138 => _1138(data.approvalRequestId, {
|
|
46829
46865
|
command: data.command || "",
|
|
46830
46866
|
explanation: data.explanation,
|
|
46831
46867
|
approvalType,
|
|
@@ -46839,8 +46875,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46839
46875
|
const existingStatus = approvalStatuses[data.approvalRequestId];
|
|
46840
46876
|
const status = existingStatus || (data.approved ? "approved" : "rejected");
|
|
46841
46877
|
const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
|
|
46842
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46843
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
46878
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1139 => _1139.get, 'call', _1140 => _1140(data.approvalRequestId)]);
|
|
46879
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _1141 => _1141.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
46844
46880
|
if (batchApprovalsEnabled) {
|
|
46845
46881
|
accumulator.addApprovalBatch(
|
|
46846
46882
|
data.approvalRequestId,
|
|
@@ -46862,7 +46898,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46862
46898
|
);
|
|
46863
46899
|
}
|
|
46864
46900
|
}
|
|
46865
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46901
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1142 => _1142.delete, 'call', _1143 => _1143(data.approvalRequestId)]);
|
|
46866
46902
|
break;
|
|
46867
46903
|
}
|
|
46868
46904
|
if (escalatedData) {
|
|
@@ -46871,7 +46907,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46871
46907
|
explanation: escalatedData.explanation,
|
|
46872
46908
|
approvalType: escalatedData.approvalType
|
|
46873
46909
|
});
|
|
46874
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
46910
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1144 => _1144.delete, 'call', _1145 => _1145(data.approvalRequestId)]);
|
|
46875
46911
|
}
|
|
46876
46912
|
const before = accumulator.getSegments();
|
|
46877
46913
|
const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
|
|
@@ -46887,9 +46923,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
46887
46923
|
case MESSAGE_TYPE.ERROR:
|
|
46888
46924
|
if ("error" in data) {
|
|
46889
46925
|
let message2;
|
|
46890
|
-
if ("details" in data && _optionalChain([data, 'optionalAccess',
|
|
46926
|
+
if ("details" in data && _optionalChain([data, 'optionalAccess', _1146 => _1146.details])) {
|
|
46891
46927
|
try {
|
|
46892
|
-
message2 = _optionalChain([JSON, 'access',
|
|
46928
|
+
message2 = _optionalChain([JSON, 'access', _1147 => _1147.parse, 'call', _1148 => _1148(data.details), 'optionalAccess', _1149 => _1149.error, 'optionalAccess', _1150 => _1150.message]);
|
|
46893
46929
|
} catch (e59) {
|
|
46894
46930
|
message2 = data.details;
|
|
46895
46931
|
}
|
|
@@ -46972,14 +47008,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
46972
47008
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
46973
47009
|
return;
|
|
46974
47010
|
}
|
|
46975
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
47011
|
+
const isUserMessage = _optionalChain([msg, 'access', _1151 => _1151.owner, 'optionalAccess', _1152 => _1152.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1153 => _1153.owner, 'optionalAccess', _1154 => _1154.type]) === OWNER_TYPE.ADMIN;
|
|
46976
47012
|
if (isUserMessage) {
|
|
46977
47013
|
flushAssistantMessage();
|
|
46978
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
47014
|
+
const userAuthorType = _optionalChain([msg, 'access', _1155 => _1155.owner, 'optionalAccess', _1156 => _1156.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
46979
47015
|
messageDataArray.forEach((data) => {
|
|
46980
47016
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
46981
47017
|
const rawContext = data.contextItems;
|
|
46982
|
-
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess',
|
|
47018
|
+
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1157 => _1157.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1158 => _1158.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
|
|
46983
47019
|
processedMessages.push({
|
|
46984
47020
|
id: msg.id,
|
|
46985
47021
|
role: "user",
|
|
@@ -47003,7 +47039,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
47003
47039
|
});
|
|
47004
47040
|
const nextMsg = messages[index + 1];
|
|
47005
47041
|
const isLastMessage = index === messages.length - 1;
|
|
47006
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
47042
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1159 => _1159.owner, 'optionalAccess', _1160 => _1160.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1161 => _1161.owner, 'optionalAccess', _1162 => _1162.type]) === OWNER_TYPE.ADMIN);
|
|
47007
47043
|
if (isLastMessage || nextIsFromUser) {
|
|
47008
47044
|
flushAssistantMessage();
|
|
47009
47045
|
}
|
|
@@ -47339,7 +47375,7 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
47339
47375
|
}, [active, fetchDialogs, loadDialogsPage]);
|
|
47340
47376
|
const sendMessage = _react.useCallback.call(void 0,
|
|
47341
47377
|
async (text, sendOptions) => {
|
|
47342
|
-
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess',
|
|
47378
|
+
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1163 => _1163.hidden]), () => ( false));
|
|
47343
47379
|
setMessages((prev) => [
|
|
47344
47380
|
...prev,
|
|
47345
47381
|
{
|
|
@@ -47503,11 +47539,11 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
47503
47539
|
// Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
|
|
47504
47540
|
// contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
|
|
47505
47541
|
// matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
|
|
47506
|
-
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
47507
|
-
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
47508
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
47509
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
47510
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
47542
|
+
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1164 => _1164.provider]), () => ( modelProvider)), () => ( null)),
|
|
47543
|
+
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1165 => _1165.modelLabel]), () => ( modelLabel)), () => ( null)),
|
|
47544
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1166 => _1166.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1167 => _1167.contextWindowMaxTokens]))), () => ( null)),
|
|
47545
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1168 => _1168.inputTokensSize]), () => ( null)),
|
|
47546
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1169 => _1169.outputTokensSize]), () => ( null)),
|
|
47511
47547
|
currentCacheHitRatePct: null,
|
|
47512
47548
|
currentUsageBreakdown: null,
|
|
47513
47549
|
// Dialog management
|
|
@@ -47755,7 +47791,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
47755
47791
|
break;
|
|
47756
47792
|
case "approval_batch": {
|
|
47757
47793
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
47758
|
-
(c) => _optionalChain([segment, 'access',
|
|
47794
|
+
(c) => _optionalChain([segment, 'access', _1170 => _1170.data, 'access', _1171 => _1171.executions, 'optionalAccess', _1172 => _1172[c.toolExecutionRequestId], 'optionalAccess', _1173 => _1173.status]) === "done"
|
|
47759
47795
|
);
|
|
47760
47796
|
if (segment.status !== "rejected" && !allDone) {
|
|
47761
47797
|
hasIncompleteState = true;
|
|
@@ -47823,20 +47859,20 @@ function mergeHistoryWithRealtime(input) {
|
|
|
47823
47859
|
const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
|
|
47824
47860
|
const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
|
|
47825
47861
|
const trailing = processedHistory[processedHistory.length - 1];
|
|
47826
|
-
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess',
|
|
47827
|
-
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access',
|
|
47862
|
+
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1174 => _1174.role]) === "assistant" ? trailing : null;
|
|
47863
|
+
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1175 => _1175.content, 'access', _1176 => _1176.find, 'call', _1177 => _1177((s) => s.type === "approval_batch"), 'optionalAccess', _1178 => _1178.data, 'optionalAccess', _1179 => _1179.approvalRequestId]), () => ( null)) : null;
|
|
47828
47864
|
let processedToUse = processedHistory;
|
|
47829
47865
|
const pinnedSyntheticIds = /* @__PURE__ */ new Set();
|
|
47830
47866
|
const droppedSyntheticIds = /* @__PURE__ */ new Set();
|
|
47831
47867
|
if (historyBatchId) {
|
|
47832
47868
|
const batchTwins = existingMessages.filter(
|
|
47833
47869
|
(m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
|
|
47834
|
-
(s) => s.type === "approval_batch" && _optionalChain([s, 'access',
|
|
47870
|
+
(s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1180 => _1180.data, 'optionalAccess', _1181 => _1181.approvalRequestId]) === historyBatchId
|
|
47835
47871
|
)
|
|
47836
47872
|
);
|
|
47837
47873
|
const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
|
|
47838
47874
|
if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
|
|
47839
|
-
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess',
|
|
47875
|
+
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1182 => _1182.content])) ? historyTrailingAssistant.content.length : 0;
|
|
47840
47876
|
const realtimeSize = existingWithSameBatch.content.length;
|
|
47841
47877
|
if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
|
|
47842
47878
|
processedToUse = processedHistory.slice(0, -1);
|
|
@@ -47852,16 +47888,16 @@ function mergeHistoryWithRealtime(input) {
|
|
|
47852
47888
|
if (pinnedSyntheticIds.has(m.id)) return true;
|
|
47853
47889
|
if (droppedSyntheticIds.has(m.id)) return false;
|
|
47854
47890
|
if (processedIds.has(m.id)) return false;
|
|
47855
|
-
if (_optionalChain([rawHistoryIds, 'optionalAccess',
|
|
47891
|
+
if (_optionalChain([rawHistoryIds, 'optionalAccess', _1183 => _1183.has, 'call', _1184 => _1184(m.id)])) return false;
|
|
47856
47892
|
if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
|
|
47857
|
-
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access',
|
|
47893
|
+
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1185 => _1185.timestamp, 'optionalAccess', _1186 => _1186.getTime, 'call', _1187 => _1187()]), () => ( 0))) <= historyFetchedAt;
|
|
47858
47894
|
return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
|
|
47859
47895
|
}
|
|
47860
47896
|
if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
|
|
47861
47897
|
if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
|
|
47862
47898
|
return false;
|
|
47863
47899
|
}
|
|
47864
|
-
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access',
|
|
47900
|
+
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1188 => _1188.timestamp, 'optionalAccess', _1189 => _1189.getTime, 'call', _1190 => _1190()]), () => ( 0))) <= historyFetchedAt;
|
|
47865
47901
|
if (covered) return false;
|
|
47866
47902
|
}
|
|
47867
47903
|
return true;
|
|
@@ -48081,7 +48117,7 @@ function useChatDialogManager({
|
|
|
48081
48117
|
const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
|
|
48082
48118
|
if (restoreTarget) {
|
|
48083
48119
|
try {
|
|
48084
|
-
await _optionalChain([unarchiveDialog, 'optionalCall',
|
|
48120
|
+
await _optionalChain([unarchiveDialog, 'optionalCall', _1191 => _1191(restoreTarget.id)]);
|
|
48085
48121
|
} catch (err) {
|
|
48086
48122
|
console.error("[useChatDialogManager] unarchive failed:", err);
|
|
48087
48123
|
return;
|
|
@@ -48476,6 +48512,7 @@ function EmbeddableChatInner({
|
|
|
48476
48512
|
};
|
|
48477
48513
|
}, [isOpen, shellLess]);
|
|
48478
48514
|
const chatInputRef = _react.useRef.call(void 0, null);
|
|
48515
|
+
const quickActionDraftRef = _react.useRef.call(void 0, null);
|
|
48479
48516
|
const slashCommandsProp = _react.useMemo.call(void 0,
|
|
48480
48517
|
() => ({
|
|
48481
48518
|
fetchCommands: (prefix, signal) => fetchSlashCommands(prefix, signal, commandsUrl),
|
|
@@ -48490,7 +48527,7 @@ function EmbeddableChatInner({
|
|
|
48490
48527
|
}),
|
|
48491
48528
|
[commandsUrl]
|
|
48492
48529
|
);
|
|
48493
|
-
const userName = _optionalChain([identityUser, 'optionalAccess',
|
|
48530
|
+
const userName = _optionalChain([identityUser, 'optionalAccess', _1192 => _1192.firstName, 'optionalAccess', _1193 => _1193.trim, 'call', _1194 => _1194()]) || _optionalChain([identityUser, 'optionalAccess', _1195 => _1195.name, 'optionalAccess', _1196 => _1196.split, 'call', _1197 => _1197(" "), 'access', _1198 => _1198[0], 'optionalAccess', _1199 => _1199.trim, 'call', _1200 => _1200()]) || void 0;
|
|
48494
48531
|
const effectiveModes = _react.useMemo.call(void 0, () => {
|
|
48495
48532
|
if (modes) return modes;
|
|
48496
48533
|
const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
|
|
@@ -48499,19 +48536,19 @@ function EmbeddableChatInner({
|
|
|
48499
48536
|
const mingoCaps = _react.useMemo.call(void 0, () => {
|
|
48500
48537
|
if (mingoState) {
|
|
48501
48538
|
return {
|
|
48502
|
-
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
48503
|
-
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
48504
|
-
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
48505
|
-
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
48506
|
-
searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
48507
|
-
onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
48539
|
+
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1201 => _1201.canRename]), () => ( false)),
|
|
48540
|
+
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1202 => _1202.canArchive]), () => ( false)),
|
|
48541
|
+
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1203 => _1203.fetchArchivedDialogs]),
|
|
48542
|
+
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1204 => _1204.unarchiveDialog]),
|
|
48543
|
+
searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1205 => _1205.searchQuery]),
|
|
48544
|
+
onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1206 => _1206.onSearchChange])
|
|
48508
48545
|
};
|
|
48509
48546
|
}
|
|
48510
48547
|
return {
|
|
48511
|
-
canRename: !!_optionalChain([effectiveModes, 'access',
|
|
48512
|
-
canArchive: !!_optionalChain([effectiveModes, 'access',
|
|
48513
|
-
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access',
|
|
48514
|
-
unarchiveDialog: _optionalChain([effectiveModes, 'access',
|
|
48548
|
+
canRename: !!_optionalChain([effectiveModes, 'access', _1207 => _1207.mingo, 'optionalAccess', _1208 => _1208.renameDialog]),
|
|
48549
|
+
canArchive: !!_optionalChain([effectiveModes, 'access', _1209 => _1209.mingo, 'optionalAccess', _1210 => _1210.archiveDialog]),
|
|
48550
|
+
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1211 => _1211.mingo, 'optionalAccess', _1212 => _1212.fetchArchivedDialogs]),
|
|
48551
|
+
unarchiveDialog: _optionalChain([effectiveModes, 'access', _1213 => _1213.mingo, 'optionalAccess', _1214 => _1214.unarchiveDialog]),
|
|
48515
48552
|
searchQuery: void 0,
|
|
48516
48553
|
onSearchChange: void 0
|
|
48517
48554
|
};
|
|
@@ -48525,7 +48562,7 @@ function EmbeddableChatInner({
|
|
|
48525
48562
|
if (controlledActiveMode === void 0) {
|
|
48526
48563
|
setUncontrolledActiveMode(next);
|
|
48527
48564
|
}
|
|
48528
|
-
_optionalChain([onActiveModeChange, 'optionalCall',
|
|
48565
|
+
_optionalChain([onActiveModeChange, 'optionalCall', _1215 => _1215(next)]);
|
|
48529
48566
|
},
|
|
48530
48567
|
[controlledActiveMode, onActiveModeChange]
|
|
48531
48568
|
);
|
|
@@ -48579,7 +48616,7 @@ function EmbeddableChatInner({
|
|
|
48579
48616
|
clear: clearAttachments
|
|
48580
48617
|
} = useChatAttachments();
|
|
48581
48618
|
const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
|
|
48582
|
-
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
48619
|
+
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1216 => _1216.maxItems]), () => ( 10));
|
|
48583
48620
|
const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
|
|
48584
48621
|
const [contextItems, setContextItems] = _react.useState.call(void 0, []);
|
|
48585
48622
|
const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
|
|
@@ -48596,10 +48633,10 @@ function EmbeddableChatInner({
|
|
|
48596
48633
|
}, [activeDialogId, activeMode]);
|
|
48597
48634
|
const mentionMarkerByType = _react.useMemo.call(void 0, () => {
|
|
48598
48635
|
const m = /* @__PURE__ */ new Map();
|
|
48599
|
-
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
48636
|
+
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1217 => _1217.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
|
|
48600
48637
|
return m;
|
|
48601
|
-
}, [_optionalChain([contextPicker, 'optionalAccess',
|
|
48602
|
-
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess',
|
|
48638
|
+
}, [_optionalChain([contextPicker, 'optionalAccess', _1218 => _1218.entityTypes])]);
|
|
48639
|
+
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1219 => _1219.entityTypes]);
|
|
48603
48640
|
const resolveContextIcon = _react.useMemo.call(void 0, () => {
|
|
48604
48641
|
const byType = /* @__PURE__ */ new Map();
|
|
48605
48642
|
for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
|
|
@@ -48611,7 +48648,7 @@ function EmbeddableChatInner({
|
|
|
48611
48648
|
if (mentionActiveRef.current) {
|
|
48612
48649
|
if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
|
|
48613
48650
|
if (contextItems.length >= contextMaxItems) return;
|
|
48614
|
-
_optionalChain([chatInputRef, 'access',
|
|
48651
|
+
_optionalChain([chatInputRef, 'access', _1220 => _1220.current, 'optionalAccess', _1221 => _1221.commitMention, 'call', _1222 => _1222(mentionTokenOf(key, mentionMarkerByType), {
|
|
48615
48652
|
label: item.label,
|
|
48616
48653
|
icon: resolveContextIcon(item)
|
|
48617
48654
|
})]);
|
|
@@ -48633,9 +48670,9 @@ function EmbeddableChatInner({
|
|
|
48633
48670
|
setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
|
|
48634
48671
|
if (mentionKeysRef.current.has(key)) {
|
|
48635
48672
|
mentionKeysRef.current.delete(key);
|
|
48636
|
-
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access',
|
|
48673
|
+
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1223 => _1223.current, 'optionalAccess', _1224 => _1224.getValue, 'call', _1225 => _1225()]), () => ( ""));
|
|
48637
48674
|
const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
|
|
48638
|
-
_optionalChain([chatInputRef, 'access',
|
|
48675
|
+
_optionalChain([chatInputRef, 'access', _1226 => _1226.current, 'optionalAccess', _1227 => _1227.setValue, 'call', _1228 => _1228(next)]);
|
|
48639
48676
|
}
|
|
48640
48677
|
}, [mentionMarkerByType]);
|
|
48641
48678
|
const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
|
|
@@ -48652,7 +48689,7 @@ function EmbeddableChatInner({
|
|
|
48652
48689
|
}, []);
|
|
48653
48690
|
const closeContextPicker = _react.useCallback.call(void 0, () => {
|
|
48654
48691
|
if (mentionActiveRef.current) {
|
|
48655
|
-
_optionalChain([chatInputRef, 'access',
|
|
48692
|
+
_optionalChain([chatInputRef, 'access', _1229 => _1229.current, 'optionalAccess', _1230 => _1230.removeMentionTrigger, 'call', _1231 => _1231()]);
|
|
48656
48693
|
}
|
|
48657
48694
|
setContextPickerOpen(false);
|
|
48658
48695
|
setMentionQuery(null);
|
|
@@ -48686,8 +48723,8 @@ function EmbeddableChatInner({
|
|
|
48686
48723
|
[]
|
|
48687
48724
|
);
|
|
48688
48725
|
const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
|
|
48689
|
-
const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess',
|
|
48690
|
-
const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess',
|
|
48726
|
+
const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1232 => _1232.firstName]), _optionalChain([identityUser, 'optionalAccess', _1233 => _1233.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1234 => _1234.name, 'optionalAccess', _1235 => _1235.trim, 'call', _1236 => _1236()]) || void 0 : void 0;
|
|
48727
|
+
const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1237 => _1237.avatarUrl, 'optionalAccess', _1238 => _1238.trim, 'call', _1239 => _1239()]) || void 0 : void 0;
|
|
48691
48728
|
const messages = _react.useMemo.call(void 0, () => {
|
|
48692
48729
|
const cache = timestampCacheRef.current;
|
|
48693
48730
|
const seenIds = /* @__PURE__ */ new Set();
|
|
@@ -48835,9 +48872,9 @@ function EmbeddableChatInner({
|
|
|
48835
48872
|
const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
|
|
48836
48873
|
const lastSources = _react.useMemo.call(void 0, () => {
|
|
48837
48874
|
if (chatLoading) return void 0;
|
|
48838
|
-
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
48875
|
+
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1240 => _1240.sources]);
|
|
48839
48876
|
if (!sources || sources.length === 0) return void 0;
|
|
48840
|
-
const content = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
48877
|
+
const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1241 => _1241.content]) || "";
|
|
48841
48878
|
const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
|
|
48842
48879
|
(m) => parseInt(m[1], 10)
|
|
48843
48880
|
);
|
|
@@ -48884,7 +48921,7 @@ function EmbeddableChatInner({
|
|
|
48884
48921
|
ChatPanelHeader,
|
|
48885
48922
|
{
|
|
48886
48923
|
showBack: hasConversation || guideCanReturnToMingo,
|
|
48887
|
-
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
48924
|
+
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1242 => _1242.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
|
|
48888
48925
|
backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
|
|
48889
48926
|
isArchivedView: isViewingArchived,
|
|
48890
48927
|
onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
|
|
@@ -49002,10 +49039,24 @@ function EmbeddableChatInner({
|
|
|
49002
49039
|
subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
|
|
49003
49040
|
subtitleLoading: emptyStateLoading,
|
|
49004
49041
|
...guideWelcome,
|
|
49005
|
-
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess',
|
|
49042
|
+
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1243 => _1243.quickActions]), () => ( guideSuggestedActions)),
|
|
49006
49043
|
onQuickAction: (action) => {
|
|
49044
|
+
quickActionDraftRef.current = null;
|
|
49045
|
+
_optionalChain([chatInputRef, 'access', _1244 => _1244.current, 'optionalAccess', _1245 => _1245.setValue, 'call', _1246 => _1246("")]);
|
|
49007
49046
|
handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
|
|
49008
49047
|
},
|
|
49048
|
+
onQuickActionHover: (action) => {
|
|
49049
|
+
if (quickActionDraftRef.current === null) {
|
|
49050
|
+
quickActionDraftRef.current = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1247 => _1247.current, 'optionalAccess', _1248 => _1248.getValue, 'call', _1249 => _1249()]), () => ( ""));
|
|
49051
|
+
}
|
|
49052
|
+
_optionalChain([chatInputRef, 'access', _1250 => _1250.current, 'optionalAccess', _1251 => _1251.setValue, 'call', _1252 => _1252(_nullishCoalesce(action.prompt, () => ( action.label)))]);
|
|
49053
|
+
},
|
|
49054
|
+
onQuickActionHoverEnd: () => {
|
|
49055
|
+
if (quickActionDraftRef.current !== null) {
|
|
49056
|
+
_optionalChain([chatInputRef, 'access', _1253 => _1253.current, 'optionalAccess', _1254 => _1254.setValue, 'call', _1255 => _1255(quickActionDraftRef.current)]);
|
|
49057
|
+
quickActionDraftRef.current = null;
|
|
49058
|
+
}
|
|
49059
|
+
},
|
|
49009
49060
|
children: (chipCommands.length > 0 || !commandsLoaded) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-md border border-ods-border", children: [
|
|
49010
49061
|
!commandsLoaded && chipCommands.length === 0 && SKELETON_ROW_VARIANTS.map((variant, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
49011
49062
|
MingoOnboardingCardSkeleton,
|
|
@@ -50079,4 +50130,4 @@ function EmbeddableChatInner({
|
|
|
50079
50130
|
|
|
50080
50131
|
|
|
50081
50132
|
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.Progress = Progress; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ONBOARDING_ICONS = ONBOARDING_ICONS; exports.resolveOnboardingIcon = resolveOnboardingIcon; exports.ONBOARDING_ICON_OPTIONS = ONBOARDING_ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.assets = assets;
|
|
50082
|
-
//# sourceMappingURL=chunk-
|
|
50133
|
+
//# sourceMappingURL=chunk-ERMMMQET.cjs.map
|