@flamingo-stack/openframe-frontend-core 0.0.263 → 0.0.264
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-C3FAOQAH.cjs → chunk-3LWUHLPK.cjs} +28 -28
- package/dist/{chunk-C3FAOQAH.cjs.map → chunk-3LWUHLPK.cjs.map} +1 -1
- package/dist/{chunk-U7UDESAU.js → chunk-6ZEKKAAL.js} +2 -2
- package/dist/{chunk-YC357BPF.js → chunk-JOUI6TQY.js} +3 -3
- package/dist/{chunk-2XUWR7AH.cjs → chunk-P67D545X.cjs} +11 -11
- package/dist/{chunk-2XUWR7AH.cjs.map → chunk-P67D545X.cjs.map} +1 -1
- package/dist/{chunk-3DC6MHW6.cjs → chunk-QLWBBCI5.cjs} +491 -391
- package/dist/chunk-QLWBBCI5.cjs.map +1 -0
- package/dist/{chunk-36HLBLDK.cjs → chunk-SIYHXLFH.cjs} +462 -454
- package/dist/chunk-SIYHXLFH.cjs.map +1 -0
- package/dist/{chunk-ALEKX56R.js → chunk-SSUUMPAQ.js} +2 -2
- package/dist/{chunk-6AIXHYBZ.js → chunk-VYTU7JZR.js} +64 -56
- package/dist/chunk-VYTU7JZR.js.map +1 -0
- package/dist/{chunk-6GBA6YJN.js → chunk-ZMFT5XOB.js} +576 -476
- package/dist/chunk-ZMFT5XOB.js.map +1 -0
- package/dist/{chunk-XKA7UFED.cjs → chunk-ZOOTBYZO.cjs} +30 -30
- package/dist/{chunk-XKA7UFED.cjs.map → chunk-ZOOTBYZO.cjs.map} +1 -1
- package/dist/components/chat/index.cjs +3 -3
- package/dist/components/chat/index.js +2 -2
- package/dist/components/contact/index.cjs +4 -4
- package/dist/components/contact/index.js +3 -3
- package/dist/components/features/index.cjs +3 -3
- package/dist/components/features/index.js +2 -2
- package/dist/components/features/notifications/notification-drawer.d.ts.map +1 -1
- package/dist/components/features/notifications/notifications-context.d.ts +9 -1
- package/dist/components/features/notifications/notifications-context.d.ts.map +1 -1
- package/dist/components/index.cjs +50 -50
- package/dist/components/index.js +4 -4
- package/dist/components/navigation/index.cjs +3 -3
- package/dist/components/navigation/index.js +2 -2
- package/dist/components/navigation/sliding-sidebar.d.ts.map +1 -1
- package/dist/components/related-content/index.cjs +4 -4
- package/dist/components/related-content/index.js +3 -3
- package/dist/components/tickets/index.cjs +58 -58
- package/dist/components/tickets/index.js +4 -4
- package/dist/components/ui/drawer.d.ts +5 -0
- package/dist/components/ui/drawer.d.ts.map +1 -1
- package/dist/components/ui/index.cjs +3 -3
- package/dist/components/ui/index.js +2 -2
- package/dist/hooks/index.cjs +6 -2
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.js +5 -1
- package/dist/hooks/ui/index.d.ts +6 -4
- package/dist/hooks/ui/index.d.ts.map +1 -1
- package/dist/hooks/ui/use-header-height.d.ts +8 -0
- package/dist/hooks/ui/use-header-height.d.ts.map +1 -0
- package/dist/hooks/ui/use-horizontal-scrollbar.d.ts.map +1 -1
- package/dist/hooks/ui/use-notification-permission.d.ts +14 -0
- package/dist/hooks/ui/use-notification-permission.d.ts.map +1 -0
- package/dist/index.cjs +7 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +6 -2
- package/package.json +1 -1
- package/src/components/features/notifications/notification-drawer.tsx +51 -2
- package/src/components/features/notifications/notifications-context.tsx +26 -0
- package/src/components/navigation/sliding-sidebar.tsx +3 -82
- package/src/components/ui/drawer.tsx +17 -6
- package/src/hooks/ui/index.ts +6 -4
- package/src/hooks/ui/use-header-height.ts +55 -0
- package/src/hooks/ui/use-horizontal-scrollbar.ts +19 -2
- package/src/hooks/ui/use-notification-permission.ts +64 -0
- package/dist/chunk-36HLBLDK.cjs.map +0 -1
- package/dist/chunk-3DC6MHW6.cjs.map +0 -1
- package/dist/chunk-6AIXHYBZ.js.map +0 -1
- package/dist/chunk-6GBA6YJN.js.map +0 -1
- /package/dist/{chunk-U7UDESAU.js.map → chunk-6ZEKKAAL.js.map} +0 -0
- /package/dist/{chunk-YC357BPF.js.map → chunk-JOUI6TQY.js.map} +0 -0
- /package/dist/{chunk-ALEKX56R.js.map → chunk-SSUUMPAQ.js.map} +0 -0
|
@@ -14,7 +14,9 @@
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
var _chunkQLWBBCI5cjs = require('./chunk-QLWBBCI5.cjs');
|
|
18
20
|
|
|
19
21
|
|
|
20
22
|
var _chunk7VMEOFEAcjs = require('./chunk-7VMEOFEA.cjs');
|
|
@@ -759,7 +761,7 @@ function ToolCallRow({ call, expanded, onToggle, batchStatus, execution }) {
|
|
|
759
761
|
onClick: onToggle,
|
|
760
762
|
className: "flex gap-2 items-start w-full p-3 cursor-pointer text-left",
|
|
761
763
|
children: [
|
|
762
|
-
/* @__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,
|
|
764
|
+
/* @__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, _chunkQLWBBCI5cjs.ToolIcon, { toolType, size: 16 }) }),
|
|
763
765
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
764
766
|
"div",
|
|
765
767
|
{
|
|
@@ -2336,7 +2338,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
|
|
|
2336
2338
|
className: "flex gap-[var(--spacing-system-xs)] items-start p-[var(--spacing-system-s)] cursor-pointer text-left w-full",
|
|
2337
2339
|
onClick: () => setExpanded((prev) => !prev),
|
|
2338
2340
|
children: [
|
|
2339
|
-
/* @__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,
|
|
2341
|
+
/* @__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, _chunkQLWBBCI5cjs.ToolIcon, { toolType: integratedToolType, size: 16 }) }),
|
|
2340
2342
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2341
2343
|
"div",
|
|
2342
2344
|
{
|
|
@@ -5872,7 +5874,7 @@ function AdminContentCard({
|
|
|
5872
5874
|
const [imageError, setImageError] = _react.useState.call(void 0, false);
|
|
5873
5875
|
const [imageLoaded, setImageLoaded] = _react.useState.call(void 0, false);
|
|
5874
5876
|
const displayUrl = imageUrl && !imageError ? imageUrl : placeholderUrl;
|
|
5875
|
-
const imageBgColor =
|
|
5877
|
+
const imageBgColor = _chunkQLWBBCI5cjs.useImageEdgeColor.call(void 0, displayUrl || null, "transparent");
|
|
5876
5878
|
_react.useEffect.call(void 0, () => {
|
|
5877
5879
|
setImageLoaded(false);
|
|
5878
5880
|
}, [displayUrl]);
|
|
@@ -8764,7 +8766,7 @@ var ProgressBar = ({
|
|
|
8764
8766
|
mobileHeight = 8,
|
|
8765
8767
|
inverted = false
|
|
8766
8768
|
}) => {
|
|
8767
|
-
const isMdUp = _nullishCoalesce(
|
|
8769
|
+
const isMdUp = _nullishCoalesce(_chunkQLWBBCI5cjs.useMdUp.call(void 0, ), () => ( true));
|
|
8768
8770
|
const effectiveSegmentWidth = isMdUp ? segmentWidth : mobileSegmentWidth;
|
|
8769
8771
|
const effectiveHeight = isMdUp ? height : mobileHeight;
|
|
8770
8772
|
const containerRef = _react.useRef.call(void 0, null);
|
|
@@ -8883,7 +8885,7 @@ function InfoCardFooter({ footer }) {
|
|
|
8883
8885
|
] });
|
|
8884
8886
|
}
|
|
8885
8887
|
function InfoCardValueRow({ label, value, showLabel, copyable, copyAriaLabel }) {
|
|
8886
|
-
const { copy, copied } =
|
|
8888
|
+
const { copy, copied } = _chunkQLWBBCI5cjs.useCopyToClipboard.call(void 0, );
|
|
8887
8889
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-6 items-center gap-[var(--spacing-system-xs)] self-stretch w-full", children: [
|
|
8888
8890
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary whitespace-nowrap", children: showLabel ? label : "" }),
|
|
8889
8891
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 h-px bg-ods-divider" }),
|
|
@@ -10406,12 +10408,14 @@ var DrawerContent = React40.forwardRef(
|
|
|
10406
10408
|
style,
|
|
10407
10409
|
panelStyle,
|
|
10408
10410
|
panelClassName,
|
|
10411
|
+
offsetHeader = false,
|
|
10409
10412
|
children,
|
|
10410
10413
|
...props
|
|
10411
10414
|
}, ref) => {
|
|
10412
10415
|
const resolvedSide = _nullishCoalesce(side, () => ( "right"));
|
|
10413
10416
|
const isHorizontal = HORIZONTAL_SIDES.has(resolvedSide);
|
|
10414
10417
|
const initialSize = _nullishCoalesce(defaultSize, () => ( (isHorizontal ? 560 : 480)));
|
|
10418
|
+
const headerHeight = _chunkQLWBBCI5cjs.useHeaderHeight.call(void 0, );
|
|
10415
10419
|
const [isMobile, setIsMobile] = React40.useState(false);
|
|
10416
10420
|
React40.useEffect(() => {
|
|
10417
10421
|
if (typeof window === "undefined") return;
|
|
@@ -10438,7 +10442,7 @@ var DrawerContent = React40.forwardRef(
|
|
|
10438
10442
|
{
|
|
10439
10443
|
ref,
|
|
10440
10444
|
className: _chunkFIG2RKZFcjs.cn.call(void 0, drawerVariants({ side, flush })),
|
|
10441
|
-
style,
|
|
10445
|
+
style: { ...offsetHeader ? { top: headerHeight } : {}, ...style },
|
|
10442
10446
|
...props,
|
|
10443
10447
|
children: [
|
|
10444
10448
|
applyInlineSize ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -10484,7 +10488,7 @@ var DrawerHeader = ({
|
|
|
10484
10488
|
}
|
|
10485
10489
|
);
|
|
10486
10490
|
DrawerHeader.displayName = "DrawerHeader";
|
|
10487
|
-
var DrawerTitle = React40.forwardRef(({ className, children, actions, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4", children: [
|
|
10491
|
+
var DrawerTitle = React40.forwardRef(({ className, children, actions, hideClose, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4", children: [
|
|
10488
10492
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
10489
10493
|
DialogPrimitive2.Title,
|
|
10490
10494
|
{
|
|
@@ -10498,7 +10502,7 @@ var DrawerTitle = React40.forwardRef(({ className, children, actions, ...props }
|
|
|
10498
10502
|
}
|
|
10499
10503
|
),
|
|
10500
10504
|
actions,
|
|
10501
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DialogPrimitive2.Close, { className: "shrink-0 rounded-sm text-ods-text-secondary transition-colors hover:text-ods-text-primary outline-none ring-0 focus:outline-none focus:ring-0 focus-visible:outline-none focus-visible:ring-0", children: [
|
|
10505
|
+
!hideClose && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DialogPrimitive2.Close, { className: "shrink-0 rounded-sm text-ods-text-secondary transition-colors hover:text-ods-text-primary outline-none ring-0 focus:outline-none focus:ring-0 focus-visible:outline-none focus-visible:ring-0", children: [
|
|
10502
10506
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-6" }),
|
|
10503
10507
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: "Close" })
|
|
10504
10508
|
] })
|
|
@@ -12330,7 +12334,7 @@ function toToolLabel(input) {
|
|
|
12330
12334
|
if (!input) return "";
|
|
12331
12335
|
const toolType = normalizeToolType(input);
|
|
12332
12336
|
if (toolType) {
|
|
12333
|
-
return
|
|
12337
|
+
return _chunkQLWBBCI5cjs.toolLabels[toolType];
|
|
12334
12338
|
}
|
|
12335
12339
|
return input;
|
|
12336
12340
|
}
|
|
@@ -12341,7 +12345,7 @@ function getToolTypeAliases(toolType) {
|
|
|
12341
12345
|
return Object.entries(toolAliasMap).filter(([_, value]) => value === toolType).map(([key]) => key);
|
|
12342
12346
|
}
|
|
12343
12347
|
function getToolLabel(toolType) {
|
|
12344
|
-
return
|
|
12348
|
+
return _chunkQLWBBCI5cjs.toolLabels[toolType] || toolType;
|
|
12345
12349
|
}
|
|
12346
12350
|
|
|
12347
12351
|
// src/types/shell.types.ts
|
|
@@ -17327,7 +17331,7 @@ function PlatformFilterComponent({
|
|
|
17327
17331
|
variant: selectedPlatform === platform.value ? "accent" : "outline",
|
|
17328
17332
|
size,
|
|
17329
17333
|
onClick: () => onPlatformChange(platform.value),
|
|
17330
|
-
leftIcon: showIcons ?
|
|
17334
|
+
leftIcon: showIcons ? _chunkQLWBBCI5cjs.getSmallPlatformIcon.call(void 0, platform.value) : void 0,
|
|
17331
17335
|
className: "text-h3",
|
|
17332
17336
|
children: platform.label
|
|
17333
17337
|
},
|
|
@@ -20086,7 +20090,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
|
|
|
20086
20090
|
};
|
|
20087
20091
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
20088
20092
|
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: [
|
|
20089
|
-
/* @__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,
|
|
20093
|
+
/* @__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, _chunkQLWBBCI5cjs.ToolIcon, { toolType: policy.toolName, size: 16 }) }),
|
|
20090
20094
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 flex flex-col min-w-0", children: [
|
|
20091
20095
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-[16px] font-medium text-ods-text-primary truncate", title: policy.name, children: policy.name }),
|
|
20092
20096
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-[12px] text-ods-text-secondary break-all font-mono", children: policy.commandPattern })
|
|
@@ -20397,8 +20401,8 @@ function WaitlistForm({
|
|
|
20397
20401
|
const [email, setEmail] = _react.useState.call(void 0, defaultEmail);
|
|
20398
20402
|
const [phone, setPhone] = _react.useState.call(void 0, defaultPhone);
|
|
20399
20403
|
const [countryCode, setCountryCode] = _react.useState.call(void 0, "US");
|
|
20400
|
-
const { toast } =
|
|
20401
|
-
const { honeypotInputProps, getSignals, resetSignals } =
|
|
20404
|
+
const { toast } = _chunkQLWBBCI5cjs.useToast.call(void 0, );
|
|
20405
|
+
const { honeypotInputProps, getSignals, resetSignals } = _chunkQLWBBCI5cjs.useHumanitySignals.call(void 0, );
|
|
20402
20406
|
const [smsConsent, setSmsConsent] = _react.useState.call(void 0, false);
|
|
20403
20407
|
const [isClient, setIsClient] = _react.useState.call(void 0, false);
|
|
20404
20408
|
const [isPhoneInvalid, setIsPhoneInvalid] = _react.useState.call(void 0, false);
|
|
@@ -20640,6 +20644,8 @@ function NotificationsProvider({
|
|
|
20640
20644
|
maxNotifications = 50,
|
|
20641
20645
|
defaultShowPopups = true,
|
|
20642
20646
|
onShowPopupsChange,
|
|
20647
|
+
defaultShowDesktopPopups = false,
|
|
20648
|
+
onShowDesktopPopupsChange,
|
|
20643
20649
|
onHistoryClick,
|
|
20644
20650
|
actions,
|
|
20645
20651
|
hasMore = false,
|
|
@@ -20650,6 +20656,8 @@ function NotificationsProvider({
|
|
|
20650
20656
|
const [notifications, dispatch] = React69.useReducer(reducer, initialNotifications);
|
|
20651
20657
|
const [isOpen, setIsOpen] = React69.useState(false);
|
|
20652
20658
|
const [showPopups, setShowPopupsState] = React69.useState(defaultShowPopups);
|
|
20659
|
+
const [showDesktopPopups, setShowDesktopPopupsState] = React69.useState(defaultShowDesktopPopups);
|
|
20660
|
+
const desktopPopupsConfigured = onShowDesktopPopupsChange !== void 0;
|
|
20653
20661
|
const actionsRef = React69.useRef(actions);
|
|
20654
20662
|
React69.useEffect(() => {
|
|
20655
20663
|
actionsRef.current = actions;
|
|
@@ -20711,6 +20719,13 @@ function NotificationsProvider({
|
|
|
20711
20719
|
},
|
|
20712
20720
|
[onShowPopupsChange]
|
|
20713
20721
|
);
|
|
20722
|
+
const setShowDesktopPopups = React69.useCallback(
|
|
20723
|
+
(value2) => {
|
|
20724
|
+
setShowDesktopPopupsState(value2);
|
|
20725
|
+
_optionalChain([onShowDesktopPopupsChange, 'optionalCall', _363 => _363(value2)]);
|
|
20726
|
+
},
|
|
20727
|
+
[onShowDesktopPopupsChange]
|
|
20728
|
+
);
|
|
20714
20729
|
const unreadCount = React69.useMemo(
|
|
20715
20730
|
() => notifications.reduce((acc, n) => n.read ? acc : acc + 1, 0),
|
|
20716
20731
|
[notifications]
|
|
@@ -20733,6 +20748,9 @@ function NotificationsProvider({
|
|
|
20733
20748
|
close,
|
|
20734
20749
|
toggle,
|
|
20735
20750
|
setShowPopups,
|
|
20751
|
+
showDesktopPopups,
|
|
20752
|
+
setShowDesktopPopups,
|
|
20753
|
+
desktopPopupsConfigured,
|
|
20736
20754
|
onHistoryClick,
|
|
20737
20755
|
hasMore,
|
|
20738
20756
|
isLoadingMore,
|
|
@@ -20744,6 +20762,9 @@ function NotificationsProvider({
|
|
|
20744
20762
|
unreadCount,
|
|
20745
20763
|
isOpen,
|
|
20746
20764
|
showPopups,
|
|
20765
|
+
showDesktopPopups,
|
|
20766
|
+
setShowDesktopPopups,
|
|
20767
|
+
desktopPopupsConfigured,
|
|
20747
20768
|
addNotification,
|
|
20748
20769
|
upsertNotification,
|
|
20749
20770
|
setNotifications,
|
|
@@ -20803,7 +20824,7 @@ function NotificationTile({
|
|
|
20803
20824
|
if (!counting) return;
|
|
20804
20825
|
const remaining = Math.max(0, liveDurationMs - initialElapsed);
|
|
20805
20826
|
const timer = window.setTimeout(() => {
|
|
20806
|
-
_optionalChain([onSettle, 'optionalCall',
|
|
20827
|
+
_optionalChain([onSettle, 'optionalCall', _364 => _364(id)]);
|
|
20807
20828
|
}, remaining);
|
|
20808
20829
|
return () => window.clearTimeout(timer);
|
|
20809
20830
|
}, [id, counting, initialElapsed, liveDurationMs, onSettle]);
|
|
@@ -20823,7 +20844,7 @@ function NotificationTile({
|
|
|
20823
20844
|
children ? "border-b border-ods-border" : null
|
|
20824
20845
|
),
|
|
20825
20846
|
children: [
|
|
20826
|
-
/* @__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",
|
|
20847
|
+
/* @__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", _chunkQLWBBCI5cjs.dotColorByVariant[variant]) }) }),
|
|
20827
20848
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
20828
20849
|
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,
|
|
20829
20850
|
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
|
|
@@ -20849,7 +20870,7 @@ function NotificationTile({
|
|
|
20849
20870
|
"aria-hidden": true,
|
|
20850
20871
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
20851
20872
|
"absolute inset-x-0 -bottom-px h-1 origin-left",
|
|
20852
|
-
|
|
20873
|
+
_chunkQLWBBCI5cjs.progressColorByVariant[variant]
|
|
20853
20874
|
),
|
|
20854
20875
|
style: {
|
|
20855
20876
|
animation: `toast-progress ${liveDurationMs}ms linear forwards`,
|
|
@@ -20865,7 +20886,7 @@ function NotificationTile({
|
|
|
20865
20886
|
"button",
|
|
20866
20887
|
{
|
|
20867
20888
|
type: "button",
|
|
20868
|
-
onClick: () => _optionalChain([onSettle, 'optionalCall',
|
|
20889
|
+
onClick: () => _optionalChain([onSettle, 'optionalCall', _365 => _365(id)]),
|
|
20869
20890
|
"aria-label": "Dismiss notification",
|
|
20870
20891
|
tabIndex: isLive ? 0 : -1,
|
|
20871
20892
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -20901,6 +20922,9 @@ function NotificationDrawer({
|
|
|
20901
20922
|
markAllRead,
|
|
20902
20923
|
markSettled,
|
|
20903
20924
|
setShowPopups,
|
|
20925
|
+
showDesktopPopups,
|
|
20926
|
+
setShowDesktopPopups,
|
|
20927
|
+
desktopPopupsConfigured,
|
|
20904
20928
|
onHistoryClick,
|
|
20905
20929
|
hasMore,
|
|
20906
20930
|
isLoadingMore,
|
|
@@ -20914,6 +20938,7 @@ function NotificationDrawer({
|
|
|
20914
20938
|
{
|
|
20915
20939
|
side: "right",
|
|
20916
20940
|
"aria-describedby": void 0,
|
|
20941
|
+
offsetHeader: true,
|
|
20917
20942
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
20918
20943
|
"w-[calc(100vw-2rem)] sm:w-[26rem] sm:max-w-[calc(100vw-2rem)] gap-[var(--spacing-system-m)] p-[var(--spacing-system-zero)]",
|
|
20919
20944
|
className
|
|
@@ -20922,6 +20947,7 @@ function NotificationDrawer({
|
|
|
20922
20947
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-m)] pt-[var(--spacing-system-m)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20923
20948
|
DrawerTitle,
|
|
20924
20949
|
{
|
|
20950
|
+
hideClose: true,
|
|
20925
20951
|
className: "truncate",
|
|
20926
20952
|
actions: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20927
20953
|
"button",
|
|
@@ -20951,7 +20977,10 @@ function NotificationDrawer({
|
|
|
20951
20977
|
}
|
|
20952
20978
|
),
|
|
20953
20979
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xs)] px-[var(--spacing-system-m)] pb-[var(--spacing-system-m)]", children: [
|
|
20954
|
-
/* @__PURE__ */ _jsxruntime.
|
|
20980
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "overflow-hidden rounded-md border border-ods-border bg-ods-card", children: [
|
|
20981
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, ShowNotificationsToggleRow, { checked: showPopups, onChange: setShowPopups }),
|
|
20982
|
+
desktopPopupsConfigured && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DesktopNotificationsToggleRow, { checked: showDesktopPopups, onChange: setShowDesktopPopups })
|
|
20983
|
+
] }),
|
|
20955
20984
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
20956
20985
|
NotificationsHistoryButton,
|
|
20957
20986
|
{
|
|
@@ -20988,7 +21017,7 @@ function DrawerScrollList({
|
|
|
20988
21017
|
if (!sentinel || !root) return;
|
|
20989
21018
|
const observer = new IntersectionObserver(
|
|
20990
21019
|
(entries) => {
|
|
20991
|
-
if (_optionalChain([entries, 'access',
|
|
21020
|
+
if (_optionalChain([entries, 'access', _366 => _366[0], 'optionalAccess', _367 => _367.isIntersecting])) _optionalChain([loadMoreRef, 'access', _368 => _368.current, 'optionalCall', _369 => _369()]);
|
|
20992
21021
|
},
|
|
20993
21022
|
{ root, rootMargin: loadMoreRootMargin }
|
|
20994
21023
|
);
|
|
@@ -21003,7 +21032,7 @@ function DrawerScrollList({
|
|
|
21003
21032
|
className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
|
|
21004
21033
|
children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
21005
21034
|
unreadNotifications.map((n) => {
|
|
21006
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
21035
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _370 => _370(n, { onComplete, onSettle, liveDurationMs })]);
|
|
21007
21036
|
if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
|
|
21008
21037
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21009
21038
|
NotificationTile,
|
|
@@ -21047,7 +21076,7 @@ function EmptyState() {
|
|
|
21047
21076
|
] });
|
|
21048
21077
|
}
|
|
21049
21078
|
function ShowNotificationsToggleRow({ checked, onChange }) {
|
|
21050
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)]
|
|
21079
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)] border-b border-ods-border p-[var(--spacing-system-sf)]", children: [
|
|
21051
21080
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21052
21081
|
Switch,
|
|
21053
21082
|
{
|
|
@@ -21062,6 +21091,33 @@ function ShowNotificationsToggleRow({ checked, onChange }) {
|
|
|
21062
21091
|
] })
|
|
21063
21092
|
] });
|
|
21064
21093
|
}
|
|
21094
|
+
function DesktopNotificationsToggleRow({ checked, onChange }) {
|
|
21095
|
+
const { supported, permission, request } = _chunkQLWBBCI5cjs.useNotificationPermission.call(void 0, );
|
|
21096
|
+
if (!supported) return null;
|
|
21097
|
+
const blocked = permission === "denied";
|
|
21098
|
+
const handleChange = async (value) => {
|
|
21099
|
+
if (!value || permission === "granted") {
|
|
21100
|
+
onChange(value);
|
|
21101
|
+
return;
|
|
21102
|
+
}
|
|
21103
|
+
if (await request() === "granted") onChange(true);
|
|
21104
|
+
};
|
|
21105
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)] border-b border-ods-border p-[var(--spacing-system-sf)]", children: [
|
|
21106
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21107
|
+
Switch,
|
|
21108
|
+
{
|
|
21109
|
+
checked: checked && permission === "granted",
|
|
21110
|
+
disabled: blocked,
|
|
21111
|
+
onCheckedChange: handleChange,
|
|
21112
|
+
"aria-label": "Show desktop notifications"
|
|
21113
|
+
}
|
|
21114
|
+
),
|
|
21115
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
|
|
21116
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "text-h4", blocked ? "text-ods-text-secondary" : "text-ods-text-primary"), children: "Desktop Notifications" }),
|
|
21117
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary", children: blocked ? "Enable notifications in your browser settings" : "Notify when this tab is in the background" })
|
|
21118
|
+
] })
|
|
21119
|
+
] });
|
|
21120
|
+
}
|
|
21065
21121
|
function NotificationsHistoryButton({ onClick }) {
|
|
21066
21122
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21067
21123
|
_chunkN5UOJC3Vcjs.Button,
|
|
@@ -21132,7 +21188,7 @@ function NotificationPopups({
|
|
|
21132
21188
|
className
|
|
21133
21189
|
),
|
|
21134
21190
|
children: live.map((n) => {
|
|
21135
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
21191
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _371 => _371(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
|
|
21136
21192
|
if (custom) {
|
|
21137
21193
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
|
|
21138
21194
|
}
|
|
@@ -21171,19 +21227,19 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
21171
21227
|
// src/components/features/notifications/types.ts
|
|
21172
21228
|
var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
|
|
21173
21229
|
function isApprovalNotification(notification) {
|
|
21174
|
-
return _optionalChain([notification, 'access',
|
|
21230
|
+
return _optionalChain([notification, 'access', _372 => _372.meta, 'optionalAccess', _373 => _373.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
|
|
21175
21231
|
}
|
|
21176
21232
|
function getApprovalMeta(notification) {
|
|
21177
21233
|
if (!isApprovalNotification(notification)) return null;
|
|
21178
21234
|
const meta = notification.meta;
|
|
21179
|
-
const approvalRequestId = _optionalChain([meta, 'optionalAccess',
|
|
21180
|
-
const toolCalls = _optionalChain([meta, 'optionalAccess',
|
|
21235
|
+
const approvalRequestId = _optionalChain([meta, 'optionalAccess', _374 => _374.approvalRequestId]);
|
|
21236
|
+
const toolCalls = _optionalChain([meta, 'optionalAccess', _375 => _375.toolCalls]);
|
|
21181
21237
|
if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
|
|
21182
21238
|
return {
|
|
21183
21239
|
approvalRequestId,
|
|
21184
|
-
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
21185
|
-
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
21186
|
-
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
21240
|
+
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _376 => _376.dialogId]), () => ( null)),
|
|
21241
|
+
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _377 => _377.ticketId]), () => ( null)),
|
|
21242
|
+
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _378 => _378.approvalType]), () => ( null)),
|
|
21187
21243
|
toolCalls
|
|
21188
21244
|
};
|
|
21189
21245
|
}
|
|
@@ -21444,15 +21500,15 @@ function TicketCard({
|
|
|
21444
21500
|
transform: _utilities.CSS.Transform.toString(sortable.transform),
|
|
21445
21501
|
transition: sortable.transition
|
|
21446
21502
|
};
|
|
21447
|
-
const showDeviceRow = !!(_optionalChain([ticket, 'access',
|
|
21503
|
+
const showDeviceRow = !!(_optionalChain([ticket, 'access', _379 => _379.deviceHostnames, 'optionalAccess', _380 => _380.length]) || ticket.organizationName);
|
|
21448
21504
|
const deviceText = [
|
|
21449
|
-
_optionalChain([ticket, 'access',
|
|
21505
|
+
_optionalChain([ticket, 'access', _381 => _381.deviceHostnames, 'optionalAccess', _382 => _382.join, 'call', _383 => _383(", ")]),
|
|
21450
21506
|
ticket.organizationName
|
|
21451
21507
|
].filter(Boolean).join(", ");
|
|
21452
21508
|
const handleClick = (e) => {
|
|
21453
21509
|
if (sortable.isDragging) e.preventDefault();
|
|
21454
21510
|
};
|
|
21455
|
-
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access',
|
|
21511
|
+
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _384 => _384.assignees, 'optionalAccess', _385 => _385.length]) || renderAssignSlot);
|
|
21456
21512
|
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: [
|
|
21457
21513
|
ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21458
21514
|
_chunkC6ASEPZLcjs.Flag02Icon,
|
|
@@ -21461,7 +21517,7 @@ function TicketCard({
|
|
|
21461
21517
|
"aria-label": `Priority: ${ticket.priority}`
|
|
21462
21518
|
}
|
|
21463
21519
|
),
|
|
21464
|
-
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access',
|
|
21520
|
+
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _386 => _386.assignees, 'optionalAccess', _387 => _387.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
|
|
21465
21521
|
ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
21466
21522
|
_chunk7MNBE7XAcjs.SquareAvatar,
|
|
21467
21523
|
{
|
|
@@ -21490,7 +21546,7 @@ function TicketCard({
|
|
|
21490
21546
|
] }),
|
|
21491
21547
|
rightSection
|
|
21492
21548
|
] }),
|
|
21493
|
-
_optionalChain([ticket, 'access',
|
|
21549
|
+
_optionalChain([ticket, 'access', _388 => _388.tags, 'optionalAccess', _389 => _389.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null
|
|
21494
21550
|
] });
|
|
21495
21551
|
const cardClasses = _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
21496
21552
|
"relative flex flex-col gap-[var(--spacing-system-sf)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-sf)] select-none text-left",
|
|
@@ -21665,7 +21721,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onLoadMore, loadM
|
|
|
21665
21721
|
const observer = new IntersectionObserver(
|
|
21666
21722
|
(entries) => {
|
|
21667
21723
|
if (entries.some((e) => e.isIntersecting)) {
|
|
21668
|
-
_optionalChain([loadMoreRef, 'access',
|
|
21724
|
+
_optionalChain([loadMoreRef, 'access', _390 => _390.current, 'optionalCall', _391 => _391(columnIdRef.current)]);
|
|
21669
21725
|
}
|
|
21670
21726
|
},
|
|
21671
21727
|
{ root, rootMargin: loadMoreRootMargin }
|
|
@@ -21694,7 +21750,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onLoadMore, loadM
|
|
|
21694
21750
|
{
|
|
21695
21751
|
ticket: t,
|
|
21696
21752
|
columnId: column.id,
|
|
21697
|
-
href: _optionalChain([getTicketHref, 'optionalCall',
|
|
21753
|
+
href: _optionalChain([getTicketHref, 'optionalCall', _392 => _392(t.id)]),
|
|
21698
21754
|
renderAssignSlot,
|
|
21699
21755
|
dragDisabled: column.dragDisabled
|
|
21700
21756
|
},
|
|
@@ -21726,7 +21782,7 @@ function EmptyState2() {
|
|
|
21726
21782
|
// src/components/features/board/use-board-collapse.ts
|
|
21727
21783
|
|
|
21728
21784
|
function useBoardCollapse(storageKey) {
|
|
21729
|
-
const [persisted, setPersisted] =
|
|
21785
|
+
const [persisted, setPersisted] = _chunkQLWBBCI5cjs.useLocalStorage.call(void 0,
|
|
21730
21786
|
_nullishCoalesce(storageKey, () => ( "__board_collapse_unused__")),
|
|
21731
21787
|
{}
|
|
21732
21788
|
);
|
|
@@ -21774,7 +21830,7 @@ function Board({
|
|
|
21774
21830
|
onThumbPointerDown,
|
|
21775
21831
|
onThumbPointerMove,
|
|
21776
21832
|
onThumbPointerUp
|
|
21777
|
-
} =
|
|
21833
|
+
} = _chunkQLWBBCI5cjs.useHorizontalScrollbar.call(void 0, );
|
|
21778
21834
|
const [items, setItems] = React73.useState(columns);
|
|
21779
21835
|
const isDraggingRef = React73.useRef(false);
|
|
21780
21836
|
React73.useEffect(() => {
|
|
@@ -21790,17 +21846,17 @@ function Board({
|
|
|
21790
21846
|
const pointer = _core.pointerWithin.call(void 0, args);
|
|
21791
21847
|
const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
|
|
21792
21848
|
const ticketHit = intersections.find(
|
|
21793
|
-
(c) => _optionalChain([c, 'access',
|
|
21849
|
+
(c) => _optionalChain([c, 'access', _393 => _393.data, 'optionalAccess', _394 => _394.droppableContainer, 'optionalAccess', _395 => _395.data, 'optionalAccess', _396 => _396.current, 'optionalAccess', _397 => _397.type]) === "ticket"
|
|
21794
21850
|
);
|
|
21795
21851
|
if (ticketHit) return [ticketHit];
|
|
21796
21852
|
const columnHit = intersections.find(
|
|
21797
|
-
(c) => _optionalChain([c, 'access',
|
|
21853
|
+
(c) => _optionalChain([c, 'access', _398 => _398.data, 'optionalAccess', _399 => _399.droppableContainer, 'optionalAccess', _400 => _400.data, 'optionalAccess', _401 => _401.current, 'optionalAccess', _402 => _402.type]) === "column"
|
|
21798
21854
|
);
|
|
21799
21855
|
if (columnHit) {
|
|
21800
|
-
const columnId = _optionalChain([columnHit, 'access',
|
|
21856
|
+
const columnId = _optionalChain([columnHit, 'access', _403 => _403.data, 'optionalAccess', _404 => _404.droppableContainer, 'optionalAccess', _405 => _405.data, 'optionalAccess', _406 => _406.current, 'optionalAccess', _407 => _407.columnId]);
|
|
21801
21857
|
const ticketsInColumn = args.droppableContainers.filter((c) => {
|
|
21802
21858
|
const d = c.data.current;
|
|
21803
|
-
return _optionalChain([d, 'optionalAccess',
|
|
21859
|
+
return _optionalChain([d, 'optionalAccess', _408 => _408.type]) === "ticket" && d.columnId === columnId;
|
|
21804
21860
|
});
|
|
21805
21861
|
if (ticketsInColumn.length > 0) {
|
|
21806
21862
|
const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
|
|
@@ -21825,20 +21881,20 @@ function Board({
|
|
|
21825
21881
|
const overId = String(over.id);
|
|
21826
21882
|
if (activeId === overId) return;
|
|
21827
21883
|
const overData = over.data.current;
|
|
21828
|
-
const fromColumnId = _optionalChain([locate, 'call',
|
|
21829
|
-
const toColumnId = _optionalChain([overData, 'optionalAccess',
|
|
21884
|
+
const fromColumnId = _optionalChain([locate, 'call', _409 => _409(items, activeId), 'optionalAccess', _410 => _410.columnId]);
|
|
21885
|
+
const toColumnId = _optionalChain([overData, 'optionalAccess', _411 => _411.columnId]);
|
|
21830
21886
|
if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
|
|
21831
21887
|
const origin = dragOriginRef.current;
|
|
21832
|
-
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess',
|
|
21888
|
+
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _412 => _412.fromColumnId]) === toColumnId;
|
|
21833
21889
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
21834
|
-
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess',
|
|
21835
|
-
if (_optionalChain([targetCol, 'optionalAccess',
|
|
21890
|
+
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _413 => _413.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
|
|
21891
|
+
if (_optionalChain([targetCol, 'optionalAccess', _414 => _414.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
|
|
21836
21892
|
setItems((prev) => {
|
|
21837
21893
|
const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
|
|
21838
21894
|
const toCol = prev.find((c) => c.id === toColumnId);
|
|
21839
21895
|
if (fromIndex < 0 || !toCol) return prev;
|
|
21840
21896
|
let toIndex;
|
|
21841
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
21897
|
+
if (_optionalChain([overData, 'optionalAccess', _415 => _415.type]) === "column") {
|
|
21842
21898
|
toIndex = toCol.tickets.length;
|
|
21843
21899
|
} else {
|
|
21844
21900
|
const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
|
|
@@ -21880,14 +21936,14 @@ function Board({
|
|
|
21880
21936
|
const toColumnId = located.columnId;
|
|
21881
21937
|
const isCrossColumn = origin.fromColumnId !== toColumnId;
|
|
21882
21938
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
21883
|
-
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess',
|
|
21939
|
+
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _416 => _416.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _417 => _417.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
|
|
21884
21940
|
setItems(columns);
|
|
21885
21941
|
return;
|
|
21886
21942
|
}
|
|
21887
21943
|
let finalIndex = located.index;
|
|
21888
|
-
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access',
|
|
21944
|
+
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _418 => _418.find, 'call', _419 => _419((c) => c.id === toColumnId), 'optionalAccess', _420 => _420.tickets]), () => ( []));
|
|
21889
21945
|
const overData = over.data.current;
|
|
21890
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
21946
|
+
if (_optionalChain([overData, 'optionalAccess', _421 => _421.type]) === "ticket") {
|
|
21891
21947
|
const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
|
|
21892
21948
|
if (overIndex >= 0 && overIndex !== located.index) {
|
|
21893
21949
|
finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
|
|
@@ -21907,8 +21963,8 @@ function Board({
|
|
|
21907
21963
|
ticketId: origin.ticketId,
|
|
21908
21964
|
fromColumnId: origin.fromColumnId,
|
|
21909
21965
|
toColumnId,
|
|
21910
|
-
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
21911
|
-
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
21966
|
+
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _422 => _422[finalIndex - 1], 'optionalAccess', _423 => _423.id]), () => ( null)),
|
|
21967
|
+
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _424 => _424[finalIndex + 1], 'optionalAccess', _425 => _425.id]), () => ( null))
|
|
21912
21968
|
});
|
|
21913
21969
|
};
|
|
21914
21970
|
const handleDragCancel = () => {
|
|
@@ -21937,8 +21993,8 @@ function Board({
|
|
|
21937
21993
|
children: items.map((column, i) => {
|
|
21938
21994
|
const prev = items[i - 1];
|
|
21939
21995
|
const next = items[i + 1];
|
|
21940
|
-
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess',
|
|
21941
|
-
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess',
|
|
21996
|
+
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _426 => _426.system]));
|
|
21997
|
+
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _427 => _427.system]));
|
|
21942
21998
|
const showGap = i > 0 && !joinLeft;
|
|
21943
21999
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React73.Fragment, { children: [
|
|
21944
22000
|
showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
|
|
@@ -21997,7 +22053,7 @@ function locate(cols, ticketId) {
|
|
|
21997
22053
|
return null;
|
|
21998
22054
|
}
|
|
21999
22055
|
function findIndexInColumn(cols, columnId, ticketId) {
|
|
22000
|
-
return _nullishCoalesce(_optionalChain([cols, 'access',
|
|
22056
|
+
return _nullishCoalesce(_optionalChain([cols, 'access', _428 => _428.find, 'call', _429 => _429((c) => c.id === columnId), 'optionalAccess', _430 => _430.tickets, 'access', _431 => _431.findIndex, 'call', _432 => _432((t) => t.id === ticketId)]), () => ( -1));
|
|
22001
22057
|
}
|
|
22002
22058
|
|
|
22003
22059
|
// src/components/features/board/types.ts
|
|
@@ -22245,7 +22301,7 @@ function Header2({ config, platform }) {
|
|
|
22245
22301
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
22246
22302
|
"flex justify-start w-full",
|
|
22247
22303
|
"font-bold text-[16px] leading-none tracking-[-0.32px]",
|
|
22248
|
-
index < (_nullishCoalesce(_optionalChain([item, 'access',
|
|
22304
|
+
index < (_nullishCoalesce(_optionalChain([item, 'access', _433 => _433.children, 'optionalAccess', _434 => _434.length]), () => ( 0))) - 1 && "mb-1",
|
|
22249
22305
|
"text-ods-text-primary",
|
|
22250
22306
|
// All dropdown items use primary text color
|
|
22251
22307
|
child.isActive && "bg-ods-bg-hover"
|
|
@@ -22337,7 +22393,7 @@ function Header2({ config, platform }) {
|
|
|
22337
22393
|
style: config.style,
|
|
22338
22394
|
children: [
|
|
22339
22395
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
22340
|
-
_optionalChain([config, 'access',
|
|
22396
|
+
_optionalChain([config, 'access', _435 => _435.actions, 'optionalAccess', _436 => _436.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
|
|
22341
22397
|
/* @__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 })
|
|
22342
22398
|
] }),
|
|
22343
22399
|
config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22354,7 +22410,7 @@ function Header2({ config, platform }) {
|
|
|
22354
22410
|
}
|
|
22355
22411
|
),
|
|
22356
22412
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
|
|
22357
|
-
_optionalChain([config, 'access',
|
|
22413
|
+
_optionalChain([config, 'access', _437 => _437.actions, 'optionalAccess', _438 => _438.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
|
|
22358
22414
|
config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22359
22415
|
_chunkN5UOJC3Vcjs.Button,
|
|
22360
22416
|
{
|
|
@@ -22362,10 +22418,10 @@ function Header2({ config, platform }) {
|
|
|
22362
22418
|
size: "icon",
|
|
22363
22419
|
className: "flex md:hidden",
|
|
22364
22420
|
onClick: () => {
|
|
22365
|
-
_optionalChain([config, 'access',
|
|
22421
|
+
_optionalChain([config, 'access', _439 => _439.mobile, 'optionalAccess', _440 => _440.onToggle, 'optionalCall', _441 => _441()]);
|
|
22366
22422
|
},
|
|
22367
|
-
"aria-label": _optionalChain([config, 'access',
|
|
22368
|
-
leftIcon: _optionalChain([config, 'access',
|
|
22423
|
+
"aria-label": _optionalChain([config, 'access', _442 => _442.mobile, 'optionalAccess', _443 => _443.isOpen]) ? "Close menu" : "Open menu",
|
|
22424
|
+
leftIcon: _optionalChain([config, 'access', _444 => _444.mobile, 'optionalAccess', _445 => _445.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Menu01Icon, {})
|
|
22369
22425
|
}
|
|
22370
22426
|
)
|
|
22371
22427
|
] })
|
|
@@ -22382,10 +22438,10 @@ function Header2({ config, platform }) {
|
|
|
22382
22438
|
// src/components/navigation/header-skeleton.tsx
|
|
22383
22439
|
|
|
22384
22440
|
function HeaderSkeleton({ config }) {
|
|
22385
|
-
const showNavigation = _optionalChain([config, 'optionalAccess',
|
|
22386
|
-
const showActions = _optionalChain([config, 'optionalAccess',
|
|
22387
|
-
const showMobileMenu = _optionalChain([config, 'optionalAccess',
|
|
22388
|
-
const isAdminHeader = _optionalChain([config, 'optionalAccess',
|
|
22441
|
+
const showNavigation = _optionalChain([config, 'optionalAccess', _446 => _446.navigation]) && config.navigation.items.length > 0;
|
|
22442
|
+
const showActions = _optionalChain([config, 'optionalAccess', _447 => _447.actions, 'optionalAccess', _448 => _448.right]) && config.actions.right.length > 0;
|
|
22443
|
+
const showMobileMenu = _optionalChain([config, 'optionalAccess', _449 => _449.mobile, 'optionalAccess', _450 => _450.enabled]);
|
|
22444
|
+
const isAdminHeader = _optionalChain([config, 'optionalAccess', _451 => _451.className, 'optionalAccess', _452 => _452.includes, 'call', _453 => _453("admin")]);
|
|
22389
22445
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22390
22446
|
"header",
|
|
22391
22447
|
{
|
|
@@ -22394,11 +22450,11 @@ function HeaderSkeleton({ config }) {
|
|
|
22394
22450
|
"bg-ods-card border-b border-ods-border backdrop-blur-sm",
|
|
22395
22451
|
"px-6 py-3",
|
|
22396
22452
|
"transition-opacity duration-300 ease-in-out",
|
|
22397
|
-
_optionalChain([config, 'optionalAccess',
|
|
22453
|
+
_optionalChain([config, 'optionalAccess', _454 => _454.className])
|
|
22398
22454
|
),
|
|
22399
22455
|
children: [
|
|
22400
22456
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
22401
|
-
isAdminHeader && _optionalChain([config, 'optionalAccess',
|
|
22457
|
+
isAdminHeader && _optionalChain([config, 'optionalAccess', _455 => _455.actions, 'optionalAccess', _456 => _456.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" }) }),
|
|
22402
22458
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
22403
22459
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
|
|
22404
22460
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
|
|
@@ -22406,8 +22462,8 @@ function HeaderSkeleton({ config }) {
|
|
|
22406
22462
|
] }),
|
|
22407
22463
|
showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
22408
22464
|
"hidden md:flex items-center gap-2",
|
|
22409
|
-
_optionalChain([config, 'optionalAccess',
|
|
22410
|
-
_optionalChain([config, 'optionalAccess',
|
|
22465
|
+
_optionalChain([config, 'optionalAccess', _457 => _457.navigation, 'optionalAccess', _458 => _458.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
|
|
22466
|
+
_optionalChain([config, 'optionalAccess', _459 => _459.navigation, 'optionalAccess', _460 => _460.position]) === "right" && "ml-auto mr-4"
|
|
22411
22467
|
), children: [
|
|
22412
22468
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
|
|
22413
22469
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
|
|
@@ -22455,7 +22511,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
22455
22511
|
_react.useEffect.call(void 0, () => {
|
|
22456
22512
|
const handleKeyDown = (e) => {
|
|
22457
22513
|
if (e.key === "Escape" && isOpen) {
|
|
22458
|
-
_optionalChain([config, 'access',
|
|
22514
|
+
_optionalChain([config, 'access', _461 => _461.onClose, 'optionalCall', _462 => _462()]);
|
|
22459
22515
|
}
|
|
22460
22516
|
};
|
|
22461
22517
|
if (isOpen) {
|
|
@@ -22472,7 +22528,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
22472
22528
|
if (item.onClick) {
|
|
22473
22529
|
item.onClick();
|
|
22474
22530
|
}
|
|
22475
|
-
_optionalChain([config, 'access',
|
|
22531
|
+
_optionalChain([config, 'access', _463 => _463.onClose, 'optionalCall', _464 => _464()]);
|
|
22476
22532
|
};
|
|
22477
22533
|
if (item.href) {
|
|
22478
22534
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22567,57 +22623,9 @@ _chunkN5UOJC3Vcjs.init_button2.call(void 0, );
|
|
|
22567
22623
|
function SlidingSidebar({ config }) {
|
|
22568
22624
|
const [expandedItems, setExpandedItems] = _react.useState.call(void 0, /* @__PURE__ */ new Set());
|
|
22569
22625
|
const [mounted, setMounted] = _react.useState.call(void 0, false);
|
|
22570
|
-
const
|
|
22626
|
+
const headerHeight = _chunkQLWBBCI5cjs.useHeaderHeight.call(void 0, );
|
|
22571
22627
|
_react.useEffect.call(void 0, () => {
|
|
22572
22628
|
setMounted(true);
|
|
22573
|
-
const calculateHeaderHeight = () => {
|
|
22574
|
-
let totalHeight = 0;
|
|
22575
|
-
const header2 = document.querySelector("header");
|
|
22576
|
-
if (header2) {
|
|
22577
|
-
totalHeight += header2.offsetHeight;
|
|
22578
|
-
}
|
|
22579
|
-
const announcementBar2 = document.querySelector("[data-announcement-bar]");
|
|
22580
|
-
if (announcementBar2 && announcementBar2 instanceof HTMLElement) {
|
|
22581
|
-
totalHeight += announcementBar2.offsetHeight;
|
|
22582
|
-
}
|
|
22583
|
-
if (totalHeight > 0) {
|
|
22584
|
-
setHeaderHeight(totalHeight);
|
|
22585
|
-
} else {
|
|
22586
|
-
setHeaderHeight(64);
|
|
22587
|
-
}
|
|
22588
|
-
};
|
|
22589
|
-
setTimeout(calculateHeaderHeight, 100);
|
|
22590
|
-
calculateHeaderHeight();
|
|
22591
|
-
window.addEventListener("resize", calculateHeaderHeight);
|
|
22592
|
-
const resizeObserver = new ResizeObserver(calculateHeaderHeight);
|
|
22593
|
-
const header = document.querySelector("header");
|
|
22594
|
-
if (header) {
|
|
22595
|
-
resizeObserver.observe(header);
|
|
22596
|
-
}
|
|
22597
|
-
const announcementBar = document.querySelector("[data-announcement-bar]");
|
|
22598
|
-
if (announcementBar) {
|
|
22599
|
-
resizeObserver.observe(announcementBar);
|
|
22600
|
-
}
|
|
22601
|
-
const mutationObserver = new MutationObserver((mutations) => {
|
|
22602
|
-
for (const mutation of mutations) {
|
|
22603
|
-
if (mutation.type === "childList") {
|
|
22604
|
-
calculateHeaderHeight();
|
|
22605
|
-
const newAnnouncementBar = document.querySelector("[data-announcement-bar]");
|
|
22606
|
-
if (newAnnouncementBar) {
|
|
22607
|
-
resizeObserver.observe(newAnnouncementBar);
|
|
22608
|
-
}
|
|
22609
|
-
}
|
|
22610
|
-
}
|
|
22611
|
-
});
|
|
22612
|
-
mutationObserver.observe(document.body, {
|
|
22613
|
-
childList: true,
|
|
22614
|
-
subtree: true
|
|
22615
|
-
});
|
|
22616
|
-
return () => {
|
|
22617
|
-
window.removeEventListener("resize", calculateHeaderHeight);
|
|
22618
|
-
resizeObserver.disconnect();
|
|
22619
|
-
mutationObserver.disconnect();
|
|
22620
|
-
};
|
|
22621
22629
|
}, []);
|
|
22622
22630
|
const toggleExpanded = (itemId) => {
|
|
22623
22631
|
const newExpanded = new Set(expandedItems);
|
|
@@ -22690,7 +22698,7 @@ function SlidingSidebar({ config }) {
|
|
|
22690
22698
|
variant: "transparent",
|
|
22691
22699
|
size: "default",
|
|
22692
22700
|
onClick: () => {
|
|
22693
|
-
_optionalChain([item, 'access',
|
|
22701
|
+
_optionalChain([item, 'access', _465 => _465.onClick, 'optionalCall', _466 => _466()]);
|
|
22694
22702
|
config.onClose();
|
|
22695
22703
|
},
|
|
22696
22704
|
leftIcon: item.icon,
|
|
@@ -22713,7 +22721,7 @@ function SlidingSidebar({ config }) {
|
|
|
22713
22721
|
variant: "transparent",
|
|
22714
22722
|
size: "default",
|
|
22715
22723
|
onClick: () => {
|
|
22716
|
-
_optionalChain([item, 'access',
|
|
22724
|
+
_optionalChain([item, 'access', _467 => _467.onClick, 'optionalCall', _468 => _468()]);
|
|
22717
22725
|
config.onClose();
|
|
22718
22726
|
},
|
|
22719
22727
|
leftIcon: item.icon,
|
|
@@ -22840,7 +22848,7 @@ function StickySectionNav({
|
|
|
22840
22848
|
] });
|
|
22841
22849
|
}
|
|
22842
22850
|
function useSectionNavigation(sections, options) {
|
|
22843
|
-
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access',
|
|
22851
|
+
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _469 => _469[0], 'optionalAccess', _470 => _470.id]) || "");
|
|
22844
22852
|
const isScrollingFromClick = _react.useRef.call(void 0, false);
|
|
22845
22853
|
const { offset: offset2 = 100 } = options || {};
|
|
22846
22854
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
@@ -22864,7 +22872,7 @@ function useSectionNavigation(sections, options) {
|
|
|
22864
22872
|
const handleScroll = () => {
|
|
22865
22873
|
if (isScrollingFromClick.current) return;
|
|
22866
22874
|
const scrollPosition = window.scrollY + offset2 + 50;
|
|
22867
|
-
let currentSection = _optionalChain([sections, 'access',
|
|
22875
|
+
let currentSection = _optionalChain([sections, 'access', _471 => _471[0], 'optionalAccess', _472 => _472.id]) || "";
|
|
22868
22876
|
for (let i = sections.length - 1; i >= 0; i--) {
|
|
22869
22877
|
const element = document.getElementById(sections[i].id);
|
|
22870
22878
|
if (element && scrollPosition >= element.offsetTop) {
|
|
@@ -23044,10 +23052,10 @@ var MINIMIZED_WIDTH = 56;
|
|
|
23044
23052
|
var EXPANDED_WIDTH = 224;
|
|
23045
23053
|
var STORAGE_KEY = "of.navigationSidebar.minimized";
|
|
23046
23054
|
function NavigationSidebar({ config, disabled = false }) {
|
|
23047
|
-
const isMdUp = _nullishCoalesce(
|
|
23048
|
-
const isLgUp = _nullishCoalesce(
|
|
23055
|
+
const isMdUp = _nullishCoalesce(_chunkQLWBBCI5cjs.useMdUp.call(void 0, ), () => ( false));
|
|
23056
|
+
const isLgUp = _nullishCoalesce(_chunkQLWBBCI5cjs.useLgUp.call(void 0, ), () => ( false));
|
|
23049
23057
|
const isTablet = isMdUp && !isLgUp;
|
|
23050
|
-
const [desktopMinimized, setDesktopMinimized] =
|
|
23058
|
+
const [desktopMinimized, setDesktopMinimized] = _chunkQLWBBCI5cjs.useLocalStorage.call(void 0,
|
|
23051
23059
|
STORAGE_KEY,
|
|
23052
23060
|
_nullishCoalesce(config.minimized, () => ( false))
|
|
23053
23061
|
);
|
|
@@ -23065,7 +23073,7 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
23065
23073
|
} else {
|
|
23066
23074
|
setDesktopMinimized((prev) => !prev);
|
|
23067
23075
|
}
|
|
23068
|
-
_optionalChain([config, 'access',
|
|
23076
|
+
_optionalChain([config, 'access', _473 => _473.onToggleMinimized, 'optionalCall', _474 => _474()]);
|
|
23069
23077
|
}, [isTablet, setDesktopMinimized, config]);
|
|
23070
23078
|
const closeOverlay = _react.useCallback.call(void 0, () => {
|
|
23071
23079
|
setTabletMinimized(true);
|
|
@@ -23079,11 +23087,11 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
23079
23087
|
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
23080
23088
|
}, [isOverlayOpen, closeOverlay]);
|
|
23081
23089
|
const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
|
|
23082
|
-
_optionalChain([event, 'optionalAccess',
|
|
23090
|
+
_optionalChain([event, 'optionalAccess', _475 => _475.stopPropagation, 'call', _476 => _476()]);
|
|
23083
23091
|
if (item.onClick) {
|
|
23084
23092
|
item.onClick();
|
|
23085
23093
|
} else if (item.path) {
|
|
23086
|
-
_optionalChain([config, 'access',
|
|
23094
|
+
_optionalChain([config, 'access', _477 => _477.onNavigate, 'optionalCall', _478 => _478(item.path)]);
|
|
23087
23095
|
}
|
|
23088
23096
|
if (isTablet) setTabletMinimized(true);
|
|
23089
23097
|
}, [config, isTablet]);
|
|
@@ -23228,11 +23236,11 @@ function HeaderGlobalSearch({
|
|
|
23228
23236
|
};
|
|
23229
23237
|
const handleSubmit = (e) => {
|
|
23230
23238
|
e.preventDefault();
|
|
23231
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
23239
|
+
_optionalChain([onSubmit, 'optionalCall', _479 => _479(currentValue)]);
|
|
23232
23240
|
};
|
|
23233
23241
|
const handleKeyDown = (e) => {
|
|
23234
23242
|
if (e.key === "Enter") {
|
|
23235
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
23243
|
+
_optionalChain([onSubmit, 'optionalCall', _480 => _480(currentValue)]);
|
|
23236
23244
|
}
|
|
23237
23245
|
};
|
|
23238
23246
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -23326,8 +23334,8 @@ function HeaderOrganizationFilter({
|
|
|
23326
23334
|
className
|
|
23327
23335
|
}) {
|
|
23328
23336
|
const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
|
|
23329
|
-
const displayName = _optionalChain([selectedOrg, 'optionalAccess',
|
|
23330
|
-
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess',
|
|
23337
|
+
const displayName = _optionalChain([selectedOrg, 'optionalAccess', _481 => _481.name]) || "All Organizations";
|
|
23338
|
+
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _482 => _482.deviceCount]), () => ( totalDeviceCount));
|
|
23331
23339
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkN5UOJC3Vcjs.DropdownMenu, { children: [
|
|
23332
23340
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN5UOJC3Vcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23333
23341
|
"button",
|
|
@@ -23352,11 +23360,11 @@ function HeaderOrganizationFilter({
|
|
|
23352
23360
|
}
|
|
23353
23361
|
) }),
|
|
23354
23362
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkN5UOJC3Vcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
|
|
23355
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN5UOJC3Vcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
23363
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN5UOJC3Vcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _483 => _483("")]), children: "All Organizations" }),
|
|
23356
23364
|
organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23357
23365
|
_chunkN5UOJC3Vcjs.DropdownMenuItem,
|
|
23358
23366
|
{
|
|
23359
|
-
onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
23367
|
+
onClick: () => _optionalChain([onOrgChange, 'optionalCall', _484 => _484(org.id)]),
|
|
23360
23368
|
children: org.name
|
|
23361
23369
|
},
|
|
23362
23370
|
org.id
|
|
@@ -23390,7 +23398,7 @@ var AppHeader = React89.default.memo(function AppHeader2({
|
|
|
23390
23398
|
onToggleMobileMenu,
|
|
23391
23399
|
disabled = false
|
|
23392
23400
|
}) {
|
|
23393
|
-
const isMdUp = _nullishCoalesce(
|
|
23401
|
+
const isMdUp = _nullishCoalesce(_chunkQLWBBCI5cjs.useMdUp.call(void 0, ), () => ( false));
|
|
23394
23402
|
const dimmedClass = disabled ? "pointer-events-none opacity-50" : "";
|
|
23395
23403
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
23396
23404
|
"header",
|
|
@@ -23541,9 +23549,9 @@ function NotificationsHeaderButton({
|
|
|
23541
23549
|
dimmedClass
|
|
23542
23550
|
}) {
|
|
23543
23551
|
const ctx = useOptionalNotifications();
|
|
23544
|
-
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
23545
|
-
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
23546
|
-
const onClick = _optionalChain([ctx, 'optionalAccess',
|
|
23552
|
+
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _485 => _485.unreadCount]), () => ( fallbackUnreadCount))) > 0;
|
|
23553
|
+
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _486 => _486.isOpen]), () => ( false));
|
|
23554
|
+
const onClick = _optionalChain([ctx, 'optionalAccess', _487 => _487.toggle]);
|
|
23547
23555
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
23548
23556
|
HeaderButton,
|
|
23549
23557
|
{
|
|
@@ -23607,7 +23615,7 @@ var MobileBurgerMenu = React89.default.memo(function MobileBurgerMenu2({
|
|
|
23607
23615
|
if (item.onClick) {
|
|
23608
23616
|
item.onClick();
|
|
23609
23617
|
} else if (item.path) {
|
|
23610
|
-
_optionalChain([config, 'access',
|
|
23618
|
+
_optionalChain([config, 'access', _488 => _488.onNavigate, 'optionalCall', _489 => _489(item.path)]);
|
|
23611
23619
|
}
|
|
23612
23620
|
onClose();
|
|
23613
23621
|
}, [config, onClose]);
|
|
@@ -23850,7 +23858,7 @@ var AppLayoutDrawerRoot = ({
|
|
|
23850
23858
|
const handleOpenChange = React82.useCallback(
|
|
23851
23859
|
(next) => {
|
|
23852
23860
|
if (!isControlled) setInternalOpen(next);
|
|
23853
|
-
_optionalChain([onOpenChange, 'optionalCall',
|
|
23861
|
+
_optionalChain([onOpenChange, 'optionalCall', _490 => _490(next)]);
|
|
23854
23862
|
},
|
|
23855
23863
|
[isControlled, onOpenChange]
|
|
23856
23864
|
);
|
|
@@ -24231,10 +24239,10 @@ var AppLayoutDrawerContent = React82.forwardRef(
|
|
|
24231
24239
|
),
|
|
24232
24240
|
style,
|
|
24233
24241
|
onInteractOutside: (event) => {
|
|
24234
|
-
_optionalChain([onInteractOutside, 'optionalCall',
|
|
24242
|
+
_optionalChain([onInteractOutside, 'optionalCall', _491 => _491(event)]);
|
|
24235
24243
|
if (event.defaultPrevented) return;
|
|
24236
24244
|
const target = event.target;
|
|
24237
|
-
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess',
|
|
24245
|
+
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _492 => _492.contains, 'call', _493 => _493(target)]);
|
|
24238
24246
|
if (!isInsideContainer) {
|
|
24239
24247
|
event.preventDefault();
|
|
24240
24248
|
return;
|
|
@@ -24375,7 +24383,7 @@ var ToolBadge = ({
|
|
|
24375
24383
|
}) => {
|
|
24376
24384
|
const label = getToolLabel(toolType);
|
|
24377
24385
|
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: [
|
|
24378
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24386
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQLWBBCI5cjs.ToolIcon, { toolType, className: iconClassName, size: 16 }),
|
|
24379
24387
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: label })
|
|
24380
24388
|
] });
|
|
24381
24389
|
};
|
|
@@ -24423,7 +24431,7 @@ var ShellTypeBadge = ({
|
|
|
24423
24431
|
className,
|
|
24424
24432
|
iconClassName
|
|
24425
24433
|
}) => {
|
|
24426
|
-
const normalizedType = _optionalChain([shellType, 'optionalAccess',
|
|
24434
|
+
const normalizedType = _optionalChain([shellType, 'optionalAccess', _494 => _494.toUpperCase, 'call', _495 => _495()]);
|
|
24427
24435
|
const label = getShellLabel(normalizedType);
|
|
24428
24436
|
const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
|
|
24429
24437
|
const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
|
|
@@ -24747,7 +24755,7 @@ function OnboardingWalkthrough({
|
|
|
24747
24755
|
isStepSkipped,
|
|
24748
24756
|
allStepsComplete,
|
|
24749
24757
|
markMultipleComplete
|
|
24750
|
-
} =
|
|
24758
|
+
} = _chunkQLWBBCI5cjs.useOnboardingState.call(void 0, storageKey);
|
|
24751
24759
|
const hasAutoMarkedRef = _react.useRef.call(void 0, false);
|
|
24752
24760
|
const autoMarkingInProgressRef = _react.useRef.call(void 0, false);
|
|
24753
24761
|
const lastCompletionStatusRef = _react.useRef.call(void 0, null);
|
|
@@ -24810,12 +24818,12 @@ function OnboardingWalkthrough({
|
|
|
24810
24818
|
}
|
|
24811
24819
|
}, [state.completedSteps, markComplete]);
|
|
24812
24820
|
const handleStepSkip = (step) => {
|
|
24813
|
-
_optionalChain([step, 'access',
|
|
24821
|
+
_optionalChain([step, 'access', _496 => _496.onSkip, 'optionalCall', _497 => _497()]);
|
|
24814
24822
|
markSkipped(step.id);
|
|
24815
24823
|
};
|
|
24816
24824
|
const handleDismiss = () => {
|
|
24817
24825
|
dismissOnboarding();
|
|
24818
|
-
_optionalChain([onDismiss, 'optionalCall',
|
|
24826
|
+
_optionalChain([onDismiss, 'optionalCall', _498 => _498()]);
|
|
24819
24827
|
};
|
|
24820
24828
|
if (state.dismissed) {
|
|
24821
24829
|
return null;
|
|
@@ -24945,7 +24953,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
24945
24953
|
onKeyDown: (e) => {
|
|
24946
24954
|
if (e.key === "Enter" || e.key === " ") {
|
|
24947
24955
|
e.preventDefault();
|
|
24948
|
-
_optionalChain([onClick, 'optionalCall',
|
|
24956
|
+
_optionalChain([onClick, 'optionalCall', _499 => _499()]);
|
|
24949
24957
|
}
|
|
24950
24958
|
},
|
|
24951
24959
|
children: [
|
|
@@ -24954,7 +24962,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
24954
24962
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-5 text-white", children: log.title }),
|
|
24955
24963
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
24956
24964
|
/* @__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) }),
|
|
24957
|
-
log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
24965
|
+
log.toolType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQLWBBCI5cjs.ToolIcon, { toolType: log.toolType, size: 16 })
|
|
24958
24966
|
] })
|
|
24959
24967
|
] })
|
|
24960
24968
|
]
|
|
@@ -25046,7 +25054,7 @@ var LogsList = React86.forwardRef(({
|
|
|
25046
25054
|
log,
|
|
25047
25055
|
isLast: index === logs.length - 1,
|
|
25048
25056
|
showConnector,
|
|
25049
|
-
onClick: () => _optionalChain([onLogClick, 'optionalCall',
|
|
25057
|
+
onClick: () => _optionalChain([onLogClick, 'optionalCall', _500 => _500(log)])
|
|
25050
25058
|
},
|
|
25051
25059
|
log.id
|
|
25052
25060
|
))
|
|
@@ -25091,7 +25099,7 @@ function ServiceCard({ title, subtitle, icon, tag, rows, className }) {
|
|
|
25091
25099
|
}
|
|
25092
25100
|
function ServiceCardRowItem({ row }) {
|
|
25093
25101
|
const [revealed, setRevealed] = _react.useState.call(void 0, false);
|
|
25094
|
-
const { copy, copied } =
|
|
25102
|
+
const { copy, copied } = _chunkQLWBBCI5cjs.useCopyToClipboard.call(void 0, );
|
|
25095
25103
|
const actions = _react.useMemo.call(void 0, () => ({ copy: true, open: !!row.href, reveal: !!row.isSecret, ...row.actions }), [row]);
|
|
25096
25104
|
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 });
|
|
25097
25105
|
const handleCopy = () => copy(_nullishCoalesce(row.copyValue, () => ( row.value)));
|
|
@@ -25147,7 +25155,7 @@ var Slider = React88.forwardRef(
|
|
|
25147
25155
|
({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
|
|
25148
25156
|
const handleChange = (e) => {
|
|
25149
25157
|
const newValue = [Number(e.target.value)];
|
|
25150
|
-
_optionalChain([onValueChange, 'optionalCall',
|
|
25158
|
+
_optionalChain([onValueChange, 'optionalCall', _501 => _501(newValue)]);
|
|
25151
25159
|
};
|
|
25152
25160
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25153
25161
|
"input",
|
|
@@ -25459,7 +25467,7 @@ function CursorPaginationSimple({
|
|
|
25459
25467
|
{
|
|
25460
25468
|
variant: "transparent",
|
|
25461
25469
|
size: "icon",
|
|
25462
|
-
onClick: () => _optionalChain([onPrevious, 'optionalCall',
|
|
25470
|
+
onClick: () => _optionalChain([onPrevious, 'optionalCall', _502 => _502("")]),
|
|
25463
25471
|
disabled: !hasPreviousPage || loading,
|
|
25464
25472
|
className: "h-8 w-8",
|
|
25465
25473
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -25471,7 +25479,7 @@ function CursorPaginationSimple({
|
|
|
25471
25479
|
{
|
|
25472
25480
|
variant: "transparent",
|
|
25473
25481
|
size: "icon",
|
|
25474
|
-
onClick: () => _optionalChain([onNext, 'optionalCall',
|
|
25482
|
+
onClick: () => _optionalChain([onNext, 'optionalCall', _503 => _503("")]),
|
|
25475
25483
|
disabled: !hasNextPage || loading,
|
|
25476
25484
|
className: "h-8 w-8",
|
|
25477
25485
|
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
|
|
@@ -25531,7 +25539,7 @@ function TableColumnFilterDropdown({
|
|
|
25531
25539
|
placement = "bottom-start",
|
|
25532
25540
|
dropdownClassName = "min-w-[240px]"
|
|
25533
25541
|
}) {
|
|
25534
|
-
const activeCount = _optionalChain([filters, 'optionalAccess',
|
|
25542
|
+
const activeCount = _optionalChain([filters, 'optionalAccess', _504 => _504[columnKey], 'optionalAccess', _505 => _505.length]) || 0;
|
|
25535
25543
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
25536
25544
|
FiltersDropdown,
|
|
25537
25545
|
{
|
|
@@ -25574,7 +25582,7 @@ function TableColumnFilterDropdown({
|
|
|
25574
25582
|
delete newFilters[columnKey];
|
|
25575
25583
|
onFilterChange(newFilters);
|
|
25576
25584
|
},
|
|
25577
|
-
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess',
|
|
25585
|
+
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _506 => _506[columnKey]]) || [] },
|
|
25578
25586
|
placement,
|
|
25579
25587
|
dropdownClassName
|
|
25580
25588
|
}
|
|
@@ -25649,7 +25657,7 @@ function TableHeader({
|
|
|
25649
25657
|
}
|
|
25650
25658
|
return sortDirection === "asc" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Arrow01UpIcon, { className: "w-4 h-4 text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Arrow01DownIcon, { className: "w-4 h-4 text-ods-accent" });
|
|
25651
25659
|
};
|
|
25652
|
-
const isLgUp = _nullishCoalesce(
|
|
25660
|
+
const isLgUp = _nullishCoalesce(_chunkQLWBBCI5cjs.useLgUp.call(void 0, ), () => ( false));
|
|
25653
25661
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25654
25662
|
"div",
|
|
25655
25663
|
{
|
|
@@ -25871,7 +25879,7 @@ function TableRow({
|
|
|
25871
25879
|
const keys = column.key.split(".");
|
|
25872
25880
|
let value = item;
|
|
25873
25881
|
for (const key of keys) {
|
|
25874
|
-
value = _optionalChain([value, 'optionalAccess',
|
|
25882
|
+
value = _optionalChain([value, 'optionalAccess', _507 => _507[key]]);
|
|
25875
25883
|
}
|
|
25876
25884
|
if (value === null || value === void 0) {
|
|
25877
25885
|
return "-";
|
|
@@ -25941,7 +25949,7 @@ function TableRow({
|
|
|
25941
25949
|
// src/components/ui/table/table.tsx
|
|
25942
25950
|
|
|
25943
25951
|
function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
|
|
25944
|
-
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess',
|
|
25952
|
+
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _508 => _508.length])) || Boolean(renderRowActions);
|
|
25945
25953
|
const result = [...columns];
|
|
25946
25954
|
if (hasActions) {
|
|
25947
25955
|
const actionsColumn = {
|
|
@@ -26035,7 +26043,7 @@ function Table({
|
|
|
26035
26043
|
return rowKey(item);
|
|
26036
26044
|
}
|
|
26037
26045
|
const key = item[rowKey];
|
|
26038
|
-
return _optionalChain([key, 'optionalAccess',
|
|
26046
|
+
return _optionalChain([key, 'optionalAccess', _509 => _509.toString, 'call', _510 => _510()]) || index.toString();
|
|
26039
26047
|
};
|
|
26040
26048
|
const getRowClassName = (item, index) => {
|
|
26041
26049
|
if (typeof rowClassName === "function") {
|
|
@@ -26069,23 +26077,23 @@ function Table({
|
|
|
26069
26077
|
const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
|
|
26070
26078
|
const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
|
|
26071
26079
|
const sentinelRef = _react.useRef.call(void 0, null);
|
|
26072
|
-
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess',
|
|
26073
|
-
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess',
|
|
26080
|
+
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _511 => _511.onLoadMore]));
|
|
26081
|
+
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _512 => _512.onLoadMore]);
|
|
26074
26082
|
_react.useEffect.call(void 0, () => {
|
|
26075
|
-
if (!_optionalChain([infiniteScroll, 'optionalAccess',
|
|
26083
|
+
if (!_optionalChain([infiniteScroll, 'optionalAccess', _513 => _513.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
|
|
26076
26084
|
const sentinel = sentinelRef.current;
|
|
26077
26085
|
if (!sentinel) return;
|
|
26078
26086
|
const observer = new IntersectionObserver(
|
|
26079
26087
|
(entries) => {
|
|
26080
|
-
if (_optionalChain([entries, 'access',
|
|
26081
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
26088
|
+
if (_optionalChain([entries, 'access', _514 => _514[0], 'optionalAccess', _515 => _515.isIntersecting])) {
|
|
26089
|
+
_optionalChain([onLoadMoreRef, 'access', _516 => _516.current, 'optionalCall', _517 => _517()]);
|
|
26082
26090
|
}
|
|
26083
26091
|
},
|
|
26084
26092
|
{ rootMargin: "200px" }
|
|
26085
26093
|
);
|
|
26086
26094
|
observer.observe(sentinel);
|
|
26087
26095
|
return () => observer.disconnect();
|
|
26088
|
-
}, [_optionalChain([infiniteScroll, 'optionalAccess',
|
|
26096
|
+
}, [_optionalChain([infiniteScroll, 'optionalAccess', _518 => _518.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _519 => _519.isFetchingNextPage])]);
|
|
26089
26097
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
|
|
26090
26098
|
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: [
|
|
26091
26099
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
|
|
@@ -26156,7 +26164,7 @@ function Table({
|
|
|
26156
26164
|
},
|
|
26157
26165
|
getRowKey(item, index)
|
|
26158
26166
|
)),
|
|
26159
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
26167
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _520 => _520.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26160
26168
|
TableCardSkeleton,
|
|
26161
26169
|
{
|
|
26162
26170
|
columns,
|
|
@@ -26165,7 +26173,7 @@ function Table({
|
|
|
26165
26173
|
hasChevron: Boolean(rowHref)
|
|
26166
26174
|
}
|
|
26167
26175
|
),
|
|
26168
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
26176
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _521 => _521.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
|
|
26169
26177
|
!infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26170
26178
|
"div",
|
|
26171
26179
|
{
|
|
@@ -26523,7 +26531,7 @@ function QueryReportTable({
|
|
|
26523
26531
|
);
|
|
26524
26532
|
const handleExport = () => {
|
|
26525
26533
|
exportToCSV(data, columns, exportFilename);
|
|
26526
|
-
_optionalChain([onExport, 'optionalCall',
|
|
26534
|
+
_optionalChain([onExport, 'optionalCall', _522 => _522()]);
|
|
26527
26535
|
};
|
|
26528
26536
|
const tableMinWidth = columns.length * (columnWidth + 16);
|
|
26529
26537
|
const {
|
|
@@ -26539,7 +26547,7 @@ function QueryReportTable({
|
|
|
26539
26547
|
onThumbPointerDown,
|
|
26540
26548
|
onThumbPointerMove,
|
|
26541
26549
|
onThumbPointerUp
|
|
26542
|
-
} =
|
|
26550
|
+
} = _chunkQLWBBCI5cjs.useHorizontalScrollbar.call(void 0, );
|
|
26543
26551
|
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: [
|
|
26544
26552
|
!isCompact && (title || headerActions || showExport && data.length > 0) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-end justify-between pt-6", children: [
|
|
26545
26553
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "font-mono font-semibold text-[32px] leading-[40px] text-ods-text-primary", children: title }),
|
|
@@ -26696,7 +26704,7 @@ function DataTableColumnFilter({
|
|
|
26696
26704
|
align = "left"
|
|
26697
26705
|
}) {
|
|
26698
26706
|
const currentValue = column.getFilterValue();
|
|
26699
|
-
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess',
|
|
26707
|
+
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _523 => _523.length]), () => ( 0));
|
|
26700
26708
|
const sections = _react.useMemo.call(void 0,
|
|
26701
26709
|
() => [
|
|
26702
26710
|
{
|
|
@@ -26770,13 +26778,13 @@ function DataTableHeader({
|
|
|
26770
26778
|
onSortChange
|
|
26771
26779
|
}) {
|
|
26772
26780
|
const table = useDataTableContext();
|
|
26773
|
-
const isLgUp = _nullishCoalesce(
|
|
26781
|
+
const isLgUp = _nullishCoalesce(_chunkQLWBBCI5cjs.useLgUp.call(void 0, ), () => ( false));
|
|
26774
26782
|
const headerGroup = table.getHeaderGroups()[0];
|
|
26775
26783
|
if (!headerGroup) return null;
|
|
26776
26784
|
const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
|
|
26777
26785
|
if (header.isPlaceholder) return false;
|
|
26778
26786
|
if (isLgUp) return true;
|
|
26779
|
-
return Boolean(_optionalChain([header, 'access',
|
|
26787
|
+
return Boolean(_optionalChain([header, 'access', _524 => _524.column, 'access', _525 => _525.columnDef, 'access', _526 => _526.meta, 'optionalAccess', _527 => _527.filter]));
|
|
26780
26788
|
});
|
|
26781
26789
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26782
26790
|
"div",
|
|
@@ -26806,20 +26814,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
26806
26814
|
if (header.isPlaceholder) return null;
|
|
26807
26815
|
const column = header.column;
|
|
26808
26816
|
const meta = column.columnDef.meta;
|
|
26809
|
-
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess',
|
|
26810
|
-
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
26811
|
-
const canSort = _optionalChain([meta, 'optionalAccess',
|
|
26812
|
-
const sortDir = _optionalChain([sort, 'optionalAccess',
|
|
26817
|
+
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _528 => _528.filter]));
|
|
26818
|
+
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _529 => _529.align]), () => ( "left"));
|
|
26819
|
+
const canSort = _optionalChain([meta, 'optionalAccess', _530 => _530.sortable]) === true;
|
|
26820
|
+
const sortDir = _optionalChain([sort, 'optionalAccess', _531 => _531.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
|
|
26813
26821
|
if (!isLgUp && !hasFilter) return null;
|
|
26814
26822
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26815
26823
|
"div",
|
|
26816
26824
|
{
|
|
26817
26825
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
26818
26826
|
"flex items-stretch",
|
|
26819
|
-
isLgUp && (_optionalChain([meta, 'optionalAccess',
|
|
26820
|
-
_optionalChain([meta, 'optionalAccess',
|
|
26827
|
+
isLgUp && (_optionalChain([meta, 'optionalAccess', _532 => _532.width]) || "flex-1 min-w-0"),
|
|
26828
|
+
_optionalChain([meta, 'optionalAccess', _533 => _533.headerClassName]),
|
|
26821
26829
|
// Don't apply hide classes if column is filterable on tablet (keep filter accessible)
|
|
26822
|
-
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
26830
|
+
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _534 => _534.hideAt]))
|
|
26823
26831
|
),
|
|
26824
26832
|
children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26825
26833
|
DataTableColumnFilter,
|
|
@@ -26838,7 +26846,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
26838
26846
|
isLgUp && alignJustify(align),
|
|
26839
26847
|
canSort && "group cursor-pointer"
|
|
26840
26848
|
),
|
|
26841
|
-
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall',
|
|
26849
|
+
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _535 => _535(column.id)]) : void 0,
|
|
26842
26850
|
children: [
|
|
26843
26851
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
26844
26852
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -26922,7 +26930,7 @@ function DataTableSkeleton({
|
|
|
26922
26930
|
}) {
|
|
26923
26931
|
const table = useDataTableContext();
|
|
26924
26932
|
const columns = table.getVisibleFlatColumns();
|
|
26925
|
-
const firstColumnId = _optionalChain([columns, 'access',
|
|
26933
|
+
const firstColumnId = _optionalChain([columns, 'access', _536 => _536[0], 'optionalAccess', _537 => _537.id]);
|
|
26926
26934
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
26927
26935
|
"div",
|
|
26928
26936
|
{
|
|
@@ -26946,7 +26954,7 @@ function DataTableSkeleton({
|
|
|
26946
26954
|
{
|
|
26947
26955
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
26948
26956
|
"flex flex-col justify-center shrink-0",
|
|
26949
|
-
_optionalChain([meta, 'optionalAccess',
|
|
26957
|
+
_optionalChain([meta, 'optionalAccess', _538 => _538.width]) || "flex-1"
|
|
26950
26958
|
),
|
|
26951
26959
|
children: [
|
|
26952
26960
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
|
|
@@ -26995,7 +27003,7 @@ function DataTableRowImpl({
|
|
|
26995
27003
|
const handleClick = _react.useCallback.call(void 0,
|
|
26996
27004
|
(e) => {
|
|
26997
27005
|
const target = e.target;
|
|
26998
|
-
if (!_optionalChain([containerRef, 'access',
|
|
27006
|
+
if (!_optionalChain([containerRef, 'access', _539 => _539.current, 'optionalAccess', _540 => _540.contains, 'call', _541 => _541(target)])) {
|
|
26999
27007
|
if (isLinkMode) e.preventDefault();
|
|
27000
27008
|
return;
|
|
27001
27009
|
}
|
|
@@ -27003,7 +27011,7 @@ function DataTableRowImpl({
|
|
|
27003
27011
|
if (isLinkMode) e.preventDefault();
|
|
27004
27012
|
return;
|
|
27005
27013
|
}
|
|
27006
|
-
_optionalChain([onClick, 'optionalCall',
|
|
27014
|
+
_optionalChain([onClick, 'optionalCall', _542 => _542(row.original)]);
|
|
27007
27015
|
},
|
|
27008
27016
|
[onClick, row.original, isLinkMode]
|
|
27009
27017
|
);
|
|
@@ -27028,10 +27036,10 @@ function DataTableRowImpl({
|
|
|
27028
27036
|
{
|
|
27029
27037
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
27030
27038
|
"flex flex-col overflow-hidden",
|
|
27031
|
-
alignJustify(_optionalChain([meta, 'optionalAccess',
|
|
27032
|
-
_optionalChain([meta, 'optionalAccess',
|
|
27033
|
-
_optionalChain([meta, 'optionalAccess',
|
|
27034
|
-
getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
27039
|
+
alignJustify(_optionalChain([meta, 'optionalAccess', _543 => _543.align])),
|
|
27040
|
+
_optionalChain([meta, 'optionalAccess', _544 => _544.width]) || "flex-1 min-w-0",
|
|
27041
|
+
_optionalChain([meta, 'optionalAccess', _545 => _545.cellClassName]),
|
|
27042
|
+
getHideClasses2(_optionalChain([meta, 'optionalAccess', _546 => _546.hideAt]))
|
|
27035
27043
|
),
|
|
27036
27044
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
|
|
27037
27045
|
},
|
|
@@ -27109,7 +27117,7 @@ function DataTableBody({
|
|
|
27109
27117
|
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: [
|
|
27110
27118
|
rows.map((row, index) => {
|
|
27111
27119
|
const item = row.original;
|
|
27112
|
-
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall',
|
|
27120
|
+
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _547 => _547(item)]), () => ( void 0));
|
|
27113
27121
|
const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
|
|
27114
27122
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
27115
27123
|
DataTableRow,
|
|
@@ -27119,7 +27127,7 @@ function DataTableBody({
|
|
|
27119
27127
|
href,
|
|
27120
27128
|
compact,
|
|
27121
27129
|
className: cls,
|
|
27122
|
-
subRow: _optionalChain([renderSubRow, 'optionalCall',
|
|
27130
|
+
subRow: _optionalChain([renderSubRow, 'optionalCall', _548 => _548(item)])
|
|
27123
27131
|
},
|
|
27124
27132
|
row.id
|
|
27125
27133
|
);
|
|
@@ -27174,7 +27182,7 @@ function DataTableInfiniteFooter({
|
|
|
27174
27182
|
if (!sentinel) return;
|
|
27175
27183
|
const observer = new IntersectionObserver(
|
|
27176
27184
|
(entries) => {
|
|
27177
|
-
if (_optionalChain([entries, 'access',
|
|
27185
|
+
if (_optionalChain([entries, 'access', _549 => _549[0], 'optionalAccess', _550 => _550.isIntersecting])) onLoadMoreRef.current();
|
|
27178
27186
|
},
|
|
27179
27187
|
{ rootMargin }
|
|
27180
27188
|
);
|
|
@@ -27222,7 +27230,7 @@ function DataTableRowCount({
|
|
|
27222
27230
|
const table = useDataTableContext();
|
|
27223
27231
|
const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
|
|
27224
27232
|
if (hideWhenEmpty && count === 0) return null;
|
|
27225
|
-
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall',
|
|
27233
|
+
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _551 => _551(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
|
|
27226
27234
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
27227
27235
|
"span",
|
|
27228
27236
|
{
|
|
@@ -27307,7 +27315,7 @@ function FilterListItem({
|
|
|
27307
27315
|
}) {
|
|
27308
27316
|
const handleToggle = () => {
|
|
27309
27317
|
if (disabled) return;
|
|
27310
|
-
_optionalChain([onToggle, 'optionalCall',
|
|
27318
|
+
_optionalChain([onToggle, 'optionalCall', _552 => _552(!selected)]);
|
|
27311
27319
|
};
|
|
27312
27320
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
27313
27321
|
"div",
|
|
@@ -27354,7 +27362,7 @@ function FilterListItem({
|
|
|
27354
27362
|
CheckboxPrimitive4.Root,
|
|
27355
27363
|
{
|
|
27356
27364
|
checked: selected,
|
|
27357
|
-
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall',
|
|
27365
|
+
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _553 => _553(c === true)]),
|
|
27358
27366
|
onClick: (e) => e.stopPropagation(),
|
|
27359
27367
|
disabled,
|
|
27360
27368
|
"aria-label": title,
|
|
@@ -27453,7 +27461,7 @@ function TagSearchInput({
|
|
|
27453
27461
|
if (!showHiddenTags) return;
|
|
27454
27462
|
const handleClick = (e) => {
|
|
27455
27463
|
const target = e.target;
|
|
27456
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
27464
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _554 => _554.current, 'optionalAccess', _555 => _555.contains, 'call', _556 => _556(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _557 => _557.current, 'optionalAccess', _558 => _558.contains, 'call', _559 => _559(target)])) {
|
|
27457
27465
|
setShowHiddenTags(false);
|
|
27458
27466
|
}
|
|
27459
27467
|
};
|
|
@@ -27469,13 +27477,13 @@ function TagSearchInput({
|
|
|
27469
27477
|
e.preventDefault();
|
|
27470
27478
|
onSubmit(searchValue);
|
|
27471
27479
|
}
|
|
27472
|
-
_optionalChain([onKeyDown, 'optionalCall',
|
|
27480
|
+
_optionalChain([onKeyDown, 'optionalCall', _560 => _560(e)]);
|
|
27473
27481
|
};
|
|
27474
27482
|
const handleClearAll = (e) => {
|
|
27475
27483
|
e.stopPropagation();
|
|
27476
27484
|
e.preventDefault();
|
|
27477
|
-
_optionalChain([onClearAll, 'optionalCall',
|
|
27478
|
-
_optionalChain([inputRef, 'access',
|
|
27485
|
+
_optionalChain([onClearAll, 'optionalCall', _561 => _561()]);
|
|
27486
|
+
_optionalChain([inputRef, 'access', _562 => _562.current, 'optionalAccess', _563 => _563.focus, 'call', _564 => _564()]);
|
|
27479
27487
|
};
|
|
27480
27488
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
|
|
27481
27489
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -27492,7 +27500,7 @@ function TagSearchInput({
|
|
|
27492
27500
|
className
|
|
27493
27501
|
),
|
|
27494
27502
|
onClick: () => {
|
|
27495
|
-
if (!disabled) _optionalChain([inputRef, 'access',
|
|
27503
|
+
if (!disabled) _optionalChain([inputRef, 'access', _565 => _565.current, 'optionalAccess', _566 => _566.focus, 'call', _567 => _567()]);
|
|
27496
27504
|
},
|
|
27497
27505
|
children: [
|
|
27498
27506
|
/* @__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" }) }),
|
|
@@ -27564,7 +27572,7 @@ function TagSearchInput({
|
|
|
27564
27572
|
items: hiddenTags,
|
|
27565
27573
|
disabled,
|
|
27566
27574
|
style: {
|
|
27567
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access',
|
|
27575
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _568 => _568.current, 'optionalAccess', _569 => _569.getBoundingClientRect, 'call', _570 => _570(), 'access', _571 => _571.left]), () => ( 0))) : 0
|
|
27568
27576
|
},
|
|
27569
27577
|
onRemove: (value) => {
|
|
27570
27578
|
onTagRemove(value);
|
|
@@ -27665,7 +27673,7 @@ function MarkdownEditor({
|
|
|
27665
27673
|
const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
|
|
27666
27674
|
_react.useEffect.call(void 0, () => {
|
|
27667
27675
|
Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
|
|
27668
|
-
if (_optionalChain([mod, 'access',
|
|
27676
|
+
if (_optionalChain([mod, 'access', _572 => _572.commands, 'optionalAccess', _573 => _573.getExtraCommands])) {
|
|
27669
27677
|
setDefaultExtraCommands(mod.commands.getExtraCommands());
|
|
27670
27678
|
}
|
|
27671
27679
|
});
|
|
@@ -27699,7 +27707,7 @@ function MarkdownEditor({
|
|
|
27699
27707
|
const isImage = file.type.startsWith("image/");
|
|
27700
27708
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
27701
27709
|
insertTextAtCursor(markdown);
|
|
27702
|
-
_optionalChain([onFileUploaded, 'optionalCall',
|
|
27710
|
+
_optionalChain([onFileUploaded, 'optionalCall', _574 => _574(url, file.name)]);
|
|
27703
27711
|
} catch (error) {
|
|
27704
27712
|
console.error("File upload failed:", error);
|
|
27705
27713
|
setUploadProgress("Upload failed. Please try again.");
|
|
@@ -27712,7 +27720,7 @@ function MarkdownEditor({
|
|
|
27712
27720
|
);
|
|
27713
27721
|
const handleFileInputChange = _react.useCallback.call(void 0,
|
|
27714
27722
|
(e) => {
|
|
27715
|
-
const file = _optionalChain([e, 'access',
|
|
27723
|
+
const file = _optionalChain([e, 'access', _575 => _575.target, 'access', _576 => _576.files, 'optionalAccess', _577 => _577[0]]);
|
|
27716
27724
|
if (file) {
|
|
27717
27725
|
handleFileUpload(file);
|
|
27718
27726
|
e.target.value = "";
|
|
@@ -27723,7 +27731,7 @@ function MarkdownEditor({
|
|
|
27723
27731
|
const handlePaste = _react.useCallback.call(void 0,
|
|
27724
27732
|
(e) => {
|
|
27725
27733
|
if (!onUploadFile) return;
|
|
27726
|
-
const items = _optionalChain([e, 'access',
|
|
27734
|
+
const items = _optionalChain([e, 'access', _578 => _578.clipboardData, 'optionalAccess', _579 => _579.items]);
|
|
27727
27735
|
if (!items) return;
|
|
27728
27736
|
for (const item of items) {
|
|
27729
27737
|
if (item.type.startsWith("image/")) {
|
|
@@ -27748,7 +27756,7 @@ function MarkdownEditor({
|
|
|
27748
27756
|
buttonProps: { "aria-label": "Upload file", title: "Upload file" },
|
|
27749
27757
|
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" }),
|
|
27750
27758
|
execute: () => {
|
|
27751
|
-
_optionalChain([fileInputRef, 'access',
|
|
27759
|
+
_optionalChain([fileInputRef, 'access', _580 => _580.current, 'optionalAccess', _581 => _581.click, 'call', _582 => _582()]);
|
|
27752
27760
|
}
|
|
27753
27761
|
} : null;
|
|
27754
27762
|
const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
|
|
@@ -27760,7 +27768,7 @@ function MarkdownEditor({
|
|
|
27760
27768
|
const EDGE_ZONE = 60;
|
|
27761
27769
|
const MAX_SCROLL_SPEED = 15;
|
|
27762
27770
|
const findScrollParent = _react.useCallback.call(void 0, (el) => {
|
|
27763
|
-
let node = _optionalChain([el, 'optionalAccess',
|
|
27771
|
+
let node = _optionalChain([el, 'optionalAccess', _583 => _583.parentElement]);
|
|
27764
27772
|
while (node && node !== document.documentElement) {
|
|
27765
27773
|
const { overflowY } = window.getComputedStyle(node);
|
|
27766
27774
|
if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
|
|
@@ -27903,7 +27911,7 @@ function matchesAccept(file, accept) {
|
|
|
27903
27911
|
});
|
|
27904
27912
|
}
|
|
27905
27913
|
function dragHasFiles(e) {
|
|
27906
|
-
const types = _optionalChain([e, 'access',
|
|
27914
|
+
const types = _optionalChain([e, 'access', _584 => _584.dataTransfer, 'optionalAccess', _585 => _585.types]);
|
|
27907
27915
|
if (!types) return false;
|
|
27908
27916
|
for (let i = 0; i < types.length; i++) {
|
|
27909
27917
|
if (types[i] === "Files") return true;
|
|
@@ -27998,7 +28006,7 @@ function FileUpload({
|
|
|
27998
28006
|
e.stopPropagation();
|
|
27999
28007
|
setDragActive(false);
|
|
28000
28008
|
if (disabled) return;
|
|
28001
|
-
if (_optionalChain([e, 'access',
|
|
28009
|
+
if (_optionalChain([e, 'access', _586 => _586.dataTransfer, 'access', _587 => _587.files, 'optionalAccess', _588 => _588.length])) {
|
|
28002
28010
|
handleFiles(e.dataTransfer.files);
|
|
28003
28011
|
}
|
|
28004
28012
|
};
|
|
@@ -28026,7 +28034,7 @@ function FileUpload({
|
|
|
28026
28034
|
e.preventDefault();
|
|
28027
28035
|
dragCounter = 0;
|
|
28028
28036
|
setDragActive(false);
|
|
28029
|
-
if (_optionalChain([e, 'access',
|
|
28037
|
+
if (_optionalChain([e, 'access', _589 => _589.dataTransfer, 'optionalAccess', _590 => _590.files, 'optionalAccess', _591 => _591.length])) {
|
|
28030
28038
|
handleFilesRef.current(e.dataTransfer.files);
|
|
28031
28039
|
}
|
|
28032
28040
|
};
|
|
@@ -28048,7 +28056,7 @@ function FileUpload({
|
|
|
28048
28056
|
};
|
|
28049
28057
|
}, [acceptWindowDrops, disabled]);
|
|
28050
28058
|
const handleFileSelect = (e) => {
|
|
28051
|
-
if (_optionalChain([e, 'access',
|
|
28059
|
+
if (_optionalChain([e, 'access', _592 => _592.target, 'access', _593 => _593.files, 'optionalAccess', _594 => _594.length])) {
|
|
28052
28060
|
handleFiles(e.target.files);
|
|
28053
28061
|
}
|
|
28054
28062
|
};
|
|
@@ -28065,7 +28073,7 @@ function FileUpload({
|
|
|
28065
28073
|
};
|
|
28066
28074
|
const openDialog = async () => {
|
|
28067
28075
|
if (disabled) return;
|
|
28068
|
-
_optionalChain([fileInputRef, 'access',
|
|
28076
|
+
_optionalChain([fileInputRef, 'access', _595 => _595.current, 'optionalAccess', _596 => _596.click, 'call', _597 => _597()]);
|
|
28069
28077
|
};
|
|
28070
28078
|
const displayError = error || validationError || void 0;
|
|
28071
28079
|
const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
|
|
@@ -28143,7 +28151,7 @@ function FileUpload({
|
|
|
28143
28151
|
"button",
|
|
28144
28152
|
{
|
|
28145
28153
|
type: "button",
|
|
28146
|
-
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall',
|
|
28154
|
+
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _598 => _598(entry.id)]),
|
|
28147
28155
|
className: "shrink-0 p-1 rounded hover:bg-ods-bg transition-colors",
|
|
28148
28156
|
"aria-label": `Remove ${entry.fileName}`,
|
|
28149
28157
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-4 text-ods-text-secondary" })
|
|
@@ -28266,7 +28274,7 @@ function ImageUploader({
|
|
|
28266
28274
|
onChange(file);
|
|
28267
28275
|
};
|
|
28268
28276
|
const handleFileSelect = (e) => {
|
|
28269
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
28277
|
+
validateAndEmit(_optionalChain([e, 'access', _599 => _599.target, 'access', _600 => _600.files, 'optionalAccess', _601 => _601[0]]));
|
|
28270
28278
|
if (inputRef.current) inputRef.current.value = "";
|
|
28271
28279
|
};
|
|
28272
28280
|
const handleDrag = (e) => {
|
|
@@ -28281,11 +28289,11 @@ function ImageUploader({
|
|
|
28281
28289
|
e.stopPropagation();
|
|
28282
28290
|
setDragActive(false);
|
|
28283
28291
|
if (!interactive) return;
|
|
28284
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
28292
|
+
validateAndEmit(_optionalChain([e, 'access', _602 => _602.dataTransfer, 'access', _603 => _603.files, 'optionalAccess', _604 => _604[0]]));
|
|
28285
28293
|
};
|
|
28286
28294
|
const openDialog = () => {
|
|
28287
28295
|
if (!interactive) return;
|
|
28288
|
-
_optionalChain([inputRef, 'access',
|
|
28296
|
+
_optionalChain([inputRef, 'access', _605 => _605.current, 'optionalAccess', _606 => _606.click, 'call', _607 => _607()]);
|
|
28289
28297
|
};
|
|
28290
28298
|
const handleRootKeyDown = (e) => {
|
|
28291
28299
|
if (hasImage || !interactive) return;
|
|
@@ -28475,8 +28483,8 @@ function ColorPresetSelect({
|
|
|
28475
28483
|
}) {
|
|
28476
28484
|
const selectedPreset = presets.find((p) => p.key === presetKey);
|
|
28477
28485
|
const isCustom = !selectedPreset;
|
|
28478
|
-
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
28479
|
-
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
28486
|
+
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _608 => _608.label]), () => ( "Custom"));
|
|
28487
|
+
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _609 => _609.color]), () => ( value));
|
|
28480
28488
|
const groups = [
|
|
28481
28489
|
{
|
|
28482
28490
|
items: [
|
|
@@ -28766,7 +28774,7 @@ function TicketStatusConfigRow({
|
|
|
28766
28774
|
_chunk6JINAOI7cjs.Input,
|
|
28767
28775
|
{
|
|
28768
28776
|
value: name,
|
|
28769
|
-
onChange: (e) => _optionalChain([onNameChange, 'optionalCall',
|
|
28777
|
+
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _610 => _610(e.target.value)]),
|
|
28770
28778
|
disabled: isSystem,
|
|
28771
28779
|
readOnly: isSystem,
|
|
28772
28780
|
"aria-label": "Status name",
|
|
@@ -28849,7 +28857,7 @@ function CompactAssigneeDropdown({
|
|
|
28849
28857
|
return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
|
|
28850
28858
|
}, [filtered, currentAssignee]);
|
|
28851
28859
|
const handleSelect = (userId) => {
|
|
28852
|
-
const next = _optionalChain([currentAssignee, 'optionalAccess',
|
|
28860
|
+
const next = _optionalChain([currentAssignee, 'optionalAccess', _611 => _611.id]) === userId ? null : userId;
|
|
28853
28861
|
onAssign(next);
|
|
28854
28862
|
setIsOpen(false);
|
|
28855
28863
|
};
|
|
@@ -28914,7 +28922,7 @@ function CompactAssigneeDropdown({
|
|
|
28914
28922
|
}
|
|
28915
28923
|
) }),
|
|
28916
28924
|
/* @__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) => {
|
|
28917
|
-
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess',
|
|
28925
|
+
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _612 => _612.id]) === opt.value;
|
|
28918
28926
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
28919
28927
|
"button",
|
|
28920
28928
|
{
|
|
@@ -28983,7 +28991,7 @@ function DefaultAssigneeDropdown({
|
|
|
28983
28991
|
Autocomplete,
|
|
28984
28992
|
{
|
|
28985
28993
|
options,
|
|
28986
|
-
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess',
|
|
28994
|
+
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _613 => _613.id]), () => ( null)),
|
|
28987
28995
|
onChange: (val) => {
|
|
28988
28996
|
onAssign(val);
|
|
28989
28997
|
setIsEditing(false);
|
|
@@ -29372,14 +29380,14 @@ function TicketInfoSection({
|
|
|
29372
29380
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29373
29381
|
_chunk7MNBE7XAcjs.SquareAvatar,
|
|
29374
29382
|
{
|
|
29375
|
-
src: _optionalChain([organization, 'optionalAccess',
|
|
29376
|
-
alt: _optionalChain([organization, 'optionalAccess',
|
|
29377
|
-
fallback: _optionalChain([organization, 'optionalAccess',
|
|
29383
|
+
src: _optionalChain([organization, 'optionalAccess', _614 => _614.imageSrc]),
|
|
29384
|
+
alt: _optionalChain([organization, 'optionalAccess', _615 => _615.name]),
|
|
29385
|
+
fallback: _optionalChain([organization, 'optionalAccess', _616 => _616.name]) || "Org",
|
|
29378
29386
|
size: "md",
|
|
29379
29387
|
className: "shrink-0"
|
|
29380
29388
|
}
|
|
29381
29389
|
),
|
|
29382
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess',
|
|
29390
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _617 => _617.name]) || "Unassigned", label: "Organization" })
|
|
29383
29391
|
] }),
|
|
29384
29392
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29385
29393
|
AssigneeDropdown,
|
|
@@ -29400,10 +29408,10 @@ function TicketInfoSection({
|
|
|
29400
29408
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29401
29409
|
InfoCell2,
|
|
29402
29410
|
{
|
|
29403
|
-
value: _optionalChain([device, 'optionalAccess',
|
|
29411
|
+
value: _optionalChain([device, 'optionalAccess', _618 => _618.name]) || "Unassigned",
|
|
29404
29412
|
label: "Device",
|
|
29405
|
-
icon: _optionalChain([device, 'optionalAccess',
|
|
29406
|
-
onClick: _optionalChain([device, 'optionalAccess',
|
|
29413
|
+
icon: _optionalChain([device, 'optionalAccess', _619 => _619.icon]),
|
|
29414
|
+
onClick: _optionalChain([device, 'optionalAccess', _620 => _620.onClick])
|
|
29407
29415
|
}
|
|
29408
29416
|
),
|
|
29409
29417
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
|
|
@@ -29699,7 +29707,7 @@ function RoadmapCard({
|
|
|
29699
29707
|
const compactHref = _chunk7MNBE7XAcjs.safeHref.call(void 0, _nullishCoalesce(href, () => ( null)));
|
|
29700
29708
|
const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
|
|
29701
29709
|
const hasFigma = !!item.figmaUrl;
|
|
29702
|
-
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access',
|
|
29710
|
+
const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _621 => _621.screenshots, 'optionalAccess', _622 => _622.length]), () => ( 0))) > 0;
|
|
29703
29711
|
const typeLabel = getTaskTypeLabel(item.customItemId);
|
|
29704
29712
|
const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
|
|
29705
29713
|
const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
@@ -29718,7 +29726,7 @@ function RoadmapCard({
|
|
|
29718
29726
|
unoptimized: true,
|
|
29719
29727
|
className: "h-8 w-8 object-contain"
|
|
29720
29728
|
}
|
|
29721
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
29729
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _623 => _623.title, 'optionalAccess', _624 => _624.substring, 'call', _625 => _625(0, 2)]) || "??" })
|
|
29722
29730
|
}
|
|
29723
29731
|
),
|
|
29724
29732
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk7MNBE7XAcjs.COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -29793,7 +29801,7 @@ function RoadmapCard({
|
|
|
29793
29801
|
unoptimized: true,
|
|
29794
29802
|
className: "object-contain p-1"
|
|
29795
29803
|
}
|
|
29796
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access',
|
|
29804
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _626 => _626.title, 'optionalAccess', _627 => _627.substring, 'call', _628 => _628(0, 2)]) || "??" }) }),
|
|
29797
29805
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
|
|
29798
29806
|
/* @__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 }) }),
|
|
29799
29807
|
/* @__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: [
|
|
@@ -30303,7 +30311,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
|
|
|
30303
30311
|
] }) : null,
|
|
30304
30312
|
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
|
|
30305
30313
|
] }),
|
|
30306
|
-
_optionalChain([anchorProps, 'optionalAccess',
|
|
30314
|
+
_optionalChain([anchorProps, 'optionalAccess', _629 => _629.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
|
|
30307
30315
|
] });
|
|
30308
30316
|
if (!anchorProps) {
|
|
30309
30317
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk7MNBE7XAcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
|
|
@@ -30373,7 +30381,7 @@ function getDefaultOptions() {
|
|
|
30373
30381
|
// node_modules/date-fns/startOfWeek.mjs
|
|
30374
30382
|
function startOfWeek(date, options) {
|
|
30375
30383
|
const defaultOptions2 = getDefaultOptions();
|
|
30376
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
30384
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _630 => _630.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _631 => _631.locale, 'optionalAccess', _632 => _632.options, 'optionalAccess', _633 => _633.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _634 => _634.locale, 'optionalAccess', _635 => _635.options, 'optionalAccess', _636 => _636.weekStartsOn]))), () => ( 0));
|
|
30377
30385
|
const _date = toDate(date);
|
|
30378
30386
|
const day = _date.getDay();
|
|
30379
30387
|
const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
|
|
@@ -30548,7 +30556,7 @@ var formatDistance = (token, count, options) => {
|
|
|
30548
30556
|
} else {
|
|
30549
30557
|
result = tokenValue.other.replace("{{count}}", count.toString());
|
|
30550
30558
|
}
|
|
30551
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
30559
|
+
if (_optionalChain([options, 'optionalAccess', _637 => _637.addSuffix])) {
|
|
30552
30560
|
if (options.comparison && options.comparison > 0) {
|
|
30553
30561
|
return "in " + result;
|
|
30554
30562
|
} else {
|
|
@@ -30615,15 +30623,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
|
|
|
30615
30623
|
// node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
|
|
30616
30624
|
function buildLocalizeFn(args) {
|
|
30617
30625
|
return (value, options) => {
|
|
30618
|
-
const context = _optionalChain([options, 'optionalAccess',
|
|
30626
|
+
const context = _optionalChain([options, 'optionalAccess', _638 => _638.context]) ? String(options.context) : "standalone";
|
|
30619
30627
|
let valuesArray;
|
|
30620
30628
|
if (context === "formatting" && args.formattingValues) {
|
|
30621
30629
|
const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
|
|
30622
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
30630
|
+
const width = _optionalChain([options, 'optionalAccess', _639 => _639.width]) ? String(options.width) : defaultWidth;
|
|
30623
30631
|
valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
|
|
30624
30632
|
} else {
|
|
30625
30633
|
const defaultWidth = args.defaultWidth;
|
|
30626
|
-
const width = _optionalChain([options, 'optionalAccess',
|
|
30634
|
+
const width = _optionalChain([options, 'optionalAccess', _640 => _640.width]) ? String(options.width) : args.defaultWidth;
|
|
30627
30635
|
valuesArray = args.values[width] || args.values[defaultWidth];
|
|
30628
30636
|
}
|
|
30629
30637
|
const index = args.argumentCallback ? args.argumentCallback(value) : value;
|
|
@@ -31003,7 +31011,7 @@ function getWeekYear(date, options) {
|
|
|
31003
31011
|
const _date = toDate(date);
|
|
31004
31012
|
const year = _date.getFullYear();
|
|
31005
31013
|
const defaultOptions2 = getDefaultOptions();
|
|
31006
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
31014
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _641 => _641.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _642 => _642.locale, 'optionalAccess', _643 => _643.options, 'optionalAccess', _644 => _644.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _645 => _645.locale, 'optionalAccess', _646 => _646.options, 'optionalAccess', _647 => _647.firstWeekContainsDate]))), () => ( 1));
|
|
31007
31015
|
const firstWeekOfNextYear = constructFrom(date, 0);
|
|
31008
31016
|
firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
|
|
31009
31017
|
firstWeekOfNextYear.setHours(0, 0, 0, 0);
|
|
@@ -31024,7 +31032,7 @@ function getWeekYear(date, options) {
|
|
|
31024
31032
|
// node_modules/date-fns/startOfWeekYear.mjs
|
|
31025
31033
|
function startOfWeekYear(date, options) {
|
|
31026
31034
|
const defaultOptions2 = getDefaultOptions();
|
|
31027
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
31035
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _648 => _648.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _649 => _649.locale, 'optionalAccess', _650 => _650.options, 'optionalAccess', _651 => _651.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _652 => _652.locale, 'optionalAccess', _653 => _653.options, 'optionalAccess', _654 => _654.firstWeekContainsDate]))), () => ( 1));
|
|
31028
31036
|
const year = getWeekYear(date, options);
|
|
31029
31037
|
const firstWeek = constructFrom(date, 0);
|
|
31030
31038
|
firstWeek.setFullYear(year, 0, firstWeekContainsDate);
|
|
@@ -31839,9 +31847,9 @@ var doubleQuoteRegExp = /''/g;
|
|
|
31839
31847
|
var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
|
|
31840
31848
|
function format(date, formatStr, options) {
|
|
31841
31849
|
const defaultOptions2 = getDefaultOptions();
|
|
31842
|
-
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
31843
|
-
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
31844
|
-
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
31850
|
+
const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _655 => _655.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
|
|
31851
|
+
const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _656 => _656.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _657 => _657.locale, 'optionalAccess', _658 => _658.options, 'optionalAccess', _659 => _659.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _660 => _660.locale, 'optionalAccess', _661 => _661.options, 'optionalAccess', _662 => _662.firstWeekContainsDate]))), () => ( 1));
|
|
31852
|
+
const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _663 => _663.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _664 => _664.locale, 'optionalAccess', _665 => _665.options, 'optionalAccess', _666 => _666.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _667 => _667.locale, 'optionalAccess', _668 => _668.options, 'optionalAccess', _669 => _669.weekStartsOn]))), () => ( 0));
|
|
31845
31853
|
const originalDate = toDate(date);
|
|
31846
31854
|
if (!isValid(originalDate)) {
|
|
31847
31855
|
throw new RangeError("Invalid time value");
|
|
@@ -31882,7 +31890,7 @@ function format(date, formatStr, options) {
|
|
|
31882
31890
|
return parts.map((part) => {
|
|
31883
31891
|
if (!part.isToken) return part.value;
|
|
31884
31892
|
const token = part.value;
|
|
31885
|
-
if (!_optionalChain([options, 'optionalAccess',
|
|
31893
|
+
if (!_optionalChain([options, 'optionalAccess', _670 => _670.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _671 => _671.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
|
|
31886
31894
|
warnOrThrowProtectedError(token, formatStr, String(date));
|
|
31887
31895
|
}
|
|
31888
31896
|
const formatter = formatters[token[0]];
|
|
@@ -32060,7 +32068,7 @@ function ProgramCard({
|
|
|
32060
32068
|
const dur = _chunk7MNBE7XAcjs.formatDurationFromRange.call(void 0, w.start_at, w.end_at);
|
|
32061
32069
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
32062
32070
|
}
|
|
32063
|
-
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access',
|
|
32071
|
+
const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _672 => _672.labels, 'optionalAccess', _673 => _673.singular])].filter(
|
|
32064
32072
|
(s) => typeof s === "string" && s.length > 0
|
|
32065
32073
|
);
|
|
32066
32074
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, _chunk7MNBE7XAcjs.COMPACT_CARD_OUTER, className), children: [
|
|
@@ -32217,7 +32225,7 @@ function ProgramCard({
|
|
|
32217
32225
|
|
|
32218
32226
|
|
|
32219
32227
|
function CampaignCardAdmin({ campaign, className, anchorProps }) {
|
|
32220
|
-
const goalsCount = _optionalChain([campaign, 'access',
|
|
32228
|
+
const goalsCount = _optionalChain([campaign, 'access', _674 => _674.goals, 'optionalAccess', _675 => _675.length]) || 0;
|
|
32221
32229
|
const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
32222
32230
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk7MNBE7XAcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
|
|
32223
32231
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk7MNBE7XAcjs.COMPACT_CARD_TEXT_COL, children: [
|
|
@@ -32504,8 +32512,8 @@ function cardMenuGroups(href, discuss, openDetails) {
|
|
|
32504
32512
|
if (href) {
|
|
32505
32513
|
items.push({
|
|
32506
32514
|
id: "open-details",
|
|
32507
|
-
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
32508
|
-
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess',
|
|
32515
|
+
label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _676 => _676.label]), () => ( "Open Details")),
|
|
32516
|
+
icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _677 => _677.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.EyeIcon, { size: 20 }))),
|
|
32509
32517
|
// Main row → open the entity (same tab, soft Link nav).
|
|
32510
32518
|
href,
|
|
32511
32519
|
// Trailing 40px ↗ side-button → open in a new tab.
|
|
@@ -32535,8 +32543,8 @@ function HubspotTicketChatCard({
|
|
|
32535
32543
|
isNewTab,
|
|
32536
32544
|
discuss
|
|
32537
32545
|
}) {
|
|
32538
|
-
const status = typeof _optionalChain([chatRef, 'access',
|
|
32539
|
-
const statusLabel = typeof _optionalChain([chatRef, 'access',
|
|
32546
|
+
const status = typeof _optionalChain([chatRef, 'access', _678 => _678.metadata, 'optionalAccess', _679 => _679.status]) === "string" ? chatRef.metadata.status : void 0;
|
|
32547
|
+
const statusLabel = typeof _optionalChain([chatRef, 'access', _680 => _680.metadata, 'optionalAccess', _681 => _681.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
|
|
32540
32548
|
const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
|
|
32541
32549
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32542
32550
|
MingoInfoCard,
|
|
@@ -32559,7 +32567,7 @@ function SlackChatCard({
|
|
|
32559
32567
|
isNewTab,
|
|
32560
32568
|
discuss
|
|
32561
32569
|
}) {
|
|
32562
|
-
const channelName = typeof _optionalChain([chatRef, 'access',
|
|
32570
|
+
const channelName = typeof _optionalChain([chatRef, 'access', _682 => _682.metadata, 'optionalAccess', _683 => _683.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
|
|
32563
32571
|
const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
|
|
32564
32572
|
const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
|
|
32565
32573
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -32599,7 +32607,7 @@ function GenericFinancialChatCard({
|
|
|
32599
32607
|
isNewTab,
|
|
32600
32608
|
discuss
|
|
32601
32609
|
}) {
|
|
32602
|
-
const subtitle = typeof _optionalChain([chatRef, 'access',
|
|
32610
|
+
const subtitle = typeof _optionalChain([chatRef, 'access', _684 => _684.metadata, 'optionalAccess', _685 => _685.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
|
|
32603
32611
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32604
32612
|
MingoInfoCard,
|
|
32605
32613
|
{
|
|
@@ -32668,12 +32676,12 @@ function ProductReleaseChatCard({
|
|
|
32668
32676
|
discuss
|
|
32669
32677
|
}) {
|
|
32670
32678
|
const releaseProps = buildProps(item);
|
|
32671
|
-
const status = _optionalChain([item, 'optionalAccess',
|
|
32679
|
+
const status = _optionalChain([item, 'optionalAccess', _686 => _686.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
|
|
32672
32680
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32673
32681
|
EntityMingoCard,
|
|
32674
32682
|
{
|
|
32675
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32676
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32683
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _687 => _687.title]), () => ( "")),
|
|
32684
|
+
description: _optionalChain([item, 'optionalAccess', _688 => _688.summary]) || releaseProps.formattedDate || void 0,
|
|
32677
32685
|
cover: releaseProps.coverImage || void 0,
|
|
32678
32686
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Rocket02Icon, { size: 24 }),
|
|
32679
32687
|
status,
|
|
@@ -32690,17 +32698,17 @@ function CampaignChatCard({
|
|
|
32690
32698
|
isNewTab,
|
|
32691
32699
|
discuss
|
|
32692
32700
|
}) {
|
|
32693
|
-
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
32701
|
+
const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _689 => _689.goals])) ? item.goals.length : 0;
|
|
32694
32702
|
const meta = [
|
|
32695
|
-
_optionalChain([item, 'optionalAccess',
|
|
32703
|
+
_optionalChain([item, 'optionalAccess', _690 => _690.start_date]) ? formatDateShort(item.start_date) : null,
|
|
32696
32704
|
goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
|
|
32697
32705
|
"Marketing campaign"
|
|
32698
32706
|
].filter(Boolean).join(" \xB7 ");
|
|
32699
32707
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32700
32708
|
EntityMingoCard,
|
|
32701
32709
|
{
|
|
32702
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32703
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
32710
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _691 => _691.name]), () => ( "")),
|
|
32711
|
+
description: meta || _optionalChain([item, 'optionalAccess', _692 => _692.description]) || void 0,
|
|
32704
32712
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.Megaphone01Icon, { size: 24 }),
|
|
32705
32713
|
chatRef,
|
|
32706
32714
|
isNewTab,
|
|
@@ -32753,14 +32761,14 @@ function BlogChatCard({
|
|
|
32753
32761
|
hasEmbeddedVideo,
|
|
32754
32762
|
discuss
|
|
32755
32763
|
}) {
|
|
32756
|
-
const category = Array.isArray(_optionalChain([item, 'optionalAccess',
|
|
32764
|
+
const category = Array.isArray(_optionalChain([item, 'optionalAccess', _693 => _693.categories])) ? _optionalChain([item, 'access', _694 => _694.categories, 'access', _695 => _695.find, 'call', _696 => _696((c) => c && c.name), 'optionalAccess', _697 => _697.name]) : void 0;
|
|
32757
32765
|
const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
|
|
32758
32766
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32759
32767
|
EntityMingoCard,
|
|
32760
32768
|
{
|
|
32761
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32762
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32763
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32769
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _698 => _698.title]), () => ( "")),
|
|
32770
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _699 => _699.summary]), () => ( void 0)),
|
|
32771
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _700 => _700.featured_image]), ogPlaceholder),
|
|
32764
32772
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.NewspaperIcon, { size: 24 }),
|
|
32765
32773
|
status,
|
|
32766
32774
|
chatRef,
|
|
@@ -32777,13 +32785,13 @@ function CaseStudyChatCard({
|
|
|
32777
32785
|
ogPlaceholder,
|
|
32778
32786
|
discuss
|
|
32779
32787
|
}) {
|
|
32780
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
32788
|
+
const meta = [_optionalChain([item, 'optionalAccess', _701 => _701.msp, 'optionalAccess', _702 => _702.name]), _optionalChain([item, 'optionalAccess', _703 => _703.user, 'optionalAccess', _704 => _704.full_name])].filter(Boolean).join(" \xB7 ");
|
|
32781
32789
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32782
32790
|
EntityMingoCard,
|
|
32783
32791
|
{
|
|
32784
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32785
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32786
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32792
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _705 => _705.title]), () => ( "")),
|
|
32793
|
+
description: _optionalChain([item, 'optionalAccess', _706 => _706.summary]) || meta || void 0,
|
|
32794
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _707 => _707.featured_image]), ogPlaceholder),
|
|
32787
32795
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.TrophyIcon, { size: 24 }),
|
|
32788
32796
|
status: { label: "Case study", variant: "grey" },
|
|
32789
32797
|
chatRef,
|
|
@@ -32800,13 +32808,13 @@ function CustomerInterviewChatCard({
|
|
|
32800
32808
|
ogPlaceholder,
|
|
32801
32809
|
discuss
|
|
32802
32810
|
}) {
|
|
32803
|
-
const meta = [_optionalChain([item, 'optionalAccess',
|
|
32811
|
+
const meta = [_optionalChain([item, 'optionalAccess', _708 => _708.user, 'optionalAccess', _709 => _709.full_name]), _optionalChain([item, 'optionalAccess', _710 => _710.msp, 'optionalAccess', _711 => _711.name])].filter(Boolean).join(" \xB7 ");
|
|
32804
32812
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32805
32813
|
EntityMingoCard,
|
|
32806
32814
|
{
|
|
32807
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32808
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32809
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32815
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _712 => _712.title]), () => ( "")),
|
|
32816
|
+
description: _optionalChain([item, 'optionalAccess', _713 => _713.video_summary]) || meta || void 0,
|
|
32817
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _714 => _714.featured_image]), ogPlaceholder),
|
|
32810
32818
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MicrophoneIcon, { size: 24 }),
|
|
32811
32819
|
status: { label: "Interview", variant: "grey" },
|
|
32812
32820
|
chatRef,
|
|
@@ -32823,13 +32831,13 @@ function InvestorUpdateChatCard({
|
|
|
32823
32831
|
ogPlaceholder,
|
|
32824
32832
|
discuss
|
|
32825
32833
|
}) {
|
|
32826
|
-
const title = _optionalChain([item, 'optionalAccess',
|
|
32834
|
+
const title = _optionalChain([item, 'optionalAccess', _715 => _715.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _716 => _716.update_number]), () => ( "?"))}`;
|
|
32827
32835
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32828
32836
|
EntityMingoCard,
|
|
32829
32837
|
{
|
|
32830
32838
|
title,
|
|
32831
|
-
description: _optionalChain([item, 'optionalAccess',
|
|
32832
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32839
|
+
description: _optionalChain([item, 'optionalAccess', _717 => _717.strategic_update]) || _optionalChain([item, 'optionalAccess', _718 => _718.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _719 => _719.period_start]), _optionalChain([item, 'optionalAccess', _720 => _720.period_end])) || void 0,
|
|
32840
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _721 => _721.featured_image]), ogPlaceholder),
|
|
32833
32841
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.PresentationLineIcon, { size: 24 }),
|
|
32834
32842
|
status: { label: "Investor update", variant: "grey" },
|
|
32835
32843
|
chatRef,
|
|
@@ -32846,12 +32854,12 @@ function OnboardingGuideChatCard({
|
|
|
32846
32854
|
ogPlaceholder,
|
|
32847
32855
|
discuss
|
|
32848
32856
|
}) {
|
|
32849
|
-
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess',
|
|
32857
|
+
const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _722 => _722.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _723 => _723.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _724 => _724.og_image_url]), ogPlaceholder)));
|
|
32850
32858
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32851
32859
|
EntityMingoCard,
|
|
32852
32860
|
{
|
|
32853
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32854
|
-
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32861
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _725 => _725.title]), () => ( "")),
|
|
32862
|
+
description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _726 => _726.summary]), () => ( _optionalChain([item, 'optionalAccess', _727 => _727.description]))), () => ( void 0)),
|
|
32855
32863
|
cover,
|
|
32856
32864
|
fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CompassIcon, { size: 24 }),
|
|
32857
32865
|
status: { label: "Guide", variant: "grey" },
|
|
@@ -32872,25 +32880,25 @@ function ProgramChatCard({
|
|
|
32872
32880
|
discuss
|
|
32873
32881
|
}) {
|
|
32874
32882
|
const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MicrophoneIcon, { size: 24 });
|
|
32875
|
-
const isScheduled = _optionalChain([item, 'optionalAccess',
|
|
32883
|
+
const isScheduled = _optionalChain([item, 'optionalAccess', _728 => _728.status]) === "scheduled";
|
|
32876
32884
|
let typeMeta;
|
|
32877
|
-
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess',
|
|
32885
|
+
if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _729 => _729.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
|
|
32878
32886
|
typeMeta = _chunk7MNBE7XAcjs.formatDurationCompact.call(void 0, item.duration_seconds);
|
|
32879
|
-
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess',
|
|
32887
|
+
} else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _730 => _730.location_name]) === "string" && item.location_name.trim().length > 0) {
|
|
32880
32888
|
typeMeta = item.location_name;
|
|
32881
|
-
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess',
|
|
32889
|
+
} else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _731 => _731.start_at])) {
|
|
32882
32890
|
const time = _chunk7MNBE7XAcjs.formatTimeWithTimezone.call(void 0, item.start_at, null);
|
|
32883
32891
|
const dur = _chunk7MNBE7XAcjs.formatDurationFromRange.call(void 0, item.start_at, item.end_at);
|
|
32884
32892
|
typeMeta = dur ? `${time} \xB7 ${dur}` : time;
|
|
32885
32893
|
}
|
|
32886
|
-
const itemDate = _chunk7MNBE7XAcjs.formatDateUTC.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32894
|
+
const itemDate = _chunk7MNBE7XAcjs.formatDateUTC.call(void 0, _nullishCoalesce(_optionalChain([item, 'optionalAccess', _732 => _732.date]), () => ( null)), { fallback: "", timezone: "local" });
|
|
32887
32895
|
const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
|
|
32888
32896
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32889
32897
|
EntityMingoCard,
|
|
32890
32898
|
{
|
|
32891
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32892
|
-
description: meta || _optionalChain([item, 'optionalAccess',
|
|
32893
|
-
cover: entityCover(_optionalChain([item, 'optionalAccess',
|
|
32899
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _733 => _733.title]), () => ( "")),
|
|
32900
|
+
description: meta || _optionalChain([item, 'optionalAccess', _734 => _734.description]) || void 0,
|
|
32901
|
+
cover: entityCover(_optionalChain([item, 'optionalAccess', _735 => _735.cover_url]), ogPlaceholder),
|
|
32894
32902
|
fallbackIcon: icon,
|
|
32895
32903
|
status: { label, variant: "grey" },
|
|
32896
32904
|
chatRef,
|
|
@@ -32907,10 +32915,10 @@ function RoadmapChatCard({
|
|
|
32907
32915
|
cardType,
|
|
32908
32916
|
discuss
|
|
32909
32917
|
}) {
|
|
32910
|
-
const logoUrl = typeof _optionalChain([item, 'optionalAccess',
|
|
32911
|
-
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess',
|
|
32918
|
+
const logoUrl = typeof _optionalChain([item, 'optionalAccess', _736 => _736.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
|
|
32919
|
+
const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _737 => _737.customItemId]) != null;
|
|
32912
32920
|
const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC6ASEPZLcjs.MapIcon, { size: 24 });
|
|
32913
|
-
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess',
|
|
32921
|
+
const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _738 => _738.customItemId]), className: "size-6" }) : logoUrl ? (
|
|
32914
32922
|
// Contained (not full-bleed) so the integration logo keeps its aspect
|
|
32915
32923
|
// ratio inside the bordered icon box — matches RoadmapCard.
|
|
32916
32924
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
|
|
@@ -32918,10 +32926,10 @@ function RoadmapChatCard({
|
|
|
32918
32926
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32919
32927
|
EntityMingoCard,
|
|
32920
32928
|
{
|
|
32921
|
-
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32922
|
-
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess',
|
|
32929
|
+
title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _739 => _739.title]), () => ( "")),
|
|
32930
|
+
description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _740 => _740.description]), () => ( void 0)),
|
|
32923
32931
|
fallbackIcon: icon,
|
|
32924
|
-
status: statusPill(_optionalChain([item, 'optionalAccess',
|
|
32932
|
+
status: statusPill(_optionalChain([item, 'optionalAccess', _741 => _741.status])),
|
|
32925
32933
|
chatRef,
|
|
32926
32934
|
isNewTab,
|
|
32927
32935
|
discuss,
|
|
@@ -33007,7 +33015,7 @@ function programRegistryEntries() {
|
|
|
33007
33015
|
discuss: opts.discuss,
|
|
33008
33016
|
configKey: cfg.configKey,
|
|
33009
33017
|
label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
|
|
33010
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33018
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _742 => _742.extras, 'optionalAccess', _743 => _743.buildOgPlaceholderUrl, 'optionalCall', _744 => _744(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _745 => _745.title]), () => ( "")))]), () => ( null))
|
|
33011
33019
|
}
|
|
33012
33020
|
)
|
|
33013
33021
|
};
|
|
@@ -33153,8 +33161,8 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33153
33161
|
chatRef,
|
|
33154
33162
|
isNewTab: opts.isNewTab,
|
|
33155
33163
|
discuss: opts.discuss,
|
|
33156
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33157
|
-
hasEmbeddedVideo: _optionalChain([chatRef, 'access',
|
|
33164
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _746 => _746.extras, 'optionalAccess', _747 => _747.buildOgPlaceholderUrl, 'optionalCall', _748 => _748(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _749 => _749.title]), () => ( "")))]), () => ( null)),
|
|
33165
|
+
hasEmbeddedVideo: _optionalChain([chatRef, 'access', _750 => _750.metadata, 'optionalAccess', _751 => _751.hasEmbeddedVideo]) === true
|
|
33158
33166
|
}
|
|
33159
33167
|
)
|
|
33160
33168
|
},
|
|
@@ -33171,7 +33179,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33171
33179
|
chatRef,
|
|
33172
33180
|
isNewTab: opts.isNewTab,
|
|
33173
33181
|
discuss: opts.discuss,
|
|
33174
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33182
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _752 => _752.extras, 'optionalAccess', _753 => _753.buildOgPlaceholderUrl, 'optionalCall', _754 => _754(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _755 => _755.title]), () => ( "")))]), () => ( null))
|
|
33175
33183
|
}
|
|
33176
33184
|
)
|
|
33177
33185
|
},
|
|
@@ -33188,7 +33196,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33188
33196
|
chatRef,
|
|
33189
33197
|
isNewTab: opts.isNewTab,
|
|
33190
33198
|
discuss: opts.discuss,
|
|
33191
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33199
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _756 => _756.extras, 'optionalAccess', _757 => _757.buildOgPlaceholderUrl, 'optionalCall', _758 => _758(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _759 => _759.title]), () => ( "")))]), () => ( null))
|
|
33192
33200
|
}
|
|
33193
33201
|
)
|
|
33194
33202
|
},
|
|
@@ -33199,7 +33207,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33199
33207
|
bareInline: true,
|
|
33200
33208
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
|
|
33201
33209
|
render: (item, chatRef, opts) => {
|
|
33202
|
-
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33210
|
+
const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _760 => _760.extras, 'optionalAccess', _761 => _761.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
|
|
33203
33211
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33204
33212
|
ProductReleaseChatCard,
|
|
33205
33213
|
{
|
|
@@ -33226,7 +33234,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33226
33234
|
chatRef,
|
|
33227
33235
|
isNewTab: opts.isNewTab,
|
|
33228
33236
|
discuss: opts.discuss,
|
|
33229
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33237
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _762 => _762.extras, 'optionalAccess', _763 => _763.buildOgPlaceholderUrl, 'optionalCall', _764 => _764(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _765 => _765.title]), () => ( "")))]), () => ( null))
|
|
33230
33238
|
}
|
|
33231
33239
|
)
|
|
33232
33240
|
},
|
|
@@ -33245,7 +33253,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33245
33253
|
chatRef,
|
|
33246
33254
|
isNewTab: opts.isNewTab,
|
|
33247
33255
|
discuss: opts.discuss,
|
|
33248
|
-
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess',
|
|
33256
|
+
ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _766 => _766.extras, 'optionalAccess', _767 => _767.buildOgPlaceholderUrl, 'optionalCall', _768 => _768(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _769 => _769.title]), () => ( "")))]), () => ( null))
|
|
33249
33257
|
}
|
|
33250
33258
|
)
|
|
33251
33259
|
},
|
|
@@ -33257,7 +33265,7 @@ var CHAT_CARD_REGISTRY = {
|
|
|
33257
33265
|
skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
|
|
33258
33266
|
// No public viewer — synthesize the hub-internal admin URL post-fetch
|
|
33259
33267
|
// so the wrapper + isNewTab computation see the actual destination.
|
|
33260
|
-
fallbackHref: (item) => _optionalChain([item, 'optionalAccess',
|
|
33268
|
+
fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _770 => _770.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
|
|
33261
33269
|
render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33262
33270
|
CampaignChatCard,
|
|
33263
33271
|
{
|
|
@@ -33283,12 +33291,12 @@ function ChatCardNavWrap({
|
|
|
33283
33291
|
const onClickCapture = (e) => {
|
|
33284
33292
|
if (!href) return;
|
|
33285
33293
|
const targetEl = e.target;
|
|
33286
|
-
if (_optionalChain([targetEl, 'optionalAccess',
|
|
33287
|
-
if (!_optionalChain([targetEl, 'optionalAccess',
|
|
33294
|
+
if (_optionalChain([targetEl, 'optionalAccess', _771 => _771.closest, 'optionalCall', _772 => _772("button")])) return;
|
|
33295
|
+
if (!_optionalChain([targetEl, 'optionalAccess', _773 => _773.closest, 'optionalCall', _774 => _774("a")])) return;
|
|
33288
33296
|
const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
|
|
33289
33297
|
if (!handled) return;
|
|
33290
33298
|
e.stopPropagation();
|
|
33291
|
-
if (!isNewTab && _optionalChain([panel, 'optionalAccess',
|
|
33299
|
+
if (!isNewTab && _optionalChain([panel, 'optionalAccess', _775 => _775.closeChat])) panel.closeChat();
|
|
33292
33300
|
};
|
|
33293
33301
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
|
|
33294
33302
|
}
|
|
@@ -33310,7 +33318,7 @@ function ChatCardLoader({
|
|
|
33310
33318
|
title: chatRef.title,
|
|
33311
33319
|
externalUrl: chatRef.url,
|
|
33312
33320
|
targetPlatform: chatRef.targetPlatform,
|
|
33313
|
-
path: typeof _optionalChain([chatRef, 'access',
|
|
33321
|
+
path: typeof _optionalChain([chatRef, 'access', _776 => _776.metadata, 'optionalAccess', _777 => _777.path]) === "string" ? chatRef.metadata.path : null
|
|
33314
33322
|
},
|
|
33315
33323
|
_chunk7MNBE7XAcjs.sourceRowCtxFromRuntime.call(void 0, runtime, { baseRoute, chipBasePlatform })
|
|
33316
33324
|
);
|
|
@@ -33324,7 +33332,7 @@ function ChatCardLoader({
|
|
|
33324
33332
|
const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
|
|
33325
33333
|
const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
|
|
33326
33334
|
const { item, isLoading } = useChatCardItem(
|
|
33327
|
-
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess',
|
|
33335
|
+
_nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _778 => _778.contentRefType]), () => ( "")),
|
|
33328
33336
|
fetchEntry ? resolvedChatRef.id : ""
|
|
33329
33337
|
);
|
|
33330
33338
|
if (!entry) return null;
|
|
@@ -33355,7 +33363,7 @@ function ChatCardLoader({
|
|
|
33355
33363
|
isNewTab,
|
|
33356
33364
|
discuss
|
|
33357
33365
|
};
|
|
33358
|
-
const path = typeof _optionalChain([finalChatRef, 'access',
|
|
33366
|
+
const path = typeof _optionalChain([finalChatRef, 'access', _779 => _779.metadata, 'optionalAccess', _780 => _780.path]) === "string" ? finalChatRef.metadata.path : null;
|
|
33359
33367
|
const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33360
33368
|
ChatCardNavWrap,
|
|
33361
33369
|
{
|
|
@@ -33881,7 +33889,7 @@ function useJetStreamDialogSubscription({
|
|
|
33881
33889
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
33882
33890
|
conn: sharedConn,
|
|
33883
33891
|
wsUrl,
|
|
33884
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
33892
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _781 => _781.current, 'optionalCall', _782 => _782()]),
|
|
33885
33893
|
backoff: reconnectionBackoffRef.current,
|
|
33886
33894
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
33887
33895
|
// JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
|
|
@@ -33896,7 +33904,7 @@ function useJetStreamDialogSubscription({
|
|
|
33896
33904
|
setReconnectionCount((c) => c + 1);
|
|
33897
33905
|
}
|
|
33898
33906
|
hadConnectionBeforeRef.current = true;
|
|
33899
|
-
_optionalChain([onConnectRef, 'access',
|
|
33907
|
+
_optionalChain([onConnectRef, 'access', _783 => _783.current, 'optionalCall', _784 => _784()]);
|
|
33900
33908
|
}
|
|
33901
33909
|
if (status === "error") {
|
|
33902
33910
|
console.warn("[JetStream] NATS protocol error:", evt.data);
|
|
@@ -33906,7 +33914,7 @@ function useJetStreamDialogSubscription({
|
|
|
33906
33914
|
setIsConnected(false);
|
|
33907
33915
|
setIsSubscribed(false);
|
|
33908
33916
|
tearDownSubscription();
|
|
33909
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
33917
|
+
_optionalChain([onDisconnectRef, 'access', _785 => _785.current, 'optionalCall', _786 => _786()]);
|
|
33910
33918
|
}
|
|
33911
33919
|
}
|
|
33912
33920
|
});
|
|
@@ -33985,7 +33993,7 @@ function useJetStreamDialogSubscription({
|
|
|
33985
33993
|
}
|
|
33986
33994
|
subscriptionRef.current = handle;
|
|
33987
33995
|
setIsSubscribed(true);
|
|
33988
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
33996
|
+
_optionalChain([onSubscribedRef, 'access', _787 => _787.current, 'optionalCall', _788 => _788()]);
|
|
33989
33997
|
} catch (e27) {
|
|
33990
33998
|
if (!cancelled) {
|
|
33991
33999
|
setIsSubscribed(false);
|
|
@@ -34098,20 +34106,20 @@ function useNatsDialogSubscription({
|
|
|
34098
34106
|
const tearDownSubscriptions = () => {
|
|
34099
34107
|
subscriptionRefs.current.forEach((sub) => {
|
|
34100
34108
|
try {
|
|
34101
|
-
_optionalChain([sub, 'optionalAccess',
|
|
34109
|
+
_optionalChain([sub, 'optionalAccess', _789 => _789.unsubscribe, 'call', _790 => _790()]);
|
|
34102
34110
|
} catch (e29) {
|
|
34103
34111
|
}
|
|
34104
34112
|
});
|
|
34105
34113
|
subscriptionRefs.current.clear();
|
|
34106
34114
|
lastSubscribedDialogIdRef.current = null;
|
|
34107
|
-
_optionalChain([abortControllerRef, 'access',
|
|
34115
|
+
_optionalChain([abortControllerRef, 'access', _791 => _791.current, 'optionalAccess', _792 => _792.abort, 'call', _793 => _793()]);
|
|
34108
34116
|
abortControllerRef.current = null;
|
|
34109
34117
|
};
|
|
34110
34118
|
const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
|
|
34111
34119
|
const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
|
|
34112
34120
|
conn: sharedConn,
|
|
34113
34121
|
wsUrl,
|
|
34114
|
-
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access',
|
|
34122
|
+
onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _794 => _794.current, 'optionalCall', _795 => _795()]),
|
|
34115
34123
|
backoff: reconnectionBackoffRef.current,
|
|
34116
34124
|
getFreshUrl: () => getNatsWsUrlRef.current(),
|
|
34117
34125
|
shouldRetryOn: isDisconnectStatus,
|
|
@@ -34122,7 +34130,7 @@ function useNatsDialogSubscription({
|
|
|
34122
34130
|
setReconnectionCount((c) => c + 1);
|
|
34123
34131
|
}
|
|
34124
34132
|
hadConnectionBeforeRef.current = true;
|
|
34125
|
-
_optionalChain([onConnectRef, 'access',
|
|
34133
|
+
_optionalChain([onConnectRef, 'access', _796 => _796.current, 'optionalCall', _797 => _797()]);
|
|
34126
34134
|
}
|
|
34127
34135
|
if (status === "error") {
|
|
34128
34136
|
console.warn("[NATS] protocol error:", evt.data);
|
|
@@ -34132,7 +34140,7 @@ function useNatsDialogSubscription({
|
|
|
34132
34140
|
setIsConnected(false);
|
|
34133
34141
|
setIsSubscribed(false);
|
|
34134
34142
|
tearDownSubscriptions();
|
|
34135
|
-
_optionalChain([onDisconnectRef, 'access',
|
|
34143
|
+
_optionalChain([onDisconnectRef, 'access', _798 => _798.current, 'optionalCall', _799 => _799()]);
|
|
34136
34144
|
}
|
|
34137
34145
|
}
|
|
34138
34146
|
});
|
|
@@ -34163,13 +34171,13 @@ function useNatsDialogSubscription({
|
|
|
34163
34171
|
setIsSubscribed(false);
|
|
34164
34172
|
subscriptionRefs.current.forEach((sub) => {
|
|
34165
34173
|
try {
|
|
34166
|
-
_optionalChain([sub, 'optionalAccess',
|
|
34174
|
+
_optionalChain([sub, 'optionalAccess', _800 => _800.unsubscribe, 'call', _801 => _801()]);
|
|
34167
34175
|
} catch (e30) {
|
|
34168
34176
|
}
|
|
34169
34177
|
});
|
|
34170
34178
|
subscriptionRefs.current.clear();
|
|
34171
34179
|
lastSubscribedDialogIdRef.current = null;
|
|
34172
|
-
_optionalChain([abortControllerRef, 'access',
|
|
34180
|
+
_optionalChain([abortControllerRef, 'access', _802 => _802.current, 'optionalAccess', _803 => _803.abort, 'call', _804 => _804()]);
|
|
34173
34181
|
abortControllerRef.current = null;
|
|
34174
34182
|
}
|
|
34175
34183
|
return;
|
|
@@ -34181,12 +34189,12 @@ function useNatsDialogSubscription({
|
|
|
34181
34189
|
if (subscriptionRefs.current.size > 0) {
|
|
34182
34190
|
subscriptionRefs.current.forEach((sub) => {
|
|
34183
34191
|
try {
|
|
34184
|
-
_optionalChain([sub, 'optionalAccess',
|
|
34192
|
+
_optionalChain([sub, 'optionalAccess', _805 => _805.unsubscribe, 'call', _806 => _806()]);
|
|
34185
34193
|
} catch (e31) {
|
|
34186
34194
|
}
|
|
34187
34195
|
});
|
|
34188
34196
|
subscriptionRefs.current.clear();
|
|
34189
|
-
_optionalChain([abortControllerRef, 'access',
|
|
34197
|
+
_optionalChain([abortControllerRef, 'access', _807 => _807.current, 'optionalAccess', _808 => _808.abort, 'call', _809 => _809()]);
|
|
34190
34198
|
}
|
|
34191
34199
|
abortControllerRef.current = new AbortController();
|
|
34192
34200
|
const abort = abortControllerRef.current;
|
|
@@ -34218,7 +34226,7 @@ function useNatsDialogSubscription({
|
|
|
34218
34226
|
});
|
|
34219
34227
|
lastSubscribedDialogIdRef.current = dialogId;
|
|
34220
34228
|
setIsSubscribed(true);
|
|
34221
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
34229
|
+
_optionalChain([onSubscribedRef, 'access', _810 => _810.current, 'optionalCall', _811 => _811()]);
|
|
34222
34230
|
};
|
|
34223
34231
|
if (isConnectedRef.current) {
|
|
34224
34232
|
createSubscriptions();
|
|
@@ -34228,7 +34236,7 @@ function useNatsDialogSubscription({
|
|
|
34228
34236
|
abort.abort();
|
|
34229
34237
|
subscriptionRefs.current.forEach((sub) => {
|
|
34230
34238
|
try {
|
|
34231
|
-
_optionalChain([sub, 'optionalAccess',
|
|
34239
|
+
_optionalChain([sub, 'optionalAccess', _812 => _812.unsubscribe, 'call', _813 => _813()]);
|
|
34232
34240
|
} catch (e33) {
|
|
34233
34241
|
}
|
|
34234
34242
|
});
|
|
@@ -34269,7 +34277,7 @@ function useNatsDialogSubscription({
|
|
|
34269
34277
|
});
|
|
34270
34278
|
lastSubscribedDialogIdRef.current = dialogId2;
|
|
34271
34279
|
setIsSubscribed(true);
|
|
34272
|
-
_optionalChain([onSubscribedRef, 'access',
|
|
34280
|
+
_optionalChain([onSubscribedRef, 'access', _814 => _814.current, 'optionalCall', _815 => _815()]);
|
|
34273
34281
|
} else if (subscriptionRefs.current.size > 0) {
|
|
34274
34282
|
setIsSubscribed(true);
|
|
34275
34283
|
}
|
|
@@ -34277,10 +34285,10 @@ function useNatsDialogSubscription({
|
|
|
34277
34285
|
return { isConnected, isSubscribed, reconnectionCount };
|
|
34278
34286
|
}
|
|
34279
34287
|
function buildNatsWsUrl(apiBaseUrl, options) {
|
|
34280
|
-
const path = _optionalChain([options, 'optionalAccess',
|
|
34288
|
+
const path = _optionalChain([options, 'optionalAccess', _816 => _816.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
|
|
34281
34289
|
const u = new URL(path, apiBaseUrl);
|
|
34282
34290
|
u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
|
|
34283
|
-
if (_optionalChain([options, 'optionalAccess',
|
|
34291
|
+
if (_optionalChain([options, 'optionalAccess', _817 => _817.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _818 => _818.token])) {
|
|
34284
34292
|
u.searchParams.set("authorization", options.token);
|
|
34285
34293
|
}
|
|
34286
34294
|
return u.toString();
|
|
@@ -34598,8 +34606,8 @@ var MessageSegmentAccumulator = class {
|
|
|
34598
34606
|
type: "tool_execution",
|
|
34599
34607
|
data: {
|
|
34600
34608
|
...toolData,
|
|
34601
|
-
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess',
|
|
34602
|
-
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess',
|
|
34609
|
+
toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _819 => _819.data, 'access', _820 => _820.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _821 => _821.toolTitle]))),
|
|
34610
|
+
parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _822 => _822.parameters])
|
|
34603
34611
|
}
|
|
34604
34612
|
};
|
|
34605
34613
|
if (existingIndex !== -1) {
|
|
@@ -34623,8 +34631,8 @@ var MessageSegmentAccumulator = class {
|
|
|
34623
34631
|
if (seg.type !== "approval_batch") return seg;
|
|
34624
34632
|
const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
|
|
34625
34633
|
if (!hasCall) return seg;
|
|
34626
|
-
const prev = _optionalChain([seg, 'access',
|
|
34627
|
-
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess',
|
|
34634
|
+
const prev = _optionalChain([seg, 'access', _823 => _823.data, 'access', _824 => _824.executions, 'optionalAccess', _825 => _825[execId]]);
|
|
34635
|
+
const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _826 => _826.result]), success: _optionalChain([prev, 'optionalAccess', _827 => _827.success]) };
|
|
34628
34636
|
matched = true;
|
|
34629
34637
|
return {
|
|
34630
34638
|
...seg,
|
|
@@ -34744,10 +34752,10 @@ var MessageSegmentAccumulator = class {
|
|
|
34744
34752
|
const segment = {
|
|
34745
34753
|
type: "approval_request",
|
|
34746
34754
|
data: {
|
|
34747
|
-
command: _optionalChain([pendingApproval, 'optionalAccess',
|
|
34748
|
-
explanation: _optionalChain([pendingApproval, 'optionalAccess',
|
|
34755
|
+
command: _optionalChain([pendingApproval, 'optionalAccess', _828 => _828.command]) || "",
|
|
34756
|
+
explanation: _optionalChain([pendingApproval, 'optionalAccess', _829 => _829.explanation]),
|
|
34749
34757
|
requestId,
|
|
34750
|
-
approvalType: _optionalChain([pendingApproval, 'optionalAccess',
|
|
34758
|
+
approvalType: _optionalChain([pendingApproval, 'optionalAccess', _830 => _830.approvalType]) || approvalType
|
|
34751
34759
|
},
|
|
34752
34760
|
status,
|
|
34753
34761
|
onApprove: this.callbacks.onApprove,
|
|
@@ -34937,7 +34945,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34937
34945
|
if (initialState.escalatedApprovals) {
|
|
34938
34946
|
pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
|
|
34939
34947
|
initialState.escalatedApprovals.forEach((data, requestId) => {
|
|
34940
|
-
_optionalChain([callbacks, 'access',
|
|
34948
|
+
_optionalChain([callbacks, 'access', _831 => _831.onEscalatedApproval, 'optionalCall', _832 => _832(requestId, data)]);
|
|
34941
34949
|
});
|
|
34942
34950
|
}
|
|
34943
34951
|
hasEverStreamedRef.current = true;
|
|
@@ -34964,7 +34972,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34964
34972
|
if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
|
|
34965
34973
|
if (isInStreamRef.current) {
|
|
34966
34974
|
isInStreamRef.current = false;
|
|
34967
|
-
_optionalChain([callbacks, 'access',
|
|
34975
|
+
_optionalChain([callbacks, 'access', _833 => _833.onStreamEnd, 'optionalCall', _834 => _834()]);
|
|
34968
34976
|
accumulator.resetSegments();
|
|
34969
34977
|
}
|
|
34970
34978
|
return;
|
|
@@ -34973,32 +34981,32 @@ function useRealtimeChunkProcessor(options) {
|
|
|
34973
34981
|
case "message_start":
|
|
34974
34982
|
isInStreamRef.current = true;
|
|
34975
34983
|
hasEverStreamedRef.current = true;
|
|
34976
|
-
_optionalChain([callbacks, 'access',
|
|
34984
|
+
_optionalChain([callbacks, 'access', _835 => _835.onStreamStart, 'optionalCall', _836 => _836()]);
|
|
34977
34985
|
accumulator.resetSegments();
|
|
34978
34986
|
break;
|
|
34979
34987
|
case "message_end":
|
|
34980
34988
|
isInStreamRef.current = false;
|
|
34981
|
-
_optionalChain([callbacks, 'access',
|
|
34989
|
+
_optionalChain([callbacks, 'access', _837 => _837.onStreamEnd, 'optionalCall', _838 => _838()]);
|
|
34982
34990
|
accumulator.resetSegments();
|
|
34983
34991
|
break;
|
|
34984
34992
|
case "metadata":
|
|
34985
|
-
_optionalChain([callbacks, 'access',
|
|
34993
|
+
_optionalChain([callbacks, 'access', _839 => _839.onMetadata, 'optionalCall', _840 => _840(action)]);
|
|
34986
34994
|
break;
|
|
34987
34995
|
case "text": {
|
|
34988
34996
|
const segments = accumulator.appendText(action.text);
|
|
34989
34997
|
if (isInStreamRef.current || !hasEverStreamedRef.current) {
|
|
34990
|
-
_optionalChain([callbacks, 'access',
|
|
34998
|
+
_optionalChain([callbacks, 'access', _841 => _841.onSegmentsUpdate, 'optionalCall', _842 => _842(segments)]);
|
|
34991
34999
|
} else {
|
|
34992
|
-
_optionalChain([callbacks, 'access',
|
|
35000
|
+
_optionalChain([callbacks, 'access', _843 => _843.onSegmentsUpdate, 'optionalCall', _844 => _844([{ type: "text", text: action.text }], { append: true })]);
|
|
34993
35001
|
}
|
|
34994
35002
|
break;
|
|
34995
35003
|
}
|
|
34996
35004
|
case "thinking": {
|
|
34997
35005
|
const segments = accumulator.appendThinking(action.text);
|
|
34998
35006
|
if (isInStreamRef.current || !hasEverStreamedRef.current) {
|
|
34999
|
-
_optionalChain([callbacks, 'access',
|
|
35007
|
+
_optionalChain([callbacks, 'access', _845 => _845.onSegmentsUpdate, 'optionalCall', _846 => _846(segments)]);
|
|
35000
35008
|
} else {
|
|
35001
|
-
_optionalChain([callbacks, 'access',
|
|
35009
|
+
_optionalChain([callbacks, 'access', _847 => _847.onSegmentsUpdate, 'optionalCall', _848 => _848([{ type: "thinking", text: action.text }], { append: true })]);
|
|
35002
35010
|
}
|
|
35003
35011
|
break;
|
|
35004
35012
|
}
|
|
@@ -35008,7 +35016,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35008
35016
|
break;
|
|
35009
35017
|
}
|
|
35010
35018
|
const segments = accumulator.addToolExecution(action.segment);
|
|
35011
|
-
_optionalChain([callbacks, 'access',
|
|
35019
|
+
_optionalChain([callbacks, 'access', _849 => _849.onSegmentsUpdate, 'optionalCall', _850 => _850(segments)]);
|
|
35012
35020
|
break;
|
|
35013
35021
|
}
|
|
35014
35022
|
case "approval_request": {
|
|
@@ -35022,10 +35030,10 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35022
35030
|
approvalType,
|
|
35023
35031
|
status
|
|
35024
35032
|
);
|
|
35025
|
-
_optionalChain([callbacks, 'access',
|
|
35033
|
+
_optionalChain([callbacks, 'access', _851 => _851.onSegmentsUpdate, 'optionalCall', _852 => _852(segments)]);
|
|
35026
35034
|
} else {
|
|
35027
35035
|
pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
|
|
35028
|
-
_optionalChain([callbacks, 'access',
|
|
35036
|
+
_optionalChain([callbacks, 'access', _853 => _853.onEscalatedApproval, 'optionalCall', _854 => _854(requestId, { command, explanation, approvalType })]);
|
|
35029
35037
|
}
|
|
35030
35038
|
break;
|
|
35031
35039
|
}
|
|
@@ -35037,20 +35045,20 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35037
35045
|
const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
|
|
35038
35046
|
pendingEscalatedRef.current.set(requestId, {
|
|
35039
35047
|
command: summary,
|
|
35040
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
35048
|
+
explanation: _optionalChain([required, 'optionalAccess', _855 => _855.toolExplanation]),
|
|
35041
35049
|
approvalType,
|
|
35042
35050
|
toolCalls
|
|
35043
35051
|
});
|
|
35044
|
-
_optionalChain([callbacks, 'access',
|
|
35052
|
+
_optionalChain([callbacks, 'access', _856 => _856.onEscalatedApproval, 'optionalCall', _857 => _857(requestId, {
|
|
35045
35053
|
command: summary,
|
|
35046
|
-
explanation: _optionalChain([required, 'optionalAccess',
|
|
35054
|
+
explanation: _optionalChain([required, 'optionalAccess', _858 => _858.toolExplanation]),
|
|
35047
35055
|
approvalType
|
|
35048
35056
|
})]);
|
|
35049
35057
|
break;
|
|
35050
35058
|
}
|
|
35051
35059
|
if (batchApprovalsEnabled) {
|
|
35052
35060
|
const segments2 = accumulator.addApprovalBatch(requestId, approvalType, toolCalls, status);
|
|
35053
|
-
_optionalChain([callbacks, 'access',
|
|
35061
|
+
_optionalChain([callbacks, 'access', _859 => _859.onSegmentsUpdate, 'optionalCall', _860 => _860(segments2)]);
|
|
35054
35062
|
break;
|
|
35055
35063
|
}
|
|
35056
35064
|
let segments = accumulator.getSegments();
|
|
@@ -35064,7 +35072,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35064
35072
|
status
|
|
35065
35073
|
);
|
|
35066
35074
|
}
|
|
35067
|
-
_optionalChain([callbacks, 'access',
|
|
35075
|
+
_optionalChain([callbacks, 'access', _861 => _861.onSegmentsUpdate, 'optionalCall', _862 => _862(segments)]);
|
|
35068
35076
|
break;
|
|
35069
35077
|
}
|
|
35070
35078
|
case "approval_result": {
|
|
@@ -35073,7 +35081,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35073
35081
|
const status = approved ? "approved" : "rejected";
|
|
35074
35082
|
if (escalatedData) {
|
|
35075
35083
|
pendingEscalatedRef.current.delete(requestId);
|
|
35076
|
-
_optionalChain([callbacks, 'access',
|
|
35084
|
+
_optionalChain([callbacks, 'access', _863 => _863.onEscalatedApprovalResult, 'optionalCall', _864 => _864(requestId, approved, {
|
|
35077
35085
|
command: escalatedData.command,
|
|
35078
35086
|
explanation: escalatedData.explanation,
|
|
35079
35087
|
approvalType: escalatedData.approvalType
|
|
@@ -35086,7 +35094,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35086
35094
|
escalatedData.toolCalls,
|
|
35087
35095
|
status
|
|
35088
35096
|
);
|
|
35089
|
-
_optionalChain([callbacks, 'access',
|
|
35097
|
+
_optionalChain([callbacks, 'access', _865 => _865.onSegmentsUpdate, 'optionalCall', _866 => _866(segments)]);
|
|
35090
35098
|
} else {
|
|
35091
35099
|
let segments = accumulator.getSegments();
|
|
35092
35100
|
for (const call of escalatedData.toolCalls) {
|
|
@@ -35099,7 +35107,7 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35099
35107
|
status
|
|
35100
35108
|
);
|
|
35101
35109
|
}
|
|
35102
|
-
_optionalChain([callbacks, 'access',
|
|
35110
|
+
_optionalChain([callbacks, 'access', _867 => _867.onSegmentsUpdate, 'optionalCall', _868 => _868(segments)]);
|
|
35103
35111
|
}
|
|
35104
35112
|
} else {
|
|
35105
35113
|
const segments = accumulator.addApprovalRequest(
|
|
@@ -35109,37 +35117,37 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35109
35117
|
escalatedData.approvalType,
|
|
35110
35118
|
status
|
|
35111
35119
|
);
|
|
35112
|
-
_optionalChain([callbacks, 'access',
|
|
35120
|
+
_optionalChain([callbacks, 'access', _869 => _869.onSegmentsUpdate, 'optionalCall', _870 => _870(segments)]);
|
|
35113
35121
|
}
|
|
35114
35122
|
} else {
|
|
35115
35123
|
accumulator.updateApprovalStatus(requestId, status);
|
|
35116
35124
|
if (!callbacks.onApprovalResolved) {
|
|
35117
|
-
_optionalChain([callbacks, 'access',
|
|
35125
|
+
_optionalChain([callbacks, 'access', _871 => _871.onSegmentsUpdate, 'optionalCall', _872 => _872(accumulator.getSegments())]);
|
|
35118
35126
|
}
|
|
35119
35127
|
}
|
|
35120
|
-
_optionalChain([callbacks, 'access',
|
|
35128
|
+
_optionalChain([callbacks, 'access', _873 => _873.onApprovalResolved, 'optionalCall', _874 => _874(requestId, status, approvalType)]);
|
|
35121
35129
|
break;
|
|
35122
35130
|
}
|
|
35123
35131
|
case "error": {
|
|
35124
35132
|
let message2;
|
|
35125
|
-
if ("details" in action && _optionalChain([action, 'optionalAccess',
|
|
35133
|
+
if ("details" in action && _optionalChain([action, 'optionalAccess', _875 => _875.details])) {
|
|
35126
35134
|
try {
|
|
35127
|
-
message2 = _optionalChain([JSON, 'access',
|
|
35135
|
+
message2 = _optionalChain([JSON, 'access', _876 => _876.parse, 'call', _877 => _877(action.details), 'optionalAccess', _878 => _878.error, 'optionalAccess', _879 => _879.message]);
|
|
35128
35136
|
} catch (e35) {
|
|
35129
35137
|
message2 = action.details;
|
|
35130
35138
|
}
|
|
35131
35139
|
}
|
|
35132
35140
|
const segments = accumulator.addError(action.error, message2);
|
|
35133
|
-
_optionalChain([callbacks, 'access',
|
|
35134
|
-
_optionalChain([callbacks, 'access',
|
|
35141
|
+
_optionalChain([callbacks, 'access', _880 => _880.onSegmentsUpdate, 'optionalCall', _881 => _881(segments)]);
|
|
35142
|
+
_optionalChain([callbacks, 'access', _882 => _882.onError, 'optionalCall', _883 => _883(action.error, message2)]);
|
|
35135
35143
|
break;
|
|
35136
35144
|
}
|
|
35137
35145
|
case "system": {
|
|
35138
|
-
_optionalChain([callbacks, 'access',
|
|
35146
|
+
_optionalChain([callbacks, 'access', _884 => _884.onSystemMessage, 'optionalCall', _885 => _885(action.text)]);
|
|
35139
35147
|
break;
|
|
35140
35148
|
}
|
|
35141
35149
|
case "direct_message": {
|
|
35142
|
-
_optionalChain([callbacks, 'access',
|
|
35150
|
+
_optionalChain([callbacks, 'access', _886 => _886.onDirectMessage, 'optionalCall', _887 => _887(action.text, {
|
|
35143
35151
|
ownerType: action.ownerType,
|
|
35144
35152
|
displayName: action.displayName,
|
|
35145
35153
|
userId: action.userId
|
|
@@ -35147,29 +35155,29 @@ function useRealtimeChunkProcessor(options) {
|
|
|
35147
35155
|
break;
|
|
35148
35156
|
}
|
|
35149
35157
|
case "message_request":
|
|
35150
|
-
_optionalChain([callbacks, 'access',
|
|
35158
|
+
_optionalChain([callbacks, 'access', _888 => _888.onUserMessage, 'optionalCall', _889 => _889(action.text, {
|
|
35151
35159
|
ownerType: action.ownerType,
|
|
35152
35160
|
displayName: action.displayName,
|
|
35153
35161
|
userId: action.userId
|
|
35154
35162
|
})]);
|
|
35155
35163
|
break;
|
|
35156
35164
|
case "token_usage":
|
|
35157
|
-
_optionalChain([callbacks, 'access',
|
|
35165
|
+
_optionalChain([callbacks, 'access', _890 => _890.onTokenUsage, 'optionalCall', _891 => _891(action.data)]);
|
|
35158
35166
|
break;
|
|
35159
35167
|
case "context_compaction_start": {
|
|
35160
35168
|
const standalone = !isInStreamRef.current;
|
|
35161
35169
|
const segments = accumulator.addContextCompaction();
|
|
35162
|
-
_optionalChain([callbacks, 'access',
|
|
35170
|
+
_optionalChain([callbacks, 'access', _892 => _892.onSegmentsUpdate, 'optionalCall', _893 => _893(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
|
|
35163
35171
|
break;
|
|
35164
35172
|
}
|
|
35165
35173
|
case "context_compaction_end": {
|
|
35166
35174
|
const standalone = !isInStreamRef.current;
|
|
35167
35175
|
const segments = accumulator.completeContextCompaction(action.summary);
|
|
35168
|
-
_optionalChain([callbacks, 'access',
|
|
35176
|
+
_optionalChain([callbacks, 'access', _894 => _894.onSegmentsUpdate, 'optionalCall', _895 => _895(segments, standalone ? { append: true, isCompacting: true } : void 0)]);
|
|
35169
35177
|
break;
|
|
35170
35178
|
}
|
|
35171
35179
|
case "dialog_closed":
|
|
35172
|
-
_optionalChain([callbacks, 'access',
|
|
35180
|
+
_optionalChain([callbacks, 'access', _896 => _896.onDialogClosed, 'optionalCall', _897 => _897()]);
|
|
35173
35181
|
break;
|
|
35174
35182
|
default:
|
|
35175
35183
|
break;
|
|
@@ -35231,7 +35239,7 @@ function useSlashCommands(prefix, commandsUrl) {
|
|
|
35231
35239
|
const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
|
|
35232
35240
|
if (!cancelled) setCommands(next);
|
|
35233
35241
|
} catch (err) {
|
|
35234
|
-
if (!cancelled && _optionalChain([err, 'optionalAccess',
|
|
35242
|
+
if (!cancelled && _optionalChain([err, 'optionalAccess', _898 => _898.name]) !== "AbortError") {
|
|
35235
35243
|
console.warn("[use-slash-commands] fetch failed:", err);
|
|
35236
35244
|
}
|
|
35237
35245
|
} finally {
|
|
@@ -35250,7 +35258,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
|
|
|
35250
35258
|
const query = _reactquery.useQuery.call(void 0, {
|
|
35251
35259
|
queryKey: ["chat-slash-commands", commandsUrl],
|
|
35252
35260
|
queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
|
|
35253
|
-
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
35261
|
+
enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _899 => _899.enabled]), () => ( true)),
|
|
35254
35262
|
staleTime: Infinity,
|
|
35255
35263
|
gcTime: Infinity
|
|
35256
35264
|
});
|
|
@@ -35271,7 +35279,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
|
|
|
35271
35279
|
var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
|
|
35272
35280
|
function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
35273
35281
|
return new Promise((resolve, reject) => {
|
|
35274
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
35282
|
+
if (_optionalChain([signal, 'optionalAccess', _900 => _900.aborted])) {
|
|
35275
35283
|
reject(new Error("Upload cancelled"));
|
|
35276
35284
|
return;
|
|
35277
35285
|
}
|
|
@@ -35285,7 +35293,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
35285
35293
|
xhr.removeEventListener("error", handleError);
|
|
35286
35294
|
xhr.removeEventListener("abort", handleAbort);
|
|
35287
35295
|
xhr.removeEventListener("timeout", handleTimeout);
|
|
35288
|
-
_optionalChain([signal, 'optionalAccess',
|
|
35296
|
+
_optionalChain([signal, 'optionalAccess', _901 => _901.removeEventListener, 'call', _902 => _902("abort", handleSignalAbort)]);
|
|
35289
35297
|
if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
|
|
35290
35298
|
};
|
|
35291
35299
|
const handleProgress = (event) => {
|
|
@@ -35321,7 +35329,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
|
|
|
35321
35329
|
const handleSignalAbort = () => {
|
|
35322
35330
|
xhr.abort();
|
|
35323
35331
|
};
|
|
35324
|
-
_optionalChain([signal, 'optionalAccess',
|
|
35332
|
+
_optionalChain([signal, 'optionalAccess', _903 => _903.addEventListener, 'call', _904 => _904("abort", handleSignalAbort, { once: true })]);
|
|
35325
35333
|
xhr.upload.addEventListener("progress", handleProgress);
|
|
35326
35334
|
xhr.addEventListener("load", handleLoad);
|
|
35327
35335
|
xhr.addEventListener("error", handleError);
|
|
@@ -35365,12 +35373,12 @@ function useChatAttachments() {
|
|
|
35365
35373
|
try {
|
|
35366
35374
|
sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
|
|
35367
35375
|
} catch (err) {
|
|
35368
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35376
|
+
if (_optionalChain([ctrl, 'optionalAccess', _905 => _905.signal, 'access', _906 => _906.aborted])) return;
|
|
35369
35377
|
throw new Error(
|
|
35370
35378
|
`Could not read file content: ${err instanceof Error ? err.message : String(err)}`
|
|
35371
35379
|
);
|
|
35372
35380
|
}
|
|
35373
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35381
|
+
if (_optionalChain([ctrl, 'optionalAccess', _907 => _907.signal, 'access', _908 => _908.aborted])) return;
|
|
35374
35382
|
if (!sniffed) {
|
|
35375
35383
|
throw new Error("Unrecognized file format");
|
|
35376
35384
|
}
|
|
@@ -35384,7 +35392,7 @@ function useChatAttachments() {
|
|
|
35384
35392
|
const urlResp = await embedAuthedFetch(uploadUrlEndpoint, {
|
|
35385
35393
|
method: "POST",
|
|
35386
35394
|
headers: { "Content-Type": "application/json" },
|
|
35387
|
-
signal: _optionalChain([ctrl, 'optionalAccess',
|
|
35395
|
+
signal: _optionalChain([ctrl, 'optionalAccess', _909 => _909.signal]),
|
|
35388
35396
|
body: JSON.stringify({
|
|
35389
35397
|
fileName: att.file.name,
|
|
35390
35398
|
// Pass the SNIFFED MIME (not `file.type`, which can be a
|
|
@@ -35410,9 +35418,9 @@ function useChatAttachments() {
|
|
|
35410
35418
|
(pct) => {
|
|
35411
35419
|
updateOne(att.id, { progress: pct });
|
|
35412
35420
|
},
|
|
35413
|
-
_optionalChain([ctrl, 'optionalAccess',
|
|
35421
|
+
_optionalChain([ctrl, 'optionalAccess', _910 => _910.signal])
|
|
35414
35422
|
);
|
|
35415
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35423
|
+
if (_optionalChain([ctrl, 'optionalAccess', _911 => _911.signal, 'access', _912 => _912.aborted])) return;
|
|
35416
35424
|
updateOne(att.id, {
|
|
35417
35425
|
status: "ready",
|
|
35418
35426
|
progress: 100,
|
|
@@ -35420,7 +35428,7 @@ function useChatAttachments() {
|
|
|
35420
35428
|
viewToken: mintData.viewToken
|
|
35421
35429
|
});
|
|
35422
35430
|
} catch (err) {
|
|
35423
|
-
if (_optionalChain([ctrl, 'optionalAccess',
|
|
35431
|
+
if (_optionalChain([ctrl, 'optionalAccess', _913 => _913.signal, 'access', _914 => _914.aborted])) return;
|
|
35424
35432
|
const message2 = err instanceof Error ? err.message : String(err);
|
|
35425
35433
|
updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
|
|
35426
35434
|
} finally {
|
|
@@ -35571,7 +35579,7 @@ var ANON_DEFAULTS = {
|
|
|
35571
35579
|
function useResolveChatIdentity(enabled) {
|
|
35572
35580
|
const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
|
|
35573
35581
|
const url = runtime.endpoints.identityUrl;
|
|
35574
|
-
const proxyEmail = _nullishCoalesce(_optionalChain([getEmbedProxyAuth, 'call',
|
|
35582
|
+
const proxyEmail = _nullishCoalesce(_optionalChain([getEmbedProxyAuth, 'call', _915 => _915(), 'optionalAccess', _916 => _916.email]), () => ( null));
|
|
35575
35583
|
const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
|
|
35576
35584
|
const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
|
|
35577
35585
|
_react.useEffect.call(void 0, () => {
|
|
@@ -35659,7 +35667,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
|
|
|
35659
35667
|
yield chunk;
|
|
35660
35668
|
}
|
|
35661
35669
|
} catch (err) {
|
|
35662
|
-
if (_optionalChain([err, 'optionalAccess',
|
|
35670
|
+
if (_optionalChain([err, 'optionalAccess', _917 => _917.name]) === "AbortError" || ctrl.signal.aborted) {
|
|
35663
35671
|
return;
|
|
35664
35672
|
}
|
|
35665
35673
|
const errorMessage = err instanceof Error ? err.message : "An error occurred";
|
|
@@ -35710,7 +35718,7 @@ function useChat({
|
|
|
35710
35718
|
const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
|
|
35711
35719
|
onMessagesChangeRef.current = onMessagesChange;
|
|
35712
35720
|
_react.useEffect.call(void 0, () => {
|
|
35713
|
-
_optionalChain([onMessagesChangeRef, 'access',
|
|
35721
|
+
_optionalChain([onMessagesChangeRef, 'access', _918 => _918.current, 'optionalCall', _919 => _919(messages)]);
|
|
35714
35722
|
}, [messages]);
|
|
35715
35723
|
const {
|
|
35716
35724
|
streamMessage,
|
|
@@ -35747,7 +35755,7 @@ function useChat({
|
|
|
35747
35755
|
name: "You",
|
|
35748
35756
|
content: text,
|
|
35749
35757
|
timestamp: /* @__PURE__ */ new Date(),
|
|
35750
|
-
..._optionalChain([options, 'optionalAccess',
|
|
35758
|
+
..._optionalChain([options, 'optionalAccess', _920 => _920.hidden]) ? { hidden: true } : {}
|
|
35751
35759
|
};
|
|
35752
35760
|
addMessage(userMessage);
|
|
35753
35761
|
setIsTyping(true);
|
|
@@ -35809,7 +35817,7 @@ function useChat({
|
|
|
35809
35817
|
currentTextSegment = "";
|
|
35810
35818
|
}
|
|
35811
35819
|
const seg = segment;
|
|
35812
|
-
const proposalId = _optionalChain([seg, 'access',
|
|
35820
|
+
const proposalId = _optionalChain([seg, 'access', _921 => _921.data, 'optionalAccess', _922 => _922.requestId]);
|
|
35813
35821
|
const updateApprovalMessage = (transform) => {
|
|
35814
35822
|
setMessages((prev) => {
|
|
35815
35823
|
for (let i = prev.length - 1; i >= 0; i--) {
|
|
@@ -35818,7 +35826,7 @@ function useChat({
|
|
|
35818
35826
|
if (!Array.isArray(m.content)) continue;
|
|
35819
35827
|
const segments = m.content;
|
|
35820
35828
|
const hasMatch = segments.some(
|
|
35821
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
35829
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _923 => _923.data, 'optionalAccess', _924 => _924.requestId]) === proposalId
|
|
35822
35830
|
);
|
|
35823
35831
|
if (!hasMatch) continue;
|
|
35824
35832
|
const next = [...prev];
|
|
@@ -35860,11 +35868,11 @@ function useChat({
|
|
|
35860
35868
|
if (!Array.isArray(m.content)) continue;
|
|
35861
35869
|
const segments = m.content;
|
|
35862
35870
|
const hasMatch = segments.some(
|
|
35863
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
35871
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _925 => _925.data, 'optionalAccess', _926 => _926.requestId]) === decision.proposalId
|
|
35864
35872
|
);
|
|
35865
35873
|
if (!hasMatch) continue;
|
|
35866
35874
|
const flipped = segments.map(
|
|
35867
|
-
(s) => s.type === "approval_request" && _optionalChain([s, 'access',
|
|
35875
|
+
(s) => s.type === "approval_request" && _optionalChain([s, 'access', _927 => _927.data, 'optionalAccess', _928 => _928.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
|
|
35868
35876
|
);
|
|
35869
35877
|
const next = [...prev];
|
|
35870
35878
|
next[i] = { ...m, content: flipped };
|
|
@@ -36026,8 +36034,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
36026
36034
|
})),
|
|
36027
36035
|
{ role: "user", content: message2 }
|
|
36028
36036
|
];
|
|
36029
|
-
const targetPath = _optionalChain([extra, 'optionalAccess',
|
|
36030
|
-
const requestBody = _optionalChain([extra, 'optionalAccess',
|
|
36037
|
+
const targetPath = _optionalChain([extra, 'optionalAccess', _929 => _929.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
|
|
36038
|
+
const requestBody = _optionalChain([extra, 'optionalAccess', _930 => _930.approvalAction]) ? {
|
|
36031
36039
|
proposal_id: extra.approvalAction.proposalId,
|
|
36032
36040
|
action: extra.approvalAction.action,
|
|
36033
36041
|
messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
|
|
@@ -36036,8 +36044,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
36036
36044
|
}))
|
|
36037
36045
|
} : {
|
|
36038
36046
|
messages: apiMessages,
|
|
36039
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
36040
|
-
..._optionalChain([extra, 'optionalAccess',
|
|
36047
|
+
..._optionalChain([extra, 'optionalAccess', _931 => _931.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
|
|
36048
|
+
..._optionalChain([extra, 'optionalAccess', _932 => _932.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
|
|
36041
36049
|
};
|
|
36042
36050
|
const response = await embedAuthedFetch(targetPath, {
|
|
36043
36051
|
method: "POST",
|
|
@@ -36047,7 +36055,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
36047
36055
|
if (!response.ok) {
|
|
36048
36056
|
throw new Error(`Chat request failed: ${response.status}`);
|
|
36049
36057
|
}
|
|
36050
|
-
const reader = _optionalChain([response, 'access',
|
|
36058
|
+
const reader = _optionalChain([response, 'access', _933 => _933.body, 'optionalAccess', _934 => _934.getReader, 'call', _935 => _935()]);
|
|
36051
36059
|
if (!reader) throw new Error("No response body");
|
|
36052
36060
|
const decoder = new TextDecoder();
|
|
36053
36061
|
let buffer = "";
|
|
@@ -36130,7 +36138,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
36130
36138
|
const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
|
|
36131
36139
|
const result = _nullishCoalesce(meta.result, () => ( null));
|
|
36132
36140
|
const card = _nullishCoalesce(meta.card, () => ( null));
|
|
36133
|
-
if (_optionalChain([card, 'optionalAccess',
|
|
36141
|
+
if (_optionalChain([card, 'optionalAccess', _936 => _936.ref, 'optionalAccess', _937 => _937.id]) && _optionalChain([card, 'optionalAccess', _938 => _938.type])) {
|
|
36134
36142
|
const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
|
|
36135
36143
|
const key = buildChatRefKey(card.type, card.ref.id);
|
|
36136
36144
|
refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
|
|
@@ -36143,8 +36151,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
|
|
|
36143
36151
|
willAutoContinue: meta.willAutoContinue === true,
|
|
36144
36152
|
...toolName ? { toolName } : {},
|
|
36145
36153
|
...result ? { result } : {},
|
|
36146
|
-
..._optionalChain([card, 'optionalAccess',
|
|
36147
|
-
..._optionalChain([card, 'optionalAccess',
|
|
36154
|
+
..._optionalChain([card, 'optionalAccess', _939 => _939.marker]) ? { marker: card.marker } : {},
|
|
36155
|
+
..._optionalChain([card, 'optionalAccess', _940 => _940.ref]) ? { cardRef: card.ref } : {},
|
|
36148
36156
|
...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
|
|
36149
36157
|
proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
|
|
36150
36158
|
};
|
|
@@ -36263,7 +36271,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
|
|
|
36263
36271
|
var chatStorageKey = (source) => {
|
|
36264
36272
|
const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
|
|
36265
36273
|
const auth = getEmbedProxyAuth();
|
|
36266
|
-
if (_optionalChain([auth, 'optionalAccess',
|
|
36274
|
+
if (_optionalChain([auth, 'optionalAccess', _941 => _941.email])) {
|
|
36267
36275
|
return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
|
|
36268
36276
|
}
|
|
36269
36277
|
return base;
|
|
@@ -36318,7 +36326,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36318
36326
|
const { active = true } = runtimeOptions;
|
|
36319
36327
|
const runtime = _chunkMEAR2WHScjs.useRequiredChatRuntime.call(void 0, );
|
|
36320
36328
|
const source = runtime.source || DEFAULT_CHAT_SOURCE;
|
|
36321
|
-
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess',
|
|
36329
|
+
const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _942 => _942.tableIdForDocumentType]), () => ( _chunk7MNBE7XAcjs.defaultTableIdForDocumentType));
|
|
36322
36330
|
const persistedRef = _react.useRef.call(void 0, null);
|
|
36323
36331
|
if (persistedRef.current === null) {
|
|
36324
36332
|
pruneStaleChatStorage(source);
|
|
@@ -36423,7 +36431,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36423
36431
|
const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
|
|
36424
36432
|
sources = sourcesMapRef.current.get(lookupIdx);
|
|
36425
36433
|
chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
|
|
36426
|
-
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access',
|
|
36434
|
+
scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _943 => _943.current, 'access', _944 => _944.get, 'call', _945 => _945(lookupIdx), 'optionalAccess', _946 => _946.scrollAnchor]), () => ( void 0));
|
|
36427
36435
|
}
|
|
36428
36436
|
return {
|
|
36429
36437
|
id: m.id,
|
|
@@ -36471,7 +36479,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36471
36479
|
);
|
|
36472
36480
|
return;
|
|
36473
36481
|
}
|
|
36474
|
-
const refSlug = typeof _optionalChain([reference, 'access',
|
|
36482
|
+
const refSlug = typeof _optionalChain([reference, 'access', _947 => _947.metadata, 'optionalAccess', _948 => _948.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
|
|
36475
36483
|
const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
|
|
36476
36484
|
const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
36477
36485
|
const text = `/${cmdId} display "${escaped}"`;
|
|
@@ -36543,18 +36551,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
|
|
|
36543
36551
|
clearMessages,
|
|
36544
36552
|
streamingPhase,
|
|
36545
36553
|
/** Provider key for the lib's `<ModelDisplay>` icon. */
|
|
36546
|
-
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36547
|
-
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36548
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36554
|
+
currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _949 => _949.provider]), () => ( null)),
|
|
36555
|
+
currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _950 => _950.modelLabel]), () => ( null)),
|
|
36556
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _951 => _951.contextWindowMaxTokens]), () => ( null)),
|
|
36549
36557
|
/** Input tokens (known after server's message_start frame; null until). */
|
|
36550
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36558
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _952 => _952.inputTokens]), () => ( null)),
|
|
36551
36559
|
/** Output tokens (known only after server's trailing usage frame). */
|
|
36552
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36560
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _953 => _953.outputTokens]), () => ( null)),
|
|
36553
36561
|
/** Cache hit % (read / total-input × 100). null during streaming. */
|
|
36554
|
-
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36562
|
+
currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _954 => _954.cacheHitRatePct]), () => ( null)),
|
|
36555
36563
|
/** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
|
|
36556
36564
|
* token counts). null until the trailing usage frame lands. */
|
|
36557
|
-
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess',
|
|
36565
|
+
currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _955 => _955.breakdown]), () => ( null)),
|
|
36558
36566
|
// ─── Dialog management — stubs for v1 ────────────────────────────────
|
|
36559
36567
|
// Guide mode currently keeps its history in `localStorage` opaquely
|
|
36560
36568
|
// under the hood (`runtime.source` namespaced key). Surfacing that
|
|
@@ -36612,15 +36620,15 @@ var noopRejectRequest = async (_id, _reason) => {
|
|
|
36612
36620
|
|
|
36613
36621
|
// src/components/chat/utils/process-historical-messages.ts
|
|
36614
36622
|
function getOwnerDisplayName(owner) {
|
|
36615
|
-
if (_optionalChain([owner, 'optionalAccess',
|
|
36623
|
+
if (_optionalChain([owner, 'optionalAccess', _956 => _956.type]) === OWNER_TYPE.ADMIN && owner.user) {
|
|
36616
36624
|
const { firstName, lastName } = owner.user;
|
|
36617
36625
|
const name = [firstName, lastName].filter(Boolean).join(" ");
|
|
36618
36626
|
if (name) return name;
|
|
36619
36627
|
}
|
|
36620
|
-
return _optionalChain([owner, 'optionalAccess',
|
|
36628
|
+
return _optionalChain([owner, 'optionalAccess', _957 => _957.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
|
|
36621
36629
|
}
|
|
36622
36630
|
function getOwnerAvatar(owner) {
|
|
36623
|
-
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess',
|
|
36631
|
+
return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _958 => _958.user, 'optionalAccess', _959 => _959.image, 'optionalAccess', _960 => _960.imageUrl]), () => ( void 0));
|
|
36624
36632
|
}
|
|
36625
36633
|
function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
|
|
36626
36634
|
messageDataArray.forEach((data) => {
|
|
@@ -36683,10 +36691,10 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
36683
36691
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
36684
36692
|
return;
|
|
36685
36693
|
}
|
|
36686
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
36694
|
+
const isUserMessage = _optionalChain([msg, 'access', _961 => _961.owner, 'optionalAccess', _962 => _962.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _963 => _963.owner, 'optionalAccess', _964 => _964.type]) === OWNER_TYPE.ADMIN;
|
|
36687
36695
|
if (isUserMessage) {
|
|
36688
36696
|
flushAssistantMessage();
|
|
36689
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
36697
|
+
const userAuthorType = _optionalChain([msg, 'access', _965 => _965.owner, 'optionalAccess', _966 => _966.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
36690
36698
|
messageDataArray.forEach((data) => {
|
|
36691
36699
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
36692
36700
|
processedMessages.push({
|
|
@@ -36711,7 +36719,7 @@ function processHistoricalMessages(messages, options = {}) {
|
|
|
36711
36719
|
});
|
|
36712
36720
|
const nextMsg = messages[index + 1];
|
|
36713
36721
|
const isLastMessage = index === messages.length - 1;
|
|
36714
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
36722
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _967 => _967.owner, 'optionalAccess', _968 => _968.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _969 => _969.owner, 'optionalAccess', _970 => _970.type]) === OWNER_TYPE.ADMIN);
|
|
36715
36723
|
if (isLastMessage || nextIsFromUser) {
|
|
36716
36724
|
flushAssistantMessage();
|
|
36717
36725
|
}
|
|
@@ -36821,7 +36829,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36821
36829
|
}
|
|
36822
36830
|
}
|
|
36823
36831
|
} else {
|
|
36824
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36832
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _971 => _971.set, 'call', _972 => _972(data.approvalRequestId, {
|
|
36825
36833
|
command: data.command || "",
|
|
36826
36834
|
explanation: data.explanation,
|
|
36827
36835
|
approvalType,
|
|
@@ -36834,8 +36842,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36834
36842
|
if ("approvalRequestId" in data && data.approvalRequestId) {
|
|
36835
36843
|
const existingStatus = approvalStatuses[data.approvalRequestId];
|
|
36836
36844
|
const status = existingStatus || (data.approved ? "approved" : "rejected");
|
|
36837
|
-
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36838
|
-
if (_optionalChain([escalatedData, 'optionalAccess',
|
|
36845
|
+
const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _973 => _973.get, 'call', _974 => _974(data.approvalRequestId)]);
|
|
36846
|
+
if (_optionalChain([escalatedData, 'optionalAccess', _975 => _975.toolCalls]) && escalatedData.toolCalls.length > 0) {
|
|
36839
36847
|
if (batchApprovalsEnabled) {
|
|
36840
36848
|
accumulator.addApprovalBatch(
|
|
36841
36849
|
data.approvalRequestId,
|
|
@@ -36855,7 +36863,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36855
36863
|
);
|
|
36856
36864
|
}
|
|
36857
36865
|
}
|
|
36858
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36866
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _976 => _976.delete, 'call', _977 => _977(data.approvalRequestId)]);
|
|
36859
36867
|
break;
|
|
36860
36868
|
}
|
|
36861
36869
|
if (escalatedData) {
|
|
@@ -36864,7 +36872,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36864
36872
|
explanation: escalatedData.explanation,
|
|
36865
36873
|
approvalType: escalatedData.approvalType
|
|
36866
36874
|
});
|
|
36867
|
-
_optionalChain([escalatedApprovals, 'optionalAccess',
|
|
36875
|
+
_optionalChain([escalatedApprovals, 'optionalAccess', _978 => _978.delete, 'call', _979 => _979(data.approvalRequestId)]);
|
|
36868
36876
|
}
|
|
36869
36877
|
const before = accumulator.getSegments();
|
|
36870
36878
|
const after = accumulator.updateApprovalStatus(data.approvalRequestId, status);
|
|
@@ -36880,9 +36888,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
|
|
|
36880
36888
|
case MESSAGE_TYPE.ERROR:
|
|
36881
36889
|
if ("error" in data) {
|
|
36882
36890
|
let message2;
|
|
36883
|
-
if ("details" in data && _optionalChain([data, 'optionalAccess',
|
|
36891
|
+
if ("details" in data && _optionalChain([data, 'optionalAccess', _980 => _980.details])) {
|
|
36884
36892
|
try {
|
|
36885
|
-
message2 = _optionalChain([JSON, 'access',
|
|
36893
|
+
message2 = _optionalChain([JSON, 'access', _981 => _981.parse, 'call', _982 => _982(data.details), 'optionalAccess', _983 => _983.error, 'optionalAccess', _984 => _984.message]);
|
|
36886
36894
|
} catch (e42) {
|
|
36887
36895
|
message2 = data.details;
|
|
36888
36896
|
}
|
|
@@ -36965,10 +36973,10 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
36965
36973
|
pushStandaloneMessages(processedMessages, msg, messageDataArray);
|
|
36966
36974
|
return;
|
|
36967
36975
|
}
|
|
36968
|
-
const isUserMessage = _optionalChain([msg, 'access',
|
|
36976
|
+
const isUserMessage = _optionalChain([msg, 'access', _985 => _985.owner, 'optionalAccess', _986 => _986.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _987 => _987.owner, 'optionalAccess', _988 => _988.type]) === OWNER_TYPE.ADMIN;
|
|
36969
36977
|
if (isUserMessage) {
|
|
36970
36978
|
flushAssistantMessage();
|
|
36971
|
-
const userAuthorType = _optionalChain([msg, 'access',
|
|
36979
|
+
const userAuthorType = _optionalChain([msg, 'access', _989 => _989.owner, 'optionalAccess', _990 => _990.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
|
|
36972
36980
|
messageDataArray.forEach((data) => {
|
|
36973
36981
|
if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
|
|
36974
36982
|
processedMessages.push({
|
|
@@ -36993,7 +37001,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
|
|
|
36993
37001
|
});
|
|
36994
37002
|
const nextMsg = messages[index + 1];
|
|
36995
37003
|
const isLastMessage = index === messages.length - 1;
|
|
36996
|
-
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access',
|
|
37004
|
+
const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _991 => _991.owner, 'optionalAccess', _992 => _992.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _993 => _993.owner, 'optionalAccess', _994 => _994.type]) === OWNER_TYPE.ADMIN);
|
|
36997
37005
|
if (isLastMessage || nextIsFromUser) {
|
|
36998
37006
|
flushAssistantMessage();
|
|
36999
37007
|
}
|
|
@@ -37331,7 +37339,7 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
37331
37339
|
}, [active, fetchDialogs, loadDialogsPage]);
|
|
37332
37340
|
const sendMessage = _react.useCallback.call(void 0,
|
|
37333
37341
|
async (text, sendOptions) => {
|
|
37334
|
-
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess',
|
|
37342
|
+
const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _995 => _995.hidden]), () => ( false));
|
|
37335
37343
|
setMessages((prev) => [
|
|
37336
37344
|
...prev,
|
|
37337
37345
|
{
|
|
@@ -37495,11 +37503,11 @@ function useNatsChatAdapter(config, options = {}) {
|
|
|
37495
37503
|
// Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
|
|
37496
37504
|
// contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
|
|
37497
37505
|
// matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
|
|
37498
|
-
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
37499
|
-
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess',
|
|
37500
|
-
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
37501
|
-
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
37502
|
-
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess',
|
|
37506
|
+
currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _996 => _996.provider]), () => ( modelProvider)), () => ( null)),
|
|
37507
|
+
currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _997 => _997.modelLabel]), () => ( modelLabel)), () => ( null)),
|
|
37508
|
+
currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _998 => _998.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _999 => _999.contextWindowMaxTokens]))), () => ( null)),
|
|
37509
|
+
currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1000 => _1000.inputTokensSize]), () => ( null)),
|
|
37510
|
+
currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1001 => _1001.outputTokensSize]), () => ( null)),
|
|
37503
37511
|
currentCacheHitRatePct: null,
|
|
37504
37512
|
currentUsageBreakdown: null,
|
|
37505
37513
|
// Dialog management
|
|
@@ -37747,7 +37755,7 @@ function extractIncompleteMessageState(lastMessage) {
|
|
|
37747
37755
|
break;
|
|
37748
37756
|
case "approval_batch": {
|
|
37749
37757
|
const allDone = !!segment.data.executions && segment.data.toolCalls.every(
|
|
37750
|
-
(c) => _optionalChain([segment, 'access',
|
|
37758
|
+
(c) => _optionalChain([segment, 'access', _1002 => _1002.data, 'access', _1003 => _1003.executions, 'optionalAccess', _1004 => _1004[c.toolExecutionRequestId], 'optionalAccess', _1005 => _1005.status]) === "done"
|
|
37751
37759
|
);
|
|
37752
37760
|
if (segment.status !== "rejected" && !allDone) {
|
|
37753
37761
|
hasIncompleteState = true;
|
|
@@ -37806,20 +37814,20 @@ function mergeHistoryWithRealtime(input) {
|
|
|
37806
37814
|
const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
|
|
37807
37815
|
const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
|
|
37808
37816
|
const trailing = processedHistory[processedHistory.length - 1];
|
|
37809
|
-
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess',
|
|
37810
|
-
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access',
|
|
37817
|
+
const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1006 => _1006.role]) === "assistant" ? trailing : null;
|
|
37818
|
+
const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1007 => _1007.content, 'access', _1008 => _1008.find, 'call', _1009 => _1009((s) => s.type === "approval_batch"), 'optionalAccess', _1010 => _1010.data, 'optionalAccess', _1011 => _1011.approvalRequestId]), () => ( null)) : null;
|
|
37811
37819
|
let processedToUse = processedHistory;
|
|
37812
37820
|
const pinnedSyntheticIds = /* @__PURE__ */ new Set();
|
|
37813
37821
|
const droppedSyntheticIds = /* @__PURE__ */ new Set();
|
|
37814
37822
|
if (historyBatchId) {
|
|
37815
37823
|
const batchTwins = existingMessages.filter(
|
|
37816
37824
|
(m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
|
|
37817
|
-
(s) => s.type === "approval_batch" && _optionalChain([s, 'access',
|
|
37825
|
+
(s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1012 => _1012.data, 'optionalAccess', _1013 => _1013.approvalRequestId]) === historyBatchId
|
|
37818
37826
|
)
|
|
37819
37827
|
);
|
|
37820
37828
|
const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
|
|
37821
37829
|
if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
|
|
37822
|
-
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess',
|
|
37830
|
+
const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1014 => _1014.content])) ? historyTrailingAssistant.content.length : 0;
|
|
37823
37831
|
const realtimeSize = existingWithSameBatch.content.length;
|
|
37824
37832
|
if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
|
|
37825
37833
|
processedToUse = processedHistory.slice(0, -1);
|
|
@@ -37833,13 +37841,13 @@ function mergeHistoryWithRealtime(input) {
|
|
|
37833
37841
|
if (pinnedSyntheticIds.has(m.id)) return true;
|
|
37834
37842
|
if (droppedSyntheticIds.has(m.id)) return false;
|
|
37835
37843
|
if (processedIds.has(m.id)) return false;
|
|
37836
|
-
if (_optionalChain([rawHistoryIds, 'optionalAccess',
|
|
37844
|
+
if (_optionalChain([rawHistoryIds, 'optionalAccess', _1015 => _1015.has, 'call', _1016 => _1016(m.id)])) return false;
|
|
37837
37845
|
if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
|
|
37838
|
-
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access',
|
|
37846
|
+
const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1017 => _1017.timestamp, 'optionalAccess', _1018 => _1018.getTime, 'call', _1019 => _1019()]), () => ( 0))) <= historyFetchedAt;
|
|
37839
37847
|
return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
|
|
37840
37848
|
}
|
|
37841
37849
|
if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
|
|
37842
|
-
const covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access',
|
|
37850
|
+
const covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1020 => _1020.timestamp, 'optionalAccess', _1021 => _1021.getTime, 'call', _1022 => _1022()]), () => ( 0))) <= historyFetchedAt;
|
|
37843
37851
|
if (covered) return false;
|
|
37844
37852
|
}
|
|
37845
37853
|
return true;
|
|
@@ -38059,7 +38067,7 @@ function useChatDialogManager({
|
|
|
38059
38067
|
const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
|
|
38060
38068
|
if (restoreTarget) {
|
|
38061
38069
|
try {
|
|
38062
|
-
await _optionalChain([unarchiveDialog, 'optionalCall',
|
|
38070
|
+
await _optionalChain([unarchiveDialog, 'optionalCall', _1023 => _1023(restoreTarget.id)]);
|
|
38063
38071
|
} catch (err) {
|
|
38064
38072
|
console.error("[useChatDialogManager] unarchive failed:", err);
|
|
38065
38073
|
return;
|
|
@@ -38458,7 +38466,7 @@ function EmbeddableChatInner({
|
|
|
38458
38466
|
}),
|
|
38459
38467
|
[commandsUrl]
|
|
38460
38468
|
);
|
|
38461
|
-
const userName = _optionalChain([identityUser, 'optionalAccess',
|
|
38469
|
+
const userName = _optionalChain([identityUser, 'optionalAccess', _1024 => _1024.firstName, 'optionalAccess', _1025 => _1025.trim, 'call', _1026 => _1026()]) || _optionalChain([identityUser, 'optionalAccess', _1027 => _1027.name, 'optionalAccess', _1028 => _1028.split, 'call', _1029 => _1029(" "), 'access', _1030 => _1030[0], 'optionalAccess', _1031 => _1031.trim, 'call', _1032 => _1032()]) || void 0;
|
|
38462
38470
|
const effectiveModes = _react.useMemo.call(void 0, () => {
|
|
38463
38471
|
if (modes) return modes;
|
|
38464
38472
|
const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
|
|
@@ -38467,17 +38475,17 @@ function EmbeddableChatInner({
|
|
|
38467
38475
|
const mingoCaps = _react.useMemo.call(void 0, () => {
|
|
38468
38476
|
if (mingoState) {
|
|
38469
38477
|
return {
|
|
38470
|
-
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38471
|
-
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38472
|
-
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38473
|
-
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess',
|
|
38478
|
+
canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1033 => _1033.canRename]), () => ( false)),
|
|
38479
|
+
canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1034 => _1034.canArchive]), () => ( false)),
|
|
38480
|
+
fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1035 => _1035.fetchArchivedDialogs]),
|
|
38481
|
+
unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1036 => _1036.unarchiveDialog])
|
|
38474
38482
|
};
|
|
38475
38483
|
}
|
|
38476
38484
|
return {
|
|
38477
|
-
canRename: !!_optionalChain([effectiveModes, 'access',
|
|
38478
|
-
canArchive: !!_optionalChain([effectiveModes, 'access',
|
|
38479
|
-
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access',
|
|
38480
|
-
unarchiveDialog: _optionalChain([effectiveModes, 'access',
|
|
38485
|
+
canRename: !!_optionalChain([effectiveModes, 'access', _1037 => _1037.mingo, 'optionalAccess', _1038 => _1038.renameDialog]),
|
|
38486
|
+
canArchive: !!_optionalChain([effectiveModes, 'access', _1039 => _1039.mingo, 'optionalAccess', _1040 => _1040.archiveDialog]),
|
|
38487
|
+
fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1041 => _1041.mingo, 'optionalAccess', _1042 => _1042.fetchArchivedDialogs]),
|
|
38488
|
+
unarchiveDialog: _optionalChain([effectiveModes, 'access', _1043 => _1043.mingo, 'optionalAccess', _1044 => _1044.unarchiveDialog])
|
|
38481
38489
|
};
|
|
38482
38490
|
}, [mingoState, mingoDialogCapabilities, effectiveModes]);
|
|
38483
38491
|
const hasMingoMode = !!effectiveModes.mingo || !!mingoState;
|
|
@@ -38489,7 +38497,7 @@ function EmbeddableChatInner({
|
|
|
38489
38497
|
if (controlledActiveMode === void 0) {
|
|
38490
38498
|
setUncontrolledActiveMode(next);
|
|
38491
38499
|
}
|
|
38492
|
-
_optionalChain([onActiveModeChange, 'optionalCall',
|
|
38500
|
+
_optionalChain([onActiveModeChange, 'optionalCall', _1045 => _1045(next)]);
|
|
38493
38501
|
},
|
|
38494
38502
|
[controlledActiveMode, onActiveModeChange]
|
|
38495
38503
|
);
|
|
@@ -38696,9 +38704,9 @@ function EmbeddableChatInner({
|
|
|
38696
38704
|
const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
|
|
38697
38705
|
const lastSources = _react.useMemo.call(void 0, () => {
|
|
38698
38706
|
if (chatLoading) return void 0;
|
|
38699
|
-
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
38707
|
+
const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1046 => _1046.sources]);
|
|
38700
38708
|
if (!sources || sources.length === 0) return void 0;
|
|
38701
|
-
const content = _optionalChain([lastAssistantMsg, 'optionalAccess',
|
|
38709
|
+
const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1047 => _1047.content]) || "";
|
|
38702
38710
|
const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
|
|
38703
38711
|
(m) => parseInt(m[1], 10)
|
|
38704
38712
|
);
|
|
@@ -38745,7 +38753,7 @@ function EmbeddableChatInner({
|
|
|
38745
38753
|
ChatPanelHeader,
|
|
38746
38754
|
{
|
|
38747
38755
|
showBack: hasConversation || guideCanReturnToMingo,
|
|
38748
|
-
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess',
|
|
38756
|
+
title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1048 => _1048.title]) || "New Chat" : isGuideEmpty ? "Mingo Guide" : "Current Chats",
|
|
38749
38757
|
backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
|
|
38750
38758
|
isArchivedView: isViewingArchived,
|
|
38751
38759
|
onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
|
|
@@ -38850,10 +38858,10 @@ function EmbeddableChatInner({
|
|
|
38850
38858
|
subtitle: _nullishCoalesce(emptyStateGreeting, () => ( void 0)),
|
|
38851
38859
|
...guideWelcome,
|
|
38852
38860
|
onQuickAction: (action) => {
|
|
38853
|
-
_optionalChain([chatInputRef, 'access',
|
|
38861
|
+
_optionalChain([chatInputRef, 'access', _1049 => _1049.current, 'optionalAccess', _1050 => _1050.setValue, 'call', _1051 => _1051(
|
|
38854
38862
|
_nullishCoalesce(action.prompt, () => ( action.label))
|
|
38855
38863
|
)]);
|
|
38856
|
-
_optionalChain([chatInputRef, 'access',
|
|
38864
|
+
_optionalChain([chatInputRef, 'access', _1052 => _1052.current, 'optionalAccess', _1053 => _1053.focus, 'call', _1054 => _1054()]);
|
|
38857
38865
|
},
|
|
38858
38866
|
children: (chipCommands.length > 0 || !commandsLoaded) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "shrink-0 overflow-hidden rounded-md border border-ods-border", children: [
|
|
38859
38867
|
!commandsLoaded && chipCommands.length === 0 && SKELETON_ROW_VARIANTS.map((variant, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -39674,4 +39682,4 @@ function EmbeddableChatInner({
|
|
|
39674
39682
|
|
|
39675
39683
|
|
|
39676
39684
|
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.Autocomplete = Autocomplete; 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.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.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.ReleaseChangelogSection = ReleaseChangelogSection; 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.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.HEX_PATTERN = HEX_PATTERN; 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.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.BlockCard = BlockCard; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatQuickActionRow = ChatQuickActionRow; 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.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; 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.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.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.getAppType = getAppType; exports.getEmbedProxyAuth = getEmbedProxyAuth; exports.getPersistedProxyEmail = getPersistedProxyEmail; exports.setEmbedProxyAuth = setEmbedProxyAuth; exports.clearEmbedProxyAuth = clearEmbedProxyAuth; exports.applyProxyAuth = applyProxyAuth; exports.setEmbedAuthAdapter = setEmbedAuthAdapter; exports.embedAuthedFetch = embedAuthedFetch; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; 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.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.ListPageLayout = ListPageLayout; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.PageHeading = PageHeading; exports.EntityImage = EntityImage; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; 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.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.hexToRgb = hexToRgb2; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; 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.scrollElementIntoView = scrollElementIntoView; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon; 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.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.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.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.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.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.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.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderButton = HeaderButton; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.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.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;
|
|
39677
|
-
//# sourceMappingURL=chunk-
|
|
39685
|
+
//# sourceMappingURL=chunk-SIYHXLFH.cjs.map
|