@osdk/react-components 0.45.0 → 0.46.0
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/AGENTS.md +29 -29
- package/CHANGELOG.md +6 -0
- package/README.md +14 -14
- package/build/browser/document-viewer/DocumentViewer.js +6 -6
- package/build/browser/document-viewer/DocumentViewer.js.map +1 -1
- package/build/browser/document-viewer/DocumentViewerApi.js +1 -1
- package/build/browser/document-viewer/DocumentViewerApi.js.map +1 -1
- package/build/browser/object-table/ObjectTableApi.js.map +1 -1
- package/build/browser/public/experimental/{excel-viewer.js → spreadsheet-viewer.js} +6 -6
- package/build/browser/public/experimental/spreadsheet-viewer.js.map +1 -0
- package/build/browser/public/experimental.js +1 -1
- package/build/browser/public/experimental.js.map +1 -1
- package/build/{esm/excel-viewer/BaseExcelViewer.js → browser/spreadsheet-viewer/BaseSpreadsheetViewer.js} +3 -3
- package/build/browser/spreadsheet-viewer/BaseSpreadsheetViewer.js.map +1 -0
- package/build/{esm/excel-viewer/BaseExcelViewer.module.css → browser/spreadsheet-viewer/BaseSpreadsheetViewer.module.css} +33 -33
- package/build/browser/spreadsheet-viewer/BaseSpreadsheetViewer.module.css.js +20 -0
- package/build/browser/{excel-viewer/ExcelViewer.js → spreadsheet-viewer/SpreadsheetViewer.js} +7 -7
- package/build/browser/spreadsheet-viewer/SpreadsheetViewer.js.map +1 -0
- package/build/browser/spreadsheet-viewer/SpreadsheetViewerApi.js +2 -0
- package/build/browser/spreadsheet-viewer/SpreadsheetViewerApi.js.map +1 -0
- package/build/browser/spreadsheet-viewer/parseSpreadsheet.js.map +1 -0
- package/build/browser/styles.css +199 -197
- package/build/browser/tokens/component-tokens/spreadsheet-viewer.css +25 -0
- package/build/browser/tokens.css +1 -1
- package/build/browser/util/UserAgent.js +1 -1
- package/build/cjs/{ExcelViewerApi-D8tqiUvS.d.cts → SpreadsheetViewerApi-C4-gqkkY.d.cts} +4 -4
- package/build/cjs/{chunk-MG7UDVZR.cjs → chunk-2CKESSXH.cjs} +11 -11
- package/build/cjs/chunk-2CKESSXH.cjs.map +1 -0
- package/build/cjs/{chunk-GKDO6NU7.cjs → chunk-3C5JRKBJ.cjs} +30 -30
- package/build/cjs/chunk-3C5JRKBJ.cjs.map +1 -0
- package/build/cjs/{chunk-EIOTTIUV.cjs → chunk-A4PDCZUY.cjs} +4 -4
- package/build/cjs/{chunk-EIOTTIUV.cjs.map → chunk-A4PDCZUY.cjs.map} +1 -1
- package/build/cjs/{chunk-QQXBGYWP.cjs → chunk-AEQDZPU3.cjs} +4 -4
- package/build/cjs/{chunk-QQXBGYWP.cjs.map → chunk-AEQDZPU3.cjs.map} +1 -1
- package/build/cjs/{chunk-TVK2XLNJ.cjs → chunk-BLPXZKVC.cjs} +3 -3
- package/build/cjs/{chunk-TVK2XLNJ.cjs.map → chunk-BLPXZKVC.cjs.map} +1 -1
- package/build/cjs/chunk-D2NDALCM.cjs +11 -0
- package/build/cjs/chunk-D2NDALCM.cjs.map +1 -0
- package/build/cjs/chunk-I3KITN2A.cjs +11 -0
- package/build/cjs/{chunk-YCSU5IMD.cjs.map → chunk-I3KITN2A.cjs.map} +1 -1
- package/build/cjs/{chunk-T6SDOLIX.cjs → chunk-KGJWCRXE.cjs} +4 -4
- package/build/cjs/{chunk-T6SDOLIX.cjs.map → chunk-KGJWCRXE.cjs.map} +1 -1
- package/build/cjs/chunk-L4MQGDXA.cjs +11 -0
- package/build/cjs/{chunk-4VNSLY36.cjs.map → chunk-L4MQGDXA.cjs.map} +1 -1
- package/build/cjs/chunk-LS44RU72.cjs +11 -0
- package/build/cjs/{chunk-AU6YJLRT.cjs.map → chunk-LS44RU72.cjs.map} +1 -1
- package/build/cjs/{chunk-NER4ODIR.cjs → chunk-NK5S5G7V.cjs} +4 -4
- package/build/cjs/{chunk-NER4ODIR.cjs.map → chunk-NK5S5G7V.cjs.map} +1 -1
- package/build/cjs/chunk-T65VAHZ3.cjs +11 -0
- package/build/cjs/{chunk-KSCR5PCE.cjs.map → chunk-T65VAHZ3.cjs.map} +1 -1
- package/build/cjs/{chunk-WALOYQVH.cjs → chunk-UNK7YFKE.cjs} +4 -4
- package/build/cjs/{chunk-WALOYQVH.cjs.map → chunk-UNK7YFKE.cjs.map} +1 -1
- package/build/cjs/{chunk-7NPZBKYH.cjs → chunk-VMFLHUR7.cjs} +4 -4
- package/build/cjs/{chunk-7NPZBKYH.cjs.map → chunk-VMFLHUR7.cjs.map} +1 -1
- package/build/cjs/{chunk-KKRHM5JK.cjs → chunk-WMGFXPN6.cjs} +4 -4
- package/build/cjs/{chunk-KKRHM5JK.cjs.map → chunk-WMGFXPN6.cjs.map} +1 -1
- package/build/cjs/public/experimental/action-form.cjs +4 -4
- package/build/cjs/public/experimental/cbac-picker.cjs +11 -11
- package/build/cjs/public/experimental/document-viewer.cjs +5 -5
- package/build/cjs/public/experimental/document-viewer.css +122 -122
- package/build/cjs/public/experimental/document-viewer.css.map +1 -1
- package/build/cjs/public/experimental/document-viewer.d.cts +5 -5
- package/build/cjs/public/experimental/email-viewer.cjs +3 -3
- package/build/cjs/public/experimental/filter-list.cjs +15 -15
- package/build/cjs/public/experimental/image-viewer.cjs +3 -3
- package/build/cjs/public/experimental/markdown-renderer.cjs +3 -3
- package/build/cjs/public/experimental/object-table.cjs +21 -21
- package/build/cjs/public/experimental/object-table.d.cts +1 -1
- package/build/cjs/public/experimental/pdf-viewer.cjs +7 -7
- package/build/cjs/public/experimental/spreadsheet-viewer.cjs +20 -0
- package/build/cjs/public/experimental/spreadsheet-viewer.cjs.map +1 -0
- package/build/cjs/public/experimental/spreadsheet-viewer.css +122 -0
- package/build/cjs/public/experimental/spreadsheet-viewer.css.map +1 -0
- package/build/cjs/public/experimental/spreadsheet-viewer.d.cts +12 -0
- package/build/cjs/public/experimental/tiff-renderer.cjs +3 -3
- package/build/cjs/public/experimental/video-viewer.cjs +3 -3
- package/build/cjs/public/experimental/xml-viewer.cjs +3 -3
- package/build/cjs/public/experimental.cjs +79 -79
- package/build/cjs/public/experimental.css +122 -122
- package/build/cjs/public/experimental.css.map +1 -1
- package/build/cjs/public/experimental.d.cts +2 -2
- package/build/esm/document-viewer/DocumentViewer.js +6 -6
- package/build/esm/document-viewer/DocumentViewer.js.map +1 -1
- package/build/esm/document-viewer/DocumentViewerApi.js +1 -1
- package/build/esm/document-viewer/DocumentViewerApi.js.map +1 -1
- package/build/esm/object-table/ObjectTableApi.js.map +1 -1
- package/build/esm/public/experimental/{excel-viewer.js → spreadsheet-viewer.js} +6 -6
- package/build/esm/public/experimental/spreadsheet-viewer.js.map +1 -0
- package/build/esm/public/experimental.js +1 -1
- package/build/esm/public/experimental.js.map +1 -1
- package/build/{browser/excel-viewer/BaseExcelViewer.js → esm/spreadsheet-viewer/BaseSpreadsheetViewer.js} +3 -3
- package/build/esm/spreadsheet-viewer/BaseSpreadsheetViewer.js.map +1 -0
- package/build/{browser/excel-viewer/BaseExcelViewer.module.css → esm/spreadsheet-viewer/BaseSpreadsheetViewer.module.css} +33 -33
- package/build/esm/{excel-viewer/ExcelViewer.js → spreadsheet-viewer/SpreadsheetViewer.js} +7 -7
- package/build/esm/spreadsheet-viewer/SpreadsheetViewer.js.map +1 -0
- package/build/esm/spreadsheet-viewer/SpreadsheetViewerApi.js +2 -0
- package/build/esm/spreadsheet-viewer/SpreadsheetViewerApi.js.map +1 -0
- package/build/esm/spreadsheet-viewer/parseSpreadsheet.js.map +1 -0
- package/build/esm/tokens/component-tokens/spreadsheet-viewer.css +25 -0
- package/build/esm/tokens.css +1 -1
- package/build/esm/util/UserAgent.js +1 -1
- package/build/types/document-viewer/DocumentViewer.d.ts +1 -1
- package/build/types/document-viewer/DocumentViewer.d.ts.map +1 -1
- package/build/types/document-viewer/DocumentViewerApi.d.ts +4 -4
- package/build/types/document-viewer/DocumentViewerApi.d.ts.map +1 -1
- package/build/types/object-table/ObjectTableApi.d.ts +1 -1
- package/build/types/public/experimental/spreadsheet-viewer.d.ts +4 -0
- package/build/types/public/experimental/spreadsheet-viewer.d.ts.map +1 -0
- package/build/types/public/experimental.d.ts +1 -1
- package/build/types/spreadsheet-viewer/BaseSpreadsheetViewer.d.ts +3 -0
- package/build/types/spreadsheet-viewer/BaseSpreadsheetViewer.d.ts.map +1 -0
- package/build/types/spreadsheet-viewer/SpreadsheetViewer.d.ts +3 -0
- package/build/types/spreadsheet-viewer/SpreadsheetViewer.d.ts.map +1 -0
- package/build/types/{excel-viewer/ExcelViewerApi.d.ts → spreadsheet-viewer/SpreadsheetViewerApi.d.ts} +3 -3
- package/build/types/spreadsheet-viewer/SpreadsheetViewerApi.d.ts.map +1 -0
- package/build/types/{excel-viewer → spreadsheet-viewer}/parseSpreadsheet.d.ts +1 -1
- package/build/types/spreadsheet-viewer/parseSpreadsheet.d.ts.map +1 -0
- package/docs/CSSVariables.md +25 -25
- package/docs/DocumentViewer.md +25 -25
- package/docs/ObjectTable.md +1 -1
- package/docs/{ExcelViewer.md → SpreadsheetViewer.md} +26 -24
- package/docs/Welcome.md +7 -7
- package/package.json +13 -13
- package/build/browser/excel-viewer/BaseExcelViewer.js.map +0 -1
- package/build/browser/excel-viewer/BaseExcelViewer.module.css.js +0 -20
- package/build/browser/excel-viewer/ExcelViewer.js.map +0 -1
- package/build/browser/excel-viewer/ExcelViewerApi.js +0 -2
- package/build/browser/excel-viewer/ExcelViewerApi.js.map +0 -1
- package/build/browser/excel-viewer/parseSpreadsheet.js.map +0 -1
- package/build/browser/public/experimental/excel-viewer.js.map +0 -1
- package/build/browser/tokens/component-tokens/excel-viewer.css +0 -23
- package/build/cjs/chunk-4VNSLY36.cjs +0 -11
- package/build/cjs/chunk-AU6YJLRT.cjs +0 -11
- package/build/cjs/chunk-GKDO6NU7.cjs.map +0 -1
- package/build/cjs/chunk-J4HBV3P2.cjs +0 -11
- package/build/cjs/chunk-J4HBV3P2.cjs.map +0 -1
- package/build/cjs/chunk-KSCR5PCE.cjs +0 -11
- package/build/cjs/chunk-MG7UDVZR.cjs.map +0 -1
- package/build/cjs/chunk-YCSU5IMD.cjs +0 -11
- package/build/cjs/public/experimental/excel-viewer.cjs +0 -20
- package/build/cjs/public/experimental/excel-viewer.cjs.map +0 -1
- package/build/cjs/public/experimental/excel-viewer.css +0 -122
- package/build/cjs/public/experimental/excel-viewer.css.map +0 -1
- package/build/cjs/public/experimental/excel-viewer.d.cts +0 -12
- package/build/esm/excel-viewer/BaseExcelViewer.js.map +0 -1
- package/build/esm/excel-viewer/ExcelViewer.js.map +0 -1
- package/build/esm/excel-viewer/ExcelViewerApi.js +0 -2
- package/build/esm/excel-viewer/ExcelViewerApi.js.map +0 -1
- package/build/esm/excel-viewer/parseSpreadsheet.js.map +0 -1
- package/build/esm/public/experimental/excel-viewer.js.map +0 -1
- package/build/esm/tokens/component-tokens/excel-viewer.css +0 -23
- package/build/types/excel-viewer/BaseExcelViewer.d.ts +0 -3
- package/build/types/excel-viewer/BaseExcelViewer.d.ts.map +0 -1
- package/build/types/excel-viewer/ExcelViewer.d.ts +0 -3
- package/build/types/excel-viewer/ExcelViewer.d.ts.map +0 -1
- package/build/types/excel-viewer/ExcelViewerApi.d.ts.map +0 -1
- package/build/types/excel-viewer/parseSpreadsheet.d.ts.map +0 -1
- package/build/types/public/experimental/excel-viewer.d.ts +0 -4
- package/build/types/public/experimental/excel-viewer.d.ts.map +0 -1
- /package/build/browser/{excel-viewer → spreadsheet-viewer}/parseSpreadsheet.js +0 -0
- /package/build/esm/{excel-viewer → spreadsheet-viewer}/parseSpreadsheet.js +0 -0
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
const PACKAGE_USER_AGENT = `osdk-react-components/${"0.
|
|
17
|
+
const PACKAGE_USER_AGENT = `osdk-react-components/${"0.46.0"}`;
|
|
18
18
|
export function componentUserAgent(componentName) {
|
|
19
19
|
return `${PACKAGE_USER_AGENT}/${componentName}`;
|
|
20
20
|
}
|
|
@@ -10,16 +10,16 @@ interface ParsedSpreadsheet {
|
|
|
10
10
|
/** All sheets in the workbook */
|
|
11
11
|
sheets: readonly SheetData[];
|
|
12
12
|
}
|
|
13
|
-
interface
|
|
13
|
+
interface BaseSpreadsheetViewerProps {
|
|
14
14
|
/** Parsed spreadsheet data */
|
|
15
15
|
spreadsheet: ParsedSpreadsheet;
|
|
16
16
|
/** Additional CSS class name for the root element
|
|
17
17
|
* @default undefined */
|
|
18
18
|
className?: string;
|
|
19
19
|
}
|
|
20
|
-
interface
|
|
21
|
-
/** The Media object to fetch
|
|
20
|
+
interface SpreadsheetViewerMediaProps extends Omit<BaseSpreadsheetViewerProps, "spreadsheet"> {
|
|
21
|
+
/** The Media object to fetch spreadsheet contents from */
|
|
22
22
|
media: Media;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
export type {
|
|
25
|
+
export type { BaseSpreadsheetViewerProps as B, ParsedSpreadsheet as P, SheetData as S, SpreadsheetViewerMediaProps as a };
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
var chunkKHMOMROL_cjs = require('./chunk-KHMOMROL.cjs');
|
|
4
4
|
var chunkRVZE7LPI_cjs = require('./chunk-RVZE7LPI.cjs');
|
|
5
|
-
var chunkGKDO6NU7_cjs = require('./chunk-GKDO6NU7.cjs');
|
|
6
5
|
var chunkVOROB7KJ_cjs = require('./chunk-VOROB7KJ.cjs');
|
|
7
6
|
var chunkP55Q2MCT_cjs = require('./chunk-P55Q2MCT.cjs');
|
|
8
7
|
var chunkXJDMSVW4_cjs = require('./chunk-XJDMSVW4.cjs');
|
|
8
|
+
var chunk3C5JRKBJ_cjs = require('./chunk-3C5JRKBJ.cjs');
|
|
9
9
|
var chunkLB3IHFAB_cjs = require('./chunk-LB3IHFAB.cjs');
|
|
10
10
|
var chunkUCTQICPR_cjs = require('./chunk-UCTQICPR.cjs');
|
|
11
11
|
var chunkOISZU73V_cjs = require('./chunk-OISZU73V.cjs');
|
|
12
|
-
var
|
|
12
|
+
var chunkBLPXZKVC_cjs = require('./chunk-BLPXZKVC.cjs');
|
|
13
13
|
var icons = require('@blueprintjs/icons');
|
|
14
14
|
var classnames = require('classnames');
|
|
15
15
|
var React2 = require('react');
|
|
@@ -48,7 +48,7 @@ var ViewerType = /* @__PURE__ */ (function(ViewerType2) {
|
|
|
48
48
|
ViewerType2["Image"] = "image";
|
|
49
49
|
ViewerType2["Video"] = "video";
|
|
50
50
|
ViewerType2["Markdown"] = "markdown";
|
|
51
|
-
ViewerType2["
|
|
51
|
+
ViewerType2["Spreadsheet"] = "spreadsheet";
|
|
52
52
|
ViewerType2["Email"] = "email";
|
|
53
53
|
ViewerType2["Xml"] = "xml";
|
|
54
54
|
ViewerType2["Unsupported"] = "unsupported";
|
|
@@ -218,7 +218,7 @@ function getViewerType(mimeType, fileName) {
|
|
|
218
218
|
return ViewerType.Markdown;
|
|
219
219
|
}
|
|
220
220
|
if (mimeType === "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") {
|
|
221
|
-
return ViewerType.
|
|
221
|
+
return ViewerType.Spreadsheet;
|
|
222
222
|
}
|
|
223
223
|
if (mimeType === "message/rfc822") {
|
|
224
224
|
return ViewerType.Email;
|
|
@@ -237,7 +237,7 @@ function DocumentViewer({
|
|
|
237
237
|
videoViewerProps,
|
|
238
238
|
tiffRendererProps,
|
|
239
239
|
markdownRendererProps,
|
|
240
|
-
|
|
240
|
+
spreadsheetViewerProps,
|
|
241
241
|
emailViewerProps,
|
|
242
242
|
xmlViewerProps,
|
|
243
243
|
fileName,
|
|
@@ -281,11 +281,11 @@ function DocumentViewer({
|
|
|
281
281
|
media,
|
|
282
282
|
className: rootClassName
|
|
283
283
|
}, markdownRendererProps));
|
|
284
|
-
case ViewerType.
|
|
285
|
-
return /* @__PURE__ */ React2__default.default.createElement(
|
|
284
|
+
case ViewerType.Spreadsheet:
|
|
285
|
+
return /* @__PURE__ */ React2__default.default.createElement(chunk3C5JRKBJ_cjs.SpreadsheetViewer, _extends2({
|
|
286
286
|
media,
|
|
287
287
|
className: rootClassName
|
|
288
|
-
},
|
|
288
|
+
}, spreadsheetViewerProps));
|
|
289
289
|
case ViewerType.Email:
|
|
290
290
|
return /* @__PURE__ */ React2__default.default.createElement(chunkOISZU73V_cjs.EmailViewer, _extends2({
|
|
291
291
|
media,
|
|
@@ -310,9 +310,9 @@ function DocumentViewer({
|
|
|
310
310
|
}
|
|
311
311
|
|
|
312
312
|
// src/public/experimental/document-viewer.ts
|
|
313
|
-
var DocumentViewer2 =
|
|
313
|
+
var DocumentViewer2 = chunkBLPXZKVC_cjs.withOsdkMetrics(DocumentViewer, "DocumentViewer");
|
|
314
314
|
|
|
315
315
|
exports.DocumentViewer = DocumentViewer2;
|
|
316
316
|
exports.ViewerType = ViewerType;
|
|
317
|
-
//# sourceMappingURL=chunk-
|
|
318
|
-
//# sourceMappingURL=chunk-
|
|
317
|
+
//# sourceMappingURL=chunk-2CKESSXH.cjs.map
|
|
318
|
+
//# sourceMappingURL=chunk-2CKESSXH.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/document-viewer/DocumentViewerApi.ts","../../src/document-viewer/hooks/useTiffToPdf.ts","../../src/document-viewer/DocumentViewer.module.css","../../src/document-viewer/TiffDocumentViewer.tsx","../../src/document-viewer/DocumentViewer.tsx","../../src/public/experimental/document-viewer.ts"],"names":["ViewerType","useOsdkClient","useState","useRef","useEffect","UTIF","__EXPERIMENTAL__NOT_SUPPORTED_YET__transformAndWait","React","Spin","BasePdfViewer","TiffViewerMedia","_extends","useMemo","classnames","PdfViewer","ImageViewer","VideoViewer","MarkdownViewerMedia","SpreadsheetViewer","EmailViewer","XmlViewer","DocumentIcon","assertUnreachable","DocumentViewer","withOsdkMetrics"],"mappings":"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","file":"chunk-2CKESSXH.cjs","sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport let ViewerType = /*#__PURE__*/function (ViewerType) {\n ViewerType[\"Pdf\"] = \"pdf\";\n ViewerType[\"Tiff\"] = \"tiff\";\n ViewerType[\"Image\"] = \"image\";\n ViewerType[\"Video\"] = \"video\";\n ViewerType[\"Markdown\"] = \"markdown\";\n ViewerType[\"Spreadsheet\"] = \"spreadsheet\";\n ViewerType[\"Email\"] = \"email\";\n ViewerType[\"Xml\"] = \"xml\";\n ViewerType[\"Unsupported\"] = \"unsupported\";\n return ViewerType;\n}({});","/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/* cspell:words ifds */\n\nimport { __EXPERIMENTAL__NOT_SUPPORTED_YET__transformAndWait } from \"@osdk/api/unstable\";\nimport { useOsdkClient } from \"@osdk/react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport * as UTIF from \"utif\";\nimport { ViewerType } from \"../DocumentViewerApi.js\";\nconst DISABLED_RESULT = {\n viewerType: ViewerType.Tiff,\n pdfData: undefined,\n loading: false,\n error: undefined\n};\n\n/**\n * Detects multi-page TIFFs and converts them to PDF via the MIO transform API.\n * Single-page TIFFs are left for the TiffRenderer to handle.\n *\n * @param media - The OSDK Media object (must be a TIFF)\n * @param enabled - Whether to attempt multi-page detection and conversion\n */\nexport function useTiffToPdf(media, enabled) {\n const client = useOsdkClient();\n const [result, setResult] = useState(DISABLED_RESULT);\n const mediaRef = useRef(media);\n mediaRef.current = media;\n useEffect(() => {\n if (!enabled) {\n setResult(DISABLED_RESULT);\n return;\n }\n let cancelled = false;\n setResult({\n viewerType: ViewerType.Tiff,\n pdfData: undefined,\n loading: true,\n error: undefined\n });\n async function detectAndTransform() {\n const currentMedia = mediaRef.current;\n\n // Step 1: Fetch TIFF bytes and count pages\n const response = await currentMedia.fetchContents();\n const buffer = await response.arrayBuffer();\n if (cancelled) return;\n const ifds = UTIF.decode(buffer);\n const pageCount = ifds.length;\n if (pageCount <= 1) {\n // Single-page TIFF — use TiffRenderer\n if (!cancelled) {\n setResult({\n viewerType: ViewerType.Tiff,\n pdfData: undefined,\n loading: false,\n error: undefined\n });\n }\n return;\n }\n\n // Step 2: Multi-page TIFF — convert to PDF via MIO transform\n const mediaReference = currentMedia.getMediaReference();\n const pdfResponse = await client(__EXPERIMENTAL__NOT_SUPPORTED_YET__transformAndWait).transformAndWait({\n mediaReference,\n transformation: {\n $imageToDocument: {\n $operation: {\n $createPdf: {}\n }\n }\n }\n });\n if (cancelled) return;\n const pdfBuffer = await pdfResponse.arrayBuffer();\n if (!cancelled) {\n setResult({\n viewerType: ViewerType.Pdf,\n pdfData: pdfBuffer,\n loading: false,\n error: undefined\n });\n }\n }\n detectAndTransform().catch(err => {\n if (!cancelled) {\n // eslint-disable-next-line no-console\n console.warn(\"TIFF to PDF conversion failed, falling back to TIFF renderer:\", err);\n setResult({\n viewerType: ViewerType.Tiff,\n pdfData: undefined,\n loading: false,\n error: err instanceof Error ? err : new Error(String(err))\n });\n }\n });\n return () => {\n cancelled = true;\n };\n }, [media, enabled, client]);\n return result;\n}",".container {\n display: flex;\n width: 100%;\n height: 100%;\n background-color: var(--osdk-document-viewer-bg);\n border: var(--osdk-document-viewer-border);\n border-radius: var(--osdk-surface-border-radius);\n overflow: hidden;\n}\n\n.unsupportedContainer {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: var(--osdk-surface-spacing);\n width: 100%;\n height: 100%;\n font-family: var(--osdk-typography-family-default);\n font-size: var(--osdk-typography-size-body-medium);\n color: var(--osdk-typography-color-muted);\n}\n\n.unsupportedIcon {\n flex-shrink: 0;\n}\n\n.loadingContainer {\n composes: loadingContainer from \"../shared/LoadingError.module.css\";\n width: 100%;\n}\n\n.spinnerIcon {\n composes: spinnerIcon from \"../shared/LoadingError.module.css\";\n}\n","function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\n/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Spin } from \"@blueprintjs/icons\";\nimport React from \"react\";\nimport { TiffViewerMedia } from \"../images/tiff-renderer/TiffViewerMedia.js\";\nimport { BasePdfViewer } from \"../pdf-viewer/PdfViewer.js\";\nimport { ViewerType } from \"./DocumentViewerApi.js\";\nimport { useTiffToPdf } from \"./hooks/useTiffToPdf.js\";\nimport styles from \"./DocumentViewer.module.css\";\nexport function TiffDocumentViewer({\n media,\n className,\n enableTiffToPdf,\n tiffRendererProps,\n pdfViewerProps\n}) {\n const {\n viewerType,\n pdfData,\n loading\n } = useTiffToPdf(media, enableTiffToPdf);\n if (loading) {\n return /*#__PURE__*/React.createElement(\"div\", {\n className: className\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: styles.loadingContainer\n }, /*#__PURE__*/React.createElement(Spin, {\n className: styles.spinnerIcon\n }), \"Converting document\\u2026\"));\n }\n if (viewerType === ViewerType.Pdf && pdfData != null) {\n return /*#__PURE__*/React.createElement(BasePdfViewer, _extends({\n src: pdfData,\n className: className\n }, pdfViewerProps));\n }\n return /*#__PURE__*/React.createElement(TiffViewerMedia, _extends({\n media: media,\n className: className\n }, tiffRendererProps));\n}","function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\n/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/* cspell:words openxmlformats officedocument wordprocessingml spreadsheetml */\n\nimport { Document as DocumentIcon } from \"@blueprintjs/icons\";\nimport classnames from \"classnames\";\nimport React, { useMemo } from \"react\";\nimport { EmailViewer } from \"../email-viewer/EmailViewer.js\";\nimport { ImageViewer } from \"../images/image-viewer/ImageViewer.js\";\nimport { TiffViewerMedia } from \"../images/tiff-renderer/TiffViewerMedia.js\";\nimport { MarkdownViewerMedia } from \"../markdown-renderer/MarkdownViewerMedia.js\";\nimport { PdfViewer } from \"../pdf-viewer/PdfRenderer.js\";\nimport { assertUnreachable } from \"../shared/assertUnreachable.js\";\nimport { SpreadsheetViewer } from \"../spreadsheet-viewer/SpreadsheetViewer.js\";\nimport { VideoViewer } from \"../video-viewer/VideoViewer.js\";\nimport { XmlViewer } from \"../xml-viewer/XmlViewer.js\";\nimport { ViewerType } from \"./DocumentViewerApi.js\";\nimport { TiffDocumentViewer } from \"./TiffDocumentViewer.js\";\nimport styles from \"./DocumentViewer.module.css\";\nconst IMAGE_MIME_TYPES = new Set([\"image/png\", \"image/jpeg\", \"image/gif\", \"image/svg+xml\", \"image/webp\", \"image/bmp\"]);\nconst MARKDOWN_MIME_TYPES = new Set([\"text/markdown\", \"text/x-markdown\"]);\nconst XML_MIME_TYPES = new Set([\"application/xml\", \"text/xml\"]);\nfunction isTiffFile(mimeType, fileName) {\n if (mimeType === \"image/tiff\") {\n return true;\n }\n const lowered = fileName?.toLowerCase();\n return lowered?.endsWith(\".tif\") === true || lowered?.endsWith(\".tiff\") === true;\n}\nfunction getViewerType(mimeType, fileName) {\n if (mimeType === \"application/pdf\") {\n return ViewerType.Pdf;\n }\n if (isTiffFile(mimeType, fileName)) {\n return ViewerType.Tiff;\n }\n if (IMAGE_MIME_TYPES.has(mimeType)) {\n return ViewerType.Image;\n }\n if (mimeType.startsWith(\"video/\")) {\n return ViewerType.Video;\n }\n if (MARKDOWN_MIME_TYPES.has(mimeType)) {\n return ViewerType.Markdown;\n }\n if (mimeType === \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\") {\n return ViewerType.Spreadsheet;\n }\n if (mimeType === \"message/rfc822\") {\n return ViewerType.Email;\n }\n if (XML_MIME_TYPES.has(mimeType)) {\n return ViewerType.Xml;\n }\n return ViewerType.Unsupported;\n}\nexport function DocumentViewer({\n media,\n className,\n mimeTypeOverride,\n pdfViewerProps,\n imageViewerProps,\n videoViewerProps,\n tiffRendererProps,\n markdownRendererProps,\n spreadsheetViewerProps,\n emailViewerProps,\n xmlViewerProps,\n fileName,\n enableTiffToPdf = false\n}) {\n const mimeType = mimeTypeOverride ?? media.getMediaReference().mimeType;\n const viewerType = useMemo(() => getViewerType(mimeType, fileName), [mimeType, fileName]);\n const rootClassName = classnames(styles.container, className);\n switch (viewerType) {\n case ViewerType.Pdf:\n return /*#__PURE__*/React.createElement(PdfViewer, _extends({\n media: media,\n className: rootClassName\n }, pdfViewerProps));\n case ViewerType.Tiff:\n if (enableTiffToPdf) {\n return /*#__PURE__*/React.createElement(TiffDocumentViewer, {\n media: media,\n className: rootClassName,\n enableTiffToPdf: enableTiffToPdf,\n tiffRendererProps: tiffRendererProps,\n pdfViewerProps: pdfViewerProps\n });\n }\n return /*#__PURE__*/React.createElement(TiffViewerMedia, _extends({\n media: media,\n className: rootClassName\n }, tiffRendererProps));\n case ViewerType.Image:\n return /*#__PURE__*/React.createElement(ImageViewer, _extends({\n media: media,\n className: rootClassName\n }, imageViewerProps));\n case ViewerType.Video:\n return /*#__PURE__*/React.createElement(VideoViewer, _extends({\n media: media,\n className: rootClassName\n }, videoViewerProps));\n case ViewerType.Markdown:\n return /*#__PURE__*/React.createElement(MarkdownViewerMedia, _extends({\n media: media,\n className: rootClassName\n }, markdownRendererProps));\n case ViewerType.Spreadsheet:\n return /*#__PURE__*/React.createElement(SpreadsheetViewer, _extends({\n media: media,\n className: rootClassName\n }, spreadsheetViewerProps));\n case ViewerType.Email:\n return /*#__PURE__*/React.createElement(EmailViewer, _extends({\n media: media,\n className: rootClassName\n }, emailViewerProps));\n case ViewerType.Xml:\n return /*#__PURE__*/React.createElement(XmlViewer, _extends({\n media: media,\n className: rootClassName\n }, xmlViewerProps));\n case ViewerType.Unsupported:\n return /*#__PURE__*/React.createElement(\"div\", {\n className: rootClassName\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: styles.unsupportedContainer\n }, /*#__PURE__*/React.createElement(DocumentIcon, {\n className: styles.unsupportedIcon\n }), \"Unsupported file type: \", mimeType));\n default:\n assertUnreachable(viewerType);\n }\n}","/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// DocumentViewer\nimport { DocumentViewer as _DocumentViewer } from \"../../document-viewer/DocumentViewer.js\";\nimport { withOsdkMetrics } from \"../../util/withOsdkMetrics.js\";\nexport const DocumentViewer = withOsdkMetrics(_DocumentViewer, \"DocumentViewer\");\nexport { ViewerType } from \"../../document-viewer/DocumentViewerApi.js\";"]}
|
|
@@ -11,10 +11,10 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
|
11
11
|
var classnames__default = /*#__PURE__*/_interopDefault(classnames);
|
|
12
12
|
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
13
13
|
|
|
14
|
-
// src/
|
|
15
|
-
var
|
|
14
|
+
// src/spreadsheet-viewer/BaseSpreadsheetViewer.module.css
|
|
15
|
+
var BaseSpreadsheetViewer_default = {};
|
|
16
16
|
|
|
17
|
-
// src/
|
|
17
|
+
// src/spreadsheet-viewer/BaseSpreadsheetViewer.tsx
|
|
18
18
|
function columnIndexToLetter(index) {
|
|
19
19
|
let letter = "";
|
|
20
20
|
let num = index;
|
|
@@ -31,38 +31,38 @@ var SheetTable = /* @__PURE__ */ React__default.default.memo(({
|
|
|
31
31
|
const maxCols = React.useMemo(() => sheet.rows.reduce((max, row) => Math.max(max, row.length), 0), [sheet.rows]);
|
|
32
32
|
if (sheet.rows.length === 0) {
|
|
33
33
|
return /* @__PURE__ */ React__default.default.createElement("div", {
|
|
34
|
-
className:
|
|
34
|
+
className: BaseSpreadsheetViewer_default.emptySheet
|
|
35
35
|
}, "Empty sheet");
|
|
36
36
|
}
|
|
37
37
|
return /* @__PURE__ */ React__default.default.createElement("div", {
|
|
38
|
-
className:
|
|
38
|
+
className: BaseSpreadsheetViewer_default.tableContainer
|
|
39
39
|
}, /* @__PURE__ */ React__default.default.createElement("table", {
|
|
40
|
-
className:
|
|
40
|
+
className: BaseSpreadsheetViewer_default.table
|
|
41
41
|
}, /* @__PURE__ */ React__default.default.createElement("thead", null, /* @__PURE__ */ React__default.default.createElement("tr", null, /* @__PURE__ */ React__default.default.createElement("th", {
|
|
42
|
-
className:
|
|
42
|
+
className: BaseSpreadsheetViewer_default.cornerCell
|
|
43
43
|
}), Array.from({
|
|
44
44
|
length: maxCols
|
|
45
45
|
}, (_, i) => /* @__PURE__ */ React__default.default.createElement("th", {
|
|
46
46
|
key: i,
|
|
47
|
-
className:
|
|
47
|
+
className: BaseSpreadsheetViewer_default.columnHeader
|
|
48
48
|
}, columnIndexToLetter(i))))), /* @__PURE__ */ React__default.default.createElement("tbody", null, sheet.rows.map((row, rowIndex) => /* @__PURE__ */ React__default.default.createElement("tr", {
|
|
49
49
|
key: rowIndex
|
|
50
50
|
}, /* @__PURE__ */ React__default.default.createElement("td", {
|
|
51
|
-
className:
|
|
51
|
+
className: BaseSpreadsheetViewer_default.rowHeader
|
|
52
52
|
}, rowIndex + 1), Array.from({
|
|
53
53
|
length: maxCols
|
|
54
54
|
}, (_, cellIndex) => /* @__PURE__ */ React__default.default.createElement("td", {
|
|
55
55
|
key: cellIndex,
|
|
56
|
-
className:
|
|
56
|
+
className: BaseSpreadsheetViewer_default.cell
|
|
57
57
|
}, row[cellIndex] ?? "")))))));
|
|
58
58
|
});
|
|
59
59
|
SheetTable.displayName = "SheetTable";
|
|
60
|
-
function
|
|
60
|
+
function BaseSpreadsheetViewer({
|
|
61
61
|
spreadsheet,
|
|
62
62
|
className
|
|
63
63
|
}) {
|
|
64
64
|
const [activeSheetIndex, setActiveSheetIndex] = React.useState(0);
|
|
65
|
-
const rootClassName = classnames__default.default(
|
|
65
|
+
const rootClassName = classnames__default.default(BaseSpreadsheetViewer_default.container, className);
|
|
66
66
|
const safeIndex = Math.min(activeSheetIndex, Math.max(0, spreadsheet.sheets.length - 1));
|
|
67
67
|
const activeSheet = React.useMemo(() => spreadsheet.sheets[safeIndex], [spreadsheet.sheets, safeIndex]);
|
|
68
68
|
const handleTabClick = React.useCallback((index) => {
|
|
@@ -73,13 +73,13 @@ function BaseExcelViewer({
|
|
|
73
73
|
}, activeSheet != null ? /* @__PURE__ */ React__default.default.createElement(SheetTable, {
|
|
74
74
|
sheet: activeSheet
|
|
75
75
|
}) : /* @__PURE__ */ React__default.default.createElement("div", {
|
|
76
|
-
className:
|
|
76
|
+
className: BaseSpreadsheetViewer_default.emptySheet
|
|
77
77
|
}, "No sheets"), spreadsheet.sheets.length > 1 && /* @__PURE__ */ React__default.default.createElement("div", {
|
|
78
|
-
className:
|
|
78
|
+
className: BaseSpreadsheetViewer_default.tabBar
|
|
79
79
|
}, spreadsheet.sheets.map((sheet, index) => /* @__PURE__ */ React__default.default.createElement("button", {
|
|
80
80
|
key: sheet.name,
|
|
81
|
-
className: classnames__default.default(
|
|
82
|
-
[
|
|
81
|
+
className: classnames__default.default(BaseSpreadsheetViewer_default.tab, {
|
|
82
|
+
[BaseSpreadsheetViewer_default.tabActive]: index === safeIndex
|
|
83
83
|
}),
|
|
84
84
|
onClick: () => handleTabClick(index),
|
|
85
85
|
type: "button"
|
|
@@ -107,7 +107,7 @@ async function parseSpreadsheetFromResponse(response) {
|
|
|
107
107
|
};
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
// src/
|
|
110
|
+
// src/spreadsheet-viewer/SpreadsheetViewer.tsx
|
|
111
111
|
function _extends() {
|
|
112
112
|
return _extends = Object.assign ? Object.assign.bind() : function(n) {
|
|
113
113
|
for (var e = 1; e < arguments.length; e++) {
|
|
@@ -117,33 +117,33 @@ function _extends() {
|
|
|
117
117
|
return n;
|
|
118
118
|
}, _extends.apply(null, arguments);
|
|
119
119
|
}
|
|
120
|
-
function
|
|
120
|
+
function SpreadsheetViewer({
|
|
121
121
|
media,
|
|
122
122
|
className,
|
|
123
|
-
...
|
|
123
|
+
...spreadsheetViewerProps
|
|
124
124
|
}) {
|
|
125
125
|
const {
|
|
126
126
|
data: spreadsheet,
|
|
127
127
|
loading,
|
|
128
128
|
error
|
|
129
129
|
} = chunkMVQKV5BJ_cjs.useMediaContents(media, React.useCallback(parseSpreadsheetFromResponse, []));
|
|
130
|
-
const rootClassName = classnames__default.default(
|
|
130
|
+
const rootClassName = classnames__default.default(BaseSpreadsheetViewer_default.container, className);
|
|
131
131
|
return /* @__PURE__ */ React__default.default.createElement("div", {
|
|
132
132
|
className: rootClassName
|
|
133
133
|
}, loading && /* @__PURE__ */ React__default.default.createElement("div", {
|
|
134
|
-
className:
|
|
134
|
+
className: BaseSpreadsheetViewer_default.loadingContainer
|
|
135
135
|
}, /* @__PURE__ */ React__default.default.createElement(icons.Spin, {
|
|
136
|
-
className:
|
|
136
|
+
className: BaseSpreadsheetViewer_default.spinnerIcon
|
|
137
137
|
}), "Loading\u2026"), error != null && /* @__PURE__ */ React__default.default.createElement("div", {
|
|
138
|
-
className:
|
|
138
|
+
className: BaseSpreadsheetViewer_default.errorContainer
|
|
139
139
|
}, /* @__PURE__ */ React__default.default.createElement(icons.Error, {
|
|
140
|
-
className:
|
|
141
|
-
}), "Failed to load spreadsheet: ", error.message), spreadsheet != null && /* @__PURE__ */ React__default.default.createElement(
|
|
140
|
+
className: BaseSpreadsheetViewer_default.errorIcon
|
|
141
|
+
}), "Failed to load spreadsheet: ", error.message), spreadsheet != null && /* @__PURE__ */ React__default.default.createElement(BaseSpreadsheetViewer, _extends({
|
|
142
142
|
spreadsheet
|
|
143
|
-
},
|
|
143
|
+
}, spreadsheetViewerProps)));
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
-
exports.
|
|
147
|
-
exports.
|
|
148
|
-
//# sourceMappingURL=chunk-
|
|
149
|
-
//# sourceMappingURL=chunk-
|
|
146
|
+
exports.BaseSpreadsheetViewer = BaseSpreadsheetViewer;
|
|
147
|
+
exports.SpreadsheetViewer = SpreadsheetViewer;
|
|
148
|
+
//# sourceMappingURL=chunk-3C5JRKBJ.cjs.map
|
|
149
|
+
//# sourceMappingURL=chunk-3C5JRKBJ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/spreadsheet-viewer/BaseSpreadsheetViewer.module.css","../../src/spreadsheet-viewer/BaseSpreadsheetViewer.tsx","../../src/spreadsheet-viewer/parseSpreadsheet.ts","../../src/spreadsheet-viewer/SpreadsheetViewer.tsx"],"names":["React","useMemo","useState","classnames","useCallback","read","utils","useMediaContents","Spin","ErrorIcon"],"mappings":";;;;;;;;;;;;;;AAAA,IAAA,6BAAA,GAAA,EAAA;;;ACuBA,SAAS,oBAAoB,KAAA,EAAO;AAClC,EAAA,IAAI,MAAA,GAAS,EAAA;AACb,EAAA,IAAI,GAAA,GAAM,KAAA;AACV,EAAA,GAAG;AACD,IAAA,MAAM,YAAY,GAAA,GAAM,EAAA;AACxB,IAAA,MAAA,GAAS,MAAA,CAAO,YAAA,CAAa,EAAA,GAAK,SAAS,CAAA,GAAI,MAAA;AAC/C,IAAA,GAAA,GAAM,IAAA,CAAK,KAAA,CAAM,GAAA,GAAM,EAAE,CAAA,GAAI,CAAA;AAAA,EAC/B,SAAS,GAAA,IAAO,CAAA;AAChB,EAAA,OAAO,MAAA;AACT;AACA,IAAM,UAAA,mBAA0BA,sBAAA,CAAM,IAAA,CAAK,CAAC;AAAA,EAC1C;AACF,CAAA,KAAM;AACJ,EAAA,MAAM,OAAA,GAAUC,cAAQ,MAAM,KAAA,CAAM,KAAK,MAAA,CAAO,CAAC,KAAK,GAAA,KAAQ,IAAA,CAAK,IAAI,GAAA,EAAK,GAAA,CAAI,MAAM,CAAA,EAAG,CAAC,GAAG,CAAC,KAAA,CAAM,IAAI,CAAC,CAAA;AACzG,EAAA,IAAI,KAAA,CAAM,IAAA,CAAK,MAAA,KAAW,CAAA,EAAG;AAC3B,IAAA,uBAAoBD,sBAAA,CAAM,cAAc,KAAA,EAAO;AAAA,MAC7C,WAAW,6BAAA,CAAO;AAAA,OACjB,aAAa,CAAA;AAAA,EAClB;AACA,EAAA,uBAAoBA,sBAAA,CAAM,cAAc,KAAA,EAAO;AAAA,IAC7C,WAAW,6BAAA,CAAO;AAAA,GACpB,kBAAgBA,sBAAA,CAAM,aAAA,CAAc,OAAA,EAAS;AAAA,IAC3C,WAAW,6BAAA,CAAO;AAAA,GACpB,kBAAgBA,sBAAA,CAAM,aAAA,CAAc,OAAA,EAAS,IAAA,kBAAmBA,sBAAA,CAAM,aAAA,CAAc,IAAA,EAAM,IAAA,kBAAmBA,sBAAA,CAAM,aAAA,CAAc,IAAA,EAAM;AAAA,IACrI,WAAW,6BAAA,CAAO;AAAA,GACnB,CAAA,EAAG,KAAA,CAAM,IAAA,CAAK;AAAA,IACb,MAAA,EAAQ;AAAA,KACP,CAAC,CAAA,EAAG,CAAA,qBAAmBA,sBAAA,CAAM,cAAc,IAAA,EAAM;AAAA,IAClD,GAAA,EAAK,CAAA;AAAA,IACL,WAAW,6BAAA,CAAO;AAAA,GACpB,EAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAgBA,sBAAA,CAAM,aAAA,CAAc,SAAS,IAAA,EAAM,KAAA,CAAM,KAAK,GAAA,CAAI,CAAC,KAAK,QAAA,qBAA0BA,sBAAA,CAAM,cAAc,IAAA,EAAM;AAAA,IACtJ,GAAA,EAAK;AAAA,GACP,kBAAgBA,sBAAA,CAAM,aAAA,CAAc,IAAA,EAAM;AAAA,IACxC,WAAW,6BAAA,CAAO;AAAA,GACpB,EAAG,QAAA,GAAW,CAAC,CAAA,EAAG,MAAM,IAAA,CAAK;AAAA,IAC3B,MAAA,EAAQ;AAAA,KACP,CAAC,CAAA,EAAG,SAAA,qBAA2BA,sBAAA,CAAM,cAAc,IAAA,EAAM;AAAA,IAC1D,GAAA,EAAK,SAAA;AAAA,IACL,WAAW,6BAAA,CAAO;AAAA,GACpB,EAAG,GAAA,CAAI,SAAS,CAAA,IAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/B,CAAC,CAAA;AACD,UAAA,CAAW,WAAA,GAAc,YAAA;AAClB,SAAS,qBAAA,CAAsB;AAAA,EACpC,WAAA;AAAA,EACA;AACF,CAAA,EAAG;AACD,EAAA,MAAM,CAAC,gBAAA,EAAkB,mBAAmB,CAAA,GAAIE,eAAS,CAAC,CAAA;AAC1D,EAAA,MAAM,aAAA,GAAgBC,2BAAA,CAAW,6BAAA,CAAO,SAAA,EAAW,SAAS,CAAA;AAC5D,EAAA,MAAM,SAAA,GAAY,IAAA,CAAK,GAAA,CAAI,gBAAA,EAAkB,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,WAAA,CAAY,MAAA,CAAO,MAAA,GAAS,CAAC,CAAC,CAAA;AACvF,EAAA,MAAM,WAAA,GAAcF,aAAA,CAAQ,MAAM,WAAA,CAAY,MAAA,CAAO,SAAS,CAAA,EAAG,CAAC,WAAA,CAAY,MAAA,EAAQ,SAAS,CAAC,CAAA;AAChG,EAAA,MAAM,cAAA,GAAiBG,kBAAY,CAAA,KAAA,KAAS;AAC1C,IAAA,mBAAA,CAAoB,KAAK,CAAA;AAAA,EAC3B,CAAA,EAAG,EAAE,CAAA;AACL,EAAA,uBAAoBJ,sBAAA,CAAM,cAAc,KAAA,EAAO;AAAA,IAC7C,SAAA,EAAW;AAAA,GACb,EAAG,WAAA,IAAe,IAAA,mBAAoBA,sBAAA,CAAM,cAAc,UAAA,EAAY;AAAA,IACpE,KAAA,EAAO;AAAA,GACR,CAAA,mBAAiBA,sBAAA,CAAM,aAAA,CAAc,KAAA,EAAO;AAAA,IAC3C,WAAW,6BAAA,CAAO;AAAA,GACpB,EAAG,WAAW,CAAA,EAAG,WAAA,CAAY,OAAO,MAAA,GAAS,CAAA,oBAAkBA,sBAAA,CAAM,aAAA,CAAc,KAAA,EAAO;AAAA,IACxF,WAAW,6BAAA,CAAO;AAAA,GACpB,EAAG,YAAY,MAAA,CAAO,GAAA,CAAI,CAAC,KAAA,EAAO,KAAA,qBAAuBA,sBAAA,CAAM,aAAA,CAAc,QAAA,EAAU;AAAA,IACrF,KAAK,KAAA,CAAM,IAAA;AAAA,IACX,SAAA,EAAWG,2BAAA,CAAW,6BAAA,CAAO,GAAA,EAAK;AAAA,MAChC,CAAC,6BAAA,CAAO,SAAS,GAAG,KAAA,KAAU;AAAA,KAC/B,CAAA;AAAA,IACD,OAAA,EAAS,MAAM,cAAA,CAAe,KAAK,CAAA;AAAA,IACnC,IAAA,EAAM;AAAA,GACR,EAAG,KAAA,CAAM,IAAI,CAAC,CAAC,CAAC,CAAA;AAClB;ACzEA,eAAsB,6BAA6B,QAAA,EAAU;AAC3D,EAAA,MAAM,MAAA,GAAS,MAAM,QAAA,CAAS,WAAA,EAAY;AAC1C,EAAA,MAAM,QAAA,GAAWE,mBAAK,MAAA,EAAQ;AAAA,IAC5B,IAAA,EAAM;AAAA,GACP,CAAA;AACD,EAAA,MAAM,MAAA,GAAS,QAAA,CAAS,UAAA,CAAW,GAAA,CAAI,CAAA,IAAA,KAAQ;AAC7C,IAAA,MAAM,KAAA,GAAQ,QAAA,CAAS,MAAA,CAAO,IAAI,CAAA;AAClC,IAAA,MAAM,IAAA,GAAO,KAAA,IAAS,IAAA,GAAOC,mBAAA,CAAM,cAAc,KAAA,EAAO;AAAA,MACtD,MAAA,EAAQ,CAAA;AAAA,MACR,MAAA,EAAQ,EAAA;AAAA,MACR,GAAA,EAAK;AAAA,KACN,IAAI,EAAC;AACN,IAAA,OAAO;AAAA,MACL,IAAA;AAAA,MACA;AAAA,KACF;AAAA,EACF,CAAC,CAAA;AACD,EAAA,OAAO;AAAA,IACL;AAAA,GACF;AACF;;;ACvCA,SAAS,QAAA,GAAW;AAAE,EAAA,OAAO,QAAA,GAAW,OAAO,MAAA,GAAS,MAAA,CAAO,OAAO,IAAA,EAAK,GAAI,SAAU,CAAA,EAAG;AAAE,IAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,SAAA,CAAU,QAAQ,CAAA,EAAA,EAAK;AAAE,MAAA,IAAI,CAAA,GAAI,UAAU,CAAC,CAAA;AAAG,MAAA,KAAA,IAAS,CAAA,IAAK,CAAA,EAAG,CAAC,IAAI,cAAA,CAAe,IAAA,CAAK,CAAA,EAAG,CAAC,CAAA,KAAM,CAAA,CAAE,CAAC,CAAA,GAAI,EAAE,CAAC,CAAA,CAAA;AAAA,IAAI;AAAE,IAAA,OAAO,CAAA;AAAA,EAAG,CAAA,EAAG,QAAA,CAAS,KAAA,CAAM,IAAA,EAAM,SAAS,CAAA;AAAG;AAwB5Q,SAAS,iBAAA,CAAkB;AAAA,EAChC,KAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAG;AACD,EAAA,MAAM;AAAA,IACJ,IAAA,EAAM,WAAA;AAAA,IACN,OAAA;AAAA,IACA;AAAA,MACEC,kCAAA,CAAiB,KAAA,EAAOH,kBAAY,4BAAA,EAA8B,EAAE,CAAC,CAAA;AACzE,EAAA,MAAM,aAAA,GAAgBD,2BAAAA,CAAW,6BAAA,CAAO,SAAA,EAAW,SAAS,CAAA;AAC5D,EAAA,uBAAoBH,sBAAAA,CAAM,aAAA,CAAc,KAAA,EAAO;AAAA,IAC7C,SAAA,EAAW;AAAA,GACb,EAAG,OAAA,oBAAwBA,sBAAAA,CAAM,cAAc,KAAA,EAAO;AAAA,IACpD,WAAW,6BAAA,CAAO;AAAA,GACpB,kBAAgBA,sBAAAA,CAAM,aAAA,CAAcQ,UAAA,EAAM;AAAA,IACxC,WAAW,6BAAA,CAAO;AAAA,GACnB,GAAG,eAAe,CAAA,EAAG,SAAS,IAAA,oBAAqBR,sBAAAA,CAAM,aAAA,CAAc,KAAA,EAAO;AAAA,IAC7E,WAAW,6BAAA,CAAO;AAAA,GACpB,kBAAgBA,sBAAAA,CAAM,aAAA,CAAcS,WAAA,EAAW;AAAA,IAC7C,WAAW,6BAAA,CAAO;AAAA,GACnB,CAAA,EAAG,8BAAA,EAAgC,KAAA,CAAM,OAAO,CAAA,EAAG,WAAA,IAAe,IAAA,oBAAqBT,sBAAAA,CAAM,aAAA,CAAc,qBAAA,EAAuB,QAAA,CAAS;AAAA,IAC1I;AAAA,GACF,EAAG,sBAAsB,CAAC,CAAC,CAAA;AAC7B","file":"chunk-3C5JRKBJ.cjs","sourcesContent":[".container {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n background-color: var(--osdk-spreadsheet-viewer-bg);\n border: var(--osdk-spreadsheet-viewer-border);\n border-radius: var(--osdk-surface-border-radius);\n overflow: hidden;\n}\n\n.tableContainer {\n flex: 1;\n overflow: auto;\n}\n\n.table {\n border-collapse: collapse;\n width: max-content;\n min-width: 100%;\n font-family: var(--osdk-typography-family-default);\n font-size: var(--osdk-typography-size-body-small);\n border-spacing: 0;\n}\n\n/* Column letter headers (A, B, C...) */\n.columnHeader {\n background-color: var(--osdk-spreadsheet-viewer-header-bg);\n border: 1px solid var(--osdk-spreadsheet-viewer-cell-border);\n padding: var(--osdk-spreadsheet-viewer-cell-padding);\n text-align: center;\n font-weight: var(--osdk-typography-weight-default);\n color: var(--osdk-spreadsheet-viewer-header-color);\n position: sticky;\n top: 0;\n z-index: 2;\n min-width: var(--osdk-spreadsheet-viewer-col-min-width);\n user-select: none;\n}\n\n/* Top-left corner cell */\n.cornerCell {\n background-color: var(--osdk-spreadsheet-viewer-header-bg);\n border: 1px solid var(--osdk-spreadsheet-viewer-cell-border);\n position: sticky;\n top: 0;\n left: 0;\n z-index: 3;\n min-width: var(--osdk-spreadsheet-viewer-row-header-width);\n width: var(--osdk-spreadsheet-viewer-row-header-width);\n}\n\n/* Row number headers (1, 2, 3...) */\n.rowHeader {\n background-color: var(--osdk-spreadsheet-viewer-header-bg);\n border: 1px solid var(--osdk-spreadsheet-viewer-cell-border);\n padding: var(--osdk-spreadsheet-viewer-cell-padding);\n text-align: center;\n font-weight: var(--osdk-typography-weight-default);\n color: var(--osdk-spreadsheet-viewer-header-color);\n position: sticky;\n left: 0;\n z-index: 1;\n min-width: var(--osdk-spreadsheet-viewer-row-header-width);\n width: var(--osdk-spreadsheet-viewer-row-header-width);\n user-select: none;\n}\n\n/* Data cells */\n.cell {\n border: 1px solid var(--osdk-spreadsheet-viewer-cell-border);\n padding: var(--osdk-spreadsheet-viewer-cell-padding);\n white-space: nowrap;\n min-width: var(--osdk-spreadsheet-viewer-col-min-width);\n}\n\n/* Sheet tabs bar */\n.tabBar {\n display: flex;\n align-items: flex-end;\n gap: var(--osdk-spreadsheet-viewer-tab-gap);\n border-top: var(--osdk-spreadsheet-viewer-tab-border);\n background-color: var(--osdk-spreadsheet-viewer-tab-bg);\n flex-shrink: 0;\n overflow-x: auto;\n padding: var(--osdk-spreadsheet-viewer-tab-bar-padding)\n var(--osdk-spreadsheet-viewer-tab-bar-padding) 0;\n}\n\n.tab {\n padding: var(--osdk-spreadsheet-viewer-tab-padding);\n border: var(--osdk-spreadsheet-viewer-tab-border);\n border-bottom: none;\n border-radius: var(--osdk-spreadsheet-viewer-tab-border-radius)\n var(--osdk-spreadsheet-viewer-tab-border-radius) 0 0;\n background-color: var(--osdk-spreadsheet-viewer-tab-bg);\n font-family: var(--osdk-typography-family-default);\n font-size: var(--osdk-typography-size-body-x-small);\n color: var(--osdk-typography-color-muted);\n cursor: pointer;\n white-space: nowrap;\n position: relative;\n top: 1px;\n}\n\n.tab:hover {\n background-color: var(--osdk-spreadsheet-viewer-tab-hover-bg);\n color: var(--osdk-typography-color-default-rest);\n}\n\n.tabActive {\n background-color: var(--osdk-spreadsheet-viewer-tab-active-bg);\n color: var(--osdk-typography-color-default-rest);\n font-weight: var(--osdk-typography-weight-bold);\n border-bottom: 1px solid var(--osdk-spreadsheet-viewer-tab-active-bg);\n}\n\n.emptySheet {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n font-family: var(--osdk-typography-family-default);\n font-size: var(--osdk-typography-size-body-medium);\n color: var(--osdk-typography-color-muted);\n}\n\n.loadingContainer {\n composes: loadingContainer from \"../shared/LoadingError.module.css\";\n}\n\n.errorContainer {\n composes: errorContainer from \"../shared/LoadingError.module.css\";\n}\n\n.spinnerIcon {\n composes: spinnerIcon from \"../shared/LoadingError.module.css\";\n}\n\n.errorIcon {\n composes: errorIcon from \"../shared/LoadingError.module.css\";\n}\n","/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport classnames from \"classnames\";\nimport React, { useCallback, useMemo, useState } from \"react\";\nimport styles from \"./BaseSpreadsheetViewer.module.css\";\n\n/**\n * Converts a 0-based column index to a spreadsheet column letter (0=A, 1=B, ..., 25=Z, 26=AA).\n */\nfunction columnIndexToLetter(index) {\n let letter = \"\";\n let num = index;\n do {\n const remainder = num % 26;\n letter = String.fromCharCode(65 + remainder) + letter;\n num = Math.floor(num / 26) - 1;\n } while (num >= 0);\n return letter;\n}\nconst SheetTable = /*#__PURE__*/React.memo(({\n sheet\n}) => {\n const maxCols = useMemo(() => sheet.rows.reduce((max, row) => Math.max(max, row.length), 0), [sheet.rows]);\n if (sheet.rows.length === 0) {\n return /*#__PURE__*/React.createElement(\"div\", {\n className: styles.emptySheet\n }, \"Empty sheet\");\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n className: styles.tableContainer\n }, /*#__PURE__*/React.createElement(\"table\", {\n className: styles.table\n }, /*#__PURE__*/React.createElement(\"thead\", null, /*#__PURE__*/React.createElement(\"tr\", null, /*#__PURE__*/React.createElement(\"th\", {\n className: styles.cornerCell\n }), Array.from({\n length: maxCols\n }, (_, i) => /*#__PURE__*/React.createElement(\"th\", {\n key: i,\n className: styles.columnHeader\n }, columnIndexToLetter(i))))), /*#__PURE__*/React.createElement(\"tbody\", null, sheet.rows.map((row, rowIndex) => /*#__PURE__*/React.createElement(\"tr\", {\n key: rowIndex\n }, /*#__PURE__*/React.createElement(\"td\", {\n className: styles.rowHeader\n }, rowIndex + 1), Array.from({\n length: maxCols\n }, (_, cellIndex) => /*#__PURE__*/React.createElement(\"td\", {\n key: cellIndex,\n className: styles.cell\n }, row[cellIndex] ?? \"\")))))));\n});\nSheetTable.displayName = \"SheetTable\";\nexport function BaseSpreadsheetViewer({\n spreadsheet,\n className\n}) {\n const [activeSheetIndex, setActiveSheetIndex] = useState(0);\n const rootClassName = classnames(styles.container, className);\n const safeIndex = Math.min(activeSheetIndex, Math.max(0, spreadsheet.sheets.length - 1));\n const activeSheet = useMemo(() => spreadsheet.sheets[safeIndex], [spreadsheet.sheets, safeIndex]);\n const handleTabClick = useCallback(index => {\n setActiveSheetIndex(index);\n }, []);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: rootClassName\n }, activeSheet != null ? /*#__PURE__*/React.createElement(SheetTable, {\n sheet: activeSheet\n }) : /*#__PURE__*/React.createElement(\"div\", {\n className: styles.emptySheet\n }, \"No sheets\"), spreadsheet.sheets.length > 1 && /*#__PURE__*/React.createElement(\"div\", {\n className: styles.tabBar\n }, spreadsheet.sheets.map((sheet, index) => /*#__PURE__*/React.createElement(\"button\", {\n key: sheet.name,\n className: classnames(styles.tab, {\n [styles.tabActive]: index === safeIndex\n }),\n onClick: () => handleTabClick(index),\n type: \"button\"\n }, sheet.name))));\n}","/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/* cspell:words defval */\n\nimport { read, utils } from \"xlsx-republish\";\nexport async function parseSpreadsheetFromResponse(response) {\n const buffer = await response.arrayBuffer();\n const workbook = read(buffer, {\n type: \"array\"\n });\n const sheets = workbook.SheetNames.map(name => {\n const sheet = workbook.Sheets[name];\n const rows = sheet != null ? utils.sheet_to_json(sheet, {\n header: 1,\n defval: \"\",\n raw: false\n }) : [];\n return {\n name,\n rows\n };\n });\n return {\n sheets\n };\n}","function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\n/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Error as ErrorIcon, Spin } from \"@blueprintjs/icons\";\nimport classnames from \"classnames\";\nimport React, { useCallback } from \"react\";\nimport { useMediaContents } from \"../shared/hooks/useMediaContents.js\";\nimport { BaseSpreadsheetViewer } from \"./BaseSpreadsheetViewer.js\";\nimport { parseSpreadsheetFromResponse } from \"./parseSpreadsheet.js\";\nimport styles from \"./BaseSpreadsheetViewer.module.css\";\nexport function SpreadsheetViewer({\n media,\n className,\n ...spreadsheetViewerProps\n}) {\n const {\n data: spreadsheet,\n loading,\n error\n } = useMediaContents(media, useCallback(parseSpreadsheetFromResponse, []));\n const rootClassName = classnames(styles.container, className);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: rootClassName\n }, loading && /*#__PURE__*/React.createElement(\"div\", {\n className: styles.loadingContainer\n }, /*#__PURE__*/React.createElement(Spin, {\n className: styles.spinnerIcon\n }), \"Loading\\u2026\"), error != null && /*#__PURE__*/React.createElement(\"div\", {\n className: styles.errorContainer\n }, /*#__PURE__*/React.createElement(ErrorIcon, {\n className: styles.errorIcon\n }), \"Failed to load spreadsheet: \", error.message), spreadsheet != null && /*#__PURE__*/React.createElement(BaseSpreadsheetViewer, _extends({\n spreadsheet: spreadsheet\n }, spreadsheetViewerProps)));\n}"]}
|
|
@@ -5,7 +5,7 @@ var chunkC6IPNPMZ_cjs = require('./chunk-C6IPNPMZ.cjs');
|
|
|
5
5
|
var chunkHNBSGCSZ_cjs = require('./chunk-HNBSGCSZ.cjs');
|
|
6
6
|
var chunk7LXS66DW_cjs = require('./chunk-7LXS66DW.cjs');
|
|
7
7
|
var chunkQP2LHBCZ_cjs = require('./chunk-QP2LHBCZ.cjs');
|
|
8
|
-
var
|
|
8
|
+
var chunkBLPXZKVC_cjs = require('./chunk-BLPXZKVC.cjs');
|
|
9
9
|
var platformApis = require('@osdk/react/platform-apis');
|
|
10
10
|
var React = require('react');
|
|
11
11
|
var popover = require('@base-ui/react/popover');
|
|
@@ -1059,7 +1059,7 @@ function CbacPicker({
|
|
|
1059
1059
|
}
|
|
1060
1060
|
|
|
1061
1061
|
// src/public/experimental/cbac-picker.ts
|
|
1062
|
-
var CbacPicker2 =
|
|
1062
|
+
var CbacPicker2 = chunkBLPXZKVC_cjs.withOsdkMetrics(CbacPicker, "CbacPicker");
|
|
1063
1063
|
|
|
1064
1064
|
exports.BaseCbacPicker = BaseCbacPicker;
|
|
1065
1065
|
exports.BaseCbacPickerDialog = BaseCbacPickerDialog;
|
|
@@ -1070,5 +1070,5 @@ exports.MaxClassificationField = MaxClassificationField;
|
|
|
1070
1070
|
exports.computeMarkingStates = computeMarkingStates;
|
|
1071
1071
|
exports.groupMarkingsByCategory = groupMarkingsByCategory2;
|
|
1072
1072
|
exports.toggleMarking = toggleMarking;
|
|
1073
|
-
//# sourceMappingURL=chunk-
|
|
1074
|
-
//# sourceMappingURL=chunk-
|
|
1073
|
+
//# sourceMappingURL=chunk-A4PDCZUY.cjs.map
|
|
1074
|
+
//# sourceMappingURL=chunk-A4PDCZUY.cjs.map
|