@flamingo-stack/openframe-frontend-core 0.0.776 → 0.0.780

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.
Files changed (94) hide show
  1. package/dist/case-study-card-WXMWYGSW.cjs +25 -0
  2. package/dist/{chunk-2MF547RG.cjs → chunk-2JO5HNEF.cjs} +28 -26
  3. package/dist/{chunk-DDXQGTWB.cjs → chunk-2W3VDE4D.cjs} +5 -5
  4. package/dist/{chunk-R3JX4MXD.cjs → chunk-3ZLPYEL5.cjs} +10 -10
  5. package/dist/{chunk-3V27UHSH.cjs → chunk-4BBOHZM3.cjs} +17 -17
  6. package/dist/{chunk-XT5WEHFM.cjs → chunk-4NRVV3KO.cjs} +3 -3
  7. package/dist/{chunk-DGFDBPO7.cjs → chunk-5GJM7VRR.cjs} +1 -94
  8. package/dist/{chunk-E64HPPRH.cjs → chunk-5PK22JP7.cjs} +50 -50
  9. package/dist/{chunk-57B5RUYD.cjs → chunk-64KBI5MI.cjs} +2 -2
  10. package/dist/{chunk-ASMNNSUQ.cjs → chunk-7PNRXJX2.cjs} +3 -3
  11. package/dist/{chunk-OTZQP53Y.cjs → chunk-AQXEM7GI.cjs} +8 -8
  12. package/dist/{chunk-VFZFCRAL.cjs → chunk-AQXKXZWB.cjs} +4 -4
  13. package/dist/{chunk-VFUMM6JC.cjs → chunk-BEMGJDXI.cjs} +2 -2
  14. package/dist/{chunk-HY6BCZH7.cjs → chunk-BNUZKBNV.cjs} +3 -3
  15. package/dist/{chunk-2YB4X5WT.cjs → chunk-DQALLDTZ.cjs} +6 -6
  16. package/dist/{chunk-MWH5ZTMB.cjs → chunk-F3BASIMT.cjs} +97 -95
  17. package/dist/{chunk-Z5KX56TK.cjs → chunk-HUPDPANN.cjs} +4 -4
  18. package/dist/{chunk-2AZAJ7RK.cjs → chunk-I4IC3BRC.cjs} +53 -53
  19. package/dist/{chunk-BDYI6HBT.cjs → chunk-IE3QCYBT.cjs} +18 -16
  20. package/dist/{chunk-UM6HFGTI.cjs → chunk-ILRQXZBA.cjs} +53 -51
  21. package/dist/{chunk-CZIMISAR.cjs → chunk-JB2SEF6Q.cjs} +7 -7
  22. package/dist/{chunk-AMVI5VXM.cjs → chunk-KA3VQ6X2.cjs} +91 -89
  23. package/dist/{chunk-LJT2KRE2.cjs → chunk-KLTUTZBO.cjs} +24 -24
  24. package/dist/{chunk-EHJE3UWZ.cjs → chunk-LBGAHB6X.cjs} +20 -20
  25. package/dist/{chunk-LNCBN4BL.cjs → chunk-MLX6Z7TU.cjs} +2 -2
  26. package/dist/chunk-OH5LAH3X.cjs +1456 -0
  27. package/dist/{chunk-XXJL5GY3.cjs → chunk-OJZBZH56.cjs} +3 -3
  28. package/dist/{chunk-IXZNBDXT.cjs → chunk-OMHQZXCD.cjs} +28 -28
  29. package/dist/{chunk-KM2TVQCH.cjs → chunk-OWQVDWTK.cjs} +259 -247
  30. package/dist/{chunk-YFTQ2ALU.cjs → chunk-PQBGSVZE.cjs} +116 -82
  31. package/dist/{chunk-OJLZ7PGO.cjs → chunk-QEFDGI3Z.cjs} +37 -35
  32. package/dist/{chunk-6HY2NH7D.cjs → chunk-QIQYD75I.cjs} +2 -2
  33. package/dist/{chunk-RB7VLVMD.cjs → chunk-R6BKQKIF.cjs} +9 -7
  34. package/dist/{chunk-V3W56L2D.cjs → chunk-SIDDZZKL.cjs} +38 -38
  35. package/dist/chunk-SZHDXXMK.cjs +102 -0
  36. package/dist/{chunk-5P4TDV7V.cjs → chunk-TUAATMUE.cjs} +5 -93
  37. package/dist/{chunk-F65RSJVV.cjs → chunk-TVDQMG7I.cjs} +23 -21
  38. package/dist/{chunk-XN6LXMH5.cjs → chunk-UPAE4IV5.cjs} +595 -591
  39. package/dist/chunk-V4FXUIMH.cjs +92 -0
  40. package/dist/{chunk-2JRSYWFP.cjs → chunk-VXAKQRV7.cjs} +5 -5
  41. package/dist/{chunk-L55XLH5A.cjs → chunk-WR7KJML6.cjs} +33 -31
  42. package/dist/{chunk-5QP3K2CE.cjs → chunk-XEYL6AFZ.cjs} +9 -9
  43. package/dist/{chunk-MYHS4W2H.cjs → chunk-YG72MEHY.cjs} +213 -1647
  44. package/dist/{chunk-WAQPW4CB.cjs → chunk-YNECNYQF.cjs} +6 -6
  45. package/dist/{chunk-NWZSYG4S.cjs → chunk-YWQ3VXPL.cjs} +114 -112
  46. package/dist/{chunk-24OYQQZC.cjs → chunk-ZGWS3NJR.cjs} +22 -22
  47. package/dist/{cloud-tenants-QFE6QMR5.cjs → cloud-tenants-2ZLGCSGK.cjs} +27 -24
  48. package/dist/components/case-studies/index.cjs +45 -41
  49. package/dist/components/chat/chat-message-enhanced.d.ts.map +1 -1
  50. package/dist/components/chat/chat-message-enhanced.js +8 -4
  51. package/dist/components/chat/chat-message-list.d.ts.map +1 -1
  52. package/dist/components/chat/chat-message-list.js +2 -0
  53. package/dist/components/chat/index.cjs +21 -17
  54. package/dist/components/chat/types/component.types.d.ts +9 -0
  55. package/dist/components/chat/types/component.types.d.ts.map +1 -1
  56. package/dist/components/contact/index.cjs +28 -25
  57. package/dist/components/docs/index.cjs +31 -28
  58. package/dist/components/embeds/index.cjs +28 -25
  59. package/dist/components/faq/index.cjs +29 -26
  60. package/dist/components/features/index.cjs +28 -24
  61. package/dist/components/features/video-hover-preview.d.ts.map +1 -1
  62. package/dist/components/features/video-hover-preview.js +2 -5
  63. package/dist/components/features/video.d.ts.map +1 -1
  64. package/dist/components/features/video.js +1 -44
  65. package/dist/components/help-center-pages/index.cjs +131 -127
  66. package/dist/components/index.cjs +94 -90
  67. package/dist/components/meeting-scheduler/index.cjs +95 -92
  68. package/dist/components/navigation/index.cjs +30 -27
  69. package/dist/components/navigation/nav-panel.d.ts.map +1 -1
  70. package/dist/components/navigation/nav-panel.js +47 -13
  71. package/dist/components/onboarding-guides/index.cjs +30 -27
  72. package/dist/components/product-demo/index.cjs +38 -35
  73. package/dist/components/related-content/index.cjs +15 -12
  74. package/dist/components/tickets/index.cjs +33 -30
  75. package/dist/components/ui/index.cjs +28 -24
  76. package/dist/{devices-SFJDLXSW.cjs → devices-UOBQFPV3.cjs} +28 -25
  77. package/dist/{embeddable-chat-XZUWAK4W.cjs → embeddable-chat-SFQWRUIV.cjs} +99 -95
  78. package/dist/hooks/index.cjs +12 -10
  79. package/dist/index.cjs +36 -30
  80. package/dist/{knowledge-SAK3ZGCO.cjs → knowledge-5K3LTHGB.cjs} +28 -25
  81. package/dist/{logs-CYBGMFA5.cjs → logs-WU3N6ESS.cjs} +35 -32
  82. package/dist/{policies-XXDOICWF.cjs → policies-2IYASCQO.cjs} +31 -28
  83. package/dist/{remote-session-TC3BZDBZ.cjs → remote-session-TGM2OTTV.cjs} +12 -10
  84. package/dist/{scripts-C5T2AQPA.cjs → scripts-IQBKOQEY.cjs} +34 -31
  85. package/dist/{software-update-XU5AI4TP.cjs → software-update-GJLDO5X5.cjs} +31 -28
  86. package/dist/{tickets-board-YT25IX3O.cjs → tickets-board-FB5AGLJD.cjs} +16 -14
  87. package/dist/{video-file-player-6ZFOZFER.cjs → video-file-player-SIJW5UWU.cjs} +3 -2
  88. package/package.json +1 -1
  89. package/src/components/chat/chat-message-enhanced.tsx +13 -4
  90. package/src/components/chat/chat-message-list.tsx +2 -0
  91. package/src/components/chat/types/component.types.ts +9 -0
  92. package/src/components/features/video-hover-preview.tsx +37 -46
  93. package/src/components/features/video.tsx +1 -61
  94. package/src/components/navigation/nav-panel.tsx +74 -14
@@ -1,7 +1,7 @@
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 _chunkIXZNBDXTcjs = require('./chunk-IXZNBDXT.cjs');
4
+ var _chunkOMHQZXCDcjs = require('./chunk-OMHQZXCD.cjs');
5
5
 
6
6
 
7
7
 
@@ -9,14 +9,14 @@ var _chunkIXZNBDXTcjs = require('./chunk-IXZNBDXT.cjs');
9
9
 
10
10
 
11
11
 
12
- var _chunk2MF547RGcjs = require('./chunk-2MF547RG.cjs');
12
+ var _chunk2JO5HNEFcjs = require('./chunk-2JO5HNEF.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkZ5KX56TKcjs = require('./chunk-Z5KX56TK.cjs');
16
+ var _chunkHUPDPANNcjs = require('./chunk-HUPDPANN.cjs');
17
17
 
18
18
 
19
- var _chunkWAQPW4CBcjs = require('./chunk-WAQPW4CB.cjs');
19
+ var _chunkYNECNYQFcjs = require('./chunk-YNECNYQF.cjs');
20
20
 
21
21
 
22
22
 
@@ -29,11 +29,11 @@ var _chunkWAQPW4CBcjs = require('./chunk-WAQPW4CB.cjs');
29
29
 
30
30
 
31
31
 
32
- var _chunkXN6LXMH5cjs = require('./chunk-XN6LXMH5.cjs');
32
+ var _chunkUPAE4IV5cjs = require('./chunk-UPAE4IV5.cjs');
33
33
 
34
34
 
35
35
 
36
- var _chunkE64HPPRHcjs = require('./chunk-E64HPPRH.cjs');
36
+ var _chunk5PK22JP7cjs = require('./chunk-5PK22JP7.cjs');
37
37
 
38
38
 
39
39
 
@@ -43,23 +43,23 @@ var _chunkE64HPPRHcjs = require('./chunk-E64HPPRH.cjs');
43
43
 
44
44
 
45
45
 
46
- var _chunkNWZSYG4Scjs = require('./chunk-NWZSYG4S.cjs');
46
+ var _chunkYWQ3VXPLcjs = require('./chunk-YWQ3VXPL.cjs');
47
47
 
48
48
 
49
49
 
50
50
 
51
51
 
52
- var _chunkKM2TVQCHcjs = require('./chunk-KM2TVQCH.cjs');
52
+ var _chunkOWQVDWTKcjs = require('./chunk-OWQVDWTK.cjs');
53
53
 
54
54
 
55
- var _chunkEHJE3UWZcjs = require('./chunk-EHJE3UWZ.cjs');
55
+ var _chunkLBGAHB6Xcjs = require('./chunk-LBGAHB6X.cjs');
56
56
 
57
57
 
58
- var _chunk5QP3K2CEcjs = require('./chunk-5QP3K2CE.cjs');
58
+ var _chunkXEYL6AFZcjs = require('./chunk-XEYL6AFZ.cjs');
59
59
 
60
60
 
61
61
 
62
- var _chunkXXJL5GY3cjs = require('./chunk-XXJL5GY3.cjs');
62
+ var _chunkOJZBZH56cjs = require('./chunk-OJZBZH56.cjs');
63
63
 
64
64
 
65
65
  var _chunkJKX2C3I2cjs = require('./chunk-JKX2C3I2.cjs');
@@ -70,13 +70,15 @@ var _chunkJKX2C3I2cjs = require('./chunk-JKX2C3I2.cjs');
70
70
  var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
71
71
 
72
72
 
73
+ var _chunkYG72MEHYcjs = require('./chunk-YG72MEHY.cjs');
73
74
 
74
75
 
75
76
 
76
- var _chunkMYHS4W2Hcjs = require('./chunk-MYHS4W2H.cjs');
77
77
 
78
+ var _chunkOH5LAH3Xcjs = require('./chunk-OH5LAH3X.cjs');
78
79
 
79
- var _chunkHY6BCZH7cjs = require('./chunk-HY6BCZH7.cjs');
80
+
81
+ var _chunkBNUZKBNVcjs = require('./chunk-BNUZKBNV.cjs');
80
82
 
81
83
 
82
84
 
@@ -84,7 +86,7 @@ var _chunkHY6BCZH7cjs = require('./chunk-HY6BCZH7.cjs');
84
86
  var _chunkBLH2SFOOcjs = require('./chunk-BLH2SFOO.cjs');
85
87
 
86
88
 
87
- var _chunkDGFDBPO7cjs = require('./chunk-DGFDBPO7.cjs');
89
+ var _chunk5GJM7VRRcjs = require('./chunk-5GJM7VRR.cjs');
88
90
 
89
91
 
90
92
  var _chunkUJ7AXHRZcjs = require('./chunk-UJ7AXHRZ.cjs');
@@ -151,7 +153,7 @@ var TicketActionFailure = class extends Error {
151
153
  function useTicketActions(options) {
152
154
  const queryClient = _reactquery.useQueryClient.call(void 0, );
153
155
  const ticketActionEndpoint = _nullishCoalesce(_chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, ).endpoints.ticketActionUrl, () => ( TICKET_ACTION_ENDPOINT));
154
- const ticketLive = _chunkWAQPW4CBcjs.useOptionalTicketLive.call(void 0, );
156
+ const ticketLive = _chunkYNECNYQFcjs.useOptionalTicketLive.call(void 0, );
155
157
  const notifyTicketCreated = _optionalChain([ticketLive, 'optionalAccess', _2 => _2.notifyTicketCreated]);
156
158
  const { prependOptimistic, removeOptimistic, removeTicketFromCache, toast: toast2, onSupportSystemDown } = options;
157
159
  const formInFlightRef = _react.useRef.call(void 0, null);
@@ -196,7 +198,7 @@ function useTicketActions(options) {
196
198
  }, []);
197
199
  const executeTicketAction = _react.useCallback.call(void 0,
198
200
  async (toolName, args) => {
199
- const res = await _chunkDGFDBPO7cjs.embedAuthedFetch.call(void 0, ticketActionEndpoint, {
201
+ const res = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, ticketActionEndpoint, {
200
202
  method: "POST",
201
203
  body: JSON.stringify({ tool_name: toolName, args })
202
204
  });
@@ -593,7 +595,7 @@ function useTicketsList(filters) {
593
595
  pageSize
594
596
  };
595
597
  if (statusFilter) body.status = statusFilter;
596
- const response = await _chunkDGFDBPO7cjs.embedAuthedFetch.call(void 0, findTicketEndpoint, {
598
+ const response = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, findTicketEndpoint, {
597
599
  method: "POST",
598
600
  body: JSON.stringify(body)
599
601
  });
@@ -644,7 +646,7 @@ var COUNTER_VISIBLE_AT = Math.floor(TICKET_TEXT_MAX_CHARS * 0.8);
644
646
  function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
645
647
  const [subject, setSubject] = _react.useState.call(void 0, "");
646
648
  const [content, setContent] = _react.useState.call(void 0, "");
647
- const { attachments, readyAttachments, hasInflightUploads, addFiles, removeAttachment, clear } = _chunkKM2TVQCHcjs.useChatAttachments.call(void 0, );
649
+ const { attachments, readyAttachments, hasInflightUploads, addFiles, removeAttachment, clear } = _chunkOWQVDWTKcjs.useChatAttachments.call(void 0, );
648
650
  const trimmedSubject = subject.trim();
649
651
  const trimmedContent = content.trim();
650
652
  const overCap = content.length > TICKET_TEXT_MAX_CHARS;
@@ -664,7 +666,7 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
664
666
  clear();
665
667
  }
666
668
  };
667
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMYHS4W2Hcjs.Card, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "form", { onSubmit: handleSubmit, className: "flex flex-col gap-6 md:flex-row", ..._chunkNWZSYG4Scjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS, children: [
669
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.Card, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "form", { onSubmit: handleSubmit, className: "flex flex-col gap-6 md:flex-row", ..._chunkYWQ3VXPLcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS, children: [
668
670
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1 md:max-w-md", children: [
669
671
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "mb-2 text-ods-text-primary text-h2", children: "Need Support?" }),
670
672
  /* @__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." }),
@@ -689,7 +691,7 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
689
691
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
690
692
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "label", { htmlFor: "ticket-content", className: "mb-1 block text-ods-text-primary text-h6", children: "Your Message" }),
691
693
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
692
- _chunkXN6LXMH5cjs.Textarea,
694
+ _chunkUPAE4IV5cjs.Textarea,
693
695
  {
694
696
  id: "ticket-content",
695
697
  placeholder: "Describe your issue or question in detail...",
@@ -707,7 +709,7 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
707
709
  ] })
708
710
  ] }),
709
711
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
710
- _chunkKM2TVQCHcjs.ChatAttachmentChipStrip,
712
+ _chunkOWQVDWTKcjs.ChatAttachmentChipStrip,
711
713
  {
712
714
  attachments,
713
715
  onRemove: removeAttachment,
@@ -716,7 +718,7 @@ function TicketOpenForm({ onSubmit, isSubmitting, supportSystemDown }) {
716
718
  ),
717
719
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-3", children: [
718
720
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
719
- _chunkKM2TVQCHcjs.ChatAttachmentAddButton,
721
+ _chunkOWQVDWTKcjs.ChatAttachmentAddButton,
720
722
  {
721
723
  attachmentsEnabled: !supportSystemDown,
722
724
  attachmentsCount: attachments.length,
@@ -746,7 +748,7 @@ var _usesticktobottom = require('use-stick-to-bottom');
746
748
 
747
749
  var LIST_ENGAGEMENTS_ENDPOINT = "/api/chat/agent/list-engagements";
748
750
  function useTicketEngagements(externalTicketId, enabled = true) {
749
- const identity = _chunkKM2TVQCHcjs.useChatIdentity.call(void 0, );
751
+ const identity = _chunkOWQVDWTKcjs.useChatIdentity.call(void 0, );
750
752
  const identityKey = _nullishCoalesce(_optionalChain([identity, 'access', _22 => _22.user, 'optionalAccess', _23 => _23.email]), () => ( "anon"));
751
753
  const listEngagementsEndpoint = _nullishCoalesce(_chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, ).endpoints.listEngagementsUrl, () => ( LIST_ENGAGEMENTS_ENDPOINT));
752
754
  const fetchable = enabled && !!externalTicketId && !externalTicketId.startsWith("temp-");
@@ -766,7 +768,7 @@ function useTicketEngagements(externalTicketId, enabled = true) {
766
768
  // `['ticket-engagements', id]`; focus/mount refetch is the no-stream
767
769
  // fallback.
768
770
  queryFn: async () => {
769
- const response = await _chunkDGFDBPO7cjs.embedAuthedFetch.call(void 0, listEngagementsEndpoint, {
771
+ const response = await _chunk5GJM7VRRcjs.embedAuthedFetch.call(void 0, listEngagementsEndpoint, {
770
772
  method: "POST",
771
773
  body: JSON.stringify({ ticket_id: externalTicketId })
772
774
  });
@@ -819,7 +821,7 @@ function TicketLinkedDeliveryCard({ clickup, className }) {
819
821
  dateClosed: clickup.date_closed,
820
822
  clickupUrl: _nullishCoalesce(clickup.clickup_url, () => ( ""))
821
823
  };
822
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${_chunkMYHS4W2Hcjs.CONTENT_CARD_SKELETON_FRAME_CLASS} ${_nullishCoalesce(className, () => ( ""))}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2MF547RGcjs.DeliveryRow, { item, href: clickup.delivery_href, caption: "Linked delivery" }) });
824
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${_chunkOH5LAH3Xcjs.CONTENT_CARD_SKELETON_FRAME_CLASS} ${_nullishCoalesce(className, () => ( ""))}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JO5HNEFcjs.DeliveryRow, { item, href: clickup.delivery_href, caption: "Linked delivery" }) });
823
825
  }
824
826
 
825
827
  // src/components/tickets/ticket-reply-composer.tsx
@@ -834,7 +836,7 @@ function TicketReplyComposer({
834
836
  }) {
835
837
  const [resolution, setResolution] = _react.useState.call(void 0, "");
836
838
  const [closeDialogOpen, setCloseDialogOpen] = _react.useState.call(void 0, false);
837
- const attachments = _chunkKM2TVQCHcjs.useChatAttachments.call(void 0, );
839
+ const attachments = _chunkOWQVDWTKcjs.useChatAttachments.call(void 0, );
838
840
  const { readyAttachments, clear: clearAttachments } = attachments;
839
841
  const ticketRef = { id: ticket.id, external_id: ticket.external_id };
840
842
  const hasReadyFiles = readyAttachments.length > 0;
@@ -855,7 +857,7 @@ function TicketReplyComposer({
855
857
  const disabled = busy || supportSystemDown;
856
858
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2", children: [
857
859
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
858
- _chunkKM2TVQCHcjs.ChatAttachmentChipStrip,
860
+ _chunkOWQVDWTKcjs.ChatAttachmentChipStrip,
859
861
  {
860
862
  attachments: attachments.attachments,
861
863
  onRemove: attachments.removeAttachment,
@@ -864,7 +866,7 @@ function TicketReplyComposer({
864
866
  }
865
867
  ),
866
868
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
867
- _chunk5QP3K2CEcjs.ChatInput,
869
+ _chunkXEYL6AFZcjs.ChatInput,
868
870
  {
869
871
  fullWidth: true,
870
872
  autoFocus: true,
@@ -878,7 +880,7 @@ function TicketReplyComposer({
878
880
  ),
879
881
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2", children: [
880
882
  !supportSystemDown && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
881
- _chunkKM2TVQCHcjs.ChatAttachmentAddButton,
883
+ _chunkOWQVDWTKcjs.ChatAttachmentAddButton,
882
884
  {
883
885
  attachmentsEnabled: true,
884
886
  attachmentsCount: attachments.attachments.length,
@@ -901,13 +903,13 @@ function TicketReplyComposer({
901
903
  }
902
904
  )
903
905
  ] }),
904
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXN6LXMH5cjs.AlertDialog, { open: closeDialogOpen, onOpenChange: setCloseDialogOpen, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXN6LXMH5cjs.AlertDialogContent, { className: "border-ods-border bg-ods-card", children: [
905
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXN6LXMH5cjs.AlertDialogHeader, { children: [
906
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXN6LXMH5cjs.AlertDialogTitle, { className: "text-ods-text-primary", children: "Close this ticket?" }),
907
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXN6LXMH5cjs.AlertDialogDescription, { className: "text-ods-text-secondary", children: "Add an optional resolution note below. You can reopen the ticket later if needed." })
906
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUPAE4IV5cjs.AlertDialog, { open: closeDialogOpen, onOpenChange: setCloseDialogOpen, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUPAE4IV5cjs.AlertDialogContent, { className: "border-ods-border bg-ods-card", children: [
907
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUPAE4IV5cjs.AlertDialogHeader, { children: [
908
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUPAE4IV5cjs.AlertDialogTitle, { className: "text-ods-text-primary", children: "Close this ticket?" }),
909
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUPAE4IV5cjs.AlertDialogDescription, { className: "text-ods-text-secondary", children: "Add an optional resolution note below. You can reopen the ticket later if needed." })
908
910
  ] }),
909
911
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
910
- _chunkXN6LXMH5cjs.Textarea,
912
+ _chunkUPAE4IV5cjs.Textarea,
911
913
  {
912
914
  value: resolution,
913
915
  onChange: (e) => setResolution(e.target.value),
@@ -917,9 +919,9 @@ function TicketReplyComposer({
917
919
  className: "mt-2"
918
920
  }
919
921
  ),
920
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXN6LXMH5cjs.AlertDialogFooter, { children: [
922
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUPAE4IV5cjs.AlertDialogFooter, { children: [
921
923
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
922
- _chunkXN6LXMH5cjs.AlertDialogCancel,
924
+ _chunkUPAE4IV5cjs.AlertDialogCancel,
923
925
  {
924
926
  disabled: busy,
925
927
  className: "border-ods-border bg-transparent text-ods-text-primary hover:bg-ods-border",
@@ -927,7 +929,7 @@ function TicketReplyComposer({
927
929
  }
928
930
  ),
929
931
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
930
- _chunkXN6LXMH5cjs.AlertDialogAction,
932
+ _chunkUPAE4IV5cjs.AlertDialogAction,
931
933
  {
932
934
  onClick: () => void confirmClose(),
933
935
  disabled: busy,
@@ -989,10 +991,10 @@ var TICKET_FEED_HEIGHT = "h-[60vh] md:h-[420px]";
989
991
  var TICKET_FEED_INNER = "flex flex-col gap-4 md:gap-6 px-4 md:px-6 py-4 md:py-6";
990
992
  var TICKET_FEED_SKELETON_ROWS = 6;
991
993
  function TicketTimelinePanel({ ticket }) {
992
- const identity = _chunkKM2TVQCHcjs.useChatIdentity.call(void 0, );
994
+ const identity = _chunkOWQVDWTKcjs.useChatIdentity.call(void 0, );
993
995
  const externalId = isOptimistic(ticket) ? null : ticket.external_id;
994
996
  const { engagements, isLoading } = useTicketEngagements(externalId, !!externalId);
995
- const live = _chunkWAQPW4CBcjs.useOptionalTicketLive.call(void 0, );
997
+ const live = _chunkYNECNYQFcjs.useOptionalTicketLive.call(void 0, );
996
998
  const setOpenTicketId = _optionalChain([live, 'optionalAccess', _26 => _26.setOpenTicketId]);
997
999
  const markRead = _optionalChain([live, 'optionalAccess', _27 => _27.markRead]);
998
1000
  const markReadDebounceRef = _react.useRef.call(void 0, null);
@@ -1031,11 +1033,11 @@ function TicketTimelinePanel({ ticket }) {
1031
1033
  const customerName = (isViewerTheCustomer ? viewerName : null) || ticketCustomerName || viewerName || _optionalChain([identity, 'access', _41 => _41.user, 'optionalAccess', _42 => _42.email]) || "You";
1032
1034
  const customerAvatar = isViewerTheCustomer ? _nullishCoalesce(_optionalChain([identity, 'access', _43 => _43.user, 'optionalAccess', _44 => _44.avatarUrl]), () => ( void 0)) : void 0;
1033
1035
  if (isLoading) {
1034
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${TICKET_FEED_FRAME} ${TICKET_FEED_HEIGHT}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading messages", className: TICKET_FEED_INNER, children: Array.from({ length: TICKET_FEED_SKELETON_ROWS }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNWZSYG4Scjs.ChatMessageRowSkeleton, {}, i)) }) });
1036
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `${TICKET_FEED_FRAME} ${TICKET_FEED_HEIGHT}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading messages", className: TICKET_FEED_INNER, children: Array.from({ length: TICKET_FEED_SKELETON_ROWS }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYWQ3VXPLcjs.ChatMessageRowSkeleton, {}, i)) }) });
1035
1037
  }
1036
1038
  if (bodyTurns.length === 0 && engagements.length === 0) {
1037
1039
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1038
- _chunkZ5KX56TKcjs.EmptyState,
1040
+ _chunkHUPDPANNcjs.EmptyState,
1039
1041
  {
1040
1042
  type: "generic",
1041
1043
  title: "No conversation yet",
@@ -1050,7 +1052,7 @@ function TicketTimelinePanel({ ticket }) {
1050
1052
  const isResolution = turn.startsWith("[Resolution]");
1051
1053
  const text = isResolution ? turn.replace(/^\[Resolution\]\s*/, "") : turn;
1052
1054
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1053
- _chunkNWZSYG4Scjs.ChatMessageRow,
1055
+ _chunkYWQ3VXPLcjs.ChatMessageRow,
1054
1056
  {
1055
1057
  displayName: customerName,
1056
1058
  avatarUrl: customerAvatar,
@@ -1079,13 +1081,13 @@ function TicketTimelinePanel({ ticket }) {
1079
1081
  }
1080
1082
  const engAttachments = mapEngagementAttachments(eng.attachments);
1081
1083
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1082
- _chunkNWZSYG4Scjs.ChatMessageRow,
1084
+ _chunkYWQ3VXPLcjs.ChatMessageRow,
1083
1085
  {
1084
1086
  displayName: author,
1085
1087
  avatarUrl: avatarSrc,
1086
- timeLabel: eng.createdAt ? _chunkEHJE3UWZcjs.formatRelativeTime.call(void 0, eng.createdAt) : null,
1088
+ timeLabel: eng.createdAt ? _chunkLBGAHB6Xcjs.formatRelativeTime.call(void 0, eng.createdAt) : null,
1087
1089
  body: stripAttachmentsPreamble(_nullishCoalesce(eng.body, () => ( ""))),
1088
- footer: engAttachments.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXN6LXMH5cjs.TicketAttachmentsList, { attachments: engAttachments, size: "compact" }) }) : null
1090
+ footer: engAttachments.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUPAE4IV5cjs.TicketAttachmentsList, { attachments: engAttachments, size: "compact" }) }) : null
1089
1091
  },
1090
1092
  eng.id
1091
1093
  );
@@ -1170,7 +1172,7 @@ function AssignedAgentRow({ assignedOwner }) {
1170
1172
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h5", children: "Assigned to" }),
1171
1173
  displayLabel ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-1.5 font-medium text-ods-text-primary", children: [
1172
1174
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1173
- _chunkHY6BCZH7cjs.SquareAvatar,
1175
+ _chunkBNUZKBNVcjs.SquareAvatar,
1174
1176
  {
1175
1177
  size: "sm",
1176
1178
  variant: "round",
@@ -1202,7 +1204,7 @@ function TicketRow({
1202
1204
  const rowRef = _react.useRef.call(void 0, null);
1203
1205
  const handleClick = _react.useCallback.call(void 0, () => {
1204
1206
  onToggle(ticket.id);
1205
- _chunkXXJL5GY3cjs.scrollElementIntoView.call(void 0, rowRef.current, {
1207
+ _chunkOJZBZH56cjs.scrollElementIntoView.call(void 0, rowRef.current, {
1206
1208
  adjustTargetY: (raw) => {
1207
1209
  if (!rowRef.current) return raw;
1208
1210
  const expandedDrawer = document.querySelector('div[id^="ticket-drawer-"]');
@@ -1226,7 +1228,7 @@ function TicketRow({
1226
1228
  // so the badge accurately reflects "Closed" with a checkmark.
1227
1229
  statusLabel: _nullishCoalesce(ticket.pipeline_stage_label, () => ( void 0)),
1228
1230
  category: _nullishCoalesce(ticket.customer_company, () => ( void 0)),
1229
- timeAgo: ticket.hubspot_updated_at ? _chunkEHJE3UWZcjs.formatRelativeTime.call(void 0, ticket.hubspot_updated_at) : void 0,
1231
+ timeAgo: ticket.hubspot_updated_at ? _chunkLBGAHB6Xcjs.formatRelativeTime.call(void 0, ticket.hubspot_updated_at) : void 0,
1230
1232
  // Linked-work chip: surfaced whenever the ticket has a linked
1231
1233
  // ClickUp task. Uses the linked task's own status so the chip text
1232
1234
  // reads "Working" / "Waiting on version release" / etc. — useful
@@ -1236,7 +1238,7 @@ function TicketRow({
1236
1238
  };
1237
1239
  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: [
1238
1240
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1239
- _chunkNWZSYG4Scjs.ChatTicketItem,
1241
+ _chunkYWQ3VXPLcjs.ChatTicketItem,
1240
1242
  {
1241
1243
  ticket: tileData,
1242
1244
  onClick: optimistic ? void 0 : handleClick,
@@ -1271,18 +1273,18 @@ function TicketRow({
1271
1273
  var TICKET_CENTER_CLASS = "flex flex-col gap-6";
1272
1274
  var TICKET_LIST_BLOCK_CLASS = "flex flex-col gap-2";
1273
1275
  var TICKET_ROW_FRAME_CLASS = "border-b border-ods-border last:border-b-0";
1274
- function TicketCenter({ toast: toast2 = _chunkE64HPPRHcjs.toast } = {}) {
1276
+ function TicketCenter({ toast: toast2 = _chunk5PK22JP7cjs.toast } = {}) {
1275
1277
  if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketCenterPending, { region: false });
1276
1278
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketCenterGate, { toast: toast2 });
1277
1279
  }
1278
1280
  function TicketCenterGate({ toast: toast2 }) {
1279
- const identity = _chunkKM2TVQCHcjs.useChatIdentity.call(void 0, );
1281
+ const identity = _chunkOWQVDWTKcjs.useChatIdentity.call(void 0, );
1280
1282
  if (identity.isLoading) {
1281
1283
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketCenterPending, {});
1282
1284
  }
1283
1285
  if (identity.authTier === "anon" || !_optionalChain([identity, 'access', _63 => _63.user, 'optionalAccess', _64 => _64.email])) {
1284
1286
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1285
- _chunkZ5KX56TKcjs.EmptyState,
1287
+ _chunkHUPDPANNcjs.EmptyState,
1286
1288
  {
1287
1289
  type: "generic",
1288
1290
  title: "Sign in to manage tickets",
@@ -1331,7 +1333,7 @@ function TicketCenterAuthed({
1331
1333
  const toggleRow = _react.useCallback.call(void 0, (id) => {
1332
1334
  setExpandedTicketId((prev) => prev === id ? null : id);
1333
1335
  }, []);
1334
- const syncInPage = _chunk2MF547RGcjs.usePageDataSync.call(void 0, sync, isLoading);
1336
+ const syncInPage = _chunk2JO5HNEFcjs.usePageDataSync.call(void 0, sync, isLoading);
1335
1337
  const merged = [...optimisticTickets, ...tickets];
1336
1338
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1337
1339
  TicketCenterView,
@@ -1347,7 +1349,7 @@ function TicketCenterAuthed({
1347
1349
  renderRow: (ticket) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1348
1350
  TicketRow,
1349
1351
  {
1350
- id: _chunkNWZSYG4Scjs.devSectionAnchorId.call(void 0, "ticket", ticket.external_id),
1352
+ id: _chunkYWQ3VXPLcjs.devSectionAnchorId.call(void 0, "ticket", ticket.external_id),
1351
1353
  ticket,
1352
1354
  expanded: expandedTicketId === ticket.id,
1353
1355
  onToggle: toggleRow,
@@ -1366,7 +1368,7 @@ function TicketCenterAuthed({
1366
1368
  function TicketCenterPending({
1367
1369
  region = true
1368
1370
  } = {}) {
1369
- const syncInPage = _chunk2MF547RGcjs.usePageDataSync.call(void 0, null, true);
1371
+ const syncInPage = _chunk2JO5HNEFcjs.usePageDataSync.call(void 0, null, true);
1370
1372
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading tickets", announce: region, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.LoadingScope, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1371
1373
  TicketCenterView,
1372
1374
  {
@@ -1408,8 +1410,8 @@ function TicketList({
1408
1410
  }) {
1409
1411
  if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, ) || loading) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketListSkeleton, {});
1410
1412
  if (tickets.length === 0) {
1411
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMYHS4W2Hcjs.Card, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1412
- _chunkZ5KX56TKcjs.EmptyState,
1413
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.Card, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1414
+ _chunkHUPDPANNcjs.EmptyState,
1413
1415
  {
1414
1416
  type: "generic",
1415
1417
  title: "No tickets yet",
@@ -1418,7 +1420,7 @@ function TicketList({
1418
1420
  }
1419
1421
  ) });
1420
1422
  }
1421
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMYHS4W2Hcjs.Card, { className: "overflow-hidden", children: tickets.map(renderRow) });
1423
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.Card, { className: "overflow-hidden", children: tickets.map(renderRow) });
1422
1424
  }
1423
1425
  function TicketListHeader({
1424
1426
  sync,
@@ -1429,7 +1431,7 @@ function TicketListHeader({
1429
1431
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-3", children: [
1430
1432
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h5", children: "Your Current Tickets" }),
1431
1433
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 text-ods-text-secondary text-h6", children: [
1432
- sync !== void 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXN6LXMH5cjs.DataSyncLine, { sync, loading: syncLoading, inline: true }),
1434
+ sync !== void 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUPAE4IV5cjs.DataSyncLine, { sync, loading: syncLoading, inline: true }),
1433
1435
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { inert: !onRefresh || void 0, "aria-hidden": !onRefresh || void 0, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1434
1436
  _chunkTF5D5MNOcjs.Button,
1435
1437
  {
@@ -1446,11 +1448,11 @@ function TicketListHeader({
1446
1448
  ] });
1447
1449
  }
1448
1450
  function TicketListSkeleton() {
1449
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMYHS4W2Hcjs.Card, { className: "overflow-hidden", children: Array.from({ length: TICKETS_PAGE_SIZE }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1451
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOH5LAH3Xcjs.Card, { className: "overflow-hidden", children: Array.from({ length: TICKETS_PAGE_SIZE }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1450
1452
  "div",
1451
1453
  {
1452
1454
  className: TICKET_ROW_FRAME_CLASS,
1453
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNWZSYG4Scjs.ChatTicketItemSkeleton, {})
1455
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYWQ3VXPLcjs.ChatTicketItemSkeleton, {})
1454
1456
  },
1455
1457
  i
1456
1458
  )) });
@@ -1480,7 +1482,7 @@ function HelpCenterCard({
1480
1482
  const optimistic = isOptimistic(ticket);
1481
1483
  const rawStatus = (_nullishCoalesce(ticket.status, () => ( "OPEN"))).toUpperCase();
1482
1484
  const priority = (_nullishCoalesce(ticket.priority, () => ( ""))).toUpperCase();
1483
- const relativeUpdated = ticket.hubspot_updated_at ? _chunkEHJE3UWZcjs.formatRelativeTime.call(void 0, ticket.hubspot_updated_at) : "recently";
1485
+ const relativeUpdated = ticket.hubspot_updated_at ? _chunkLBGAHB6Xcjs.formatRelativeTime.call(void 0, ticket.hubspot_updated_at) : "recently";
1484
1486
  const title = (ticket.subject || "").trim() || "(untitled)";
1485
1487
  const subtitle = `UPDATED ${relativeUpdated}, #${ticket.external_id || "\u2014"}${ticket.pipeline_stage_label ? `, ${ticket.pipeline_stage_label}` : ""}`;
1486
1488
  const description = _nullishCoalesce(_nullishCoalesce(ticket.preview, () => ( ticket.body)), () => ( ""));
@@ -1493,17 +1495,17 @@ function HelpCenterCard({
1493
1495
  _react.useEffect.call(void 0, () => {
1494
1496
  if (!isExpanded) return void 0;
1495
1497
  const raf = requestAnimationFrame(() => {
1496
- _chunkXXJL5GY3cjs.scrollElementIntoView.call(void 0, rowRef.current, {
1497
- headerOffset: _chunkXXJL5GY3cjs.STICKY_HEADER_OFFSET_PX
1498
+ _chunkOJZBZH56cjs.scrollElementIntoView.call(void 0, rowRef.current, {
1499
+ headerOffset: _chunkOJZBZH56cjs.STICKY_HEADER_OFFSET_PX
1498
1500
  });
1499
1501
  });
1500
1502
  return () => cancelAnimationFrame(raf);
1501
1503
  }, [isExpanded]);
1502
- const live = _chunkWAQPW4CBcjs.useOptionalTicketLive.call(void 0, );
1504
+ const live = _chunkYNECNYQFcjs.useOptionalTicketLive.call(void 0, );
1503
1505
  const unreadCount = !optimistic && ticket.external_id && _optionalChain([live, 'optionalAccess', _65 => _65.unreadByTicket, 'access', _66 => _66[ticket.external_id]]) || 0;
1504
1506
  const rightBadges = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1505
1507
  unreadCount > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1506
- _chunkMYHS4W2Hcjs.StatusBadge,
1508
+ _chunkOH5LAH3Xcjs.StatusBadge,
1507
1509
  {
1508
1510
  text: `${unreadCount} NEW`,
1509
1511
  colorScheme: "warning",
@@ -1512,16 +1514,16 @@ function HelpCenterCard({
1512
1514
  }
1513
1515
  ),
1514
1516
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1515
- _chunkMYHS4W2Hcjs.StatusBadge,
1517
+ _chunkOH5LAH3Xcjs.StatusBadge,
1516
1518
  {
1517
1519
  text: rawStatus,
1518
- colorScheme: _chunkMYHS4W2Hcjs.getStatusColorScheme.call(void 0, rawStatus),
1520
+ colorScheme: _chunkYG72MEHYcjs.getStatusColorScheme.call(void 0, rawStatus),
1519
1521
  variant: "card",
1520
1522
  className: "border border-ods-border"
1521
1523
  }
1522
1524
  ),
1523
1525
  priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1524
- _chunkMYHS4W2Hcjs.StatusBadge,
1526
+ _chunkOH5LAH3Xcjs.StatusBadge,
1525
1527
  {
1526
1528
  text: priority,
1527
1529
  colorScheme: mapPriorityScheme(priority),
@@ -1535,7 +1537,7 @@ function HelpCenterCard({
1535
1537
  {
1536
1538
  ref: rowRef,
1537
1539
  id,
1538
- style: { scrollMarginTop: _chunkXXJL5GY3cjs.STICKY_HEADER_OFFSET_PX },
1540
+ style: { scrollMarginTop: _chunkOJZBZH56cjs.STICKY_HEADER_OFFSET_PX },
1539
1541
  className: `border-b border-ods-border last:border-b-0 ${optimistic ? "opacity-60" : ""}`,
1540
1542
  "aria-busy": optimistic || void 0,
1541
1543
  children: [
@@ -1549,7 +1551,7 @@ function HelpCenterCard({
1549
1551
  "aria-controls": isExpanded ? `help-center-drawer-${ticket.id}` : void 0,
1550
1552
  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]",
1551
1553
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1552
- _chunk2MF547RGcjs.DevCardRowContent,
1554
+ _chunk2JO5HNEFcjs.DevCardRowContent,
1553
1555
  {
1554
1556
  title,
1555
1557
  subtitle,
@@ -1660,7 +1662,7 @@ function HelpCenterCreateForm({
1660
1662
  subjectError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { id: "help-center-subject-error", className: "mt-1 text-ods-error text-h6", children: subjectError })
1661
1663
  ] });
1662
1664
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1663
- _chunkIXZNBDXTcjs.ContactForm,
1665
+ _chunkOMHQZXCDcjs.ContactForm,
1664
1666
  {
1665
1667
  rescue: null,
1666
1668
  title: "Open a new ticket",
@@ -1698,31 +1700,31 @@ function HelpCenterCreateForm({
1698
1700
 
1699
1701
  // src/components/tickets/help-center-list.tsx
1700
1702
 
1701
- function HelpCenterList({ toast: toast2 = _chunkE64HPPRHcjs.toast, backButton, title, shell } = {}) {
1702
- const identity = _chunkKM2TVQCHcjs.useChatIdentity.call(void 0, );
1703
+ function HelpCenterList({ toast: toast2 = _chunk5PK22JP7cjs.toast, backButton, title, shell } = {}) {
1704
+ const identity = _chunkOWQVDWTKcjs.useChatIdentity.call(void 0, );
1703
1705
  const searchParams = _chunk7DNL734Scjs.useSearchParams.call(void 0, );
1704
1706
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
1705
1707
  const pathname = _chunk7DNL734Scjs.usePathname.call(void 0, );
1706
- const search = searchParams.get(_chunkNWZSYG4Scjs.DEV_SECTION_PARAM_KEYS.search) || "";
1708
+ const search = searchParams.get(_chunkYWQ3VXPLcjs.DEV_SECTION_PARAM_KEYS.search) || "";
1707
1709
  const status = searchParams.get("status") || "all";
1708
- const ticketParam = searchParams.get(_chunkNWZSYG4Scjs.TICKET_OPEN_PARAM) || "";
1710
+ const ticketParam = searchParams.get(_chunkYWQ3VXPLcjs.TICKET_OPEN_PARAM) || "";
1709
1711
  const page = _chunkBLH2SFOOcjs.positiveInt.call(void 0, searchParams.get("page"), 1);
1710
1712
  if (identity.isLoading) {
1711
1713
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1712
- _chunk2MF547RGcjs.DevSectionPage,
1714
+ _chunk2JO5HNEFcjs.DevSectionPage,
1713
1715
  {
1714
1716
  sectionKey: "tickets",
1715
1717
  backButton,
1716
1718
  title,
1717
1719
  shell,
1718
1720
  preControls: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HelpCenterCreateFormSkeleton, {}),
1719
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2MF547RGcjs.DevCardRowSkeletonList, { rows: TICKETS_PAGE_SIZE })
1721
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JO5HNEFcjs.DevCardRowSkeletonList, { rows: TICKETS_PAGE_SIZE })
1720
1722
  }
1721
1723
  );
1722
1724
  }
1723
1725
  if (identity.authTier === "anon" || !_optionalChain([identity, 'access', _67 => _67.user, 'optionalAccess', _68 => _68.email])) {
1724
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2MF547RGcjs.DevSectionPage, { sectionKey: "tickets", backButton, title, shell, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1725
- _chunkZ5KX56TKcjs.EmptyState,
1726
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JO5HNEFcjs.DevSectionPage, { sectionKey: "tickets", backButton, title, shell, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1727
+ _chunkHUPDPANNcjs.EmptyState,
1726
1728
  {
1727
1729
  type: "generic",
1728
1730
  title: "Sign in to manage tickets",
@@ -1773,8 +1775,8 @@ function HelpCenterListAuthed({
1773
1775
  const setOpenTicket = _react.useCallback.call(void 0,
1774
1776
  (externalId) => {
1775
1777
  const params = new URLSearchParams(searchParams.toString());
1776
- if (externalId) params.set(_chunkNWZSYG4Scjs.TICKET_OPEN_PARAM, externalId);
1777
- else params.delete(_chunkNWZSYG4Scjs.TICKET_OPEN_PARAM);
1778
+ if (externalId) params.set(_chunkYWQ3VXPLcjs.TICKET_OPEN_PARAM, externalId);
1779
+ else params.delete(_chunkYWQ3VXPLcjs.TICKET_OPEN_PARAM);
1778
1780
  const qs = params.toString();
1779
1781
  router.replace(qs ? `${pathname}?${qs}` : pathname, { scroll: false });
1780
1782
  },
@@ -1831,7 +1833,7 @@ function HelpCenterListAuthed({
1831
1833
  [tickets, ticketParam, setOpenTicket]
1832
1834
  );
1833
1835
  const merged = [...optimisticTickets, ...tickets];
1834
- _chunkE64HPPRHcjs.useScrollToHash.call(void 0, tickets, { headerOffset: _chunkXXJL5GY3cjs.STICKY_HEADER_OFFSET_PX });
1836
+ _chunk5PK22JP7cjs.useScrollToHash.call(void 0, tickets, { headerOffset: _chunkOJZBZH56cjs.STICKY_HEADER_OFFSET_PX });
1835
1837
  const hasActiveFilters = search !== "" || status !== "" && status !== "all";
1836
1838
  const hasResults = merged.length > 0;
1837
1839
  const form = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -1851,15 +1853,15 @@ function HelpCenterListAuthed({
1851
1853
  ] }),
1852
1854
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { type: "button", variant: "accent", onClick: () => refetch(), children: "Retry" })
1853
1855
  ] }),
1854
- !error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2MF547RGcjs.DevCardRowSkeletonList, { rows: pageSize }) : !hasResults && isFetching ? (
1856
+ !error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JO5HNEFcjs.DevCardRowSkeletonList, { rows: pageSize }) : !hasResults && isFetching ? (
1855
1857
  // Bridge state — background refetch in flight and the
1856
1858
  // optimistic placeholder was just removed by the mutation
1857
1859
  // callback. Without this branch "No tickets yet" would flash
1858
1860
  // for ~50ms between `removeOptimistic` and the server
1859
1861
  // response landing.
1860
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2MF547RGcjs.DevCardRowSkeletonList, { rows: 1 })
1862
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JO5HNEFcjs.DevCardRowSkeletonList, { rows: 1 })
1861
1863
  ) : !hasResults ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1862
- _chunk2MF547RGcjs.ListEmptyState,
1864
+ _chunk2JO5HNEFcjs.ListEmptyState,
1863
1865
  {
1864
1866
  isFiltered: hasActiveFilters,
1865
1867
  filtered: {
@@ -1890,7 +1892,7 @@ function HelpCenterListAuthed({
1890
1892
  /* @__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,
1891
1893
  HelpCenterCard,
1892
1894
  {
1893
- id: _chunkNWZSYG4Scjs.devSectionAnchorId.call(void 0, "ticket", ticket.external_id),
1895
+ id: _chunkYWQ3VXPLcjs.devSectionAnchorId.call(void 0, "ticket", ticket.external_id),
1894
1896
  ticket,
1895
1897
  expanded: expandedTicketId === ticket.id,
1896
1898
  onToggle: toggleRow,
@@ -1906,9 +1908,9 @@ function HelpCenterListAuthed({
1906
1908
  ticket.id
1907
1909
  )) })
1908
1910
  ) }),
1909
- !error && totalPages > 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ5KX56TKcjs.UnifiedPagination, { currentPage: page, totalPages })
1911
+ !error && totalPages > 1 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHUPDPANNcjs.UnifiedPagination, { currentPage: page, totalPages })
1910
1912
  ] });
1911
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2MF547RGcjs.DevSectionPage, { sectionKey: "tickets", backButton, title, shell, preControls: form, children: body });
1913
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2JO5HNEFcjs.DevSectionPage, { sectionKey: "tickets", backButton, title, shell, preControls: form, children: body });
1912
1914
  }
1913
1915
 
1914
1916