@flamingo-stack/openframe-frontend-core 0.0.338 → 0.0.339
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.
- package/dist/{chunk-IBCTHO3A.cjs → chunk-4DXRKAV6.cjs} +5 -5
- package/dist/{chunk-IBCTHO3A.cjs.map → chunk-4DXRKAV6.cjs.map} +1 -1
- package/dist/{chunk-HI367AS3.js → chunk-5A5SLX2F.js} +2 -2
- package/dist/{chunk-IVY5R6L2.cjs → chunk-6YWPFPKC.cjs} +25 -25
- package/dist/{chunk-IVY5R6L2.cjs.map → chunk-6YWPFPKC.cjs.map} +1 -1
- package/dist/{chunk-3BWH262F.js → chunk-742ZCG3D.js} +4 -4
- package/dist/{chunk-YHDF4WMG.cjs → chunk-7OPVJDX6.cjs} +15 -15
- package/dist/{chunk-YHDF4WMG.cjs.map → chunk-7OPVJDX6.cjs.map} +1 -1
- package/dist/{chunk-FNPF5OQS.cjs → chunk-D5BRTQEA.cjs} +26 -26
- package/dist/{chunk-FNPF5OQS.cjs.map → chunk-D5BRTQEA.cjs.map} +1 -1
- package/dist/{chunk-IJ2OYHRH.cjs → chunk-DKK3VRRM.cjs} +12 -12
- package/dist/{chunk-IJ2OYHRH.cjs.map → chunk-DKK3VRRM.cjs.map} +1 -1
- package/dist/{chunk-IOEGV4DP.js → chunk-DLXHC6JS.js} +2 -2
- package/dist/{chunk-FGVYJPT4.js → chunk-DUJINSKJ.js} +2 -2
- package/dist/{chunk-RSA7DPZN.cjs → chunk-FFNTLQZR.cjs} +56 -56
- package/dist/{chunk-RSA7DPZN.cjs.map → chunk-FFNTLQZR.cjs.map} +1 -1
- package/dist/{chunk-DPFJPCFL.cjs → chunk-GBE2R7R4.cjs} +7 -7
- package/dist/{chunk-DPFJPCFL.cjs.map → chunk-GBE2R7R4.cjs.map} +1 -1
- package/dist/{chunk-DPU7VTTV.js → chunk-GEJQRRD2.js} +4 -4
- package/dist/{chunk-HKBV4OJK.js → chunk-HHS3CJ7G.js} +2 -2
- package/dist/{chunk-BG44XQB2.js → chunk-I54DGTLP.js} +65 -37
- package/dist/chunk-I54DGTLP.js.map +1 -0
- package/dist/{chunk-GFBCUSFN.js → chunk-I7NP2ZAJ.js} +4 -4
- package/dist/{chunk-JI7EPGRA.js → chunk-IK22LSYP.js} +4 -4
- package/dist/{chunk-FDKTAOEO.cjs → chunk-J344NBBP.cjs} +37 -37
- package/dist/{chunk-FDKTAOEO.cjs.map → chunk-J344NBBP.cjs.map} +1 -1
- package/dist/{chunk-GOTCZBP2.js → chunk-J7VJHE6O.js} +2 -2
- package/dist/{chunk-QJR7QLNW.cjs → chunk-JOLEA7LT.cjs} +31 -31
- package/dist/{chunk-QJR7QLNW.cjs.map → chunk-JOLEA7LT.cjs.map} +1 -1
- package/dist/{chunk-Y2VDAVIX.cjs → chunk-KPR563UC.cjs} +62 -62
- package/dist/{chunk-Y2VDAVIX.cjs.map → chunk-KPR563UC.cjs.map} +1 -1
- package/dist/{chunk-RLHOSQ7X.cjs → chunk-OJJCWMLT.cjs} +9 -9
- package/dist/{chunk-RLHOSQ7X.cjs.map → chunk-OJJCWMLT.cjs.map} +1 -1
- package/dist/{chunk-2FDRZIX2.cjs → chunk-PNWORHOR.cjs} +65 -37
- package/dist/chunk-PNWORHOR.cjs.map +1 -0
- package/dist/{chunk-N7MH2OSW.js → chunk-S5B3ZX6U.js} +2 -2
- package/dist/{chunk-A4X3DZSS.js → chunk-YX7RIC4Z.js} +2 -2
- package/dist/components/case-studies/index.cjs +8 -8
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/chat/index.cjs +2 -2
- package/dist/components/chat/index.js +1 -1
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +5 -5
- package/dist/components/docs/index.js +4 -4
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/help-center-pages/index.cjs +20 -20
- package/dist/components/help-center-pages/index.js +11 -11
- package/dist/components/index.cjs +121 -121
- package/dist/components/index.js +9 -9
- package/dist/components/layout/page-layout.d.ts +6 -1
- package/dist/components/layout/page-layout.d.ts.map +1 -1
- package/dist/components/layout/title-block.d.ts +8 -1
- package/dist/components/layout/title-block.d.ts.map +1 -1
- package/dist/components/navigation/index.cjs +2 -2
- package/dist/components/navigation/index.js +1 -1
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/related-content/index.cjs +3 -3
- package/dist/components/related-content/index.js +2 -2
- package/dist/components/tickets/index.cjs +5 -5
- package/dist/components/tickets/index.js +4 -4
- package/dist/components/ui/index.cjs +2 -2
- package/dist/components/ui/index.js +1 -1
- package/dist/components/ui/info-card.d.ts.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/src/components/layout/page-layout.tsx +10 -1
- package/src/components/layout/title-block.tsx +56 -5
- package/src/components/ui/info-card.tsx +55 -41
- package/dist/chunk-2FDRZIX2.cjs.map +0 -1
- package/dist/chunk-BG44XQB2.js.map +0 -1
- /package/dist/{chunk-HI367AS3.js.map → chunk-5A5SLX2F.js.map} +0 -0
- /package/dist/{chunk-3BWH262F.js.map → chunk-742ZCG3D.js.map} +0 -0
- /package/dist/{chunk-IOEGV4DP.js.map → chunk-DLXHC6JS.js.map} +0 -0
- /package/dist/{chunk-FGVYJPT4.js.map → chunk-DUJINSKJ.js.map} +0 -0
- /package/dist/{chunk-DPU7VTTV.js.map → chunk-GEJQRRD2.js.map} +0 -0
- /package/dist/{chunk-HKBV4OJK.js.map → chunk-HHS3CJ7G.js.map} +0 -0
- /package/dist/{chunk-GFBCUSFN.js.map → chunk-I7NP2ZAJ.js.map} +0 -0
- /package/dist/{chunk-JI7EPGRA.js.map → chunk-IK22LSYP.js.map} +0 -0
- /package/dist/{chunk-GOTCZBP2.js.map → chunk-J7VJHE6O.js.map} +0 -0
- /package/dist/{chunk-N7MH2OSW.js.map → chunk-S5B3ZX6U.js.map} +0 -0
- /package/dist/{chunk-A4X3DZSS.js.map → chunk-YX7RIC4Z.js.map} +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkPNWORHORcjs = require('./chunk-PNWORHOR.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
@@ -59,7 +59,7 @@ function PdfViewer({ src, fileName, onPreview, onDownload, height }) {
|
|
|
59
59
|
)
|
|
60
60
|
] })
|
|
61
61
|
] }),
|
|
62
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
62
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPNWORHORcjs.EmbedIframe, { src, title: displayName, height })
|
|
63
63
|
] });
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -85,7 +85,7 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
|
|
|
85
85
|
{
|
|
86
86
|
variant: "outline",
|
|
87
87
|
size: "small-legacy",
|
|
88
|
-
href:
|
|
88
|
+
href: _chunkPNWORHORcjs.toGoogleSheetsOriginalUrl.call(void 0, externalUrl),
|
|
89
89
|
openInNewTab: true,
|
|
90
90
|
leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.GoogleSheetsIcon, { className: "w-4 h-4" }),
|
|
91
91
|
rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-4 h-4" }),
|
|
@@ -95,9 +95,9 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
|
|
|
95
95
|
)
|
|
96
96
|
] }),
|
|
97
97
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
98
|
-
|
|
98
|
+
_chunkPNWORHORcjs.EmbedIframe,
|
|
99
99
|
{
|
|
100
|
-
src:
|
|
100
|
+
src: _chunkPNWORHORcjs.toGoogleSheetsEmbedUrl.call(void 0, externalUrl),
|
|
101
101
|
title: displayName,
|
|
102
102
|
height
|
|
103
103
|
}
|
|
@@ -120,7 +120,7 @@ function FileDownloadCard({
|
|
|
120
120
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-lg font-semibold text-ods-text-primary", children: fileName || "File" }),
|
|
121
121
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-center gap-3 mt-2 text-sm text-ods-text-secondary", children: [
|
|
122
122
|
mimeType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: mimeType }),
|
|
123
|
-
typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children:
|
|
123
|
+
typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _chunkPNWORHORcjs.formatFileSize.call(void 0, fileSize) })
|
|
124
124
|
] })
|
|
125
125
|
] }),
|
|
126
126
|
fileUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -141,4 +141,4 @@ function FileDownloadCard({
|
|
|
141
141
|
|
|
142
142
|
|
|
143
143
|
exports.PdfViewer = PdfViewer; exports.GoogleSheetsViewer = GoogleSheetsViewer; exports.FileDownloadCard = FileDownloadCard;
|
|
144
|
-
//# sourceMappingURL=chunk-
|
|
144
|
+
//# sourceMappingURL=chunk-GBE2R7R4.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/openframe-oss-lib/openframe-oss-lib/openframe-frontend-core/dist/chunk-DPFJPCFL.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-DPFJPCFL.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 { EmbedIframe } from './embed-iframe'\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 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 <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <AdobePdfIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-xl font-semibold text-ods-text-primary truncate\">{displayName}</h2>\n </div>\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 </div>\n <EmbedIframe src={src} title={displayName} height={height} />\n </div>\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 { EmbedIframe } from './embed-iframe'\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 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 <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <GoogleSheetsIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-xl font-semibold text-ods-text-primary truncate\">{displayName}</h2>\n </div>\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 </div>\n <EmbedIframe\n src={toGoogleSheetsEmbedUrl(externalUrl)}\n title={displayName}\n height={height}\n />\n </div>\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-lg font-semibold text-ods-text-primary\">\n {fileName || 'File'}\n </h3>\n <div className=\"flex items-center justify-center gap-3 mt-2 text-sm 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-GBE2R7R4.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-GBE2R7R4.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 { EmbedIframe } from './embed-iframe'\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 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 <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <AdobePdfIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-xl font-semibold text-ods-text-primary truncate\">{displayName}</h2>\n </div>\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 </div>\n <EmbedIframe src={src} title={displayName} height={height} />\n </div>\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 { EmbedIframe } from './embed-iframe'\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 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 <div className=\"space-y-4\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n <div className=\"flex items-center gap-2 min-w-0\">\n <GoogleSheetsIcon className=\"w-5 h-5 shrink-0\" />\n <h2 className=\"text-xl font-semibold text-ods-text-primary truncate\">{displayName}</h2>\n </div>\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 </div>\n <EmbedIframe\n src={toGoogleSheetsEmbedUrl(externalUrl)}\n title={displayName}\n height={height}\n />\n </div>\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-lg font-semibold text-ods-text-primary\">\n {fileName || 'File'}\n </h3>\n <div className=\"flex items-center justify-center gap-3 mt-2 text-sm 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"]}
|
|
@@ -4,10 +4,10 @@ import {
|
|
|
4
4
|
EmptyState,
|
|
5
5
|
init_unified_pagination,
|
|
6
6
|
unified_pagination_exports
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HHS3CJ7G.js";
|
|
8
8
|
import {
|
|
9
9
|
DetailPageSkeleton
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-S5B3ZX6U.js";
|
|
11
11
|
import {
|
|
12
12
|
useSelfFetch
|
|
13
13
|
} from "./chunk-65VXW6GZ.js";
|
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
isModifierClick,
|
|
40
40
|
resolveContentHref,
|
|
41
41
|
useEntityCardLink
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-I54DGTLP.js";
|
|
43
43
|
import {
|
|
44
44
|
STICKY_HEADER_OFFSET_PX,
|
|
45
45
|
contentFetch,
|
|
@@ -1461,4 +1461,4 @@ export {
|
|
|
1461
1461
|
useLegalDocs,
|
|
1462
1462
|
LegalDocumentPage
|
|
1463
1463
|
};
|
|
1464
|
-
//# sourceMappingURL=chunk-
|
|
1464
|
+
//# sourceMappingURL=chunk-GEJQRRD2.js.map
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
TASK_TYPE_TEXT_COLORS,
|
|
12
12
|
getStatusColorScheme,
|
|
13
13
|
init_pagination
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-I54DGTLP.js";
|
|
15
15
|
import {
|
|
16
16
|
init_next_navigation,
|
|
17
17
|
usePathname,
|
|
@@ -459,4 +459,4 @@ export {
|
|
|
459
459
|
DevCardRowSkeletonList,
|
|
460
460
|
DeliveryRow
|
|
461
461
|
};
|
|
462
|
-
//# sourceMappingURL=chunk-
|
|
462
|
+
//# sourceMappingURL=chunk-HHS3CJ7G.js.map
|
|
@@ -13078,36 +13078,43 @@ function InfoCard({ data, className = "" }) {
|
|
|
13078
13078
|
className
|
|
13079
13079
|
),
|
|
13080
13080
|
children: [
|
|
13081
|
-
/* @__PURE__ */ jsxs72("div", { className: "p-[var(--spacing-system-m)] flex flex-col gap-[var(--spacing-system-
|
|
13082
|
-
data.title && /* @__PURE__ */ jsxs72("div", { className: "flex
|
|
13083
|
-
/* @__PURE__ */
|
|
13084
|
-
|
|
13081
|
+
/* @__PURE__ */ jsxs72("div", { className: "p-[var(--spacing-system-m)] flex flex-col gap-[var(--spacing-system-l)] items-start w-full", children: [
|
|
13082
|
+
(data.title || data.subtitle) && /* @__PURE__ */ jsxs72("div", { className: "flex flex-col items-start self-stretch w-full", children: [
|
|
13083
|
+
data.title && /* @__PURE__ */ jsxs72("div", { className: "flex items-center gap-[var(--spacing-system-xsf)] self-stretch", children: [
|
|
13084
|
+
/* @__PURE__ */ jsx91("span", { className: "text-h4 text-ods-text-primary truncate min-w-0", title: data.title, children: data.title }),
|
|
13085
|
+
data.icon
|
|
13086
|
+
] }),
|
|
13087
|
+
data.subtitle && /* @__PURE__ */ jsxs72("div", { className: "flex items-center gap-[var(--spacing-system-xsf)] self-stretch", children: [
|
|
13088
|
+
/* @__PURE__ */ jsx91("span", { className: "text-h4 text-ods-text-secondary truncate min-w-0", title: data.subtitle, children: data.subtitle }),
|
|
13089
|
+
!data.title && data.icon
|
|
13090
|
+
] })
|
|
13085
13091
|
] }),
|
|
13086
|
-
data.
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
|
|
13090
|
-
|
|
13092
|
+
(data.items.length > 0 || data.progress) && /* @__PURE__ */ jsxs72("div", { className: "flex flex-col gap-[var(--spacing-system-xs)] items-start self-stretch w-full", children: [
|
|
13093
|
+
data.items.map((item, index) => {
|
|
13094
|
+
const values = Array.isArray(item.value) ? item.value : [item.value];
|
|
13095
|
+
return /* @__PURE__ */ jsx91(React40.Fragment, { children: values.map((val, valIndex) => /* @__PURE__ */ jsx91(
|
|
13096
|
+
InfoCardValueRow,
|
|
13097
|
+
{
|
|
13098
|
+
label: item.label,
|
|
13099
|
+
value: val,
|
|
13100
|
+
showLabel: valIndex === 0,
|
|
13101
|
+
copyable: item.copyable,
|
|
13102
|
+
icon: valIndex === 0 ? item.icon : void 0,
|
|
13103
|
+
copyAriaLabel: `Copy ${item.label ?? "value"} ${valIndex + 1}`
|
|
13104
|
+
},
|
|
13105
|
+
`${index}-${valIndex}`
|
|
13106
|
+
)) }, index);
|
|
13107
|
+
}),
|
|
13108
|
+
data.progress && /* @__PURE__ */ jsx91(
|
|
13109
|
+
ProgressBar,
|
|
13091
13110
|
{
|
|
13092
|
-
|
|
13093
|
-
|
|
13094
|
-
|
|
13095
|
-
|
|
13096
|
-
|
|
13097
|
-
|
|
13098
|
-
|
|
13099
|
-
`${index}-${valIndex}`
|
|
13100
|
-
)) }, index);
|
|
13101
|
-
}),
|
|
13102
|
-
data.progress && /* @__PURE__ */ jsx91(
|
|
13103
|
-
ProgressBar,
|
|
13104
|
-
{
|
|
13105
|
-
progress: data.progress.value,
|
|
13106
|
-
warningThreshold: data.progress.warningThreshold,
|
|
13107
|
-
criticalThreshold: data.progress.criticalThreshold,
|
|
13108
|
-
inverted: data.progress.inverted
|
|
13109
|
-
}
|
|
13110
|
-
)
|
|
13111
|
+
progress: data.progress.value,
|
|
13112
|
+
warningThreshold: data.progress.warningThreshold,
|
|
13113
|
+
criticalThreshold: data.progress.criticalThreshold,
|
|
13114
|
+
inverted: data.progress.inverted
|
|
13115
|
+
}
|
|
13116
|
+
)
|
|
13117
|
+
] })
|
|
13111
13118
|
] }),
|
|
13112
13119
|
data.footer && /* @__PURE__ */ jsx91(InfoCardFooter, { footer: data.footer })
|
|
13113
13120
|
]
|
|
@@ -19983,6 +19990,15 @@ function EntityImage({ src, alt, fallbackText, className }) {
|
|
|
19983
19990
|
// src/components/layout/title-block.tsx
|
|
19984
19991
|
import { jsx as jsx146, jsxs as jsxs118 } from "react/jsx-runtime";
|
|
19985
19992
|
var TITLE_BLOCK_MIN_HEIGHT = "min-h-11 md:min-h-12";
|
|
19993
|
+
function TitleTextSkeleton({ widthClass, heightClass }) {
|
|
19994
|
+
return /* @__PURE__ */ jsx146(
|
|
19995
|
+
"span",
|
|
19996
|
+
{
|
|
19997
|
+
"aria-hidden": true,
|
|
19998
|
+
className: cn("inline-block max-w-full rounded-md bg-ods-border animate-pulse", widthClass, heightClass)
|
|
19999
|
+
}
|
|
20000
|
+
);
|
|
20001
|
+
}
|
|
19986
20002
|
function TitleBlock({
|
|
19987
20003
|
title,
|
|
19988
20004
|
subtitle,
|
|
@@ -19994,7 +20010,9 @@ function TitleBlock({
|
|
|
19994
20010
|
selector,
|
|
19995
20011
|
variant = "plain",
|
|
19996
20012
|
className,
|
|
19997
|
-
titleSize = "h2"
|
|
20013
|
+
titleSize = "h2",
|
|
20014
|
+
titleAdornment,
|
|
20015
|
+
loading
|
|
19998
20016
|
}) {
|
|
19999
20017
|
const hasActions = actions && actions.length > 0;
|
|
20000
20018
|
const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
|
|
@@ -20025,7 +20043,7 @@ function TitleBlock({
|
|
|
20025
20043
|
className: "hidden md:inline-flex"
|
|
20026
20044
|
}
|
|
20027
20045
|
),
|
|
20028
|
-
image || subtitle ? /* @__PURE__ */ jsxs118("div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20046
|
+
image || subtitle || loading ? /* @__PURE__ */ jsxs118("div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20029
20047
|
image && /* @__PURE__ */ jsx146(
|
|
20030
20048
|
EntityImage,
|
|
20031
20049
|
{
|
|
@@ -20035,10 +20053,16 @@ function TitleBlock({
|
|
|
20035
20053
|
}
|
|
20036
20054
|
),
|
|
20037
20055
|
/* @__PURE__ */ jsxs118("div", { className: "flex flex-col justify-center min-w-0 flex-1", children: [
|
|
20038
|
-
title && /* @__PURE__ */
|
|
20039
|
-
|
|
20056
|
+
(loading || title) && (titleAdornment ? /* @__PURE__ */ jsxs118("div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20057
|
+
/* @__PURE__ */ jsx146("h1", { className: cn(titleClass, "text-ods-text-primary truncate min-w-0"), title, children: loading ? /* @__PURE__ */ jsx146(TitleTextSkeleton, { widthClass: "w-48 md:w-72", heightClass: "h-4 md:h-6" }) : title }),
|
|
20058
|
+
/* @__PURE__ */ jsx146("span", { className: "shrink-0", children: titleAdornment })
|
|
20059
|
+
] }) : /* @__PURE__ */ jsx146("h1", { className: cn(titleClass, "text-ods-text-primary truncate"), title, children: loading ? /* @__PURE__ */ jsx146(TitleTextSkeleton, { widthClass: "w-48 md:w-72", heightClass: "h-4 md:h-6" }) : title })),
|
|
20060
|
+
subtitle && /* @__PURE__ */ jsx146("p", { className: "text-h6 text-ods-text-secondary truncate", title: subtitle, children: loading ? /* @__PURE__ */ jsx146(TitleTextSkeleton, { widthClass: "w-28 md:w-36", heightClass: "h-2.5 md:h-3" }) : subtitle })
|
|
20040
20061
|
] })
|
|
20041
|
-
] }) : title && /* @__PURE__ */
|
|
20062
|
+
] }) : title && (titleAdornment ? /* @__PURE__ */ jsxs118("div", { className: "flex items-center gap-[var(--spacing-system-m)] min-w-0 w-full", children: [
|
|
20063
|
+
/* @__PURE__ */ jsx146("h1", { className: cn(titleClass, "text-ods-text-primary truncate min-w-0"), title, children: title }),
|
|
20064
|
+
/* @__PURE__ */ jsx146("span", { className: "shrink-0", children: titleAdornment })
|
|
20065
|
+
] }) : /* @__PURE__ */ jsx146("h1", { className: cn(titleClass, "text-ods-text-primary"), children: title }))
|
|
20042
20066
|
] }),
|
|
20043
20067
|
(hasActions || hasMenuActions || selector) && /* @__PURE__ */ jsx146("div", { className: "flex gap-2 items-center shrink-0", children: /* @__PURE__ */ jsx146(
|
|
20044
20068
|
PageActions,
|
|
@@ -20070,11 +20094,13 @@ function PageLayout({
|
|
|
20070
20094
|
className,
|
|
20071
20095
|
contentClassName,
|
|
20072
20096
|
showHeader = true,
|
|
20073
|
-
titleSize
|
|
20097
|
+
titleSize,
|
|
20098
|
+
titleAdornment,
|
|
20099
|
+
loading
|
|
20074
20100
|
}) {
|
|
20075
20101
|
const hasActions = actions && actions.length > 0;
|
|
20076
20102
|
const needsBottomPadding = hasActions && actionsVariant === "primary-buttons";
|
|
20077
|
-
const hasHeader = showHeader && (title || subtitle || image || backButton || hasActions || selector);
|
|
20103
|
+
const hasHeader = showHeader && (title || subtitle || image || backButton || hasActions || selector || loading);
|
|
20078
20104
|
return /* @__PURE__ */ jsxs119("div", { className: cn("flex flex-col w-full", className), children: [
|
|
20079
20105
|
hasHeader && /* @__PURE__ */ jsx147(
|
|
20080
20106
|
TitleBlock,
|
|
@@ -20088,7 +20114,9 @@ function PageLayout({
|
|
|
20088
20114
|
menuActions,
|
|
20089
20115
|
selector,
|
|
20090
20116
|
variant: headerVariant,
|
|
20091
|
-
titleSize
|
|
20117
|
+
titleSize,
|
|
20118
|
+
titleAdornment,
|
|
20119
|
+
loading
|
|
20092
20120
|
}
|
|
20093
20121
|
),
|
|
20094
20122
|
/* @__PURE__ */ jsx147("div", { className: cn("flex flex-col flex-1 gap-[var(--spacing-system-l)]", needsBottomPadding && "pb-28 md:pb-0", contentClassName), children })
|
|
@@ -50079,4 +50107,4 @@ export {
|
|
|
50079
50107
|
FAE_AVATAR_DATA_URI,
|
|
50080
50108
|
assets
|
|
50081
50109
|
};
|
|
50082
|
-
//# sourceMappingURL=chunk-
|
|
50110
|
+
//# sourceMappingURL=chunk-I54DGTLP.js.map
|