@flamingo-stack/openframe-frontend-core 0.0.742 → 0.0.743

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 (91) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-WIHHA54J.cjs → chunk-4A6OF4HI.cjs} +44 -44
  3. package/dist/{chunk-OBODY7F3.cjs → chunk-4N7KGOBS.cjs} +3 -3
  4. package/dist/{chunk-L34TKFTS.cjs → chunk-6XCQXGQA.cjs} +16 -16
  5. package/dist/{chunk-32Q7K5OP.cjs → chunk-7YDF3QBN.cjs} +116 -115
  6. package/dist/{chunk-PS6T65KA.cjs → chunk-BM6JZRVD.cjs} +65 -65
  7. package/dist/{chunk-R6SCSV2I.cjs → chunk-BNTELSHZ.cjs} +81 -81
  8. package/dist/{chunk-YQGDXH3M.cjs → chunk-GAGNKWOC.cjs} +2 -2
  9. package/dist/{chunk-HIRVNBX5.cjs → chunk-IRWJKVVZ.cjs} +16 -16
  10. package/dist/{chunk-XAA5EZ5T.cjs → chunk-JGZEHBBD.cjs} +6 -6
  11. package/dist/{chunk-5MH6BRPY.cjs → chunk-LJ46XYYP.cjs} +24 -12
  12. package/dist/{chunk-HDBY2URA.cjs → chunk-MLZKPDPZ.cjs} +31 -31
  13. package/dist/{chunk-4LDU32OB.cjs → chunk-MT7ELGCV.cjs} +4 -4
  14. package/dist/{chunk-UWHCRIQQ.cjs → chunk-NGUJVM6O.cjs} +13 -13
  15. package/dist/{chunk-DNFSMVXJ.cjs → chunk-SQHTX5XP.cjs} +12 -12
  16. package/dist/{chunk-T433HSL6.cjs → chunk-TKASH5YC.cjs} +33 -33
  17. package/dist/{chunk-ZIFYSLIM.cjs → chunk-UL6ZZSL4.cjs} +4 -4
  18. package/dist/{chunk-4PKORVOX.cjs → chunk-WCY35GB5.cjs} +441 -406
  19. package/dist/{chunk-UZLRSFGG.cjs → chunk-XJO5ZHO6.cjs} +30 -30
  20. package/dist/{chunk-3LW43GIJ.cjs → chunk-Y2FN3E32.cjs} +4 -4
  21. package/dist/{chunk-54EA4RLX.cjs → chunk-YDFKFLDQ.cjs} +3 -3
  22. package/dist/{chunk-BI3XBCQX.cjs → chunk-YIOWV7LS.cjs} +2 -2
  23. package/dist/{chunk-H3UA7UY5.cjs → chunk-YJRMCFX3.cjs} +2 -2
  24. package/dist/{chunk-Z2DQYKZA.cjs → chunk-YWMUZLU2.cjs} +69 -69
  25. package/dist/{chunk-ISJXKKYW.cjs → chunk-ZP5DFF3Q.cjs} +11 -11
  26. package/dist/{cloud-tenants-6ICAL3HO.cjs → cloud-tenants-DZC3ACG6.cjs} +7 -7
  27. package/dist/components/case-studies/index.cjs +19 -19
  28. package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts.map +1 -1
  29. package/dist/components/chat/entity-cards/onboarding-guide-card.js +22 -12
  30. package/dist/components/chat/index.cjs +5 -5
  31. package/dist/components/chat/tool-execution-display.d.ts.map +1 -1
  32. package/dist/components/chat/tool-execution-display.js +5 -4
  33. package/dist/components/contact/index.cjs +8 -8
  34. package/dist/components/docs/index.cjs +11 -11
  35. package/dist/components/embeds/index.cjs +8 -8
  36. package/dist/components/faq/index.cjs +9 -9
  37. package/dist/components/features/index.cjs +7 -7
  38. package/dist/components/features/scripts/schedule-form/schedule-interval-input.d.ts +1 -1
  39. package/dist/components/features/scripts/schedule-form/schedule-interval-input.d.ts.map +1 -1
  40. package/dist/components/features/scripts/schedule-form/schedule-interval-input.js +15 -13
  41. package/dist/components/features/scripts/schedule-form/schedule-offline-fields.d.ts.map +1 -1
  42. package/dist/components/features/scripts/schedule-form/schedule-offline-fields.js +9 -7
  43. package/dist/components/help-center-pages/index.cjs +101 -101
  44. package/dist/components/index.cjs +59 -57
  45. package/dist/components/meeting-scheduler/booking-form.d.ts +11 -1
  46. package/dist/components/meeting-scheduler/booking-form.d.ts.map +1 -1
  47. package/dist/components/meeting-scheduler/booking-form.js +15 -3
  48. package/dist/components/meeting-scheduler/index.cjs +408 -114
  49. package/dist/components/meeting-scheduler/index.d.ts +16 -1
  50. package/dist/components/meeting-scheduler/index.d.ts.map +1 -1
  51. package/dist/components/meeting-scheduler/index.js +157 -5
  52. package/dist/components/meeting-scheduler/modal-header.d.ts +27 -0
  53. package/dist/components/meeting-scheduler/modal-header.d.ts.map +1 -0
  54. package/dist/components/meeting-scheduler/modal-header.js +104 -0
  55. package/dist/components/meeting-scheduler/slot-picker.d.ts +13 -2
  56. package/dist/components/meeting-scheduler/slot-picker.d.ts.map +1 -1
  57. package/dist/components/meeting-scheduler/slot-picker.js +112 -73
  58. package/dist/components/navigation/index.cjs +10 -10
  59. package/dist/components/onboarding-guides/index.cjs +10 -10
  60. package/dist/components/product-demo/index.cjs +7 -7
  61. package/dist/components/related-content/index.cjs +5 -5
  62. package/dist/components/shared/product-release/product-release-card.d.ts.map +1 -1
  63. package/dist/components/shared/product-release/product-release-card.js +2 -0
  64. package/dist/components/tickets/index.cjs +13 -13
  65. package/dist/components/ui/index.cjs +9 -7
  66. package/dist/components/ui/radio-group.d.ts +6 -0
  67. package/dist/components/ui/radio-group.d.ts.map +1 -1
  68. package/dist/components/ui/radio-group.js +65 -58
  69. package/dist/components/ui/tab-navigation.d.ts +19 -1
  70. package/dist/components/ui/tab-navigation.d.ts.map +1 -1
  71. package/dist/components/ui/tab-navigation.js +32 -8
  72. package/dist/{devices-OFP2IBKN.cjs → devices-MFGE2JQV.cjs} +8 -8
  73. package/dist/{embeddable-chat-4C22MGNC.cjs → embeddable-chat-7ZEGCDVF.cjs} +71 -71
  74. package/dist/index.cjs +13 -11
  75. package/dist/{knowledge-KKBCSNUA.cjs → knowledge-7VPS2ZBU.cjs} +8 -8
  76. package/dist/{logs-X2GRNO57.cjs → logs-M3QPAUH7.cjs} +15 -15
  77. package/dist/{policies-35BXKB6P.cjs → policies-UAVE6X62.cjs} +11 -11
  78. package/dist/{scripts-KQYVQOLU.cjs → scripts-EDQ3IQKW.cjs} +12 -12
  79. package/dist/{software-update-ED33WSKT.cjs → software-update-B2MZVNPK.cjs} +10 -10
  80. package/package.json +1 -1
  81. package/src/components/chat/entity-cards/onboarding-guide-card.tsx +8 -1
  82. package/src/components/chat/tool-execution-display.tsx +21 -10
  83. package/src/components/features/scripts/schedule-form/schedule-interval-input.tsx +20 -13
  84. package/src/components/features/scripts/schedule-form/schedule-offline-fields.tsx +9 -5
  85. package/src/components/meeting-scheduler/booking-form.tsx +29 -3
  86. package/src/components/meeting-scheduler/index.tsx +224 -3
  87. package/src/components/meeting-scheduler/modal-header.tsx +145 -0
  88. package/src/components/meeting-scheduler/slot-picker.tsx +72 -8
  89. package/src/components/shared/product-release/product-release-card.tsx +2 -0
  90. package/src/components/ui/radio-group.tsx +51 -36
  91. package/src/components/ui/tab-navigation.tsx +54 -5
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
2
2
 
3
3
 
4
- var _chunkYQGDXH3Mcjs = require('./chunk-YQGDXH3M.cjs');
4
+ var _chunkGAGNKWOCcjs = require('./chunk-GAGNKWOC.cjs');
5
5
 
6
6
 
7
7
 
@@ -14,7 +14,7 @@ var _chunkYQGDXH3Mcjs = require('./chunk-YQGDXH3M.cjs');
14
14
 
15
15
 
16
16
 
17
- var _chunkXAA5EZ5Tcjs = require('./chunk-XAA5EZ5T.cjs');
17
+ var _chunkJGZEHBBDcjs = require('./chunk-JGZEHBBD.cjs');
18
18
 
19
19
 
20
20
 
@@ -39,7 +39,7 @@ var _chunkXAA5EZ5Tcjs = require('./chunk-XAA5EZ5T.cjs');
39
39
 
40
40
 
41
41
 
42
- var _chunk5MH6BRPYcjs = require('./chunk-5MH6BRPY.cjs');
42
+ var _chunkLJ46XYYPcjs = require('./chunk-LJ46XYYP.cjs');
43
43
 
44
44
 
45
45
  var _chunkBLH2SFOOcjs = require('./chunk-BLH2SFOO.cjs');
@@ -440,13 +440,13 @@ function cardEntry(definition) {
440
440
  }
441
441
  function programEntry(configKey) {
442
442
  return cardEntry({
443
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.ProgramCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
443
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.ProgramCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
444
444
  decode: decodeProgramRow,
445
445
  render: (item, ctx) => {
446
446
  const config = _optionalChain([ctx, 'access', _2 => _2.extras, 'optionalAccess', _3 => _3.programConfigs, 'optionalAccess', _4 => _4[configKey]]);
447
447
  if (!config) return null;
448
448
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
449
- _chunk5MH6BRPYcjs.ProgramCard,
449
+ _chunkLJ46XYYPcjs.ProgramCard,
450
450
  {
451
451
  config,
452
452
  item,
@@ -463,10 +463,10 @@ function programEntry(configKey) {
463
463
  }
464
464
  function roadmapEntry(cardType) {
465
465
  return cardEntry({
466
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.RoadmapCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
466
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.RoadmapCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
467
467
  decode: decodeRoadmapRow,
468
468
  render: (item, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
469
- _chunk5MH6BRPYcjs.RoadmapCard,
469
+ _chunkLJ46XYYPcjs.RoadmapCard,
470
470
  {
471
471
  item,
472
472
  href: ctx.href,
@@ -483,10 +483,10 @@ function roadmapEntry(cardType) {
483
483
  }
484
484
  var RELATED_CARD_REGISTRY = {
485
485
  blog_post_existing: cardEntry({
486
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.BlogCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
486
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.BlogCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
487
487
  decode: decodeBlogRow,
488
488
  render: (post, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
489
- _chunk5MH6BRPYcjs.BlogCard,
489
+ _chunkLJ46XYYPcjs.BlogCard,
490
490
  {
491
491
  post,
492
492
  size: ctx.legacySize,
@@ -498,10 +498,10 @@ var RELATED_CARD_REGISTRY = {
498
498
  )
499
499
  }),
500
500
  case_study: cardEntry({
501
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.CaseStudyCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
501
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.CaseStudyCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
502
502
  decode: decodeCaseStudyRow,
503
503
  render: (study, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
504
- _chunk5MH6BRPYcjs.CaseStudyCard,
504
+ _chunkLJ46XYYPcjs.CaseStudyCard,
505
505
  {
506
506
  study,
507
507
  size: ctx.legacySize,
@@ -513,10 +513,10 @@ var RELATED_CARD_REGISTRY = {
513
513
  )
514
514
  }),
515
515
  customer_interview: cardEntry({
516
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.CustomerInterviewCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
516
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.CustomerInterviewCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
517
517
  decode: decodeCustomerInterviewRow,
518
518
  render: (interview, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
519
- _chunk5MH6BRPYcjs.CustomerInterviewCard,
519
+ _chunkLJ46XYYPcjs.CustomerInterviewCard,
520
520
  {
521
521
  interview,
522
522
  size: ctx.legacySize,
@@ -534,13 +534,13 @@ var RELATED_CARD_REGISTRY = {
534
534
  * record, and the three props the rail sets itself are read off it.
535
535
  */
536
536
  product_release: cardEntry({
537
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.ProductReleaseCardSkeleton, { size: size === "sm" ? "sm" : "lg" }),
537
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.ProductReleaseCardSkeleton, { size: size === "sm" ? "sm" : "lg" }),
538
538
  decode: asRecord,
539
539
  render: (release, ctx) => {
540
- const buildReleaseProps = _nullishCoalesce(_optionalChain([ctx, 'access', _5 => _5.extras, 'optionalAccess', _6 => _6.buildProductReleaseCardProps]), () => ( _chunk5MH6BRPYcjs.buildProductReleaseCardProps));
540
+ const buildReleaseProps = _nullishCoalesce(_optionalChain([ctx, 'access', _5 => _5.extras, 'optionalAccess', _6 => _6.buildProductReleaseCardProps]), () => ( _chunkLJ46XYYPcjs.buildProductReleaseCardProps));
541
541
  const releaseProps = buildReleaseProps(release);
542
542
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
543
- _chunk5MH6BRPYcjs.ProductReleaseCard,
543
+ _chunkLJ46XYYPcjs.ProductReleaseCard,
544
544
  {
545
545
  size: ctx.size === "sm" ? "sm" : "lg",
546
546
  title: str(release, "title"),
@@ -556,10 +556,10 @@ var RELATED_CARD_REGISTRY = {
556
556
  webinar: programEntry("webinar"),
557
557
  event: programEntry("event"),
558
558
  investor_update: cardEntry({
559
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.InvestorUpdateCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
559
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.InvestorUpdateCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
560
560
  decode: decodeInvestorUpdateRow,
561
561
  render: (update, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
562
- _chunk5MH6BRPYcjs.InvestorUpdateCard,
562
+ _chunkLJ46XYYPcjs.InvestorUpdateCard,
563
563
  {
564
564
  update,
565
565
  size: ctx.legacySize,
@@ -574,10 +574,10 @@ var RELATED_CARD_REGISTRY = {
574
574
  * step-numbered 'default' variant is for the guide detail page's "More in
575
575
  * section" rail, not this full-width row. */
576
576
  onboarding_guide: cardEntry({
577
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.OnboardingGuideCardSkeleton, { size: size === "sm" ? "sm" : "catalog" }),
577
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.OnboardingGuideCardSkeleton, { size: size === "sm" ? "sm" : "catalog" }),
578
578
  decode: decodeOnboardingGuideRow,
579
579
  render: (guide, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
580
- _chunk5MH6BRPYcjs.OnboardingGuideCard,
580
+ _chunkLJ46XYYPcjs.OnboardingGuideCard,
581
581
  {
582
582
  guide,
583
583
  size: ctx.size === "sm" ? "sm" : "catalog",
@@ -594,10 +594,10 @@ var RELATED_CARD_REGISTRY = {
594
594
  * href: an object with `href: undefined` is still truthy and would wrap the
595
595
  * card in a dead <a>. */
596
596
  what_i_shipped: cardEntry({
597
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXAA5EZ5Tcjs.WhatIShippedCardSkeleton, {}),
597
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJGZEHBBDcjs.WhatIShippedCardSkeleton, {}),
598
598
  decode: decodeEmployeeEntryRow,
599
599
  render: (entry, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
600
- _chunkXAA5EZ5Tcjs.WhatIShippedCard,
600
+ _chunkJGZEHBBDcjs.WhatIShippedCard,
601
601
  {
602
602
  entry,
603
603
  placeholderUrl: ctx.placeholderUrl,
@@ -607,10 +607,10 @@ var RELATED_CARD_REGISTRY = {
607
607
  }),
608
608
  /** Same shared employee-entry shape + anchor contract as What I Shipped. */
609
609
  how_i_work: cardEntry({
610
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXAA5EZ5Tcjs.HowIWorkCardSkeleton, {}),
610
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJGZEHBBDcjs.HowIWorkCardSkeleton, {}),
611
611
  decode: decodeEmployeeEntryRow,
612
612
  render: (entry, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
613
- _chunkXAA5EZ5Tcjs.HowIWorkCard,
613
+ _chunkJGZEHBBDcjs.HowIWorkCard,
614
614
  {
615
615
  entry,
616
616
  placeholderUrl: ctx.placeholderUrl,
@@ -620,10 +620,10 @@ var RELATED_CARD_REGISTRY = {
620
620
  }),
621
621
  /** Same shared employee-entry shape + anchor contract as What I Shipped. */
622
622
  ai_prompt: cardEntry({
623
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXAA5EZ5Tcjs.AiPromptCardSkeleton, {}),
623
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJGZEHBBDcjs.AiPromptCardSkeleton, {}),
624
624
  decode: decodeEmployeeEntryRow,
625
625
  render: (entry, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
626
- _chunkXAA5EZ5Tcjs.AiPromptCard,
626
+ _chunkJGZEHBBDcjs.AiPromptCard,
627
627
  {
628
628
  entry,
629
629
  placeholderUrl: ctx.placeholderUrl,
@@ -644,7 +644,7 @@ function DefaultLinkPropsProvider({
644
644
  children
645
645
  }) {
646
646
  if (!href) return children(null);
647
- const newTab = _chunk5MH6BRPYcjs.decideNewTab.call(void 0, { href, targetPlatform, currentSource: "" });
647
+ const newTab = _chunkLJ46XYYPcjs.decideNewTab.call(void 0, { href, targetPlatform, currentSource: "" });
648
648
  return children(newTab ? { href, target: "_blank", rel: "noopener noreferrer" } : { href });
649
649
  }
650
650
  function defaultResolveHref(ref) {
@@ -702,9 +702,9 @@ function useGroupItems(type, refs, buildUrl) {
702
702
  const url = ids.length > 0 ? buildUrl(type, ids) : null;
703
703
  const [pages, setPages] = _react.useState.call(void 0, () => /* @__PURE__ */ new Map());
704
704
  const cached = url !== null ? pages.get(url) : void 0;
705
- const { data, dataUrl, error } = _chunkXAA5EZ5Tcjs.useSelfFetch.call(void 0, cached ? null : url);
705
+ const { data, dataUrl, error } = _chunkJGZEHBBDcjs.useSelfFetch.call(void 0, cached ? null : url);
706
706
  if (data != null && dataUrl !== null && !pages.has(dataUrl)) {
707
- setPages(new Map(pages).set(dataUrl, _chunk5MH6BRPYcjs.extractItems.call(void 0, data)));
707
+ setPages(new Map(pages).set(dataUrl, _chunkLJ46XYYPcjs.extractItems.call(void 0, data)));
708
708
  }
709
709
  if (url === null) return { items: null, isLoading: false };
710
710
  return { items: _nullishCoalesce(cached, () => ( (error ? [] : null))), isLoading: !cached && !error };
@@ -713,7 +713,7 @@ function gridClassFor(columns) {
713
713
  return columns === 3 ? "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6" : "grid grid-cols-1 sm:grid-cols-2 gap-6";
714
714
  }
715
715
  function resolveGroupConfig(type) {
716
- return _nullishCoalesce(_chunkXAA5EZ5Tcjs.CONTENT_REF_GROUPS[type], () => ( {
716
+ return _nullishCoalesce(_chunkJGZEHBBDcjs.CONTENT_REF_GROUPS[type], () => ( {
717
717
  label: type,
718
718
  order: 999,
719
719
  layout: "grid",
@@ -745,7 +745,7 @@ function ContentGroup({
745
745
  const totalGroupPages = _chunkBLH2SFOOcjs.pageCount.call(void 0, refs.length, GROUP_PAGE_SIZE);
746
746
  const pageRefs = refs.slice((page - 1) * GROUP_PAGE_SIZE, page * GROUP_PAGE_SIZE);
747
747
  const { items, isLoading } = useGroupItems(type, pageRefs, buildUrl);
748
- const groupPagination = totalGroupPages > 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYQGDXH3Mcjs.Pagination, { currentPage: page, totalPages: totalGroupPages, onPageChange: setPage }) : null;
748
+ const groupPagination = totalGroupPages > 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGAGNKWOCcjs.Pagination, { currentPage: page, totalPages: totalGroupPages, onPageChange: setPage }) : null;
749
749
  if (isLoading) {
750
750
  const skeletons = pageRefs.map((r) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: renderSkeletonForType(type, cardSize, adminCampaignCard) }, r.id));
751
751
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
@@ -756,7 +756,7 @@ function ContentGroup({
756
756
  }
757
757
  if (!items) return null;
758
758
  const rowKey = (it) => {
759
- const extracted = _chunk5MH6BRPYcjs.extractItemId.call(void 0, type, it);
759
+ const extracted = _chunkLJ46XYYPcjs.extractItemId.call(void 0, type, it);
760
760
  if (extracted !== null) return extracted;
761
761
  return String(typeof it === "object" && it !== null ? it.id : void 0);
762
762
  };
@@ -824,11 +824,11 @@ function RelatedContentSection({
824
824
  types: includeTypes !== void 0 ? includeTypes.join(",") : void 0,
825
825
  excludeTypes: excludeTypes && excludeTypes.length > 0 ? excludeTypes.join(",") : void 0
826
826
  };
827
- const authorUrl = contentRefs === void 0 && authorId && !suggestionsDisabled ? _chunkXAA5EZ5Tcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
827
+ const authorUrl = contentRefs === void 0 && authorId && !suggestionsDisabled ? _chunkJGZEHBBDcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
828
828
  apiBaseUrl,
829
829
  extraParams: { authorId, ...typeFilterParams }
830
830
  }) : null;
831
- const suggestUrl = _nullishCoalesce(authorUrl, () => ( (contentRefs === void 0 && entityType && entityId !== void 0 && entityId !== null && entityId !== "" && !suggestionsDisabled ? _chunkXAA5EZ5Tcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
831
+ const suggestUrl = _nullishCoalesce(authorUrl, () => ( (contentRefs === void 0 && entityType && entityId !== void 0 && entityId !== null && entityId !== "" && !suggestionsDisabled ? _chunkJGZEHBBDcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
832
832
  apiBaseUrl,
833
833
  entityType,
834
834
  entityId,
@@ -845,9 +845,9 @@ function RelatedContentSection({
845
845
  () => !suggestionsDisabled && initialItems ? { refs: initialItems } : void 0,
846
846
  [initialItems, suggestionsDisabled]
847
847
  );
848
- const { data, isLoading } = _chunkXAA5EZ5Tcjs.useSelfFetch.call(void 0, suggestUrl, { initialData });
848
+ const { data, isLoading } = _chunkJGZEHBBDcjs.useSelfFetch.call(void 0, suggestUrl, { initialData });
849
849
  const effectiveBuildListUrl = _react.useMemo.call(void 0,
850
- () => _nullishCoalesce(buildListUrl2, () => ( ((type, ids) => _chunk5MH6BRPYcjs.buildListUrl.call(void 0, type, ids, apiBaseUrl)))),
850
+ () => _nullishCoalesce(buildListUrl2, () => ( ((type, ids) => _chunkLJ46XYYPcjs.buildListUrl.call(void 0, type, ids, apiBaseUrl)))),
851
851
  [buildListUrl2, apiBaseUrl]
852
852
  );
853
853
  const refs = _nullishCoalesce(_nullishCoalesce(contentRefs, () => ( _optionalChain([data, 'optionalAccess', _10 => _10.refs]))), () => ( []));
@@ -858,12 +858,12 @@ function RelatedContentSection({
858
858
  if (isLoading) {
859
859
  const skeletonType = _nullishCoalesce(_nullishCoalesce(_optionalChain([includeTypes, 'optionalAccess', _11 => _11[0]]), () => ( entityType)), () => ( "blog_post_existing"));
860
860
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-8", children: [
861
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h2", children: _chunk5MH6BRPYcjs.accentSentenceMarks.call(void 0, title) }),
861
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h2", children: _chunkLJ46XYYPcjs.accentSentenceMarks.call(void 0, title) }),
862
862
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: gridClassFor(columns), children: Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: renderSkeletonForType(skeletonType, "default", adminCampaignCard) }, i)) })
863
863
  ] });
864
864
  }
865
865
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-8", children: [
866
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-2xl font-bold text-ods-text-primary", children: _chunk5MH6BRPYcjs.accentSentenceMarks.call(void 0, title) }),
866
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-2xl font-bold text-ods-text-primary", children: _chunkLJ46XYYPcjs.accentSentenceMarks.call(void 0, title) }),
867
867
  _nullishCoalesce(emptyState, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary", children: emptyStateText })))
868
868
  ] });
869
869
  }
@@ -872,16 +872,16 @@ function RelatedContentSection({
872
872
  if (!grouped[ref.type]) grouped[ref.type] = [];
873
873
  grouped[ref.type].push(ref);
874
874
  }
875
- let orderedTypes = _chunkXAA5EZ5Tcjs.orderContentRefTypes.call(void 0, Object.keys(grouped));
875
+ let orderedTypes = _chunkJGZEHBBDcjs.orderContentRefTypes.call(void 0, Object.keys(grouped));
876
876
  if (entityType) {
877
- const canonicalEntityType = _chunk5MH6BRPYcjs.canonicalContentRefType.call(void 0, entityType);
878
- const sameType = orderedTypes.filter((t) => _chunk5MH6BRPYcjs.canonicalContentRefType.call(void 0, t) === canonicalEntityType);
877
+ const canonicalEntityType = _chunkLJ46XYYPcjs.canonicalContentRefType.call(void 0, entityType);
878
+ const sameType = orderedTypes.filter((t) => _chunkLJ46XYYPcjs.canonicalContentRefType.call(void 0, t) === canonicalEntityType);
879
879
  if (sameType.length > 0) {
880
- orderedTypes = [...sameType, ...orderedTypes.filter((t) => _chunk5MH6BRPYcjs.canonicalContentRefType.call(void 0, t) !== canonicalEntityType)];
880
+ orderedTypes = [...sameType, ...orderedTypes.filter((t) => _chunkLJ46XYYPcjs.canonicalContentRefType.call(void 0, t) !== canonicalEntityType)];
881
881
  }
882
882
  }
883
883
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-8", children: [
884
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h2", children: _chunk5MH6BRPYcjs.accentSentenceMarks.call(void 0, title) }),
884
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h2", children: _chunkLJ46XYYPcjs.accentSentenceMarks.call(void 0, title) }),
885
885
  orderedTypes.map((type) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
886
886
  ContentGroup,
887
887
  {
@@ -893,7 +893,7 @@ function RelatedContentSection({
893
893
  LinkProvider,
894
894
  extras,
895
895
  adminCampaignCard,
896
- heading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: _chunkXAA5EZ5Tcjs.getContentRefLabelOrTitleCase.call(void 0, type) })
896
+ heading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: _chunkJGZEHBBDcjs.getContentRefLabelOrTitleCase.call(void 0, type) })
897
897
  },
898
898
  type
899
899
  ))
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _chunkYQGDXH3Mcjs = require('./chunk-YQGDXH3M.cjs');
4
+ var _chunkGAGNKWOCcjs = require('./chunk-GAGNKWOC.cjs');
5
5
 
6
6
 
7
7
 
@@ -179,11 +179,11 @@ function UnifiedPagination({
179
179
  }, 0);
180
180
  };
181
181
  if (totalPages <= 1) {
182
- return reserveSpace ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className, "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none invisible", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYQGDXH3Mcjs.Pagination, { currentPage: 1, totalPages: 1, onPageChange: () => {
182
+ return reserveSpace ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className, "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-none invisible", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGAGNKWOCcjs.Pagination, { currentPage: 1, totalPages: 1, onPageChange: () => {
183
183
  } }) }) }) : null;
184
184
  }
185
185
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
186
- _chunkYQGDXH3Mcjs.Pagination,
186
+ _chunkGAGNKWOCcjs.Pagination,
187
187
  {
188
188
  currentPage,
189
189
  totalPages,
@@ -6,7 +6,7 @@ var _chunk4FWURR3Wcjs = require('./chunk-4FWURR3W.cjs');
6
6
 
7
7
 
8
8
 
9
- var _chunkPS6T65KAcjs = require('./chunk-PS6T65KA.cjs');
9
+ var _chunkBM6JZRVDcjs = require('./chunk-BM6JZRVD.cjs');
10
10
 
11
11
 
12
12
  var _chunkSXGDKNVEcjs = require('./chunk-SXGDKNVE.cjs');
@@ -48,7 +48,7 @@ var _chunk5OG5ZTNMcjs = require('./chunk-5OG5ZTNM.cjs');
48
48
 
49
49
 
50
50
 
51
- var _chunk5MH6BRPYcjs = require('./chunk-5MH6BRPY.cjs');
51
+ var _chunkLJ46XYYPcjs = require('./chunk-LJ46XYYP.cjs');
52
52
 
53
53
 
54
54
  var _chunkABLUMGCIcjs = require('./chunk-ABLUMGCI.cjs');
@@ -162,31 +162,31 @@ CveLink.displayName = "CveLink";
162
162
  // src/components/platform/ShellTypeBadge.tsx
163
163
 
164
164
  var shellIconMap = {
165
- [_chunkPS6T65KAcjs.ShellTypeValues.POWERSHELL]: {
165
+ [_chunkBM6JZRVDcjs.ShellTypeValues.POWERSHELL]: {
166
166
  icon: _chunkMCQY746Mcjs.PowershellLogoGreyIcon,
167
167
  props: { size: 16, className: "text-ods-text-secondary" }
168
168
  },
169
- [_chunkPS6T65KAcjs.ShellTypeValues.CMD]: {
169
+ [_chunkBM6JZRVDcjs.ShellTypeValues.CMD]: {
170
170
  icon: _chunkUXUYT4WKcjs.CmdIcon,
171
171
  props: { size: 16, color: "var(--color-text-secondary)" }
172
172
  },
173
- [_chunkPS6T65KAcjs.ShellTypeValues.BASH]: {
173
+ [_chunkBM6JZRVDcjs.ShellTypeValues.BASH]: {
174
174
  icon: _chunk5OG5ZTNMcjs.BashIcon,
175
175
  props: { size: 16, color: "var(--color-text-secondary)" }
176
176
  },
177
- [_chunkPS6T65KAcjs.ShellTypeValues.PYTHON]: {
177
+ [_chunkBM6JZRVDcjs.ShellTypeValues.PYTHON]: {
178
178
  icon: _chunkBF77UKGDcjs.PythonLogoIcon,
179
179
  props: { size: 16, className: "text-ods-text-secondary" }
180
180
  },
181
- [_chunkPS6T65KAcjs.ShellTypeValues.NUSHELL]: {
181
+ [_chunkBM6JZRVDcjs.ShellTypeValues.NUSHELL]: {
182
182
  icon: _chunkG37H4CBTcjs.NushellIcon,
183
183
  props: { size: 16, color: "var(--color-text-secondary)" }
184
184
  },
185
- [_chunkPS6T65KAcjs.ShellTypeValues.DENO]: {
185
+ [_chunkBM6JZRVDcjs.ShellTypeValues.DENO]: {
186
186
  icon: _chunkHUL6SF5Acjs.DenoIcon,
187
187
  props: { size: 16, color: "var(--color-text-secondary)" }
188
188
  },
189
- [_chunkPS6T65KAcjs.ShellTypeValues.SHELL]: {
189
+ [_chunkBM6JZRVDcjs.ShellTypeValues.SHELL]: {
190
190
  icon: _chunk6RMATQNNcjs.ShellIcon,
191
191
  props: { size: 16, color: "var(--color-text-secondary)" }
192
192
  }
@@ -197,7 +197,7 @@ var defaultIconConfig = {
197
197
  };
198
198
  var ShellTypeBadge = ({ shellType, className, iconClassName }) => {
199
199
  const normalizedType = _optionalChain([shellType, 'optionalAccess', _ => _.toUpperCase, 'call', _2 => _2()]);
200
- const label = _chunkPS6T65KAcjs.getShellLabel.call(void 0, normalizedType);
200
+ const label = _chunkBM6JZRVDcjs.getShellLabel.call(void 0, normalizedType);
201
201
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
202
202
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
203
203
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex items-center gap-1", className), children: [
@@ -213,7 +213,7 @@ function formatSupportedPlatforms(platforms) {
213
213
  if (!platforms || platforms.length === 0) {
214
214
  return "All Platforms";
215
215
  }
216
- return platforms.map((platform) => _chunkPS6T65KAcjs.getOSLabel.call(void 0, platform)).join(", ");
216
+ return platforms.map((platform) => _chunkBM6JZRVDcjs.getOSLabel.call(void 0, platform)).join(", ");
217
217
  }
218
218
  function InfoCell({ label, value, avatar, className }) {
219
219
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-w-0 items-center gap-2", className), children: [
@@ -233,7 +233,7 @@ var ScriptInfoSection = ({
233
233
  author,
234
234
  className
235
235
  }) => {
236
- const shellLabel = _chunkPS6T65KAcjs.getShellLabel.call(void 0, shellType);
236
+ const shellLabel = _chunkBM6JZRVDcjs.getShellLabel.call(void 0, shellType);
237
237
  const platformsLabel = formatSupportedPlatforms(supportedPlatforms);
238
238
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "overflow-hidden rounded-[6px] border border-ods-border bg-ods-card", className), children: [
239
239
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border p-4", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-1", children: [
@@ -281,7 +281,7 @@ function OnboardingStepCard({
281
281
  onSkip();
282
282
  };
283
283
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
284
- _chunk5MH6BRPYcjs.InteractiveCard,
284
+ _chunkLJ46XYYPcjs.InteractiveCard,
285
285
  {
286
286
  clickable: false,
287
287
  className: _chunk3ATAYP36cjs.cn.call(void 0,
@@ -307,7 +307,7 @@ function OnboardingStepCard({
307
307
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[32px] w-[100px] animate-pulse rounded-[6px] bg-ods-border" }),
308
308
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[32px] w-[120px] animate-pulse rounded-[6px] bg-ods-border" })
309
309
  ] }) : isCompleted ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
310
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.StatusBadge, { text: "COMPLETED", variant: "card", colorScheme: "success" }),
310
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.StatusBadge, { text: "COMPLETED", variant: "card", colorScheme: "success" }),
311
311
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
312
312
  _chunk2QMBXGMQcjs.Button,
313
313
  {
@@ -318,7 +318,7 @@ function OnboardingStepCard({
318
318
  children: step.completedText
319
319
  }
320
320
  )
321
- ] }) : isSkipped ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5MH6BRPYcjs.StatusBadge, { text: "SKIPPED", variant: "card", colorScheme: "default" }) }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
321
+ ] }) : isSkipped ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLJ46XYYPcjs.StatusBadge, { text: "SKIPPED", variant: "card", colorScheme: "default" }) }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
322
322
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", onClick: handleSkip, children: "Skip Step" }),
323
323
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "accent", onClick: handleAction, disabled: isProcessing, leftIcon: step.actionIcon("black"), children: step.actionText })
324
324
  ] })
@@ -435,7 +435,7 @@ function OnboardingWalkthrough({
435
435
  const isAllComplete = allStepsComplete(steps);
436
436
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full space-y-4", className), children: [
437
437
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col items-start justify-between gap-3 md:flex-row md:items-center md:gap-0", children: [
438
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunk5MH6BRPYcjs.SECTION_HEADING_CLASS, children: _chunk5MH6BRPYcjs.accentSentenceMarks.call(void 0, title) }),
438
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunkLJ46XYYPcjs.SECTION_HEADING_CLASS, children: _chunkLJ46XYYPcjs.accentSentenceMarks.call(void 0, title) }),
439
439
  isLoadingCompletion ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[48px] w-full animate-pulse rounded-[6px] bg-ods-border md:w-[160px]" }) : isAllComplete ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "accent", onClick: handleDismiss, className: "w-full md:w-auto", children: "Close Onboarding" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", onClick: handleDismiss, className: "w-full md:w-auto", children: "Skip Onboarding" })
440
440
  ] }),
441
441
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, spacing), children: steps.map((step) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,