pptx-vue-viewer 3.7.0 → 3.9.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 (207) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/{AiChatPanel-CGDR-wqY.cjs → AiChatPanel-CKirQ0AC.cjs} +1 -1
  3. package/dist/AiChatPanel-CKirQ0AC.cjs.br +0 -0
  4. package/dist/AiChatPanel-CKirQ0AC.cjs.gz +0 -0
  5. package/dist/{AiChatPanel-XndiOIcU.js → AiChatPanel-CY_Dp6hm.js} +2 -2
  6. package/dist/AiChatPanel-CY_Dp6hm.js.br +0 -0
  7. package/dist/AiChatPanel-CY_Dp6hm.js.gz +0 -0
  8. package/dist/{dist-AONF-8Jh.js → dist-C-nE-IV9.js} +17946 -13462
  9. package/dist/dist-C-nE-IV9.js.br +0 -0
  10. package/dist/dist-C-nE-IV9.js.gz +0 -0
  11. package/dist/{dist-C13dWSnw.cjs → dist-DDJ8JY-U.cjs} +18290 -13781
  12. package/dist/dist-DDJ8JY-U.cjs.br +0 -0
  13. package/dist/dist-DDJ8JY-U.cjs.gz +0 -0
  14. package/dist/gif-encoder-BCZJnRXV.js +2 -0
  15. package/dist/gif-encoder-BCZJnRXV.js.br +0 -0
  16. package/dist/gif-encoder-BCZJnRXV.js.gz +0 -0
  17. package/dist/gif-encoder-CzFa2No0.cjs +2 -0
  18. package/dist/gif-encoder-CzFa2No0.cjs.br +0 -0
  19. package/dist/gif-encoder-CzFa2No0.cjs.gz +0 -0
  20. package/dist/{i18n-3rk7tLH2.js → i18n-CzfTZRLN.js} +65 -4
  21. package/dist/i18n-CzfTZRLN.js.br +0 -0
  22. package/dist/i18n-CzfTZRLN.js.gz +0 -0
  23. package/dist/{i18n-Dhu39QI8.cjs → i18n-WAigQN3b.cjs} +65 -4
  24. package/dist/i18n-WAigQN3b.cjs.br +0 -0
  25. package/dist/i18n-WAigQN3b.cjs.gz +0 -0
  26. package/dist/i18n.cjs +1 -1
  27. package/dist/i18n.cjs.br +0 -0
  28. package/dist/i18n.cjs.gz +0 -0
  29. package/dist/i18n.js +1 -1
  30. package/dist/i18n.js.br +0 -0
  31. package/dist/i18n.js.gz +0 -0
  32. package/dist/index.cjs +1 -1
  33. package/dist/index.cjs.br +0 -0
  34. package/dist/index.cjs.gz +0 -0
  35. package/dist/index.js +3 -3
  36. package/dist/index.js.br +0 -0
  37. package/dist/index.js.gz +0 -0
  38. package/dist/internals.cjs +1 -1
  39. package/dist/internals.cjs.br +0 -0
  40. package/dist/internals.cjs.gz +0 -0
  41. package/dist/internals.js +2 -2
  42. package/dist/internals.js.br +0 -0
  43. package/dist/internals.js.gz +0 -0
  44. package/dist/pptx-vue-viewer.css +91 -104
  45. package/dist/pptx-vue-viewer.css.br +0 -0
  46. package/dist/pptx-vue-viewer.css.gz +0 -0
  47. package/dist/smartart-3d-DbBWzji8.cjs +203 -0
  48. package/dist/smartart-3d-DbBWzji8.cjs.br +0 -0
  49. package/dist/smartart-3d-DbBWzji8.cjs.gz +0 -0
  50. package/dist/smartart-3d-m84Wdu08.js +205 -0
  51. package/dist/smartart-3d-m84Wdu08.js.br +0 -0
  52. package/dist/smartart-3d-m84Wdu08.js.gz +0 -0
  53. package/dist/{useViewerSettingsDialog-DWMP7Zg9.cjs → useViewerSettingsDialog-9q3U6VCB.cjs} +15766 -11895
  54. package/dist/useViewerSettingsDialog-9q3U6VCB.cjs.br +0 -0
  55. package/dist/useViewerSettingsDialog-9q3U6VCB.cjs.gz +0 -0
  56. package/dist/{useViewerSettingsDialog-BzJeMt6Q.js → useViewerSettingsDialog-D-QYEUVN.js} +13115 -9392
  57. package/dist/useViewerSettingsDialog-D-QYEUVN.js.br +0 -0
  58. package/dist/useViewerSettingsDialog-D-QYEUVN.js.gz +0 -0
  59. package/dist/viewer/PowerPointViewer.vue.d.ts.map +1 -1
  60. package/dist/viewer/components/Area3DChartRenderer.vue.d.ts +14 -4
  61. package/dist/viewer/components/Area3DChartRenderer.vue.d.ts.map +1 -1
  62. package/dist/viewer/components/Bar3DChartRenderer.vue.d.ts +12 -3
  63. package/dist/viewer/components/Bar3DChartRenderer.vue.d.ts.map +1 -1
  64. package/dist/viewer/components/ChartRenderer.vue.d.ts +7 -0
  65. package/dist/viewer/components/ChartRenderer.vue.d.ts.map +1 -1
  66. package/dist/viewer/components/ConnectorRenderer.vue.d.ts +7 -0
  67. package/dist/viewer/components/ConnectorRenderer.vue.d.ts.map +1 -1
  68. package/dist/viewer/components/DrawingOverlay.vue.d.ts.map +1 -1
  69. package/dist/viewer/components/ElementImageBox.vue.d.ts.map +1 -1
  70. package/dist/viewer/components/ElementRenderer.vue.d.ts.map +1 -1
  71. package/dist/viewer/components/InkRenderer.vue.d.ts +8 -8
  72. package/dist/viewer/components/InkRenderer.vue.d.ts.map +1 -1
  73. package/dist/viewer/components/Line3DChartRenderer.vue.d.ts +12 -3
  74. package/dist/viewer/components/Line3DChartRenderer.vue.d.ts.map +1 -1
  75. package/dist/viewer/components/PieChart3DRenderer.vue.d.ts +10 -2
  76. package/dist/viewer/components/PieChart3DRenderer.vue.d.ts.map +1 -1
  77. package/dist/viewer/components/PresentationMode.vue.d.ts.map +1 -1
  78. package/dist/viewer/components/ReadOnlyBanner.vue.d.ts +12 -1
  79. package/dist/viewer/components/ReadOnlyBanner.vue.d.ts.map +1 -1
  80. package/dist/viewer/components/ReflectionMirrorContent.vue.d.ts +28 -0
  81. package/dist/viewer/components/ReflectionMirrorContent.vue.d.ts.map +1 -0
  82. package/dist/viewer/components/ShapeEffectOverlay.vue.d.ts +6 -0
  83. package/dist/viewer/components/ShapeEffectOverlay.vue.d.ts.map +1 -1
  84. package/dist/viewer/components/SlideCanvas.vue.d.ts.map +1 -1
  85. package/dist/viewer/components/SlideDeckInspector.vue.d.ts +5 -1
  86. package/dist/viewer/components/SlideDeckInspector.vue.d.ts.map +1 -1
  87. package/dist/viewer/components/SlideStage.vue.d.ts.map +1 -1
  88. package/dist/viewer/components/SmartArt3DRenderer.vue.d.ts +12 -0
  89. package/dist/viewer/components/SmartArt3DRenderer.vue.d.ts.map +1 -1
  90. package/dist/viewer/components/SmartArtRenderer.vue.d.ts +7 -0
  91. package/dist/viewer/components/SmartArtRenderer.vue.d.ts.map +1 -1
  92. package/dist/viewer/components/SurfaceChart3DRenderer.vue.d.ts +11 -2
  93. package/dist/viewer/components/SurfaceChart3DRenderer.vue.d.ts.map +1 -1
  94. package/dist/viewer/components/TableRenderer.vue.d.ts +7 -0
  95. package/dist/viewer/components/TableRenderer.vue.d.ts.map +1 -1
  96. package/dist/viewer/components/ViewerMobileSheets.vue.d.ts +3 -1
  97. package/dist/viewer/components/ViewerMobileSheets.vue.d.ts.map +1 -1
  98. package/dist/viewer/components/ViewerSidePanels.vue.d.ts +3 -1
  99. package/dist/viewer/components/ViewerSidePanels.vue.d.ts.map +1 -1
  100. package/dist/viewer/components/WordArtEnvelopeGlyph.vue.d.ts +34 -0
  101. package/dist/viewer/components/WordArtEnvelopeGlyph.vue.d.ts.map +1 -0
  102. package/dist/viewer/components/WordArtText.vue.d.ts +14 -10
  103. package/dist/viewer/components/WordArtText.vue.d.ts.map +1 -1
  104. package/dist/viewer/components/chart/ChartViewModelSvg.vue.d.ts.map +1 -1
  105. package/dist/viewer/components/inspector/AccessibilityPanel.vue.d.ts +23 -0
  106. package/dist/viewer/components/inspector/AccessibilityPanel.vue.d.ts.map +1 -0
  107. package/dist/viewer/components/inspector/ChartPanel.vue.d.ts.map +1 -1
  108. package/dist/viewer/components/inspector/ChartUserShapeOptions.vue.d.ts +7 -6
  109. package/dist/viewer/components/inspector/ChartUserShapeOptions.vue.d.ts.map +1 -1
  110. package/dist/viewer/components/inspector/ChartUserShapePositionFields.vue.d.ts +56 -0
  111. package/dist/viewer/components/inspector/ChartUserShapePositionFields.vue.d.ts.map +1 -0
  112. package/dist/viewer/components/inspector/InspectorPane.vue.d.ts +11 -1
  113. package/dist/viewer/components/inspector/InspectorPane.vue.d.ts.map +1 -1
  114. package/dist/viewer/components/inspector/TablePanel.vue.d.ts +10 -1
  115. package/dist/viewer/components/inspector/TablePanel.vue.d.ts.map +1 -1
  116. package/dist/viewer/components/inspector/TableStyleEditor.vue.d.ts +27 -0
  117. package/dist/viewer/components/inspector/TableStyleEditor.vue.d.ts.map +1 -0
  118. package/dist/viewer/components/inspector/TableStyleEditorFields.vue.d.ts +17 -0
  119. package/dist/viewer/components/inspector/TableStyleEditorFields.vue.d.ts.map +1 -0
  120. package/dist/viewer/components/inspector/TableStyleOptions.vue.d.ts +10 -1
  121. package/dist/viewer/components/inspector/TableStyleOptions.vue.d.ts.map +1 -1
  122. package/dist/viewer/components/inspector/TransitionPreview.vue.d.ts.map +1 -1
  123. package/dist/viewer/composables/ai/useAiBridge.d.ts +13 -1
  124. package/dist/viewer/composables/ai/useAiBridge.d.ts.map +1 -1
  125. package/dist/viewer/composables/bar-face-picture-sample-version.d.ts +3 -0
  126. package/dist/viewer/composables/bar-face-picture-sample-version.d.ts.map +1 -0
  127. package/dist/viewer/composables/chart-3d-interaction-support.d.ts +32 -0
  128. package/dist/viewer/composables/chart-3d-interaction-support.d.ts.map +1 -0
  129. package/dist/viewer/composables/chart-3d-scene-selection.d.ts +33 -0
  130. package/dist/viewer/composables/chart-3d-scene-selection.d.ts.map +1 -0
  131. package/dist/viewer/composables/chart-canvas-interaction-support.d.ts +9 -1
  132. package/dist/viewer/composables/chart-canvas-interaction-support.d.ts.map +1 -1
  133. package/dist/viewer/composables/chart-canvas-interaction.d.ts.map +1 -1
  134. package/dist/viewer/composables/collaboration-types.d.ts +8 -0
  135. package/dist/viewer/composables/collaboration-types.d.ts.map +1 -1
  136. package/dist/viewer/composables/element-style.d.ts.map +1 -1
  137. package/dist/viewer/composables/useAnimationPlayback.d.ts +12 -0
  138. package/dist/viewer/composables/useAnimationPlayback.d.ts.map +1 -1
  139. package/dist/viewer/composables/useAreaChart3dScene.d.ts +11 -2
  140. package/dist/viewer/composables/useAreaChart3dScene.d.ts.map +1 -1
  141. package/dist/viewer/composables/useBarChart3dScene.d.ts +11 -2
  142. package/dist/viewer/composables/useBarChart3dScene.d.ts.map +1 -1
  143. package/dist/viewer/composables/useCollaboration.d.ts.map +1 -1
  144. package/dist/viewer/composables/useCollaborationWiring.d.ts +8 -1
  145. package/dist/viewer/composables/useCollaborationWiring.d.ts.map +1 -1
  146. package/dist/viewer/composables/useLineChart3dScene.d.ts +11 -2
  147. package/dist/viewer/composables/useLineChart3dScene.d.ts.map +1 -1
  148. package/dist/viewer/composables/useLoadContent.d.ts +8 -0
  149. package/dist/viewer/composables/useLoadContent.d.ts.map +1 -1
  150. package/dist/viewer/composables/usePieChart3dScene.d.ts +8 -1
  151. package/dist/viewer/composables/usePieChart3dScene.d.ts.map +1 -1
  152. package/dist/viewer/composables/useReadOnlyRecommendation.d.ts +20 -2
  153. package/dist/viewer/composables/useReadOnlyRecommendation.d.ts.map +1 -1
  154. package/dist/viewer/composables/useSmartArt3DScene.d.ts +23 -0
  155. package/dist/viewer/composables/useSmartArt3DScene.d.ts.map +1 -0
  156. package/dist/viewer/composables/useSurfaceChart3dScene.d.ts +11 -2
  157. package/dist/viewer/composables/useSurfaceChart3dScene.d.ts.map +1 -1
  158. package/dist/viewer/composables/useTableStyleMapHandlers.d.ts +25 -0
  159. package/dist/viewer/composables/useTableStyleMapHandlers.d.ts.map +1 -0
  160. package/dist/viewer/composables/useTextWarpEnvelope.d.ts +38 -0
  161. package/dist/viewer/composables/useTextWarpEnvelope.d.ts.map +1 -0
  162. package/dist/viewer/composables/visual-3d.d.ts.map +1 -1
  163. package/dist/viewer/index.cjs +1 -1
  164. package/dist/viewer/index.cjs.br +0 -0
  165. package/dist/viewer/index.cjs.gz +0 -0
  166. package/dist/viewer/index.js +3 -3
  167. package/dist/viewer/index.js.br +0 -0
  168. package/dist/viewer/index.js.gz +0 -0
  169. package/dist/{viewer-_C2C_5mk.cjs → viewer-5E1GSC6u.cjs} +11448 -10101
  170. package/dist/viewer-5E1GSC6u.cjs.br +0 -0
  171. package/dist/viewer-5E1GSC6u.cjs.gz +0 -0
  172. package/dist/{viewer-DyMHFRc5.js → viewer-Bykr12-X.js} +13150 -11803
  173. package/dist/viewer-Bykr12-X.js.br +0 -0
  174. package/dist/viewer-Bykr12-X.js.gz +0 -0
  175. package/package.json +2 -2
  176. package/dist/AiChatPanel-CGDR-wqY.cjs.br +0 -0
  177. package/dist/AiChatPanel-CGDR-wqY.cjs.gz +0 -0
  178. package/dist/AiChatPanel-XndiOIcU.js.br +0 -0
  179. package/dist/AiChatPanel-XndiOIcU.js.gz +0 -0
  180. package/dist/dist-AONF-8Jh.js.br +0 -0
  181. package/dist/dist-AONF-8Jh.js.gz +0 -0
  182. package/dist/dist-C13dWSnw.cjs.br +0 -0
  183. package/dist/dist-C13dWSnw.cjs.gz +0 -0
  184. package/dist/gif-encoder-BqsV5OmR.js +0 -2
  185. package/dist/gif-encoder-BqsV5OmR.js.br +0 -0
  186. package/dist/gif-encoder-BqsV5OmR.js.gz +0 -0
  187. package/dist/gif-encoder-azxBrC30.cjs +0 -2
  188. package/dist/gif-encoder-azxBrC30.cjs.br +0 -0
  189. package/dist/gif-encoder-azxBrC30.cjs.gz +0 -0
  190. package/dist/i18n-3rk7tLH2.js.br +0 -0
  191. package/dist/i18n-3rk7tLH2.js.gz +0 -0
  192. package/dist/i18n-Dhu39QI8.cjs.br +0 -0
  193. package/dist/i18n-Dhu39QI8.cjs.gz +0 -0
  194. package/dist/smartart-3d-BpL1-zhY.cjs +0 -158
  195. package/dist/smartart-3d-BpL1-zhY.cjs.br +0 -0
  196. package/dist/smartart-3d-BpL1-zhY.cjs.gz +0 -0
  197. package/dist/smartart-3d-PViOJOXG.js +0 -160
  198. package/dist/smartart-3d-PViOJOXG.js.br +0 -0
  199. package/dist/smartart-3d-PViOJOXG.js.gz +0 -0
  200. package/dist/useViewerSettingsDialog-BzJeMt6Q.js.br +0 -0
  201. package/dist/useViewerSettingsDialog-BzJeMt6Q.js.gz +0 -0
  202. package/dist/useViewerSettingsDialog-DWMP7Zg9.cjs.br +0 -0
  203. package/dist/useViewerSettingsDialog-DWMP7Zg9.cjs.gz +0 -0
  204. package/dist/viewer-DyMHFRc5.js.br +0 -0
  205. package/dist/viewer-DyMHFRc5.js.gz +0 -0
  206. package/dist/viewer-_C2C_5mk.cjs.br +0 -0
  207. package/dist/viewer-_C2C_5mk.cjs.gz +0 -0
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pptx-vue-viewer",
3
- "version": "3.7.0",
3
+ "version": "3.9.0",
4
4
  "description": "Vue 3 PowerPoint viewer and editor component: render, edit, and export PPTX slides in the browser.",
5
5
  "keywords": [
6
6
  "editor",
@@ -78,7 +78,7 @@
78
78
  "html2canvas-pro": "^2.3.2",
79
79
  "jspdf": "^4.2.1",
80
80
  "lucide-vue-next": "^1.0.0",
81
- "pptx-viewer-mcp": "^2.2.0",
81
+ "pptx-viewer-mcp": "^2.4.0",
82
82
  "tailwind-merge": "^3.6.0"
83
83
  },
84
84
  "devDependencies": {
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -1,2 +0,0 @@
1
- import { qs as e } from "./useViewerSettingsDialog-BzJeMt6Q.js";
2
- export { e as encodeGif };
Binary file
Binary file
@@ -1,2 +0,0 @@
1
- const e = require("./useViewerSettingsDialog-DWMP7Zg9.cjs");
2
- exports.encodeGif = e.encodeGif;
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -1,158 +0,0 @@
1
- let t = require("three"), e = require("three/examples/jsm/controls/OrbitControls.js");
2
- function n(t, e, n) {
3
- const o = e.split(/\s+/u).filter(Boolean);
4
- if (0 === o.length) return [];
5
- const i = [];
6
- let a = o[0];
7
- for (let e = 1; e < o.length; e++) {
8
- const r = `${a} ${o[e]}`;
9
- t.measureText(r).width <= n ? a = r : (i.push(a), a = o[e]);
10
- }
11
- return i.push(a), i;
12
- }
13
- function o(e, n, o) {
14
- const i = function(e) {
15
- const n = new t.Shape();
16
- e.outline.forEach((t, e) => {
17
- 0 === e ? n.moveTo(t.x, t.y) : n.lineTo(t.x, t.y);
18
- }), n.closePath();
19
- const o = e.bevel > 0;
20
- return new t.ExtrudeGeometry(n, {
21
- depth: e.depth,
22
- bevelEnabled: o,
23
- bevelThickness: e.bevel,
24
- bevelSize: e.bevel,
25
- bevelSegments: 2,
26
- curveSegments: e.rounded ? 24 : 1,
27
- steps: 1
28
- });
29
- }(o), a = new t.MeshStandardMaterial({
30
- color: new t.Color(o.fill),
31
- metalness: .12,
32
- roughness: .52,
33
- transparent: o.opacity < 1,
34
- opacity: o.opacity
35
- }), r = new t.Mesh(i, a);
36
- if (r.position.set(o.position.x, o.position.y, o.position.z), r.rotation.set(o.rotation.x, o.rotation.y, o.rotation.z), e.add(r), n.push(i, a), o.strokeWidth > 0) {
37
- const a = new t.EdgesGeometry(i, 30), s = new t.LineBasicMaterial({ color: new t.Color(o.stroke) }), c = new t.LineSegments(a, s);
38
- c.position.copy(r.position), c.rotation.copy(r.rotation), e.add(c), n.push(a, s);
39
- }
40
- return i;
41
- }
42
- function i(e, o, i) {
43
- if (!i.text) return;
44
- const a = function(e, o, i, a, r) {
45
- if ("undefined" == typeof document || !e.trim() || a <= 0 || r <= 0) return null;
46
- const s = .86 * a, c = .86 * r, l = document.createElement("canvas");
47
- l.width = Math.max(8, Math.round(4 * s)), l.height = Math.max(8, Math.round(4 * c));
48
- const h = l.getContext("2d");
49
- if (!h) return null;
50
- const p = "system-ui, -apple-system, Segoe UI, Roboto, sans-serif", d = .94 * l.width;
51
- let u = 4 * Math.max(6, i), f = [];
52
- for (let t = 0; t < 12; t++) {
53
- h.font = `600 ${u}px ${p}`, f = n(h, e, d);
54
- const t = 1.2 * u;
55
- if (f.length * t <= .96 * l.height || u <= 24) break;
56
- u *= .88;
57
- }
58
- h.clearRect(0, 0, l.width, l.height), h.fillStyle = o, h.textAlign = "center", h.textBaseline = "middle", h.font = `600 ${u}px ${p}`;
59
- const m = 1.2 * u, x = f.length * m, w = l.height / 2 - x / 2 + m / 2;
60
- for (let t = 0; t < f.length; t++) h.fillText(f[t], l.width / 2, w + t * m);
61
- const g = new t.CanvasTexture(l);
62
- return g.colorSpace = t.SRGBColorSpace, g.minFilter = t.LinearFilter, g.magFilter = t.LinearFilter, g.flipY = !1, g.premultiplyAlpha = !1, g.wrapT = t.RepeatWrapping, g.repeat.set(1, -1), g.offset.set(0, 1), g.needsUpdate = !0, {
63
- texture: g,
64
- worldWidth: s,
65
- worldHeight: c
66
- };
67
- }(i.text, i.textColor, i.fontSize, 2 * i.halfWidth, 2 * i.halfHeight);
68
- if (!a) return;
69
- const r = new t.PlaneGeometry(a.worldWidth, a.worldHeight), s = new t.MeshBasicMaterial({
70
- map: a.texture,
71
- transparent: !0,
72
- depthWrite: !1
73
- }), c = new t.Mesh(r, s), l = new t.Euler(i.rotation.x, i.rotation.y, i.rotation.z), h = new t.Vector3(0, 0, i.depth + i.bevel + .4).applyEuler(l);
74
- c.position.set(i.position.x + h.x, i.position.y + h.y, i.position.z + h.z), c.rotation.copy(l), e.add(c), o.push(r, s, a.texture);
75
- }
76
- function a(e) {
77
- const n = new t.Group(), a = [];
78
- for (const t of e.meshes) o(n, a, t), i(n, a, t);
79
- return function(e, n, o) {
80
- for (const i of o.connectors) {
81
- if (i.points.length < 2) continue;
82
- const o = new t.BufferGeometry().setFromPoints(i.points.map((e) => new t.Vector3(e.x, e.y, e.z))), a = new t.LineBasicMaterial({
83
- color: new t.Color(i.color),
84
- transparent: !0,
85
- opacity: .7
86
- });
87
- e.add(new t.Line(o, a)), n.push(o, a);
88
- }
89
- }(n, a, e), {
90
- group: n,
91
- dispose() {
92
- for (const t of a) t.dispose();
93
- }
94
- };
95
- }
96
- exports.mountSmartArt3D = function(n, o, i, r, s = {}) {
97
- const c = new t.WebGLRenderer({
98
- canvas: n,
99
- antialias: !0,
100
- alpha: !s.background
101
- });
102
- c.setPixelRatio(Math.min("undefined" == typeof window ? 1 : window.devicePixelRatio || 1, s.maxPixelRatio ?? 2)), c.setSize(i, r, !1);
103
- const l = new t.Scene();
104
- s.background && (l.background = new t.Color(s.background));
105
- const { cx: h, cy: p, cz: d, radius: u } = function(t) {
106
- let e = 1 / 0, n = 1 / 0, o = 1 / 0, i = -1 / 0, a = -1 / 0, r = -1 / 0;
107
- const s = (t, s, c, l) => {
108
- e = Math.min(e, t - l), n = Math.min(n, s - l), o = Math.min(o, c - l), i = Math.max(i, t + l), a = Math.max(a, s + l), r = Math.max(r, c + l);
109
- };
110
- for (const e of t.meshes) {
111
- const t = Math.max(e.halfWidth, e.halfHeight) + e.depth + e.bevel;
112
- s(e.position.x, e.position.y, e.position.z, t);
113
- }
114
- for (const e of t.connectors) for (const t of e.points) s(t.x, t.y, t.z, 1);
115
- if (!Number.isFinite(e)) return {
116
- cx: 0,
117
- cy: 0,
118
- cz: 0,
119
- radius: Math.max(t.bounds.width, t.bounds.height) / 2 || 1
120
- };
121
- return {
122
- cx: (e + i) / 2,
123
- cy: (n + a) / 2,
124
- cz: (o + r) / 2,
125
- radius: .5 * Math.hypot(i - e, a - n, r - o) || 1
126
- };
127
- }(o), f = i / Math.max(1, r), m = function(t, e) {
128
- const n = 42 * Math.PI / 180, o = 2 * Math.atan(Math.tan(n / 2) * e);
129
- return t / Math.sin(Math.min(n, o) / 2) * 1.1;
130
- }(u, f), x = new t.PerspectiveCamera(42, f, .1, 8 * m + 4 * u);
131
- x.position.set(h + .25 * u, p + .3 * u, d + m), x.lookAt(h, p, d), l.add(new t.AmbientLight(16777215, .62));
132
- const w = new t.DirectionalLight(16777215, .95);
133
- w.position.set(h + u, p + 1.4 * u, d + m), l.add(w);
134
- const g = new t.DirectionalLight(16777215, .3);
135
- g.position.set(h - u, p - .6 * u, d + .6 * m), l.add(g);
136
- const y = a(o);
137
- l.add(y.group);
138
- let M = null;
139
- const b = (t) => {
140
- t && !M ? (M = new e.OrbitControls(x, n), M.enablePan = !1, M.target.set(h, p, d), M.minDistance = .4 * m, M.maxDistance = 3 * m, M.update()) : !t && M && (M.dispose(), M = null), M && (M.autoRotate = Boolean(s.autoRotate), M.autoRotateSpeed = 1.2);
141
- };
142
- b(Boolean(s.interactive));
143
- let v = 0, S = !1;
144
- const z = () => {
145
- S || (v = requestAnimationFrame(z), M?.update(), c.render(l, x));
146
- };
147
- return v = requestAnimationFrame(z), {
148
- resize(t, e) {
149
- x.aspect = t / Math.max(1, e), x.updateProjectionMatrix(), c.setSize(t, e, !1);
150
- },
151
- setInteractive(t) {
152
- b(t);
153
- },
154
- dispose() {
155
- S = !0, cancelAnimationFrame(v), M?.dispose(), y.dispose(), c.dispose();
156
- }
157
- };
158
- };
Binary file
Binary file
@@ -1,160 +0,0 @@
1
- import { AmbientLight as t, BufferGeometry as e, CanvasTexture as n, Color as o, DirectionalLight as i, EdgesGeometry as s, Euler as a, ExtrudeGeometry as r, Group as c, Line as l, LineBasicMaterial as p, LineSegments as h, LinearFilter as d, Mesh as u, MeshBasicMaterial as f, MeshStandardMaterial as m, PerspectiveCamera as w, PlaneGeometry as x, RepeatWrapping as g, SRGBColorSpace as y, Scene as M, Shape as b, Vector3 as v, WebGLRenderer as z } from "three";
2
- import { OrbitControls as S } from "three/examples/jsm/controls/OrbitControls.js";
3
- function k(t, e, n) {
4
- const o = e.split(/\s+/u).filter(Boolean);
5
- if (0 === o.length) return [];
6
- const i = [];
7
- let s = o[0];
8
- for (let e = 1; e < o.length; e++) {
9
- const a = `${s} ${o[e]}`;
10
- t.measureText(a).width <= n ? s = a : (i.push(s), s = o[e]);
11
- }
12
- return i.push(s), i;
13
- }
14
- function P(t, e, n) {
15
- const i = function(t) {
16
- const e = new b();
17
- t.outline.forEach((t, n) => {
18
- 0 === n ? e.moveTo(t.x, t.y) : e.lineTo(t.x, t.y);
19
- }), e.closePath();
20
- const n = t.bevel > 0;
21
- return new r(e, {
22
- depth: t.depth,
23
- bevelEnabled: n,
24
- bevelThickness: t.bevel,
25
- bevelSize: t.bevel,
26
- bevelSegments: 2,
27
- curveSegments: t.rounded ? 24 : 1,
28
- steps: 1
29
- });
30
- }(n), a = new m({
31
- color: new o(n.fill),
32
- metalness: .12,
33
- roughness: .52,
34
- transparent: n.opacity < 1,
35
- opacity: n.opacity
36
- }), c = new u(i, a);
37
- if (c.position.set(n.position.x, n.position.y, n.position.z), c.rotation.set(n.rotation.x, n.rotation.y, n.rotation.z), t.add(c), e.push(i, a), n.strokeWidth > 0) {
38
- const a = new s(i, 30), r = new p({ color: new o(n.stroke) }), l = new h(a, r);
39
- l.position.copy(c.position), l.rotation.copy(c.rotation), t.add(l), e.push(a, r);
40
- }
41
- return i;
42
- }
43
- function R(t, e, o) {
44
- if (!o.text) return;
45
- const i = function(t, e, o, i, s) {
46
- if ("undefined" == typeof document || !t.trim() || i <= 0 || s <= 0) return null;
47
- const a = .86 * i, r = .86 * s, c = document.createElement("canvas");
48
- c.width = Math.max(8, Math.round(4 * a)), c.height = Math.max(8, Math.round(4 * r));
49
- const l = c.getContext("2d");
50
- if (!l) return null;
51
- const p = "system-ui, -apple-system, Segoe UI, Roboto, sans-serif", h = .94 * c.width;
52
- let u = 4 * Math.max(6, o), f = [];
53
- for (let e = 0; e < 12; e++) {
54
- l.font = `600 ${u}px ${p}`, f = k(l, t, h);
55
- const e = 1.2 * u;
56
- if (f.length * e <= .96 * c.height || u <= 24) break;
57
- u *= .88;
58
- }
59
- l.clearRect(0, 0, c.width, c.height), l.fillStyle = e, l.textAlign = "center", l.textBaseline = "middle", l.font = `600 ${u}px ${p}`;
60
- const m = 1.2 * u, w = f.length * m, x = c.height / 2 - w / 2 + m / 2;
61
- for (let t = 0; t < f.length; t++) l.fillText(f[t], c.width / 2, x + t * m);
62
- const M = new n(c);
63
- return M.colorSpace = y, M.minFilter = d, M.magFilter = d, M.flipY = !1, M.premultiplyAlpha = !1, M.wrapT = g, M.repeat.set(1, -1), M.offset.set(0, 1), M.needsUpdate = !0, {
64
- texture: M,
65
- worldWidth: a,
66
- worldHeight: r
67
- };
68
- }(o.text, o.textColor, o.fontSize, 2 * o.halfWidth, 2 * o.halfHeight);
69
- if (!i) return;
70
- const s = new x(i.worldWidth, i.worldHeight), r = new f({
71
- map: i.texture,
72
- transparent: !0,
73
- depthWrite: !1
74
- }), c = new u(s, r), l = new a(o.rotation.x, o.rotation.y, o.rotation.z), p = new v(0, 0, o.depth + o.bevel + .4).applyEuler(l);
75
- c.position.set(o.position.x + p.x, o.position.y + p.y, o.position.z + p.z), c.rotation.copy(l), t.add(c), e.push(s, r, i.texture);
76
- }
77
- function F(t) {
78
- const n = new c(), i = [];
79
- for (const e of t.meshes) P(n, i, e), R(n, i, e);
80
- return function(t, n, i) {
81
- for (const s of i.connectors) {
82
- if (s.points.length < 2) continue;
83
- const i = new e().setFromPoints(s.points.map((t) => new v(t.x, t.y, t.z))), a = new p({
84
- color: new o(s.color),
85
- transparent: !0,
86
- opacity: .7
87
- });
88
- t.add(new l(i, a)), n.push(i, a);
89
- }
90
- }(n, i, t), {
91
- group: n,
92
- dispose() {
93
- for (const t of i) t.dispose();
94
- }
95
- };
96
- }
97
- function A(e, n, s, a, r = {}) {
98
- const c = new z({
99
- canvas: e,
100
- antialias: !0,
101
- alpha: !r.background
102
- });
103
- c.setPixelRatio(Math.min("undefined" == typeof window ? 1 : window.devicePixelRatio || 1, r.maxPixelRatio ?? 2)), c.setSize(s, a, !1);
104
- const l = new M();
105
- r.background && (l.background = new o(r.background));
106
- const { cx: p, cy: h, cz: d, radius: u } = function(t) {
107
- let e = 1 / 0, n = 1 / 0, o = 1 / 0, i = -1 / 0, s = -1 / 0, a = -1 / 0;
108
- const r = (t, r, c, l) => {
109
- e = Math.min(e, t - l), n = Math.min(n, r - l), o = Math.min(o, c - l), i = Math.max(i, t + l), s = Math.max(s, r + l), a = Math.max(a, c + l);
110
- };
111
- for (const e of t.meshes) {
112
- const t = Math.max(e.halfWidth, e.halfHeight) + e.depth + e.bevel;
113
- r(e.position.x, e.position.y, e.position.z, t);
114
- }
115
- for (const e of t.connectors) for (const t of e.points) r(t.x, t.y, t.z, 1);
116
- if (!Number.isFinite(e)) return {
117
- cx: 0,
118
- cy: 0,
119
- cz: 0,
120
- radius: Math.max(t.bounds.width, t.bounds.height) / 2 || 1
121
- };
122
- return {
123
- cx: (e + i) / 2,
124
- cy: (n + s) / 2,
125
- cz: (o + a) / 2,
126
- radius: .5 * Math.hypot(i - e, s - n, a - o) || 1
127
- };
128
- }(n), f = s / Math.max(1, a), m = function(t, e) {
129
- const n = 42 * Math.PI / 180, o = 2 * Math.atan(Math.tan(n / 2) * e);
130
- return t / Math.sin(Math.min(n, o) / 2) * 1.1;
131
- }(u, f), x = new w(42, f, .1, 8 * m + 4 * u);
132
- x.position.set(p + .25 * u, h + .3 * u, d + m), x.lookAt(p, h, d), l.add(new t(16777215, .62));
133
- const g = new i(16777215, .95);
134
- g.position.set(p + u, h + 1.4 * u, d + m), l.add(g);
135
- const y = new i(16777215, .3);
136
- y.position.set(p - u, h - .6 * u, d + .6 * m), l.add(y);
137
- const b = F(n);
138
- l.add(b.group);
139
- let v = null;
140
- const k = (t) => {
141
- t && !v ? (v = new S(x, e), v.enablePan = !1, v.target.set(p, h, d), v.minDistance = .4 * m, v.maxDistance = 3 * m, v.update()) : !t && v && (v.dispose(), v = null), v && (v.autoRotate = Boolean(r.autoRotate), v.autoRotateSpeed = 1.2);
142
- };
143
- k(Boolean(r.interactive));
144
- let P = 0, R = !1;
145
- const A = () => {
146
- R || (P = requestAnimationFrame(A), v?.update(), c.render(l, x));
147
- };
148
- return P = requestAnimationFrame(A), {
149
- resize(t, e) {
150
- x.aspect = t / Math.max(1, e), x.updateProjectionMatrix(), c.setSize(t, e, !1);
151
- },
152
- setInteractive(t) {
153
- k(t);
154
- },
155
- dispose() {
156
- R = !0, cancelAnimationFrame(P), v?.dispose(), b.dispose(), c.dispose();
157
- }
158
- };
159
- }
160
- export { A as mountSmartArt3D };
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file