pptx-react-viewer 1.22.2 → 1.24.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 (111) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +27 -0
  3. package/dist/{Model3DScene-NLUSXHD6.mjs → Model3DScene-QTNGCODM.mjs} +2 -2
  4. package/dist/Model3DScene-QTNGCODM.mjs.br +0 -0
  5. package/dist/Model3DScene-QTNGCODM.mjs.gz +0 -0
  6. package/dist/{Model3DScene-3YB3JAJS.js → Model3DScene-RD4XEC3F.js} +3 -3
  7. package/dist/{Model3DScene-3YB3JAJS.js.br → Model3DScene-RD4XEC3F.js.br} +0 -0
  8. package/dist/Model3DScene-RD4XEC3F.js.gz +0 -0
  9. package/dist/{PowerPointViewer-WGVR_u4z.d.ts → PowerPointViewer-CnADroqZ.d.ts} +2 -2
  10. package/dist/{PowerPointViewer-WGVR_u4z.d.ts.map → PowerPointViewer-CnADroqZ.d.ts.map} +1 -1
  11. package/dist/{SurfaceChart3DScene-YBMJQGH3.mjs → SurfaceChart3DScene-VKS3ELTU.mjs} +2 -2
  12. package/dist/SurfaceChart3DScene-VKS3ELTU.mjs.br +0 -0
  13. package/dist/SurfaceChart3DScene-VKS3ELTU.mjs.gz +0 -0
  14. package/dist/{SurfaceChart3DScene-PUQ5DCO5.js → SurfaceChart3DScene-YR3GX4X6.js} +3 -3
  15. package/dist/SurfaceChart3DScene-YR3GX4X6.js.br +0 -0
  16. package/dist/SurfaceChart3DScene-YR3GX4X6.js.gz +0 -0
  17. package/dist/{types-Cdh0XYcS.d.ts → animation-timeline-CEJJLFqK.d.ts} +4 -4
  18. package/dist/animation-timeline-CEJJLFqK.d.ts.map +1 -0
  19. package/dist/{chunk-JUFGTL2A.js → chunk-3YMK5VLS.js} +26769 -26790
  20. package/dist/chunk-3YMK5VLS.js.br +0 -0
  21. package/dist/chunk-3YMK5VLS.js.gz +0 -0
  22. package/dist/{chunk-KA7ST7IH.js → chunk-GKST4OS7.js} +1270 -454
  23. package/dist/chunk-GKST4OS7.js.br +0 -0
  24. package/dist/chunk-GKST4OS7.js.gz +0 -0
  25. package/dist/{chunk-VSNXVKJI.js → chunk-I5SO5OV4.js} +171 -76
  26. package/dist/chunk-I5SO5OV4.js.br +0 -0
  27. package/dist/chunk-I5SO5OV4.js.gz +0 -0
  28. package/dist/{chunk-5SBQZEKD.mjs → chunk-KPT54MHG.mjs} +142 -48
  29. package/dist/chunk-KPT54MHG.mjs.br +0 -0
  30. package/dist/chunk-KPT54MHG.mjs.gz +0 -0
  31. package/dist/{chunk-AD3EAEY6.js → chunk-KV3EOLP3.js} +52160 -51141
  32. package/dist/chunk-KV3EOLP3.js.br +0 -0
  33. package/dist/chunk-KV3EOLP3.js.gz +0 -0
  34. package/dist/{chunk-3ZGCM6RC.mjs → chunk-LDZQNYWL.mjs} +52159 -51142
  35. package/dist/chunk-LDZQNYWL.mjs.br +0 -0
  36. package/dist/chunk-LDZQNYWL.mjs.gz +0 -0
  37. package/dist/{chunk-OIAKQGMC.mjs → chunk-PUQ6GIOM.mjs} +26213 -26236
  38. package/dist/chunk-PUQ6GIOM.mjs.br +0 -0
  39. package/dist/chunk-PUQ6GIOM.mjs.gz +0 -0
  40. package/dist/{chunk-3MZ7IARF.mjs → chunk-YJVMOX2Y.mjs} +819 -5
  41. package/dist/chunk-YJVMOX2Y.mjs.br +0 -0
  42. package/dist/chunk-YJVMOX2Y.mjs.gz +0 -0
  43. package/dist/{dist-3YRZ26TL.mjs → dist-A3OATMOE.mjs} +1 -1
  44. package/dist/dist-A3OATMOE.mjs.br +0 -0
  45. package/dist/dist-A3OATMOE.mjs.gz +0 -0
  46. package/dist/{dist-M2P6HBG4.js → dist-XF3QJAEF.js} +568 -560
  47. package/dist/dist-XF3QJAEF.js.br +0 -0
  48. package/dist/dist-XF3QJAEF.js.gz +0 -0
  49. package/dist/hooks-unstable.d.ts +5492 -5260
  50. package/dist/hooks-unstable.d.ts.map +1 -1
  51. package/dist/hooks-unstable.js +80 -76
  52. package/dist/hooks-unstable.js.br +0 -0
  53. package/dist/hooks-unstable.js.gz +0 -0
  54. package/dist/hooks-unstable.mjs +3 -3
  55. package/dist/hooks-unstable.mjs.br +0 -0
  56. package/dist/hooks-unstable.mjs.gz +0 -0
  57. package/dist/i18n.d.ts +3 -0
  58. package/dist/{index-SUL_8gq8.d.ts → index-CGKutKk1.d.ts} +4 -1
  59. package/dist/index-CGKutKk1.d.ts.map +1 -0
  60. package/dist/{index-ntF3kHHU.d.ts → index-hm2FF-FU.d.ts} +3 -3
  61. package/dist/{index-ntF3kHHU.d.ts.map → index-hm2FF-FU.d.ts.map} +1 -1
  62. package/dist/index.d.ts +4190 -3390
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +42 -30
  65. package/dist/index.js.br +0 -0
  66. package/dist/index.js.gz +0 -0
  67. package/dist/index.mjs +4 -4
  68. package/dist/index.mjs.br +0 -0
  69. package/dist/index.mjs.gz +0 -0
  70. package/dist/pptx-viewer.css +1 -1
  71. package/dist/pptx-viewer.css.br +0 -0
  72. package/dist/pptx-viewer.css.gz +0 -0
  73. package/dist/useViewerBuildingBlocks-ll3_ncCH.d.ts +378 -0
  74. package/dist/useViewerBuildingBlocks-ll3_ncCH.d.ts.map +1 -0
  75. package/dist/viewer/index.d.ts +5118 -5224
  76. package/dist/viewer/index.js +20 -20
  77. package/dist/viewer/index.js.br +0 -0
  78. package/dist/viewer/index.js.gz +0 -0
  79. package/dist/viewer/index.mjs +4 -4
  80. package/dist/viewer/index.mjs.br +0 -0
  81. package/dist/viewer/index.mjs.gz +0 -0
  82. package/package.json +1 -1
  83. package/dist/Model3DScene-3YB3JAJS.js.gz +0 -0
  84. package/dist/Model3DScene-NLUSXHD6.mjs.br +0 -0
  85. package/dist/Model3DScene-NLUSXHD6.mjs.gz +0 -0
  86. package/dist/SurfaceChart3DScene-PUQ5DCO5.js.br +0 -0
  87. package/dist/SurfaceChart3DScene-PUQ5DCO5.js.gz +0 -0
  88. package/dist/SurfaceChart3DScene-YBMJQGH3.mjs.br +0 -0
  89. package/dist/SurfaceChart3DScene-YBMJQGH3.mjs.gz +0 -0
  90. package/dist/chunk-3MZ7IARF.mjs.br +0 -0
  91. package/dist/chunk-3MZ7IARF.mjs.gz +0 -0
  92. package/dist/chunk-3ZGCM6RC.mjs.br +0 -0
  93. package/dist/chunk-3ZGCM6RC.mjs.gz +0 -0
  94. package/dist/chunk-5SBQZEKD.mjs.br +0 -0
  95. package/dist/chunk-5SBQZEKD.mjs.gz +0 -0
  96. package/dist/chunk-AD3EAEY6.js.br +0 -0
  97. package/dist/chunk-AD3EAEY6.js.gz +0 -0
  98. package/dist/chunk-JUFGTL2A.js.br +0 -0
  99. package/dist/chunk-JUFGTL2A.js.gz +0 -0
  100. package/dist/chunk-KA7ST7IH.js.br +0 -0
  101. package/dist/chunk-KA7ST7IH.js.gz +0 -0
  102. package/dist/chunk-OIAKQGMC.mjs.br +0 -0
  103. package/dist/chunk-OIAKQGMC.mjs.gz +0 -0
  104. package/dist/chunk-VSNXVKJI.js.br +0 -0
  105. package/dist/chunk-VSNXVKJI.js.gz +0 -0
  106. package/dist/dist-3YRZ26TL.mjs.br +0 -0
  107. package/dist/dist-3YRZ26TL.mjs.gz +0 -0
  108. package/dist/dist-M2P6HBG4.js.br +0 -0
  109. package/dist/dist-M2P6HBG4.js.gz +0 -0
  110. package/dist/index-SUL_8gq8.d.ts.map +0 -1
  111. package/dist/types-Cdh0XYcS.d.ts.map +0 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project are documented here.
4
4
  This file is generated from [Conventional Commits](https://www.conventionalcommits.org)
5
5
  by [git-cliff](https://git-cliff.org); do not edit it by hand.
6
6
 
7
+ ## [1.23.0](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-react-viewer@1.23.0) - 2026-07-18
8
+
9
+ ### Dependencies
10
+
11
+ - **deps:** Update dependencies to latest and migrate core/shared/locales to TypeScript 7 (by @ChristopherVR) ([cc72948](https://github.com/ChristopherVR/pptx-viewer/commit/cc729482cc5ae4ae56e1219f290c2953ec83c12a))
12
+
13
+ ## [1.22.2](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-react-viewer@1.22.2) - 2026-07-18
14
+
7
15
  ## [1.22.1](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-react-viewer@1.22.1) - 2026-07-18
8
16
 
9
17
  ## [1.22.0](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-react-viewer@1.22.0) - 2026-07-17
package/README.md CHANGED
@@ -144,6 +144,33 @@ import { renderToCanvas } from 'pptx-react-viewer';
144
144
  const canvas = await renderToCanvas(element, options); // => HTMLCanvasElement
145
145
  ```
146
146
 
147
+ ### Composing a custom viewer shell
148
+
149
+ `<PowerPointViewer>` bundles a full editor chrome (toolbar, canvas, side panels, dialogs, presentation mode). If you only need the toolbar and slide canvas, with your own layout around them, `Toolbar` and `SlideCanvas` are exported as standalone components, and `useViewerBuildingBlocks` wires up the same state and hooks `PowerPointViewer` uses internally, mapped into the flat props those two components expect:
150
+
151
+ ```tsx
152
+ import { Toolbar, SlideCanvas, useViewerBuildingBlocks } from 'pptx-react-viewer';
153
+
154
+ function MyCustomViewer({ content }: { content: Uint8Array }) {
155
+ const { toolbarProps, canvasProps, loading, error } = useViewerBuildingBlocks({
156
+ content,
157
+ canEdit: true,
158
+ });
159
+
160
+ if (loading) return <p>Loading…</p>;
161
+ if (error) return <p>Failed to load: {error}</p>;
162
+
163
+ return (
164
+ <div className='my-custom-layout'>
165
+ <Toolbar {...toolbarProps} />
166
+ <SlideCanvas {...canvasProps} />
167
+ </div>
168
+ );
169
+ }
170
+ ```
171
+
172
+ `useViewerBuildingBlocks` accepts the same `content` / `canEdit` / `filePath` / `hiddenActions` / `onDirtyChange`-style inputs as `PowerPointViewer`, plus `onOpenSettings` / `onOpenHeaderFooter` / `onOpenShareDialog` callbacks (fired by the corresponding toolbar buttons) since this composition doesn't render those dialogs itself. It's an additive alternative, not a replacement: dialogs, presentation-mode overlays, mobile chrome, resizable side panels, and real-time collaboration are all part of `PowerPointViewer` and are out of scope for these building blocks. Reach for `PowerPointViewer` when you need the full editor; reach for `useViewerBuildingBlocks` when you're assembling your own chrome around just the toolbar and canvas.
173
+
147
174
  ---
148
175
 
149
176
  ## Styling & theming
@@ -1,5 +1,5 @@
1
- import { mountModel3D } from './chunk-5SBQZEKD.mjs';
2
- import './chunk-3ZGCM6RC.mjs';
1
+ import { mountModel3D } from './chunk-KPT54MHG.mjs';
2
+ import './chunk-LDZQNYWL.mjs';
3
3
  import './chunk-6DZX6EAA.mjs';
4
4
  import { useRef, useEffect } from 'react';
5
5
  import { jsx } from 'react/jsx-runtime';
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkVSNXVKJI_js = require('./chunk-VSNXVKJI.js');
4
- require('./chunk-AD3EAEY6.js');
3
+ var chunkI5SO5OV4_js = require('./chunk-I5SO5OV4.js');
4
+ require('./chunk-KV3EOLP3.js');
5
5
  require('./chunk-QGM4M3NI.js');
6
6
  var react = require('react');
7
7
  var jsxRuntime = require('react/jsx-runtime');
@@ -15,7 +15,7 @@ function Model3DScene({ modelUrl, interactive, width, height }) {
15
15
  return;
16
16
  }
17
17
  let disposed = false;
18
- void chunkVSNXVKJI_js.mountModel3D(container, modelUrl, { width, height, interactive }).then((handle) => {
18
+ void chunkI5SO5OV4_js.mountModel3D(container, modelUrl, { width, height, interactive }).then((handle) => {
19
19
  if (disposed) {
20
20
  handle.dispose();
21
21
  } else {
Binary file
@@ -1,4 +1,4 @@
1
- import { f as PowerPointViewerHandle, p as PowerPointViewerProps } from "./types-Cdh0XYcS.js";
1
+ import { m as PowerPointViewerProps, p as PowerPointViewerHandle } from "./animation-timeline-CEJJLFqK.js";
2
2
  import { PptxAnimationPreset, PptxNativeAnimation } from "pptx-viewer-core";
3
3
  import "pptx-viewer-shared";
4
4
  import React from "react";
@@ -18,4 +18,4 @@ declare function getAnimationInitialStyle(preset: PptxAnimationPreset | undefine
18
18
  declare const PowerPointViewer: import("react").ForwardRefExoticComponent<PowerPointViewerProps & import("react").RefAttributes<PowerPointViewerHandle>>;
19
19
  //#endregion
20
20
  export { getAnimationInitialStyle as n, PowerPointViewer as t };
21
- //# sourceMappingURL=PowerPointViewer-WGVR_u4z.d.ts.map
21
+ //# sourceMappingURL=PowerPointViewer-CnADroqZ.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PowerPointViewer-WGVR_u4z.d.ts","names":[],"sources":["../src/viewer/utils/animation-effects.ts","../src/viewer/PowerPointViewer.tsx"],"mappings":";;;;;iBAmBgB,yBACf,QAAQ,iCACR,kBAAkB,sBAChB,MAAM;;;;;;;;;;;;cC4EI,kCAAgB,0BAAA,wCAAA,cAAA"}
1
+ {"version":3,"file":"PowerPointViewer-CnADroqZ.d.ts","names":[],"sources":["../src/viewer/utils/animation-effects.ts","../src/viewer/PowerPointViewer.tsx"],"mappings":";;;;;iBAmBgB,yBACf,QAAQ,iCACR,kBAAkB,sBAChB,MAAM;;;;;;;;;;;;cC4EI,kCAAgB,0BAAA,wCAAA,cAAA"}
@@ -1,5 +1,5 @@
1
- import { mountSurfaceChart3D } from './chunk-5SBQZEKD.mjs';
2
- import './chunk-3ZGCM6RC.mjs';
1
+ import { mountSurfaceChart3D } from './chunk-KPT54MHG.mjs';
2
+ import './chunk-LDZQNYWL.mjs';
3
3
  import './chunk-6DZX6EAA.mjs';
4
4
  import { useRef, useEffect } from 'react';
5
5
  import { jsxs, jsx } from 'react/jsx-runtime';
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkVSNXVKJI_js = require('./chunk-VSNXVKJI.js');
4
- require('./chunk-AD3EAEY6.js');
3
+ var chunkI5SO5OV4_js = require('./chunk-I5SO5OV4.js');
4
+ require('./chunk-KV3EOLP3.js');
5
5
  require('./chunk-QGM4M3NI.js');
6
6
  var react = require('react');
7
7
  var jsxRuntime = require('react/jsx-runtime');
@@ -26,7 +26,7 @@ function SurfaceChart3DScene({
26
26
  return;
27
27
  }
28
28
  let disposed = false;
29
- void chunkVSNXVKJI_js.mountSurfaceChart3D(container, {
29
+ void chunkI5SO5OV4_js.mountSurfaceChart3D(container, {
30
30
  cols,
31
31
  rows,
32
32
  heightMap,
@@ -1,6 +1,6 @@
1
- import { n as LocaleCatalogEntry } from "./index-SUL_8gq8.js";
1
+ import { n as LocaleCatalogEntry } from "./index-CGKutKk1.js";
2
2
  import { ConnectorArrowType, PptxAnimationPreset, PptxElement, PptxElementAnimation, PptxSlide, PptxSlideTransition, ShapeStyle, StrokeDashType, XmlObject } from "pptx-viewer-core";
3
- import { AccountAuthConfig, CollaborationConfig as CollaborationConfig$1, CollaborationRole, ElementClipboardPayload, PowerPointViewerAPI, THEME_CATALOG, ThemeCatalogEntry, ThemeCatalogEntry as ThemeCatalogEntry$1, ToolbarActionId, ViewerFontSource, ViewerMode as ViewerMode$1, ViewerTheme, ViewerThemeColors, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from "pptx-viewer-shared";
3
+ import { AccountAuthConfig, CollaborationConfig as CollaborationConfig$1, CollaborationRole, ElementAnimationState, ElementClipboardPayload, PowerPointViewerAPI, THEME_CATALOG, ThemeCatalogEntry, ThemeCatalogEntry as ThemeCatalogEntry$1, ToolbarActionId, ViewerFontSource, ViewerMode as ViewerMode$1, ViewerTheme, ViewerThemeColors, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from "pptx-viewer-shared";
4
4
  import React$1 from "react";
5
5
  import { Doc } from "yjs";
6
6
  //#region src/viewer/types-core.d.ts
@@ -542,5 +542,5 @@ interface PowerPointViewerHandle extends FileViewerHandle, PowerPointViewerAPI {
542
542
  getContent: () => Promise<Uint8Array>;
543
543
  }
544
544
  //#endregion
545
- export { ShapeAdjustmentDragState as $, THEME_CATALOG as A, defaultRadius as B, CollaborationConfig$1 as C, UserPresence as D, ConnectionStatus as E, vermilionDarkColors as F, ConnectorGeometryType as G, ViewerTheme as H, vermilionDarkTheme as I, EditorHistorySnapshot as J, ConnectorPathGeometry as K, vermilionLightColors as L, resolveThemeCatalogEntry as M, defaultCssVars as N, ViewerThemeProvider as O, themeToCssVars as P, ResizeState as Q, vermilionLightTheme as R, ToolbarSection as S, CollaborationRole as T, ViewerThemeColors as U, defaultThemeColors as V, CanvasSize as W, ElementClipboardPayload as X, ElementBounds as Y, ResizeHandle as Z, SlideAlignment as _, DrawingTool as a, StrokeDashOption as b, FileViewerHandle as c, ParsedTableData as d, ShapeAdjustmentHandleDescriptor as et, PowerPointViewerHandle as f, ShortcutReferenceItem as g, ShapePreset as h, ConnectorGeometryOption as i, ThemeCatalogEntry$1 as j, useViewerTheme as k, MarqueeSelectionState as l, PresentationAnimationRuntime as m, AnimationPresetOption as n, SupportedShapeType as nt, ElementContextMenuAction as o, PowerPointViewerProps as p, DragState as q, ConnectorArrowOption as r, ViewerMode$1 as rt, ElementContextMenuState as s, AccessibilityIssue as t, ShapeQuickStyle as tt, ParsedTableCell as u, SlideSectionGroup as v, CollaborationContextValue as w, TableCellEditorState as x, SlideTransitionOption as y, vermilionRadius as z };
546
- //# sourceMappingURL=types-Cdh0XYcS.d.ts.map
545
+ export { ResizeState as $, useViewerTheme as A, vermilionRadius as B, ToolbarSection as C, ConnectionStatus as D, CollaborationRole as E, themeToCssVars as F, CanvasSize as G, defaultThemeColors as H, vermilionDarkColors as I, DragState as J, ConnectorGeometryType as K, vermilionDarkTheme as L, ThemeCatalogEntry$1 as M, resolveThemeCatalogEntry as N, UserPresence as O, defaultCssVars as P, ResizeHandle as Q, vermilionLightColors as R, TableCellEditorState as S, CollaborationContextValue as T, ViewerTheme as U, defaultRadius as V, ViewerThemeColors as W, ElementBounds as X, EditorHistorySnapshot as Y, ElementClipboardPayload as Z, ShortcutReferenceItem as _, ConnectorGeometryOption as a, SlideTransitionOption as b, ElementContextMenuState as c, ParsedTableCell as d, ShapeAdjustmentDragState as et, ParsedTableData as f, ShapePreset as g, PresentationAnimationRuntime as h, ConnectorArrowOption as i, ViewerMode$1 as it, THEME_CATALOG as j, ViewerThemeProvider as k, FileViewerHandle as l, PowerPointViewerProps as m, AccessibilityIssue as n, ShapeQuickStyle as nt, DrawingTool as o, PowerPointViewerHandle as p, ConnectorPathGeometry as q, AnimationPresetOption as r, SupportedShapeType as rt, ElementContextMenuAction as s, ElementAnimationState as t, ShapeAdjustmentHandleDescriptor as tt, MarqueeSelectionState as u, SlideAlignment as v, CollaborationConfig$1 as w, StrokeDashOption as x, SlideSectionGroup as y, vermilionLightTheme as z };
546
+ //# sourceMappingURL=animation-timeline-CEJJLFqK.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animation-timeline-CEJJLFqK.d.ts","names":[],"sources":["../src/viewer/types-core.ts","../src/theme/context.tsx","../src/viewer/hooks/collaboration/types.ts","../src/viewer/types-ui.ts"],"mappings":";;;;;;;;;;;KA+BY;;;;;KAqCA;;UAgBK;;EAEhB;;EAEA;;;;;;;;UAagB;;EAEhB;;EAEA;;EAEA;;EAEA,oBAAoB;IAAiB;IAAW;;;EAEhD,QAAQ,YAAY;;EAEpB;;EAEA;EACA;;;KAIW;;;;;;UAOK;;EAEhB;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,QAAQ;;EAER;;EAEA,OAAO;;EAEP;EACA;EACA;EACA;;;;;;;UAQgB;EAChB;EACA;EACA;EACA;EACA;;;;;;;UAQgB;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;;UAoBgB;EAChB;EACA;EACA;EACA,QAAQ;EACR,2BAA2B,eAAe;EAC1C;;;UAQgB;EAChB;EACA;EACA;EACA;;;;;;;UAQgB;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;UAQgB;EAChB;EACA,OAAO,QAAQ;;;;UCxOC;EAChB,QAAQ;EACR,UAAU,MAAM;;;;;;;;;;iBAWD,sBAAsB,OAAO,YAAY,2CAAwB,IAAA;;;;;iBAYjE,kBAAkB;;;;KCOtB;;;;;UAUK;;EAEhB;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,OAAO;;;UAQS;;EAEhB,QAAQ;;EAER,aAAa;;EAEb,oBAAoB,QAAQ,QAAQ,KAAK;;EAEzC;;EAEA,QAAQ;;EAER,KAAK;;;;;EAKL;;EAEA;;;;;;;;;;UCtEgB;;EAEhB,kBAAkB,iBAAiB;;;UAQnB;EAChB,MAAM;EACN;EACA,MAAM,QAAM;;;UAQI;EAChB;EACA;EACA;;;KAIW;;;;;;UA8BK;EAChB;EACA;EACA;EACA;EACA;EACA;;;UAQgB;EAChB;EACA;;EAEA;;EAEA,gBAAgB;IAAQ;IAAa;;;;UAIrB;EAChB;EACA;EACA;EACA,OAAO,QAAM;EACb,SAAS;;;UAIO;EAChB;EACA;EACA,MAAM;EACN;EACA,OAAO;;;UAQS;EAChB;EACA;EACA,WAAW;;;;;;UAWK;EAChB;EACA;EACA;;EAEA;;EAEA;;;KAQW;;KAGA;;KAiBA;;UAOK;EAChB;EACA;;;UAIgB;EAChB;EACA;EACA;EACA;;;UAQgB;EAChB,OAAO;EACP;;;UAIgB;EAChB,OAAO;EACP;;;UAIgB;EAChB,OAAO;EACP;;;UAIgB;EAChB,OAAO,YAAY;EACnB;;;UAIgB;EAChB,OAAO,QAAQ;EACf;;UAOgB;;EAEhB,SAAS;;EAET,QAAQ;;EAER;;;;;EAKA;;EAEA,iBAAiB;EACjB,mBAAmB,SAAS;;EAE5B,uBAAuB;;EAEvB,gBAAgB,mCAAmC;;EAEnD,gBAAgB;;EAEhB,qBAAqB;;EAErB,sBAAsB;;;;;;;EAOtB;;EAGA;;EAEA;;;;;EAMA;;;;;;;;;;;;;;;;;;;;;EAsBA,QAlD4B;;;;;;;;EA2D5B;;;;;EAMA,kBAAkB;;;;;;;EAQlB,iBAAiB;;;;;EAMjB;;;;;;EAOA,mBAAmB;;;;;;;EAQnB,kBAAkB;;;;;;EAOlB,cAAc;;;;;;;;;;;;;;;;;;;;;EAsBd,gBAAgB;;;;;;EAOhB,wBAAwB,QAAQ;;;;;EAMhC;;;;;;;;;;;;;;;;;EAkBA;IACC;IACA;IACA;;;;;;;;;EAUD;;;;;;;;;;;;;;;;;;EAmBA,gBAAgB;;UAGA,+BAA+B,kBAAkB;EACjE,kBAAkB,QAAQ"}