@extend-ai/react-xlsx 0.19.0 → 0.20.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.
Files changed (61) hide show
  1. package/README.md +1 -1
  2. package/dist/{chart-renderer-LHXMRBGR.cjs → chart-renderer-AAVZ34BF.cjs} +43 -38
  3. package/dist/chart-renderer-AAVZ34BF.cjs.map +1 -0
  4. package/dist/{chart-renderer-R2B4I2HL.js → chart-renderer-KGLAI4DN.js} +25 -20
  5. package/dist/chart-renderer-KGLAI4DN.js.map +1 -0
  6. package/dist/{chart-renderer-HVOEAQXK.cjs → chart-renderer-NM5UVCTO.cjs} +43 -38
  7. package/dist/chart-renderer-NM5UVCTO.cjs.map +1 -0
  8. package/dist/{chart-renderer-3K2VKB5I.js → chart-renderer-RXO7WP4Q.js} +25 -20
  9. package/dist/chart-renderer-RXO7WP4Q.js.map +1 -0
  10. package/dist/{chunk-TYJLNPNE.cjs → chunk-2YBG7XQ3.cjs} +17 -8
  11. package/dist/chunk-2YBG7XQ3.cjs.map +1 -0
  12. package/dist/{chunk-3O2QY6LA.js → chunk-3JTCYAUX.js} +3 -3
  13. package/dist/{chunk-4VX5HTCF.cjs → chunk-6K3NSKDJ.cjs} +3 -3
  14. package/dist/{chunk-4VX5HTCF.cjs.map → chunk-6K3NSKDJ.cjs.map} +1 -1
  15. package/dist/{chunk-ZIO47YMT.cjs → chunk-MCFUTO4J.cjs} +3 -3
  16. package/dist/{chunk-ZIO47YMT.cjs.map → chunk-MCFUTO4J.cjs.map} +1 -1
  17. package/dist/{chunk-E2VSYCP2.cjs → chunk-O3V2MCOC.cjs} +18 -2
  18. package/dist/chunk-O3V2MCOC.cjs.map +1 -0
  19. package/dist/{chunk-Y737JKUG.js → chunk-QN3D3JS2.js} +14 -5
  20. package/dist/chunk-QN3D3JS2.js.map +1 -0
  21. package/dist/{chunk-BAAMDEDS.js → chunk-VXBNYHW5.js} +18 -2
  22. package/dist/{chunk-BAAMDEDS.js.map → chunk-VXBNYHW5.js.map} +1 -1
  23. package/dist/{chunk-O7S3Y6II.js → chunk-WSQDFXDW.js} +3 -3
  24. package/dist/index.cjs +13 -4
  25. package/dist/index.cjs.map +1 -1
  26. package/dist/index.d.cts +2 -0
  27. package/dist/index.d.ts +2 -0
  28. package/dist/index.js +13 -4
  29. package/dist/index.js.map +1 -1
  30. package/dist/{internal-DSz8QMhK.d.cts → internal-DrXSHYJZ.d.cts} +2 -0
  31. package/dist/{internal-DSz8QMhK.d.ts → internal-DrXSHYJZ.d.ts} +2 -0
  32. package/dist/internal.cjs +3 -3
  33. package/dist/internal.d.cts +1 -1
  34. package/dist/internal.d.ts +1 -1
  35. package/dist/internal.js +2 -2
  36. package/dist/{surface-regl-PWTZWQQS.cjs → surface-regl-5Z6IVOID.cjs} +17 -14
  37. package/dist/surface-regl-5Z6IVOID.cjs.map +1 -0
  38. package/dist/{surface-regl-NWR5ZZ5D.js → surface-regl-7CDGGVDG.js} +10 -7
  39. package/dist/surface-regl-7CDGGVDG.js.map +1 -0
  40. package/dist/{surface-regl-MAPCPD7W.cjs → surface-regl-AY7JZVYY.cjs} +17 -14
  41. package/dist/surface-regl-AY7JZVYY.cjs.map +1 -0
  42. package/dist/{surface-regl-KW4JL325.js → surface-regl-TJUWTLAZ.js} +10 -7
  43. package/dist/surface-regl-TJUWTLAZ.js.map +1 -0
  44. package/dist/vanilla.cjs +3 -3
  45. package/dist/vanilla.d.cts +2 -2
  46. package/dist/vanilla.d.ts +2 -2
  47. package/dist/vanilla.js +2 -2
  48. package/package.json +1 -1
  49. package/dist/chart-renderer-3K2VKB5I.js.map +0 -1
  50. package/dist/chart-renderer-HVOEAQXK.cjs.map +0 -1
  51. package/dist/chart-renderer-LHXMRBGR.cjs.map +0 -1
  52. package/dist/chart-renderer-R2B4I2HL.js.map +0 -1
  53. package/dist/chunk-E2VSYCP2.cjs.map +0 -1
  54. package/dist/chunk-TYJLNPNE.cjs.map +0 -1
  55. package/dist/chunk-Y737JKUG.js.map +0 -1
  56. package/dist/surface-regl-KW4JL325.js.map +0 -1
  57. package/dist/surface-regl-MAPCPD7W.cjs.map +0 -1
  58. package/dist/surface-regl-NWR5ZZ5D.js.map +0 -1
  59. package/dist/surface-regl-PWTZWQQS.cjs.map +0 -1
  60. /package/dist/{chunk-3O2QY6LA.js.map → chunk-3JTCYAUX.js.map} +0 -0
  61. /package/dist/{chunk-O7S3Y6II.js.map → chunk-WSQDFXDW.js.map} +0 -0
@@ -38,13 +38,13 @@ function createChartModule(importModule) {
38
38
  }
39
39
  };
40
40
  }
41
- var chartRenderer = createChartModule(() => import("./chart-renderer-R2B4I2HL.js"));
41
+ var chartRenderer = createChartModule(() => import("./chart-renderer-KGLAI4DN.js"));
42
42
  var regionMapResources = createChartModule(() => import("./region-map-geography-YD54DI3H.js"));
43
- var surfaceRenderer = createChartModule(() => import("./surface-regl-NWR5ZZ5D.js"));
43
+ var surfaceRenderer = createChartModule(() => import("./surface-regl-7CDGGVDG.js"));
44
44
 
45
45
  export {
46
46
  useChartModule,
47
47
  regionMapResources,
48
48
  surfaceRenderer
49
49
  };
50
- //# sourceMappingURL=chunk-3O2QY6LA.js.map
50
+ //# sourceMappingURL=chunk-3JTCYAUX.js.map
@@ -38,13 +38,13 @@ function createChartModule(importModule) {
38
38
  }
39
39
  };
40
40
  }
41
- var chartRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./chart-renderer-HVOEAQXK.cjs"))));
41
+ var chartRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./chart-renderer-NM5UVCTO.cjs"))));
42
42
  var regionMapResources = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./region-map-geography-6TGXBY3V.cjs"))));
43
- var surfaceRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./surface-regl-PWTZWQQS.cjs"))));
43
+ var surfaceRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./surface-regl-5Z6IVOID.cjs"))));
44
44
 
45
45
 
46
46
 
47
47
 
48
48
 
49
49
  exports.useChartModule = useChartModule; exports.regionMapResources = regionMapResources; exports.surfaceRenderer = surfaceRenderer;
50
- //# sourceMappingURL=chunk-4VX5HTCF.cjs.map
50
+ //# sourceMappingURL=chunk-6K3NSKDJ.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-4VX5HTCF.cjs","../src/use-chart-module.ts","../src/chart-loader.ts"],"names":[],"mappings":"AAAA;ACAA,2EAAuB;AAGhB,SAAS,cAAA,CAAkB,QAAA,EAA0B;AAC1D,EAAA,MAAM,SAAA,EAAiB,KAAA,CAAA,oBAAA,CAAqB,QAAA,CAAS,SAAA,EAAW,QAAA,CAAS,WAAA,EAAa,QAAA,CAAS,iBAAiB,CAAA;AAChH,EAAM,KAAA,CAAA,SAAA,CAAU,CAAA,EAAA,GAAM;AACpB,IAAA,KAAK,QAAA,CAAS,IAAA,CAAK,CAAA,CAAE,KAAA,CAAM,CAAA,EAAA,GAAM;AAAA,IAAC,CAAC,CAAA;AAAA,EACrC,CAAA,EAAG,CAAC,QAAQ,CAAC,CAAA;AACb,EAAA,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,MAAM,QAAA,CAAS,KAAA;AACnC,EAAA,OAAO,QAAA,CAAS,MAAA;AAClB;ADCA;AACA;AEDA,SAAS,iBAAA,CAAqB,YAAA,EAAgD;AAC5E,EAAA,MAAM,gBAAA,EAAqC,EAAE,MAAA,EAAQ,IAAA,EAAM,KAAA,EAAO,KAAK,CAAA;AACvE,EAAA,IAAI,SAAA,EAAW,eAAA;AACf,EAAA,IAAI,OAAA;AACJ,EAAA,MAAM,UAAA,kBAAY,IAAI,GAAA,CAAgB,CAAA;AACtC,EAAA,MAAM,QAAA,EAAU,CAAC,IAAA,EAAA,GAA4B;AAC3C,IAAA,SAAA,EAAW,IAAA;AACX,IAAA,SAAA,CAAU,OAAA,CAAQ,CAAC,QAAA,EAAA,GAAa,QAAA,CAAS,CAAC,CAAA;AAAA,EAC5C,CAAA;AAEA,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,CAAA,EAAA,GAAM,QAAA,IAAY,YAAA,CAAa,CAAA,CAAE,IAAA,CAAK,CAAC,MAAA,EAAA,GAAW;AACtD,MAAA,OAAA,CAAQ,EAAE,MAAA,EAAQ,KAAA,EAAO,KAAK,CAAC,CAAA;AAC/B,MAAA,OAAO,MAAA;AAAA,IACT,CAAA,EAAG,CAAC,KAAA,EAAA,GAAmB;AACrB,MAAA,OAAA,CAAQ,EAAE,MAAA,EAAQ,IAAA,EAAM,KAAA,EAAO,MAAA,WAAiB,MAAA,EAAQ,MAAA,EAAQ,IAAI,KAAA,CAAM,8BAA8B,EAAE,CAAC,CAAA;AAC3G,MAAA,MAAM,KAAA;AAAA,IACR,CAAC,CAAA;AAAA,IACD,WAAA,EAAa,CAAA,EAAA,GAAM,QAAA;AAAA,IACnB,iBAAA,EAAmB,CAAA,EAAA,GAAM,eAAA;AAAA,IACzB,SAAA,EAAW,CAAC,QAAA,EAAA,GAAa;AACvB,MAAA,SAAA,CAAU,GAAA,CAAI,QAAQ,CAAA;AACtB,MAAA,OAAO,CAAA,EAAA,GAAM;AAAE,QAAA,SAAA,CAAU,MAAA,CAAO,QAAQ,CAAA;AAAA,MAAG,CAAA;AAAA,IAC7C;AAAA,EACF,CAAA;AACF;AAEO,IAAM,cAAA,EAAgB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,+BAAkB,GAAC,CAAA;AACxE,IAAM,mBAAA,EAAqB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,qCAAwB,GAAC,CAAA;AACnF,IAAM,gBAAA,EAAkB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,6BAAgB,GAAC,CAAA;AFG/E;AACA;AACE;AACA;AACA;AACF,oIAAC","file":"/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-4VX5HTCF.cjs","sourcesContent":[null,"import * as React from \"react\";\nimport type { ChartModule } from \"./chart-loader\";\n\nexport function useChartModule<T>(resource: ChartModule<T>) {\n const snapshot = React.useSyncExternalStore(resource.subscribe, resource.getSnapshot, resource.getServerSnapshot);\n React.useEffect(() => {\n void resource.load().catch(() => {});\n }, [resource]);\n if (snapshot.error) throw snapshot.error;\n return snapshot.module;\n}\n","import type { XlsxChart } from \"./types\";\n\ntype ModuleSnapshot<T> = { module: T | null; error: unknown };\n\nexport type ChartModule<T> = {\n load: () => Promise<T>;\n getSnapshot: () => ModuleSnapshot<T>;\n getServerSnapshot: () => ModuleSnapshot<T>;\n subscribe: (listener: () => void) => () => void;\n};\n\nfunction createChartModule<T>(importModule: () => Promise<T>): ChartModule<T> {\n const initialSnapshot: ModuleSnapshot<T> = { module: null, error: null };\n let snapshot = initialSnapshot;\n let promise: Promise<T> | undefined;\n const listeners = new Set<() => void>();\n const publish = (next: ModuleSnapshot<T>) => {\n snapshot = next;\n listeners.forEach((listener) => listener());\n };\n\n return {\n load: () => promise ??= importModule().then((module) => {\n publish({ module, error: null });\n return module;\n }, (error: unknown) => {\n publish({ module: null, error: error instanceof Error ? error : new Error(\"Unable to load chart module.\") });\n throw error;\n }),\n getSnapshot: () => snapshot,\n getServerSnapshot: () => initialSnapshot,\n subscribe: (listener) => {\n listeners.add(listener);\n return () => { listeners.delete(listener); };\n }\n };\n}\n\nexport const chartRenderer = createChartModule(() => import(\"./chart-renderer\"));\nexport const regionMapResources = createChartModule(() => import(\"./region-map-geography\"));\nexport const surfaceRenderer = createChartModule(() => import(\"./surface-regl\"));\n\nexport function preloadChartRenderers(chartsBySheet: readonly (readonly XlsxChart[])[]) {\n let hasCharts = false;\n let hasMaps = false;\n let hasSurfaces = false;\n for (const charts of chartsBySheet) {\n for (const chart of charts) {\n hasCharts = true;\n hasMaps ||= chart.chartType === \"RegionMap\";\n hasSurfaces ||= chart.chartType === \"Surface\";\n }\n }\n\n if (hasCharts) void chartRenderer.load().catch(() => {});\n if (hasMaps) void regionMapResources.load().catch(() => {});\n if (hasSurfaces) void surfaceRenderer.load().catch(() => {});\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-6K3NSKDJ.cjs","../src/use-chart-module.ts","../src/chart-loader.ts"],"names":[],"mappings":"AAAA;ACAA,2EAAuB;AAGhB,SAAS,cAAA,CAAkB,QAAA,EAA0B;AAC1D,EAAA,MAAM,SAAA,EAAiB,KAAA,CAAA,oBAAA,CAAqB,QAAA,CAAS,SAAA,EAAW,QAAA,CAAS,WAAA,EAAa,QAAA,CAAS,iBAAiB,CAAA;AAChH,EAAM,KAAA,CAAA,SAAA,CAAU,CAAA,EAAA,GAAM;AACpB,IAAA,KAAK,QAAA,CAAS,IAAA,CAAK,CAAA,CAAE,KAAA,CAAM,CAAA,EAAA,GAAM;AAAA,IAAC,CAAC,CAAA;AAAA,EACrC,CAAA,EAAG,CAAC,QAAQ,CAAC,CAAA;AACb,EAAA,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,MAAM,QAAA,CAAS,KAAA;AACnC,EAAA,OAAO,QAAA,CAAS,MAAA;AAClB;ADCA;AACA;AEDA,SAAS,iBAAA,CAAqB,YAAA,EAAgD;AAC5E,EAAA,MAAM,gBAAA,EAAqC,EAAE,MAAA,EAAQ,IAAA,EAAM,KAAA,EAAO,KAAK,CAAA;AACvE,EAAA,IAAI,SAAA,EAAW,eAAA;AACf,EAAA,IAAI,OAAA;AACJ,EAAA,MAAM,UAAA,kBAAY,IAAI,GAAA,CAAgB,CAAA;AACtC,EAAA,MAAM,QAAA,EAAU,CAAC,IAAA,EAAA,GAA4B;AAC3C,IAAA,SAAA,EAAW,IAAA;AACX,IAAA,SAAA,CAAU,OAAA,CAAQ,CAAC,QAAA,EAAA,GAAa,QAAA,CAAS,CAAC,CAAA;AAAA,EAC5C,CAAA;AAEA,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,CAAA,EAAA,GAAM,QAAA,IAAY,YAAA,CAAa,CAAA,CAAE,IAAA,CAAK,CAAC,MAAA,EAAA,GAAW;AACtD,MAAA,OAAA,CAAQ,EAAE,MAAA,EAAQ,KAAA,EAAO,KAAK,CAAC,CAAA;AAC/B,MAAA,OAAO,MAAA;AAAA,IACT,CAAA,EAAG,CAAC,KAAA,EAAA,GAAmB;AACrB,MAAA,OAAA,CAAQ,EAAE,MAAA,EAAQ,IAAA,EAAM,KAAA,EAAO,MAAA,WAAiB,MAAA,EAAQ,MAAA,EAAQ,IAAI,KAAA,CAAM,8BAA8B,EAAE,CAAC,CAAA;AAC3G,MAAA,MAAM,KAAA;AAAA,IACR,CAAC,CAAA;AAAA,IACD,WAAA,EAAa,CAAA,EAAA,GAAM,QAAA;AAAA,IACnB,iBAAA,EAAmB,CAAA,EAAA,GAAM,eAAA;AAAA,IACzB,SAAA,EAAW,CAAC,QAAA,EAAA,GAAa;AACvB,MAAA,SAAA,CAAU,GAAA,CAAI,QAAQ,CAAA;AACtB,MAAA,OAAO,CAAA,EAAA,GAAM;AAAE,QAAA,SAAA,CAAU,MAAA,CAAO,QAAQ,CAAA;AAAA,MAAG,CAAA;AAAA,IAC7C;AAAA,EACF,CAAA;AACF;AAEO,IAAM,cAAA,EAAgB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,+BAAkB,GAAC,CAAA;AACxE,IAAM,mBAAA,EAAqB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,qCAAwB,GAAC,CAAA;AACnF,IAAM,gBAAA,EAAkB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,6BAAgB,GAAC,CAAA;AFG/E;AACA;AACE;AACA;AACA;AACF,oIAAC","file":"/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-6K3NSKDJ.cjs","sourcesContent":[null,"import * as React from \"react\";\nimport type { ChartModule } from \"./chart-loader\";\n\nexport function useChartModule<T>(resource: ChartModule<T>) {\n const snapshot = React.useSyncExternalStore(resource.subscribe, resource.getSnapshot, resource.getServerSnapshot);\n React.useEffect(() => {\n void resource.load().catch(() => {});\n }, [resource]);\n if (snapshot.error) throw snapshot.error;\n return snapshot.module;\n}\n","import type { XlsxChart } from \"./types\";\n\ntype ModuleSnapshot<T> = { module: T | null; error: unknown };\n\nexport type ChartModule<T> = {\n load: () => Promise<T>;\n getSnapshot: () => ModuleSnapshot<T>;\n getServerSnapshot: () => ModuleSnapshot<T>;\n subscribe: (listener: () => void) => () => void;\n};\n\nfunction createChartModule<T>(importModule: () => Promise<T>): ChartModule<T> {\n const initialSnapshot: ModuleSnapshot<T> = { module: null, error: null };\n let snapshot = initialSnapshot;\n let promise: Promise<T> | undefined;\n const listeners = new Set<() => void>();\n const publish = (next: ModuleSnapshot<T>) => {\n snapshot = next;\n listeners.forEach((listener) => listener());\n };\n\n return {\n load: () => promise ??= importModule().then((module) => {\n publish({ module, error: null });\n return module;\n }, (error: unknown) => {\n publish({ module: null, error: error instanceof Error ? error : new Error(\"Unable to load chart module.\") });\n throw error;\n }),\n getSnapshot: () => snapshot,\n getServerSnapshot: () => initialSnapshot,\n subscribe: (listener) => {\n listeners.add(listener);\n return () => { listeners.delete(listener); };\n }\n };\n}\n\nexport const chartRenderer = createChartModule(() => import(\"./chart-renderer\"));\nexport const regionMapResources = createChartModule(() => import(\"./region-map-geography\"));\nexport const surfaceRenderer = createChartModule(() => import(\"./surface-regl\"));\n\nexport function preloadChartRenderers(chartsBySheet: readonly (readonly XlsxChart[])[]) {\n let hasCharts = false;\n let hasMaps = false;\n let hasSurfaces = false;\n for (const charts of chartsBySheet) {\n for (const chart of charts) {\n hasCharts = true;\n hasMaps ||= chart.chartType === \"RegionMap\";\n hasSurfaces ||= chart.chartType === \"Surface\";\n }\n }\n\n if (hasCharts) void chartRenderer.load().catch(() => {});\n if (hasMaps) void regionMapResources.load().catch(() => {});\n if (hasSurfaces) void surfaceRenderer.load().catch(() => {});\n}\n"]}
@@ -42,9 +42,9 @@ function createChartModule(importModule) {
42
42
  }
43
43
  };
44
44
  }
45
- var chartRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./chart-renderer-LHXMRBGR.cjs"))));
45
+ var chartRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./chart-renderer-AAVZ34BF.cjs"))));
46
46
  var regionMapResources = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./region-map-geography-6TGXBY3V.cjs"))));
47
- var surfaceRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./surface-regl-MAPCPD7W.cjs"))));
47
+ var surfaceRenderer = createChartModule(() => Promise.resolve().then(() => _interopRequireWildcard(require("./surface-regl-AY7JZVYY.cjs"))));
48
48
  function preloadChartRenderers(chartsBySheet) {
49
49
  let hasCharts = false;
50
50
  let hasMaps = false;
@@ -71,4 +71,4 @@ function preloadChartRenderers(chartsBySheet) {
71
71
 
72
72
 
73
73
  exports.useChartModule = useChartModule; exports.chartRenderer = chartRenderer; exports.regionMapResources = regionMapResources; exports.surfaceRenderer = surfaceRenderer; exports.preloadChartRenderers = preloadChartRenderers;
74
- //# sourceMappingURL=chunk-ZIO47YMT.cjs.map
74
+ //# sourceMappingURL=chunk-MCFUTO4J.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-ZIO47YMT.cjs","../src/use-chart-module.ts","../src/chart-loader.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,wDAA6B;AAC7B;AACA;ACFO,SAAS,cAAA,CAAkB,QAAA,EAA0B;AAC1D,EAAA,MAAM,SAAA,EAAiB,kCAAA,QAAqB,CAAS,SAAA,EAAW,QAAA,CAAS,WAAA,EAAa,QAAA,CAAS,iBAAiB,CAAA;AAChH,EAAM,iCAAA,CAAU,EAAA,GAAM;AACpB,IAAA,KAAK,QAAA,CAAS,IAAA,CAAK,CAAA,CAAE,KAAA,CAAM,CAAA,EAAA,GAAM;AAAA,IAAC,CAAC,CAAA;AAAA,EACrC,CAAA,EAAG,CAAC,QAAQ,CAAC,CAAA;AACb,EAAA,GAAA,CAAI,QAAA,CAAS,KAAA,EAAO,MAAM,QAAA,CAAS,KAAA;AACnC,EAAA,OAAO,QAAA,CAAS,MAAA;AAClB;ADKA;AACA;AELA,SAAS,iBAAA,CAAqB,YAAA,EAAgD;AAC5E,EAAA,MAAM,gBAAA,EAAqC,EAAE,MAAA,EAAQ,IAAA,EAAM,KAAA,EAAO,KAAK,CAAA;AACvE,EAAA,IAAI,SAAA,EAAW,eAAA;AACf,EAAA,IAAI,OAAA;AACJ,EAAA,MAAM,UAAA,kBAAY,IAAI,GAAA,CAAgB,CAAA;AACtC,EAAA,MAAM,QAAA,EAAU,CAAC,IAAA,EAAA,GAA4B;AAC3C,IAAA,SAAA,EAAW,IAAA;AACX,IAAA,SAAA,CAAU,OAAA,CAAQ,CAAC,QAAA,EAAA,GAAa,QAAA,CAAS,CAAC,CAAA;AAAA,EAC5C,CAAA;AAEA,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,CAAA,EAAA,GAAM,QAAA,IAAY,YAAA,CAAa,CAAA,CAAE,IAAA,CAAK,CAAC,MAAA,EAAA,GAAW;AACtD,MAAA,OAAA,CAAQ,EAAE,MAAA,EAAQ,KAAA,EAAO,KAAK,CAAC,CAAA;AAC/B,MAAA,OAAO,MAAA;AAAA,IACT,CAAA,EAAG,CAAC,KAAA,EAAA,GAAmB;AACrB,MAAA,OAAA,CAAQ,EAAE,MAAA,EAAQ,IAAA,EAAM,KAAA,EAAO,MAAA,WAAiB,MAAA,EAAQ,MAAA,EAAQ,IAAI,KAAA,CAAM,8BAA8B,EAAE,CAAC,CAAA;AAC3G,MAAA,MAAM,KAAA;AAAA,IACR,CAAC,CAAA;AAAA,IACD,WAAA,EAAa,CAAA,EAAA,GAAM,QAAA;AAAA,IACnB,iBAAA,EAAmB,CAAA,EAAA,GAAM,eAAA;AAAA,IACzB,SAAA,EAAW,CAAC,QAAA,EAAA,GAAa;AACvB,MAAA,SAAA,CAAU,GAAA,CAAI,QAAQ,CAAA;AACtB,MAAA,OAAO,CAAA,EAAA,GAAM;AAAE,QAAA,SAAA,CAAU,MAAA,CAAO,QAAQ,CAAA;AAAA,MAAG,CAAA;AAAA,IAC7C;AAAA,EACF,CAAA;AACF;AAEO,IAAM,cAAA,EAAgB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,+BAAkB,GAAC,CAAA;AACxE,IAAM,mBAAA,EAAqB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,qCAAwB,GAAC,CAAA;AACnF,IAAM,gBAAA,EAAkB,iBAAA,CAAkB,CAAA,EAAA,GAAM,4DAAA,CAAO,6BAAgB,GAAC,CAAA;AAExE,SAAS,qBAAA,CAAsB,aAAA,EAAkD;AACtF,EAAA,IAAI,UAAA,EAAY,KAAA;AAChB,EAAA,IAAI,QAAA,EAAU,KAAA;AACd,EAAA,IAAI,YAAA,EAAc,KAAA;AAClB,EAAA,IAAA,CAAA,MAAW,OAAA,GAAU,aAAA,EAAe;AAClC,IAAA,IAAA,CAAA,MAAW,MAAA,GAAS,MAAA,EAAQ;AAC1B,MAAA,UAAA,EAAY,IAAA;AACZ,MAAA,QAAA,IAAY,KAAA,CAAM,UAAA,IAAc,WAAA;AAChC,MAAA,YAAA,IAAgB,KAAA,CAAM,UAAA,IAAc,SAAA;AAAA,IACtC;AAAA,EACF;AAEA,EAAA,GAAA,CAAI,SAAA,EAAW,KAAK,aAAA,CAAc,IAAA,CAAK,CAAA,CAAE,KAAA,CAAM,CAAA,EAAA,GAAM;AAAA,EAAC,CAAC,CAAA;AACvD,EAAA,GAAA,CAAI,OAAA,EAAS,KAAK,kBAAA,CAAmB,IAAA,CAAK,CAAA,CAAE,KAAA,CAAM,CAAA,EAAA,GAAM;AAAA,EAAC,CAAC,CAAA;AAC1D,EAAA,GAAA,CAAI,WAAA,EAAa,KAAK,eAAA,CAAgB,IAAA,CAAK,CAAA,CAAE,KAAA,CAAM,CAAA,EAAA,GAAM;AAAA,EAAC,CAAC,CAAA;AAC7D;AFQA;AACA;AACE;AACA;AACA;AACA;AACA;AACF,kOAAC","file":"/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-ZIO47YMT.cjs","sourcesContent":[null,"import * as React from \"react\";\nimport type { ChartModule } from \"./chart-loader\";\n\nexport function useChartModule<T>(resource: ChartModule<T>) {\n const snapshot = React.useSyncExternalStore(resource.subscribe, resource.getSnapshot, resource.getServerSnapshot);\n React.useEffect(() => {\n void resource.load().catch(() => {});\n }, [resource]);\n if (snapshot.error) throw snapshot.error;\n return snapshot.module;\n}\n","import type { XlsxChart } from \"./types\";\n\ntype ModuleSnapshot<T> = { module: T | null; error: unknown };\n\nexport type ChartModule<T> = {\n load: () => Promise<T>;\n getSnapshot: () => ModuleSnapshot<T>;\n getServerSnapshot: () => ModuleSnapshot<T>;\n subscribe: (listener: () => void) => () => void;\n};\n\nfunction createChartModule<T>(importModule: () => Promise<T>): ChartModule<T> {\n const initialSnapshot: ModuleSnapshot<T> = { module: null, error: null };\n let snapshot = initialSnapshot;\n let promise: Promise<T> | undefined;\n const listeners = new Set<() => void>();\n const publish = (next: ModuleSnapshot<T>) => {\n snapshot = next;\n listeners.forEach((listener) => listener());\n };\n\n return {\n load: () => promise ??= importModule().then((module) => {\n publish({ module, error: null });\n return module;\n }, (error: unknown) => {\n publish({ module: null, error: error instanceof Error ? error : new Error(\"Unable to load chart module.\") });\n throw error;\n }),\n getSnapshot: () => snapshot,\n getServerSnapshot: () => initialSnapshot,\n subscribe: (listener) => {\n listeners.add(listener);\n return () => { listeners.delete(listener); };\n }\n };\n}\n\nexport const chartRenderer = createChartModule(() => import(\"./chart-renderer\"));\nexport const regionMapResources = createChartModule(() => import(\"./region-map-geography\"));\nexport const surfaceRenderer = createChartModule(() => import(\"./surface-regl\"));\n\nexport function preloadChartRenderers(chartsBySheet: readonly (readonly XlsxChart[])[]) {\n let hasCharts = false;\n let hasMaps = false;\n let hasSurfaces = false;\n for (const charts of chartsBySheet) {\n for (const chart of charts) {\n hasCharts = true;\n hasMaps ||= chart.chartType === \"RegionMap\";\n hasSurfaces ||= chart.chartType === \"Surface\";\n }\n }\n\n if (hasCharts) void chartRenderer.load().catch(() => {});\n if (hasMaps) void regionMapResources.load().catch(() => {});\n if (hasSurfaces) void surfaceRenderer.load().catch(() => {});\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-MCFUTO4J.cjs","../src/use-chart-module.ts","../src/chart-loader.ts"],"names":[],"mappings":"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","file":"/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-MCFUTO4J.cjs","sourcesContent":[null,"import * as React from \"react\";\nimport type { ChartModule } from \"./chart-loader\";\n\nexport function useChartModule<T>(resource: ChartModule<T>) {\n const snapshot = React.useSyncExternalStore(resource.subscribe, resource.getSnapshot, resource.getServerSnapshot);\n React.useEffect(() => {\n void resource.load().catch(() => {});\n }, [resource]);\n if (snapshot.error) throw snapshot.error;\n return snapshot.module;\n}\n","import type { XlsxChart } from \"./types\";\n\ntype ModuleSnapshot<T> = { module: T | null; error: unknown };\n\nexport type ChartModule<T> = {\n load: () => Promise<T>;\n getSnapshot: () => ModuleSnapshot<T>;\n getServerSnapshot: () => ModuleSnapshot<T>;\n subscribe: (listener: () => void) => () => void;\n};\n\nfunction createChartModule<T>(importModule: () => Promise<T>): ChartModule<T> {\n const initialSnapshot: ModuleSnapshot<T> = { module: null, error: null };\n let snapshot = initialSnapshot;\n let promise: Promise<T> | undefined;\n const listeners = new Set<() => void>();\n const publish = (next: ModuleSnapshot<T>) => {\n snapshot = next;\n listeners.forEach((listener) => listener());\n };\n\n return {\n load: () => promise ??= importModule().then((module) => {\n publish({ module, error: null });\n return module;\n }, (error: unknown) => {\n publish({ module: null, error: error instanceof Error ? error : new Error(\"Unable to load chart module.\") });\n throw error;\n }),\n getSnapshot: () => snapshot,\n getServerSnapshot: () => initialSnapshot,\n subscribe: (listener) => {\n listeners.add(listener);\n return () => { listeners.delete(listener); };\n }\n };\n}\n\nexport const chartRenderer = createChartModule(() => import(\"./chart-renderer\"));\nexport const regionMapResources = createChartModule(() => import(\"./region-map-geography\"));\nexport const surfaceRenderer = createChartModule(() => import(\"./surface-regl\"));\n\nexport function preloadChartRenderers(chartsBySheet: readonly (readonly XlsxChart[])[]) {\n let hasCharts = false;\n let hasMaps = false;\n let hasSurfaces = false;\n for (const charts of chartsBySheet) {\n for (const chart of charts) {\n hasCharts = true;\n hasMaps ||= chart.chartType === \"RegionMap\";\n hasSurfaces ||= chart.chartType === \"Surface\";\n }\n }\n\n if (hasCharts) void chartRenderer.load().catch(() => {});\n if (hasMaps) void regionMapResources.load().catch(() => {});\n if (hasSurfaces) void surfaceRenderer.load().catch(() => {});\n}\n"]}
@@ -90,6 +90,22 @@ function surfaceBandEdges(polygon, triangle) {
90
90
  return onDiagonal(from) && onDiagonal(to) || from.x === to.x && from.y === to.y ? [] : [[from, to]];
91
91
  });
92
92
  }
93
+ function groupSurfaceBandEdges(polygon, triangle, band, lower, wireframe) {
94
+ const edges = surfaceBandEdges(polygon, triangle);
95
+ const currentEdges = [];
96
+ const lowerBoundaryEdges = [];
97
+ for (const edge of edges) {
98
+ if (wireframe && band > 0 && edge[0].value === lower && edge[1].value === lower) {
99
+ lowerBoundaryEdges.push(edge);
100
+ } else {
101
+ currentEdges.push(edge);
102
+ }
103
+ }
104
+ return [
105
+ ...currentEdges.length > 0 ? [{ band, edges: currentEdges }] : [],
106
+ ...lowerBoundaryEdges.length > 0 ? [{ band: band - 1, edges: lowerBoundaryEdges }] : []
107
+ ];
108
+ }
93
109
 
94
110
 
95
111
 
@@ -100,5 +116,5 @@ function surfaceBandEdges(polygon, triangle) {
100
116
 
101
117
 
102
118
 
103
- exports.surfaceNormal = surfaceNormal; exports.transformSurfaceNormal = transformSurfaceNormal; exports.shadeSurfaceMatteColor = shadeSurfaceMatteColor; exports.surfaceDataRatios = surfaceDataRatios; exports.normalizeSurfaceValue = normalizeSurfaceValue; exports.triangulateSurfaceQuad = triangulateSurfaceQuad; exports.clipSurfaceBand = clipSurfaceBand; exports.surfaceBandEdges = surfaceBandEdges;
104
- //# sourceMappingURL=chunk-E2VSYCP2.cjs.map
119
+ exports.surfaceNormal = surfaceNormal; exports.transformSurfaceNormal = transformSurfaceNormal; exports.shadeSurfaceMatteColor = shadeSurfaceMatteColor; exports.surfaceDataRatios = surfaceDataRatios; exports.normalizeSurfaceValue = normalizeSurfaceValue; exports.triangulateSurfaceQuad = triangulateSurfaceQuad; exports.clipSurfaceBand = clipSurfaceBand; exports.groupSurfaceBandEdges = groupSurfaceBandEdges;
120
+ //# sourceMappingURL=chunk-O3V2MCOC.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-O3V2MCOC.cjs","../src/surface-lighting.ts","../src/surface-geometry.ts"],"names":[],"mappings":"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","file":"/home/runner/work/react-xlsx/react-xlsx/packages/react-xlsx/dist/chunk-O3V2MCOC.cjs","sourcesContent":[null,"export type SurfaceVector = { x: number; y: number; z: number };\n\nexport function surfaceNormal(a: SurfaceVector, b: SurfaceVector, c: SurfaceVector): SurfaceVector {\n const ux = b.x - a.x;\n const uy = b.y - a.y;\n const uz = b.z - a.z;\n const vx = c.x - a.x;\n const vy = c.y - a.y;\n const vz = c.z - a.z;\n const x = uy * vz - uz * vy;\n const y = uz * vx - ux * vz;\n const z = ux * vy - uy * vx;\n const length = Math.hypot(x, y, z) || 1;\n return { x: x / length, y: y / length, z: z / length };\n}\n\nexport function transformSurfaceNormal(normal: SurfaceVector, rotX: number, rotY: number, rightAngleAxes = false): SurfaceVector {\n const xAngle = rightAngleAxes ? 0 : rotX * Math.PI / 180;\n const yAngle = rightAngleAxes ? 0 : rotY * Math.PI / 180;\n const cx = Math.cos(xAngle);\n const sx = Math.sin(xAngle);\n const cy = Math.cos(yAngle);\n const sy = Math.sin(yAngle);\n const x = -cy * normal.x + sy * normal.z;\n const y = sy * sx * normal.x + cx * normal.y + cy * sx * normal.z;\n const z = sy * cx * normal.x - sx * normal.y + cy * cx * normal.z;\n const facing = rightAngleAxes\n ? z - x * Math.sin(rotY * Math.PI / 180) - y * Math.sin(rotX * Math.PI / 180)\n : z;\n const length = (Math.hypot(x, y, z) || 1) * (facing > 0 ? -1 : 1);\n return { x: x / length, y: y / length, z: z / length };\n}\n\nexport function shadeSurfaceMatteColor(color: string, normal: SurfaceVector) {\n const hex = color.replace(/^#/, \"\");\n if (!/^[0-9a-f]{6}$/i.test(hex)) return color;\n const diffuse = Math.max(0, Math.min(1, (normal.x + normal.y - normal.z) / Math.sqrt(3)));\n const intensity = 0.4 + 0.75 * diffuse;\n return `#${[0, 2, 4].map((offset) => Math.min(255, Math.floor(Number.parseInt(hex.slice(offset, offset + 2), 16) * intensity)).toString(16).padStart(2, \"0\")).join(\"\")}`;\n}\n","import type { XlsxChartAxis } from \"./types\";\n\nexport type SurfaceBandPoint = { x: number; y: number; value: number };\n\nexport function surfaceHeightRatio(heightPercent: number | undefined, plot: { width: number; height: number }) {\n return heightPercent != null && Number.isFinite(heightPercent) && heightPercent > 0\n ? heightPercent / 100\n : plot.height / Math.max(1, plot.width);\n}\n\nexport function surfaceDataRatios(rows: number, columns: number, betweenCategories: boolean, heightPercent: number | undefined, depthPercent: number | undefined, plot: { width: number; height: number }) {\n const columnCount = Math.max(1, columns);\n const dataFraction = betweenCategories && columnCount > 1 ? (columnCount - 1) / columnCount : 1;\n return {\n height: Math.floor((columnCount + Math.max(1, rows) - (betweenCategories ? 0 : 1)) / 2) / columnCount / dataFraction * surfaceHeightRatio(heightPercent, plot),\n depth: Math.max(0.01, Math.max(1, rows) / columnCount * (depthPercent ?? 100) / 100) / dataFraction\n };\n}\n\nexport function scaleSurfaceValue(value: number, axis?: XlsxChartAxis | null) {\n const scaled = axis?.logBase != null && axis.logBase > 1\n ? Math.log(Math.max(Number.MIN_VALUE, value)) / Math.log(axis.logBase)\n : value;\n return axis?.orientation === \"maxMin\" ? -scaled : scaled;\n}\n\nexport function normalizeSurfaceValue(value: number, min: number, max: number, axis?: XlsxChartAxis | null) {\n const start = scaleSurfaceValue(min, axis);\n const end = scaleSurfaceValue(max, axis);\n const lower = Math.min(start, end);\n const span = Math.abs(end - start);\n return span > 0 ? (scaleSurfaceValue(value, axis) - lower) / span : 0.5;\n}\n\nexport function triangulateSurfaceQuad<T extends { value: number }>(corners: [T, T, T, T], axis?: XlsxChartAxis | null): Array<[T, T, T]> {\n const heights = corners.map((point) => -scaleSurfaceValue(point.value, axis));\n return heights[0] * 0.5 + heights[2] * 0.5 > heights[1] * 0.5 + heights[3] * 0.5\n ? [[corners[3], corners[0], corners[1]], [corners[1], corners[2], corners[3]]]\n : [[corners[2], corners[3], corners[0]], [corners[0], corners[1], corners[2]]];\n}\n\nexport function clipSurfaceBand(points: SurfaceBandPoint[], threshold: number, keepAbove: boolean, axis?: XlsxChartAxis | null, includeBoundary = true) {\n const result: SurfaceBandPoint[] = [];\n points.forEach((end, index) => {\n const start = points[(index + points.length - 1) % points.length];\n const startInside = keepAbove ? start.value >= threshold : start.value <= threshold;\n const endInside = keepAbove ? end.value >= threshold : end.value <= threshold;\n if (startInside !== endInside) {\n const startValue = scaleSurfaceValue(start.value, axis);\n const ratio = (scaleSurfaceValue(threshold, axis) - startValue) / (scaleSurfaceValue(end.value, axis) - startValue);\n result.push({ value: threshold, x: start.x + (end.x - start.x) * ratio, y: start.y + (end.y - start.y) * ratio });\n }\n if (endInside) {\n result.push(end);\n }\n });\n return !includeBoundary && result.every((point) => point.value === threshold) ? [] : result;\n}\n\nexport function surfaceBandEdges(polygon: SurfaceBandPoint[], triangle: [SurfaceBandPoint, SurfaceBandPoint, SurfaceBandPoint]) {\n const start = triangle[2];\n const end = triangle[0];\n const dx = end.x - start.x;\n const dy = end.y - start.y;\n const tolerance = 1e-9 * Math.max(1, dx * dx + dy * dy);\n const onDiagonal = (point: SurfaceBandPoint) => Math.abs((point.x - start.x) * dy - (point.y - start.y) * dx) <= tolerance;\n return polygon.flatMap((from, index): Array<[SurfaceBandPoint, SurfaceBandPoint]> => {\n const to = polygon[(index + 1) % polygon.length];\n return (onDiagonal(from) && onDiagonal(to)) || (from.x === to.x && from.y === to.y)\n ? []\n : [[from, to]];\n });\n}\n\nexport function groupSurfaceBandEdges(\n polygon: SurfaceBandPoint[],\n triangle: [SurfaceBandPoint, SurfaceBandPoint, SurfaceBandPoint],\n band: number,\n lower: number,\n wireframe: boolean\n) {\n const edges = surfaceBandEdges(polygon, triangle);\n const currentEdges: typeof edges = [];\n const lowerBoundaryEdges: typeof edges = [];\n for (const edge of edges) {\n if (wireframe && band > 0 && edge[0].value === lower && edge[1].value === lower) {\n lowerBoundaryEdges.push(edge);\n } else {\n currentEdges.push(edge);\n }\n }\n return [\n ...(currentEdges.length > 0 ? [{ band, edges: currentEdges }] : []),\n ...(lowerBoundaryEdges.length > 0 ? [{ band: band - 1, edges: lowerBoundaryEdges }] : [])\n ];\n}\n"]}
@@ -3,7 +3,7 @@ import {
3
3
  preloadChartRenderers,
4
4
  regionMapResources,
5
5
  useChartModule
6
- } from "./chunk-O7S3Y6II.js";
6
+ } from "./chunk-WSQDFXDW.js";
7
7
  import {
8
8
  $,
9
9
  A,
@@ -10130,12 +10130,19 @@ function useXlsxViewerController(options) {
10130
10130
  downloadUrl(src, displayFileName);
10131
10131
  }
10132
10132
  }, [displayFileName, file, src]);
10133
- const exportXlsx = q(() => {
10133
+ const getXlsxBytes = q(() => {
10134
10134
  if (!workbook) {
10135
+ return null;
10136
+ }
10137
+ return createSavedWorkbookBytes(workbook);
10138
+ }, [createSavedWorkbookBytes, workbook]);
10139
+ const exportXlsx = q(() => {
10140
+ const bytes = getXlsxBytes();
10141
+ if (!bytes) {
10135
10142
  return;
10136
10143
  }
10137
- downloadBytes(createSavedWorkbookBytes(workbook), `${fileStem(displayFileName)}.xlsx`, XLSX_MIME_TYPE);
10138
- }, [createSavedWorkbookBytes, displayFileName, workbook]);
10144
+ downloadBytes(bytes, `${fileStem(displayFileName)}.xlsx`, XLSX_MIME_TYPE);
10145
+ }, [displayFileName, getXlsxBytes]);
10139
10146
  const exportCsv = q(() => {
10140
10147
  if (!workbook) {
10141
10148
  return;
@@ -11252,6 +11259,7 @@ function useXlsxViewerController(options) {
11252
11259
  download,
11253
11260
  exportCsv,
11254
11261
  exportXlsx,
11262
+ getXlsxBytes,
11255
11263
  error,
11256
11264
  fillSelection,
11257
11265
  formControls,
@@ -11375,6 +11383,7 @@ function useXlsxViewerController(options) {
11375
11383
  error,
11376
11384
  exportCsv,
11377
11385
  exportXlsx,
11386
+ getXlsxBytes,
11378
11387
  file,
11379
11388
  fillSelection,
11380
11389
  formControls,
@@ -26966,4 +26975,4 @@ export {
26966
26975
  __createContentNode,
26967
26976
  __createContentRoot
26968
26977
  };
26969
- //# sourceMappingURL=chunk-Y737JKUG.js.map
26978
+ //# sourceMappingURL=chunk-QN3D3JS2.js.map