@shopware-ag/dive 2.0.1-beta.5 → 2.0.1-beta.7

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 (234) hide show
  1. package/build/{src/modules/asset/exporter/AssetExporter.mjs → chunks/AssetExporter-QnOue3VT.mjs} +21 -21
  2. package/build/{src/modules/asset/exporter/AssetExporter.cjs → chunks/AssetExporter-TzKB2FHh.cjs} +4 -4
  3. package/build/chunks/AssetLoader-DCBiLwef.cjs +4 -0
  4. package/build/{src/modules/asset/loader/AssetLoader.mjs → chunks/AssetLoader-Dqrg0Re8.mjs} +43 -40
  5. package/build/chunks/FileTypes-Ca8pkRlQ.cjs +30 -0
  6. package/build/chunks/FileTypes-CpKiTXEY.mjs +1109 -0
  7. package/build/chunks/MathUtils-CBW56ZuG.cjs +1 -0
  8. package/build/chunks/MathUtils-CFGjHuVF.mjs +159 -0
  9. package/build/chunks/OrbitController-D-WNei2f.mjs +940 -0
  10. package/build/chunks/OrbitController-rMX8EHvJ.cjs +1 -0
  11. package/build/chunks/PerspectiveCamera-CONx93im.cjs +1 -0
  12. package/build/chunks/PerspectiveCamera-DUiWJJIj.mjs +38 -0
  13. package/build/chunks/PovSchema-Co9FznEz.cjs +1 -0
  14. package/build/chunks/PovSchema-DWWvr_ED.mjs +10 -0
  15. package/build/chunks/SelectTool-BizqI7_a.cjs +1 -0
  16. package/build/chunks/{SelectTool-DmuTopJx.mjs → SelectTool-DVFL7BtX.mjs} +30 -25
  17. package/build/chunks/findInterface-C6mrvf_t.cjs +1 -0
  18. package/build/chunks/findInterface-DbJ5qzbc.mjs +11 -0
  19. package/build/chunks/network-error-CHvryg-4.mjs +18 -0
  20. package/build/chunks/network-error-D_pq8VU6.cjs +1 -0
  21. package/build/chunks/package-CeZyVg2G.mjs +39 -0
  22. package/build/chunks/package-D_hIrGNz.cjs +1 -0
  23. package/build/dive.cjs +1 -30
  24. package/build/dive.mjs +599 -1540
  25. package/build/plugins/animation/index.cjs +1 -0
  26. package/build/plugins/animation/index.d.ts +2 -0
  27. package/build/plugins/animation/index.mjs +126 -0
  28. package/build/plugins/ar/index.cjs +1 -0
  29. package/build/plugins/ar/index.d.ts +2 -0
  30. package/build/plugins/ar/index.mjs +202 -0
  31. package/build/plugins/assetconverter/index.d.ts +2 -0
  32. package/build/plugins/assetexporter/index.cjs +1 -0
  33. package/build/plugins/assetexporter/index.d.ts +2 -0
  34. package/build/plugins/assetexporter/index.mjs +4 -0
  35. package/build/plugins/assetloader/index.cjs +1 -0
  36. package/build/plugins/assetloader/index.d.ts +2 -0
  37. package/build/plugins/assetloader/index.mjs +6 -0
  38. package/build/plugins/axiscamera/index.cjs +1 -0
  39. package/build/plugins/axiscamera/index.d.ts +2 -0
  40. package/build/plugins/axiscamera/index.mjs +4 -0
  41. package/build/plugins/mediacreator/index.cjs +1 -0
  42. package/build/plugins/mediacreator/index.d.ts +2 -0
  43. package/build/{src/modules/mediacreator/MediaCreator.mjs → plugins/mediacreator/index.mjs} +1 -1
  44. package/build/plugins/orbitcontroller/index.cjs +1 -0
  45. package/build/plugins/orbitcontroller/index.d.ts +2 -0
  46. package/build/plugins/orbitcontroller/index.mjs +5 -0
  47. package/build/plugins/state/index.cjs +27 -0
  48. package/build/plugins/state/index.d.ts +2 -0
  49. package/build/plugins/state/index.mjs +4265 -0
  50. package/build/plugins/systeminfo/index.cjs +1 -0
  51. package/build/plugins/systeminfo/index.d.ts +2 -0
  52. package/build/plugins/systeminfo/index.mjs +136 -0
  53. package/build/plugins/toolbox/index.cjs +1 -0
  54. package/build/plugins/toolbox/index.d.ts +2 -0
  55. package/build/{src/modules/toolbox/Toolbox.mjs → plugins/toolbox/index.mjs} +8 -2
  56. package/build/src/components/gizmo/Gizmo.d.ts +1 -1
  57. package/build/src/components/gizmo/handles/AxisHandle.d.ts +1 -1
  58. package/build/src/components/gizmo/handles/RadialHandle.d.ts +1 -1
  59. package/build/src/components/gizmo/handles/ScaleHandle.d.ts +1 -1
  60. package/build/src/components/gizmo/rotate/RotateGizmo.d.ts +2 -2
  61. package/build/src/components/gizmo/scale/ScaleGizmo.d.ts +2 -2
  62. package/build/src/components/gizmo/translate/TranslateGizmo.d.ts +2 -2
  63. package/build/src/components/model/Model.d.ts +2 -2
  64. package/build/src/components/primitive/Primitive.d.ts +3 -3
  65. package/build/src/components/root/Root.d.ts +5 -7
  66. package/build/src/core/Dive.d.ts +1 -1
  67. package/build/src/engine/clock/Clock.d.ts +1 -0
  68. package/build/src/engine/index.d.ts +6 -0
  69. package/build/src/engine/renderer/Renderer.d.ts +47 -7
  70. package/build/src/events/index.d.ts +1 -0
  71. package/build/src/index.d.ts +4 -2
  72. package/build/src/interfaces/Draggable.d.ts +1 -1
  73. package/build/src/plugins/animation/index.d.ts +2 -0
  74. package/build/src/{modules/animation → plugins/animation/src}/animator/Animator.d.ts +2 -3
  75. package/build/src/plugins/animation/src/index.d.ts +3 -0
  76. package/build/src/plugins/animation/src/system/AnimationSystem.d.ts +23 -0
  77. package/build/src/plugins/ar/index.d.ts +4 -0
  78. package/build/src/plugins/ar/src/ARSystem.d.ts +24 -0
  79. package/build/src/plugins/ar/src/arquicklook/ARQuickLook.d.ts +15 -0
  80. package/build/src/plugins/ar/src/error/ar-errors.d.ts +18 -0
  81. package/build/src/{modules/ar → plugins/ar/src}/sceneviewer/SceneViewer.d.ts +10 -0
  82. package/build/src/{modules/ar → plugins/ar/src}/webxr/WebXR.d.ts +2 -2
  83. package/build/src/{modules/ar → plugins/ar/src}/webxr/controller/WebXRController.d.ts +2 -2
  84. package/build/src/{modules/ar → plugins/ar/src}/webxr/origin/WebXROrigin.d.ts +1 -1
  85. package/build/src/{modules/ar → plugins/ar/src}/webxr/raycaster/WebXRRaycaster.d.ts +3 -3
  86. package/build/src/{modules/ar → plugins/ar/src}/webxr/raycaster/ar/WebXRRaycasterAR.d.ts +1 -1
  87. package/build/src/{modules/ar → plugins/ar/src}/webxr/raycaster/three/WebXRRaycasterTHREE.d.ts +2 -2
  88. package/build/src/{modules/ar → plugins/ar/src}/webxr/touchscreencontrols/WebXRTouchscreenControls.d.ts +1 -1
  89. package/build/src/plugins/assetconverter/index.d.ts +1 -0
  90. package/build/src/plugins/assetconverter/src/AssetConverter.d.ts +13 -0
  91. package/build/src/plugins/assetexporter/index.d.ts +1 -0
  92. package/build/src/{modules/asset/exporter → plugins/assetexporter/src}/AssetExporter.d.ts +0 -17
  93. package/build/src/plugins/assetloader/index.d.ts +3 -0
  94. package/build/src/plugins/assetloader/src/loader/AssetLoader.d.ts +8 -0
  95. package/build/src/plugins/axiscamera/index.d.ts +1 -0
  96. package/build/src/{modules/axiscamera → plugins/axiscamera/src}/AxisCamera.d.ts +1 -4
  97. package/build/src/plugins/mediacreator/index.d.ts +1 -0
  98. package/build/src/plugins/mediacreator/src/MediaCreator.d.ts +15 -0
  99. package/build/src/plugins/orbitcontroller/index.d.ts +1 -0
  100. package/build/src/{modules/controller/orbit → plugins/orbitcontroller/src}/OrbitController.d.ts +3 -3
  101. package/build/src/plugins/state/index.d.ts +4 -0
  102. package/build/src/{modules/state → plugins/state/src}/State.d.ts +4 -27
  103. package/build/src/{modules/state → plugins/state/src}/actions/action.d.ts +1 -1
  104. package/build/src/{modules/state → plugins/state/src}/actions/ar/launchar.d.ts +2 -2
  105. package/build/src/{modules/state → plugins/state/src}/actions/camera/computeencompassingview.d.ts +1 -1
  106. package/build/src/{modules/state → plugins/state/src}/actions/camera/getcameratransform.d.ts +1 -1
  107. package/build/src/{modules/state → plugins/state/src}/actions/camera/lockcamera.d.ts +1 -1
  108. package/build/src/{modules/state → plugins/state/src}/actions/camera/movecamera.d.ts +3 -3
  109. package/build/src/{modules/state → plugins/state/src}/actions/camera/setcameralayer.d.ts +1 -1
  110. package/build/src/{modules/state → plugins/state/src}/actions/camera/setcameratransform.d.ts +1 -1
  111. package/build/src/{modules/state → plugins/state/src}/actions/camera/zoomcamera.d.ts +1 -1
  112. package/build/src/{modules/state → plugins/state/src}/actions/media/generatemedia.d.ts +1 -1
  113. package/build/src/plugins/state/src/actions/object/addobject.d.ts +9 -0
  114. package/build/src/plugins/state/src/actions/object/deleteobject.d.ts +13 -0
  115. package/build/src/plugins/state/src/actions/object/deselectobject.d.ts +13 -0
  116. package/build/src/{modules/state → plugins/state/src}/actions/object/dropit.d.ts +3 -3
  117. package/build/src/{modules/state → plugins/state/src}/actions/object/getallobjects.d.ts +3 -2
  118. package/build/src/plugins/state/src/actions/object/getobjects.d.ts +13 -0
  119. package/build/src/{modules/state → plugins/state/src}/actions/object/modelloaded.d.ts +1 -1
  120. package/build/src/{modules/state → plugins/state/src}/actions/object/placeonfloor.d.ts +3 -3
  121. package/build/src/plugins/state/src/actions/object/selectobject.d.ts +13 -0
  122. package/build/src/plugins/state/src/actions/object/setparent.d.ts +23 -0
  123. package/build/src/plugins/state/src/actions/object/updateobject.d.ts +13 -0
  124. package/build/src/{modules/state → plugins/state/src}/actions/renderer/startrender.d.ts +1 -1
  125. package/build/src/{modules/state → plugins/state/src}/actions/scene/exportscene.d.ts +4 -4
  126. package/build/src/plugins/state/src/actions/scene/getallscenedata.d.ts +9 -0
  127. package/build/src/{modules/state → plugins/state/src}/actions/scene/setbackground.d.ts +1 -1
  128. package/build/src/{modules/state → plugins/state/src}/actions/scene/updatescene.d.ts +1 -1
  129. package/build/src/{modules/state → plugins/state/src}/actions/toolbox/setgizmomode.d.ts +1 -1
  130. package/build/src/{modules/state → plugins/state/src}/actions/toolbox/setgizmoscalelinked.d.ts +1 -1
  131. package/build/src/{modules/state → plugins/state/src}/actions/toolbox/setgizmovisible.d.ts +1 -1
  132. package/build/src/{modules/state → plugins/state/src}/actions/toolbox/usetool.d.ts +2 -2
  133. package/build/src/plugins/state/types/ActionTypes.d.ts +17 -0
  134. package/build/src/{types/SceneType.d.ts → plugins/state/types/StateExportFileType.d.ts} +1 -1
  135. package/build/src/plugins/state/types/StateSceneData.d.ts +19 -0
  136. package/build/src/plugins/state/types/index.d.ts +1 -0
  137. package/build/src/plugins/systeminfo/index.d.ts +2 -0
  138. package/build/src/{modules/systeminfo → plugins/systeminfo/src}/SystemInfo.d.ts +21 -31
  139. package/build/src/plugins/toolbox/index.d.ts +4 -0
  140. package/build/src/{modules/toolbox → plugins/toolbox/src}/BaseTool.d.ts +2 -4
  141. package/build/src/{modules/toolbox → plugins/toolbox/src}/Toolbox.d.ts +2 -11
  142. package/build/src/{modules/toolbox → plugins/toolbox/src}/select/SelectTool.d.ts +2 -6
  143. package/build/src/{modules/toolbox → plugins/toolbox/src}/transform/TransformTool.d.ts +2 -6
  144. package/build/src/types/components/DIVELight.d.ts +4 -0
  145. package/build/src/types/components/DIVESceneObject.d.ts +6 -0
  146. package/build/src/types/components/index.d.ts +2 -0
  147. package/build/src/types/index.d.ts +2 -5
  148. package/build/src/types/schema/BaseEntitySchema.d.ts +8 -0
  149. package/build/src/types/schema/EntitySchema.d.ts +11 -0
  150. package/build/src/types/schema/EntityTypeSchema.d.ts +1 -0
  151. package/build/src/types/schema/GeometrySchema.d.ts +7 -0
  152. package/build/src/types/schema/GeometryTypeSchema.d.ts +1 -0
  153. package/build/src/types/schema/GroupSchema.d.ts +11 -0
  154. package/build/src/types/schema/LightSchema.d.ts +28 -0
  155. package/build/src/{modules/state/types/COMMaterial.d.ts → types/schema/MaterialSchema.d.ts} +1 -1
  156. package/build/src/types/schema/ModelSchema.d.ts +14 -0
  157. package/build/src/types/schema/PovSchema.d.ts +10 -0
  158. package/build/src/types/schema/PrimitiveSchema.d.ts +14 -0
  159. package/build/src/types/schema/index.d.ts +11 -0
  160. package/package.json +52 -42
  161. package/build/chunks/FileTypes-DuVGjbcR.mjs +0 -36
  162. package/build/chunks/FileTypes-DzVpDu_p.cjs +0 -1
  163. package/build/chunks/ModuleRegistry-NyNtjHb2.cjs +0 -1
  164. package/build/chunks/ModuleRegistry-RSub8W0G.mjs +0 -13
  165. package/build/chunks/PerspectiveCamera-BByyG5R4.cjs +0 -1
  166. package/build/chunks/PerspectiveCamera-sm4_81KJ.mjs +0 -34
  167. package/build/chunks/SelectTool-C7nerV4P.cjs +0 -1
  168. package/build/chunks/VisibilityLayerMask-BI7jPKdx.cjs +0 -1
  169. package/build/chunks/VisibilityLayerMask-CXgt1fJc.mjs +0 -8
  170. package/build/chunks/findInterface-BEdL2iUQ.cjs +0 -1
  171. package/build/chunks/findInterface-OrXgmwxj.mjs +0 -18
  172. package/build/chunks/index-C7Wx_9uY.mjs +0 -33
  173. package/build/chunks/index-MNP0K5dt.cjs +0 -1
  174. package/build/chunks/package-DeBkqggW.mjs +0 -39
  175. package/build/chunks/package-o6as1hwQ.cjs +0 -1
  176. package/build/src/error/ar-compatibility/ar-compatibility-error.d.ts +0 -12
  177. package/build/src/modules/ModuleRegistry.d.ts +0 -19
  178. package/build/src/modules/animation/AnimationSystem.cjs +0 -1
  179. package/build/src/modules/animation/AnimationSystem.d.ts +0 -36
  180. package/build/src/modules/animation/AnimationSystem.mjs +0 -95
  181. package/build/src/modules/ar/ARSystem.cjs +0 -1
  182. package/build/src/modules/ar/ARSystem.d.ts +0 -71
  183. package/build/src/modules/ar/ARSystem.mjs +0 -163
  184. package/build/src/modules/ar/arquicklook/ARQuickLook.d.ts +0 -7
  185. package/build/src/modules/asset/converter/AssetConverter.d.ts +0 -30
  186. package/build/src/modules/asset/loader/AssetLoader.cjs +0 -4
  187. package/build/src/modules/asset/loader/AssetLoader.d.ts +0 -29
  188. package/build/src/modules/mediacreator/MediaCreator.cjs +0 -1
  189. package/build/src/modules/mediacreator/MediaCreator.d.ts +0 -44
  190. package/build/src/modules/state/State.cjs +0 -27
  191. package/build/src/modules/state/State.mjs +0 -4296
  192. package/build/src/modules/state/actions/object/addobject.d.ts +0 -8
  193. package/build/src/modules/state/actions/object/deleteobject.d.ts +0 -12
  194. package/build/src/modules/state/actions/object/deselectobject.d.ts +0 -12
  195. package/build/src/modules/state/actions/object/getobjects.d.ts +0 -12
  196. package/build/src/modules/state/actions/object/selectobject.d.ts +0 -12
  197. package/build/src/modules/state/actions/object/setparent.d.ts +0 -22
  198. package/build/src/modules/state/actions/object/updateobject.d.ts +0 -12
  199. package/build/src/modules/state/actions/scene/getallscenedata.d.ts +0 -9
  200. package/build/src/modules/state/types/ActionTypes.d.ts +0 -18
  201. package/build/src/modules/state/types/COMBaseEntity.d.ts +0 -8
  202. package/build/src/modules/state/types/COMEntity.d.ts +0 -11
  203. package/build/src/modules/state/types/COMEntityType.d.ts +0 -1
  204. package/build/src/modules/state/types/COMGeometry.d.ts +0 -7
  205. package/build/src/modules/state/types/COMGeometryType.d.ts +0 -1
  206. package/build/src/modules/state/types/COMGroup.d.ts +0 -11
  207. package/build/src/modules/state/types/COMLight.d.ts +0 -28
  208. package/build/src/modules/state/types/COMModel.d.ts +0 -14
  209. package/build/src/modules/state/types/COMPov.d.ts +0 -10
  210. package/build/src/modules/state/types/COMPrimitive.d.ts +0 -14
  211. package/build/src/modules/state/types/index.d.ts +0 -11
  212. package/build/src/modules/systeminfo/SystemInfo.cjs +0 -1
  213. package/build/src/modules/systeminfo/SystemInfo.mjs +0 -114
  214. package/build/src/modules/toolbox/Toolbox.cjs +0 -1
  215. package/build/src/types/SceneData.d.ts +0 -19
  216. package/build/src/types/SceneObjects.d.ts +0 -9
  217. package/build/src/types/UUID.d.ts +0 -1
  218. /package/build/{src/modules/asset/converter/AssetConverter.cjs → plugins/assetconverter/index.cjs} +0 -0
  219. /package/build/{src/modules/asset/converter/AssetConverter.mjs → plugins/assetconverter/index.mjs} +0 -0
  220. /package/build/src/{modules/events → events}/EventExecutor.d.ts +0 -0
  221. /package/build/src/{modules/animation → plugins/animation/src}/types/AnimatorParameters.d.ts +0 -0
  222. /package/build/src/{modules/ar → plugins/ar/src}/webxr/crosshair/WebXRCrosshair.d.ts +0 -0
  223. /package/build/src/{modules/ar → plugins/ar/src}/webxr/overlay/Overlay.d.ts +0 -0
  224. /package/build/src/{modules/asset → plugins/assetloader/src}/draco/DracoLoader.d.ts +0 -0
  225. /package/build/src/{modules/state → plugins/state/src}/ActionRegistry.d.ts +0 -0
  226. /package/build/src/{modules/state → plugins/state/src}/actions/ar/index.d.ts +0 -0
  227. /package/build/src/{modules/state → plugins/state/src}/actions/camera/index.d.ts +0 -0
  228. /package/build/src/{modules/state → plugins/state/src}/actions/index.d.ts +0 -0
  229. /package/build/src/{modules/state → plugins/state/src}/actions/media/index.d.ts +0 -0
  230. /package/build/src/{modules/state → plugins/state/src}/actions/object/index.d.ts +0 -0
  231. /package/build/src/{modules/state → plugins/state/src}/actions/renderer/index.d.ts +0 -0
  232. /package/build/src/{modules/state → plugins/state/src}/actions/scene/index.d.ts +0 -0
  233. /package/build/src/{modules/state → plugins/state/src}/actions/toolbox/index.d.ts +0 -0
  234. /package/build/src/{types/info → plugins/systeminfo/types}/index.d.ts +0 -0
@@ -1 +0,0 @@
1
- "use strict";var ft=Object.defineProperty;var _t=(r,n,e)=>n in r?ft(r,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[n]=e;var h=(r,n,e)=>_t(r,typeof n!="symbol"?n+"":n,e);const t=require("three"),J=require("./VisibilityLayerMask-BI7jPKdx.cjs"),y=require("./findInterface-BEdL2iUQ.cjs"),I=new t.Raycaster,p=new t.Vector3,E=new t.Vector3,c=new t.Quaternion,$={X:new t.Vector3(1,0,0),Y:new t.Vector3(0,1,0),Z:new t.Vector3(0,0,1)},F={type:"change"},tt={type:"mouseDown"},et={type:"mouseUp",mode:null},it={type:"objectChange"};class yt extends t.Object3D{constructor(n,e){super(),e===void 0&&(console.warn('THREE.TransformControls: The second parameter "domElement" is now mandatory.'),e=document),this.isTransformControls=!0,this.visible=!1,this.domElement=e,this.domElement.style.touchAction="none";const o=new vt;this._gizmo=o,this.add(o);const s=new Pt;this._plane=s,this.add(s);const a=this;function i(u,w){let G=w;Object.defineProperty(a,u,{get:function(){return G!==void 0?G:w},set:function(D){G!==D&&(G=D,s[u]=D,o[u]=D,a.dispatchEvent({type:u+"-changed",value:D}),a.dispatchEvent(F))}}),a[u]=w,s[u]=w,o[u]=w}i("camera",n),i("object",void 0),i("enabled",!0),i("axis",null),i("mode","translate"),i("translationSnap",null),i("rotationSnap",null),i("scaleSnap",null),i("space","world"),i("size",1),i("dragging",!1),i("showX",!0),i("showY",!0),i("showZ",!0);const d=new t.Vector3,f=new t.Vector3,x=new t.Quaternion,A=new t.Quaternion,j=new t.Vector3,z=new t.Quaternion,N=new t.Vector3,Z=new t.Vector3,S=new t.Vector3,v=0,b=new t.Vector3;i("worldPosition",d),i("worldPositionStart",f),i("worldQuaternion",x),i("worldQuaternionStart",A),i("cameraPosition",j),i("cameraQuaternion",z),i("pointStart",N),i("pointEnd",Z),i("rotationAxis",S),i("rotationAngle",v),i("eye",b),this._offset=new t.Vector3,this._startNorm=new t.Vector3,this._endNorm=new t.Vector3,this._cameraScale=new t.Vector3,this._parentPosition=new t.Vector3,this._parentQuaternion=new t.Quaternion,this._parentQuaternionInv=new t.Quaternion,this._parentScale=new t.Vector3,this._worldScaleStart=new t.Vector3,this._worldQuaternionInv=new t.Quaternion,this._worldScale=new t.Vector3,this._positionStart=new t.Vector3,this._quaternionStart=new t.Quaternion,this._scaleStart=new t.Vector3,this._getPointer=wt.bind(this),this._onPointerDown=bt.bind(this),this._onPointerHover=gt.bind(this),this._onPointerMove=Mt.bind(this),this._onPointerUp=St.bind(this),this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointermove",this._onPointerHover),this.domElement.addEventListener("pointerup",this._onPointerUp)}updateMatrixWorld(n){this.object!==void 0&&(this.object.updateMatrixWorld(),this.object.parent===null?console.error("TransformControls: The attached 3D object must be a part of the scene graph."):this.object.parent.matrixWorld.decompose(this._parentPosition,this._parentQuaternion,this._parentScale),this.object.matrixWorld.decompose(this.worldPosition,this.worldQuaternion,this._worldScale),this._parentQuaternionInv.copy(this._parentQuaternion).invert(),this._worldQuaternionInv.copy(this.worldQuaternion).invert()),this.camera.updateMatrixWorld(),this.camera.matrixWorld.decompose(this.cameraPosition,this.cameraQuaternion,this._cameraScale),this.camera.isOrthographicCamera?this.camera.getWorldDirection(this.eye).negate():this.eye.copy(this.cameraPosition).sub(this.worldPosition).normalize(),super.updateMatrixWorld(n)}pointerHover(n){if(this.object===void 0||this.dragging===!0)return;n!==null&&I.setFromCamera(n,this.camera);const e=U(this._gizmo.picker[this.mode],I);e?this.axis=e.object.name:this.axis=null}pointerDown(n){if(!(this.object===void 0||this.dragging===!0||n!=null&&n.button!==0)&&this.axis!==null){n!==null&&I.setFromCamera(n,this.camera);const e=U(this._plane,I,!0);e&&(this.object.updateMatrixWorld(),this.object.parent.updateMatrixWorld(),this._positionStart.copy(this.object.position),this._quaternionStart.copy(this.object.quaternion),this._scaleStart.copy(this.object.scale),this.object.matrixWorld.decompose(this.worldPositionStart,this.worldQuaternionStart,this._worldScaleStart),this.pointStart.copy(e.point).sub(this.worldPositionStart)),this.dragging=!0,tt.mode=this.mode,this.dispatchEvent(tt)}}pointerMove(n){const e=this.axis,o=this.mode,s=this.object;let a=this.space;if(o==="scale"?a="local":(e==="E"||e==="XYZE"||e==="XYZ")&&(a="world"),s===void 0||e===null||this.dragging===!1||n!==null&&n.button!==-1)return;n!==null&&I.setFromCamera(n,this.camera);const i=U(this._plane,I,!0);if(i){if(this.pointEnd.copy(i.point).sub(this.worldPositionStart),o==="translate")this._offset.copy(this.pointEnd).sub(this.pointStart),a==="local"&&e!=="XYZ"&&this._offset.applyQuaternion(this._worldQuaternionInv),e.indexOf("X")===-1&&(this._offset.x=0),e.indexOf("Y")===-1&&(this._offset.y=0),e.indexOf("Z")===-1&&(this._offset.z=0),a==="local"&&e!=="XYZ"?this._offset.applyQuaternion(this._quaternionStart).divide(this._parentScale):this._offset.applyQuaternion(this._parentQuaternionInv).divide(this._parentScale),s.position.copy(this._offset).add(this._positionStart),this.translationSnap&&(a==="local"&&(s.position.applyQuaternion(c.copy(this._quaternionStart).invert()),e.search("X")!==-1&&(s.position.x=Math.round(s.position.x/this.translationSnap)*this.translationSnap),e.search("Y")!==-1&&(s.position.y=Math.round(s.position.y/this.translationSnap)*this.translationSnap),e.search("Z")!==-1&&(s.position.z=Math.round(s.position.z/this.translationSnap)*this.translationSnap),s.position.applyQuaternion(this._quaternionStart)),a==="world"&&(s.parent&&s.position.add(p.setFromMatrixPosition(s.parent.matrixWorld)),e.search("X")!==-1&&(s.position.x=Math.round(s.position.x/this.translationSnap)*this.translationSnap),e.search("Y")!==-1&&(s.position.y=Math.round(s.position.y/this.translationSnap)*this.translationSnap),e.search("Z")!==-1&&(s.position.z=Math.round(s.position.z/this.translationSnap)*this.translationSnap),s.parent&&s.position.sub(p.setFromMatrixPosition(s.parent.matrixWorld))));else if(o==="scale"){if(e.search("XYZ")!==-1){let d=this.pointEnd.length()/this.pointStart.length();this.pointEnd.dot(this.pointStart)<0&&(d*=-1),E.set(d,d,d)}else p.copy(this.pointStart),E.copy(this.pointEnd),p.applyQuaternion(this._worldQuaternionInv),E.applyQuaternion(this._worldQuaternionInv),E.divide(p),e.search("X")===-1&&(E.x=1),e.search("Y")===-1&&(E.y=1),e.search("Z")===-1&&(E.z=1);s.scale.copy(this._scaleStart).multiply(E),this.scaleSnap&&(e.search("X")!==-1&&(s.scale.x=Math.round(s.scale.x/this.scaleSnap)*this.scaleSnap||this.scaleSnap),e.search("Y")!==-1&&(s.scale.y=Math.round(s.scale.y/this.scaleSnap)*this.scaleSnap||this.scaleSnap),e.search("Z")!==-1&&(s.scale.z=Math.round(s.scale.z/this.scaleSnap)*this.scaleSnap||this.scaleSnap))}else if(o==="rotate"){this._offset.copy(this.pointEnd).sub(this.pointStart);const d=20/this.worldPosition.distanceTo(p.setFromMatrixPosition(this.camera.matrixWorld));let f=!1;e==="XYZE"?(this.rotationAxis.copy(this._offset).cross(this.eye).normalize(),this.rotationAngle=this._offset.dot(p.copy(this.rotationAxis).cross(this.eye))*d):(e==="X"||e==="Y"||e==="Z")&&(this.rotationAxis.copy($[e]),p.copy($[e]),a==="local"&&p.applyQuaternion(this.worldQuaternion),p.cross(this.eye),p.length()===0?f=!0:this.rotationAngle=this._offset.dot(p.normalize())*d),(e==="E"||f)&&(this.rotationAxis.copy(this.eye),this.rotationAngle=this.pointEnd.angleTo(this.pointStart),this._startNorm.copy(this.pointStart).normalize(),this._endNorm.copy(this.pointEnd).normalize(),this.rotationAngle*=this._endNorm.cross(this._startNorm).dot(this.eye)<0?1:-1),this.rotationSnap&&(this.rotationAngle=Math.round(this.rotationAngle/this.rotationSnap)*this.rotationSnap),a==="local"&&e!=="E"&&e!=="XYZE"?(s.quaternion.copy(this._quaternionStart),s.quaternion.multiply(c.setFromAxisAngle(this.rotationAxis,this.rotationAngle)).normalize()):(this.rotationAxis.applyQuaternion(this._parentQuaternionInv),s.quaternion.copy(c.setFromAxisAngle(this.rotationAxis,this.rotationAngle)),s.quaternion.multiply(this._quaternionStart).normalize())}this.dispatchEvent(F),this.dispatchEvent(it)}}pointerUp(n){n!==null&&n.button!==0||(this.dragging&&this.axis!==null&&(et.mode=this.mode,this.dispatchEvent(et)),this.dragging=!1,this.axis=null)}dispose(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerHover),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.traverse(function(n){n.geometry&&n.geometry.dispose(),n.material&&n.material.dispose()})}attach(n){return this.object=n,this.visible=!0,this}detach(){return this.object=void 0,this.visible=!1,this.axis=null,this}reset(){this.enabled&&this.dragging&&(this.object.position.copy(this._positionStart),this.object.quaternion.copy(this._quaternionStart),this.object.scale.copy(this._scaleStart),this.dispatchEvent(F),this.dispatchEvent(it),this.pointStart.copy(this.pointEnd))}getRaycaster(){return I}getMode(){return this.mode}setMode(n){this.mode=n}setTranslationSnap(n){this.translationSnap=n}setRotationSnap(n){this.rotationSnap=n}setScaleSnap(n){this.scaleSnap=n}setSize(n){this.size=n}setSpace(n){this.space=n}}function wt(r){if(this.domElement.ownerDocument.pointerLockElement)return{x:0,y:0,button:r.button};{const n=this.domElement.getBoundingClientRect();return{x:(r.clientX-n.left)/n.width*2-1,y:-(r.clientY-n.top)/n.height*2+1,button:r.button}}}function gt(r){if(this.enabled)switch(r.pointerType){case"mouse":case"pen":this.pointerHover(this._getPointer(r));break}}function bt(r){this.enabled&&(document.pointerLockElement||this.domElement.setPointerCapture(r.pointerId),this.domElement.addEventListener("pointermove",this._onPointerMove),this.pointerHover(this._getPointer(r)),this.pointerDown(this._getPointer(r)))}function Mt(r){this.enabled&&this.pointerMove(this._getPointer(r))}function St(r){this.enabled&&(this.domElement.releasePointerCapture(r.pointerId),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.pointerUp(this._getPointer(r)))}function U(r,n,e){const o=n.intersectObject(r,!0);for(let s=0;s<o.length;s++)if(o[s].object.visible||e)return o[s];return!1}const k=new t.Euler,l=new t.Vector3(0,1,0),nt=new t.Vector3(0,0,0),ot=new t.Matrix4,q=new t.Quaternion,W=new t.Quaternion,M=new t.Vector3,st=new t.Matrix4,Y=new t.Vector3(1,0,0),T=new t.Vector3(0,1,0),O=new t.Vector3(0,0,1),B=new t.Vector3,C=new t.Vector3,X=new t.Vector3;class vt extends t.Object3D{constructor(){super(),this.isTransformControlsGizmo=!0,this.type="TransformControlsGizmo";const n=new t.MeshBasicMaterial({depthTest:!1,depthWrite:!1,fog:!1,toneMapped:!1,transparent:!0}),e=new t.LineBasicMaterial({depthTest:!1,depthWrite:!1,fog:!1,toneMapped:!1,transparent:!0}),o=n.clone();o.opacity=.15;const s=e.clone();s.opacity=.5;const a=n.clone();a.color.setHex(16711680);const i=n.clone();i.color.setHex(65280);const d=n.clone();d.color.setHex(255);const f=n.clone();f.color.setHex(16711680),f.opacity=.5;const x=n.clone();x.color.setHex(65280),x.opacity=.5;const A=n.clone();A.color.setHex(255),A.opacity=.5;const j=n.clone();j.opacity=.25;const z=n.clone();z.color.setHex(16776960),z.opacity=.25,n.clone().color.setHex(16776960);const Z=n.clone();Z.color.setHex(7895160);const S=new t.CylinderGeometry(0,.04,.1,12);S.translate(0,.05,0);const v=new t.BoxGeometry(.08,.08,.08);v.translate(0,.04,0);const b=new t.BufferGeometry;b.setAttribute("position",new t.Float32BufferAttribute([0,0,0,1,0,0],3));const u=new t.CylinderGeometry(.0075,.0075,.5,3);u.translate(0,.25,0);function w(_,H){const g=new t.TorusGeometry(_,.0075,3,64,H*Math.PI*2);return g.rotateY(Math.PI/2),g.rotateX(Math.PI/2),g}function G(){const _=new t.BufferGeometry;return _.setAttribute("position",new t.Float32BufferAttribute([0,0,0,1,1,1],3)),_}const D={X:[[new t.Mesh(S,a),[.5,0,0],[0,0,-Math.PI/2]],[new t.Mesh(S,a),[-.5,0,0],[0,0,Math.PI/2]],[new t.Mesh(u,a),[0,0,0],[0,0,-Math.PI/2]]],Y:[[new t.Mesh(S,i),[0,.5,0]],[new t.Mesh(S,i),[0,-.5,0],[Math.PI,0,0]],[new t.Mesh(u,i)]],Z:[[new t.Mesh(S,d),[0,0,.5],[Math.PI/2,0,0]],[new t.Mesh(S,d),[0,0,-.5],[-Math.PI/2,0,0]],[new t.Mesh(u,d),null,[Math.PI/2,0,0]]],XYZ:[[new t.Mesh(new t.OctahedronGeometry(.1,0),j.clone()),[0,0,0]]],XY:[[new t.Mesh(new t.BoxGeometry(.15,.15,.01),A.clone()),[.15,.15,0]]],YZ:[[new t.Mesh(new t.BoxGeometry(.15,.15,.01),f.clone()),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new t.Mesh(new t.BoxGeometry(.15,.15,.01),x.clone()),[.15,0,.15],[-Math.PI/2,0,0]]]},rt={X:[[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[.3,0,0],[0,0,-Math.PI/2]],[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[-.3,0,0],[0,0,Math.PI/2]]],Y:[[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,.3,0]],[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,-.3,0],[0,0,Math.PI]]],Z:[[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,0,.3],[Math.PI/2,0,0]],[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,0,-.3],[-Math.PI/2,0,0]]],XYZ:[[new t.Mesh(new t.OctahedronGeometry(.2,0),o)]],XY:[[new t.Mesh(new t.BoxGeometry(.2,.2,.01),o),[.15,.15,0]]],YZ:[[new t.Mesh(new t.BoxGeometry(.2,.2,.01),o),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new t.Mesh(new t.BoxGeometry(.2,.2,.01),o),[.15,0,.15],[-Math.PI/2,0,0]]]},at={START:[[new t.Mesh(new t.OctahedronGeometry(.01,2),s),null,null,null,"helper"]],END:[[new t.Mesh(new t.OctahedronGeometry(.01,2),s),null,null,null,"helper"]],DELTA:[[new t.Line(G(),s),null,null,null,"helper"]],X:[[new t.Line(b,s.clone()),[-1e3,0,0],null,[1e6,1,1],"helper"]],Y:[[new t.Line(b,s.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],"helper"]],Z:[[new t.Line(b,s.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],"helper"]]},lt={XYZE:[[new t.Mesh(w(.5,1),Z),null,[0,Math.PI/2,0]]],X:[[new t.Mesh(w(.5,.5),a)]],Y:[[new t.Mesh(w(.5,.5),i),null,[0,0,-Math.PI/2]]],Z:[[new t.Mesh(w(.5,.5),d),null,[0,Math.PI/2,0]]],E:[[new t.Mesh(w(.75,1),z),null,[0,Math.PI/2,0]]]},ht={AXIS:[[new t.Line(b,s.clone()),[-1e3,0,0],null,[1e6,1,1],"helper"]]},ct={XYZE:[[new t.Mesh(new t.SphereGeometry(.25,10,8),o)]],X:[[new t.Mesh(new t.TorusGeometry(.5,.1,4,24),o),[0,0,0],[0,-Math.PI/2,-Math.PI/2]]],Y:[[new t.Mesh(new t.TorusGeometry(.5,.1,4,24),o),[0,0,0],[Math.PI/2,0,0]]],Z:[[new t.Mesh(new t.TorusGeometry(.5,.1,4,24),o),[0,0,0],[0,0,-Math.PI/2]]],E:[[new t.Mesh(new t.TorusGeometry(.75,.1,2,24),o)]]},dt={X:[[new t.Mesh(v,a),[.5,0,0],[0,0,-Math.PI/2]],[new t.Mesh(u,a),[0,0,0],[0,0,-Math.PI/2]],[new t.Mesh(v,a),[-.5,0,0],[0,0,Math.PI/2]]],Y:[[new t.Mesh(v,i),[0,.5,0]],[new t.Mesh(u,i)],[new t.Mesh(v,i),[0,-.5,0],[0,0,Math.PI]]],Z:[[new t.Mesh(v,d),[0,0,.5],[Math.PI/2,0,0]],[new t.Mesh(u,d),[0,0,0],[Math.PI/2,0,0]],[new t.Mesh(v,d),[0,0,-.5],[-Math.PI/2,0,0]]],XY:[[new t.Mesh(new t.BoxGeometry(.15,.15,.01),A),[.15,.15,0]]],YZ:[[new t.Mesh(new t.BoxGeometry(.15,.15,.01),f),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new t.Mesh(new t.BoxGeometry(.15,.15,.01),x),[.15,0,.15],[-Math.PI/2,0,0]]],XYZ:[[new t.Mesh(new t.BoxGeometry(.1,.1,.1),j.clone())]]},pt={X:[[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[.3,0,0],[0,0,-Math.PI/2]],[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[-.3,0,0],[0,0,Math.PI/2]]],Y:[[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,.3,0]],[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,-.3,0],[0,0,Math.PI]]],Z:[[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,0,.3],[Math.PI/2,0,0]],[new t.Mesh(new t.CylinderGeometry(.2,0,.6,4),o),[0,0,-.3],[-Math.PI/2,0,0]]],XY:[[new t.Mesh(new t.BoxGeometry(.2,.2,.01),o),[.15,.15,0]]],YZ:[[new t.Mesh(new t.BoxGeometry(.2,.2,.01),o),[0,.15,.15],[0,Math.PI/2,0]]],XZ:[[new t.Mesh(new t.BoxGeometry(.2,.2,.01),o),[.15,0,.15],[-Math.PI/2,0,0]]],XYZ:[[new t.Mesh(new t.BoxGeometry(.2,.2,.2),o),[0,0,0]]]},ut={X:[[new t.Line(b,s.clone()),[-1e3,0,0],null,[1e6,1,1],"helper"]],Y:[[new t.Line(b,s.clone()),[0,-1e3,0],[0,0,Math.PI/2],[1e6,1,1],"helper"]],Z:[[new t.Line(b,s.clone()),[0,0,-1e3],[0,-Math.PI/2,0],[1e6,1,1],"helper"]]};function P(_){const H=new t.Object3D;for(const g in _)for(let Q=_[g].length;Q--;){const m=_[g][Q][0].clone(),L=_[g][Q][1],V=_[g][Q][2],R=_[g][Q][3],mt=_[g][Q][4];m.name=g,m.tag=mt,L&&m.position.set(L[0],L[1],L[2]),V&&m.rotation.set(V[0],V[1],V[2]),R&&m.scale.set(R[0],R[1],R[2]),m.updateMatrix();const K=m.geometry.clone();K.applyMatrix4(m.matrix),m.geometry=K,m.renderOrder=1/0,m.position.set(0,0,0),m.rotation.set(0,0,0),m.scale.set(1,1,1),H.add(m)}return H}this.gizmo={},this.picker={},this.helper={},this.add(this.gizmo.translate=P(D)),this.add(this.gizmo.rotate=P(lt)),this.add(this.gizmo.scale=P(dt)),this.add(this.picker.translate=P(rt)),this.add(this.picker.rotate=P(ct)),this.add(this.picker.scale=P(pt)),this.add(this.helper.translate=P(at)),this.add(this.helper.rotate=P(ht)),this.add(this.helper.scale=P(ut)),this.picker.translate.visible=!1,this.picker.rotate.visible=!1,this.picker.scale.visible=!1}updateMatrixWorld(n){const o=(this.mode==="scale"?"local":this.space)==="local"?this.worldQuaternion:W;this.gizmo.translate.visible=this.mode==="translate",this.gizmo.rotate.visible=this.mode==="rotate",this.gizmo.scale.visible=this.mode==="scale",this.helper.translate.visible=this.mode==="translate",this.helper.rotate.visible=this.mode==="rotate",this.helper.scale.visible=this.mode==="scale";let s=[];s=s.concat(this.picker[this.mode].children),s=s.concat(this.gizmo[this.mode].children),s=s.concat(this.helper[this.mode].children);for(let a=0;a<s.length;a++){const i=s[a];i.visible=!0,i.rotation.set(0,0,0),i.position.copy(this.worldPosition);let d;if(this.camera.isOrthographicCamera?d=(this.camera.top-this.camera.bottom)/this.camera.zoom:d=this.worldPosition.distanceTo(this.cameraPosition)*Math.min(1.9*Math.tan(Math.PI*this.camera.fov/360)/this.camera.zoom,7),i.scale.set(1,1,1).multiplyScalar(d*this.size/4),i.tag==="helper"){i.visible=!1,i.name==="AXIS"?(i.visible=!!this.axis,this.axis==="X"&&(c.setFromEuler(k.set(0,0,0)),i.quaternion.copy(o).multiply(c),Math.abs(l.copy(Y).applyQuaternion(o).dot(this.eye))>.9&&(i.visible=!1)),this.axis==="Y"&&(c.setFromEuler(k.set(0,0,Math.PI/2)),i.quaternion.copy(o).multiply(c),Math.abs(l.copy(T).applyQuaternion(o).dot(this.eye))>.9&&(i.visible=!1)),this.axis==="Z"&&(c.setFromEuler(k.set(0,Math.PI/2,0)),i.quaternion.copy(o).multiply(c),Math.abs(l.copy(O).applyQuaternion(o).dot(this.eye))>.9&&(i.visible=!1)),this.axis==="XYZE"&&(c.setFromEuler(k.set(0,Math.PI/2,0)),l.copy(this.rotationAxis),i.quaternion.setFromRotationMatrix(ot.lookAt(nt,l,T)),i.quaternion.multiply(c),i.visible=this.dragging),this.axis==="E"&&(i.visible=!1)):i.name==="START"?(i.position.copy(this.worldPositionStart),i.visible=this.dragging):i.name==="END"?(i.position.copy(this.worldPosition),i.visible=this.dragging):i.name==="DELTA"?(i.position.copy(this.worldPositionStart),i.quaternion.copy(this.worldQuaternionStart),p.set(1e-10,1e-10,1e-10).add(this.worldPositionStart).sub(this.worldPosition).multiplyScalar(-1),p.applyQuaternion(this.worldQuaternionStart.clone().invert()),i.scale.copy(p),i.visible=this.dragging):(i.quaternion.copy(o),this.dragging?i.position.copy(this.worldPositionStart):i.position.copy(this.worldPosition),this.axis&&(i.visible=this.axis.search(i.name)!==-1));continue}i.quaternion.copy(o),this.mode==="translate"||this.mode==="scale"?(i.name==="X"&&Math.abs(l.copy(Y).applyQuaternion(o).dot(this.eye))>.99&&(i.scale.set(1e-10,1e-10,1e-10),i.visible=!1),i.name==="Y"&&Math.abs(l.copy(T).applyQuaternion(o).dot(this.eye))>.99&&(i.scale.set(1e-10,1e-10,1e-10),i.visible=!1),i.name==="Z"&&Math.abs(l.copy(O).applyQuaternion(o).dot(this.eye))>.99&&(i.scale.set(1e-10,1e-10,1e-10),i.visible=!1),i.name==="XY"&&Math.abs(l.copy(O).applyQuaternion(o).dot(this.eye))<.2&&(i.scale.set(1e-10,1e-10,1e-10),i.visible=!1),i.name==="YZ"&&Math.abs(l.copy(Y).applyQuaternion(o).dot(this.eye))<.2&&(i.scale.set(1e-10,1e-10,1e-10),i.visible=!1),i.name==="XZ"&&Math.abs(l.copy(T).applyQuaternion(o).dot(this.eye))<.2&&(i.scale.set(1e-10,1e-10,1e-10),i.visible=!1)):this.mode==="rotate"&&(q.copy(o),l.copy(this.eye).applyQuaternion(c.copy(o).invert()),i.name.search("E")!==-1&&i.quaternion.setFromRotationMatrix(ot.lookAt(this.eye,nt,T)),i.name==="X"&&(c.setFromAxisAngle(Y,Math.atan2(-l.y,l.z)),c.multiplyQuaternions(q,c),i.quaternion.copy(c)),i.name==="Y"&&(c.setFromAxisAngle(T,Math.atan2(l.x,l.z)),c.multiplyQuaternions(q,c),i.quaternion.copy(c)),i.name==="Z"&&(c.setFromAxisAngle(O,Math.atan2(l.y,l.x)),c.multiplyQuaternions(q,c),i.quaternion.copy(c))),i.visible=i.visible&&(i.name.indexOf("X")===-1||this.showX),i.visible=i.visible&&(i.name.indexOf("Y")===-1||this.showY),i.visible=i.visible&&(i.name.indexOf("Z")===-1||this.showZ),i.visible=i.visible&&(i.name.indexOf("E")===-1||this.showX&&this.showY&&this.showZ),i.material._color=i.material._color||i.material.color.clone(),i.material._opacity=i.material._opacity||i.material.opacity,i.material.color.copy(i.material._color),i.material.opacity=i.material._opacity,this.enabled&&this.axis&&(i.name===this.axis||this.axis.split("").some(function(f){return i.name===f}))&&(i.material.color.setHex(16776960),i.material.opacity=1)}super.updateMatrixWorld(n)}}class Pt extends t.Mesh{constructor(){super(new t.PlaneGeometry(1e5,1e5,2,2),new t.MeshBasicMaterial({visible:!1,wireframe:!0,side:t.DoubleSide,transparent:!0,opacity:.1,toneMapped:!1})),this.isTransformControlsPlane=!0,this.type="TransformControlsPlane"}updateMatrixWorld(n){let e=this.space;switch(this.position.copy(this.worldPosition),this.mode==="scale"&&(e="local"),B.copy(Y).applyQuaternion(e==="local"?this.worldQuaternion:W),C.copy(T).applyQuaternion(e==="local"?this.worldQuaternion:W),X.copy(O).applyQuaternion(e==="local"?this.worldQuaternion:W),l.copy(C),this.mode){case"translate":case"scale":switch(this.axis){case"X":l.copy(this.eye).cross(B),M.copy(B).cross(l);break;case"Y":l.copy(this.eye).cross(C),M.copy(C).cross(l);break;case"Z":l.copy(this.eye).cross(X),M.copy(X).cross(l);break;case"XY":M.copy(X);break;case"YZ":M.copy(B);break;case"XZ":l.copy(X),M.copy(C);break;case"XYZ":case"E":M.set(0,0,0);break}break;case"rotate":default:M.set(0,0,0)}M.length()===0?this.quaternion.copy(this.cameraQuaternion):(st.lookAt(p.set(0,0,0),M,l),this.quaternion.setFromRotationMatrix(st)),super.updateMatrixWorld(n)}}class Et{constructor(n,e){h(this,"POINTER_DRAG_THRESHOLD",.001);h(this,"name");h(this,"_canvas");h(this,"_scene");h(this,"_controller");h(this,"_pointer");h(this,"_pointerPrimaryDown");h(this,"_pointerMiddleDown");h(this,"_pointerSecondaryDown");h(this,"_lastPointerDown");h(this,"_lastPointerUp");h(this,"_raycaster");h(this,"_intersects");h(this,"_hovered");h(this,"_dragging");h(this,"_dragStart");h(this,"_dragCurrent");h(this,"_dragEnd");h(this,"_dragDelta");h(this,"_draggable");h(this,"_dragRaycastOnObjects");this.name="BaseTool",this._canvas=e.domElement,this._scene=n,this._controller=e,this._pointer=new t.Vector2,this._pointerPrimaryDown=!1,this._pointerMiddleDown=!1,this._pointerSecondaryDown=!1,this._lastPointerDown=new t.Vector2,this._lastPointerUp=new t.Vector2,this._raycaster=new t.Raycaster,this._raycaster.layers.mask=J.PRODUCT_LAYER_MASK|J.UI_LAYER_MASK,this._intersects=[],this._hovered=null,this._dragging=!1,this._dragStart=new t.Vector3,this._dragCurrent=new t.Vector3,this._dragEnd=new t.Vector3,this._dragDelta=new t.Vector3,this._draggable=null,this._dragRaycastOnObjects=null}get _pointerAnyDown(){return this._pointerPrimaryDown||this._pointerMiddleDown||this._pointerSecondaryDown}activate(){}deactivate(){}onPointerDown(n){var e;switch(n.button){case 0:{this._pointerPrimaryDown=!0;break}case 1:{this._pointerMiddleDown=!0;break}case 2:{this._pointerSecondaryDown=!0;break}default:console.warn("DIVEBaseTool.onPointerDown: Unknown button: "+n.button)}this._lastPointerDown.copy(this._pointer),this._draggable=y.findInterface((e=this._intersects[0])==null?void 0:e.object,"isDraggable")||null}onDragStart(n){this._draggable&&(this._dragRaycastOnObjects!==null&&(this._intersects=this._raycaster.intersectObjects(this._dragRaycastOnObjects,!0)),this._intersects.length!==0&&(this._dragStart.copy(this._intersects[0].point.clone()),this._dragCurrent.copy(this._intersects[0].point.clone()),this._dragEnd.copy(this._dragStart.clone()),this._dragDelta.set(0,0,0),this._draggable&&this._draggable.onDragStart&&(this._draggable.onDragStart({dragStart:this._dragStart,dragCurrent:this._dragCurrent,dragEnd:this._dragEnd,dragDelta:this._dragDelta}),this._dragging=!0,this._controller.enabled=!1)))}onPointerMove(n){var o;this._pointer.x=n.offsetX/this._canvas.clientWidth*2-1,this._pointer.y=-(n.offsetY/this._canvas.clientHeight)*2+1,this._raycaster.setFromCamera(this._pointer,this._controller.object),this._intersects=this.raycast(this._scene.children);const e=y.findInterface((o=this._intersects[0])==null?void 0:o.object,"isHoverable");if(this._intersects[0]&&e){if(!this._hovered){e.onPointerEnter&&e.onPointerEnter(this._intersects[0]),this._hovered=e;return}if(this._hovered.uuid!==e.uuid){this._hovered.onPointerLeave&&this._hovered.onPointerLeave(),e.onPointerEnter&&e.onPointerEnter(this._intersects[0]),this._hovered=e;return}e.onPointerOver&&e.onPointerOver(this._intersects[0]),this._hovered=e}else this._hovered&&this._hovered.onPointerLeave&&this._hovered.onPointerLeave(),this._hovered=null;this._pointerAnyDown&&(this._dragging||this.onDragStart(n),this.onDrag(n))}onDrag(n){this._dragRaycastOnObjects!==null&&(this._intersects=this._raycaster.intersectObjects(this._dragRaycastOnObjects,!0));const e=this._intersects[0];e&&(this._dragCurrent.copy(e.point.clone()),this._dragEnd.copy(e.point.clone()),this._dragDelta.subVectors(this._dragCurrent.clone(),this._dragStart.clone()),this._draggable&&this._draggable.onDrag&&this._draggable.onDrag({dragStart:this._dragStart,dragCurrent:this._dragCurrent,dragEnd:this._dragEnd,dragDelta:this._dragDelta}))}onPointerUp(n){switch(this.pointerWasDragged()||this._dragging?this._draggable&&this.onDragEnd(n):this.onClick(n),n.button){case 0:this._pointerPrimaryDown=!1;break;case 1:this._pointerMiddleDown=!1;break;case 2:this._pointerSecondaryDown=!1;break}this._lastPointerUp.copy(this._pointer)}onClick(n){}onDragEnd(n){const e=this._intersects[0];e&&(this._dragEnd.copy(e.point.clone()),this._dragCurrent.copy(e.point.clone()),this._dragDelta.subVectors(this._dragCurrent.clone(),this._dragStart.clone())),this._draggable&&this._draggable.onDragEnd&&this._draggable.onDragEnd({dragStart:this._dragStart,dragCurrent:this._dragCurrent,dragEnd:this._dragEnd,dragDelta:this._dragDelta}),this._draggable=null,this._dragging=!1,this._dragStart.set(0,0,0),this._dragCurrent.set(0,0,0),this._dragEnd.set(0,0,0),this._dragDelta.set(0,0,0),this._controller.enabled=!0}onWheel(n){}raycast(n){return n!==void 0?this._raycaster.intersectObjects(n,!0).filter(e=>e.object.visible):this._raycaster.intersectObjects(this._scene.children,!0).filter(e=>e.object.visible)}pointerWasDragged(){return this._lastPointerDown.distanceTo(this._pointer)>this.POINTER_DRAG_THRESHOLD}}class xt extends Et{constructor(e,o){super(e,o);h(this,"isTransformTool",!0);h(this,"_scaleLinked");h(this,"_gizmo");this.name="DIVETransformTool",this._scaleLinked=!1,this._gizmo=this.initGizmo(),this._scene.add(this._gizmo)}activate(){}setGizmoMode(e){this._gizmo.mode=e}setGizmoVisibility(e){const o=this._scene.children.includes(this._gizmo);e&&!o?(this._scene.add(this._gizmo),"isTransformControls"in this._gizmo&&this._gizmo.getRaycaster().layers.enableAll()):!e&&o&&(this._scene.remove(this._gizmo),"isTransformControls"in this._gizmo&&this._gizmo.getRaycaster().layers.disableAll())}setGizmoScaleLinked(e){this._scaleLinked=e}initGizmo(){const e=new yt(this._controller.object,this._controller.domElement);return e.mode="translate",e.traverse(o=>{if(!("isMesh"in o))return;const s=o.material;o.name==="X"&&s.color.set(y.AxesColorRed),o.name==="Y"&&s.color.set(y.AxesColorGreen),o.name==="Z"&&s.color.set(y.AxesColorBlue),o.name==="XY"&&s.color.set(y.AxesColorBlue),o.name==="YZ"&&s.color.set(y.AxesColorRed),o.name==="XZ"&&s.color.set(y.AxesColorGreen)}),e.addEventListener("mouseDown",()=>{this._controller.enabled=!1,y.implementsInterface(e.object,"isMovable")&&e.object.onMoveStart&&e.object.onMoveStart()}),e.addEventListener("objectChange",()=>{if(y.implementsInterface(e.object,"isMovable")&&e.object.onMove&&(e.object.onMove(),this._scaleLinked)){const o=e.object.scale,s=(o.x+o.y+o.z)/3;e.object.scale.set(s,s,s)}}),e.addEventListener("mouseUp",()=>{this._controller.enabled=!0,y.implementsInterface(e.object,"isMovable")&&e.object.onMoveEnd&&e.object.onMoveEnd()}),e}}const Dt=r=>r.isSelectTool!==void 0;class It extends xt{constructor(e,o){super(e,o);h(this,"isSelectTool",!0);this.name="SelectTool"}activate(){}select(e){this.attachGizmo(e),e.onSelect&&e.onSelect()}deselect(e){this.detachGizmo(),e.onDeselect&&e.onDeselect()}attachGizmo(e){if("isMovable"in e){const o=e;this._gizmo.attach(o),this.setGizmoVisibility(o.visible)}}detachGizmo(){this._gizmo.detach()}onClick(e){super.onClick(e);const o=this._raycaster.intersectObjects(this._scene.root.children,!0).filter(a=>a.object.visible)[0],s=y.findInterface(o==null?void 0:o.object,"isSelectable");if(!o||!s){this._gizmo.object&&this.deselect(this._gizmo.object);return}if(this._gizmo.object){if(this._gizmo.object.uuid===s.uuid)return;this.deselect(this._gizmo.object)}this.select(s)}}exports.DIVESelectTool=It;exports.isSelectTool=Dt;
@@ -1 +0,0 @@
1
- "use strict";exports.COORDINATE_LAYER_MASK=2;exports.DEFAULT_LAYER_MASK=1;exports.HELPER_LAYER_MASK=8;exports.PRODUCT_LAYER_MASK=16;exports.UI_LAYER_MASK=4;
@@ -1,8 +0,0 @@
1
- const A = 1, s = 2, _ = 4, E = 8, R = 16;
2
- export {
3
- s as C,
4
- A as D,
5
- E as H,
6
- R as P,
7
- _ as U
8
- };
@@ -1 +0,0 @@
1
- "use strict";const t="#c20017",n="#00ab26",o="#0081d4",f=t,u=n,x=o;function s(e,r){return e?r in e:!1}function l(e,r){if(e)return s(e,r)?e:l(e.parent,r)}exports.AxesColorBlue=x;exports.AxesColorBlueLetter=o;exports.AxesColorGreen=u;exports.AxesColorGreenLetter=n;exports.AxesColorRed=f;exports.AxesColorRedLetter=t;exports.findInterface=l;exports.implementsInterface=s;
@@ -1,18 +0,0 @@
1
- const n = "#c20017", s = "#00ab26", t = "#0081d4", f = n, l = s, u = t;
2
- function o(e, r) {
3
- return e ? r in e : !1;
4
- }
5
- function a(e, r) {
6
- if (e)
7
- return o(e, r) ? e : a(e.parent, r);
8
- }
9
- export {
10
- f as A,
11
- l as a,
12
- u as b,
13
- n as c,
14
- s as d,
15
- t as e,
16
- a as f,
17
- o as i
18
- };
@@ -1,33 +0,0 @@
1
- var P = Object.defineProperty;
2
- var R = (r, i, n) => i in r ? P(r, i, { enumerable: !0, configurable: !0, writable: !0, value: n }) : r[i] = n;
3
- var I = (r, i, n) => R(r, typeof i != "symbol" ? i + "" : i, n);
4
- class A extends Error {
5
- constructor(n, a, d, E) {
6
- var S;
7
- const o = a.match(
8
- /(Chrome|Safari|Firefox|Edge)\/(\d+\.\d+)/
9
- ), O = o ? o[1] : "Unknown", s = o ? o[2] : "Unknown", _ = a.match(/\((.*?)\)/), N = _ ? _[1] : "Unknown", t = ((S = N.match(/OS (\d+_\d+)/)) == null ? void 0 : S[1]) || "Unknown", c = l(N);
10
- let e = n;
11
- (c === "iOS" || c === "iPadOS") && (O !== "Safari" ? e += ` ARQuickLook is only supported in Safari browser. Current browser: ${O} ${s}` : parseFloat(t.replace("_", ".")) < 13 && (e += ` ARQuickLook requires iOS/iPadOS 13.0 or later. Current version: ${t}`));
12
- super(e);
13
- I(this, "browserInfo");
14
- this.name = "ARCompatibilityError", this.browserInfo = {
15
- userAgent: a,
16
- platform: d,
17
- vendor: E,
18
- browser: O,
19
- version: s,
20
- os: c,
21
- osVersion: t
22
- };
23
- }
24
- }
25
- function l(r) {
26
- return r.includes("iPhone") ? "iOS" : r.includes("iPad") ? "iPadOS" : r.includes("Macintosh") ? "macOS" : "Unknown";
27
- }
28
- var u = /* @__PURE__ */ ((r) => (r.IOS = "iOS", r.ANDROID = "Android", r.WINDOWS = "Windows", r.MACOS = "MacOS", r.LINUX = "Linux", r.UNKNOWN = "Unknown", r))(u || {}), w = /* @__PURE__ */ ((r) => (r.NO_WEBXR_API = "NO_WEBXR_API", r.NO_HTTPS = "NO_HTTPS", r.IMMERSIVE_AR_NOT_SUPPORTED_BY_DEVICE = "IMMERSIVE_AR_NOT_SUPPORTED_BY_DEVICE", r.AR_PERMISSION_DENIED = "AR_PERMISSION_DENIED", r.UNKNOWN_ERROR = "UNKNOWN_ERROR", r))(w || {});
29
- export {
30
- A,
31
- u as E,
32
- w as a
33
- };
@@ -1 +0,0 @@
1
- "use strict";var P=Object.defineProperty;var l=(r,i,n)=>i in r?P(r,i,{enumerable:!0,configurable:!0,writable:!0,value:n}):r[i]=n;var I=(r,i,n)=>l(r,typeof i!="symbol"?i+"":i,n);class w extends Error{constructor(n,t,d,u){var N;const o=t.match(/(Chrome|Safari|Firefox|Edge)\/(\d+\.\d+)/),O=o?o[1]:"Unknown",c=o?o[2]:"Unknown",_=t.match(/\((.*?)\)/),S=_?_[1]:"Unknown",e=((N=S.match(/OS (\d+_\d+)/))==null?void 0:N[1])||"Unknown",a=f(S);let s=n;(a==="iOS"||a==="iPadOS")&&(O!=="Safari"?s+=` ARQuickLook is only supported in Safari browser. Current browser: ${O} ${c}`:parseFloat(e.replace("_","."))<13&&(s+=` ARQuickLook requires iOS/iPadOS 13.0 or later. Current version: ${e}`));super(s);I(this,"browserInfo");this.name="ARCompatibilityError",this.browserInfo={userAgent:t,platform:d,vendor:u,browser:O,version:c,os:a,osVersion:e}}}function f(r){return r.includes("iPhone")?"iOS":r.includes("iPad")?"iPadOS":r.includes("Macintosh")?"macOS":"Unknown"}var E=(r=>(r.IOS="iOS",r.ANDROID="Android",r.WINDOWS="Windows",r.MACOS="MacOS",r.LINUX="Linux",r.UNKNOWN="Unknown",r))(E||{}),R=(r=>(r.NO_WEBXR_API="NO_WEBXR_API",r.NO_HTTPS="NO_HTTPS",r.IMMERSIVE_AR_NOT_SUPPORTED_BY_DEVICE="IMMERSIVE_AR_NOT_SUPPORTED_BY_DEVICE",r.AR_PERMISSION_DENIED="AR_PERMISSION_DENIED",r.UNKNOWN_ERROR="UNKNOWN_ERROR",r))(R||{});exports.ARCompatibilityError=w;exports.ESystem=E;exports.EWebXRUnsupportedReason=R;
@@ -1,39 +0,0 @@
1
- const e = "@shopware-ag/dive", s = "2.0.1-beta.5", t = "Shopware Spatial Framework", o = "module", r = "build/dive.cjs", i = "build/dive.mjs", d = "build/dive.d.ts", l = { ".": { types: "./build/dive.d.ts", import: "./build/dive.mjs", require: "./build/dive.cjs" }, "./modules/AnimationSystem": { types: "./build/src/modules/animation/AnimationSystem.d.ts", import: "./build/src/modules/animation/AnimationSystem.mjs", require: "./build/src/modules/animation/AnimationSystem.cjs" }, "./modules/ARSystem": { types: "./build/src/modules/ar/ARSystem.d.ts", import: "./build/src/modules/ar/ARSystem.mjs", require: "./build/src/modules/ar/ARSystem.cjs" }, "./modules/AssetConverter": { types: "./build/src/modules/asset/converter/AssetConverter.d.ts", import: "./build/src/modules/asset/converter/AssetConverter.mjs", require: "./build/src/modules/asset/converter/AssetConverter.cjs" }, "./modules/AssetExporter": { types: "./build/src/modules/asset/exporter/AssetExporter.d.ts", import: "./build/src/modules/asset/exporter/AssetExporter.mjs", require: "./build/src/modules/asset/exporter/AssetExporter.cjs" }, "./modules/AssetLoader": { types: "./build/src/modules/asset/loader/AssetLoader.d.ts", import: "./build/src/modules/asset/loader/AssetLoader.mjs", require: "./build/src/modules/asset/loader/AssetLoader.cjs" }, "./modules/MediaCreator": { types: "./build/src/modules/mediacreator/MediaCreator.d.ts", import: "./build/src/modules/mediacreator/MediaCreator.mjs", require: "./build/src/modules/mediacreator/MediaCreator.cjs" }, "./modules/State": { types: "./build/src/modules/state/State.d.ts", import: "./build/src/modules/state/State.mjs", require: "./build/src/modules/state/State.cjs" }, "./modules/SystemInfo": { types: "./build/src/modules/systeminfo/SystemInfo.d.ts", import: "./build/src/modules/systeminfo/SystemInfo.mjs", require: "./build/src/modules/systeminfo/SystemInfo.cjs" }, "./modules/Toolbox": { types: "./build/src/modules/toolbox/Toolbox.d.ts", import: "./build/src/modules/toolbox/Toolbox.mjs", require: "./build/src/modules/toolbox/Toolbox.cjs" } }, a = ["build", "LICENSE", "package.json"], c = ["dive", "shopware", "sw6", "three", "three.js", "3d", "typescript"], u = "git@github.com:shopware/dive.git", m = "ffrank <f.frank@shopware.com>", n = "MIT", p = ["> 1%, not dead, not ie 11, not op_mini all"], b = { "@tweenjs/tween.js": "^23.1.1", lodash: "^4.17.21", three: "^0.163.0", "three-spritetext": "^1.8.2" }, y = { "@eslint/js": "^9.1.1", "@testing-library/jest-dom": "^6.6.3", "@types/jest": "^29.5.12", "@types/lodash": "^4.17.12", "@types/node": "^20.12.7", "@types/three": "^0.163.0", "@vitest/coverage-v8": "3.1.2", acorn: "^8.14.1", "acorn-walk": "^8.3.4", eslint: "^9.1.1", glob: "^11.0.1", globals: "^15.0.0", jsdom: "^26.1.0", "magic-string": "^0.30.17", prettier: "^3.3.3", "prettier-plugin-multiline-arrays": "^3.0.6", "rollup-plugin-copy": "^3.5.0", "ts-jest": "^29.1.2", "ts-morph": "^25.0.1", "ts-node": "^10.9.2", tsc: "^2.0.4", tsx: "^4.19.4", typescript: "^5.8.2", "typescript-eslint": "^7.7.1", vite: "^6.2.1", "vite-plugin-dts": "^4.5.3", "vite-plugin-wasm": "^3.4.1", vitest: "^3.1.2" }, v = { "validate-build-paths": "NODE_OPTIONS='--loader ts-node/esm' ts-node ci/build/validate-build-paths.ts", build: "vite build", dev: "vite build --watch", lint: "eslint", "prettier:check": "prettier --check .", "prettier:fix": "prettier --write .", unit: "vitest --run", coverage: "vitest --coverage --run", docs: "yarn docs:actions && yarn docs:modules", "docs:actions": "tsx docs/generators/generate-actions-docs.ts", "docs:modules": "tsx docs/generators/generate-modules-docs.ts", ci: "yarn lint && yarn prettier:check && yarn docs && yarn coverage && yarn build" }, j = {
2
- name: e,
3
- version: s,
4
- description: t,
5
- type: o,
6
- main: r,
7
- module: i,
8
- types: d,
9
- exports: l,
10
- files: a,
11
- keywords: c,
12
- repository: u,
13
- author: m,
14
- license: n,
15
- browserslist: p,
16
- dependencies: b,
17
- devDependencies: y,
18
- scripts: v
19
- };
20
- export {
21
- m as author,
22
- p as browserslist,
23
- j as default,
24
- b as dependencies,
25
- t as description,
26
- y as devDependencies,
27
- l as exports,
28
- a as files,
29
- c as keywords,
30
- n as license,
31
- r as main,
32
- i as module,
33
- e as name,
34
- u as repository,
35
- v as scripts,
36
- o as type,
37
- d as types,
38
- s as version
39
- };
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="@shopware-ag/dive",s="2.0.1-beta.5",t="Shopware Spatial Framework",o="module",r="build/dive.cjs",i="build/dive.mjs",d="build/dive.d.ts",l={".":{types:"./build/dive.d.ts",import:"./build/dive.mjs",require:"./build/dive.cjs"},"./modules/AnimationSystem":{types:"./build/src/modules/animation/AnimationSystem.d.ts",import:"./build/src/modules/animation/AnimationSystem.mjs",require:"./build/src/modules/animation/AnimationSystem.cjs"},"./modules/ARSystem":{types:"./build/src/modules/ar/ARSystem.d.ts",import:"./build/src/modules/ar/ARSystem.mjs",require:"./build/src/modules/ar/ARSystem.cjs"},"./modules/AssetConverter":{types:"./build/src/modules/asset/converter/AssetConverter.d.ts",import:"./build/src/modules/asset/converter/AssetConverter.mjs",require:"./build/src/modules/asset/converter/AssetConverter.cjs"},"./modules/AssetExporter":{types:"./build/src/modules/asset/exporter/AssetExporter.d.ts",import:"./build/src/modules/asset/exporter/AssetExporter.mjs",require:"./build/src/modules/asset/exporter/AssetExporter.cjs"},"./modules/AssetLoader":{types:"./build/src/modules/asset/loader/AssetLoader.d.ts",import:"./build/src/modules/asset/loader/AssetLoader.mjs",require:"./build/src/modules/asset/loader/AssetLoader.cjs"},"./modules/MediaCreator":{types:"./build/src/modules/mediacreator/MediaCreator.d.ts",import:"./build/src/modules/mediacreator/MediaCreator.mjs",require:"./build/src/modules/mediacreator/MediaCreator.cjs"},"./modules/State":{types:"./build/src/modules/state/State.d.ts",import:"./build/src/modules/state/State.mjs",require:"./build/src/modules/state/State.cjs"},"./modules/SystemInfo":{types:"./build/src/modules/systeminfo/SystemInfo.d.ts",import:"./build/src/modules/systeminfo/SystemInfo.mjs",require:"./build/src/modules/systeminfo/SystemInfo.cjs"},"./modules/Toolbox":{types:"./build/src/modules/toolbox/Toolbox.d.ts",import:"./build/src/modules/toolbox/Toolbox.mjs",require:"./build/src/modules/toolbox/Toolbox.cjs"}},a=["build","LICENSE","package.json"],c=["dive","shopware","sw6","three","three.js","3d","typescript"],n="git@github.com:shopware/dive.git",u="ffrank <f.frank@shopware.com>",m="MIT",p=["> 1%, not dead, not ie 11, not op_mini all"],b={"@tweenjs/tween.js":"^23.1.1",lodash:"^4.17.21",three:"^0.163.0","three-spritetext":"^1.8.2"},y={"@eslint/js":"^9.1.1","@testing-library/jest-dom":"^6.6.3","@types/jest":"^29.5.12","@types/lodash":"^4.17.12","@types/node":"^20.12.7","@types/three":"^0.163.0","@vitest/coverage-v8":"3.1.2",acorn:"^8.14.1","acorn-walk":"^8.3.4",eslint:"^9.1.1",glob:"^11.0.1",globals:"^15.0.0",jsdom:"^26.1.0","magic-string":"^0.30.17",prettier:"^3.3.3","prettier-plugin-multiline-arrays":"^3.0.6","rollup-plugin-copy":"^3.5.0","ts-jest":"^29.1.2","ts-morph":"^25.0.1","ts-node":"^10.9.2",tsc:"^2.0.4",tsx:"^4.19.4",typescript:"^5.8.2","typescript-eslint":"^7.7.1",vite:"^6.2.1","vite-plugin-dts":"^4.5.3","vite-plugin-wasm":"^3.4.1",vitest:"^3.1.2"},v={"validate-build-paths":"NODE_OPTIONS='--loader ts-node/esm' ts-node ci/build/validate-build-paths.ts",build:"vite build",dev:"vite build --watch",lint:"eslint","prettier:check":"prettier --check .","prettier:fix":"prettier --write .",unit:"vitest --run",coverage:"vitest --coverage --run",docs:"yarn docs:actions && yarn docs:modules","docs:actions":"tsx docs/generators/generate-actions-docs.ts","docs:modules":"tsx docs/generators/generate-modules-docs.ts",ci:"yarn lint && yarn prettier:check && yarn docs && yarn coverage && yarn build"},j={name:e,version:s,description:t,type:o,main:r,module:i,types:d,exports:l,files:a,keywords:c,repository:n,author:u,license:m,browserslist:p,dependencies:b,devDependencies:y,scripts:v};exports.author=u;exports.browserslist=p;exports.default=j;exports.dependencies=b;exports.description=t;exports.devDependencies=y;exports.exports=l;exports.files=a;exports.keywords=c;exports.license=m;exports.main=r;exports.module=i;exports.name=e;exports.repository=n;exports.scripts=v;exports.type=o;exports.types=d;exports.version=s;
@@ -1,12 +0,0 @@
1
- export declare class ARCompatibilityError extends Error {
2
- readonly browserInfo: {
3
- userAgent: string;
4
- platform: string;
5
- vendor: string;
6
- browser: string;
7
- version: string;
8
- os: string;
9
- osVersion: string;
10
- };
11
- constructor(baseMessage: string, userAgent: string, platform: string, vendor: string);
12
- }
@@ -1,19 +0,0 @@
1
- /**
2
- * Central export point for the module system.
3
- * This is the only place where ModuleRegistry should be imported from.
4
- */
5
- declare const ModuleRegistry: {
6
- readonly AnimationSystem: () => Promise<typeof import('./animation/AnimationSystem.ts').AnimationSystem>;
7
- readonly ARSystem: () => Promise<typeof import('./ar/ARSystem.ts').ARSystem>;
8
- readonly AssetConverter: () => Promise<typeof import('./asset/converter/AssetConverter.ts').AssetConverter>;
9
- readonly AssetExporter: () => Promise<typeof import('./asset/exporter/AssetExporter.ts').AssetExporter>;
10
- readonly AssetLoader: () => Promise<typeof import('./asset/loader/AssetLoader.ts').AssetLoader>;
11
- readonly MediaCreator: () => Promise<typeof import('./mediacreator/MediaCreator.ts').MediaCreator>;
12
- readonly State: () => Promise<typeof import('./state/State.ts').State>;
13
- readonly Toolbox: () => Promise<typeof import('./toolbox/Toolbox.ts').Toolbox>;
14
- };
15
- type ModuleRegistry = typeof ModuleRegistry;
16
- type ModuleName = keyof ModuleRegistry;
17
- type ModuleType<T extends keyof ModuleRegistry> = ReturnType<ModuleRegistry[T]> extends Promise<infer U> ? U : never;
18
- export declare const getModule: <T extends ModuleName>(moduleName: T) => Promise<ModuleType<T>>;
19
- export {};
@@ -1 +0,0 @@
1
- "use strict";var h=Object.defineProperty;var d=(n,e,t)=>e in n?h(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var i=(n,e,t)=>d(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("@tweenjs/tween.js"),r=require("three");class u extends r.EventDispatcher{constructor(t,p,a,s){super();i(this,"_uuid",r.MathUtils.generateUUID());i(this,"_playing",!1);i(this,"_stopped",!1);i(this,"_completed",!1);this.object=t,this.to=p,this.duration=a,this.options=s}get uuid(){return this._uuid}get playing(){return this._playing}get stopped(){return this._stopped}get completed(){return this._completed}dispose(){this._playing=!1,this._stopped=!1,this._completed=!1}play(){return this._playing=!0,this._stopped=!1,this.dispatchEvent({type:"play",target:this}),console.log("play",this),this}stop(){return this._playing=!1,this._stopped=!0,this.dispatchEvent({type:"stop",target:this}),this}}class _{constructor(){i(this,"uuid",r.MathUtils.generateUUID());i(this,"_callbackMap",new Map);i(this,"_tweens",new Map)}createAnimator(e,t,p,a){var o,c;const s=new u(e,t,p,a);return this._callbackMap.set(s.uuid,{onUpdate:((o=s.options)==null?void 0:o.onUpdate)??(()=>{}),onComplete:((c=s.options)==null?void 0:c.onComplete)??(()=>{})}),this._setupTween(s),s}unregister(e){if(!this._callbackMap.has(e)){console.warn(`Animator with uuid ${e} not registered`);return}this._callbackMap.delete(e),this._tweens.delete(e)}dispose(){this._callbackMap.clear(),this._tweens.clear()}tick(){l.update()}animate(e){return new l.Tween(e)}_setupTween(e){var p;const t=new l.Tween(e.object).to(e.to,e.duration).easing(((p=e.options)==null?void 0:p.easing)??l.Easing.Quadratic.Out).onUpdate((a,s)=>{var o;(o=this._callbackMap.get(e.uuid))==null||o.onUpdate(a,s)}).onComplete(a=>{var s;(s=this._callbackMap.get(e.uuid))==null||s.onComplete(a)});e.addEventListener("play",()=>{t.start()}),e.addEventListener("stop",()=>{t.stop()}),this._tweens.set(e.uuid,t)}}exports.AnimationSystem=_;
@@ -1,36 +0,0 @@
1
- import { Tween } from '@tweenjs/tween.js';
2
- import { Animator } from './animator/Animator.ts';
3
- import { UUID } from '../../types/index.ts';
4
- import { DIVETicker } from '../../engine/clock/Clock.ts';
5
- import { TAnimatorParameters } from './types/AnimatorParameters.ts';
6
- export type * from './animator/Animator.ts';
7
- declare global {
8
- interface ModuleClasses {
9
- AnimationSystem: typeof AnimationSystem;
10
- }
11
- }
12
- /**
13
- * @module AnimationSystem
14
- *
15
- * Updates all animations.
16
- * DIVE uses Tween.js to handle animations.
17
- */
18
- export declare class AnimationSystem implements DIVETicker {
19
- uuid: string;
20
- private _callbackMap;
21
- private _tweens;
22
- /**
23
- * Creates a new animator and registers it.
24
- * @param object - The object to animate.
25
- * @param to - The target object.
26
- * @param duration - The duration of the animation.
27
- * @param options - The options for the animation.
28
- * @returns The animator.
29
- */
30
- createAnimator<T extends object>(object: T, to: T, duration: number, options?: TAnimatorParameters<T>): Animator<T>;
31
- unregister(uuid: UUID): void;
32
- dispose(): void;
33
- tick(): void;
34
- animate<T extends object>(object: T): Tween<T>;
35
- private _setupTween;
36
- }
@@ -1,95 +0,0 @@
1
- var c = Object.defineProperty;
2
- var d = (p, t, e) => t in p ? c(p, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : p[t] = e;
3
- var i = (p, t, e) => d(p, typeof t != "symbol" ? t + "" : t, e);
4
- import { update as u, Tween as r, Easing as _ } from "@tweenjs/tween.js";
5
- import { EventDispatcher as g, MathUtils as h } from "three";
6
- class w extends g {
7
- constructor(e, n, a, s) {
8
- super();
9
- i(this, "_uuid", h.generateUUID());
10
- i(this, "_playing", !1);
11
- i(this, "_stopped", !1);
12
- i(this, "_completed", !1);
13
- this.object = e, this.to = n, this.duration = a, this.options = s;
14
- }
15
- get uuid() {
16
- return this._uuid;
17
- }
18
- get playing() {
19
- return this._playing;
20
- }
21
- get stopped() {
22
- return this._stopped;
23
- }
24
- get completed() {
25
- return this._completed;
26
- }
27
- dispose() {
28
- this._playing = !1, this._stopped = !1, this._completed = !1;
29
- }
30
- play() {
31
- return this._playing = !0, this._stopped = !1, this.dispatchEvent({ type: "play", target: this }), console.log("play", this), this;
32
- }
33
- stop() {
34
- return this._playing = !1, this._stopped = !0, this.dispatchEvent({ type: "stop", target: this }), this;
35
- }
36
- }
37
- class M {
38
- constructor() {
39
- i(this, "uuid", h.generateUUID());
40
- i(this, "_callbackMap", /* @__PURE__ */ new Map());
41
- i(this, "_tweens", /* @__PURE__ */ new Map());
42
- }
43
- /**
44
- * Creates a new animator and registers it.
45
- * @param object - The object to animate.
46
- * @param to - The target object.
47
- * @param duration - The duration of the animation.
48
- * @param options - The options for the animation.
49
- * @returns The animator.
50
- */
51
- createAnimator(t, e, n, a) {
52
- var o, l;
53
- const s = new w(t, e, n, a);
54
- return this._callbackMap.set(s.uuid, {
55
- onUpdate: ((o = s.options) == null ? void 0 : o.onUpdate) ?? (() => {
56
- }),
57
- onComplete: ((l = s.options) == null ? void 0 : l.onComplete) ?? (() => {
58
- })
59
- }), this._setupTween(s), s;
60
- }
61
- unregister(t) {
62
- if (!this._callbackMap.has(t)) {
63
- console.warn(`Animator with uuid ${t} not registered`);
64
- return;
65
- }
66
- this._callbackMap.delete(t), this._tweens.delete(t);
67
- }
68
- dispose() {
69
- this._callbackMap.clear(), this._tweens.clear();
70
- }
71
- tick() {
72
- u();
73
- }
74
- animate(t) {
75
- return new r(t);
76
- }
77
- _setupTween(t) {
78
- var n;
79
- const e = new r(t.object).to(t.to, t.duration).easing(((n = t.options) == null ? void 0 : n.easing) ?? _.Quadratic.Out).onUpdate((a, s) => {
80
- var o;
81
- (o = this._callbackMap.get(t.uuid)) == null || o.onUpdate(a, s);
82
- }).onComplete((a) => {
83
- var s;
84
- (s = this._callbackMap.get(t.uuid)) == null || s.onComplete(a);
85
- });
86
- t.addEventListener("play", () => {
87
- e.start();
88
- }), t.addEventListener("stop", () => {
89
- e.stop();
90
- }), this._tweens.set(t.uuid, e);
91
- }
92
- }
93
- export {
94
- M as AnimationSystem
95
- };
@@ -1 +0,0 @@
1
- "use strict";var u=Object.defineProperty;var d=(a,e,t)=>e in a?u(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var l=(a,e,t)=>d(a,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("../systeminfo/SystemInfo.cjs"),s=require("../../../chunks/index-MNP0K5dt.cjs"),m=require("../asset/converter/AssetConverter.cjs"),h=require("../asset/loader/AssetLoader.cjs"),y=require("../asset/exporter/AssetExporter.cjs");class S{constructor(){l(this,"converter",new m.AssetConverter(new h.AssetLoader,new y.AssetExporter))}async launch(e,t){const r=await this.convertToUSDZ(e,t);return this.launchARQuickLook(r,t)}async convertToUSDZ(e,t){const r=await this.converter.convert(e).to("usdz",{quickLookCompatible:!0,ar:{anchoring:{type:"plane"},planeAnchoring:{alignment:(t==null?void 0:t.arPlacement)==="vertical"?"vertical":"horizontal"}}}),n=new Blob([r],{type:"model/vnd.usdz+zip"});return URL.createObjectURL(n)}launchARQuickLook(e,t){return new Promise(r=>{(t==null?void 0:t.arScale)==="fixed"&&(e=e.concat("#allowsContentScaling=0"));const n=document.createElement("a");n.innerHTML="<picture></picture>",n.rel="ar",n.href=e,n.download="scene.usdz",r(),n.click()})}}class _{launch(e,t){const r=self.location.toString(),n=document.createElement("a"),c=this._createParams(r,e,t),o=this._createIntent(r,e,c);n.setAttribute("href",o),n.click()}_createParams(e,t,r){const n=new URL(t,e),c=new URLSearchParams(n.search);return c.set("mode","ar_preferred"),this._applyScaleOption(c,r),this._applyPlacementOption(c,r),this._applySoundOption(c,e),this._applyLinkOption(c,e),c}_applyScaleOption(e,t){(t==null?void 0:t.arScale)==="fixed"&&e.set("resizable","false")}_applyPlacementOption(e,t){(t==null?void 0:t.arPlacement)==="vertical"&&e.set("enable_vertical_placement","true")}_applySoundOption(e,t){if(e.has("sound")){const r=new URL(e.get("sound"),t);e.set("sound",r.toString())}}_applyLinkOption(e,t){if(e.has("link")){const r=new URL(e.get("link"),t);e.set("link",r.toString())}}_createIntent(e,t,r){const n=new URL(e),c=new URL(t,e),o="#model-viewer-no-ar-fallback";return n.hash=o,`intent://arvr.google.com/scene-viewer/1.2?${r.toString()+"&file="+c.toString()}#Intent;scheme=https;package=com.google.android.googlequicksearchbox;action=android.intent.action.VIEW;S.browser_fallback_url=${encodeURIComponent(n.toString())};end;`}}class w{async launch(e,t){const r=i.SystemInfo.getSystem();return r===s.ESystem.IOS?this.tryARQuickLook(e,t):r===s.ESystem.ANDROID?this.trySceneViewer(e,t):Promise.reject(new s.ARCompatibilityError("AR not supported on non-mobile systems",window.navigator.userAgent,window.navigator.platform,window.navigator.vendor))}async tryARQuickLook(e,t){try{i.SystemInfo.getSupportsARQuickLook()}catch(r){return Promise.reject(r)}return new S().launch(e,t)}async trySceneViewer(e,t){try{return new _().launch(e,t)}catch(r){return Promise.reject(r)}}}exports.ARSystem=w;
@@ -1,71 +0,0 @@
1
- declare global {
2
- interface ModuleClasses {
3
- ARSystem: typeof ARSystem;
4
- }
5
- }
6
- /**
7
- * @module ARSystem
8
- *
9
- * The AR module enables Augmented Reality features across different platforms:
10
- *
11
- * ```ts
12
- * import { ARSystem } from '@shopware-ag/dive/modules/ARSystem';
13
- *
14
- * const arSystem = new ARSystem();
15
- *
16
- * // Launch AR with options
17
- * await arSystem.launch('path/to/model.glb', {
18
- * arPlacement: 'horizontal', // or 'vertical'
19
- * arScale: 'auto' // or 'fixed'
20
- * });
21
- * ```
22
- *
23
- * Features:
24
- * - Platform-specific AR implementations (ARQuickLook for iOS, SceneViewer for Android)
25
- * - Automatic format conversion for AR compatibility
26
- * - Configurable placement and scaling options
27
- */
28
- /**
29
- * Options for configuring the AR system behavior
30
- */
31
- export type ARSystemOptions = {
32
- /** The placement orientation for AR content - either horizontal or vertical */
33
- arPlacement: 'horizontal' | 'vertical';
34
- /** The scaling behavior for AR content - either automatic or fixed */
35
- arScale: 'auto' | 'fixed';
36
- };
37
- /**
38
- * Main class for handling AR functionality across different platforms
39
- * Provides methods to launch AR experiences using platform-specific implementations
40
- */
41
- export declare class ARSystem {
42
- /**
43
- * Launches an AR experience using the appropriate platform-specific implementation
44
- *
45
- * @param uri - The URI of the 3D model to display in AR
46
- * @param options - Optional configuration for the AR experience
47
- * @returns Promise that resolves when AR is launched successfully
48
- * @throws Error if AR is not supported on the current platform
49
- */
50
- launch(uri: string, options?: ARSystemOptions): Promise<void>;
51
- /**
52
- * Attempts to launch AR using ARQuickLook (iOS-specific implementation)
53
- *
54
- * @param uri - The URI of the 3D model to display in AR
55
- * @param options - Optional configuration for the AR experience
56
- * @returns Promise that resolves when ARQuickLook is launched successfully
57
- * @throws Error if ARQuickLook is not supported on the device
58
- */
59
- private tryARQuickLook;
60
- /**
61
- * Launches AR using SceneViewer (Android-specific implementation)
62
- * Note: SceneViewer is supported on all Android devices. If ARCore is not installed,
63
- * the model will be displayed in 3D view mode instead of AR mode.
64
- *
65
- * @param uri - The URI of the 3D model to display in AR
66
- * @param options - Optional configuration for the AR experience
67
- * @returns Promise that resolves when SceneViewer is launched successfully
68
- * @throws Error if there's an issue launching SceneViewer
69
- */
70
- private trySceneViewer;
71
- }
@@ -1,163 +0,0 @@
1
- var u = Object.defineProperty;
2
- var m = (c, e, t) => e in c ? u(c, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : c[e] = t;
3
- var i = (c, e, t) => m(c, typeof e != "symbol" ? e + "" : e, t);
4
- import { SystemInfo as l } from "../systeminfo/SystemInfo.mjs";
5
- import { E as s, A as d } from "../../../chunks/index-C7Wx_9uY.mjs";
6
- import { AssetConverter as h } from "../asset/converter/AssetConverter.mjs";
7
- import { AssetLoader as w } from "../asset/loader/AssetLoader.mjs";
8
- import { AssetExporter as p } from "../asset/exporter/AssetExporter.mjs";
9
- class y {
10
- constructor() {
11
- i(this, "converter", new h(
12
- new w(),
13
- new p()
14
- ));
15
- }
16
- async launch(e, t) {
17
- const r = await this.convertToUSDZ(e, t);
18
- return this.launchARQuickLook(r, t);
19
- }
20
- async convertToUSDZ(e, t) {
21
- const r = await this.converter.convert(e).to("usdz", {
22
- quickLookCompatible: !0,
23
- ar: {
24
- anchoring: { type: "plane" },
25
- planeAnchoring: {
26
- alignment: (t == null ? void 0 : t.arPlacement) === "vertical" ? "vertical" : "horizontal"
27
- }
28
- }
29
- }), n = new Blob([r], { type: "model/vnd.usdz+zip" });
30
- return URL.createObjectURL(n);
31
- }
32
- launchARQuickLook(e, t) {
33
- return new Promise((r) => {
34
- (t == null ? void 0 : t.arScale) === "fixed" && (e = e.concat("#allowsContentScaling=0"));
35
- const n = document.createElement("a");
36
- n.innerHTML = "<picture></picture>", n.rel = "ar", n.href = e, n.download = "scene.usdz", r(), n.click();
37
- });
38
- }
39
- }
40
- class S {
41
- launch(e, t) {
42
- const r = self.location.toString(), n = document.createElement("a"), a = this._createParams(r, e, t), o = this._createIntent(r, e, a);
43
- n.setAttribute("href", o), n.click();
44
- }
45
- /**
46
- * Creates the base URL parameters for SceneViewer
47
- * @param location Current page location URL
48
- * @returns URLSearchParams with base configuration
49
- */
50
- _createParams(e, t, r) {
51
- const n = new URL(t, e), a = new URLSearchParams(n.search);
52
- return a.set("mode", "ar_preferred"), this._applyScaleOption(a, r), this._applyPlacementOption(a, r), this._applySoundOption(a, e), this._applyLinkOption(a, e), a;
53
- }
54
- /**
55
- * Applies the scale option to the parameters
56
- * If scale is set to 'fixed', the model will not be resizable in AR
57
- * @param params URLSearchParams to modify
58
- */
59
- _applyScaleOption(e, t) {
60
- (t == null ? void 0 : t.arScale) === "fixed" && e.set("resizable", "false");
61
- }
62
- /**
63
- * Applies the placement option to the parameters
64
- * If placement is set to 'vertical', vertical placement will be enabled
65
- * @param params URLSearchParams to modify
66
- */
67
- _applyPlacementOption(e, t) {
68
- (t == null ? void 0 : t.arPlacement) === "vertical" && e.set("enable_vertical_placement", "true");
69
- }
70
- /**
71
- * Applies the sound option to the parameters if present
72
- * This will resolve any relative sound URLs to absolute URLs
73
- * @param params URLSearchParams to modify
74
- * @param location Current page location URL
75
- */
76
- _applySoundOption(e, t) {
77
- if (e.has("sound")) {
78
- const r = new URL(e.get("sound"), t);
79
- e.set("sound", r.toString());
80
- }
81
- }
82
- /**
83
- * Applies the link option to the parameters if present
84
- * This will resolve any relative link URLs to absolute URLs
85
- * @param params URLSearchParams to modify
86
- * @param location Current page location URL
87
- */
88
- _applyLinkOption(e, t) {
89
- if (e.has("link")) {
90
- const r = new URL(e.get("link"), t);
91
- e.set("link", r.toString());
92
- }
93
- }
94
- /**
95
- * Creates the Android Intent URL for SceneViewer
96
- * @param params URLSearchParams containing all configuration
97
- * @param location Current page location URL
98
- * @returns The complete Intent URL
99
- */
100
- _createIntent(e, t, r) {
101
- const n = new URL(e), a = new URL(t, e), o = "#model-viewer-no-ar-fallback";
102
- return n.hash = o, `intent://arvr.google.com/scene-viewer/1.2?${r.toString() + "&file=" + a.toString()}#Intent;scheme=https;package=com.google.android.googlequicksearchbox;action=android.intent.action.VIEW;S.browser_fallback_url=${encodeURIComponent(
103
- n.toString()
104
- )};end;`;
105
- }
106
- }
107
- class A {
108
- /**
109
- * Launches an AR experience using the appropriate platform-specific implementation
110
- *
111
- * @param uri - The URI of the 3D model to display in AR
112
- * @param options - Optional configuration for the AR experience
113
- * @returns Promise that resolves when AR is launched successfully
114
- * @throws Error if AR is not supported on the current platform
115
- */
116
- async launch(e, t) {
117
- const r = l.getSystem();
118
- return r === s.IOS ? this.tryARQuickLook(e, t) : r === s.ANDROID ? this.trySceneViewer(e, t) : Promise.reject(
119
- new d(
120
- "AR not supported on non-mobile systems",
121
- window.navigator.userAgent,
122
- window.navigator.platform,
123
- window.navigator.vendor
124
- )
125
- );
126
- }
127
- /**
128
- * Attempts to launch AR using ARQuickLook (iOS-specific implementation)
129
- *
130
- * @param uri - The URI of the 3D model to display in AR
131
- * @param options - Optional configuration for the AR experience
132
- * @returns Promise that resolves when ARQuickLook is launched successfully
133
- * @throws Error if ARQuickLook is not supported on the device
134
- */
135
- async tryARQuickLook(e, t) {
136
- try {
137
- l.getSupportsARQuickLook();
138
- } catch (r) {
139
- return Promise.reject(r);
140
- }
141
- return new y().launch(e, t);
142
- }
143
- /**
144
- * Launches AR using SceneViewer (Android-specific implementation)
145
- * Note: SceneViewer is supported on all Android devices. If ARCore is not installed,
146
- * the model will be displayed in 3D view mode instead of AR mode.
147
- *
148
- * @param uri - The URI of the 3D model to display in AR
149
- * @param options - Optional configuration for the AR experience
150
- * @returns Promise that resolves when SceneViewer is launched successfully
151
- * @throws Error if there's an issue launching SceneViewer
152
- */
153
- async trySceneViewer(e, t) {
154
- try {
155
- return new S().launch(e, t);
156
- } catch (r) {
157
- return Promise.reject(r);
158
- }
159
- }
160
- }
161
- export {
162
- A as ARSystem
163
- };
@@ -1,7 +0,0 @@
1
- import { ARSystemOptions } from '../ARSystem.ts';
2
- export declare class ARQuickLook {
3
- private converter;
4
- launch(uri: string, options?: ARSystemOptions): Promise<void>;
5
- private convertToUSDZ;
6
- private launchARQuickLook;
7
- }