@flamingo-stack/openframe-frontend-core 0.0.704 → 0.0.705-snapshot.20261006160157
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-7LFIKJX2.js → chunk-3EZ4HHAP.js} +3 -3
- package/dist/{chunk-I7DFUQMN.js → chunk-3NCM4ZQB.js} +17 -18
- package/dist/{chunk-4DQMTBMK.cjs → chunk-3PLDQDE6.cjs} +15 -15
- package/dist/{chunk-VTASHWER.js → chunk-4CJMQLB5.js} +4 -4
- package/dist/{chunk-VR2ZLFCP.js → chunk-4IBPRIQH.js} +1 -1
- package/dist/{chunk-ZQFZSFQI.js → chunk-4ILM7W2R.js} +2 -2
- package/dist/{chunk-FXENTYE5.js → chunk-6232S532.js} +3 -3
- package/dist/{chunk-MMOODW57.cjs → chunk-6NTPY5QA.cjs} +1887 -94
- package/dist/{chunk-2JDVL7UV.js → chunk-7GEBFJT2.js} +1829 -3447
- package/dist/{chunk-LDPEQGKT.cjs → chunk-7OFPU7WE.cjs} +942 -2560
- package/dist/{chunk-L3IC42IF.cjs → chunk-7SCNMP2B.cjs} +57 -58
- package/dist/{chunk-2G546OND.js → chunk-BHI6GVC4.js} +1094 -693
- package/dist/{chunk-MP2C3LJ4.js → chunk-CUME3VTQ.js} +1 -1
- package/dist/{chunk-WUJNYGO2.js → chunk-CZ7Y7UG4.js} +4 -76
- package/dist/{chunk-7JIL3WOH.cjs → chunk-DDVBX42E.cjs} +21 -21
- package/dist/{chunk-6WQIUQUC.js → chunk-DWPAAWMR.js} +6 -6
- package/dist/{chunk-MFFCUVWG.js → chunk-F57ECE2I.js} +1 -1
- package/dist/{chunk-CH5232HV.js → chunk-FI6GMDO7.js} +2455 -662
- package/dist/{chunk-NDESEPW5.js → chunk-FXJ3WWUB.js} +68 -0
- package/dist/{chunk-4KGXLVCF.js → chunk-G6UMNAVI.js} +57 -61
- package/dist/{chunk-LTSTC3N5.cjs → chunk-GWQEYPYM.cjs} +728 -732
- package/dist/{chunk-N3TO7JV3.cjs → chunk-HZ7CBXPL.cjs} +89 -89
- package/dist/{chunk-XATTBO5X.js → chunk-IKJA3Y7Z.js} +2 -2
- package/dist/{chunk-5HBHO5TB.js → chunk-JPG7OHEG.js} +1 -1
- package/dist/{chunk-AMYY3PNL.cjs → chunk-K6O43WDL.cjs} +46 -46
- package/dist/{chunk-IHU5ANUY.js → chunk-KUC673HM.js} +383 -142
- package/dist/{chunk-X72J4ACL.cjs → chunk-LLSUVPQC.cjs} +252 -8
- package/dist/{chunk-RKV5B7EU.cjs → chunk-LM7TXMLU.cjs} +72 -4
- package/dist/{chunk-XJKZ4IKT.cjs → chunk-LVSFKENJ.cjs} +4 -4
- package/dist/{chunk-IZGDG5X6.cjs → chunk-M75XEEGT.cjs} +940 -539
- package/dist/{chunk-UK62YTH6.cjs → chunk-MB4PNY7C.cjs} +6 -6
- package/dist/{chunk-2YXVWZVF.js → chunk-N45D4ZXQ.js} +959 -715
- package/dist/{chunk-Z2VNQQ74.js → chunk-NCPTID44.js} +978 -942
- package/dist/{chunk-JEYRXT5L.js → chunk-O2RSAA5M.js} +11 -11
- package/dist/{chunk-ABU3TGXA.cjs → chunk-OF6GEI5A.cjs} +3 -3
- package/dist/{chunk-OHFS7VOU.cjs → chunk-PLYEKV3N.cjs} +2 -2
- package/dist/{chunk-5QJDM6UV.js → chunk-PXOQIA5K.js} +5 -5
- package/dist/{chunk-VHCACDKP.cjs → chunk-RQRX4YC3.cjs} +39 -39
- package/dist/{chunk-HFJW24JJ.cjs → chunk-RTIPR53L.cjs} +104 -104
- package/dist/{chunk-262YQFOS.cjs → chunk-SEKYEWQG.cjs} +26 -26
- package/dist/{chunk-SYXQLETR.cjs → chunk-STHZBOQI.cjs} +17 -17
- package/dist/{chunk-MI3JUJ75.cjs → chunk-SW5ZV2BN.cjs} +34 -34
- package/dist/{chunk-QVSFBSWV.js → chunk-T5TMCHWM.js} +9 -9
- package/dist/{chunk-ERCV6HHJ.js → chunk-TE773HEH.js} +10 -10
- package/dist/{chunk-C7XGRLT5.cjs → chunk-TQ4LB2DS.cjs} +14 -14
- package/dist/{chunk-XOYH2YQE.cjs → chunk-UDFRUKLC.cjs} +2 -2
- package/dist/{chunk-XIFOBQRQ.cjs → chunk-UJ33ZXDT.cjs} +6 -6
- package/dist/{chunk-C3BWIU7R.cjs → chunk-UVTD52MD.cjs} +14 -86
- package/dist/{chunk-N3COXDBH.cjs → chunk-VX4E6YSB.cjs} +41 -5
- package/dist/{chunk-HJAYVKWQ.js → chunk-VZICIQW2.js} +15 -15
- package/dist/{chunk-MGGGBHYD.cjs → chunk-WCVZCGK5.cjs} +312 -71
- package/dist/{chunk-6XIF2Z7I.js → chunk-WMX26HB5.js} +3 -3
- package/dist/{chunk-D7BTSVMS.cjs → chunk-Y2GSOUCS.cjs} +2 -2
- package/dist/{chunk-NRLJUBCS.js → chunk-YGJKKDDM.js} +6 -6
- package/dist/components/case-studies/index.cjs +30 -32
- package/dist/components/case-studies/index.js +14 -16
- package/dist/components/chat/chat-input.d.ts.map +1 -1
- package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
- package/dist/components/chat/embeddable-chat.d.ts +8 -0
- package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
- package/dist/components/chat/entity-cards/case-study-card.d.ts +11 -4
- package/dist/components/chat/entity-cards/case-study-card.d.ts.map +1 -1
- package/dist/components/chat/index.cjs +11 -11
- package/dist/components/chat/index.d.ts +1 -1
- package/dist/components/chat/index.d.ts.map +1 -1
- package/dist/components/chat/index.js +16 -16
- package/dist/components/chat/mingo-chat-rail.d.ts +3 -1
- package/dist/components/chat/mingo-chat-rail.d.ts.map +1 -1
- package/dist/components/chat/utils/icon-library.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +12 -14
- package/dist/components/contact/index.js +11 -13
- package/dist/components/docs/index.cjs +15 -17
- package/dist/components/docs/index.js +14 -16
- package/dist/components/embeds/index.cjs +12 -14
- package/dist/components/embeds/index.js +11 -13
- package/dist/components/faq/index.cjs +13 -15
- package/dist/components/faq/index.js +12 -14
- package/dist/components/features/index.cjs +12 -14
- package/dist/components/features/index.js +21 -23
- package/dist/components/help-center-pages/index.cjs +118 -120
- package/dist/components/help-center-pages/index.js +33 -35
- package/dist/components/icons/index.cjs +3 -5
- package/dist/components/icons/index.js +9 -11
- package/dist/components/icons-v2-generated/index.cjs +3 -5
- package/dist/components/icons-v2-generated/index.js +2 -4
- package/dist/components/index.cjs +89 -158
- package/dist/components/index.d.ts +0 -2
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +333 -402
- package/dist/components/loading/page-layout-skeleton.d.ts +1 -1
- package/dist/components/meeting-scheduler/index.cjs +62 -64
- package/dist/components/meeting-scheduler/index.js +12 -14
- package/dist/components/navigation/app-layout-side-panel.d.ts +18 -1
- package/dist/components/navigation/app-layout-side-panel.d.ts.map +1 -1
- package/dist/components/navigation/index.cjs +30 -16
- package/dist/components/navigation/index.d.ts +15 -10
- package/dist/components/navigation/index.d.ts.map +1 -1
- package/dist/components/navigation/index.js +40 -26
- package/dist/components/navigation/mingo-ai-button.d.ts +38 -3
- package/dist/components/navigation/mingo-ai-button.d.ts.map +1 -1
- package/dist/components/navigation/mobile-nav-sheet-id.d.ts +3 -0
- package/dist/components/navigation/mobile-nav-sheet-id.d.ts.map +1 -0
- package/dist/components/navigation/mobile-nav-sheet.d.ts +48 -0
- package/dist/components/navigation/mobile-nav-sheet.d.ts.map +1 -0
- package/dist/components/navigation/nav-item-row.d.ts +27 -0
- package/dist/components/navigation/nav-item-row.d.ts.map +1 -0
- package/dist/components/navigation/nav-panel.d.ts +43 -0
- package/dist/components/navigation/nav-panel.d.ts.map +1 -0
- package/dist/components/navigation/navigation-sidebar-item.d.ts +1 -2
- package/dist/components/navigation/navigation-sidebar-item.d.ts.map +1 -1
- package/dist/components/navigation/site-footer.d.ts +28 -0
- package/dist/components/navigation/site-footer.d.ts.map +1 -0
- package/dist/components/navigation/site-header.d.ts +61 -0
- package/dist/components/navigation/site-header.d.ts.map +1 -0
- package/dist/components/navigation/site-nav-link.d.ts +26 -0
- package/dist/components/navigation/site-nav-link.d.ts.map +1 -0
- package/dist/components/navigation/top-navigation.d.ts +2 -2
- package/dist/components/navigation/top-navigation.d.ts.map +1 -1
- package/dist/components/onboarding-guides/index.cjs +15 -17
- package/dist/components/onboarding-guides/index.js +14 -16
- package/dist/components/related-content/index.cjs +10 -8
- package/dist/components/related-content/index.js +9 -7
- package/dist/components/tickets/index.cjs +16 -18
- package/dist/components/tickets/index.js +15 -17
- package/dist/components/ui/index.cjs +14 -14
- package/dist/components/ui/index.js +19 -19
- package/dist/hooks/index.cjs +19 -11
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +19 -11
- package/dist/hooks/ui/index.d.ts +3 -0
- package/dist/hooks/ui/index.d.ts.map +1 -1
- package/dist/hooks/ui/use-active-section.d.ts +10 -0
- package/dist/hooks/ui/use-active-section.d.ts.map +1 -0
- package/dist/hooks/ui/use-nav-menus.d.ts +48 -0
- package/dist/hooks/ui/use-nav-menus.d.ts.map +1 -0
- package/dist/hooks/ui/use-visitor-os.d.ts +15 -0
- package/dist/hooks/ui/use-visitor-os.d.ts.map +1 -0
- package/dist/hooks/use-location-hash.d.ts +9 -0
- package/dist/hooks/use-location-hash.d.ts.map +1 -0
- package/dist/index.cjs +58 -21
- package/dist/index.js +233 -196
- package/dist/types/case-study.d.ts +9 -0
- package/dist/types/case-study.d.ts.map +1 -1
- package/dist/types/navigation.d.ts +95 -65
- package/dist/types/navigation.d.ts.map +1 -1
- package/dist/utils/index.cjs +55 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +50 -1
- package/dist/utils/source-icons.d.ts.map +1 -1
- package/dist/utils/visitor-os.d.ts +45 -0
- package/dist/utils/visitor-os.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/chat/chat-input.tsx +5 -1
- package/src/components/chat/chat-message-enhanced.tsx +4 -3
- package/src/components/chat/embeddable-chat.tsx +64 -6
- package/src/components/chat/entity-cards/case-study-card.tsx +115 -5
- package/src/components/chat/index.ts +1 -0
- package/src/components/chat/mingo-chat-rail.tsx +24 -7
- package/src/components/chat/utils/icon-library.tsx +35 -1
- package/src/components/index.ts +0 -2
- package/src/components/loading/page-layout-skeleton.tsx +1 -1
- package/src/components/navigation/app-layout-side-panel.tsx +30 -2
- package/src/components/navigation/index.ts +22 -14
- package/src/components/navigation/mingo-ai-button.tsx +139 -63
- package/src/components/navigation/mobile-nav-sheet-id.ts +2 -0
- package/src/components/navigation/mobile-nav-sheet.tsx +241 -0
- package/src/components/navigation/nav-item-row.tsx +129 -0
- package/src/components/navigation/nav-panel.tsx +196 -0
- package/src/components/navigation/navigation-sidebar-item.tsx +1 -2
- package/src/components/navigation/site-footer.tsx +256 -0
- package/src/components/navigation/site-header.tsx +339 -0
- package/src/components/navigation/site-nav-link.tsx +41 -0
- package/src/components/navigation/ticket-alerts-button.tsx +2 -2
- package/src/components/navigation/top-navigation.tsx +2 -2
- package/src/components/platform/SoftwareSourceBadge.tsx +1 -1
- package/src/hooks/index.ts +1 -0
- package/src/hooks/ui/index.ts +3 -0
- package/src/hooks/ui/use-active-section.ts +44 -0
- package/src/hooks/ui/use-nav-menus.ts +200 -0
- package/src/hooks/ui/use-visitor-os.ts +33 -0
- package/src/hooks/use-location-hash.ts +34 -0
- package/src/styles/app-globals.css +13 -0
- package/src/styles/chat-animations.css +57 -2
- package/src/types/case-study.ts +16 -0
- package/src/types/navigation.ts +80 -66
- package/src/utils/index.ts +1 -0
- package/src/utils/source-icons.ts +13 -0
- package/src/utils/visitor-os.ts +84 -0
- package/dist/chunk-LMBC5FFP.js +0 -43
- package/dist/chunk-O43V3EOS.js +0 -252
- package/dist/chunk-QZVSJF2K.cjs +0 -252
- package/dist/chunk-RALRPFDW.cjs +0 -43
- package/dist/components/footer-waitlist-button.d.ts +0 -29
- package/dist/components/footer-waitlist-button.d.ts.map +0 -1
- package/dist/components/footer.d.ts +0 -47
- package/dist/components/footer.d.ts.map +0 -1
- package/dist/components/navigation/client-only-header.d.ts +0 -8
- package/dist/components/navigation/client-only-header.d.ts.map +0 -1
- package/dist/components/navigation/header-skeleton.d.ts +0 -12
- package/dist/components/navigation/header-skeleton.d.ts.map +0 -1
- package/dist/components/navigation/header.d.ts +0 -9
- package/dist/components/navigation/header.d.ts.map +0 -1
- package/dist/components/navigation/mobile-nav-panel.d.ts +0 -10
- package/dist/components/navigation/mobile-nav-panel.d.ts.map +0 -1
- package/src/components/footer-waitlist-button.tsx +0 -53
- package/src/components/footer.tsx +0 -195
- package/src/components/navigation/client-only-header.tsx +0 -22
- package/src/components/navigation/header-skeleton.tsx +0 -74
- package/src/components/navigation/header.tsx +0 -429
- package/src/components/navigation/mobile-nav-panel.tsx +0 -155
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkSEKYEWQGcjs = require('./chunk-SEKYEWQG.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _chunkSTHZBOQIcjs = require('./chunk-STHZBOQI.cjs');
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
var
|
|
15
|
+
var _chunkPLYEKV3Ncjs = require('./chunk-PLYEKV3N.cjs');
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _chunkUJ33ZXDTcjs = require('./chunk-UJ33ZXDT.cjs');
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
|
|
@@ -35,16 +35,16 @@ var _chunkXIFOBQRQcjs = require('./chunk-XIFOBQRQ.cjs');
|
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
var
|
|
38
|
+
var _chunkGWQEYPYMcjs = require('./chunk-GWQEYPYM.cjs');
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
|
|
42
|
-
var
|
|
42
|
+
var _chunkWCVZCGK5cjs = require('./chunk-WCVZCGK5.cjs');
|
|
43
43
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
|
|
47
|
-
var
|
|
47
|
+
var _chunkOF6GEI5Acjs = require('./chunk-OF6GEI5A.cjs');
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
|
|
@@ -55,11 +55,11 @@ var _chunkABU3TGXAcjs = require('./chunk-ABU3TGXA.cjs');
|
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
var
|
|
58
|
+
var _chunk7OFPU7WEcjs = require('./chunk-7OFPU7WE.cjs');
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
|
|
62
|
-
var
|
|
62
|
+
var _chunkUVTD52MDcjs = require('./chunk-UVTD52MD.cjs');
|
|
63
63
|
|
|
64
64
|
|
|
65
65
|
|
|
@@ -71,10 +71,10 @@ var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
|
|
|
71
71
|
|
|
72
72
|
|
|
73
73
|
|
|
74
|
-
var
|
|
74
|
+
var _chunk6NTPY5QAcjs = require('./chunk-6NTPY5QA.cjs');
|
|
75
75
|
|
|
76
76
|
|
|
77
|
-
var
|
|
77
|
+
var _chunkLM7TXMLUcjs = require('./chunk-LM7TXMLU.cjs');
|
|
78
78
|
|
|
79
79
|
|
|
80
80
|
var _chunkUJ7AXHRZcjs = require('./chunk-UJ7AXHRZ.cjs');
|
|
@@ -114,7 +114,7 @@ var TicketActionFailure = class extends Error {
|
|
|
114
114
|
function useTicketActions(options) {
|
|
115
115
|
const queryClient = _reactquery.useQueryClient.call(void 0, );
|
|
116
116
|
const ticketActionEndpoint = _nullishCoalesce(_chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, ).endpoints.ticketActionUrl, () => ( TICKET_ACTION_ENDPOINT));
|
|
117
|
-
const ticketLive =
|
|
117
|
+
const ticketLive = _chunkUJ33ZXDTcjs.useOptionalTicketLive.call(void 0, );
|
|
118
118
|
const notifyTicketCreated = _optionalChain([ticketLive, 'optionalAccess', _2 => _2.notifyTicketCreated]);
|
|
119
119
|
const { prependOptimistic, removeOptimistic, removeTicketFromCache, toast: toast2, onSupportSystemDown } = options;
|
|
120
120
|
const formInFlightRef = _react.useRef.call(void 0, null);
|
|
@@ -159,7 +159,7 @@ function useTicketActions(options) {
|
|
|
159
159
|
}, []);
|
|
160
160
|
const executeTicketAction = _react.useCallback.call(void 0,
|
|
161
161
|
async (toolName, args) => {
|
|
162
|
-
const res = await
|
|
162
|
+
const res = await _chunkLM7TXMLUcjs.embedAuthedFetch.call(void 0, ticketActionEndpoint, {
|
|
163
163
|
method: "POST",
|
|
164
164
|
body: JSON.stringify({ tool_name: toolName, args })
|
|
165
165
|
});
|
|
@@ -275,10 +275,10 @@ function useTicketActions(options) {
|
|
|
275
275
|
..._optionalChain([input, 'access', _3 => _3.attachments, 'optionalAccess', _4 => _4.length]) ? { attachments: input.attachments } : {}
|
|
276
276
|
});
|
|
277
277
|
if (result.mirror_synced === false) {
|
|
278
|
-
toast2(
|
|
278
|
+
toast2(_chunkUJ33ZXDTcjs.TOAST_COPY.open_mirror_pending);
|
|
279
279
|
watchMirrorSync(placeholderId, result.ticket_id);
|
|
280
280
|
} else {
|
|
281
|
-
toast2(
|
|
281
|
+
toast2(_chunkUJ33ZXDTcjs.TOAST_COPY.open_success);
|
|
282
282
|
await queryClient.invalidateQueries({ queryKey: ["tickets"] });
|
|
283
283
|
removeOptimistic(placeholderId);
|
|
284
284
|
}
|
|
@@ -364,7 +364,7 @@ function useTicketActions(options) {
|
|
|
364
364
|
...hasText ? { content_addendum: trimmed } : {},
|
|
365
365
|
...hasFiles ? { attachments } : {}
|
|
366
366
|
},
|
|
367
|
-
|
|
367
|
+
_chunkUJ33ZXDTcjs.TOAST_COPY.comment_success,
|
|
368
368
|
"send message"
|
|
369
369
|
);
|
|
370
370
|
if (ok) {
|
|
@@ -387,13 +387,13 @@ function useTicketActions(options) {
|
|
|
387
387
|
status: "CLOSED",
|
|
388
388
|
..._optionalChain([resolution, 'optionalAccess', _6 => _6.trim, 'call', _7 => _7()]) ? { resolution: resolution.trim() } : {}
|
|
389
389
|
},
|
|
390
|
-
|
|
390
|
+
_chunkUJ33ZXDTcjs.TOAST_COPY.close_success,
|
|
391
391
|
"close ticket"
|
|
392
392
|
),
|
|
393
393
|
[updateTicket]
|
|
394
394
|
);
|
|
395
395
|
const reopenTicket = _react.useCallback.call(void 0,
|
|
396
|
-
(ticket) => updateTicket(ticket, { status: "OPEN" },
|
|
396
|
+
(ticket) => updateTicket(ticket, { status: "OPEN" }, _chunkUJ33ZXDTcjs.TOAST_COPY.reopen_success, "reopen ticket"),
|
|
397
397
|
[updateTicket]
|
|
398
398
|
);
|
|
399
399
|
return _react.useMemo.call(void 0,
|
|
@@ -537,8 +537,8 @@ function useTicketsList(filters) {
|
|
|
537
537
|
const search = (_nullishCoalesce(filters.search, () => ( ""))).trim();
|
|
538
538
|
const status = (_nullishCoalesce(filters.status, () => ( ""))).trim().toLowerCase();
|
|
539
539
|
const statusFilter = status && status !== "all" ? status : "";
|
|
540
|
-
const page =
|
|
541
|
-
const pageSize =
|
|
540
|
+
const page = _chunkOF6GEI5Acjs.positiveInt.call(void 0, filters.page, 1);
|
|
541
|
+
const pageSize = _chunkOF6GEI5Acjs.positiveInt.call(void 0, filters.pageSize, DEFAULT_PAGE_SIZE, { max: _chunkOF6GEI5Acjs.PAGE_PARAM_LIMITS.maxPageSize });
|
|
542
542
|
const enabled = !!customerEmail;
|
|
543
543
|
const identityKey = customerEmail || "anon";
|
|
544
544
|
const query = _reactquery.useQuery.call(void 0, {
|
|
@@ -562,7 +562,7 @@ function useTicketsList(filters) {
|
|
|
562
562
|
pageSize
|
|
563
563
|
};
|
|
564
564
|
if (statusFilter) body.status = statusFilter;
|
|
565
|
-
const response = await
|
|
565
|
+
const response = await _chunkLM7TXMLUcjs.embedAuthedFetch.call(void 0, findTicketEndpoint, {
|
|
566
566
|
method: "POST",
|
|
567
567
|
body: JSON.stringify(body)
|
|
568
568
|
});
|
|
@@ -577,7 +577,7 @@ function useTicketsList(filters) {
|
|
|
577
577
|
const totalCount = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([data, 'optionalAccess', _12 => _12.totalCount]), () => ( _optionalChain([data, 'optionalAccess', _13 => _13.count]))), () => ( _optionalChain([data, 'optionalAccess', _14 => _14.tickets, 'optionalAccess', _15 => _15.length]))), () => ( 0));
|
|
578
578
|
const echoedPage = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _16 => _16.page]), () => ( page));
|
|
579
579
|
const echoedPageSize = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _17 => _17.pageSize]), () => ( pageSize));
|
|
580
|
-
const totalPages = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _18 => _18.totalPages]), () => (
|
|
580
|
+
const totalPages = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _18 => _18.totalPages]), () => ( _chunkOF6GEI5Acjs.pageCount.call(void 0, totalCount, echoedPageSize)));
|
|
581
581
|
return {
|
|
582
582
|
tickets: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _19 => _19.tickets]), () => ( [])),
|
|
583
583
|
// Loading-state-truth = `data === undefined`. TanStack v5's
|
|
@@ -608,14 +608,14 @@ function useTicketsList(filters) {
|
|
|
608
608
|
// src/components/tickets/ticket-open-form.tsx
|
|
609
609
|
|
|
610
610
|
var _jsxruntime = require('react/jsx-runtime');
|
|
611
|
-
var COUNTER_VISIBLE_AT = Math.floor(
|
|
611
|
+
var COUNTER_VISIBLE_AT = Math.floor(_chunkUJ33ZXDTcjs.TICKET_TEXT_MAX_CHARS * 0.8);
|
|
612
612
|
function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
|
|
613
613
|
const [subject, setSubject] = _react.useState.call(void 0, "");
|
|
614
614
|
const [content, setContent] = _react.useState.call(void 0, "");
|
|
615
|
-
const { attachments, readyAttachments, hasInflightUploads, addFiles, removeAttachment, clear } =
|
|
615
|
+
const { attachments, readyAttachments, hasInflightUploads, addFiles, removeAttachment, clear } = _chunk7OFPU7WEcjs.useChatAttachments.call(void 0, );
|
|
616
616
|
const trimmedSubject = subject.trim();
|
|
617
617
|
const trimmedContent = content.trim();
|
|
618
|
-
const overCap = content.length >
|
|
618
|
+
const overCap = content.length > _chunkUJ33ZXDTcjs.TICKET_TEXT_MAX_CHARS;
|
|
619
619
|
const showCounter = content.length >= COUNTER_VISIBLE_AT;
|
|
620
620
|
const canSubmit = !isSubmitting && !supportSystemDown && !hasInflightUploads && trimmedSubject.length > 0 && trimmedContent.length > 0 && !overCap;
|
|
621
621
|
const handleSubmit = async (e) => {
|
|
@@ -632,7 +632,7 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
|
|
|
632
632
|
clear();
|
|
633
633
|
}
|
|
634
634
|
};
|
|
635
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
635
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6NTPY5QAcjs.Card, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "form", { onSubmit: handleSubmit, className: "flex flex-col gap-6 md:flex-row", ..._chunkGWQEYPYMcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS, children: [
|
|
636
636
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1 md:max-w-md", children: [
|
|
637
637
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "mb-2 text-ods-text-primary text-h2", children: "Need Support?" }),
|
|
638
638
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "Can't find what you're looking for? Submit a support ticket below \u2014 we'll follow up shortly." }),
|
|
@@ -657,7 +657,7 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
|
|
|
657
657
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
|
|
658
658
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "label", { htmlFor: "ticket-content", className: "mb-1 block text-ods-text-primary text-h6", children: "Your Message" }),
|
|
659
659
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
660
|
-
|
|
660
|
+
_chunkGWQEYPYMcjs.Textarea,
|
|
661
661
|
{
|
|
662
662
|
id: "ticket-content",
|
|
663
663
|
placeholder: "Describe your issue or question in detail...",
|
|
@@ -671,11 +671,11 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
|
|
|
671
671
|
showCounter && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: `mt-1 text-right text-h6 ${overCap ? "text-ods-error" : "text-ods-text-secondary"}`, children: [
|
|
672
672
|
content.length,
|
|
673
673
|
"/",
|
|
674
|
-
|
|
674
|
+
_chunkUJ33ZXDTcjs.TICKET_TEXT_MAX_CHARS
|
|
675
675
|
] })
|
|
676
676
|
] }),
|
|
677
677
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
678
|
-
|
|
678
|
+
_chunk7OFPU7WEcjs.ChatAttachmentChipStrip,
|
|
679
679
|
{
|
|
680
680
|
attachments,
|
|
681
681
|
onRemove: removeAttachment,
|
|
@@ -684,7 +684,7 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
|
|
|
684
684
|
),
|
|
685
685
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-3", children: [
|
|
686
686
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
687
|
-
|
|
687
|
+
_chunk7OFPU7WEcjs.ChatAttachmentAddButton,
|
|
688
688
|
{
|
|
689
689
|
attachmentsEnabled: !supportSystemDown,
|
|
690
690
|
attachmentsCount: attachments.length,
|
|
@@ -714,7 +714,7 @@ var _usesticktobottom = require('use-stick-to-bottom');
|
|
|
714
714
|
|
|
715
715
|
var LIST_ENGAGEMENTS_ENDPOINT = "/api/chat/agent/list-engagements";
|
|
716
716
|
function useTicketEngagements(externalTicketId, enabled = true) {
|
|
717
|
-
const identity =
|
|
717
|
+
const identity = _chunk7OFPU7WEcjs.useChatIdentity.call(void 0, );
|
|
718
718
|
const identityKey = _nullishCoalesce(_optionalChain([identity, 'access', _21 => _21.user, 'optionalAccess', _22 => _22.email]), () => ( "anon"));
|
|
719
719
|
const listEngagementsEndpoint = _nullishCoalesce(_chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, ).endpoints.listEngagementsUrl, () => ( LIST_ENGAGEMENTS_ENDPOINT));
|
|
720
720
|
const fetchable = enabled && !!externalTicketId && !externalTicketId.startsWith("temp-");
|
|
@@ -734,7 +734,7 @@ function useTicketEngagements(externalTicketId, enabled = true) {
|
|
|
734
734
|
// `['ticket-engagements', id]`; focus/mount refetch is the no-stream
|
|
735
735
|
// fallback.
|
|
736
736
|
queryFn: async () => {
|
|
737
|
-
const response = await
|
|
737
|
+
const response = await _chunkLM7TXMLUcjs.embedAuthedFetch.call(void 0, listEngagementsEndpoint, {
|
|
738
738
|
method: "POST",
|
|
739
739
|
body: JSON.stringify({ ticket_id: externalTicketId })
|
|
740
740
|
});
|
|
@@ -787,7 +787,7 @@ function TicketLinkedDeliveryCard({ clickup, className }) {
|
|
|
787
787
|
dateClosed: clickup.date_closed,
|
|
788
788
|
clickupUrl: _nullishCoalesce(clickup.clickup_url, () => ( ""))
|
|
789
789
|
};
|
|
790
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${
|
|
790
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${_chunk6NTPY5QAcjs.CONTENT_CARD_SKELETON_FRAME_CLASS} ${_nullishCoalesce(className, () => ( ""))}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHZBOQIcjs.DeliveryRow, { item, href: clickup.delivery_href, caption: "Linked delivery" }) });
|
|
791
791
|
}
|
|
792
792
|
|
|
793
793
|
// src/components/tickets/ticket-reply-composer.tsx
|
|
@@ -802,7 +802,7 @@ function TicketReplyComposer({
|
|
|
802
802
|
}) {
|
|
803
803
|
const [resolution, setResolution] = _react.useState.call(void 0, "");
|
|
804
804
|
const [closeDialogOpen, setCloseDialogOpen] = _react.useState.call(void 0, false);
|
|
805
|
-
const attachments =
|
|
805
|
+
const attachments = _chunk7OFPU7WEcjs.useChatAttachments.call(void 0, );
|
|
806
806
|
const { readyAttachments, clear: clearAttachments } = attachments;
|
|
807
807
|
const ticketRef = { id: ticket.id, external_id: ticket.external_id };
|
|
808
808
|
const hasReadyFiles = readyAttachments.length > 0;
|
|
@@ -823,7 +823,7 @@ function TicketReplyComposer({
|
|
|
823
823
|
const disabled = busy || supportSystemDown;
|
|
824
824
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2", children: [
|
|
825
825
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
826
|
-
|
|
826
|
+
_chunk7OFPU7WEcjs.ChatAttachmentChipStrip,
|
|
827
827
|
{
|
|
828
828
|
attachments: attachments.attachments,
|
|
829
829
|
onRemove: attachments.removeAttachment,
|
|
@@ -832,7 +832,7 @@ function TicketReplyComposer({
|
|
|
832
832
|
}
|
|
833
833
|
),
|
|
834
834
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
835
|
-
|
|
835
|
+
_chunk7OFPU7WEcjs.ChatInput,
|
|
836
836
|
{
|
|
837
837
|
fullWidth: true,
|
|
838
838
|
autoFocus: true,
|
|
@@ -840,13 +840,13 @@ function TicketReplyComposer({
|
|
|
840
840
|
sending: busy || attachments.hasInflightUploads,
|
|
841
841
|
disabled: supportSystemDown,
|
|
842
842
|
allowEmptySend: hasReadyFiles,
|
|
843
|
-
maxLength:
|
|
843
|
+
maxLength: _chunkUJ33ZXDTcjs.TICKET_TEXT_MAX_CHARS,
|
|
844
844
|
onSend: handleSend
|
|
845
845
|
}
|
|
846
846
|
),
|
|
847
847
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2", children: [
|
|
848
848
|
!supportSystemDown && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
849
|
-
|
|
849
|
+
_chunk7OFPU7WEcjs.ChatAttachmentAddButton,
|
|
850
850
|
{
|
|
851
851
|
attachmentsEnabled: true,
|
|
852
852
|
attachmentsCount: attachments.attachments.length,
|
|
@@ -869,25 +869,25 @@ function TicketReplyComposer({
|
|
|
869
869
|
}
|
|
870
870
|
)
|
|
871
871
|
] }),
|
|
872
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
873
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
874
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
875
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
872
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGWQEYPYMcjs.AlertDialog, { open: closeDialogOpen, onOpenChange: setCloseDialogOpen, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGWQEYPYMcjs.AlertDialogContent, { className: "border-ods-border bg-ods-card", children: [
|
|
873
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGWQEYPYMcjs.AlertDialogHeader, { children: [
|
|
874
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGWQEYPYMcjs.AlertDialogTitle, { className: "text-ods-text-primary", children: "Close this ticket?" }),
|
|
875
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGWQEYPYMcjs.AlertDialogDescription, { className: "text-ods-text-secondary", children: "Add an optional resolution note below. You can reopen the ticket later if needed." })
|
|
876
876
|
] }),
|
|
877
877
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
878
|
-
|
|
878
|
+
_chunkGWQEYPYMcjs.Textarea,
|
|
879
879
|
{
|
|
880
880
|
value: resolution,
|
|
881
881
|
onChange: (e) => setResolution(e.target.value),
|
|
882
882
|
placeholder: "Resolution (optional)",
|
|
883
883
|
rows: 3,
|
|
884
|
-
maxLength:
|
|
884
|
+
maxLength: _chunkUJ33ZXDTcjs.TICKET_TEXT_MAX_CHARS,
|
|
885
885
|
className: "mt-2"
|
|
886
886
|
}
|
|
887
887
|
),
|
|
888
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
888
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGWQEYPYMcjs.AlertDialogFooter, { children: [
|
|
889
889
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
890
|
-
|
|
890
|
+
_chunkGWQEYPYMcjs.AlertDialogCancel,
|
|
891
891
|
{
|
|
892
892
|
disabled: busy,
|
|
893
893
|
className: "border-ods-border bg-transparent text-ods-text-primary hover:bg-ods-border",
|
|
@@ -895,7 +895,7 @@ function TicketReplyComposer({
|
|
|
895
895
|
}
|
|
896
896
|
),
|
|
897
897
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
898
|
-
|
|
898
|
+
_chunkGWQEYPYMcjs.AlertDialogAction,
|
|
899
899
|
{
|
|
900
900
|
onClick: () => void confirmClose(),
|
|
901
901
|
disabled: busy,
|
|
@@ -957,10 +957,10 @@ var TICKET_FEED_HEIGHT = "h-[60vh] md:h-[420px]";
|
|
|
957
957
|
var TICKET_FEED_INNER = "flex flex-col gap-4 md:gap-6 px-4 md:px-6 py-4 md:py-6";
|
|
958
958
|
var TICKET_FEED_SKELETON_ROWS = 6;
|
|
959
959
|
function TicketTimelinePanel({ ticket }) {
|
|
960
|
-
const identity =
|
|
961
|
-
const externalId =
|
|
960
|
+
const identity = _chunk7OFPU7WEcjs.useChatIdentity.call(void 0, );
|
|
961
|
+
const externalId = _chunkUJ33ZXDTcjs.isOptimistic.call(void 0, ticket) ? null : ticket.external_id;
|
|
962
962
|
const { engagements, isLoading } = useTicketEngagements(externalId, !!externalId);
|
|
963
|
-
const live =
|
|
963
|
+
const live = _chunkUJ33ZXDTcjs.useOptionalTicketLive.call(void 0, );
|
|
964
964
|
const setOpenTicketId = _optionalChain([live, 'optionalAccess', _25 => _25.setOpenTicketId]);
|
|
965
965
|
const markRead = _optionalChain([live, 'optionalAccess', _26 => _26.markRead]);
|
|
966
966
|
const markReadDebounceRef = _react.useRef.call(void 0, null);
|
|
@@ -984,7 +984,7 @@ function TicketTimelinePanel({ ticket }) {
|
|
|
984
984
|
markReadDebounceRef.current = setTimeout(() => {
|
|
985
985
|
markReadDebounceRef.current = null;
|
|
986
986
|
void markRead(externalId);
|
|
987
|
-
},
|
|
987
|
+
}, _chunkUJ33ZXDTcjs.TICKET_MARK_READ_DEBOUNCE_MS);
|
|
988
988
|
}, [engagementsCount, externalId, markRead]);
|
|
989
989
|
const { scrollRef, contentRef } = _usesticktobottom.useStickToBottom.call(void 0, { initial: "instant", resize: "smooth" });
|
|
990
990
|
const bodyTurns = ticket.body ? ticket.body.split(TURN_SEPARATOR_RE).map((t) => t.trim()).filter(Boolean) : [];
|
|
@@ -999,11 +999,11 @@ function TicketTimelinePanel({ ticket }) {
|
|
|
999
999
|
const customerName = (isViewerTheCustomer ? viewerName : null) || ticketCustomerName || viewerName || _optionalChain([identity, 'access', _40 => _40.user, 'optionalAccess', _41 => _41.email]) || "You";
|
|
1000
1000
|
const customerAvatar = isViewerTheCustomer ? _nullishCoalesce(_optionalChain([identity, 'access', _42 => _42.user, 'optionalAccess', _43 => _43.avatarUrl]), () => ( void 0)) : void 0;
|
|
1001
1001
|
if (isLoading) {
|
|
1002
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${TICKET_FEED_FRAME} ${TICKET_FEED_HEIGHT}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: TICKET_FEED_INNER, children: Array.from({ length: TICKET_FEED_SKELETON_ROWS }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1002
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${TICKET_FEED_FRAME} ${TICKET_FEED_HEIGHT}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: TICKET_FEED_INNER, children: Array.from({ length: TICKET_FEED_SKELETON_ROWS }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7OFPU7WEcjs.ChatMessageRowSkeleton, {}, i)) }) });
|
|
1003
1003
|
}
|
|
1004
1004
|
if (bodyTurns.length === 0 && engagements.length === 0) {
|
|
1005
1005
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1006
|
-
|
|
1006
|
+
_chunkPLYEKV3Ncjs.EmptyState,
|
|
1007
1007
|
{
|
|
1008
1008
|
type: "generic",
|
|
1009
1009
|
title: "No conversation yet",
|
|
@@ -1018,7 +1018,7 @@ function TicketTimelinePanel({ ticket }) {
|
|
|
1018
1018
|
const isResolution = turn.startsWith("[Resolution]");
|
|
1019
1019
|
const text = isResolution ? turn.replace(/^\[Resolution\]\s*/, "") : turn;
|
|
1020
1020
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1021
|
-
|
|
1021
|
+
_chunk7OFPU7WEcjs.ChatMessageRow,
|
|
1022
1022
|
{
|
|
1023
1023
|
displayName: customerName,
|
|
1024
1024
|
avatarUrl: customerAvatar,
|
|
@@ -1047,13 +1047,13 @@ function TicketTimelinePanel({ ticket }) {
|
|
|
1047
1047
|
}
|
|
1048
1048
|
const engAttachments = mapEngagementAttachments(eng.attachments);
|
|
1049
1049
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1050
|
-
|
|
1050
|
+
_chunk7OFPU7WEcjs.ChatMessageRow,
|
|
1051
1051
|
{
|
|
1052
1052
|
displayName: author,
|
|
1053
1053
|
avatarUrl: avatarSrc,
|
|
1054
|
-
timeLabel: eng.createdAt ?
|
|
1054
|
+
timeLabel: eng.createdAt ? _chunk7OFPU7WEcjs.formatRelativeTime.call(void 0, eng.createdAt) : null,
|
|
1055
1055
|
body: stripAttachmentsPreamble(_nullishCoalesce(eng.body, () => ( ""))),
|
|
1056
|
-
footer: engAttachments.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1056
|
+
footer: engAttachments.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGWQEYPYMcjs.TicketAttachmentsList, { attachments: engAttachments, size: "compact" }) }) : null
|
|
1057
1057
|
},
|
|
1058
1058
|
eng.id
|
|
1059
1059
|
);
|
|
@@ -1138,7 +1138,7 @@ function AssignedAgentRow({ assignedOwner }) {
|
|
|
1138
1138
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h5", children: "Assigned to" }),
|
|
1139
1139
|
displayLabel ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5 font-medium text-ods-text-primary", children: [
|
|
1140
1140
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1141
|
-
|
|
1141
|
+
_chunk6NTPY5QAcjs.SquareAvatar,
|
|
1142
1142
|
{
|
|
1143
1143
|
size: "sm",
|
|
1144
1144
|
variant: "round",
|
|
@@ -1166,11 +1166,11 @@ function TicketRow({
|
|
|
1166
1166
|
onActionCollapsed,
|
|
1167
1167
|
id
|
|
1168
1168
|
}) {
|
|
1169
|
-
const optimistic =
|
|
1169
|
+
const optimistic = _chunkUJ33ZXDTcjs.isOptimistic.call(void 0, ticket);
|
|
1170
1170
|
const rowRef = _react.useRef.call(void 0, null);
|
|
1171
1171
|
const handleClick = _react.useCallback.call(void 0, () => {
|
|
1172
1172
|
onToggle(ticket.id);
|
|
1173
|
-
|
|
1173
|
+
_chunkUVTD52MDcjs.scrollElementIntoView.call(void 0, rowRef.current, {
|
|
1174
1174
|
adjustTargetY: (raw) => {
|
|
1175
1175
|
if (!rowRef.current) return raw;
|
|
1176
1176
|
const expandedDrawer = document.querySelector('div[id^="ticket-drawer-"]');
|
|
@@ -1194,7 +1194,7 @@ function TicketRow({
|
|
|
1194
1194
|
// so the badge accurately reflects "Closed" with a checkmark.
|
|
1195
1195
|
statusLabel: _nullishCoalesce(ticket.pipeline_stage_label, () => ( void 0)),
|
|
1196
1196
|
category: _nullishCoalesce(ticket.customer_company, () => ( void 0)),
|
|
1197
|
-
timeAgo: ticket.hubspot_updated_at ?
|
|
1197
|
+
timeAgo: ticket.hubspot_updated_at ? _chunk7OFPU7WEcjs.formatRelativeTime.call(void 0, ticket.hubspot_updated_at) : void 0,
|
|
1198
1198
|
// Linked-work chip: surfaced whenever the ticket has a linked
|
|
1199
1199
|
// ClickUp task. Uses the linked task's own status so the chip text
|
|
1200
1200
|
// reads "Working" / "Waiting on version release" / etc. — useful
|
|
@@ -1204,7 +1204,7 @@ function TicketRow({
|
|
|
1204
1204
|
};
|
|
1205
1205
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: rowRef, id, className: "scroll-mt-24", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Collapsible, { open: expanded && !optimistic, className: "border-b border-ods-border last:border-b-0", children: [
|
|
1206
1206
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1207
|
-
|
|
1207
|
+
_chunk7OFPU7WEcjs.ChatTicketItem,
|
|
1208
1208
|
{
|
|
1209
1209
|
ticket: tileData,
|
|
1210
1210
|
onClick: optimistic ? void 0 : handleClick,
|
|
@@ -1236,14 +1236,14 @@ function TicketRow({
|
|
|
1236
1236
|
|
|
1237
1237
|
// src/components/tickets/ticket-center.tsx
|
|
1238
1238
|
|
|
1239
|
-
function TicketCenter({ toast: toast2 =
|
|
1240
|
-
const identity =
|
|
1239
|
+
function TicketCenter({ toast: toast2 = _chunkWCVZCGK5cjs.toast } = {}) {
|
|
1240
|
+
const identity = _chunk7OFPU7WEcjs.useChatIdentity.call(void 0, );
|
|
1241
1241
|
if (identity.isLoading) {
|
|
1242
1242
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketCenterSkeleton, {});
|
|
1243
1243
|
}
|
|
1244
1244
|
if (identity.authTier === "anon" || !_optionalChain([identity, 'access', _62 => _62.user, 'optionalAccess', _63 => _63.email])) {
|
|
1245
1245
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1246
|
-
|
|
1246
|
+
_chunkPLYEKV3Ncjs.EmptyState,
|
|
1247
1247
|
{
|
|
1248
1248
|
type: "generic",
|
|
1249
1249
|
title: "Sign in to manage tickets",
|
|
@@ -1308,7 +1308,7 @@ function TicketCenterAuthed({
|
|
|
1308
1308
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 text-ods-text-secondary text-h6", children: [
|
|
1309
1309
|
lastUpdatedAt && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { children: [
|
|
1310
1310
|
"Updated ",
|
|
1311
|
-
|
|
1311
|
+
_chunk7OFPU7WEcjs.formatRelativeTime.call(void 0, new Date(lastUpdatedAt))
|
|
1312
1312
|
] }),
|
|
1313
1313
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1314
1314
|
_chunkDFQYAYBHcjs.Button,
|
|
@@ -1324,22 +1324,22 @@ function TicketCenterAuthed({
|
|
|
1324
1324
|
)
|
|
1325
1325
|
] })
|
|
1326
1326
|
] }),
|
|
1327
|
-
isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketListSkeleton, {}) : merged.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1328
|
-
|
|
1327
|
+
isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketListSkeleton, {}) : merged.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6NTPY5QAcjs.Card, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1328
|
+
_chunkPLYEKV3Ncjs.EmptyState,
|
|
1329
1329
|
{
|
|
1330
1330
|
type: "generic",
|
|
1331
1331
|
title: "No tickets yet",
|
|
1332
1332
|
description: "Open one above to start the conversation.",
|
|
1333
1333
|
showCTA: false
|
|
1334
1334
|
}
|
|
1335
|
-
) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1335
|
+
) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6NTPY5QAcjs.Card, { className: "overflow-hidden", children: merged.map((ticket) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1336
1336
|
TicketRow,
|
|
1337
1337
|
{
|
|
1338
|
-
id:
|
|
1338
|
+
id: _chunkGWQEYPYMcjs.devSectionAnchorId.call(void 0, "ticket", ticket.external_id),
|
|
1339
1339
|
ticket,
|
|
1340
1340
|
expanded: expandedTicketId === ticket.id,
|
|
1341
1341
|
onToggle: toggleRow,
|
|
1342
|
-
busy:
|
|
1342
|
+
busy: _chunkUJ33ZXDTcjs.isOptimistic.call(void 0, ticket) ? false : actions.isRowBusy(ticket.id),
|
|
1343
1343
|
supportSystemDown,
|
|
1344
1344
|
onSendMessage: actions.sendMessage,
|
|
1345
1345
|
onClose: actions.closeTicket,
|
|
@@ -1353,7 +1353,7 @@ function TicketCenterAuthed({
|
|
|
1353
1353
|
}
|
|
1354
1354
|
function TicketCenterSkeleton() {
|
|
1355
1355
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-6", children: [
|
|
1356
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1356
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk6NTPY5QAcjs.Card, { className: "p-6", children: [
|
|
1357
1357
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBM5MVGH3cjs.Skeleton, { className: "mb-4 h-7 w-48" }),
|
|
1358
1358
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBM5MVGH3cjs.Skeleton, { className: "mb-3 h-10 w-full" }),
|
|
1359
1359
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBM5MVGH3cjs.Skeleton, { className: "h-24 w-full" })
|
|
@@ -1362,7 +1362,7 @@ function TicketCenterSkeleton() {
|
|
|
1362
1362
|
] });
|
|
1363
1363
|
}
|
|
1364
1364
|
function TicketListSkeleton() {
|
|
1365
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1365
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6NTPY5QAcjs.Card, { className: "overflow-hidden", children: [0, 1, 2].map((i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-20 items-center gap-4 border-b border-ods-border px-4 last:border-b-0", children: [
|
|
1366
1366
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col gap-2", children: [
|
|
1367
1367
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBM5MVGH3cjs.Skeleton, { className: "h-4 w-2/3" }),
|
|
1368
1368
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBM5MVGH3cjs.Skeleton, { className: "h-3 w-full" })
|
|
@@ -1393,10 +1393,10 @@ function HelpCenterCard({
|
|
|
1393
1393
|
onClearReplyError,
|
|
1394
1394
|
id
|
|
1395
1395
|
}) {
|
|
1396
|
-
const optimistic =
|
|
1396
|
+
const optimistic = _chunkUJ33ZXDTcjs.isOptimistic.call(void 0, ticket);
|
|
1397
1397
|
const rawStatus = (_nullishCoalesce(ticket.status, () => ( "OPEN"))).toUpperCase();
|
|
1398
1398
|
const priority = (_nullishCoalesce(ticket.priority, () => ( ""))).toUpperCase();
|
|
1399
|
-
const relativeUpdated = ticket.hubspot_updated_at ?
|
|
1399
|
+
const relativeUpdated = ticket.hubspot_updated_at ? _chunk7OFPU7WEcjs.formatRelativeTime.call(void 0, ticket.hubspot_updated_at) : "recently";
|
|
1400
1400
|
const title = (ticket.subject || "").trim() || "(untitled)";
|
|
1401
1401
|
const subtitle = `UPDATED ${relativeUpdated}, #${ticket.external_id || "\u2014"}${ticket.pipeline_stage_label ? `, ${ticket.pipeline_stage_label}` : ""}`;
|
|
1402
1402
|
const description = _nullishCoalesce(_nullishCoalesce(ticket.preview, () => ( ticket.body)), () => ( ""));
|
|
@@ -1409,17 +1409,17 @@ function HelpCenterCard({
|
|
|
1409
1409
|
_react.useEffect.call(void 0, () => {
|
|
1410
1410
|
if (!isExpanded) return void 0;
|
|
1411
1411
|
const raf = requestAnimationFrame(() => {
|
|
1412
|
-
|
|
1413
|
-
headerOffset:
|
|
1412
|
+
_chunkUVTD52MDcjs.scrollElementIntoView.call(void 0, rowRef.current, {
|
|
1413
|
+
headerOffset: _chunkUVTD52MDcjs.STICKY_HEADER_OFFSET_PX
|
|
1414
1414
|
});
|
|
1415
1415
|
});
|
|
1416
1416
|
return () => cancelAnimationFrame(raf);
|
|
1417
1417
|
}, [isExpanded]);
|
|
1418
|
-
const live =
|
|
1418
|
+
const live = _chunkUJ33ZXDTcjs.useOptionalTicketLive.call(void 0, );
|
|
1419
1419
|
const unreadCount = !optimistic && ticket.external_id && _optionalChain([live, 'optionalAccess', _64 => _64.unreadByTicket, 'access', _65 => _65[ticket.external_id]]) || 0;
|
|
1420
1420
|
const rightBadges = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
1421
1421
|
unreadCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1422
|
-
|
|
1422
|
+
_chunk6NTPY5QAcjs.StatusBadge,
|
|
1423
1423
|
{
|
|
1424
1424
|
text: `${unreadCount} NEW`,
|
|
1425
1425
|
colorScheme: "warning",
|
|
@@ -1428,16 +1428,16 @@ function HelpCenterCard({
|
|
|
1428
1428
|
}
|
|
1429
1429
|
),
|
|
1430
1430
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1431
|
-
|
|
1431
|
+
_chunk6NTPY5QAcjs.StatusBadge,
|
|
1432
1432
|
{
|
|
1433
1433
|
text: rawStatus,
|
|
1434
|
-
colorScheme:
|
|
1434
|
+
colorScheme: _chunk6NTPY5QAcjs.getStatusColorScheme.call(void 0, rawStatus),
|
|
1435
1435
|
variant: "card",
|
|
1436
1436
|
className: "border border-ods-border"
|
|
1437
1437
|
}
|
|
1438
1438
|
),
|
|
1439
1439
|
priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1440
|
-
|
|
1440
|
+
_chunk6NTPY5QAcjs.StatusBadge,
|
|
1441
1441
|
{
|
|
1442
1442
|
text: priority,
|
|
1443
1443
|
colorScheme: mapPriorityScheme(priority),
|
|
@@ -1451,7 +1451,7 @@ function HelpCenterCard({
|
|
|
1451
1451
|
{
|
|
1452
1452
|
ref: rowRef,
|
|
1453
1453
|
id,
|
|
1454
|
-
style: { scrollMarginTop:
|
|
1454
|
+
style: { scrollMarginTop: _chunkUVTD52MDcjs.STICKY_HEADER_OFFSET_PX },
|
|
1455
1455
|
className: `border-b border-ods-border last:border-b-0 ${optimistic ? "opacity-60" : ""}`,
|
|
1456
1456
|
"aria-busy": optimistic || void 0,
|
|
1457
1457
|
children: [
|
|
@@ -1465,7 +1465,7 @@ function HelpCenterCard({
|
|
|
1465
1465
|
"aria-controls": isExpanded ? `help-center-drawer-${ticket.id}` : void 0,
|
|
1466
1466
|
className: "w-full p-[12px] text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-accent disabled:cursor-default content-md:p-[16px]",
|
|
1467
1467
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1468
|
-
|
|
1468
|
+
_chunkSTHZBOQIcjs.DevCardRowContent,
|
|
1469
1469
|
{
|
|
1470
1470
|
title,
|
|
1471
1471
|
subtitle,
|
|
@@ -1566,7 +1566,7 @@ function HelpCenterCreateForm({
|
|
|
1566
1566
|
subjectError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { id: "help-center-subject-error", className: "mt-1 text-ods-error text-h6", children: subjectError })
|
|
1567
1567
|
] });
|
|
1568
1568
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1569
|
-
|
|
1569
|
+
_chunkSEKYEWQGcjs.ContactForm,
|
|
1570
1570
|
{
|
|
1571
1571
|
rescue: null,
|
|
1572
1572
|
title: "Open a new ticket",
|
|
@@ -1604,31 +1604,31 @@ function HelpCenterCreateForm({
|
|
|
1604
1604
|
|
|
1605
1605
|
// src/components/tickets/help-center-list.tsx
|
|
1606
1606
|
|
|
1607
|
-
function HelpCenterList({ toast: toast2 =
|
|
1608
|
-
const identity =
|
|
1607
|
+
function HelpCenterList({ toast: toast2 = _chunkWCVZCGK5cjs.toast, backButton, title, shell } = {}) {
|
|
1608
|
+
const identity = _chunk7OFPU7WEcjs.useChatIdentity.call(void 0, );
|
|
1609
1609
|
const searchParams = _chunk7DNL734Scjs.useSearchParams.call(void 0, );
|
|
1610
1610
|
const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
|
|
1611
1611
|
const pathname = _chunk7DNL734Scjs.usePathname.call(void 0, );
|
|
1612
|
-
const search = searchParams.get(
|
|
1612
|
+
const search = searchParams.get(_chunkGWQEYPYMcjs.DEV_SECTION_PARAM_KEYS.search) || "";
|
|
1613
1613
|
const status = searchParams.get("status") || "all";
|
|
1614
|
-
const ticketParam = searchParams.get(
|
|
1615
|
-
const page =
|
|
1614
|
+
const ticketParam = searchParams.get(_chunkGWQEYPYMcjs.TICKET_OPEN_PARAM) || "";
|
|
1615
|
+
const page = _chunkOF6GEI5Acjs.positiveInt.call(void 0, searchParams.get("page"), 1);
|
|
1616
1616
|
if (identity.isLoading) {
|
|
1617
1617
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1618
|
-
|
|
1618
|
+
_chunkSTHZBOQIcjs.DevSectionPage,
|
|
1619
1619
|
{
|
|
1620
1620
|
sectionKey: "tickets",
|
|
1621
1621
|
backButton,
|
|
1622
1622
|
title,
|
|
1623
1623
|
shell,
|
|
1624
1624
|
preControls: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HelpCenterCreateFormSkeleton, {}),
|
|
1625
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1625
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHZBOQIcjs.DevCardRowSkeletonList, {})
|
|
1626
1626
|
}
|
|
1627
1627
|
);
|
|
1628
1628
|
}
|
|
1629
1629
|
if (identity.authTier === "anon" || !_optionalChain([identity, 'access', _66 => _66.user, 'optionalAccess', _67 => _67.email])) {
|
|
1630
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1631
|
-
|
|
1630
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHZBOQIcjs.DevSectionPage, { sectionKey: "tickets", backButton, title, shell, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1631
|
+
_chunkPLYEKV3Ncjs.EmptyState,
|
|
1632
1632
|
{
|
|
1633
1633
|
type: "generic",
|
|
1634
1634
|
title: "Sign in to manage tickets",
|
|
@@ -1679,8 +1679,8 @@ function HelpCenterListAuthed({
|
|
|
1679
1679
|
const setOpenTicket = _react.useCallback.call(void 0,
|
|
1680
1680
|
(externalId) => {
|
|
1681
1681
|
const params = new URLSearchParams(searchParams.toString());
|
|
1682
|
-
if (externalId) params.set(
|
|
1683
|
-
else params.delete(
|
|
1682
|
+
if (externalId) params.set(_chunkGWQEYPYMcjs.TICKET_OPEN_PARAM, externalId);
|
|
1683
|
+
else params.delete(_chunkGWQEYPYMcjs.TICKET_OPEN_PARAM);
|
|
1684
1684
|
const qs = params.toString();
|
|
1685
1685
|
router.replace(qs ? `${pathname}?${qs}` : pathname, { scroll: false });
|
|
1686
1686
|
},
|
|
@@ -1737,7 +1737,7 @@ function HelpCenterListAuthed({
|
|
|
1737
1737
|
[tickets, ticketParam, setOpenTicket]
|
|
1738
1738
|
);
|
|
1739
1739
|
const merged = [...optimisticTickets, ...tickets];
|
|
1740
|
-
|
|
1740
|
+
_chunkWCVZCGK5cjs.useScrollToHash.call(void 0, tickets, { headerOffset: _chunkUVTD52MDcjs.STICKY_HEADER_OFFSET_PX });
|
|
1741
1741
|
const hasActiveFilters = search !== "" || status !== "" && status !== "all";
|
|
1742
1742
|
const hasResults = merged.length > 0;
|
|
1743
1743
|
const form = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -1757,15 +1757,15 @@ function HelpCenterListAuthed({
|
|
|
1757
1757
|
] }),
|
|
1758
1758
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { type: "button", variant: "accent", onClick: () => refetch(), children: "Retry" })
|
|
1759
1759
|
] }),
|
|
1760
|
-
!error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1760
|
+
!error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHZBOQIcjs.DevCardRowSkeletonList, {}) : !hasResults && isFetching ? (
|
|
1761
1761
|
// Bridge state — background refetch in flight and the
|
|
1762
1762
|
// optimistic placeholder was just removed by the mutation
|
|
1763
1763
|
// callback. Without this branch "No tickets yet" would flash
|
|
1764
1764
|
// for ~50ms between `removeOptimistic` and the server
|
|
1765
1765
|
// response landing.
|
|
1766
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1766
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHZBOQIcjs.DevCardRowSkeletonList, { rows: 1 })
|
|
1767
1767
|
) : !hasResults ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1768
|
-
|
|
1768
|
+
_chunkSTHZBOQIcjs.ListEmptyState,
|
|
1769
1769
|
{
|
|
1770
1770
|
isFiltered: hasActiveFilters,
|
|
1771
1771
|
filtered: {
|
|
@@ -1796,11 +1796,11 @@ function HelpCenterListAuthed({
|
|
|
1796
1796
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full overflow-clip rounded-[6px] border border-ods-border bg-ods-card", children: merged.map((ticket) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1797
1797
|
HelpCenterCard,
|
|
1798
1798
|
{
|
|
1799
|
-
id:
|
|
1799
|
+
id: _chunkGWQEYPYMcjs.devSectionAnchorId.call(void 0, "ticket", ticket.external_id),
|
|
1800
1800
|
ticket,
|
|
1801
1801
|
expanded: expandedTicketId === ticket.id,
|
|
1802
1802
|
onToggle: toggleRow,
|
|
1803
|
-
busy:
|
|
1803
|
+
busy: _chunkUJ33ZXDTcjs.isOptimistic.call(void 0, ticket) ? false : actions.isRowBusy(ticket.id),
|
|
1804
1804
|
supportSystemDown,
|
|
1805
1805
|
onSendMessage: actions.sendMessage,
|
|
1806
1806
|
onClose: actions.closeTicket,
|
|
@@ -1812,9 +1812,9 @@ function HelpCenterListAuthed({
|
|
|
1812
1812
|
ticket.id
|
|
1813
1813
|
)) })
|
|
1814
1814
|
) }),
|
|
1815
|
-
!error && totalPages > 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1815
|
+
!error && totalPages > 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPLYEKV3Ncjs.UnifiedPagination, { currentPage: page, totalPages })
|
|
1816
1816
|
] });
|
|
1817
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1817
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHZBOQIcjs.DevSectionPage, { sectionKey: "tickets", backButton, title, shell, preControls: form, children: body });
|
|
1818
1818
|
}
|
|
1819
1819
|
|
|
1820
1820
|
|