@flamingo-stack/openframe-frontend-core 0.0.325 → 0.0.326
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-EQSGC5WT.js → chunk-2A7HDFWT.js} +2 -2
- package/dist/{chunk-4USOR7KK.cjs → chunk-4ZP43F2Y.cjs} +25 -25
- package/dist/{chunk-4USOR7KK.cjs.map → chunk-4ZP43F2Y.cjs.map} +1 -1
- package/dist/{chunk-VSUBZBG7.js → chunk-ANZ24A74.js} +2 -2
- package/dist/{chunk-QLSUOQMU.cjs → chunk-D3QAD5DH.cjs} +7 -7
- package/dist/{chunk-QLSUOQMU.cjs.map → chunk-D3QAD5DH.cjs.map} +1 -1
- package/dist/{chunk-HS2YU2NF.js → chunk-DRIEQWHS.js} +2 -2
- package/dist/{chunk-GYWMN4AK.js → chunk-ET6HI2SY.js} +4 -4
- package/dist/{chunk-P3IIAUCL.js → chunk-FXY2QIAY.js} +4245 -4172
- package/dist/chunk-FXY2QIAY.js.map +1 -0
- package/dist/{chunk-MIVP6B6P.js → chunk-HP3IBX4D.js} +4 -4
- package/dist/{chunk-K2PS5MJH.cjs → chunk-HPZLBTDP.cjs} +5 -5
- package/dist/{chunk-K2PS5MJH.cjs.map → chunk-HPZLBTDP.cjs.map} +1 -1
- package/dist/{chunk-5COLEZW6.cjs → chunk-J3MYVBBB.cjs} +62 -62
- package/dist/{chunk-5COLEZW6.cjs.map → chunk-J3MYVBBB.cjs.map} +1 -1
- package/dist/{chunk-AYBSXRRC.cjs → chunk-JCRU2L2D.cjs} +871 -798
- package/dist/chunk-JCRU2L2D.cjs.map +1 -0
- package/dist/{chunk-XQBK7IVF.cjs → chunk-JNU6H67K.cjs} +15 -15
- package/dist/{chunk-XQBK7IVF.cjs.map → chunk-JNU6H67K.cjs.map} +1 -1
- package/dist/{chunk-XFRQUV5M.js → chunk-JZY33ZRU.js} +2 -2
- package/dist/{chunk-6GSM6K5W.js → chunk-LS5NC5OV.js} +2 -2
- package/dist/{chunk-UJIDDEXD.js → chunk-NLDDOARF.js} +2 -2
- package/dist/{chunk-5HRCKYFX.cjs → chunk-OCE5CI5P.cjs} +9 -9
- package/dist/{chunk-5HRCKYFX.cjs.map → chunk-OCE5CI5P.cjs.map} +1 -1
- package/dist/{chunk-XTV2EZHO.cjs → chunk-QTHOFU4Y.cjs} +31 -31
- package/dist/{chunk-XTV2EZHO.cjs.map → chunk-QTHOFU4Y.cjs.map} +1 -1
- package/dist/{chunk-5GXMQPG7.cjs → chunk-R2K5STAT.cjs} +37 -37
- package/dist/{chunk-5GXMQPG7.cjs.map → chunk-R2K5STAT.cjs.map} +1 -1
- package/dist/{chunk-5YGKK636.js → chunk-R2YOV7MW.js} +4 -4
- package/dist/{chunk-5DXWGCTW.cjs → chunk-W3E5SEIR.cjs} +56 -56
- package/dist/{chunk-5DXWGCTW.cjs.map → chunk-W3E5SEIR.cjs.map} +1 -1
- package/dist/{chunk-VUE2FSVD.js → chunk-WFDJDGO6.js} +2 -2
- package/dist/{chunk-U74OC6PM.cjs → chunk-WV65IRWY.cjs} +26 -26
- package/dist/{chunk-U74OC6PM.cjs.map → chunk-WV65IRWY.cjs.map} +1 -1
- package/dist/{chunk-WAYJ7VBD.cjs → chunk-YRUKVWRV.cjs} +12 -12
- package/dist/{chunk-WAYJ7VBD.cjs.map → chunk-YRUKVWRV.cjs.map} +1 -1
- package/dist/{chunk-5CWJGCOL.js → chunk-ZYHAFLX7.js} +4 -4
- package/dist/components/case-studies/index.cjs +8 -8
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +5 -5
- package/dist/components/docs/index.js +4 -4
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/help-center-pages/index.cjs +20 -20
- package/dist/components/help-center-pages/index.js +11 -11
- package/dist/components/index.cjs +122 -120
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +11 -9
- package/dist/components/index.js.map +1 -1
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +5 -5
- package/dist/components/tickets/index.js +4 -4
- package/dist/components/ui/index.cjs +4 -2
- package/dist/components/ui/index.cjs.map +1 -1
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +3 -1
- package/dist/components/ui/info-section.d.ts +63 -0
- package/dist/components/ui/info-section.d.ts.map +1 -0
- package/dist/components/ui/ticket-attachments-list.d.ts +2 -0
- package/dist/components/ui/ticket-attachments-list.d.ts.map +1 -1
- package/dist/index.cjs +4 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +3 -1
- package/package.json +1 -1
- package/src/components/ui/index.ts +1 -0
- package/src/components/ui/info-section.tsx +151 -0
- package/src/components/ui/ticket-attachments-list.tsx +14 -2
- package/src/stories/InfoSection.stories.tsx +110 -0
- package/dist/chunk-AYBSXRRC.cjs.map +0 -1
- package/dist/chunk-P3IIAUCL.js.map +0 -1
- /package/dist/{chunk-EQSGC5WT.js.map → chunk-2A7HDFWT.js.map} +0 -0
- /package/dist/{chunk-VSUBZBG7.js.map → chunk-ANZ24A74.js.map} +0 -0
- /package/dist/{chunk-HS2YU2NF.js.map → chunk-DRIEQWHS.js.map} +0 -0
- /package/dist/{chunk-GYWMN4AK.js.map → chunk-ET6HI2SY.js.map} +0 -0
- /package/dist/{chunk-MIVP6B6P.js.map → chunk-HP3IBX4D.js.map} +0 -0
- /package/dist/{chunk-XFRQUV5M.js.map → chunk-JZY33ZRU.js.map} +0 -0
- /package/dist/{chunk-6GSM6K5W.js.map → chunk-LS5NC5OV.js.map} +0 -0
- /package/dist/{chunk-UJIDDEXD.js.map → chunk-NLDDOARF.js.map} +0 -0
- /package/dist/{chunk-5YGKK636.js.map → chunk-R2YOV7MW.js.map} +0 -0
- /package/dist/{chunk-VUE2FSVD.js.map → chunk-WFDJDGO6.js.map} +0 -0
- /package/dist/{chunk-5CWJGCOL.js.map → chunk-ZYHAFLX7.js.map} +0 -0
|
@@ -243,7 +243,7 @@ var _chunkVRHGVLSLcjs = require('./chunk-VRHGVLSL.cjs');
|
|
|
243
243
|
|
|
244
244
|
// src/components/pagination.tsx
|
|
245
245
|
var _lucidereact = require('lucide-react');
|
|
246
|
-
var _react = require('react'); var
|
|
246
|
+
var _react = require('react'); var React113 = _interopRequireWildcard(_react); var React6 = _interopRequireWildcard(_react); var React2 = _interopRequireWildcard(_react); var React4 = _interopRequireWildcard(_react); var React3 = _interopRequireWildcard(_react); var React22 = _interopRequireWildcard(_react); var React7 = _interopRequireWildcard(_react); var React8 = _interopRequireWildcard(_react); var React10 = _interopRequireWildcard(_react); var React12 = _interopRequireWildcard(_react); var React11 = _interopRequireWildcard(_react); var React14 = _interopRequireWildcard(_react); var React13 = _interopRequireWildcard(_react); var React15 = _interopRequireWildcard(_react); var React16 = _interopRequireWildcard(_react); var React18 = _interopRequireWildcard(_react); var React17 = _interopRequireWildcard(_react); var React19 = _interopRequireWildcard(_react); var React23 = _interopRequireWildcard(_react); var React20 = _interopRequireWildcard(_react); var React24 = _interopRequireWildcard(_react); var React26 = _interopRequireWildcard(_react); var React29 = _interopRequireWildcard(_react); var React34 = _interopRequireWildcard(_react); var React33 = _interopRequireWildcard(_react); var React35 = _interopRequireWildcard(_react); var React36 = _interopRequireWildcard(_react); var React38 = _interopRequireWildcard(_react); var React37 = _interopRequireWildcard(_react); var React41 = _interopRequireWildcard(_react); var React42 = _interopRequireWildcard(_react); var React43 = _interopRequireWildcard(_react); var React47 = _interopRequireWildcard(_react); var React48 = _interopRequireWildcard(_react); var React49 = _interopRequireWildcard(_react); var React50 = _interopRequireWildcard(_react); var React51 = _interopRequireWildcard(_react); var React52 = _interopRequireWildcard(_react); var React53 = _interopRequireWildcard(_react); var React54 = _interopRequireWildcard(_react); var React55 = _interopRequireWildcard(_react); var React56 = _interopRequireWildcard(_react); var React57 = _interopRequireWildcard(_react); var React58 = _interopRequireWildcard(_react); var React59 = _interopRequireWildcard(_react); var React60 = _interopRequireWildcard(_react); var React61 = _interopRequireWildcard(_react); var React63 = _interopRequireWildcard(_react); var React64 = _interopRequireWildcard(_react); var React74 = _interopRequireWildcard(_react); var React73 = _interopRequireWildcard(_react); var React77 = _interopRequireWildcard(_react); var React78 = _interopRequireWildcard(_react); var React80 = _interopRequireWildcard(_react); var React82 = _interopRequireWildcard(_react); var React87 = _interopRequireWildcard(_react); var React90 = _interopRequireWildcard(_react); var React91 = _interopRequireWildcard(_react); var React92 = _interopRequireWildcard(_react); var React97 = _interopRequireWildcard(_react); var React96 = _interopRequireWildcard(_react); var React94 = _interopRequireWildcard(_react); var React93 = _interopRequireWildcard(_react); var React95 = _interopRequireWildcard(_react); var React98 = _interopRequireWildcard(_react); var React106 = _interopRequireWildcard(_react); var React110 = _interopRequireWildcard(_react); var React109 = _interopRequireWildcard(_react); var React112 = _interopRequireWildcard(_react); var React115 = _interopRequireWildcard(_react); var React116 = _interopRequireWildcard(_react); var React118 = _interopRequireWildcard(_react); var React119 = _interopRequireWildcard(_react); var React122 = _interopRequireWildcard(_react); var React121 = _interopRequireWildcard(_react); var React120 = _interopRequireWildcard(_react); var React124 = _interopRequireWildcard(_react); var React123 = _interopRequireWildcard(_react); var React132 = _interopRequireWildcard(_react); var React131 = _interopRequireWildcard(_react);
|
|
247
247
|
var _jsxruntime = require('react/jsx-runtime');
|
|
248
248
|
var Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationEllipsis, PaginationPrevious, PaginationNext;
|
|
249
249
|
var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
|
|
@@ -335,19 +335,19 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
|
|
|
335
335
|
) })
|
|
336
336
|
] }) });
|
|
337
337
|
};
|
|
338
|
-
PaginationContent = exports.PaginationContent =
|
|
338
|
+
PaginationContent = exports.PaginationContent = React113.forwardRef(
|
|
339
339
|
({ className, ...props }, ref) => {
|
|
340
340
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { ref, className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex items-center justify-center", className), ...props });
|
|
341
341
|
}
|
|
342
342
|
);
|
|
343
343
|
PaginationContent.displayName = "PaginationContent";
|
|
344
|
-
PaginationItem = exports.PaginationItem =
|
|
344
|
+
PaginationItem = exports.PaginationItem = React113.forwardRef(
|
|
345
345
|
({ className, ...props }, ref) => {
|
|
346
346
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { ref, className: _chunkFIG2RKZFcjs.cn.call(void 0, "", className), ...props });
|
|
347
347
|
}
|
|
348
348
|
);
|
|
349
349
|
PaginationItem.displayName = "PaginationItem";
|
|
350
|
-
PaginationLink = exports.PaginationLink =
|
|
350
|
+
PaginationLink = exports.PaginationLink = React113.forwardRef(
|
|
351
351
|
({ className, ...props }, ref) => {
|
|
352
352
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
353
353
|
"button",
|
|
@@ -363,7 +363,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
|
|
|
363
363
|
}
|
|
364
364
|
);
|
|
365
365
|
PaginationLink.displayName = "PaginationLink";
|
|
366
|
-
PaginationEllipsis = exports.PaginationEllipsis =
|
|
366
|
+
PaginationEllipsis = exports.PaginationEllipsis = React113.forwardRef(
|
|
367
367
|
({ className, ...props }, ref) => {
|
|
368
368
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
369
369
|
"span",
|
|
@@ -380,7 +380,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
|
|
|
380
380
|
}
|
|
381
381
|
);
|
|
382
382
|
PaginationEllipsis.displayName = "PaginationEllipsis";
|
|
383
|
-
PaginationPrevious = exports.PaginationPrevious =
|
|
383
|
+
PaginationPrevious = exports.PaginationPrevious = React113.forwardRef(
|
|
384
384
|
({ className, ...props }, ref) => {
|
|
385
385
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.Button, { ref, variant: "outline", size: "icon", className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-10 w-10", className), ...props, children: [
|
|
386
386
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -389,7 +389,7 @@ var init_pagination = _chunkVRHGVLSLcjs.__esm.call(void 0, {
|
|
|
389
389
|
}
|
|
390
390
|
);
|
|
391
391
|
PaginationPrevious.displayName = "PaginationPrevious";
|
|
392
|
-
PaginationNext = exports.PaginationNext =
|
|
392
|
+
PaginationNext = exports.PaginationNext = React113.forwardRef(
|
|
393
393
|
({ className, ...props }, ref) => {
|
|
394
394
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.Button, { ref, variant: "outline", size: "icon", className: _chunkFIG2RKZFcjs.cn.call(void 0, "h-10 w-10", className), ...props, children: [
|
|
395
395
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
|
|
@@ -2552,7 +2552,7 @@ var ActionsMenu = ({
|
|
|
2552
2552
|
className: `relative min-w-[256px] max-h-[var(--radix-popper-available-height)] bg-ods-bg border border-ods-border rounded-md shadow-lg overflow-y-auto ${className}`,
|
|
2553
2553
|
children: groups.map((group, groupIndex) => {
|
|
2554
2554
|
const groupKey = group.id || group.items.map((i) => i.id).join("|");
|
|
2555
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
2555
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React113.default.Fragment, { children: [
|
|
2556
2556
|
group.items.map((item, itemIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2557
2557
|
MenuItem,
|
|
2558
2558
|
{
|
|
@@ -4761,7 +4761,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
|
|
|
4761
4761
|
cache.set(key, entry);
|
|
4762
4762
|
}
|
|
4763
4763
|
const rendered = entry.node;
|
|
4764
|
-
if (
|
|
4764
|
+
if (React113.default.isValidElement(rendered) && rendered.type === BlockCard) {
|
|
4765
4765
|
const props2 = rendered.props;
|
|
4766
4766
|
const markerEnd = match2.index + match2[0].length;
|
|
4767
4767
|
parts.push({ kind: "text", text: text.slice(cursor, markerEnd) });
|
|
@@ -7505,7 +7505,7 @@ var formatTokenCount = (count) => {
|
|
|
7505
7505
|
return String(count);
|
|
7506
7506
|
};
|
|
7507
7507
|
var hasAnyBreakdownRow = (breakdown) => !!breakdown && !!(breakdown.haikuRewriter || breakdown.haikuClassifier || breakdown.haikuSummarizer);
|
|
7508
|
-
var ModelDisplay =
|
|
7508
|
+
var ModelDisplay = React113.default.forwardRef(
|
|
7509
7509
|
({
|
|
7510
7510
|
className,
|
|
7511
7511
|
provider,
|
|
@@ -7627,7 +7627,7 @@ function BreakdownRow({
|
|
|
7627
7627
|
] });
|
|
7628
7628
|
}
|
|
7629
7629
|
ModelDisplay.displayName = "ModelDisplay";
|
|
7630
|
-
var ModelDisplaySkeleton =
|
|
7630
|
+
var ModelDisplaySkeleton = React113.default.forwardRef(
|
|
7631
7631
|
({ className, showTokens = false, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
7632
7632
|
"div",
|
|
7633
7633
|
{
|
|
@@ -8826,7 +8826,7 @@ var _muxplayerreact = require('@mux/mux-player-react'); var _muxplayerreact2 = _
|
|
|
8826
8826
|
|
|
8827
8827
|
// src/utils/fetch-priority.ts
|
|
8828
8828
|
|
|
8829
|
-
var REACT_MAJOR = parseInt((
|
|
8829
|
+
var REACT_MAJOR = parseInt((React113.default.version || "0").split(".")[0], 10);
|
|
8830
8830
|
var USE_CAMEL_CASE_FETCH_PRIORITY = REACT_MAJOR >= 19;
|
|
8831
8831
|
function fetchPriorityProp(priority) {
|
|
8832
8832
|
const value = priority === void 0 ? "auto" : typeof priority === "boolean" ? priority ? "high" : "low" : priority;
|
|
@@ -9492,7 +9492,7 @@ function ChatVideoEntityCard({
|
|
|
9492
9492
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
9493
9493
|
|
|
9494
9494
|
|
|
9495
|
-
var InteractiveCard =
|
|
9495
|
+
var InteractiveCard = React113.default.forwardRef(
|
|
9496
9496
|
({
|
|
9497
9497
|
children,
|
|
9498
9498
|
onClick,
|
|
@@ -13062,7 +13062,7 @@ function InfoCard({ data, className = "" }) {
|
|
|
13062
13062
|
data.subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-h4 text-ods-text-secondary truncate self-stretch", title: data.subtitle, children: data.subtitle }),
|
|
13063
13063
|
data.items.map((item, index) => {
|
|
13064
13064
|
const values = Array.isArray(item.value) ? item.value : [item.value];
|
|
13065
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13065
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: values.map((val, valIndex) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13066
13066
|
InfoCardValueRow,
|
|
13067
13067
|
{
|
|
13068
13068
|
label: item.label,
|
|
@@ -13154,11 +13154,316 @@ function InfoRow({ label, value, icon }) {
|
|
|
13154
13154
|
] });
|
|
13155
13155
|
}
|
|
13156
13156
|
|
|
13157
|
+
// src/components/ui/info-section.tsx
|
|
13158
|
+
_chunkWBR7H6E3cjs.init_next_link.call(void 0, );
|
|
13159
|
+
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
13160
|
+
|
|
13161
|
+
// src/components/ui/assignee-dropdown.tsx
|
|
13162
|
+
|
|
13163
|
+
|
|
13164
|
+
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
13165
|
+
|
|
13166
|
+
function AssigneeDropdown(props) {
|
|
13167
|
+
if (props.variant === "compact") {
|
|
13168
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CompactAssigneeDropdown, { ...props });
|
|
13169
|
+
}
|
|
13170
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DefaultAssigneeDropdown, { ...props });
|
|
13171
|
+
}
|
|
13172
|
+
function CompactAssigneeDropdown({
|
|
13173
|
+
currentAssignee,
|
|
13174
|
+
options,
|
|
13175
|
+
isLoading,
|
|
13176
|
+
onAssign,
|
|
13177
|
+
className
|
|
13178
|
+
}) {
|
|
13179
|
+
const [isOpen, setIsOpen] = React41.useState(false);
|
|
13180
|
+
const [search, setSearch] = React41.useState("");
|
|
13181
|
+
const hasAssignee = !!currentAssignee;
|
|
13182
|
+
React41.useEffect(() => {
|
|
13183
|
+
if (!isOpen) setSearch("");
|
|
13184
|
+
}, [isOpen]);
|
|
13185
|
+
const filtered = React41.useMemo(() => {
|
|
13186
|
+
const q = search.trim().toLowerCase();
|
|
13187
|
+
if (!q) return options;
|
|
13188
|
+
return options.filter((o) => o.label.toLowerCase().includes(q));
|
|
13189
|
+
}, [options, search]);
|
|
13190
|
+
const orderedOptions = React41.useMemo(() => {
|
|
13191
|
+
if (!currentAssignee) return filtered;
|
|
13192
|
+
const current = filtered.find((o) => o.value === currentAssignee.id);
|
|
13193
|
+
if (!current) return filtered;
|
|
13194
|
+
return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
|
|
13195
|
+
}, [filtered, currentAssignee]);
|
|
13196
|
+
const handleSelect = (userId) => {
|
|
13197
|
+
const next = _optionalChain([currentAssignee, 'optionalAccess', _258 => _258.id]) === userId ? null : userId;
|
|
13198
|
+
onAssign(next);
|
|
13199
|
+
setIsOpen(false);
|
|
13200
|
+
};
|
|
13201
|
+
const trigger = hasAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13202
|
+
"button",
|
|
13203
|
+
{
|
|
13204
|
+
type: "button",
|
|
13205
|
+
"aria-label": "Change assignee",
|
|
13206
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
13207
|
+
"shrink-0 rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
13208
|
+
className
|
|
13209
|
+
),
|
|
13210
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13211
|
+
SquareAvatar,
|
|
13212
|
+
{
|
|
13213
|
+
src: currentAssignee.avatarSrc,
|
|
13214
|
+
alt: currentAssignee.name,
|
|
13215
|
+
fallback: currentAssignee.name || "User",
|
|
13216
|
+
size: "sm",
|
|
13217
|
+
variant: "round"
|
|
13218
|
+
}
|
|
13219
|
+
)
|
|
13220
|
+
}
|
|
13221
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13222
|
+
"button",
|
|
13223
|
+
{
|
|
13224
|
+
type: "button",
|
|
13225
|
+
"aria-label": "Assign user",
|
|
13226
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
13227
|
+
"size-8 rounded-full border border-ods-border flex items-center justify-center shrink-0",
|
|
13228
|
+
"text-ods-text-secondary hover:text-ods-accent hover:border-ods-accent transition-colors",
|
|
13229
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
13230
|
+
className
|
|
13231
|
+
),
|
|
13232
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.UserPlusIcon, { className: "size-4" })
|
|
13233
|
+
}
|
|
13234
|
+
);
|
|
13235
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive2.Root, { open: isOpen, onOpenChange: setIsOpen, modal: false, children: [
|
|
13236
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive2.Trigger, { asChild: true, children: trigger }),
|
|
13237
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive2.Portal, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13238
|
+
PopoverPrimitive2.Content,
|
|
13239
|
+
{
|
|
13240
|
+
align: "end",
|
|
13241
|
+
sideOffset: 6,
|
|
13242
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
13243
|
+
"z-50 w-72 bg-ods-card border border-ods-border rounded-[6px] shadow-lg overflow-hidden",
|
|
13244
|
+
"data-[state=open]:animate-in data-[state=closed]:animate-out",
|
|
13245
|
+
"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
13246
|
+
"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
|
|
13247
|
+
"data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2"
|
|
13248
|
+
),
|
|
13249
|
+
children: [
|
|
13250
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13251
|
+
_chunkQJGRP2YEcjs.Input,
|
|
13252
|
+
{
|
|
13253
|
+
autoFocus: true,
|
|
13254
|
+
value: search,
|
|
13255
|
+
onChange: (e) => setSearch(e.target.value),
|
|
13256
|
+
placeholder: "Search users...",
|
|
13257
|
+
startAdornment: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "size-4 text-ods-text-secondary" }),
|
|
13258
|
+
className: "rounded-none border-0"
|
|
13259
|
+
}
|
|
13260
|
+
) }),
|
|
13261
|
+
/* @__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) => {
|
|
13262
|
+
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _259 => _259.id]) === opt.value;
|
|
13263
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13264
|
+
"button",
|
|
13265
|
+
{
|
|
13266
|
+
type: "button",
|
|
13267
|
+
role: "option",
|
|
13268
|
+
"aria-selected": isCurrent,
|
|
13269
|
+
onClick: () => handleSelect(opt.value),
|
|
13270
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
13271
|
+
"flex items-center gap-[var(--spacing-system-xs)] w-full px-[var(--spacing-system-sf)] py-[var(--spacing-system-xs)] text-left",
|
|
13272
|
+
"hover:bg-ods-bg-hover transition-colors",
|
|
13273
|
+
isCurrent && "bg-ods-bg-hover"
|
|
13274
|
+
),
|
|
13275
|
+
children: [
|
|
13276
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13277
|
+
SquareAvatar,
|
|
13278
|
+
{
|
|
13279
|
+
src: opt.imageUrl,
|
|
13280
|
+
alt: opt.label,
|
|
13281
|
+
fallback: opt.label,
|
|
13282
|
+
size: "sm",
|
|
13283
|
+
variant: "round",
|
|
13284
|
+
className: "h-6 w-6 shrink-0"
|
|
13285
|
+
}
|
|
13286
|
+
),
|
|
13287
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-1 truncate text-h4 text-ods-text-primary", title: opt.label, children: opt.label }),
|
|
13288
|
+
isCurrent && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.CheckIcon, { className: "size-4 shrink-0 text-ods-accent" })
|
|
13289
|
+
]
|
|
13290
|
+
},
|
|
13291
|
+
opt.value
|
|
13292
|
+
);
|
|
13293
|
+
}) })
|
|
13294
|
+
]
|
|
13295
|
+
}
|
|
13296
|
+
) })
|
|
13297
|
+
] });
|
|
13298
|
+
}
|
|
13299
|
+
function DefaultAssigneeDropdown({
|
|
13300
|
+
currentAssignee,
|
|
13301
|
+
options,
|
|
13302
|
+
isLoading,
|
|
13303
|
+
onAssign,
|
|
13304
|
+
className
|
|
13305
|
+
}) {
|
|
13306
|
+
const [isEditing, setIsEditing] = React41.useState(false);
|
|
13307
|
+
const hasAssignee = !!currentAssignee;
|
|
13308
|
+
const renderOption = React41.useCallback((option) => {
|
|
13309
|
+
const opt = option;
|
|
13310
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-sf)] w-full min-w-0", children: [
|
|
13311
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13312
|
+
SquareAvatar,
|
|
13313
|
+
{
|
|
13314
|
+
src: opt.imageUrl,
|
|
13315
|
+
alt: opt.label,
|
|
13316
|
+
fallback: opt.label,
|
|
13317
|
+
size: "sm",
|
|
13318
|
+
variant: "round",
|
|
13319
|
+
className: "h-6 w-6 shrink-0"
|
|
13320
|
+
}
|
|
13321
|
+
),
|
|
13322
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", title: opt.label, children: opt.label })
|
|
13323
|
+
] });
|
|
13324
|
+
}, []);
|
|
13325
|
+
if (isEditing) {
|
|
13326
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "min-w-0", className), children: [
|
|
13327
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13328
|
+
Autocomplete,
|
|
13329
|
+
{
|
|
13330
|
+
options,
|
|
13331
|
+
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _260 => _260.id]), () => ( null)),
|
|
13332
|
+
onChange: (val) => {
|
|
13333
|
+
onAssign(val);
|
|
13334
|
+
setIsEditing(false);
|
|
13335
|
+
},
|
|
13336
|
+
placeholder: "Search users...",
|
|
13337
|
+
loading: isLoading,
|
|
13338
|
+
showChevron: false,
|
|
13339
|
+
startAdornment: hasAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13340
|
+
SquareAvatar,
|
|
13341
|
+
{
|
|
13342
|
+
src: currentAssignee.avatarSrc,
|
|
13343
|
+
alt: currentAssignee.name,
|
|
13344
|
+
fallback: currentAssignee.name || "User",
|
|
13345
|
+
size: "sm",
|
|
13346
|
+
variant: "round",
|
|
13347
|
+
className: "h-6 w-6"
|
|
13348
|
+
}
|
|
13349
|
+
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.UserIcon, { className: "size-5 text-ods-text-secondary" }),
|
|
13350
|
+
renderOption
|
|
13351
|
+
}
|
|
13352
|
+
),
|
|
13353
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 text-ods-text-secondary truncate block mt-0.5", children: "Assigned" })
|
|
13354
|
+
] });
|
|
13355
|
+
}
|
|
13356
|
+
if (hasAssignee) {
|
|
13357
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex items-center gap-[var(--spacing-system-xs)] min-w-0", className), children: [
|
|
13358
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13359
|
+
SquareAvatar,
|
|
13360
|
+
{
|
|
13361
|
+
src: currentAssignee.avatarSrc,
|
|
13362
|
+
alt: currentAssignee.name,
|
|
13363
|
+
fallback: currentAssignee.name || "User",
|
|
13364
|
+
size: "md",
|
|
13365
|
+
variant: "round",
|
|
13366
|
+
className: "shrink-0"
|
|
13367
|
+
}
|
|
13368
|
+
),
|
|
13369
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 min-w-0 overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col justify-center", children: [
|
|
13370
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] w-full min-w-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13371
|
+
"button",
|
|
13372
|
+
{
|
|
13373
|
+
type: "button",
|
|
13374
|
+
onClick: () => setIsEditing(true),
|
|
13375
|
+
className: "flex items-center gap-[var(--spacing-system-xxs)] cursor-pointer group text-left",
|
|
13376
|
+
children: [
|
|
13377
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.PenEditIcon, { className: "size-4 shrink-0 text-ods-text-secondary group-hover:text-ods-accent transition-colors" }),
|
|
13378
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary truncate", title: currentAssignee.name, children: currentAssignee.name })
|
|
13379
|
+
]
|
|
13380
|
+
}
|
|
13381
|
+
) }),
|
|
13382
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 text-ods-text-secondary truncate", children: "Assigned" })
|
|
13383
|
+
] }) })
|
|
13384
|
+
] });
|
|
13385
|
+
}
|
|
13386
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "min-w-0", className), children: [
|
|
13387
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13388
|
+
"button",
|
|
13389
|
+
{
|
|
13390
|
+
type: "button",
|
|
13391
|
+
onClick: () => setIsEditing(true),
|
|
13392
|
+
className: "flex items-center gap-[var(--spacing-system-xxs)] text-h4 text-ods-accent underline truncate cursor-pointer hover:opacity-80 transition-opacity text-left",
|
|
13393
|
+
children: [
|
|
13394
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.UserIcon, { className: "size-4 shrink-0" }),
|
|
13395
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Assign User" })
|
|
13396
|
+
]
|
|
13397
|
+
}
|
|
13398
|
+
),
|
|
13399
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 text-ods-text-secondary truncate block", children: "Assigned" })
|
|
13400
|
+
] });
|
|
13401
|
+
}
|
|
13402
|
+
|
|
13403
|
+
// src/components/ui/info-section.tsx
|
|
13404
|
+
|
|
13405
|
+
function TextValue({ value }) {
|
|
13406
|
+
const { text, imageSrc, imageFallback, imageVariant = "round", icon, onClick, href, openInNewTab } = value;
|
|
13407
|
+
const hasImage = imageSrc !== void 0 || imageFallback !== void 0;
|
|
13408
|
+
const interactiveClass = "truncate text-left text-h4 text-ods-text-primary transition-colors hover:text-ods-accent";
|
|
13409
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
13410
|
+
icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex size-4 shrink-0 items-center justify-center text-ods-text-secondary", children: icon }),
|
|
13411
|
+
href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13412
|
+
_chunkWBR7H6E3cjs.next_link_default,
|
|
13413
|
+
{
|
|
13414
|
+
href,
|
|
13415
|
+
target: openInNewTab ? "_blank" : void 0,
|
|
13416
|
+
rel: openInNewTab ? "noopener noreferrer" : void 0,
|
|
13417
|
+
title: text,
|
|
13418
|
+
className: interactiveClass,
|
|
13419
|
+
children: text
|
|
13420
|
+
}
|
|
13421
|
+
) : onClick ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type: "button", onClick, title: text, className: interactiveClass, children: text }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-h4 text-ods-text-primary", title: text, children: text }),
|
|
13422
|
+
hasImage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13423
|
+
SquareAvatar,
|
|
13424
|
+
{
|
|
13425
|
+
src: imageSrc,
|
|
13426
|
+
alt: text,
|
|
13427
|
+
fallback: _nullishCoalesce(imageFallback, () => ( text)),
|
|
13428
|
+
size: "sm",
|
|
13429
|
+
variant: imageVariant,
|
|
13430
|
+
className: "h-4 w-4"
|
|
13431
|
+
}
|
|
13432
|
+
)
|
|
13433
|
+
] });
|
|
13434
|
+
}
|
|
13435
|
+
function RowValue({ value }) {
|
|
13436
|
+
switch (value.type) {
|
|
13437
|
+
case "assignee": {
|
|
13438
|
+
const { type: _type, ...props } = value;
|
|
13439
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AssigneeDropdown, { ...props, variant: _nullishCoalesce(props.variant, () => ( "compact")) });
|
|
13440
|
+
}
|
|
13441
|
+
case "status": {
|
|
13442
|
+
const { type: _type, ...props } = value;
|
|
13443
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketStatusTag, { ...props });
|
|
13444
|
+
}
|
|
13445
|
+
case "custom":
|
|
13446
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: value.content });
|
|
13447
|
+
default:
|
|
13448
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TextValue, { value });
|
|
13449
|
+
}
|
|
13450
|
+
}
|
|
13451
|
+
function InfoSection({ title, rows, className }) {
|
|
13452
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xxs)]", className), children: [
|
|
13453
|
+
title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h5 text-ods-text-secondary", children: title }),
|
|
13454
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xsf)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-mf)]", children: rows.map((row) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
|
|
13455
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-h4 text-ods-text-secondary", children: row.label }),
|
|
13456
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px min-w-4 flex-1 bg-ods-border" }),
|
|
13457
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RowValue, { value: row.value }) })
|
|
13458
|
+
] }, row.id)) })
|
|
13459
|
+
] });
|
|
13460
|
+
}
|
|
13461
|
+
|
|
13157
13462
|
// src/components/ui/input-trigger.tsx
|
|
13158
13463
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
13159
13464
|
|
|
13160
13465
|
|
|
13161
|
-
var InputTrigger =
|
|
13466
|
+
var InputTrigger = React42.forwardRef(
|
|
13162
13467
|
({ selectedLabel, placeholder, startIcon, endIcon, invalid, className, disabled, ...props }, ref) => {
|
|
13163
13468
|
const isPlaceholder = selectedLabel === void 0 || selectedLabel === null || selectedLabel === "";
|
|
13164
13469
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -13223,8 +13528,8 @@ function MediaTypeSelector({
|
|
|
13223
13528
|
className,
|
|
13224
13529
|
disabled
|
|
13225
13530
|
}) {
|
|
13226
|
-
const [key, setKey] =
|
|
13227
|
-
|
|
13531
|
+
const [key, setKey] = React43.useState(0);
|
|
13532
|
+
React43.useEffect(() => {
|
|
13228
13533
|
setKey((prev) => prev + 1);
|
|
13229
13534
|
}, [value]);
|
|
13230
13535
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -13269,7 +13574,7 @@ var noDataActionsVariants = _classvarianceauthority.cva.call(void 0, "overflow-h
|
|
|
13269
13574
|
|
|
13270
13575
|
// src/components/ui/no-data/no-data-message.tsx
|
|
13271
13576
|
|
|
13272
|
-
var NoDataMessage =
|
|
13577
|
+
var NoDataMessage = React113.default.forwardRef(
|
|
13273
13578
|
function NoDataMessage2({ icon, title, description, className, ...props }, ref) {
|
|
13274
13579
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13275
13580
|
"div",
|
|
@@ -13296,7 +13601,7 @@ var NoDataMessage = React112.default.forwardRef(
|
|
|
13296
13601
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
13297
13602
|
|
|
13298
13603
|
|
|
13299
|
-
var NoDataAction =
|
|
13604
|
+
var NoDataAction = React113.default.forwardRef(
|
|
13300
13605
|
function NoDataAction2({ icon, label, children, className, ...props }, ref) {
|
|
13301
13606
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13302
13607
|
"div",
|
|
@@ -13316,16 +13621,16 @@ var NoDataAction = React112.default.forwardRef(
|
|
|
13316
13621
|
);
|
|
13317
13622
|
}
|
|
13318
13623
|
);
|
|
13319
|
-
var NoDataActions =
|
|
13624
|
+
var NoDataActions = React113.default.forwardRef(
|
|
13320
13625
|
function NoDataActions2({ actions, variant = "outline", className, children, ...props }, ref) {
|
|
13321
|
-
const blocks = actions ? actions.map((action, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NoDataAction, { ...action }, index)) :
|
|
13626
|
+
const blocks = actions ? actions.map((action, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NoDataAction, { ...action }, index)) : React113.default.Children.toArray(children);
|
|
13322
13627
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13323
13628
|
"div",
|
|
13324
13629
|
{
|
|
13325
13630
|
ref,
|
|
13326
13631
|
className: _chunkFIG2RKZFcjs.cn.call(void 0, noDataActionsVariants({ variant }), "flex w-full flex-col md:w-auto md:flex-row", className),
|
|
13327
13632
|
...props,
|
|
13328
|
-
children: blocks.map((block, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13633
|
+
children: blocks.map((block, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React113.default.Fragment, { children: [
|
|
13329
13634
|
index > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13330
13635
|
"div",
|
|
13331
13636
|
{
|
|
@@ -13342,7 +13647,7 @@ var NoDataActions = React112.default.forwardRef(
|
|
|
13342
13647
|
|
|
13343
13648
|
// src/components/ui/no-data/no-data.tsx
|
|
13344
13649
|
|
|
13345
|
-
var NoData =
|
|
13650
|
+
var NoData = React113.default.forwardRef(function NoData2({
|
|
13346
13651
|
icon,
|
|
13347
13652
|
title,
|
|
13348
13653
|
description,
|
|
@@ -13356,7 +13661,7 @@ var NoData = React112.default.forwardRef(function NoData2({
|
|
|
13356
13661
|
...props
|
|
13357
13662
|
}, ref) {
|
|
13358
13663
|
const hasMessage = !!(icon || title || description);
|
|
13359
|
-
const hasActions = !!_optionalChain([actions, 'optionalAccess',
|
|
13664
|
+
const hasActions = !!_optionalChain([actions, 'optionalAccess', _261 => _261.length]);
|
|
13360
13665
|
const footerButton = _nullishCoalesce(button, () => ( (buttonLabel != null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13361
13666
|
_chunkQJGRP2YEcjs.Button,
|
|
13362
13667
|
{
|
|
@@ -13364,7 +13669,7 @@ var NoData = React112.default.forwardRef(function NoData2({
|
|
|
13364
13669
|
leftIcon: buttonIcon,
|
|
13365
13670
|
onClick: onButtonClick,
|
|
13366
13671
|
...buttonProps,
|
|
13367
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess',
|
|
13672
|
+
className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess', _262 => _262.className])),
|
|
13368
13673
|
children: buttonLabel
|
|
13369
13674
|
}
|
|
13370
13675
|
) : null)));
|
|
@@ -13455,7 +13760,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
13455
13760
|
|
|
13456
13761
|
var _reactradiogroup = require('@radix-ui/react-radio-group'); var RadioGroupPrimitive = _interopRequireWildcard(_reactradiogroup);
|
|
13457
13762
|
|
|
13458
|
-
var RadioGroup =
|
|
13763
|
+
var RadioGroup = React47.forwardRef(({ className, ...props }, ref) => {
|
|
13459
13764
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13460
13765
|
RadioGroupPrimitive.Root,
|
|
13461
13766
|
{
|
|
@@ -13466,7 +13771,7 @@ var RadioGroup = React46.forwardRef(({ className, ...props }, ref) => {
|
|
|
13466
13771
|
);
|
|
13467
13772
|
});
|
|
13468
13773
|
RadioGroup.displayName = RadioGroupPrimitive.Root.displayName;
|
|
13469
|
-
var RadioGroupItem =
|
|
13774
|
+
var RadioGroupItem = React47.forwardRef(({ className, ...props }, ref) => {
|
|
13470
13775
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13471
13776
|
RadioGroupPrimitive.Item,
|
|
13472
13777
|
{
|
|
@@ -13487,7 +13792,7 @@ var RadioGroupItem = React46.forwardRef(({ className, ...props }, ref) => {
|
|
|
13487
13792
|
);
|
|
13488
13793
|
});
|
|
13489
13794
|
RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
|
|
13490
|
-
var RadioGroupBlock =
|
|
13795
|
+
var RadioGroupBlock = React47.forwardRef(
|
|
13491
13796
|
({ className, options, variant = "separated", error, itemClassName, disabled, ...props }, ref) => {
|
|
13492
13797
|
const isGrouped = variant === "grouped";
|
|
13493
13798
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "relative flex w-full flex-col", className), children: [
|
|
@@ -13590,16 +13895,16 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
13590
13895
|
|
|
13591
13896
|
var _reactswitch = require('@radix-ui/react-switch'); var SwitchPrimitives = _interopRequireWildcard(_reactswitch);
|
|
13592
13897
|
|
|
13593
|
-
var Switch =
|
|
13594
|
-
const [isChecked, setIsChecked] =
|
|
13595
|
-
|
|
13898
|
+
var Switch = React48.forwardRef(({ className, checked, onCheckedChange, ...props }, ref) => {
|
|
13899
|
+
const [isChecked, setIsChecked] = React48.useState(checked || false);
|
|
13900
|
+
React48.useEffect(() => {
|
|
13596
13901
|
if (checked !== void 0) {
|
|
13597
13902
|
setIsChecked(checked);
|
|
13598
13903
|
}
|
|
13599
13904
|
}, [checked]);
|
|
13600
13905
|
const handleCheckedChange = (newChecked) => {
|
|
13601
13906
|
setIsChecked(newChecked);
|
|
13602
|
-
_optionalChain([onCheckedChange, 'optionalCall',
|
|
13907
|
+
_optionalChain([onCheckedChange, 'optionalCall', _263 => _263(newChecked)]);
|
|
13603
13908
|
};
|
|
13604
13909
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13605
13910
|
SwitchPrimitives.Root,
|
|
@@ -13675,7 +13980,7 @@ function TagsInput({
|
|
|
13675
13980
|
badgeClassName,
|
|
13676
13981
|
label
|
|
13677
13982
|
}) {
|
|
13678
|
-
const [inputValue, setInputValue] =
|
|
13983
|
+
const [inputValue, setInputValue] = React49.useState("");
|
|
13679
13984
|
const handleAddTag = () => {
|
|
13680
13985
|
const trimmedValue = inputValue.trim();
|
|
13681
13986
|
if (!trimmedValue) return;
|
|
@@ -13781,19 +14086,19 @@ function TagsManager({
|
|
|
13781
14086
|
disabled = false,
|
|
13782
14087
|
className
|
|
13783
14088
|
}) {
|
|
13784
|
-
const [open, setOpen] =
|
|
13785
|
-
const [search, setSearch] =
|
|
13786
|
-
const [editingId, setEditingId] =
|
|
13787
|
-
const [editingName, setEditingName] =
|
|
13788
|
-
const editInputRef =
|
|
13789
|
-
const inputRef =
|
|
13790
|
-
const containerRef =
|
|
14089
|
+
const [open, setOpen] = React50.useState(false);
|
|
14090
|
+
const [search, setSearch] = React50.useState("");
|
|
14091
|
+
const [editingId, setEditingId] = React50.useState(null);
|
|
14092
|
+
const [editingName, setEditingName] = React50.useState("");
|
|
14093
|
+
const editInputRef = React50.useRef(null);
|
|
14094
|
+
const inputRef = React50.useRef(null);
|
|
14095
|
+
const containerRef = React50.useRef(null);
|
|
13791
14096
|
const selectedTags = tags.filter((t) => selectedIds.includes(t.id));
|
|
13792
14097
|
const filtered = tags.filter(
|
|
13793
14098
|
(t) => t.name.toLowerCase().includes(search.toLowerCase())
|
|
13794
14099
|
);
|
|
13795
14100
|
const showCreateOption = onCreateTag && search.trim() && !tags.some((t) => t.name.toLowerCase() === search.trim().toLowerCase());
|
|
13796
|
-
const toggleTag =
|
|
14101
|
+
const toggleTag = React50.useCallback(
|
|
13797
14102
|
(id) => {
|
|
13798
14103
|
if (selectedIds.includes(id)) {
|
|
13799
14104
|
onChange(selectedIds.filter((i) => i !== id));
|
|
@@ -13803,32 +14108,32 @@ function TagsManager({
|
|
|
13803
14108
|
},
|
|
13804
14109
|
[selectedIds, onChange]
|
|
13805
14110
|
);
|
|
13806
|
-
const handleCreate =
|
|
14111
|
+
const handleCreate = React50.useCallback(async () => {
|
|
13807
14112
|
if (!onCreateTag) return;
|
|
13808
14113
|
const name = search.trim();
|
|
13809
14114
|
if (!name) return;
|
|
13810
14115
|
const result = await onCreateTag(name);
|
|
13811
|
-
if (_optionalChain([result, 'optionalAccess',
|
|
14116
|
+
if (_optionalChain([result, 'optionalAccess', _264 => _264.id])) {
|
|
13812
14117
|
onChange([...selectedIds, result.id]);
|
|
13813
14118
|
setSearch("");
|
|
13814
14119
|
}
|
|
13815
14120
|
}, [search, onCreateTag, selectedIds, onChange]);
|
|
13816
|
-
const startEdit =
|
|
14121
|
+
const startEdit = React50.useCallback((id, name) => {
|
|
13817
14122
|
setEditingId(id);
|
|
13818
14123
|
setEditingName(name);
|
|
13819
|
-
setTimeout(() => _optionalChain([editInputRef, 'access',
|
|
14124
|
+
setTimeout(() => _optionalChain([editInputRef, 'access', _265 => _265.current, 'optionalAccess', _266 => _266.focus, 'call', _267 => _267()]), 0);
|
|
13820
14125
|
}, []);
|
|
13821
|
-
const confirmEdit =
|
|
14126
|
+
const confirmEdit = React50.useCallback(async () => {
|
|
13822
14127
|
if (!onUpdateTag || !editingId || !editingName.trim()) return;
|
|
13823
14128
|
await onUpdateTag(editingId, editingName.trim());
|
|
13824
14129
|
setEditingId(null);
|
|
13825
14130
|
setEditingName("");
|
|
13826
14131
|
}, [editingId, editingName, onUpdateTag]);
|
|
13827
|
-
const cancelEdit =
|
|
14132
|
+
const cancelEdit = React50.useCallback(() => {
|
|
13828
14133
|
setEditingId(null);
|
|
13829
14134
|
setEditingName("");
|
|
13830
14135
|
}, []);
|
|
13831
|
-
const handleDelete =
|
|
14136
|
+
const handleDelete = React50.useCallback(
|
|
13832
14137
|
async (id) => {
|
|
13833
14138
|
if (!onDeleteTag) return;
|
|
13834
14139
|
await onDeleteTag(id);
|
|
@@ -13838,17 +14143,17 @@ function TagsManager({
|
|
|
13838
14143
|
},
|
|
13839
14144
|
[onDeleteTag, selectedIds, onChange]
|
|
13840
14145
|
);
|
|
13841
|
-
const handleClearAll =
|
|
14146
|
+
const handleClearAll = React50.useCallback(
|
|
13842
14147
|
(e) => {
|
|
13843
14148
|
e.stopPropagation();
|
|
13844
14149
|
onChange([]);
|
|
13845
14150
|
setSearch("");
|
|
13846
|
-
_optionalChain([inputRef, 'access',
|
|
14151
|
+
_optionalChain([inputRef, 'access', _268 => _268.current, 'optionalAccess', _269 => _269.focus, 'call', _270 => _270()]);
|
|
13847
14152
|
},
|
|
13848
14153
|
[onChange]
|
|
13849
14154
|
);
|
|
13850
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.FieldWrapper, { label, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative", ref: containerRef, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13851
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14155
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.FieldWrapper, { label, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "relative", ref: containerRef, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive3.Root, { open, onOpenChange: setOpen, children: [
|
|
14156
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive3.Anchor, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
13852
14157
|
"label",
|
|
13853
14158
|
{
|
|
13854
14159
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -13928,7 +14233,7 @@ function TagsManager({
|
|
|
13928
14233
|
}
|
|
13929
14234
|
) }),
|
|
13930
14235
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13931
|
-
|
|
14236
|
+
PopoverPrimitive3.Content,
|
|
13932
14237
|
{
|
|
13933
14238
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
13934
14239
|
"z-50 w-[var(--radix-popover-trigger-width)] mt-1",
|
|
@@ -13942,10 +14247,10 @@ function TagsManager({
|
|
|
13942
14247
|
align: "start",
|
|
13943
14248
|
onOpenAutoFocus: (e) => {
|
|
13944
14249
|
e.preventDefault();
|
|
13945
|
-
_optionalChain([inputRef, 'access',
|
|
14250
|
+
_optionalChain([inputRef, 'access', _271 => _271.current, 'optionalAccess', _272 => _272.focus, 'call', _273 => _273()]);
|
|
13946
14251
|
},
|
|
13947
14252
|
onInteractOutside: (e) => {
|
|
13948
|
-
if (_optionalChain([containerRef, 'access',
|
|
14253
|
+
if (_optionalChain([containerRef, 'access', _274 => _274.current, 'optionalAccess', _275 => _275.contains, 'call', _276 => _276(e.target)])) {
|
|
13949
14254
|
e.preventDefault();
|
|
13950
14255
|
}
|
|
13951
14256
|
},
|
|
@@ -14134,11 +14439,11 @@ function TagsManager({
|
|
|
14134
14439
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
14135
14440
|
|
|
14136
14441
|
|
|
14137
|
-
var Textarea =
|
|
14442
|
+
var Textarea = React51.forwardRef(
|
|
14138
14443
|
({ className, invalid = false, label, error, endIcon, endIconAsButton = false, endIconButtonProps, startIcon, hideBorder = false, ...props }, ref) => {
|
|
14139
14444
|
const isInvalid = invalid || !!error;
|
|
14140
14445
|
const hasAdornment = !!endIcon || !!startIcon;
|
|
14141
|
-
const reactId =
|
|
14446
|
+
const reactId = React51.useId();
|
|
14142
14447
|
const fieldId = _nullishCoalesce(props.id, () => ( reactId));
|
|
14143
14448
|
if (!hasAdornment) {
|
|
14144
14449
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.FieldWrapper, { label, error, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -14230,7 +14535,7 @@ var Textarea = React50.forwardRef(
|
|
|
14230
14535
|
"button",
|
|
14231
14536
|
{
|
|
14232
14537
|
type: "button",
|
|
14233
|
-
"aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess',
|
|
14538
|
+
"aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess', _277 => _277["aria-label"]]), () => ( "Submit")),
|
|
14234
14539
|
...endIconButtonProps,
|
|
14235
14540
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
14236
14541
|
// `h-6` matches the textarea's `leading-6` line box so the icon's
|
|
@@ -14244,7 +14549,7 @@ var Textarea = React50.forwardRef(
|
|
|
14244
14549
|
"cursor-pointer hover:text-ods-text-primary",
|
|
14245
14550
|
"focus-visible:outline-none focus-visible:text-ods-accent",
|
|
14246
14551
|
"disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:text-ods-text-secondary",
|
|
14247
|
-
_optionalChain([endIconButtonProps, 'optionalAccess',
|
|
14552
|
+
_optionalChain([endIconButtonProps, 'optionalAccess', _278 => _278.className])
|
|
14248
14553
|
),
|
|
14249
14554
|
children: endIcon
|
|
14250
14555
|
}
|
|
@@ -14277,7 +14582,7 @@ var _reactalertdialog = require('@radix-ui/react-alert-dialog'); var AlertDialog
|
|
|
14277
14582
|
var AlertDialog = AlertDialogPrimitive.Root;
|
|
14278
14583
|
var AlertDialogTrigger = AlertDialogPrimitive.Trigger;
|
|
14279
14584
|
var AlertDialogPortal = AlertDialogPrimitive.Portal;
|
|
14280
|
-
var AlertDialogOverlay =
|
|
14585
|
+
var AlertDialogOverlay = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14281
14586
|
AlertDialogPrimitive.Overlay,
|
|
14282
14587
|
{
|
|
14283
14588
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -14289,7 +14594,7 @@ var AlertDialogOverlay = React51.forwardRef(({ className, ...props }, ref) => /*
|
|
|
14289
14594
|
}
|
|
14290
14595
|
));
|
|
14291
14596
|
AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
|
|
14292
|
-
var AlertDialogContent =
|
|
14597
|
+
var AlertDialogContent = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, AlertDialogPortal, { children: [
|
|
14293
14598
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, AlertDialogOverlay, {}),
|
|
14294
14599
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14295
14600
|
AlertDialogPrimitive.Content,
|
|
@@ -14332,7 +14637,7 @@ var AlertDialogFooter = ({
|
|
|
14332
14637
|
}
|
|
14333
14638
|
);
|
|
14334
14639
|
AlertDialogFooter.displayName = "AlertDialogFooter";
|
|
14335
|
-
var AlertDialogTitle =
|
|
14640
|
+
var AlertDialogTitle = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14336
14641
|
AlertDialogPrimitive.Title,
|
|
14337
14642
|
{
|
|
14338
14643
|
ref,
|
|
@@ -14341,7 +14646,7 @@ var AlertDialogTitle = React51.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
14341
14646
|
}
|
|
14342
14647
|
));
|
|
14343
14648
|
AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
|
|
14344
|
-
var AlertDialogDescription =
|
|
14649
|
+
var AlertDialogDescription = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14345
14650
|
AlertDialogPrimitive.Description,
|
|
14346
14651
|
{
|
|
14347
14652
|
ref,
|
|
@@ -14350,7 +14655,7 @@ var AlertDialogDescription = React51.forwardRef(({ className, ...props }, ref) =
|
|
|
14350
14655
|
}
|
|
14351
14656
|
));
|
|
14352
14657
|
AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
|
|
14353
|
-
var AlertDialogAction =
|
|
14658
|
+
var AlertDialogAction = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14354
14659
|
AlertDialogPrimitive.Action,
|
|
14355
14660
|
{
|
|
14356
14661
|
ref,
|
|
@@ -14359,7 +14664,7 @@ var AlertDialogAction = React51.forwardRef(({ className, ...props }, ref) => /*
|
|
|
14359
14664
|
}
|
|
14360
14665
|
));
|
|
14361
14666
|
AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
|
|
14362
|
-
var AlertDialogCancel =
|
|
14667
|
+
var AlertDialogCancel = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14363
14668
|
AlertDialogPrimitive.Cancel,
|
|
14364
14669
|
{
|
|
14365
14670
|
ref,
|
|
@@ -14387,7 +14692,7 @@ var Dialog = DialogPrimitive.Root;
|
|
|
14387
14692
|
var DialogTrigger = DialogPrimitive.Trigger;
|
|
14388
14693
|
var DialogPortal = DialogPrimitive.Portal;
|
|
14389
14694
|
var DialogClose = DialogPrimitive.Close;
|
|
14390
|
-
var DialogOverlay =
|
|
14695
|
+
var DialogOverlay = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14391
14696
|
DialogPrimitive.Overlay,
|
|
14392
14697
|
{
|
|
14393
14698
|
ref,
|
|
@@ -14399,7 +14704,7 @@ var DialogOverlay = React52.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
14399
14704
|
}
|
|
14400
14705
|
));
|
|
14401
14706
|
DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
|
|
14402
|
-
var DialogContent =
|
|
14707
|
+
var DialogContent = React53.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, DialogPortal, { children: [
|
|
14403
14708
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogOverlay, {}),
|
|
14404
14709
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14405
14710
|
DialogPrimitive.Content,
|
|
@@ -14425,7 +14730,7 @@ var DialogHeader = ({ className, ...props }) => /* @__PURE__ */ _jsxruntime.jsx.
|
|
|
14425
14730
|
DialogHeader.displayName = "DialogHeader";
|
|
14426
14731
|
var DialogFooter = ({ className, ...props }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col-reverse md:flex-row md:justify-end md:space-x-2", className), ...props });
|
|
14427
14732
|
DialogFooter.displayName = "DialogFooter";
|
|
14428
|
-
var DialogTitle =
|
|
14733
|
+
var DialogTitle = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14429
14734
|
DialogPrimitive.Title,
|
|
14430
14735
|
{
|
|
14431
14736
|
ref,
|
|
@@ -14434,7 +14739,7 @@ var DialogTitle = React52.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
14434
14739
|
}
|
|
14435
14740
|
));
|
|
14436
14741
|
DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
14437
|
-
var DialogDescription =
|
|
14742
|
+
var DialogDescription = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive.Description, { ref, className: _chunkFIG2RKZFcjs.cn.call(void 0, "text-sm text-muted-foreground", className), ...props }));
|
|
14438
14743
|
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
14439
14744
|
|
|
14440
14745
|
// src/components/ui/modal.tsx
|
|
@@ -14442,7 +14747,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
14442
14747
|
|
|
14443
14748
|
|
|
14444
14749
|
|
|
14445
|
-
var Modal2 =
|
|
14750
|
+
var Modal2 = React54.forwardRef(
|
|
14446
14751
|
({ isOpen, onClose, children, className }, ref) => {
|
|
14447
14752
|
_react.useEffect.call(void 0, () => {
|
|
14448
14753
|
const handleKeyDown = (event) => {
|
|
@@ -14486,11 +14791,11 @@ var Modal2 = React53.forwardRef(
|
|
|
14486
14791
|
}
|
|
14487
14792
|
);
|
|
14488
14793
|
Modal2.displayName = "Modal";
|
|
14489
|
-
var ModalContent2 =
|
|
14794
|
+
var ModalContent2 = React54.forwardRef(
|
|
14490
14795
|
({ children, className }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: _chunkFIG2RKZFcjs.cn.call(void 0, "overflow-y-auto min-h-0 flex-1", className), children })
|
|
14491
14796
|
);
|
|
14492
14797
|
ModalContent2.displayName = "ModalContent";
|
|
14493
|
-
var ModalHeader2 =
|
|
14798
|
+
var ModalHeader2 = React54.forwardRef(
|
|
14494
14799
|
({ children, className }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14495
14800
|
"div",
|
|
14496
14801
|
{
|
|
@@ -14501,7 +14806,7 @@ var ModalHeader2 = React53.forwardRef(
|
|
|
14501
14806
|
)
|
|
14502
14807
|
);
|
|
14503
14808
|
ModalHeader2.displayName = "ModalHeader";
|
|
14504
|
-
var ModalTitle2 =
|
|
14809
|
+
var ModalTitle2 = React54.forwardRef(
|
|
14505
14810
|
({ children, className }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14506
14811
|
"h2",
|
|
14507
14812
|
{
|
|
@@ -14512,7 +14817,7 @@ var ModalTitle2 = React53.forwardRef(
|
|
|
14512
14817
|
)
|
|
14513
14818
|
);
|
|
14514
14819
|
ModalTitle2.displayName = "ModalTitle";
|
|
14515
|
-
var ModalFooter2 =
|
|
14820
|
+
var ModalFooter2 = React54.forwardRef(
|
|
14516
14821
|
({ children, className }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14517
14822
|
"div",
|
|
14518
14823
|
{
|
|
@@ -14529,7 +14834,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
14529
14834
|
|
|
14530
14835
|
var _reactseparator = require('@radix-ui/react-separator'); var SeparatorPrimitive = _interopRequireWildcard(_reactseparator);
|
|
14531
14836
|
|
|
14532
|
-
var Separator2 =
|
|
14837
|
+
var Separator2 = React55.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14533
14838
|
SeparatorPrimitive.Root,
|
|
14534
14839
|
{
|
|
14535
14840
|
ref,
|
|
@@ -14552,7 +14857,7 @@ var Sheet = SheetPrimitive.Root;
|
|
|
14552
14857
|
var SheetTrigger = SheetPrimitive.Trigger;
|
|
14553
14858
|
var SheetClose = SheetPrimitive.Close;
|
|
14554
14859
|
var SheetPortal = SheetPrimitive.Portal;
|
|
14555
|
-
var SheetOverlay =
|
|
14860
|
+
var SheetOverlay = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14556
14861
|
SheetPrimitive.Overlay,
|
|
14557
14862
|
{
|
|
14558
14863
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -14580,7 +14885,7 @@ var sheetVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
14580
14885
|
}
|
|
14581
14886
|
}
|
|
14582
14887
|
);
|
|
14583
|
-
var SheetContent =
|
|
14888
|
+
var SheetContent = React56.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, SheetPortal, { children: [
|
|
14584
14889
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, SheetOverlay, {}),
|
|
14585
14890
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
14586
14891
|
SheetPrimitive.Content,
|
|
@@ -14627,7 +14932,7 @@ var SheetFooter = ({
|
|
|
14627
14932
|
}
|
|
14628
14933
|
);
|
|
14629
14934
|
SheetFooter.displayName = "SheetFooter";
|
|
14630
|
-
var SheetTitle =
|
|
14935
|
+
var SheetTitle = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14631
14936
|
SheetPrimitive.Title,
|
|
14632
14937
|
{
|
|
14633
14938
|
ref,
|
|
@@ -14636,7 +14941,7 @@ var SheetTitle = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
14636
14941
|
}
|
|
14637
14942
|
));
|
|
14638
14943
|
SheetTitle.displayName = SheetPrimitive.Title.displayName;
|
|
14639
|
-
var SheetDescription =
|
|
14944
|
+
var SheetDescription = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14640
14945
|
SheetPrimitive.Description,
|
|
14641
14946
|
{
|
|
14642
14947
|
ref,
|
|
@@ -14657,7 +14962,7 @@ var Drawer = DialogPrimitive2.Root;
|
|
|
14657
14962
|
var DrawerTrigger = DialogPrimitive2.Trigger;
|
|
14658
14963
|
var DrawerClose = DialogPrimitive2.Close;
|
|
14659
14964
|
var DrawerPortal = DialogPrimitive2.Portal;
|
|
14660
|
-
var DrawerOverlay =
|
|
14965
|
+
var DrawerOverlay = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14661
14966
|
DialogPrimitive2.Overlay,
|
|
14662
14967
|
{
|
|
14663
14968
|
ref,
|
|
@@ -14753,7 +15058,7 @@ function useResizableSize({
|
|
|
14753
15058
|
defaultSize,
|
|
14754
15059
|
storageKey
|
|
14755
15060
|
}) {
|
|
14756
|
-
const clampToViewport =
|
|
15061
|
+
const clampToViewport = React57.useCallback(
|
|
14757
15062
|
(value) => {
|
|
14758
15063
|
const vp = viewportSize(isHorizontal);
|
|
14759
15064
|
const effectiveMax = vp > 0 ? Math.min(maxSize, vp - 80) : maxSize;
|
|
@@ -14761,7 +15066,7 @@ function useResizableSize({
|
|
|
14761
15066
|
},
|
|
14762
15067
|
[isHorizontal, minSize, maxSize]
|
|
14763
15068
|
);
|
|
14764
|
-
const readInitial =
|
|
15069
|
+
const readInitial = React57.useCallback(() => {
|
|
14765
15070
|
if (!enabled) return defaultSize;
|
|
14766
15071
|
if (typeof window === "undefined") return defaultSize;
|
|
14767
15072
|
if (!storageKey) return clampToViewport(defaultSize);
|
|
@@ -14775,19 +15080,19 @@ function useResizableSize({
|
|
|
14775
15080
|
return clampToViewport(defaultSize);
|
|
14776
15081
|
}
|
|
14777
15082
|
}, [enabled, storageKey, defaultSize, clampToViewport]);
|
|
14778
|
-
const [size, setSizeRaw] =
|
|
14779
|
-
const setSize =
|
|
15083
|
+
const [size, setSizeRaw] = React57.useState(readInitial);
|
|
15084
|
+
const setSize = React57.useCallback(
|
|
14780
15085
|
(next) => setSizeRaw(clampToViewport(next)),
|
|
14781
15086
|
[clampToViewport]
|
|
14782
15087
|
);
|
|
14783
|
-
|
|
15088
|
+
React57.useEffect(() => {
|
|
14784
15089
|
if (!enabled || !storageKey || typeof window === "undefined") return;
|
|
14785
15090
|
try {
|
|
14786
15091
|
window.localStorage.setItem(storageKey, String(Math.round(size)));
|
|
14787
15092
|
} catch (e17) {
|
|
14788
15093
|
}
|
|
14789
15094
|
}, [enabled, size, storageKey]);
|
|
14790
|
-
|
|
15095
|
+
React57.useEffect(() => {
|
|
14791
15096
|
if (!enabled || typeof window === "undefined") return;
|
|
14792
15097
|
const onResize = () => setSizeRaw((prev) => clampToViewport(prev));
|
|
14793
15098
|
window.addEventListener("resize", onResize);
|
|
@@ -14804,7 +15109,7 @@ function DrawerResizeHandle({
|
|
|
14804
15109
|
ariaLabel
|
|
14805
15110
|
}) {
|
|
14806
15111
|
const isHorizontal = HORIZONTAL_SIDES.has(side);
|
|
14807
|
-
const startRef =
|
|
15112
|
+
const startRef = React57.useRef(
|
|
14808
15113
|
null
|
|
14809
15114
|
);
|
|
14810
15115
|
const direction = side === "right" || side === "bottom" ? -1 : 1;
|
|
@@ -14896,7 +15201,7 @@ function DrawerResizeHandle({
|
|
|
14896
15201
|
}
|
|
14897
15202
|
);
|
|
14898
15203
|
}
|
|
14899
|
-
var DrawerContent =
|
|
15204
|
+
var DrawerContent = React57.forwardRef(
|
|
14900
15205
|
({
|
|
14901
15206
|
side = "right",
|
|
14902
15207
|
flush = false,
|
|
@@ -14920,8 +15225,8 @@ var DrawerContent = React56.forwardRef(
|
|
|
14920
15225
|
const isHorizontal = HORIZONTAL_SIDES.has(resolvedSide);
|
|
14921
15226
|
const initialSize = _nullishCoalesce(defaultSize, () => ( (isHorizontal ? 560 : 480)));
|
|
14922
15227
|
const headerHeight = _chunk27IO7V3Pcjs.useHeaderHeight.call(void 0, );
|
|
14923
|
-
const [isMobile, setIsMobile] =
|
|
14924
|
-
|
|
15228
|
+
const [isMobile, setIsMobile] = React57.useState(false);
|
|
15229
|
+
React57.useEffect(() => {
|
|
14925
15230
|
if (typeof window === "undefined") return;
|
|
14926
15231
|
const mq = window.matchMedia(`(max-width: ${mobileBreakpoint - 1}px)`);
|
|
14927
15232
|
const update = () => setIsMobile(mq.matches);
|
|
@@ -14992,7 +15297,7 @@ var DrawerHeader = ({
|
|
|
14992
15297
|
}
|
|
14993
15298
|
);
|
|
14994
15299
|
DrawerHeader.displayName = "DrawerHeader";
|
|
14995
|
-
var DrawerTitle =
|
|
15300
|
+
var DrawerTitle = React57.forwardRef(({ className, children, actions, hideClose, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-4", children: [
|
|
14996
15301
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
14997
15302
|
DialogPrimitive2.Title,
|
|
14998
15303
|
{
|
|
@@ -15012,7 +15317,7 @@ var DrawerTitle = React56.forwardRef(({ className, children, actions, hideClose,
|
|
|
15012
15317
|
] })
|
|
15013
15318
|
] }));
|
|
15014
15319
|
DrawerTitle.displayName = "DrawerTitle";
|
|
15015
|
-
var DrawerDescription =
|
|
15320
|
+
var DrawerDescription = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15016
15321
|
DialogPrimitive2.Description,
|
|
15017
15322
|
{
|
|
15018
15323
|
ref,
|
|
@@ -15054,9 +15359,9 @@ var _reactaccordion = require('@radix-ui/react-accordion'); var AccordionPrimiti
|
|
|
15054
15359
|
|
|
15055
15360
|
|
|
15056
15361
|
var Accordion = AccordionPrimitive.Root;
|
|
15057
|
-
var AccordionItem =
|
|
15362
|
+
var AccordionItem = React58.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AccordionPrimitive.Item, { ref, className: _chunkFIG2RKZFcjs.cn.call(void 0, "border-b", className), ...props }));
|
|
15058
15363
|
AccordionItem.displayName = "AccordionItem";
|
|
15059
|
-
var AccordionTrigger =
|
|
15364
|
+
var AccordionTrigger = React58.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15060
15365
|
AccordionPrimitive.Trigger,
|
|
15061
15366
|
{
|
|
15062
15367
|
ref,
|
|
@@ -15072,7 +15377,7 @@ var AccordionTrigger = React57.forwardRef(({ className, children, ...props }, re
|
|
|
15072
15377
|
}
|
|
15073
15378
|
) }));
|
|
15074
15379
|
AccordionTrigger.displayName = "AccordionTrigger";
|
|
15075
|
-
var AccordionContent =
|
|
15380
|
+
var AccordionContent = React58.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15076
15381
|
AccordionPrimitive.Content,
|
|
15077
15382
|
{
|
|
15078
15383
|
ref,
|
|
@@ -15092,9 +15397,9 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
15092
15397
|
var _reactslot = require('@radix-ui/react-slot');
|
|
15093
15398
|
|
|
15094
15399
|
|
|
15095
|
-
var Breadcrumb =
|
|
15400
|
+
var Breadcrumb = React59.forwardRef(({ ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { ref, "aria-label": "breadcrumb", ...props }));
|
|
15096
15401
|
Breadcrumb.displayName = "Breadcrumb";
|
|
15097
|
-
var BreadcrumbList =
|
|
15402
|
+
var BreadcrumbList = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15098
15403
|
"ol",
|
|
15099
15404
|
{
|
|
15100
15405
|
ref,
|
|
@@ -15106,7 +15411,7 @@ var BreadcrumbList = React58.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
15106
15411
|
}
|
|
15107
15412
|
));
|
|
15108
15413
|
BreadcrumbList.displayName = "BreadcrumbList";
|
|
15109
|
-
var BreadcrumbItem =
|
|
15414
|
+
var BreadcrumbItem = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15110
15415
|
"li",
|
|
15111
15416
|
{
|
|
15112
15417
|
ref,
|
|
@@ -15115,7 +15420,7 @@ var BreadcrumbItem = React58.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
15115
15420
|
}
|
|
15116
15421
|
));
|
|
15117
15422
|
BreadcrumbItem.displayName = "BreadcrumbItem";
|
|
15118
|
-
var BreadcrumbLink =
|
|
15423
|
+
var BreadcrumbLink = React59.forwardRef(({ asChild, className, ...props }, ref) => {
|
|
15119
15424
|
const Comp = asChild ? _reactslot.Slot : "a";
|
|
15120
15425
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15121
15426
|
Comp,
|
|
@@ -15127,7 +15432,7 @@ var BreadcrumbLink = React58.forwardRef(({ asChild, className, ...props }, ref)
|
|
|
15127
15432
|
);
|
|
15128
15433
|
});
|
|
15129
15434
|
BreadcrumbLink.displayName = "BreadcrumbLink";
|
|
15130
|
-
var BreadcrumbPage =
|
|
15435
|
+
var BreadcrumbPage = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15131
15436
|
"span",
|
|
15132
15437
|
{
|
|
15133
15438
|
ref,
|
|
@@ -15183,7 +15488,7 @@ var MenubarGroup = MenubarPrimitive.Group;
|
|
|
15183
15488
|
var MenubarPortal = MenubarPrimitive.Portal;
|
|
15184
15489
|
var MenubarSub = MenubarPrimitive.Sub;
|
|
15185
15490
|
var MenubarRadioGroup = MenubarPrimitive.RadioGroup;
|
|
15186
|
-
var Menubar =
|
|
15491
|
+
var Menubar = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15187
15492
|
MenubarPrimitive.Root,
|
|
15188
15493
|
{
|
|
15189
15494
|
ref,
|
|
@@ -15195,7 +15500,7 @@ var Menubar = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__
|
|
|
15195
15500
|
}
|
|
15196
15501
|
));
|
|
15197
15502
|
Menubar.displayName = MenubarPrimitive.Root.displayName;
|
|
15198
|
-
var MenubarTrigger =
|
|
15503
|
+
var MenubarTrigger = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15199
15504
|
MenubarPrimitive.Trigger,
|
|
15200
15505
|
{
|
|
15201
15506
|
ref,
|
|
@@ -15207,7 +15512,7 @@ var MenubarTrigger = React59.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
15207
15512
|
}
|
|
15208
15513
|
));
|
|
15209
15514
|
MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;
|
|
15210
|
-
var MenubarSubTrigger =
|
|
15515
|
+
var MenubarSubTrigger = React60.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15211
15516
|
MenubarPrimitive.SubTrigger,
|
|
15212
15517
|
{
|
|
15213
15518
|
ref,
|
|
@@ -15224,7 +15529,7 @@ var MenubarSubTrigger = React59.forwardRef(({ className, inset, children, ...pro
|
|
|
15224
15529
|
}
|
|
15225
15530
|
));
|
|
15226
15531
|
MenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;
|
|
15227
|
-
var MenubarSubContent =
|
|
15532
|
+
var MenubarSubContent = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15228
15533
|
MenubarPrimitive.SubContent,
|
|
15229
15534
|
{
|
|
15230
15535
|
ref,
|
|
@@ -15236,7 +15541,7 @@ var MenubarSubContent = React59.forwardRef(({ className, ...props }, ref) => /*
|
|
|
15236
15541
|
}
|
|
15237
15542
|
));
|
|
15238
15543
|
MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
|
|
15239
|
-
var MenubarContent =
|
|
15544
|
+
var MenubarContent = React60.forwardRef(
|
|
15240
15545
|
({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MenubarPrimitive.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15241
15546
|
MenubarPrimitive.Content,
|
|
15242
15547
|
{
|
|
@@ -15253,7 +15558,7 @@ var MenubarContent = React59.forwardRef(
|
|
|
15253
15558
|
) })
|
|
15254
15559
|
);
|
|
15255
15560
|
MenubarContent.displayName = MenubarPrimitive.Content.displayName;
|
|
15256
|
-
var MenubarItem =
|
|
15561
|
+
var MenubarItem = React60.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15257
15562
|
MenubarPrimitive.Item,
|
|
15258
15563
|
{
|
|
15259
15564
|
ref,
|
|
@@ -15266,7 +15571,7 @@ var MenubarItem = React59.forwardRef(({ className, inset, ...props }, ref) => /*
|
|
|
15266
15571
|
}
|
|
15267
15572
|
));
|
|
15268
15573
|
MenubarItem.displayName = MenubarPrimitive.Item.displayName;
|
|
15269
|
-
var MenubarCheckboxItem =
|
|
15574
|
+
var MenubarCheckboxItem = React60.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15270
15575
|
MenubarPrimitive.CheckboxItem,
|
|
15271
15576
|
{
|
|
15272
15577
|
ref,
|
|
@@ -15283,7 +15588,7 @@ var MenubarCheckboxItem = React59.forwardRef(({ className, children, checked, ..
|
|
|
15283
15588
|
}
|
|
15284
15589
|
));
|
|
15285
15590
|
MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
|
|
15286
|
-
var MenubarRadioItem =
|
|
15591
|
+
var MenubarRadioItem = React60.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15287
15592
|
MenubarPrimitive.RadioItem,
|
|
15288
15593
|
{
|
|
15289
15594
|
ref,
|
|
@@ -15299,7 +15604,7 @@ var MenubarRadioItem = React59.forwardRef(({ className, children, ...props }, re
|
|
|
15299
15604
|
}
|
|
15300
15605
|
));
|
|
15301
15606
|
MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;
|
|
15302
|
-
var MenubarLabel =
|
|
15607
|
+
var MenubarLabel = React60.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15303
15608
|
MenubarPrimitive.Label,
|
|
15304
15609
|
{
|
|
15305
15610
|
ref,
|
|
@@ -15312,7 +15617,7 @@ var MenubarLabel = React59.forwardRef(({ className, inset, ...props }, ref) => /
|
|
|
15312
15617
|
}
|
|
15313
15618
|
));
|
|
15314
15619
|
MenubarLabel.displayName = MenubarPrimitive.Label.displayName;
|
|
15315
|
-
var MenubarSeparator =
|
|
15620
|
+
var MenubarSeparator = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15316
15621
|
MenubarPrimitive.Separator,
|
|
15317
15622
|
{
|
|
15318
15623
|
ref,
|
|
@@ -15345,7 +15650,7 @@ var _reactnavigationmenu = require('@radix-ui/react-navigation-menu'); var Navig
|
|
|
15345
15650
|
|
|
15346
15651
|
|
|
15347
15652
|
|
|
15348
|
-
var NavigationMenu =
|
|
15653
|
+
var NavigationMenu = React61.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15349
15654
|
NavigationMenuPrimitive.Root,
|
|
15350
15655
|
{
|
|
15351
15656
|
ref,
|
|
@@ -15361,7 +15666,7 @@ var NavigationMenu = React60.forwardRef(({ className, children, ...props }, ref)
|
|
|
15361
15666
|
}
|
|
15362
15667
|
));
|
|
15363
15668
|
NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
|
|
15364
|
-
var NavigationMenuList =
|
|
15669
|
+
var NavigationMenuList = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15365
15670
|
NavigationMenuPrimitive.List,
|
|
15366
15671
|
{
|
|
15367
15672
|
ref,
|
|
@@ -15377,7 +15682,7 @@ var NavigationMenuItem = NavigationMenuPrimitive.Item;
|
|
|
15377
15682
|
var navigationMenuTriggerStyle = _classvarianceauthority.cva.call(void 0,
|
|
15378
15683
|
"group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"
|
|
15379
15684
|
);
|
|
15380
|
-
var NavigationMenuTrigger =
|
|
15685
|
+
var NavigationMenuTrigger = React61.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
15381
15686
|
NavigationMenuPrimitive.Trigger,
|
|
15382
15687
|
{
|
|
15383
15688
|
ref,
|
|
@@ -15397,7 +15702,7 @@ var NavigationMenuTrigger = React60.forwardRef(({ className, children, ...props
|
|
|
15397
15702
|
}
|
|
15398
15703
|
));
|
|
15399
15704
|
NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
|
|
15400
|
-
var NavigationMenuContent =
|
|
15705
|
+
var NavigationMenuContent = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15401
15706
|
NavigationMenuPrimitive.Content,
|
|
15402
15707
|
{
|
|
15403
15708
|
ref,
|
|
@@ -15410,7 +15715,7 @@ var NavigationMenuContent = React60.forwardRef(({ className, ...props }, ref) =>
|
|
|
15410
15715
|
));
|
|
15411
15716
|
NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
|
|
15412
15717
|
var NavigationMenuLink = NavigationMenuPrimitive.Link;
|
|
15413
|
-
var NavigationMenuViewport =
|
|
15718
|
+
var NavigationMenuViewport = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15414
15719
|
NavigationMenuPrimitive.Viewport,
|
|
15415
15720
|
{
|
|
15416
15721
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -15422,7 +15727,7 @@ var NavigationMenuViewport = React60.forwardRef(({ className, ...props }, ref) =
|
|
|
15422
15727
|
}
|
|
15423
15728
|
) }));
|
|
15424
15729
|
NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
|
|
15425
|
-
var NavigationMenuIndicator =
|
|
15730
|
+
var NavigationMenuIndicator = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15426
15731
|
NavigationMenuPrimitive.Indicator,
|
|
15427
15732
|
{
|
|
15428
15733
|
ref,
|
|
@@ -15481,19 +15786,19 @@ function TabNavigation({
|
|
|
15481
15786
|
const validTabIds = _react.useMemo.call(void 0, () => new Set(tabs.map((t) => t.id)), [tabs]);
|
|
15482
15787
|
const getInitialTab = () => {
|
|
15483
15788
|
if (isUrlSyncEnabled) {
|
|
15484
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
15789
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _279 => _279.get, 'call', _280 => _280(paramName)]) || "";
|
|
15485
15790
|
if (validTabIds.has(fromUrl)) {
|
|
15486
15791
|
return fromUrl;
|
|
15487
15792
|
}
|
|
15488
15793
|
}
|
|
15489
|
-
return defaultTab || _optionalChain([tabs, 'access',
|
|
15794
|
+
return defaultTab || _optionalChain([tabs, 'access', _281 => _281[0], 'optionalAccess', _282 => _282.id]) || "";
|
|
15490
15795
|
};
|
|
15491
15796
|
const [internalActiveTab, setInternalActiveTab] = _react.useState.call(void 0, getInitialTab);
|
|
15492
15797
|
const activeTab = isUrlSyncEnabled ? internalActiveTab : controlledActiveTab || "";
|
|
15493
15798
|
_react.useEffect.call(void 0, () => {
|
|
15494
15799
|
if (!isUrlSyncEnabled) return;
|
|
15495
|
-
const fromUrl = _optionalChain([searchParams, 'optionalAccess',
|
|
15496
|
-
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access',
|
|
15800
|
+
const fromUrl = _optionalChain([searchParams, 'optionalAccess', _283 => _283.get, 'call', _284 => _284(paramName)]) || "";
|
|
15801
|
+
const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access', _285 => _285[0], 'optionalAccess', _286 => _286.id]) || "";
|
|
15497
15802
|
if (nextTab !== internalActiveTab) {
|
|
15498
15803
|
setInternalActiveTab(nextTab);
|
|
15499
15804
|
}
|
|
@@ -15501,13 +15806,13 @@ function TabNavigation({
|
|
|
15501
15806
|
const handleTabChange = (tabId) => {
|
|
15502
15807
|
if (isUrlSyncEnabled) {
|
|
15503
15808
|
setInternalActiveTab(tabId);
|
|
15504
|
-
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess',
|
|
15809
|
+
const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess', _287 => _287.toString, 'call', _288 => _288()]));
|
|
15505
15810
|
params.set(paramName, tabId);
|
|
15506
15811
|
const method = replaceState ? "replace" : "push";
|
|
15507
15812
|
router[method](`${pathname}?${params.toString()}`);
|
|
15508
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
15813
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _289 => _289(tabId)]);
|
|
15509
15814
|
} else {
|
|
15510
|
-
_optionalChain([controlledOnTabChange, 'optionalCall',
|
|
15815
|
+
_optionalChain([controlledOnTabChange, 'optionalCall', _290 => _290(tabId)]);
|
|
15511
15816
|
}
|
|
15512
15817
|
};
|
|
15513
15818
|
const scrollRef = _react.useRef.call(void 0, null);
|
|
@@ -15595,7 +15900,7 @@ function TabNavigation({
|
|
|
15595
15900
|
var getTabById = (tabs, tabId) => tabs.find((tab) => tab.id === tabId);
|
|
15596
15901
|
var getTabComponent = (tabs, tabId) => {
|
|
15597
15902
|
const tab = getTabById(tabs, tabId);
|
|
15598
|
-
return _optionalChain([tab, 'optionalAccess',
|
|
15903
|
+
return _optionalChain([tab, 'optionalAccess', _291 => _291.component]) || null;
|
|
15599
15904
|
};
|
|
15600
15905
|
|
|
15601
15906
|
// src/components/ui/alert.tsx
|
|
@@ -15617,7 +15922,7 @@ var alertVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
15617
15922
|
}
|
|
15618
15923
|
}
|
|
15619
15924
|
);
|
|
15620
|
-
var Alert =
|
|
15925
|
+
var Alert = React63.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15621
15926
|
"div",
|
|
15622
15927
|
{
|
|
15623
15928
|
ref,
|
|
@@ -15627,7 +15932,7 @@ var Alert = React62.forwardRef(({ className, variant, ...props }, ref) => /* @__
|
|
|
15627
15932
|
}
|
|
15628
15933
|
));
|
|
15629
15934
|
Alert.displayName = "Alert";
|
|
15630
|
-
var AlertTitle =
|
|
15935
|
+
var AlertTitle = React63.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15631
15936
|
"h5",
|
|
15632
15937
|
{
|
|
15633
15938
|
ref,
|
|
@@ -15636,7 +15941,7 @@ var AlertTitle = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
15636
15941
|
}
|
|
15637
15942
|
));
|
|
15638
15943
|
AlertTitle.displayName = "AlertTitle";
|
|
15639
|
-
var AlertDescription =
|
|
15944
|
+
var AlertDescription = React63.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15640
15945
|
"div",
|
|
15641
15946
|
{
|
|
15642
15947
|
ref,
|
|
@@ -15651,7 +15956,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
15651
15956
|
|
|
15652
15957
|
var _reactprogress = require('@radix-ui/react-progress'); var ProgressPrimitive = _interopRequireWildcard(_reactprogress);
|
|
15653
15958
|
|
|
15654
|
-
var Progress =
|
|
15959
|
+
var Progress = React64.forwardRef(({ className, value, indicatorClassName, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
15655
15960
|
ProgressPrimitive.Root,
|
|
15656
15961
|
{
|
|
15657
15962
|
ref,
|
|
@@ -15846,13 +16151,13 @@ var SocialEmbedCache = class _SocialEmbedCache {
|
|
|
15846
16151
|
errorData = await response.json();
|
|
15847
16152
|
} catch (e19) {
|
|
15848
16153
|
}
|
|
15849
|
-
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess',
|
|
16154
|
+
if (response.status === 404 && _optionalChain([errorData, 'optionalAccess', _292 => _292.error]) && _optionalChain([errorData, 'optionalAccess', _293 => _293.message])) {
|
|
15850
16155
|
console.log(`\u{1F6AB} [${platformName} Proxy] Content unavailable: ${errorData.message}`);
|
|
15851
16156
|
onError(errorData.message);
|
|
15852
16157
|
onLoading(false);
|
|
15853
16158
|
return;
|
|
15854
16159
|
}
|
|
15855
|
-
if (_optionalChain([errorData, 'optionalAccess',
|
|
16160
|
+
if (_optionalChain([errorData, 'optionalAccess', _294 => _294.error])) {
|
|
15856
16161
|
throw new Error(`Server error: ${errorData.error}`);
|
|
15857
16162
|
}
|
|
15858
16163
|
throw new Error(`Server proxy failed: ${response.status}`);
|
|
@@ -16304,7 +16609,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16304
16609
|
apiEndpoint: redditProxyUrl,
|
|
16305
16610
|
dataValidator: validateRedditData,
|
|
16306
16611
|
onDataUpdate: (data) => {
|
|
16307
|
-
if (_optionalChain([data, 'access',
|
|
16612
|
+
if (_optionalChain([data, 'access', _295 => _295[0], 'optionalAccess', _296 => _296.data, 'optionalAccess', _297 => _297.children, 'optionalAccess', _298 => _298[0], 'optionalAccess', _299 => _299.data])) {
|
|
16308
16613
|
setRedditData(data[0].data.children[0].data);
|
|
16309
16614
|
}
|
|
16310
16615
|
},
|
|
@@ -16375,11 +16680,11 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16375
16680
|
gallery_data: redditData.gallery_data,
|
|
16376
16681
|
media_metadata: redditData.media_metadata
|
|
16377
16682
|
});
|
|
16378
|
-
const video = _optionalChain([redditData, 'access',
|
|
16683
|
+
const video = _optionalChain([redditData, 'access', _300 => _300.media, 'optionalAccess', _301 => _301.reddit_video]) || _optionalChain([redditData, 'access', _302 => _302.secure_media, 'optionalAccess', _303 => _303.reddit_video]);
|
|
16379
16684
|
if (video && video.fallback_url) {
|
|
16380
16685
|
console.log("\u{1F4F9} Found Reddit video:", video);
|
|
16381
16686
|
let posterUrl = "";
|
|
16382
|
-
if (_optionalChain([redditData, 'access',
|
|
16687
|
+
if (_optionalChain([redditData, 'access', _304 => _304.preview, 'optionalAccess', _305 => _305.images, 'optionalAccess', _306 => _306[0], 'optionalAccess', _307 => _307.source, 'optionalAccess', _308 => _308.url])) {
|
|
16383
16688
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
16384
16689
|
console.log("\u2705 Using preview image as video poster:", posterUrl);
|
|
16385
16690
|
} else {
|
|
@@ -16432,7 +16737,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16432
16737
|
return media;
|
|
16433
16738
|
}
|
|
16434
16739
|
}
|
|
16435
|
-
if (_optionalChain([redditData, 'access',
|
|
16740
|
+
if (_optionalChain([redditData, 'access', _309 => _309.preview, 'optionalAccess', _310 => _310.images, 'optionalAccess', _311 => _311[0]]) && !redditData.is_video) {
|
|
16436
16741
|
const imageData = redditData.preview.images[0];
|
|
16437
16742
|
console.log("\u{1F5BC}\uFE0F Found preview image data:", imageData);
|
|
16438
16743
|
let source = imageData.source;
|
|
@@ -16467,7 +16772,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16467
16772
|
} else if (directUrl.match(/\.(mp4|webm|mov|avi)(\?.*)?$/i)) {
|
|
16468
16773
|
console.log("\u{1F3AC} Found direct video URL");
|
|
16469
16774
|
let posterUrl = "";
|
|
16470
|
-
if (_optionalChain([redditData, 'access',
|
|
16775
|
+
if (_optionalChain([redditData, 'access', _312 => _312.preview, 'optionalAccess', _313 => _313.images, 'optionalAccess', _314 => _314[0], 'optionalAccess', _315 => _315.source, 'optionalAccess', _316 => _316.url])) {
|
|
16471
16776
|
posterUrl = redditData.preview.images[0].source.url.replace(/&/g, "&");
|
|
16472
16777
|
}
|
|
16473
16778
|
media.push({
|
|
@@ -16480,7 +16785,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
|
|
|
16480
16785
|
});
|
|
16481
16786
|
} else if (directUrl.includes("imgur.com") && !directUrl.includes(".gifv")) {
|
|
16482
16787
|
console.log("\u{1F310} Found Imgur link");
|
|
16483
|
-
const imgurId = _optionalChain([directUrl, 'access',
|
|
16788
|
+
const imgurId = _optionalChain([directUrl, 'access', _317 => _317.match, 'call', _318 => _318(/imgur\.com\/([a-zA-Z0-9]+)/), 'optionalAccess', _319 => _319[1]]);
|
|
16484
16789
|
if (imgurId && !directUrl.includes("/a/") && !directUrl.includes("/gallery/")) {
|
|
16485
16790
|
media.push({
|
|
16486
16791
|
type: "image",
|
|
@@ -16629,7 +16934,7 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
16629
16934
|
const [loading, setLoading] = _react.useState.call(void 0, true);
|
|
16630
16935
|
const [error, setError] = _react.useState.call(void 0, null);
|
|
16631
16936
|
const initializationDone = _react.useRef.call(void 0, false);
|
|
16632
|
-
const extractedTweetId = tweetId || _optionalChain([url, 'access',
|
|
16937
|
+
const extractedTweetId = tweetId || _optionalChain([url, 'access', _320 => _320.match, 'call', _321 => _321(/status\/(\d+)/), 'optionalAccess', _322 => _322[1]]);
|
|
16633
16938
|
const tweetUrl = url.includes("twitter.com") || url.includes("x.com") ? url : `https://twitter.com/twitter/status/${extractedTweetId}`;
|
|
16634
16939
|
_react.useEffect.call(void 0, () => {
|
|
16635
16940
|
if (initializationDone.current) return;
|
|
@@ -16696,10 +17001,10 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
|
|
|
16696
17001
|
const parser = new DOMParser();
|
|
16697
17002
|
const doc = parser.parseFromString(tweetData.html, "text/html");
|
|
16698
17003
|
const blockquote = doc.querySelector("blockquote");
|
|
16699
|
-
const fullText = _optionalChain([blockquote, 'optionalAccess',
|
|
17004
|
+
const fullText = _optionalChain([blockquote, 'optionalAccess', _323 => _323.textContent]) || "";
|
|
16700
17005
|
const tweetText = fullText.replace(/- .* \(@.*\).*$/, "").trim();
|
|
16701
17006
|
const username = tweetData.author_url ? tweetData.author_url.split("/").pop() : "";
|
|
16702
|
-
const links = Array.from(_optionalChain([blockquote, 'optionalAccess',
|
|
17007
|
+
const links = Array.from(_optionalChain([blockquote, 'optionalAccess', _324 => _324.querySelectorAll, 'call', _325 => _325("a")]) || []).map((link) => ({
|
|
16703
17008
|
url: link.href,
|
|
16704
17009
|
text: link.textContent || link.href
|
|
16705
17010
|
})).filter((link) => !link.url.includes("twitter.com") && !link.url.includes("x.com"));
|
|
@@ -16954,7 +17259,7 @@ var OGLinkPreview = ({
|
|
|
16954
17259
|
const response = await fetch(endpoint);
|
|
16955
17260
|
if (response.ok) {
|
|
16956
17261
|
const data = await response.json();
|
|
16957
|
-
if (_optionalChain([data, 'optionalAccess',
|
|
17262
|
+
if (_optionalChain([data, 'optionalAccess', _326 => _326.title]) && data.title !== "Link Preview Unavailable") {
|
|
16958
17263
|
setOgData(data);
|
|
16959
17264
|
} else {
|
|
16960
17265
|
setError(true);
|
|
@@ -16981,8 +17286,8 @@ var OGLinkPreview = ({
|
|
|
16981
17286
|
type: "website",
|
|
16982
17287
|
favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`
|
|
16983
17288
|
} : null)));
|
|
16984
|
-
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess',
|
|
16985
|
-
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess',
|
|
17289
|
+
const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess', _327 => _327.title]) ? buildPlaceholderUrl(effectiveData.title, effectiveData.siteName || domain) : null;
|
|
17290
|
+
const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess', _328 => _328.image]) && !imageError ? effectiveData.image : _optionalChain([effectiveData, 'optionalAccess', _329 => _329.originalImage]) && !originalImageError ? effectiveData.originalImage : fallbackImage && !fallbackImageError ? fallbackImage : placeholderImageUrl;
|
|
16986
17291
|
const hasImage = !!resolvedImageUrl;
|
|
16987
17292
|
const isFallbackImage = resolvedImageUrl === fallbackImage;
|
|
16988
17293
|
const isPlaceholder = resolvedImageUrl === placeholderImageUrl && !isFallbackImage;
|
|
@@ -17228,9 +17533,9 @@ function toFigmaEmbedUrl(url, opts) {
|
|
|
17228
17533
|
if (match2) {
|
|
17229
17534
|
const [, urlType, fileKey, titleSlug, queryString] = match2;
|
|
17230
17535
|
const isSlides = urlType === "slides" || urlType === "deck";
|
|
17231
|
-
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess',
|
|
17536
|
+
const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess', _330 => _330.slidesView]) === "browse" ? "slides" : "deck" : "design";
|
|
17232
17537
|
const pathSuffix = titleSlug ? `/${titleSlug}` : "";
|
|
17233
|
-
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess',
|
|
17538
|
+
const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess', _331 => _331.replace, 'call', _332 => _332(/^\?/, "")]) || "");
|
|
17234
17539
|
if (!params.has("embed-host")) {
|
|
17235
17540
|
params.set("embed-host", "flamingo");
|
|
17236
17541
|
}
|
|
@@ -17311,7 +17616,7 @@ function EmbedIframe({
|
|
|
17311
17616
|
allow,
|
|
17312
17617
|
referrerPolicy,
|
|
17313
17618
|
loading,
|
|
17314
|
-
allowFullScreen: _optionalChain([allow, 'optionalAccess',
|
|
17619
|
+
allowFullScreen: _optionalChain([allow, 'optionalAccess', _333 => _333.includes, 'call', _334 => _334("fullscreen")]) ? void 0 : allowFullScreen
|
|
17315
17620
|
},
|
|
17316
17621
|
src
|
|
17317
17622
|
)
|
|
@@ -18062,7 +18367,7 @@ var RichMarkdownInner = ({
|
|
|
18062
18367
|
const extractText2 = (node) => {
|
|
18063
18368
|
if (typeof node === "string") return node;
|
|
18064
18369
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18065
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18370
|
+
if (_optionalChain([node, 'optionalAccess', _335 => _335.props, 'optionalAccess', _336 => _336.children])) return extractText2(node.props.children);
|
|
18066
18371
|
return "";
|
|
18067
18372
|
};
|
|
18068
18373
|
const text = extractText2(children);
|
|
@@ -18078,7 +18383,7 @@ var RichMarkdownInner = ({
|
|
|
18078
18383
|
const extractText2 = (node) => {
|
|
18079
18384
|
if (typeof node === "string") return node;
|
|
18080
18385
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18081
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18386
|
+
if (_optionalChain([node, 'optionalAccess', _337 => _337.props, 'optionalAccess', _338 => _338.children])) return extractText2(node.props.children);
|
|
18082
18387
|
return "";
|
|
18083
18388
|
};
|
|
18084
18389
|
const text = extractText2(children);
|
|
@@ -18096,7 +18401,7 @@ var RichMarkdownInner = ({
|
|
|
18096
18401
|
const extractText2 = (node) => {
|
|
18097
18402
|
if (typeof node === "string") return node;
|
|
18098
18403
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18099
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18404
|
+
if (_optionalChain([node, 'optionalAccess', _339 => _339.props, 'optionalAccess', _340 => _340.children])) return extractText2(node.props.children);
|
|
18100
18405
|
return "";
|
|
18101
18406
|
};
|
|
18102
18407
|
const text = extractText2(children);
|
|
@@ -18114,7 +18419,7 @@ var RichMarkdownInner = ({
|
|
|
18114
18419
|
const extractText2 = (node) => {
|
|
18115
18420
|
if (typeof node === "string") return node;
|
|
18116
18421
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18117
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18422
|
+
if (_optionalChain([node, 'optionalAccess', _341 => _341.props, 'optionalAccess', _342 => _342.children])) return extractText2(node.props.children);
|
|
18118
18423
|
return "";
|
|
18119
18424
|
};
|
|
18120
18425
|
const text = extractText2(children);
|
|
@@ -18132,7 +18437,7 @@ var RichMarkdownInner = ({
|
|
|
18132
18437
|
const extractText2 = (node) => {
|
|
18133
18438
|
if (typeof node === "string") return node;
|
|
18134
18439
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18135
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18440
|
+
if (_optionalChain([node, 'optionalAccess', _343 => _343.props, 'optionalAccess', _344 => _344.children])) return extractText2(node.props.children);
|
|
18136
18441
|
return "";
|
|
18137
18442
|
};
|
|
18138
18443
|
const text = extractText2(children);
|
|
@@ -18150,7 +18455,7 @@ var RichMarkdownInner = ({
|
|
|
18150
18455
|
const extractText2 = (node) => {
|
|
18151
18456
|
if (typeof node === "string") return node;
|
|
18152
18457
|
if (Array.isArray(node)) return node.map(extractText2).join("");
|
|
18153
|
-
if (_optionalChain([node, 'optionalAccess',
|
|
18458
|
+
if (_optionalChain([node, 'optionalAccess', _345 => _345.props, 'optionalAccess', _346 => _346.children])) return extractText2(node.props.children);
|
|
18154
18459
|
return "";
|
|
18155
18460
|
};
|
|
18156
18461
|
const text = extractText2(children);
|
|
@@ -18226,8 +18531,8 @@ var RichMarkdownInner = ({
|
|
|
18226
18531
|
{
|
|
18227
18532
|
href,
|
|
18228
18533
|
className: `text-ods-accent no-underline relative transition-colors duration-200 hover:after:w-full after:content-[''] after:absolute after:w-0 after:h-0.5 after:-bottom-0.5 after:left-0 after:bg-ods-accent after:transition-all after:duration-300 ${className2 || ""}`,
|
|
18229
|
-
target: _optionalChain([href, 'optionalAccess',
|
|
18230
|
-
rel: _optionalChain([href, 'optionalAccess',
|
|
18534
|
+
target: _optionalChain([href, 'optionalAccess', _347 => _347.startsWith, 'call', _348 => _348("http")]) ? "_blank" : void 0,
|
|
18535
|
+
rel: _optionalChain([href, 'optionalAccess', _349 => _349.startsWith, 'call', _350 => _350("http")]) ? "noopener noreferrer" : void 0,
|
|
18231
18536
|
children
|
|
18232
18537
|
}
|
|
18233
18538
|
);
|
|
@@ -18351,7 +18656,7 @@ function ReleaseChangelogSection({
|
|
|
18351
18656
|
className: "overflow-hidden transition-[max-height] duration-500",
|
|
18352
18657
|
style: {
|
|
18353
18658
|
transitionTimingFunction: "cubic-bezier(0.33, 1, 0.68, 1)",
|
|
18354
|
-
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access',
|
|
18659
|
+
maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access', _351 => _351.current, 'optionalAccess', _352 => _352.scrollHeight]), () => ( 2e3)) : PREVIEW_COLLAPSED_HEIGHT,
|
|
18355
18660
|
...previewNeedsFade && !previewExpanded ? {
|
|
18356
18661
|
maskImage: "linear-gradient(to bottom, black 30%, transparent 100%)",
|
|
18357
18662
|
WebkitMaskImage: "linear-gradient(to bottom, black 30%, transparent 100%)"
|
|
@@ -18788,16 +19093,16 @@ function FilterModal({
|
|
|
18788
19093
|
};
|
|
18789
19094
|
const handleReset = () => {
|
|
18790
19095
|
onFilterChange({});
|
|
18791
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
19096
|
+
_optionalChain([onTagsChange, 'optionalCall', _353 => _353([])]);
|
|
18792
19097
|
onClose();
|
|
18793
19098
|
};
|
|
18794
19099
|
const handleApply = () => {
|
|
18795
19100
|
onFilterChange(selectedFilters);
|
|
18796
|
-
_optionalChain([onTagsChange, 'optionalCall',
|
|
19101
|
+
_optionalChain([onTagsChange, 'optionalCall', _354 => _354(pendingTags)]);
|
|
18797
19102
|
onClose();
|
|
18798
19103
|
};
|
|
18799
19104
|
const getColumnDirection = (columnKey) => {
|
|
18800
|
-
return _optionalChain([sortConfig, 'optionalAccess',
|
|
19105
|
+
return _optionalChain([sortConfig, 'optionalAccess', _355 => _355.sortBy]) === columnKey ? sortConfig.sortDirection : void 0;
|
|
18801
19106
|
};
|
|
18802
19107
|
const hasSort = !!sortConfig && sortConfig.columns.length > 0;
|
|
18803
19108
|
const hasFilterGroups = filterGroups.length > 0;
|
|
@@ -18846,7 +19151,7 @@ function FilterModal({
|
|
|
18846
19151
|
{
|
|
18847
19152
|
column,
|
|
18848
19153
|
currentDirection: getColumnDirection(column.key),
|
|
18849
|
-
onSort: (direction) => _optionalChain([onSort, 'optionalCall',
|
|
19154
|
+
onSort: (direction) => _optionalChain([onSort, 'optionalCall', _356 => _356(column.key, direction)]),
|
|
18850
19155
|
onClear: onSortClear ? () => onSortClear(column.key) : void 0
|
|
18851
19156
|
},
|
|
18852
19157
|
column.key
|
|
@@ -19024,13 +19329,13 @@ function IconButtonsVariant({
|
|
|
19024
19329
|
}) {
|
|
19025
19330
|
const desktopActions = actions.filter((a) => !a.showOnlyMobile);
|
|
19026
19331
|
const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
|
|
19027
|
-
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access',
|
|
19332
|
+
const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _357 => _357[0], 'access', _358 => _358.submenu, 'optionalAccess', _359 => _359.length]);
|
|
19028
19333
|
const singleAction = isSingleAction ? actions[0] : null;
|
|
19029
19334
|
const useSingleActionMobile = isSingleAction && !hasMenuActions;
|
|
19030
19335
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
19031
19336
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "hidden md:flex items-center", ACTIONS_GAP, className), children: [
|
|
19032
19337
|
selector,
|
|
19033
|
-
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19338
|
+
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
|
|
19034
19339
|
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionsMenuDropdown, { groups: menuActions })
|
|
19035
19340
|
] }),
|
|
19036
19341
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex md:hidden", className), children: useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -19055,7 +19360,7 @@ function PrimaryButtonsVariant({
|
|
|
19055
19360
|
});
|
|
19056
19361
|
const desktopActions = sortedActions.filter((a) => !a.showOnlyMobile);
|
|
19057
19362
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
19058
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "hidden md:flex items-center", ACTIONS_GAP, className), children: desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19363
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "hidden md:flex items-center", ACTIONS_GAP, className), children: desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: renderActionButton(action) }, `desktop-${actionKey(action, idx)}`)) }),
|
|
19059
19364
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileBottomActions, { actions: sortedActions })
|
|
19060
19365
|
] });
|
|
19061
19366
|
}
|
|
@@ -19071,7 +19376,7 @@ function MenuPrimaryVariant({
|
|
|
19071
19376
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "hidden md:flex items-center", ACTIONS_GAP, className), children: [
|
|
19072
19377
|
selector,
|
|
19073
19378
|
hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionsMenuDropdown, { groups: menuActions }),
|
|
19074
|
-
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19379
|
+
desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
|
|
19075
19380
|
] }),
|
|
19076
19381
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex md:hidden", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19077
19382
|
ActionsMenuDropdown,
|
|
@@ -19090,7 +19395,7 @@ function MobileBottomActions({ actions }) {
|
|
|
19090
19395
|
"bg-ods-card border-t border-ods-border",
|
|
19091
19396
|
"flex items-start pt-6 pb-6 px-6",
|
|
19092
19397
|
ACTIONS_GAP
|
|
19093
|
-
), children: actions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19398
|
+
), children: actions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: renderActionButton(action, { fullWidth: !!action.label }) }, `mobile-${actionKey(action, idx)}`)) });
|
|
19094
19399
|
}
|
|
19095
19400
|
function usePageActionsBottomPadding(variant) {
|
|
19096
19401
|
return variant === "primary-buttons" || variant === "menu-primary" ? "pb-40 md:pb-0" : "";
|
|
@@ -19420,8 +19725,8 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
19420
19725
|
|
|
19421
19726
|
|
|
19422
19727
|
function EntityImage({ src, alt, fallbackText, className }) {
|
|
19423
|
-
const [imageFailed, setImageFailed] =
|
|
19424
|
-
|
|
19728
|
+
const [imageFailed, setImageFailed] = React113.default.useState(false);
|
|
19729
|
+
React113.default.useEffect(() => {
|
|
19425
19730
|
setImageFailed(false);
|
|
19426
19731
|
}, [src]);
|
|
19427
19732
|
const showFallback = imageFailed || !src;
|
|
@@ -19615,7 +19920,7 @@ var toggleVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
19615
19920
|
}
|
|
19616
19921
|
}
|
|
19617
19922
|
);
|
|
19618
|
-
var Toggle =
|
|
19923
|
+
var Toggle = React73.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19619
19924
|
TogglePrimitive.Root,
|
|
19620
19925
|
{
|
|
19621
19926
|
ref,
|
|
@@ -19627,11 +19932,11 @@ Toggle.displayName = TogglePrimitive.Root.displayName;
|
|
|
19627
19932
|
|
|
19628
19933
|
// src/components/toggle-group.tsx
|
|
19629
19934
|
|
|
19630
|
-
var ToggleGroupContext =
|
|
19935
|
+
var ToggleGroupContext = React74.createContext({
|
|
19631
19936
|
size: "default",
|
|
19632
19937
|
variant: "default"
|
|
19633
19938
|
});
|
|
19634
|
-
var ToggleGroup =
|
|
19939
|
+
var ToggleGroup = React74.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19635
19940
|
ToggleGroupPrimitive.Root,
|
|
19636
19941
|
{
|
|
19637
19942
|
ref,
|
|
@@ -19641,8 +19946,8 @@ var ToggleGroup = React73.forwardRef(({ className, variant, size, children, ...p
|
|
|
19641
19946
|
}
|
|
19642
19947
|
));
|
|
19643
19948
|
ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
|
|
19644
|
-
var ToggleGroupItem =
|
|
19645
|
-
const context =
|
|
19949
|
+
var ToggleGroupItem = React74.forwardRef(({ className, children, variant, size, value, ...props }, ref) => {
|
|
19950
|
+
const context = React74.useContext(ToggleGroupContext);
|
|
19646
19951
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
19647
19952
|
ToggleGroupPrimitive.Item,
|
|
19648
19953
|
{
|
|
@@ -20180,7 +20485,7 @@ function getShellIcon(shellType) {
|
|
|
20180
20485
|
if (!shellType) return void 0;
|
|
20181
20486
|
const normalized = shellType.toUpperCase();
|
|
20182
20487
|
const shellDef = SHELL_TYPES.find((s) => s.id === normalized);
|
|
20183
|
-
return _optionalChain([shellDef, 'optionalAccess',
|
|
20488
|
+
return _optionalChain([shellDef, 'optionalAccess', _360 => _360.icon]);
|
|
20184
20489
|
}
|
|
20185
20490
|
|
|
20186
20491
|
// src/types/os.types.ts
|
|
@@ -20253,7 +20558,7 @@ function getOSIcon(osType) {
|
|
|
20253
20558
|
const normalized = normalizeOSType(osType);
|
|
20254
20559
|
if (!normalized) return void 0;
|
|
20255
20560
|
const osTypeDef = OS_TYPES.find((t) => t.id === normalized);
|
|
20256
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
20561
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _361 => _361.icon]);
|
|
20257
20562
|
}
|
|
20258
20563
|
function getOSTypeDefinition(osType) {
|
|
20259
20564
|
if (!osType) return void 0;
|
|
@@ -20263,7 +20568,7 @@ function getOSTypeDefinition(osType) {
|
|
|
20263
20568
|
}
|
|
20264
20569
|
function getOSPlatformId(osType) {
|
|
20265
20570
|
const osTypeDef = getOSTypeDefinition(osType);
|
|
20266
|
-
return _optionalChain([osTypeDef, 'optionalAccess',
|
|
20571
|
+
return _optionalChain([osTypeDef, 'optionalAccess', _362 => _362.platformId]);
|
|
20267
20572
|
}
|
|
20268
20573
|
function isOSPlatform(deviceOS, targetPlatform) {
|
|
20269
20574
|
if (!deviceOS || !targetPlatform) return false;
|
|
@@ -20356,10 +20661,10 @@ var GENERIC_EMAIL_DOMAINS = [
|
|
|
20356
20661
|
];
|
|
20357
20662
|
function extractDomainFromEmail(email) {
|
|
20358
20663
|
if (!email || !email.includes("@")) return null;
|
|
20359
|
-
return _optionalChain([email, 'access',
|
|
20664
|
+
return _optionalChain([email, 'access', _363 => _363.split, 'call', _364 => _364("@"), 'access', _365 => _365[1], 'optionalAccess', _366 => _366.toLowerCase, 'call', _367 => _367()]) || null;
|
|
20360
20665
|
}
|
|
20361
20666
|
function normalizeDomain(domain) {
|
|
20362
|
-
return _optionalChain([domain, 'optionalAccess',
|
|
20667
|
+
return _optionalChain([domain, 'optionalAccess', _368 => _368.toLowerCase, 'call', _369 => _369(), 'access', _370 => _370.replace, 'call', _371 => _371(/^https?:\/\//, ""), 'access', _372 => _372.replace, 'call', _373 => _373(/^www\./, ""), 'access', _374 => _374.split, 'call', _375 => _375("/"), 'access', _376 => _376[0], 'access', _377 => _377.trim, 'call', _378 => _378()]) || "";
|
|
20363
20668
|
}
|
|
20364
20669
|
function isGenericDomain(domain) {
|
|
20365
20670
|
const normalized = normalizeDomain(domain);
|
|
@@ -20793,7 +21098,7 @@ function defaultTableIdForDocumentType(documentType) {
|
|
|
20793
21098
|
|
|
20794
21099
|
// src/utils/sse-decision-frame.ts
|
|
20795
21100
|
async function readLeadingDecisionFrame(response) {
|
|
20796
|
-
const reader = _optionalChain([response, 'access',
|
|
21101
|
+
const reader = _optionalChain([response, 'access', _379 => _379.body, 'optionalAccess', _380 => _380.getReader, 'call', _381 => _381()]);
|
|
20797
21102
|
if (!reader) throw new Error("readLeadingDecisionFrame: response has no body");
|
|
20798
21103
|
const decoder = new TextDecoder();
|
|
20799
21104
|
let buffer = "";
|
|
@@ -20822,9 +21127,9 @@ async function readLeadingDecisionFrame(response) {
|
|
|
20822
21127
|
);
|
|
20823
21128
|
}
|
|
20824
21129
|
const obj = parsed;
|
|
20825
|
-
if (_optionalChain([obj, 'optionalAccess',
|
|
21130
|
+
if (_optionalChain([obj, 'optionalAccess', _382 => _382.kind]) !== "decision_resolved") {
|
|
20826
21131
|
throw new Error(
|
|
20827
|
-
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess',
|
|
21132
|
+
`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _383 => _383.kind]))}`
|
|
20828
21133
|
);
|
|
20829
21134
|
}
|
|
20830
21135
|
frame = normalizeDecisionFrame(obj);
|
|
@@ -20865,7 +21170,7 @@ var AUTO_CONTINUATION_DIRECTIVE_PREFIX = "[internal-auto-continuation]";
|
|
|
20865
21170
|
function buildAutoContinuationDirective(toolName, opts = {}) {
|
|
20866
21171
|
const ticketRef = opts.ticketId ? ` (ticket #${opts.ticketId})` : "";
|
|
20867
21172
|
const ticketHash = opts.ticketId ? ` #${opts.ticketId}` : "";
|
|
20868
|
-
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access',
|
|
21173
|
+
const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _384 => _384.status, 'optionalAccess', _385 => _385.toUpperCase, 'call', _386 => _386()]) === "CLOSED";
|
|
20869
21174
|
if (toolName === "create_ticket") {
|
|
20870
21175
|
return `${AUTO_CONTINUATION_DIRECTIVE_PREFIX} The user just approved create_ticket${ticketRef}. Per ticket-protocol \xA71a, ask 2-4 SHORT, issue-specific diagnostic follow-up questions tailored to the symptom they reported in their original message. When they answer, propose an update_ticket with content_addendum carrying a clean Q&A digest. Do NOT call any tool in this turn \u2014 just write the questions as prose.`;
|
|
20871
21176
|
}
|
|
@@ -20927,7 +21232,7 @@ function formatSingularLookupInvocation(cmdId, value) {
|
|
|
20927
21232
|
return safe ? `/${cmdId} "${safe}"` : `/${cmdId}`;
|
|
20928
21233
|
}
|
|
20929
21234
|
function extractEntityIdFilter(override, expectedTableId) {
|
|
20930
|
-
const f = _optionalChain([override, 'optionalAccess',
|
|
21235
|
+
const f = _optionalChain([override, 'optionalAccess', _387 => _387.entityIdFilter]);
|
|
20931
21236
|
if (!f) return null;
|
|
20932
21237
|
const tableId = typeof f.tableId === "string" ? f.tableId : "";
|
|
20933
21238
|
const id = typeof f.id === "string" ? f.id : "";
|
|
@@ -21002,7 +21307,7 @@ function getTaskTypeLabel(customItemId) {
|
|
|
21002
21307
|
|
|
21003
21308
|
// src/components/chat/utils/agent-status-message.ts
|
|
21004
21309
|
function getStatusColorScheme(status) {
|
|
21005
|
-
const s = _optionalChain([status, 'optionalAccess',
|
|
21310
|
+
const s = _optionalChain([status, 'optionalAccess', _388 => _388.toLowerCase, 'call', _389 => _389()]) || "";
|
|
21006
21311
|
switch (status) {
|
|
21007
21312
|
case "completed":
|
|
21008
21313
|
case "success":
|
|
@@ -21284,10 +21589,10 @@ var CONTENT_REF_GROUPS = {
|
|
|
21284
21589
|
what_i_shipped: { label: "What I Shipped", order: 10, layout: "grid", gridSize: "default" }
|
|
21285
21590
|
};
|
|
21286
21591
|
function getContentRefLabel(type) {
|
|
21287
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
21592
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _390 => _390[type], 'optionalAccess', _391 => _391.label]), () => ( null));
|
|
21288
21593
|
}
|
|
21289
21594
|
function getContentRefLabelOrTitleCase(type) {
|
|
21290
|
-
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access',
|
|
21595
|
+
return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _392 => _392[type], 'optionalAccess', _393 => _393.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
|
|
21291
21596
|
}
|
|
21292
21597
|
function orderContentRefTypes(present) {
|
|
21293
21598
|
const presentSet = new Set(present);
|
|
@@ -21446,7 +21751,7 @@ function getDocSourceDefaultPath(structure, folderIndexFile = DEFAULT_FOLDER_IND
|
|
|
21446
21751
|
const firstFolderWithReadme = structure.find(
|
|
21447
21752
|
(node) => node.type === "folder" && node.hasReadme && !!node.path
|
|
21448
21753
|
);
|
|
21449
|
-
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess',
|
|
21754
|
+
return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _394 => _394.path]), () => ( null));
|
|
21450
21755
|
}
|
|
21451
21756
|
|
|
21452
21757
|
// src/utils/doc-path-utils.ts
|
|
@@ -21457,7 +21762,7 @@ function pathToNodeId(path) {
|
|
|
21457
21762
|
return path.replace(/[\/\s]/g, "-").toLowerCase();
|
|
21458
21763
|
}
|
|
21459
21764
|
function normalizeDocPath(segments, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE) {
|
|
21460
|
-
const lowerPath = (_optionalChain([segments, 'optionalAccess',
|
|
21765
|
+
const lowerPath = (_optionalChain([segments, 'optionalAccess', _395 => _395.join, 'call', _396 => _396("/")]) || "").toLowerCase();
|
|
21461
21766
|
const lowerIndex = folderIndexFile.toLowerCase();
|
|
21462
21767
|
const suffix = `/${lowerIndex}`;
|
|
21463
21768
|
if (lowerPath.endsWith(suffix)) return lowerPath.slice(0, -suffix.length);
|
|
@@ -21661,7 +21966,7 @@ var BenefitCardGrid = ({
|
|
|
21661
21966
|
className = "",
|
|
21662
21967
|
columns = 2
|
|
21663
21968
|
}) => {
|
|
21664
|
-
const childrenArray =
|
|
21969
|
+
const childrenArray = React113.default.Children.toArray(children);
|
|
21665
21970
|
const gridClass = columns === 4 ? "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4" : columns === 3 ? "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3" : "flex flex-col md:flex-row";
|
|
21666
21971
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
21667
21972
|
"bg-ods-card rounded-lg shadow-ods-card border border-ods-border overflow-hidden",
|
|
@@ -21682,7 +21987,7 @@ var BenefitCardGrid = ({
|
|
|
21682
21987
|
} else {
|
|
21683
21988
|
borderClass = isLastItem ? "border-b-0" : "border-b md:border-b-0 md:border-r border-ods-border";
|
|
21684
21989
|
}
|
|
21685
|
-
return
|
|
21990
|
+
return React113.default.cloneElement(child, {
|
|
21686
21991
|
key: index,
|
|
21687
21992
|
className: borderClass
|
|
21688
21993
|
});
|
|
@@ -21699,7 +22004,7 @@ function BrandAssociationCard({
|
|
|
21699
22004
|
className = ""
|
|
21700
22005
|
}) {
|
|
21701
22006
|
const renderIcon = () => {
|
|
21702
|
-
if (
|
|
22007
|
+
if (React113.default.isValidElement(item.icon)) {
|
|
21703
22008
|
return item.icon;
|
|
21704
22009
|
}
|
|
21705
22010
|
const IconComponent = item.icon;
|
|
@@ -21803,7 +22108,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
21803
22108
|
|
|
21804
22109
|
|
|
21805
22110
|
|
|
21806
|
-
var ChevronButton =
|
|
22111
|
+
var ChevronButton = React77.forwardRef(
|
|
21807
22112
|
({ className, direction = "down", size = "md", isExpanded, backgroundColor, borderColor, ...props }, ref) => {
|
|
21808
22113
|
const Icon2 = (isExpanded ? _lucidereact.ChevronUp : _lucidereact.ChevronDown) || (direction === "up" ? _lucidereact.ChevronUp : _lucidereact.ChevronDown);
|
|
21809
22114
|
const sizeClasses2 = {
|
|
@@ -22000,8 +22305,8 @@ function FloatingTooltip({
|
|
|
22000
22305
|
delayDuration = 0,
|
|
22001
22306
|
disabled = false
|
|
22002
22307
|
}) {
|
|
22003
|
-
const [isOpen, setIsOpen] =
|
|
22004
|
-
const arrowRef =
|
|
22308
|
+
const [isOpen, setIsOpen] = React78.useState(false);
|
|
22309
|
+
const arrowRef = React78.useRef(null);
|
|
22005
22310
|
const { refs, floatingStyles, context, placement, middlewareData } = _react2.useFloating.call(void 0, {
|
|
22006
22311
|
open: isOpen,
|
|
22007
22312
|
onOpenChange: setIsOpen,
|
|
@@ -22031,7 +22336,7 @@ function FloatingTooltip({
|
|
|
22031
22336
|
dismiss,
|
|
22032
22337
|
role
|
|
22033
22338
|
]);
|
|
22034
|
-
const parsedContent =
|
|
22339
|
+
const parsedContent = React78.useMemo(() => {
|
|
22035
22340
|
if (typeof content === "string") {
|
|
22036
22341
|
return parseColoredText(content);
|
|
22037
22342
|
}
|
|
@@ -22279,26 +22584,26 @@ function DeviceCard({
|
|
|
22279
22584
|
] }),
|
|
22280
22585
|
device.organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary truncate", title: device.organization, children: device.organization })
|
|
22281
22586
|
] }),
|
|
22282
|
-
_optionalChain([actions, 'access',
|
|
22587
|
+
_optionalChain([actions, 'access', _397 => _397.moreButton, 'optionalAccess', _398 => _398.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22283
22588
|
"div",
|
|
22284
22589
|
{
|
|
22285
22590
|
className: "flex items-center justify-center p-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
|
|
22286
22591
|
onClick: (e) => {
|
|
22287
22592
|
e.stopPropagation();
|
|
22288
|
-
_optionalChain([actions, 'access',
|
|
22593
|
+
_optionalChain([actions, 'access', _399 => _399.moreButton, 'optionalAccess', _400 => _400.onClick, 'optionalCall', _401 => _401()]);
|
|
22289
22594
|
},
|
|
22290
22595
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
|
|
22291
22596
|
}
|
|
22292
22597
|
),
|
|
22293
|
-
_optionalChain([actions, 'access',
|
|
22294
|
-
_optionalChain([actions, 'access',
|
|
22598
|
+
_optionalChain([actions, 'access', _402 => _402.detailsButton, 'optionalAccess', _403 => _403.visible]) !== false && _optionalChain([actions, 'access', _404 => _404.detailsButton, 'optionalAccess', _405 => _405.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
|
|
22599
|
+
_optionalChain([actions, 'access', _406 => _406.customActions, 'optionalAccess', _407 => _407.map, 'call', _408 => _408(
|
|
22295
22600
|
(action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
22296
22601
|
"div",
|
|
22297
22602
|
{
|
|
22298
22603
|
className: "flex items-center justify-center px-4 py-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
|
|
22299
22604
|
onClick: (e) => {
|
|
22300
22605
|
e.stopPropagation();
|
|
22301
|
-
_optionalChain([action, 'access',
|
|
22606
|
+
_optionalChain([action, 'access', _409 => _409.onClick, 'optionalCall', _410 => _410()]);
|
|
22302
22607
|
},
|
|
22303
22608
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3 text-ods-text-primary text-nowrap tracking-[-0.36px]", children: action.label })
|
|
22304
22609
|
},
|
|
@@ -22652,7 +22957,7 @@ function HighlightCardGrid({
|
|
|
22652
22957
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
22653
22958
|
|
|
22654
22959
|
|
|
22655
|
-
var IconsBlock =
|
|
22960
|
+
var IconsBlock = React80.forwardRef(
|
|
22656
22961
|
({ className, icons = [], size = "md", ...props }, ref) => {
|
|
22657
22962
|
const sizeClasses2 = {
|
|
22658
22963
|
sm: "h-4 w-4",
|
|
@@ -22699,8 +23004,8 @@ function DropdownButton({
|
|
|
22699
23004
|
align = "end",
|
|
22700
23005
|
side = "bottom"
|
|
22701
23006
|
}) {
|
|
22702
|
-
const [open, setOpen] =
|
|
22703
|
-
const handleOpenChange =
|
|
23007
|
+
const [open, setOpen] = React113.default.useState(false);
|
|
23008
|
+
const handleOpenChange = React113.default.useCallback(
|
|
22704
23009
|
(next) => {
|
|
22705
23010
|
if (disabled) return;
|
|
22706
23011
|
setOpen(next);
|
|
@@ -22798,7 +23103,7 @@ function MoreActionsMenu({
|
|
|
22798
23103
|
] });
|
|
22799
23104
|
const handleActivate = (e) => {
|
|
22800
23105
|
e.stopPropagation();
|
|
22801
|
-
if (!item.disabled) _optionalChain([item, 'access',
|
|
23106
|
+
if (!item.disabled) _optionalChain([item, 'access', _411 => _411.onClick, 'optionalCall', _412 => _412()]);
|
|
22802
23107
|
};
|
|
22803
23108
|
if (item.href) {
|
|
22804
23109
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -22865,7 +23170,7 @@ function OrganizationCard({
|
|
|
22865
23170
|
const handleActionClick = (e) => {
|
|
22866
23171
|
e.preventDefault();
|
|
22867
23172
|
e.stopPropagation();
|
|
22868
|
-
_optionalChain([actionButton, 'optionalAccess',
|
|
23173
|
+
_optionalChain([actionButton, 'optionalAccess', _413 => _413.onClick, 'call', _414 => _414(organization, e)]);
|
|
22869
23174
|
};
|
|
22870
23175
|
const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
22871
23176
|
"div",
|
|
@@ -23011,14 +23316,14 @@ function ThemeProvider({ children, ...overrides }) {
|
|
|
23011
23316
|
var useTheme = _nextthemes.useTheme;
|
|
23012
23317
|
function useThemeToggle() {
|
|
23013
23318
|
const { resolvedTheme, theme, setTheme } = useTheme();
|
|
23014
|
-
const [mounted, setMounted] =
|
|
23015
|
-
|
|
23319
|
+
const [mounted, setMounted] = React82.useState(false);
|
|
23320
|
+
React82.useEffect(() => setMounted(true), []);
|
|
23016
23321
|
const active = mounted ? resolvedTheme === "light" || theme === "light" ? "light" : "dark" : DEFAULT_THEME;
|
|
23017
|
-
const setOdsTheme =
|
|
23322
|
+
const setOdsTheme = React82.useCallback(
|
|
23018
23323
|
(next) => setTheme(next),
|
|
23019
23324
|
[setTheme]
|
|
23020
23325
|
);
|
|
23021
|
-
const toggle =
|
|
23326
|
+
const toggle = React82.useCallback(
|
|
23022
23327
|
() => setTheme(active === "dark" ? "light" : "dark"),
|
|
23023
23328
|
[active, setTheme]
|
|
23024
23329
|
);
|
|
@@ -23771,10 +24076,10 @@ var getContentDimensions = (config) => {
|
|
|
23771
24076
|
const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
|
|
23772
24077
|
const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
|
|
23773
24078
|
const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
|
|
23774
|
-
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
23775
|
-
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
23776
|
-
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess',
|
|
23777
|
-
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess',
|
|
24079
|
+
const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _415 => _415.mobileContentDimensions, 'optionalAccess', _416 => _416.width]))), () => ( defaultMobile.width));
|
|
24080
|
+
const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _417 => _417.mobileContentDimensions, 'optionalAccess', _418 => _418.height]))), () => ( defaultMobile.height));
|
|
24081
|
+
const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _419 => _419.desktopContentDimensions, 'optionalAccess', _420 => _420.width]))), () => ( defaultDesktop.width));
|
|
24082
|
+
const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _421 => _421.desktopContentDimensions, 'optionalAccess', _422 => _422.height]))), () => ( defaultDesktop.height));
|
|
23778
24083
|
return {
|
|
23779
24084
|
mobile: { width: mobileWidth, height: mobileHeight },
|
|
23780
24085
|
desktop: { width: desktopWidth, height: desktopHeight }
|
|
@@ -23908,7 +24213,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
|
|
|
23908
24213
|
const contentDimensions = getContentDimensions(config);
|
|
23909
24214
|
const mobileHeight = contentDimensions.mobile.height;
|
|
23910
24215
|
const calculatedHeight = Math.max(mobileHeight + 100, 400);
|
|
23911
|
-
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess',
|
|
24216
|
+
return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _423 => _423.innerHeight]) * 0.85 || 650)}px`;
|
|
23912
24217
|
})(),
|
|
23913
24218
|
minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
|
|
23914
24219
|
const contentDimensions = getContentDimensions(config);
|
|
@@ -24013,7 +24318,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24013
24318
|
const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
|
|
24014
24319
|
const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
|
|
24015
24320
|
const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
|
|
24016
|
-
config.defaultSectionId || _optionalChain([config, 'access',
|
|
24321
|
+
config.defaultSectionId || _optionalChain([config, 'access', _424 => _424.sections, 'access', _425 => _425[0], 'optionalAccess', _426 => _426.id]) || ""
|
|
24017
24322
|
);
|
|
24018
24323
|
const activeSection = externalActiveSection || internalActiveSection;
|
|
24019
24324
|
const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
|
|
@@ -24103,7 +24408,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24103
24408
|
const handleMessage = (event) => {
|
|
24104
24409
|
if (event.origin !== "https://www.figma.com") return;
|
|
24105
24410
|
const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
|
|
24106
|
-
if (_optionalChain([event, 'access',
|
|
24411
|
+
if (_optionalChain([event, 'access', _427 => _427.data, 'optionalAccess', _428 => _428.type]) && validEvents.includes(event.data.type)) {
|
|
24107
24412
|
const figmaEvent = event.data;
|
|
24108
24413
|
console.log("[Figma Event]", figmaEvent.type, viewMode);
|
|
24109
24414
|
switch (figmaEvent.type) {
|
|
@@ -24113,19 +24418,19 @@ var FigmaPrototypeViewer = ({
|
|
|
24113
24418
|
setIframeState("READY");
|
|
24114
24419
|
break;
|
|
24115
24420
|
case "PRESENTED_NODE_CHANGED":
|
|
24116
|
-
if (_optionalChain([figmaEvent, 'access',
|
|
24421
|
+
if (_optionalChain([figmaEvent, 'access', _429 => _429.data, 'optionalAccess', _430 => _430.presentedNodeId])) {
|
|
24117
24422
|
setCurrentNodeId(figmaEvent.data.presentedNodeId);
|
|
24118
24423
|
if (!isNavigating) {
|
|
24119
24424
|
const matchingSection = config.sections.find((s) => {
|
|
24120
|
-
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access',
|
|
24121
|
-
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access',
|
|
24425
|
+
const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _431 => _431.data, 'optionalAccess', _432 => _432.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _433 => _433.data, 'optionalAccess', _434 => _434.presentedNodeId]);
|
|
24426
|
+
const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _435 => _435.data, 'optionalAccess', _436 => _436.presentedNodeId]) || _optionalChain([s, 'access', _437 => _437.mobileStartingNodeId, 'optionalAccess', _438 => _438.replace, 'call', _439 => _439(":", "-")]) === _optionalChain([figmaEvent, 'access', _440 => _440.data, 'optionalAccess', _441 => _441.presentedNodeId]);
|
|
24122
24427
|
return desktopMatch || mobileMatch;
|
|
24123
24428
|
});
|
|
24124
24429
|
if (matchingSection && matchingSection.id !== activeSection) {
|
|
24125
24430
|
if (!externalActiveSection) {
|
|
24126
24431
|
setInternalActiveSection(matchingSection.id);
|
|
24127
24432
|
}
|
|
24128
|
-
_optionalChain([config, 'access',
|
|
24433
|
+
_optionalChain([config, 'access', _442 => _442.onSectionChange, 'optionalCall', _443 => _443(matchingSection.id)]);
|
|
24129
24434
|
}
|
|
24130
24435
|
}
|
|
24131
24436
|
}
|
|
@@ -24138,7 +24443,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24138
24443
|
}, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
|
|
24139
24444
|
const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
|
|
24140
24445
|
const section = config.sections.find((s) => s.id === sectionId);
|
|
24141
|
-
if (!section || !_optionalChain([iframeRef, 'access',
|
|
24446
|
+
if (!section || !_optionalChain([iframeRef, 'access', _444 => _444.current, 'optionalAccess', _445 => _445.contentWindow]) || !isInitialized) {
|
|
24142
24447
|
return;
|
|
24143
24448
|
}
|
|
24144
24449
|
setIsNavigating(true);
|
|
@@ -24146,7 +24451,7 @@ var FigmaPrototypeViewer = ({
|
|
|
24146
24451
|
if (!externalActiveSection) {
|
|
24147
24452
|
setInternalActiveSection(sectionId);
|
|
24148
24453
|
}
|
|
24149
|
-
_optionalChain([config, 'access',
|
|
24454
|
+
_optionalChain([config, 'access', _446 => _446.onSectionChange, 'optionalCall', _447 => _447(sectionId)]);
|
|
24150
24455
|
const command = {
|
|
24151
24456
|
type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
|
|
24152
24457
|
data: { nodeId }
|
|
@@ -24466,7 +24771,7 @@ var FiltersDropdown = ({
|
|
|
24466
24771
|
defaults[section.id] = section.defaultSelected || [];
|
|
24467
24772
|
});
|
|
24468
24773
|
setSelectedFilters(defaults);
|
|
24469
|
-
_optionalChain([onReset, 'optionalCall',
|
|
24774
|
+
_optionalChain([onReset, 'optionalCall', _448 => _448()]);
|
|
24470
24775
|
setIsOpen(false);
|
|
24471
24776
|
};
|
|
24472
24777
|
const handleApply = () => {
|
|
@@ -24759,7 +25064,7 @@ function MediaGalleryManager({
|
|
|
24759
25064
|
const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
|
|
24760
25065
|
const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
|
|
24761
25066
|
const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
|
|
24762
|
-
const file = _optionalChain([event, 'access',
|
|
25067
|
+
const file = _optionalChain([event, 'access', _449 => _449.target, 'access', _450 => _450.files, 'optionalAccess', _451 => _451[0]]);
|
|
24763
25068
|
if (!file) return;
|
|
24764
25069
|
let mediaType;
|
|
24765
25070
|
if (file.type.startsWith("image/")) {
|
|
@@ -24874,7 +25179,7 @@ function MediaGalleryManager({
|
|
|
24874
25179
|
{
|
|
24875
25180
|
type: "button",
|
|
24876
25181
|
variant: "outline",
|
|
24877
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
25182
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _452 => _452.current, 'optionalAccess', _453 => _453.click, 'call', _454 => _454()]),
|
|
24878
25183
|
disabled: isUploading,
|
|
24879
25184
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
24880
25185
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -25542,7 +25847,7 @@ function ReleaseMediaManager({
|
|
|
25542
25847
|
const fileInputRef = _react.useRef.call(void 0, null);
|
|
25543
25848
|
const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
|
|
25544
25849
|
const handleFileSelect = async (event) => {
|
|
25545
|
-
const file = _optionalChain([event, 'access',
|
|
25850
|
+
const file = _optionalChain([event, 'access', _455 => _455.target, 'access', _456 => _456.files, 'optionalAccess', _457 => _457[0]]);
|
|
25546
25851
|
if (!file) return;
|
|
25547
25852
|
let mediaType;
|
|
25548
25853
|
if (file.type.startsWith("image/")) {
|
|
@@ -25622,7 +25927,7 @@ function ReleaseMediaManager({
|
|
|
25622
25927
|
{
|
|
25623
25928
|
type: "button",
|
|
25624
25929
|
variant: "outline",
|
|
25625
|
-
onClick: () => _optionalChain([fileInputRef, 'access',
|
|
25930
|
+
onClick: () => _optionalChain([fileInputRef, 'access', _458 => _458.current, 'optionalAccess', _459 => _459.click, 'call', _460 => _460()]),
|
|
25626
25931
|
disabled: uploadingIndex !== null,
|
|
25627
25932
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
|
|
25628
25933
|
className: "font-['DM_Sans'] text-[16px] font-bold",
|
|
@@ -25744,7 +26049,7 @@ function ReleaseMediaManager({
|
|
|
25744
26049
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
25745
26050
|
|
|
25746
26051
|
|
|
25747
|
-
var SelectButton =
|
|
26052
|
+
var SelectButton = React113.default.forwardRef(
|
|
25748
26053
|
({ title, description, selected = false, disabled = false, icon, image, tag, tagVariant = "outline", onClick, className }, ref) => {
|
|
25749
26054
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
25750
26055
|
"button",
|
|
@@ -25837,7 +26142,7 @@ function SEOEditorPreview({
|
|
|
25837
26142
|
const displayImage = hasOgImage || hasFeaturedImage;
|
|
25838
26143
|
const handleImageUpload = async (event) => {
|
|
25839
26144
|
if (!onOgImageUpload) return;
|
|
25840
|
-
const file = _optionalChain([event, 'access',
|
|
26145
|
+
const file = _optionalChain([event, 'access', _461 => _461.target, 'access', _462 => _462.files, 'optionalAccess', _463 => _463[0]]);
|
|
25841
26146
|
if (!file) return;
|
|
25842
26147
|
setIsUploading(true);
|
|
25843
26148
|
try {
|
|
@@ -25987,7 +26292,7 @@ function SEOEditorPreview({
|
|
|
25987
26292
|
type: "button",
|
|
25988
26293
|
variant: "outline",
|
|
25989
26294
|
size: "icon",
|
|
25990
|
-
onClick: () => _optionalChain([fileInputRef, 'optionalAccess',
|
|
26295
|
+
onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _464 => _464.click, 'call', _465 => _465()]),
|
|
25991
26296
|
disabled: disabled || isUploading,
|
|
25992
26297
|
className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
|
|
25993
26298
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
|
|
@@ -26010,7 +26315,7 @@ function SEOEditorPreview({
|
|
|
26010
26315
|
"div",
|
|
26011
26316
|
{
|
|
26012
26317
|
className: "h-full min-h-[280px] border-2 border-dashed border-ods-border rounded-lg flex flex-col items-center justify-center cursor-pointer hover:border-ods-accent transition-colors bg-ods-bg-hover",
|
|
26013
|
-
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess',
|
|
26318
|
+
onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _466 => _466.click, 'call', _467 => _467()]),
|
|
26014
26319
|
children: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
26015
26320
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
|
|
26016
26321
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-sm text-ods-text-secondary font-['DM_Sans']", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
|
|
@@ -26095,7 +26400,7 @@ function SocialLinksManager({
|
|
|
26095
26400
|
className = ""
|
|
26096
26401
|
}) {
|
|
26097
26402
|
const addLink = () => {
|
|
26098
|
-
const firstPlatform = _optionalChain([platforms, 'access',
|
|
26403
|
+
const firstPlatform = _optionalChain([platforms, 'access', _468 => _468[0], 'optionalAccess', _469 => _469.name]) || "website";
|
|
26099
26404
|
onChange([...links, { platform: firstPlatform, url: "" }]);
|
|
26100
26405
|
};
|
|
26101
26406
|
const removeLink = (index) => {
|
|
@@ -26107,7 +26412,7 @@ function SocialLinksManager({
|
|
|
26107
26412
|
onChange(updated);
|
|
26108
26413
|
};
|
|
26109
26414
|
const getIcon = (link, platform) => {
|
|
26110
|
-
const iconKey = _optionalChain([platform, 'optionalAccess',
|
|
26415
|
+
const iconKey = _optionalChain([platform, 'optionalAccess', _470 => _470.icon_name]) || link.platform;
|
|
26111
26416
|
const IconComponent = iconMap[iconKey];
|
|
26112
26417
|
return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
|
|
26113
26418
|
};
|
|
@@ -26132,7 +26437,7 @@ function SocialLinksManager({
|
|
|
26132
26437
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26133
26438
|
_chunkQJGRP2YEcjs.Input,
|
|
26134
26439
|
{
|
|
26135
|
-
placeholder: _optionalChain([platform, 'optionalAccess',
|
|
26440
|
+
placeholder: _optionalChain([platform, 'optionalAccess', _471 => _471.placeholder]) || "Profile URL",
|
|
26136
26441
|
value: link.url,
|
|
26137
26442
|
onChange: (e) => updateLink(index, "url", e.target.value),
|
|
26138
26443
|
onKeyDown: (e) => {
|
|
@@ -26176,7 +26481,7 @@ function SocialLinksManager({
|
|
|
26176
26481
|
_chunkQJGRP2YEcjs.init_button2.call(void 0, );
|
|
26177
26482
|
|
|
26178
26483
|
|
|
26179
|
-
var StartWithOpenFrameButton =
|
|
26484
|
+
var StartWithOpenFrameButton = React87.forwardRef(({ children = "Start Free Trial", mode = "outline", className, buttonSize, loading = false, buttonBackgroundColor, buttonTextColor, ...props }, ref) => {
|
|
26180
26485
|
const isYellow = mode === "yellow";
|
|
26181
26486
|
const isPink = mode === "pink" || mode === "purple";
|
|
26182
26487
|
const isCyan = mode === "cyan";
|
|
@@ -26511,7 +26816,7 @@ function useVideoOriginPreconnect({
|
|
|
26511
26816
|
supabaseStorageOrigin
|
|
26512
26817
|
} = {}) {
|
|
26513
26818
|
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
26514
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
26819
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _472 => _472.endpoints, 'access', _473 => _473.supabaseStorageOrigin])));
|
|
26515
26820
|
try {
|
|
26516
26821
|
ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
|
|
26517
26822
|
ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
|
|
@@ -26530,13 +26835,13 @@ function useVideoWarmup({
|
|
|
26530
26835
|
nearMargin = "1000px"
|
|
26531
26836
|
} = {}) {
|
|
26532
26837
|
const runtime = _chunkN2DVKXN4cjs.useChatRuntime.call(void 0, );
|
|
26533
|
-
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess',
|
|
26838
|
+
const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _474 => _474.endpoints, 'access', _475 => _475.supabaseStorageOrigin])));
|
|
26534
26839
|
useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
|
|
26535
26840
|
const { ref, isNear } = _chunk27IO7V3Pcjs.useNearViewport.call(void 0, nearMargin);
|
|
26536
26841
|
_react.useEffect.call(void 0, () => {
|
|
26537
26842
|
if (!isNear || !videoUrl || !resolvedOrigin) return;
|
|
26538
26843
|
const conn = navigator.connection;
|
|
26539
|
-
if (_optionalChain([conn, 'optionalAccess',
|
|
26844
|
+
if (_optionalChain([conn, 'optionalAccess', _476 => _476.saveData]) === true) return;
|
|
26540
26845
|
let videoOrigin;
|
|
26541
26846
|
try {
|
|
26542
26847
|
videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
|
|
@@ -26606,7 +26911,7 @@ function VideoSourceSelector({
|
|
|
26606
26911
|
input.accept = "video/*";
|
|
26607
26912
|
input.onchange = async (e) => {
|
|
26608
26913
|
const target = e.target;
|
|
26609
|
-
const file = _optionalChain([target, 'access',
|
|
26914
|
+
const file = _optionalChain([target, 'access', _477 => _477.files, 'optionalAccess', _478 => _478[0]]);
|
|
26610
26915
|
if (!file) return;
|
|
26611
26916
|
setIsUploading(true);
|
|
26612
26917
|
setUploadProgress(0);
|
|
@@ -26967,7 +27272,7 @@ function TranscriptSummaryEditor({
|
|
|
26967
27272
|
{
|
|
26968
27273
|
id: "subtitles",
|
|
26969
27274
|
value: subtitles || "",
|
|
26970
|
-
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall',
|
|
27275
|
+
onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _479 => _479(e.target.value)]),
|
|
26971
27276
|
placeholder: subtitlesPlaceholder,
|
|
26972
27277
|
disabled: disabled || !onSubtitlesChange,
|
|
26973
27278
|
className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 font-mono text-sm",
|
|
@@ -27120,7 +27425,7 @@ var AIEnrichSection = ({
|
|
|
27120
27425
|
}) => {
|
|
27121
27426
|
const hasResults = status === "success" || status === "error";
|
|
27122
27427
|
const shouldDisable = disabled || !canEnrich;
|
|
27123
|
-
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess',
|
|
27428
|
+
const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _480 => _480.filter, 'call', _481 => _481((f) => !f.isFilled)]) || [];
|
|
27124
27429
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
27125
27430
|
"div",
|
|
27126
27431
|
{
|
|
@@ -27158,7 +27463,7 @@ var AIEnrichSection = ({
|
|
|
27158
27463
|
{
|
|
27159
27464
|
id: "ai-enrich-custom-instructions",
|
|
27160
27465
|
value: _nullishCoalesce(customInstructions, () => ( "")),
|
|
27161
|
-
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall',
|
|
27466
|
+
onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _482 => _482(e.target.value)]),
|
|
27162
27467
|
placeholder: customInstructionsPlaceholder,
|
|
27163
27468
|
disabled: loading,
|
|
27164
27469
|
maxLength: customInstructionsMaxLength,
|
|
@@ -27287,7 +27592,7 @@ function HighlightVideoSection({
|
|
|
27287
27592
|
input.accept = "video/*";
|
|
27288
27593
|
input.onchange = async (e) => {
|
|
27289
27594
|
const target = e.target;
|
|
27290
|
-
const file = _optionalChain([target, 'access',
|
|
27595
|
+
const file = _optionalChain([target, 'access', _483 => _483.files, 'optionalAccess', _484 => _484[0]]);
|
|
27291
27596
|
if (!file) return;
|
|
27292
27597
|
setUploadError(null);
|
|
27293
27598
|
try {
|
|
@@ -27789,7 +28094,7 @@ function HighlightVideoPreview({
|
|
|
27789
28094
|
input.accept = "video/*";
|
|
27790
28095
|
input.onchange = async (e) => {
|
|
27791
28096
|
const target = e.target;
|
|
27792
|
-
const file = _optionalChain([target, 'access',
|
|
28097
|
+
const file = _optionalChain([target, 'access', _485 => _485.files, 'optionalAccess', _486 => _486[0]]);
|
|
27793
28098
|
if (!file) return;
|
|
27794
28099
|
await onUpload(file);
|
|
27795
28100
|
};
|
|
@@ -27976,7 +28281,7 @@ function HighlightVideoCombinedSection({
|
|
|
27976
28281
|
input.accept = "video/*";
|
|
27977
28282
|
input.onchange = async (e) => {
|
|
27978
28283
|
const target = e.target;
|
|
27979
|
-
const file = _optionalChain([target, 'access',
|
|
28284
|
+
const file = _optionalChain([target, 'access', _487 => _487.files, 'optionalAccess', _488 => _488[0]]);
|
|
27980
28285
|
if (!file) return;
|
|
27981
28286
|
await onUpload(file);
|
|
27982
28287
|
};
|
|
@@ -28136,7 +28441,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
28136
28441
|
|
|
28137
28442
|
var DropdownMenu2 = DropdownMenuPrimitive2.Root;
|
|
28138
28443
|
var DropdownMenuTrigger2 = DropdownMenuPrimitive2.Trigger;
|
|
28139
|
-
var DropdownMenuSubTrigger =
|
|
28444
|
+
var DropdownMenuSubTrigger = React90.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
28140
28445
|
DropdownMenuPrimitive2.SubTrigger,
|
|
28141
28446
|
{
|
|
28142
28447
|
ref,
|
|
@@ -28153,7 +28458,7 @@ var DropdownMenuSubTrigger = React89.forwardRef(({ className, inset, children, .
|
|
|
28153
28458
|
}
|
|
28154
28459
|
));
|
|
28155
28460
|
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive2.SubTrigger.displayName;
|
|
28156
|
-
var DropdownMenuSubContent =
|
|
28461
|
+
var DropdownMenuSubContent = React90.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28157
28462
|
DropdownMenuPrimitive2.SubContent,
|
|
28158
28463
|
{
|
|
28159
28464
|
ref,
|
|
@@ -28165,7 +28470,7 @@ var DropdownMenuSubContent = React89.forwardRef(({ className, ...props }, ref) =
|
|
|
28165
28470
|
}
|
|
28166
28471
|
));
|
|
28167
28472
|
DropdownMenuSubContent.displayName = DropdownMenuPrimitive2.SubContent.displayName;
|
|
28168
|
-
var DropdownMenuContent2 =
|
|
28473
|
+
var DropdownMenuContent2 = React90.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DropdownMenuPrimitive2.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28169
28474
|
DropdownMenuPrimitive2.Content,
|
|
28170
28475
|
{
|
|
28171
28476
|
ref,
|
|
@@ -28178,7 +28483,7 @@ var DropdownMenuContent2 = React89.forwardRef(({ className, sideOffset = 4, ...p
|
|
|
28178
28483
|
}
|
|
28179
28484
|
) }));
|
|
28180
28485
|
DropdownMenuContent2.displayName = DropdownMenuPrimitive2.Content.displayName;
|
|
28181
|
-
var DropdownMenuItem2 =
|
|
28486
|
+
var DropdownMenuItem2 = React90.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28182
28487
|
DropdownMenuPrimitive2.Item,
|
|
28183
28488
|
{
|
|
28184
28489
|
ref,
|
|
@@ -28191,7 +28496,7 @@ var DropdownMenuItem2 = React89.forwardRef(({ className, inset, ...props }, ref)
|
|
|
28191
28496
|
}
|
|
28192
28497
|
));
|
|
28193
28498
|
DropdownMenuItem2.displayName = DropdownMenuPrimitive2.Item.displayName;
|
|
28194
|
-
var DropdownMenuCheckboxItem =
|
|
28499
|
+
var DropdownMenuCheckboxItem = React90.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
28195
28500
|
DropdownMenuPrimitive2.CheckboxItem,
|
|
28196
28501
|
{
|
|
28197
28502
|
ref,
|
|
@@ -28208,7 +28513,7 @@ var DropdownMenuCheckboxItem = React89.forwardRef(({ className, children, checke
|
|
|
28208
28513
|
}
|
|
28209
28514
|
));
|
|
28210
28515
|
DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive2.CheckboxItem.displayName;
|
|
28211
|
-
var DropdownMenuRadioItem =
|
|
28516
|
+
var DropdownMenuRadioItem = React90.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
28212
28517
|
DropdownMenuPrimitive2.RadioItem,
|
|
28213
28518
|
{
|
|
28214
28519
|
ref,
|
|
@@ -28224,7 +28529,7 @@ var DropdownMenuRadioItem = React89.forwardRef(({ className, children, ...props
|
|
|
28224
28529
|
}
|
|
28225
28530
|
));
|
|
28226
28531
|
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive2.RadioItem.displayName;
|
|
28227
|
-
var DropdownMenuLabel =
|
|
28532
|
+
var DropdownMenuLabel = React90.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28228
28533
|
DropdownMenuPrimitive2.Label,
|
|
28229
28534
|
{
|
|
28230
28535
|
ref,
|
|
@@ -28237,7 +28542,7 @@ var DropdownMenuLabel = React89.forwardRef(({ className, inset, ...props }, ref)
|
|
|
28237
28542
|
}
|
|
28238
28543
|
));
|
|
28239
28544
|
DropdownMenuLabel.displayName = DropdownMenuPrimitive2.Label.displayName;
|
|
28240
|
-
var DropdownMenuSeparator =
|
|
28545
|
+
var DropdownMenuSeparator = React90.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
28241
28546
|
DropdownMenuPrimitive2.Separator,
|
|
28242
28547
|
{
|
|
28243
28548
|
ref,
|
|
@@ -28273,7 +28578,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
|
|
|
28273
28578
|
return editMode ? "Set Global Permission" : "";
|
|
28274
28579
|
}
|
|
28275
28580
|
const option = approvalLevelOptions.find((opt) => opt.value === level);
|
|
28276
|
-
return _optionalChain([option, 'optionalAccess',
|
|
28581
|
+
return _optionalChain([option, 'optionalAccess', _489 => _489.label]) || level;
|
|
28277
28582
|
};
|
|
28278
28583
|
var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
|
|
28279
28584
|
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: [
|
|
@@ -28487,12 +28792,12 @@ function PhoneInput({
|
|
|
28487
28792
|
const runValidation = _react.useCallback.call(void 0, (phone) => {
|
|
28488
28793
|
if (!phone || digitCount(phone) === 0) {
|
|
28489
28794
|
setIsInvalid(false);
|
|
28490
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
28795
|
+
_optionalChain([onValidationChange, 'optionalCall', _490 => _490(false)]);
|
|
28491
28796
|
return;
|
|
28492
28797
|
}
|
|
28493
28798
|
const invalid = !validatePhoneNumber(phone, countryCode);
|
|
28494
28799
|
setIsInvalid(invalid);
|
|
28495
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
28800
|
+
_optionalChain([onValidationChange, 'optionalCall', _491 => _491(invalid)]);
|
|
28496
28801
|
}, [countryCode, digitCount, onValidationChange]);
|
|
28497
28802
|
const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
|
|
28498
28803
|
if (debounceRef.current) clearTimeout(debounceRef.current);
|
|
@@ -28541,7 +28846,7 @@ function PhoneInput({
|
|
|
28541
28846
|
debouncedValidation(val);
|
|
28542
28847
|
} else if (digitCount(val) === 0) {
|
|
28543
28848
|
setIsInvalid(false);
|
|
28544
|
-
_optionalChain([onValidationChange, 'optionalCall',
|
|
28849
|
+
_optionalChain([onValidationChange, 'optionalCall', _492 => _492(false)]);
|
|
28545
28850
|
}
|
|
28546
28851
|
}
|
|
28547
28852
|
},
|
|
@@ -28762,7 +29067,7 @@ function WaitlistForm({
|
|
|
28762
29067
|
// src/components/features/notifications/notifications-context.tsx
|
|
28763
29068
|
|
|
28764
29069
|
|
|
28765
|
-
var NotificationsContext =
|
|
29070
|
+
var NotificationsContext = React91.createContext(null);
|
|
28766
29071
|
function mergeNotification(base, incoming) {
|
|
28767
29072
|
const out = { ...base };
|
|
28768
29073
|
for (const key of Object.keys(incoming)) {
|
|
@@ -28841,16 +29146,16 @@ function NotificationsProvider({
|
|
|
28841
29146
|
onLoadMore,
|
|
28842
29147
|
renderTile
|
|
28843
29148
|
}) {
|
|
28844
|
-
const [notifications, dispatch] =
|
|
28845
|
-
const [isOpen, setIsOpen] =
|
|
28846
|
-
const [showPopups, setShowPopupsState] =
|
|
28847
|
-
const [showDesktopPopups, setShowDesktopPopupsState] =
|
|
29149
|
+
const [notifications, dispatch] = React91.useReducer(reducer, initialNotifications);
|
|
29150
|
+
const [isOpen, setIsOpen] = React91.useState(false);
|
|
29151
|
+
const [showPopups, setShowPopupsState] = React91.useState(defaultShowPopups);
|
|
29152
|
+
const [showDesktopPopups, setShowDesktopPopupsState] = React91.useState(defaultShowDesktopPopups);
|
|
28848
29153
|
const desktopPopupsConfigured = onShowDesktopPopupsChange !== void 0;
|
|
28849
|
-
const actionsRef =
|
|
28850
|
-
|
|
29154
|
+
const actionsRef = React91.useRef(actions);
|
|
29155
|
+
React91.useEffect(() => {
|
|
28851
29156
|
actionsRef.current = actions;
|
|
28852
29157
|
}, [actions]);
|
|
28853
|
-
const addNotification =
|
|
29158
|
+
const addNotification = React91.useCallback(
|
|
28854
29159
|
(input) => {
|
|
28855
29160
|
const id = _nullishCoalesce(input.id, () => ( generateId()));
|
|
28856
29161
|
const notification = {
|
|
@@ -28864,7 +29169,7 @@ function NotificationsProvider({
|
|
|
28864
29169
|
},
|
|
28865
29170
|
[maxNotifications]
|
|
28866
29171
|
);
|
|
28867
|
-
const upsertNotification =
|
|
29172
|
+
const upsertNotification = React91.useCallback(
|
|
28868
29173
|
(input) => {
|
|
28869
29174
|
const notification = {
|
|
28870
29175
|
...input,
|
|
@@ -28877,48 +29182,48 @@ function NotificationsProvider({
|
|
|
28877
29182
|
},
|
|
28878
29183
|
[maxNotifications]
|
|
28879
29184
|
);
|
|
28880
|
-
const setNotifications =
|
|
29185
|
+
const setNotifications = React91.useCallback((list) => {
|
|
28881
29186
|
dispatch({ type: "set", notifications: list });
|
|
28882
29187
|
}, []);
|
|
28883
|
-
const markRead =
|
|
29188
|
+
const markRead = React91.useCallback((id) => {
|
|
28884
29189
|
dispatch({ type: "markRead", id });
|
|
28885
|
-
void _optionalChain([actionsRef, 'access',
|
|
29190
|
+
void _optionalChain([actionsRef, 'access', _493 => _493.current, 'optionalAccess', _494 => _494.onMarkRead, 'optionalCall', _495 => _495(id)]);
|
|
28886
29191
|
}, []);
|
|
28887
|
-
const markAllRead =
|
|
29192
|
+
const markAllRead = React91.useCallback(() => {
|
|
28888
29193
|
dispatch({ type: "markAllRead" });
|
|
28889
|
-
void _optionalChain([actionsRef, 'access',
|
|
29194
|
+
void _optionalChain([actionsRef, 'access', _496 => _496.current, 'optionalAccess', _497 => _497.onMarkAllRead, 'optionalCall', _498 => _498()]);
|
|
28890
29195
|
}, []);
|
|
28891
|
-
const markSettled =
|
|
29196
|
+
const markSettled = React91.useCallback((id) => {
|
|
28892
29197
|
dispatch({ type: "markSettled", id });
|
|
28893
|
-
void _optionalChain([actionsRef, 'access',
|
|
29198
|
+
void _optionalChain([actionsRef, 'access', _499 => _499.current, 'optionalAccess', _500 => _500.onMarkSettled, 'optionalCall', _501 => _501(id)]);
|
|
28894
29199
|
}, []);
|
|
28895
|
-
const remove =
|
|
29200
|
+
const remove = React91.useCallback((id) => {
|
|
28896
29201
|
dispatch({ type: "remove", id });
|
|
28897
|
-
void _optionalChain([actionsRef, 'access',
|
|
29202
|
+
void _optionalChain([actionsRef, 'access', _502 => _502.current, 'optionalAccess', _503 => _503.onRemove, 'optionalCall', _504 => _504(id)]);
|
|
28898
29203
|
}, []);
|
|
28899
|
-
const clear =
|
|
28900
|
-
const open =
|
|
28901
|
-
const close =
|
|
28902
|
-
const toggle =
|
|
28903
|
-
const setShowPopups =
|
|
29204
|
+
const clear = React91.useCallback(() => dispatch({ type: "clear" }), []);
|
|
29205
|
+
const open = React91.useCallback(() => setIsOpen(true), []);
|
|
29206
|
+
const close = React91.useCallback(() => setIsOpen(false), []);
|
|
29207
|
+
const toggle = React91.useCallback(() => setIsOpen((v) => !v), []);
|
|
29208
|
+
const setShowPopups = React91.useCallback(
|
|
28904
29209
|
(value2) => {
|
|
28905
29210
|
setShowPopupsState(value2);
|
|
28906
|
-
_optionalChain([onShowPopupsChange, 'optionalCall',
|
|
29211
|
+
_optionalChain([onShowPopupsChange, 'optionalCall', _505 => _505(value2)]);
|
|
28907
29212
|
},
|
|
28908
29213
|
[onShowPopupsChange]
|
|
28909
29214
|
);
|
|
28910
|
-
const setShowDesktopPopups =
|
|
29215
|
+
const setShowDesktopPopups = React91.useCallback(
|
|
28911
29216
|
(value2) => {
|
|
28912
29217
|
setShowDesktopPopupsState(value2);
|
|
28913
|
-
_optionalChain([onShowDesktopPopupsChange, 'optionalCall',
|
|
29218
|
+
_optionalChain([onShowDesktopPopupsChange, 'optionalCall', _506 => _506(value2)]);
|
|
28914
29219
|
},
|
|
28915
29220
|
[onShowDesktopPopupsChange]
|
|
28916
29221
|
);
|
|
28917
|
-
const unreadCount =
|
|
29222
|
+
const unreadCount = React91.useMemo(
|
|
28918
29223
|
() => notifications.reduce((acc, n) => n.read ? acc : acc + 1, 0),
|
|
28919
29224
|
[notifications]
|
|
28920
29225
|
);
|
|
28921
|
-
const value =
|
|
29226
|
+
const value = React91.useMemo(
|
|
28922
29227
|
() => ({
|
|
28923
29228
|
notifications,
|
|
28924
29229
|
unreadCount,
|
|
@@ -28977,14 +29282,14 @@ function NotificationsProvider({
|
|
|
28977
29282
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NotificationsContext.Provider, { value, children });
|
|
28978
29283
|
}
|
|
28979
29284
|
function useNotifications() {
|
|
28980
|
-
const ctx =
|
|
29285
|
+
const ctx = React91.useContext(NotificationsContext);
|
|
28981
29286
|
if (!ctx) {
|
|
28982
29287
|
throw new Error("useNotifications must be used inside <NotificationsProvider>");
|
|
28983
29288
|
}
|
|
28984
29289
|
return ctx;
|
|
28985
29290
|
}
|
|
28986
29291
|
function useOptionalNotifications() {
|
|
28987
|
-
return
|
|
29292
|
+
return React91.useContext(NotificationsContext);
|
|
28988
29293
|
}
|
|
28989
29294
|
|
|
28990
29295
|
// src/components/features/notifications/notification-drawer.tsx
|
|
@@ -29014,7 +29319,7 @@ function NotificationTile({
|
|
|
29014
29319
|
if (!counting) return;
|
|
29015
29320
|
const remaining = Math.max(0, liveDurationMs - initialElapsed);
|
|
29016
29321
|
const timer = window.setTimeout(() => {
|
|
29017
|
-
_optionalChain([onSettle, 'optionalCall',
|
|
29322
|
+
_optionalChain([onSettle, 'optionalCall', _507 => _507(id)]);
|
|
29018
29323
|
}, remaining);
|
|
29019
29324
|
return () => window.clearTimeout(timer);
|
|
29020
29325
|
}, [id, counting, initialElapsed, liveDurationMs, onSettle]);
|
|
@@ -29076,7 +29381,7 @@ function NotificationTile({
|
|
|
29076
29381
|
"button",
|
|
29077
29382
|
{
|
|
29078
29383
|
type: "button",
|
|
29079
|
-
onClick: () => _optionalChain([onSettle, 'optionalCall',
|
|
29384
|
+
onClick: () => _optionalChain([onSettle, 'optionalCall', _508 => _508(id)]),
|
|
29080
29385
|
"aria-label": "Dismiss notification",
|
|
29081
29386
|
tabIndex: isLive ? 0 : -1,
|
|
29082
29387
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -29209,7 +29514,7 @@ function DrawerScrollList({
|
|
|
29209
29514
|
if (!sentinel || !root) return;
|
|
29210
29515
|
const observer = new IntersectionObserver(
|
|
29211
29516
|
(entries) => {
|
|
29212
|
-
if (_optionalChain([entries, 'access',
|
|
29517
|
+
if (_optionalChain([entries, 'access', _509 => _509[0], 'optionalAccess', _510 => _510.isIntersecting])) _optionalChain([loadMoreRef, 'access', _511 => _511.current, 'optionalCall', _512 => _512()]);
|
|
29213
29518
|
},
|
|
29214
29519
|
{ root, rootMargin: loadMoreRootMargin }
|
|
29215
29520
|
);
|
|
@@ -29224,7 +29529,7 @@ function DrawerScrollList({
|
|
|
29224
29529
|
className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
|
|
29225
29530
|
children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
29226
29531
|
unreadNotifications.map((n) => {
|
|
29227
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
29532
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _513 => _513(n, { onComplete, onSettle, liveDurationMs })]);
|
|
29228
29533
|
if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
|
|
29229
29534
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
29230
29535
|
NotificationTile,
|
|
@@ -29388,7 +29693,7 @@ function NotificationPopups({
|
|
|
29388
29693
|
className
|
|
29389
29694
|
),
|
|
29390
29695
|
children: live.map((n) => {
|
|
29391
|
-
const custom = _optionalChain([renderTile, 'optionalCall',
|
|
29696
|
+
const custom = _optionalChain([renderTile, 'optionalCall', _514 => _514(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
|
|
29392
29697
|
if (custom) {
|
|
29393
29698
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
|
|
29394
29699
|
}
|
|
@@ -29568,21 +29873,21 @@ function transformWebinarToProgram(webinar) {
|
|
|
29568
29873
|
// src/components/features/notifications/types.ts
|
|
29569
29874
|
var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
|
|
29570
29875
|
function isApprovalNotification(notification) {
|
|
29571
|
-
return _optionalChain([notification, 'access',
|
|
29876
|
+
return _optionalChain([notification, 'access', _515 => _515.meta, 'optionalAccess', _516 => _516.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
|
|
29572
29877
|
}
|
|
29573
29878
|
function getApprovalMeta(notification) {
|
|
29574
29879
|
if (!isApprovalNotification(notification)) return null;
|
|
29575
29880
|
const meta = notification.meta;
|
|
29576
|
-
const approvalRequestId = _optionalChain([meta, 'optionalAccess',
|
|
29577
|
-
const toolCalls = _optionalChain([meta, 'optionalAccess',
|
|
29881
|
+
const approvalRequestId = _optionalChain([meta, 'optionalAccess', _517 => _517.approvalRequestId]);
|
|
29882
|
+
const toolCalls = _optionalChain([meta, 'optionalAccess', _518 => _518.toolCalls]);
|
|
29578
29883
|
if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
|
|
29579
29884
|
return {
|
|
29580
29885
|
approvalRequestId,
|
|
29581
|
-
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29582
|
-
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29583
|
-
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29584
|
-
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29585
|
-
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
29886
|
+
dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _519 => _519.dialogId]), () => ( null)),
|
|
29887
|
+
ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _520 => _520.ticketId]), () => ( null)),
|
|
29888
|
+
approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _521 => _521.approvalType]), () => ( null)),
|
|
29889
|
+
resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _522 => _522.resolution]), () => ( null)),
|
|
29890
|
+
resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _523 => _523.resolvedByName]), () => ( null)),
|
|
29586
29891
|
toolCalls
|
|
29587
29892
|
};
|
|
29588
29893
|
}
|
|
@@ -29631,7 +29936,7 @@ function ApprovalRequestNotificationTile({
|
|
|
29631
29936
|
const [pinned, setPinned] = _react.useState.call(void 0, defaultExpanded);
|
|
29632
29937
|
const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
|
|
29633
29938
|
const approval = getApprovalMeta(notification);
|
|
29634
|
-
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess',
|
|
29939
|
+
const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _524 => _524.resolution]));
|
|
29635
29940
|
const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
|
|
29636
29941
|
const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
|
|
29637
29942
|
const { innerRef, containerStyle } = useCollapsible({ expanded });
|
|
@@ -29706,24 +30011,24 @@ function ApprovalRequestNotificationTile({
|
|
|
29706
30011
|
// src/components/features/time-tracker/time-tracker-context.tsx
|
|
29707
30012
|
|
|
29708
30013
|
|
|
29709
|
-
var TimeTrackerContext =
|
|
30014
|
+
var TimeTrackerContext = React92.createContext(null);
|
|
29710
30015
|
function TimeTrackerProvider({ children, defaultOpen = false, ...data }) {
|
|
29711
|
-
const [isOpen, setIsOpen] =
|
|
29712
|
-
const open =
|
|
29713
|
-
const close =
|
|
29714
|
-
const toggle =
|
|
30016
|
+
const [isOpen, setIsOpen] = React92.useState(defaultOpen);
|
|
30017
|
+
const open = React92.useCallback(() => setIsOpen(true), []);
|
|
30018
|
+
const close = React92.useCallback(() => setIsOpen(false), []);
|
|
30019
|
+
const toggle = React92.useCallback(() => setIsOpen((v) => !v), []);
|
|
29715
30020
|
const value = { ...data, isOpen, open, close, toggle };
|
|
29716
30021
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TimeTrackerContext.Provider, { value, children });
|
|
29717
30022
|
}
|
|
29718
30023
|
function useTimeTracker() {
|
|
29719
|
-
const ctx =
|
|
30024
|
+
const ctx = React92.useContext(TimeTrackerContext);
|
|
29720
30025
|
if (!ctx) {
|
|
29721
30026
|
throw new Error("useTimeTracker must be used inside <TimeTrackerProvider>");
|
|
29722
30027
|
}
|
|
29723
30028
|
return ctx;
|
|
29724
30029
|
}
|
|
29725
30030
|
function useOptionalTimeTracker() {
|
|
29726
|
-
return
|
|
30031
|
+
return React92.useContext(TimeTrackerContext);
|
|
29727
30032
|
}
|
|
29728
30033
|
|
|
29729
30034
|
// src/components/features/time-tracker/time-tracker-panel.tsx
|
|
@@ -29899,7 +30204,7 @@ function TimeTrackerPanel({
|
|
|
29899
30204
|
error: showFieldError ? "Required if no notes added" : void 0,
|
|
29900
30205
|
disableClientFilter: !!onTicketSearch,
|
|
29901
30206
|
onInputChange: (value, reason) => {
|
|
29902
|
-
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall',
|
|
30207
|
+
if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _525 => _525(value)]);
|
|
29903
30208
|
}
|
|
29904
30209
|
}
|
|
29905
30210
|
)
|
|
@@ -29989,7 +30294,7 @@ function LastEntryRow({ entry, onClick }) {
|
|
|
29989
30294
|
{
|
|
29990
30295
|
variant: "outline",
|
|
29991
30296
|
size: "icon",
|
|
29992
|
-
onClick: () => _optionalChain([onClick, 'optionalCall',
|
|
30297
|
+
onClick: () => _optionalChain([onClick, 'optionalCall', _526 => _526(entry)]),
|
|
29993
30298
|
disabled: !onClick,
|
|
29994
30299
|
"aria-label": `Open entry: ${entry.title}`,
|
|
29995
30300
|
className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
|
|
@@ -30033,16 +30338,16 @@ function HeaderButton({
|
|
|
30033
30338
|
function TimeTrackerHeaderButton({ className, disabled }) {
|
|
30034
30339
|
const ctx = useOptionalTimeTracker();
|
|
30035
30340
|
const elapsedLabel = useTrackerClock({
|
|
30036
|
-
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
30037
|
-
runningSince: _optionalChain([ctx, 'optionalAccess',
|
|
30038
|
-
accumulatedMs: _optionalChain([ctx, 'optionalAccess',
|
|
30341
|
+
status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _527 => _527.status]), () => ( "ready")),
|
|
30342
|
+
runningSince: _optionalChain([ctx, 'optionalAccess', _528 => _528.runningSince]),
|
|
30343
|
+
accumulatedMs: _optionalChain([ctx, 'optionalAccess', _529 => _529.accumulatedMs])
|
|
30039
30344
|
});
|
|
30040
30345
|
if (!ctx) return null;
|
|
30041
30346
|
const { isOpen, open, close, status } = ctx;
|
|
30042
30347
|
const isPaused = status === "paused";
|
|
30043
30348
|
const isActive = status === "tracking" || isPaused;
|
|
30044
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30045
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30349
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive4.Root, { open: isOpen, onOpenChange: (next) => next ? open() : close(), children: [
|
|
30350
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive4.Trigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30046
30351
|
HeaderButton,
|
|
30047
30352
|
{
|
|
30048
30353
|
"aria-label": "Time tracker",
|
|
@@ -30076,8 +30381,8 @@ function TimeTrackerHeaderButton({ className, disabled }) {
|
|
|
30076
30381
|
] })
|
|
30077
30382
|
}
|
|
30078
30383
|
) }),
|
|
30079
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30080
|
-
|
|
30384
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive4.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30385
|
+
PopoverPrimitive4.Content,
|
|
30081
30386
|
{
|
|
30082
30387
|
align: "end",
|
|
30083
30388
|
sideOffset: 8,
|
|
@@ -30234,7 +30539,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
30234
30539
|
|
|
30235
30540
|
|
|
30236
30541
|
function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
|
|
30237
|
-
const [expanded, setExpanded] =
|
|
30542
|
+
const [expanded, setExpanded] = React93.useState(false);
|
|
30238
30543
|
const { innerRef, containerStyle } = useCollapsible({ expanded });
|
|
30239
30544
|
const isAdmin = pendingApproval.approvalType === "ADMIN";
|
|
30240
30545
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex flex-col", children: [
|
|
@@ -30302,7 +30607,7 @@ function TicketCard({
|
|
|
30302
30607
|
onApprove,
|
|
30303
30608
|
onReject
|
|
30304
30609
|
}) {
|
|
30305
|
-
const sortableData =
|
|
30610
|
+
const sortableData = React94.useMemo(
|
|
30306
30611
|
() => ({ columnId, type: "ticket" }),
|
|
30307
30612
|
[columnId]
|
|
30308
30613
|
);
|
|
@@ -30318,15 +30623,15 @@ function TicketCard({
|
|
|
30318
30623
|
transition: sortable.transition
|
|
30319
30624
|
};
|
|
30320
30625
|
if (showNewMessage) style.borderColor = columnColor;
|
|
30321
|
-
const showDeviceRow = !!(_optionalChain([ticket, 'access',
|
|
30626
|
+
const showDeviceRow = !!(_optionalChain([ticket, 'access', _530 => _530.deviceHostnames, 'optionalAccess', _531 => _531.length]) || ticket.organizationName);
|
|
30322
30627
|
const deviceText = [
|
|
30323
|
-
_optionalChain([ticket, 'access',
|
|
30628
|
+
_optionalChain([ticket, 'access', _532 => _532.deviceHostnames, 'optionalAccess', _533 => _533.join, 'call', _534 => _534(", ")]),
|
|
30324
30629
|
ticket.organizationName
|
|
30325
30630
|
].filter(Boolean).join(", ");
|
|
30326
30631
|
const handleClick = (e) => {
|
|
30327
30632
|
if (sortable.isDragging) e.preventDefault();
|
|
30328
30633
|
};
|
|
30329
|
-
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access',
|
|
30634
|
+
const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _535 => _535.assignees, 'optionalAccess', _536 => _536.length]) || renderAssignSlot);
|
|
30330
30635
|
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: [
|
|
30331
30636
|
ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30332
30637
|
_chunkGXRWE7NBcjs.Flag02Icon,
|
|
@@ -30335,7 +30640,7 @@ function TicketCard({
|
|
|
30335
30640
|
"aria-label": `Priority: ${ticket.priority}`
|
|
30336
30641
|
}
|
|
30337
30642
|
),
|
|
30338
|
-
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access',
|
|
30643
|
+
renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _537 => _537.assignees, 'optionalAccess', _538 => _538.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
|
|
30339
30644
|
ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30340
30645
|
SquareAvatar,
|
|
30341
30646
|
{
|
|
@@ -30366,7 +30671,7 @@ function TicketCard({
|
|
|
30366
30671
|
] }),
|
|
30367
30672
|
rightSection
|
|
30368
30673
|
] }),
|
|
30369
|
-
_optionalChain([ticket, 'access',
|
|
30674
|
+
_optionalChain([ticket, 'access', _539 => _539.tags, 'optionalAccess', _540 => _540.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
|
|
30370
30675
|
timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
|
|
30371
30676
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto text-h6 truncate text-ods-text-secondary", children: timestampLabel }) }),
|
|
30372
30677
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
|
|
@@ -30448,7 +30753,7 @@ function TicketTagRow({ tags }) {
|
|
|
30448
30753
|
|
|
30449
30754
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
30450
30755
|
|
|
30451
|
-
var TicketCardSkeleton =
|
|
30756
|
+
var TicketCardSkeleton = React95.forwardRef(
|
|
30452
30757
|
({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
30453
30758
|
"div",
|
|
30454
30759
|
{
|
|
@@ -30542,8 +30847,8 @@ function BoardColumn({
|
|
|
30542
30847
|
);
|
|
30543
30848
|
}
|
|
30544
30849
|
function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReject, onLoadMore, loadMoreRootMargin }) {
|
|
30545
|
-
const ticketIds =
|
|
30546
|
-
const droppableData =
|
|
30850
|
+
const ticketIds = React96.useMemo(() => column.tickets.map((t) => t.id), [column.tickets]);
|
|
30851
|
+
const droppableData = React96.useMemo(
|
|
30547
30852
|
() => ({ columnId: column.id, type: "column" }),
|
|
30548
30853
|
[column.id]
|
|
30549
30854
|
);
|
|
@@ -30552,13 +30857,13 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30552
30857
|
data: droppableData,
|
|
30553
30858
|
disabled: column.dropDisabled
|
|
30554
30859
|
});
|
|
30555
|
-
const scrollRef =
|
|
30556
|
-
const sentinelRef =
|
|
30557
|
-
const loadMoreRef =
|
|
30860
|
+
const scrollRef = React96.useRef(null);
|
|
30861
|
+
const sentinelRef = React96.useRef(null);
|
|
30862
|
+
const loadMoreRef = React96.useRef(onLoadMore);
|
|
30558
30863
|
loadMoreRef.current = onLoadMore;
|
|
30559
|
-
const columnIdRef =
|
|
30864
|
+
const columnIdRef = React96.useRef(column.id);
|
|
30560
30865
|
columnIdRef.current = column.id;
|
|
30561
|
-
|
|
30866
|
+
React96.useEffect(() => {
|
|
30562
30867
|
if (!column.hasMore || column.isLoadingMore) return;
|
|
30563
30868
|
const sentinel = sentinelRef.current;
|
|
30564
30869
|
const root = scrollRef.current;
|
|
@@ -30566,7 +30871,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30566
30871
|
const observer = new IntersectionObserver(
|
|
30567
30872
|
(entries) => {
|
|
30568
30873
|
if (entries.some((e) => e.isIntersecting)) {
|
|
30569
|
-
_optionalChain([loadMoreRef, 'access',
|
|
30874
|
+
_optionalChain([loadMoreRef, 'access', _541 => _541.current, 'optionalCall', _542 => _542(columnIdRef.current)]);
|
|
30570
30875
|
}
|
|
30571
30876
|
},
|
|
30572
30877
|
{ root, rootMargin: loadMoreRootMargin }
|
|
@@ -30574,7 +30879,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30574
30879
|
observer.observe(sentinel);
|
|
30575
30880
|
return () => observer.disconnect();
|
|
30576
30881
|
}, [column.hasMore, column.isLoadingMore, loadMoreRootMargin]);
|
|
30577
|
-
const setBodyRef =
|
|
30882
|
+
const setBodyRef = React96.useCallback(
|
|
30578
30883
|
(el) => {
|
|
30579
30884
|
scrollRef.current = el;
|
|
30580
30885
|
setDroppableRef(el);
|
|
@@ -30596,7 +30901,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30596
30901
|
ticket: t,
|
|
30597
30902
|
columnId: column.id,
|
|
30598
30903
|
columnColor: column.color,
|
|
30599
|
-
href: _optionalChain([getTicketHref, 'optionalCall',
|
|
30904
|
+
href: _optionalChain([getTicketHref, 'optionalCall', _543 => _543(t.id)]),
|
|
30600
30905
|
renderAssignSlot,
|
|
30601
30906
|
onApprove,
|
|
30602
30907
|
onReject,
|
|
@@ -30611,7 +30916,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
|
|
|
30611
30916
|
);
|
|
30612
30917
|
}
|
|
30613
30918
|
function SkeletonStack({ count = 4 }) {
|
|
30614
|
-
const keys =
|
|
30919
|
+
const keys = React96.useMemo(
|
|
30615
30920
|
() => Array.from({ length: count }, () => Math.random().toString(36).slice(2)),
|
|
30616
30921
|
[count]
|
|
30617
30922
|
);
|
|
@@ -30681,32 +30986,32 @@ function Board({
|
|
|
30681
30986
|
onThumbPointerMove,
|
|
30682
30987
|
onThumbPointerUp
|
|
30683
30988
|
} = _chunk27IO7V3Pcjs.useHorizontalScrollbar.call(void 0, );
|
|
30684
|
-
const [items, setItems] =
|
|
30685
|
-
const isDraggingRef =
|
|
30686
|
-
|
|
30989
|
+
const [items, setItems] = React97.useState(columns);
|
|
30990
|
+
const isDraggingRef = React97.useRef(false);
|
|
30991
|
+
React97.useEffect(() => {
|
|
30687
30992
|
if (!isDraggingRef.current) setItems(columns);
|
|
30688
30993
|
}, [columns]);
|
|
30689
|
-
const dragOriginRef =
|
|
30690
|
-
const [activeTicket, setActiveTicket] =
|
|
30994
|
+
const dragOriginRef = React97.useRef(null);
|
|
30995
|
+
const [activeTicket, setActiveTicket] = React97.useState(null);
|
|
30691
30996
|
const sensors = _core.useSensors.call(void 0,
|
|
30692
30997
|
_core.useSensor.call(void 0, _core.PointerSensor, { activationConstraint: { distance: 6 } }),
|
|
30693
30998
|
_core.useSensor.call(void 0, _core.KeyboardSensor, { coordinateGetter: _sortable.sortableKeyboardCoordinates })
|
|
30694
30999
|
);
|
|
30695
|
-
const collisionDetection =
|
|
31000
|
+
const collisionDetection = React97.useCallback((args) => {
|
|
30696
31001
|
const pointer = _core.pointerWithin.call(void 0, args);
|
|
30697
31002
|
const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
|
|
30698
31003
|
const ticketHit = intersections.find(
|
|
30699
|
-
(c) => _optionalChain([c, 'access',
|
|
31004
|
+
(c) => _optionalChain([c, 'access', _544 => _544.data, 'optionalAccess', _545 => _545.droppableContainer, 'optionalAccess', _546 => _546.data, 'optionalAccess', _547 => _547.current, 'optionalAccess', _548 => _548.type]) === "ticket"
|
|
30700
31005
|
);
|
|
30701
31006
|
if (ticketHit) return [ticketHit];
|
|
30702
31007
|
const columnHit = intersections.find(
|
|
30703
|
-
(c) => _optionalChain([c, 'access',
|
|
31008
|
+
(c) => _optionalChain([c, 'access', _549 => _549.data, 'optionalAccess', _550 => _550.droppableContainer, 'optionalAccess', _551 => _551.data, 'optionalAccess', _552 => _552.current, 'optionalAccess', _553 => _553.type]) === "column"
|
|
30704
31009
|
);
|
|
30705
31010
|
if (columnHit) {
|
|
30706
|
-
const columnId = _optionalChain([columnHit, 'access',
|
|
31011
|
+
const columnId = _optionalChain([columnHit, 'access', _554 => _554.data, 'optionalAccess', _555 => _555.droppableContainer, 'optionalAccess', _556 => _556.data, 'optionalAccess', _557 => _557.current, 'optionalAccess', _558 => _558.columnId]);
|
|
30707
31012
|
const ticketsInColumn = args.droppableContainers.filter((c) => {
|
|
30708
31013
|
const d = c.data.current;
|
|
30709
|
-
return _optionalChain([d, 'optionalAccess',
|
|
31014
|
+
return _optionalChain([d, 'optionalAccess', _559 => _559.type]) === "ticket" && d.columnId === columnId;
|
|
30710
31015
|
});
|
|
30711
31016
|
if (ticketsInColumn.length > 0) {
|
|
30712
31017
|
const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
|
|
@@ -30731,20 +31036,20 @@ function Board({
|
|
|
30731
31036
|
const overId = String(over.id);
|
|
30732
31037
|
if (activeId === overId) return;
|
|
30733
31038
|
const overData = over.data.current;
|
|
30734
|
-
const fromColumnId = _optionalChain([locate, 'call',
|
|
30735
|
-
const toColumnId = _optionalChain([overData, 'optionalAccess',
|
|
31039
|
+
const fromColumnId = _optionalChain([locate, 'call', _560 => _560(items, activeId), 'optionalAccess', _561 => _561.columnId]);
|
|
31040
|
+
const toColumnId = _optionalChain([overData, 'optionalAccess', _562 => _562.columnId]);
|
|
30736
31041
|
if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
|
|
30737
31042
|
const origin = dragOriginRef.current;
|
|
30738
|
-
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess',
|
|
31043
|
+
const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _563 => _563.fromColumnId]) === toColumnId;
|
|
30739
31044
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
30740
|
-
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess',
|
|
30741
|
-
if (_optionalChain([targetCol, 'optionalAccess',
|
|
31045
|
+
const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _564 => _564.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
|
|
31046
|
+
if (_optionalChain([targetCol, 'optionalAccess', _565 => _565.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
|
|
30742
31047
|
setItems((prev) => {
|
|
30743
31048
|
const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
|
|
30744
31049
|
const toCol = prev.find((c) => c.id === toColumnId);
|
|
30745
31050
|
if (fromIndex < 0 || !toCol) return prev;
|
|
30746
31051
|
let toIndex;
|
|
30747
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
31052
|
+
if (_optionalChain([overData, 'optionalAccess', _566 => _566.type]) === "column") {
|
|
30748
31053
|
toIndex = toCol.tickets.length;
|
|
30749
31054
|
} else {
|
|
30750
31055
|
const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
|
|
@@ -30786,14 +31091,14 @@ function Board({
|
|
|
30786
31091
|
const toColumnId = located.columnId;
|
|
30787
31092
|
const isCrossColumn = origin.fromColumnId !== toColumnId;
|
|
30788
31093
|
const targetCol = items.find((c) => c.id === toColumnId);
|
|
30789
|
-
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess',
|
|
31094
|
+
if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _567 => _567.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _568 => _568.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
|
|
30790
31095
|
setItems(columns);
|
|
30791
31096
|
return;
|
|
30792
31097
|
}
|
|
30793
31098
|
let finalIndex = located.index;
|
|
30794
|
-
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access',
|
|
31099
|
+
let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _569 => _569.find, 'call', _570 => _570((c) => c.id === toColumnId), 'optionalAccess', _571 => _571.tickets]), () => ( []));
|
|
30795
31100
|
const overData = over.data.current;
|
|
30796
|
-
if (_optionalChain([overData, 'optionalAccess',
|
|
31101
|
+
if (_optionalChain([overData, 'optionalAccess', _572 => _572.type]) === "ticket") {
|
|
30797
31102
|
const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
|
|
30798
31103
|
if (overIndex >= 0 && overIndex !== located.index) {
|
|
30799
31104
|
finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
|
|
@@ -30813,8 +31118,8 @@ function Board({
|
|
|
30813
31118
|
ticketId: origin.ticketId,
|
|
30814
31119
|
fromColumnId: origin.fromColumnId,
|
|
30815
31120
|
toColumnId,
|
|
30816
|
-
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
30817
|
-
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access',
|
|
31121
|
+
afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _573 => _573[finalIndex - 1], 'optionalAccess', _574 => _574.id]), () => ( null)),
|
|
31122
|
+
beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _575 => _575[finalIndex + 1], 'optionalAccess', _576 => _576.id]), () => ( null))
|
|
30818
31123
|
});
|
|
30819
31124
|
};
|
|
30820
31125
|
const handleDragCancel = () => {
|
|
@@ -30843,10 +31148,10 @@ function Board({
|
|
|
30843
31148
|
children: items.map((column, i) => {
|
|
30844
31149
|
const prev = items[i - 1];
|
|
30845
31150
|
const next = items[i + 1];
|
|
30846
|
-
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess',
|
|
30847
|
-
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess',
|
|
31151
|
+
const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _577 => _577.system]));
|
|
31152
|
+
const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _578 => _578.system]));
|
|
30848
31153
|
const showGap = i > 0 && !joinLeft;
|
|
30849
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31154
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React97.Fragment, { children: [
|
|
30850
31155
|
showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
|
|
30851
31156
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
30852
31157
|
BoardColumn,
|
|
@@ -30897,7 +31202,7 @@ function Board({
|
|
|
30897
31202
|
{
|
|
30898
31203
|
ticket: activeTicket.ticket,
|
|
30899
31204
|
columnId: activeTicket.columnId,
|
|
30900
|
-
columnColor: _optionalChain([items, 'access',
|
|
31205
|
+
columnColor: _optionalChain([items, 'access', _579 => _579.find, 'call', _580 => _580((c) => c.id === activeTicket.columnId), 'optionalAccess', _581 => _581.color]),
|
|
30901
31206
|
isOverlay: true
|
|
30902
31207
|
}
|
|
30903
31208
|
) : null })
|
|
@@ -30913,7 +31218,7 @@ function locate(cols, ticketId) {
|
|
|
30913
31218
|
return null;
|
|
30914
31219
|
}
|
|
30915
31220
|
function findIndexInColumn(cols, columnId, ticketId) {
|
|
30916
|
-
return _nullishCoalesce(_optionalChain([cols, 'access',
|
|
31221
|
+
return _nullishCoalesce(_optionalChain([cols, 'access', _582 => _582.find, 'call', _583 => _583((c) => c.id === columnId), 'optionalAccess', _584 => _584.tickets, 'access', _585 => _585.findIndex, 'call', _586 => _586((t) => t.id === ticketId)]), () => ( -1));
|
|
30917
31222
|
}
|
|
30918
31223
|
|
|
30919
31224
|
// src/components/features/board/types.ts
|
|
@@ -31004,7 +31309,7 @@ function TicketStatusConfigList({
|
|
|
31004
31309
|
if (oldIndex === -1 || newIndex === -1) return;
|
|
31005
31310
|
onReorder(oldIndex, newIndex);
|
|
31006
31311
|
};
|
|
31007
|
-
const sortableIds =
|
|
31312
|
+
const sortableIds = React98.useMemo(() => items.map((i) => i.id), [items]);
|
|
31008
31313
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _core.DndContext, { sensors, collisionDetection: _core.closestCenter, onDragEnd: handleDragEnd, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _sortable.SortableContext, { items: sortableIds, strategy: _sortable.verticalListSortingStrategy, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex w-full flex-col gap-[var(--spacing-system-xs)]", className), children: items.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableRow, { id: item.id, children: (args) => renderRow(item, args) }, item.id)) }) }) });
|
|
31009
31314
|
}
|
|
31010
31315
|
function SortableRow({
|
|
@@ -31095,7 +31400,7 @@ function Header2({ config, platform }) {
|
|
|
31095
31400
|
}, [config.autoHide]);
|
|
31096
31401
|
const renderNavigationItem = (item) => {
|
|
31097
31402
|
if (item.element) {
|
|
31098
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31403
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: item.element }, item.id);
|
|
31099
31404
|
}
|
|
31100
31405
|
if (item.children && item.children.length > 0) {
|
|
31101
31406
|
const isOpen = openDropdowns[item.id] || false;
|
|
@@ -31161,7 +31466,7 @@ function Header2({ config, platform }) {
|
|
|
31161
31466
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
31162
31467
|
"flex justify-start w-full",
|
|
31163
31468
|
"font-bold text-[16px] leading-none tracking-[-0.32px]",
|
|
31164
|
-
index < (_nullishCoalesce(_optionalChain([item, 'access',
|
|
31469
|
+
index < (_nullishCoalesce(_optionalChain([item, 'access', _587 => _587.children, 'optionalAccess', _588 => _588.length]), () => ( 0))) - 1 && "mb-1",
|
|
31165
31470
|
"text-ods-text-primary",
|
|
31166
31471
|
// All dropdown items use primary text color
|
|
31167
31472
|
child.isActive && "bg-ods-bg-hover"
|
|
@@ -31253,7 +31558,7 @@ function Header2({ config, platform }) {
|
|
|
31253
31558
|
style: config.style,
|
|
31254
31559
|
children: [
|
|
31255
31560
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
31256
|
-
_optionalChain([config, 'access',
|
|
31561
|
+
_optionalChain([config, 'access', _589 => _589.actions, 'optionalAccess', _590 => _590.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
|
|
31257
31562
|
/* @__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 })
|
|
31258
31563
|
] }),
|
|
31259
31564
|
config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -31270,7 +31575,7 @@ function Header2({ config, platform }) {
|
|
|
31270
31575
|
}
|
|
31271
31576
|
),
|
|
31272
31577
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
|
|
31273
|
-
_optionalChain([config, 'access',
|
|
31578
|
+
_optionalChain([config, 'access', _591 => _591.actions, 'optionalAccess', _592 => _592.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
|
|
31274
31579
|
config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
31275
31580
|
_chunkQJGRP2YEcjs.Button,
|
|
31276
31581
|
{
|
|
@@ -31278,10 +31583,10 @@ function Header2({ config, platform }) {
|
|
|
31278
31583
|
size: "icon",
|
|
31279
31584
|
className: "flex md:hidden",
|
|
31280
31585
|
onClick: () => {
|
|
31281
|
-
_optionalChain([config, 'access',
|
|
31586
|
+
_optionalChain([config, 'access', _593 => _593.mobile, 'optionalAccess', _594 => _594.onToggle, 'optionalCall', _595 => _595()]);
|
|
31282
31587
|
},
|
|
31283
|
-
"aria-label": _optionalChain([config, 'access',
|
|
31284
|
-
leftIcon: _optionalChain([config, 'access',
|
|
31588
|
+
"aria-label": _optionalChain([config, 'access', _596 => _596.mobile, 'optionalAccess', _597 => _597.isOpen]) ? "Close menu" : "Open menu",
|
|
31589
|
+
leftIcon: _optionalChain([config, 'access', _598 => _598.mobile, 'optionalAccess', _599 => _599.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.Menu01Icon, {})
|
|
31285
31590
|
}
|
|
31286
31591
|
)
|
|
31287
31592
|
] })
|
|
@@ -31298,10 +31603,10 @@ function Header2({ config, platform }) {
|
|
|
31298
31603
|
// src/components/navigation/header-skeleton.tsx
|
|
31299
31604
|
|
|
31300
31605
|
function HeaderSkeleton({ config }) {
|
|
31301
|
-
const showNavigation = _optionalChain([config, 'optionalAccess',
|
|
31302
|
-
const showActions = _optionalChain([config, 'optionalAccess',
|
|
31303
|
-
const showMobileMenu = _optionalChain([config, 'optionalAccess',
|
|
31304
|
-
const isAdminHeader = _optionalChain([config, 'optionalAccess',
|
|
31606
|
+
const showNavigation = _optionalChain([config, 'optionalAccess', _600 => _600.navigation]) && config.navigation.items.length > 0;
|
|
31607
|
+
const showActions = _optionalChain([config, 'optionalAccess', _601 => _601.actions, 'optionalAccess', _602 => _602.right]) && config.actions.right.length > 0;
|
|
31608
|
+
const showMobileMenu = _optionalChain([config, 'optionalAccess', _603 => _603.mobile, 'optionalAccess', _604 => _604.enabled]);
|
|
31609
|
+
const isAdminHeader = _optionalChain([config, 'optionalAccess', _605 => _605.className, 'optionalAccess', _606 => _606.includes, 'call', _607 => _607("admin")]);
|
|
31305
31610
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
31306
31611
|
"header",
|
|
31307
31612
|
{
|
|
@@ -31310,11 +31615,11 @@ function HeaderSkeleton({ config }) {
|
|
|
31310
31615
|
"bg-ods-card border-b border-ods-border backdrop-blur-sm",
|
|
31311
31616
|
"px-6 py-3",
|
|
31312
31617
|
"transition-opacity duration-300 ease-in-out",
|
|
31313
|
-
_optionalChain([config, 'optionalAccess',
|
|
31618
|
+
_optionalChain([config, 'optionalAccess', _608 => _608.className])
|
|
31314
31619
|
),
|
|
31315
31620
|
children: [
|
|
31316
31621
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
|
|
31317
|
-
isAdminHeader && _optionalChain([config, 'optionalAccess',
|
|
31622
|
+
isAdminHeader && _optionalChain([config, 'optionalAccess', _609 => _609.actions, 'optionalAccess', _610 => _610.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" }) }),
|
|
31318
31623
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
|
|
31319
31624
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
|
|
31320
31625
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
|
|
@@ -31322,8 +31627,8 @@ function HeaderSkeleton({ config }) {
|
|
|
31322
31627
|
] }),
|
|
31323
31628
|
showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
31324
31629
|
"hidden md:flex items-center gap-2",
|
|
31325
|
-
_optionalChain([config, 'optionalAccess',
|
|
31326
|
-
_optionalChain([config, 'optionalAccess',
|
|
31630
|
+
_optionalChain([config, 'optionalAccess', _611 => _611.navigation, 'optionalAccess', _612 => _612.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
|
|
31631
|
+
_optionalChain([config, 'optionalAccess', _613 => _613.navigation, 'optionalAccess', _614 => _614.position]) === "right" && "ml-auto mr-4"
|
|
31327
31632
|
), children: [
|
|
31328
31633
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
|
|
31329
31634
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
|
|
@@ -31371,7 +31676,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
31371
31676
|
_react.useEffect.call(void 0, () => {
|
|
31372
31677
|
const handleKeyDown = (e) => {
|
|
31373
31678
|
if (e.key === "Escape" && isOpen) {
|
|
31374
|
-
_optionalChain([config, 'access',
|
|
31679
|
+
_optionalChain([config, 'access', _615 => _615.onClose, 'optionalCall', _616 => _616()]);
|
|
31375
31680
|
}
|
|
31376
31681
|
};
|
|
31377
31682
|
if (isOpen) {
|
|
@@ -31388,7 +31693,7 @@ function MobileNavPanel({ isOpen, config }) {
|
|
|
31388
31693
|
if (item.onClick) {
|
|
31389
31694
|
item.onClick();
|
|
31390
31695
|
}
|
|
31391
|
-
_optionalChain([config, 'access',
|
|
31696
|
+
_optionalChain([config, 'access', _617 => _617.onClose, 'optionalCall', _618 => _618()]);
|
|
31392
31697
|
};
|
|
31393
31698
|
if (item.href) {
|
|
31394
31699
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -31558,7 +31863,7 @@ function SlidingSidebar({ config }) {
|
|
|
31558
31863
|
variant: "transparent",
|
|
31559
31864
|
size: "default",
|
|
31560
31865
|
onClick: () => {
|
|
31561
|
-
_optionalChain([item, 'access',
|
|
31866
|
+
_optionalChain([item, 'access', _619 => _619.onClick, 'optionalCall', _620 => _620()]);
|
|
31562
31867
|
config.onClose();
|
|
31563
31868
|
},
|
|
31564
31869
|
leftIcon: item.icon,
|
|
@@ -31581,7 +31886,7 @@ function SlidingSidebar({ config }) {
|
|
|
31581
31886
|
variant: "transparent",
|
|
31582
31887
|
size: "default",
|
|
31583
31888
|
onClick: () => {
|
|
31584
|
-
_optionalChain([item, 'access',
|
|
31889
|
+
_optionalChain([item, 'access', _621 => _621.onClick, 'optionalCall', _622 => _622()]);
|
|
31585
31890
|
config.onClose();
|
|
31586
31891
|
},
|
|
31587
31892
|
leftIcon: item.icon,
|
|
@@ -31708,7 +32013,7 @@ function StickySectionNav({
|
|
|
31708
32013
|
] });
|
|
31709
32014
|
}
|
|
31710
32015
|
function useSectionNavigation(sections, options) {
|
|
31711
|
-
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access',
|
|
32016
|
+
const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _623 => _623[0], 'optionalAccess', _624 => _624.id]) || "");
|
|
31712
32017
|
const isScrollingFromClick = _react.useRef.call(void 0, false);
|
|
31713
32018
|
const { offset: offset2 = 100 } = options || {};
|
|
31714
32019
|
const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
|
|
@@ -31732,7 +32037,7 @@ function useSectionNavigation(sections, options) {
|
|
|
31732
32037
|
const handleScroll = () => {
|
|
31733
32038
|
if (isScrollingFromClick.current) return;
|
|
31734
32039
|
const scrollPosition = window.scrollY + offset2 + 50;
|
|
31735
|
-
let currentSection = _optionalChain([sections, 'access',
|
|
32040
|
+
let currentSection = _optionalChain([sections, 'access', _625 => _625[0], 'optionalAccess', _626 => _626.id]) || "";
|
|
31736
32041
|
for (let i = sections.length - 1; i >= 0; i--) {
|
|
31737
32042
|
const element = document.getElementById(sections[i].id);
|
|
31738
32043
|
if (element && scrollPosition >= element.offsetTop) {
|
|
@@ -31933,7 +32238,7 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
31933
32238
|
} else {
|
|
31934
32239
|
setDesktopMinimized((prev) => !prev);
|
|
31935
32240
|
}
|
|
31936
|
-
_optionalChain([config, 'access',
|
|
32241
|
+
_optionalChain([config, 'access', _627 => _627.onToggleMinimized, 'optionalCall', _628 => _628()]);
|
|
31937
32242
|
}, [isTablet, setDesktopMinimized, config]);
|
|
31938
32243
|
const closeOverlay = _react.useCallback.call(void 0, () => {
|
|
31939
32244
|
setTabletMinimized(true);
|
|
@@ -31947,11 +32252,11 @@ function NavigationSidebar({ config, disabled = false }) {
|
|
|
31947
32252
|
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
31948
32253
|
}, [isOverlayOpen, closeOverlay]);
|
|
31949
32254
|
const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
|
|
31950
|
-
_optionalChain([event, 'optionalAccess',
|
|
32255
|
+
_optionalChain([event, 'optionalAccess', _629 => _629.stopPropagation, 'call', _630 => _630()]);
|
|
31951
32256
|
if (item.onClick) {
|
|
31952
32257
|
item.onClick();
|
|
31953
32258
|
} else if (item.path) {
|
|
31954
|
-
_optionalChain([config, 'access',
|
|
32259
|
+
_optionalChain([config, 'access', _631 => _631.onNavigate, 'optionalCall', _632 => _632(item.path)]);
|
|
31955
32260
|
}
|
|
31956
32261
|
if (isTablet) setTabletMinimized(true);
|
|
31957
32262
|
}, [config, isTablet]);
|
|
@@ -32059,7 +32364,7 @@ function HeaderGlobalSearch({
|
|
|
32059
32364
|
placeholder = "Global Search",
|
|
32060
32365
|
className
|
|
32061
32366
|
}) {
|
|
32062
|
-
const [internalValue, setInternalValue] =
|
|
32367
|
+
const [internalValue, setInternalValue] = React113.default.useState(value);
|
|
32063
32368
|
const currentValue = onChange ? value : internalValue;
|
|
32064
32369
|
const handleChange = (e) => {
|
|
32065
32370
|
const newValue = e.target.value;
|
|
@@ -32071,11 +32376,11 @@ function HeaderGlobalSearch({
|
|
|
32071
32376
|
};
|
|
32072
32377
|
const handleSubmit = (e) => {
|
|
32073
32378
|
e.preventDefault();
|
|
32074
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
32379
|
+
_optionalChain([onSubmit, 'optionalCall', _633 => _633(currentValue)]);
|
|
32075
32380
|
};
|
|
32076
32381
|
const handleKeyDown = (e) => {
|
|
32077
32382
|
if (e.key === "Enter") {
|
|
32078
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
32383
|
+
_optionalChain([onSubmit, 'optionalCall', _634 => _634(currentValue)]);
|
|
32079
32384
|
}
|
|
32080
32385
|
};
|
|
32081
32386
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -32169,8 +32474,8 @@ function HeaderOrganizationFilter({
|
|
|
32169
32474
|
className
|
|
32170
32475
|
}) {
|
|
32171
32476
|
const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
|
|
32172
|
-
const displayName = _optionalChain([selectedOrg, 'optionalAccess',
|
|
32173
|
-
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess',
|
|
32477
|
+
const displayName = _optionalChain([selectedOrg, 'optionalAccess', _635 => _635.name]) || "All Organizations";
|
|
32478
|
+
const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _636 => _636.deviceCount]), () => ( totalDeviceCount));
|
|
32174
32479
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenu, { children: [
|
|
32175
32480
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32176
32481
|
"button",
|
|
@@ -32195,11 +32500,11 @@ function HeaderOrganizationFilter({
|
|
|
32195
32500
|
}
|
|
32196
32501
|
) }),
|
|
32197
32502
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
|
|
32198
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
32503
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _637 => _637("")]), children: "All Organizations" }),
|
|
32199
32504
|
organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32200
32505
|
_chunkQJGRP2YEcjs.DropdownMenuItem,
|
|
32201
32506
|
{
|
|
32202
|
-
onClick: () => _optionalChain([onOrgChange, 'optionalCall',
|
|
32507
|
+
onClick: () => _optionalChain([onOrgChange, 'optionalCall', _638 => _638(org.id)]),
|
|
32203
32508
|
children: org.name
|
|
32204
32509
|
},
|
|
32205
32510
|
org.id
|
|
@@ -32210,7 +32515,7 @@ function HeaderOrganizationFilter({
|
|
|
32210
32515
|
|
|
32211
32516
|
// src/components/navigation/app-header.tsx
|
|
32212
32517
|
|
|
32213
|
-
var AppHeader =
|
|
32518
|
+
var AppHeader = React113.default.memo(function AppHeader2({
|
|
32214
32519
|
showSearch,
|
|
32215
32520
|
onSearch,
|
|
32216
32521
|
showOrganizations,
|
|
@@ -32389,9 +32694,9 @@ function NotificationsHeaderButton({
|
|
|
32389
32694
|
dimmedClass
|
|
32390
32695
|
}) {
|
|
32391
32696
|
const ctx = useOptionalNotifications();
|
|
32392
|
-
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
32393
|
-
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess',
|
|
32394
|
-
const onClick = _optionalChain([ctx, 'optionalAccess',
|
|
32697
|
+
const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _639 => _639.unreadCount]), () => ( fallbackUnreadCount))) > 0;
|
|
32698
|
+
const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _640 => _640.isOpen]), () => ( false));
|
|
32699
|
+
const onClick = _optionalChain([ctx, 'optionalAccess', _641 => _641.toggle]);
|
|
32395
32700
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32396
32701
|
HeaderButton,
|
|
32397
32702
|
{
|
|
@@ -32420,7 +32725,7 @@ function NotificationsHeaderButton({
|
|
|
32420
32725
|
|
|
32421
32726
|
|
|
32422
32727
|
var HEADER_HEIGHT = 48;
|
|
32423
|
-
var MobileBurgerMenu =
|
|
32728
|
+
var MobileBurgerMenu = React113.default.memo(function MobileBurgerMenu2({
|
|
32424
32729
|
isOpen,
|
|
32425
32730
|
onClose,
|
|
32426
32731
|
config,
|
|
@@ -32455,7 +32760,7 @@ var MobileBurgerMenu = React112.default.memo(function MobileBurgerMenu2({
|
|
|
32455
32760
|
if (item.onClick) {
|
|
32456
32761
|
item.onClick();
|
|
32457
32762
|
} else if (item.path) {
|
|
32458
|
-
_optionalChain([config, 'access',
|
|
32763
|
+
_optionalChain([config, 'access', _642 => _642.onNavigate, 'optionalCall', _643 => _643(item.path)]);
|
|
32459
32764
|
}
|
|
32460
32765
|
onClose();
|
|
32461
32766
|
}, [config, onClose]);
|
|
@@ -32481,7 +32786,7 @@ var MobileBurgerMenu = React112.default.memo(function MobileBurgerMenu2({
|
|
|
32481
32786
|
),
|
|
32482
32787
|
"aria-current": isActive ? "page" : void 0,
|
|
32483
32788
|
children: [
|
|
32484
|
-
item.icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0 size-4 flex items-center justify-center", children:
|
|
32789
|
+
item.icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0 size-4 flex items-center justify-center", children: React113.default.cloneElement(item.icon, {
|
|
32485
32790
|
size: 16,
|
|
32486
32791
|
color: isActive && !disabled ? "var(--color-accent-primary)" : "var(--color-text-secondary)"
|
|
32487
32792
|
}) }),
|
|
@@ -32500,7 +32805,7 @@ var MobileBurgerMenu = React112.default.memo(function MobileBurgerMenu2({
|
|
|
32500
32805
|
rows.push(items.slice(i, i + 2));
|
|
32501
32806
|
}
|
|
32502
32807
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-col gap-3", children: rows.map((row, rowIndex) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-3", children: [
|
|
32503
|
-
row.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32808
|
+
row.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: renderNavigationItem(item, true) }, item.id)),
|
|
32504
32809
|
row.length === 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1" })
|
|
32505
32810
|
] }, rowIndex)) });
|
|
32506
32811
|
};
|
|
@@ -32591,7 +32896,7 @@ var MobileBurgerMenu = React112.default.memo(function MobileBurgerMenu2({
|
|
|
32591
32896
|
}
|
|
32592
32897
|
),
|
|
32593
32898
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { "aria-label": "Primary navigation", children: renderNavigationGrid(primaryItems) }),
|
|
32594
|
-
secondaryItems.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { "aria-label": "Secondary navigation", className: "flex flex-col gap-3", children: secondaryItems.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
32899
|
+
secondaryItems.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "nav", { "aria-label": "Secondary navigation", className: "flex flex-col gap-3", children: secondaryItems.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, React113.default.Fragment, { children: renderNavigationItem(item, false) }, item.id)) }),
|
|
32595
32900
|
onLogout && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32596
32901
|
"button",
|
|
32597
32902
|
{
|
|
@@ -32683,7 +32988,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
32683
32988
|
|
|
32684
32989
|
|
|
32685
32990
|
|
|
32686
|
-
var DrawerOpenContext =
|
|
32991
|
+
var DrawerOpenContext = React106.createContext(false);
|
|
32687
32992
|
var AppLayoutDrawerRoot = ({
|
|
32688
32993
|
open: openProp,
|
|
32689
32994
|
defaultOpen,
|
|
@@ -32692,13 +32997,13 @@ var AppLayoutDrawerRoot = ({
|
|
|
32692
32997
|
children,
|
|
32693
32998
|
...rest
|
|
32694
32999
|
}) => {
|
|
32695
|
-
const [internalOpen, setInternalOpen] =
|
|
33000
|
+
const [internalOpen, setInternalOpen] = React106.useState(_nullishCoalesce(defaultOpen, () => ( false)));
|
|
32696
33001
|
const isControlled = openProp !== void 0;
|
|
32697
33002
|
const open = isControlled ? openProp : internalOpen;
|
|
32698
|
-
const handleOpenChange =
|
|
33003
|
+
const handleOpenChange = React106.useCallback(
|
|
32699
33004
|
(next) => {
|
|
32700
33005
|
if (!isControlled) setInternalOpen(next);
|
|
32701
|
-
_optionalChain([onOpenChange, 'optionalCall',
|
|
33006
|
+
_optionalChain([onOpenChange, 'optionalCall', _644 => _644(next)]);
|
|
32702
33007
|
},
|
|
32703
33008
|
[isControlled, onOpenChange]
|
|
32704
33009
|
);
|
|
@@ -32789,8 +33094,8 @@ function useContainedResizableSize({
|
|
|
32789
33094
|
storageKey,
|
|
32790
33095
|
container
|
|
32791
33096
|
}) {
|
|
32792
|
-
const [available, setAvailable] =
|
|
32793
|
-
|
|
33097
|
+
const [available, setAvailable] = React106.useState(0);
|
|
33098
|
+
React106.useEffect(() => {
|
|
32794
33099
|
if (!enabled || !container) return;
|
|
32795
33100
|
const update = () => {
|
|
32796
33101
|
setAvailable(isHorizontal ? container.clientWidth : container.clientHeight);
|
|
@@ -32800,14 +33105,14 @@ function useContainedResizableSize({
|
|
|
32800
33105
|
ro.observe(container);
|
|
32801
33106
|
return () => ro.disconnect();
|
|
32802
33107
|
}, [enabled, container, isHorizontal]);
|
|
32803
|
-
const clampToContainer =
|
|
33108
|
+
const clampToContainer = React106.useCallback(
|
|
32804
33109
|
(value) => {
|
|
32805
33110
|
const effectiveMax = available > 0 ? Math.min(maxSize, available - 40) : maxSize;
|
|
32806
33111
|
return clamp3(value, minSize, Math.max(minSize, effectiveMax));
|
|
32807
33112
|
},
|
|
32808
33113
|
[available, minSize, maxSize]
|
|
32809
33114
|
);
|
|
32810
|
-
const readInitial =
|
|
33115
|
+
const readInitial = React106.useCallback(() => {
|
|
32811
33116
|
if (!enabled) return defaultSize;
|
|
32812
33117
|
if (typeof window === "undefined") return defaultSize;
|
|
32813
33118
|
if (!storageKey) return defaultSize;
|
|
@@ -32821,19 +33126,19 @@ function useContainedResizableSize({
|
|
|
32821
33126
|
return defaultSize;
|
|
32822
33127
|
}
|
|
32823
33128
|
}, [enabled, storageKey, defaultSize]);
|
|
32824
|
-
const [size, setSizeRaw] =
|
|
32825
|
-
const setSize =
|
|
33129
|
+
const [size, setSizeRaw] = React106.useState(readInitial);
|
|
33130
|
+
const setSize = React106.useCallback(
|
|
32826
33131
|
(next) => setSizeRaw(clampToContainer(next)),
|
|
32827
33132
|
[clampToContainer]
|
|
32828
33133
|
);
|
|
32829
|
-
|
|
33134
|
+
React106.useEffect(() => {
|
|
32830
33135
|
if (!enabled || !storageKey || typeof window === "undefined") return;
|
|
32831
33136
|
try {
|
|
32832
33137
|
window.localStorage.setItem(storageKey, String(Math.round(size)));
|
|
32833
33138
|
} catch (e35) {
|
|
32834
33139
|
}
|
|
32835
33140
|
}, [enabled, size, storageKey]);
|
|
32836
|
-
|
|
33141
|
+
React106.useEffect(() => {
|
|
32837
33142
|
if (!enabled) return;
|
|
32838
33143
|
setSizeRaw((prev) => clampToContainer(prev));
|
|
32839
33144
|
}, [enabled, clampToContainer]);
|
|
@@ -32848,7 +33153,7 @@ function AppLayoutDrawerResizeHandle({
|
|
|
32848
33153
|
ariaLabel
|
|
32849
33154
|
}) {
|
|
32850
33155
|
const isHorizontal = HORIZONTAL_SIDES2.has(side);
|
|
32851
|
-
const startRef =
|
|
33156
|
+
const startRef = React106.useRef(null);
|
|
32852
33157
|
const direction = side === "right" || side === "bottom" ? -1 : 1;
|
|
32853
33158
|
const handlePointerDown = (e) => {
|
|
32854
33159
|
if (e.button !== 0 && e.pointerType === "mouse") return;
|
|
@@ -32938,7 +33243,7 @@ function AppLayoutDrawerResizeHandle({
|
|
|
32938
33243
|
}
|
|
32939
33244
|
);
|
|
32940
33245
|
}
|
|
32941
|
-
var AppLayoutDrawerContent =
|
|
33246
|
+
var AppLayoutDrawerContent = React106.forwardRef(
|
|
32942
33247
|
({
|
|
32943
33248
|
side = "right",
|
|
32944
33249
|
flush = false,
|
|
@@ -32966,13 +33271,13 @@ var AppLayoutDrawerContent = React105.forwardRef(
|
|
|
32966
33271
|
}, ref) => {
|
|
32967
33272
|
const contextContainer = useAppLayoutDrawerContainer();
|
|
32968
33273
|
const portalContainer = container !== void 0 ? container : contextContainer;
|
|
32969
|
-
const open =
|
|
32970
|
-
const [hasOpened, setHasOpened] =
|
|
32971
|
-
|
|
33274
|
+
const open = React106.useContext(DrawerOpenContext);
|
|
33275
|
+
const [hasOpened, setHasOpened] = React106.useState(Boolean(open));
|
|
33276
|
+
React106.useEffect(() => {
|
|
32972
33277
|
if (open) setHasOpened(true);
|
|
32973
33278
|
}, [open]);
|
|
32974
33279
|
const persist = keepMounted && hasOpened;
|
|
32975
|
-
|
|
33280
|
+
React106.useEffect(() => {
|
|
32976
33281
|
if (!debugLayoutShift) return;
|
|
32977
33282
|
if (!open) return;
|
|
32978
33283
|
if (typeof window === "undefined") return;
|
|
@@ -33023,8 +33328,8 @@ var AppLayoutDrawerContent = React105.forwardRef(
|
|
|
33023
33328
|
const resolvedSide = _nullishCoalesce(side, () => ( "right"));
|
|
33024
33329
|
const isHorizontal = HORIZONTAL_SIDES2.has(resolvedSide);
|
|
33025
33330
|
const initialSize = _nullishCoalesce(defaultSize, () => ( (isHorizontal ? 560 : 480)));
|
|
33026
|
-
const [isMobile, setIsMobile] =
|
|
33027
|
-
|
|
33331
|
+
const [isMobile, setIsMobile] = React106.useState(false);
|
|
33332
|
+
React106.useEffect(() => {
|
|
33028
33333
|
if (typeof window === "undefined") return;
|
|
33029
33334
|
const mq = window.matchMedia(`(max-width: ${mobileBreakpoint - 1}px)`);
|
|
33030
33335
|
const update = () => setIsMobile(mq.matches);
|
|
@@ -33079,10 +33384,10 @@ var AppLayoutDrawerContent = React105.forwardRef(
|
|
|
33079
33384
|
),
|
|
33080
33385
|
style,
|
|
33081
33386
|
onInteractOutside: (event) => {
|
|
33082
|
-
_optionalChain([onInteractOutside, 'optionalCall',
|
|
33387
|
+
_optionalChain([onInteractOutside, 'optionalCall', _645 => _645(event)]);
|
|
33083
33388
|
if (event.defaultPrevented) return;
|
|
33084
33389
|
const target = event.target;
|
|
33085
|
-
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess',
|
|
33390
|
+
const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _646 => _646.contains, 'call', _647 => _647(target)]);
|
|
33086
33391
|
if (!isInsideContainer) {
|
|
33087
33392
|
event.preventDefault();
|
|
33088
33393
|
return;
|
|
@@ -33495,7 +33800,7 @@ var ShellTypeBadge = ({
|
|
|
33495
33800
|
className,
|
|
33496
33801
|
iconClassName
|
|
33497
33802
|
}) => {
|
|
33498
|
-
const normalizedType = _optionalChain([shellType, 'optionalAccess',
|
|
33803
|
+
const normalizedType = _optionalChain([shellType, 'optionalAccess', _648 => _648.toUpperCase, 'call', _649 => _649()]);
|
|
33499
33804
|
const label = getShellLabel(normalizedType);
|
|
33500
33805
|
const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
|
|
33501
33806
|
const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
|
|
@@ -33712,7 +34017,7 @@ function OnboardingStepCard({
|
|
|
33712
34017
|
onSkip,
|
|
33713
34018
|
className
|
|
33714
34019
|
}) {
|
|
33715
|
-
const [isProcessing, setIsProcessing] =
|
|
34020
|
+
const [isProcessing, setIsProcessing] = React113.default.useState(false);
|
|
33716
34021
|
const handleAction = async (e) => {
|
|
33717
34022
|
e.stopPropagation();
|
|
33718
34023
|
setIsProcessing(true);
|
|
@@ -33824,7 +34129,7 @@ function OnboardingWalkthrough({
|
|
|
33824
34129
|
const autoMarkingInProgressRef = _react.useRef.call(void 0, false);
|
|
33825
34130
|
const lastCompletionStatusRef = _react.useRef.call(void 0, null);
|
|
33826
34131
|
const actionInProgressRef = _react.useRef.call(void 0, /* @__PURE__ */ new Set());
|
|
33827
|
-
|
|
34132
|
+
React113.default.useEffect(() => {
|
|
33828
34133
|
if (isLoadingCompletion) {
|
|
33829
34134
|
hasAutoMarkedRef.current = false;
|
|
33830
34135
|
return;
|
|
@@ -33882,12 +34187,12 @@ function OnboardingWalkthrough({
|
|
|
33882
34187
|
}
|
|
33883
34188
|
}, [state.completedSteps, markComplete]);
|
|
33884
34189
|
const handleStepSkip = (step) => {
|
|
33885
|
-
_optionalChain([step, 'access',
|
|
34190
|
+
_optionalChain([step, 'access', _650 => _650.onSkip, 'optionalCall', _651 => _651()]);
|
|
33886
34191
|
markSkipped(step.id);
|
|
33887
34192
|
};
|
|
33888
34193
|
const handleDismiss = () => {
|
|
33889
34194
|
dismissOnboarding();
|
|
33890
|
-
_optionalChain([onDismiss, 'optionalCall',
|
|
34195
|
+
_optionalChain([onDismiss, 'optionalCall', _652 => _652()]);
|
|
33891
34196
|
};
|
|
33892
34197
|
if (state.dismissed) {
|
|
33893
34198
|
return null;
|
|
@@ -33955,7 +34260,7 @@ var LOG_SEVERITY_LABELS = {
|
|
|
33955
34260
|
|
|
33956
34261
|
// src/components/log-severity-dot.tsx
|
|
33957
34262
|
|
|
33958
|
-
var LogSeverityDot =
|
|
34263
|
+
var LogSeverityDot = React109.forwardRef(({ severity, size = "md", className }, ref) => {
|
|
33959
34264
|
const sizeClasses2 = {
|
|
33960
34265
|
sm: "w-4 h-4",
|
|
33961
34266
|
md: "w-6 h-6",
|
|
@@ -34017,7 +34322,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
34017
34322
|
onKeyDown: (e) => {
|
|
34018
34323
|
if (e.key === "Enter" || e.key === " ") {
|
|
34019
34324
|
e.preventDefault();
|
|
34020
|
-
_optionalChain([onClick, 'optionalCall',
|
|
34325
|
+
_optionalChain([onClick, 'optionalCall', _653 => _653()]);
|
|
34021
34326
|
}
|
|
34022
34327
|
},
|
|
34023
34328
|
children: [
|
|
@@ -34045,7 +34350,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
|
|
|
34045
34350
|
)
|
|
34046
34351
|
] });
|
|
34047
34352
|
};
|
|
34048
|
-
var LogsList =
|
|
34353
|
+
var LogsList = React110.forwardRef(({
|
|
34049
34354
|
logs,
|
|
34050
34355
|
maxHeight = "400px",
|
|
34051
34356
|
showConnector = true,
|
|
@@ -34054,7 +34359,7 @@ var LogsList = React109.forwardRef(({
|
|
|
34054
34359
|
emptyMessage = "No logs to display",
|
|
34055
34360
|
className
|
|
34056
34361
|
}, ref) => {
|
|
34057
|
-
const containerRef =
|
|
34362
|
+
const containerRef = React110.useRef(null);
|
|
34058
34363
|
const isFullHeight = maxHeight === "100%";
|
|
34059
34364
|
const getContainerStyles = () => {
|
|
34060
34365
|
if (isFullHeight) return void 0;
|
|
@@ -34118,7 +34423,7 @@ var LogsList = React109.forwardRef(({
|
|
|
34118
34423
|
log,
|
|
34119
34424
|
isLast: index === logs.length - 1,
|
|
34120
34425
|
showConnector,
|
|
34121
|
-
onClick: () => _optionalChain([onLogClick, 'optionalCall',
|
|
34426
|
+
onClick: () => _optionalChain([onLogClick, 'optionalCall', _654 => _654(log)])
|
|
34122
34427
|
},
|
|
34123
34428
|
log.id
|
|
34124
34429
|
))
|
|
@@ -34215,11 +34520,11 @@ function ServiceCardRowItem({ row }) {
|
|
|
34215
34520
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
34216
34521
|
|
|
34217
34522
|
|
|
34218
|
-
var Slider =
|
|
34523
|
+
var Slider = React112.forwardRef(
|
|
34219
34524
|
({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
|
|
34220
34525
|
const handleChange = (e) => {
|
|
34221
34526
|
const newValue = [Number(e.target.value)];
|
|
34222
|
-
_optionalChain([onValueChange, 'optionalCall',
|
|
34527
|
+
_optionalChain([onValueChange, 'optionalCall', _655 => _655(newValue)]);
|
|
34223
34528
|
};
|
|
34224
34529
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34225
34530
|
"input",
|
|
@@ -34650,7 +34955,7 @@ function CursorPaginationSimple({
|
|
|
34650
34955
|
{
|
|
34651
34956
|
variant: "transparent",
|
|
34652
34957
|
size: "icon",
|
|
34653
|
-
onClick: () => _optionalChain([onPrevious, 'optionalCall',
|
|
34958
|
+
onClick: () => _optionalChain([onPrevious, 'optionalCall', _656 => _656("")]),
|
|
34654
34959
|
disabled: !hasPreviousPage || loading,
|
|
34655
34960
|
className: "h-8 w-8",
|
|
34656
34961
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -34662,7 +34967,7 @@ function CursorPaginationSimple({
|
|
|
34662
34967
|
{
|
|
34663
34968
|
variant: "transparent",
|
|
34664
34969
|
size: "icon",
|
|
34665
|
-
onClick: () => _optionalChain([onNext, 'optionalCall',
|
|
34970
|
+
onClick: () => _optionalChain([onNext, 'optionalCall', _657 => _657("")]),
|
|
34666
34971
|
disabled: !hasNextPage || loading,
|
|
34667
34972
|
className: "h-8 w-8",
|
|
34668
34973
|
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
|
|
@@ -34682,8 +34987,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
|
|
|
34682
34987
|
icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
|
|
34683
34988
|
title: _nullishCoalesce(message2, () => ( "No results found")),
|
|
34684
34989
|
description: message2 == null ? "Try adjusting your search or filters" : void 0,
|
|
34685
|
-
buttonLabel: _optionalChain([action, 'optionalAccess',
|
|
34686
|
-
onButtonClick: _optionalChain([action, 'optionalAccess',
|
|
34990
|
+
buttonLabel: _optionalChain([action, 'optionalAccess', _658 => _658.label]),
|
|
34991
|
+
onButtonClick: _optionalChain([action, 'optionalAccess', _659 => _659.onClick]),
|
|
34687
34992
|
className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
|
|
34688
34993
|
}
|
|
34689
34994
|
);
|
|
@@ -34704,7 +35009,7 @@ function TableColumnFilterDropdown({
|
|
|
34704
35009
|
placement = "bottom-start",
|
|
34705
35010
|
dropdownClassName = "min-w-[240px]"
|
|
34706
35011
|
}) {
|
|
34707
|
-
const activeCount = _optionalChain([filters, 'optionalAccess',
|
|
35012
|
+
const activeCount = _optionalChain([filters, 'optionalAccess', _660 => _660[columnKey], 'optionalAccess', _661 => _661.length]) || 0;
|
|
34708
35013
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
34709
35014
|
FiltersDropdown,
|
|
34710
35015
|
{
|
|
@@ -34747,7 +35052,7 @@ function TableColumnFilterDropdown({
|
|
|
34747
35052
|
delete newFilters[columnKey];
|
|
34748
35053
|
onFilterChange(newFilters);
|
|
34749
35054
|
},
|
|
34750
|
-
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess',
|
|
35055
|
+
currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _662 => _662[columnKey]]) || [] },
|
|
34751
35056
|
placement,
|
|
34752
35057
|
dropdownClassName
|
|
34753
35058
|
}
|
|
@@ -35044,7 +35349,7 @@ function TableRow({
|
|
|
35044
35349
|
const keys = column.key.split(".");
|
|
35045
35350
|
let value = item;
|
|
35046
35351
|
for (const key of keys) {
|
|
35047
|
-
value = _optionalChain([value, 'optionalAccess',
|
|
35352
|
+
value = _optionalChain([value, 'optionalAccess', _663 => _663[key]]);
|
|
35048
35353
|
}
|
|
35049
35354
|
if (value === null || value === void 0) {
|
|
35050
35355
|
return "-";
|
|
@@ -35114,7 +35419,7 @@ function TableRow({
|
|
|
35114
35419
|
// src/components/ui/table/table.tsx
|
|
35115
35420
|
|
|
35116
35421
|
function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
|
|
35117
|
-
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess',
|
|
35422
|
+
const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _664 => _664.length])) || Boolean(renderRowActions);
|
|
35118
35423
|
const result = [...columns];
|
|
35119
35424
|
if (hasActions) {
|
|
35120
35425
|
const actionsColumn = {
|
|
@@ -35208,7 +35513,7 @@ function Table({
|
|
|
35208
35513
|
return rowKey(item);
|
|
35209
35514
|
}
|
|
35210
35515
|
const key = item[rowKey];
|
|
35211
|
-
return _optionalChain([key, 'optionalAccess',
|
|
35516
|
+
return _optionalChain([key, 'optionalAccess', _665 => _665.toString, 'call', _666 => _666()]) || index.toString();
|
|
35212
35517
|
};
|
|
35213
35518
|
const getRowClassName = (item, index) => {
|
|
35214
35519
|
if (typeof rowClassName === "function") {
|
|
@@ -35242,23 +35547,23 @@ function Table({
|
|
|
35242
35547
|
const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
|
|
35243
35548
|
const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
|
|
35244
35549
|
const sentinelRef = _react.useRef.call(void 0, null);
|
|
35245
|
-
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess',
|
|
35246
|
-
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess',
|
|
35550
|
+
const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _667 => _667.onLoadMore]));
|
|
35551
|
+
onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _668 => _668.onLoadMore]);
|
|
35247
35552
|
_react.useEffect.call(void 0, () => {
|
|
35248
|
-
if (!_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35553
|
+
if (!_optionalChain([infiniteScroll, 'optionalAccess', _669 => _669.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
|
|
35249
35554
|
const sentinel = sentinelRef.current;
|
|
35250
35555
|
if (!sentinel) return;
|
|
35251
35556
|
const observer = new IntersectionObserver(
|
|
35252
35557
|
(entries) => {
|
|
35253
|
-
if (_optionalChain([entries, 'access',
|
|
35254
|
-
_optionalChain([onLoadMoreRef, 'access',
|
|
35558
|
+
if (_optionalChain([entries, 'access', _670 => _670[0], 'optionalAccess', _671 => _671.isIntersecting])) {
|
|
35559
|
+
_optionalChain([onLoadMoreRef, 'access', _672 => _672.current, 'optionalCall', _673 => _673()]);
|
|
35255
35560
|
}
|
|
35256
35561
|
},
|
|
35257
35562
|
{ rootMargin: "200px" }
|
|
35258
35563
|
);
|
|
35259
35564
|
observer.observe(sentinel);
|
|
35260
35565
|
return () => observer.disconnect();
|
|
35261
|
-
}, [_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35566
|
+
}, [_optionalChain([infiniteScroll, 'optionalAccess', _674 => _674.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _675 => _675.isFetchingNextPage])]);
|
|
35262
35567
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
|
|
35263
35568
|
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: [
|
|
35264
35569
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
|
|
@@ -35329,7 +35634,7 @@ function Table({
|
|
|
35329
35634
|
},
|
|
35330
35635
|
getRowKey(item, index)
|
|
35331
35636
|
)),
|
|
35332
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35637
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _676 => _676.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35333
35638
|
TableCardSkeleton,
|
|
35334
35639
|
{
|
|
35335
35640
|
columns,
|
|
@@ -35338,7 +35643,7 @@ function Table({
|
|
|
35338
35643
|
hasChevron: Boolean(rowHref)
|
|
35339
35644
|
}
|
|
35340
35645
|
),
|
|
35341
|
-
_optionalChain([infiniteScroll, 'optionalAccess',
|
|
35646
|
+
_optionalChain([infiniteScroll, 'optionalAccess', _677 => _677.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
|
|
35342
35647
|
!infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
35343
35648
|
"div",
|
|
35344
35649
|
{
|
|
@@ -35696,7 +36001,7 @@ function QueryReportTable({
|
|
|
35696
36001
|
);
|
|
35697
36002
|
const handleExport = () => {
|
|
35698
36003
|
exportToCSV(data, columns, exportFilename);
|
|
35699
|
-
_optionalChain([onExport, 'optionalCall',
|
|
36004
|
+
_optionalChain([onExport, 'optionalCall', _678 => _678()]);
|
|
35700
36005
|
};
|
|
35701
36006
|
const tableMinWidth = columns.length * (columnWidth + 16);
|
|
35702
36007
|
const {
|
|
@@ -35869,7 +36174,7 @@ function DataTableColumnFilter({
|
|
|
35869
36174
|
align = "left"
|
|
35870
36175
|
}) {
|
|
35871
36176
|
const currentValue = column.getFilterValue();
|
|
35872
|
-
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess',
|
|
36177
|
+
const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _679 => _679.length]), () => ( 0));
|
|
35873
36178
|
const sections = _react.useMemo.call(void 0,
|
|
35874
36179
|
() => [
|
|
35875
36180
|
{
|
|
@@ -35949,7 +36254,7 @@ function DataTableHeader({
|
|
|
35949
36254
|
const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
|
|
35950
36255
|
if (header.isPlaceholder) return false;
|
|
35951
36256
|
if (isLgUp) return true;
|
|
35952
|
-
return Boolean(_optionalChain([header, 'access',
|
|
36257
|
+
return Boolean(_optionalChain([header, 'access', _680 => _680.column, 'access', _681 => _681.columnDef, 'access', _682 => _682.meta, 'optionalAccess', _683 => _683.filter]));
|
|
35953
36258
|
});
|
|
35954
36259
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35955
36260
|
"div",
|
|
@@ -35979,20 +36284,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
35979
36284
|
if (header.isPlaceholder) return null;
|
|
35980
36285
|
const column = header.column;
|
|
35981
36286
|
const meta = column.columnDef.meta;
|
|
35982
|
-
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess',
|
|
35983
|
-
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess',
|
|
35984
|
-
const canSort = _optionalChain([meta, 'optionalAccess',
|
|
35985
|
-
const sortDir = _optionalChain([sort, 'optionalAccess',
|
|
36287
|
+
const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _684 => _684.filter]));
|
|
36288
|
+
const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _685 => _685.align]), () => ( "left"));
|
|
36289
|
+
const canSort = _optionalChain([meta, 'optionalAccess', _686 => _686.sortable]) === true;
|
|
36290
|
+
const sortDir = _optionalChain([sort, 'optionalAccess', _687 => _687.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
|
|
35986
36291
|
if (!isLgUp && !hasFilter) return null;
|
|
35987
36292
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35988
36293
|
"div",
|
|
35989
36294
|
{
|
|
35990
36295
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
35991
36296
|
"flex items-stretch",
|
|
35992
|
-
isLgUp && (_optionalChain([meta, 'optionalAccess',
|
|
35993
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36297
|
+
isLgUp && (_optionalChain([meta, 'optionalAccess', _688 => _688.width]) || "flex-1 min-w-0"),
|
|
36298
|
+
_optionalChain([meta, 'optionalAccess', _689 => _689.headerClassName]),
|
|
35994
36299
|
// Don't apply hide classes if column is filterable on tablet (keep filter accessible)
|
|
35995
|
-
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
36300
|
+
!(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _690 => _690.hideAt]))
|
|
35996
36301
|
),
|
|
35997
36302
|
children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35998
36303
|
DataTableColumnFilter,
|
|
@@ -36011,7 +36316,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
|
|
|
36011
36316
|
isLgUp && alignJustify(align),
|
|
36012
36317
|
canSort && "group cursor-pointer"
|
|
36013
36318
|
),
|
|
36014
|
-
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall',
|
|
36319
|
+
onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _691 => _691(column.id)]) : void 0,
|
|
36015
36320
|
children: [
|
|
36016
36321
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
|
|
36017
36322
|
canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
|
|
@@ -36076,7 +36381,7 @@ function DataTableSkeleton({
|
|
|
36076
36381
|
}) {
|
|
36077
36382
|
const table = useDataTableContext();
|
|
36078
36383
|
const columns = table.getVisibleFlatColumns();
|
|
36079
|
-
const firstColumnId = _optionalChain([columns, 'access',
|
|
36384
|
+
const firstColumnId = _optionalChain([columns, 'access', _692 => _692[0], 'optionalAccess', _693 => _693.id]);
|
|
36080
36385
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36081
36386
|
"div",
|
|
36082
36387
|
{
|
|
@@ -36100,7 +36405,7 @@ function DataTableSkeleton({
|
|
|
36100
36405
|
{
|
|
36101
36406
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
36102
36407
|
"flex flex-col justify-center shrink-0",
|
|
36103
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36408
|
+
_optionalChain([meta, 'optionalAccess', _694 => _694.width]) || "flex-1"
|
|
36104
36409
|
),
|
|
36105
36410
|
children: [
|
|
36106
36411
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
|
|
@@ -36149,7 +36454,7 @@ function DataTableRowImpl({
|
|
|
36149
36454
|
const handleClick = _react.useCallback.call(void 0,
|
|
36150
36455
|
(e) => {
|
|
36151
36456
|
const target = e.target;
|
|
36152
|
-
if (!_optionalChain([containerRef, 'access',
|
|
36457
|
+
if (!_optionalChain([containerRef, 'access', _695 => _695.current, 'optionalAccess', _696 => _696.contains, 'call', _697 => _697(target)])) {
|
|
36153
36458
|
if (isLinkMode) e.preventDefault();
|
|
36154
36459
|
return;
|
|
36155
36460
|
}
|
|
@@ -36157,7 +36462,7 @@ function DataTableRowImpl({
|
|
|
36157
36462
|
if (isLinkMode) e.preventDefault();
|
|
36158
36463
|
return;
|
|
36159
36464
|
}
|
|
36160
|
-
_optionalChain([onClick, 'optionalCall',
|
|
36465
|
+
_optionalChain([onClick, 'optionalCall', _698 => _698(row.original)]);
|
|
36161
36466
|
},
|
|
36162
36467
|
[onClick, row.original, isLinkMode]
|
|
36163
36468
|
);
|
|
@@ -36182,10 +36487,10 @@ function DataTableRowImpl({
|
|
|
36182
36487
|
{
|
|
36183
36488
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
36184
36489
|
"flex flex-col overflow-hidden",
|
|
36185
|
-
alignJustify(_optionalChain([meta, 'optionalAccess',
|
|
36186
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36187
|
-
_optionalChain([meta, 'optionalAccess',
|
|
36188
|
-
getHideClasses2(_optionalChain([meta, 'optionalAccess',
|
|
36490
|
+
alignJustify(_optionalChain([meta, 'optionalAccess', _699 => _699.align])),
|
|
36491
|
+
_optionalChain([meta, 'optionalAccess', _700 => _700.width]) || "flex-1 min-w-0",
|
|
36492
|
+
_optionalChain([meta, 'optionalAccess', _701 => _701.cellClassName]),
|
|
36493
|
+
getHideClasses2(_optionalChain([meta, 'optionalAccess', _702 => _702.hideAt]))
|
|
36189
36494
|
),
|
|
36190
36495
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
|
|
36191
36496
|
},
|
|
@@ -36264,7 +36569,7 @@ function DataTableBody({
|
|
|
36264
36569
|
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: [
|
|
36265
36570
|
rows.map((row, index) => {
|
|
36266
36571
|
const item = row.original;
|
|
36267
|
-
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall',
|
|
36572
|
+
const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _703 => _703(item)]), () => ( void 0));
|
|
36268
36573
|
const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
|
|
36269
36574
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36270
36575
|
DataTableRow,
|
|
@@ -36274,7 +36579,7 @@ function DataTableBody({
|
|
|
36274
36579
|
href,
|
|
36275
36580
|
compact,
|
|
36276
36581
|
className: cls,
|
|
36277
|
-
subRow: _optionalChain([renderSubRow, 'optionalCall',
|
|
36582
|
+
subRow: _optionalChain([renderSubRow, 'optionalCall', _704 => _704(item)])
|
|
36278
36583
|
},
|
|
36279
36584
|
row.id
|
|
36280
36585
|
);
|
|
@@ -36329,7 +36634,7 @@ function DataTableInfiniteFooter({
|
|
|
36329
36634
|
if (!sentinel) return;
|
|
36330
36635
|
const observer = new IntersectionObserver(
|
|
36331
36636
|
(entries) => {
|
|
36332
|
-
if (_optionalChain([entries, 'access',
|
|
36637
|
+
if (_optionalChain([entries, 'access', _705 => _705[0], 'optionalAccess', _706 => _706.isIntersecting])) onLoadMoreRef.current();
|
|
36333
36638
|
},
|
|
36334
36639
|
{ rootMargin }
|
|
36335
36640
|
);
|
|
@@ -36377,7 +36682,7 @@ function DataTableRowCount({
|
|
|
36377
36682
|
const table = useDataTableContext();
|
|
36378
36683
|
const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
|
|
36379
36684
|
if (hideWhenEmpty && count === 0) return null;
|
|
36380
|
-
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall',
|
|
36685
|
+
const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _707 => _707(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
|
|
36381
36686
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36382
36687
|
"span",
|
|
36383
36688
|
{
|
|
@@ -36507,12 +36812,12 @@ function SearchInput({
|
|
|
36507
36812
|
limitTags = "auto",
|
|
36508
36813
|
getLimitTagsText = (more) => `+${more}`
|
|
36509
36814
|
}) {
|
|
36510
|
-
const [internalValue, setInternalValue] =
|
|
36815
|
+
const [internalValue, setInternalValue] = React115.useState(defaultValue);
|
|
36511
36816
|
const currentValue = onChange ? _nullishCoalesce(value, () => ( "")) : internalValue;
|
|
36512
36817
|
const debouncedValue = _chunk27IO7V3Pcjs.useDebounce.call(void 0, currentValue, debounceMs);
|
|
36513
|
-
const [isOpen, setIsOpen] =
|
|
36514
|
-
const [highlightedIndex, setHighlightedIndex] =
|
|
36515
|
-
const containerRef =
|
|
36818
|
+
const [isOpen, setIsOpen] = React115.useState(false);
|
|
36819
|
+
const [highlightedIndex, setHighlightedIndex] = React115.useState(-1);
|
|
36820
|
+
const containerRef = React115.useRef(null);
|
|
36516
36821
|
const currentPlaceholder = filterChips.length > 0 ? "Add filter..." : placeholder;
|
|
36517
36822
|
const {
|
|
36518
36823
|
visibleCount: rawVisibleCount,
|
|
@@ -36529,14 +36834,14 @@ function SearchInput({
|
|
|
36529
36834
|
placeholder: filterChips.length > 0 ? "" : placeholder
|
|
36530
36835
|
});
|
|
36531
36836
|
const visibleCount = filterChips.length > 0 ? Math.max(1, rawVisibleCount) : rawVisibleCount;
|
|
36532
|
-
const hiddenTagsRef =
|
|
36533
|
-
const hiddenTagsPopupRef =
|
|
36534
|
-
const [showHiddenTags, setShowHiddenTags] =
|
|
36535
|
-
|
|
36837
|
+
const hiddenTagsRef = React115.useRef(null);
|
|
36838
|
+
const hiddenTagsPopupRef = React115.useRef(null);
|
|
36839
|
+
const [showHiddenTags, setShowHiddenTags] = React115.useState(false);
|
|
36840
|
+
React115.useEffect(() => {
|
|
36536
36841
|
if (!showHiddenTags) return;
|
|
36537
36842
|
const handleClick = (e) => {
|
|
36538
36843
|
const target = e.target;
|
|
36539
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
36844
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _708 => _708.current, 'optionalAccess', _709 => _709.contains, 'call', _710 => _710(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _711 => _711.current, 'optionalAccess', _712 => _712.contains, 'call', _713 => _713(target)])) {
|
|
36540
36845
|
setShowHiddenTags(false);
|
|
36541
36846
|
}
|
|
36542
36847
|
};
|
|
@@ -36546,7 +36851,7 @@ function SearchInput({
|
|
|
36546
36851
|
const hiddenCount = filterChips.length - visibleCount;
|
|
36547
36852
|
const visibleChips = filterChips.slice(0, visibleCount);
|
|
36548
36853
|
const hiddenChips = filterChips.slice(visibleCount);
|
|
36549
|
-
const { flatResults, groups } =
|
|
36854
|
+
const { flatResults, groups } = React115.useMemo(() => {
|
|
36550
36855
|
if (!groupBy) return { flatResults: results, groups: null };
|
|
36551
36856
|
const grouped = /* @__PURE__ */ new Map();
|
|
36552
36857
|
for (const r of results) {
|
|
@@ -36563,7 +36868,7 @@ function SearchInput({
|
|
|
36563
36868
|
const meetsMinQuery = debouncedValue.length >= minQueryLength;
|
|
36564
36869
|
const autoShow = meetsMinQuery;
|
|
36565
36870
|
const dropdownVisible = _nullishCoalesce(showDropdownProp, () => ( (isOpen && autoShow)));
|
|
36566
|
-
|
|
36871
|
+
React115.useEffect(() => {
|
|
36567
36872
|
setHighlightedIndex(-1);
|
|
36568
36873
|
}, [flatResults.length]);
|
|
36569
36874
|
const handleChange = (e) => {
|
|
@@ -36584,10 +36889,10 @@ function SearchInput({
|
|
|
36584
36889
|
} else {
|
|
36585
36890
|
setInternalValue("");
|
|
36586
36891
|
}
|
|
36587
|
-
_optionalChain([inputRef, 'access',
|
|
36892
|
+
_optionalChain([inputRef, 'access', _714 => _714.current, 'optionalAccess', _715 => _715.focus, 'call', _716 => _716()]);
|
|
36588
36893
|
};
|
|
36589
36894
|
const handleResultClick = (result, e) => {
|
|
36590
|
-
_optionalChain([onResultSelect, 'optionalCall',
|
|
36895
|
+
_optionalChain([onResultSelect, 'optionalCall', _717 => _717(
|
|
36591
36896
|
result,
|
|
36592
36897
|
e ? {
|
|
36593
36898
|
metaKey: e.metaKey,
|
|
@@ -36619,7 +36924,7 @@ function SearchInput({
|
|
|
36619
36924
|
if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
|
|
36620
36925
|
handleResultClick(flatResults[highlightedIndex]);
|
|
36621
36926
|
} else {
|
|
36622
|
-
_optionalChain([onSubmit, 'optionalCall',
|
|
36927
|
+
_optionalChain([onSubmit, 'optionalCall', _718 => _718(currentValue)]);
|
|
36623
36928
|
}
|
|
36624
36929
|
break;
|
|
36625
36930
|
case "Escape":
|
|
@@ -36687,8 +36992,8 @@ function SearchInput({
|
|
|
36687
36992
|
};
|
|
36688
36993
|
const hasValue = currentValue.length > 0;
|
|
36689
36994
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "relative", className), ref: containerRef, children: [
|
|
36690
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36691
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36995
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive5.Root, { open: dropdownVisible, onOpenChange: handleOpenChange, modal: false, children: [
|
|
36996
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive5.Anchor, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36692
36997
|
"div",
|
|
36693
36998
|
{
|
|
36694
36999
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
@@ -36697,7 +37002,7 @@ function SearchInput({
|
|
|
36697
37002
|
dropdownVisible && "!border-ods-accent"
|
|
36698
37003
|
),
|
|
36699
37004
|
onClick: () => {
|
|
36700
|
-
_optionalChain([inputRef, 'access',
|
|
37005
|
+
_optionalChain([inputRef, 'access', _719 => _719.current, 'optionalAccess', _720 => _720.focus, 'call', _721 => _721()]);
|
|
36701
37006
|
setIsOpen(true);
|
|
36702
37007
|
},
|
|
36703
37008
|
children: [
|
|
@@ -36766,7 +37071,7 @@ function SearchInput({
|
|
|
36766
37071
|
}
|
|
36767
37072
|
) }),
|
|
36768
37073
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36769
|
-
|
|
37074
|
+
PopoverPrimitive5.Content,
|
|
36770
37075
|
{
|
|
36771
37076
|
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
36772
37077
|
"z-50 w-[var(--radix-popover-trigger-width)] mt-1",
|
|
@@ -36781,10 +37086,10 @@ function SearchInput({
|
|
|
36781
37086
|
align: "start",
|
|
36782
37087
|
onOpenAutoFocus: (e) => {
|
|
36783
37088
|
e.preventDefault();
|
|
36784
|
-
_optionalChain([inputRef, 'access',
|
|
37089
|
+
_optionalChain([inputRef, 'access', _722 => _722.current, 'optionalAccess', _723 => _723.focus, 'call', _724 => _724()]);
|
|
36785
37090
|
},
|
|
36786
37091
|
onInteractOutside: (e) => {
|
|
36787
|
-
if (_optionalChain([containerRef, 'access',
|
|
37092
|
+
if (_optionalChain([containerRef, 'access', _725 => _725.current, 'optionalAccess', _726 => _726.contains, 'call', _727 => _727(e.target)])) {
|
|
36788
37093
|
e.preventDefault();
|
|
36789
37094
|
}
|
|
36790
37095
|
},
|
|
@@ -36801,10 +37106,10 @@ function SearchInput({
|
|
|
36801
37106
|
ref: hiddenTagsPopupRef,
|
|
36802
37107
|
items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
|
|
36803
37108
|
style: {
|
|
36804
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access',
|
|
37109
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _728 => _728.current, 'optionalAccess', _729 => _729.getBoundingClientRect, 'call', _730 => _730(), 'access', _731 => _731.left]), () => ( 0))) : 0
|
|
36805
37110
|
},
|
|
36806
37111
|
onRemove: (value2) => {
|
|
36807
|
-
_optionalChain([onFilterRemove, 'optionalCall',
|
|
37112
|
+
_optionalChain([onFilterRemove, 'optionalCall', _732 => _732(value2)]);
|
|
36808
37113
|
if (hiddenCount <= 1) setShowHiddenTags(false);
|
|
36809
37114
|
}
|
|
36810
37115
|
}
|
|
@@ -36855,7 +37160,7 @@ function FilterListItem({
|
|
|
36855
37160
|
}) {
|
|
36856
37161
|
const handleToggle = () => {
|
|
36857
37162
|
if (disabled) return;
|
|
36858
|
-
_optionalChain([onToggle, 'optionalCall',
|
|
37163
|
+
_optionalChain([onToggle, 'optionalCall', _733 => _733(!selected)]);
|
|
36859
37164
|
};
|
|
36860
37165
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
36861
37166
|
"div",
|
|
@@ -36891,7 +37196,7 @@ function FilterListItem({
|
|
|
36891
37196
|
"flex items-start gap-[var(--spacing-system-xxs)] text-h6",
|
|
36892
37197
|
selected ? "text-ods-accent" : "text-ods-text-secondary"
|
|
36893
37198
|
),
|
|
36894
|
-
children: meta.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
37199
|
+
children: meta.map((item, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React116.Fragment, { children: [
|
|
36895
37200
|
index > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": "true", children: "\u2022" }),
|
|
36896
37201
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: item })
|
|
36897
37202
|
] }, index))
|
|
@@ -36902,7 +37207,7 @@ function FilterListItem({
|
|
|
36902
37207
|
CheckboxPrimitive4.Root,
|
|
36903
37208
|
{
|
|
36904
37209
|
checked: selected,
|
|
36905
|
-
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall',
|
|
37210
|
+
onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _734 => _734(c === true)]),
|
|
36906
37211
|
onClick: (e) => e.stopPropagation(),
|
|
36907
37212
|
disabled,
|
|
36908
37213
|
"aria-label": title,
|
|
@@ -37001,7 +37306,7 @@ function TagSearchInput({
|
|
|
37001
37306
|
if (!showHiddenTags) return;
|
|
37002
37307
|
const handleClick = (e) => {
|
|
37003
37308
|
const target = e.target;
|
|
37004
|
-
if (!_optionalChain([hiddenTagsRef, 'access',
|
|
37309
|
+
if (!_optionalChain([hiddenTagsRef, 'access', _735 => _735.current, 'optionalAccess', _736 => _736.contains, 'call', _737 => _737(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _738 => _738.current, 'optionalAccess', _739 => _739.contains, 'call', _740 => _740(target)])) {
|
|
37005
37310
|
setShowHiddenTags(false);
|
|
37006
37311
|
}
|
|
37007
37312
|
};
|
|
@@ -37017,13 +37322,13 @@ function TagSearchInput({
|
|
|
37017
37322
|
e.preventDefault();
|
|
37018
37323
|
onSubmit(searchValue);
|
|
37019
37324
|
}
|
|
37020
|
-
_optionalChain([onKeyDown, 'optionalCall',
|
|
37325
|
+
_optionalChain([onKeyDown, 'optionalCall', _741 => _741(e)]);
|
|
37021
37326
|
};
|
|
37022
37327
|
const handleClearAll = (e) => {
|
|
37023
37328
|
e.stopPropagation();
|
|
37024
37329
|
e.preventDefault();
|
|
37025
|
-
_optionalChain([onClearAll, 'optionalCall',
|
|
37026
|
-
_optionalChain([inputRef, 'access',
|
|
37330
|
+
_optionalChain([onClearAll, 'optionalCall', _742 => _742()]);
|
|
37331
|
+
_optionalChain([inputRef, 'access', _743 => _743.current, 'optionalAccess', _744 => _744.focus, 'call', _745 => _745()]);
|
|
37027
37332
|
};
|
|
37028
37333
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
|
|
37029
37334
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -37040,7 +37345,7 @@ function TagSearchInput({
|
|
|
37040
37345
|
className
|
|
37041
37346
|
),
|
|
37042
37347
|
onClick: () => {
|
|
37043
|
-
if (!disabled) _optionalChain([inputRef, 'access',
|
|
37348
|
+
if (!disabled) _optionalChain([inputRef, 'access', _746 => _746.current, 'optionalAccess', _747 => _747.focus, 'call', _748 => _748()]);
|
|
37044
37349
|
},
|
|
37045
37350
|
children: [
|
|
37046
37351
|
/* @__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" }) }),
|
|
@@ -37112,7 +37417,7 @@ function TagSearchInput({
|
|
|
37112
37417
|
items: hiddenTags,
|
|
37113
37418
|
disabled,
|
|
37114
37419
|
style: {
|
|
37115
|
-
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access',
|
|
37420
|
+
left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _749 => _749.current, 'optionalAccess', _750 => _750.getBoundingClientRect, 'call', _751 => _751(), 'access', _752 => _752.left]), () => ( 0))) : 0
|
|
37116
37421
|
},
|
|
37117
37422
|
onRemove: (value) => {
|
|
37118
37423
|
onTagRemove(value);
|
|
@@ -37213,7 +37518,7 @@ function MarkdownEditor({
|
|
|
37213
37518
|
const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
|
|
37214
37519
|
_react.useEffect.call(void 0, () => {
|
|
37215
37520
|
Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
|
|
37216
|
-
if (_optionalChain([mod, 'access',
|
|
37521
|
+
if (_optionalChain([mod, 'access', _753 => _753.commands, 'optionalAccess', _754 => _754.getExtraCommands])) {
|
|
37217
37522
|
setDefaultExtraCommands(mod.commands.getExtraCommands());
|
|
37218
37523
|
}
|
|
37219
37524
|
});
|
|
@@ -37247,7 +37552,7 @@ function MarkdownEditor({
|
|
|
37247
37552
|
const isImage = file.type.startsWith("image/");
|
|
37248
37553
|
const markdown = isImage ? `` : `[${file.name}](${url})`;
|
|
37249
37554
|
insertTextAtCursor(markdown);
|
|
37250
|
-
_optionalChain([onFileUploaded, 'optionalCall',
|
|
37555
|
+
_optionalChain([onFileUploaded, 'optionalCall', _755 => _755(url, file.name)]);
|
|
37251
37556
|
} catch (error) {
|
|
37252
37557
|
console.error("File upload failed:", error);
|
|
37253
37558
|
setUploadProgress("Upload failed. Please try again.");
|
|
@@ -37260,7 +37565,7 @@ function MarkdownEditor({
|
|
|
37260
37565
|
);
|
|
37261
37566
|
const handleFileInputChange = _react.useCallback.call(void 0,
|
|
37262
37567
|
(e) => {
|
|
37263
|
-
const file = _optionalChain([e, 'access',
|
|
37568
|
+
const file = _optionalChain([e, 'access', _756 => _756.target, 'access', _757 => _757.files, 'optionalAccess', _758 => _758[0]]);
|
|
37264
37569
|
if (file) {
|
|
37265
37570
|
handleFileUpload(file);
|
|
37266
37571
|
e.target.value = "";
|
|
@@ -37271,7 +37576,7 @@ function MarkdownEditor({
|
|
|
37271
37576
|
const handlePaste = _react.useCallback.call(void 0,
|
|
37272
37577
|
(e) => {
|
|
37273
37578
|
if (!onUploadFile) return;
|
|
37274
|
-
const items = _optionalChain([e, 'access',
|
|
37579
|
+
const items = _optionalChain([e, 'access', _759 => _759.clipboardData, 'optionalAccess', _760 => _760.items]);
|
|
37275
37580
|
if (!items) return;
|
|
37276
37581
|
for (const item of items) {
|
|
37277
37582
|
if (item.type.startsWith("image/")) {
|
|
@@ -37296,7 +37601,7 @@ function MarkdownEditor({
|
|
|
37296
37601
|
buttonProps: { "aria-label": "Upload file", title: "Upload file" },
|
|
37297
37602
|
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" }),
|
|
37298
37603
|
execute: () => {
|
|
37299
|
-
_optionalChain([fileInputRef, 'access',
|
|
37604
|
+
_optionalChain([fileInputRef, 'access', _761 => _761.current, 'optionalAccess', _762 => _762.click, 'call', _763 => _763()]);
|
|
37300
37605
|
}
|
|
37301
37606
|
} : null;
|
|
37302
37607
|
const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
|
|
@@ -37308,7 +37613,7 @@ function MarkdownEditor({
|
|
|
37308
37613
|
const EDGE_ZONE = 60;
|
|
37309
37614
|
const MAX_SCROLL_SPEED = 15;
|
|
37310
37615
|
const findScrollParent = _react.useCallback.call(void 0, (el) => {
|
|
37311
|
-
let node = _optionalChain([el, 'optionalAccess',
|
|
37616
|
+
let node = _optionalChain([el, 'optionalAccess', _764 => _764.parentElement]);
|
|
37312
37617
|
while (node && node !== document.documentElement) {
|
|
37313
37618
|
const { overflowY } = window.getComputedStyle(node);
|
|
37314
37619
|
if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
|
|
@@ -37451,7 +37756,7 @@ function matchesAccept(file, accept) {
|
|
|
37451
37756
|
});
|
|
37452
37757
|
}
|
|
37453
37758
|
function dragHasFiles(e) {
|
|
37454
|
-
const types = _optionalChain([e, 'access',
|
|
37759
|
+
const types = _optionalChain([e, 'access', _765 => _765.dataTransfer, 'optionalAccess', _766 => _766.types]);
|
|
37455
37760
|
if (!types) return false;
|
|
37456
37761
|
for (let i = 0; i < types.length; i++) {
|
|
37457
37762
|
if (types[i] === "Files") return true;
|
|
@@ -37477,11 +37782,11 @@ function FileUpload({
|
|
|
37477
37782
|
maxListHeight,
|
|
37478
37783
|
acceptWindowDrops = false
|
|
37479
37784
|
}) {
|
|
37480
|
-
const [dragActive, setDragActive] =
|
|
37481
|
-
const [validationError, setValidationError] =
|
|
37482
|
-
const fileInputRef =
|
|
37785
|
+
const [dragActive, setDragActive] = React118.useState(false);
|
|
37786
|
+
const [validationError, setValidationError] = React118.useState(null);
|
|
37787
|
+
const fileInputRef = React118.useRef(null);
|
|
37483
37788
|
const isManaged = managedFiles !== void 0;
|
|
37484
|
-
const files =
|
|
37789
|
+
const files = React118.useMemo(() => {
|
|
37485
37790
|
if (!value) return [];
|
|
37486
37791
|
return Array.isArray(value) ? value : [value];
|
|
37487
37792
|
}, [value]);
|
|
@@ -37529,7 +37834,7 @@ function FileUpload({
|
|
|
37529
37834
|
fileInputRef.current.value = "";
|
|
37530
37835
|
}
|
|
37531
37836
|
};
|
|
37532
|
-
const handleFilesRef =
|
|
37837
|
+
const handleFilesRef = React118.useRef(handleFiles);
|
|
37533
37838
|
handleFilesRef.current = handleFiles;
|
|
37534
37839
|
const handleDrag = (e) => {
|
|
37535
37840
|
e.preventDefault();
|
|
@@ -37546,11 +37851,11 @@ function FileUpload({
|
|
|
37546
37851
|
e.stopPropagation();
|
|
37547
37852
|
setDragActive(false);
|
|
37548
37853
|
if (disabled) return;
|
|
37549
|
-
if (_optionalChain([e, 'access',
|
|
37854
|
+
if (_optionalChain([e, 'access', _767 => _767.dataTransfer, 'access', _768 => _768.files, 'optionalAccess', _769 => _769.length])) {
|
|
37550
37855
|
handleFiles(e.dataTransfer.files);
|
|
37551
37856
|
}
|
|
37552
37857
|
};
|
|
37553
|
-
|
|
37858
|
+
React118.useEffect(() => {
|
|
37554
37859
|
if (!acceptWindowDrops || disabled) return;
|
|
37555
37860
|
let dragCounter = 0;
|
|
37556
37861
|
const onWindowDragEnter = (e) => {
|
|
@@ -37574,7 +37879,7 @@ function FileUpload({
|
|
|
37574
37879
|
e.preventDefault();
|
|
37575
37880
|
dragCounter = 0;
|
|
37576
37881
|
setDragActive(false);
|
|
37577
|
-
if (_optionalChain([e, 'access',
|
|
37882
|
+
if (_optionalChain([e, 'access', _770 => _770.dataTransfer, 'optionalAccess', _771 => _771.files, 'optionalAccess', _772 => _772.length])) {
|
|
37578
37883
|
handleFilesRef.current(e.dataTransfer.files);
|
|
37579
37884
|
}
|
|
37580
37885
|
};
|
|
@@ -37596,7 +37901,7 @@ function FileUpload({
|
|
|
37596
37901
|
};
|
|
37597
37902
|
}, [acceptWindowDrops, disabled]);
|
|
37598
37903
|
const handleFileSelect = (e) => {
|
|
37599
|
-
if (_optionalChain([e, 'access',
|
|
37904
|
+
if (_optionalChain([e, 'access', _773 => _773.target, 'access', _774 => _774.files, 'optionalAccess', _775 => _775.length])) {
|
|
37600
37905
|
handleFiles(e.target.files);
|
|
37601
37906
|
}
|
|
37602
37907
|
};
|
|
@@ -37613,7 +37918,7 @@ function FileUpload({
|
|
|
37613
37918
|
};
|
|
37614
37919
|
const openDialog = async () => {
|
|
37615
37920
|
if (disabled) return;
|
|
37616
|
-
_optionalChain([fileInputRef, 'access',
|
|
37921
|
+
_optionalChain([fileInputRef, 'access', _776 => _776.current, 'optionalAccess', _777 => _777.click, 'call', _778 => _778()]);
|
|
37617
37922
|
};
|
|
37618
37923
|
const displayError = error || validationError || void 0;
|
|
37619
37924
|
const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
|
|
@@ -37691,7 +37996,7 @@ function FileUpload({
|
|
|
37691
37996
|
"button",
|
|
37692
37997
|
{
|
|
37693
37998
|
type: "button",
|
|
37694
|
-
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall',
|
|
37999
|
+
onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _779 => _779(entry.id)]),
|
|
37695
38000
|
className: "shrink-0 p-1 rounded hover:bg-ods-bg transition-colors",
|
|
37696
38001
|
"aria-label": `Remove ${entry.fileName}`,
|
|
37697
38002
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.X, { className: "size-4 text-ods-text-secondary" })
|
|
@@ -37792,10 +38097,10 @@ function ImageUploader({
|
|
|
37792
38097
|
alt = "Uploaded image",
|
|
37793
38098
|
className
|
|
37794
38099
|
}) {
|
|
37795
|
-
const inputRef =
|
|
37796
|
-
const [dragActive, setDragActive] =
|
|
37797
|
-
const [pressed, setPressed] =
|
|
37798
|
-
const [validationError, setValidationError] =
|
|
38100
|
+
const inputRef = React119.useRef(null);
|
|
38101
|
+
const [dragActive, setDragActive] = React119.useState(false);
|
|
38102
|
+
const [pressed, setPressed] = React119.useState(false);
|
|
38103
|
+
const [validationError, setValidationError] = React119.useState(null);
|
|
37799
38104
|
const interactive = !disabled && !loading;
|
|
37800
38105
|
const hasImage = Boolean(value);
|
|
37801
38106
|
const displayError = error || validationError || void 0;
|
|
@@ -37814,7 +38119,7 @@ function ImageUploader({
|
|
|
37814
38119
|
onChange(file);
|
|
37815
38120
|
};
|
|
37816
38121
|
const handleFileSelect = (e) => {
|
|
37817
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
38122
|
+
validateAndEmit(_optionalChain([e, 'access', _780 => _780.target, 'access', _781 => _781.files, 'optionalAccess', _782 => _782[0]]));
|
|
37818
38123
|
if (inputRef.current) inputRef.current.value = "";
|
|
37819
38124
|
};
|
|
37820
38125
|
const handleDrag = (e) => {
|
|
@@ -37829,11 +38134,11 @@ function ImageUploader({
|
|
|
37829
38134
|
e.stopPropagation();
|
|
37830
38135
|
setDragActive(false);
|
|
37831
38136
|
if (!interactive) return;
|
|
37832
|
-
validateAndEmit(_optionalChain([e, 'access',
|
|
38137
|
+
validateAndEmit(_optionalChain([e, 'access', _783 => _783.dataTransfer, 'access', _784 => _784.files, 'optionalAccess', _785 => _785[0]]));
|
|
37833
38138
|
};
|
|
37834
38139
|
const openDialog = () => {
|
|
37835
38140
|
if (!interactive) return;
|
|
37836
|
-
_optionalChain([inputRef, 'access',
|
|
38141
|
+
_optionalChain([inputRef, 'access', _786 => _786.current, 'optionalAccess', _787 => _787.click, 'call', _788 => _788()]);
|
|
37837
38142
|
};
|
|
37838
38143
|
const handleRootKeyDown = (e) => {
|
|
37839
38144
|
if (hasImage || !interactive) return;
|
|
@@ -37968,10 +38273,10 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
|
37968
38273
|
|
|
37969
38274
|
|
|
37970
38275
|
|
|
37971
|
-
var Popover2 =
|
|
37972
|
-
var PopoverTrigger =
|
|
37973
|
-
var PopoverContent =
|
|
37974
|
-
|
|
38276
|
+
var Popover2 = PopoverPrimitive6.Root;
|
|
38277
|
+
var PopoverTrigger = PopoverPrimitive6.Trigger;
|
|
38278
|
+
var PopoverContent = React120.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive6.Portal, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38279
|
+
PopoverPrimitive6.Content,
|
|
37975
38280
|
{
|
|
37976
38281
|
ref,
|
|
37977
38282
|
align,
|
|
@@ -37983,7 +38288,7 @@ var PopoverContent = React119.forwardRef(({ className, align = "center", sideOff
|
|
|
37983
38288
|
...props
|
|
37984
38289
|
}
|
|
37985
38290
|
) }));
|
|
37986
|
-
PopoverContent.displayName =
|
|
38291
|
+
PopoverContent.displayName = PopoverPrimitive6.Content.displayName;
|
|
37987
38292
|
|
|
37988
38293
|
// src/components/ui/color-preset-select.tsx
|
|
37989
38294
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
@@ -38023,8 +38328,8 @@ function ColorPresetSelect({
|
|
|
38023
38328
|
}) {
|
|
38024
38329
|
const selectedPreset = presets.find((p) => p.key === presetKey);
|
|
38025
38330
|
const isCustom = !selectedPreset;
|
|
38026
|
-
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
38027
|
-
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess',
|
|
38331
|
+
const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _789 => _789.label]), () => ( "Custom"));
|
|
38332
|
+
const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _790 => _790.color]), () => ( value));
|
|
38028
38333
|
const groups = [
|
|
38029
38334
|
{
|
|
38030
38335
|
items: [
|
|
@@ -38067,8 +38372,8 @@ var FORMATS = ["HEX", "RGB", "HSL"];
|
|
|
38067
38372
|
var channelInputClass = "flex-1 min-w-0 [&_input]:text-center [&_input]:tabular-nums";
|
|
38068
38373
|
var hexInputClass = "flex-1 min-w-0 [&_input]:uppercase";
|
|
38069
38374
|
function HexInputs({ value, onChange }) {
|
|
38070
|
-
const [draft, setDraft] =
|
|
38071
|
-
|
|
38375
|
+
const [draft, setDraft] = React121.useState(value);
|
|
38376
|
+
React121.useEffect(() => setDraft(value), [value]);
|
|
38072
38377
|
const commit = () => {
|
|
38073
38378
|
const candidate = (draft.startsWith("#") ? draft : `#${draft}`).toLowerCase();
|
|
38074
38379
|
if (HEX_PATTERN.test(candidate)) onChange(candidate);
|
|
@@ -38100,8 +38405,8 @@ function ChannelInput({
|
|
|
38100
38405
|
ariaLabel,
|
|
38101
38406
|
onCommit
|
|
38102
38407
|
}) {
|
|
38103
|
-
const [draft, setDraft] =
|
|
38104
|
-
|
|
38408
|
+
const [draft, setDraft] = React121.useState(String(value));
|
|
38409
|
+
React121.useEffect(() => setDraft(String(value)), [value]);
|
|
38105
38410
|
const commit = () => {
|
|
38106
38411
|
const parsed = Number.parseInt(draft, 10);
|
|
38107
38412
|
if (!Number.isFinite(parsed)) {
|
|
@@ -38161,8 +38466,8 @@ function HslInputs({ value, onChange }) {
|
|
|
38161
38466
|
] });
|
|
38162
38467
|
}
|
|
38163
38468
|
function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
38164
|
-
const [open, setOpen] =
|
|
38165
|
-
const [format2, setFormat] =
|
|
38469
|
+
const [open, setOpen] = React121.useState(false);
|
|
38470
|
+
const [format2, setFormat] = React121.useState("HEX");
|
|
38166
38471
|
const formatGroups = [
|
|
38167
38472
|
{
|
|
38168
38473
|
items: FORMATS.map((f) => ({
|
|
@@ -38227,9 +38532,9 @@ function ColorPickerInput({ value, onChange, disabled, className }) {
|
|
|
38227
38532
|
|
|
38228
38533
|
var dismissOpenTooltip = null;
|
|
38229
38534
|
function WithLeftTooltip({ content, children }) {
|
|
38230
|
-
const [open, setOpen] =
|
|
38231
|
-
const isTouchRef =
|
|
38232
|
-
const close =
|
|
38535
|
+
const [open, setOpen] = React122.useState(false);
|
|
38536
|
+
const isTouchRef = React122.useRef(false);
|
|
38537
|
+
const close = React122.useCallback(() => setOpen(false), []);
|
|
38233
38538
|
if (!content) return children;
|
|
38234
38539
|
const toggleFromTouch = () => {
|
|
38235
38540
|
setOpen((prev) => {
|
|
@@ -38314,7 +38619,7 @@ function TicketStatusConfigRow({
|
|
|
38314
38619
|
_chunkQJGRP2YEcjs.Input,
|
|
38315
38620
|
{
|
|
38316
38621
|
value: name,
|
|
38317
|
-
onChange: (e) => _optionalChain([onNameChange, 'optionalCall',
|
|
38622
|
+
onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _791 => _791(e.target.value)]),
|
|
38318
38623
|
disabled: isSystem,
|
|
38319
38624
|
readOnly: isSystem,
|
|
38320
38625
|
"aria-label": "Status name",
|
|
@@ -38361,248 +38666,6 @@ function TicketStatusConfigRow({
|
|
|
38361
38666
|
);
|
|
38362
38667
|
}
|
|
38363
38668
|
|
|
38364
|
-
// src/components/ui/assignee-dropdown.tsx
|
|
38365
|
-
|
|
38366
|
-
|
|
38367
|
-
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
38368
|
-
|
|
38369
|
-
function AssigneeDropdown(props) {
|
|
38370
|
-
if (props.variant === "compact") {
|
|
38371
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CompactAssigneeDropdown, { ...props });
|
|
38372
|
-
}
|
|
38373
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DefaultAssigneeDropdown, { ...props });
|
|
38374
|
-
}
|
|
38375
|
-
function CompactAssigneeDropdown({
|
|
38376
|
-
currentAssignee,
|
|
38377
|
-
options,
|
|
38378
|
-
isLoading,
|
|
38379
|
-
onAssign,
|
|
38380
|
-
className
|
|
38381
|
-
}) {
|
|
38382
|
-
const [isOpen, setIsOpen] = React122.useState(false);
|
|
38383
|
-
const [search, setSearch] = React122.useState("");
|
|
38384
|
-
const hasAssignee = !!currentAssignee;
|
|
38385
|
-
React122.useEffect(() => {
|
|
38386
|
-
if (!isOpen) setSearch("");
|
|
38387
|
-
}, [isOpen]);
|
|
38388
|
-
const filtered = React122.useMemo(() => {
|
|
38389
|
-
const q = search.trim().toLowerCase();
|
|
38390
|
-
if (!q) return options;
|
|
38391
|
-
return options.filter((o) => o.label.toLowerCase().includes(q));
|
|
38392
|
-
}, [options, search]);
|
|
38393
|
-
const orderedOptions = React122.useMemo(() => {
|
|
38394
|
-
if (!currentAssignee) return filtered;
|
|
38395
|
-
const current = filtered.find((o) => o.value === currentAssignee.id);
|
|
38396
|
-
if (!current) return filtered;
|
|
38397
|
-
return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
|
|
38398
|
-
}, [filtered, currentAssignee]);
|
|
38399
|
-
const handleSelect = (userId) => {
|
|
38400
|
-
const next = _optionalChain([currentAssignee, 'optionalAccess', _789 => _789.id]) === userId ? null : userId;
|
|
38401
|
-
onAssign(next);
|
|
38402
|
-
setIsOpen(false);
|
|
38403
|
-
};
|
|
38404
|
-
const trigger = hasAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38405
|
-
"button",
|
|
38406
|
-
{
|
|
38407
|
-
type: "button",
|
|
38408
|
-
"aria-label": "Change assignee",
|
|
38409
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
38410
|
-
"shrink-0 rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
38411
|
-
className
|
|
38412
|
-
),
|
|
38413
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38414
|
-
SquareAvatar,
|
|
38415
|
-
{
|
|
38416
|
-
src: currentAssignee.avatarSrc,
|
|
38417
|
-
alt: currentAssignee.name,
|
|
38418
|
-
fallback: currentAssignee.name || "User",
|
|
38419
|
-
size: "sm",
|
|
38420
|
-
variant: "round"
|
|
38421
|
-
}
|
|
38422
|
-
)
|
|
38423
|
-
}
|
|
38424
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38425
|
-
"button",
|
|
38426
|
-
{
|
|
38427
|
-
type: "button",
|
|
38428
|
-
"aria-label": "Assign user",
|
|
38429
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
38430
|
-
"size-8 rounded-full border border-ods-border flex items-center justify-center shrink-0",
|
|
38431
|
-
"text-ods-text-secondary hover:text-ods-accent hover:border-ods-accent transition-colors",
|
|
38432
|
-
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus",
|
|
38433
|
-
className
|
|
38434
|
-
),
|
|
38435
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.UserPlusIcon, { className: "size-4" })
|
|
38436
|
-
}
|
|
38437
|
-
);
|
|
38438
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, PopoverPrimitive6.Root, { open: isOpen, onOpenChange: setIsOpen, modal: false, children: [
|
|
38439
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive6.Trigger, { asChild: true, children: trigger }),
|
|
38440
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, PopoverPrimitive6.Portal, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
38441
|
-
PopoverPrimitive6.Content,
|
|
38442
|
-
{
|
|
38443
|
-
align: "end",
|
|
38444
|
-
sideOffset: 6,
|
|
38445
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
38446
|
-
"z-50 w-72 bg-ods-card border border-ods-border rounded-[6px] shadow-lg overflow-hidden",
|
|
38447
|
-
"data-[state=open]:animate-in data-[state=closed]:animate-out",
|
|
38448
|
-
"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
38449
|
-
"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
|
|
38450
|
-
"data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2"
|
|
38451
|
-
),
|
|
38452
|
-
children: [
|
|
38453
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38454
|
-
_chunkQJGRP2YEcjs.Input,
|
|
38455
|
-
{
|
|
38456
|
-
autoFocus: true,
|
|
38457
|
-
value: search,
|
|
38458
|
-
onChange: (e) => setSearch(e.target.value),
|
|
38459
|
-
placeholder: "Search users...",
|
|
38460
|
-
startAdornment: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "size-4 text-ods-text-secondary" }),
|
|
38461
|
-
className: "rounded-none border-0"
|
|
38462
|
-
}
|
|
38463
|
-
) }),
|
|
38464
|
-
/* @__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) => {
|
|
38465
|
-
const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _790 => _790.id]) === opt.value;
|
|
38466
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
38467
|
-
"button",
|
|
38468
|
-
{
|
|
38469
|
-
type: "button",
|
|
38470
|
-
role: "option",
|
|
38471
|
-
"aria-selected": isCurrent,
|
|
38472
|
-
onClick: () => handleSelect(opt.value),
|
|
38473
|
-
className: _chunkFIG2RKZFcjs.cn.call(void 0,
|
|
38474
|
-
"flex items-center gap-[var(--spacing-system-xs)] w-full px-[var(--spacing-system-sf)] py-[var(--spacing-system-xs)] text-left",
|
|
38475
|
-
"hover:bg-ods-bg-hover transition-colors",
|
|
38476
|
-
isCurrent && "bg-ods-bg-hover"
|
|
38477
|
-
),
|
|
38478
|
-
children: [
|
|
38479
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38480
|
-
SquareAvatar,
|
|
38481
|
-
{
|
|
38482
|
-
src: opt.imageUrl,
|
|
38483
|
-
alt: opt.label,
|
|
38484
|
-
fallback: opt.label,
|
|
38485
|
-
size: "sm",
|
|
38486
|
-
variant: "round",
|
|
38487
|
-
className: "h-6 w-6 shrink-0"
|
|
38488
|
-
}
|
|
38489
|
-
),
|
|
38490
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex-1 truncate text-h4 text-ods-text-primary", title: opt.label, children: opt.label }),
|
|
38491
|
-
isCurrent && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.CheckIcon, { className: "size-4 shrink-0 text-ods-accent" })
|
|
38492
|
-
]
|
|
38493
|
-
},
|
|
38494
|
-
opt.value
|
|
38495
|
-
);
|
|
38496
|
-
}) })
|
|
38497
|
-
]
|
|
38498
|
-
}
|
|
38499
|
-
) })
|
|
38500
|
-
] });
|
|
38501
|
-
}
|
|
38502
|
-
function DefaultAssigneeDropdown({
|
|
38503
|
-
currentAssignee,
|
|
38504
|
-
options,
|
|
38505
|
-
isLoading,
|
|
38506
|
-
onAssign,
|
|
38507
|
-
className
|
|
38508
|
-
}) {
|
|
38509
|
-
const [isEditing, setIsEditing] = React122.useState(false);
|
|
38510
|
-
const hasAssignee = !!currentAssignee;
|
|
38511
|
-
const renderOption = React122.useCallback((option) => {
|
|
38512
|
-
const opt = option;
|
|
38513
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-sf)] w-full min-w-0", children: [
|
|
38514
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38515
|
-
SquareAvatar,
|
|
38516
|
-
{
|
|
38517
|
-
src: opt.imageUrl,
|
|
38518
|
-
alt: opt.label,
|
|
38519
|
-
fallback: opt.label,
|
|
38520
|
-
size: "sm",
|
|
38521
|
-
variant: "round",
|
|
38522
|
-
className: "h-6 w-6 shrink-0"
|
|
38523
|
-
}
|
|
38524
|
-
),
|
|
38525
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", title: opt.label, children: opt.label })
|
|
38526
|
-
] });
|
|
38527
|
-
}, []);
|
|
38528
|
-
if (isEditing) {
|
|
38529
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "min-w-0", className), children: [
|
|
38530
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38531
|
-
Autocomplete,
|
|
38532
|
-
{
|
|
38533
|
-
options,
|
|
38534
|
-
value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _791 => _791.id]), () => ( null)),
|
|
38535
|
-
onChange: (val) => {
|
|
38536
|
-
onAssign(val);
|
|
38537
|
-
setIsEditing(false);
|
|
38538
|
-
},
|
|
38539
|
-
placeholder: "Search users...",
|
|
38540
|
-
loading: isLoading,
|
|
38541
|
-
showChevron: false,
|
|
38542
|
-
startAdornment: hasAssignee ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38543
|
-
SquareAvatar,
|
|
38544
|
-
{
|
|
38545
|
-
src: currentAssignee.avatarSrc,
|
|
38546
|
-
alt: currentAssignee.name,
|
|
38547
|
-
fallback: currentAssignee.name || "User",
|
|
38548
|
-
size: "sm",
|
|
38549
|
-
variant: "round",
|
|
38550
|
-
className: "h-6 w-6"
|
|
38551
|
-
}
|
|
38552
|
-
) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.UserIcon, { className: "size-5 text-ods-text-secondary" }),
|
|
38553
|
-
renderOption
|
|
38554
|
-
}
|
|
38555
|
-
),
|
|
38556
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 text-ods-text-secondary truncate block mt-0.5", children: "Assigned" })
|
|
38557
|
-
] });
|
|
38558
|
-
}
|
|
38559
|
-
if (hasAssignee) {
|
|
38560
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex items-center gap-[var(--spacing-system-xs)] min-w-0", className), children: [
|
|
38561
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38562
|
-
SquareAvatar,
|
|
38563
|
-
{
|
|
38564
|
-
src: currentAssignee.avatarSrc,
|
|
38565
|
-
alt: currentAssignee.name,
|
|
38566
|
-
fallback: currentAssignee.name || "User",
|
|
38567
|
-
size: "md",
|
|
38568
|
-
variant: "round",
|
|
38569
|
-
className: "shrink-0"
|
|
38570
|
-
}
|
|
38571
|
-
),
|
|
38572
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1 min-w-0 overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col justify-center", children: [
|
|
38573
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] w-full min-w-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
38574
|
-
"button",
|
|
38575
|
-
{
|
|
38576
|
-
type: "button",
|
|
38577
|
-
onClick: () => setIsEditing(true),
|
|
38578
|
-
className: "flex items-center gap-[var(--spacing-system-xxs)] cursor-pointer group text-left",
|
|
38579
|
-
children: [
|
|
38580
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.PenEditIcon, { className: "size-4 shrink-0 text-ods-text-secondary group-hover:text-ods-accent transition-colors" }),
|
|
38581
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary truncate", title: currentAssignee.name, children: currentAssignee.name })
|
|
38582
|
-
]
|
|
38583
|
-
}
|
|
38584
|
-
) }),
|
|
38585
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 text-ods-text-secondary truncate", children: "Assigned" })
|
|
38586
|
-
] }) })
|
|
38587
|
-
] });
|
|
38588
|
-
}
|
|
38589
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "min-w-0", className), children: [
|
|
38590
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
38591
|
-
"button",
|
|
38592
|
-
{
|
|
38593
|
-
type: "button",
|
|
38594
|
-
onClick: () => setIsEditing(true),
|
|
38595
|
-
className: "flex items-center gap-[var(--spacing-system-xxs)] text-h4 text-ods-accent underline truncate cursor-pointer hover:opacity-80 transition-opacity text-left",
|
|
38596
|
-
children: [
|
|
38597
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.UserIcon, { className: "size-4 shrink-0" }),
|
|
38598
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Assign User" })
|
|
38599
|
-
]
|
|
38600
|
-
}
|
|
38601
|
-
),
|
|
38602
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 text-ods-text-secondary truncate block", children: "Assigned" })
|
|
38603
|
-
] });
|
|
38604
|
-
}
|
|
38605
|
-
|
|
38606
38669
|
// src/components/ui/ticket-info-section.tsx
|
|
38607
38670
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
38608
38671
|
|
|
@@ -38619,7 +38682,6 @@ function TicketDetailSection({ label, children, className }) {
|
|
|
38619
38682
|
// src/components/ui/ticket-attachments-list.tsx
|
|
38620
38683
|
_chunkFIG2RKZFcjs.init_cn.call(void 0, );
|
|
38621
38684
|
|
|
38622
|
-
|
|
38623
38685
|
function TicketAttachmentsList({ attachments, className, size = "default" }) {
|
|
38624
38686
|
if (attachments.length === 0) return null;
|
|
38625
38687
|
const compact = size === "compact";
|
|
@@ -38647,7 +38709,7 @@ function TicketAttachmentsList({ attachments, className, size = "default" }) {
|
|
|
38647
38709
|
"shrink-0 flex items-center justify-center rounded-[6px] bg-ods-card border border-ods-border",
|
|
38648
38710
|
compact ? "size-8" : "size-10"
|
|
38649
38711
|
),
|
|
38650
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38712
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.FileIcon, { className: _chunkFIG2RKZFcjs.cn.call(void 0, "text-ods-text-secondary", compact ? "size-4" : "size-6") })
|
|
38651
38713
|
}
|
|
38652
38714
|
),
|
|
38653
38715
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 overflow-hidden", children: [
|
|
@@ -38661,6 +38723,16 @@ function TicketAttachmentsList({ attachments, className, size = "default" }) {
|
|
|
38661
38723
|
),
|
|
38662
38724
|
attachment.fileSize && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h6 text-ods-text-secondary", children: attachment.fileSize })
|
|
38663
38725
|
] }),
|
|
38726
|
+
attachment.onDelete && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38727
|
+
"button",
|
|
38728
|
+
{
|
|
38729
|
+
type: "button",
|
|
38730
|
+
onClick: attachment.onDelete,
|
|
38731
|
+
className: "shrink-0 text-ods-text-secondary hover:text-ods-error transition-colors",
|
|
38732
|
+
"aria-label": `Delete ${attachment.fileName}`,
|
|
38733
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.TrashIcon, { className: compact ? "size-4" : "size-5" })
|
|
38734
|
+
}
|
|
38735
|
+
),
|
|
38664
38736
|
attachment.onDownload && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38665
38737
|
"button",
|
|
38666
38738
|
{
|
|
@@ -38668,7 +38740,7 @@ function TicketAttachmentsList({ attachments, className, size = "default" }) {
|
|
|
38668
38740
|
onClick: attachment.onDownload,
|
|
38669
38741
|
className: "shrink-0 text-ods-text-secondary hover:text-ods-text-primary transition-colors",
|
|
38670
38742
|
"aria-label": `Download ${attachment.fileName}`,
|
|
38671
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
38743
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGXRWE7NBcjs.Download02Icon, { className: compact ? "size-4" : "size-6" })
|
|
38672
38744
|
}
|
|
38673
38745
|
)
|
|
38674
38746
|
]
|
|
@@ -39615,7 +39687,7 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
|
|
|
39615
39687
|
reviewState ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReviewStateBadge, { state: reviewState }) : null,
|
|
39616
39688
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: primaryText })
|
|
39617
39689
|
] }),
|
|
39618
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
39690
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React113.default.Fragment, { children: [
|
|
39619
39691
|
i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary/40 shrink-0", children: "\xB7" }) : null,
|
|
39620
39692
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
|
|
39621
39693
|
] }, i)) }) }),
|
|
@@ -39707,7 +39779,7 @@ function SlackMessageCard({ item, variant = "compact", className, anchorProps })
|
|
|
39707
39779
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
|
|
39708
39780
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: item.title }) }),
|
|
39709
39781
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: item.preview || COMPACT_CARD_ROW_FILLER }) }),
|
|
39710
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW, children: metaParts.length > 0 ? metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
39782
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW, children: metaParts.length > 0 ? metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React113.default.Fragment, { children: [
|
|
39711
39783
|
i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary/40 shrink-0", children: "\xB7" }) : null,
|
|
39712
39784
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
|
|
39713
39785
|
] }, i)) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: COMPACT_CARD_ROW_FILLER }) }) })
|
|
@@ -39819,7 +39891,7 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
|
|
|
39819
39891
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: item.customerEmail })
|
|
39820
39892
|
] }) : null,
|
|
39821
39893
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-4 whitespace-pre-wrap break-words text-[13px] leading-5 text-ods-text-secondary", children: item.preview || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "italic text-ods-text-secondary/60", children: "No description provided." }) }) }),
|
|
39822
|
-
metaParts.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
39894
|
+
metaParts.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React113.default.Fragment, { children: [
|
|
39823
39895
|
i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary/40 shrink-0", children: "\xB7" }) : null,
|
|
39824
39896
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
|
|
39825
39897
|
] }, i)) }) }) : null
|
|
@@ -43002,7 +43074,7 @@ function ChatCardLoader({
|
|
|
43002
43074
|
extras
|
|
43003
43075
|
}) {
|
|
43004
43076
|
const runtime = _chunkN2DVKXN4cjs.useRequiredChatRuntime.call(void 0, );
|
|
43005
|
-
const resolvedChatRef =
|
|
43077
|
+
const resolvedChatRef = React113.default.useMemo(() => {
|
|
43006
43078
|
const cta = resolveSourceRowCTA(
|
|
43007
43079
|
{
|
|
43008
43080
|
sourceRepo: chatRef.sourceRepo,
|
|
@@ -49714,5 +49786,6 @@ function EmbeddableChatInner({
|
|
|
49714
49786
|
|
|
49715
49787
|
|
|
49716
49788
|
|
|
49717
|
-
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.Progress = Progress; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.SquareAvatar = SquareAvatar; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ONBOARDING_ICONS = ONBOARDING_ICONS; exports.resolveOnboardingIcon = resolveOnboardingIcon; exports.ONBOARDING_ICON_OPTIONS = ONBOARDING_ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.AssigneeDropdown = AssigneeDropdown; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
|
|
49718
|
-
//# sourceMappingURL=chunk-AYBSXRRC.cjs.map
|
|
49789
|
+
|
|
49790
|
+
exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.Progress = Progress; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ONBOARDING_ICONS = ONBOARDING_ICONS; exports.resolveOnboardingIcon = resolveOnboardingIcon; exports.ONBOARDING_ICON_OPTIONS = ONBOARDING_ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo; exports.OpenmspLogo = OpenmspLogo; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
|
|
49791
|
+
//# sourceMappingURL=chunk-JCRU2L2D.cjs.map
|