@flamingo-stack/openframe-frontend-core 0.0.528-1696.4455.1 → 0.0.528

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/dist/{chunk-M4GZVMXN.js → chunk-2BJE6RJL.js} +2 -2
  2. package/dist/{chunk-OEQJ3MU5.js → chunk-2CINL7LX.js} +2 -2
  3. package/dist/{chunk-V4SEL4AV.cjs → chunk-A4L6WECD.cjs} +87 -87
  4. package/dist/{chunk-V4SEL4AV.cjs.map → chunk-A4L6WECD.cjs.map} +1 -1
  5. package/dist/{chunk-UK6W7FZ2.cjs → chunk-BNZZW22T.cjs} +4 -4
  6. package/dist/{chunk-UK6W7FZ2.cjs.map → chunk-BNZZW22T.cjs.map} +1 -1
  7. package/dist/{chunk-WAJR5NQH.js → chunk-CEW75UG3.js} +6 -6
  8. package/dist/{chunk-WD7HOP7E.js → chunk-DMZEPDVA.js} +2 -2
  9. package/dist/{chunk-XZ7EYGF4.cjs → chunk-GXHLS4BG.cjs} +26 -26
  10. package/dist/{chunk-XZ7EYGF4.cjs.map → chunk-GXHLS4BG.cjs.map} +1 -1
  11. package/dist/{chunk-GNKQR7F5.js → chunk-HPD7C5HN.js} +2 -2
  12. package/dist/{chunk-MH4CJO6T.js → chunk-ILAQ6JAP.js} +101 -59
  13. package/dist/chunk-ILAQ6JAP.js.map +1 -0
  14. package/dist/{chunk-XCJAYIBG.cjs → chunk-J3F2MKEN.cjs} +101 -59
  15. package/dist/chunk-J3F2MKEN.cjs.map +1 -0
  16. package/dist/{chunk-JXUGR5YY.js → chunk-JNCGKJAQ.js} +2 -2
  17. package/dist/{chunk-7T364QDF.cjs → chunk-JUYDVY52.cjs} +7 -7
  18. package/dist/{chunk-7T364QDF.cjs.map → chunk-JUYDVY52.cjs.map} +1 -1
  19. package/dist/{chunk-MFX2BVYC.js → chunk-L5FCJQV5.js} +4 -4
  20. package/dist/{chunk-2MESK2PA.cjs → chunk-LHIHJY7R.cjs} +37 -37
  21. package/dist/{chunk-2MESK2PA.cjs.map → chunk-LHIHJY7R.cjs.map} +1 -1
  22. package/dist/{chunk-G2UNFOUQ.cjs → chunk-M2FDNO7X.cjs} +31 -31
  23. package/dist/{chunk-G2UNFOUQ.cjs.map → chunk-M2FDNO7X.cjs.map} +1 -1
  24. package/dist/{chunk-DCC4JOHA.js → chunk-M776O7UE.js} +2 -2
  25. package/dist/{chunk-UUXH7BUH.cjs → chunk-NKS47IL3.cjs} +26 -26
  26. package/dist/{chunk-UUXH7BUH.cjs.map → chunk-NKS47IL3.cjs.map} +1 -1
  27. package/dist/{chunk-5FIOGJYY.js → chunk-PIVTJ6ON.js} +2 -2
  28. package/dist/{chunk-ZK5R2ETI.cjs → chunk-Q5VC7YZB.cjs} +5 -5
  29. package/dist/{chunk-ZK5R2ETI.cjs.map → chunk-Q5VC7YZB.cjs.map} +1 -1
  30. package/dist/{chunk-L7QFCN7X.cjs → chunk-QIDOKHTY.cjs} +9 -9
  31. package/dist/{chunk-L7QFCN7X.cjs.map → chunk-QIDOKHTY.cjs.map} +1 -1
  32. package/dist/{chunk-JEGQYX3Q.js → chunk-R36QWZH7.js} +4 -4
  33. package/dist/{chunk-5IFYGGPY.cjs → chunk-RAPSFNOB.cjs} +11 -11
  34. package/dist/{chunk-5IFYGGPY.cjs.map → chunk-RAPSFNOB.cjs.map} +1 -1
  35. package/dist/{chunk-Q24J6PBQ.js → chunk-RNSH2XXF.js} +5 -5
  36. package/dist/{chunk-ZQHTNIVM.js → chunk-UPNHXQCV.js} +2 -2
  37. package/dist/{chunk-ZRLVYZZC.cjs → chunk-VTQMYRTR.cjs} +3 -3
  38. package/dist/{chunk-ZRLVYZZC.cjs.map → chunk-VTQMYRTR.cjs.map} +1 -1
  39. package/dist/{chunk-YCCIFVKW.js → chunk-Y22BJ35V.js} +2 -2
  40. package/dist/{chunk-HDWVZMQN.cjs → chunk-Y667ZH35.cjs} +14 -14
  41. package/dist/{chunk-HDWVZMQN.cjs.map → chunk-Y667ZH35.cjs.map} +1 -1
  42. package/dist/{chunk-4XPLNCH3.cjs → chunk-ZDKZA5SX.cjs} +61 -61
  43. package/dist/{chunk-4XPLNCH3.cjs.map → chunk-ZDKZA5SX.cjs.map} +1 -1
  44. package/dist/components/case-studies/index.cjs +8 -8
  45. package/dist/components/case-studies/index.js +2 -2
  46. package/dist/components/chat/index.cjs +2 -2
  47. package/dist/components/chat/index.js +1 -1
  48. package/dist/components/contact/index.cjs +3 -3
  49. package/dist/components/contact/index.js +2 -2
  50. package/dist/components/docs/index.cjs +5 -5
  51. package/dist/components/docs/index.js +4 -4
  52. package/dist/components/embeds/index.cjs +3 -3
  53. package/dist/components/embeds/index.js +2 -2
  54. package/dist/components/faq/index.cjs +3 -3
  55. package/dist/components/faq/index.js +2 -2
  56. package/dist/components/features/index.cjs +2 -2
  57. package/dist/components/features/index.js +1 -1
  58. package/dist/components/help-center-pages/index.cjs +22 -22
  59. package/dist/components/help-center-pages/index.js +13 -13
  60. package/dist/components/index.cjs +132 -132
  61. package/dist/components/index.js +11 -11
  62. package/dist/components/meeting-scheduler/index.cjs +34 -34
  63. package/dist/components/meeting-scheduler/index.js +3 -3
  64. package/dist/components/navigation/index.cjs +2 -2
  65. package/dist/components/navigation/index.js +1 -1
  66. package/dist/components/onboarding-guides/index.cjs +5 -5
  67. package/dist/components/onboarding-guides/index.js +4 -4
  68. package/dist/components/related-content/index.cjs +3 -3
  69. package/dist/components/related-content/index.js +2 -2
  70. package/dist/components/tickets/index.cjs +6 -6
  71. package/dist/components/tickets/index.js +5 -5
  72. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  73. package/dist/components/ui/dialog.d.ts.map +1 -1
  74. package/dist/components/ui/index.cjs +2 -2
  75. package/dist/components/ui/index.js +1 -1
  76. package/dist/components/ui/modal-v2.d.ts.map +1 -1
  77. package/dist/index.cjs +2 -2
  78. package/dist/index.js +1 -1
  79. package/package.json +1 -1
  80. package/src/components/ui/alert-dialog.tsx +10 -1
  81. package/src/components/ui/dialog.tsx +24 -2
  82. package/src/components/ui/modal-v2.tsx +24 -2
  83. package/dist/chunk-MH4CJO6T.js.map +0 -1
  84. package/dist/chunk-XCJAYIBG.cjs.map +0 -1
  85. /package/dist/{chunk-M4GZVMXN.js.map → chunk-2BJE6RJL.js.map} +0 -0
  86. /package/dist/{chunk-OEQJ3MU5.js.map → chunk-2CINL7LX.js.map} +0 -0
  87. /package/dist/{chunk-WAJR5NQH.js.map → chunk-CEW75UG3.js.map} +0 -0
  88. /package/dist/{chunk-WD7HOP7E.js.map → chunk-DMZEPDVA.js.map} +0 -0
  89. /package/dist/{chunk-GNKQR7F5.js.map → chunk-HPD7C5HN.js.map} +0 -0
  90. /package/dist/{chunk-JXUGR5YY.js.map → chunk-JNCGKJAQ.js.map} +0 -0
  91. /package/dist/{chunk-MFX2BVYC.js.map → chunk-L5FCJQV5.js.map} +0 -0
  92. /package/dist/{chunk-DCC4JOHA.js.map → chunk-M776O7UE.js.map} +0 -0
  93. /package/dist/{chunk-5FIOGJYY.js.map → chunk-PIVTJ6ON.js.map} +0 -0
  94. /package/dist/{chunk-JEGQYX3Q.js.map → chunk-R36QWZH7.js.map} +0 -0
  95. /package/dist/{chunk-Q24J6PBQ.js.map → chunk-RNSH2XXF.js.map} +0 -0
  96. /package/dist/{chunk-ZQHTNIVM.js.map → chunk-UPNHXQCV.js.map} +0 -0
  97. /package/dist/{chunk-YCCIFVKW.js.map → chunk-Y22BJ35V.js.map} +0 -0
@@ -4,7 +4,7 @@ import {
4
4
  formatFileSize,
5
5
  toGoogleSheetsEmbedUrl,
6
6
  toGoogleSheetsOriginalUrl
7
- } from "./chunk-MH4CJO6T.js";
7
+ } from "./chunk-ILAQ6JAP.js";
8
8
  import {
9
9
  AdobePdfIcon,
10
10
  GoogleSheetsIcon
@@ -134,4 +134,4 @@ export {
134
134
  GoogleSheetsViewer,
135
135
  FileDownloadCard
136
136
  };
137
- //# sourceMappingURL=chunk-JXUGR5YY.js.map
137
+ //# sourceMappingURL=chunk-JNCGKJAQ.js.map
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- var _chunkXCJAYIBGcjs = require('./chunk-XCJAYIBG.cjs');
7
+ var _chunkJ3F2MKENcjs = require('./chunk-J3F2MKEN.cjs');
8
8
 
9
9
 
10
10
 
@@ -25,7 +25,7 @@ function PdfViewer({ src, fileName, onPreview, onDownload, height }) {
25
25
  ] });
26
26
  }
27
27
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28
- _chunkXCJAYIBGcjs.EmbedViewerFrame,
28
+ _chunkJ3F2MKENcjs.EmbedViewerFrame,
29
29
  {
30
30
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.AdobePdfIcon, { className: "w-5 h-5 shrink-0" }),
31
31
  title: displayName,
@@ -75,7 +75,7 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
75
75
  ] });
76
76
  }
77
77
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
78
- _chunkXCJAYIBGcjs.EmbedViewerFrame,
78
+ _chunkJ3F2MKENcjs.EmbedViewerFrame,
79
79
  {
80
80
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.GoogleSheetsIcon, { className: "w-5 h-5 shrink-0" }),
81
81
  title: displayName,
@@ -84,7 +84,7 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
84
84
  {
85
85
  variant: "outline",
86
86
  size: "small-legacy",
87
- href: _chunkXCJAYIBGcjs.toGoogleSheetsOriginalUrl.call(void 0, externalUrl),
87
+ href: _chunkJ3F2MKENcjs.toGoogleSheetsOriginalUrl.call(void 0, externalUrl),
88
88
  openInNewTab: true,
89
89
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUTVOBFXRcjs.GoogleSheetsIcon, { className: "w-4 h-4" }),
90
90
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-4 h-4" }),
@@ -92,7 +92,7 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
92
92
  children: "Open in Google Sheets"
93
93
  }
94
94
  ),
95
- src: _chunkXCJAYIBGcjs.toGoogleSheetsEmbedUrl.call(void 0, externalUrl),
95
+ src: _chunkJ3F2MKENcjs.toGoogleSheetsEmbedUrl.call(void 0, externalUrl),
96
96
  height
97
97
  }
98
98
  );
@@ -113,7 +113,7 @@ function FileDownloadCard({
113
113
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary", children: fileName || "File" }),
114
114
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-center gap-3 mt-2 text-h6 text-ods-text-secondary", children: [
115
115
  mimeType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: mimeType }),
116
- typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _chunkXCJAYIBGcjs.formatFileSize.call(void 0, fileSize) })
116
+ typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _chunkJ3F2MKENcjs.formatFileSize.call(void 0, fileSize) })
117
117
  ] })
118
118
  ] }),
119
119
  fileUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -134,4 +134,4 @@ function FileDownloadCard({
134
134
 
135
135
 
136
136
  exports.PdfViewer = PdfViewer; exports.GoogleSheetsViewer = GoogleSheetsViewer; exports.FileDownloadCard = FileDownloadCard;
137
- //# sourceMappingURL=chunk-7T364QDF.cjs.map
137
+ //# sourceMappingURL=chunk-JUYDVY52.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-7T364QDF.cjs","../src/components/embeds/pdf-viewer.tsx","../src/components/embeds/google-sheets-viewer.tsx","../src/components/embeds/file-download-card.tsx"],"names":["jsxs","jsx","Download"],"mappings":"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","file":"/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-7T364QDF.cjs","sourcesContent":[null,"\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { Download, Eye } from 'lucide-react'\nimport { AdobePdfIcon } from '../icons-v2-generated'\nimport { EmbedViewerFrame } from './embed-viewer-frame'\n\nexport interface PdfViewerProps {\n src: string\n fileName?: string\n onPreview?: () => void\n onDownload?: () => void\n height?: string\n}\n\nexport function PdfViewer({ src, fileName, onPreview, onDownload, height }: PdfViewerProps) {\n const displayName = fileName || 'PDF Document'\n\n // Historical shape: no src at all → standalone empty state with NO header.\n if (!src) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <AdobePdfIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">PDF file not available</p>\n </div>\n )\n }\n\n return (\n <EmbedViewerFrame\n icon={<AdobePdfIcon className=\"w-5 h-5 shrink-0\" />}\n title={displayName}\n actions={\n <div className=\"flex items-center gap-2 w-full sm:w-auto\">\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onPreview ? undefined : src}\n openInNewTab={!onPreview}\n onClick={onPreview}\n leftIcon={<Eye className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Preview\n </Button>\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onDownload ? undefined : src}\n openInNewTab={!onDownload}\n onClick={onDownload}\n leftIcon={<Download className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Download\n </Button>\n </div>\n }\n src={src}\n height={height}\n />\n )\n}\n","\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { ExternalLink } from 'lucide-react'\nimport { GoogleSheetsIcon } from '../icons-v2-generated'\nimport { EmbedViewerFrame } from './embed-viewer-frame'\nimport { toGoogleSheetsEmbedUrl, toGoogleSheetsOriginalUrl } from '../../utils/embed-url-converters'\n\nexport interface GoogleSheetsViewerProps {\n externalUrl: string\n fileName?: string\n height?: string\n}\n\nexport function GoogleSheetsViewer({ externalUrl, fileName, height }: GoogleSheetsViewerProps) {\n const displayName = fileName || 'Google Sheet'\n\n // Historical shape: no URL at all → standalone empty state with NO header\n // (the frame's empty body keeps the header — that's the figma behavior).\n if (!externalUrl) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <GoogleSheetsIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">Google Sheet URL not configured</p>\n </div>\n )\n }\n\n return (\n <EmbedViewerFrame\n icon={<GoogleSheetsIcon className=\"w-5 h-5 shrink-0\" />}\n title={displayName}\n actions={\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={toGoogleSheetsOriginalUrl(externalUrl)}\n openInNewTab\n leftIcon={<GoogleSheetsIcon className=\"w-4 h-4\" />}\n rightIcon={<ExternalLink className=\"w-4 h-4\" />}\n className=\"w-full sm:w-auto\"\n >\n Open in Google Sheets\n </Button>\n }\n src={toGoogleSheetsEmbedUrl(externalUrl)}\n height={height}\n />\n )\n}\n","import React from 'react'\nimport { Button } from '../ui'\nimport { FileText, Download } from 'lucide-react'\nimport { formatFileSize } from '../../utils'\n\nexport interface FileDownloadCardProps {\n fileName?: string\n mimeType?: string\n fileSize?: number\n fileUrl?: string\n}\n\n/**\n * Generic downloadable-file card for the `file` document type. Used by\n * `<DocsHubPage>`'s default `documentTypeRenderers.file`. Embedders can\n * override the default by passing their own `file` renderer.\n *\n * When `fileUrl` is missing, the Download button is omitted (the card still\n * renders the filename + type + size so the user knows what they were\n * about to download).\n */\nexport function FileDownloadCard({\n fileName,\n mimeType,\n fileSize,\n fileUrl,\n}: FileDownloadCardProps) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16\">\n <div className=\"bg-ods-card border border-ods-border rounded-xl p-8 max-w-md w-full text-center space-y-4\">\n <FileText className=\"w-16 h-16 text-ods-text-secondary mx-auto\" />\n <div>\n <h3 className=\"text-h3 text-ods-text-primary\">\n {fileName || 'File'}\n </h3>\n <div className=\"flex items-center justify-center gap-3 mt-2 text-h6 text-ods-text-secondary\">\n {mimeType && <span>{mimeType}</span>}\n {typeof fileSize === 'number' && <span>{formatFileSize(fileSize)}</span>}\n </div>\n </div>\n {fileUrl && (\n <Button\n variant=\"accent\"\n href={fileUrl}\n openInNewTab\n leftIcon={<Download className=\"w-4 h-4\" />}\n >\n Download File\n </Button>\n )}\n </div>\n </div>\n )\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-JUYDVY52.cjs","../src/components/embeds/pdf-viewer.tsx","../src/components/embeds/google-sheets-viewer.tsx","../src/components/embeds/file-download-card.tsx"],"names":["jsxs","jsx","Download"],"mappings":"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","file":"/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-JUYDVY52.cjs","sourcesContent":[null,"\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { Download, Eye } from 'lucide-react'\nimport { AdobePdfIcon } from '../icons-v2-generated'\nimport { EmbedViewerFrame } from './embed-viewer-frame'\n\nexport interface PdfViewerProps {\n src: string\n fileName?: string\n onPreview?: () => void\n onDownload?: () => void\n height?: string\n}\n\nexport function PdfViewer({ src, fileName, onPreview, onDownload, height }: PdfViewerProps) {\n const displayName = fileName || 'PDF Document'\n\n // Historical shape: no src at all → standalone empty state with NO header.\n if (!src) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <AdobePdfIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">PDF file not available</p>\n </div>\n )\n }\n\n return (\n <EmbedViewerFrame\n icon={<AdobePdfIcon className=\"w-5 h-5 shrink-0\" />}\n title={displayName}\n actions={\n <div className=\"flex items-center gap-2 w-full sm:w-auto\">\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onPreview ? undefined : src}\n openInNewTab={!onPreview}\n onClick={onPreview}\n leftIcon={<Eye className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Preview\n </Button>\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={onDownload ? undefined : src}\n openInNewTab={!onDownload}\n onClick={onDownload}\n leftIcon={<Download className=\"w-4 h-4\" />}\n className=\"flex-1 sm:flex-initial\"\n >\n Download\n </Button>\n </div>\n }\n src={src}\n height={height}\n />\n )\n}\n","\"use client\"\n\nimport React from 'react'\nimport { Button } from '../ui'\nimport { ExternalLink } from 'lucide-react'\nimport { GoogleSheetsIcon } from '../icons-v2-generated'\nimport { EmbedViewerFrame } from './embed-viewer-frame'\nimport { toGoogleSheetsEmbedUrl, toGoogleSheetsOriginalUrl } from '../../utils/embed-url-converters'\n\nexport interface GoogleSheetsViewerProps {\n externalUrl: string\n fileName?: string\n height?: string\n}\n\nexport function GoogleSheetsViewer({ externalUrl, fileName, height }: GoogleSheetsViewerProps) {\n const displayName = fileName || 'Google Sheet'\n\n // Historical shape: no URL at all → standalone empty state with NO header\n // (the frame's empty body keeps the header — that's the figma behavior).\n if (!externalUrl) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16 text-center\">\n <GoogleSheetsIcon className=\"w-16 h-16 text-ods-text-secondary mb-4\" />\n <p className=\"text-ods-text-secondary\">Google Sheet URL not configured</p>\n </div>\n )\n }\n\n return (\n <EmbedViewerFrame\n icon={<GoogleSheetsIcon className=\"w-5 h-5 shrink-0\" />}\n title={displayName}\n actions={\n <Button\n variant=\"outline\"\n size=\"small-legacy\"\n href={toGoogleSheetsOriginalUrl(externalUrl)}\n openInNewTab\n leftIcon={<GoogleSheetsIcon className=\"w-4 h-4\" />}\n rightIcon={<ExternalLink className=\"w-4 h-4\" />}\n className=\"w-full sm:w-auto\"\n >\n Open in Google Sheets\n </Button>\n }\n src={toGoogleSheetsEmbedUrl(externalUrl)}\n height={height}\n />\n )\n}\n","import React from 'react'\nimport { Button } from '../ui'\nimport { FileText, Download } from 'lucide-react'\nimport { formatFileSize } from '../../utils'\n\nexport interface FileDownloadCardProps {\n fileName?: string\n mimeType?: string\n fileSize?: number\n fileUrl?: string\n}\n\n/**\n * Generic downloadable-file card for the `file` document type. Used by\n * `<DocsHubPage>`'s default `documentTypeRenderers.file`. Embedders can\n * override the default by passing their own `file` renderer.\n *\n * When `fileUrl` is missing, the Download button is omitted (the card still\n * renders the filename + type + size so the user knows what they were\n * about to download).\n */\nexport function FileDownloadCard({\n fileName,\n mimeType,\n fileSize,\n fileUrl,\n}: FileDownloadCardProps) {\n return (\n <div className=\"flex flex-col items-center justify-center py-16\">\n <div className=\"bg-ods-card border border-ods-border rounded-xl p-8 max-w-md w-full text-center space-y-4\">\n <FileText className=\"w-16 h-16 text-ods-text-secondary mx-auto\" />\n <div>\n <h3 className=\"text-h3 text-ods-text-primary\">\n {fileName || 'File'}\n </h3>\n <div className=\"flex items-center justify-center gap-3 mt-2 text-h6 text-ods-text-secondary\">\n {mimeType && <span>{mimeType}</span>}\n {typeof fileSize === 'number' && <span>{formatFileSize(fileSize)}</span>}\n </div>\n </div>\n {fileUrl && (\n <Button\n variant=\"accent\"\n href={fileUrl}\n openInNewTab\n leftIcon={<Download className=\"w-4 h-4\" />}\n >\n Download File\n </Button>\n )}\n </div>\n </div>\n )\n}\n"]}
@@ -2,11 +2,11 @@
2
2
  import {
3
3
  ArticleAuthorByline,
4
4
  DetailPageSkeleton
5
- } from "./chunk-OEQJ3MU5.js";
5
+ } from "./chunk-2CINL7LX.js";
6
6
  import {
7
7
  DocSearchBar,
8
8
  useDocSearch
9
- } from "./chunk-5FIOGJYY.js";
9
+ } from "./chunk-PIVTJ6ON.js";
10
10
  import {
11
11
  useSelfFetch
12
12
  } from "./chunk-RCBRCZUF.js";
@@ -26,7 +26,7 @@ import {
26
26
  resolveContentHref,
27
27
  toStripProfile,
28
28
  useVideoWarmup
29
- } from "./chunk-MH4CJO6T.js";
29
+ } from "./chunk-ILAQ6JAP.js";
30
30
  import {
31
31
  buildOgPlaceholderUrl
32
32
  } from "./chunk-GS4HJA2G.js";
@@ -396,4 +396,4 @@ export {
396
396
  useOnboardingGuide,
397
397
  useOnboardingGuideSections
398
398
  };
399
- //# sourceMappingURL=chunk-MFX2BVYC.js.map
399
+ //# sourceMappingURL=chunk-L5FCJQV5.js.map
@@ -33,15 +33,15 @@ var _chunkGYONSC3Ucjs = require('./chunk-GYONSC3U.cjs');
33
33
 
34
34
 
35
35
 
36
- var _chunkXCJAYIBGcjs = require('./chunk-XCJAYIBG.cjs');
36
+ var _chunkJ3F2MKENcjs = require('./chunk-J3F2MKEN.cjs');
37
37
 
38
38
  // src/components/related-content/related-content-section.tsx
39
39
  var _react = require('react');
40
- _chunkXCJAYIBGcjs.init_pagination.call(void 0, );
40
+ _chunkJ3F2MKENcjs.init_pagination.call(void 0, );
41
41
  var _jsxruntime = require('react/jsx-runtime');
42
42
  function DefaultLinkPropsProvider({ href, targetPlatform, children }) {
43
43
  if (!href) return children(null);
44
- const newTab = _chunkXCJAYIBGcjs.decideNewTab.call(void 0, { href, targetPlatform, currentSource: "" });
44
+ const newTab = _chunkJ3F2MKENcjs.decideNewTab.call(void 0, { href, targetPlatform, currentSource: "" });
45
45
  return children(
46
46
  newTab ? { href, target: "_blank", rel: "noopener noreferrer" } : { href }
47
47
  );
@@ -53,29 +53,29 @@ function renderSkeletonForType(type, size, adminCampaignCard) {
53
53
  const legacySize = size === "sm" ? "sm" : "default";
54
54
  switch (type) {
55
55
  case "blog_post_existing":
56
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.BlogCardSkeleton, { size: legacySize });
56
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.BlogCardSkeleton, { size: legacySize });
57
57
  case "case_study":
58
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.CaseStudyCardSkeleton, { size: legacySize });
58
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.CaseStudyCardSkeleton, { size: legacySize });
59
59
  case "customer_interview":
60
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.CustomerInterviewCardSkeleton, { size: legacySize });
60
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.CustomerInterviewCardSkeleton, { size: legacySize });
61
61
  case "product_release":
62
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.ProductReleaseCardSkeleton, { size: size === "sm" ? "sm" : "lg" });
62
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.ProductReleaseCardSkeleton, { size: size === "sm" ? "sm" : "lg" });
63
63
  case "podcast":
64
64
  case "webinar":
65
65
  case "event":
66
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.ProgramCardSkeleton, { size: legacySize });
66
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.ProgramCardSkeleton, { size: legacySize });
67
67
  case "investor_update":
68
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.InvestorUpdateCardSkeleton, { size: legacySize });
68
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.InvestorUpdateCardSkeleton, { size: legacySize });
69
69
  case "onboarding_guide":
70
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.OnboardingGuideCardSkeleton, { size: size === "sm" ? "sm" : "catalog" });
70
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.OnboardingGuideCardSkeleton, { size: size === "sm" ? "sm" : "catalog" });
71
71
  case "what_i_shipped":
72
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.WhatIShippedCardSkeleton, {});
72
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.WhatIShippedCardSkeleton, {});
73
73
  case "marketing_campaign":
74
74
  return adminCampaignCard ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, adminCampaignCard.Skeleton, { size: legacySize }) : null;
75
75
  case "roadmap_item":
76
76
  case "delivery_item":
77
77
  case "internal_task":
78
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.RoadmapCardSkeleton, { size: legacySize });
78
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.RoadmapCardSkeleton, { size: legacySize });
79
79
  default:
80
80
  return null;
81
81
  }
@@ -95,17 +95,17 @@ function CardForType({
95
95
  const anchorAttrs = linkProps ? { target: linkProps.target, rel: linkProps.rel } : {};
96
96
  switch (type) {
97
97
  case "blog_post_existing":
98
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.BlogCard, { post: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
98
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.BlogCard, { post: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
99
99
  case "case_study":
100
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.CaseStudyCard, { study: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
100
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.CaseStudyCard, { study: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
101
101
  case "customer_interview":
102
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.CustomerInterviewCard, { interview: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
102
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.CustomerInterviewCard, { interview: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
103
103
  case "product_release": {
104
104
  const releaseSize = size === "sm" ? "sm" : "lg";
105
- const buildReleaseProps = _nullishCoalesce(_optionalChain([extras, 'optionalAccess', _5 => _5.buildProductReleaseCardProps]), () => ( _chunkXCJAYIBGcjs.buildProductReleaseCardProps));
105
+ const buildReleaseProps = _nullishCoalesce(_optionalChain([extras, 'optionalAccess', _5 => _5.buildProductReleaseCardProps]), () => ( _chunkJ3F2MKENcjs.buildProductReleaseCardProps));
106
106
  const releaseProps = buildReleaseProps(item);
107
107
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
108
- _chunkXCJAYIBGcjs.ProductReleaseCard,
108
+ _chunkJ3F2MKENcjs.ProductReleaseCard,
109
109
  {
110
110
  size: releaseSize,
111
111
  title: item.title,
@@ -117,18 +117,18 @@ function CardForType({
117
117
  );
118
118
  }
119
119
  case "podcast":
120
- return _optionalChain([extras, 'optionalAccess', _6 => _6.programConfigs, 'optionalAccess', _7 => _7.podcast]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.ProgramCard, { config: extras.programConfigs.podcast, item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs }) : null;
120
+ return _optionalChain([extras, 'optionalAccess', _6 => _6.programConfigs, 'optionalAccess', _7 => _7.podcast]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.ProgramCard, { config: extras.programConfigs.podcast, item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs }) : null;
121
121
  case "webinar":
122
- return _optionalChain([extras, 'optionalAccess', _8 => _8.programConfigs, 'optionalAccess', _9 => _9.webinar]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.ProgramCard, { config: extras.programConfigs.webinar, item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs }) : null;
122
+ return _optionalChain([extras, 'optionalAccess', _8 => _8.programConfigs, 'optionalAccess', _9 => _9.webinar]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.ProgramCard, { config: extras.programConfigs.webinar, item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs }) : null;
123
123
  case "event":
124
- return _optionalChain([extras, 'optionalAccess', _10 => _10.programConfigs, 'optionalAccess', _11 => _11.event]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.ProgramCard, { config: extras.programConfigs.event, item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs }) : null;
124
+ return _optionalChain([extras, 'optionalAccess', _10 => _10.programConfigs, 'optionalAccess', _11 => _11.event]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.ProgramCard, { config: extras.programConfigs.event, item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs }) : null;
125
125
  case "investor_update":
126
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.InvestorUpdateCard, { update: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
126
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.InvestorUpdateCard, { update: item, size: legacySize, href, targetPlatform, placeholderUrl, ...anchorAttrs });
127
127
  case "onboarding_guide":
128
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.OnboardingGuideCard, { guide: item, size: size === "sm" ? "sm" : "catalog", href, targetPlatform, placeholderUrl, ...anchorAttrs });
128
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.OnboardingGuideCard, { guide: item, size: size === "sm" ? "sm" : "catalog", href, targetPlatform, placeholderUrl, ...anchorAttrs });
129
129
  case "what_i_shipped":
130
130
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
131
- _chunkXCJAYIBGcjs.WhatIShippedCard,
131
+ _chunkJ3F2MKENcjs.WhatIShippedCard,
132
132
  {
133
133
  entry: item,
134
134
  placeholderUrl,
@@ -141,7 +141,7 @@ function CardForType({
141
141
  case "delivery_item":
142
142
  case "internal_task":
143
143
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
144
- _chunkXCJAYIBGcjs.RoadmapCard,
144
+ _chunkJ3F2MKENcjs.RoadmapCard,
145
145
  {
146
146
  item,
147
147
  href: _nullishCoalesce(href, () => ( "")),
@@ -162,14 +162,14 @@ function useGroupItems(type, refs, buildUrl) {
162
162
  const ids = refs.map((r) => r.id);
163
163
  const url = ids.length > 0 ? buildUrl(type, ids) : null;
164
164
  const { data, isLoading } = _chunkGYONSC3Ucjs.useSelfFetch.call(void 0, url);
165
- const items = data != null ? _chunkXCJAYIBGcjs.extractItems.call(void 0, data) : null;
165
+ const items = data != null ? _chunkJ3F2MKENcjs.extractItems.call(void 0, data) : null;
166
166
  return { items, isLoading };
167
167
  }
168
168
  function gridClassFor(columns) {
169
169
  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";
170
170
  }
171
171
  function resolveGroupConfig(type) {
172
- return _nullishCoalesce(_chunkXCJAYIBGcjs.CONTENT_REF_GROUPS[type], () => ( {
172
+ return _nullishCoalesce(_chunkJ3F2MKENcjs.CONTENT_REF_GROUPS[type], () => ( {
173
173
  label: type,
174
174
  order: 999,
175
175
  layout: "grid",
@@ -204,7 +204,7 @@ function ContentGroup({
204
204
  const totalGroupPages = Math.max(1, Math.ceil(refs.length / GROUP_PAGE_SIZE));
205
205
  const safePage = Math.min(page, totalGroupPages);
206
206
  const visibleGroupRefs = refs.length > GROUP_PAGE_SIZE ? refs.slice((safePage - 1) * GROUP_PAGE_SIZE, safePage * GROUP_PAGE_SIZE) : refs;
207
- const groupPagination = totalGroupPages > 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXCJAYIBGcjs.Pagination, { currentPage: safePage, totalPages: totalGroupPages, onPageChange: setPage }) : null;
207
+ const groupPagination = totalGroupPages > 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ3F2MKENcjs.Pagination, { currentPage: safePage, totalPages: totalGroupPages, onPageChange: setPage }) : null;
208
208
  if (isLoading && !items) {
209
209
  const skeletons = visibleGroupRefs.map((r) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: renderSkeletonForType(type, cardSize, adminCampaignCard) }, r.id));
210
210
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
@@ -214,7 +214,7 @@ function ContentGroup({
214
214
  }
215
215
  if (!items || items.length === 0) return null;
216
216
  const itemById = new Map(
217
- items.map((it) => [_nullishCoalesce(_chunkXCJAYIBGcjs.extractItemId.call(void 0, type, it), () => ( String(_optionalChain([it, 'optionalAccess', _12 => _12.id])))), it])
217
+ items.map((it) => [_nullishCoalesce(_chunkJ3F2MKENcjs.extractItemId.call(void 0, type, it), () => ( String(_optionalChain([it, 'optionalAccess', _12 => _12.id])))), it])
218
218
  );
219
219
  const cards = visibleGroupRefs.map((contentRef) => {
220
220
  const itemId = String(contentRef.id);
@@ -279,11 +279,11 @@ function RelatedContentSection({
279
279
  types: includeTypes !== void 0 ? includeTypes.join(",") : void 0,
280
280
  excludeTypes: excludeTypes && excludeTypes.length > 0 ? excludeTypes.join(",") : void 0
281
281
  };
282
- const authorUrl = contentRefs === void 0 && authorId && !suggestionsDisabled ? _chunkXCJAYIBGcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
282
+ const authorUrl = contentRefs === void 0 && authorId && !suggestionsDisabled ? _chunkJ3F2MKENcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
283
283
  apiBaseUrl,
284
284
  extraParams: { authorId, ...typeFilterParams }
285
285
  }) : null;
286
- const suggestUrl = _nullishCoalesce(authorUrl, () => ( (contentRefs === void 0 && entityType && entityId !== void 0 && entityId !== null && entityId !== "" && !suggestionsDisabled ? _chunkXCJAYIBGcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
286
+ const suggestUrl = _nullishCoalesce(authorUrl, () => ( (contentRefs === void 0 && entityType && entityId !== void 0 && entityId !== null && entityId !== "" && !suggestionsDisabled ? _chunkJ3F2MKENcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
287
287
  apiBaseUrl,
288
288
  entityType,
289
289
  entityId,
@@ -302,7 +302,7 @@ function RelatedContentSection({
302
302
  );
303
303
  const { data, isLoading } = _chunkGYONSC3Ucjs.useSelfFetch.call(void 0, suggestUrl, { initialData });
304
304
  const effectiveBuildListUrl = _react.useMemo.call(void 0,
305
- () => _nullishCoalesce(buildListUrl2, () => ( ((type, ids) => _chunkXCJAYIBGcjs.buildListUrl.call(void 0, type, ids, apiBaseUrl)))),
305
+ () => _nullishCoalesce(buildListUrl2, () => ( ((type, ids) => _chunkJ3F2MKENcjs.buildListUrl.call(void 0, type, ids, apiBaseUrl)))),
306
306
  [buildListUrl2, apiBaseUrl]
307
307
  );
308
308
  const refs = _nullishCoalesce(_nullishCoalesce(contentRefs, () => ( _optionalChain([data, 'optionalAccess', _14 => _14.refs]))), () => ( []));
@@ -327,12 +327,12 @@ function RelatedContentSection({
327
327
  if (!grouped[ref.type]) grouped[ref.type] = [];
328
328
  grouped[ref.type].push(ref);
329
329
  }
330
- let orderedTypes = _chunkXCJAYIBGcjs.orderContentRefTypes.call(void 0, Object.keys(grouped));
330
+ let orderedTypes = _chunkJ3F2MKENcjs.orderContentRefTypes.call(void 0, Object.keys(grouped));
331
331
  if (entityType) {
332
- const canonicalEntityType = _chunkXCJAYIBGcjs.canonicalContentRefType.call(void 0, entityType);
333
- const sameType = orderedTypes.filter((t) => _chunkXCJAYIBGcjs.canonicalContentRefType.call(void 0, t) === canonicalEntityType);
332
+ const canonicalEntityType = _chunkJ3F2MKENcjs.canonicalContentRefType.call(void 0, entityType);
333
+ const sameType = orderedTypes.filter((t) => _chunkJ3F2MKENcjs.canonicalContentRefType.call(void 0, t) === canonicalEntityType);
334
334
  if (sameType.length > 0) {
335
- orderedTypes = [...sameType, ...orderedTypes.filter((t) => _chunkXCJAYIBGcjs.canonicalContentRefType.call(void 0, t) !== canonicalEntityType)];
335
+ orderedTypes = [...sameType, ...orderedTypes.filter((t) => _chunkJ3F2MKENcjs.canonicalContentRefType.call(void 0, t) !== canonicalEntityType)];
336
336
  }
337
337
  }
338
338
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-8", children: [
@@ -348,7 +348,7 @@ function RelatedContentSection({
348
348
  LinkProvider,
349
349
  extras,
350
350
  adminCampaignCard,
351
- heading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h5 font-semibold text-ods-text-secondary", children: _chunkXCJAYIBGcjs.getContentRefLabelOrTitleCase.call(void 0, type) })
351
+ heading: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h5 font-semibold text-ods-text-secondary", children: _chunkJ3F2MKENcjs.getContentRefLabelOrTitleCase.call(void 0, type) })
352
352
  },
353
353
  type
354
354
  ))
@@ -359,4 +359,4 @@ function RelatedContentSection({
359
359
 
360
360
 
361
361
  exports.GROUP_PAGE_SIZE = GROUP_PAGE_SIZE; exports.RelatedContentSection = RelatedContentSection;
362
- //# sourceMappingURL=chunk-2MESK2PA.cjs.map
362
+ //# sourceMappingURL=chunk-LHIHJY7R.cjs.map