@flamingo-stack/openframe-frontend-core 0.0.715 → 0.0.716

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 (86) hide show
  1. package/dist/{chunk-W4CS6UJS.cjs → chunk-2V7D5GJX.cjs} +3 -3
  2. package/dist/{chunk-AQI74KC7.js → chunk-3AJIQPFG.js} +3 -3
  3. package/dist/{chunk-EORJFB2Z.cjs → chunk-5IJXM3RU.cjs} +2 -2
  4. package/dist/{chunk-DI5VLY3G.js → chunk-64F6OEEV.js} +1 -1
  5. package/dist/{chunk-JHSPIDV5.js → chunk-BVZ7W4HW.js} +1 -1
  6. package/dist/{chunk-2LZ3IYGT.js → chunk-C5AGSZBT.js} +2268 -2209
  7. package/dist/{chunk-S66W6HNZ.cjs → chunk-DHMO5GI4.cjs} +10 -10
  8. package/dist/{chunk-WEEZSGFD.cjs → chunk-DLEO53NX.cjs} +23 -23
  9. package/dist/{chunk-4GFAKUHF.js → chunk-DPX6244M.js} +1 -1
  10. package/dist/{chunk-GXHWSAV6.cjs → chunk-I5F2OTFE.cjs} +15 -15
  11. package/dist/{chunk-VBDGMXZO.js → chunk-JCA5MBVY.js} +1 -1
  12. package/dist/{chunk-XFFIUXVI.cjs → chunk-KNOZVVCU.cjs} +2 -2
  13. package/dist/{chunk-OQVGA3YE.js → chunk-KYFNFRSV.js} +1 -1
  14. package/dist/{chunk-BIFUUH4K.js → chunk-MXPQMQI3.js} +3 -3
  15. package/dist/{chunk-U4WCFIYB.cjs → chunk-NKILEG3Y.cjs} +22 -22
  16. package/dist/{chunk-QW7KTWLB.js → chunk-P7IL4CX3.js} +2 -2
  17. package/dist/{chunk-ZSJ6WWFH.cjs → chunk-S2VWQX6T.cjs} +190 -131
  18. package/dist/{chunk-LTLHCAZY.cjs → chunk-STCJYO2Z.cjs} +4 -4
  19. package/dist/{chunk-KSEOIICU.js → chunk-V36WGIYR.js} +2 -2
  20. package/dist/{chunk-E25A235W.cjs → chunk-X2MNNV5H.cjs} +3 -3
  21. package/dist/{chunk-5MMCYJAJ.cjs → chunk-YO5JB3WE.cjs} +11 -11
  22. package/dist/{chunk-VKIRTB7K.js → chunk-YTMV4OBY.js} +1 -1
  23. package/dist/{cloud-tenants-MI7APZJD.cjs → cloud-tenants-2J7CPTKT.cjs} +2 -2
  24. package/dist/{cloud-tenants-NSEVWC26.js → cloud-tenants-YOY2WLGC.js} +1 -1
  25. package/dist/components/case-studies/index.cjs +10 -10
  26. package/dist/components/case-studies/index.js +2 -2
  27. package/dist/components/contact/index.cjs +3 -3
  28. package/dist/components/contact/index.js +2 -2
  29. package/dist/components/docs/index.cjs +5 -5
  30. package/dist/components/docs/index.js +4 -4
  31. package/dist/components/embeds/index.cjs +3 -3
  32. package/dist/components/embeds/index.js +2 -2
  33. package/dist/components/faq/index.cjs +3 -3
  34. package/dist/components/faq/index.js +2 -2
  35. package/dist/components/features/approval-level.d.ts +30 -22
  36. package/dist/components/features/approval-level.d.ts.map +1 -1
  37. package/dist/components/features/index.cjs +2 -4
  38. package/dist/components/features/index.js +3 -5
  39. package/dist/components/help-center-pages/index.cjs +39 -39
  40. package/dist/components/help-center-pages/index.js +10 -10
  41. package/dist/components/index.cjs +18 -18
  42. package/dist/components/index.js +12 -12
  43. package/dist/components/meeting-scheduler/index.cjs +11 -11
  44. package/dist/components/meeting-scheduler/index.js +1 -1
  45. package/dist/components/navigation/index.cjs +3 -3
  46. package/dist/components/navigation/index.js +2 -2
  47. package/dist/components/onboarding-guides/index.cjs +4 -4
  48. package/dist/components/onboarding-guides/index.js +3 -3
  49. package/dist/components/product-demo/index.cjs +6 -6
  50. package/dist/components/product-demo/index.js +6 -6
  51. package/dist/components/tickets/index.cjs +5 -5
  52. package/dist/components/tickets/index.js +4 -4
  53. package/dist/components/ui/analyzing-state.d.ts +17 -0
  54. package/dist/components/ui/analyzing-state.d.ts.map +1 -0
  55. package/dist/components/ui/feature-list.d.ts +4 -4
  56. package/dist/components/ui/feature-list.d.ts.map +1 -1
  57. package/dist/components/ui/incident-feed.d.ts +4 -1
  58. package/dist/components/ui/incident-feed.d.ts.map +1 -1
  59. package/dist/components/ui/index.cjs +4 -2
  60. package/dist/components/ui/index.d.ts +1 -0
  61. package/dist/components/ui/index.d.ts.map +1 -1
  62. package/dist/components/ui/index.js +3 -1
  63. package/dist/components/ui/playback-toggle.d.ts +10 -4
  64. package/dist/components/ui/playback-toggle.d.ts.map +1 -1
  65. package/dist/components/ui/tab-navigation.d.ts +7 -1
  66. package/dist/components/ui/tab-navigation.d.ts.map +1 -1
  67. package/dist/{devices-6NMK4EXV.cjs → devices-5NADSKDZ.cjs} +3 -3
  68. package/dist/{devices-W3VKQEVZ.js → devices-EQXXILXW.js} +1 -1
  69. package/dist/index.cjs +3 -3
  70. package/dist/index.js +6 -6
  71. package/dist/{knowledge-GDMGHFEC.cjs → knowledge-LHQYZJE7.cjs} +2 -2
  72. package/dist/{knowledge-YWCB7HNC.js → knowledge-YCQITBJB.js} +1 -1
  73. package/dist/{logs-7QDRV3GN.cjs → logs-DUVKSQU3.cjs} +10 -10
  74. package/dist/{logs-E742S5A2.js → logs-LZNXGOSW.js} +1 -1
  75. package/dist/{policies-BEVF6AEM.cjs → policies-5H74FS4S.cjs} +6 -6
  76. package/dist/{policies-XTPAKRHI.js → policies-VYWOJ7IF.js} +1 -1
  77. package/dist/{software-update-FXWIEKSW.js → software-update-MSDY3OLX.js} +1 -1
  78. package/dist/{software-update-KPHX4XQ7.cjs → software-update-VRRX5U4W.cjs} +6 -6
  79. package/package.json +1 -1
  80. package/src/components/features/approval-level.tsx +62 -44
  81. package/src/components/ui/analyzing-state.tsx +57 -0
  82. package/src/components/ui/feature-list.tsx +26 -16
  83. package/src/components/ui/incident-feed.tsx +6 -2
  84. package/src/components/ui/index.ts +1 -0
  85. package/src/components/ui/playback-toggle.tsx +12 -6
  86. package/src/components/ui/tab-navigation.tsx +12 -1
@@ -137,6 +137,7 @@ var _chunkKT3U3ZRPcjs = require('./chunk-KT3U3ZRP.cjs');
137
137
 
138
138
 
139
139
 
140
+
140
141
  var _chunkDC4RTYWKcjs = require('./chunk-DC4RTYWK.cjs');
141
142
 
142
143
 
@@ -4736,13 +4737,13 @@ function PlaybackToggle({
4736
4737
  variant: "transparent",
4737
4738
  size: "icon-sm",
4738
4739
  className: _chunk3ATAYP36cjs.cn.call(void 0,
4739
- "shrink-0 rounded-full border border-ods-border text-ods-text-secondary hover:border-ods-accent hover:text-ods-accent",
4740
+ "shrink-0 rounded-full border-0 text-ods-text-muted hover:text-ods-accent focus-visible:text-ods-accent [&_svg]:h-3 [&_svg]:w-3",
4740
4741
  className
4741
4742
  ),
4742
4743
  "aria-label": paused ? playLabel : pauseLabel,
4743
4744
  "aria-pressed": paused,
4744
4745
  onClick: () => onChange(!paused),
4745
- children: paused ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.PlayIcon, { size: 16 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.PauseIcon, { size: 16 })
4746
+ children: paused ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.PlayIcon, { size: 12 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.PauseIcon, { size: 12 })
4746
4747
  }
4747
4748
  );
4748
4749
  }
@@ -5350,6 +5351,7 @@ var TabBar = _react.memo.call(void 0, function TabBarImpl({
5350
5351
  showLeftGradient,
5351
5352
  showRightGradient,
5352
5353
  stretchTabs,
5354
+ tabAlign,
5353
5355
  progressTransitionMs
5354
5356
  }) {
5355
5357
  const scrollRef = _react.useRef.call(void 0, null);
@@ -5477,7 +5479,8 @@ var TabBar = _react.memo.call(void 0, function TabBarImpl({
5477
5479
  onClick: () => onTabChange(tab.id),
5478
5480
  "aria-label": tab.badge ? `${tab.label} (${tab.badge})` : void 0,
5479
5481
  className: _chunk3ATAYP36cjs.cn.call(void 0,
5480
- "relative flex shrink-0 cursor-pointer items-center justify-center gap-[var(--spacing-system-xxs)] p-[var(--spacing-system-m)]",
5482
+ "relative flex shrink-0 cursor-pointer items-center gap-[var(--spacing-system-xxs)] p-[var(--spacing-system-m)]",
5483
+ tabAlign === "start" ? "justify-start text-left" : "justify-center",
5481
5484
  // Named rather than `transition-all`: the only thing that moves
5482
5485
  // here is colour. `all` also made the browser re-check every
5483
5486
  // property each frame, including the background GRADIENT — which
@@ -5604,6 +5607,7 @@ function TabNavigation({
5604
5607
  showRightGradient = false,
5605
5608
  showLeftGradient = false,
5606
5609
  stretchTabs = false,
5610
+ tabAlign = "center",
5607
5611
  progressTransitionMs = 200,
5608
5612
  urlSync = false,
5609
5613
  defaultTab,
@@ -5680,6 +5684,7 @@ function TabNavigation({
5680
5684
  showLeftGradient,
5681
5685
  showRightGradient,
5682
5686
  stretchTabs,
5687
+ tabAlign,
5683
5688
  progressTransitionMs
5684
5689
  }
5685
5690
  ),
@@ -10430,29 +10435,41 @@ function FeatureList({
10430
10435
  }) {
10431
10436
  if (variant === "numbered") {
10432
10437
  const dims = typeof activeIndex === "number";
10433
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ol", { className: `flex flex-col ${className}`, children: items.map((item, index) => {
10438
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ol", { className: `flex flex-col gap-[var(--spacing-system-lf)] ${className}`, children: items.map((item, index) => {
10434
10439
  const current = dims && index === activeIndex;
10435
10440
  const row = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
10436
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `text-h5 ${current ? "text-ods-flamingo-pink" : "text-ods-text-secondary"}`, children: String(index + 1).padStart(2, "0") }),
10441
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10442
+ "span",
10443
+ {
10444
+ className: `grid h-7 w-7 shrink-0 place-items-center rounded-full border transition-colors duration-200 text-h5 motion-reduce:transition-none ${current ? "border-ods-flamingo-pink bg-ods-flamingo-pink-secondary text-ods-text-primary" : "border-ods-border text-ods-text-secondary"}`,
10445
+ children: index + 1
10446
+ }
10447
+ ),
10437
10448
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
10438
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h3", children: item.title }),
10439
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: item.description })
10449
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h4", children: item.title }),
10450
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: item.description })
10440
10451
  ] })
10441
10452
  ] });
10442
- const layout = "grid grid-cols-[48px_minmax(0,1fr)] gap-[var(--spacing-system-m)] py-[var(--spacing-system-l)]";
10453
+ const layout = "flex items-start gap-[var(--spacing-system-sf)]";
10443
10454
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10444
10455
  "li",
10445
10456
  {
10446
10457
  "aria-current": current ? "step" : void 0,
10447
- className: `border-t border-ods-border transition-opacity duration-200 last:border-b motion-reduce:transition-none ${dims && !current ? "opacity-55 focus-within:opacity-100 hover:opacity-100" : ""}`,
10448
- children: onSelect ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10449
- "button",
10450
- {
10451
- type: "button",
10452
- onClick: () => onSelect(index),
10453
- className: `${layout} w-full cursor-pointer text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus`,
10454
- children: row
10455
- }
10458
+ className: `transition-opacity duration-200 motion-reduce:transition-none ${dims && !current ? "opacity-55 focus-within:opacity-100 hover:opacity-100" : ""}`,
10459
+ children: onSelect ? (
10460
+ // The unified Button with no box of its own (`wrap`): it brings the
10461
+ // target, the focus ring and the keyboard semantics; the row is the look.
10462
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10463
+ _chunkDFQYAYBHcjs.Button,
10464
+ {
10465
+ variant: "transparent",
10466
+ size: "wrap",
10467
+ fullWidth: true,
10468
+ onClick: () => onSelect(index),
10469
+ className: `${layout} justify-start whitespace-normal text-left hover:bg-transparent active:bg-transparent`,
10470
+ children: row
10471
+ }
10472
+ )
10456
10473
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: layout, children: row })
10457
10474
  },
10458
10475
  index
@@ -16564,6 +16581,43 @@ function PhoneFrame({ dateLabel, timeLabel, children, className }) {
16564
16581
  );
16565
16582
  }
16566
16583
 
16584
+ // src/components/ui/analyzing-state.tsx
16585
+
16586
+ var ROW_OPACITY = ["opacity-100", "opacity-60", "opacity-30"];
16587
+ var ROW_STAGGER_MS = 200;
16588
+ function AnalyzingState({ label, className }) {
16589
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { role: "status", className: _chunk3ATAYP36cjs.cn.call(void 0, "flex w-full max-w-sm flex-col items-center gap-4", className), children: [
16590
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "grid w-full grid-cols-1 gap-2", children: ROW_OPACITY.map((opacity, row) => {
16591
+ const delay = { animationDelay: `${row * ROW_STAGGER_MS}ms` };
16592
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
16593
+ "div",
16594
+ {
16595
+ className: _chunk3ATAYP36cjs.cn.call(void 0,
16596
+ "flex items-center gap-3 rounded-md border border-ods-border bg-ods-bg px-3.5 py-3",
16597
+ opacity
16598
+ ),
16599
+ children: [
16600
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
16601
+ _chunkCPA2CKRZcjs.Skeleton,
16602
+ {
16603
+ className: "h-2 w-2 shrink-0 rounded-full bg-ods-flamingo-cyan motion-reduce:animate-none",
16604
+ style: delay
16605
+ }
16606
+ ),
16607
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCPA2CKRZcjs.Skeleton, { className: "h-2.5 min-w-0 flex-1 motion-reduce:animate-none", style: delay }),
16608
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCPA2CKRZcjs.Skeleton, { className: "h-2.5 w-12 shrink-0 motion-reduce:animate-none", style: delay })
16609
+ ]
16610
+ },
16611
+ opacity
16612
+ );
16613
+ }) }),
16614
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5 text-center text-ods-text-secondary text-h4", children: [
16615
+ label,
16616
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDC4RTYWKcjs.ChatTypingIndicator, { "aria-hidden": true, size: "sm", dotClassName: "bg-ods-text-secondary motion-reduce:animate-none" })
16617
+ ] })
16618
+ ] });
16619
+ }
16620
+
16567
16621
  // src/components/ui/incident-feed.tsx
16568
16622
 
16569
16623
  var INCIDENT_TONE = {
@@ -16596,7 +16650,7 @@ function IncidentFeed({ items, statusLabels, emptyLabel, anchor = "top", classNa
16596
16650
  className
16597
16651
  ),
16598
16652
  children: [
16599
- items.length === 0 && emptyLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "m-auto text-ods-text-secondary text-h4", children: emptyLabel }),
16653
+ items.length === 0 && emptyLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AnalyzingState, { label: emptyLabel, className: "m-auto" }),
16600
16654
  items.map((item, index) => {
16601
16655
  const open = index === lastIndex || item.status === "waiting";
16602
16656
  if (!open) {
@@ -25381,25 +25435,30 @@ var APPROVAL_LEVEL_META = {
25381
25435
  DENY: { label: "Restrict", hint: "Never runs.", Icon: _chunkVX4E6YSBcjs.BannedIcon, toneClassName: "text-ods-error" }
25382
25436
  };
25383
25437
  var ICON_PX = 16;
25384
- function ApprovalLevelMark({ level, iconOnly = false, className }) {
25385
- const { label, hint, Icon, toneClassName } = APPROVAL_LEVEL_META[level];
25386
- const mark = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex items-center gap-[var(--spacing-system-xxs)] text-h6", toneClassName, className), children: [
25387
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { size: ICON_PX, className: "shrink-0", "aria-hidden": true }),
25388
- iconOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: label }) : label
25389
- ] });
25390
- return iconOnly ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4HJRHEXDcjs.TouchFriendlyTooltip, { content: `${label}: ${hint}`, side: "top", children: mark }) : mark;
25391
- }
25392
- function ApprovalLevelControl({
25438
+ function ApprovalLevelView({
25393
25439
  value,
25440
+ editable,
25394
25441
  onChange,
25395
- "aria-labelledby": labelledBy,
25396
- showLabel = true,
25397
25442
  disabled = false,
25443
+ showLabel = true,
25444
+ "aria-labelledby": labelledBy,
25398
25445
  className
25399
25446
  }) {
25400
25447
  const current = APPROVAL_LEVEL_META[value];
25448
+ const canEdit = _nullishCoalesce(editable, () => ( onChange !== void 0));
25449
+ const name = showLabel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "whitespace-nowrap text-h6", current.toneClassName), children: current.label }) : null;
25450
+ if (!canEdit) {
25451
+ const icon = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex shrink-0", current.toneClassName), children: [
25452
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, current.Icon, { size: ICON_PX, "aria-hidden": true }),
25453
+ !showLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: current.label })
25454
+ ] });
25455
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex shrink-0 items-center gap-[var(--spacing-system-xxs)]", className), children: [
25456
+ name,
25457
+ showLabel ? icon : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4HJRHEXDcjs.TouchFriendlyTooltip, { content: `${current.label}: ${current.hint}`, side: "top", children: icon })
25458
+ ] });
25459
+ }
25401
25460
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex shrink-0 items-center gap-[var(--spacing-system-sf)]", className), children: [
25402
- showLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "whitespace-nowrap text-h6", current.toneClassName), children: current.label }),
25461
+ name,
25403
25462
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFFT56TYBcjs.TooltipProvider, { delayDuration: 150, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25404
25463
  ToggleGroup,
25405
25464
  {
@@ -25409,7 +25468,7 @@ function ApprovalLevelControl({
25409
25468
  value,
25410
25469
  disabled,
25411
25470
  onValueChange: (next) => {
25412
- if (next && next !== value) onChange(next);
25471
+ if (next && next !== value) _optionalChain([onChange, 'optionalCall', _519 => _519(next)]);
25413
25472
  },
25414
25473
  "aria-labelledby": labelledBy,
25415
25474
  children: APPROVAL_LEVELS.map((level) => {
@@ -25447,7 +25506,7 @@ function ApprovalLevelControl({
25447
25506
  var approvalLevelOptions = APPROVAL_LEVELS.map((value) => ({ value, label: APPROVAL_LEVEL_META[value].label }));
25448
25507
  var POLICY_LEVEL_WIDTH = "w-[180px]";
25449
25508
  var CATEGORY_LEVEL_WIDTH = "w-[256px]";
25450
- var getApprovalLevelLabel = (level) => _nullishCoalesce(_optionalChain([APPROVAL_LEVEL_META, 'access', _519 => _519[level], 'optionalAccess', _520 => _520.label]), () => ( level));
25509
+ var getApprovalLevelLabel = (level) => _nullishCoalesce(_optionalChain([APPROVAL_LEVEL_META, 'access', _520 => _520[level], 'optionalAccess', _521 => _521.label]), () => ( level));
25451
25510
  var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClassName, contentClassName }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2Y7QZAB2cjs.DropdownMenu, { children: [
25452
25511
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2Y7QZAB2cjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25453
25512
  _chunkDFQYAYBHcjs.Button,
@@ -25844,7 +25903,7 @@ var POLICY_STATUS_CONFIG = {
25844
25903
  };
25845
25904
  function missingHostCount(policy) {
25846
25905
  const responded = policy.passing_host_count + policy.failing_host_count;
25847
- return (_nullishCoalesce(_optionalChain([policy, 'access', _521 => _521.hosts_include_any, 'optionalAccess', _522 => _522.length]), () => ( 0))) - responded;
25906
+ return (_nullishCoalesce(_optionalChain([policy, 'access', _522 => _522.hosts_include_any, 'optionalAccess', _523 => _523.length]), () => ( 0))) - responded;
25848
25907
  }
25849
25908
  function getPolicyStatus(policy) {
25850
25909
  const failing = policy.failing_host_count;
@@ -26442,19 +26501,19 @@ function NotificationsProvider({
26442
26501
  }, []);
26443
26502
  const markRead = _react.useCallback.call(void 0, (id) => {
26444
26503
  dispatch({ type: "markRead", id });
26445
- void _optionalChain([actionsRef, 'access', _523 => _523.current, 'optionalAccess', _524 => _524.onMarkRead, 'optionalCall', _525 => _525(id)]);
26504
+ void _optionalChain([actionsRef, 'access', _524 => _524.current, 'optionalAccess', _525 => _525.onMarkRead, 'optionalCall', _526 => _526(id)]);
26446
26505
  }, []);
26447
26506
  const markAllRead = _react.useCallback.call(void 0, () => {
26448
26507
  dispatch({ type: "markAllRead" });
26449
- void _optionalChain([actionsRef, 'access', _526 => _526.current, 'optionalAccess', _527 => _527.onMarkAllRead, 'optionalCall', _528 => _528()]);
26508
+ void _optionalChain([actionsRef, 'access', _527 => _527.current, 'optionalAccess', _528 => _528.onMarkAllRead, 'optionalCall', _529 => _529()]);
26450
26509
  }, []);
26451
26510
  const markSettled = _react.useCallback.call(void 0, (id) => {
26452
26511
  dispatch({ type: "markSettled", id });
26453
- void _optionalChain([actionsRef, 'access', _529 => _529.current, 'optionalAccess', _530 => _530.onMarkSettled, 'optionalCall', _531 => _531(id)]);
26512
+ void _optionalChain([actionsRef, 'access', _530 => _530.current, 'optionalAccess', _531 => _531.onMarkSettled, 'optionalCall', _532 => _532(id)]);
26454
26513
  }, []);
26455
26514
  const remove = _react.useCallback.call(void 0, (id) => {
26456
26515
  dispatch({ type: "remove", id });
26457
- void _optionalChain([actionsRef, 'access', _532 => _532.current, 'optionalAccess', _533 => _533.onRemove, 'optionalCall', _534 => _534(id)]);
26516
+ void _optionalChain([actionsRef, 'access', _533 => _533.current, 'optionalAccess', _534 => _534.onRemove, 'optionalCall', _535 => _535(id)]);
26458
26517
  }, []);
26459
26518
  const clear = _react.useCallback.call(void 0, () => dispatch({ type: "clear" }), []);
26460
26519
  const open = _react.useCallback.call(void 0, () => setIsOpen(true), []);
@@ -26463,14 +26522,14 @@ function NotificationsProvider({
26463
26522
  const setShowPopups = _react.useCallback.call(void 0,
26464
26523
  (value2) => {
26465
26524
  setShowPopupsState(value2);
26466
- _optionalChain([onShowPopupsChange, 'optionalCall', _535 => _535(value2)]);
26525
+ _optionalChain([onShowPopupsChange, 'optionalCall', _536 => _536(value2)]);
26467
26526
  },
26468
26527
  [onShowPopupsChange]
26469
26528
  );
26470
26529
  const setShowDesktopPopups = _react.useCallback.call(void 0,
26471
26530
  (value2) => {
26472
26531
  setShowDesktopPopupsState(value2);
26473
- _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _536 => _536(value2)]);
26532
+ _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _537 => _537(value2)]);
26474
26533
  },
26475
26534
  [onShowDesktopPopupsChange]
26476
26535
  );
@@ -26586,7 +26645,7 @@ var AppLayoutDrawerRoot = ({
26586
26645
  const handleOpenChange = _react.useCallback.call(void 0,
26587
26646
  (next) => {
26588
26647
  if (!isControlled) setInternalOpen(next);
26589
- _optionalChain([onOpenChange, 'optionalCall', _537 => _537(next)]);
26648
+ _optionalChain([onOpenChange, 'optionalCall', _538 => _538(next)]);
26590
26649
  },
26591
26650
  [isControlled, onOpenChange]
26592
26651
  );
@@ -26603,9 +26662,9 @@ var AppLayoutDrawerRoot = ({
26603
26662
  }
26604
26663
  }));
26605
26664
  _react.useEffect.call(void 0, () => {
26606
- if (open) _optionalChain([coordination, 'optionalAccess', _538 => _538.notifyDrawerDidOpen, 'call', _539 => _539(selfHandle)]);
26665
+ if (open) _optionalChain([coordination, 'optionalAccess', _539 => _539.notifyDrawerDidOpen, 'call', _540 => _540(selfHandle)]);
26607
26666
  }, [open, coordination, selfHandle]);
26608
- _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _540 => _540.registerDrawer, 'call', _541 => _541(selfHandle)]), [coordination, selfHandle]);
26667
+ _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _541 => _541.registerDrawer, 'call', _542 => _542(selfHandle)]), [coordination, selfHandle]);
26609
26668
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DrawerOpenContext.Provider, { value: open, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DialogPrimitive3.Root, { ...rest, open, onOpenChange: handleOpenChange, modal, children }) });
26610
26669
  };
26611
26670
  AppLayoutDrawerRoot.displayName = "AppLayoutDrawer";
@@ -26827,10 +26886,10 @@ var AppLayoutDrawerContent = _react.forwardRef.call(void 0,
26827
26886
  ),
26828
26887
  style,
26829
26888
  onInteractOutside: (event) => {
26830
- _optionalChain([onInteractOutside, 'optionalCall', _542 => _542(event)]);
26889
+ _optionalChain([onInteractOutside, 'optionalCall', _543 => _543(event)]);
26831
26890
  if (event.defaultPrevented) return;
26832
26891
  const target = event.target;
26833
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _543 => _543.contains, 'call', _544 => _544(target)]);
26892
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _544 => _544.contains, 'call', _545 => _545(target)]);
26834
26893
  if (!isInsideContainer) {
26835
26894
  event.preventDefault();
26836
26895
  return;
@@ -26946,7 +27005,7 @@ function NotificationTile({
26946
27005
  if (!counting) return void 0;
26947
27006
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
26948
27007
  const timer = window.setTimeout(() => {
26949
- _optionalChain([onSettle, 'optionalCall', _545 => _545(id)]);
27008
+ _optionalChain([onSettle, 'optionalCall', _546 => _546(id)]);
26950
27009
  }, remaining);
26951
27010
  return () => window.clearTimeout(timer);
26952
27011
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -26997,7 +27056,7 @@ function NotificationTile({
26997
27056
  active: isLive,
26998
27057
  label: "Dismiss notification",
26999
27058
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.XmarkIcon, { size: 16 }),
27000
- onClick: () => _optionalChain([onSettle, 'optionalCall', _546 => _546(id)])
27059
+ onClick: () => _optionalChain([onSettle, 'optionalCall', _547 => _547(id)])
27001
27060
  },
27002
27061
  {
27003
27062
  active: !isLive,
@@ -27195,7 +27254,7 @@ function DrawerScrollList({
27195
27254
  if (!sentinel || !root) return void 0;
27196
27255
  const observer = new IntersectionObserver(
27197
27256
  (entries) => {
27198
- if (_optionalChain([entries, 'access', _547 => _547[0], 'optionalAccess', _548 => _548.isIntersecting])) _optionalChain([loadMoreRef, 'access', _549 => _549.current, 'optionalCall', _550 => _550()]);
27257
+ if (_optionalChain([entries, 'access', _548 => _548[0], 'optionalAccess', _549 => _549.isIntersecting])) _optionalChain([loadMoreRef, 'access', _550 => _550.current, 'optionalCall', _551 => _551()]);
27199
27258
  },
27200
27259
  { root, rootMargin: loadMoreRootMargin }
27201
27260
  );
@@ -27210,7 +27269,7 @@ function DrawerScrollList({
27210
27269
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
27211
27270
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
27212
27271
  unreadNotifications.map((n) => {
27213
- const custom = _optionalChain([renderTile, 'optionalCall', _551 => _551(n, { onComplete, onSettle, liveDurationMs })]);
27272
+ const custom = _optionalChain([renderTile, 'optionalCall', _552 => _552(n, { onComplete, onSettle, liveDurationMs })]);
27214
27273
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
27215
27274
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27216
27275
  NotificationTile,
@@ -27330,7 +27389,7 @@ function NotificationPopups({
27330
27389
  }) {
27331
27390
  const ctx = useOptionalNotifications();
27332
27391
  const [now, setNow] = _react.useState.call(void 0, () => Date.now());
27333
- const hasAgeingNotifications = Boolean(_optionalChain([ctx, 'optionalAccess', _552 => _552.notifications, 'access', _553 => _553.some, 'call', _554 => _554((n) => !n.read && !n.settled)]));
27392
+ const hasAgeingNotifications = Boolean(_optionalChain([ctx, 'optionalAccess', _553 => _553.notifications, 'access', _554 => _554.some, 'call', _555 => _555((n) => !n.read && !n.settled)]));
27334
27393
  _react.useEffect.call(void 0, () => {
27335
27394
  if (!hasAgeingNotifications) return void 0;
27336
27395
  const id = setInterval(() => setNow(Date.now()), 500);
@@ -27373,7 +27432,7 @@ function NotificationPopups({
27373
27432
  className
27374
27433
  ),
27375
27434
  children: live.map((n) => {
27376
- const custom = _optionalChain([renderTile, 'optionalCall', _555 => _555(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
27435
+ const custom = _optionalChain([renderTile, 'optionalCall', _556 => _556(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
27377
27436
  if (custom) {
27378
27437
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
27379
27438
  }
@@ -27420,21 +27479,21 @@ function isApprovalNotificationType(type) {
27420
27479
  return typeof type === "string" && APPROVAL_REQUEST_TYPES.has(type);
27421
27480
  }
27422
27481
  function isApprovalNotification(notification) {
27423
- return isApprovalNotificationType(_optionalChain([notification, 'access', _556 => _556.meta, 'optionalAccess', _557 => _557.notificationType]));
27482
+ return isApprovalNotificationType(_optionalChain([notification, 'access', _557 => _557.meta, 'optionalAccess', _558 => _558.notificationType]));
27424
27483
  }
27425
27484
  function getApprovalMeta(notification) {
27426
27485
  if (!isApprovalNotification(notification)) return null;
27427
27486
  const meta = notification.meta;
27428
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _558 => _558.approvalRequestId]);
27429
- const toolCalls = _optionalChain([meta, 'optionalAccess', _559 => _559.toolCalls]);
27487
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _559 => _559.approvalRequestId]);
27488
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _560 => _560.toolCalls]);
27430
27489
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
27431
27490
  return {
27432
27491
  approvalRequestId,
27433
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _560 => _560.dialogId]), () => ( null)),
27434
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _561 => _561.ticketId]), () => ( null)),
27435
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _562 => _562.approvalType]), () => ( null)),
27436
- resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _563 => _563.resolution]), () => ( null)),
27437
- resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _564 => _564.resolvedByName]), () => ( null)),
27492
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _561 => _561.dialogId]), () => ( null)),
27493
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _562 => _562.ticketId]), () => ( null)),
27494
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _563 => _563.approvalType]), () => ( null)),
27495
+ resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _564 => _564.resolution]), () => ( null)),
27496
+ resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _565 => _565.resolvedByName]), () => ( null)),
27438
27497
  toolCalls
27439
27498
  };
27440
27499
  }
@@ -27490,7 +27549,7 @@ function ApprovalRequestNotificationTile({
27490
27549
  const [processing, setProcessing] = _react.useState.call(void 0, false);
27491
27550
  const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
27492
27551
  const approval = getApprovalMeta(notification);
27493
- const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _565 => _565.resolution]));
27552
+ const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _566 => _566.resolution]));
27494
27553
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
27495
27554
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
27496
27555
  const { innerRef, containerStyle } = _chunkKT3U3ZRPcjs.useCollapsible.call(void 0, { expanded });
@@ -27827,7 +27886,7 @@ function TimeTrackerPanel({
27827
27886
  error: showFieldError ? "Required if no notes added" : void 0,
27828
27887
  disableClientFilter: !!onTicketSearch,
27829
27888
  onInputChange: (value, reason) => {
27830
- if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _566 => _566(value)]);
27889
+ if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _567 => _567(value)]);
27831
27890
  }
27832
27891
  }
27833
27892
  ),
@@ -27842,7 +27901,7 @@ function TimeTrackerPanel({
27842
27901
  disabled: customerLocked,
27843
27902
  disableClientFilter: !!onCustomerSearch,
27844
27903
  onInputChange: (value, reason) => {
27845
- if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _567 => _567(value)]);
27904
+ if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _568 => _568(value)]);
27846
27905
  },
27847
27906
  startAdornment: customerStartAdornment,
27848
27907
  renderOption: renderCustomerOption
@@ -27944,7 +28003,7 @@ function LastEntryRow({ entry, onClick }) {
27944
28003
  {
27945
28004
  variant: "outline",
27946
28005
  size: "icon",
27947
- onClick: () => _optionalChain([onClick, 'optionalCall', _568 => _568(entry)]),
28006
+ onClick: () => _optionalChain([onClick, 'optionalCall', _569 => _569(entry)]),
27948
28007
  disabled: !onClick,
27949
28008
  "aria-label": `Open entry: ${entry.title}`,
27950
28009
  className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
@@ -28028,28 +28087,28 @@ function HeaderButton({
28028
28087
  function TimeTrackerHeaderButton({ className, disabled }) {
28029
28088
  const ctx = useOptionalTimeTracker();
28030
28089
  const elapsedLabel = useTrackerClock({
28031
- status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _569 => _569.status]), () => ( "ready")),
28032
- runningSince: _optionalChain([ctx, 'optionalAccess', _570 => _570.runningSince]),
28033
- accumulatedMs: _optionalChain([ctx, 'optionalAccess', _571 => _571.accumulatedMs])
28090
+ status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _570 => _570.status]), () => ( "ready")),
28091
+ runningSince: _optionalChain([ctx, 'optionalAccess', _571 => _571.runningSince]),
28092
+ accumulatedMs: _optionalChain([ctx, 'optionalAccess', _572 => _572.accumulatedMs])
28034
28093
  });
28035
28094
  const layoutContainer = useAppLayoutDrawerContainer();
28036
28095
  const coordination = useAppLayoutDrawerCoordination();
28037
- const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _572 => _572.isOpen]), () => ( false));
28096
+ const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _573 => _573.isOpen]), () => ( false));
28038
28097
  const isOpenRef = _react.useRef.call(void 0, isOpen);
28039
- const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _573 => _573.close]));
28098
+ const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _574 => _574.close]));
28040
28099
  _react.useEffect.call(void 0, () => {
28041
28100
  isOpenRef.current = isOpen;
28042
- closeRef.current = _optionalChain([ctx, 'optionalAccess', _574 => _574.close]);
28101
+ closeRef.current = _optionalChain([ctx, 'optionalAccess', _575 => _575.close]);
28043
28102
  });
28044
28103
  const [selfHandle] = _react.useState.call(void 0, () => ({
28045
28104
  close: () => {
28046
- if (isOpenRef.current) _optionalChain([closeRef, 'access', _575 => _575.current, 'optionalCall', _576 => _576()]);
28105
+ if (isOpenRef.current) _optionalChain([closeRef, 'access', _576 => _576.current, 'optionalCall', _577 => _577()]);
28047
28106
  }
28048
28107
  }));
28049
28108
  _react.useEffect.call(void 0, () => {
28050
- if (isOpen) _optionalChain([coordination, 'optionalAccess', _577 => _577.notifyDrawerDidOpen, 'call', _578 => _578(selfHandle)]);
28109
+ if (isOpen) _optionalChain([coordination, 'optionalAccess', _578 => _578.notifyDrawerDidOpen, 'call', _579 => _579(selfHandle)]);
28051
28110
  }, [isOpen, coordination, selfHandle]);
28052
- _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _579 => _579.registerDrawer, 'call', _580 => _580(selfHandle)]), [coordination, selfHandle]);
28111
+ _react.useEffect.call(void 0, () => _optionalChain([coordination, 'optionalAccess', _580 => _580.registerDrawer, 'call', _581 => _581(selfHandle)]), [coordination, selfHandle]);
28053
28112
  if (!ctx) return null;
28054
28113
  const { open, close, status } = ctx;
28055
28114
  const isPaused = status === "paused";
@@ -28127,12 +28186,12 @@ function formatLastOnline(lastSeen) {
28127
28186
 
28128
28187
  // src/components/features/devices/device-name.ts
28129
28188
  function getDeviceName(device) {
28130
- return _optionalChain([device, 'optionalAccess', _581 => _581.nickname]) || _optionalChain([device, 'optionalAccess', _582 => _582.displayName]) || _optionalChain([device, 'optionalAccess', _583 => _583.hostname]) || "";
28189
+ return _optionalChain([device, 'optionalAccess', _582 => _582.nickname]) || _optionalChain([device, 'optionalAccess', _583 => _583.displayName]) || _optionalChain([device, 'optionalAccess', _584 => _584.hostname]) || "";
28131
28190
  }
28132
28191
  function matchesDeviceName(device, search = "") {
28133
28192
  const needle = search.trim().toLowerCase();
28134
28193
  if (!needle) return true;
28135
- return getDeviceName(device).toLowerCase().includes(needle) || (_nullishCoalesce(_optionalChain([device, 'optionalAccess', _584 => _584.hostname]), () => ( ""))).toLowerCase().includes(needle);
28194
+ return getDeviceName(device).toLowerCase().includes(needle) || (_nullishCoalesce(_optionalChain([device, 'optionalAccess', _585 => _585.hostname]), () => ( ""))).toLowerCase().includes(needle);
28136
28195
  }
28137
28196
 
28138
28197
  // src/components/features/devices/devices-view-config.tsx
@@ -28325,7 +28384,7 @@ var HIDDEN_DEVICE_STATUSES = [DEVICE_STATUS.ARCHIVED, DEVICE_STATUS.DELETED];
28325
28384
 
28326
28385
  var DEFAULT_CLASS_NAME = "w-6 h-6 text-ods-text-secondary";
28327
28386
  function renderDeviceTypeIcon(type, className = DEFAULT_CLASS_NAME) {
28328
- switch (_optionalChain([type, 'optionalAccess', _585 => _585.toLowerCase, 'call', _586 => _586()])) {
28387
+ switch (_optionalChain([type, 'optionalAccess', _586 => _586.toLowerCase, 'call', _587 => _587()])) {
28329
28388
  case "desktop":
28330
28389
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDW5JAMEcjs.MonitorIcon, { className });
28331
28390
  case "laptop":
@@ -28467,7 +28526,7 @@ function getDeviceActionsColumn(renderRowActions) {
28467
28526
  }
28468
28527
  function OpenDeviceButton({ device }) {
28469
28528
  const { getDeviceHref } = useDevicesViewConfig();
28470
- const href = _optionalChain([getDeviceHref, 'optionalCall', _587 => _587(device)]);
28529
+ const href = _optionalChain([getDeviceHref, 'optionalCall', _588 => _588(device)]);
28471
28530
  const open = (event) => {
28472
28531
  event.preventDefault();
28473
28532
  if (href) window.open(href, "_blank", "noopener,noreferrer");
@@ -28558,10 +28617,10 @@ function OrganizationCell({ device }) {
28558
28617
  ] });
28559
28618
  }
28560
28619
  function buildDeviceFilterOptions(deviceFilters) {
28561
- const status = (_nullishCoalesce(_optionalChain([deviceFilters, 'optionalAccess', _588 => _588.statuses]), () => ( []))).filter((s) => DEFAULT_VISIBLE_STATUSES.includes(s.value)).map((s) => ({ id: s.value, label: getDeviceStatusConfig(s.value).label, value: s.value, count: s.count }));
28562
- const os = (_nullishCoalesce(_optionalChain([deviceFilters, 'optionalAccess', _589 => _589.osTypes]), () => ( []))).map((o) => ({ id: o.value, label: o.value, value: o.value, count: o.count }));
28620
+ const status = (_nullishCoalesce(_optionalChain([deviceFilters, 'optionalAccess', _589 => _589.statuses]), () => ( []))).filter((s) => DEFAULT_VISIBLE_STATUSES.includes(s.value)).map((s) => ({ id: s.value, label: getDeviceStatusConfig(s.value).label, value: s.value, count: s.count }));
28621
+ const os = (_nullishCoalesce(_optionalChain([deviceFilters, 'optionalAccess', _590 => _590.osTypes]), () => ( []))).map((o) => ({ id: o.value, label: o.value, value: o.value, count: o.count }));
28563
28622
  const organization = uniqueById(
28564
- (_nullishCoalesce(_optionalChain([deviceFilters, 'optionalAccess', _590 => _590.organizationIds]), () => ( []))).map((org) => ({
28623
+ (_nullishCoalesce(_optionalChain([deviceFilters, 'optionalAccess', _591 => _591.organizationIds]), () => ( []))).map((org) => ({
28565
28624
  id: org.value,
28566
28625
  label: org.label,
28567
28626
  value: org.value,
@@ -28655,7 +28714,7 @@ function isCompleteTag(tag) {
28655
28714
  const i = tag.indexOf(":");
28656
28715
  return i > 0 && i < tag.length - 1;
28657
28716
  }
28658
- var scrollMainToTop = () => _optionalChain([document, 'access', _591 => _591.querySelector, 'call', _592 => _592("main"), 'optionalAccess', _593 => _593.scrollTo, 'call', _594 => _594({ top: 0, behavior: "instant" })]);
28717
+ var scrollMainToTop = () => _optionalChain([document, 'access', _592 => _592.querySelector, 'call', _593 => _593("main"), 'optionalAccess', _594 => _594.scrollTo, 'call', _595 => _595({ top: 0, behavior: "instant" })]);
28659
28718
  function useTagFilterModal({
28660
28719
  tags,
28661
28720
  deviceFilters,
@@ -28677,7 +28736,7 @@ function useTagFilterModal({
28677
28736
  }));
28678
28737
  }, [columns, isMdUp]);
28679
28738
  const tagFilterKeys = _react.useMemo.call(void 0, () => {
28680
- if (!_optionalChain([deviceFilters, 'optionalAccess', _595 => _595.tagKeys])) return [];
28739
+ if (!_optionalChain([deviceFilters, 'optionalAccess', _596 => _596.tagKeys])) return [];
28681
28740
  const grouped = /* @__PURE__ */ new Map();
28682
28741
  for (const tag of deviceFilters.tagKeys) {
28683
28742
  if (tag.key === "null") continue;
@@ -28845,7 +28904,7 @@ function DeviceSelector({
28845
28904
  const clientToggleDevice = _react.useCallback.call(void 0,
28846
28905
  (device) => {
28847
28906
  if (disabled) return;
28848
- if (_optionalChain([isDeviceDisabled, 'optionalCall', _596 => _596(device)])) return;
28907
+ if (_optionalChain([isDeviceDisabled, 'optionalCall', _597 => _597(device)])) return;
28849
28908
  const key = getDeviceKey(device);
28850
28909
  if (key === void 0) return;
28851
28910
  const current = selectedIdsRef.current;
@@ -28870,7 +28929,7 @@ function DeviceSelector({
28870
28929
  return;
28871
28930
  }
28872
28931
  if (disabled) return;
28873
- if (_optionalChain([isDeviceDisabled, 'optionalCall', _597 => _597(device)])) return;
28932
+ if (_optionalChain([isDeviceDisabled, 'optionalCall', _598 => _598(device)])) return;
28874
28933
  if (server.activeTab === "selected") {
28875
28934
  server.onRemove(device);
28876
28935
  return;
@@ -28931,7 +28990,7 @@ function DeviceSelector({
28931
28990
  const base = addAllBehavior === "replace" ? /* @__PURE__ */ new Set() : new Set(selectedIds);
28932
28991
  for (const d of client.filteredDevices) {
28933
28992
  if (!matchesVisibleFilters(d)) continue;
28934
- if (_optionalChain([isDeviceDisabled, 'optionalCall', _598 => _598(d)])) continue;
28993
+ if (_optionalChain([isDeviceDisabled, 'optionalCall', _599 => _599(d)])) continue;
28935
28994
  const key = getDeviceKey(d);
28936
28995
  if (key !== void 0) {
28937
28996
  base.add(key);
@@ -28960,7 +29019,7 @@ function DeviceSelector({
28960
29019
  const orgKey = _nullishCoalesce(d.organizationId, () => ( d.organization));
28961
29020
  if (orgKey) {
28962
29021
  const existing = orgCounts.get(orgKey);
28963
- orgCounts.set(orgKey, { label: _nullishCoalesce(d.organization, () => ( orgKey)), count: (_nullishCoalesce(_optionalChain([existing, 'optionalAccess', _599 => _599.count]), () => ( 0))) + 1 });
29022
+ orgCounts.set(orgKey, { label: _nullishCoalesce(d.organization, () => ( orgKey)), count: (_nullishCoalesce(_optionalChain([existing, 'optionalAccess', _600 => _600.count]), () => ( 0))) + 1 });
28964
29023
  }
28965
29024
  for (const tag of _nullishCoalesce(d.tags, () => ( []))) {
28966
29025
  const vc = _nullishCoalesce(tagSeen.get(tag.key), () => ( /* @__PURE__ */ new Map()));
@@ -28983,18 +29042,18 @@ function DeviceSelector({
28983
29042
  filteredCount: devices.length
28984
29043
  };
28985
29044
  }, [devices]);
28986
- const deviceFilters = _nullishCoalesce(_optionalChain([server, 'optionalAccess', _600 => _600.filterOptions]), () => ( clientDeviceFilters));
28987
- const serverFaceted = Boolean(_optionalChain([server, 'optionalAccess', _601 => _601.filterOptions]));
29045
+ const deviceFilters = _nullishCoalesce(_optionalChain([server, 'optionalAccess', _601 => _601.filterOptions]), () => ( clientDeviceFilters));
29046
+ const serverFaceted = Boolean(_optionalChain([server, 'optionalAccess', _602 => _602.filterOptions]));
28988
29047
  const filterColumns = _react.useMemo.call(void 0, () => {
28989
29048
  const columns2 = getDeviceFilterColumns(deviceFilters);
28990
29049
  if (serverFaceted) return columns2;
28991
29050
  return columns2.map((column) => ({
28992
29051
  ...column,
28993
- filterOptions: _optionalChain([column, 'access', _602 => _602.filterOptions, 'optionalAccess', _603 => _603.map, 'call', _604 => _604(({ count: _count, ...option }) => option)])
29052
+ filterOptions: _optionalChain([column, 'access', _603 => _603.filterOptions, 'optionalAccess', _604 => _604.map, 'call', _605 => _605(({ count: _count, ...option }) => option)])
28994
29053
  }));
28995
29054
  }, [deviceFilters, serverFaceted]);
28996
29055
  const statusFilterOptions = _react.useMemo.call(void 0, () => {
28997
- const options = _nullishCoalesce(_optionalChain([filterColumns, 'access', _605 => _605.find, 'call', _606 => _606((column) => column.key === "status"), 'optionalAccess', _607 => _607.filterOptions]), () => ( []));
29056
+ const options = _nullishCoalesce(_optionalChain([filterColumns, 'access', _606 => _606.find, 'call', _607 => _607((column) => column.key === "status"), 'optionalAccess', _608 => _608.filterOptions]), () => ( []));
28998
29057
  return [...options].sort((a, b) => {
28999
29058
  if (a.value === DEVICE_STATUS.ARCHIVED) return 1;
29000
29059
  if (b.value === DEVICE_STATUS.ARCHIVED) return -1;
@@ -29002,15 +29061,15 @@ function DeviceSelector({
29002
29061
  });
29003
29062
  }, [filterColumns]);
29004
29063
  const orgFilterOptions = _react.useMemo.call(void 0,
29005
- () => _nullishCoalesce(_optionalChain([filterColumns, 'access', _608 => _608.find, 'call', _609 => _609((column) => column.key === "organization"), 'optionalAccess', _610 => _610.filterOptions]), () => ( [])),
29064
+ () => _nullishCoalesce(_optionalChain([filterColumns, 'access', _609 => _609.find, 'call', _610 => _610((column) => column.key === "organization"), 'optionalAccess', _611 => _611.filterOptions]), () => ( [])),
29006
29065
  [filterColumns]
29007
29066
  );
29008
29067
  const handleSetParams = _react.useCallback.call(void 0,
29009
29068
  (params) => {
29010
29069
  setColumnFilters([
29011
- ..._optionalChain([params, 'access', _611 => _611.statuses, 'optionalAccess', _612 => _612.length]) ? [{ id: "status", value: params.statuses }] : [],
29012
- ..._optionalChain([params, 'access', _613 => _613.osTypes, 'optionalAccess', _614 => _614.length]) ? [{ id: "os", value: params.osTypes }] : [],
29013
- ..._optionalChain([params, 'access', _615 => _615.organizationIds, 'optionalAccess', _616 => _616.length]) ? [{ id: "organization", value: params.organizationIds }] : []
29070
+ ..._optionalChain([params, 'access', _612 => _612.statuses, 'optionalAccess', _613 => _613.length]) ? [{ id: "status", value: params.statuses }] : [],
29071
+ ..._optionalChain([params, 'access', _614 => _614.osTypes, 'optionalAccess', _615 => _615.length]) ? [{ id: "os", value: params.osTypes }] : [],
29072
+ ..._optionalChain([params, 'access', _616 => _616.organizationIds, 'optionalAccess', _617 => _617.length]) ? [{ id: "organization", value: params.organizationIds }] : []
29014
29073
  ]);
29015
29074
  setSelectedTags(_nullishCoalesce(params.tags, () => ( [])));
29016
29075
  },
@@ -29034,9 +29093,9 @@ function DeviceSelector({
29034
29093
  const tagOptions = _react.useMemo.call(void 0, () => selectedTags.map((t) => ({ label: t, value: t })), [selectedTags]);
29035
29094
  const tableFilters = _react.useMemo.call(void 0,
29036
29095
  () => ({
29037
- status: _nullishCoalesce(_optionalChain([columnFilters, 'access', _617 => _617.find, 'call', _618 => _618((f) => f.id === "status"), 'optionalAccess', _619 => _619.value]), () => ( [])),
29038
- os: _nullishCoalesce(_optionalChain([columnFilters, 'access', _620 => _620.find, 'call', _621 => _621((f) => f.id === "os"), 'optionalAccess', _622 => _622.value]), () => ( [])),
29039
- organization: _nullishCoalesce(_optionalChain([columnFilters, 'access', _623 => _623.find, 'call', _624 => _624((f) => f.id === "organization"), 'optionalAccess', _625 => _625.value]), () => ( []))
29096
+ status: _nullishCoalesce(_optionalChain([columnFilters, 'access', _618 => _618.find, 'call', _619 => _619((f) => f.id === "status"), 'optionalAccess', _620 => _620.value]), () => ( [])),
29097
+ os: _nullishCoalesce(_optionalChain([columnFilters, 'access', _621 => _621.find, 'call', _622 => _622((f) => f.id === "os"), 'optionalAccess', _623 => _623.value]), () => ( [])),
29098
+ organization: _nullishCoalesce(_optionalChain([columnFilters, 'access', _624 => _624.find, 'call', _625 => _625((f) => f.id === "organization"), 'optionalAccess', _626 => _626.value]), () => ( []))
29040
29099
  }),
29041
29100
  [columnFilters]
29042
29101
  );
@@ -29119,7 +29178,7 @@ function DeviceSelector({
29119
29178
  id: "actions",
29120
29179
  cell: ({ row }) => {
29121
29180
  const device = row.original;
29122
- const disabledReason = _optionalChain([isDeviceDisabled, 'optionalCall', _626 => _626(device)]);
29181
+ const disabledReason = _optionalChain([isDeviceDisabled, 'optionalCall', _627 => _627(device)]);
29123
29182
  if (disabledReason) {
29124
29183
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex w-full items-center justify-end gap-2", children: [
29125
29184
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-pre-line text-right text-ods-text-secondary text-h6 content-max-md:hidden", children: disabledReason }),
@@ -29250,7 +29309,7 @@ function DeviceSelector({
29250
29309
  showHeader && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29251
29310
  DataTable.Header,
29252
29311
  {
29253
- rightSlot: _nullishCoalesce(bulkAction, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.RowCount, { itemName: "device", totalCount: _nullishCoalesce(totalCount, () => ( _optionalChain([server, 'optionalAccess', _627 => _627.totalCount]))) })))
29312
+ rightSlot: _nullishCoalesce(bulkAction, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataTable.RowCount, { itemName: "device", totalCount: _nullishCoalesce(totalCount, () => ( _optionalChain([server, 'optionalAccess', _628 => _628.totalCount]))) })))
29254
29313
  }
29255
29314
  ),
29256
29315
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -29341,7 +29400,7 @@ function DeviceSelectorSkeleton(props) {
29341
29400
  // src/components/features/devices/device-selector/narrowing.ts
29342
29401
  var EMPTY_NARROWING = { columnFilters: [], tags: [] };
29343
29402
  function narrowingToFilter(narrowing) {
29344
- const column = (id) => _optionalChain([narrowing, 'access', _628 => _628.columnFilters, 'access', _629 => _629.find, 'call', _630 => _630((f) => f.id === id), 'optionalAccess', _631 => _631.value]);
29403
+ const column = (id) => _optionalChain([narrowing, 'access', _629 => _629.columnFilters, 'access', _630 => _630.find, 'call', _631 => _631((f) => f.id === id), 'optionalAccess', _632 => _632.value]);
29345
29404
  const tagPairs = narrowing.tags.flatMap((t) => {
29346
29405
  const i = t.indexOf(":");
29347
29406
  return i > 0 ? [{ key: t.slice(0, i), value: t.slice(i + 1) }] : [];
@@ -29350,9 +29409,9 @@ function narrowingToFilter(narrowing) {
29350
29409
  const statuses = column("status");
29351
29410
  const osTypes = column("os");
29352
29411
  const organizationIds = column("organization");
29353
- if (_optionalChain([statuses, 'optionalAccess', _632 => _632.length])) filter.statuses = statuses;
29354
- if (_optionalChain([osTypes, 'optionalAccess', _633 => _633.length])) filter.osTypes = osTypes;
29355
- if (_optionalChain([organizationIds, 'optionalAccess', _634 => _634.length])) filter.organizationIds = organizationIds;
29412
+ if (_optionalChain([statuses, 'optionalAccess', _633 => _633.length])) filter.statuses = statuses;
29413
+ if (_optionalChain([osTypes, 'optionalAccess', _634 => _634.length])) filter.osTypes = osTypes;
29414
+ if (_optionalChain([organizationIds, 'optionalAccess', _635 => _635.length])) filter.organizationIds = organizationIds;
29356
29415
  if (tagPairs.length) {
29357
29416
  filter.tagKeys = tagPairs.map((t) => t.key);
29358
29417
  filter.tagValues = tagPairs.map((t) => t.value);
@@ -29373,7 +29432,7 @@ function DevicesGrid({
29373
29432
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
29374
29433
  const { getDeviceHref } = useDevicesViewConfig();
29375
29434
  const handleDeviceClick = (device) => {
29376
- const href = device.machineId || device.id ? _optionalChain([getDeviceHref, 'optionalCall', _635 => _635(device)]) : void 0;
29435
+ const href = device.machineId || device.id ? _optionalChain([getDeviceHref, 'optionalCall', _636 => _636(device)]) : void 0;
29377
29436
  if (href) router.push(href);
29378
29437
  };
29379
29438
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-4", children: isLoading && devices.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeviceCardSkeletonGrid, { count: 12 }) : devices.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-64 items-center justify-center rounded-[6px] border border-ods-border bg-ods-card", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary", children: emptyMessage }) }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -29536,7 +29595,7 @@ function DevicesList({
29536
29595
  const onColumnFiltersChange = _react.useCallback.call(void 0,
29537
29596
  (updater) => {
29538
29597
  const next = typeof updater === "function" ? updater(columnFilters) : updater;
29539
- const pick = (id) => _nullishCoalesce(_optionalChain([next, 'access', _636 => _636.find, 'call', _637 => _637((f) => f.id === id), 'optionalAccess', _638 => _638.value]), () => ( []));
29598
+ const pick = (id) => _nullishCoalesce(_optionalChain([next, 'access', _637 => _637.find, 'call', _638 => _638((f) => f.id === id), 'optionalAccess', _639 => _639.value]), () => ( []));
29540
29599
  patch({ statuses: pick("status"), osTypes: pick("os"), organizationIds: pick("organization") });
29541
29600
  },
29542
29601
  [columnFilters, patch]
@@ -29756,7 +29815,7 @@ function DevicesPanelView({
29756
29815
  onLoadMore = noop,
29757
29816
  gridSentinelRef
29758
29817
  }) {
29759
- const gridColumns = _nullishCoalesce(filterColumns, () => ( getDeviceFilterColumns(deviceFilters).filter((column) => !_optionalChain([hideFilters, 'optionalAccess', _639 => _639.includes, 'call', _640 => _640(column.key)]))));
29818
+ const gridColumns = _nullishCoalesce(filterColumns, () => ( getDeviceFilterColumns(deviceFilters).filter((column) => !_optionalChain([hideFilters, 'optionalAccess', _640 => _640.includes, 'call', _641 => _641(column.key)]))));
29760
29819
  const list = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
29761
29820
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DevicesFilterToolbar, { ...toolbar, isLoading: loading }),
29762
29821
  viewMode === "table" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -29821,7 +29880,7 @@ function DevicesPanelView({
29821
29880
  _chunkHETQETPVcjs.TabSelector,
29822
29881
  {
29823
29882
  value: viewMode,
29824
- onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _641 => _641(value)]),
29883
+ onValueChange: (value) => _optionalChain([onViewModeChange, 'optionalCall', _642 => _642(value)]),
29825
29884
  items: DEVICE_VIEW_MODE_ITEMS,
29826
29885
  disabled: loading
29827
29886
  }
@@ -30042,9 +30101,9 @@ function SoftwareRowFields({ row, removable, onChange, onRemove, renderPackageSe
30042
30101
  value: row.pkg,
30043
30102
  onChange: (pkg) => onChange({ ...row, pkg })
30044
30103
  }) }),
30045
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([row, 'access', _642 => _642.pkg, 'optionalAccess', _643 => _643.description]), label: "Description" }),
30104
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([row, 'access', _643 => _643.pkg, 'optionalAccess', _644 => _644.description]), label: "Description" }),
30046
30105
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-end gap-[var(--spacing-system-lf)]", children: [
30047
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([row, 'access', _644 => _644.pkg, 'optionalAccess', _645 => _645.version]), label: "Current Version" }),
30106
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([row, 'access', _645 => _645.pkg, 'optionalAccess', _646 => _646.version]), label: "Current Version" }),
30048
30107
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30049
30108
  _chunkDFQYAYBHcjs.Button,
30050
30109
  {
@@ -30429,7 +30488,7 @@ function LogsTableView({
30429
30488
  meta: {
30430
30489
  width: LOG_COLUMN_WIDTHS.status,
30431
30490
  filter: {
30432
- options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _646 => _646.severities, 'access', _647 => _647.map, 'call', _648 => _648((severity) => ({
30491
+ options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _647 => _647.severities, 'access', _648 => _648.map, 'call', _649 => _649((severity) => ({
30433
30492
  id: severity,
30434
30493
  label: severity.charAt(0).toUpperCase() + severity.slice(1).toLowerCase(),
30435
30494
  value: severity
@@ -30453,7 +30512,7 @@ function LogsTableView({
30453
30512
  width: LOG_COLUMN_WIDTHS.tool,
30454
30513
  hideAt: "md",
30455
30514
  filter: {
30456
- options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _649 => _649.toolTypes, 'access', _650 => _650.map, 'call', _651 => _651((toolType) => ({
30515
+ options: _nullishCoalesce(_optionalChain([facets, 'optionalAccess', _650 => _650.toolTypes, 'access', _651 => _651.map, 'call', _652 => _652((toolType) => ({
30457
30516
  id: toolType,
30458
30517
  label: _chunkHETQETPVcjs.toToolLabel.call(void 0, toolType),
30459
30518
  value: toolType
@@ -30476,7 +30535,7 @@ function LogsTableView({
30476
30535
  meta: {
30477
30536
  width: LOG_COLUMN_WIDTHS.source,
30478
30537
  hideAt: "md",
30479
- filter: organizationLocked ? void 0 : { options: [..._nullishCoalesce(_optionalChain([facets, 'optionalAccess', _652 => _652.organizations]), () => ( []))] }
30538
+ filter: organizationLocked ? void 0 : { options: [..._nullishCoalesce(_optionalChain([facets, 'optionalAccess', _653 => _653.organizations]), () => ( []))] }
30480
30539
  }
30481
30540
  },
30482
30541
  {
@@ -30488,7 +30547,7 @@ function LogsTableView({
30488
30547
  },
30489
30548
  {
30490
30549
  id: "copy",
30491
- cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: _optionalChain([renderCopyAction, 'optionalCall', _653 => _653(row.original)]) }),
30550
+ cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: _optionalChain([renderCopyAction, 'optionalCall', _654 => _654(row.original)]) }),
30492
30551
  enableSorting: false,
30493
30552
  meta: { width: `${LOG_COLUMN_WIDTHS.action} ml-auto`, align: "right" }
30494
30553
  },
@@ -30497,7 +30556,7 @@ function LogsTableView({
30497
30556
  cell: ({ row }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-no-row-click": true, className: "pointer-events-auto flex items-center justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30498
30557
  _chunkDFQYAYBHcjs.Button,
30499
30558
  {
30500
- onClick: () => _optionalChain([onQuickView, 'optionalCall', _654 => _654(row.original)]),
30559
+ onClick: () => _optionalChain([onQuickView, 'optionalCall', _655 => _655(row.original)]),
30501
30560
  variant: "outline",
30502
30561
  size: "icon",
30503
30562
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.EyeIcon, { className: "h-5 w-5" }),
@@ -30525,14 +30584,14 @@ function LogsTableView({
30525
30584
  meta: { width: LOG_COLUMN_WIDTHS.action, hideAt: "md", align: "right" }
30526
30585
  }
30527
30586
  ];
30528
- if (!_optionalChain([hiddenColumns, 'optionalAccess', _655 => _655.length])) return all;
30587
+ if (!_optionalChain([hiddenColumns, 'optionalAccess', _656 => _656.length])) return all;
30529
30588
  return all.filter((column) => !hiddenColumns.includes(columnId(column)));
30530
30589
  }, [facets, getLogHref, organizationLocked, logIdHeader, renderCopyAction, onQuickView, hiddenColumns]);
30531
30590
  const filterGroups = _react.useMemo.call(void 0,
30532
- () => columns.filter((column) => _optionalChain([column, 'access', _656 => _656.meta, 'optionalAccess', _657 => _657.filter, 'optionalAccess', _658 => _658.options])).map((column) => ({
30591
+ () => columns.filter((column) => _optionalChain([column, 'access', _657 => _657.meta, 'optionalAccess', _658 => _658.filter, 'optionalAccess', _659 => _659.options])).map((column) => ({
30533
30592
  id: columnId(column),
30534
30593
  title: typeof column.header === "string" ? column.header : "",
30535
- options: _optionalChain([column, 'access', _659 => _659.meta, 'optionalAccess', _660 => _660.filter, 'optionalAccess', _661 => _661.options]) || []
30594
+ options: _optionalChain([column, 'access', _660 => _660.meta, 'optionalAccess', _661 => _661.filter, 'optionalAccess', _662 => _662.options]) || []
30536
30595
  })),
30537
30596
  [columns]
30538
30597
  );
@@ -30561,14 +30620,14 @@ function LogsTableView({
30561
30620
  onColumnFiltersChange: handleColumnFiltersChange
30562
30621
  });
30563
30622
  const hasActiveFilters = Object.values(filters).some((values) => values.length > 0);
30564
- const hasQuery = Boolean(search) || hasActiveFilters || Boolean(_optionalChain([dateFilter, 'optionalAccess', _662 => _662.range]));
30623
+ const hasQuery = Boolean(search) || hasActiveFilters || Boolean(_optionalChain([dateFilter, 'optionalAccess', _663 => _663.range]));
30565
30624
  const noRows = !loading && logs.length === 0;
30566
30625
  const showEmptyState = !organizationLocked && !hasQuery && noRows;
30567
30626
  const scoped = deviceScoped || organizationLocked;
30568
30627
  const scopedEmpty = scoped && noRows;
30569
30628
  const hideSearch = showEmptyState || scopedEmpty && !hasQuery;
30570
30629
  _react.useEffect.call(void 0, () => {
30571
- _optionalChain([onHideSearchChange, 'optionalCall', _663 => _663(hideSearch)]);
30630
+ _optionalChain([onHideSearchChange, 'optionalCall', _664 => _664(hideSearch)]);
30572
30631
  }, [hideSearch, onHideSearchChange]);
30573
30632
  if (showEmptyState) {
30574
30633
  const emptyProps = deviceScoped ? { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.ClipboardListIcon, {}), title: EMPTY_TITLE, description: EMPTY_DESCRIPTION } : {
@@ -31002,13 +31061,13 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
31002
31061
  const [flipTick, setFlipTick] = _react.useState.call(void 0, 0);
31003
31062
  const flipTimer = _react.useRef.call(void 0, null);
31004
31063
  const readItems = _react.useCallback.call(void 0,
31005
- () => [..._nullishCoalesce(_optionalChain([listRef, 'access', _664 => _664.current, 'optionalAccess', _665 => _665.querySelectorAll, 'call', _666 => _666(`[${SORTABLE_ITEM_ATTRIBUTE}]`)]), () => ( []))],
31064
+ () => [..._nullishCoalesce(_optionalChain([listRef, 'access', _665 => _665.current, 'optionalAccess', _666 => _666.querySelectorAll, 'call', _667 => _667(`[${SORTABLE_ITEM_ATTRIBUTE}]`)]), () => ( []))],
31006
31065
  []
31007
31066
  );
31008
31067
  const reorder = _react.useCallback.call(void 0,
31009
31068
  (from, to) => {
31010
31069
  if (from === to) return;
31011
- const label = _nullishCoalesce(_optionalChain([getItemLabelRef, 'access', _667 => _667.current, 'optionalCall', _668 => _668(from)]), () => ( "Item"));
31070
+ const label = _nullishCoalesce(_optionalChain([getItemLabelRef, 'access', _668 => _668.current, 'optionalCall', _669 => _669(from)]), () => ( "Item"));
31012
31071
  setAnnouncement(`${label} moved to position ${to + 1} of ${readItems().length}.`);
31013
31072
  onReorderRef.current(from, to);
31014
31073
  },
@@ -31096,7 +31155,7 @@ function SortableList({ onReorder, getItemLabel, disabled = false, className, ch
31096
31155
  moving.push(item);
31097
31156
  }
31098
31157
  if (moving.length === 0) return;
31099
- void _optionalChain([listRef, 'access', _669 => _669.current, 'optionalAccess', _670 => _670.offsetHeight]);
31158
+ void _optionalChain([listRef, 'access', _670 => _670.current, 'optionalAccess', _671 => _671.offsetHeight]);
31100
31159
  for (const item of moving) {
31101
31160
  item.style.transition = `transform ${DROP_MS}ms ${EASING}`;
31102
31161
  item.style.transform = "";
@@ -31133,8 +31192,8 @@ function SortableMoveButtons({ index, count, label, className }) {
31133
31192
  if (to < 0 || to >= count) return;
31134
31193
  reorder(index, to);
31135
31194
  requestAnimationFrame(() => {
31136
- if (step === -1 && to === 0) _optionalChain([downRef, 'access', _671 => _671.current, 'optionalAccess', _672 => _672.focus, 'call', _673 => _673()]);
31137
- if (step === 1 && to === count - 1) _optionalChain([upRef, 'access', _674 => _674.current, 'optionalAccess', _675 => _675.focus, 'call', _676 => _676()]);
31195
+ if (step === -1 && to === 0) _optionalChain([downRef, 'access', _672 => _672.current, 'optionalAccess', _673 => _673.focus, 'call', _674 => _674()]);
31196
+ if (step === 1 && to === count - 1) _optionalChain([upRef, 'access', _675 => _675.current, 'optionalAccess', _676 => _676.focus, 'call', _677 => _677()]);
31138
31197
  });
31139
31198
  };
31140
31199
  const subject = _nullishCoalesce(label, () => ( "item"));
@@ -31182,7 +31241,7 @@ function useSortableItem() {
31182
31241
  const [handle, setHandle] = _react.useState.call(void 0, null);
31183
31242
  const [isDragging, setIsDragging] = _react.useState.call(void 0, false);
31184
31243
  const itemRef = _react.useCallback.call(void 0, (node) => {
31185
- _optionalChain([node, 'optionalAccess', _677 => _677.setAttribute, 'call', _678 => _678(SORTABLE_ITEM_ATTRIBUTE, "")]);
31244
+ _optionalChain([node, 'optionalAccess', _678 => _678.setAttribute, 'call', _679 => _679(SORTABLE_ITEM_ATTRIBUTE, "")]);
31186
31245
  setItem(node);
31187
31246
  }, []);
31188
31247
  _react.useEffect.call(void 0, () => {
@@ -31212,7 +31271,7 @@ function useSortableItem() {
31212
31271
  if (from < 0 || to < 0 || to >= items.length) return;
31213
31272
  event.preventDefault();
31214
31273
  reorder(from, to);
31215
- requestAnimationFrame(() => _optionalChain([handle, 'optionalAccess', _679 => _679.focus, 'call', _680 => _680()]));
31274
+ requestAnimationFrame(() => _optionalChain([handle, 'optionalAccess', _680 => _680.focus, 'call', _681 => _681()]));
31216
31275
  },
31217
31276
  [inert, readItems, reorder, handle]
31218
31277
  );
@@ -31234,7 +31293,7 @@ function TicketStatusConfigList({
31234
31293
  onReorder,
31235
31294
  getItemLabel,
31236
31295
  className: _chunk3ATAYP36cjs.cn.call(void 0, "flex w-full flex-col gap-[var(--spacing-system-xs)]", className),
31237
- children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableRow, { index, count: items.length, label: _optionalChain([getItemLabel, 'optionalCall', _681 => _681(index)]), children: (args) => renderRow(item, args) }, item.id))
31296
+ children: items.map((item, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortableRow, { index, count: items.length, label: _optionalChain([getItemLabel, 'optionalCall', _682 => _682(index)]), children: (args) => renderRow(item, args) }, item.id))
31238
31297
  }
31239
31298
  );
31240
31299
  }
@@ -31363,16 +31422,16 @@ function Example({
31363
31422
  ),
31364
31423
  children: [
31365
31424
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 gap-2.5", children: [
31366
- mark(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _682 => _682.mark]), () => ( requesterMark))),
31425
+ mark(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _683 => _683.mark]), () => ( requesterMark))),
31367
31426
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
31368
- who(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _683 => _683.name]), () => ( labels.requester)), _nullishCoalesce(_optionalChain([requester, 'optionalAccess', _684 => _684.note]), () => ( labels.requesterNote))),
31427
+ who(_nullishCoalesce(_optionalChain([requester, 'optionalAccess', _684 => _684.name]), () => ( labels.requester)), _nullishCoalesce(_optionalChain([requester, 'optionalAccess', _685 => _685.note]), () => ( labels.requesterNote))),
31369
31428
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPPXR22YCcjs.TruncateText, { lines: 2, variant: "h4", className: "min-h-[2lh]", children: `\u201C${example.request}\u201D` })
31370
31429
  ] })
31371
31430
  ] }),
31372
31431
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 gap-2.5 border-t border-ods-border pt-3", children: [
31373
- mark(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _685 => _685.mark]), () => ( responderMark))),
31432
+ mark(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _686 => _686.mark]), () => ( responderMark))),
31374
31433
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
31375
- who(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _686 => _686.name]), () => ( labels.responder)), _nullishCoalesce(_optionalChain([responder, 'optionalAccess', _687 => _687.note]), () => ( labels.responderNote))),
31434
+ who(_nullishCoalesce(_optionalChain([responder, 'optionalAccess', _687 => _687.name]), () => ( labels.responder)), _nullishCoalesce(_optionalChain([responder, 'optionalAccess', _688 => _688.note]), () => ( labels.responderNote))),
31376
31435
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-start gap-2", children: [
31377
31436
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.CheckIcon, { size: 16, className: "mt-0.5 shrink-0 text-ods-flamingo-cyan" }),
31378
31437
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPPXR22YCcjs.TruncateText, { lines: 2, variant: "h6", tone: "secondary", className: "min-h-[2lh]", triggerClassName: "flex-1", children: example.outcome })
@@ -31464,7 +31523,7 @@ function CapabilityExplorer({
31464
31523
  if (next === null) return;
31465
31524
  event.preventDefault();
31466
31525
  onActiveChange(items[next].id);
31467
- _optionalChain([listRef, 'access', _688 => _688.current, 'optionalAccess', _689 => _689.querySelectorAll, 'call', _690 => _690('[role="tab"]'), 'access', _691 => _691[next], 'optionalAccess', _692 => _692.focus, 'call', _693 => _693()]);
31526
+ _optionalChain([listRef, 'access', _689 => _689.current, 'optionalAccess', _690 => _690.querySelectorAll, 'call', _691 => _691('[role="tab"]'), 'access', _692 => _692[next], 'optionalAccess', _693 => _693.focus, 'call', _694 => _694()]);
31468
31527
  };
31469
31528
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
31470
31529
  "div",
@@ -32177,4 +32236,4 @@ function CapabilityExplorer({
32177
32236
 
32178
32237
 
32179
32238
 
32180
- exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.HiddenTagsPopup = HiddenTagsPopup; exports.Autocomplete = Autocomplete; exports.timezoneLabel = timezoneLabel; exports.timezoneOptions = timezoneOptions; exports.TimezoneSelect = TimezoneSelect; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.DatePickerCalendar = DatePickerCalendar; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.SearchableSelect = SearchableSelect; exports.AssigneeDropdown = AssigneeDropdown; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoDataMessage = NoDataMessage; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; exports.AdminFormDrawer = AdminFormDrawer; exports.PlaybackToggle = PlaybackToggle; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.ClaudeEmbed = ClaudeEmbed; exports.FigmaEmbed = FigmaEmbed; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.MarkdownImage = MarkdownImage; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.MediaCarousel = MediaCarousel; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.AppStoreBadge = AppStoreBadge; exports.GooglePlayBadge = GooglePlayBadge; exports.StoreBadgeLinks = StoreBadgeLinks; exports.StatusIndicator = StatusIndicator; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.BenefitCard = BenefitCard; exports.benefitCardBorderClass = benefitCardBorderClass; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.DataAttribution = DataAttribution; exports.ComplianceBadge = ComplianceBadge; exports.ComplianceLogo = ComplianceLogo; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.PersonCell = PersonCell; exports.PeopleCell = PeopleCell; exports.TitleContentBlock = TitleContentBlock; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.PasswordInput = PasswordInput; exports.AccountDetailsFields = AccountDetailsFields; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.CompactAuthShell = CompactAuthShell; exports.LabeledDivider = LabeledDivider; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.PolicyLink = PolicyLink; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LegalLinks = LegalLinks; exports.LoginForm = LoginForm; exports.NoAccountNotice = NoAccountNotice; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.SsoJoinForm = SsoJoinForm; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.useMediaIntake = useMediaIntake; exports.MediaUploadArea = MediaUploadArea; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.CardSkeleton = CardSkeleton; exports.CardSkeletonGrid = CardSkeletonGrid; exports.AnnouncementBarSkeleton = AnnouncementBarSkeleton; exports.HeroSkeleton = HeroSkeleton; exports.SearchContainerSkeleton = SearchContainerSkeleton; exports.CategorySidebarSkeleton = CategorySidebarSkeleton; exports.BreadcrumbSkeleton = BreadcrumbSkeleton; exports.ResultsHeaderSkeleton = ResultsHeaderSkeleton; exports.TwoColumnLayoutSkeleton = TwoColumnLayoutSkeleton; exports.ArticleLayoutSkeleton = ArticleLayoutSkeleton; exports.VendorDetailLayoutSkeleton = VendorDetailLayoutSkeleton; exports.StatsSectionSkeleton = StatsSectionSkeleton; exports.BlogCardGridSkeleton = BlogCardGridSkeleton; exports.VendorGridSkeleton = VendorGridSkeleton; exports.SlackCommunitySkeleton = SlackCommunitySkeleton; exports.ContentLoadingContainer = ContentLoadingContainer; exports.useContentLoading = useContentLoading; exports.ParagraphSkeleton = ParagraphSkeleton; exports.ListSkeleton = ListSkeleton; exports.TableSkeleton = TableSkeleton; exports.FormSkeleton = FormSkeleton; exports.NavigationSkeleton = NavigationSkeleton; exports.ProfileSkeleton = ProfileSkeleton; exports.CommentSkeleton = CommentSkeleton; exports.FeatureListSkeleton = FeatureListSkeleton; exports.TimelineSkeleton = TimelineSkeleton; exports.PricingSkeleton = PricingSkeleton; exports.ProfileLoadingSkeleton = ProfileLoadingSkeleton; exports.MspProfileFormSkeleton = MspProfileFormSkeleton; exports.CategoryCardSkeleton = CategoryCardSkeleton; exports.CategoryVendorSelectorSkeleton = CategoryVendorSelectorSkeleton; exports.WizardLayoutSkeleton = WizardLayoutSkeleton; exports.MarginReportSkeleton = MarginReportSkeleton; exports.UsersGridSkeleton = UsersGridSkeleton; exports.DynamicSkeleton = DynamicSkeleton; exports.SkeletonPresets = SkeletonPresets; exports.PlatformSkeletonContainer = PlatformSkeletonContainer; exports.ProgressiveSkeleton = ProgressiveSkeleton; exports.OrganizationIconSkeleton = OrganizationIconSkeleton; exports.OrganizationCardSkeleton = OrganizationCardSkeleton; exports.OrganizationCardSkeletonGrid = OrganizationCardSkeletonGrid; exports.DeviceCardSkeleton = DeviceCardSkeleton; exports.DeviceCardSkeletonGrid = DeviceCardSkeletonGrid; exports.PushButtonSelector = PushButtonSelector; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; exports.SOCIAL_ICON_COMPONENTS = SOCIAL_ICON_COMPONENTS; exports.SocialIconRow = SocialIconRow; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.InlineWalkthroughVideo = InlineWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; exports.VideoSourceSelector = VideoSourceSelector; exports.SubtitlesEditor = SubtitlesEditor; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.APPROVAL_LEVELS = APPROVAL_LEVELS; exports.APPROVAL_LEVEL_META = APPROVAL_LEVEL_META; exports.ApprovalLevelMark = ApprovalLevelMark; exports.ApprovalLevelControl = ApprovalLevelControl; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.DataTableEmpty = DataTableEmpty; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableHeader = DataTableHeader; exports.DATA_TABLE_HEADER_LABEL_CLASS = DATA_TABLE_HEADER_LABEL_CLASS; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.PoliciesTable = PoliciesTable; exports.PolicySummaryCards = PolicySummaryCards; exports.POLICY_STATUS_CONFIG = POLICY_STATUS_CONFIG; exports.getPolicyStatus = getPolicyStatus; exports.getPolicyTableStatus = getPolicyTableStatus; exports.computePolicySummary = computePolicySummary; exports.TENANT_EMPTY_VALUE = TENANT_EMPTY_VALUE; exports.accessStateTag = accessStateTag; exports.providerMark = providerMark; exports.lastReadAt = lastReadAt; exports.formatLastRead = formatLastRead; exports.usersCountLabel = usersCountLabel; exports.TenantAccessCell = TenantAccessCell; exports.TenantCell = TenantCell; exports.TenantCustomerCell = TenantCustomerCell; exports.TENANT_COLUMNS = TENANT_COLUMNS; exports.TENANTS_TABLE_COLUMNS = TENANTS_TABLE_COLUMNS; exports.TenantsTableView = TenantsTableView; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.AppLayoutDrawerContainerContext = AppLayoutDrawerContainerContext; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayoutDrawerCoordinationContext = AppLayoutDrawerCoordinationContext; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.TICKET_APPROVAL_REQUEST_TYPE = TICKET_APPROVAL_REQUEST_TYPE; exports.MINGO_APPROVAL_REQUEST_TYPE = MINGO_APPROVAL_REQUEST_TYPE; exports.isApprovalNotificationType = isApprovalNotificationType; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.formatLastOnline = formatLastOnline; exports.getDeviceName = getDeviceName; exports.matchesDeviceName = matchesDeviceName; exports.DevicesViewConfigProvider = DevicesViewConfigProvider; exports.useDevicesViewConfig = useDevicesViewConfig; exports.useDeviceImageUrl = useDeviceImageUrl; exports.DeviceSelectionModeRadio = DeviceSelectionModeRadio; exports.getDeviceStatusConfig = getDeviceStatusConfig; exports.getDeviceOperatingSystem = getDeviceOperatingSystem; exports.DEVICE_STATUS = DEVICE_STATUS; exports.DEFAULT_VISIBLE_STATUSES = DEFAULT_VISIBLE_STATUSES; exports.DEFAULT_DASHBOARD_STATUSES = DEFAULT_DASHBOARD_STATUSES; exports.DEFAULT_DEVICES_LIST_STATUSES = DEFAULT_DEVICES_LIST_STATUSES; exports.DEVICE_ENRICHMENT_STATUSES = DEVICE_ENRICHMENT_STATUSES; exports.DEVICE_ENRICHMENT_FILTER = DEVICE_ENRICHMENT_FILTER; exports.HIDDEN_DEVICE_STATUSES = HIDDEN_DEVICE_STATUSES; exports.renderDeviceTypeIcon = renderDeviceTypeIcon; exports.DeviceTypeTile = DeviceTypeTile; exports.DeviceTagsFilterButton = DeviceTagsFilterButton; exports.DevicesFilterToolbar = DevicesFilterToolbar; exports.getDeviceActionsColumn = getDeviceActionsColumn; exports.getDeviceOpenColumn = getDeviceOpenColumn; exports.DevicesTableBody = DevicesTableBody; exports.getDeviceFilterColumns = getDeviceFilterColumns; exports.getDeviceTableColumns = getDeviceTableColumns; exports.useTagFilterModal = useTagFilterModal; exports.DeviceSelector = DeviceSelector; exports.DeviceSelectorSkeleton = DeviceSelectorSkeleton; exports.EMPTY_NARROWING = EMPTY_NARROWING; exports.narrowingToFilter = narrowingToFilter; exports.DevicesGrid = DevicesGrid; exports.DevicesGridFilters = DevicesGridFilters; exports.EMPTY_DEVICES_NARROWING = EMPTY_DEVICES_NARROWING; exports.isNarrowed = isNarrowed; exports.DevicesList = DevicesList; exports.DEVICE_VIEW_MODE_ITEMS = DEVICE_VIEW_MODE_ITEMS; exports.buildDevicePanelActions = buildDevicePanelActions; exports.IDLE_DEVICES_TOOLBAR = IDLE_DEVICES_TOOLBAR; exports.DevicesPanelView = DevicesPanelView; exports.PACKAGE_MANAGERS = PACKAGE_MANAGERS; exports.PACKAGE_MANAGER_LABEL = PACKAGE_MANAGER_LABEL; exports.PACKAGE_MANAGER_ICON = PACKAGE_MANAGER_ICON; exports.PACKAGE_MANAGER_OS = PACKAGE_MANAGER_OS; exports.packageManagerLabel = packageManagerLabel; exports.SOFTWARE_SOURCE_LABEL = SOFTWARE_SOURCE_LABEL; exports.PACKAGE_SEARCH_LABEL = PACKAGE_SEARCH_LABEL; exports.PACKAGE_SEARCH_PLACEHOLDER = PACKAGE_SEARCH_PLACEHOLDER; exports.PackageSearchFieldPlaceholder = PackageSearchFieldPlaceholder; exports.SoftwareScheduleFields = SoftwareScheduleFields; exports.SOFTWARE_ACTION_COPY = SOFTWARE_ACTION_COPY; exports.SOFTWARE_ACTION_DETAIL_TITLE = SOFTWARE_ACTION_DETAIL_TITLE; exports.softwareActionCopy = softwareActionCopy; exports.newSoftwareRow = newSoftwareRow; exports.SoftwareRowFields = SoftwareRowFields; exports.SoftwareActionForm = SoftwareActionForm; exports.LogDrawer = LogDrawer; exports.SYSTEM_SOURCE_LABEL = SYSTEM_SOURCE_LABEL; exports.logSourceLabels = logSourceLabels; exports.LogsPageView = LogsPageView; exports.LogCopyIconButton = LogCopyIconButton; exports.LOG_COLUMN_WIDTHS = LOG_COLUMN_WIDTHS; exports.ToolBadge = ToolBadge; exports.LogsTableView = LogsTableView; exports.LogsTableSkeleton = LogsTableSkeleton; exports.logSeverityVariant = logSeverityVariant; exports.KNOWLEDGE_BASE_ITEM_ICON = KNOWLEDGE_BASE_ITEM_ICON; exports.getKnowledgeBaseOpenColumn = getKnowledgeBaseOpenColumn; exports.getKnowledgeBaseColumns = getKnowledgeBaseColumns; exports.KnowledgeBaseTableBody = KnowledgeBaseTableBody; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketDetailSection = TicketDetailSection; exports.KnowledgeBaseArticleView = KnowledgeBaseArticleView; exports.SLOT_STICKINESS = SLOT_STICKINESS; exports.SortableDragHandle = SortableDragHandle; exports.SortableList = SortableList; exports.SortableMoveButtons = SortableMoveButtons; exports.useSortableItem = useSortableItem; exports.TicketStatusConfigList = TicketStatusConfigList; exports.ConversationCard = ConversationCard; exports.SnapCarouselControlsSkeleton = SnapCarouselControlsSkeleton; exports.SnapCarousel = SnapCarousel; exports.capabilityTabId = capabilityTabId; exports.CapabilityExplorerSkeleton = CapabilityExplorerSkeleton; exports.CapabilityExplorer = CapabilityExplorer; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.PHOTO_WALL_FRAME = PHOTO_WALL_FRAME; exports.photoOrientation = photoOrientation; exports.arrangePhotoWall = arrangePhotoWall; exports.PhotoWall = PhotoWall; exports.FilterPillRow = FilterPillRow; exports.LazyMount = LazyMount; exports.AppWindowFrame = AppWindowFrame; exports.PhoneFrame = PhoneFrame; exports.IncidentStatusLine = IncidentStatusLine; exports.IncidentFeed = IncidentFeed; exports.useBetweenAnchors = useBetweenAnchors; exports.StickyActionBar = StickyActionBar; exports.IconTile = IconTile;
32239
+ exports.AllowedDomainsInput = AllowedDomainsInput; exports.AnnouncementBarView = AnnouncementBarView; exports.HiddenTagsPopup = HiddenTagsPopup; exports.Autocomplete = Autocomplete; exports.timezoneLabel = timezoneLabel; exports.timezoneOptions = timezoneOptions; exports.TimezoneSelect = TimezoneSelect; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.DatePickerCalendar = DatePickerCalendar; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.JsonDetailList = JsonDetailList; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.SearchableSelect = SearchableSelect; exports.AssigneeDropdown = AssigneeDropdown; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoDataMessage = NoDataMessage; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.useConfirm = useConfirm; exports.useGuardedClose = useGuardedClose; exports.UnsavedChangesChip = UnsavedChangesChip; exports.AdminFormDrawer = AdminFormDrawer; exports.PlaybackToggle = PlaybackToggle; exports.AdminFormModal = AdminFormModal; exports.Separator = Separator; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.EmbedIframe = EmbedIframe; exports.EmbedViewerFrame = EmbedViewerFrame; exports.ClaudeEmbed = ClaudeEmbed; exports.FigmaEmbed = FigmaEmbed; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.MarkdownImage = MarkdownImage; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.MediaCarousel = MediaCarousel; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.processShortcodes = processShortcodes; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.AppStoreBadge = AppStoreBadge; exports.GooglePlayBadge = GooglePlayBadge; exports.StoreBadgeLinks = StoreBadgeLinks; exports.StatusIndicator = StatusIndicator; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.BenefitCard = BenefitCard; exports.benefitCardBorderClass = benefitCardBorderClass; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.DataAttribution = DataAttribution; exports.ComplianceBadge = ComplianceBadge; exports.ComplianceLogo = ComplianceLogo; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.SourceTooltip = SourceTooltip; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.PersonCell = PersonCell; exports.PeopleCell = PeopleCell; exports.TitleContentBlock = TitleContentBlock; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE; exports.ROW_SHELL_CLASSES = ROW_SHELL_CLASSES; exports.DataTableSkeleton = DataTableSkeleton; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.PasswordInput = PasswordInput; exports.AccountDetailsFields = AccountDetailsFields; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.CompactAuthShell = CompactAuthShell; exports.LabeledDivider = LabeledDivider; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.PolicyLink = PolicyLink; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LegalLinks = LegalLinks; exports.LoginForm = LoginForm; exports.NoAccountNotice = NoAccountNotice; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.SsoJoinForm = SsoJoinForm; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.useMediaIntake = useMediaIntake; exports.MediaUploadArea = MediaUploadArea; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.CardSkeleton = CardSkeleton; exports.CardSkeletonGrid = CardSkeletonGrid; exports.AnnouncementBarSkeleton = AnnouncementBarSkeleton; exports.HeroSkeleton = HeroSkeleton; exports.SearchContainerSkeleton = SearchContainerSkeleton; exports.CategorySidebarSkeleton = CategorySidebarSkeleton; exports.BreadcrumbSkeleton = BreadcrumbSkeleton; exports.ResultsHeaderSkeleton = ResultsHeaderSkeleton; exports.TwoColumnLayoutSkeleton = TwoColumnLayoutSkeleton; exports.ArticleLayoutSkeleton = ArticleLayoutSkeleton; exports.VendorDetailLayoutSkeleton = VendorDetailLayoutSkeleton; exports.StatsSectionSkeleton = StatsSectionSkeleton; exports.BlogCardGridSkeleton = BlogCardGridSkeleton; exports.VendorGridSkeleton = VendorGridSkeleton; exports.SlackCommunitySkeleton = SlackCommunitySkeleton; exports.ContentLoadingContainer = ContentLoadingContainer; exports.useContentLoading = useContentLoading; exports.ParagraphSkeleton = ParagraphSkeleton; exports.ListSkeleton = ListSkeleton; exports.TableSkeleton = TableSkeleton; exports.FormSkeleton = FormSkeleton; exports.NavigationSkeleton = NavigationSkeleton; exports.ProfileSkeleton = ProfileSkeleton; exports.CommentSkeleton = CommentSkeleton; exports.FeatureListSkeleton = FeatureListSkeleton; exports.TimelineSkeleton = TimelineSkeleton; exports.PricingSkeleton = PricingSkeleton; exports.ProfileLoadingSkeleton = ProfileLoadingSkeleton; exports.MspProfileFormSkeleton = MspProfileFormSkeleton; exports.CategoryCardSkeleton = CategoryCardSkeleton; exports.CategoryVendorSelectorSkeleton = CategoryVendorSelectorSkeleton; exports.WizardLayoutSkeleton = WizardLayoutSkeleton; exports.MarginReportSkeleton = MarginReportSkeleton; exports.UsersGridSkeleton = UsersGridSkeleton; exports.DynamicSkeleton = DynamicSkeleton; exports.SkeletonPresets = SkeletonPresets; exports.PlatformSkeletonContainer = PlatformSkeletonContainer; exports.ProgressiveSkeleton = ProgressiveSkeleton; exports.OrganizationIconSkeleton = OrganizationIconSkeleton; exports.OrganizationCardSkeleton = OrganizationCardSkeleton; exports.OrganizationCardSkeletonGrid = OrganizationCardSkeletonGrid; exports.DeviceCardSkeleton = DeviceCardSkeleton; exports.DeviceCardSkeletonGrid = DeviceCardSkeletonGrid; exports.PushButtonSelector = PushButtonSelector; exports.SelectButton = SelectButton; exports.ConfidenceBadge = ConfidenceBadge; exports.SEOEditorPreview = SEOEditorPreview; exports.SOCIAL_ICON_COMPONENTS = SOCIAL_ICON_COMPONENTS; exports.SocialIconRow = SocialIconRow; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.FloatingWalkthroughVideo = FloatingWalkthroughVideo; exports.InlineWalkthroughVideo = InlineWalkthroughVideo; exports.useWalkthroughVideo = useWalkthroughVideo; exports.VideoSourceSelector = VideoSourceSelector; exports.SubtitlesEditor = SubtitlesEditor; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.APPROVAL_LEVELS = APPROVAL_LEVELS; exports.APPROVAL_LEVEL_META = APPROVAL_LEVEL_META; exports.ApprovalLevelView = ApprovalLevelView; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.DataTableEmpty = DataTableEmpty; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableHeader = DataTableHeader; exports.DATA_TABLE_HEADER_LABEL_CLASS = DATA_TABLE_HEADER_LABEL_CLASS; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.PoliciesTable = PoliciesTable; exports.PolicySummaryCards = PolicySummaryCards; exports.POLICY_STATUS_CONFIG = POLICY_STATUS_CONFIG; exports.getPolicyStatus = getPolicyStatus; exports.getPolicyTableStatus = getPolicyTableStatus; exports.computePolicySummary = computePolicySummary; exports.TENANT_EMPTY_VALUE = TENANT_EMPTY_VALUE; exports.accessStateTag = accessStateTag; exports.providerMark = providerMark; exports.lastReadAt = lastReadAt; exports.formatLastRead = formatLastRead; exports.usersCountLabel = usersCountLabel; exports.TenantAccessCell = TenantAccessCell; exports.TenantCell = TenantCell; exports.TenantCustomerCell = TenantCustomerCell; exports.TENANT_COLUMNS = TENANT_COLUMNS; exports.TENANTS_TABLE_COLUMNS = TENANTS_TABLE_COLUMNS; exports.TenantsTableView = TenantsTableView; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.AppLayoutDrawerContainerContext = AppLayoutDrawerContainerContext; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayoutDrawerCoordinationContext = AppLayoutDrawerCoordinationContext; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.TICKET_APPROVAL_REQUEST_TYPE = TICKET_APPROVAL_REQUEST_TYPE; exports.MINGO_APPROVAL_REQUEST_TYPE = MINGO_APPROVAL_REQUEST_TYPE; exports.isApprovalNotificationType = isApprovalNotificationType; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.UnreadDot = UnreadDot; exports.UnreadCountBadge = UnreadCountBadge; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.formatLastOnline = formatLastOnline; exports.getDeviceName = getDeviceName; exports.matchesDeviceName = matchesDeviceName; exports.DevicesViewConfigProvider = DevicesViewConfigProvider; exports.useDevicesViewConfig = useDevicesViewConfig; exports.useDeviceImageUrl = useDeviceImageUrl; exports.DeviceSelectionModeRadio = DeviceSelectionModeRadio; exports.getDeviceStatusConfig = getDeviceStatusConfig; exports.getDeviceOperatingSystem = getDeviceOperatingSystem; exports.DEVICE_STATUS = DEVICE_STATUS; exports.DEFAULT_VISIBLE_STATUSES = DEFAULT_VISIBLE_STATUSES; exports.DEFAULT_DASHBOARD_STATUSES = DEFAULT_DASHBOARD_STATUSES; exports.DEFAULT_DEVICES_LIST_STATUSES = DEFAULT_DEVICES_LIST_STATUSES; exports.DEVICE_ENRICHMENT_STATUSES = DEVICE_ENRICHMENT_STATUSES; exports.DEVICE_ENRICHMENT_FILTER = DEVICE_ENRICHMENT_FILTER; exports.HIDDEN_DEVICE_STATUSES = HIDDEN_DEVICE_STATUSES; exports.renderDeviceTypeIcon = renderDeviceTypeIcon; exports.DeviceTypeTile = DeviceTypeTile; exports.DeviceTagsFilterButton = DeviceTagsFilterButton; exports.DevicesFilterToolbar = DevicesFilterToolbar; exports.getDeviceActionsColumn = getDeviceActionsColumn; exports.getDeviceOpenColumn = getDeviceOpenColumn; exports.DevicesTableBody = DevicesTableBody; exports.getDeviceFilterColumns = getDeviceFilterColumns; exports.getDeviceTableColumns = getDeviceTableColumns; exports.useTagFilterModal = useTagFilterModal; exports.DeviceSelector = DeviceSelector; exports.DeviceSelectorSkeleton = DeviceSelectorSkeleton; exports.EMPTY_NARROWING = EMPTY_NARROWING; exports.narrowingToFilter = narrowingToFilter; exports.DevicesGrid = DevicesGrid; exports.DevicesGridFilters = DevicesGridFilters; exports.EMPTY_DEVICES_NARROWING = EMPTY_DEVICES_NARROWING; exports.isNarrowed = isNarrowed; exports.DevicesList = DevicesList; exports.DEVICE_VIEW_MODE_ITEMS = DEVICE_VIEW_MODE_ITEMS; exports.buildDevicePanelActions = buildDevicePanelActions; exports.IDLE_DEVICES_TOOLBAR = IDLE_DEVICES_TOOLBAR; exports.DevicesPanelView = DevicesPanelView; exports.PACKAGE_MANAGERS = PACKAGE_MANAGERS; exports.PACKAGE_MANAGER_LABEL = PACKAGE_MANAGER_LABEL; exports.PACKAGE_MANAGER_ICON = PACKAGE_MANAGER_ICON; exports.PACKAGE_MANAGER_OS = PACKAGE_MANAGER_OS; exports.packageManagerLabel = packageManagerLabel; exports.SOFTWARE_SOURCE_LABEL = SOFTWARE_SOURCE_LABEL; exports.PACKAGE_SEARCH_LABEL = PACKAGE_SEARCH_LABEL; exports.PACKAGE_SEARCH_PLACEHOLDER = PACKAGE_SEARCH_PLACEHOLDER; exports.PackageSearchFieldPlaceholder = PackageSearchFieldPlaceholder; exports.SoftwareScheduleFields = SoftwareScheduleFields; exports.SOFTWARE_ACTION_COPY = SOFTWARE_ACTION_COPY; exports.SOFTWARE_ACTION_DETAIL_TITLE = SOFTWARE_ACTION_DETAIL_TITLE; exports.softwareActionCopy = softwareActionCopy; exports.newSoftwareRow = newSoftwareRow; exports.SoftwareRowFields = SoftwareRowFields; exports.SoftwareActionForm = SoftwareActionForm; exports.LogDrawer = LogDrawer; exports.SYSTEM_SOURCE_LABEL = SYSTEM_SOURCE_LABEL; exports.logSourceLabels = logSourceLabels; exports.LogsPageView = LogsPageView; exports.LogCopyIconButton = LogCopyIconButton; exports.LOG_COLUMN_WIDTHS = LOG_COLUMN_WIDTHS; exports.ToolBadge = ToolBadge; exports.LogsTableView = LogsTableView; exports.LogsTableSkeleton = LogsTableSkeleton; exports.logSeverityVariant = logSeverityVariant; exports.KNOWLEDGE_BASE_ITEM_ICON = KNOWLEDGE_BASE_ITEM_ICON; exports.getKnowledgeBaseOpenColumn = getKnowledgeBaseOpenColumn; exports.getKnowledgeBaseColumns = getKnowledgeBaseColumns; exports.KnowledgeBaseTableBody = KnowledgeBaseTableBody; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketDetailSection = TicketDetailSection; exports.KnowledgeBaseArticleView = KnowledgeBaseArticleView; exports.SLOT_STICKINESS = SLOT_STICKINESS; exports.SortableDragHandle = SortableDragHandle; exports.SortableList = SortableList; exports.SortableMoveButtons = SortableMoveButtons; exports.useSortableItem = useSortableItem; exports.TicketStatusConfigList = TicketStatusConfigList; exports.ConversationCard = ConversationCard; exports.SnapCarouselControlsSkeleton = SnapCarouselControlsSkeleton; exports.SnapCarousel = SnapCarousel; exports.capabilityTabId = capabilityTabId; exports.CapabilityExplorerSkeleton = CapabilityExplorerSkeleton; exports.CapabilityExplorer = CapabilityExplorer; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.formatTestRunDuration = formatTestRunDuration; exports.TestResultsSkeleton = TestResultsSkeleton; exports.TestResultsTable = TestResultsTable; exports.TestRunErrorBanner = TestRunErrorBanner; exports.TestRunResults = TestRunResults; exports.TimingStat = TimingStat; exports.TestRunStatusStat = TestRunStatusStat; exports.useTestRunState = useTestRunState; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.renderTicketStatusOption = renderTicketStatusOption; exports.renderTicketAssigneeOption = renderTicketAssigneeOption; exports.TakeOverTicketModal = TakeOverTicketModal; exports.ReopenTicketModal = ReopenTicketModal; exports.ReopenTicketRequestModal = ReopenTicketRequestModal; exports.PHOTO_WALL_FRAME = PHOTO_WALL_FRAME; exports.photoOrientation = photoOrientation; exports.arrangePhotoWall = arrangePhotoWall; exports.PhotoWall = PhotoWall; exports.FilterPillRow = FilterPillRow; exports.LazyMount = LazyMount; exports.AppWindowFrame = AppWindowFrame; exports.PhoneFrame = PhoneFrame; exports.AnalyzingState = AnalyzingState; exports.IncidentStatusLine = IncidentStatusLine; exports.IncidentFeed = IncidentFeed; exports.useBetweenAnchors = useBetweenAnchors; exports.StickyActionBar = StickyActionBar; exports.IconTile = IconTile;