@flamingo-stack/openframe-frontend-core 0.0.738 → 0.0.740

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 (97) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-7GETNFZ5.cjs → chunk-2Y5Y4FLM.cjs} +38 -38
  3. package/dist/{chunk-2UZS3ZH7.cjs → chunk-3ZIQOYNX.cjs} +5 -5
  4. package/dist/{chunk-KQ4IKALJ.cjs → chunk-4RLGLB45.cjs} +35 -35
  5. package/dist/{chunk-5BKAUXLR.cjs → chunk-5SVOGLNK.cjs} +4 -4
  6. package/dist/{chunk-XGHZIYQN.cjs → chunk-7UIQPMBJ.cjs} +19 -19
  7. package/dist/{chunk-FTTLBMHU.cjs → chunk-7ZFCR7UY.cjs} +2 -2
  8. package/dist/{chunk-EG545WGV.cjs → chunk-B3XBJCOD.cjs} +9 -9
  9. package/dist/{chunk-XMNLPQ75.cjs → chunk-BDA5F6RM.cjs} +12 -12
  10. package/dist/{chunk-BRKTN6UR.cjs → chunk-BV5WZVOP.cjs} +199 -199
  11. package/dist/{chunk-4T6ETBL4.cjs → chunk-CWRVTQUO.cjs} +91 -83
  12. package/dist/{chunk-GQZOUVXC.cjs → chunk-D5KEWWLW.cjs} +34 -34
  13. package/dist/{chunk-7LTG6CJ3.cjs → chunk-DSVNFRY5.cjs} +35 -35
  14. package/dist/{chunk-2SBHPHLS.cjs → chunk-EKGL5K5K.cjs} +4 -4
  15. package/dist/{chunk-N2CISBJJ.cjs → chunk-GABDE3FM.cjs} +10 -10
  16. package/dist/{chunk-MYBTNOS6.cjs → chunk-GSWQZX23.cjs} +2 -2
  17. package/dist/{chunk-JZNESLJX.cjs → chunk-HF7Z2E4W.cjs} +2 -2
  18. package/dist/chunk-HOTM4UM6.cjs +84 -0
  19. package/dist/{chunk-HNYLTEIS.cjs → chunk-HYBMADYO.cjs} +13 -13
  20. package/dist/{chunk-EAY6ZUES.cjs → chunk-I5MSCD57.cjs} +2 -2
  21. package/dist/{chunk-3BBOAMWJ.cjs → chunk-KLI4OSRA.cjs} +2 -2
  22. package/dist/{chunk-R36NZTUJ.cjs → chunk-LLAC2UZ3.cjs} +24 -24
  23. package/dist/{chunk-FG7HTGT3.cjs → chunk-O67V3HJR.cjs} +14 -14
  24. package/dist/{chunk-UMO55S55.cjs → chunk-PQ2M7P2U.cjs} +5 -5
  25. package/dist/{chunk-MLKL2YVE.cjs → chunk-SFY4UYPY.cjs} +44 -44
  26. package/dist/{chunk-66R4NGGU.cjs → chunk-SWR22DOZ.cjs} +176 -88
  27. package/dist/{chunk-MTNNYSP3.cjs → chunk-UW3YXDC4.cjs} +20 -20
  28. package/dist/{chunk-U5BRSRXA.cjs → chunk-VC4IV3AY.cjs} +644 -621
  29. package/dist/{chunk-4YQNJJWM.cjs → chunk-VU4CKUJW.cjs} +90 -90
  30. package/dist/{chunk-GAF4L3JW.cjs → chunk-WBANGORJ.cjs} +3 -3
  31. package/dist/{chunk-LY5VOKV7.cjs → chunk-YRE3O65E.cjs} +12 -12
  32. package/dist/{chunk-7F3V45AH.cjs → chunk-YXKB5WRE.cjs} +66 -75
  33. package/dist/{chunk-N5NDPULP.cjs → chunk-ZLTCQKTD.cjs} +6 -6
  34. package/dist/{cloud-tenants-FTQGWXHS.cjs → cloud-tenants-PVXDI5MU.cjs} +15 -15
  35. package/dist/components/case-studies/index.cjs +27 -27
  36. package/dist/components/chat/index.cjs +11 -11
  37. package/dist/components/contact/index.cjs +16 -16
  38. package/dist/components/docs/index.cjs +19 -19
  39. package/dist/components/embeds/index.cjs +16 -16
  40. package/dist/components/faq/index.cjs +17 -17
  41. package/dist/components/features/index.cjs +15 -15
  42. package/dist/components/features/walkthrough-video.d.ts +3 -0
  43. package/dist/components/features/walkthrough-video.d.ts.map +1 -1
  44. package/dist/components/features/walkthrough-video.js +36 -13
  45. package/dist/components/help-center-pages/index.cjs +118 -118
  46. package/dist/components/index.cjs +86 -80
  47. package/dist/components/meeting-scheduler/index.cjs +57 -57
  48. package/dist/components/navigation/index.cjs +18 -18
  49. package/dist/components/onboarding-guides/index.cjs +18 -18
  50. package/dist/components/product-demo/index.cjs +8 -8
  51. package/dist/components/related-content/index.cjs +9 -9
  52. package/dist/components/shared/legal-document/index.d.ts +2 -1
  53. package/dist/components/shared/legal-document/index.d.ts.map +1 -1
  54. package/dist/components/shared/legal-document/index.js +10 -2
  55. package/dist/components/shared/legal-document/legal-document-page.d.ts +35 -23
  56. package/dist/components/shared/legal-document/legal-document-page.d.ts.map +1 -1
  57. package/dist/components/shared/legal-document/legal-document-page.js +27 -10
  58. package/dist/components/shared/legal-document/use-legal-docs.d.ts +7 -3
  59. package/dist/components/shared/legal-document/use-legal-docs.d.ts.map +1 -1
  60. package/dist/components/shared/legal-document/use-legal-docs.js +7 -0
  61. package/dist/components/shared/legal-document/use-legal-documents.d.ts +31 -0
  62. package/dist/components/shared/legal-document/use-legal-documents.d.ts.map +1 -0
  63. package/dist/components/shared/legal-document/use-legal-documents.js +67 -0
  64. package/dist/components/tickets/index.cjs +21 -21
  65. package/dist/components/ui/index.cjs +15 -15
  66. package/dist/{devices-MPI5HUQS.cjs → devices-TWEA7XOR.cjs} +16 -16
  67. package/dist/embed-shims/index.cjs +2 -2
  68. package/dist/embed-shims/next-image.cjs +2 -2
  69. package/dist/embed-shims/next-image.d.ts.map +1 -1
  70. package/dist/embed-shims/next-image.js +6 -2
  71. package/dist/{embeddable-chat-7WLUDBGK.cjs → embeddable-chat-6JKKFQEB.cjs} +82 -82
  72. package/dist/hooks/index.cjs +3 -3
  73. package/dist/index.cjs +26 -21
  74. package/dist/{knowledge-BS663XXL.cjs → knowledge-4GQDBNQB.cjs} +16 -16
  75. package/dist/{logs-KS2A2VN5.cjs → logs-EVU6GJHZ.cjs} +23 -23
  76. package/dist/{policies-H3OK6H4Q.cjs → policies-OZUEA5YS.cjs} +19 -19
  77. package/dist/{remote-session-EHKXU4HI.cjs → remote-session-DNFZ5OLY.cjs} +8 -8
  78. package/dist/{software-update-HMMMWIL3.cjs → software-update-BLIVYOY2.cjs} +19 -19
  79. package/dist/{tickets-board-3YJKOOZE.cjs → tickets-board-CKZRB6YV.cjs} +9 -9
  80. package/dist/utils/index.cjs +8 -0
  81. package/dist/utils/index.d.ts +1 -0
  82. package/dist/utils/index.d.ts.map +1 -1
  83. package/dist/utils/index.js +1 -0
  84. package/dist/utils/legal-documents.d.ts +18 -0
  85. package/dist/utils/legal-documents.d.ts.map +1 -0
  86. package/dist/utils/legal-documents.js +8 -0
  87. package/package.json +1 -1
  88. package/src/components/features/walkthrough-video.tsx +59 -18
  89. package/src/components/shared/legal-document/index.ts +8 -0
  90. package/src/components/shared/legal-document/legal-document-page.tsx +83 -44
  91. package/src/components/shared/legal-document/use-legal-docs.ts +18 -3
  92. package/src/components/shared/legal-document/use-legal-documents.ts +113 -0
  93. package/src/components/ui/dropdown-button.tsx +1 -1
  94. package/src/embed-shims/next-image.tsx +15 -4
  95. package/src/utils/index.ts +1 -0
  96. package/src/utils/legal-documents.ts +21 -0
  97. package/dist/chunk-UR4K2NSL.cjs +0 -69
@@ -2,29 +2,29 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkEG545WGVcjs = require('./chunk-EG545WGV.cjs');
5
+ var _chunkB3XBJCODcjs = require('./chunk-B3XBJCOD.cjs');
6
6
 
7
7
 
8
8
 
9
- var _chunkXMNLPQ75cjs = require('./chunk-XMNLPQ75.cjs');
9
+ var _chunkBDA5F6RMcjs = require('./chunk-BDA5F6RM.cjs');
10
10
 
11
11
 
12
12
 
13
13
 
14
14
 
15
15
 
16
- var _chunkU5BRSRXAcjs = require('./chunk-U5BRSRXA.cjs');
16
+ var _chunkVC4IV3AYcjs = require('./chunk-VC4IV3AY.cjs');
17
17
 
18
18
 
19
- var _chunk7LTG6CJ3cjs = require('./chunk-7LTG6CJ3.cjs');
19
+ var _chunkDSVNFRY5cjs = require('./chunk-DSVNFRY5.cjs');
20
20
 
21
21
 
22
- var _chunk4T6ETBL4cjs = require('./chunk-4T6ETBL4.cjs');
22
+ var _chunkCWRVTQUOcjs = require('./chunk-CWRVTQUO.cjs');
23
23
 
24
24
 
25
25
 
26
26
 
27
- var _chunkBRKTN6URcjs = require('./chunk-BRKTN6UR.cjs');
27
+ var _chunkBV5WZVOPcjs = require('./chunk-BV5WZVOP.cjs');
28
28
 
29
29
 
30
30
  var _chunk3RFQPQ7Zcjs = require('./chunk-3RFQPQ7Z.cjs');
@@ -34,16 +34,16 @@ var _chunk3RFQPQ7Zcjs = require('./chunk-3RFQPQ7Z.cjs');
34
34
  var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
35
35
 
36
36
 
37
- var _chunkLY5VOKV7cjs = require('./chunk-LY5VOKV7.cjs');
37
+ var _chunkYRE3O65Ecjs = require('./chunk-YRE3O65E.cjs');
38
38
 
39
39
 
40
40
 
41
41
 
42
42
 
43
- var _chunk7F3V45AHcjs = require('./chunk-7F3V45AH.cjs');
43
+ var _chunkYXKB5WREcjs = require('./chunk-YXKB5WRE.cjs');
44
44
 
45
45
 
46
- var _chunkEAY6ZUEScjs = require('./chunk-EAY6ZUES.cjs');
46
+ var _chunkI5MSCD57cjs = require('./chunk-I5MSCD57.cjs');
47
47
 
48
48
 
49
49
  var _chunkUJ7AXHRZcjs = require('./chunk-UJ7AXHRZ.cjs');
@@ -68,7 +68,7 @@ function OnboardingGuidesCatalogSkeleton() {
68
68
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-6 w-40 rounded bg-ods-border/70" }),
69
69
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "h-5 w-8 rounded-full bg-ods-text-secondary/20" })
70
70
  ] }),
71
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: "flex flex-col gap-4", children: Array.from({ length: cardCount }).map((_, cardIdx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7F3V45AHcjs.OnboardingGuideCardSkeleton, { size: "catalog" }) }, cardIdx)) })
71
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ul", { className: "flex flex-col gap-4", children: Array.from({ length: cardCount }).map((_, cardIdx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKB5WREcjs.OnboardingGuideCardSkeleton, { size: "catalog" }) }, cardIdx)) })
72
72
  ] }, sectionIdx)) })
73
73
  ] });
74
74
  }
@@ -92,10 +92,10 @@ function OnboardingGuidesCatalogView({
92
92
  const sectionValue = selfFetch ? _nullishCoalesce(searchParams.get("section"), () => ( "")) : initialSection;
93
93
  const activeSection = sectionValue || "all";
94
94
  const guidesQs = sectionValue ? `?section=${encodeURIComponent(sectionValue)}` : "";
95
- const guidesRes = _chunkLY5VOKV7cjs.useSelfFetch.call(void 0,
95
+ const guidesRes = _chunkYRE3O65Ecjs.useSelfFetch.call(void 0,
96
96
  selfFetch && guidesEndpoint ? `${guidesEndpoint}${guidesQs}` : null
97
97
  );
98
- const sectionsRes = _chunkLY5VOKV7cjs.useSelfFetch.call(void 0, selfFetch && sectionsEndpoint ? sectionsEndpoint : null);
98
+ const sectionsRes = _chunkYRE3O65Ecjs.useSelfFetch.call(void 0, selfFetch && sectionsEndpoint ? sectionsEndpoint : null);
99
99
  const guides = _react.useMemo.call(void 0, () => _nullishCoalesce(_nullishCoalesce(initialGuides, () => ( _optionalChain([guidesRes, 'access', _2 => _2.data, 'optionalAccess', _3 => _3.data]))), () => ( [])), [initialGuides, _optionalChain([guidesRes, 'access', _4 => _4.data, 'optionalAccess', _5 => _5.data])]);
100
100
  const sections = _react.useMemo.call(void 0,
101
101
  () => _nullishCoalesce(initialSections, () => ( (Array.isArray(sectionsRes.data) ? sectionsRes.data : []))),
@@ -138,25 +138,25 @@ function OnboardingGuidesCatalogView({
138
138
  });
139
139
  };
140
140
  const source = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _6 => _6.source]), () => ( "openframe"));
141
- const docSearch = _chunkXMNLPQ75cjs.useDocSearch.call(void 0, {
141
+ const docSearch = _chunkBDA5F6RMcjs.useDocSearch.call(void 0, {
142
142
  source,
143
143
  baseRoute: basePath,
144
144
  onNavigate: (path) => router.push(path),
145
145
  tableIds: ["onboarding-guides"]
146
146
  });
147
147
  const defaultRenderCard = (guide) => {
148
- const cta = _chunk4T6ETBL4cjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _7 => _7.composeContentUrl]), {
148
+ const cta = _chunkCWRVTQUOcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _7 => _7.composeContentUrl]), {
149
149
  type: "onboarding_guide",
150
150
  slug: guide.slug,
151
151
  basePath,
152
152
  platforms: guide.onboarding_guide_platforms
153
153
  });
154
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7F3V45AHcjs.OnboardingGuideCard, { guide, href: cta.href, targetPlatform: cta.targetPlatform, size: "catalog" });
154
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKB5WREcjs.OnboardingGuideCard, { guide, href: cta.href, targetPlatform: cta.targetPlatform, size: "catalog" });
155
155
  };
156
156
  const renderCardFn = _nullishCoalesce(renderCard, () => ( defaultRenderCard));
157
157
  const preControls = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
158
158
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
159
- _chunkXMNLPQ75cjs.DocSearchBar,
159
+ _chunkBDA5F6RMcjs.DocSearchBar,
160
160
  {
161
161
  placeholder: "Search onboarding guides, releases, case studies\u2026",
162
162
  query: docSearch.query,
@@ -168,7 +168,7 @@ function OnboardingGuidesCatalogView({
168
168
  }
169
169
  ),
170
170
  sections.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
171
- _chunkU5BRSRXAcjs.FilterPillRow,
171
+ _chunkVC4IV3AYcjs.FilterPillRow,
172
172
  {
173
173
  label: "Section",
174
174
  selectedValue: activeSection,
@@ -178,7 +178,7 @@ function OnboardingGuidesCatalogView({
178
178
  )
179
179
  ] });
180
180
  if (selfFetch && guidesRes.error) {
181
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU5BRSRXAcjs.LoadError, { message: "Failed to load onboarding guides.", onRetry: guidesRes.reload });
181
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.LoadError, { message: "Failed to load onboarding guides.", onRetry: guidesRes.reload });
182
182
  }
183
183
  if (selfFetch && guidesRes.data == null && isLoading) {
184
184
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, OnboardingGuidesCatalogSkeleton, {});
@@ -210,7 +210,7 @@ function OnboardingGuideDetailView({
210
210
  slug,
211
211
  guideEndpoint,
212
212
  related = [],
213
- MarkdownRenderer = _chunkU5BRSRXAcjs.RichMarkdownRenderer,
213
+ MarkdownRenderer = _chunkVC4IV3AYcjs.RichMarkdownRenderer,
214
214
  renderRelatedCard,
215
215
  backHref,
216
216
  backLabel = "Back to Getting Started",
@@ -220,51 +220,51 @@ function OnboardingGuideDetailView({
220
220
  }) {
221
221
  const resolvedBackHref = _nullishCoalesce(backHref, () => ( basePath));
222
222
  const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
223
- const captions = _chunkBRKTN6URcjs.useCaptions.call(void 0, );
223
+ const captions = _chunkBV5WZVOPcjs.useCaptions.call(void 0, );
224
224
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
225
- const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU5BRSRXAcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
225
+ const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
226
226
  const url = initialData ? null : slug && guideEndpoint ? guideEndpoint(slug) : null;
227
- const { data: guide, isLoading, error, reload } = _chunkLY5VOKV7cjs.useSelfFetch.call(void 0, url, { initialData });
227
+ const { data: guide, isLoading, error, reload } = _chunkYRE3O65Ecjs.useSelfFetch.call(void 0, url, { initialData });
228
228
  const { ref: videoWarmupRef } = _chunk3RFQPQ7Zcjs.useVideoWarmup.call(void 0, {
229
229
  videoUrl: _optionalChain([guide, 'optionalAccess', _8 => _8.main_video_url]),
230
230
  supabaseStorageOrigin: _optionalChain([runtime, 'optionalAccess', _9 => _9.endpoints, 'access', _10 => _10.supabaseStorageOrigin])
231
231
  });
232
232
  if (error || !guide && !isLoading) {
233
- return renderShell(/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU5BRSRXAcjs.LoadError, { message: "Guide not found.", onRetry: reload }));
233
+ return renderShell(/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.LoadError, { message: "Guide not found.", onRetry: reload }));
234
234
  }
235
235
  if (!guide) {
236
236
  return renderShell(
237
237
  // Match the loaded page's top offset (TitleBlock's
238
238
  // `pt-[var(--spacing-system-l)]`) so content doesn't jump on load.
239
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEG545WGVcjs.DetailPageSkeleton, { bare: true, showImageGallery: false }) })
239
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkB3XBJCODcjs.DetailPageSkeleton, { bare: true, showImageGallery: false }) })
240
240
  );
241
241
  }
242
242
  const { captionsUrl, highlightCaptionsUrl } = captions.forEntity("onboarding_guide", guide);
243
243
  const videoPoster = guide.main_video_thumbnail || guide.featured_image || guide.og_image_url || // `buildOgPlaceholderUrl` always returns a usable string (relative route at
244
244
  // worst), so it's the terminal fallback — no trailing `|| undefined` needed.
245
- _chunkEAY6ZUEScjs.buildOgPlaceholderUrl.call(void 0, _optionalChain([runtime, 'optionalAccess', _11 => _11.endpoints]), guide.title, { aspect: "wide" });
245
+ _chunkI5MSCD57cjs.buildOgPlaceholderUrl.call(void 0, _optionalChain([runtime, 'optionalAccess', _11 => _11.endpoints]), guide.title, { aspect: "wide" });
246
246
  const defaultRenderRelatedCard = (g) => {
247
- const cta = _chunk4T6ETBL4cjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _12 => _12.composeContentUrl]), {
247
+ const cta = _chunkCWRVTQUOcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _12 => _12.composeContentUrl]), {
248
248
  type: "onboarding_guide",
249
249
  slug: g.slug,
250
250
  basePath,
251
251
  platforms: g.onboarding_guide_platforms
252
252
  });
253
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7F3V45AHcjs.OnboardingGuideCard, { guide: g, href: cta.href, targetPlatform: cta.targetPlatform });
253
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXKB5WREcjs.OnboardingGuideCard, { guide: g, href: cta.href, targetPlatform: cta.targetPlatform });
254
254
  };
255
255
  const renderRelatedCardFn = _nullishCoalesce(renderRelatedCard, () => ( defaultRenderRelatedCard));
256
256
  return renderShell(
257
257
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
258
- _chunk7LTG6CJ3cjs.PageLayout,
258
+ _chunkDSVNFRY5cjs.PageLayout,
259
259
  {
260
260
  title: guide.title,
261
261
  titleSize: "h1",
262
262
  titleWrap: true,
263
263
  backButton: { label: backLabel, onClick: () => router.push(resolvedBackHref) },
264
264
  children: [
265
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU5BRSRXAcjs.EntityTagBadges, { tags: guide.onboarding_guide_tags }),
265
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVC4IV3AYcjs.EntityTagBadges, { tags: guide.onboarding_guide_tags }),
266
266
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
267
- _chunk7F3V45AHcjs.EntityAuthorCard,
267
+ _chunkYXKB5WREcjs.EntityAuthorCard,
268
268
  {
269
269
  author: guide.author,
270
270
  authorHref,
@@ -279,7 +279,7 @@ function OnboardingGuideDetailView({
279
279
  }
280
280
  ),
281
281
  (guide.main_video_url || guide.youtube_url) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: videoWarmupRef, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
282
- _chunkBRKTN6URcjs.EntityVideoSection,
282
+ _chunkBV5WZVOPcjs.EntityVideoSection,
283
283
  {
284
284
  mainVideoUrl: guide.main_video_url,
285
285
  youtubeUrl: guide.youtube_url || void 0,
@@ -296,17 +296,17 @@ function OnboardingGuideDetailView({
296
296
  ) }),
297
297
  guide.content && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownRenderer, { content: guide.content }) }),
298
298
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
299
- _chunkBRKTN6URcjs.VideoBitesStrip,
299
+ _chunkBV5WZVOPcjs.VideoBitesStrip,
300
300
  {
301
301
  bites: _nullishCoalesce(guide.video_bites, () => ( [])),
302
302
  filterPublished: true,
303
303
  showTitle: false,
304
- profile: _chunk7F3V45AHcjs.toStripProfile.call(void 0, guide.author),
304
+ profile: _chunkYXKB5WREcjs.toStripProfile.call(void 0, guide.author),
305
305
  href: `/onboarding-guides/${guide.slug}`
306
306
  }
307
307
  ),
308
308
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
309
- _chunkEG545WGVcjs.ArticleAuthorByline,
309
+ _chunkB3XBJCODcjs.ArticleAuthorByline,
310
310
  {
311
311
  author: _nullishCoalesce(_optionalChain([guide, 'access', _13 => _13.author, 'optionalAccess', _14 => _14.full_name]), () => ( null)),
312
312
  avatar: _optionalChain([guide, 'access', _15 => _15.author, 'optionalAccess', _16 => _16.avatar_url]),
@@ -10,7 +10,7 @@ var _chunkA6P6DHEZcjs = require('./chunk-A6P6DHEZ.cjs');
10
10
 
11
11
 
12
12
 
13
- var _chunkUMO55S55cjs = require('./chunk-UMO55S55.cjs');
13
+ var _chunkPQ2M7P2Ucjs = require('./chunk-PQ2M7P2U.cjs');
14
14
 
15
15
 
16
16
 
@@ -102,7 +102,7 @@ var _chunkSKI6NKOEcjs = require('./chunk-SKI6NKOE.cjs');
102
102
 
103
103
 
104
104
 
105
- var _chunkFTTLBMHUcjs = require('./chunk-FTTLBMHU.cjs');
105
+ var _chunk7ZFCR7UYcjs = require('./chunk-7ZFCR7UY.cjs');
106
106
 
107
107
 
108
108
  var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
@@ -112,7 +112,7 @@ var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
112
112
  var _chunkFICJS5OAcjs = require('./chunk-FICJS5OA.cjs');
113
113
 
114
114
 
115
- var _chunkUR4K2NSLcjs = require('./chunk-UR4K2NSL.cjs');
115
+ var _chunkHOTM4UM6cjs = require('./chunk-HOTM4UM6.cjs');
116
116
 
117
117
 
118
118
 
@@ -414,7 +414,7 @@ function TruncateText({
414
414
  const { ref, isTruncated } = _chunkFICJS5OAcjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
415
415
  const clampClass = isMultiLine ? LINE_CLAMP_CLASS[lines] : "truncate block";
416
416
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
417
- _chunkFTTLBMHUcjs.FloatingTooltip,
417
+ _chunk7ZFCR7UYcjs.FloatingTooltip,
418
418
  {
419
419
  content: _nullishCoalesce(tooltip, () => ( children)),
420
420
  side,
@@ -741,7 +741,7 @@ function AutocompleteInner(props, ref) {
741
741
  ),
742
742
  children: [
743
743
  multiple && visibleTags.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
744
- _chunkFTTLBMHUcjs.Tag,
744
+ _chunk7ZFCR7UYcjs.Tag,
745
745
  {
746
746
  variant: "outline",
747
747
  className: wrapTags ? "max-w-full" : void 0,
@@ -966,7 +966,7 @@ function AutocompleteInner(props, ref) {
966
966
  "aria-hidden": "true",
967
967
  className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
968
968
  children: selectedOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
969
- _chunkFTTLBMHUcjs.Tag,
969
+ _chunk7ZFCR7UYcjs.Tag,
970
970
  {
971
971
  variant: "outline",
972
972
  labelClassName: "max-w-[90px] truncate",
@@ -1450,7 +1450,7 @@ function EntityImage({ src, alt, fallbackText, sizeClassName, className }) {
1450
1450
  const [failedSrc, setFailedSrc] = _react2.default.useState(null);
1451
1451
  const imageFailed = resolvedSrc !== void 0 && failedSrc === resolvedSrc;
1452
1452
  const showFallback = imageFailed || !resolvedSrc;
1453
- const initials = _chunkFTTLBMHUcjs.personInitials.call(void 0, _nullishCoalesce(fallbackText, () => ( alt)));
1453
+ const initials = _chunk7ZFCR7UYcjs.personInitials.call(void 0, _nullishCoalesce(fallbackText, () => ( alt)));
1454
1454
  if (showFallback) {
1455
1455
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1456
1456
  "div",
@@ -1466,7 +1466,7 @@ function EntityImage({ src, alt, fallbackText, sizeClassName, className }) {
1466
1466
  );
1467
1467
  }
1468
1468
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1469
- _chunkUR4K2NSLcjs.next_image_default,
1469
+ _chunkHOTM4UM6cjs.next_image_default,
1470
1470
  {
1471
1471
  src: resolvedSrc,
1472
1472
  alt: _nullishCoalesce(alt, () => ( "")),
@@ -1561,7 +1561,7 @@ function TitleBlock({
1561
1561
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
1562
1562
  (loading || title) && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
1563
1563
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1564
- _chunkFTTLBMHUcjs.FloatingTooltip,
1564
+ _chunk7ZFCR7UYcjs.FloatingTooltip,
1565
1565
  {
1566
1566
  content: title,
1567
1567
  side: "bottom",
@@ -1578,12 +1578,12 @@ function TitleBlock({
1578
1578
  }
1579
1579
  ),
1580
1580
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
1581
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFTTLBMHUcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { ref: titleRef, className: _chunk3ATAYP36cjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
1581
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7ZFCR7UYcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { ref: titleRef, className: _chunk3ATAYP36cjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
1582
1582
  hasSubtitleRow && /* The NBSP is a pure spacer, reached only in `'always'` mode: an
1583
1583
  empty `p` collapses to zero height (its only content would be
1584
1584
  collapsible whitespace), which is exactly the shift that mode
1585
1585
  exists to prevent. Hidden from AT — it carries no meaning. */
1586
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFTTLBMHUcjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1586
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7ZFCR7UYcjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1587
1587
  "p",
1588
1588
  {
1589
1589
  ref: subtitleRef,
@@ -1594,7 +1594,7 @@ function TitleBlock({
1594
1594
  ) })
1595
1595
  ] })
1596
1596
  ] }) : title && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
1597
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFTTLBMHUcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1597
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7ZFCR7UYcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1598
1598
  _chunkOF336YWGcjs.PageTitle,
1599
1599
  {
1600
1600
  ref: titleRef,
@@ -1720,7 +1720,7 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1720
1720
  children: [
1721
1721
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center", children: [
1722
1722
  faces.map((viewer, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1723
- _chunkFTTLBMHUcjs.SquareAvatar,
1723
+ _chunk7ZFCR7UYcjs.SquareAvatar,
1724
1724
  {
1725
1725
  variant: "round",
1726
1726
  sizePx: 32,
@@ -1754,7 +1754,7 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1754
1754
  ),
1755
1755
  children: [
1756
1756
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1757
- _chunkFTTLBMHUcjs.SquareAvatar,
1757
+ _chunk7ZFCR7UYcjs.SquareAvatar,
1758
1758
  {
1759
1759
  variant: "round",
1760
1760
  sizePx: 24,
@@ -1800,7 +1800,7 @@ function RemoteSessionScope({ children, className }) {
1800
1800
  function RemoteSessionOrgLogo({ name, logoUrl, sizePx, className }) {
1801
1801
  if (logoUrl) {
1802
1802
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1803
- _chunkFTTLBMHUcjs.SquareAvatar,
1803
+ _chunk7ZFCR7UYcjs.SquareAvatar,
1804
1804
  {
1805
1805
  variant: "square",
1806
1806
  fit: "contain",
@@ -1910,7 +1910,7 @@ function RemoteAccessRequestCard({
1910
1910
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RemoteSessionOrgLogo, { name: organizationName, logoUrl: party.organizationLogoUrl, sizePx: 64 }),
1911
1911
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
1912
1912
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full truncate text-ods-text-primary text-h3", children: organizationName }),
1913
- siteUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full truncate text-ods-text-secondary text-h4", children: _chunkFTTLBMHUcjs.formatUrlForDisplay.call(void 0, siteUrl, { keepWww: true }) })
1913
+ siteUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full truncate text-ods-text-secondary text-h4", children: _chunk7ZFCR7UYcjs.formatUrlForDisplay.call(void 0, siteUrl, { keepWww: true }) })
1914
1914
  ] }),
1915
1915
  openableSite && onOpenSite && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", size: "icon", "aria-label": "Open website", onClick: () => onOpenSite(openableSite), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEDVT7OAScjs.ExternalLinkIcon, { size: 24, color: "currentColor" }) })
1916
1916
  ] }),
@@ -2029,7 +2029,7 @@ function RemoteSessionSummary({
2029
2029
  ...dragHandlers,
2030
2030
  children: [
2031
2031
  technician ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2032
- _chunkFTTLBMHUcjs.SquareAvatar,
2032
+ _chunk7ZFCR7UYcjs.SquareAvatar,
2033
2033
  {
2034
2034
  variant: "round",
2035
2035
  sizePx: 48,
@@ -2085,7 +2085,7 @@ var RemoteSessionMinimizedChip = _react.forwardRef.call(void 0,
2085
2085
  ...dragHandlers,
2086
2086
  children: [
2087
2087
  technician ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2088
- _chunkFTTLBMHUcjs.SquareAvatar,
2088
+ _chunk7ZFCR7UYcjs.SquareAvatar,
2089
2089
  {
2090
2090
  sizePx: 48,
2091
2091
  src: _nullishCoalesce(party.technicianAvatarUrl, () => ( void 0)),
@@ -2235,7 +2235,7 @@ function RemoteSessionChatMessageRow({
2235
2235
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col", children: [
2236
2236
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-xs)]", children: [
2237
2237
  isTechnician && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2238
- _chunkFTTLBMHUcjs.SquareAvatar,
2238
+ _chunk7ZFCR7UYcjs.SquareAvatar,
2239
2239
  {
2240
2240
  variant: "round",
2241
2241
  sizePx: 16,
@@ -2270,7 +2270,7 @@ function RemoteDesktopChatMessageRow({
2270
2270
  }) {
2271
2271
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-[var(--spacing-system-xxs)]", children: [
2272
2272
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)]", children: [
2273
- isTechnician && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFTTLBMHUcjs.SquareAvatar, { variant: "round", sizePx: 24, src: avatarUrl, alt: authorName, className: "shrink-0" }),
2273
+ isTechnician && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7ZFCR7UYcjs.SquareAvatar, { variant: "round", sizePx: 24, src: avatarUrl, alt: authorName, className: "shrink-0" }),
2274
2274
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2275
2275
  "span",
2276
2276
  {
@@ -2281,7 +2281,7 @@ function RemoteDesktopChatMessageRow({
2281
2281
  children: authorName
2282
2282
  }
2283
2283
  ),
2284
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunkUMO55S55cjs.formatTime.call(void 0, sentAt) })
2284
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunkPQ2M7P2Ucjs.formatTime.call(void 0, sentAt) })
2285
2285
  ] }),
2286
2286
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "whitespace-pre-wrap text-ods-text-primary text-h4", children: body })
2287
2287
  ] });
@@ -2326,7 +2326,7 @@ function RemoteDesktopChatPanel({
2326
2326
  message.id
2327
2327
  )) }) }),
2328
2328
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2329
- _chunkUMO55S55cjs.ChatInput,
2329
+ _chunkPQ2M7P2Ucjs.ChatInput,
2330
2330
  {
2331
2331
  placeholder: "Enter your Message...",
2332
2332
  onSend,
@@ -2690,9 +2690,9 @@ function KeepRecordingModal({
2690
2690
  if (!canKeep || isPending) return;
2691
2691
  onConfirm({ reason, description: reason === "OTHER" ? trimmed : null });
2692
2692
  };
2693
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.Modal, { isOpen, onClose: isPending ? () => {
2693
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.Modal, { isOpen, onClose: isPending ? () => {
2694
2694
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2695
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalTitle, { children: "Keep this recording" }) }),
2695
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalTitle, { children: "Keep this recording" }) }),
2696
2696
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2697
2697
  KeepNotice,
2698
2698
  {
@@ -2730,7 +2730,7 @@ function KeepRecordingModal({
2730
2730
  }
2731
2731
  )
2732
2732
  ] }),
2733
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.ModalFooter, { children: [
2733
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.ModalFooter, { children: [
2734
2734
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2735
2735
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2736
2736
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2760,9 +2760,9 @@ function ReleaseKeepingModal({
2760
2760
  isPending = false,
2761
2761
  onConfirm
2762
2762
  }) {
2763
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.Modal, { isOpen, onClose: isPending ? () => {
2763
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.Modal, { isOpen, onClose: isPending ? () => {
2764
2764
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2765
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalTitle, { children: "Release Keeping" }) }),
2765
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalTitle, { children: "Release Keeping" }) }),
2766
2766
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] text-ods-text-primary text-h4", children: [
2767
2767
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { children: [
2768
2768
  "Kept by ",
@@ -2779,7 +2779,7 @@ function ReleaseKeepingModal({
2779
2779
  ] })
2780
2780
  ] }),
2781
2781
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, KeepNotice, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkILWSAV64cjs.HourglassIcon, { size: 24, color: "currentColor" }), title: `It will expire on ${expiresOn}`, children: dueOn ? `It was due to expire on ${dueOn}. Releasing gives it 3 days' grace, and it shows amber until then. Whoever placed the Keep is reminded the day before it goes. Nothing is deleted now.` : "Nothing is deleted now." }),
2782
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.ModalFooter, { children: [
2782
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.ModalFooter, { children: [
2783
2783
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2784
2784
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2785
2785
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "accent", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Release Keeping" })
@@ -2821,9 +2821,9 @@ function AssignTicketModal({
2821
2821
  if (ticketIds.length === 0 || isPending) return;
2822
2822
  onConfirm(ticketIds);
2823
2823
  };
2824
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.Modal, { isOpen, onClose: isPending ? () => {
2824
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.Modal, { isOpen, onClose: isPending ? () => {
2825
2825
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2826
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalTitle, { children: "Assign Ticket" }) }),
2826
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalTitle, { children: "Assign Ticket" }) }),
2827
2827
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2828
2828
  Autocomplete,
2829
2829
  {
@@ -2842,7 +2842,7 @@ function AssignTicketModal({
2842
2842
  disabled: isPending
2843
2843
  }
2844
2844
  ),
2845
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.ModalFooter, { children: [
2845
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.ModalFooter, { children: [
2846
2846
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2847
2847
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2848
2848
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2861,11 +2861,11 @@ function AssignTicketModal({
2861
2861
  ] });
2862
2862
  }
2863
2863
  function UnassignTicketModal({ isOpen, onClose, isPending = false, onConfirm }) {
2864
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.Modal, { isOpen, onClose: isPending ? () => {
2864
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.Modal, { isOpen, onClose: isPending ? () => {
2865
2865
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2866
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUMO55S55cjs.ModalTitle, { children: "Unassign Ticket" }) }),
2866
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPQ2M7P2Ucjs.ModalTitle, { children: "Unassign Ticket" }) }),
2867
2867
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This Ticket will no longer be linked to this remote session. The ticket itself stays as it is, and you can assign it again anytime." }),
2868
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkUMO55S55cjs.ModalFooter, { children: [
2868
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPQ2M7P2Ucjs.ModalFooter, { children: [
2869
2869
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2870
2870
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2871
2871
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "destructive", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Unassign" })
@@ -2945,7 +2945,7 @@ var STATUS_TAG = {
2945
2945
  function RemoteSessionStatusTag({ status, className }) {
2946
2946
  const { label, variant } = STATUS_TAG[status];
2947
2947
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2948
- _chunkFTTLBMHUcjs.Tag,
2948
+ _chunk7ZFCR7UYcjs.Tag,
2949
2949
  {
2950
2950
  label,
2951
2951
  variant,
@@ -1,10 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); 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 _chunk4T6ETBL4cjs = require('./chunk-4T6ETBL4.cjs');
4
+ var _chunkCWRVTQUOcjs = require('./chunk-CWRVTQUO.cjs');
5
5
 
6
6
 
7
- var _chunkBRKTN6URcjs = require('./chunk-BRKTN6UR.cjs');
7
+ var _chunkBV5WZVOPcjs = require('./chunk-BV5WZVOP.cjs');
8
8
 
9
9
 
10
10
 
@@ -47,7 +47,7 @@ function HorizontalSectionNav({
47
47
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { ref: navRef, "aria-label": label, className: _chunk3ATAYP36cjs.cn.call(void 0, "flex h-14 items-stretch gap-6 bg-ods-bg", className), children: [
48
48
  brand && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden shrink-0 items-center gap-2.5 border-r border-ods-border pr-6 text-ods-text-primary text-h4 content-lg:flex", children: brand }),
49
49
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
50
- _chunkBRKTN6URcjs.ScrollShadow,
50
+ _chunkBV5WZVOPcjs.ScrollShadow,
51
51
  {
52
52
  axis: "horizontal",
53
53
  className: "min-w-0 flex-1",
@@ -332,7 +332,7 @@ function useScrollSpy(sections, options = {}) {
332
332
  // src/components/navigation/multi-level-navigation.tsx
333
333
  var _lucidereact = require('lucide-react');
334
334
 
335
- var DEFAULT_FOLDER_INDEX_FILE2 = _chunk4T6ETBL4cjs.DEFAULT_FOLDER_INDEX_FILE;
335
+ var DEFAULT_FOLDER_INDEX_FILE2 = _chunkCWRVTQUOcjs.DEFAULT_FOLDER_INDEX_FILE;
336
336
  function isNodeVisuallySelected(node, selectedPath, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE2) {
337
337
  const FOLDER_INDEX_FILE = folderIndexFile.toLowerCase();
338
338
  if (selectedPath === node.path) {
@@ -30,7 +30,7 @@ var _chunkIFS4AH77cjs = require('./chunk-IFS4AH77.cjs');
30
30
 
31
31
 
32
32
 
33
- var _chunkFTTLBMHUcjs = require('./chunk-FTTLBMHU.cjs');
33
+ var _chunk7ZFCR7UYcjs = require('./chunk-7ZFCR7UY.cjs');
34
34
 
35
35
 
36
36
  var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
@@ -39,7 +39,7 @@ var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
39
39
  var _chunkFICJS5OAcjs = require('./chunk-FICJS5OA.cjs');
40
40
 
41
41
 
42
- var _chunkUR4K2NSLcjs = require('./chunk-UR4K2NSL.cjs');
42
+ var _chunkHOTM4UM6cjs = require('./chunk-HOTM4UM6.cjs');
43
43
 
44
44
 
45
45
  var _chunk2QMBXGMQcjs = require('./chunk-2QMBXGMQ.cjs');
@@ -65,10 +65,10 @@ function formatTicketRelativeTime(iso) {
65
65
  if (diffMin < 60) return `${diffMin} min ago`;
66
66
  const diffHours = Math.floor(diffMin / 60);
67
67
  if (diffHours < 24) return diffHours === 1 ? "1 hour ago" : `${diffHours} hours ago`;
68
- return _chunkFTTLBMHUcjs.formatDateWithTimezone.call(void 0, date, null, "numeric");
68
+ return _chunk7ZFCR7UYcjs.formatDateWithTimezone.call(void 0, date, null, "numeric");
69
69
  }
70
70
  function formatTicketFullTimestamp(iso) {
71
- return _chunkFTTLBMHUcjs.formatDateWithTimezone.call(void 0, iso, null, "numericDateTime");
71
+ return _chunk7ZFCR7UYcjs.formatDateWithTimezone.call(void 0, iso, null, "numericDateTime");
72
72
  }
73
73
  function formatRelativeTime(timestamp) {
74
74
  return formatRelativeTimeFrom(timestamp, /* @__PURE__ */ new Date());
@@ -94,7 +94,7 @@ function formatRelativeTimeFrom(timestamp, now) {
94
94
  const weeks = Math.floor(diffInDays / 7);
95
95
  return `${weeks}w ago`;
96
96
  }
97
- return _chunkFTTLBMHUcjs.formatDateWithTimezone.call(void 0, targetTime, null, {
97
+ return _chunk7ZFCR7UYcjs.formatDateWithTimezone.call(void 0, targetTime, null, {
98
98
  month: "short",
99
99
  day: "numeric",
100
100
  year: targetTime.getUTCFullYear() !== now.getUTCFullYear() ? "numeric" : void 0
@@ -106,7 +106,7 @@ function formatAbsoluteDate(timestamp, options = {}) {
106
106
  console.warn("\u26A0\uFE0F Invalid timestamp in formatAbsoluteDate:", timestamp);
107
107
  return "Invalid date";
108
108
  }
109
- return _chunkFTTLBMHUcjs.formatDateWithTimezone.call(void 0, targetTime, _nullishCoalesce(options.timeZone, () => ( null)), {
109
+ return _chunk7ZFCR7UYcjs.formatDateWithTimezone.call(void 0, targetTime, _nullishCoalesce(options.timeZone, () => ( null)), {
110
110
  year: "numeric",
111
111
  month: "short",
112
112
  day: "numeric",
@@ -119,7 +119,7 @@ function formatDateTime(timestamp, options = {}) {
119
119
  console.warn("\u26A0\uFE0F Invalid timestamp in formatDateTime:", timestamp);
120
120
  return "Invalid date";
121
121
  }
122
- return _chunkFTTLBMHUcjs.formatDateWithTimezone.call(void 0, targetTime, _nullishCoalesce(options.timeZone, () => ( null)), {
122
+ return _chunk7ZFCR7UYcjs.formatDateWithTimezone.call(void 0, targetTime, _nullishCoalesce(options.timeZone, () => ( null)), {
123
123
  ...ZONED_DATE_FIELDS_MEDIUM_DATETIME,
124
124
  ...options
125
125
  });
@@ -287,7 +287,7 @@ function TicketStatusTag({
287
287
  } : void 0;
288
288
  const customColorClasses = color ? "bg-[var(--tag-bg)] hover:bg-[var(--tag-bg-hover)] active:bg-[var(--tag-bg-active)]" : void 0;
289
289
  const tag = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
290
- _chunkFTTLBMHUcjs.Tag,
290
+ _chunk7ZFCR7UYcjs.Tag,
291
291
  {
292
292
  label: _nullishCoalesce(label, () => ( config.label)),
293
293
  variant: _nullishCoalesce(variant, () => ( config.variant)),
@@ -330,7 +330,7 @@ function TicketStatusTag({
330
330
  className: _chunk3ATAYP36cjs.cn.call(void 0,
331
331
  // Reuse the tag's variant styling, but split into a label section and a
332
332
  // separated chevron section (the common dropdown-button seam).
333
- _chunkFTTLBMHUcjs.tagVariants.call(void 0, { variant: _nullishCoalesce(variant, () => ( config.variant)) }),
333
+ _chunk7ZFCR7UYcjs.tagVariants.call(void 0, { variant: _nullishCoalesce(variant, () => ( config.variant)) }),
334
334
  "w-fit shrink-0 items-stretch justify-start gap-0 overflow-hidden p-0",
335
335
  "disabled:cursor-not-allowed disabled:opacity-60",
336
336
  // Custom color: bg/hover/active from the CSS vars set above.
@@ -777,7 +777,7 @@ var MARK_IMAGE_SIZES = "96px";
777
777
  function AgentMark({ agent, className = "", color = _chunkIFS4AH77cjs.AGENT_GLYPH_COLOR }) {
778
778
  const identity = _chunkIFS4AH77cjs.useAgentIdentityIcon.call(void 0, agent);
779
779
  if (_optionalChain([identity, 'optionalAccess', _15 => _15.url])) {
780
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": "true", className: _chunk3ATAYP36cjs.cn.call(void 0, "relative inline-block overflow-hidden rounded-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUR4K2NSLcjs.next_image_default, { src: identity.url, alt: "", fill: true, sizes: MARK_IMAGE_SIZES, className: _chunkIFS4AH77cjs.AGENT_PICTURE_CLASS }) });
780
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": "true", className: _chunk3ATAYP36cjs.cn.call(void 0, "relative inline-block overflow-hidden rounded-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHOTM4UM6cjs.next_image_default, { src: identity.url, alt: "", fill: true, sizes: MARK_IMAGE_SIZES, className: _chunkIFS4AH77cjs.AGENT_PICTURE_CLASS }) });
781
781
  }
782
782
  if (_optionalChain([identity, 'optionalAccess', _16 => _16.name])) {
783
783
  return _react.createElement.call(void 0, _chunkFICJS5OAcjs.resolveIcon.call(void 0, identity.name), {