@flamingo-stack/openframe-frontend-core 0.0.299 → 0.0.300
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-2FI3USTC.js +43 -0
- package/dist/chunk-2FI3USTC.js.map +1 -0
- package/dist/{chunk-54KNMC2R.cjs → chunk-2ZHDP22R.cjs} +3 -3
- package/dist/{chunk-54KNMC2R.cjs.map → chunk-2ZHDP22R.cjs.map} +1 -1
- package/dist/{chunk-X26HXH3L.cjs → chunk-5VVNE6I5.cjs} +7 -7
- package/dist/{chunk-X26HXH3L.cjs.map → chunk-5VVNE6I5.cjs.map} +1 -1
- package/dist/{chunk-57HYFVTZ.cjs → chunk-735DLFS4.cjs} +29 -29
- package/dist/{chunk-57HYFVTZ.cjs.map → chunk-735DLFS4.cjs.map} +1 -1
- package/dist/{chunk-RY62M66O.js → chunk-7EMOBUB2.js} +2 -2
- package/dist/{chunk-WDWGFUT2.js → chunk-APWW3GPU.js} +6 -6
- package/dist/{chunk-5MLYCLOI.js → chunk-CZ2EJKPA.js} +5 -9
- package/dist/chunk-CZ2EJKPA.js.map +1 -0
- package/dist/{chunk-Q77BDAR7.cjs → chunk-E2XQ5AX7.cjs} +36 -36
- package/dist/{chunk-Q77BDAR7.cjs.map → chunk-E2XQ5AX7.cjs.map} +1 -1
- package/dist/{chunk-56X3EFTG.cjs → chunk-FM7OPH5J.cjs} +19 -19
- package/dist/{chunk-56X3EFTG.cjs.map → chunk-FM7OPH5J.cjs.map} +1 -1
- package/dist/{chunk-WMSTJAZT.cjs → chunk-G56GYN7Z.cjs} +47 -15
- package/dist/chunk-G56GYN7Z.cjs.map +1 -0
- package/dist/{chunk-PQEQUMSS.cjs → chunk-JCU4YVFY.cjs} +16 -16
- package/dist/{chunk-PQEQUMSS.cjs.map → chunk-JCU4YVFY.cjs.map} +1 -1
- package/dist/{chunk-2QG57XOJ.js → chunk-JQ2EYXWR.js} +42 -10
- package/dist/chunk-JQ2EYXWR.js.map +1 -0
- package/dist/{chunk-PI4WSYQV.js → chunk-JQLC2FVM.js} +2 -2
- package/dist/{chunk-XG2KGQ76.cjs → chunk-K2LINTWC.cjs} +40 -40
- package/dist/{chunk-XG2KGQ76.cjs.map → chunk-K2LINTWC.cjs.map} +1 -1
- package/dist/{chunk-DVHQGII5.js → chunk-K3F3AXCC.js} +4 -4
- package/dist/{chunk-N4DEX22O.js → chunk-KNX4OEU5.js} +2 -2
- package/dist/{chunk-BL6XZ2XD.cjs → chunk-LXXZDZGG.cjs} +616 -620
- package/dist/chunk-LXXZDZGG.cjs.map +1 -0
- package/dist/{chunk-PLNR6BHN.cjs → chunk-MFZP6ZJ5.cjs} +7 -7
- package/dist/{chunk-PLNR6BHN.cjs.map → chunk-MFZP6ZJ5.cjs.map} +1 -1
- package/dist/chunk-N2DVKXN4.cjs +43 -0
- package/dist/chunk-N2DVKXN4.cjs.map +1 -0
- package/dist/{chunk-B2IN2IND.js → chunk-OZW6GJKN.js} +4 -4
- package/dist/{chunk-NEVMYN4G.js → chunk-QSPEFQSN.js} +3 -3
- package/dist/{chunk-QE5CNWPF.js → chunk-SYNOZPQC.js} +3 -3
- package/dist/{chunk-67WXHSCX.cjs → chunk-XTQFETF6.cjs} +13 -13
- package/dist/{chunk-67WXHSCX.cjs.map → chunk-XTQFETF6.cjs.map} +1 -1
- package/dist/{chunk-XKIO5K5N.js → chunk-ZLLGC2RZ.js} +3 -3
- package/dist/components/case-studies/index.cjs +10 -11
- package/dist/components/case-studies/index.cjs.map +1 -1
- package/dist/components/case-studies/index.js +4 -5
- package/dist/components/case-studies/index.js.map +1 -1
- package/dist/components/chat/entity-cards/admin-content-card.d.ts +1 -1
- package/dist/components/chat/entity-cards/blog-card.d.ts +2 -2
- package/dist/components/chat/entity-cards/blog-card.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/blog-image-placeholder.d.ts +1 -1
- package/dist/components/chat/entity-cards/case-study-card.d.ts +1 -1
- package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts +4 -3
- package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/use-entity-card-placeholder.d.ts +4 -3
- package/dist/components/chat/entity-cards/use-entity-card-placeholder.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/what-i-shipped-card.d.ts +1 -1
- package/dist/components/chat/index.cjs +4 -5
- package/dist/components/chat/index.cjs.map +1 -1
- package/dist/components/chat/index.js +3 -4
- package/dist/components/contact/index.cjs +5 -6
- package/dist/components/contact/index.cjs.map +1 -1
- package/dist/components/contact/index.js +4 -5
- package/dist/components/docs/index.cjs +7 -8
- package/dist/components/docs/index.cjs.map +1 -1
- package/dist/components/docs/index.js +6 -7
- package/dist/components/embeds/index.cjs +5 -6
- package/dist/components/embeds/index.cjs.map +1 -1
- package/dist/components/embeds/index.js +4 -5
- package/dist/components/embeds/og-link-preview.d.ts +2 -2
- package/dist/components/faq/index.cjs +6 -7
- package/dist/components/faq/index.cjs.map +1 -1
- package/dist/components/faq/index.js +5 -6
- package/dist/components/features/index.cjs +4 -5
- package/dist/components/features/index.cjs.map +1 -1
- package/dist/components/features/index.js +3 -4
- package/dist/components/index.cjs +193 -195
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +12 -14
- package/dist/components/index.js.map +1 -1
- package/dist/components/navigation/index.cjs +4 -5
- package/dist/components/navigation/index.cjs.map +1 -1
- package/dist/components/navigation/index.js +3 -4
- package/dist/components/onboarding-guides/index.cjs +44 -41
- package/dist/components/onboarding-guides/index.cjs.map +1 -1
- package/dist/components/onboarding-guides/index.js +11 -8
- package/dist/components/onboarding-guides/index.js.map +1 -1
- package/dist/components/onboarding-guides/onboarding-guide-detail-view.d.ts.map +1 -1
- package/dist/components/related-content/index.cjs +6 -7
- package/dist/components/related-content/index.cjs.map +1 -1
- package/dist/components/related-content/index.js +5 -6
- package/dist/components/tickets/index.cjs +75 -76
- package/dist/components/tickets/index.cjs.map +1 -1
- package/dist/components/tickets/index.js +5 -6
- package/dist/components/tickets/index.js.map +1 -1
- package/dist/components/ui/index.cjs +4 -5
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.js +3 -4
- package/dist/contexts/chat-runtime-context.d.ts +17 -13
- package/dist/contexts/chat-runtime-context.d.ts.map +1 -1
- package/dist/contexts/index.cjs +2 -4
- package/dist/contexts/index.cjs.map +1 -1
- package/dist/contexts/index.js +3 -5
- package/dist/contexts/index.js.map +1 -1
- package/dist/hooks/index.cjs +3 -3
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +4 -4
- package/dist/hooks/use-og-placeholder-url.d.ts +27 -0
- package/dist/hooks/use-og-placeholder-url.d.ts.map +1 -0
- package/dist/index.cjs +6 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +7 -6
- package/dist/utils/index.cjs +26 -0
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +26 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/og-placeholder.d.ts +59 -0
- package/dist/utils/og-placeholder.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/chat/entity-cards/admin-content-card.tsx +1 -1
- package/src/components/chat/entity-cards/blog-card.tsx +2 -2
- package/src/components/chat/entity-cards/blog-image-placeholder.tsx +1 -1
- package/src/components/chat/entity-cards/case-study-card.tsx +1 -1
- package/src/components/chat/entity-cards/onboarding-guide-card.tsx +4 -3
- package/src/components/chat/entity-cards/use-entity-card-placeholder.ts +13 -26
- package/src/components/chat/entity-cards/what-i-shipped-card.tsx +1 -1
- package/src/components/embeds/og-link-preview.tsx +2 -2
- package/src/components/onboarding-guides/onboarding-guide-detail-view.tsx +4 -2
- package/src/contexts/chat-runtime-context.tsx +17 -13
- package/src/hooks/index.ts +2 -2
- package/src/hooks/use-og-placeholder-url.ts +46 -0
- package/src/utils/index.ts +4 -0
- package/src/utils/og-placeholder.ts +105 -0
- package/dist/chunk-27APPAJN.cjs +0 -24
- package/dist/chunk-27APPAJN.cjs.map +0 -1
- package/dist/chunk-2QG57XOJ.js.map +0 -1
- package/dist/chunk-5MLYCLOI.js.map +0 -1
- package/dist/chunk-BL6XZ2XD.cjs.map +0 -1
- package/dist/chunk-IZ7JSBFP.js +0 -24
- package/dist/chunk-IZ7JSBFP.js.map +0 -1
- package/dist/chunk-L6PSSIUQ.cjs +0 -24
- package/dist/chunk-L6PSSIUQ.cjs.map +0 -1
- package/dist/chunk-MJNXIEV2.js +0 -24
- package/dist/chunk-MJNXIEV2.js.map +0 -1
- package/dist/chunk-WMSTJAZT.cjs.map +0 -1
- package/dist/hooks/use-og-placeholder.d.ts +0 -31
- package/dist/hooks/use-og-placeholder.d.ts.map +0 -1
- package/src/hooks/use-og-placeholder.ts +0 -45
- /package/dist/{chunk-RY62M66O.js.map → chunk-7EMOBUB2.js.map} +0 -0
- /package/dist/{chunk-WDWGFUT2.js.map → chunk-APWW3GPU.js.map} +0 -0
- /package/dist/{chunk-PI4WSYQV.js.map → chunk-JQLC2FVM.js.map} +0 -0
- /package/dist/{chunk-DVHQGII5.js.map → chunk-K3F3AXCC.js.map} +0 -0
- /package/dist/{chunk-N4DEX22O.js.map → chunk-KNX4OEU5.js.map} +0 -0
- /package/dist/{chunk-B2IN2IND.js.map → chunk-OZW6GJKN.js.map} +0 -0
- /package/dist/{chunk-NEVMYN4G.js.map → chunk-QSPEFQSN.js.map} +0 -0
- /package/dist/{chunk-QE5CNWPF.js.map → chunk-SYNOZPQC.js.map} +0 -0
- /package/dist/{chunk-XKIO5K5N.js.map → chunk-ZLLGC2RZ.js.map} +0 -0
|
@@ -23,11 +23,11 @@
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var _chunkG56GYN7Zcjs = require('./chunk-G56GYN7Z.cjs');
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var _chunkN2DVKXN4cjs = require('./chunk-N2DVKXN4.cjs');
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
var _chunkBZFW3FOFcjs = require('./chunk-BZFW3FOF.cjs');
|
|
@@ -842,7 +842,7 @@ function ToolCallRow({ call, expanded, onToggle, batchStatus, execution, showExe
|
|
|
842
842
|
onClick: onToggle,
|
|
843
843
|
className: "flex gap-2 items-start w-full p-3 cursor-pointer text-left",
|
|
844
844
|
children: [
|
|
845
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
845
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkG56GYN7Zcjs.ToolIcon, { toolType, size: 16 }) }),
|
|
846
846
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
847
847
|
"div",
|
|
848
848
|
{
|
|
@@ -4161,7 +4161,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
4161
4161
|
className: "flex gap-[var(--spacing-system-xs)] items-start p-[var(--spacing-system-s)] cursor-pointer text-left w-full",
|
|
4162
4162
|
onClick: () => setExpanded((prev) => !prev),
|
|
4163
4163
|
children: [
|
|
4164
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4164
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center shrink-0 w-5 h-5", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkG56GYN7Zcjs.ToolIcon, { toolType: integratedToolType, size: 16 }) }),
|
|
4165
4165
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
4166
4166
|
"div",
|
|
4167
4167
|
{
|
|
@@ -5513,7 +5513,7 @@ function generateImageSizes(_url) {
|
|
|
5513
5513
|
|
|
5514
5514
|
// src/components/chat/hooks/use-proxied-image-url.ts
|
|
5515
5515
|
function useProxiedImageUrl(url) {
|
|
5516
|
-
const r =
|
|
5516
|
+
const r = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
5517
5517
|
return _nullishCoalesce(getProxiedImageUrl(_nullishCoalesce(url, () => ( "")), {
|
|
5518
5518
|
proxyPrefix: r.endpoints.imageProxyUrlPrefix,
|
|
5519
5519
|
skipDomains: r.endpoints.imageProxySkipDomains,
|
|
@@ -5639,7 +5639,7 @@ function ChatQuickActionRow({
|
|
|
5639
5639
|
chips,
|
|
5640
5640
|
className
|
|
5641
5641
|
}) {
|
|
5642
|
-
const auto =
|
|
5642
|
+
const auto = _chunkG56GYN7Zcjs.useAutoLimitTags.call(void 0, {
|
|
5643
5643
|
count: chips.length,
|
|
5644
5644
|
reserveInputWidth: false
|
|
5645
5645
|
});
|
|
@@ -8074,7 +8074,7 @@ function NavLinkAnchorViaRuntime({
|
|
|
8074
8074
|
className,
|
|
8075
8075
|
children
|
|
8076
8076
|
}) {
|
|
8077
|
-
const runtime =
|
|
8077
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
8078
8078
|
const router = _chunkG7UE6RKVcjs.useRouter.call(void 0, );
|
|
8079
8079
|
const panel = useChatPanel();
|
|
8080
8080
|
const resolvedHref = resolveHrefForRuntime(href, runtime);
|
|
@@ -8501,7 +8501,7 @@ function AdminContentCard({
|
|
|
8501
8501
|
const [imageError, setImageError] = _react.useState.call(void 0, false);
|
|
8502
8502
|
const [imageLoaded, setImageLoaded] = _react.useState.call(void 0, false);
|
|
8503
8503
|
const displayUrl = imageUrl && !imageError ? imageUrl : placeholderUrl;
|
|
8504
|
-
const imageBgColor =
|
|
8504
|
+
const imageBgColor = _chunkG56GYN7Zcjs.useImageEdgeColor.call(void 0, displayUrl || null, "transparent");
|
|
8505
8505
|
_react.useEffect.call(void 0, () => {
|
|
8506
8506
|
setImageLoaded(false);
|
|
8507
8507
|
}, [displayUrl]);
|
|
@@ -9147,7 +9147,7 @@ var RATIO_TO_CSS_ASPECT = {
|
|
|
9147
9147
|
landscape: "16 / 9"
|
|
9148
9148
|
};
|
|
9149
9149
|
function LazyBite({ ratio, children }) {
|
|
9150
|
-
const { ref, isNear } =
|
|
9150
|
+
const { ref, isNear } = _chunkG56GYN7Zcjs.useNearViewport.call(void 0, "500px");
|
|
9151
9151
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, style: { aspectRatio: RATIO_TO_CSS_ASPECT[ratio] }, children: isNear ? children : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full h-full bg-ods-card rounded-md" }) });
|
|
9152
9152
|
}
|
|
9153
9153
|
function VideoBitesDisplay({
|
|
@@ -9962,7 +9962,7 @@ function useEntityCardLink({
|
|
|
9962
9962
|
target,
|
|
9963
9963
|
rel
|
|
9964
9964
|
}) {
|
|
9965
|
-
const runtime =
|
|
9965
|
+
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
9966
9966
|
return _react.useMemo.call(void 0, () => {
|
|
9967
9967
|
if (target !== void 0 || rel !== void 0) {
|
|
9968
9968
|
const safeRel = _nullishCoalesce(rel, () => ( (target === "_blank" ? "noopener noreferrer" : void 0)));
|
|
@@ -9974,17 +9974,13 @@ function useEntityCardLink({
|
|
|
9974
9974
|
}
|
|
9975
9975
|
|
|
9976
9976
|
// src/components/chat/entity-cards/use-entity-card-placeholder.ts
|
|
9977
|
-
var NO_OP_BUILDER = () => "";
|
|
9978
9977
|
function useEntityCardPlaceholder({
|
|
9979
9978
|
title,
|
|
9980
9979
|
placeholderUrl,
|
|
9981
9980
|
siteName = "",
|
|
9982
9981
|
aspect = "wide"
|
|
9983
9982
|
}) {
|
|
9984
|
-
const
|
|
9985
|
-
const builder = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _146 => _146.resolvePlaceholderUrl]), () => ( NO_OP_BUILDER));
|
|
9986
|
-
const enabled = placeholderUrl === void 0 && !!_optionalChain([runtime, 'optionalAccess', _147 => _147.resolvePlaceholderUrl]);
|
|
9987
|
-
const derived = _chunkWMSTJAZTcjs.useOgPlaceholder.call(void 0, builder, title, siteName, enabled, aspect);
|
|
9983
|
+
const derived = _chunkG56GYN7Zcjs.useOgPlaceholderUrl.call(void 0, { title, siteName, aspect });
|
|
9988
9984
|
return placeholderUrl !== void 0 ? placeholderUrl : derived;
|
|
9989
9985
|
}
|
|
9990
9986
|
|
|
@@ -10076,7 +10072,7 @@ function BlogCard({
|
|
|
10076
10072
|
const displayImage = post.featured_image && !imageError ? post.featured_image : placeholderUrl;
|
|
10077
10073
|
if (size === "sm") {
|
|
10078
10074
|
const dateStr2 = post.published_at ? new Date(post.published_at).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric" }) : "";
|
|
10079
|
-
const firstCategory = _optionalChain([post, 'access',
|
|
10075
|
+
const firstCategory = _optionalChain([post, 'access', _146 => _146.categories, 'optionalAccess', _147 => _147.find, 'call', _148 => _148((c) => c && c.name), 'optionalAccess', _149 => _149.name]);
|
|
10080
10076
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
10081
10077
|
"a",
|
|
10082
10078
|
{
|
|
@@ -10282,14 +10278,14 @@ function CaseStudyCard({
|
|
|
10282
10278
|
"img",
|
|
10283
10279
|
{
|
|
10284
10280
|
src: coverImage,
|
|
10285
|
-
alt: `${_optionalChain([study, 'access',
|
|
10281
|
+
alt: `${_optionalChain([study, 'access', _150 => _150.msp, 'optionalAccess', _151 => _151.name]) || study.title} cover`,
|
|
10286
10282
|
className: "absolute inset-0 block w-full h-full object-contain",
|
|
10287
10283
|
onError: hideOnError
|
|
10288
10284
|
}
|
|
10289
10285
|
) : null }),
|
|
10290
10286
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
10291
10287
|
/* @__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 }) }),
|
|
10292
|
-
/* @__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',
|
|
10288
|
+
/* @__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', _152 => _152.msp, 'optionalAccess', _153 => _153.name]), _optionalChain([study, 'access', _154 => _154.user, 'optionalAccess', _155 => _155.full_name])].filter(Boolean).join(" \xB7 ") || "Case study" }) }),
|
|
10293
10289
|
/* @__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 }) })
|
|
10294
10290
|
] })
|
|
10295
10291
|
] });
|
|
@@ -10299,7 +10295,7 @@ function CaseStudyCard({
|
|
|
10299
10295
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10300
10296
|
{
|
|
10301
10297
|
src: coverImage,
|
|
10302
|
-
alt: _optionalChain([study, 'access',
|
|
10298
|
+
alt: _optionalChain([study, 'access', _156 => _156.msp, 'optionalAccess', _157 => _157.name]) || study.title,
|
|
10303
10299
|
className: "w-full h-full object-cover",
|
|
10304
10300
|
sizes: "(min-width: 1545px) 515px, (min-width: 1280px) 33vw, (min-width: 800px) 50vw, 100vw",
|
|
10305
10301
|
fill: true,
|
|
@@ -10310,18 +10306,18 @@ function CaseStudyCard({
|
|
|
10310
10306
|
/* @__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 }) }),
|
|
10311
10307
|
/* @__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: [
|
|
10312
10308
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
10313
|
-
_optionalChain([study, 'access',
|
|
10309
|
+
_optionalChain([study, 'access', _158 => _158.user, 'optionalAccess', _159 => _159.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10314
10310
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10315
10311
|
{
|
|
10316
10312
|
src: study.user.avatar_url,
|
|
10317
|
-
alt: _optionalChain([study, 'access',
|
|
10313
|
+
alt: _optionalChain([study, 'access', _160 => _160.user, 'optionalAccess', _161 => _161.full_name]) || "User",
|
|
10318
10314
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border",
|
|
10319
10315
|
width: 48,
|
|
10320
10316
|
height: 48,
|
|
10321
10317
|
unoptimized: true
|
|
10322
10318
|
}
|
|
10323
|
-
) : /* @__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',
|
|
10324
|
-
_optionalChain([study, 'access',
|
|
10319
|
+
) : /* @__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', _162 => _162.user, 'optionalAccess', _163 => _163.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
10320
|
+
_optionalChain([study, 'access', _164 => _164.msp, 'optionalAccess', _165 => _165.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,
|
|
10325
10321
|
_chunkXL4V2PYGcjs.next_image_default,
|
|
10326
10322
|
{
|
|
10327
10323
|
src: study.msp.icon_url,
|
|
@@ -10335,13 +10331,13 @@ function CaseStudyCard({
|
|
|
10335
10331
|
] }),
|
|
10336
10332
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
10337
10333
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
10338
|
-
_optionalChain([study, 'access',
|
|
10339
|
-
_optionalChain([study, 'access',
|
|
10334
|
+
_optionalChain([study, 'access', _166 => _166.user, 'optionalAccess', _167 => _167.full_name]) || "Anonymous",
|
|
10335
|
+
_optionalChain([study, 'access', _168 => _168.msp, 'optionalAccess', _169 => _169.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
10340
10336
|
" \u2022 ",
|
|
10341
10337
|
study.msp.name
|
|
10342
10338
|
] })
|
|
10343
10339
|
] }),
|
|
10344
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access',
|
|
10340
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access', _170 => _170.user, 'optionalAccess', _171 => _171.job_title]) || "\xA0" })
|
|
10345
10341
|
] })
|
|
10346
10342
|
] }) })
|
|
10347
10343
|
] }) });
|
|
@@ -10424,7 +10420,7 @@ function CustomerInterviewCard({
|
|
|
10424
10420
|
] }),
|
|
10425
10421
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
10426
10422
|
/* @__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 }) }),
|
|
10427
|
-
/* @__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',
|
|
10423
|
+
/* @__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', _172 => _172.user, 'optionalAccess', _173 => _173.full_name]), _optionalChain([interview, 'access', _174 => _174.msp, 'optionalAccess', _175 => _175.name])].filter(Boolean).join(" \xB7 ") || "Customer interview" }) }),
|
|
10428
10424
|
/* @__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 }) })
|
|
10429
10425
|
] })
|
|
10430
10426
|
] });
|
|
@@ -10446,15 +10442,15 @@ function CustomerInterviewCard({
|
|
|
10446
10442
|
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 }) }),
|
|
10447
10443
|
/* @__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: [
|
|
10448
10444
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
|
|
10449
|
-
_optionalChain([interview, 'access',
|
|
10445
|
+
_optionalChain([interview, 'access', _176 => _176.user, 'optionalAccess', _177 => _177.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10450
10446
|
"img",
|
|
10451
10447
|
{
|
|
10452
10448
|
src: interview.user.avatar_url,
|
|
10453
|
-
alt: _optionalChain([interview, 'access',
|
|
10449
|
+
alt: _optionalChain([interview, 'access', _178 => _178.user, 'optionalAccess', _179 => _179.full_name]) || "Customer",
|
|
10454
10450
|
className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border"
|
|
10455
10451
|
}
|
|
10456
|
-
) : /* @__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',
|
|
10457
|
-
_optionalChain([interview, 'access',
|
|
10452
|
+
) : /* @__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', _180 => _180.user, 'optionalAccess', _181 => _181.full_name]) || "A").charAt(0).toUpperCase() }) }),
|
|
10453
|
+
_optionalChain([interview, 'access', _182 => _182.msp, 'optionalAccess', _183 => _183.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,
|
|
10458
10454
|
"img",
|
|
10459
10455
|
{
|
|
10460
10456
|
src: interview.msp.icon_url,
|
|
@@ -10465,13 +10461,13 @@ function CustomerInterviewCard({
|
|
|
10465
10461
|
] }),
|
|
10466
10462
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
10467
10463
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
|
|
10468
|
-
_optionalChain([interview, 'access',
|
|
10469
|
-
_optionalChain([interview, 'access',
|
|
10464
|
+
_optionalChain([interview, 'access', _184 => _184.user, 'optionalAccess', _185 => _185.full_name]) || "Anonymous",
|
|
10465
|
+
_optionalChain([interview, 'access', _186 => _186.msp, 'optionalAccess', _187 => _187.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
|
|
10470
10466
|
" \u2022 ",
|
|
10471
10467
|
interview.msp.name
|
|
10472
10468
|
] })
|
|
10473
10469
|
] }),
|
|
10474
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access',
|
|
10470
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access', _188 => _188.user, 'optionalAccess', _189 => _189.job_title]) || " " })
|
|
10475
10471
|
] })
|
|
10476
10472
|
] }) })
|
|
10477
10473
|
] }) });
|
|
@@ -10484,7 +10480,7 @@ function CustomerInterviewCard({
|
|
|
10484
10480
|
function formatInvestorUpdatePeriod(start, end, options) {
|
|
10485
10481
|
if (!start && !end) return "";
|
|
10486
10482
|
const fmt = (d) => new Date(d).toLocaleDateString("en-US", {
|
|
10487
|
-
month: _optionalChain([options, 'optionalAccess',
|
|
10483
|
+
month: _optionalChain([options, 'optionalAccess', _190 => _190.monthFormat]) || "short",
|
|
10488
10484
|
year: "numeric"
|
|
10489
10485
|
});
|
|
10490
10486
|
const s = start ? fmt(start) : "?";
|
|
@@ -10574,7 +10570,7 @@ function InvestorUpdateCard({
|
|
|
10574
10570
|
imageUrl: update.featured_image,
|
|
10575
10571
|
placeholderUrl,
|
|
10576
10572
|
title: update.title || `Update #${update.update_number || "?"}`,
|
|
10577
|
-
summary: _optionalChain([update, 'access',
|
|
10573
|
+
summary: _optionalChain([update, 'access', _191 => _191.strategic_update, 'optionalAccess', _192 => _192.slice, 'call', _193 => _193(0, 120)]) || _optionalChain([update, 'access', _194 => _194.content, 'optionalAccess', _195 => _195.slice, 'call', _196 => _196(0, 120)]) || "No description",
|
|
10578
10574
|
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: [
|
|
10579
10575
|
"#",
|
|
10580
10576
|
update.update_number
|
|
@@ -10766,7 +10762,7 @@ function OnboardingGuideCard({
|
|
|
10766
10762
|
const compactCover = coverImage || placeholderUrl || null;
|
|
10767
10763
|
const hasVideoCover = !guide.featured_image && !!guide.main_video_thumbnail;
|
|
10768
10764
|
const summary2 = stripMarkdownPreview(guide.video_summary || guide.content || "");
|
|
10769
|
-
const author = _optionalChain([guide, 'access',
|
|
10765
|
+
const author = _optionalChain([guide, 'access', _197 => _197.author, 'optionalAccess', _198 => _198.full_name, 'optionalAccess', _199 => _199.trim, 'call', _200 => _200()]) || "";
|
|
10770
10766
|
const subtitleParts = [
|
|
10771
10767
|
`Step ${guide.step_order}`,
|
|
10772
10768
|
guide.section,
|
|
@@ -11139,7 +11135,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11139
11135
|
if (!isInputControlled) {
|
|
11140
11136
|
setInternalInputValue(value);
|
|
11141
11137
|
}
|
|
11142
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
11138
|
+
_optionalChain([onInputChange, 'optionalCall', _201 => _201(value, reason)]);
|
|
11143
11139
|
};
|
|
11144
11140
|
const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
|
|
11145
11141
|
const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
|
|
@@ -11152,7 +11148,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11152
11148
|
}, [valueArray, options]);
|
|
11153
11149
|
const selectedOption = !multiple && selectedOptions.length > 0 ? selectedOptions[0] : null;
|
|
11154
11150
|
const inputPlaceholder = multiple ? valueArray.length === 0 ? placeholder : "Add More..." : placeholder;
|
|
11155
|
-
const autoLimitTags =
|
|
11151
|
+
const autoLimitTags = _chunkG56GYN7Zcjs.useAutoLimitTags.call(void 0, {
|
|
11156
11152
|
count: multiple ? selectedOptions.length : 0,
|
|
11157
11153
|
limitTags: multiple ? limitTagsProp : 0,
|
|
11158
11154
|
placeholder: inputPlaceholder
|
|
@@ -11167,8 +11163,8 @@ function AutocompleteInner(props, ref) {
|
|
|
11167
11163
|
if (!showHiddenTags) return;
|
|
11168
11164
|
const handleClick = (e) => {
|
|
11169
11165
|
const target = e.target;
|
|
11170
|
-
const inButton = _optionalChain([hiddenTagsRef, 'access',
|
|
11171
|
-
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access',
|
|
11166
|
+
const inButton = _optionalChain([hiddenTagsRef, 'access', _202 => _202.current, 'optionalAccess', _203 => _203.contains, 'call', _204 => _204(target)]);
|
|
11167
|
+
const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _205 => _205.current, 'optionalAccess', _206 => _206.contains, 'call', _207 => _207(target)]);
|
|
11172
11168
|
if (!inButton && !inPopup) {
|
|
11173
11169
|
setShowHiddenTags(false);
|
|
11174
11170
|
}
|
|
@@ -11212,7 +11208,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11212
11208
|
}
|
|
11213
11209
|
updateInputValue("", "reset");
|
|
11214
11210
|
setIsOpen(false);
|
|
11215
|
-
_optionalChain([onCreateOption, 'optionalCall',
|
|
11211
|
+
_optionalChain([onCreateOption, 'optionalCall', _208 => _208(trimmed)]);
|
|
11216
11212
|
};
|
|
11217
11213
|
_react.useEffect.call(void 0, () => {
|
|
11218
11214
|
setHighlightedIndex(-1);
|
|
@@ -11236,7 +11232,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11236
11232
|
props.onChange([...valueArray, option.value]);
|
|
11237
11233
|
}
|
|
11238
11234
|
updateInputValue("", "reset");
|
|
11239
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11235
|
+
_optionalChain([autoLimitTags, 'access', _209 => _209.inputRef, 'access', _210 => _210.current, 'optionalAccess', _211 => _211.focus, 'call', _212 => _212()]);
|
|
11240
11236
|
} else {
|
|
11241
11237
|
;
|
|
11242
11238
|
props.onChange(option.value);
|
|
@@ -11257,7 +11253,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11257
11253
|
if (!isInputControlled) {
|
|
11258
11254
|
setInternalInputValue("");
|
|
11259
11255
|
}
|
|
11260
|
-
_optionalChain([onInputChange, 'optionalCall',
|
|
11256
|
+
_optionalChain([onInputChange, 'optionalCall', _213 => _213("", "clear")]);
|
|
11261
11257
|
setIsOpen(false);
|
|
11262
11258
|
};
|
|
11263
11259
|
const handleKeyDown = (e) => {
|
|
@@ -11331,7 +11327,7 @@ function AutocompleteInner(props, ref) {
|
|
|
11331
11327
|
),
|
|
11332
11328
|
onClick: () => {
|
|
11333
11329
|
if (!disabled) {
|
|
11334
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11330
|
+
_optionalChain([autoLimitTags, 'access', _214 => _214.inputRef, 'access', _215 => _215.current, 'optionalAccess', _216 => _216.focus, 'call', _217 => _217()]);
|
|
11335
11331
|
openDropdown();
|
|
11336
11332
|
}
|
|
11337
11333
|
},
|
|
@@ -11447,10 +11443,10 @@ function AutocompleteInner(props, ref) {
|
|
|
11447
11443
|
align: "start",
|
|
11448
11444
|
onOpenAutoFocus: (e) => {
|
|
11449
11445
|
e.preventDefault();
|
|
11450
|
-
_optionalChain([autoLimitTags, 'access',
|
|
11446
|
+
_optionalChain([autoLimitTags, 'access', _218 => _218.inputRef, 'access', _219 => _219.current, 'optionalAccess', _220 => _220.focus, 'call', _221 => _221()]);
|
|
11451
11447
|
},
|
|
11452
11448
|
onInteractOutside: (e) => {
|
|
11453
|
-
if (_optionalChain([containerRef, 'access',
|
|
11449
|
+
if (_optionalChain([containerRef, 'access', _222 => _222.current, 'optionalAccess', _223 => _223.contains, 'call', _224 => _224(e.target)])) {
|
|
11454
11450
|
e.preventDefault();
|
|
11455
11451
|
}
|
|
11456
11452
|
},
|
|
@@ -11843,7 +11839,7 @@ var defaultFormatDate = (date) => {
|
|
|
11843
11839
|
});
|
|
11844
11840
|
};
|
|
11845
11841
|
var formatDateRange2 = (range, formatFn) => {
|
|
11846
|
-
if (!_optionalChain([range, 'optionalAccess',
|
|
11842
|
+
if (!_optionalChain([range, 'optionalAccess', _225 => _225.from])) return "";
|
|
11847
11843
|
if (!range.to) return formatFn(range.from);
|
|
11848
11844
|
return `${formatFn(range.from)} - ${formatFn(range.to)}`;
|
|
11849
11845
|
};
|
|
@@ -11871,7 +11867,7 @@ function DatePickerCalendar({
|
|
|
11871
11867
|
}) {
|
|
11872
11868
|
const today = /* @__PURE__ */ new Date();
|
|
11873
11869
|
const rangeSelected = selected;
|
|
11874
|
-
const hasCompleteRange = mode === "range" && _optionalChain([rangeSelected, 'optionalAccess',
|
|
11870
|
+
const hasCompleteRange = mode === "range" && _optionalChain([rangeSelected, 'optionalAccess', _226 => _226.from]) && _optionalChain([rangeSelected, 'optionalAccess', _227 => _227.to]) && rangeSelected.from.getTime() !== rangeSelected.to.getTime();
|
|
11875
11871
|
const classNames = {
|
|
11876
11872
|
root: "p-4 date-picker-calendar",
|
|
11877
11873
|
months: "flex gap-8",
|
|
@@ -11922,7 +11918,7 @@ function DatePickerCalendar({
|
|
|
11922
11918
|
range_middle: "range-middle !bg-[var(--ods-open-yellow-light)] !text-ods-card !font-medium !rounded-none hover:!bg-[var(--ods-open-yellow-light)]"
|
|
11923
11919
|
};
|
|
11924
11920
|
const [month, setMonth] = React39.useState(
|
|
11925
|
-
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess',
|
|
11921
|
+
mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess', _228 => _228.from]) || today
|
|
11926
11922
|
);
|
|
11927
11923
|
const handlePreviousMonth = () => {
|
|
11928
11924
|
setMonth((prev) => {
|
|
@@ -12141,14 +12137,14 @@ function DatePicker(props) {
|
|
|
12141
12137
|
}, [props.mode, props.value, formatDate2]);
|
|
12142
12138
|
const handleSelect = (value) => {
|
|
12143
12139
|
if (props.mode === "single") {
|
|
12144
|
-
_optionalChain([props, 'access',
|
|
12140
|
+
_optionalChain([props, 'access', _229 => _229.onChange, 'optionalCall', _230 => _230(value)]);
|
|
12145
12141
|
if (value) {
|
|
12146
12142
|
setOpen(false);
|
|
12147
12143
|
}
|
|
12148
12144
|
} else {
|
|
12149
12145
|
const range = value;
|
|
12150
|
-
_optionalChain([props, 'access',
|
|
12151
|
-
if (_optionalChain([range, 'optionalAccess',
|
|
12146
|
+
_optionalChain([props, 'access', _231 => _231.onChange, 'optionalCall', _232 => _232(range)]);
|
|
12147
|
+
if (_optionalChain([range, 'optionalAccess', _233 => _233.from]) && _optionalChain([range, 'optionalAccess', _234 => _234.to]) && range.from.getTime() !== range.to.getTime()) {
|
|
12152
12148
|
setOpen(false);
|
|
12153
12149
|
}
|
|
12154
12150
|
}
|
|
@@ -12255,7 +12251,7 @@ function DatePickerInput({
|
|
|
12255
12251
|
if (newDate && value) {
|
|
12256
12252
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
12257
12253
|
}
|
|
12258
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12254
|
+
_optionalChain([onChange, 'optionalCall', _235 => _235(newDate)]);
|
|
12259
12255
|
if (newDate) {
|
|
12260
12256
|
setOpen(false);
|
|
12261
12257
|
}
|
|
@@ -12272,12 +12268,12 @@ function DatePickerInput({
|
|
|
12272
12268
|
}
|
|
12273
12269
|
}
|
|
12274
12270
|
date.setHours(hours);
|
|
12275
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12271
|
+
_optionalChain([onChange, 'optionalCall', _236 => _236(date)]);
|
|
12276
12272
|
};
|
|
12277
12273
|
const handleMinuteChange = (newMinute) => {
|
|
12278
12274
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
12279
12275
|
date.setMinutes(parseInt(newMinute, 10));
|
|
12280
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12276
|
+
_optionalChain([onChange, 'optionalCall', _237 => _237(date)]);
|
|
12281
12277
|
};
|
|
12282
12278
|
const handlePeriodChange = (newPeriod) => {
|
|
12283
12279
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
@@ -12288,7 +12284,7 @@ function DatePickerInput({
|
|
|
12288
12284
|
hours += 12;
|
|
12289
12285
|
}
|
|
12290
12286
|
date.setHours(hours);
|
|
12291
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12287
|
+
_optionalChain([onChange, 'optionalCall', _238 => _238(date)]);
|
|
12292
12288
|
};
|
|
12293
12289
|
const hourOptions = React39.useMemo(() => generateHourOptions(use24HourFormat), [use24HourFormat]);
|
|
12294
12290
|
const minuteOptions = React39.useMemo(() => generateMinuteOptions(), []);
|
|
@@ -12449,7 +12445,7 @@ function DatePickerInputSimple({
|
|
|
12449
12445
|
if (newDate && value) {
|
|
12450
12446
|
newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
|
|
12451
12447
|
}
|
|
12452
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12448
|
+
_optionalChain([onChange, 'optionalCall', _239 => _239(newDate)]);
|
|
12453
12449
|
if (newDate) {
|
|
12454
12450
|
setOpen(false);
|
|
12455
12451
|
}
|
|
@@ -12458,7 +12454,7 @@ function DatePickerInputSimple({
|
|
|
12458
12454
|
const [hours, minutes] = newTime.split(":").map(Number);
|
|
12459
12455
|
const date = value ? new Date(value) : /* @__PURE__ */ new Date();
|
|
12460
12456
|
date.setHours(hours, minutes, 0, 0);
|
|
12461
|
-
_optionalChain([onChange, 'optionalCall',
|
|
12457
|
+
_optionalChain([onChange, 'optionalCall', _240 => _240(date)]);
|
|
12462
12458
|
};
|
|
12463
12459
|
const timeOptions = React39.useMemo(
|
|
12464
12460
|
() => generateTimeOptions(timeInterval, use24HourFormat),
|
|
@@ -12564,7 +12560,7 @@ var ProgressBar = ({
|
|
|
12564
12560
|
mobileHeight = 8,
|
|
12565
12561
|
inverted = false
|
|
12566
12562
|
}) => {
|
|
12567
|
-
const isMdUp = _nullishCoalesce(
|
|
12563
|
+
const isMdUp = _nullishCoalesce(_chunkG56GYN7Zcjs.useMdUp.call(void 0, ), () => ( true));
|
|
12568
12564
|
const effectiveSegmentWidth = isMdUp ? segmentWidth : mobileSegmentWidth;
|
|
12569
12565
|
const effectiveHeight = isMdUp ? height : mobileHeight;
|
|
12570
12566
|
const containerRef = _react.useRef.call(void 0, null);
|
|
@@ -12683,7 +12679,7 @@ function InfoCardFooter({ footer }) {
|
|
|
12683
12679
|
] });
|
|
12684
12680
|
}
|
|
12685
12681
|
function InfoCardValueRow({ label, value, showLabel, copyable, copyAriaLabel }) {
|
|
12686
|
-
const { copy, copied } =
|
|
12682
|
+
const { copy, copied } = _chunkG56GYN7Zcjs.useCopyToClipboard.call(void 0, );
|
|
12687
12683
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 items-center gap-[var(--spacing-system-xs)] self-stretch w-full", children: [
|
|
12688
12684
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary whitespace-nowrap", children: showLabel ? label : "" }),
|
|
12689
12685
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 h-px bg-ods-divider" }),
|
|
@@ -12928,7 +12924,7 @@ var NoData = React112.default.forwardRef(function NoData2({
|
|
|
12928
12924
|
...props
|
|
12929
12925
|
}, ref) {
|
|
12930
12926
|
const hasMessage = !!(icon || title || description);
|
|
12931
|
-
const hasActions = !!_optionalChain([actions, 'optionalAccess',
|
|
12927
|
+
const hasActions = !!_optionalChain([actions, 'optionalAccess', _241 => _241.length]);
|
|
12932
12928
|
const footerButton = _nullishCoalesce(button, () => ( (buttonLabel != null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12933
12929
|
_chunkFQOTC3UUcjs.Button,
|
|
12934
12930
|
{
|
|
@@ -12936,7 +12932,7 @@ var NoData = React112.default.forwardRef(function NoData2({
|
|
|
12936
12932
|
leftIcon: buttonIcon,
|
|
12937
12933
|
onClick: onButtonClick,
|
|
12938
12934
|
...buttonProps,
|
|
12939
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess',
|
|
12935
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess', _242 => _242.className])),
|
|
12940
12936
|
children: buttonLabel
|
|
12941
12937
|
}
|
|
12942
12938
|
) : null)));
|
|
@@ -13171,7 +13167,7 @@ var Switch = React48.forwardRef(({ className, checked, onCheckedChange, ...props
|
|
|
13171
13167
|
}, [checked]);
|
|
13172
13168
|
const handleCheckedChange = (newChecked) => {
|
|
13173
13169
|
setIsChecked(newChecked);
|
|
13174
|
-
_optionalChain([onCheckedChange, 'optionalCall',
|
|
13170
|
+
_optionalChain([onCheckedChange, 'optionalCall', _243 => _243(newChecked)]);
|
|
13175
13171
|
};
|
|
13176
13172
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13177
13173
|
SwitchPrimitives.Root,
|
|
@@ -13380,7 +13376,7 @@ function TagsManager({
|
|
|
13380
13376
|
const name = search.trim();
|
|
13381
13377
|
if (!name) return;
|
|
13382
13378
|
const result = await onCreateTag(name);
|
|
13383
|
-
if (_optionalChain([result, 'optionalAccess',
|
|
13379
|
+
if (_optionalChain([result, 'optionalAccess', _244 => _244.id])) {
|
|
13384
13380
|
onChange([...selectedIds, result.id]);
|
|
13385
13381
|
setSearch("");
|
|
13386
13382
|
}
|
|
@@ -13388,7 +13384,7 @@ function TagsManager({
|
|
|
13388
13384
|
const startEdit = React50.useCallback((id, name) => {
|
|
13389
13385
|
setEditingId(id);
|
|
13390
13386
|
setEditingName(name);
|
|
13391
|
-
setTimeout(() => _optionalChain([editInputRef, 'access',
|
|
13387
|
+
setTimeout(() => _optionalChain([editInputRef, 'access', _245 => _245.current, 'optionalAccess', _246 => _246.focus, 'call', _247 => _247()]), 0);
|
|
13392
13388
|
}, []);
|
|
13393
13389
|
const confirmEdit = React50.useCallback(async () => {
|
|
13394
13390
|
if (!onUpdateTag || !editingId || !editingName.trim()) return;
|
|
@@ -13415,7 +13411,7 @@ function TagsManager({
|
|
|
13415
13411
|
e.stopPropagation();
|
|
13416
13412
|
onChange([]);
|
|
13417
13413
|
setSearch("");
|
|
13418
|
-
_optionalChain([inputRef, 'access',
|
|
13414
|
+
_optionalChain([inputRef, 'access', _248 => _248.current, 'optionalAccess', _249 => _249.focus, 'call', _250 => _250()]);
|
|
13419
13415
|
},
|
|
13420
13416
|
[onChange]
|
|
13421
13417
|
);
|
|
@@ -13514,10 +13510,10 @@ function TagsManager({
|
|
|
13514
13510
|
align: "start",
|
|
13515
13511
|
onOpenAutoFocus: (e) => {
|
|
13516
13512
|
e.preventDefault();
|
|
13517
|
-
_optionalChain([inputRef, 'access',
|
|
13513
|
+
_optionalChain([inputRef, 'access', _251 => _251.current, 'optionalAccess', _252 => _252.focus, 'call', _253 => _253()]);
|
|
13518
13514
|
},
|
|
13519
13515
|
onInteractOutside: (e) => {
|
|
13520
|
-
if (_optionalChain([containerRef, 'access',
|
|
13516
|
+
if (_optionalChain([containerRef, 'access', _254 => _254.current, 'optionalAccess', _255 => _255.contains, 'call', _256 => _256(e.target)])) {
|
|
13521
13517
|
e.preventDefault();
|
|
13522
13518
|
}
|
|
13523
13519
|
},
|
|
@@ -14353,7 +14349,7 @@ var DrawerContent = React56.forwardRef(
|
|
|
14353
14349
|
const resolvedSide = _nullishCoalesce(side, () => ( "right"));
|
|
14354
14350
|
const isHorizontal = HORIZONTAL_SIDES.has(resolvedSide);
|
|
14355
14351
|
const initialSize = _nullishCoalesce(defaultSize, () => ( (isHorizontal ? 560 : 480)));
|
|
14356
|
-
const headerHeight =
|
|
14352
|
+
const headerHeight = _chunkG56GYN7Zcjs.useHeaderHeight.call(void 0, );
|
|
14357
14353
|
const [isMobile, setIsMobile] = React56.useState(false);
|
|
14358
14354
|
React56.useEffect(() => {
|
|
14359
14355
|
if (typeof window === "undefined") return;
|
|
@@ -14915,19 +14911,19 @@ function TabNavigation({
|
|
|
14915
14911
|
const validTabIds = _react.useMemo.call(void 0, () => new Set(tabs.map((t) => t.id)), [tabs]);
|
|
14916
14912
|
const getInitialTab = () => {
|
|
14917
14913
|
if (isUrlSyncEnabled) {
|
|
14918
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
14914
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _257 => _257.get, 'call', _258 => _258(paramName)]) || "";
|
|
14919
14915
|
if (validTabIds.has(fromUrl)) {
|
|
14920
14916
|
return fromUrl;
|
|
14921
14917
|
}
|
|
14922
14918
|
}
|
|
14923
|
-
return defaultTab || _optionalChain([tabs, 'access',
|
|
14919
|
+
return defaultTab || _optionalChain([tabs, 'access', _259 => _259[0], 'optionalAccess', _260 => _260.id]) || "";
|
|
14924
14920
|
};
|
|
14925
14921
|
const [internalActiveTab, setInternalActiveTab] = _react.useState.call(void 0, getInitialTab);
|
|
14926
14922
|
const activeTab = isUrlSyncEnabled ? internalActiveTab : controlledActiveTab || "";
|
|
14927
14923
|
_react.useEffect.call(void 0, () => {
|
|
14928
14924
|
if (!isUrlSyncEnabled) return;
|
|
14929
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
14930
|
-
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access',
|
|
14925
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _261 => _261.get, 'call', _262 => _262(paramName)]) || "";
|
|
14926
|
+
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access', _263 => _263[0], 'optionalAccess', _264 => _264.id]) || "";
|
|
14931
14927
|
if (nextTab !== internalActiveTab) {
|
|
14932
14928
|
setInternalActiveTab(nextTab);
|
|
14933
14929
|
}
|
|
@@ -14935,13 +14931,13 @@ function TabNavigation({
|
|
|
14935
14931
|
const handleTabChange = (tabId) => {
|
|
14936
14932
|
if (isUrlSyncEnabled) {
|
|
14937
14933
|
setInternalActiveTab(tabId);
|
|
14938
|
-
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess',
|
|
14934
|
+
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess', _265 => _265.toString, 'call', _266 => _266()]));
|
|
14939
14935
|
params.set(paramName, tabId);
|
|
14940
14936
|
const method = replaceState ? "replace" : "push";
|
|
14941
14937
|
router[method](`${pathname}?${params.toString()}`);
|
|
14942
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
14938
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _267 => _267(tabId)]);
|
|
14943
14939
|
} else {
|
|
14944
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
14940
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _268 => _268(tabId)]);
|
|
14945
14941
|
}
|
|
14946
14942
|
};
|
|
14947
14943
|
const scrollRef = _react.useRef.call(void 0, null);
|
|
@@ -15029,7 +15025,7 @@ function TabNavigation({
|
|
|
15029
15025
|
var getTabById = (tabs, tabId) => tabs.find((tab) => tab.id === tabId);
|
|
15030
15026
|
var getTabComponent = (tabs, tabId) => {
|
|
15031
15027
|
const tab = getTabById(tabs, tabId);
|
|
15032
|
-
return _optionalChain([tab, 'optionalAccess',
|
|
15028
|
+
return _optionalChain([tab, 'optionalAccess', _269 => _269.component]) || null;
|
|
15033
15029
|
};
|
|
15034
15030
|
|
|
15035
15031
|
// src/components/ui/alert.tsx
|
|
@@ -15280,13 +15276,13 @@ var SocialEmbedCache = class _SocialEmbedCache {
|
|
|
15280
15276
|
errorData = await response.json();
|
|
15281
15277
|
} catch (e18) {
|
|
15282
15278
|
}
|
|
15283
|
-
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess',
|
|
15279
|
+
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess', _270 => _270.error]) && _optionalChain([errorData, 'optionalAccess', _271 => _271.message])) {
|
|
15284
15280
|
console.log(`\u{1F6AB} [${platformName} Proxy] Content unavailable: ${errorData.message}`);
|
|
15285
15281
|
onError(errorData.message);
|
|
15286
15282
|
onLoading(false);
|
|
15287
15283
|
return;
|
|
15288
15284
|
}
|
|
15289
|
-
if (_optionalChain([errorData, 'optionalAccess',
|
|
15285
|
+
if (_optionalChain([errorData, 'optionalAccess', _272 => _272.error])) {
|
|
15290
15286
|
throw new Error(`Server error: ${errorData.error}`);
|
|
15291
15287
|
}
|
|
15292
15288
|
throw new Error(`Server proxy failed: ${response.status}`);
|
|
@@ -15738,7 +15734,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
15738
15734
|
apiEndpoint: redditProxyUrl,
|
|
15739
15735
|
dataValidator: validateRedditData,
|
|
15740
15736
|
onDataUpdate: (data) => {
|
|
15741
|
-
if (_optionalChain([data, 'access',
|
|
15737
|
+
if (_optionalChain([data, 'access', _273 => _273[0], 'optionalAccess', _274 => _274.data, 'optionalAccess', _275 => _275.children, 'optionalAccess', _276 => _276[0], 'optionalAccess', _277 => _277.data])) {
|
|
15742
15738
|
setRedditData(data[0].data.children[0].data);
|
|
15743
15739
|
}
|
|
15744
15740
|
},
|
|
@@ -15809,11 +15805,11 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
15809
15805
|
gallery_data: redditData.gallery_data,
|
|
15810
15806
|
media_metadata: redditData.media_metadata
|
|
15811
15807
|
});
|
|
15812
|
-
const video = _optionalChain([redditData, 'access',
|
|
15808
|
+
const video = _optionalChain([redditData, 'access', _278 => _278.media, 'optionalAccess', _279 => _279.reddit_video]) || _optionalChain([redditData, 'access', _280 => _280.secure_media, 'optionalAccess', _281 => _281.reddit_video]);
|
|
15813
15809
|
if (video && video.fallback_url) {
|
|
15814
15810
|
console.log("\u{1F4F9} Found Reddit video:", video);
|
|
15815
15811
|
let posterUrl = "";
|
|
15816
|
-
if (_optionalChain([redditData, 'access',
|
|
15812
|
+
if (_optionalChain([redditData, 'access', _282 => _282.preview, 'optionalAccess', _283 => _283.images, 'optionalAccess', _284 => _284[0], 'optionalAccess', _285 => _285.source, 'optionalAccess', _286 => _286.url])) {
|
|
15817
15813
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
15818
15814
|
console.log("\u2705 Using preview image as video poster:", posterUrl);
|
|
15819
15815
|
} else {
|
|
@@ -15866,7 +15862,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
15866
15862
|
return media;
|
|
15867
15863
|
}
|
|
15868
15864
|
}
|
|
15869
|
-
if (_optionalChain([redditData, 'access',
|
|
15865
|
+
if (_optionalChain([redditData, 'access', _287 => _287.preview, 'optionalAccess', _288 => _288.images, 'optionalAccess', _289 => _289[0]]) && !redditData.is_video) {
|
|
15870
15866
|
const imageData = redditData.preview.images[0];
|
|
15871
15867
|
console.log("\u{1F5BC}\uFE0F Found preview image data:", imageData);
|
|
15872
15868
|
let source = imageData.source;
|
|
@@ -15901,7 +15897,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
15901
15897
|
} else if (directUrl.match(/\.(mp4|webm|mov|avi)(\?.*)?$/i)) {
|
|
15902
15898
|
console.log("\u{1F3AC} Found direct video URL");
|
|
15903
15899
|
let posterUrl = "";
|
|
15904
|
-
if (_optionalChain([redditData, 'access',
|
|
15900
|
+
if (_optionalChain([redditData, 'access', _290 => _290.preview, 'optionalAccess', _291 => _291.images, 'optionalAccess', _292 => _292[0], 'optionalAccess', _293 => _293.source, 'optionalAccess', _294 => _294.url])) {
|
|
15905
15901
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
15906
15902
|
}
|
|
15907
15903
|
media.push({
|
|
@@ -15914,7 +15910,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
15914
15910
|
});
|
|
15915
15911
|
} else if (directUrl.includes("imgur.com") && !directUrl.includes(".gifv")) {
|
|
15916
15912
|
console.log("\u{1F310} Found Imgur link");
|
|
15917
|
-
const imgurId = _optionalChain([directUrl, 'access',
|
|
15913
|
+
const imgurId = _optionalChain([directUrl, 'access', _295 => _295.match, 'call', _296 => _296(/imgur\.com\/([a-zA-Z0-9]+)/), 'optionalAccess', _297 => _297[1]]);
|
|
15918
15914
|
if (imgurId && !directUrl.includes("/a/") && !directUrl.includes("/gallery/")) {
|
|
15919
15915
|
media.push({
|
|
15920
15916
|
type: "image",
|
|
@@ -16063,7 +16059,7 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
16063
16059
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
16064
16060
|
const [error, setError] = _react.useState.call(void 0, null);
|
|
16065
16061
|
const initializationDone = _react.useRef.call(void 0, false);
|
|
16066
|
-
const extractedTweetId = tweetId || _optionalChain([url, 'access',
|
|
16062
|
+
const extractedTweetId = tweetId || _optionalChain([url, 'access', _298 => _298.match, 'call', _299 => _299(/status\/(\d+)/), 'optionalAccess', _300 => _300[1]]);
|
|
16067
16063
|
const tweetUrl = url.includes("twitter.com") || url.includes("x.com") ? url : `https://twitter.com/twitter/status/${extractedTweetId}`;
|
|
16068
16064
|
_react.useEffect.call(void 0, () => {
|
|
16069
16065
|
if (initializationDone.current) return;
|
|
@@ -16130,10 +16126,10 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
16130
16126
|
const parser = new DOMParser();
|
|
16131
16127
|
const doc = parser.parseFromString(tweetData.html, "text/html");
|
|
16132
16128
|
const blockquote = doc.querySelector("blockquote");
|
|
16133
|
-
const fullText = _optionalChain([blockquote, 'optionalAccess',
|
|
16129
|
+
const fullText = _optionalChain([blockquote, 'optionalAccess', _301 => _301.textContent]) || "";
|
|
16134
16130
|
const tweetText = fullText.replace(/- .* \(@.*\).*$/, "").trim();
|
|
16135
16131
|
const username = tweetData.author_url ? tweetData.author_url.split("/").pop() : "";
|
|
16136
|
-
const links = Array.from(_optionalChain([blockquote, 'optionalAccess',
|
|
16132
|
+
const links = Array.from(_optionalChain([blockquote, 'optionalAccess', _302 => _302.querySelectorAll, 'call', _303 => _303("a")]) || []).map((link) => ({
|
|
16137
16133
|
url: link.href,
|
|
16138
16134
|
text: link.textContent || link.href
|
|
16139
16135
|
})).filter((link) => !link.url.includes("twitter.com") && !link.url.includes("x.com"));
|
|
@@ -16388,7 +16384,7 @@ var OGLinkPreview = ({
|
|
|
16388
16384
|
const response = await fetch(endpoint);
|
|
16389
16385
|
if (response.ok) {
|
|
16390
16386
|
const data = await response.json();
|
|
16391
|
-
if (_optionalChain([data, 'optionalAccess',
|
|
16387
|
+
if (_optionalChain([data, 'optionalAccess', _304 => _304.title]) && data.title !== "Link Preview Unavailable") {
|
|
16392
16388
|
setOgData(data);
|
|
16393
16389
|
} else {
|
|
16394
16390
|
setError(true);
|
|
@@ -16415,12 +16411,12 @@ var OGLinkPreview = ({
|
|
|
16415
16411
|
type: "website",
|
|
16416
16412
|
favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`
|
|
16417
16413
|
} : null)));
|
|
16418
|
-
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess',
|
|
16419
|
-
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess',
|
|
16414
|
+
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess', _305 => _305.title]) ? buildPlaceholderUrl(effectiveData.title, effectiveData.siteName || domain) : null;
|
|
16415
|
+
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess', _306 => _306.image]) && !imageError ? effectiveData.image : _optionalChain([effectiveData, 'optionalAccess', _307 => _307.originalImage]) && !originalImageError ? effectiveData.originalImage : fallbackImage && !fallbackImageError ? fallbackImage : placeholderImageUrl;
|
|
16420
16416
|
const hasImage = !!resolvedImageUrl;
|
|
16421
16417
|
const isFallbackImage = resolvedImageUrl === fallbackImage;
|
|
16422
16418
|
const isPlaceholder = resolvedImageUrl === placeholderImageUrl && !isFallbackImage;
|
|
16423
|
-
const bgColor =
|
|
16419
|
+
const bgColor = _chunkG56GYN7Zcjs.useImageEdgeColor.call(void 0, _nullishCoalesce(resolvedImageUrl, () => ( null)), "var(--ods-bg-secondary)");
|
|
16424
16420
|
const renderSkeleton = () => isCompact ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "my-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-row border border-ods-border rounded-lg overflow-hidden bg-ods-card h-[120px]", children: [
|
|
16425
16421
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-[200px] h-full flex-shrink-0 bg-ods-border animate-pulse" }),
|
|
16426
16422
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 p-3 flex flex-col justify-center", children: [
|
|
@@ -16662,9 +16658,9 @@ function toFigmaEmbedUrl(url, opts) {
|
|
|
16662
16658
|
if (match2) {
|
|
16663
16659
|
const [, urlType, fileKey, titleSlug, queryString] = match2;
|
|
16664
16660
|
const isSlides = urlType === "slides" || urlType === "deck";
|
|
16665
|
-
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess',
|
|
16661
|
+
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess', _308 => _308.slidesView]) === "browse" ? "slides" : "deck" : "design";
|
|
16666
16662
|
const pathSuffix = titleSlug ? `/${titleSlug}` : "";
|
|
16667
|
-
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess',
|
|
16663
|
+
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess', _309 => _309.replace, 'call', _310 => _310(/^\?/, "")]) || "");
|
|
16668
16664
|
if (!params.has("embed-host")) {
|
|
16669
16665
|
params.set("embed-host", "flamingo");
|
|
16670
16666
|
}
|
|
@@ -16745,7 +16741,7 @@ function EmbedIframe({
|
|
|
16745
16741
|
allow,
|
|
16746
16742
|
referrerPolicy,
|
|
16747
16743
|
loading,
|
|
16748
|
-
allowFullScreen: _optionalChain([allow, 'optionalAccess',
|
|
16744
|
+
allowFullScreen: _optionalChain([allow, 'optionalAccess', _311 => _311.includes, 'call', _312 => _312("fullscreen")]) ? void 0 : allowFullScreen
|
|
16749
16745
|
},
|
|
16750
16746
|
src
|
|
16751
16747
|
)
|
|
@@ -17496,7 +17492,7 @@ var RichMarkdownInner = ({
|
|
|
17496
17492
|
const extractText2 = (node) => {
|
|
17497
17493
|
if (typeof node === "string") return node;
|
|
17498
17494
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17499
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17495
|
+
if (_optionalChain([node, 'optionalAccess', _313 => _313.props, 'optionalAccess', _314 => _314.children])) return extractText2(node.props.children);
|
|
17500
17496
|
return "";
|
|
17501
17497
|
};
|
|
17502
17498
|
const text = extractText2(children);
|
|
@@ -17512,7 +17508,7 @@ var RichMarkdownInner = ({
|
|
|
17512
17508
|
const extractText2 = (node) => {
|
|
17513
17509
|
if (typeof node === "string") return node;
|
|
17514
17510
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17515
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17511
|
+
if (_optionalChain([node, 'optionalAccess', _315 => _315.props, 'optionalAccess', _316 => _316.children])) return extractText2(node.props.children);
|
|
17516
17512
|
return "";
|
|
17517
17513
|
};
|
|
17518
17514
|
const text = extractText2(children);
|
|
@@ -17530,7 +17526,7 @@ var RichMarkdownInner = ({
|
|
|
17530
17526
|
const extractText2 = (node) => {
|
|
17531
17527
|
if (typeof node === "string") return node;
|
|
17532
17528
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17533
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17529
|
+
if (_optionalChain([node, 'optionalAccess', _317 => _317.props, 'optionalAccess', _318 => _318.children])) return extractText2(node.props.children);
|
|
17534
17530
|
return "";
|
|
17535
17531
|
};
|
|
17536
17532
|
const text = extractText2(children);
|
|
@@ -17548,7 +17544,7 @@ var RichMarkdownInner = ({
|
|
|
17548
17544
|
const extractText2 = (node) => {
|
|
17549
17545
|
if (typeof node === "string") return node;
|
|
17550
17546
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17551
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17547
|
+
if (_optionalChain([node, 'optionalAccess', _319 => _319.props, 'optionalAccess', _320 => _320.children])) return extractText2(node.props.children);
|
|
17552
17548
|
return "";
|
|
17553
17549
|
};
|
|
17554
17550
|
const text = extractText2(children);
|
|
@@ -17566,7 +17562,7 @@ var RichMarkdownInner = ({
|
|
|
17566
17562
|
const extractText2 = (node) => {
|
|
17567
17563
|
if (typeof node === "string") return node;
|
|
17568
17564
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17569
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17565
|
+
if (_optionalChain([node, 'optionalAccess', _321 => _321.props, 'optionalAccess', _322 => _322.children])) return extractText2(node.props.children);
|
|
17570
17566
|
return "";
|
|
17571
17567
|
};
|
|
17572
17568
|
const text = extractText2(children);
|
|
@@ -17584,7 +17580,7 @@ var RichMarkdownInner = ({
|
|
|
17584
17580
|
const extractText2 = (node) => {
|
|
17585
17581
|
if (typeof node === "string") return node;
|
|
17586
17582
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
17587
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
17583
|
+
if (_optionalChain([node, 'optionalAccess', _323 => _323.props, 'optionalAccess', _324 => _324.children])) return extractText2(node.props.children);
|
|
17588
17584
|
return "";
|
|
17589
17585
|
};
|
|
17590
17586
|
const text = extractText2(children);
|
|
@@ -17660,8 +17656,8 @@ var RichMarkdownInner = ({
|
|
|
17660
17656
|
{
|
|
17661
17657
|
href,
|
|
17662
17658
|
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 || ""}`,
|
|
17663
|
-
target: _optionalChain([href, 'optionalAccess',
|
|
17664
|
-
rel: _optionalChain([href, 'optionalAccess',
|
|
17659
|
+
target: _optionalChain([href, 'optionalAccess', _325 => _325.startsWith, 'call', _326 => _326("http")]) ? "_blank" : void 0,
|
|
17660
|
+
rel: _optionalChain([href, 'optionalAccess', _327 => _327.startsWith, 'call', _328 => _328("http")]) ? "noopener noreferrer" : void 0,
|
|
17665
17661
|
children
|
|
17666
17662
|
}
|
|
17667
17663
|
);
|
|
@@ -17785,7 +17781,7 @@ function ReleaseChangelogSection({
|
|
|
17785
17781
|
className: "overflow-hidden transition-[max-height] duration-500",
|
|
17786
17782
|
style: {
|
|
17787
17783
|
transitionTimingFunction: "cubic-bezier(0.33, 1, 0.68, 1)",
|
|
17788
|
-
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access',
|
|
17784
|
+
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access', _329 => _329.current, 'optionalAccess', _330 => _330.scrollHeight]), () => ( 2e3)) : PREVIEW_COLLAPSED_HEIGHT,
|
|
17789
17785
|
...previewNeedsFade && !previewExpanded ? {
|
|
17790
17786
|
maskImage: "linear-gradient(to bottom, black 30%, transparent 100%)",
|
|
17791
17787
|
WebkitMaskImage: "linear-gradient(to bottom, black 30%, transparent 100%)"
|
|
@@ -18222,16 +18218,16 @@ function FilterModal({
|
|
|
18222
18218
|
};
|
|
18223
18219
|
const handleReset = () => {
|
|
18224
18220
|
onFilterChange({});
|
|
18225
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
18221
|
+
_optionalChain([onTagsChange, 'optionalCall', _331 => _331([])]);
|
|
18226
18222
|
onClose();
|
|
18227
18223
|
};
|
|
18228
18224
|
const handleApply = () => {
|
|
18229
18225
|
onFilterChange(selectedFilters);
|
|
18230
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
18226
|
+
_optionalChain([onTagsChange, 'optionalCall', _332 => _332(pendingTags)]);
|
|
18231
18227
|
onClose();
|
|
18232
18228
|
};
|
|
18233
18229
|
const getColumnDirection = (columnKey) => {
|
|
18234
|
-
return _optionalChain([sortConfig, 'optionalAccess',
|
|
18230
|
+
return _optionalChain([sortConfig, 'optionalAccess', _333 => _333.sortBy]) === columnKey ? sortConfig.sortDirection : void 0;
|
|
18235
18231
|
};
|
|
18236
18232
|
const hasSort = !!sortConfig && sortConfig.columns.length > 0;
|
|
18237
18233
|
const hasFilterGroups = filterGroups.length > 0;
|
|
@@ -18280,7 +18276,7 @@ function FilterModal({
|
|
|
18280
18276
|
{
|
|
18281
18277
|
column,
|
|
18282
18278
|
currentDirection: getColumnDirection(column.key),
|
|
18283
|
-
onSort: (direction) => _optionalChain([onSort, 'optionalCall',
|
|
18279
|
+
onSort: (direction) => _optionalChain([onSort, 'optionalCall', _334 => _334(column.key, direction)]),
|
|
18284
18280
|
onClear: onSortClear ? () => onSortClear(column.key) : void 0
|
|
18285
18281
|
},
|
|
18286
18282
|
column.key
|
|
@@ -18458,7 +18454,7 @@ function IconButtonsVariant({
|
|
|
18458
18454
|
}) {
|
|
18459
18455
|
const desktopActions = actions.filter((a) => !a.showOnlyMobile);
|
|
18460
18456
|
const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
|
|
18461
|
-
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access',
|
|
18457
|
+
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _335 => _335[0], 'access', _336 => _336.submenu, 'optionalAccess', _337 => _337.length]);
|
|
18462
18458
|
const singleAction = isSingleAction ? actions[0] : null;
|
|
18463
18459
|
const useSingleActionMobile = isSingleAction && !hasMenuActions;
|
|
18464
18460
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -18773,7 +18769,7 @@ function ListPageLayout({
|
|
|
18773
18769
|
}) {
|
|
18774
18770
|
const [mobileFilterOpen, setMobileFilterOpen] = _react.useState.call(void 0, false);
|
|
18775
18771
|
const [localSearchValue, setLocalSearchValue] = _react.useState.call(void 0, searchValue);
|
|
18776
|
-
const debouncedSearchValue =
|
|
18772
|
+
const debouncedSearchValue = _chunkG56GYN7Zcjs.useDebounce.call(void 0, localSearchValue, 500);
|
|
18777
18773
|
_react.useEffect.call(void 0, () => {
|
|
18778
18774
|
setLocalSearchValue(searchValue);
|
|
18779
18775
|
}, [searchValue]);
|
|
@@ -19041,8 +19037,8 @@ function PageWithHeader({
|
|
|
19041
19037
|
}) {
|
|
19042
19038
|
const router = _chunkG7UE6RKVcjs.useRouter.call(void 0, );
|
|
19043
19039
|
const backCfg = backButton === false ? void 0 : {
|
|
19044
|
-
label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess',
|
|
19045
|
-
onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess',
|
|
19040
|
+
label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _338 => _338.label]), () => ( "Back to home")),
|
|
19041
|
+
onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _339 => _339.href]), () => ( "/")))
|
|
19046
19042
|
};
|
|
19047
19043
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageShell, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageLayout, { backButton: backCfg, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `w-full flex flex-col gap-10${contentClassName ? ` ${contentClassName}` : ""}`, children: [
|
|
19048
19044
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -19635,7 +19631,7 @@ function toToolLabel(input) {
|
|
|
19635
19631
|
if (!input) return "";
|
|
19636
19632
|
const toolType = normalizeToolType(input);
|
|
19637
19633
|
if (toolType) {
|
|
19638
|
-
return
|
|
19634
|
+
return _chunkG56GYN7Zcjs.toolLabels[toolType];
|
|
19639
19635
|
}
|
|
19640
19636
|
return input;
|
|
19641
19637
|
}
|
|
@@ -19646,7 +19642,7 @@ function getToolTypeAliases(toolType) {
|
|
|
19646
19642
|
return Object.entries(toolAliasMap).filter(([_, value]) => value === toolType).map(([key]) => key);
|
|
19647
19643
|
}
|
|
19648
19644
|
function getToolLabel(toolType) {
|
|
19649
|
-
return
|
|
19645
|
+
return _chunkG56GYN7Zcjs.toolLabels[toolType] || toolType;
|
|
19650
19646
|
}
|
|
19651
19647
|
|
|
19652
19648
|
// src/types/shell.types.ts
|
|
@@ -19688,7 +19684,7 @@ function getShellIcon(shellType) {
|
|
|
19688
19684
|
if (!shellType) return void 0;
|
|
19689
19685
|
const normalized = shellType.toUpperCase();
|
|
19690
19686
|
const shellDef = SHELL_TYPES.find((s) => s.id === normalized);
|
|
19691
|
-
return _optionalChain([shellDef, 'optionalAccess',
|
|
19687
|
+
return _optionalChain([shellDef, 'optionalAccess', _340 => _340.icon]);
|
|
19692
19688
|
}
|
|
19693
19689
|
|
|
19694
19690
|
// src/types/os.types.ts
|
|
@@ -19761,7 +19757,7 @@ function getOSIcon(osType) {
|
|
|
19761
19757
|
const normalized = normalizeOSType(osType);
|
|
19762
19758
|
if (!normalized) return void 0;
|
|
19763
19759
|
const osTypeDef = OS_TYPES.find((t) => t.id === normalized);
|
|
19764
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
19760
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _341 => _341.icon]);
|
|
19765
19761
|
}
|
|
19766
19762
|
function getOSTypeDefinition(osType) {
|
|
19767
19763
|
if (!osType) return void 0;
|
|
@@ -19771,7 +19767,7 @@ function getOSTypeDefinition(osType) {
|
|
|
19771
19767
|
}
|
|
19772
19768
|
function getOSPlatformId(osType) {
|
|
19773
19769
|
const osTypeDef = getOSTypeDefinition(osType);
|
|
19774
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
19770
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _342 => _342.platformId]);
|
|
19775
19771
|
}
|
|
19776
19772
|
function isOSPlatform(deviceOS, targetPlatform) {
|
|
19777
19773
|
if (!deviceOS || !targetPlatform) return false;
|
|
@@ -19864,10 +19860,10 @@ var GENERIC_EMAIL_DOMAINS = [
|
|
|
19864
19860
|
];
|
|
19865
19861
|
function extractDomainFromEmail(email) {
|
|
19866
19862
|
if (!email || !email.includes("@")) return null;
|
|
19867
|
-
return _optionalChain([email, 'access',
|
|
19863
|
+
return _optionalChain([email, 'access', _343 => _343.split, 'call', _344 => _344("@"), 'access', _345 => _345[1], 'optionalAccess', _346 => _346.toLowerCase, 'call', _347 => _347()]) || null;
|
|
19868
19864
|
}
|
|
19869
19865
|
function normalizeDomain(domain) {
|
|
19870
|
-
return _optionalChain([domain, 'optionalAccess',
|
|
19866
|
+
return _optionalChain([domain, 'optionalAccess', _348 => _348.toLowerCase, 'call', _349 => _349(), 'access', _350 => _350.replace, 'call', _351 => _351(/^https?:\/\//, ""), 'access', _352 => _352.replace, 'call', _353 => _353(/^www\./, ""), 'access', _354 => _354.split, 'call', _355 => _355("/"), 'access', _356 => _356[0], 'access', _357 => _357.trim, 'call', _358 => _358()]) || "";
|
|
19871
19867
|
}
|
|
19872
19868
|
function isGenericDomain(domain) {
|
|
19873
19869
|
const normalized = normalizeDomain(domain);
|
|
@@ -20294,7 +20290,7 @@ function defaultTableIdForDocumentType(documentType) {
|
|
|
20294
20290
|
|
|
20295
20291
|
// src/utils/sse-decision-frame.ts
|
|
20296
20292
|
async function readLeadingDecisionFrame(response) {
|
|
20297
|
-
const reader = _optionalChain([response, 'access',
|
|
20293
|
+
const reader = _optionalChain([response, 'access', _359 => _359.body, 'optionalAccess', _360 => _360.getReader, 'call', _361 => _361()]);
|
|
20298
20294
|
if (!reader) throw new Error("readLeadingDecisionFrame: response has no body");
|
|
20299
20295
|
const decoder = new TextDecoder();
|
|
20300
20296
|
let buffer = "";
|
|
@@ -20323,9 +20319,9 @@ async function readLeadingDecisionFrame(response) {
|
|
|
20323
20319
|
);
|
|
20324
20320
|
}
|
|
20325
20321
|
const obj = parsed;
|
|
20326
|
-
if (_optionalChain([obj, 'optionalAccess',
|
|
20322
|
+
if (_optionalChain([obj, 'optionalAccess', _362 => _362.kind]) !== "decision_resolved") {
|
|
20327
20323
|
throw new Error(
|
|
20328
|
-
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess',
|
|
20324
|
+
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _363 => _363.kind]))}`
|
|
20329
20325
|
);
|
|
20330
20326
|
}
|
|
20331
20327
|
frame = normalizeDecisionFrame(obj);
|
|
@@ -20366,7 +20362,7 @@ var AUTO_CONTINUATION_DIRECTIVE_PREFIX = "[internal-auto-continuation]";
|
|
|
20366
20362
|
function buildAutoContinuationDirective(toolName, opts = {}) {
|
|
20367
20363
|
const ticketRef = opts.ticketId ? ` (ticket #${opts.ticketId})` : "";
|
|
20368
20364
|
const ticketHash = opts.ticketId ? ` #${opts.ticketId}` : "";
|
|
20369
|
-
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access',
|
|
20365
|
+
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _364 => _364.status, 'optionalAccess', _365 => _365.toUpperCase, 'call', _366 => _366()]) === "CLOSED";
|
|
20370
20366
|
if (toolName === "create_ticket") {
|
|
20371
20367
|
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.`;
|
|
20372
20368
|
}
|
|
@@ -20428,7 +20424,7 @@ function formatSingularLookupInvocation(cmdId, value) {
|
|
|
20428
20424
|
return safe ? `/${cmdId} "${safe}"` : `/${cmdId}`;
|
|
20429
20425
|
}
|
|
20430
20426
|
function extractEntityIdFilter(override, expectedTableId) {
|
|
20431
|
-
const f = _optionalChain([override, 'optionalAccess',
|
|
20427
|
+
const f = _optionalChain([override, 'optionalAccess', _367 => _367.entityIdFilter]);
|
|
20432
20428
|
if (!f) return null;
|
|
20433
20429
|
const tableId = typeof f.tableId === "string" ? f.tableId : "";
|
|
20434
20430
|
const id = typeof f.id === "string" ? f.id : "";
|
|
@@ -20503,7 +20499,7 @@ function getTaskTypeLabel(customItemId) {
|
|
|
20503
20499
|
|
|
20504
20500
|
// src/components/chat/utils/agent-status-message.ts
|
|
20505
20501
|
function getStatusColorScheme(status) {
|
|
20506
|
-
const s = _optionalChain([status, 'optionalAccess',
|
|
20502
|
+
const s = _optionalChain([status, 'optionalAccess', _368 => _368.toLowerCase, 'call', _369 => _369()]) || "";
|
|
20507
20503
|
switch (status) {
|
|
20508
20504
|
case "completed":
|
|
20509
20505
|
case "success":
|
|
@@ -20785,10 +20781,10 @@ var CONTENT_REF_GROUPS = {
|
|
|
20785
20781
|
what_i_shipped: { label: "What I Shipped", order: 10, layout: "grid", gridSize: "default" }
|
|
20786
20782
|
};
|
|
20787
20783
|
function getContentRefLabel(type) {
|
|
20788
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
20784
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _370 => _370[type], 'optionalAccess', _371 => _371.label]), () => ( null));
|
|
20789
20785
|
}
|
|
20790
20786
|
function getContentRefLabelOrTitleCase(type) {
|
|
20791
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
20787
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _372 => _372[type], 'optionalAccess', _373 => _373.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
|
|
20792
20788
|
}
|
|
20793
20789
|
function orderContentRefTypes(present) {
|
|
20794
20790
|
const presentSet = new Set(present);
|
|
@@ -20947,7 +20943,7 @@ function getDocSourceDefaultPath(structure, folderIndexFile = DEFAULT_FOLDER_IND
|
|
|
20947
20943
|
const firstFolderWithReadme = structure.find(
|
|
20948
20944
|
(node) => node.type === "folder" && node.hasReadme && !!node.path
|
|
20949
20945
|
);
|
|
20950
|
-
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess',
|
|
20946
|
+
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _374 => _374.path]), () => ( null));
|
|
20951
20947
|
}
|
|
20952
20948
|
|
|
20953
20949
|
// src/utils/doc-path-utils.ts
|
|
@@ -20958,7 +20954,7 @@ function pathToNodeId(path) {
|
|
|
20958
20954
|
return path.replace(/[\/\s]/g, "-").toLowerCase();
|
|
20959
20955
|
}
|
|
20960
20956
|
function normalizeDocPath(segments, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE) {
|
|
20961
|
-
const lowerPath = (_optionalChain([segments, 'optionalAccess',
|
|
20957
|
+
const lowerPath = (_optionalChain([segments, 'optionalAccess', _375 => _375.join, 'call', _376 => _376("/")]) || "").toLowerCase();
|
|
20962
20958
|
const lowerIndex = folderIndexFile.toLowerCase();
|
|
20963
20959
|
const suffix = `/${lowerIndex}`;
|
|
20964
20960
|
if (lowerPath.endsWith(suffix)) return lowerPath.slice(0, -suffix.length);
|
|
@@ -21778,26 +21774,26 @@ function DeviceCard({
|
|
|
21778
21774
|
] }),
|
|
21779
21775
|
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 })
|
|
21780
21776
|
] }),
|
|
21781
|
-
_optionalChain([actions, 'access',
|
|
21777
|
+
_optionalChain([actions, 'access', _377 => _377.moreButton, 'optionalAccess', _378 => _378.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21782
21778
|
"div",
|
|
21783
21779
|
{
|
|
21784
21780
|
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",
|
|
21785
21781
|
onClick: (e) => {
|
|
21786
21782
|
e.stopPropagation();
|
|
21787
|
-
_optionalChain([actions, 'access',
|
|
21783
|
+
_optionalChain([actions, 'access', _379 => _379.moreButton, 'optionalAccess', _380 => _380.onClick, 'optionalCall', _381 => _381()]);
|
|
21788
21784
|
},
|
|
21789
21785
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
|
|
21790
21786
|
}
|
|
21791
21787
|
),
|
|
21792
|
-
_optionalChain([actions, 'access',
|
|
21793
|
-
_optionalChain([actions, 'access',
|
|
21788
|
+
_optionalChain([actions, 'access', _382 => _382.detailsButton, 'optionalAccess', _383 => _383.visible]) !== false && _optionalChain([actions, 'access', _384 => _384.detailsButton, 'optionalAccess', _385 => _385.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
|
|
21789
|
+
_optionalChain([actions, 'access', _386 => _386.customActions, 'optionalAccess', _387 => _387.map, 'call', _388 => _388(
|
|
21794
21790
|
(action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21795
21791
|
"div",
|
|
21796
21792
|
{
|
|
21797
21793
|
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",
|
|
21798
21794
|
onClick: (e) => {
|
|
21799
21795
|
e.stopPropagation();
|
|
21800
|
-
_optionalChain([action, 'access',
|
|
21796
|
+
_optionalChain([action, 'access', _389 => _389.onClick, 'optionalCall', _390 => _390()]);
|
|
21801
21797
|
},
|
|
21802
21798
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3 text-ods-text-primary text-nowrap tracking-[-0.36px]", children: action.label })
|
|
21803
21799
|
},
|
|
@@ -22297,7 +22293,7 @@ function MoreActionsMenu({
|
|
|
22297
22293
|
] });
|
|
22298
22294
|
const handleActivate = (e) => {
|
|
22299
22295
|
e.stopPropagation();
|
|
22300
|
-
if (!item.disabled) _optionalChain([item, 'access',
|
|
22296
|
+
if (!item.disabled) _optionalChain([item, 'access', _391 => _391.onClick, 'optionalCall', _392 => _392()]);
|
|
22301
22297
|
};
|
|
22302
22298
|
if (item.href) {
|
|
22303
22299
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22364,7 +22360,7 @@ function OrganizationCard({
|
|
|
22364
22360
|
const handleActionClick = (e) => {
|
|
22365
22361
|
e.preventDefault();
|
|
22366
22362
|
e.stopPropagation();
|
|
22367
|
-
_optionalChain([actionButton, 'optionalAccess',
|
|
22363
|
+
_optionalChain([actionButton, 'optionalAccess', _393 => _393.onClick, 'call', _394 => _394(organization, e)]);
|
|
22368
22364
|
};
|
|
22369
22365
|
const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22370
22366
|
"div",
|
|
@@ -23270,10 +23266,10 @@ var getContentDimensions = (config) => {
|
|
|
23270
23266
|
const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
|
|
23271
23267
|
const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
|
|
23272
23268
|
const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
|
|
23273
|
-
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
23274
|
-
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
23275
|
-
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
23276
|
-
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
23269
|
+
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _395 => _395.mobileContentDimensions, 'optionalAccess', _396 => _396.width]))), () => ( defaultMobile.width));
|
|
23270
|
+
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _397 => _397.mobileContentDimensions, 'optionalAccess', _398 => _398.height]))), () => ( defaultMobile.height));
|
|
23271
|
+
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _399 => _399.desktopContentDimensions, 'optionalAccess', _400 => _400.width]))), () => ( defaultDesktop.width));
|
|
23272
|
+
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _401 => _401.desktopContentDimensions, 'optionalAccess', _402 => _402.height]))), () => ( defaultDesktop.height));
|
|
23277
23273
|
return {
|
|
23278
23274
|
mobile: { width: mobileWidth, height: mobileHeight },
|
|
23279
23275
|
desktop: { width: desktopWidth, height: desktopHeight }
|
|
@@ -23407,7 +23403,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
|
|
|
23407
23403
|
const contentDimensions = getContentDimensions(config);
|
|
23408
23404
|
const mobileHeight = contentDimensions.mobile.height;
|
|
23409
23405
|
const calculatedHeight = Math.max(mobileHeight + 100, 400);
|
|
23410
|
-
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess',
|
|
23406
|
+
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _403 => _403.innerHeight]) * 0.85 || 650)}px`;
|
|
23411
23407
|
})(),
|
|
23412
23408
|
minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
|
|
23413
23409
|
const contentDimensions = getContentDimensions(config);
|
|
@@ -23512,7 +23508,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23512
23508
|
const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
|
|
23513
23509
|
const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
|
|
23514
23510
|
const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
|
|
23515
|
-
config.defaultSectionId || _optionalChain([config, 'access',
|
|
23511
|
+
config.defaultSectionId || _optionalChain([config, 'access', _404 => _404.sections, 'access', _405 => _405[0], 'optionalAccess', _406 => _406.id]) || ""
|
|
23516
23512
|
);
|
|
23517
23513
|
const activeSection = externalActiveSection || internalActiveSection;
|
|
23518
23514
|
const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
|
|
@@ -23602,7 +23598,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23602
23598
|
const handleMessage = (event) => {
|
|
23603
23599
|
if (event.origin !== "https://www.figma.com") return;
|
|
23604
23600
|
const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
|
|
23605
|
-
if (_optionalChain([event, 'access',
|
|
23601
|
+
if (_optionalChain([event, 'access', _407 => _407.data, 'optionalAccess', _408 => _408.type]) && validEvents.includes(event.data.type)) {
|
|
23606
23602
|
const figmaEvent = event.data;
|
|
23607
23603
|
console.log("[Figma Event]", figmaEvent.type, viewMode);
|
|
23608
23604
|
switch (figmaEvent.type) {
|
|
@@ -23612,19 +23608,19 @@ var FigmaPrototypeViewer = ({
|
|
|
23612
23608
|
setIframeState("READY");
|
|
23613
23609
|
break;
|
|
23614
23610
|
case "PRESENTED_NODE_CHANGED":
|
|
23615
|
-
if (_optionalChain([figmaEvent, 'access',
|
|
23611
|
+
if (_optionalChain([figmaEvent, 'access', _409 => _409.data, 'optionalAccess', _410 => _410.presentedNodeId])) {
|
|
23616
23612
|
setCurrentNodeId(figmaEvent.data.presentedNodeId);
|
|
23617
23613
|
if (!isNavigating) {
|
|
23618
23614
|
const matchingSection = config.sections.find((s) => {
|
|
23619
|
-
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access',
|
|
23620
|
-
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access',
|
|
23615
|
+
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _411 => _411.data, 'optionalAccess', _412 => _412.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _413 => _413.data, 'optionalAccess', _414 => _414.presentedNodeId]);
|
|
23616
|
+
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _415 => _415.data, 'optionalAccess', _416 => _416.presentedNodeId]) || _optionalChain([s, 'access', _417 => _417.mobileStartingNodeId, 'optionalAccess', _418 => _418.replace, 'call', _419 => _419(":", "-")]) === _optionalChain([figmaEvent, 'access', _420 => _420.data, 'optionalAccess', _421 => _421.presentedNodeId]);
|
|
23621
23617
|
return desktopMatch || mobileMatch;
|
|
23622
23618
|
});
|
|
23623
23619
|
if (matchingSection && matchingSection.id !== activeSection) {
|
|
23624
23620
|
if (!externalActiveSection) {
|
|
23625
23621
|
setInternalActiveSection(matchingSection.id);
|
|
23626
23622
|
}
|
|
23627
|
-
_optionalChain([config, 'access',
|
|
23623
|
+
_optionalChain([config, 'access', _422 => _422.onSectionChange, 'optionalCall', _423 => _423(matchingSection.id)]);
|
|
23628
23624
|
}
|
|
23629
23625
|
}
|
|
23630
23626
|
}
|
|
@@ -23637,7 +23633,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23637
23633
|
}, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
|
|
23638
23634
|
const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
|
|
23639
23635
|
const section = config.sections.find((s) => s.id === sectionId);
|
|
23640
|
-
if (!section || !_optionalChain([iframeRef, 'access',
|
|
23636
|
+
if (!section || !_optionalChain([iframeRef, 'access', _424 => _424.current, 'optionalAccess', _425 => _425.contentWindow]) || !isInitialized) {
|
|
23641
23637
|
return;
|
|
23642
23638
|
}
|
|
23643
23639
|
setIsNavigating(true);
|
|
@@ -23645,7 +23641,7 @@ var FigmaPrototypeViewer = ({
|
|
|
23645
23641
|
if (!externalActiveSection) {
|
|
23646
23642
|
setInternalActiveSection(sectionId);
|
|
23647
23643
|
}
|
|
23648
|
-
_optionalChain([config, 'access',
|
|
23644
|
+
_optionalChain([config, 'access', _426 => _426.onSectionChange, 'optionalCall', _427 => _427(sectionId)]);
|
|
23649
23645
|
const command = {
|
|
23650
23646
|
type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
|
|
23651
23647
|
data: { nodeId }
|
|
@@ -23965,7 +23961,7 @@ var FiltersDropdown = ({
|
|
|
23965
23961
|
defaults[section.id] = section.defaultSelected || [];
|
|
23966
23962
|
});
|
|
23967
23963
|
setSelectedFilters(defaults);
|
|
23968
|
-
_optionalChain([onReset, 'optionalCall',
|
|
23964
|
+
_optionalChain([onReset, 'optionalCall', _428 => _428()]);
|
|
23969
23965
|
setIsOpen(false);
|
|
23970
23966
|
};
|
|
23971
23967
|
const handleApply = () => {
|
|
@@ -24258,7 +24254,7 @@ function MediaGalleryManager({
|
|
|
24258
24254
|
const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
|
|
24259
24255
|
const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
|
|
24260
24256
|
const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
|
|
24261
|
-
const file = _optionalChain([event, 'access',
|
|
24257
|
+
const file = _optionalChain([event, 'access', _429 => _429.target, 'access', _430 => _430.files, 'optionalAccess', _431 => _431[0]]);
|
|
24262
24258
|
if (!file) return;
|
|
24263
24259
|
let mediaType;
|
|
24264
24260
|
if (file.type.startsWith("image/")) {
|
|
@@ -24373,7 +24369,7 @@ function MediaGalleryManager({
|
|
|
24373
24369
|
{
|
|
24374
24370
|
type: "button",
|
|
24375
24371
|
variant: "outline",
|
|
24376
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
24372
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _432 => _432.current, 'optionalAccess', _433 => _433.click, 'call', _434 => _434()]),
|
|
24377
24373
|
disabled: isUploading,
|
|
24378
24374
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
24379
24375
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -24848,7 +24844,7 @@ function PlatformFilterComponent({
|
|
|
24848
24844
|
variant: selectedPlatform === platform.value ? "accent" : "outline",
|
|
24849
24845
|
size,
|
|
24850
24846
|
onClick: () => onPlatformChange(platform.value),
|
|
24851
|
-
leftIcon: showIcons ?
|
|
24847
|
+
leftIcon: showIcons ? _chunkG56GYN7Zcjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
|
|
24852
24848
|
className: "text-h3",
|
|
24853
24849
|
children: platform.label
|
|
24854
24850
|
},
|
|
@@ -25022,7 +25018,7 @@ function ReleaseMediaManager({
|
|
|
25022
25018
|
const fileInputRef = _react.useRef.call(void 0, null);
|
|
25023
25019
|
const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
|
|
25024
25020
|
const handleFileSelect = async (event) => {
|
|
25025
|
-
const file = _optionalChain([event, 'access',
|
|
25021
|
+
const file = _optionalChain([event, 'access', _435 => _435.target, 'access', _436 => _436.files, 'optionalAccess', _437 => _437[0]]);
|
|
25026
25022
|
if (!file) return;
|
|
25027
25023
|
let mediaType;
|
|
25028
25024
|
if (file.type.startsWith("image/")) {
|
|
@@ -25102,7 +25098,7 @@ function ReleaseMediaManager({
|
|
|
25102
25098
|
{
|
|
25103
25099
|
type: "button",
|
|
25104
25100
|
variant: "outline",
|
|
25105
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
25101
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _438 => _438.current, 'optionalAccess', _439 => _439.click, 'call', _440 => _440()]),
|
|
25106
25102
|
disabled: uploadingIndex !== null,
|
|
25107
25103
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
25108
25104
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -25315,7 +25311,7 @@ function SEOEditorPreview({
|
|
|
25315
25311
|
const displayImage = hasOgImage || hasFeaturedImage;
|
|
25316
25312
|
const handleImageUpload = async (event) => {
|
|
25317
25313
|
if (!onOgImageUpload) return;
|
|
25318
|
-
const file = _optionalChain([event, 'access',
|
|
25314
|
+
const file = _optionalChain([event, 'access', _441 => _441.target, 'access', _442 => _442.files, 'optionalAccess', _443 => _443[0]]);
|
|
25319
25315
|
if (!file) return;
|
|
25320
25316
|
setIsUploading(true);
|
|
25321
25317
|
try {
|
|
@@ -25446,7 +25442,7 @@ function SEOEditorPreview({
|
|
|
25446
25442
|
type: "button",
|
|
25447
25443
|
variant: "outline",
|
|
25448
25444
|
size: "icon",
|
|
25449
|
-
onClick: () => _optionalChain([fileInputRef, 'optionalAccess',
|
|
25445
|
+
onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _444 => _444.click, 'call', _445 => _445()]),
|
|
25450
25446
|
disabled: disabled || isUploading,
|
|
25451
25447
|
className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
|
|
25452
25448
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
|
|
@@ -25469,7 +25465,7 @@ function SEOEditorPreview({
|
|
|
25469
25465
|
"div",
|
|
25470
25466
|
{
|
|
25471
25467
|
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",
|
|
25472
|
-
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess',
|
|
25468
|
+
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _446 => _446.click, 'call', _447 => _447()]),
|
|
25473
25469
|
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: [
|
|
25474
25470
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
|
|
25475
25471
|
/* @__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" })
|
|
@@ -25554,7 +25550,7 @@ function SocialLinksManager({
|
|
|
25554
25550
|
className = ""
|
|
25555
25551
|
}) {
|
|
25556
25552
|
const addLink = () => {
|
|
25557
|
-
const firstPlatform = _optionalChain([platforms, 'access',
|
|
25553
|
+
const firstPlatform = _optionalChain([platforms, 'access', _448 => _448[0], 'optionalAccess', _449 => _449.name]) || "website";
|
|
25558
25554
|
onChange([...links, { platform: firstPlatform, url: "" }]);
|
|
25559
25555
|
};
|
|
25560
25556
|
const removeLink = (index) => {
|
|
@@ -25566,7 +25562,7 @@ function SocialLinksManager({
|
|
|
25566
25562
|
onChange(updated);
|
|
25567
25563
|
};
|
|
25568
25564
|
const getIcon = (link, platform) => {
|
|
25569
|
-
const iconKey = _optionalChain([platform, 'optionalAccess',
|
|
25565
|
+
const iconKey = _optionalChain([platform, 'optionalAccess', _450 => _450.icon_name]) || link.platform;
|
|
25570
25566
|
const IconComponent = iconMap[iconKey];
|
|
25571
25567
|
return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
|
|
25572
25568
|
};
|
|
@@ -25591,7 +25587,7 @@ function SocialLinksManager({
|
|
|
25591
25587
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25592
25588
|
_chunkFQOTC3UUcjs.Input,
|
|
25593
25589
|
{
|
|
25594
|
-
placeholder: _optionalChain([platform, 'optionalAccess',
|
|
25590
|
+
placeholder: _optionalChain([platform, 'optionalAccess', _451 => _451.placeholder]) || "Profile URL",
|
|
25595
25591
|
value: link.url,
|
|
25596
25592
|
onChange: (e) => updateLink(index, "url", e.target.value),
|
|
25597
25593
|
onKeyDown: (e) => {
|
|
@@ -25945,8 +25941,8 @@ var MUX_IMAGE_ORIGIN = "https://image.mux.com";
|
|
|
25945
25941
|
function useVideoOriginPreconnect({
|
|
25946
25942
|
supabaseStorageOrigin
|
|
25947
25943
|
} = {}) {
|
|
25948
|
-
const runtime =
|
|
25949
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
25944
|
+
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
25945
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _452 => _452.endpoints, 'access', _453 => _453.supabaseStorageOrigin])));
|
|
25950
25946
|
try {
|
|
25951
25947
|
ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
|
|
25952
25948
|
ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
|
|
@@ -25964,14 +25960,14 @@ function useVideoWarmup({
|
|
|
25964
25960
|
supabaseStorageOrigin,
|
|
25965
25961
|
nearMargin = "1000px"
|
|
25966
25962
|
} = {}) {
|
|
25967
|
-
const runtime =
|
|
25968
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
25963
|
+
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
25964
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _454 => _454.endpoints, 'access', _455 => _455.supabaseStorageOrigin])));
|
|
25969
25965
|
useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
|
|
25970
|
-
const { ref, isNear } =
|
|
25966
|
+
const { ref, isNear } = _chunkG56GYN7Zcjs.useNearViewport.call(void 0, nearMargin);
|
|
25971
25967
|
_react.useEffect.call(void 0, () => {
|
|
25972
25968
|
if (!isNear || !videoUrl || !resolvedOrigin) return;
|
|
25973
25969
|
const conn = navigator.connection;
|
|
25974
|
-
if (_optionalChain([conn, 'optionalAccess',
|
|
25970
|
+
if (_optionalChain([conn, 'optionalAccess', _456 => _456.saveData]) === true) return;
|
|
25975
25971
|
let videoOrigin;
|
|
25976
25972
|
try {
|
|
25977
25973
|
videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
|
|
@@ -26041,7 +26037,7 @@ function VideoSourceSelector({
|
|
|
26041
26037
|
input.accept = "video/*";
|
|
26042
26038
|
input.onchange = async (e) => {
|
|
26043
26039
|
const target = e.target;
|
|
26044
|
-
const file = _optionalChain([target, 'access',
|
|
26040
|
+
const file = _optionalChain([target, 'access', _457 => _457.files, 'optionalAccess', _458 => _458[0]]);
|
|
26045
26041
|
if (!file) return;
|
|
26046
26042
|
setIsUploading(true);
|
|
26047
26043
|
setUploadProgress(0);
|
|
@@ -26402,7 +26398,7 @@ function TranscriptSummaryEditor({
|
|
|
26402
26398
|
{
|
|
26403
26399
|
id: "subtitles",
|
|
26404
26400
|
value: subtitles || "",
|
|
26405
|
-
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall',
|
|
26401
|
+
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _459 => _459(e.target.value)]),
|
|
26406
26402
|
placeholder: subtitlesPlaceholder,
|
|
26407
26403
|
disabled: disabled || !onSubtitlesChange,
|
|
26408
26404
|
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",
|
|
@@ -26555,7 +26551,7 @@ var AIEnrichSection = ({
|
|
|
26555
26551
|
}) => {
|
|
26556
26552
|
const hasResults = status === "success" || status === "error";
|
|
26557
26553
|
const shouldDisable = disabled || !canEnrich;
|
|
26558
|
-
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess',
|
|
26554
|
+
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _460 => _460.filter, 'call', _461 => _461((f) => !f.isFilled)]) || [];
|
|
26559
26555
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26560
26556
|
"div",
|
|
26561
26557
|
{
|
|
@@ -26593,7 +26589,7 @@ var AIEnrichSection = ({
|
|
|
26593
26589
|
{
|
|
26594
26590
|
id: "ai-enrich-custom-instructions",
|
|
26595
26591
|
value: _nullishCoalesce(customInstructions, () => ( "")),
|
|
26596
|
-
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall',
|
|
26592
|
+
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _462 => _462(e.target.value)]),
|
|
26597
26593
|
placeholder: customInstructionsPlaceholder,
|
|
26598
26594
|
disabled: loading,
|
|
26599
26595
|
maxLength: customInstructionsMaxLength,
|
|
@@ -26722,7 +26718,7 @@ function HighlightVideoSection({
|
|
|
26722
26718
|
input.accept = "video/*";
|
|
26723
26719
|
input.onchange = async (e) => {
|
|
26724
26720
|
const target = e.target;
|
|
26725
|
-
const file = _optionalChain([target, 'access',
|
|
26721
|
+
const file = _optionalChain([target, 'access', _463 => _463.files, 'optionalAccess', _464 => _464[0]]);
|
|
26726
26722
|
if (!file) return;
|
|
26727
26723
|
setUploadError(null);
|
|
26728
26724
|
try {
|
|
@@ -27224,7 +27220,7 @@ function HighlightVideoPreview({
|
|
|
27224
27220
|
input.accept = "video/*";
|
|
27225
27221
|
input.onchange = async (e) => {
|
|
27226
27222
|
const target = e.target;
|
|
27227
|
-
const file = _optionalChain([target, 'access',
|
|
27223
|
+
const file = _optionalChain([target, 'access', _465 => _465.files, 'optionalAccess', _466 => _466[0]]);
|
|
27228
27224
|
if (!file) return;
|
|
27229
27225
|
await onUpload(file);
|
|
27230
27226
|
};
|
|
@@ -27411,7 +27407,7 @@ function HighlightVideoCombinedSection({
|
|
|
27411
27407
|
input.accept = "video/*";
|
|
27412
27408
|
input.onchange = async (e) => {
|
|
27413
27409
|
const target = e.target;
|
|
27414
|
-
const file = _optionalChain([target, 'access',
|
|
27410
|
+
const file = _optionalChain([target, 'access', _467 => _467.files, 'optionalAccess', _468 => _468[0]]);
|
|
27415
27411
|
if (!file) return;
|
|
27416
27412
|
await onUpload(file);
|
|
27417
27413
|
};
|
|
@@ -27708,11 +27704,11 @@ var getApprovalLevelLabel = (level, editMode = false) => {
|
|
|
27708
27704
|
return editMode ? "Set Global Permission" : "";
|
|
27709
27705
|
}
|
|
27710
27706
|
const option = approvalLevelOptions.find((opt) => opt.value === level);
|
|
27711
|
-
return _optionalChain([option, 'optionalAccess',
|
|
27707
|
+
return _optionalChain([option, 'optionalAccess', _469 => _469.label]) || level;
|
|
27712
27708
|
};
|
|
27713
27709
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
27714
27710
|
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: [
|
|
27715
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md flex items-center justify-center w-8 h-8", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27711
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "bg-ods-bg border border-ods-border rounded-md flex items-center justify-center w-8 h-8", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkG56GYN7Zcjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
|
|
27716
27712
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 flex flex-col min-w-0", children: [
|
|
27717
27713
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-[16px] font-medium text-ods-text-primary truncate", title: policy.name, children: policy.name }),
|
|
27718
27714
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-[12px] text-ods-text-secondary break-all font-mono", children: policy.commandPattern })
|
|
@@ -27922,12 +27918,12 @@ function PhoneInput({
|
|
|
27922
27918
|
const runValidation = _react.useCallback.call(void 0, (phone) => {
|
|
27923
27919
|
if (!phone || digitCount(phone) === 0) {
|
|
27924
27920
|
setIsInvalid(false);
|
|
27925
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
27921
|
+
_optionalChain([onValidationChange, 'optionalCall', _470 => _470(false)]);
|
|
27926
27922
|
return;
|
|
27927
27923
|
}
|
|
27928
27924
|
const invalid = !validatePhoneNumber(phone, countryCode);
|
|
27929
27925
|
setIsInvalid(invalid);
|
|
27930
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
27926
|
+
_optionalChain([onValidationChange, 'optionalCall', _471 => _471(invalid)]);
|
|
27931
27927
|
}, [countryCode, digitCount, onValidationChange]);
|
|
27932
27928
|
const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
|
|
27933
27929
|
if (debounceRef.current) clearTimeout(debounceRef.current);
|
|
@@ -27976,7 +27972,7 @@ function PhoneInput({
|
|
|
27976
27972
|
debouncedValidation(val);
|
|
27977
27973
|
} else if (digitCount(val) === 0) {
|
|
27978
27974
|
setIsInvalid(false);
|
|
27979
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
27975
|
+
_optionalChain([onValidationChange, 'optionalCall', _472 => _472(false)]);
|
|
27980
27976
|
}
|
|
27981
27977
|
}
|
|
27982
27978
|
},
|
|
@@ -28023,8 +28019,8 @@ function WaitlistForm({
|
|
|
28023
28019
|
const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
|
|
28024
28020
|
const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
|
|
28025
28021
|
const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
|
|
28026
|
-
const { toast } =
|
|
28027
|
-
const { honeypotInputProps, getSignals, resetSignals } =
|
|
28022
|
+
const { toast } = _chunkG56GYN7Zcjs.useToast.call(void 0, );
|
|
28023
|
+
const { honeypotInputProps, getSignals, resetSignals } = _chunkG56GYN7Zcjs.useHumanitySignals.call(void 0, );
|
|
28028
28024
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
28029
28025
|
const [isClient, setIsClient] = _react.useState.call(void 0, false);
|
|
28030
28026
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
@@ -28317,19 +28313,19 @@ function NotificationsProvider({
|
|
|
28317
28313
|
}, []);
|
|
28318
28314
|
const markRead = React90.useCallback((id) => {
|
|
28319
28315
|
dispatch({ type: "markRead", id });
|
|
28320
|
-
void _optionalChain([actionsRef, 'access',
|
|
28316
|
+
void _optionalChain([actionsRef, 'access', _473 => _473.current, 'optionalAccess', _474 => _474.onMarkRead, 'optionalCall', _475 => _475(id)]);
|
|
28321
28317
|
}, []);
|
|
28322
28318
|
const markAllRead = React90.useCallback(() => {
|
|
28323
28319
|
dispatch({ type: "markAllRead" });
|
|
28324
|
-
void _optionalChain([actionsRef, 'access',
|
|
28320
|
+
void _optionalChain([actionsRef, 'access', _476 => _476.current, 'optionalAccess', _477 => _477.onMarkAllRead, 'optionalCall', _478 => _478()]);
|
|
28325
28321
|
}, []);
|
|
28326
28322
|
const markSettled = React90.useCallback((id) => {
|
|
28327
28323
|
dispatch({ type: "markSettled", id });
|
|
28328
|
-
void _optionalChain([actionsRef, 'access',
|
|
28324
|
+
void _optionalChain([actionsRef, 'access', _479 => _479.current, 'optionalAccess', _480 => _480.onMarkSettled, 'optionalCall', _481 => _481(id)]);
|
|
28329
28325
|
}, []);
|
|
28330
28326
|
const remove = React90.useCallback((id) => {
|
|
28331
28327
|
dispatch({ type: "remove", id });
|
|
28332
|
-
void _optionalChain([actionsRef, 'access',
|
|
28328
|
+
void _optionalChain([actionsRef, 'access', _482 => _482.current, 'optionalAccess', _483 => _483.onRemove, 'optionalCall', _484 => _484(id)]);
|
|
28333
28329
|
}, []);
|
|
28334
28330
|
const clear = React90.useCallback(() => dispatch({ type: "clear" }), []);
|
|
28335
28331
|
const open = React90.useCallback(() => setIsOpen(true), []);
|
|
@@ -28338,14 +28334,14 @@ function NotificationsProvider({
|
|
|
28338
28334
|
const setShowPopups = React90.useCallback(
|
|
28339
28335
|
(value2) => {
|
|
28340
28336
|
setShowPopupsState(value2);
|
|
28341
|
-
_optionalChain([onShowPopupsChange, 'optionalCall',
|
|
28337
|
+
_optionalChain([onShowPopupsChange, 'optionalCall', _485 => _485(value2)]);
|
|
28342
28338
|
},
|
|
28343
28339
|
[onShowPopupsChange]
|
|
28344
28340
|
);
|
|
28345
28341
|
const setShowDesktopPopups = React90.useCallback(
|
|
28346
28342
|
(value2) => {
|
|
28347
28343
|
setShowDesktopPopupsState(value2);
|
|
28348
|
-
_optionalChain([onShowDesktopPopupsChange, 'optionalCall',
|
|
28344
|
+
_optionalChain([onShowDesktopPopupsChange, 'optionalCall', _486 => _486(value2)]);
|
|
28349
28345
|
},
|
|
28350
28346
|
[onShowDesktopPopupsChange]
|
|
28351
28347
|
);
|
|
@@ -28449,7 +28445,7 @@ function NotificationTile({
|
|
|
28449
28445
|
if (!counting) return;
|
|
28450
28446
|
const remaining = Math.max(0, liveDurationMs - initialElapsed);
|
|
28451
28447
|
const timer = window.setTimeout(() => {
|
|
28452
|
-
_optionalChain([onSettle, 'optionalCall',
|
|
28448
|
+
_optionalChain([onSettle, 'optionalCall', _487 => _487(id)]);
|
|
28453
28449
|
}, remaining);
|
|
28454
28450
|
return () => window.clearTimeout(timer);
|
|
28455
28451
|
}, [id, counting, initialElapsed, liveDurationMs, onSettle]);
|
|
@@ -28469,7 +28465,7 @@ function NotificationTile({
|
|
|
28469
28465
|
children ? "border-b border-ods-border" : null
|
|
28470
28466
|
),
|
|
28471
28467
|
children: [
|
|
28472
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex size-6 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "size-1.5 rounded-full",
|
|
28468
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex size-6 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "size-1.5 rounded-full", _chunkG56GYN7Zcjs.dotColorByVariant[variant]) }) }),
|
|
28473
28469
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
28474
28470
|
title ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-h4 text-ods-text-primary", title: typeof title === "string" ? title : void 0, children: title }) : null,
|
|
28475
28471
|
description ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 line-clamp-2 text-ods-text-secondary", title: typeof description === "string" ? description : void 0, children: description }) : null
|
|
@@ -28495,7 +28491,7 @@ function NotificationTile({
|
|
|
28495
28491
|
"aria-hidden": true,
|
|
28496
28492
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
28497
28493
|
"absolute inset-x-0 -bottom-px h-1 origin-left",
|
|
28498
|
-
|
|
28494
|
+
_chunkG56GYN7Zcjs.progressColorByVariant[variant]
|
|
28499
28495
|
),
|
|
28500
28496
|
style: {
|
|
28501
28497
|
animation: `toast-progress ${liveDurationMs}ms linear forwards`,
|
|
@@ -28511,7 +28507,7 @@ function NotificationTile({
|
|
|
28511
28507
|
"button",
|
|
28512
28508
|
{
|
|
28513
28509
|
type: "button",
|
|
28514
|
-
onClick: () => _optionalChain([onSettle, 'optionalCall',
|
|
28510
|
+
onClick: () => _optionalChain([onSettle, 'optionalCall', _488 => _488(id)]),
|
|
28515
28511
|
"aria-label": "Dismiss notification",
|
|
28516
28512
|
tabIndex: isLive ? 0 : -1,
|
|
28517
28513
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -28644,7 +28640,7 @@ function DrawerScrollList({
|
|
|
28644
28640
|
if (!sentinel || !root) return;
|
|
28645
28641
|
const observer = new IntersectionObserver(
|
|
28646
28642
|
(entries) => {
|
|
28647
|
-
if (_optionalChain([entries, 'access',
|
|
28643
|
+
if (_optionalChain([entries, 'access', _489 => _489[0], 'optionalAccess', _490 => _490.isIntersecting])) _optionalChain([loadMoreRef, 'access', _491 => _491.current, 'optionalCall', _492 => _492()]);
|
|
28648
28644
|
},
|
|
28649
28645
|
{ root, rootMargin: loadMoreRootMargin }
|
|
28650
28646
|
);
|
|
@@ -28659,7 +28655,7 @@ function DrawerScrollList({
|
|
|
28659
28655
|
className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
|
|
28660
28656
|
children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
28661
28657
|
unreadNotifications.map((n) => {
|
|
28662
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
28658
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _493 => _493(n, { onComplete, onSettle, liveDurationMs })]);
|
|
28663
28659
|
if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
|
|
28664
28660
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28665
28661
|
NotificationTile,
|
|
@@ -28719,7 +28715,7 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
|
|
|
28719
28715
|
] });
|
|
28720
28716
|
}
|
|
28721
28717
|
function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
28722
|
-
const { supported, permission, request } =
|
|
28718
|
+
const { supported, permission, request } = _chunkG56GYN7Zcjs.useNotificationPermission.call(void 0, );
|
|
28723
28719
|
if (!supported) return null;
|
|
28724
28720
|
const blocked = permission === "denied";
|
|
28725
28721
|
const handleChange = async (value) => {
|
|
@@ -28823,7 +28819,7 @@ function NotificationPopups({
|
|
|
28823
28819
|
className
|
|
28824
28820
|
),
|
|
28825
28821
|
children: live.map((n) => {
|
|
28826
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
28822
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _494 => _494(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
|
|
28827
28823
|
if (custom) {
|
|
28828
28824
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
|
|
28829
28825
|
}
|
|
@@ -29003,21 +28999,21 @@ function transformWebinarToProgram(webinar) {
|
|
|
29003
28999
|
// src/components/features/notifications/types.ts
|
|
29004
29000
|
var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
|
|
29005
29001
|
function isApprovalNotification(notification) {
|
|
29006
|
-
return _optionalChain([notification, 'access',
|
|
29002
|
+
return _optionalChain([notification, 'access', _495 => _495.meta, 'optionalAccess', _496 => _496.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
|
|
29007
29003
|
}
|
|
29008
29004
|
function getApprovalMeta(notification) {
|
|
29009
29005
|
if (!isApprovalNotification(notification)) return null;
|
|
29010
29006
|
const meta = notification.meta;
|
|
29011
|
-
const approvalRequestId = _optionalChain([meta, 'optionalAccess',
|
|
29012
|
-
const toolCalls = _optionalChain([meta, 'optionalAccess',
|
|
29007
|
+
const approvalRequestId = _optionalChain([meta, 'optionalAccess', _497 => _497.approvalRequestId]);
|
|
29008
|
+
const toolCalls = _optionalChain([meta, 'optionalAccess', _498 => _498.toolCalls]);
|
|
29013
29009
|
if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
|
|
29014
29010
|
return {
|
|
29015
29011
|
approvalRequestId,
|
|
29016
|
-
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29017
|
-
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29018
|
-
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29019
|
-
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29020
|
-
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29012
|
+
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _499 => _499.dialogId]), () => ( null)),
|
|
29013
|
+
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _500 => _500.ticketId]), () => ( null)),
|
|
29014
|
+
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _501 => _501.approvalType]), () => ( null)),
|
|
29015
|
+
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _502 => _502.resolution]), () => ( null)),
|
|
29016
|
+
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _503 => _503.resolvedByName]), () => ( null)),
|
|
29021
29017
|
toolCalls
|
|
29022
29018
|
};
|
|
29023
29019
|
}
|
|
@@ -29066,7 +29062,7 @@ function ApprovalRequestNotificationTile({
|
|
|
29066
29062
|
const [pinned, setPinned] = _react.useState.call(void 0, defaultExpanded);
|
|
29067
29063
|
const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
|
|
29068
29064
|
const approval = getApprovalMeta(notification);
|
|
29069
|
-
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess',
|
|
29065
|
+
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _504 => _504.resolution]));
|
|
29070
29066
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
29071
29067
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
29072
29068
|
const { innerRef, containerStyle } = useCollapsible({ expanded });
|
|
@@ -29319,7 +29315,7 @@ function TimeTrackerPanel({
|
|
|
29319
29315
|
error: showFieldError ? "Assign a ticket or add notes to finish" : void 0,
|
|
29320
29316
|
disableClientFilter: !!onTicketSearch,
|
|
29321
29317
|
onInputChange: (value, reason) => {
|
|
29322
|
-
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall',
|
|
29318
|
+
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _505 => _505(value)]);
|
|
29323
29319
|
}
|
|
29324
29320
|
}
|
|
29325
29321
|
)
|
|
@@ -29399,7 +29395,7 @@ function LastEntryRow({ entry, onClick }) {
|
|
|
29399
29395
|
{
|
|
29400
29396
|
variant: "outline",
|
|
29401
29397
|
size: "icon",
|
|
29402
|
-
onClick: () => _optionalChain([onClick, 'optionalCall',
|
|
29398
|
+
onClick: () => _optionalChain([onClick, 'optionalCall', _506 => _506(entry)]),
|
|
29403
29399
|
disabled: !onClick,
|
|
29404
29400
|
"aria-label": `Open entry: ${entry.title}`,
|
|
29405
29401
|
className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
|
|
@@ -29443,9 +29439,9 @@ function HeaderButton({
|
|
|
29443
29439
|
function TimeTrackerHeaderButton({ className, disabled }) {
|
|
29444
29440
|
const ctx = useOptionalTimeTracker();
|
|
29445
29441
|
const elapsedLabel = useTrackerClock({
|
|
29446
|
-
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
29447
|
-
runningSince: _optionalChain([ctx, 'optionalAccess',
|
|
29448
|
-
accumulatedMs: _optionalChain([ctx, 'optionalAccess',
|
|
29442
|
+
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _507 => _507.status]), () => ( "ready")),
|
|
29443
|
+
runningSince: _optionalChain([ctx, 'optionalAccess', _508 => _508.runningSince]),
|
|
29444
|
+
accumulatedMs: _optionalChain([ctx, 'optionalAccess', _509 => _509.accumulatedMs])
|
|
29449
29445
|
});
|
|
29450
29446
|
if (!ctx) return null;
|
|
29451
29447
|
const { isOpen, open, close, status } = ctx;
|
|
@@ -29727,15 +29723,15 @@ function TicketCard({
|
|
|
29727
29723
|
transition: sortable.transition
|
|
29728
29724
|
};
|
|
29729
29725
|
if (showNewMessage) style.borderColor = columnColor;
|
|
29730
|
-
const showDeviceRow = !!(_optionalChain([ticket, 'access',
|
|
29726
|
+
const showDeviceRow = !!(_optionalChain([ticket, 'access', _510 => _510.deviceHostnames, 'optionalAccess', _511 => _511.length]) || ticket.organizationName);
|
|
29731
29727
|
const deviceText = [
|
|
29732
|
-
_optionalChain([ticket, 'access',
|
|
29728
|
+
_optionalChain([ticket, 'access', _512 => _512.deviceHostnames, 'optionalAccess', _513 => _513.join, 'call', _514 => _514(", ")]),
|
|
29733
29729
|
ticket.organizationName
|
|
29734
29730
|
].filter(Boolean).join(", ");
|
|
29735
29731
|
const handleClick = (e) => {
|
|
29736
29732
|
if (sortable.isDragging) e.preventDefault();
|
|
29737
29733
|
};
|
|
29738
|
-
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access',
|
|
29734
|
+
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _515 => _515.assignees, 'optionalAccess', _516 => _516.length]) || renderAssignSlot);
|
|
29739
29735
|
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: [
|
|
29740
29736
|
ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29741
29737
|
_chunkZS2SBWBRcjs.Flag02Icon,
|
|
@@ -29744,7 +29740,7 @@ function TicketCard({
|
|
|
29744
29740
|
"aria-label": `Priority: ${ticket.priority}`
|
|
29745
29741
|
}
|
|
29746
29742
|
),
|
|
29747
|
-
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access',
|
|
29743
|
+
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _517 => _517.assignees, 'optionalAccess', _518 => _518.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
|
|
29748
29744
|
ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29749
29745
|
SquareAvatar,
|
|
29750
29746
|
{
|
|
@@ -29775,7 +29771,7 @@ function TicketCard({
|
|
|
29775
29771
|
] }),
|
|
29776
29772
|
rightSection
|
|
29777
29773
|
] }),
|
|
29778
|
-
_optionalChain([ticket, 'access',
|
|
29774
|
+
_optionalChain([ticket, 'access', _519 => _519.tags, 'optionalAccess', _520 => _520.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
|
|
29779
29775
|
timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
|
|
29780
29776
|
/* @__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 }) }),
|
|
29781
29777
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
|
|
@@ -29975,7 +29971,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
29975
29971
|
const observer = new IntersectionObserver(
|
|
29976
29972
|
(entries) => {
|
|
29977
29973
|
if (entries.some((e) => e.isIntersecting)) {
|
|
29978
|
-
_optionalChain([loadMoreRef, 'access',
|
|
29974
|
+
_optionalChain([loadMoreRef, 'access', _521 => _521.current, 'optionalCall', _522 => _522(columnIdRef.current)]);
|
|
29979
29975
|
}
|
|
29980
29976
|
},
|
|
29981
29977
|
{ root, rootMargin: loadMoreRootMargin }
|
|
@@ -30005,7 +30001,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30005
30001
|
ticket: t,
|
|
30006
30002
|
columnId: column.id,
|
|
30007
30003
|
columnColor: column.color,
|
|
30008
|
-
href: _optionalChain([getTicketHref, 'optionalCall',
|
|
30004
|
+
href: _optionalChain([getTicketHref, 'optionalCall', _523 => _523(t.id)]),
|
|
30009
30005
|
renderAssignSlot,
|
|
30010
30006
|
onApprove,
|
|
30011
30007
|
onReject,
|
|
@@ -30039,7 +30035,7 @@ function EmptyState2() {
|
|
|
30039
30035
|
// src/components/features/board/use-board-collapse.ts
|
|
30040
30036
|
|
|
30041
30037
|
function useBoardCollapse(storageKey) {
|
|
30042
|
-
const [persisted, setPersisted] =
|
|
30038
|
+
const [persisted, setPersisted] = _chunkG56GYN7Zcjs.useLocalStorage.call(void 0,
|
|
30043
30039
|
_nullishCoalesce(storageKey, () => ( "__board_collapse_unused__")),
|
|
30044
30040
|
{}
|
|
30045
30041
|
);
|
|
@@ -30089,7 +30085,7 @@ function Board({
|
|
|
30089
30085
|
onThumbPointerDown,
|
|
30090
30086
|
onThumbPointerMove,
|
|
30091
30087
|
onThumbPointerUp
|
|
30092
|
-
} =
|
|
30088
|
+
} = _chunkG56GYN7Zcjs.useHorizontalScrollbar.call(void 0, );
|
|
30093
30089
|
const [items, setItems] = React96.useState(columns);
|
|
30094
30090
|
const isDraggingRef = React96.useRef(false);
|
|
30095
30091
|
React96.useEffect(() => {
|
|
@@ -30105,17 +30101,17 @@ function Board({
|
|
|
30105
30101
|
const pointer = _core.pointerWithin.call(void 0, args);
|
|
30106
30102
|
const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
|
|
30107
30103
|
const ticketHit = intersections.find(
|
|
30108
|
-
(c) => _optionalChain([c, 'access',
|
|
30104
|
+
(c) => _optionalChain([c, 'access', _524 => _524.data, 'optionalAccess', _525 => _525.droppableContainer, 'optionalAccess', _526 => _526.data, 'optionalAccess', _527 => _527.current, 'optionalAccess', _528 => _528.type]) === "ticket"
|
|
30109
30105
|
);
|
|
30110
30106
|
if (ticketHit) return [ticketHit];
|
|
30111
30107
|
const columnHit = intersections.find(
|
|
30112
|
-
(c) => _optionalChain([c, 'access',
|
|
30108
|
+
(c) => _optionalChain([c, 'access', _529 => _529.data, 'optionalAccess', _530 => _530.droppableContainer, 'optionalAccess', _531 => _531.data, 'optionalAccess', _532 => _532.current, 'optionalAccess', _533 => _533.type]) === "column"
|
|
30113
30109
|
);
|
|
30114
30110
|
if (columnHit) {
|
|
30115
|
-
const columnId = _optionalChain([columnHit, 'access',
|
|
30111
|
+
const columnId = _optionalChain([columnHit, 'access', _534 => _534.data, 'optionalAccess', _535 => _535.droppableContainer, 'optionalAccess', _536 => _536.data, 'optionalAccess', _537 => _537.current, 'optionalAccess', _538 => _538.columnId]);
|
|
30116
30112
|
const ticketsInColumn = args.droppableContainers.filter((c) => {
|
|
30117
30113
|
const d = c.data.current;
|
|
30118
|
-
return _optionalChain([d, 'optionalAccess',
|
|
30114
|
+
return _optionalChain([d, 'optionalAccess', _539 => _539.type]) === "ticket" && d.columnId === columnId;
|
|
30119
30115
|
});
|
|
30120
30116
|
if (ticketsInColumn.length > 0) {
|
|
30121
30117
|
const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
|
|
@@ -30140,20 +30136,20 @@ function Board({
|
|
|
30140
30136
|
const overId = String(over.id);
|
|
30141
30137
|
if (activeId === overId) return;
|
|
30142
30138
|
const overData = over.data.current;
|
|
30143
|
-
const fromColumnId = _optionalChain([locate, 'call',
|
|
30144
|
-
const toColumnId = _optionalChain([overData, 'optionalAccess',
|
|
30139
|
+
const fromColumnId = _optionalChain([locate, 'call', _540 => _540(items, activeId), 'optionalAccess', _541 => _541.columnId]);
|
|
30140
|
+
const toColumnId = _optionalChain([overData, 'optionalAccess', _542 => _542.columnId]);
|
|
30145
30141
|
if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
|
|
30146
30142
|
const origin = dragOriginRef.current;
|
|
30147
|
-
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess',
|
|
30143
|
+
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _543 => _543.fromColumnId]) === toColumnId;
|
|
30148
30144
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
30149
|
-
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess',
|
|
30150
|
-
if (_optionalChain([targetCol, 'optionalAccess',
|
|
30145
|
+
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _544 => _544.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
|
|
30146
|
+
if (_optionalChain([targetCol, 'optionalAccess', _545 => _545.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
|
|
30151
30147
|
setItems((prev) => {
|
|
30152
30148
|
const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
|
|
30153
30149
|
const toCol = prev.find((c) => c.id === toColumnId);
|
|
30154
30150
|
if (fromIndex < 0 || !toCol) return prev;
|
|
30155
30151
|
let toIndex;
|
|
30156
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
30152
|
+
if (_optionalChain([overData, 'optionalAccess', _546 => _546.type]) === "column") {
|
|
30157
30153
|
toIndex = toCol.tickets.length;
|
|
30158
30154
|
} else {
|
|
30159
30155
|
const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
|
|
@@ -30195,14 +30191,14 @@ function Board({
|
|
|
30195
30191
|
const toColumnId = located.columnId;
|
|
30196
30192
|
const isCrossColumn = origin.fromColumnId !== toColumnId;
|
|
30197
30193
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
30198
|
-
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess',
|
|
30194
|
+
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _547 => _547.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _548 => _548.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
|
|
30199
30195
|
setItems(columns);
|
|
30200
30196
|
return;
|
|
30201
30197
|
}
|
|
30202
30198
|
let finalIndex = located.index;
|
|
30203
|
-
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access',
|
|
30199
|
+
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _549 => _549.find, 'call', _550 => _550((c) => c.id === toColumnId), 'optionalAccess', _551 => _551.tickets]), () => ( []));
|
|
30204
30200
|
const overData = over.data.current;
|
|
30205
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
30201
|
+
if (_optionalChain([overData, 'optionalAccess', _552 => _552.type]) === "ticket") {
|
|
30206
30202
|
const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
|
|
30207
30203
|
if (overIndex >= 0 && overIndex !== located.index) {
|
|
30208
30204
|
finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
|
|
@@ -30222,8 +30218,8 @@ function Board({
|
|
|
30222
30218
|
ticketId: origin.ticketId,
|
|
30223
30219
|
fromColumnId: origin.fromColumnId,
|
|
30224
30220
|
toColumnId,
|
|
30225
|
-
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
30226
|
-
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
30221
|
+
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _553 => _553[finalIndex - 1], 'optionalAccess', _554 => _554.id]), () => ( null)),
|
|
30222
|
+
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _555 => _555[finalIndex + 1], 'optionalAccess', _556 => _556.id]), () => ( null))
|
|
30227
30223
|
});
|
|
30228
30224
|
};
|
|
30229
30225
|
const handleDragCancel = () => {
|
|
@@ -30252,8 +30248,8 @@ function Board({
|
|
|
30252
30248
|
children: items.map((column, i) => {
|
|
30253
30249
|
const prev = items[i - 1];
|
|
30254
30250
|
const next = items[i + 1];
|
|
30255
|
-
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess',
|
|
30256
|
-
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess',
|
|
30251
|
+
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _557 => _557.system]));
|
|
30252
|
+
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _558 => _558.system]));
|
|
30257
30253
|
const showGap = i > 0 && !joinLeft;
|
|
30258
30254
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React96.Fragment, { children: [
|
|
30259
30255
|
showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
|
|
@@ -30306,7 +30302,7 @@ function Board({
|
|
|
30306
30302
|
{
|
|
30307
30303
|
ticket: activeTicket.ticket,
|
|
30308
30304
|
columnId: activeTicket.columnId,
|
|
30309
|
-
columnColor: _optionalChain([items, 'access',
|
|
30305
|
+
columnColor: _optionalChain([items, 'access', _559 => _559.find, 'call', _560 => _560((c) => c.id === activeTicket.columnId), 'optionalAccess', _561 => _561.color]),
|
|
30310
30306
|
isOverlay: true
|
|
30311
30307
|
}
|
|
30312
30308
|
) : null })
|
|
@@ -30322,7 +30318,7 @@ function locate(cols, ticketId) {
|
|
|
30322
30318
|
return null;
|
|
30323
30319
|
}
|
|
30324
30320
|
function findIndexInColumn(cols, columnId, ticketId) {
|
|
30325
|
-
return _nullishCoalesce(_optionalChain([cols, 'access',
|
|
30321
|
+
return _nullishCoalesce(_optionalChain([cols, 'access', _562 => _562.find, 'call', _563 => _563((c) => c.id === columnId), 'optionalAccess', _564 => _564.tickets, 'access', _565 => _565.findIndex, 'call', _566 => _566((t) => t.id === ticketId)]), () => ( -1));
|
|
30326
30322
|
}
|
|
30327
30323
|
|
|
30328
30324
|
// src/components/features/board/types.ts
|
|
@@ -30570,7 +30566,7 @@ function Header2({ config, platform }) {
|
|
|
30570
30566
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
30571
30567
|
"flex justify-start w-full",
|
|
30572
30568
|
"font-bold text-[16px] leading-none tracking-[-0.32px]",
|
|
30573
|
-
index < (_nullishCoalesce(_optionalChain([item, 'access',
|
|
30569
|
+
index < (_nullishCoalesce(_optionalChain([item, 'access', _567 => _567.children, 'optionalAccess', _568 => _568.length]), () => ( 0))) - 1 && "mb-1",
|
|
30574
30570
|
"text-ods-text-primary",
|
|
30575
30571
|
// All dropdown items use primary text color
|
|
30576
30572
|
child.isActive && "bg-ods-bg-hover"
|
|
@@ -30662,7 +30658,7 @@ function Header2({ config, platform }) {
|
|
|
30662
30658
|
style: config.style,
|
|
30663
30659
|
children: [
|
|
30664
30660
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
30665
|
-
_optionalChain([config, 'access',
|
|
30661
|
+
_optionalChain([config, 'access', _569 => _569.actions, 'optionalAccess', _570 => _570.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
|
|
30666
30662
|
/* @__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 })
|
|
30667
30663
|
] }),
|
|
30668
30664
|
config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -30679,7 +30675,7 @@ function Header2({ config, platform }) {
|
|
|
30679
30675
|
}
|
|
30680
30676
|
),
|
|
30681
30677
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
|
|
30682
|
-
_optionalChain([config, 'access',
|
|
30678
|
+
_optionalChain([config, 'access', _571 => _571.actions, 'optionalAccess', _572 => _572.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
|
|
30683
30679
|
config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30684
30680
|
_chunkFQOTC3UUcjs.Button,
|
|
30685
30681
|
{
|
|
@@ -30687,10 +30683,10 @@ function Header2({ config, platform }) {
|
|
|
30687
30683
|
size: "icon",
|
|
30688
30684
|
className: "flex md:hidden",
|
|
30689
30685
|
onClick: () => {
|
|
30690
|
-
_optionalChain([config, 'access',
|
|
30686
|
+
_optionalChain([config, 'access', _573 => _573.mobile, 'optionalAccess', _574 => _574.onToggle, 'optionalCall', _575 => _575()]);
|
|
30691
30687
|
},
|
|
30692
|
-
"aria-label": _optionalChain([config, 'access',
|
|
30693
|
-
leftIcon: _optionalChain([config, 'access',
|
|
30688
|
+
"aria-label": _optionalChain([config, 'access', _576 => _576.mobile, 'optionalAccess', _577 => _577.isOpen]) ? "Close menu" : "Open menu",
|
|
30689
|
+
leftIcon: _optionalChain([config, 'access', _578 => _578.mobile, 'optionalAccess', _579 => _579.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Menu01Icon, {})
|
|
30694
30690
|
}
|
|
30695
30691
|
)
|
|
30696
30692
|
] })
|
|
@@ -30707,10 +30703,10 @@ function Header2({ config, platform }) {
|
|
|
30707
30703
|
// src/components/navigation/header-skeleton.tsx
|
|
30708
30704
|
|
|
30709
30705
|
function HeaderSkeleton({ config }) {
|
|
30710
|
-
const showNavigation = _optionalChain([config, 'optionalAccess',
|
|
30711
|
-
const showActions = _optionalChain([config, 'optionalAccess',
|
|
30712
|
-
const showMobileMenu = _optionalChain([config, 'optionalAccess',
|
|
30713
|
-
const isAdminHeader = _optionalChain([config, 'optionalAccess',
|
|
30706
|
+
const showNavigation = _optionalChain([config, 'optionalAccess', _580 => _580.navigation]) && config.navigation.items.length > 0;
|
|
30707
|
+
const showActions = _optionalChain([config, 'optionalAccess', _581 => _581.actions, 'optionalAccess', _582 => _582.right]) && config.actions.right.length > 0;
|
|
30708
|
+
const showMobileMenu = _optionalChain([config, 'optionalAccess', _583 => _583.mobile, 'optionalAccess', _584 => _584.enabled]);
|
|
30709
|
+
const isAdminHeader = _optionalChain([config, 'optionalAccess', _585 => _585.className, 'optionalAccess', _586 => _586.includes, 'call', _587 => _587("admin")]);
|
|
30714
30710
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30715
30711
|
"header",
|
|
30716
30712
|
{
|
|
@@ -30719,11 +30715,11 @@ function HeaderSkeleton({ config }) {
|
|
|
30719
30715
|
"bg-ods-card border-b border-ods-border backdrop-blur-sm",
|
|
30720
30716
|
"px-6 py-3",
|
|
30721
30717
|
"transition-opacity duration-300 ease-in-out",
|
|
30722
|
-
_optionalChain([config, 'optionalAccess',
|
|
30718
|
+
_optionalChain([config, 'optionalAccess', _588 => _588.className])
|
|
30723
30719
|
),
|
|
30724
30720
|
children: [
|
|
30725
30721
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
30726
|
-
isAdminHeader && _optionalChain([config, 'optionalAccess',
|
|
30722
|
+
isAdminHeader && _optionalChain([config, 'optionalAccess', _589 => _589.actions, 'optionalAccess', _590 => _590.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" }) }),
|
|
30727
30723
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
30728
30724
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
|
|
30729
30725
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
|
|
@@ -30731,8 +30727,8 @@ function HeaderSkeleton({ config }) {
|
|
|
30731
30727
|
] }),
|
|
30732
30728
|
showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
30733
30729
|
"hidden md:flex items-center gap-2",
|
|
30734
|
-
_optionalChain([config, 'optionalAccess',
|
|
30735
|
-
_optionalChain([config, 'optionalAccess',
|
|
30730
|
+
_optionalChain([config, 'optionalAccess', _591 => _591.navigation, 'optionalAccess', _592 => _592.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
|
|
30731
|
+
_optionalChain([config, 'optionalAccess', _593 => _593.navigation, 'optionalAccess', _594 => _594.position]) === "right" && "ml-auto mr-4"
|
|
30736
30732
|
), children: [
|
|
30737
30733
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
|
|
30738
30734
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
|
|
@@ -30780,7 +30776,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
30780
30776
|
_react.useEffect.call(void 0, () => {
|
|
30781
30777
|
const handleKeyDown = (e) => {
|
|
30782
30778
|
if (e.key === "Escape" && isOpen) {
|
|
30783
|
-
_optionalChain([config, 'access',
|
|
30779
|
+
_optionalChain([config, 'access', _595 => _595.onClose, 'optionalCall', _596 => _596()]);
|
|
30784
30780
|
}
|
|
30785
30781
|
};
|
|
30786
30782
|
if (isOpen) {
|
|
@@ -30797,7 +30793,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
30797
30793
|
if (item.onClick) {
|
|
30798
30794
|
item.onClick();
|
|
30799
30795
|
}
|
|
30800
|
-
_optionalChain([config, 'access',
|
|
30796
|
+
_optionalChain([config, 'access', _597 => _597.onClose, 'optionalCall', _598 => _598()]);
|
|
30801
30797
|
};
|
|
30802
30798
|
if (item.href) {
|
|
30803
30799
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -30892,7 +30888,7 @@ _chunkFQOTC3UUcjs.init_button2.call(void 0, );
|
|
|
30892
30888
|
function SlidingSidebar({ config }) {
|
|
30893
30889
|
const [expandedItems, setExpandedItems] = _react.useState.call(void 0, /* @__PURE__ */ new Set());
|
|
30894
30890
|
const [mounted, setMounted] = _react.useState.call(void 0, false);
|
|
30895
|
-
const headerHeight =
|
|
30891
|
+
const headerHeight = _chunkG56GYN7Zcjs.useHeaderHeight.call(void 0, );
|
|
30896
30892
|
_react.useEffect.call(void 0, () => {
|
|
30897
30893
|
setMounted(true);
|
|
30898
30894
|
}, []);
|
|
@@ -30967,7 +30963,7 @@ function SlidingSidebar({ config }) {
|
|
|
30967
30963
|
variant: "transparent",
|
|
30968
30964
|
size: "default",
|
|
30969
30965
|
onClick: () => {
|
|
30970
|
-
_optionalChain([item, 'access',
|
|
30966
|
+
_optionalChain([item, 'access', _599 => _599.onClick, 'optionalCall', _600 => _600()]);
|
|
30971
30967
|
config.onClose();
|
|
30972
30968
|
},
|
|
30973
30969
|
leftIcon: item.icon,
|
|
@@ -30990,7 +30986,7 @@ function SlidingSidebar({ config }) {
|
|
|
30990
30986
|
variant: "transparent",
|
|
30991
30987
|
size: "default",
|
|
30992
30988
|
onClick: () => {
|
|
30993
|
-
_optionalChain([item, 'access',
|
|
30989
|
+
_optionalChain([item, 'access', _601 => _601.onClick, 'optionalCall', _602 => _602()]);
|
|
30994
30990
|
config.onClose();
|
|
30995
30991
|
},
|
|
30996
30992
|
leftIcon: item.icon,
|
|
@@ -31117,7 +31113,7 @@ function StickySectionNav({
|
|
|
31117
31113
|
] });
|
|
31118
31114
|
}
|
|
31119
31115
|
function useSectionNavigation(sections, options) {
|
|
31120
|
-
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access',
|
|
31116
|
+
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _603 => _603[0], 'optionalAccess', _604 => _604.id]) || "");
|
|
31121
31117
|
const isScrollingFromClick = _react.useRef.call(void 0, false);
|
|
31122
31118
|
const { offset: offset2 = 100 } = options || {};
|
|
31123
31119
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
@@ -31125,7 +31121,7 @@ function useSectionNavigation(sections, options) {
|
|
|
31125
31121
|
if (!targetElement) return;
|
|
31126
31122
|
isScrollingFromClick.current = true;
|
|
31127
31123
|
setActiveSection(sectionId);
|
|
31128
|
-
|
|
31124
|
+
_chunkG56GYN7Zcjs.scrollElementIntoView.call(void 0, targetElement, { headerOffset: offset2 });
|
|
31129
31125
|
setTimeout(() => {
|
|
31130
31126
|
isScrollingFromClick.current = false;
|
|
31131
31127
|
}, 500);
|
|
@@ -31141,7 +31137,7 @@ function useSectionNavigation(sections, options) {
|
|
|
31141
31137
|
const handleScroll = () => {
|
|
31142
31138
|
if (isScrollingFromClick.current) return;
|
|
31143
31139
|
const scrollPosition = window.scrollY + offset2 + 50;
|
|
31144
|
-
let currentSection = _optionalChain([sections, 'access',
|
|
31140
|
+
let currentSection = _optionalChain([sections, 'access', _605 => _605[0], 'optionalAccess', _606 => _606.id]) || "";
|
|
31145
31141
|
for (let i = sections.length - 1; i >= 0; i--) {
|
|
31146
31142
|
const element = document.getElementById(sections[i].id);
|
|
31147
31143
|
if (element && scrollPosition >= element.offsetTop) {
|
|
@@ -31321,10 +31317,10 @@ var MINIMIZED_WIDTH = 56;
|
|
|
31321
31317
|
var EXPANDED_WIDTH = 224;
|
|
31322
31318
|
var STORAGE_KEY = "of.navigationSidebar.minimized";
|
|
31323
31319
|
function NavigationSidebar({ config, disabled = false }) {
|
|
31324
|
-
const isMdUp = _nullishCoalesce(
|
|
31325
|
-
const isLgUp = _nullishCoalesce(
|
|
31320
|
+
const isMdUp = _nullishCoalesce(_chunkG56GYN7Zcjs.useMdUp.call(void 0, ), () => ( false));
|
|
31321
|
+
const isLgUp = _nullishCoalesce(_chunkG56GYN7Zcjs.useLgUp.call(void 0, ), () => ( false));
|
|
31326
31322
|
const isTablet = isMdUp && !isLgUp;
|
|
31327
|
-
const [desktopMinimized, setDesktopMinimized] =
|
|
31323
|
+
const [desktopMinimized, setDesktopMinimized] = _chunkG56GYN7Zcjs.useLocalStorage.call(void 0,
|
|
31328
31324
|
STORAGE_KEY,
|
|
31329
31325
|
_nullishCoalesce(config.minimized, () => ( false))
|
|
31330
31326
|
);
|
|
@@ -31342,7 +31338,7 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
31342
31338
|
} else {
|
|
31343
31339
|
setDesktopMinimized((prev) => !prev);
|
|
31344
31340
|
}
|
|
31345
|
-
_optionalChain([config, 'access',
|
|
31341
|
+
_optionalChain([config, 'access', _607 => _607.onToggleMinimized, 'optionalCall', _608 => _608()]);
|
|
31346
31342
|
}, [isTablet, setDesktopMinimized, config]);
|
|
31347
31343
|
const closeOverlay = _react.useCallback.call(void 0, () => {
|
|
31348
31344
|
setTabletMinimized(true);
|
|
@@ -31356,11 +31352,11 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
31356
31352
|
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
31357
31353
|
}, [isOverlayOpen, closeOverlay]);
|
|
31358
31354
|
const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
|
|
31359
|
-
_optionalChain([event, 'optionalAccess',
|
|
31355
|
+
_optionalChain([event, 'optionalAccess', _609 => _609.stopPropagation, 'call', _610 => _610()]);
|
|
31360
31356
|
if (item.onClick) {
|
|
31361
31357
|
item.onClick();
|
|
31362
31358
|
} else if (item.path) {
|
|
31363
|
-
_optionalChain([config, 'access',
|
|
31359
|
+
_optionalChain([config, 'access', _611 => _611.onNavigate, 'optionalCall', _612 => _612(item.path)]);
|
|
31364
31360
|
}
|
|
31365
31361
|
if (isTablet) setTabletMinimized(true);
|
|
31366
31362
|
}, [config, isTablet]);
|
|
@@ -31480,11 +31476,11 @@ function HeaderGlobalSearch({
|
|
|
31480
31476
|
};
|
|
31481
31477
|
const handleSubmit = (e) => {
|
|
31482
31478
|
e.preventDefault();
|
|
31483
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
31479
|
+
_optionalChain([onSubmit, 'optionalCall', _613 => _613(currentValue)]);
|
|
31484
31480
|
};
|
|
31485
31481
|
const handleKeyDown = (e) => {
|
|
31486
31482
|
if (e.key === "Enter") {
|
|
31487
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
31483
|
+
_optionalChain([onSubmit, 'optionalCall', _614 => _614(currentValue)]);
|
|
31488
31484
|
}
|
|
31489
31485
|
};
|
|
31490
31486
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -31578,8 +31574,8 @@ function HeaderOrganizationFilter({
|
|
|
31578
31574
|
className
|
|
31579
31575
|
}) {
|
|
31580
31576
|
const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
|
|
31581
|
-
const displayName = _optionalChain([selectedOrg, 'optionalAccess',
|
|
31582
|
-
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess',
|
|
31577
|
+
const displayName = _optionalChain([selectedOrg, 'optionalAccess', _615 => _615.name]) || "All Organizations";
|
|
31578
|
+
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _616 => _616.deviceCount]), () => ( totalDeviceCount));
|
|
31583
31579
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkFQOTC3UUcjs.DropdownMenu, { children: [
|
|
31584
31580
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFQOTC3UUcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31585
31581
|
"button",
|
|
@@ -31604,11 +31600,11 @@ function HeaderOrganizationFilter({
|
|
|
31604
31600
|
}
|
|
31605
31601
|
) }),
|
|
31606
31602
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkFQOTC3UUcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
|
|
31607
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFQOTC3UUcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
31603
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFQOTC3UUcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _617 => _617("")]), children: "All Organizations" }),
|
|
31608
31604
|
organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31609
31605
|
_chunkFQOTC3UUcjs.DropdownMenuItem,
|
|
31610
31606
|
{
|
|
31611
|
-
onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
31607
|
+
onClick: () => _optionalChain([onOrgChange, 'optionalCall', _618 => _618(org.id)]),
|
|
31612
31608
|
children: org.name
|
|
31613
31609
|
},
|
|
31614
31610
|
org.id
|
|
@@ -31643,7 +31639,7 @@ var AppHeader = React112.default.memo(function AppHeader2({
|
|
|
31643
31639
|
onToggleMobileMenu,
|
|
31644
31640
|
disabled = false
|
|
31645
31641
|
}) {
|
|
31646
|
-
const isMdUp = _nullishCoalesce(
|
|
31642
|
+
const isMdUp = _nullishCoalesce(_chunkG56GYN7Zcjs.useMdUp.call(void 0, ), () => ( false));
|
|
31647
31643
|
const dimmedClass = disabled ? "pointer-events-none opacity-50" : "";
|
|
31648
31644
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31649
31645
|
"header",
|
|
@@ -31795,9 +31791,9 @@ function NotificationsHeaderButton({
|
|
|
31795
31791
|
dimmedClass
|
|
31796
31792
|
}) {
|
|
31797
31793
|
const ctx = useOptionalNotifications();
|
|
31798
|
-
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
31799
|
-
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
31800
|
-
const onClick = _optionalChain([ctx, 'optionalAccess',
|
|
31794
|
+
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _619 => _619.unreadCount]), () => ( fallbackUnreadCount))) > 0;
|
|
31795
|
+
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _620 => _620.isOpen]), () => ( false));
|
|
31796
|
+
const onClick = _optionalChain([ctx, 'optionalAccess', _621 => _621.toggle]);
|
|
31801
31797
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31802
31798
|
HeaderButton,
|
|
31803
31799
|
{
|
|
@@ -31861,7 +31857,7 @@ var MobileBurgerMenu = React112.default.memo(function MobileBurgerMenu2({
|
|
|
31861
31857
|
if (item.onClick) {
|
|
31862
31858
|
item.onClick();
|
|
31863
31859
|
} else if (item.path) {
|
|
31864
|
-
_optionalChain([config, 'access',
|
|
31860
|
+
_optionalChain([config, 'access', _622 => _622.onNavigate, 'optionalCall', _623 => _623(item.path)]);
|
|
31865
31861
|
}
|
|
31866
31862
|
onClose();
|
|
31867
31863
|
}, [config, onClose]);
|
|
@@ -32104,7 +32100,7 @@ var AppLayoutDrawerRoot = ({
|
|
|
32104
32100
|
const handleOpenChange = React105.useCallback(
|
|
32105
32101
|
(next) => {
|
|
32106
32102
|
if (!isControlled) setInternalOpen(next);
|
|
32107
|
-
_optionalChain([onOpenChange, 'optionalCall',
|
|
32103
|
+
_optionalChain([onOpenChange, 'optionalCall', _624 => _624(next)]);
|
|
32108
32104
|
},
|
|
32109
32105
|
[isControlled, onOpenChange]
|
|
32110
32106
|
);
|
|
@@ -32485,10 +32481,10 @@ var AppLayoutDrawerContent = React105.forwardRef(
|
|
|
32485
32481
|
),
|
|
32486
32482
|
style,
|
|
32487
32483
|
onInteractOutside: (event) => {
|
|
32488
|
-
_optionalChain([onInteractOutside, 'optionalCall',
|
|
32484
|
+
_optionalChain([onInteractOutside, 'optionalCall', _625 => _625(event)]);
|
|
32489
32485
|
if (event.defaultPrevented) return;
|
|
32490
32486
|
const target = event.target;
|
|
32491
|
-
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess',
|
|
32487
|
+
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _626 => _626.contains, 'call', _627 => _627(target)]);
|
|
32492
32488
|
if (!isInsideContainer) {
|
|
32493
32489
|
event.preventDefault();
|
|
32494
32490
|
return;
|
|
@@ -32853,7 +32849,7 @@ var ToolBadge = ({
|
|
|
32853
32849
|
}) => {
|
|
32854
32850
|
const label = getToolLabel(toolType);
|
|
32855
32851
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex items-center gap-1 text-ods-text-secondary", className), children: [
|
|
32856
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32852
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkG56GYN7Zcjs.ToolIcon, { toolType, className: iconClassName, size: 16 }),
|
|
32857
32853
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: label })
|
|
32858
32854
|
] });
|
|
32859
32855
|
};
|
|
@@ -32901,7 +32897,7 @@ var ShellTypeBadge = ({
|
|
|
32901
32897
|
className,
|
|
32902
32898
|
iconClassName
|
|
32903
32899
|
}) => {
|
|
32904
|
-
const normalizedType = _optionalChain([shellType, 'optionalAccess',
|
|
32900
|
+
const normalizedType = _optionalChain([shellType, 'optionalAccess', _628 => _628.toUpperCase, 'call', _629 => _629()]);
|
|
32905
32901
|
const label = getShellLabel(normalizedType);
|
|
32906
32902
|
const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
|
|
32907
32903
|
const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
|
|
@@ -33225,7 +33221,7 @@ function OnboardingWalkthrough({
|
|
|
33225
33221
|
isStepSkipped,
|
|
33226
33222
|
allStepsComplete,
|
|
33227
33223
|
markMultipleComplete
|
|
33228
|
-
} =
|
|
33224
|
+
} = _chunkG56GYN7Zcjs.useOnboardingState.call(void 0, storageKey);
|
|
33229
33225
|
const hasAutoMarkedRef = _react.useRef.call(void 0, false);
|
|
33230
33226
|
const autoMarkingInProgressRef = _react.useRef.call(void 0, false);
|
|
33231
33227
|
const lastCompletionStatusRef = _react.useRef.call(void 0, null);
|
|
@@ -33288,12 +33284,12 @@ function OnboardingWalkthrough({
|
|
|
33288
33284
|
}
|
|
33289
33285
|
}, [state.completedSteps, markComplete]);
|
|
33290
33286
|
const handleStepSkip = (step) => {
|
|
33291
|
-
_optionalChain([step, 'access',
|
|
33287
|
+
_optionalChain([step, 'access', _630 => _630.onSkip, 'optionalCall', _631 => _631()]);
|
|
33292
33288
|
markSkipped(step.id);
|
|
33293
33289
|
};
|
|
33294
33290
|
const handleDismiss = () => {
|
|
33295
33291
|
dismissOnboarding();
|
|
33296
|
-
_optionalChain([onDismiss, 'optionalCall',
|
|
33292
|
+
_optionalChain([onDismiss, 'optionalCall', _632 => _632()]);
|
|
33297
33293
|
};
|
|
33298
33294
|
if (state.dismissed) {
|
|
33299
33295
|
return null;
|
|
@@ -33423,7 +33419,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
33423
33419
|
onKeyDown: (e) => {
|
|
33424
33420
|
if (e.key === "Enter" || e.key === " ") {
|
|
33425
33421
|
e.preventDefault();
|
|
33426
|
-
_optionalChain([onClick, 'optionalCall',
|
|
33422
|
+
_optionalChain([onClick, 'optionalCall', _633 => _633()]);
|
|
33427
33423
|
}
|
|
33428
33424
|
},
|
|
33429
33425
|
children: [
|
|
@@ -33432,7 +33428,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
33432
33428
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-5 text-white", children: log.title }),
|
|
33433
33429
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
33434
33430
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['Azeret_Mono'] font-normal text-[13px] leading-4 text-ods-text-secondary uppercase tracking-wider", children: formatTimestamp(log.timestamp) }),
|
|
33435
|
-
log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33431
|
+
log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkG56GYN7Zcjs.ToolIcon, { toolType: log.toolType, size: 16 })
|
|
33436
33432
|
] })
|
|
33437
33433
|
] })
|
|
33438
33434
|
]
|
|
@@ -33524,7 +33520,7 @@ var LogsList = React109.forwardRef(({
|
|
|
33524
33520
|
log,
|
|
33525
33521
|
isLast: index === logs.length - 1,
|
|
33526
33522
|
showConnector,
|
|
33527
|
-
onClick: () => _optionalChain([onLogClick, 'optionalCall',
|
|
33523
|
+
onClick: () => _optionalChain([onLogClick, 'optionalCall', _634 => _634(log)])
|
|
33528
33524
|
},
|
|
33529
33525
|
log.id
|
|
33530
33526
|
))
|
|
@@ -33569,7 +33565,7 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
|
|
|
33569
33565
|
}
|
|
33570
33566
|
function ServiceCardRowItem({ row }) {
|
|
33571
33567
|
const [revealed, setRevealed] = _react.useState.call(void 0, false);
|
|
33572
|
-
const { copy, copied } =
|
|
33568
|
+
const { copy, copied } = _chunkG56GYN7Zcjs.useCopyToClipboard.call(void 0, );
|
|
33573
33569
|
const actions = _react.useMemo.call(void 0, () => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }), [row]);
|
|
33574
33570
|
const displayValue = row.isSecret ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MaskedValue, { value: row.value, isRevealed: revealed }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: row.value });
|
|
33575
33571
|
const handleCopy = () => copy(_nullishCoalesce(row.copyValue, () => ( row.value)));
|
|
@@ -33625,7 +33621,7 @@ var Slider = React111.forwardRef(
|
|
|
33625
33621
|
({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
|
|
33626
33622
|
const handleChange = (e) => {
|
|
33627
33623
|
const newValue = [Number(e.target.value)];
|
|
33628
|
-
_optionalChain([onValueChange, 'optionalCall',
|
|
33624
|
+
_optionalChain([onValueChange, 'optionalCall', _635 => _635(newValue)]);
|
|
33629
33625
|
};
|
|
33630
33626
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33631
33627
|
"input",
|
|
@@ -34056,7 +34052,7 @@ function CursorPaginationSimple({
|
|
|
34056
34052
|
{
|
|
34057
34053
|
variant: "transparent",
|
|
34058
34054
|
size: "icon",
|
|
34059
|
-
onClick: () => _optionalChain([onPrevious, 'optionalCall',
|
|
34055
|
+
onClick: () => _optionalChain([onPrevious, 'optionalCall', _636 => _636("")]),
|
|
34060
34056
|
disabled: !hasPreviousPage || loading,
|
|
34061
34057
|
className: "h-8 w-8",
|
|
34062
34058
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -34068,7 +34064,7 @@ function CursorPaginationSimple({
|
|
|
34068
34064
|
{
|
|
34069
34065
|
variant: "transparent",
|
|
34070
34066
|
size: "icon",
|
|
34071
|
-
onClick: () => _optionalChain([onNext, 'optionalCall',
|
|
34067
|
+
onClick: () => _optionalChain([onNext, 'optionalCall', _637 => _637("")]),
|
|
34072
34068
|
disabled: !hasNextPage || loading,
|
|
34073
34069
|
className: "h-8 w-8",
|
|
34074
34070
|
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
|
|
@@ -34088,8 +34084,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
|
|
|
34088
34084
|
icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
|
|
34089
34085
|
title: _nullishCoalesce(message2, () => ( "No results found")),
|
|
34090
34086
|
description: message2 == null ? "Try adjusting your search or filters" : void 0,
|
|
34091
|
-
buttonLabel: _optionalChain([action, 'optionalAccess',
|
|
34092
|
-
onButtonClick: _optionalChain([action, 'optionalAccess',
|
|
34087
|
+
buttonLabel: _optionalChain([action, 'optionalAccess', _638 => _638.label]),
|
|
34088
|
+
onButtonClick: _optionalChain([action, 'optionalAccess', _639 => _639.onClick]),
|
|
34093
34089
|
className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
|
|
34094
34090
|
}
|
|
34095
34091
|
);
|
|
@@ -34110,7 +34106,7 @@ function TableColumnFilterDropdown({
|
|
|
34110
34106
|
placement = "bottom-start",
|
|
34111
34107
|
dropdownClassName = "min-w-[240px]"
|
|
34112
34108
|
}) {
|
|
34113
|
-
const activeCount = _optionalChain([filters, 'optionalAccess',
|
|
34109
|
+
const activeCount = _optionalChain([filters, 'optionalAccess', _640 => _640[columnKey], 'optionalAccess', _641 => _641.length]) || 0;
|
|
34114
34110
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34115
34111
|
FiltersDropdown,
|
|
34116
34112
|
{
|
|
@@ -34153,7 +34149,7 @@ function TableColumnFilterDropdown({
|
|
|
34153
34149
|
delete newFilters[columnKey];
|
|
34154
34150
|
onFilterChange(newFilters);
|
|
34155
34151
|
},
|
|
34156
|
-
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess',
|
|
34152
|
+
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _642 => _642[columnKey]]) || [] },
|
|
34157
34153
|
placement,
|
|
34158
34154
|
dropdownClassName
|
|
34159
34155
|
}
|
|
@@ -34228,7 +34224,7 @@ function TableHeader({
|
|
|
34228
34224
|
}
|
|
34229
34225
|
return sortDirection === "asc" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Arrow01UpIcon, { className: "w-4 h-4 text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Arrow01DownIcon, { className: "w-4 h-4 text-ods-accent" });
|
|
34230
34226
|
};
|
|
34231
|
-
const isLgUp = _nullishCoalesce(
|
|
34227
|
+
const isLgUp = _nullishCoalesce(_chunkG56GYN7Zcjs.useLgUp.call(void 0, ), () => ( false));
|
|
34232
34228
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
34233
34229
|
"div",
|
|
34234
34230
|
{
|
|
@@ -34450,7 +34446,7 @@ function TableRow({
|
|
|
34450
34446
|
const keys = column.key.split(".");
|
|
34451
34447
|
let value = item;
|
|
34452
34448
|
for (const key of keys) {
|
|
34453
|
-
value = _optionalChain([value, 'optionalAccess',
|
|
34449
|
+
value = _optionalChain([value, 'optionalAccess', _643 => _643[key]]);
|
|
34454
34450
|
}
|
|
34455
34451
|
if (value === null || value === void 0) {
|
|
34456
34452
|
return "-";
|
|
@@ -34520,7 +34516,7 @@ function TableRow({
|
|
|
34520
34516
|
// src/components/ui/table/table.tsx
|
|
34521
34517
|
|
|
34522
34518
|
function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
|
|
34523
|
-
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess',
|
|
34519
|
+
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _644 => _644.length])) || Boolean(renderRowActions);
|
|
34524
34520
|
const result = [...columns];
|
|
34525
34521
|
if (hasActions) {
|
|
34526
34522
|
const actionsColumn = {
|
|
@@ -34614,7 +34610,7 @@ function Table({
|
|
|
34614
34610
|
return rowKey(item);
|
|
34615
34611
|
}
|
|
34616
34612
|
const key = item[rowKey];
|
|
34617
|
-
return _optionalChain([key, 'optionalAccess',
|
|
34613
|
+
return _optionalChain([key, 'optionalAccess', _645 => _645.toString, 'call', _646 => _646()]) || index.toString();
|
|
34618
34614
|
};
|
|
34619
34615
|
const getRowClassName = (item, index) => {
|
|
34620
34616
|
if (typeof rowClassName === "function") {
|
|
@@ -34648,23 +34644,23 @@ function Table({
|
|
|
34648
34644
|
const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
|
|
34649
34645
|
const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
|
|
34650
34646
|
const sentinelRef = _react.useRef.call(void 0, null);
|
|
34651
|
-
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess',
|
|
34652
|
-
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess',
|
|
34647
|
+
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _647 => _647.onLoadMore]));
|
|
34648
|
+
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _648 => _648.onLoadMore]);
|
|
34653
34649
|
_react.useEffect.call(void 0, () => {
|
|
34654
|
-
if (!_optionalChain([infiniteScroll, 'optionalAccess',
|
|
34650
|
+
if (!_optionalChain([infiniteScroll, 'optionalAccess', _649 => _649.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
|
|
34655
34651
|
const sentinel = sentinelRef.current;
|
|
34656
34652
|
if (!sentinel) return;
|
|
34657
34653
|
const observer = new IntersectionObserver(
|
|
34658
34654
|
(entries) => {
|
|
34659
|
-
if (_optionalChain([entries, 'access',
|
|
34660
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
34655
|
+
if (_optionalChain([entries, 'access', _650 => _650[0], 'optionalAccess', _651 => _651.isIntersecting])) {
|
|
34656
|
+
_optionalChain([onLoadMoreRef, 'access', _652 => _652.current, 'optionalCall', _653 => _653()]);
|
|
34661
34657
|
}
|
|
34662
34658
|
},
|
|
34663
34659
|
{ rootMargin: "200px" }
|
|
34664
34660
|
);
|
|
34665
34661
|
observer.observe(sentinel);
|
|
34666
34662
|
return () => observer.disconnect();
|
|
34667
|
-
}, [_optionalChain([infiniteScroll, 'optionalAccess',
|
|
34663
|
+
}, [_optionalChain([infiniteScroll, 'optionalAccess', _654 => _654.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _655 => _655.isFetchingNextPage])]);
|
|
34668
34664
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
|
|
34669
34665
|
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: [
|
|
34670
34666
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
|
|
@@ -34735,7 +34731,7 @@ function Table({
|
|
|
34735
34731
|
},
|
|
34736
34732
|
getRowKey(item, index)
|
|
34737
34733
|
)),
|
|
34738
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
34734
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _656 => _656.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34739
34735
|
TableCardSkeleton,
|
|
34740
34736
|
{
|
|
34741
34737
|
columns,
|
|
@@ -34744,7 +34740,7 @@ function Table({
|
|
|
34744
34740
|
hasChevron: Boolean(rowHref)
|
|
34745
34741
|
}
|
|
34746
34742
|
),
|
|
34747
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
34743
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _657 => _657.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
|
|
34748
34744
|
!infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
34749
34745
|
"div",
|
|
34750
34746
|
{
|
|
@@ -35102,7 +35098,7 @@ function QueryReportTable({
|
|
|
35102
35098
|
);
|
|
35103
35099
|
const handleExport = () => {
|
|
35104
35100
|
exportToCSV(data, columns, exportFilename);
|
|
35105
|
-
_optionalChain([onExport, 'optionalCall',
|
|
35101
|
+
_optionalChain([onExport, 'optionalCall', _658 => _658()]);
|
|
35106
35102
|
};
|
|
35107
35103
|
const tableMinWidth = columns.length * (columnWidth + 16);
|
|
35108
35104
|
const {
|
|
@@ -35118,7 +35114,7 @@ function QueryReportTable({
|
|
|
35118
35114
|
onThumbPointerDown,
|
|
35119
35115
|
onThumbPointerMove,
|
|
35120
35116
|
onThumbPointerUp
|
|
35121
|
-
} =
|
|
35117
|
+
} = _chunkG56GYN7Zcjs.useHorizontalScrollbar.call(void 0, );
|
|
35122
35118
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col w-full", isCompact ? "gap-0" : "gap-6", className), children: [
|
|
35123
35119
|
!isCompact && (title || headerActions || showExport && data.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between pt-6", children: [
|
|
35124
35120
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "font-mono font-semibold text-[32px] leading-[40px] text-ods-text-primary", children: title }),
|
|
@@ -35275,7 +35271,7 @@ function DataTableColumnFilter({
|
|
|
35275
35271
|
align = "left"
|
|
35276
35272
|
}) {
|
|
35277
35273
|
const currentValue = column.getFilterValue();
|
|
35278
|
-
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess',
|
|
35274
|
+
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _659 => _659.length]), () => ( 0));
|
|
35279
35275
|
const sections = _react.useMemo.call(void 0,
|
|
35280
35276
|
() => [
|
|
35281
35277
|
{
|
|
@@ -35349,13 +35345,13 @@ function DataTableHeader({
|
|
|
35349
35345
|
onSortChange
|
|
35350
35346
|
}) {
|
|
35351
35347
|
const table = useDataTableContext();
|
|
35352
|
-
const isLgUp = _nullishCoalesce(
|
|
35348
|
+
const isLgUp = _nullishCoalesce(_chunkG56GYN7Zcjs.useLgUp.call(void 0, ), () => ( false));
|
|
35353
35349
|
const headerGroup = table.getHeaderGroups()[0];
|
|
35354
35350
|
if (!headerGroup) return null;
|
|
35355
35351
|
const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
|
|
35356
35352
|
if (header.isPlaceholder) return false;
|
|
35357
35353
|
if (isLgUp) return true;
|
|
35358
|
-
return Boolean(_optionalChain([header, 'access',
|
|
35354
|
+
return Boolean(_optionalChain([header, 'access', _660 => _660.column, 'access', _661 => _661.columnDef, 'access', _662 => _662.meta, 'optionalAccess', _663 => _663.filter]));
|
|
35359
35355
|
});
|
|
35360
35356
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35361
35357
|
"div",
|
|
@@ -35385,20 +35381,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
35385
35381
|
if (header.isPlaceholder) return null;
|
|
35386
35382
|
const column = header.column;
|
|
35387
35383
|
const meta = column.columnDef.meta;
|
|
35388
|
-
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess',
|
|
35389
|
-
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
35390
|
-
const canSort = _optionalChain([meta, 'optionalAccess',
|
|
35391
|
-
const sortDir = _optionalChain([sort, 'optionalAccess',
|
|
35384
|
+
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _664 => _664.filter]));
|
|
35385
|
+
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _665 => _665.align]), () => ( "left"));
|
|
35386
|
+
const canSort = _optionalChain([meta, 'optionalAccess', _666 => _666.sortable]) === true;
|
|
35387
|
+
const sortDir = _optionalChain([sort, 'optionalAccess', _667 => _667.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
|
|
35392
35388
|
if (!isLgUp && !hasFilter) return null;
|
|
35393
35389
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35394
35390
|
"div",
|
|
35395
35391
|
{
|
|
35396
35392
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
35397
35393
|
"flex items-stretch",
|
|
35398
|
-
isLgUp && (_optionalChain([meta, 'optionalAccess',
|
|
35399
|
-
_optionalChain([meta, 'optionalAccess',
|
|
35394
|
+
isLgUp && (_optionalChain([meta, 'optionalAccess', _668 => _668.width]) || "flex-1 min-w-0"),
|
|
35395
|
+
_optionalChain([meta, 'optionalAccess', _669 => _669.headerClassName]),
|
|
35400
35396
|
// Don't apply hide classes if column is filterable on tablet (keep filter accessible)
|
|
35401
|
-
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
35397
|
+
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _670 => _670.hideAt]))
|
|
35402
35398
|
),
|
|
35403
35399
|
children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35404
35400
|
DataTableColumnFilter,
|
|
@@ -35417,7 +35413,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
35417
35413
|
isLgUp && alignJustify(align),
|
|
35418
35414
|
canSort && "group cursor-pointer"
|
|
35419
35415
|
),
|
|
35420
|
-
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall',
|
|
35416
|
+
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _671 => _671(column.id)]) : void 0,
|
|
35421
35417
|
children: [
|
|
35422
35418
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
35423
35419
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -35482,7 +35478,7 @@ function DataTableSkeleton({
|
|
|
35482
35478
|
}) {
|
|
35483
35479
|
const table = useDataTableContext();
|
|
35484
35480
|
const columns = table.getVisibleFlatColumns();
|
|
35485
|
-
const firstColumnId = _optionalChain([columns, 'access',
|
|
35481
|
+
const firstColumnId = _optionalChain([columns, 'access', _672 => _672[0], 'optionalAccess', _673 => _673.id]);
|
|
35486
35482
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
35487
35483
|
"div",
|
|
35488
35484
|
{
|
|
@@ -35506,7 +35502,7 @@ function DataTableSkeleton({
|
|
|
35506
35502
|
{
|
|
35507
35503
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
35508
35504
|
"flex flex-col justify-center shrink-0",
|
|
35509
|
-
_optionalChain([meta, 'optionalAccess',
|
|
35505
|
+
_optionalChain([meta, 'optionalAccess', _674 => _674.width]) || "flex-1"
|
|
35510
35506
|
),
|
|
35511
35507
|
children: [
|
|
35512
35508
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
|
|
@@ -35555,7 +35551,7 @@ function DataTableRowImpl({
|
|
|
35555
35551
|
const handleClick = _react.useCallback.call(void 0,
|
|
35556
35552
|
(e) => {
|
|
35557
35553
|
const target = e.target;
|
|
35558
|
-
if (!_optionalChain([containerRef, 'access',
|
|
35554
|
+
if (!_optionalChain([containerRef, 'access', _675 => _675.current, 'optionalAccess', _676 => _676.contains, 'call', _677 => _677(target)])) {
|
|
35559
35555
|
if (isLinkMode) e.preventDefault();
|
|
35560
35556
|
return;
|
|
35561
35557
|
}
|
|
@@ -35563,7 +35559,7 @@ function DataTableRowImpl({
|
|
|
35563
35559
|
if (isLinkMode) e.preventDefault();
|
|
35564
35560
|
return;
|
|
35565
35561
|
}
|
|
35566
|
-
_optionalChain([onClick, 'optionalCall',
|
|
35562
|
+
_optionalChain([onClick, 'optionalCall', _678 => _678(row.original)]);
|
|
35567
35563
|
},
|
|
35568
35564
|
[onClick, row.original, isLinkMode]
|
|
35569
35565
|
);
|
|
@@ -35588,10 +35584,10 @@ function DataTableRowImpl({
|
|
|
35588
35584
|
{
|
|
35589
35585
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
35590
35586
|
"flex flex-col overflow-hidden",
|
|
35591
|
-
alignJustify(_optionalChain([meta, 'optionalAccess',
|
|
35592
|
-
_optionalChain([meta, 'optionalAccess',
|
|
35593
|
-
_optionalChain([meta, 'optionalAccess',
|
|
35594
|
-
getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
35587
|
+
alignJustify(_optionalChain([meta, 'optionalAccess', _679 => _679.align])),
|
|
35588
|
+
_optionalChain([meta, 'optionalAccess', _680 => _680.width]) || "flex-1 min-w-0",
|
|
35589
|
+
_optionalChain([meta, 'optionalAccess', _681 => _681.cellClassName]),
|
|
35590
|
+
getHideClasses2(_optionalChain([meta, 'optionalAccess', _682 => _682.hideAt]))
|
|
35595
35591
|
),
|
|
35596
35592
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
|
|
35597
35593
|
},
|
|
@@ -35670,7 +35666,7 @@ function DataTableBody({
|
|
|
35670
35666
|
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: [
|
|
35671
35667
|
rows.map((row, index) => {
|
|
35672
35668
|
const item = row.original;
|
|
35673
|
-
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall',
|
|
35669
|
+
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _683 => _683(item)]), () => ( void 0));
|
|
35674
35670
|
const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
|
|
35675
35671
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35676
35672
|
DataTableRow,
|
|
@@ -35680,7 +35676,7 @@ function DataTableBody({
|
|
|
35680
35676
|
href,
|
|
35681
35677
|
compact,
|
|
35682
35678
|
className: cls,
|
|
35683
|
-
subRow: _optionalChain([renderSubRow, 'optionalCall',
|
|
35679
|
+
subRow: _optionalChain([renderSubRow, 'optionalCall', _684 => _684(item)])
|
|
35684
35680
|
},
|
|
35685
35681
|
row.id
|
|
35686
35682
|
);
|
|
@@ -35735,7 +35731,7 @@ function DataTableInfiniteFooter({
|
|
|
35735
35731
|
if (!sentinel) return;
|
|
35736
35732
|
const observer = new IntersectionObserver(
|
|
35737
35733
|
(entries) => {
|
|
35738
|
-
if (_optionalChain([entries, 'access',
|
|
35734
|
+
if (_optionalChain([entries, 'access', _685 => _685[0], 'optionalAccess', _686 => _686.isIntersecting])) onLoadMoreRef.current();
|
|
35739
35735
|
},
|
|
35740
35736
|
{ rootMargin }
|
|
35741
35737
|
);
|
|
@@ -35783,7 +35779,7 @@ function DataTableRowCount({
|
|
|
35783
35779
|
const table = useDataTableContext();
|
|
35784
35780
|
const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
|
|
35785
35781
|
if (hideWhenEmpty && count === 0) return null;
|
|
35786
|
-
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall',
|
|
35782
|
+
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _687 => _687(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
|
|
35787
35783
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
35788
35784
|
"span",
|
|
35789
35785
|
{
|
|
@@ -35915,7 +35911,7 @@ function SearchInput({
|
|
|
35915
35911
|
}) {
|
|
35916
35912
|
const [internalValue, setInternalValue] = React114.useState(defaultValue);
|
|
35917
35913
|
const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
|
|
35918
|
-
const debouncedValue =
|
|
35914
|
+
const debouncedValue = _chunkG56GYN7Zcjs.useDebounce.call(void 0, currentValue, debounceMs);
|
|
35919
35915
|
const [isOpen, setIsOpen] = React114.useState(false);
|
|
35920
35916
|
const [highlightedIndex, setHighlightedIndex] = React114.useState(-1);
|
|
35921
35917
|
const containerRef = React114.useRef(null);
|
|
@@ -35927,7 +35923,7 @@ function SearchInput({
|
|
|
35927
35923
|
textMeasureRef,
|
|
35928
35924
|
badgeRef,
|
|
35929
35925
|
inputRef
|
|
35930
|
-
} =
|
|
35926
|
+
} = _chunkG56GYN7Zcjs.useAutoLimitTags.call(void 0, {
|
|
35931
35927
|
count: filterChips.length,
|
|
35932
35928
|
limitTags,
|
|
35933
35929
|
// When chips exist, pass empty placeholder so the hook only reserves input minWidth,
|
|
@@ -35942,7 +35938,7 @@ function SearchInput({
|
|
|
35942
35938
|
if (!showHiddenTags) return;
|
|
35943
35939
|
const handleClick = (e) => {
|
|
35944
35940
|
const target = e.target;
|
|
35945
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
35941
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _688 => _688.current, 'optionalAccess', _689 => _689.contains, 'call', _690 => _690(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _691 => _691.current, 'optionalAccess', _692 => _692.contains, 'call', _693 => _693(target)])) {
|
|
35946
35942
|
setShowHiddenTags(false);
|
|
35947
35943
|
}
|
|
35948
35944
|
};
|
|
@@ -35990,10 +35986,10 @@ function SearchInput({
|
|
|
35990
35986
|
} else {
|
|
35991
35987
|
setInternalValue("");
|
|
35992
35988
|
}
|
|
35993
|
-
_optionalChain([inputRef, 'access',
|
|
35989
|
+
_optionalChain([inputRef, 'access', _694 => _694.current, 'optionalAccess', _695 => _695.focus, 'call', _696 => _696()]);
|
|
35994
35990
|
};
|
|
35995
35991
|
const handleResultClick = (result, e) => {
|
|
35996
|
-
_optionalChain([onResultSelect, 'optionalCall',
|
|
35992
|
+
_optionalChain([onResultSelect, 'optionalCall', _697 => _697(
|
|
35997
35993
|
result,
|
|
35998
35994
|
e ? {
|
|
35999
35995
|
metaKey: e.metaKey,
|
|
@@ -36025,7 +36021,7 @@ function SearchInput({
|
|
|
36025
36021
|
if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
|
|
36026
36022
|
handleResultClick(flatResults[highlightedIndex]);
|
|
36027
36023
|
} else {
|
|
36028
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
36024
|
+
_optionalChain([onSubmit, 'optionalCall', _698 => _698(currentValue)]);
|
|
36029
36025
|
}
|
|
36030
36026
|
break;
|
|
36031
36027
|
case "Escape":
|
|
@@ -36103,7 +36099,7 @@ function SearchInput({
|
|
|
36103
36099
|
dropdownVisible && "!border-ods-accent"
|
|
36104
36100
|
),
|
|
36105
36101
|
onClick: () => {
|
|
36106
|
-
_optionalChain([inputRef, 'access',
|
|
36102
|
+
_optionalChain([inputRef, 'access', _699 => _699.current, 'optionalAccess', _700 => _700.focus, 'call', _701 => _701()]);
|
|
36107
36103
|
setIsOpen(true);
|
|
36108
36104
|
},
|
|
36109
36105
|
children: [
|
|
@@ -36187,10 +36183,10 @@ function SearchInput({
|
|
|
36187
36183
|
align: "start",
|
|
36188
36184
|
onOpenAutoFocus: (e) => {
|
|
36189
36185
|
e.preventDefault();
|
|
36190
|
-
_optionalChain([inputRef, 'access',
|
|
36186
|
+
_optionalChain([inputRef, 'access', _702 => _702.current, 'optionalAccess', _703 => _703.focus, 'call', _704 => _704()]);
|
|
36191
36187
|
},
|
|
36192
36188
|
onInteractOutside: (e) => {
|
|
36193
|
-
if (_optionalChain([containerRef, 'access',
|
|
36189
|
+
if (_optionalChain([containerRef, 'access', _705 => _705.current, 'optionalAccess', _706 => _706.contains, 'call', _707 => _707(e.target)])) {
|
|
36194
36190
|
e.preventDefault();
|
|
36195
36191
|
}
|
|
36196
36192
|
},
|
|
@@ -36207,10 +36203,10 @@ function SearchInput({
|
|
|
36207
36203
|
ref: hiddenTagsPopupRef,
|
|
36208
36204
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
36209
36205
|
style: {
|
|
36210
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access',
|
|
36206
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _708 => _708.current, 'optionalAccess', _709 => _709.getBoundingClientRect, 'call', _710 => _710(), 'access', _711 => _711.left]), () => ( 0))) : 0
|
|
36211
36207
|
},
|
|
36212
36208
|
onRemove: (value2) => {
|
|
36213
|
-
_optionalChain([onFilterRemove, 'optionalCall',
|
|
36209
|
+
_optionalChain([onFilterRemove, 'optionalCall', _712 => _712(value2)]);
|
|
36214
36210
|
if (hiddenCount <= 1) setShowHiddenTags(false);
|
|
36215
36211
|
}
|
|
36216
36212
|
}
|
|
@@ -36261,7 +36257,7 @@ function FilterListItem({
|
|
|
36261
36257
|
}) {
|
|
36262
36258
|
const handleToggle = () => {
|
|
36263
36259
|
if (disabled) return;
|
|
36264
|
-
_optionalChain([onToggle, 'optionalCall',
|
|
36260
|
+
_optionalChain([onToggle, 'optionalCall', _713 => _713(!selected)]);
|
|
36265
36261
|
};
|
|
36266
36262
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36267
36263
|
"div",
|
|
@@ -36308,7 +36304,7 @@ function FilterListItem({
|
|
|
36308
36304
|
CheckboxPrimitive4.Root,
|
|
36309
36305
|
{
|
|
36310
36306
|
checked: selected,
|
|
36311
|
-
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall',
|
|
36307
|
+
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _714 => _714(c === true)]),
|
|
36312
36308
|
onClick: (e) => e.stopPropagation(),
|
|
36313
36309
|
disabled,
|
|
36314
36310
|
"aria-label": title,
|
|
@@ -36394,7 +36390,7 @@ function TagSearchInput({
|
|
|
36394
36390
|
textMeasureRef,
|
|
36395
36391
|
badgeRef,
|
|
36396
36392
|
inputRef
|
|
36397
|
-
} =
|
|
36393
|
+
} = _chunkG56GYN7Zcjs.useAutoLimitTags.call(void 0, {
|
|
36398
36394
|
count: tags.length,
|
|
36399
36395
|
limitTags,
|
|
36400
36396
|
placeholder: currentPlaceholder
|
|
@@ -36407,7 +36403,7 @@ function TagSearchInput({
|
|
|
36407
36403
|
if (!showHiddenTags) return;
|
|
36408
36404
|
const handleClick = (e) => {
|
|
36409
36405
|
const target = e.target;
|
|
36410
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
36406
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _715 => _715.current, 'optionalAccess', _716 => _716.contains, 'call', _717 => _717(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _718 => _718.current, 'optionalAccess', _719 => _719.contains, 'call', _720 => _720(target)])) {
|
|
36411
36407
|
setShowHiddenTags(false);
|
|
36412
36408
|
}
|
|
36413
36409
|
};
|
|
@@ -36423,13 +36419,13 @@ function TagSearchInput({
|
|
|
36423
36419
|
e.preventDefault();
|
|
36424
36420
|
onSubmit(searchValue);
|
|
36425
36421
|
}
|
|
36426
|
-
_optionalChain([onKeyDown, 'optionalCall',
|
|
36422
|
+
_optionalChain([onKeyDown, 'optionalCall', _721 => _721(e)]);
|
|
36427
36423
|
};
|
|
36428
36424
|
const handleClearAll = (e) => {
|
|
36429
36425
|
e.stopPropagation();
|
|
36430
36426
|
e.preventDefault();
|
|
36431
|
-
_optionalChain([onClearAll, 'optionalCall',
|
|
36432
|
-
_optionalChain([inputRef, 'access',
|
|
36427
|
+
_optionalChain([onClearAll, 'optionalCall', _722 => _722()]);
|
|
36428
|
+
_optionalChain([inputRef, 'access', _723 => _723.current, 'optionalAccess', _724 => _724.focus, 'call', _725 => _725()]);
|
|
36433
36429
|
};
|
|
36434
36430
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
|
|
36435
36431
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -36446,7 +36442,7 @@ function TagSearchInput({
|
|
|
36446
36442
|
className
|
|
36447
36443
|
),
|
|
36448
36444
|
onClick: () => {
|
|
36449
|
-
if (!disabled) _optionalChain([inputRef, 'access',
|
|
36445
|
+
if (!disabled) _optionalChain([inputRef, 'access', _726 => _726.current, 'optionalAccess', _727 => _727.focus, 'call', _728 => _728()]);
|
|
36450
36446
|
},
|
|
36451
36447
|
children: [
|
|
36452
36448
|
/* @__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" }) }),
|
|
@@ -36518,7 +36514,7 @@ function TagSearchInput({
|
|
|
36518
36514
|
items: hiddenTags,
|
|
36519
36515
|
disabled,
|
|
36520
36516
|
style: {
|
|
36521
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access',
|
|
36517
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _729 => _729.current, 'optionalAccess', _730 => _730.getBoundingClientRect, 'call', _731 => _731(), 'access', _732 => _732.left]), () => ( 0))) : 0
|
|
36522
36518
|
},
|
|
36523
36519
|
onRemove: (value) => {
|
|
36524
36520
|
onTagRemove(value);
|
|
@@ -36619,7 +36615,7 @@ function MarkdownEditor({
|
|
|
36619
36615
|
const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
|
|
36620
36616
|
_react.useEffect.call(void 0, () => {
|
|
36621
36617
|
Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
|
|
36622
|
-
if (_optionalChain([mod, 'access',
|
|
36618
|
+
if (_optionalChain([mod, 'access', _733 => _733.commands, 'optionalAccess', _734 => _734.getExtraCommands])) {
|
|
36623
36619
|
setDefaultExtraCommands(mod.commands.getExtraCommands());
|
|
36624
36620
|
}
|
|
36625
36621
|
});
|
|
@@ -36653,7 +36649,7 @@ function MarkdownEditor({
|
|
|
36653
36649
|
const isImage = file.type.startsWith("image/");
|
|
36654
36650
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
36655
36651
|
insertTextAtCursor(markdown);
|
|
36656
|
-
_optionalChain([onFileUploaded, 'optionalCall',
|
|
36652
|
+
_optionalChain([onFileUploaded, 'optionalCall', _735 => _735(url, file.name)]);
|
|
36657
36653
|
} catch (error) {
|
|
36658
36654
|
console.error("File upload failed:", error);
|
|
36659
36655
|
setUploadProgress("Upload failed. Please try again.");
|
|
@@ -36666,7 +36662,7 @@ function MarkdownEditor({
|
|
|
36666
36662
|
);
|
|
36667
36663
|
const handleFileInputChange = _react.useCallback.call(void 0,
|
|
36668
36664
|
(e) => {
|
|
36669
|
-
const file = _optionalChain([e, 'access',
|
|
36665
|
+
const file = _optionalChain([e, 'access', _736 => _736.target, 'access', _737 => _737.files, 'optionalAccess', _738 => _738[0]]);
|
|
36670
36666
|
if (file) {
|
|
36671
36667
|
handleFileUpload(file);
|
|
36672
36668
|
e.target.value = "";
|
|
@@ -36677,7 +36673,7 @@ function MarkdownEditor({
|
|
|
36677
36673
|
const handlePaste = _react.useCallback.call(void 0,
|
|
36678
36674
|
(e) => {
|
|
36679
36675
|
if (!onUploadFile) return;
|
|
36680
|
-
const items = _optionalChain([e, 'access',
|
|
36676
|
+
const items = _optionalChain([e, 'access', _739 => _739.clipboardData, 'optionalAccess', _740 => _740.items]);
|
|
36681
36677
|
if (!items) return;
|
|
36682
36678
|
for (const item of items) {
|
|
36683
36679
|
if (item.type.startsWith("image/")) {
|
|
@@ -36702,7 +36698,7 @@ function MarkdownEditor({
|
|
|
36702
36698
|
buttonProps: { "aria-label": "Upload file", title: "Upload file" },
|
|
36703
36699
|
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" }),
|
|
36704
36700
|
execute: () => {
|
|
36705
|
-
_optionalChain([fileInputRef, 'access',
|
|
36701
|
+
_optionalChain([fileInputRef, 'access', _741 => _741.current, 'optionalAccess', _742 => _742.click, 'call', _743 => _743()]);
|
|
36706
36702
|
}
|
|
36707
36703
|
} : null;
|
|
36708
36704
|
const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
|
|
@@ -36714,7 +36710,7 @@ function MarkdownEditor({
|
|
|
36714
36710
|
const EDGE_ZONE = 60;
|
|
36715
36711
|
const MAX_SCROLL_SPEED = 15;
|
|
36716
36712
|
const findScrollParent = _react.useCallback.call(void 0, (el) => {
|
|
36717
|
-
let node = _optionalChain([el, 'optionalAccess',
|
|
36713
|
+
let node = _optionalChain([el, 'optionalAccess', _744 => _744.parentElement]);
|
|
36718
36714
|
while (node && node !== document.documentElement) {
|
|
36719
36715
|
const { overflowY } = window.getComputedStyle(node);
|
|
36720
36716
|
if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
|
|
@@ -36857,7 +36853,7 @@ function matchesAccept(file, accept) {
|
|
|
36857
36853
|
});
|
|
36858
36854
|
}
|
|
36859
36855
|
function dragHasFiles(e) {
|
|
36860
|
-
const types = _optionalChain([e, 'access',
|
|
36856
|
+
const types = _optionalChain([e, 'access', _745 => _745.dataTransfer, 'optionalAccess', _746 => _746.types]);
|
|
36861
36857
|
if (!types) return false;
|
|
36862
36858
|
for (let i = 0; i < types.length; i++) {
|
|
36863
36859
|
if (types[i] === "Files") return true;
|
|
@@ -36952,7 +36948,7 @@ function FileUpload({
|
|
|
36952
36948
|
e.stopPropagation();
|
|
36953
36949
|
setDragActive(false);
|
|
36954
36950
|
if (disabled) return;
|
|
36955
|
-
if (_optionalChain([e, 'access',
|
|
36951
|
+
if (_optionalChain([e, 'access', _747 => _747.dataTransfer, 'access', _748 => _748.files, 'optionalAccess', _749 => _749.length])) {
|
|
36956
36952
|
handleFiles(e.dataTransfer.files);
|
|
36957
36953
|
}
|
|
36958
36954
|
};
|
|
@@ -36980,7 +36976,7 @@ function FileUpload({
|
|
|
36980
36976
|
e.preventDefault();
|
|
36981
36977
|
dragCounter = 0;
|
|
36982
36978
|
setDragActive(false);
|
|
36983
|
-
if (_optionalChain([e, 'access',
|
|
36979
|
+
if (_optionalChain([e, 'access', _750 => _750.dataTransfer, 'optionalAccess', _751 => _751.files, 'optionalAccess', _752 => _752.length])) {
|
|
36984
36980
|
handleFilesRef.current(e.dataTransfer.files);
|
|
36985
36981
|
}
|
|
36986
36982
|
};
|
|
@@ -37002,7 +36998,7 @@ function FileUpload({
|
|
|
37002
36998
|
};
|
|
37003
36999
|
}, [acceptWindowDrops, disabled]);
|
|
37004
37000
|
const handleFileSelect = (e) => {
|
|
37005
|
-
if (_optionalChain([e, 'access',
|
|
37001
|
+
if (_optionalChain([e, 'access', _753 => _753.target, 'access', _754 => _754.files, 'optionalAccess', _755 => _755.length])) {
|
|
37006
37002
|
handleFiles(e.target.files);
|
|
37007
37003
|
}
|
|
37008
37004
|
};
|
|
@@ -37019,7 +37015,7 @@ function FileUpload({
|
|
|
37019
37015
|
};
|
|
37020
37016
|
const openDialog = async () => {
|
|
37021
37017
|
if (disabled) return;
|
|
37022
|
-
_optionalChain([fileInputRef, 'access',
|
|
37018
|
+
_optionalChain([fileInputRef, 'access', _756 => _756.current, 'optionalAccess', _757 => _757.click, 'call', _758 => _758()]);
|
|
37023
37019
|
};
|
|
37024
37020
|
const displayError = error || validationError || void 0;
|
|
37025
37021
|
const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
|
|
@@ -37097,7 +37093,7 @@ function FileUpload({
|
|
|
37097
37093
|
"button",
|
|
37098
37094
|
{
|
|
37099
37095
|
type: "button",
|
|
37100
|
-
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall',
|
|
37096
|
+
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _759 => _759(entry.id)]),
|
|
37101
37097
|
className: "shrink-0 p-1 rounded hover:bg-ods-bg transition-colors",
|
|
37102
37098
|
"aria-label": `Remove ${entry.fileName}`,
|
|
37103
37099
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-4 text-ods-text-secondary" })
|
|
@@ -37220,7 +37216,7 @@ function ImageUploader({
|
|
|
37220
37216
|
onChange(file);
|
|
37221
37217
|
};
|
|
37222
37218
|
const handleFileSelect = (e) => {
|
|
37223
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
37219
|
+
validateAndEmit(_optionalChain([e, 'access', _760 => _760.target, 'access', _761 => _761.files, 'optionalAccess', _762 => _762[0]]));
|
|
37224
37220
|
if (inputRef.current) inputRef.current.value = "";
|
|
37225
37221
|
};
|
|
37226
37222
|
const handleDrag = (e) => {
|
|
@@ -37235,11 +37231,11 @@ function ImageUploader({
|
|
|
37235
37231
|
e.stopPropagation();
|
|
37236
37232
|
setDragActive(false);
|
|
37237
37233
|
if (!interactive) return;
|
|
37238
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
37234
|
+
validateAndEmit(_optionalChain([e, 'access', _763 => _763.dataTransfer, 'access', _764 => _764.files, 'optionalAccess', _765 => _765[0]]));
|
|
37239
37235
|
};
|
|
37240
37236
|
const openDialog = () => {
|
|
37241
37237
|
if (!interactive) return;
|
|
37242
|
-
_optionalChain([inputRef, 'access',
|
|
37238
|
+
_optionalChain([inputRef, 'access', _766 => _766.current, 'optionalAccess', _767 => _767.click, 'call', _768 => _768()]);
|
|
37243
37239
|
};
|
|
37244
37240
|
const handleRootKeyDown = (e) => {
|
|
37245
37241
|
if (hasImage || !interactive) return;
|
|
@@ -37429,8 +37425,8 @@ function ColorPresetSelect({
|
|
|
37429
37425
|
}) {
|
|
37430
37426
|
const selectedPreset = presets.find((p) => p.key === presetKey);
|
|
37431
37427
|
const isCustom = !selectedPreset;
|
|
37432
|
-
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
37433
|
-
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
37428
|
+
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _769 => _769.label]), () => ( "Custom"));
|
|
37429
|
+
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _770 => _770.color]), () => ( value));
|
|
37434
37430
|
const groups = [
|
|
37435
37431
|
{
|
|
37436
37432
|
items: [
|
|
@@ -37720,7 +37716,7 @@ function TicketStatusConfigRow({
|
|
|
37720
37716
|
_chunkFQOTC3UUcjs.Input,
|
|
37721
37717
|
{
|
|
37722
37718
|
value: name,
|
|
37723
|
-
onChange: (e) => _optionalChain([onNameChange, 'optionalCall',
|
|
37719
|
+
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _771 => _771(e.target.value)]),
|
|
37724
37720
|
disabled: isSystem,
|
|
37725
37721
|
readOnly: isSystem,
|
|
37726
37722
|
"aria-label": "Status name",
|
|
@@ -37803,7 +37799,7 @@ function CompactAssigneeDropdown({
|
|
|
37803
37799
|
return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
|
|
37804
37800
|
}, [filtered, currentAssignee]);
|
|
37805
37801
|
const handleSelect = (userId) => {
|
|
37806
|
-
const next = _optionalChain([currentAssignee, 'optionalAccess',
|
|
37802
|
+
const next = _optionalChain([currentAssignee, 'optionalAccess', _772 => _772.id]) === userId ? null : userId;
|
|
37807
37803
|
onAssign(next);
|
|
37808
37804
|
setIsOpen(false);
|
|
37809
37805
|
};
|
|
@@ -37868,7 +37864,7 @@ function CompactAssigneeDropdown({
|
|
|
37868
37864
|
}
|
|
37869
37865
|
) }),
|
|
37870
37866
|
/* @__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) => {
|
|
37871
|
-
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess',
|
|
37867
|
+
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _773 => _773.id]) === opt.value;
|
|
37872
37868
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
37873
37869
|
"button",
|
|
37874
37870
|
{
|
|
@@ -37937,7 +37933,7 @@ function DefaultAssigneeDropdown({
|
|
|
37937
37933
|
Autocomplete,
|
|
37938
37934
|
{
|
|
37939
37935
|
options,
|
|
37940
|
-
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess',
|
|
37936
|
+
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _774 => _774.id]), () => ( null)),
|
|
37941
37937
|
onChange: (val) => {
|
|
37942
37938
|
onAssign(val);
|
|
37943
37939
|
setIsEditing(false);
|
|
@@ -38326,14 +38322,14 @@ function TicketInfoSection({
|
|
|
38326
38322
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38327
38323
|
SquareAvatar,
|
|
38328
38324
|
{
|
|
38329
|
-
src: _optionalChain([organization, 'optionalAccess',
|
|
38330
|
-
alt: _optionalChain([organization, 'optionalAccess',
|
|
38331
|
-
fallback: _optionalChain([organization, 'optionalAccess',
|
|
38325
|
+
src: _optionalChain([organization, 'optionalAccess', _775 => _775.imageSrc]),
|
|
38326
|
+
alt: _optionalChain([organization, 'optionalAccess', _776 => _776.name]),
|
|
38327
|
+
fallback: _optionalChain([organization, 'optionalAccess', _777 => _777.name]) || "Org",
|
|
38332
38328
|
size: "md",
|
|
38333
38329
|
className: "shrink-0"
|
|
38334
38330
|
}
|
|
38335
38331
|
),
|
|
38336
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess',
|
|
38332
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _778 => _778.name]) || "Unassigned", label: "Organization" })
|
|
38337
38333
|
] }),
|
|
38338
38334
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38339
38335
|
AssigneeDropdown,
|
|
@@ -38354,10 +38350,10 @@ function TicketInfoSection({
|
|
|
38354
38350
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38355
38351
|
InfoCell2,
|
|
38356
38352
|
{
|
|
38357
|
-
value: _optionalChain([device, 'optionalAccess',
|
|
38353
|
+
value: _optionalChain([device, 'optionalAccess', _779 => _779.name]) || "Unassigned",
|
|
38358
38354
|
label: "Device",
|
|
38359
|
-
icon: _optionalChain([device, 'optionalAccess',
|
|
38360
|
-
onClick: _optionalChain([device, 'optionalAccess',
|
|
38355
|
+
icon: _optionalChain([device, 'optionalAccess', _780 => _780.icon]),
|
|
38356
|
+
onClick: _optionalChain([device, 'optionalAccess', _781 => _781.onClick])
|
|
38361
38357
|
}
|
|
38362
38358
|
),
|
|
38363
38359
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
|
|
@@ -38687,7 +38683,7 @@ function RoadmapCard({
|
|
|
38687
38683
|
const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
|
|
38688
38684
|
const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
|
|
38689
38685
|
const hasFigma = !!item.figmaUrl;
|
|
38690
|
-
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access',
|
|
38686
|
+
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _782 => _782.screenshots, 'optionalAccess', _783 => _783.length]), () => ( 0))) > 0;
|
|
38691
38687
|
const typeLabel = getTaskTypeLabel(item.customItemId);
|
|
38692
38688
|
const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
|
|
38693
38689
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -38706,7 +38702,7 @@ function RoadmapCard({
|
|
|
38706
38702
|
unoptimized: true,
|
|
38707
38703
|
className: "h-8 w-8 object-contain"
|
|
38708
38704
|
}
|
|
38709
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
38705
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _784 => _784.title, 'optionalAccess', _785 => _785.substring, 'call', _786 => _786(0, 2)]) || "??" })
|
|
38710
38706
|
}
|
|
38711
38707
|
),
|
|
38712
38708
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -38781,7 +38777,7 @@ function RoadmapCard({
|
|
|
38781
38777
|
unoptimized: true,
|
|
38782
38778
|
className: "object-contain p-1"
|
|
38783
38779
|
}
|
|
38784
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
38780
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _787 => _787.title, 'optionalAccess', _788 => _788.substring, 'call', _789 => _789(0, 2)]) || "??" }) }),
|
|
38785
38781
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
|
|
38786
38782
|
/* @__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 }) }),
|
|
38787
38783
|
/* @__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: [
|
|
@@ -39291,7 +39287,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
|
|
|
39291
39287
|
] }) : null,
|
|
39292
39288
|
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
|
|
39293
39289
|
] }),
|
|
39294
|
-
_optionalChain([anchorProps, 'optionalAccess',
|
|
39290
|
+
_optionalChain([anchorProps, 'optionalAccess', _790 => _790.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
|
|
39295
39291
|
] });
|
|
39296
39292
|
if (!anchorProps) {
|
|
39297
39293
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
@@ -39361,7 +39357,7 @@ function getDefaultOptions() {
|
|
|
39361
39357
|
// node_modules/date-fns/startOfWeek.mjs
|
|
39362
39358
|
function startOfWeek(date, options) {
|
|
39363
39359
|
const defaultOptions2 = getDefaultOptions();
|
|
39364
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
39360
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _791 => _791.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _792 => _792.locale, 'optionalAccess', _793 => _793.options, 'optionalAccess', _794 => _794.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _795 => _795.locale, 'optionalAccess', _796 => _796.options, 'optionalAccess', _797 => _797.weekStartsOn]))), () => ( 0));
|
|
39365
39361
|
const _date = toDate(date);
|
|
39366
39362
|
const day = _date.getDay();
|
|
39367
39363
|
const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
|
|
@@ -39536,7 +39532,7 @@ var formatDistance = (token, count, options) => {
|
|
|
39536
39532
|
} else {
|
|
39537
39533
|
result = tokenValue.other.replace("{{count}}", count.toString());
|
|
39538
39534
|
}
|
|
39539
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
39535
|
+
if (_optionalChain([options, 'optionalAccess', _798 => _798.addSuffix])) {
|
|
39540
39536
|
if (options.comparison && options.comparison > 0) {
|
|
39541
39537
|
return "in " + result;
|
|
39542
39538
|
} else {
|
|
@@ -39603,15 +39599,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
|
|
|
39603
39599
|
// node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
|
|
39604
39600
|
function buildLocalizeFn(args) {
|
|
39605
39601
|
return (value, options) => {
|
|
39606
|
-
const context = _optionalChain([options, 'optionalAccess',
|
|
39602
|
+
const context = _optionalChain([options, 'optionalAccess', _799 => _799.context]) ? String(options.context) : "standalone";
|
|
39607
39603
|
let valuesArray;
|
|
39608
39604
|
if (context === "formatting" && args.formattingValues) {
|
|
39609
39605
|
const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
|
|
39610
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
39606
|
+
const width = _optionalChain([options, 'optionalAccess', _800 => _800.width]) ? String(options.width) : defaultWidth;
|
|
39611
39607
|
valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
|
|
39612
39608
|
} else {
|
|
39613
39609
|
const defaultWidth = args.defaultWidth;
|
|
39614
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
39610
|
+
const width = _optionalChain([options, 'optionalAccess', _801 => _801.width]) ? String(options.width) : args.defaultWidth;
|
|
39615
39611
|
valuesArray = args.values[width] || args.values[defaultWidth];
|
|
39616
39612
|
}
|
|
39617
39613
|
const index = args.argumentCallback ? args.argumentCallback(value) : value;
|
|
@@ -39991,7 +39987,7 @@ function getWeekYear(date, options) {
|
|
|
39991
39987
|
const _date = toDate(date);
|
|
39992
39988
|
const year = _date.getFullYear();
|
|
39993
39989
|
const defaultOptions2 = getDefaultOptions();
|
|
39994
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
39990
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _802 => _802.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _803 => _803.locale, 'optionalAccess', _804 => _804.options, 'optionalAccess', _805 => _805.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _806 => _806.locale, 'optionalAccess', _807 => _807.options, 'optionalAccess', _808 => _808.firstWeekContainsDate]))), () => ( 1));
|
|
39995
39991
|
const firstWeekOfNextYear = constructFrom(date, 0);
|
|
39996
39992
|
firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
|
|
39997
39993
|
firstWeekOfNextYear.setHours(0, 0, 0, 0);
|
|
@@ -40012,7 +40008,7 @@ function getWeekYear(date, options) {
|
|
|
40012
40008
|
// node_modules/date-fns/startOfWeekYear.mjs
|
|
40013
40009
|
function startOfWeekYear(date, options) {
|
|
40014
40010
|
const defaultOptions2 = getDefaultOptions();
|
|
40015
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40011
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _809 => _809.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _810 => _810.locale, 'optionalAccess', _811 => _811.options, 'optionalAccess', _812 => _812.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _813 => _813.locale, 'optionalAccess', _814 => _814.options, 'optionalAccess', _815 => _815.firstWeekContainsDate]))), () => ( 1));
|
|
40016
40012
|
const year = getWeekYear(date, options);
|
|
40017
40013
|
const firstWeek = constructFrom(date, 0);
|
|
40018
40014
|
firstWeek.setFullYear(year, 0, firstWeekContainsDate);
|
|
@@ -40827,9 +40823,9 @@ var doubleQuoteRegExp = /''/g;
|
|
|
40827
40823
|
var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
|
|
40828
40824
|
function format(date, formatStr, options) {
|
|
40829
40825
|
const defaultOptions2 = getDefaultOptions();
|
|
40830
|
-
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40831
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40832
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
40826
|
+
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _816 => _816.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
|
|
40827
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _817 => _817.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _818 => _818.locale, 'optionalAccess', _819 => _819.options, 'optionalAccess', _820 => _820.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _821 => _821.locale, 'optionalAccess', _822 => _822.options, 'optionalAccess', _823 => _823.firstWeekContainsDate]))), () => ( 1));
|
|
40828
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _824 => _824.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _825 => _825.locale, 'optionalAccess', _826 => _826.options, 'optionalAccess', _827 => _827.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _828 => _828.locale, 'optionalAccess', _829 => _829.options, 'optionalAccess', _830 => _830.weekStartsOn]))), () => ( 0));
|
|
40833
40829
|
const originalDate = toDate(date);
|
|
40834
40830
|
if (!isValid(originalDate)) {
|
|
40835
40831
|
throw new RangeError("Invalid time value");
|
|
@@ -40870,7 +40866,7 @@ function format(date, formatStr, options) {
|
|
|
40870
40866
|
return parts.map((part) => {
|
|
40871
40867
|
if (!part.isToken) return part.value;
|
|
40872
40868
|
const token = part.value;
|
|
40873
|
-
if (!_optionalChain([options, 'optionalAccess',
|
|
40869
|
+
if (!_optionalChain([options, 'optionalAccess', _831 => _831.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _832 => _832.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
|
|
40874
40870
|
warnOrThrowProtectedError(token, formatStr, String(date));
|
|
40875
40871
|
}
|
|
40876
40872
|
const formatter = formatters[token[0]];
|
|
@@ -41048,7 +41044,7 @@ function ProgramCard({
|
|
|
41048
41044
|
const dur = formatDurationFromRange(w.start_at, w.end_at);
|
|
41049
41045
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
41050
41046
|
}
|
|
41051
|
-
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access',
|
|
41047
|
+
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _833 => _833.labels, 'optionalAccess', _834 => _834.singular])].filter(
|
|
41052
41048
|
(s) => typeof s === "string" && s.length > 0
|
|
41053
41049
|
);
|
|
41054
41050
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
|
|
@@ -41205,7 +41201,7 @@ function ProgramCard({
|
|
|
41205
41201
|
|
|
41206
41202
|
|
|
41207
41203
|
function CampaignCardAdmin({ campaign, className, anchorProps }) {
|
|
41208
|
-
const goalsCount = _optionalChain([campaign, 'access',
|
|
41204
|
+
const goalsCount = _optionalChain([campaign, 'access', _835 => _835.goals, 'optionalAccess', _836 => _836.length]) || 0;
|
|
41209
41205
|
const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
41210
41206
|
/* @__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" }) }),
|
|
41211
41207
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -41297,13 +41293,13 @@ _chunkG7UE6RKVcjs.init_next_navigation.call(void 0, );
|
|
|
41297
41293
|
// src/components/chat/hooks/use-chat-card-item.ts
|
|
41298
41294
|
|
|
41299
41295
|
function useChatCardItem(type, id) {
|
|
41300
|
-
const runtime =
|
|
41296
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
41301
41297
|
const url = runtime.endpoints.buildListUrl(type, [id]);
|
|
41302
41298
|
const query = _reactquery.useQuery.call(void 0, {
|
|
41303
41299
|
queryKey: ["chat-card-item", type, id],
|
|
41304
41300
|
queryFn: async () => {
|
|
41305
41301
|
if (!url) return null;
|
|
41306
|
-
const res = await
|
|
41302
|
+
const res = await _chunkG56GYN7Zcjs.embedAuthedFetch.call(void 0, url);
|
|
41307
41303
|
if (!res.ok) return null;
|
|
41308
41304
|
const data = await res.json();
|
|
41309
41305
|
const items = extractItems(data);
|
|
@@ -41367,7 +41363,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
|
|
|
41367
41363
|
if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
|
|
41368
41364
|
const safePath = sanitizePath(row.path);
|
|
41369
41365
|
if (safePath) {
|
|
41370
|
-
const docTarget = row.documentType ? _optionalChain([ctx, 'access',
|
|
41366
|
+
const docTarget = row.documentType ? _optionalChain([ctx, 'access', _837 => _837.docPlatformTargets, 'optionalAccess', _838 => _838[row.documentType]]) : void 0;
|
|
41371
41367
|
if (docTarget) {
|
|
41372
41368
|
const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
|
|
41373
41369
|
const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
|
|
@@ -41582,8 +41578,8 @@ function cardMenuGroups(href, discuss, openDetails) {
|
|
|
41582
41578
|
if (href) {
|
|
41583
41579
|
items.push({
|
|
41584
41580
|
id: "open-details",
|
|
41585
|
-
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
41586
|
-
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
41581
|
+
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _839 => _839.label]), () => ( "Open Details")),
|
|
41582
|
+
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _840 => _840.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.EyeIcon, { size: 20 }))),
|
|
41587
41583
|
// Main row → open the entity (same tab, soft Link nav).
|
|
41588
41584
|
href,
|
|
41589
41585
|
// Trailing 40px ↗ side-button → open in a new tab.
|
|
@@ -41613,8 +41609,8 @@ function HubspotTicketChatCard({
|
|
|
41613
41609
|
isNewTab,
|
|
41614
41610
|
discuss
|
|
41615
41611
|
}) {
|
|
41616
|
-
const status = typeof _optionalChain([chatRef, 'access',
|
|
41617
|
-
const statusLabel = typeof _optionalChain([chatRef, 'access',
|
|
41612
|
+
const status = typeof _optionalChain([chatRef, 'access', _841 => _841.metadata, 'optionalAccess', _842 => _842.status]) === "string" ? chatRef.metadata.status : void 0;
|
|
41613
|
+
const statusLabel = typeof _optionalChain([chatRef, 'access', _843 => _843.metadata, 'optionalAccess', _844 => _844.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
|
|
41618
41614
|
const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
|
|
41619
41615
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41620
41616
|
MingoInfoCard,
|
|
@@ -41637,7 +41633,7 @@ function FaqChatCard({
|
|
|
41637
41633
|
isNewTab,
|
|
41638
41634
|
discuss
|
|
41639
41635
|
}) {
|
|
41640
|
-
const section = typeof _optionalChain([chatRef, 'access',
|
|
41636
|
+
const section = typeof _optionalChain([chatRef, 'access', _845 => _845.metadata, 'optionalAccess', _846 => _846.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
|
|
41641
41637
|
const statusLabel = section && section.length > 0 ? section : "FAQ";
|
|
41642
41638
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41643
41639
|
MingoInfoCard,
|
|
@@ -41657,7 +41653,7 @@ function SlackChatCard({
|
|
|
41657
41653
|
isNewTab,
|
|
41658
41654
|
discuss
|
|
41659
41655
|
}) {
|
|
41660
|
-
const channelName = typeof _optionalChain([chatRef, 'access',
|
|
41656
|
+
const channelName = typeof _optionalChain([chatRef, 'access', _847 => _847.metadata, 'optionalAccess', _848 => _848.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
|
|
41661
41657
|
const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
|
|
41662
41658
|
const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
|
|
41663
41659
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -41697,7 +41693,7 @@ function GenericFinancialChatCard({
|
|
|
41697
41693
|
isNewTab,
|
|
41698
41694
|
discuss
|
|
41699
41695
|
}) {
|
|
41700
|
-
const subtitle = typeof _optionalChain([chatRef, 'access',
|
|
41696
|
+
const subtitle = typeof _optionalChain([chatRef, 'access', _849 => _849.metadata, 'optionalAccess', _850 => _850.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
|
|
41701
41697
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41702
41698
|
MingoInfoCard,
|
|
41703
41699
|
{
|
|
@@ -41766,12 +41762,12 @@ function ProductReleaseChatCard({
|
|
|
41766
41762
|
discuss
|
|
41767
41763
|
}) {
|
|
41768
41764
|
const releaseProps = buildProps(item);
|
|
41769
|
-
const status = _optionalChain([item, 'optionalAccess',
|
|
41765
|
+
const status = _optionalChain([item, 'optionalAccess', _851 => _851.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
|
|
41770
41766
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41771
41767
|
EntityMingoCard,
|
|
41772
41768
|
{
|
|
41773
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41774
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
41769
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _852 => _852.title]), () => ( "")),
|
|
41770
|
+
description: _optionalChain([item, 'optionalAccess', _853 => _853.summary]) || releaseProps.formattedDate || void 0,
|
|
41775
41771
|
cover: releaseProps.coverImage || void 0,
|
|
41776
41772
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Rocket02Icon, { size: 24 }),
|
|
41777
41773
|
status,
|
|
@@ -41788,17 +41784,17 @@ function CampaignChatCard({
|
|
|
41788
41784
|
isNewTab,
|
|
41789
41785
|
discuss
|
|
41790
41786
|
}) {
|
|
41791
|
-
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
41787
|
+
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _854 => _854.goals])) ? item.goals.length : 0;
|
|
41792
41788
|
const meta = [
|
|
41793
|
-
_optionalChain([item, 'optionalAccess',
|
|
41789
|
+
_optionalChain([item, 'optionalAccess', _855 => _855.start_date]) ? formatDateShort(item.start_date) : null,
|
|
41794
41790
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
41795
41791
|
"Marketing campaign"
|
|
41796
41792
|
].filter(Boolean).join(" \xB7 ");
|
|
41797
41793
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41798
41794
|
EntityMingoCard,
|
|
41799
41795
|
{
|
|
41800
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41801
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
41796
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _856 => _856.name]), () => ( "")),
|
|
41797
|
+
description: meta || _optionalChain([item, 'optionalAccess', _857 => _857.description]) || void 0,
|
|
41802
41798
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.Megaphone01Icon, { size: 24 }),
|
|
41803
41799
|
chatRef,
|
|
41804
41800
|
isNewTab,
|
|
@@ -41851,14 +41847,14 @@ function BlogChatCard({
|
|
|
41851
41847
|
hasEmbeddedVideo,
|
|
41852
41848
|
discuss
|
|
41853
41849
|
}) {
|
|
41854
|
-
const category = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
41850
|
+
const category = Array.isArray(_optionalChain([item, 'optionalAccess', _858 => _858.categories])) ? _optionalChain([item, 'access', _859 => _859.categories, 'access', _860 => _860.find, 'call', _861 => _861((c) => c && c.name), 'optionalAccess', _862 => _862.name]) : void 0;
|
|
41855
41851
|
const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
|
|
41856
41852
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41857
41853
|
EntityMingoCard,
|
|
41858
41854
|
{
|
|
41859
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41860
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41861
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
41855
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _863 => _863.title]), () => ( "")),
|
|
41856
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _864 => _864.summary]), () => ( void 0)),
|
|
41857
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _865 => _865.featured_image]), ogPlaceholder),
|
|
41862
41858
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.NewspaperIcon, { size: 24 }),
|
|
41863
41859
|
status,
|
|
41864
41860
|
chatRef,
|
|
@@ -41875,13 +41871,13 @@ function CaseStudyChatCard({
|
|
|
41875
41871
|
ogPlaceholder,
|
|
41876
41872
|
discuss
|
|
41877
41873
|
}) {
|
|
41878
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
41874
|
+
const meta = [_optionalChain([item, 'optionalAccess', _866 => _866.msp, 'optionalAccess', _867 => _867.name]), _optionalChain([item, 'optionalAccess', _868 => _868.user, 'optionalAccess', _869 => _869.full_name])].filter(Boolean).join(" \xB7 ");
|
|
41879
41875
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41880
41876
|
EntityMingoCard,
|
|
41881
41877
|
{
|
|
41882
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41883
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
41884
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
41878
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _870 => _870.title]), () => ( "")),
|
|
41879
|
+
description: _optionalChain([item, 'optionalAccess', _871 => _871.summary]) || meta || void 0,
|
|
41880
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _872 => _872.featured_image]), ogPlaceholder),
|
|
41885
41881
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.TrophyIcon, { size: 24 }),
|
|
41886
41882
|
status: { label: "Case study", variant: "grey" },
|
|
41887
41883
|
chatRef,
|
|
@@ -41898,13 +41894,13 @@ function CustomerInterviewChatCard({
|
|
|
41898
41894
|
ogPlaceholder,
|
|
41899
41895
|
discuss
|
|
41900
41896
|
}) {
|
|
41901
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
41897
|
+
const meta = [_optionalChain([item, 'optionalAccess', _873 => _873.user, 'optionalAccess', _874 => _874.full_name]), _optionalChain([item, 'optionalAccess', _875 => _875.msp, 'optionalAccess', _876 => _876.name])].filter(Boolean).join(" \xB7 ");
|
|
41902
41898
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41903
41899
|
EntityMingoCard,
|
|
41904
41900
|
{
|
|
41905
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41906
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
41907
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
41901
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _877 => _877.title]), () => ( "")),
|
|
41902
|
+
description: _optionalChain([item, 'optionalAccess', _878 => _878.video_summary]) || meta || void 0,
|
|
41903
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _879 => _879.featured_image]), ogPlaceholder),
|
|
41908
41904
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.MicrophoneIcon, { size: 24 }),
|
|
41909
41905
|
status: { label: "Interview", variant: "grey" },
|
|
41910
41906
|
chatRef,
|
|
@@ -41921,13 +41917,13 @@ function InvestorUpdateChatCard({
|
|
|
41921
41917
|
ogPlaceholder,
|
|
41922
41918
|
discuss
|
|
41923
41919
|
}) {
|
|
41924
|
-
const title = _optionalChain([item, 'optionalAccess',
|
|
41920
|
+
const title = _optionalChain([item, 'optionalAccess', _880 => _880.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _881 => _881.update_number]), () => ( "?"))}`;
|
|
41925
41921
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41926
41922
|
EntityMingoCard,
|
|
41927
41923
|
{
|
|
41928
41924
|
title,
|
|
41929
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
41930
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
41925
|
+
description: _optionalChain([item, 'optionalAccess', _882 => _882.strategic_update]) || _optionalChain([item, 'optionalAccess', _883 => _883.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _884 => _884.period_start]), _optionalChain([item, 'optionalAccess', _885 => _885.period_end])) || void 0,
|
|
41926
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _886 => _886.featured_image]), ogPlaceholder),
|
|
41931
41927
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.PresentationLineIcon, { size: 24 }),
|
|
41932
41928
|
status: { label: "Investor update", variant: "grey" },
|
|
41933
41929
|
chatRef,
|
|
@@ -41944,12 +41940,12 @@ function OnboardingGuideChatCard({
|
|
|
41944
41940
|
ogPlaceholder,
|
|
41945
41941
|
discuss
|
|
41946
41942
|
}) {
|
|
41947
|
-
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess',
|
|
41943
|
+
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _887 => _887.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _888 => _888.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _889 => _889.og_image_url]), ogPlaceholder)));
|
|
41948
41944
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41949
41945
|
EntityMingoCard,
|
|
41950
41946
|
{
|
|
41951
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41952
|
-
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41947
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _890 => _890.title]), () => ( "")),
|
|
41948
|
+
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _891 => _891.summary]), () => ( _optionalChain([item, 'optionalAccess', _892 => _892.description]))), () => ( void 0)),
|
|
41953
41949
|
cover,
|
|
41954
41950
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.CompassIcon, { size: 24 }),
|
|
41955
41951
|
status: { label: "Guide", variant: "grey" },
|
|
@@ -41970,25 +41966,25 @@ function ProgramChatCard({
|
|
|
41970
41966
|
discuss
|
|
41971
41967
|
}) {
|
|
41972
41968
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.MicrophoneIcon, { size: 24 });
|
|
41973
|
-
const isScheduled = _optionalChain([item, 'optionalAccess',
|
|
41969
|
+
const isScheduled = _optionalChain([item, 'optionalAccess', _893 => _893.status]) === "scheduled";
|
|
41974
41970
|
let typeMeta;
|
|
41975
|
-
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess',
|
|
41971
|
+
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _894 => _894.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
|
|
41976
41972
|
typeMeta = formatDurationCompact(item.duration_seconds);
|
|
41977
|
-
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess',
|
|
41973
|
+
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _895 => _895.location_name]) === "string" && item.location_name.trim().length > 0) {
|
|
41978
41974
|
typeMeta = item.location_name;
|
|
41979
|
-
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess',
|
|
41975
|
+
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _896 => _896.start_at])) {
|
|
41980
41976
|
const time = formatTimeWithTimezone(item.start_at, null);
|
|
41981
41977
|
const dur = formatDurationFromRange(item.start_at, item.end_at);
|
|
41982
41978
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
41983
41979
|
}
|
|
41984
|
-
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41980
|
+
const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _897 => _897.date]), () => ( null)), { fallback: "", timezone: "local" });
|
|
41985
41981
|
const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
|
|
41986
41982
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
41987
41983
|
EntityMingoCard,
|
|
41988
41984
|
{
|
|
41989
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
41990
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
41991
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
41985
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _898 => _898.title]), () => ( "")),
|
|
41986
|
+
description: meta || _optionalChain([item, 'optionalAccess', _899 => _899.description]) || void 0,
|
|
41987
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _900 => _900.cover_url]), ogPlaceholder),
|
|
41992
41988
|
fallbackIcon: icon,
|
|
41993
41989
|
status: { label, variant: "grey" },
|
|
41994
41990
|
chatRef,
|
|
@@ -42005,10 +42001,10 @@ function RoadmapChatCard({
|
|
|
42005
42001
|
cardType,
|
|
42006
42002
|
discuss
|
|
42007
42003
|
}) {
|
|
42008
|
-
const logoUrl = typeof _optionalChain([item, 'optionalAccess',
|
|
42009
|
-
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess',
|
|
42004
|
+
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _901 => _901.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
42005
|
+
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _902 => _902.customItemId]) != null;
|
|
42010
42006
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZS2SBWBRcjs.MapIcon, { size: 24 });
|
|
42011
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess',
|
|
42007
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _903 => _903.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
42012
42008
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
42013
42009
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
42014
42010
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
|
|
@@ -42016,10 +42012,10 @@ function RoadmapChatCard({
|
|
|
42016
42012
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42017
42013
|
EntityMingoCard,
|
|
42018
42014
|
{
|
|
42019
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42020
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
42015
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _904 => _904.title]), () => ( "")),
|
|
42016
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _905 => _905.description]), () => ( void 0)),
|
|
42021
42017
|
fallbackIcon: icon,
|
|
42022
|
-
status: statusPill(_optionalChain([item, 'optionalAccess',
|
|
42018
|
+
status: statusPill(_optionalChain([item, 'optionalAccess', _906 => _906.status])),
|
|
42023
42019
|
chatRef,
|
|
42024
42020
|
isNewTab,
|
|
42025
42021
|
discuss,
|
|
@@ -42105,7 +42101,7 @@ function programRegistryEntries() {
|
|
|
42105
42101
|
discuss: opts.discuss,
|
|
42106
42102
|
configKey: cfg.configKey,
|
|
42107
42103
|
label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
|
|
42108
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42104
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _907 => _907.extras, 'optionalAccess', _908 => _908.buildOgPlaceholderUrl, 'optionalCall', _909 => _909(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _910 => _910.title]), () => ( "")))]), () => ( null))
|
|
42109
42105
|
}
|
|
42110
42106
|
)
|
|
42111
42107
|
};
|
|
@@ -42257,8 +42253,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42257
42253
|
chatRef,
|
|
42258
42254
|
isNewTab: opts.isNewTab,
|
|
42259
42255
|
discuss: opts.discuss,
|
|
42260
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42261
|
-
hasEmbeddedVideo: _optionalChain([chatRef, 'access',
|
|
42256
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _911 => _911.extras, 'optionalAccess', _912 => _912.buildOgPlaceholderUrl, 'optionalCall', _913 => _913(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _914 => _914.title]), () => ( "")))]), () => ( null)),
|
|
42257
|
+
hasEmbeddedVideo: _optionalChain([chatRef, 'access', _915 => _915.metadata, 'optionalAccess', _916 => _916.hasEmbeddedVideo]) === true
|
|
42262
42258
|
}
|
|
42263
42259
|
)
|
|
42264
42260
|
},
|
|
@@ -42275,7 +42271,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42275
42271
|
chatRef,
|
|
42276
42272
|
isNewTab: opts.isNewTab,
|
|
42277
42273
|
discuss: opts.discuss,
|
|
42278
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42274
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _917 => _917.extras, 'optionalAccess', _918 => _918.buildOgPlaceholderUrl, 'optionalCall', _919 => _919(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _920 => _920.title]), () => ( "")))]), () => ( null))
|
|
42279
42275
|
}
|
|
42280
42276
|
)
|
|
42281
42277
|
},
|
|
@@ -42292,7 +42288,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42292
42288
|
chatRef,
|
|
42293
42289
|
isNewTab: opts.isNewTab,
|
|
42294
42290
|
discuss: opts.discuss,
|
|
42295
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42291
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _921 => _921.extras, 'optionalAccess', _922 => _922.buildOgPlaceholderUrl, 'optionalCall', _923 => _923(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _924 => _924.title]), () => ( "")))]), () => ( null))
|
|
42296
42292
|
}
|
|
42297
42293
|
)
|
|
42298
42294
|
},
|
|
@@ -42303,7 +42299,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42303
42299
|
bareInline: true,
|
|
42304
42300
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
|
|
42305
42301
|
render: (item, chatRef, opts) => {
|
|
42306
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42302
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _925 => _925.extras, 'optionalAccess', _926 => _926.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
|
|
42307
42303
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42308
42304
|
ProductReleaseChatCard,
|
|
42309
42305
|
{
|
|
@@ -42330,7 +42326,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42330
42326
|
chatRef,
|
|
42331
42327
|
isNewTab: opts.isNewTab,
|
|
42332
42328
|
discuss: opts.discuss,
|
|
42333
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42329
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _927 => _927.extras, 'optionalAccess', _928 => _928.buildOgPlaceholderUrl, 'optionalCall', _929 => _929(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _930 => _930.title]), () => ( "")))]), () => ( null))
|
|
42334
42330
|
}
|
|
42335
42331
|
)
|
|
42336
42332
|
},
|
|
@@ -42349,7 +42345,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42349
42345
|
chatRef,
|
|
42350
42346
|
isNewTab: opts.isNewTab,
|
|
42351
42347
|
discuss: opts.discuss,
|
|
42352
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
42348
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _931 => _931.extras, 'optionalAccess', _932 => _932.buildOgPlaceholderUrl, 'optionalCall', _933 => _933(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _934 => _934.title]), () => ( "")))]), () => ( null))
|
|
42353
42349
|
}
|
|
42354
42350
|
)
|
|
42355
42351
|
},
|
|
@@ -42361,7 +42357,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
42361
42357
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
|
|
42362
42358
|
// No public viewer — synthesize the hub-internal admin URL post-fetch
|
|
42363
42359
|
// so the wrapper + isNewTab computation see the actual destination.
|
|
42364
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
42360
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _935 => _935.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
|
|
42365
42361
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42366
42362
|
CampaignChatCard,
|
|
42367
42363
|
{
|
|
@@ -42381,18 +42377,18 @@ function ChatCardNavWrap({
|
|
|
42381
42377
|
isNewTab,
|
|
42382
42378
|
children
|
|
42383
42379
|
}) {
|
|
42384
|
-
const runtime =
|
|
42380
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
42385
42381
|
const router = _chunkG7UE6RKVcjs.useRouter.call(void 0, );
|
|
42386
42382
|
const panel = useChatPanel();
|
|
42387
42383
|
const onClickCapture = (e) => {
|
|
42388
42384
|
if (!href) return;
|
|
42389
42385
|
const targetEl = e.target;
|
|
42390
|
-
if (_optionalChain([targetEl, 'optionalAccess',
|
|
42391
|
-
if (!_optionalChain([targetEl, 'optionalAccess',
|
|
42386
|
+
if (_optionalChain([targetEl, 'optionalAccess', _936 => _936.closest, 'optionalCall', _937 => _937("button")])) return;
|
|
42387
|
+
if (!_optionalChain([targetEl, 'optionalAccess', _938 => _938.closest, 'optionalCall', _939 => _939("a")])) return;
|
|
42392
42388
|
const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
|
|
42393
42389
|
if (!handled) return;
|
|
42394
42390
|
e.stopPropagation();
|
|
42395
|
-
if (!isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
42391
|
+
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _940 => _940.closeChat])) panel.closeChat();
|
|
42396
42392
|
};
|
|
42397
42393
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
|
|
42398
42394
|
}
|
|
@@ -42404,7 +42400,7 @@ function ChatCardLoader({
|
|
|
42404
42400
|
chipBasePlatform,
|
|
42405
42401
|
extras
|
|
42406
42402
|
}) {
|
|
42407
|
-
const runtime =
|
|
42403
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
42408
42404
|
const resolvedChatRef = React112.default.useMemo(() => {
|
|
42409
42405
|
const cta = resolveSourceRowCTA(
|
|
42410
42406
|
{
|
|
@@ -42414,7 +42410,7 @@ function ChatCardLoader({
|
|
|
42414
42410
|
title: chatRef.title,
|
|
42415
42411
|
externalUrl: chatRef.url,
|
|
42416
42412
|
targetPlatform: chatRef.targetPlatform,
|
|
42417
|
-
path: typeof _optionalChain([chatRef, 'access',
|
|
42413
|
+
path: typeof _optionalChain([chatRef, 'access', _941 => _941.metadata, 'optionalAccess', _942 => _942.path]) === "string" ? chatRef.metadata.path : null
|
|
42418
42414
|
},
|
|
42419
42415
|
sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
|
|
42420
42416
|
);
|
|
@@ -42428,7 +42424,7 @@ function ChatCardLoader({
|
|
|
42428
42424
|
const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
|
|
42429
42425
|
const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
|
|
42430
42426
|
const { item, isLoading } = useChatCardItem(
|
|
42431
|
-
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess',
|
|
42427
|
+
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _943 => _943.contentRefType]), () => ( "")),
|
|
42432
42428
|
fetchEntry ? resolvedChatRef.id : ""
|
|
42433
42429
|
);
|
|
42434
42430
|
if (!entry) return null;
|
|
@@ -42459,7 +42455,7 @@ function ChatCardLoader({
|
|
|
42459
42455
|
isNewTab,
|
|
42460
42456
|
discuss
|
|
42461
42457
|
};
|
|
42462
|
-
const path = typeof _optionalChain([finalChatRef, 'access',
|
|
42458
|
+
const path = typeof _optionalChain([finalChatRef, 'access', _944 => _944.metadata, 'optionalAccess', _945 => _945.path]) === "string" ? finalChatRef.metadata.path : null;
|
|
42463
42459
|
const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42464
42460
|
ChatCardNavWrap,
|
|
42465
42461
|
{
|
|
@@ -42845,7 +42841,7 @@ function useJetStreamDialogSubscription({
|
|
|
42845
42841
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
42846
42842
|
conn: sharedConn,
|
|
42847
42843
|
wsUrl,
|
|
42848
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
42844
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _946 => _946.current, 'optionalCall', _947 => _947()]),
|
|
42849
42845
|
backoff: reconnectionBackoffRef.current,
|
|
42850
42846
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
42851
42847
|
// JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
|
|
@@ -42860,7 +42856,7 @@ function useJetStreamDialogSubscription({
|
|
|
42860
42856
|
setReconnectionCount((c) => c + 1);
|
|
42861
42857
|
}
|
|
42862
42858
|
hadConnectionBeforeRef.current = true;
|
|
42863
|
-
_optionalChain([onConnectRef, 'access',
|
|
42859
|
+
_optionalChain([onConnectRef, 'access', _948 => _948.current, 'optionalCall', _949 => _949()]);
|
|
42864
42860
|
}
|
|
42865
42861
|
if (status === "error") {
|
|
42866
42862
|
console.warn("[JetStream] NATS protocol error:", evt.data);
|
|
@@ -42870,7 +42866,7 @@ function useJetStreamDialogSubscription({
|
|
|
42870
42866
|
setIsConnected(false);
|
|
42871
42867
|
setIsSubscribed(false);
|
|
42872
42868
|
tearDownSubscription();
|
|
42873
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
42869
|
+
_optionalChain([onDisconnectRef, 'access', _950 => _950.current, 'optionalCall', _951 => _951()]);
|
|
42874
42870
|
}
|
|
42875
42871
|
}
|
|
42876
42872
|
});
|
|
@@ -42949,7 +42945,7 @@ function useJetStreamDialogSubscription({
|
|
|
42949
42945
|
}
|
|
42950
42946
|
subscriptionRef.current = handle;
|
|
42951
42947
|
setIsSubscribed(true);
|
|
42952
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
42948
|
+
_optionalChain([onSubscribedRef, 'access', _952 => _952.current, 'optionalCall', _953 => _953()]);
|
|
42953
42949
|
} catch (e43) {
|
|
42954
42950
|
if (!cancelled) {
|
|
42955
42951
|
setIsSubscribed(false);
|
|
@@ -43062,20 +43058,20 @@ function useNatsDialogSubscription({
|
|
|
43062
43058
|
const tearDownSubscriptions = () => {
|
|
43063
43059
|
subscriptionRefs.current.forEach((sub) => {
|
|
43064
43060
|
try {
|
|
43065
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43061
|
+
_optionalChain([sub, 'optionalAccess', _954 => _954.unsubscribe, 'call', _955 => _955()]);
|
|
43066
43062
|
} catch (e45) {
|
|
43067
43063
|
}
|
|
43068
43064
|
});
|
|
43069
43065
|
subscriptionRefs.current.clear();
|
|
43070
43066
|
lastSubscribedDialogIdRef.current = null;
|
|
43071
|
-
_optionalChain([abortControllerRef, 'access',
|
|
43067
|
+
_optionalChain([abortControllerRef, 'access', _956 => _956.current, 'optionalAccess', _957 => _957.abort, 'call', _958 => _958()]);
|
|
43072
43068
|
abortControllerRef.current = null;
|
|
43073
43069
|
};
|
|
43074
43070
|
const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
|
|
43075
43071
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
43076
43072
|
conn: sharedConn,
|
|
43077
43073
|
wsUrl,
|
|
43078
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
43074
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _959 => _959.current, 'optionalCall', _960 => _960()]),
|
|
43079
43075
|
backoff: reconnectionBackoffRef.current,
|
|
43080
43076
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
43081
43077
|
shouldRetryOn: isDisconnectStatus,
|
|
@@ -43086,7 +43082,7 @@ function useNatsDialogSubscription({
|
|
|
43086
43082
|
setReconnectionCount((c) => c + 1);
|
|
43087
43083
|
}
|
|
43088
43084
|
hadConnectionBeforeRef.current = true;
|
|
43089
|
-
_optionalChain([onConnectRef, 'access',
|
|
43085
|
+
_optionalChain([onConnectRef, 'access', _961 => _961.current, 'optionalCall', _962 => _962()]);
|
|
43090
43086
|
}
|
|
43091
43087
|
if (status === "error") {
|
|
43092
43088
|
console.warn("[NATS] protocol error:", evt.data);
|
|
@@ -43096,7 +43092,7 @@ function useNatsDialogSubscription({
|
|
|
43096
43092
|
setIsConnected(false);
|
|
43097
43093
|
setIsSubscribed(false);
|
|
43098
43094
|
tearDownSubscriptions();
|
|
43099
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
43095
|
+
_optionalChain([onDisconnectRef, 'access', _963 => _963.current, 'optionalCall', _964 => _964()]);
|
|
43100
43096
|
}
|
|
43101
43097
|
}
|
|
43102
43098
|
});
|
|
@@ -43127,13 +43123,13 @@ function useNatsDialogSubscription({
|
|
|
43127
43123
|
setIsSubscribed(false);
|
|
43128
43124
|
subscriptionRefs.current.forEach((sub) => {
|
|
43129
43125
|
try {
|
|
43130
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43126
|
+
_optionalChain([sub, 'optionalAccess', _965 => _965.unsubscribe, 'call', _966 => _966()]);
|
|
43131
43127
|
} catch (e46) {
|
|
43132
43128
|
}
|
|
43133
43129
|
});
|
|
43134
43130
|
subscriptionRefs.current.clear();
|
|
43135
43131
|
lastSubscribedDialogIdRef.current = null;
|
|
43136
|
-
_optionalChain([abortControllerRef, 'access',
|
|
43132
|
+
_optionalChain([abortControllerRef, 'access', _967 => _967.current, 'optionalAccess', _968 => _968.abort, 'call', _969 => _969()]);
|
|
43137
43133
|
abortControllerRef.current = null;
|
|
43138
43134
|
}
|
|
43139
43135
|
return;
|
|
@@ -43145,12 +43141,12 @@ function useNatsDialogSubscription({
|
|
|
43145
43141
|
if (subscriptionRefs.current.size > 0) {
|
|
43146
43142
|
subscriptionRefs.current.forEach((sub) => {
|
|
43147
43143
|
try {
|
|
43148
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43144
|
+
_optionalChain([sub, 'optionalAccess', _970 => _970.unsubscribe, 'call', _971 => _971()]);
|
|
43149
43145
|
} catch (e47) {
|
|
43150
43146
|
}
|
|
43151
43147
|
});
|
|
43152
43148
|
subscriptionRefs.current.clear();
|
|
43153
|
-
_optionalChain([abortControllerRef, 'access',
|
|
43149
|
+
_optionalChain([abortControllerRef, 'access', _972 => _972.current, 'optionalAccess', _973 => _973.abort, 'call', _974 => _974()]);
|
|
43154
43150
|
}
|
|
43155
43151
|
abortControllerRef.current = new AbortController();
|
|
43156
43152
|
const abort = abortControllerRef.current;
|
|
@@ -43182,7 +43178,7 @@ function useNatsDialogSubscription({
|
|
|
43182
43178
|
});
|
|
43183
43179
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
43184
43180
|
setIsSubscribed(true);
|
|
43185
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
43181
|
+
_optionalChain([onSubscribedRef, 'access', _975 => _975.current, 'optionalCall', _976 => _976()]);
|
|
43186
43182
|
};
|
|
43187
43183
|
if (isConnectedRef.current) {
|
|
43188
43184
|
createSubscriptions();
|
|
@@ -43192,7 +43188,7 @@ function useNatsDialogSubscription({
|
|
|
43192
43188
|
abort.abort();
|
|
43193
43189
|
subscriptionRefs.current.forEach((sub) => {
|
|
43194
43190
|
try {
|
|
43195
|
-
_optionalChain([sub, 'optionalAccess',
|
|
43191
|
+
_optionalChain([sub, 'optionalAccess', _977 => _977.unsubscribe, 'call', _978 => _978()]);
|
|
43196
43192
|
} catch (e49) {
|
|
43197
43193
|
}
|
|
43198
43194
|
});
|
|
@@ -43233,7 +43229,7 @@ function useNatsDialogSubscription({
|
|
|
43233
43229
|
});
|
|
43234
43230
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
43235
43231
|
setIsSubscribed(true);
|
|
43236
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
43232
|
+
_optionalChain([onSubscribedRef, 'access', _979 => _979.current, 'optionalCall', _980 => _980()]);
|
|
43237
43233
|
} else if (subscriptionRefs.current.size > 0) {
|
|
43238
43234
|
setIsSubscribed(true);
|
|
43239
43235
|
}
|
|
@@ -43241,10 +43237,10 @@ function useNatsDialogSubscription({
|
|
|
43241
43237
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
43242
43238
|
}
|
|
43243
43239
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
43244
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
43240
|
+
const path = _optionalChain([options, 'optionalAccess', _981 => _981.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
43245
43241
|
const u = new URL(path, apiBaseUrl);
|
|
43246
43242
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
43247
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
43243
|
+
if (_optionalChain([options, 'optionalAccess', _982 => _982.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _983 => _983.token])) {
|
|
43248
43244
|
u.searchParams.set("authorization", options.token);
|
|
43249
43245
|
}
|
|
43250
43246
|
return u.toString();
|
|
@@ -43380,7 +43376,7 @@ function parseChunkToAction(chunk) {
|
|
|
43380
43376
|
// is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
|
|
43381
43377
|
// historical path in `process-historical-messages.ts`) — keeps both
|
|
43382
43378
|
// message sources producing an identical shape.
|
|
43383
|
-
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess',
|
|
43379
|
+
contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _984 => _984.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _985 => _985.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
|
|
43384
43380
|
};
|
|
43385
43381
|
case MESSAGE_TYPE.TOKEN_USAGE:
|
|
43386
43382
|
return {
|
|
@@ -43572,8 +43568,8 @@ var MessageSegmentAccumulator = class {
|
|
|
43572
43568
|
type: "tool_execution",
|
|
43573
43569
|
data: {
|
|
43574
43570
|
...toolData,
|
|
43575
|
-
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
43576
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
43571
|
+
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _986 => _986.data, 'access', _987 => _987.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _988 => _988.toolTitle]))),
|
|
43572
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _989 => _989.parameters])
|
|
43577
43573
|
}
|
|
43578
43574
|
};
|
|
43579
43575
|
if (existingIndex !== -1) {
|
|
@@ -43597,8 +43593,8 @@ var MessageSegmentAccumulator = class {
|
|
|
43597
43593
|
if (seg.type !== "approval_batch") return seg;
|
|
43598
43594
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
43599
43595
|
if (!hasCall) return seg;
|
|
43600
|
-
const prev = _optionalChain([seg, 'access',
|
|
43601
|
-
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess',
|
|
43596
|
+
const prev = _optionalChain([seg, 'access', _990 => _990.data, 'access', _991 => _991.executions, 'optionalAccess', _992 => _992[execId]]);
|
|
43597
|
+
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _993 => _993.result]), success: _optionalChain([prev, 'optionalAccess', _994 => _994.success]) };
|
|
43602
43598
|
matched = true;
|
|
43603
43599
|
return {
|
|
43604
43600
|
...seg,
|
|
@@ -43720,10 +43716,10 @@ var MessageSegmentAccumulator = class {
|
|
|
43720
43716
|
const segment = {
|
|
43721
43717
|
type: "approval_request",
|
|
43722
43718
|
data: {
|
|
43723
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
43724
|
-
explanation: _optionalChain([pendingApproval, 'optionalAccess',
|
|
43719
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _995 => _995.command]) || "",
|
|
43720
|
+
explanation: _optionalChain([pendingApproval, 'optionalAccess', _996 => _996.explanation]),
|
|
43725
43721
|
requestId,
|
|
43726
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
43722
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _997 => _997.approvalType]) || approvalType
|
|
43727
43723
|
},
|
|
43728
43724
|
status,
|
|
43729
43725
|
onApprove: this.callbacks.onApprove,
|
|
@@ -43915,7 +43911,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
43915
43911
|
if (initialState.escalatedApprovals) {
|
|
43916
43912
|
pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
|
|
43917
43913
|
initialState.escalatedApprovals.forEach((data, requestId) => {
|
|
43918
|
-
_optionalChain([callbacks, 'access',
|
|
43914
|
+
_optionalChain([callbacks, 'access', _998 => _998.onEscalatedApproval, 'optionalCall', _999 => _999(requestId, data)]);
|
|
43919
43915
|
});
|
|
43920
43916
|
}
|
|
43921
43917
|
hasEverStreamedRef.current = true;
|
|
@@ -43936,12 +43932,12 @@ function useRealtimeChunkProcessor(options) {
|
|
|
43936
43932
|
if (!action) return;
|
|
43937
43933
|
const accumulator = accumulatorRef.current;
|
|
43938
43934
|
const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
|
|
43939
|
-
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access',
|
|
43935
|
+
const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1000 => _1000.onSegmentsUpdate, 'optionalCall', _1001 => _1001(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
|
|
43940
43936
|
if (action.action === "direct_message") sawDirectMessageRef.current = true;
|
|
43941
43937
|
if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
|
|
43942
43938
|
if (isInStreamRef.current) {
|
|
43943
43939
|
isInStreamRef.current = false;
|
|
43944
|
-
_optionalChain([callbacks, 'access',
|
|
43940
|
+
_optionalChain([callbacks, 'access', _1002 => _1002.onStreamEnd, 'optionalCall', _1003 => _1003()]);
|
|
43945
43941
|
accumulator.resetSegments();
|
|
43946
43942
|
}
|
|
43947
43943
|
return;
|
|
@@ -43950,16 +43946,16 @@ function useRealtimeChunkProcessor(options) {
|
|
|
43950
43946
|
case "message_start":
|
|
43951
43947
|
isInStreamRef.current = true;
|
|
43952
43948
|
hasEverStreamedRef.current = true;
|
|
43953
|
-
_optionalChain([callbacks, 'access',
|
|
43949
|
+
_optionalChain([callbacks, 'access', _1004 => _1004.onStreamStart, 'optionalCall', _1005 => _1005()]);
|
|
43954
43950
|
accumulator.resetSegments();
|
|
43955
43951
|
break;
|
|
43956
43952
|
case "message_end":
|
|
43957
43953
|
isInStreamRef.current = false;
|
|
43958
|
-
_optionalChain([callbacks, 'access',
|
|
43954
|
+
_optionalChain([callbacks, 'access', _1006 => _1006.onStreamEnd, 'optionalCall', _1007 => _1007()]);
|
|
43959
43955
|
accumulator.resetSegments();
|
|
43960
43956
|
break;
|
|
43961
43957
|
case "metadata":
|
|
43962
|
-
_optionalChain([callbacks, 'access',
|
|
43958
|
+
_optionalChain([callbacks, 'access', _1008 => _1008.onMetadata, 'optionalCall', _1009 => _1009(action)]);
|
|
43963
43959
|
break;
|
|
43964
43960
|
case "text": {
|
|
43965
43961
|
const segments = accumulator.appendText(action.text);
|
|
@@ -44002,7 +43998,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44002
43998
|
emitSegments(segments);
|
|
44003
43999
|
} else {
|
|
44004
44000
|
pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
|
|
44005
|
-
_optionalChain([callbacks, 'access',
|
|
44001
|
+
_optionalChain([callbacks, 'access', _1010 => _1010.onEscalatedApproval, 'optionalCall', _1011 => _1011(requestId, { command, explanation, approvalType })]);
|
|
44006
44002
|
}
|
|
44007
44003
|
break;
|
|
44008
44004
|
}
|
|
@@ -44014,13 +44010,13 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44014
44010
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
44015
44011
|
pendingEscalatedRef.current.set(requestId, {
|
|
44016
44012
|
command: summary,
|
|
44017
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
44013
|
+
explanation: _optionalChain([required, 'optionalAccess', _1012 => _1012.toolExplanation]),
|
|
44018
44014
|
approvalType,
|
|
44019
44015
|
toolCalls
|
|
44020
44016
|
});
|
|
44021
|
-
_optionalChain([callbacks, 'access',
|
|
44017
|
+
_optionalChain([callbacks, 'access', _1013 => _1013.onEscalatedApproval, 'optionalCall', _1014 => _1014(requestId, {
|
|
44022
44018
|
command: summary,
|
|
44023
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
44019
|
+
explanation: _optionalChain([required, 'optionalAccess', _1015 => _1015.toolExplanation]),
|
|
44024
44020
|
approvalType
|
|
44025
44021
|
})]);
|
|
44026
44022
|
break;
|
|
@@ -44050,7 +44046,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44050
44046
|
const status = approved ? "approved" : "rejected";
|
|
44051
44047
|
if (escalatedData) {
|
|
44052
44048
|
pendingEscalatedRef.current.delete(requestId);
|
|
44053
|
-
_optionalChain([callbacks, 'access',
|
|
44049
|
+
_optionalChain([callbacks, 'access', _1016 => _1016.onEscalatedApprovalResult, 'optionalCall', _1017 => _1017(requestId, approved, {
|
|
44054
44050
|
command: escalatedData.command,
|
|
44055
44051
|
explanation: escalatedData.explanation,
|
|
44056
44052
|
approvalType: escalatedData.approvalType
|
|
@@ -44096,29 +44092,29 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44096
44092
|
emitSegments(accumulator.getSegments());
|
|
44097
44093
|
}
|
|
44098
44094
|
}
|
|
44099
|
-
_optionalChain([callbacks, 'access',
|
|
44095
|
+
_optionalChain([callbacks, 'access', _1018 => _1018.onApprovalResolved, 'optionalCall', _1019 => _1019(requestId, status, approvalType, resolvedByName)]);
|
|
44100
44096
|
break;
|
|
44101
44097
|
}
|
|
44102
44098
|
case "error": {
|
|
44103
44099
|
let message2;
|
|
44104
|
-
if ("details" in action && _optionalChain([action, 'optionalAccess',
|
|
44100
|
+
if ("details" in action && _optionalChain([action, 'optionalAccess', _1020 => _1020.details])) {
|
|
44105
44101
|
try {
|
|
44106
|
-
message2 = _optionalChain([JSON, 'access',
|
|
44102
|
+
message2 = _optionalChain([JSON, 'access', _1021 => _1021.parse, 'call', _1022 => _1022(action.details), 'optionalAccess', _1023 => _1023.error, 'optionalAccess', _1024 => _1024.message]);
|
|
44107
44103
|
} catch (e51) {
|
|
44108
44104
|
message2 = action.details;
|
|
44109
44105
|
}
|
|
44110
44106
|
}
|
|
44111
44107
|
const segments = accumulator.addError(action.error, message2);
|
|
44112
44108
|
emitSegments(segments);
|
|
44113
|
-
_optionalChain([callbacks, 'access',
|
|
44109
|
+
_optionalChain([callbacks, 'access', _1025 => _1025.onError, 'optionalCall', _1026 => _1026(action.error, message2)]);
|
|
44114
44110
|
break;
|
|
44115
44111
|
}
|
|
44116
44112
|
case "system": {
|
|
44117
|
-
_optionalChain([callbacks, 'access',
|
|
44113
|
+
_optionalChain([callbacks, 'access', _1027 => _1027.onSystemMessage, 'optionalCall', _1028 => _1028(action.text, { streamSeq })]);
|
|
44118
44114
|
break;
|
|
44119
44115
|
}
|
|
44120
44116
|
case "direct_message": {
|
|
44121
|
-
_optionalChain([callbacks, 'access',
|
|
44117
|
+
_optionalChain([callbacks, 'access', _1029 => _1029.onDirectMessage, 'optionalCall', _1030 => _1030(action.text, {
|
|
44122
44118
|
ownerType: action.ownerType,
|
|
44123
44119
|
displayName: action.displayName,
|
|
44124
44120
|
userId: action.userId,
|
|
@@ -44127,7 +44123,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44127
44123
|
break;
|
|
44128
44124
|
}
|
|
44129
44125
|
case "message_request":
|
|
44130
|
-
_optionalChain([callbacks, 'access',
|
|
44126
|
+
_optionalChain([callbacks, 'access', _1031 => _1031.onUserMessage, 'optionalCall', _1032 => _1032(action.text, {
|
|
44131
44127
|
ownerType: action.ownerType,
|
|
44132
44128
|
displayName: action.displayName,
|
|
44133
44129
|
userId: action.userId,
|
|
@@ -44136,7 +44132,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44136
44132
|
})]);
|
|
44137
44133
|
break;
|
|
44138
44134
|
case "token_usage":
|
|
44139
|
-
_optionalChain([callbacks, 'access',
|
|
44135
|
+
_optionalChain([callbacks, 'access', _1033 => _1033.onTokenUsage, 'optionalCall', _1034 => _1034(action.data)]);
|
|
44140
44136
|
break;
|
|
44141
44137
|
case "context_compaction_start": {
|
|
44142
44138
|
const standalone = !isInStreamRef.current;
|
|
@@ -44151,7 +44147,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44151
44147
|
break;
|
|
44152
44148
|
}
|
|
44153
44149
|
case "dialog_closed":
|
|
44154
|
-
_optionalChain([callbacks, 'access',
|
|
44150
|
+
_optionalChain([callbacks, 'access', _1035 => _1035.onDialogClosed, 'optionalCall', _1036 => _1036()]);
|
|
44155
44151
|
break;
|
|
44156
44152
|
default:
|
|
44157
44153
|
break;
|
|
@@ -44192,7 +44188,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
44192
44188
|
async function fetchSlashCommands(prefix, signal, commandsUrl) {
|
|
44193
44189
|
const url = new URL(commandsUrl, window.location.origin);
|
|
44194
44190
|
if (prefix) url.searchParams.set("q", prefix);
|
|
44195
|
-
const res = await
|
|
44191
|
+
const res = await _chunkG56GYN7Zcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
|
|
44196
44192
|
if (!res.ok) return [];
|
|
44197
44193
|
const data = await res.json();
|
|
44198
44194
|
return _nullishCoalesce(data.commands, () => ( []));
|
|
@@ -44213,7 +44209,7 @@ function useSlashCommands(prefix, commandsUrl) {
|
|
|
44213
44209
|
const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
|
|
44214
44210
|
if (!cancelled) setCommands(next);
|
|
44215
44211
|
} catch (err) {
|
|
44216
|
-
if (!cancelled && _optionalChain([err, 'optionalAccess',
|
|
44212
|
+
if (!cancelled && _optionalChain([err, 'optionalAccess', _1037 => _1037.name]) !== "AbortError") {
|
|
44217
44213
|
console.warn("[use-slash-commands] fetch failed:", err);
|
|
44218
44214
|
}
|
|
44219
44215
|
} finally {
|
|
@@ -44232,7 +44228,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
|
|
|
44232
44228
|
const query = _reactquery.useQuery.call(void 0, {
|
|
44233
44229
|
queryKey: ["chat-slash-commands", commandsUrl],
|
|
44234
44230
|
queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
|
|
44235
|
-
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
44231
|
+
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1038 => _1038.enabled]), () => ( true)),
|
|
44236
44232
|
staleTime: Infinity,
|
|
44237
44233
|
gcTime: Infinity
|
|
44238
44234
|
});
|
|
@@ -44253,7 +44249,7 @@ var EMPTY_STATE_FALLBACK = {
|
|
|
44253
44249
|
};
|
|
44254
44250
|
async function fetchEmptyStateConfig(signal, emptyStateUrl) {
|
|
44255
44251
|
const url = new URL(emptyStateUrl, window.location.origin);
|
|
44256
|
-
const res = await
|
|
44252
|
+
const res = await _chunkG56GYN7Zcjs.embedAuthedFetch.call(void 0, url.toString(), { signal, headers: {} });
|
|
44257
44253
|
if (!res.ok) {
|
|
44258
44254
|
if (res.status >= 500) {
|
|
44259
44255
|
console.error(`[chat] empty-state config fetch failed (${res.status}): ${url.pathname}`);
|
|
@@ -44262,13 +44258,13 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
|
|
|
44262
44258
|
}
|
|
44263
44259
|
const data = await res.json();
|
|
44264
44260
|
return {
|
|
44265
|
-
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
44266
|
-
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
44267
|
-
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess',
|
|
44261
|
+
greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1039 => _1039.greeting]), () => ( null)),
|
|
44262
|
+
enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1040 => _1040.enabledRagTableIds]), () => ( [])),
|
|
44263
|
+
suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1041 => _1041.suggestedQueries]), () => ( []))
|
|
44268
44264
|
};
|
|
44269
44265
|
}
|
|
44270
44266
|
function useEmptyStateConfig(emptyStateUrl, options) {
|
|
44271
|
-
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
44267
|
+
const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1042 => _1042.enabled]), () => ( true))) && !!emptyStateUrl;
|
|
44272
44268
|
const query = _reactquery.useQuery.call(void 0, {
|
|
44273
44269
|
queryKey: ["chat-empty-state", emptyStateUrl],
|
|
44274
44270
|
queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
|
|
@@ -44293,7 +44289,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
|
|
|
44293
44289
|
var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
|
|
44294
44290
|
function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
44295
44291
|
return new Promise((resolve, reject) => {
|
|
44296
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
44292
|
+
if (_optionalChain([signal, 'optionalAccess', _1043 => _1043.aborted])) {
|
|
44297
44293
|
reject(new Error("Upload cancelled"));
|
|
44298
44294
|
return;
|
|
44299
44295
|
}
|
|
@@ -44307,7 +44303,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
44307
44303
|
xhr.removeEventListener("error", handleError);
|
|
44308
44304
|
xhr.removeEventListener("abort", handleAbort);
|
|
44309
44305
|
xhr.removeEventListener("timeout", handleTimeout);
|
|
44310
|
-
_optionalChain([signal, 'optionalAccess',
|
|
44306
|
+
_optionalChain([signal, 'optionalAccess', _1044 => _1044.removeEventListener, 'call', _1045 => _1045("abort", handleSignalAbort)]);
|
|
44311
44307
|
if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
|
|
44312
44308
|
};
|
|
44313
44309
|
const handleProgress = (event) => {
|
|
@@ -44343,7 +44339,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
44343
44339
|
const handleSignalAbort = () => {
|
|
44344
44340
|
xhr.abort();
|
|
44345
44341
|
};
|
|
44346
|
-
_optionalChain([signal, 'optionalAccess',
|
|
44342
|
+
_optionalChain([signal, 'optionalAccess', _1046 => _1046.addEventListener, 'call', _1047 => _1047("abort", handleSignalAbort, { once: true })]);
|
|
44347
44343
|
xhr.upload.addEventListener("progress", handleProgress);
|
|
44348
44344
|
xhr.addEventListener("load", handleLoad);
|
|
44349
44345
|
xhr.addEventListener("error", handleError);
|
|
@@ -44359,7 +44355,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
44359
44355
|
});
|
|
44360
44356
|
}
|
|
44361
44357
|
function useChatAttachments() {
|
|
44362
|
-
const runtime =
|
|
44358
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
44363
44359
|
const uploadUrlEndpoint = runtime.endpoints.attachmentUploadUrl;
|
|
44364
44360
|
const [attachments, setAttachments] = _react.useState.call(void 0, []);
|
|
44365
44361
|
const controllersRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
|
|
@@ -44387,12 +44383,12 @@ function useChatAttachments() {
|
|
|
44387
44383
|
try {
|
|
44388
44384
|
sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
|
|
44389
44385
|
} catch (err) {
|
|
44390
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44386
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1048 => _1048.signal, 'access', _1049 => _1049.aborted])) return;
|
|
44391
44387
|
throw new Error(
|
|
44392
44388
|
`Could not read file content: ${err instanceof Error ? err.message : String(err)}`
|
|
44393
44389
|
);
|
|
44394
44390
|
}
|
|
44395
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44391
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1050 => _1050.signal, 'access', _1051 => _1051.aborted])) return;
|
|
44396
44392
|
if (!sniffed) {
|
|
44397
44393
|
throw new Error("Unrecognized file format");
|
|
44398
44394
|
}
|
|
@@ -44403,10 +44399,10 @@ function useChatAttachments() {
|
|
|
44403
44399
|
);
|
|
44404
44400
|
}
|
|
44405
44401
|
updateOne(att.id, { status: "uploading", progress: 5 });
|
|
44406
|
-
const urlResp = await
|
|
44402
|
+
const urlResp = await _chunkG56GYN7Zcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
|
|
44407
44403
|
method: "POST",
|
|
44408
44404
|
headers: { "Content-Type": "application/json" },
|
|
44409
|
-
signal: _optionalChain([ctrl, 'optionalAccess',
|
|
44405
|
+
signal: _optionalChain([ctrl, 'optionalAccess', _1052 => _1052.signal]),
|
|
44410
44406
|
body: JSON.stringify({
|
|
44411
44407
|
fileName: att.file.name,
|
|
44412
44408
|
// Pass the SNIFFED MIME (not `file.type`, which can be a
|
|
@@ -44432,9 +44428,9 @@ function useChatAttachments() {
|
|
|
44432
44428
|
(pct) => {
|
|
44433
44429
|
updateOne(att.id, { progress: pct });
|
|
44434
44430
|
},
|
|
44435
|
-
_optionalChain([ctrl, 'optionalAccess',
|
|
44431
|
+
_optionalChain([ctrl, 'optionalAccess', _1053 => _1053.signal])
|
|
44436
44432
|
);
|
|
44437
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44433
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1054 => _1054.signal, 'access', _1055 => _1055.aborted])) return;
|
|
44438
44434
|
updateOne(att.id, {
|
|
44439
44435
|
status: "ready",
|
|
44440
44436
|
progress: 100,
|
|
@@ -44442,7 +44438,7 @@ function useChatAttachments() {
|
|
|
44442
44438
|
viewToken: mintData.viewToken
|
|
44443
44439
|
});
|
|
44444
44440
|
} catch (err) {
|
|
44445
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
44441
|
+
if (_optionalChain([ctrl, 'optionalAccess', _1056 => _1056.signal, 'access', _1057 => _1057.aborted])) return;
|
|
44446
44442
|
const message2 = err instanceof Error ? err.message : String(err);
|
|
44447
44443
|
updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
|
|
44448
44444
|
} finally {
|
|
@@ -44532,7 +44528,7 @@ function useChatAttachments() {
|
|
|
44532
44528
|
|
|
44533
44529
|
var CLOSED = { isOpen: false, images: [], initialIndex: 0 };
|
|
44534
44530
|
function useChatAttachmentImageGallery() {
|
|
44535
|
-
const runtime =
|
|
44531
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
44536
44532
|
const viewUrlPrefix = runtime.endpoints.attachmentViewUrlPrefix;
|
|
44537
44533
|
const panelRef = _react.useRef.call(void 0, null);
|
|
44538
44534
|
const [state, setState] = _react.useState.call(void 0, CLOSED);
|
|
@@ -44591,9 +44587,9 @@ var ANON_DEFAULTS = {
|
|
|
44591
44587
|
user: null
|
|
44592
44588
|
};
|
|
44593
44589
|
function useResolveChatIdentity(enabled) {
|
|
44594
|
-
const runtime =
|
|
44590
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
44595
44591
|
const url = runtime.endpoints.identityUrl;
|
|
44596
|
-
const proxyEmail = _nullishCoalesce(_optionalChain([
|
|
44592
|
+
const proxyEmail = _nullishCoalesce(_optionalChain([_chunkG56GYN7Zcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1058 => _1058.email]), () => ( null));
|
|
44597
44593
|
const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
|
|
44598
44594
|
const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
|
|
44599
44595
|
_react.useEffect.call(void 0, () => {
|
|
@@ -44601,7 +44597,7 @@ function useResolveChatIdentity(enabled) {
|
|
|
44601
44597
|
let cancelled = false;
|
|
44602
44598
|
const ctrl = new AbortController();
|
|
44603
44599
|
setIsLoading(true);
|
|
44604
|
-
|
|
44600
|
+
_chunkG56GYN7Zcjs.embedAuthedFetch.call(void 0, url, { signal: ctrl.signal }).then(async (resp) => {
|
|
44605
44601
|
if (!resp.ok) return ANON_DEFAULTS;
|
|
44606
44602
|
return await resp.json();
|
|
44607
44603
|
}).then((next) => {
|
|
@@ -44681,7 +44677,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
|
|
|
44681
44677
|
yield chunk;
|
|
44682
44678
|
}
|
|
44683
44679
|
} catch (err) {
|
|
44684
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
44680
|
+
if (_optionalChain([err, 'optionalAccess', _1059 => _1059.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
44685
44681
|
return;
|
|
44686
44682
|
}
|
|
44687
44683
|
const errorMessage = err instanceof Error ? err.message : "An error occurred";
|
|
@@ -44732,7 +44728,7 @@ function useChat({
|
|
|
44732
44728
|
const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
|
|
44733
44729
|
onMessagesChangeRef.current = onMessagesChange;
|
|
44734
44730
|
_react.useEffect.call(void 0, () => {
|
|
44735
|
-
_optionalChain([onMessagesChangeRef, 'access',
|
|
44731
|
+
_optionalChain([onMessagesChangeRef, 'access', _1060 => _1060.current, 'optionalCall', _1061 => _1061(messages)]);
|
|
44736
44732
|
}, [messages]);
|
|
44737
44733
|
const {
|
|
44738
44734
|
streamMessage,
|
|
@@ -44769,7 +44765,7 @@ function useChat({
|
|
|
44769
44765
|
name: "You",
|
|
44770
44766
|
content: text,
|
|
44771
44767
|
timestamp: /* @__PURE__ */ new Date(),
|
|
44772
|
-
..._optionalChain([options, 'optionalAccess',
|
|
44768
|
+
..._optionalChain([options, 'optionalAccess', _1062 => _1062.hidden]) ? { hidden: true } : {}
|
|
44773
44769
|
};
|
|
44774
44770
|
addMessage(userMessage);
|
|
44775
44771
|
setIsTyping(true);
|
|
@@ -44831,7 +44827,7 @@ function useChat({
|
|
|
44831
44827
|
currentTextSegment = "";
|
|
44832
44828
|
}
|
|
44833
44829
|
const seg = segment;
|
|
44834
|
-
const proposalId = _optionalChain([seg, 'access',
|
|
44830
|
+
const proposalId = _optionalChain([seg, 'access', _1063 => _1063.data, 'optionalAccess', _1064 => _1064.requestId]);
|
|
44835
44831
|
const updateApprovalMessage = (transform) => {
|
|
44836
44832
|
setMessages((prev) => {
|
|
44837
44833
|
for (let i = prev.length - 1; i >= 0; i--) {
|
|
@@ -44840,7 +44836,7 @@ function useChat({
|
|
|
44840
44836
|
if (!Array.isArray(m.content)) continue;
|
|
44841
44837
|
const segments = m.content;
|
|
44842
44838
|
const hasMatch = segments.some(
|
|
44843
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
44839
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1065 => _1065.data, 'optionalAccess', _1066 => _1066.requestId]) === proposalId
|
|
44844
44840
|
);
|
|
44845
44841
|
if (!hasMatch) continue;
|
|
44846
44842
|
const next = [...prev];
|
|
@@ -44882,11 +44878,11 @@ function useChat({
|
|
|
44882
44878
|
if (!Array.isArray(m.content)) continue;
|
|
44883
44879
|
const segments = m.content;
|
|
44884
44880
|
const hasMatch = segments.some(
|
|
44885
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
44881
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1067 => _1067.data, 'optionalAccess', _1068 => _1068.requestId]) === decision.proposalId
|
|
44886
44882
|
);
|
|
44887
44883
|
if (!hasMatch) continue;
|
|
44888
44884
|
const flipped = segments.map(
|
|
44889
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
44885
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _1069 => _1069.data, 'optionalAccess', _1070 => _1070.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
|
|
44890
44886
|
);
|
|
44891
44887
|
const next = [...prev];
|
|
44892
44888
|
next[i] = { ...m, content: flipped };
|
|
@@ -45048,8 +45044,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45048
45044
|
})),
|
|
45049
45045
|
{ role: "user", content: message2 }
|
|
45050
45046
|
];
|
|
45051
|
-
const targetPath = _optionalChain([extra, 'optionalAccess',
|
|
45052
|
-
const requestBody = _optionalChain([extra, 'optionalAccess',
|
|
45047
|
+
const targetPath = _optionalChain([extra, 'optionalAccess', _1071 => _1071.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
|
|
45048
|
+
const requestBody = _optionalChain([extra, 'optionalAccess', _1072 => _1072.approvalAction]) ? {
|
|
45053
45049
|
proposal_id: extra.approvalAction.proposalId,
|
|
45054
45050
|
action: extra.approvalAction.action,
|
|
45055
45051
|
messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
|
|
@@ -45058,10 +45054,10 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45058
45054
|
}))
|
|
45059
45055
|
} : {
|
|
45060
45056
|
messages: apiMessages,
|
|
45061
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
45062
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
45057
|
+
..._optionalChain([extra, 'optionalAccess', _1073 => _1073.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
|
|
45058
|
+
..._optionalChain([extra, 'optionalAccess', _1074 => _1074.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
|
|
45063
45059
|
};
|
|
45064
|
-
const response = await
|
|
45060
|
+
const response = await _chunkG56GYN7Zcjs.embedAuthedFetch.call(void 0, targetPath, {
|
|
45065
45061
|
method: "POST",
|
|
45066
45062
|
body: JSON.stringify(requestBody),
|
|
45067
45063
|
signal
|
|
@@ -45069,7 +45065,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45069
45065
|
if (!response.ok) {
|
|
45070
45066
|
throw new Error(`Chat request failed: ${response.status}`);
|
|
45071
45067
|
}
|
|
45072
|
-
const reader = _optionalChain([response, 'access',
|
|
45068
|
+
const reader = _optionalChain([response, 'access', _1075 => _1075.body, 'optionalAccess', _1076 => _1076.getReader, 'call', _1077 => _1077()]);
|
|
45073
45069
|
if (!reader) throw new Error("No response body");
|
|
45074
45070
|
const decoder = new TextDecoder();
|
|
45075
45071
|
let buffer = "";
|
|
@@ -45152,7 +45148,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45152
45148
|
const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
|
|
45153
45149
|
const result = _nullishCoalesce(meta.result, () => ( null));
|
|
45154
45150
|
const card = _nullishCoalesce(meta.card, () => ( null));
|
|
45155
|
-
if (_optionalChain([card, 'optionalAccess',
|
|
45151
|
+
if (_optionalChain([card, 'optionalAccess', _1078 => _1078.ref, 'optionalAccess', _1079 => _1079.id]) && _optionalChain([card, 'optionalAccess', _1080 => _1080.type])) {
|
|
45156
45152
|
const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
|
|
45157
45153
|
const key = buildChatRefKey(card.type, card.ref.id);
|
|
45158
45154
|
refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
|
|
@@ -45165,8 +45161,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
45165
45161
|
willAutoContinue: meta.willAutoContinue === true,
|
|
45166
45162
|
...toolName ? { toolName } : {},
|
|
45167
45163
|
...result ? { result } : {},
|
|
45168
|
-
..._optionalChain([card, 'optionalAccess',
|
|
45169
|
-
..._optionalChain([card, 'optionalAccess',
|
|
45164
|
+
..._optionalChain([card, 'optionalAccess', _1081 => _1081.marker]) ? { marker: card.marker } : {},
|
|
45165
|
+
..._optionalChain([card, 'optionalAccess', _1082 => _1082.ref]) ? { cardRef: card.ref } : {},
|
|
45170
45166
|
...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
|
|
45171
45167
|
proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
|
|
45172
45168
|
};
|
|
@@ -45284,8 +45280,8 @@ var CHAT_STORAGE_VERSION = 1;
|
|
|
45284
45280
|
var DEFAULT_CHAT_SOURCE = "embed";
|
|
45285
45281
|
var chatStorageKey = (source) => {
|
|
45286
45282
|
const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
|
|
45287
|
-
const auth =
|
|
45288
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
45283
|
+
const auth = _chunkG56GYN7Zcjs.getEmbedProxyAuth.call(void 0, );
|
|
45284
|
+
if (_optionalChain([auth, 'optionalAccess', _1083 => _1083.email])) {
|
|
45289
45285
|
return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
|
|
45290
45286
|
}
|
|
45291
45287
|
return base;
|
|
@@ -45338,9 +45334,9 @@ function savePersistedChat(source, state) {
|
|
|
45338
45334
|
}
|
|
45339
45335
|
function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
45340
45336
|
const { active = true } = runtimeOptions;
|
|
45341
|
-
const runtime =
|
|
45337
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
45342
45338
|
const source = runtime.source || DEFAULT_CHAT_SOURCE;
|
|
45343
|
-
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
45339
|
+
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1084 => _1084.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
|
|
45344
45340
|
const persistedRef = _react.useRef.call(void 0, null);
|
|
45345
45341
|
if (persistedRef.current === null) {
|
|
45346
45342
|
pruneStaleChatStorage(source);
|
|
@@ -45445,7 +45441,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
45445
45441
|
const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
|
|
45446
45442
|
sources = sourcesMapRef.current.get(lookupIdx);
|
|
45447
45443
|
chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
|
|
45448
|
-
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access',
|
|
45444
|
+
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1085 => _1085.current, 'access', _1086 => _1086.get, 'call', _1087 => _1087(lookupIdx), 'optionalAccess', _1088 => _1088.scrollAnchor]), () => ( void 0));
|
|
45449
45445
|
}
|
|
45450
45446
|
return {
|
|
45451
45447
|
id: m.id,
|
|
@@ -45493,7 +45489,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
45493
45489
|
);
|
|
45494
45490
|
return;
|
|
45495
45491
|
}
|
|
45496
|
-
const refSlug = typeof _optionalChain([reference, 'access',
|
|
45492
|
+
const refSlug = typeof _optionalChain([reference, 'access', _1089 => _1089.metadata, 'optionalAccess', _1090 => _1090.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
|
|
45497
45493
|
const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
|
|
45498
45494
|
const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
45499
45495
|
const text = `/${cmdId} display "${escaped}"`;
|
|
@@ -45565,18 +45561,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
45565
45561
|
clearMessages,
|
|
45566
45562
|
streamingPhase,
|
|
45567
45563
|
/** Provider key for the lib's `<ModelDisplay>` icon. */
|
|
45568
|
-
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
45569
|
-
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
45570
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
45564
|
+
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1091 => _1091.provider]), () => ( null)),
|
|
45565
|
+
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1092 => _1092.modelLabel]), () => ( null)),
|
|
45566
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1093 => _1093.contextWindowMaxTokens]), () => ( null)),
|
|
45571
45567
|
/** Input tokens (known after server's message_start frame; null until). */
|
|
45572
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
45568
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1094 => _1094.inputTokens]), () => ( null)),
|
|
45573
45569
|
/** Output tokens (known only after server's trailing usage frame). */
|
|
45574
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
45570
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1095 => _1095.outputTokens]), () => ( null)),
|
|
45575
45571
|
/** Cache hit % (read / total-input × 100). null during streaming. */
|
|
45576
|
-
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
45572
|
+
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1096 => _1096.cacheHitRatePct]), () => ( null)),
|
|
45577
45573
|
/** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
|
|
45578
45574
|
* token counts). null until the trailing usage frame lands. */
|
|
45579
|
-
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
45575
|
+
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1097 => _1097.breakdown]), () => ( null)),
|
|
45580
45576
|
// ─── Dialog management — stubs for v1 ────────────────────────────────
|
|
45581
45577
|
// Guide mode currently keeps its history in `localStorage` opaquely
|
|
45582
45578
|
// under the hood (`runtime.source` namespaced key). Surfacing that
|
|
@@ -45634,15 +45630,15 @@ var noopRejectRequest = async (_id, _reason) => {
|
|
|
45634
45630
|
|
|
45635
45631
|
// src/components/chat/utils/process-historical-messages.ts
|
|
45636
45632
|
function getOwnerDisplayName(owner) {
|
|
45637
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
45633
|
+
if (_optionalChain([owner, 'optionalAccess', _1098 => _1098.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
45638
45634
|
const { firstName, lastName } = owner.user;
|
|
45639
45635
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
45640
45636
|
if (name) return name;
|
|
45641
45637
|
}
|
|
45642
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
45638
|
+
return _optionalChain([owner, 'optionalAccess', _1099 => _1099.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
45643
45639
|
}
|
|
45644
45640
|
function getOwnerAvatar(owner) {
|
|
45645
|
-
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess',
|
|
45641
|
+
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1100 => _1100.user, 'optionalAccess', _1101 => _1101.image, 'optionalAccess', _1102 => _1102.imageUrl]), () => ( void 0));
|
|
45646
45642
|
}
|
|
45647
45643
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
45648
45644
|
messageDataArray.forEach((data) => {
|
|
@@ -45705,14 +45701,14 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
45705
45701
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
45706
45702
|
return;
|
|
45707
45703
|
}
|
|
45708
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
45704
|
+
const isUserMessage = _optionalChain([msg, 'access', _1103 => _1103.owner, 'optionalAccess', _1104 => _1104.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1105 => _1105.owner, 'optionalAccess', _1106 => _1106.type]) === OWNER_TYPE.ADMIN;
|
|
45709
45705
|
if (isUserMessage) {
|
|
45710
45706
|
flushAssistantMessage();
|
|
45711
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
45707
|
+
const userAuthorType = _optionalChain([msg, 'access', _1107 => _1107.owner, 'optionalAccess', _1108 => _1108.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
45712
45708
|
messageDataArray.forEach((data) => {
|
|
45713
45709
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
45714
45710
|
const rawContext = data.contextItems;
|
|
45715
|
-
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess',
|
|
45711
|
+
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1109 => _1109.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1110 => _1110.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
|
|
45716
45712
|
processedMessages.push({
|
|
45717
45713
|
id: msg.id,
|
|
45718
45714
|
role: "user",
|
|
@@ -45736,7 +45732,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
45736
45732
|
});
|
|
45737
45733
|
const nextMsg = messages[index + 1];
|
|
45738
45734
|
const isLastMessage = index === messages.length - 1;
|
|
45739
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
45735
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1111 => _1111.owner, 'optionalAccess', _1112 => _1112.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1113 => _1113.owner, 'optionalAccess', _1114 => _1114.type]) === OWNER_TYPE.ADMIN);
|
|
45740
45736
|
if (isLastMessage || nextIsFromUser) {
|
|
45741
45737
|
flushAssistantMessage();
|
|
45742
45738
|
}
|
|
@@ -45846,7 +45842,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
45846
45842
|
}
|
|
45847
45843
|
}
|
|
45848
45844
|
} else {
|
|
45849
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
45845
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1115 => _1115.set, 'call', _1116 => _1116(data.approvalRequestId, {
|
|
45850
45846
|
command: data.command || "",
|
|
45851
45847
|
explanation: data.explanation,
|
|
45852
45848
|
approvalType,
|
|
@@ -45860,8 +45856,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
45860
45856
|
const existingStatus = approvalStatuses[data.approvalRequestId];
|
|
45861
45857
|
const status = existingStatus || (data.approved ? "approved" : "rejected");
|
|
45862
45858
|
const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
|
|
45863
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
45864
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
45859
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1117 => _1117.get, 'call', _1118 => _1118(data.approvalRequestId)]);
|
|
45860
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _1119 => _1119.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
45865
45861
|
if (batchApprovalsEnabled) {
|
|
45866
45862
|
accumulator.addApprovalBatch(
|
|
45867
45863
|
data.approvalRequestId,
|
|
@@ -45883,7 +45879,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
45883
45879
|
);
|
|
45884
45880
|
}
|
|
45885
45881
|
}
|
|
45886
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
45882
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1120 => _1120.delete, 'call', _1121 => _1121(data.approvalRequestId)]);
|
|
45887
45883
|
break;
|
|
45888
45884
|
}
|
|
45889
45885
|
if (escalatedData) {
|
|
@@ -45892,7 +45888,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
45892
45888
|
explanation: escalatedData.explanation,
|
|
45893
45889
|
approvalType: escalatedData.approvalType
|
|
45894
45890
|
});
|
|
45895
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
45891
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _1122 => _1122.delete, 'call', _1123 => _1123(data.approvalRequestId)]);
|
|
45896
45892
|
}
|
|
45897
45893
|
const before = accumulator.getSegments();
|
|
45898
45894
|
const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
|
|
@@ -45908,9 +45904,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
45908
45904
|
case MESSAGE_TYPE.ERROR:
|
|
45909
45905
|
if ("error" in data) {
|
|
45910
45906
|
let message2;
|
|
45911
|
-
if ("details" in data && _optionalChain([data, 'optionalAccess',
|
|
45907
|
+
if ("details" in data && _optionalChain([data, 'optionalAccess', _1124 => _1124.details])) {
|
|
45912
45908
|
try {
|
|
45913
|
-
message2 = _optionalChain([JSON, 'access',
|
|
45909
|
+
message2 = _optionalChain([JSON, 'access', _1125 => _1125.parse, 'call', _1126 => _1126(data.details), 'optionalAccess', _1127 => _1127.error, 'optionalAccess', _1128 => _1128.message]);
|
|
45914
45910
|
} catch (e58) {
|
|
45915
45911
|
message2 = data.details;
|
|
45916
45912
|
}
|
|
@@ -45993,14 +45989,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
45993
45989
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
45994
45990
|
return;
|
|
45995
45991
|
}
|
|
45996
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
45992
|
+
const isUserMessage = _optionalChain([msg, 'access', _1129 => _1129.owner, 'optionalAccess', _1130 => _1130.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1131 => _1131.owner, 'optionalAccess', _1132 => _1132.type]) === OWNER_TYPE.ADMIN;
|
|
45997
45993
|
if (isUserMessage) {
|
|
45998
45994
|
flushAssistantMessage();
|
|
45999
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
45995
|
+
const userAuthorType = _optionalChain([msg, 'access', _1133 => _1133.owner, 'optionalAccess', _1134 => _1134.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
46000
45996
|
messageDataArray.forEach((data) => {
|
|
46001
45997
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
46002
45998
|
const rawContext = data.contextItems;
|
|
46003
|
-
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess',
|
|
45999
|
+
const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1135 => _1135.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1136 => _1136.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
|
|
46004
46000
|
processedMessages.push({
|
|
46005
46001
|
id: msg.id,
|
|
46006
46002
|
role: "user",
|
|
@@ -46024,7 +46020,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
46024
46020
|
});
|
|
46025
46021
|
const nextMsg = messages[index + 1];
|
|
46026
46022
|
const isLastMessage = index === messages.length - 1;
|
|
46027
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
46023
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1137 => _1137.owner, 'optionalAccess', _1138 => _1138.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1139 => _1139.owner, 'optionalAccess', _1140 => _1140.type]) === OWNER_TYPE.ADMIN);
|
|
46028
46024
|
if (isLastMessage || nextIsFromUser) {
|
|
46029
46025
|
flushAssistantMessage();
|
|
46030
46026
|
}
|
|
@@ -46360,7 +46356,7 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
46360
46356
|
}, [active, fetchDialogs, loadDialogsPage]);
|
|
46361
46357
|
const sendMessage = _react.useCallback.call(void 0,
|
|
46362
46358
|
async (text, sendOptions) => {
|
|
46363
|
-
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess',
|
|
46359
|
+
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1141 => _1141.hidden]), () => ( false));
|
|
46364
46360
|
setMessages((prev) => [
|
|
46365
46361
|
...prev,
|
|
46366
46362
|
{
|
|
@@ -46524,11 +46520,11 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
46524
46520
|
// Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
|
|
46525
46521
|
// contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
|
|
46526
46522
|
// matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
|
|
46527
|
-
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
46528
|
-
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
46529
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
46530
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
46531
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
46523
|
+
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1142 => _1142.provider]), () => ( modelProvider)), () => ( null)),
|
|
46524
|
+
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1143 => _1143.modelLabel]), () => ( modelLabel)), () => ( null)),
|
|
46525
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1144 => _1144.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1145 => _1145.contextWindowMaxTokens]))), () => ( null)),
|
|
46526
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1146 => _1146.inputTokensSize]), () => ( null)),
|
|
46527
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1147 => _1147.outputTokensSize]), () => ( null)),
|
|
46532
46528
|
currentCacheHitRatePct: null,
|
|
46533
46529
|
currentUsageBreakdown: null,
|
|
46534
46530
|
// Dialog management
|
|
@@ -46776,7 +46772,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
46776
46772
|
break;
|
|
46777
46773
|
case "approval_batch": {
|
|
46778
46774
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
46779
|
-
(c) => _optionalChain([segment, 'access',
|
|
46775
|
+
(c) => _optionalChain([segment, 'access', _1148 => _1148.data, 'access', _1149 => _1149.executions, 'optionalAccess', _1150 => _1150[c.toolExecutionRequestId], 'optionalAccess', _1151 => _1151.status]) === "done"
|
|
46780
46776
|
);
|
|
46781
46777
|
if (segment.status !== "rejected" && !allDone) {
|
|
46782
46778
|
hasIncompleteState = true;
|
|
@@ -46844,20 +46840,20 @@ function mergeHistoryWithRealtime(input) {
|
|
|
46844
46840
|
const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
|
|
46845
46841
|
const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
|
|
46846
46842
|
const trailing = processedHistory[processedHistory.length - 1];
|
|
46847
|
-
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess',
|
|
46848
|
-
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access',
|
|
46843
|
+
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1152 => _1152.role]) === "assistant" ? trailing : null;
|
|
46844
|
+
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1153 => _1153.content, 'access', _1154 => _1154.find, 'call', _1155 => _1155((s) => s.type === "approval_batch"), 'optionalAccess', _1156 => _1156.data, 'optionalAccess', _1157 => _1157.approvalRequestId]), () => ( null)) : null;
|
|
46849
46845
|
let processedToUse = processedHistory;
|
|
46850
46846
|
const pinnedSyntheticIds = /* @__PURE__ */ new Set();
|
|
46851
46847
|
const droppedSyntheticIds = /* @__PURE__ */ new Set();
|
|
46852
46848
|
if (historyBatchId) {
|
|
46853
46849
|
const batchTwins = existingMessages.filter(
|
|
46854
46850
|
(m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
|
|
46855
|
-
(s) => s.type === "approval_batch" && _optionalChain([s, 'access',
|
|
46851
|
+
(s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1158 => _1158.data, 'optionalAccess', _1159 => _1159.approvalRequestId]) === historyBatchId
|
|
46856
46852
|
)
|
|
46857
46853
|
);
|
|
46858
46854
|
const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
|
|
46859
46855
|
if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
|
|
46860
|
-
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess',
|
|
46856
|
+
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1160 => _1160.content])) ? historyTrailingAssistant.content.length : 0;
|
|
46861
46857
|
const realtimeSize = existingWithSameBatch.content.length;
|
|
46862
46858
|
if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
|
|
46863
46859
|
processedToUse = processedHistory.slice(0, -1);
|
|
@@ -46873,16 +46869,16 @@ function mergeHistoryWithRealtime(input) {
|
|
|
46873
46869
|
if (pinnedSyntheticIds.has(m.id)) return true;
|
|
46874
46870
|
if (droppedSyntheticIds.has(m.id)) return false;
|
|
46875
46871
|
if (processedIds.has(m.id)) return false;
|
|
46876
|
-
if (_optionalChain([rawHistoryIds, 'optionalAccess',
|
|
46872
|
+
if (_optionalChain([rawHistoryIds, 'optionalAccess', _1161 => _1161.has, 'call', _1162 => _1162(m.id)])) return false;
|
|
46877
46873
|
if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
|
|
46878
|
-
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access',
|
|
46874
|
+
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1163 => _1163.timestamp, 'optionalAccess', _1164 => _1164.getTime, 'call', _1165 => _1165()]), () => ( 0))) <= historyFetchedAt;
|
|
46879
46875
|
return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
|
|
46880
46876
|
}
|
|
46881
46877
|
if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
|
|
46882
46878
|
if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
|
|
46883
46879
|
return false;
|
|
46884
46880
|
}
|
|
46885
|
-
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access',
|
|
46881
|
+
const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1166 => _1166.timestamp, 'optionalAccess', _1167 => _1167.getTime, 'call', _1168 => _1168()]), () => ( 0))) <= historyFetchedAt;
|
|
46886
46882
|
if (covered) return false;
|
|
46887
46883
|
}
|
|
46888
46884
|
return true;
|
|
@@ -47102,7 +47098,7 @@ function useChatDialogManager({
|
|
|
47102
47098
|
const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
|
|
47103
47099
|
if (restoreTarget) {
|
|
47104
47100
|
try {
|
|
47105
|
-
await _optionalChain([unarchiveDialog, 'optionalCall',
|
|
47101
|
+
await _optionalChain([unarchiveDialog, 'optionalCall', _1169 => _1169(restoreTarget.id)]);
|
|
47106
47102
|
} catch (err) {
|
|
47107
47103
|
console.error("[useChatDialogManager] unarchive failed:", err);
|
|
47108
47104
|
return;
|
|
@@ -47206,7 +47202,7 @@ function SourceChip({
|
|
|
47206
47202
|
onClose,
|
|
47207
47203
|
onDiscuss
|
|
47208
47204
|
}) {
|
|
47209
|
-
const runtime =
|
|
47205
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
47210
47206
|
const router = _chunkG7UE6RKVcjs.useRouter.call(void 0, );
|
|
47211
47207
|
const cta = resolveSourceRowCTA(
|
|
47212
47208
|
{
|
|
@@ -47442,7 +47438,7 @@ function EmbeddableChatInner({
|
|
|
47442
47438
|
renderMention
|
|
47443
47439
|
}) {
|
|
47444
47440
|
const shellLess = shell === "none";
|
|
47445
|
-
const runtime =
|
|
47441
|
+
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
47446
47442
|
const source = _nullishCoalesce(runtime.source, () => ( ""));
|
|
47447
47443
|
const commandsUrl = runtime.endpoints.commandsUrl;
|
|
47448
47444
|
const { attachmentsEnabled, user: identityUser } = useChatIdentity();
|
|
@@ -47510,7 +47506,7 @@ function EmbeddableChatInner({
|
|
|
47510
47506
|
}),
|
|
47511
47507
|
[commandsUrl]
|
|
47512
47508
|
);
|
|
47513
|
-
const userName = _optionalChain([identityUser, 'optionalAccess',
|
|
47509
|
+
const userName = _optionalChain([identityUser, 'optionalAccess', _1170 => _1170.firstName, 'optionalAccess', _1171 => _1171.trim, 'call', _1172 => _1172()]) || _optionalChain([identityUser, 'optionalAccess', _1173 => _1173.name, 'optionalAccess', _1174 => _1174.split, 'call', _1175 => _1175(" "), 'access', _1176 => _1176[0], 'optionalAccess', _1177 => _1177.trim, 'call', _1178 => _1178()]) || void 0;
|
|
47514
47510
|
const effectiveModes = _react.useMemo.call(void 0, () => {
|
|
47515
47511
|
if (modes) return modes;
|
|
47516
47512
|
const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
|
|
@@ -47519,17 +47515,17 @@ function EmbeddableChatInner({
|
|
|
47519
47515
|
const mingoCaps = _react.useMemo.call(void 0, () => {
|
|
47520
47516
|
if (mingoState) {
|
|
47521
47517
|
return {
|
|
47522
|
-
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
47523
|
-
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
47524
|
-
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
47525
|
-
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
47518
|
+
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1179 => _1179.canRename]), () => ( false)),
|
|
47519
|
+
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1180 => _1180.canArchive]), () => ( false)),
|
|
47520
|
+
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1181 => _1181.fetchArchivedDialogs]),
|
|
47521
|
+
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1182 => _1182.unarchiveDialog])
|
|
47526
47522
|
};
|
|
47527
47523
|
}
|
|
47528
47524
|
return {
|
|
47529
|
-
canRename: !!_optionalChain([effectiveModes, 'access',
|
|
47530
|
-
canArchive: !!_optionalChain([effectiveModes, 'access',
|
|
47531
|
-
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access',
|
|
47532
|
-
unarchiveDialog: _optionalChain([effectiveModes, 'access',
|
|
47525
|
+
canRename: !!_optionalChain([effectiveModes, 'access', _1183 => _1183.mingo, 'optionalAccess', _1184 => _1184.renameDialog]),
|
|
47526
|
+
canArchive: !!_optionalChain([effectiveModes, 'access', _1185 => _1185.mingo, 'optionalAccess', _1186 => _1186.archiveDialog]),
|
|
47527
|
+
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1187 => _1187.mingo, 'optionalAccess', _1188 => _1188.fetchArchivedDialogs]),
|
|
47528
|
+
unarchiveDialog: _optionalChain([effectiveModes, 'access', _1189 => _1189.mingo, 'optionalAccess', _1190 => _1190.unarchiveDialog])
|
|
47533
47529
|
};
|
|
47534
47530
|
}, [mingoState, mingoDialogCapabilities, effectiveModes]);
|
|
47535
47531
|
const hasMingoMode = !!effectiveModes.mingo || !!mingoState;
|
|
@@ -47541,7 +47537,7 @@ function EmbeddableChatInner({
|
|
|
47541
47537
|
if (controlledActiveMode === void 0) {
|
|
47542
47538
|
setUncontrolledActiveMode(next);
|
|
47543
47539
|
}
|
|
47544
|
-
_optionalChain([onActiveModeChange, 'optionalCall',
|
|
47540
|
+
_optionalChain([onActiveModeChange, 'optionalCall', _1191 => _1191(next)]);
|
|
47545
47541
|
},
|
|
47546
47542
|
[controlledActiveMode, onActiveModeChange]
|
|
47547
47543
|
);
|
|
@@ -47595,7 +47591,7 @@ function EmbeddableChatInner({
|
|
|
47595
47591
|
clear: clearAttachments
|
|
47596
47592
|
} = useChatAttachments();
|
|
47597
47593
|
const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
|
|
47598
|
-
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
47594
|
+
const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1192 => _1192.maxItems]), () => ( 10));
|
|
47599
47595
|
const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
|
|
47600
47596
|
const [contextItems, setContextItems] = _react.useState.call(void 0, []);
|
|
47601
47597
|
const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
|
|
@@ -47612,9 +47608,9 @@ function EmbeddableChatInner({
|
|
|
47612
47608
|
}, [activeDialogId, activeMode]);
|
|
47613
47609
|
const mentionMarkerByType = _react.useMemo.call(void 0, () => {
|
|
47614
47610
|
const m = /* @__PURE__ */ new Map();
|
|
47615
|
-
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess',
|
|
47611
|
+
for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1193 => _1193.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
|
|
47616
47612
|
return m;
|
|
47617
|
-
}, [_optionalChain([contextPicker, 'optionalAccess',
|
|
47613
|
+
}, [_optionalChain([contextPicker, 'optionalAccess', _1194 => _1194.entityTypes])]);
|
|
47618
47614
|
const toggleContextItem = _react.useCallback.call(void 0,
|
|
47619
47615
|
(item) => {
|
|
47620
47616
|
const key = `${item.type}:${item.id}`;
|
|
@@ -47624,7 +47620,7 @@ function EmbeddableChatInner({
|
|
|
47624
47620
|
);
|
|
47625
47621
|
const grows = !alreadySelected && !mentionKeyRef.current;
|
|
47626
47622
|
if (grows && contextItems.length >= contextMaxItems) return;
|
|
47627
|
-
_optionalChain([chatInputRef, 'access',
|
|
47623
|
+
_optionalChain([chatInputRef, 'access', _1195 => _1195.current, 'optionalAccess', _1196 => _1196.commitMention, 'call', _1197 => _1197(mentionTokenOf(key, mentionMarkerByType))]);
|
|
47628
47624
|
setContextItems((prev) => {
|
|
47629
47625
|
const withoutPrevMention = mentionKeyRef.current ? prev.filter((p) => `${p.type}:${p.id}` !== mentionKeyRef.current) : prev;
|
|
47630
47626
|
const deduped = withoutPrevMention.filter(
|
|
@@ -47649,9 +47645,9 @@ function EmbeddableChatInner({
|
|
|
47649
47645
|
setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
|
|
47650
47646
|
if (mentionKeyRef.current === key) {
|
|
47651
47647
|
mentionKeyRef.current = null;
|
|
47652
|
-
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access',
|
|
47648
|
+
const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1198 => _1198.current, 'optionalAccess', _1199 => _1199.getValue, 'call', _1200 => _1200()]), () => ( ""));
|
|
47653
47649
|
const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
|
|
47654
|
-
_optionalChain([chatInputRef, 'access',
|
|
47650
|
+
_optionalChain([chatInputRef, 'access', _1201 => _1201.current, 'optionalAccess', _1202 => _1202.setValue, 'call', _1203 => _1203(next)]);
|
|
47655
47651
|
}
|
|
47656
47652
|
}, [mentionMarkerByType]);
|
|
47657
47653
|
const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
|
|
@@ -47668,7 +47664,7 @@ function EmbeddableChatInner({
|
|
|
47668
47664
|
}, []);
|
|
47669
47665
|
const closeContextPicker = _react.useCallback.call(void 0, () => {
|
|
47670
47666
|
if (mentionActiveRef.current) {
|
|
47671
|
-
_optionalChain([chatInputRef, 'access',
|
|
47667
|
+
_optionalChain([chatInputRef, 'access', _1204 => _1204.current, 'optionalAccess', _1205 => _1205.removeMentionTrigger, 'call', _1206 => _1206()]);
|
|
47672
47668
|
}
|
|
47673
47669
|
setContextPickerOpen(false);
|
|
47674
47670
|
setMentionQuery(null);
|
|
@@ -47677,7 +47673,7 @@ function EmbeddableChatInner({
|
|
|
47677
47673
|
setMentionQuery(query);
|
|
47678
47674
|
setContextPickerOpen(query !== null);
|
|
47679
47675
|
}, []);
|
|
47680
|
-
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess',
|
|
47676
|
+
const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1207 => _1207.entityTypes]);
|
|
47681
47677
|
const resolveContextIcon = _react.useMemo.call(void 0, () => {
|
|
47682
47678
|
const byType = /* @__PURE__ */ new Map();
|
|
47683
47679
|
for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
|
|
@@ -47855,9 +47851,9 @@ function EmbeddableChatInner({
|
|
|
47855
47851
|
const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
|
|
47856
47852
|
const lastSources = _react.useMemo.call(void 0, () => {
|
|
47857
47853
|
if (chatLoading) return void 0;
|
|
47858
|
-
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
47854
|
+
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1208 => _1208.sources]);
|
|
47859
47855
|
if (!sources || sources.length === 0) return void 0;
|
|
47860
|
-
const content = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
47856
|
+
const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1209 => _1209.content]) || "";
|
|
47861
47857
|
const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
|
|
47862
47858
|
(m) => parseInt(m[1], 10)
|
|
47863
47859
|
);
|
|
@@ -47904,7 +47900,7 @@ function EmbeddableChatInner({
|
|
|
47904
47900
|
ChatPanelHeader,
|
|
47905
47901
|
{
|
|
47906
47902
|
showBack: hasConversation || guideCanReturnToMingo,
|
|
47907
|
-
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
47903
|
+
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1210 => _1210.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
|
|
47908
47904
|
backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
|
|
47909
47905
|
isArchivedView: isViewingArchived,
|
|
47910
47906
|
onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
|
|
@@ -48011,7 +48007,7 @@ function EmbeddableChatInner({
|
|
|
48011
48007
|
subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
|
|
48012
48008
|
subtitleLoading: emptyStateLoading,
|
|
48013
48009
|
...guideWelcome,
|
|
48014
|
-
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess',
|
|
48010
|
+
quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1211 => _1211.quickActions]), () => ( guideSuggestedActions)),
|
|
48015
48011
|
onQuickAction: (action) => {
|
|
48016
48012
|
handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
|
|
48017
48013
|
},
|
|
@@ -49075,4 +49071,4 @@ function EmbeddableChatInner({
|
|
|
49075
49071
|
|
|
49076
49072
|
|
|
49077
49073
|
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.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.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.Progress = Progress; exports.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.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.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.SquareAvatar = SquareAvatar; 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.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.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.PageHeader = PageHeader; exports.TitleBlock = TitleBlock; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.PageWithHeader = PageWithHeader; exports.PageLayout = PageLayout; 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.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.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.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.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.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.assets = assets;
|
|
49078
|
-
//# sourceMappingURL=chunk-
|
|
49074
|
+
//# sourceMappingURL=chunk-LXXZDZGG.cjs.map
|