@roomle/web-sdk 3.5.0-alpha.8 → 3.5.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 (52) hide show
  1. package/lib/{BufferGeometry-WZBKFGri.mjs → BufferGeometry-CMU3DLT1.mjs} +2 -2
  2. package/lib/{BufferGeometry-WZBKFGri.mjs.map → BufferGeometry-CMU3DLT1.mjs.map} +1 -1
  3. package/lib/ConfiguratorKernel.wasm +0 -0
  4. package/lib/{GLTFExporter-DCQmhRQ9.mjs → GLTFExporter-BGHkwQLJ.mjs} +2 -2
  5. package/lib/{GLTFExporter-DCQmhRQ9.mjs.map → GLTFExporter-BGHkwQLJ.mjs.map} +1 -1
  6. package/lib/{PointLightHelper-DDoIf9Vg.mjs → PointLightHelper-DZTk2W0h.mjs} +3 -3
  7. package/lib/{PointLightHelper-DDoIf9Vg.mjs.map → PointLightHelper-DZTk2W0h.mjs.map} +1 -1
  8. package/lib/RoomleCore.wasm +0 -0
  9. package/lib/RoomleToolsCore.wasm +0 -0
  10. package/lib/{SpotLightHelper-DcbD8VZZ.mjs → SpotLightHelper-CadnKPkB.mjs} +3 -3
  11. package/lib/{SpotLightHelper-DcbD8VZZ.mjs.map → SpotLightHelper-CadnKPkB.mjs.map} +1 -1
  12. package/lib/{USDZExporter-CZ956mmz.mjs → USDZExporter-BtfLj3nk.mjs} +2 -2
  13. package/lib/{USDZExporter-CZ956mmz.mjs.map → USDZExporter-BtfLj3nk.mjs.map} +1 -1
  14. package/lib/{banana-for-scale-DyzG9cnO.mjs → banana-for-scale-B6CjS1Cc.mjs} +2 -2
  15. package/lib/{banana-for-scale-DyzG9cnO.mjs.map → banana-for-scale-B6CjS1Cc.mjs.map} +1 -1
  16. package/lib/{component-dimensioning-CuUr4cCF.mjs → component-dimensioning-B0hNR39H.mjs} +2 -2
  17. package/lib/{component-dimensioning-CuUr4cCF.mjs.map → component-dimensioning-B0hNR39H.mjs.map} +1 -1
  18. package/lib/{continuous-drawing-helper-B5gXrJHm.mjs → continuous-drawing-helper-D6hybw8b.mjs} +2 -2
  19. package/lib/{continuous-drawing-helper-B5gXrJHm.mjs.map → continuous-drawing-helper-D6hybw8b.mjs.map} +1 -1
  20. package/lib/{homag-intelligence-cyYsNk_F.mjs → homag-intelligence-Bm6OR-di.mjs} +2 -2
  21. package/lib/{homag-intelligence-cyYsNk_F.mjs.map → homag-intelligence-Bm6OR-di.mjs.map} +1 -1
  22. package/lib/{imos-ix-poc-export-helper-DxBMrVUd.mjs → imos-ix-poc-export-helper-IXN09m1n.mjs} +2 -2
  23. package/lib/{imos-ix-poc-export-helper-DxBMrVUd.mjs.map → imos-ix-poc-export-helper-IXN09m1n.mjs.map} +1 -1
  24. package/lib/{index-vA-vtmKN.mjs → index-C9LjHx1P.mjs} +31 -18
  25. package/lib/{index-vA-vtmKN.mjs.map → index-C9LjHx1P.mjs.map} +1 -1
  26. package/lib/{material-viewer-DipkoZOM.mjs → material-viewer-CxjXyJcN.mjs} +2 -2
  27. package/lib/{material-viewer-DipkoZOM.mjs.map → material-viewer-CxjXyJcN.mjs.map} +1 -1
  28. package/lib/roomle-sdk.d.ts +7 -20
  29. package/lib/roomle-sdk.js +1 -1
  30. package/lib/static/roomle-core-hsc/ConfiguratorKernel.wasm +0 -0
  31. package/lib/static/roomle-core-hsc/RoomleCore.wasm +0 -0
  32. package/lib/static/roomle-core-hsc/RoomleToolsCore.wasm +0 -0
  33. package/lib/static/roomle-core-hsc/configuratorCoreInterface.d.ts +2 -5
  34. package/lib/static/roomle-core-hsc/configuratorCoreInterface.js +1 -2
  35. package/lib/static/roomle-core-hsc/configuratorCoreInterface.js.map +1 -1
  36. package/lib/static/roomle-core-hsc/embind/configuratorCoreInterface.d.ts +2 -5
  37. package/lib/static/roomle-core-hsc/embind/configuratorCoreInterface.js +1 -2
  38. package/lib/static/roomle-core-hsc/embind/configuratorCoreInterface.js.map +1 -1
  39. package/lib/static/roomle-core-hsc/package.json +1 -1
  40. package/lib/static/roomle-core-hsc/src/embind/configuratorCoreInterface.d.ts +2 -5
  41. package/lib/static/roomle-core-hsc/src/embind/configuratorCoreInterface.js +1 -2
  42. package/lib/static/roomle-core-hsc/src/embind/configuratorCoreInterface.js.map +1 -1
  43. package/lib/static/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
  44. package/lib/static/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
  45. package/lib/static/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
  46. package/lib/{stats-helper-BVrsk2xy.mjs → stats-helper-CQ3WmIXr.mjs} +2 -2
  47. package/lib/{stats-helper-BVrsk2xy.mjs.map → stats-helper-CQ3WmIXr.mjs.map} +1 -1
  48. package/lib/{three.webgpu-B22ruPXP.mjs → three.webgpu-DbyBQGBo.mjs} +3 -3
  49. package/lib/{three.webgpu-B22ruPXP.mjs.map → three.webgpu-DbyBQGBo.mjs.map} +1 -1
  50. package/lib/{tools-core-C4WntGV0.mjs → tools-core-Cdqd-npf.mjs} +2 -2
  51. package/lib/{tools-core-C4WntGV0.mjs.map → tools-core-Cdqd-npf.mjs.map} +1 -1
  52. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { C as I, S as F, a as R, b as T, i as f, D as C, c as A, P as U, B as y, M as B, d as D, e as k, f as w, g as S, h as v, s as L, j as P, k as x, l as V, F as O, m as z, n as b, o as G, T as H, p as j, q as N, R as d, r as s, U as W, t as m, u as q, L as X, I as Y, v as E, w as Z, x as $, y as J, z as K, A as Q } from "./index-vA-vtmKN.mjs";
1
+ import { C as I, S as F, a as R, b as T, i as f, D as C, c as A, P as U, B as y, M as B, d as D, e as k, f as w, g as S, h as v, s as L, j as P, k as x, l as V, F as O, m as z, n as b, o as G, T as H, p as j, q as N, R as d, r as s, U as W, t as m, u as q, L as X, I as Y, v as E, w as Z, x as $, y as J, z as K, A as Q } from "./index-C9LjHx1P.mjs";
2
2
  class ee extends I {
3
3
  get cameraControl() {
4
4
  return this._cameraControl;
@@ -447,4 +447,4 @@ class ne extends J {
447
447
  export {
448
448
  ne as MaterialViewer
449
449
  };
450
- //# sourceMappingURL=material-viewer-DipkoZOM.mjs.map
450
+ //# sourceMappingURL=material-viewer-CxjXyJcN.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"material-viewer-DipkoZOM.mjs","sources":["../../packages/common-core/src/cameracontrol/material-viewer-camera-behaviour.ts","../../packages/material-viewer/src/webgl/material-viewer-scene-manager.ts","../../packages/material-viewer/src/roomle-material-viewer.ts","../../packages/material-viewer/src/roomle-material-viewer-ui-callback.ts","../../packages/material-viewer/src/utils/injectables.ts","../../packages/material-viewer/src/material-viewer.ts"],"sourcesContent":["import CameraBehaviour from './camera-behaviour';\nimport type AdjustableCameraControl3D from '../../../glb-viewer-core/src/camera-control/adjustable-camera-control-3d';\n\nexport default class MaterialViewerCameraBehaviour extends CameraBehaviour {\n public get cameraControl(): AdjustableCameraControl3D {\n return this._cameraControl as AdjustableCameraControl3D;\n }\n}\n","import SceneManager from '../../../common-core/src/webgl/scene-manager';\nimport type { CanvasOffset } from '../../../common-core/src/common-interfaces';\nimport type InputManager from '../../../common-core/src/input/input-manager';\nimport inject from '../../../common-core/src/di/inject';\nimport CameraControl3D from '../../../common-core/src/cameracontrol/camera-control-3d';\nimport type {\n RapiId,\n RapiMaterial,\n RapiMaterialShading,\n RapiTexture,\n} from '../../../typings/rapi-types';\nimport { RAPI_TEXTURE_TYPE } from '../../../typings/rapi-types';\nimport {\n addExistingTexture,\n addTexture,\n getGUI,\n getMaterialShading,\n setMaterial,\n isWebGLRenderer,\n DEFAULT_WEBGPU_MAX_SAMPLES,\n} from '../../../common-core/src/utils/threejs-utils';\nimport { CAMERA_TYPE } from '../../../common-core/src/cameracontrol/camera-type';\nimport type ConfiguratorMeshGenerator from '../../../configurator-core/src/webgl/configurator-mesh-generator';\nimport type RoomleMaterialViewerUiCallback from '../roomle-material-viewer-ui-callback';\nimport BackgroundEnvironment from '../../../common-core/src/environment/background-environment';\nimport FloorEnvironment from '../../../configurator-core/src/webgl/environment/floor-environment';\nimport { type RapiAccess } from '../../../common-core/src/rapi-access';\nimport DynamicLightSettingLoader, {\n PREDEFINED_LIGHTSETTING,\n} from '../../../common-core/src/lightsetting/dynamic-light-setting-loader';\nimport { CANVAS_ID } from '../../../common-core/src/utils/dom-helper';\nimport type { Enumify } from '#/common/src/utils/types';\nimport type { ColorRepresentation, MeshPhysicalMaterial } from 'three';\nimport {\n Box3,\n BoxGeometry,\n Color,\n DoubleSide,\n FrontSide,\n Mesh,\n PlaneGeometry,\n SphereGeometry,\n Texture,\n} from 'three';\nimport MaterialCreator from '../../../common-core/src/utils/material-creator';\nimport MaterialViewerCameraBehaviour from '../../../common-core/src/cameracontrol/material-viewer-camera-behaviour';\n\nexport const enum GEOMETRY {\n CUBE = 'cube',\n SPHERE = 'sphere',\n PLANE_VERTICAL = 'plane_vertical',\n PLANE_HORIZONTAL = 'plane_horizontal',\n}\n\nconst SIZE = { x: 1, y: 1, z: 1 };\nexport default class MaterialViewerSceneManager extends SceneManager {\n @inject\n private _inputManager: InputManager;\n\n @inject\n private _configuratorMeshGenerator: ConfiguratorMeshGenerator;\n\n @inject\n private _roomleMaterialViewerUiCallback: RoomleMaterialViewerUiCallback;\n\n @inject\n private _rapiAccess: RapiAccess;\n\n private _guiGeometryFolder: any;\n private _guiMaterialFolder: any;\n private _mesh: Mesh;\n private _material: MeshPhysicalMaterial;\n private _sceneParams = {\n type: GEOMETRY.CUBE,\n };\n private _materialParams = {\n color: '#ffffff',\n metallic: 0.5,\n alpha: 0,\n alphaCutoff: 0,\n doubleSided: false,\n };\n\n constructor(creator: string, offset: CanvasOffset) {\n super(creator, offset, CANVAS_ID.RMV, CAMERA_TYPE.CAMERA_3D);\n\n // Use lazy initialization for renderer-dependent settings\n this._initializeRendererSettings();\n\n this._initScene();\n }\n\n // If renderer is not ready yet, will retry on next tick.\n // This is necessary for dynamic WebGPU renderer imports.\n private _initializeRendererSettings(): void {\n if (!this._renderer) {\n // Retry on next tick if renderer not ready\n setTimeout(() => this._initializeRendererSettings(), 0);\n return;\n }\n\n const maxTextures = isWebGLRenderer(this._renderer)\n ? this._renderer.capabilities.maxTextures\n : DEFAULT_WEBGPU_MAX_SAMPLES;\n if (maxTextures > 8) {\n this.loadDynamicLightSetting(\n DynamicLightSettingLoader.createDynamicLightSettingSource(\n null,\n PREDEFINED_LIGHTSETTING.CAMERA,\n ),\n );\n }\n }\n\n private _initScene() {\n const geometry = new BoxGeometry(SIZE.x, SIZE.y, SIZE.z, 100, 100, 100);\n const meshPhysicalMaterial = MaterialCreator.createMeshPhysicalMaterial({\n color: this._initData.colors.PRIMARY,\n });\n this._setMaterial(meshPhysicalMaterial);\n this._mesh = new Mesh(geometry, this._material);\n this._mesh.castShadow = true;\n this._mesh.position.setY(SIZE.y / 2);\n this._scene.add(this._mesh);\n\n const { initialFloorMaterial } = this._initData;\n\n if (initialFloorMaterial) {\n this.changeFloorMaterialById(initialFloorMaterial);\n } else {\n this._environment = new BackgroundEnvironment(\n this._scene,\n undefined,\n new Color(0xffffff),\n );\n }\n\n if (this.cameraBehaviour.cameraControl instanceof CameraControl3D) {\n const boundingBox = new Box3();\n boundingBox.setFromObject(this._mesh);\n console.trace('reset camera');\n this.cameraBehaviour.cameraControl.updateAndReset(boundingBox);\n }\n\n this.showGUI();\n }\n\n public loadMaterialId(materialId: RapiId): Promise<void> {\n return new Promise<void>((resolve) => {\n this._configuratorMeshGenerator\n .loadMaterial(materialId, SIZE.x * 1000, SIZE.y * 1000)\n .then((material) => {\n this._setMaterial(material as MeshPhysicalMaterial);\n this._mesh.material = this._material;\n this._updateGUI();\n this._requestRender();\n resolve();\n });\n });\n }\n\n public loadMaterial(material: RapiMaterial): Promise<void> {\n return new Promise<void>((resolve) => {\n // eslint-disable-next-line\n if (!material.__rapi_path__) {\n // eslint-disable-next-line\n material.__rapi_path__ = 'materials';\n }\n this._mesh.material = this._material;\n this._configuratorMeshGenerator\n .loadTextures(material, this._material, SIZE.x * 100, SIZE.y * 100)\n .then(() => {\n this._updateGUI();\n this._requestRender();\n });\n resolve();\n });\n }\n\n public loadMaterialShading(\n materialShading: RapiMaterialShading,\n ): Promise<void> {\n return new Promise<void>((resolve) => {\n let material = { shading: materialShading };\n this._setMaterial(setMaterial(this._material, material as RapiMaterial));\n this._mesh.material = this._material;\n this._updateGUI();\n this._requestRender();\n resolve();\n });\n }\n public resetMaterial(): void {\n this._initScene();\n }\n\n private _setMaterial(material: MeshPhysicalMaterial) {\n this._material = material;\n this._materialParams.alpha = material.opacity;\n this._materialParams.alphaCutoff = material.alphaTest;\n this._materialParams.color = '#' + material.color.getHexString();\n this._materialParams.doubleSided = material.side === DoubleSide;\n this._materialParams.metallic =\n material.metalness === 1 ? 1 : material.reflectivity;\n }\n\n public getMaterialShading(version: number = 1): RapiMaterialShading {\n return getMaterialShading(this._material, version);\n }\n\n protected createCameraControl(\n _mode: Enumify<typeof CAMERA_TYPE>,\n _offset: CanvasOffset,\n ) {\n this._changeCameraBehaviour(\n new MaterialViewerCameraBehaviour(\n new CameraControl3D(this._creator_, this._getInputManager(), undefined),\n this._cameraBehaviourState,\n ),\n );\n }\n\n protected _getInputManager(): InputManager {\n return this._inputManager;\n }\n\n public sceneChanged(): void {\n //override when needed\n }\n\n public getBounds(): Box3 | null {\n if (!this._mesh) {\n return null;\n }\n return new Box3().setFromObject(this._mesh);\n }\n\n getGeometryBounds(): Box3 | null {\n return null;\n }\n\n protected _guiLoaded() {\n this._updateGUI();\n }\n\n private _updateGUI() {\n let gui = getGUI();\n if (!gui) {\n return;\n }\n if (!this._guiGeometryFolder) {\n this._guiGeometryFolder = gui.addFolder('Geometry');\n this._guiGeometryFolder\n .add(this._sceneParams, 'type', {\n Cube: GEOMETRY.CUBE,\n Sphere: GEOMETRY.SPHERE,\n PlaneVertical: GEOMETRY.PLANE_VERTICAL,\n PlaneHorizontal: GEOMETRY.PLANE_HORIZONTAL,\n })\n .onChange((type: number) => {\n console.log(type);\n this._setGeometry();\n });\n }\n if (this._material) {\n if (this._guiMaterialFolder) {\n gui.removeFolder(this._guiMaterialFolder);\n }\n this._guiMaterialFolder = gui.addFolder('Material');\n this._guiMaterialFolder\n .addColor(this._materialParams, 'color')\n .onChange((color: string) => {\n this._material.color = new Color(color as ColorRepresentation);\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'metallic')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((metallic: number) => {\n this._material.metalness = metallic === 1 ? 1 : 0.5;\n this._material.reflectivity = metallic || 0.5;\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._material, 'roughness')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((_roughness: number) => {\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._material, 'transmission')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((transmission: number) => {\n this._material.transmission = transmission;\n if (transmission > 0) {\n this._material.opacity = 1;\n this._material.alphaTest = 0.5;\n this._material.depthWrite = false;\n this._material.transparent = true;\n this._material.metalness = 0;\n }\n this._mesh.castShadow = !this._material.transparent;\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'alpha')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((alpha: number) => {\n this._material.transparent = alpha < 1;\n this._material.opacity = alpha;\n this._material.depthWrite = alpha >= 1;\n this._mesh.castShadow = !this._material.transparent;\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'alphaCutoff')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((alphaCutoff: number) => {\n if (alphaCutoff) {\n this._material.alphaTest = alphaCutoff;\n } else {\n this._material.alphaTest = 0;\n }\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'doubleSided')\n .onChange((doubleSided: boolean) => {\n if (doubleSided) {\n this._material.side = DoubleSide;\n } else {\n this._material.side = FrontSide;\n }\n this._shadingChanged();\n });\n }\n this._addGUIListener(gui);\n }\n\n private _shadingChanged() {\n this._roomleMaterialViewerUiCallback.onMaterialShadingChanged(\n getMaterialShading(this._material),\n );\n }\n\n public setGeometry(type: GEOMETRY) {\n this._sceneParams.type = type;\n this._setGeometry();\n }\n\n private _setGeometry() {\n let geometry;\n if (this._sceneParams.type === GEOMETRY.CUBE) {\n geometry = new BoxGeometry(SIZE.x, SIZE.y, SIZE.z, 100, 100, 100);\n }\n if (this._sceneParams.type === GEOMETRY.SPHERE) {\n geometry = new SphereGeometry(0.5, 100, 100);\n }\n if (this._sceneParams.type === GEOMETRY.PLANE_HORIZONTAL) {\n geometry = new PlaneGeometry(SIZE.x, SIZE.z);\n geometry.rotateX(-Math.PI / 2);\n }\n if (this._sceneParams.type === GEOMETRY.PLANE_VERTICAL) {\n geometry = new PlaneGeometry(SIZE.x, SIZE.z);\n }\n this._mesh.geometry = geometry;\n this._renderEverything();\n }\n\n public async changeFloorMaterialById(materialId: string): Promise<void> {\n const material = await this._rapiAccess.getMaterial(materialId);\n if (\n !this._environment ||\n !(this._environment instanceof FloorEnvironment)\n ) {\n this._environment = new FloorEnvironment(\n this._scene,\n this._environment,\n true,\n );\n }\n return new Promise((resolve, reject) => {\n (this._environment as FloorEnvironment)\n .changeFloorMaterial(material, this._maxAnisotropy)\n .then(() => {\n this._requestRender();\n resolve();\n }, reject);\n });\n }\n\n public async addTexture(rapiTexture: RapiTexture, base64Image?: string) {\n const width = SIZE.x * 100;\n const height = SIZE.y * 100;\n const repeatWidth =\n width / (rapiTexture.mmWidth === 0 ? 1 : rapiTexture.mmWidth);\n const repeatHeight =\n height / (rapiTexture.mmHeight === 0 ? 1 : rapiTexture.mmHeight);\n const maxTextures = isWebGLRenderer(this._renderer)\n ? this._renderer.capabilities.maxTextures\n : DEFAULT_WEBGPU_MAX_SAMPLES;\n if (base64Image) {\n const image = new Image();\n image.src = base64Image;\n const texture = new Texture();\n texture.image = image;\n image.onload = function () {\n texture.needsUpdate = true;\n };\n addExistingTexture(\n texture,\n rapiTexture,\n this._material,\n this._maxAnisotropy,\n repeatWidth,\n repeatHeight,\n maxTextures,\n );\n } else {\n await addTexture(\n rapiTexture.image,\n rapiTexture,\n this._material,\n this._maxAnisotropy,\n repeatWidth,\n repeatHeight,\n maxTextures,\n );\n }\n this._requestRender();\n }\n\n public removeTexture(rapiTexture: RapiTexture) {\n if (rapiTexture.mapping === RAPI_TEXTURE_TYPE.ORM) {\n this._material.aoMap = null;\n this._material.roughnessMap = null;\n this._material.metalnessMap = null;\n }\n if (\n rapiTexture.mapping === RAPI_TEXTURE_TYPE.RGB ||\n rapiTexture.mapping === RAPI_TEXTURE_TYPE.RGBA\n ) {\n this._material.map = null;\n }\n if (rapiTexture.mapping === RAPI_TEXTURE_TYPE.XYZ) {\n this._material.normalMap = null;\n }\n this._material.needsUpdate = true;\n this._requestRender();\n }\n\n public clearCache() {\n this._configuratorMeshGenerator.clear();\n }\n}\n","import type ScriptLoader from '../../common-core/src/script-loader';\nimport type DomHelper from '../../common-core/src/utils/dom-helper';\nimport inject from '../../common-core/src/di/inject';\nimport type { ExternalEmbeddable, GlobalAPI } from '../../common-core/src/main';\nimport type { Main } from '../../common-core/src/main';\nimport type { Context } from '../../common-core/src/di/context';\nimport type LifeCycleManager from '../../common-core/src/life-cycle-manager';\nimport type { SceneSettings } from '../../common-core/src/scene-settings-loader';\nimport type { GEOMETRY } from './webgl/material-viewer-scene-manager';\nimport MaterialViewerSceneManager from './webgl/material-viewer-scene-manager';\nimport type {\n RapiId,\n RapiMaterial,\n RapiMaterialShading,\n RapiTexture,\n} from '../../typings/rapi-types';\nimport type RoomleMaterialViewerUiCallback from './roomle-material-viewer-ui-callback';\nimport type { InitDataDefinition } from '../../common-core/src/utils/shims';\nimport type InitData from '../../common-core/src/utils/init-data';\nimport { type RapiAccess } from '../../common-core/src/rapi-access';\nimport type { CanvasOffset } from '../../common-core/src/common-interfaces';\nimport type UnitFormatter from '../../configurator-core/src/services/unit-formatter';\nimport type { Scene } from 'three';\nimport { type IdbManager } from '../../common-core/src/services/idb-manager';\nimport type { GlobalCallback } from '../../common-core/src/services/global-callback';\n\nexport default class RoomleMaterialViewer\n implements\n GlobalAPI,\n Context,\n ExternalEmbeddable<RoomleMaterialViewerUiCallback>\n{\n public _creator_: string;\n\n @inject\n private _domHelper: DomHelper;\n\n @inject\n private _scriptLoader: ScriptLoader;\n\n @inject\n private _lifeCycleManager: LifeCycleManager;\n\n @inject\n private _roomleMaterialViewerUiCallback: RoomleMaterialViewerUiCallback;\n\n @inject\n private _initData: InitData;\n\n @inject\n private _globalCallback: GlobalCallback;\n\n @inject\n private _rapiAccess: RapiAccess;\n\n @inject\n private _unitFormatter: UnitFormatter;\n\n @inject\n protected _idbManager: IdbManager;\n\n private _sceneManager: MaterialViewerSceneManager;\n\n constructor(creator: string) {\n this._creator_ = creator;\n }\n\n public setCameraOffset(offset: CanvasOffset): void {\n this._sceneManager.setCameraOffset(offset);\n }\n\n public getCameraOffset(): CanvasOffset {\n return this._sceneManager.getCameraOffset();\n }\n\n public init(element: HTMLElement): Promise<void> {\n this._domHelper.setDomElement(element);\n\n if (this._sceneManager) {\n this._lifeCycleManager.resume();\n return Promise.resolve();\n }\n\n return new Promise<void>(this._initPromiseCallback.bind(this));\n }\n\n private _initPromiseCallback(resolve: () => void, _reject: () => void) {\n this._sceneManager = new MaterialViewerSceneManager(this._creator_, {\n left: 0,\n top: 1,\n right: 1,\n bottom: 0,\n });\n this._sceneManager.enableHD();\n resolve();\n }\n\n get callbacks(): RoomleMaterialViewerUiCallback {\n return this._roomleMaterialViewerUiCallback;\n }\n\n set callbacks(callback: RoomleMaterialViewerUiCallback) {\n this._roomleMaterialViewerUiCallback = callback;\n }\n\n public loadMaterialShading(\n materialShading: RapiMaterialShading,\n ): Promise<void> {\n return this._sceneManager.loadMaterialShading(materialShading);\n }\n\n public resetMaterial(): void {\n this._sceneManager.resetMaterial();\n }\n\n public loadMaterial(\n material: RapiMaterial,\n options: { flushCache?: boolean } = {},\n ): Promise<void> {\n if (options.flushCache) {\n this._clearCaches();\n }\n return this._sceneManager.loadMaterial(material);\n }\n\n public loadMaterialId(\n materialId: RapiId,\n options: { flushCache?: boolean } = {},\n ): Promise<void> {\n if (options.flushCache) {\n this._clearCaches();\n }\n return this._sceneManager.loadMaterialId(materialId);\n }\n\n public getMaterialShading(version: number = 1): RapiMaterialShading {\n return this._sceneManager.getMaterialShading(version);\n }\n\n /**\n * Loads a SceneSettings object, currently it can can contain a light setting definition\n * (see {@link @roomle/web-sdk/configurator-core/src/roomle-configurator#RoomleConfigurator.loadDynamicLightSetting}) and an environment definition (see {@link @roomle/web-sdk/configurator-core/src/environment/dynamic-environment-setting-loader#EnvironmentSetting}).\n * @param sceneSettings\n */\n public loadSceneSetting(sceneSettings: SceneSettings): Promise<void> {\n return this._sceneManager.loadSceneSettings(sceneSettings);\n }\n\n public setOverrides(initData: InitDataDefinition): void {\n if (!initData) {\n return;\n }\n this._initData.setOverrides(initData);\n }\n\n public updateSize(): void {\n this._sceneManager.updateCamera();\n }\n\n /**\n * Return the main class which has access to lifecycle events and RapiAccess.\n * Hidden because it's only useful for embedding API.\n * Has to be overridden by main class.\n * @hidden\n */\n public getMain(): Main | undefined {\n return undefined;\n }\n\n public resumeTest(element: HTMLElement) {\n this._domHelper.setDomElement(element);\n this._lifeCycleManager.resume();\n }\n\n public pauseTest() {\n this._lifeCycleManager.pause();\n }\n\n public showGUI() {\n this._sceneManager.showGUI();\n }\n\n /**\n * Sets the material of the floor to the given material id.\n * If the current environment is not floor environment it will be changed\n *\n * Example material ids are:\n * roomle_floor:DresdenEiche\n * roomle_floor:Ibiza\n * roomle_floor:Palma\n * roomle_floor:Elba\n * roomle_floor:Manacor\n * roomle_floor:KernEiche\n * roomle_floor:KieferScandic\n * roomle_floor:EicheHabsburg\n * roomle_floor:FuldaKiefer\n * roomle_floor:Ashton\n * roomle_floor:EicheLondon\n *\n * @param materialId\n * @returns promise that resolves when material has been changed\n */\n public async changeFloorMaterialById(materialId: string): Promise<void> {\n return this._sceneManager.changeFloorMaterialById(materialId);\n }\n\n /**\n * Set the geometry of the demo material mesh\n *\n * Possible parameter:\n * 'cube',\n * 'sphere',\n * 'plane_vertical',\n * 'plane_horizontal'\n *\n * @param type\n */\n public setGeometry(type: GEOMETRY) {\n this._sceneManager.setGeometry(type);\n }\n\n /**\n * Set a texture on the demo material, if no base64Image is set, the image field of rapiTexture is used\n * @param rapiTexture\n * @param base64Image for example \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNkYPj/HwADBwIAMCbHYQAAAABJRU5ErkJggg==\"\n */\n public async addTexture(rapiTexture: RapiTexture, base64Image?: string) {\n return this._sceneManager.addTexture(rapiTexture, base64Image);\n }\n\n /**\n * Remove texture from the demo material\n * @param rapiTexture\n */\n public removeTexture(rapiTexture: RapiTexture) {\n return this._sceneManager.removeTexture(rapiTexture);\n }\n\n private _clearCaches() {\n this._rapiAccess.cleanUp();\n this._sceneManager.clearCache();\n }\n\n public getScene(): Scene {\n return this._sceneManager.getScene();\n }\n\n public updateScene(): void {\n this._sceneManager.updateScene();\n }\n\n /**\n * returns unit formatter for formatting input und output values in scene\n */\n public getUnitFormatter(): UnitFormatter {\n return this._unitFormatter;\n }\n\n /**\n * returns manager class to interface with indexedDB storage\n */\n public getStorage(): IdbManager {\n return this._idbManager;\n }\n\n public setEnvironmentMap(params: {\n url?: string;\n intensity?: number;\n rotation?: number;\n maxLightSources?: number;\n }): void {\n const { url, intensity, rotation, maxLightSources } = params;\n this._sceneManager.setEnvironmentMap(\n url,\n intensity,\n rotation,\n maxLightSources,\n );\n }\n\n /**\n * @internal\n * Use this callbacks to hook in your functionality\n */\n public get globalCallbacks(): GlobalCallback {\n return this._globalCallback;\n }\n}\n","/* eslint-disable @typescript-eslint/no-unused-vars */\n\nimport { UiCallback } from '../../common-core/src/utils/ui-callback';\nimport type { RapiMaterialShading } from '../../typings/rapi-types';\n\nexport default class RoomleMaterialViewerUiCallback extends UiCallback {\n constructor(creator: string) {\n super(creator);\n }\n\n /**\n * Gets called when a material parameter has been changed using the graphical user interface\n * @param materialShading\n */\n public onMaterialShadingChanged = (\n materialShading: RapiMaterialShading,\n ): void => undefined;\n}\n","import Logger from '../../../common-core/src/logger';\nimport ScriptLoader from '../../../common-core/src/script-loader';\nimport {\n DependencyInjectionAssignment,\n DI_TYPE,\n} from '../../../common-core/src/di/container';\nimport InputManager from '../../../common-core/src/input/input-manager';\nimport ConfiguratorMeshGenerator from '../../../configurator-core/src/webgl/configurator-mesh-generator';\nimport { RapiAccess } from '../../../common-core/src/rapi-access';\nimport RoomleMaterialViewerUiCallback from '../roomle-material-viewer-ui-callback';\n\nexport const INJECTABLES: DependencyInjectionAssignment[] = [\n new DependencyInjectionAssignment('script-loader', ScriptLoader),\n new DependencyInjectionAssignment('logger', Logger),\n new DependencyInjectionAssignment(\n 'input-manager',\n InputManager,\n DI_TYPE.CONTEXT,\n ),\n new DependencyInjectionAssignment(\n 'configurator-mesh-generator',\n ConfiguratorMeshGenerator,\n ),\n new DependencyInjectionAssignment('rapi-access', RapiAccess),\n new DependencyInjectionAssignment(\n 'roomle-material-viewer-ui-callback',\n RoomleMaterialViewerUiCallback,\n DI_TYPE.CONTEXT,\n ),\n];\n","import './utils/global-definitions';\nimport { Main, BASE_CONTEXT } from '../../common-core/src/main';\nimport type Logger from '../../common-core/src/logger';\nimport RoomleDependencyInjection from '../../common-core/src/di/roomle-dependency-injection';\nimport RoomleMaterialViewer from './roomle-material-viewer';\nimport { INJECTABLES } from './utils/injectables';\n\nexport class MaterialViewer extends Main {\n private _viewer: RoomleMaterialViewer;\n\n protected setupGlobals(): void {\n //globals are initialized in bootFinished()\n }\n\n protected setupDependencies(): void {\n RoomleDependencyInjection.setup(INJECTABLES);\n this.lookup<Logger>('logger', this._context);\n }\n\n protected cleanUpGlobals(): void {\n throw new Error('Method not implemented.');\n }\n\n protected cleanUpDependencies(): void {\n throw new Error('Method not implemented.');\n }\n\n protected async bootFinished(): Promise<void> {\n this._viewer = new RoomleMaterialViewer(this._context);\n\n if (!window.RoomleMaterialViewer) {\n window.RoomleMaterialViewer = this._viewer;\n }\n }\n\n public getApi(): RoomleMaterialViewer {\n return this._viewer;\n }\n\n protected getContextName(): string {\n return BASE_CONTEXT.MATERIAL_VIEWER;\n }\n}\n"],"names":["MaterialViewerCameraBehaviour","CameraBehaviour","SIZE","MaterialViewerSceneManager","SceneManager","creator","offset","CANVAS_ID","CAMERA_TYPE","isWebGLRenderer","DEFAULT_WEBGPU_MAX_SAMPLES","DynamicLightSettingLoader","PREDEFINED_LIGHTSETTING","geometry","BoxGeometry","meshPhysicalMaterial","MaterialCreator","Mesh","initialFloorMaterial","BackgroundEnvironment","Color","CameraControl3D","boundingBox","Box3","materialId","resolve","material","materialShading","setMaterial","DoubleSide","version","getMaterialShading","_mode","_offset","gui","getGUI","type","color","metallic","_roughness","transmission","alpha","alphaCutoff","doubleSided","FrontSide","SphereGeometry","PlaneGeometry","FloorEnvironment","reject","rapiTexture","base64Image","width","height","repeatWidth","repeatHeight","maxTextures","image","texture","Texture","addExistingTexture","addTexture","RAPI_TEXTURE_TYPE","__decorateClass","inject","RoomleMaterialViewer","element","_reject","callback","options","sceneSettings","initData","params","url","intensity","rotation","maxLightSources","RoomleMaterialViewerUiCallback","UiCallback","INJECTABLES","DependencyInjectionAssignment","ScriptLoader","Logger","InputManager","DI_TYPE","ConfiguratorMeshGenerator","RapiAccess","MaterialViewer","Main","RoomleDependencyInjection","BASE_CONTEXT"],"mappings":"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"}
1
+ {"version":3,"file":"material-viewer-CxjXyJcN.mjs","sources":["../../packages/common-core/src/cameracontrol/material-viewer-camera-behaviour.ts","../../packages/material-viewer/src/webgl/material-viewer-scene-manager.ts","../../packages/material-viewer/src/roomle-material-viewer.ts","../../packages/material-viewer/src/roomle-material-viewer-ui-callback.ts","../../packages/material-viewer/src/utils/injectables.ts","../../packages/material-viewer/src/material-viewer.ts"],"sourcesContent":["import CameraBehaviour from './camera-behaviour';\nimport type AdjustableCameraControl3D from '../../../glb-viewer-core/src/camera-control/adjustable-camera-control-3d';\n\nexport default class MaterialViewerCameraBehaviour extends CameraBehaviour {\n public get cameraControl(): AdjustableCameraControl3D {\n return this._cameraControl as AdjustableCameraControl3D;\n }\n}\n","import SceneManager from '../../../common-core/src/webgl/scene-manager';\nimport type { CanvasOffset } from '../../../common-core/src/common-interfaces';\nimport type InputManager from '../../../common-core/src/input/input-manager';\nimport inject from '../../../common-core/src/di/inject';\nimport CameraControl3D from '../../../common-core/src/cameracontrol/camera-control-3d';\nimport type {\n RapiId,\n RapiMaterial,\n RapiMaterialShading,\n RapiTexture,\n} from '../../../typings/rapi-types';\nimport { RAPI_TEXTURE_TYPE } from '../../../typings/rapi-types';\nimport {\n addExistingTexture,\n addTexture,\n getGUI,\n getMaterialShading,\n setMaterial,\n isWebGLRenderer,\n DEFAULT_WEBGPU_MAX_SAMPLES,\n} from '../../../common-core/src/utils/threejs-utils';\nimport { CAMERA_TYPE } from '../../../common-core/src/cameracontrol/camera-type';\nimport type ConfiguratorMeshGenerator from '../../../configurator-core/src/webgl/configurator-mesh-generator';\nimport type RoomleMaterialViewerUiCallback from '../roomle-material-viewer-ui-callback';\nimport BackgroundEnvironment from '../../../common-core/src/environment/background-environment';\nimport FloorEnvironment from '../../../configurator-core/src/webgl/environment/floor-environment';\nimport { type RapiAccess } from '../../../common-core/src/rapi-access';\nimport DynamicLightSettingLoader, {\n PREDEFINED_LIGHTSETTING,\n} from '../../../common-core/src/lightsetting/dynamic-light-setting-loader';\nimport { CANVAS_ID } from '../../../common-core/src/utils/dom-helper';\nimport type { Enumify } from '#/common/src/utils/types';\nimport type { ColorRepresentation, MeshPhysicalMaterial } from 'three';\nimport {\n Box3,\n BoxGeometry,\n Color,\n DoubleSide,\n FrontSide,\n Mesh,\n PlaneGeometry,\n SphereGeometry,\n Texture,\n} from 'three';\nimport MaterialCreator from '../../../common-core/src/utils/material-creator';\nimport MaterialViewerCameraBehaviour from '../../../common-core/src/cameracontrol/material-viewer-camera-behaviour';\n\nexport const enum GEOMETRY {\n CUBE = 'cube',\n SPHERE = 'sphere',\n PLANE_VERTICAL = 'plane_vertical',\n PLANE_HORIZONTAL = 'plane_horizontal',\n}\n\nconst SIZE = { x: 1, y: 1, z: 1 };\nexport default class MaterialViewerSceneManager extends SceneManager {\n @inject\n private _inputManager: InputManager;\n\n @inject\n private _configuratorMeshGenerator: ConfiguratorMeshGenerator;\n\n @inject\n private _roomleMaterialViewerUiCallback: RoomleMaterialViewerUiCallback;\n\n @inject\n private _rapiAccess: RapiAccess;\n\n private _guiGeometryFolder: any;\n private _guiMaterialFolder: any;\n private _mesh: Mesh;\n private _material: MeshPhysicalMaterial;\n private _sceneParams = {\n type: GEOMETRY.CUBE,\n };\n private _materialParams = {\n color: '#ffffff',\n metallic: 0.5,\n alpha: 0,\n alphaCutoff: 0,\n doubleSided: false,\n };\n\n constructor(creator: string, offset: CanvasOffset) {\n super(creator, offset, CANVAS_ID.RMV, CAMERA_TYPE.CAMERA_3D);\n\n // Use lazy initialization for renderer-dependent settings\n this._initializeRendererSettings();\n\n this._initScene();\n }\n\n // If renderer is not ready yet, will retry on next tick.\n // This is necessary for dynamic WebGPU renderer imports.\n private _initializeRendererSettings(): void {\n if (!this._renderer) {\n // Retry on next tick if renderer not ready\n setTimeout(() => this._initializeRendererSettings(), 0);\n return;\n }\n\n const maxTextures = isWebGLRenderer(this._renderer)\n ? this._renderer.capabilities.maxTextures\n : DEFAULT_WEBGPU_MAX_SAMPLES;\n if (maxTextures > 8) {\n this.loadDynamicLightSetting(\n DynamicLightSettingLoader.createDynamicLightSettingSource(\n null,\n PREDEFINED_LIGHTSETTING.CAMERA,\n ),\n );\n }\n }\n\n private _initScene() {\n const geometry = new BoxGeometry(SIZE.x, SIZE.y, SIZE.z, 100, 100, 100);\n const meshPhysicalMaterial = MaterialCreator.createMeshPhysicalMaterial({\n color: this._initData.colors.PRIMARY,\n });\n this._setMaterial(meshPhysicalMaterial);\n this._mesh = new Mesh(geometry, this._material);\n this._mesh.castShadow = true;\n this._mesh.position.setY(SIZE.y / 2);\n this._scene.add(this._mesh);\n\n const { initialFloorMaterial } = this._initData;\n\n if (initialFloorMaterial) {\n this.changeFloorMaterialById(initialFloorMaterial);\n } else {\n this._environment = new BackgroundEnvironment(\n this._scene,\n undefined,\n new Color(0xffffff),\n );\n }\n\n if (this.cameraBehaviour.cameraControl instanceof CameraControl3D) {\n const boundingBox = new Box3();\n boundingBox.setFromObject(this._mesh);\n console.trace('reset camera');\n this.cameraBehaviour.cameraControl.updateAndReset(boundingBox);\n }\n\n this.showGUI();\n }\n\n public loadMaterialId(materialId: RapiId): Promise<void> {\n return new Promise<void>((resolve) => {\n this._configuratorMeshGenerator\n .loadMaterial(materialId, SIZE.x * 1000, SIZE.y * 1000)\n .then((material) => {\n this._setMaterial(material as MeshPhysicalMaterial);\n this._mesh.material = this._material;\n this._updateGUI();\n this._requestRender();\n resolve();\n });\n });\n }\n\n public loadMaterial(material: RapiMaterial): Promise<void> {\n return new Promise<void>((resolve) => {\n // eslint-disable-next-line\n if (!material.__rapi_path__) {\n // eslint-disable-next-line\n material.__rapi_path__ = 'materials';\n }\n this._mesh.material = this._material;\n this._configuratorMeshGenerator\n .loadTextures(material, this._material, SIZE.x * 100, SIZE.y * 100)\n .then(() => {\n this._updateGUI();\n this._requestRender();\n });\n resolve();\n });\n }\n\n public loadMaterialShading(\n materialShading: RapiMaterialShading,\n ): Promise<void> {\n return new Promise<void>((resolve) => {\n let material = { shading: materialShading };\n this._setMaterial(setMaterial(this._material, material as RapiMaterial));\n this._mesh.material = this._material;\n this._updateGUI();\n this._requestRender();\n resolve();\n });\n }\n public resetMaterial(): void {\n this._initScene();\n }\n\n private _setMaterial(material: MeshPhysicalMaterial) {\n this._material = material;\n this._materialParams.alpha = material.opacity;\n this._materialParams.alphaCutoff = material.alphaTest;\n this._materialParams.color = '#' + material.color.getHexString();\n this._materialParams.doubleSided = material.side === DoubleSide;\n this._materialParams.metallic =\n material.metalness === 1 ? 1 : material.reflectivity;\n }\n\n public getMaterialShading(version: number = 1): RapiMaterialShading {\n return getMaterialShading(this._material, version);\n }\n\n protected createCameraControl(\n _mode: Enumify<typeof CAMERA_TYPE>,\n _offset: CanvasOffset,\n ) {\n this._changeCameraBehaviour(\n new MaterialViewerCameraBehaviour(\n new CameraControl3D(this._creator_, this._getInputManager(), undefined),\n this._cameraBehaviourState,\n ),\n );\n }\n\n protected _getInputManager(): InputManager {\n return this._inputManager;\n }\n\n public sceneChanged(): void {\n //override when needed\n }\n\n public getBounds(): Box3 | null {\n if (!this._mesh) {\n return null;\n }\n return new Box3().setFromObject(this._mesh);\n }\n\n getGeometryBounds(): Box3 | null {\n return null;\n }\n\n protected _guiLoaded() {\n this._updateGUI();\n }\n\n private _updateGUI() {\n let gui = getGUI();\n if (!gui) {\n return;\n }\n if (!this._guiGeometryFolder) {\n this._guiGeometryFolder = gui.addFolder('Geometry');\n this._guiGeometryFolder\n .add(this._sceneParams, 'type', {\n Cube: GEOMETRY.CUBE,\n Sphere: GEOMETRY.SPHERE,\n PlaneVertical: GEOMETRY.PLANE_VERTICAL,\n PlaneHorizontal: GEOMETRY.PLANE_HORIZONTAL,\n })\n .onChange((type: number) => {\n console.log(type);\n this._setGeometry();\n });\n }\n if (this._material) {\n if (this._guiMaterialFolder) {\n gui.removeFolder(this._guiMaterialFolder);\n }\n this._guiMaterialFolder = gui.addFolder('Material');\n this._guiMaterialFolder\n .addColor(this._materialParams, 'color')\n .onChange((color: string) => {\n this._material.color = new Color(color as ColorRepresentation);\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'metallic')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((metallic: number) => {\n this._material.metalness = metallic === 1 ? 1 : 0.5;\n this._material.reflectivity = metallic || 0.5;\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._material, 'roughness')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((_roughness: number) => {\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._material, 'transmission')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((transmission: number) => {\n this._material.transmission = transmission;\n if (transmission > 0) {\n this._material.opacity = 1;\n this._material.alphaTest = 0.5;\n this._material.depthWrite = false;\n this._material.transparent = true;\n this._material.metalness = 0;\n }\n this._mesh.castShadow = !this._material.transparent;\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'alpha')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((alpha: number) => {\n this._material.transparent = alpha < 1;\n this._material.opacity = alpha;\n this._material.depthWrite = alpha >= 1;\n this._mesh.castShadow = !this._material.transparent;\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'alphaCutoff')\n .min(0)\n .max(1)\n .step(0.01)\n .onChange((alphaCutoff: number) => {\n if (alphaCutoff) {\n this._material.alphaTest = alphaCutoff;\n } else {\n this._material.alphaTest = 0;\n }\n this._shadingChanged();\n });\n this._guiMaterialFolder\n .add(this._materialParams, 'doubleSided')\n .onChange((doubleSided: boolean) => {\n if (doubleSided) {\n this._material.side = DoubleSide;\n } else {\n this._material.side = FrontSide;\n }\n this._shadingChanged();\n });\n }\n this._addGUIListener(gui);\n }\n\n private _shadingChanged() {\n this._roomleMaterialViewerUiCallback.onMaterialShadingChanged(\n getMaterialShading(this._material),\n );\n }\n\n public setGeometry(type: GEOMETRY) {\n this._sceneParams.type = type;\n this._setGeometry();\n }\n\n private _setGeometry() {\n let geometry;\n if (this._sceneParams.type === GEOMETRY.CUBE) {\n geometry = new BoxGeometry(SIZE.x, SIZE.y, SIZE.z, 100, 100, 100);\n }\n if (this._sceneParams.type === GEOMETRY.SPHERE) {\n geometry = new SphereGeometry(0.5, 100, 100);\n }\n if (this._sceneParams.type === GEOMETRY.PLANE_HORIZONTAL) {\n geometry = new PlaneGeometry(SIZE.x, SIZE.z);\n geometry.rotateX(-Math.PI / 2);\n }\n if (this._sceneParams.type === GEOMETRY.PLANE_VERTICAL) {\n geometry = new PlaneGeometry(SIZE.x, SIZE.z);\n }\n this._mesh.geometry = geometry;\n this._renderEverything();\n }\n\n public async changeFloorMaterialById(materialId: string): Promise<void> {\n const material = await this._rapiAccess.getMaterial(materialId);\n if (\n !this._environment ||\n !(this._environment instanceof FloorEnvironment)\n ) {\n this._environment = new FloorEnvironment(\n this._scene,\n this._environment,\n true,\n );\n }\n return new Promise((resolve, reject) => {\n (this._environment as FloorEnvironment)\n .changeFloorMaterial(material, this._maxAnisotropy)\n .then(() => {\n this._requestRender();\n resolve();\n }, reject);\n });\n }\n\n public async addTexture(rapiTexture: RapiTexture, base64Image?: string) {\n const width = SIZE.x * 100;\n const height = SIZE.y * 100;\n const repeatWidth =\n width / (rapiTexture.mmWidth === 0 ? 1 : rapiTexture.mmWidth);\n const repeatHeight =\n height / (rapiTexture.mmHeight === 0 ? 1 : rapiTexture.mmHeight);\n const maxTextures = isWebGLRenderer(this._renderer)\n ? this._renderer.capabilities.maxTextures\n : DEFAULT_WEBGPU_MAX_SAMPLES;\n if (base64Image) {\n const image = new Image();\n image.src = base64Image;\n const texture = new Texture();\n texture.image = image;\n image.onload = function () {\n texture.needsUpdate = true;\n };\n addExistingTexture(\n texture,\n rapiTexture,\n this._material,\n this._maxAnisotropy,\n repeatWidth,\n repeatHeight,\n maxTextures,\n );\n } else {\n await addTexture(\n rapiTexture.image,\n rapiTexture,\n this._material,\n this._maxAnisotropy,\n repeatWidth,\n repeatHeight,\n maxTextures,\n );\n }\n this._requestRender();\n }\n\n public removeTexture(rapiTexture: RapiTexture) {\n if (rapiTexture.mapping === RAPI_TEXTURE_TYPE.ORM) {\n this._material.aoMap = null;\n this._material.roughnessMap = null;\n this._material.metalnessMap = null;\n }\n if (\n rapiTexture.mapping === RAPI_TEXTURE_TYPE.RGB ||\n rapiTexture.mapping === RAPI_TEXTURE_TYPE.RGBA\n ) {\n this._material.map = null;\n }\n if (rapiTexture.mapping === RAPI_TEXTURE_TYPE.XYZ) {\n this._material.normalMap = null;\n }\n this._material.needsUpdate = true;\n this._requestRender();\n }\n\n public clearCache() {\n this._configuratorMeshGenerator.clear();\n }\n}\n","import type ScriptLoader from '../../common-core/src/script-loader';\nimport type DomHelper from '../../common-core/src/utils/dom-helper';\nimport inject from '../../common-core/src/di/inject';\nimport type { ExternalEmbeddable, GlobalAPI } from '../../common-core/src/main';\nimport type { Main } from '../../common-core/src/main';\nimport type { Context } from '../../common-core/src/di/context';\nimport type LifeCycleManager from '../../common-core/src/life-cycle-manager';\nimport type { SceneSettings } from '../../common-core/src/scene-settings-loader';\nimport type { GEOMETRY } from './webgl/material-viewer-scene-manager';\nimport MaterialViewerSceneManager from './webgl/material-viewer-scene-manager';\nimport type {\n RapiId,\n RapiMaterial,\n RapiMaterialShading,\n RapiTexture,\n} from '../../typings/rapi-types';\nimport type RoomleMaterialViewerUiCallback from './roomle-material-viewer-ui-callback';\nimport type { InitDataDefinition } from '../../common-core/src/utils/shims';\nimport type InitData from '../../common-core/src/utils/init-data';\nimport { type RapiAccess } from '../../common-core/src/rapi-access';\nimport type { CanvasOffset } from '../../common-core/src/common-interfaces';\nimport type UnitFormatter from '../../configurator-core/src/services/unit-formatter';\nimport type { Scene } from 'three';\nimport { type IdbManager } from '../../common-core/src/services/idb-manager';\nimport type { GlobalCallback } from '../../common-core/src/services/global-callback';\n\nexport default class RoomleMaterialViewer\n implements\n GlobalAPI,\n Context,\n ExternalEmbeddable<RoomleMaterialViewerUiCallback>\n{\n public _creator_: string;\n\n @inject\n private _domHelper: DomHelper;\n\n @inject\n private _scriptLoader: ScriptLoader;\n\n @inject\n private _lifeCycleManager: LifeCycleManager;\n\n @inject\n private _roomleMaterialViewerUiCallback: RoomleMaterialViewerUiCallback;\n\n @inject\n private _initData: InitData;\n\n @inject\n private _globalCallback: GlobalCallback;\n\n @inject\n private _rapiAccess: RapiAccess;\n\n @inject\n private _unitFormatter: UnitFormatter;\n\n @inject\n protected _idbManager: IdbManager;\n\n private _sceneManager: MaterialViewerSceneManager;\n\n constructor(creator: string) {\n this._creator_ = creator;\n }\n\n public setCameraOffset(offset: CanvasOffset): void {\n this._sceneManager.setCameraOffset(offset);\n }\n\n public getCameraOffset(): CanvasOffset {\n return this._sceneManager.getCameraOffset();\n }\n\n public init(element: HTMLElement): Promise<void> {\n this._domHelper.setDomElement(element);\n\n if (this._sceneManager) {\n this._lifeCycleManager.resume();\n return Promise.resolve();\n }\n\n return new Promise<void>(this._initPromiseCallback.bind(this));\n }\n\n private _initPromiseCallback(resolve: () => void, _reject: () => void) {\n this._sceneManager = new MaterialViewerSceneManager(this._creator_, {\n left: 0,\n top: 1,\n right: 1,\n bottom: 0,\n });\n this._sceneManager.enableHD();\n resolve();\n }\n\n get callbacks(): RoomleMaterialViewerUiCallback {\n return this._roomleMaterialViewerUiCallback;\n }\n\n set callbacks(callback: RoomleMaterialViewerUiCallback) {\n this._roomleMaterialViewerUiCallback = callback;\n }\n\n public loadMaterialShading(\n materialShading: RapiMaterialShading,\n ): Promise<void> {\n return this._sceneManager.loadMaterialShading(materialShading);\n }\n\n public resetMaterial(): void {\n this._sceneManager.resetMaterial();\n }\n\n public loadMaterial(\n material: RapiMaterial,\n options: { flushCache?: boolean } = {},\n ): Promise<void> {\n if (options.flushCache) {\n this._clearCaches();\n }\n return this._sceneManager.loadMaterial(material);\n }\n\n public loadMaterialId(\n materialId: RapiId,\n options: { flushCache?: boolean } = {},\n ): Promise<void> {\n if (options.flushCache) {\n this._clearCaches();\n }\n return this._sceneManager.loadMaterialId(materialId);\n }\n\n public getMaterialShading(version: number = 1): RapiMaterialShading {\n return this._sceneManager.getMaterialShading(version);\n }\n\n /**\n * Loads a SceneSettings object, currently it can can contain a light setting definition\n * (see {@link @roomle/web-sdk/configurator-core/src/roomle-configurator#RoomleConfigurator.loadDynamicLightSetting}) and an environment definition (see {@link @roomle/web-sdk/configurator-core/src/environment/dynamic-environment-setting-loader#EnvironmentSetting}).\n * @param sceneSettings\n */\n public loadSceneSetting(sceneSettings: SceneSettings): Promise<void> {\n return this._sceneManager.loadSceneSettings(sceneSettings);\n }\n\n public setOverrides(initData: InitDataDefinition): void {\n if (!initData) {\n return;\n }\n this._initData.setOverrides(initData);\n }\n\n public updateSize(): void {\n this._sceneManager.updateCamera();\n }\n\n /**\n * Return the main class which has access to lifecycle events and RapiAccess.\n * Hidden because it's only useful for embedding API.\n * Has to be overridden by main class.\n * @hidden\n */\n public getMain(): Main | undefined {\n return undefined;\n }\n\n public resumeTest(element: HTMLElement) {\n this._domHelper.setDomElement(element);\n this._lifeCycleManager.resume();\n }\n\n public pauseTest() {\n this._lifeCycleManager.pause();\n }\n\n public showGUI() {\n this._sceneManager.showGUI();\n }\n\n /**\n * Sets the material of the floor to the given material id.\n * If the current environment is not floor environment it will be changed\n *\n * Example material ids are:\n * roomle_floor:DresdenEiche\n * roomle_floor:Ibiza\n * roomle_floor:Palma\n * roomle_floor:Elba\n * roomle_floor:Manacor\n * roomle_floor:KernEiche\n * roomle_floor:KieferScandic\n * roomle_floor:EicheHabsburg\n * roomle_floor:FuldaKiefer\n * roomle_floor:Ashton\n * roomle_floor:EicheLondon\n *\n * @param materialId\n * @returns promise that resolves when material has been changed\n */\n public async changeFloorMaterialById(materialId: string): Promise<void> {\n return this._sceneManager.changeFloorMaterialById(materialId);\n }\n\n /**\n * Set the geometry of the demo material mesh\n *\n * Possible parameter:\n * 'cube',\n * 'sphere',\n * 'plane_vertical',\n * 'plane_horizontal'\n *\n * @param type\n */\n public setGeometry(type: GEOMETRY) {\n this._sceneManager.setGeometry(type);\n }\n\n /**\n * Set a texture on the demo material, if no base64Image is set, the image field of rapiTexture is used\n * @param rapiTexture\n * @param base64Image for example \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNkYPj/HwADBwIAMCbHYQAAAABJRU5ErkJggg==\"\n */\n public async addTexture(rapiTexture: RapiTexture, base64Image?: string) {\n return this._sceneManager.addTexture(rapiTexture, base64Image);\n }\n\n /**\n * Remove texture from the demo material\n * @param rapiTexture\n */\n public removeTexture(rapiTexture: RapiTexture) {\n return this._sceneManager.removeTexture(rapiTexture);\n }\n\n private _clearCaches() {\n this._rapiAccess.cleanUp();\n this._sceneManager.clearCache();\n }\n\n public getScene(): Scene {\n return this._sceneManager.getScene();\n }\n\n public updateScene(): void {\n this._sceneManager.updateScene();\n }\n\n /**\n * returns unit formatter for formatting input und output values in scene\n */\n public getUnitFormatter(): UnitFormatter {\n return this._unitFormatter;\n }\n\n /**\n * returns manager class to interface with indexedDB storage\n */\n public getStorage(): IdbManager {\n return this._idbManager;\n }\n\n public setEnvironmentMap(params: {\n url?: string;\n intensity?: number;\n rotation?: number;\n maxLightSources?: number;\n }): void {\n const { url, intensity, rotation, maxLightSources } = params;\n this._sceneManager.setEnvironmentMap(\n url,\n intensity,\n rotation,\n maxLightSources,\n );\n }\n\n /**\n * @internal\n * Use this callbacks to hook in your functionality\n */\n public get globalCallbacks(): GlobalCallback {\n return this._globalCallback;\n }\n}\n","/* eslint-disable @typescript-eslint/no-unused-vars */\n\nimport { UiCallback } from '../../common-core/src/utils/ui-callback';\nimport type { RapiMaterialShading } from '../../typings/rapi-types';\n\nexport default class RoomleMaterialViewerUiCallback extends UiCallback {\n constructor(creator: string) {\n super(creator);\n }\n\n /**\n * Gets called when a material parameter has been changed using the graphical user interface\n * @param materialShading\n */\n public onMaterialShadingChanged = (\n materialShading: RapiMaterialShading,\n ): void => undefined;\n}\n","import Logger from '../../../common-core/src/logger';\nimport ScriptLoader from '../../../common-core/src/script-loader';\nimport {\n DependencyInjectionAssignment,\n DI_TYPE,\n} from '../../../common-core/src/di/container';\nimport InputManager from '../../../common-core/src/input/input-manager';\nimport ConfiguratorMeshGenerator from '../../../configurator-core/src/webgl/configurator-mesh-generator';\nimport { RapiAccess } from '../../../common-core/src/rapi-access';\nimport RoomleMaterialViewerUiCallback from '../roomle-material-viewer-ui-callback';\n\nexport const INJECTABLES: DependencyInjectionAssignment[] = [\n new DependencyInjectionAssignment('script-loader', ScriptLoader),\n new DependencyInjectionAssignment('logger', Logger),\n new DependencyInjectionAssignment(\n 'input-manager',\n InputManager,\n DI_TYPE.CONTEXT,\n ),\n new DependencyInjectionAssignment(\n 'configurator-mesh-generator',\n ConfiguratorMeshGenerator,\n ),\n new DependencyInjectionAssignment('rapi-access', RapiAccess),\n new DependencyInjectionAssignment(\n 'roomle-material-viewer-ui-callback',\n RoomleMaterialViewerUiCallback,\n DI_TYPE.CONTEXT,\n ),\n];\n","import './utils/global-definitions';\nimport { Main, BASE_CONTEXT } from '../../common-core/src/main';\nimport type Logger from '../../common-core/src/logger';\nimport RoomleDependencyInjection from '../../common-core/src/di/roomle-dependency-injection';\nimport RoomleMaterialViewer from './roomle-material-viewer';\nimport { INJECTABLES } from './utils/injectables';\n\nexport class MaterialViewer extends Main {\n private _viewer: RoomleMaterialViewer;\n\n protected setupGlobals(): void {\n //globals are initialized in bootFinished()\n }\n\n protected setupDependencies(): void {\n RoomleDependencyInjection.setup(INJECTABLES);\n this.lookup<Logger>('logger', this._context);\n }\n\n protected cleanUpGlobals(): void {\n throw new Error('Method not implemented.');\n }\n\n protected cleanUpDependencies(): void {\n throw new Error('Method not implemented.');\n }\n\n protected async bootFinished(): Promise<void> {\n this._viewer = new RoomleMaterialViewer(this._context);\n\n if (!window.RoomleMaterialViewer) {\n window.RoomleMaterialViewer = this._viewer;\n }\n }\n\n public getApi(): RoomleMaterialViewer {\n return this._viewer;\n }\n\n protected getContextName(): string {\n return BASE_CONTEXT.MATERIAL_VIEWER;\n }\n}\n"],"names":["MaterialViewerCameraBehaviour","CameraBehaviour","SIZE","MaterialViewerSceneManager","SceneManager","creator","offset","CANVAS_ID","CAMERA_TYPE","isWebGLRenderer","DEFAULT_WEBGPU_MAX_SAMPLES","DynamicLightSettingLoader","PREDEFINED_LIGHTSETTING","geometry","BoxGeometry","meshPhysicalMaterial","MaterialCreator","Mesh","initialFloorMaterial","BackgroundEnvironment","Color","CameraControl3D","boundingBox","Box3","materialId","resolve","material","materialShading","setMaterial","DoubleSide","version","getMaterialShading","_mode","_offset","gui","getGUI","type","color","metallic","_roughness","transmission","alpha","alphaCutoff","doubleSided","FrontSide","SphereGeometry","PlaneGeometry","FloorEnvironment","reject","rapiTexture","base64Image","width","height","repeatWidth","repeatHeight","maxTextures","image","texture","Texture","addExistingTexture","addTexture","RAPI_TEXTURE_TYPE","__decorateClass","inject","RoomleMaterialViewer","element","_reject","callback","options","sceneSettings","initData","params","url","intensity","rotation","maxLightSources","RoomleMaterialViewerUiCallback","UiCallback","INJECTABLES","DependencyInjectionAssignment","ScriptLoader","Logger","InputManager","DI_TYPE","ConfiguratorMeshGenerator","RapiAccess","MaterialViewer","Main","RoomleDependencyInjection","BASE_CONTEXT"],"mappings":"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"}
@@ -1209,6 +1209,7 @@ export declare type ConfigurationString = string;
1209
1209
  export declare interface ConfigurationUniqueIdAndHash {
1210
1210
  hash: ConfigurationHash;
1211
1211
  uniqueId: ConfigurationString;
1212
+ libraryId: string;
1212
1213
  }
1213
1214
 
1214
1215
  export declare class Configurator extends Main {
@@ -1627,7 +1628,6 @@ export declare interface ConfiguratorKernelContainer {
1627
1628
  AddOnSpotArray: AddOnSpotArray;
1628
1629
  PlanObjectList: PlanObjectList;
1629
1630
  ParamKeyValuePairArray: ParamKeyValuePairArray;
1630
- VariantArray: VariantArray;
1631
1631
  IntArray: IntArray;
1632
1632
  Kernel: ConfiguratorKernelClass;
1633
1633
  Unit: Unit;
@@ -4119,10 +4119,7 @@ export declare interface KernelComponent {
4119
4119
  hash: string;
4120
4120
  position: KernelVector3;
4121
4121
  rotation: KernelVector3;
4122
- transform: KernelMatrix4;
4123
4122
  globalTransform: KernelMatrix4;
4124
- bounds: KernelVector3;
4125
- boundingBox: KernelCube;
4126
4123
  boxForMeasurement: KernelCube;
4127
4124
  geometryBounds: KernelCube[];
4128
4125
  parameters: KernelParameter[];
@@ -4459,15 +4456,6 @@ export declare interface KernelVariable {
4459
4456
  value: string;
4460
4457
  }
4461
4458
 
4462
- export declare interface KernelVariant {
4463
- componentId: string;
4464
- articleNr: string;
4465
- customerPrice: number;
4466
- retailPrice: number;
4467
- currencySymbol: string;
4468
- parameterValues: KernelParameterValue[];
4469
- }
4470
-
4471
4459
  export declare interface KernelVector2f {
4472
4460
  x: number;
4473
4461
  y: number;
@@ -5638,6 +5626,7 @@ export declare class PlannerKernelAccess extends ConfiguratorKernelAccess {
5638
5626
  catalogItemLoaded(catalogItem: RapiItem): void;
5639
5627
  insertItems(itemList: Array<RapiItem | RapiConfiguration>, newUndoRedoStep?: boolean): Promise<RuntimeId[]>;
5640
5628
  duplicateItems(planObjects: PlanObject[]): PlanObject[];
5629
+ mergeItems(planObjects: PlanObject[]): void;
5641
5630
  private _rapiItemToKernelItem;
5642
5631
  planObjectDeleted(): void;
5643
5632
  requestPlanObjectDimensions(): void;
@@ -5793,7 +5782,6 @@ export declare interface PlannerKernelContainer {
5793
5782
  AddOnSpotArray: AddOnSpotArray_2;
5794
5783
  PlanObjectList: PlanObjectList;
5795
5784
  ParamKeyValuePairArray: ParamKeyValuePairArray_2;
5796
- VariantArray: VariantArray_2;
5797
5785
  IntArray: IntArray_2;
5798
5786
  Kernel: ConfiguratorKernelClass;
5799
5787
  Unit: Unit_2;
@@ -8656,6 +8644,11 @@ export declare class RoomlePlanner<P extends readonly PluginName[] = readonly []
8656
8644
  * @param itemList Array of PlanObjects
8657
8645
  */
8658
8646
  duplicateItems(itemList: PlanObject[]): PlanObject[];
8647
+ /**
8648
+ * Merges all planObjects in the array
8649
+ * @param itemList Array of PlanObjects
8650
+ */
8651
+ mergeItems(itemList: PlanObject[]): void;
8659
8652
  getScene(): Scene;
8660
8653
  updateScene(): void;
8661
8654
  getCameraOffset(): CanvasOffset;
@@ -10187,12 +10180,6 @@ export declare class VariableArray extends EmsArray<KernelVariable> {
10187
10180
  export declare class VariableArray_2 extends EmsArray<KernelVariable> {
10188
10181
  }
10189
10182
 
10190
- export declare class VariantArray extends EmsArray<KernelVariant> {
10191
- }
10192
-
10193
- export declare class VariantArray_2 extends EmsArray<KernelVariant> {
10194
- }
10195
-
10196
10183
  export declare interface VariantsList {
10197
10184
  componentId: string;
10198
10185
  parameterValues: ParamterKeyValue[];
package/lib/roomle-sdk.js CHANGED
@@ -1,4 +1,4 @@
1
- import { fN as s, fM as l, f$ as o, g1 as i, g6 as n, gb as r, fX as t, gc as f, fP as g, y as E, g7 as m, g4 as O, fY as P, fZ as b, g2 as c, x as C, J as d, g0 as M, ga as R, fO as I, g5 as T, g3 as _, fR as N, g8 as V, g9 as w, fT as x, fU as S, fQ as j, fW as u, fS as A, f_ as L, fV as G } from "./index-vA-vtmKN.mjs";
1
+ import { fN as s, fM as l, f$ as o, g1 as i, g6 as n, gb as r, fX as t, gc as f, fP as g, y as E, g7 as m, g4 as O, fY as P, fZ as b, g2 as c, x as C, J as d, g0 as M, ga as R, fO as I, g5 as T, g3 as _, fR as N, g8 as V, g9 as w, fT as x, fU as S, fQ as j, fW as u, fS as A, f_ as L, fV as G } from "./index-C9LjHx1P.mjs";
2
2
  export {
3
3
  s as CONFIGURATION_TYPE,
4
4
  l as CORE_PERMISSION_TO_DELETE,
@@ -76,8 +76,7 @@ export interface DockPairType {
76
76
  }
77
77
  export declare const CORE_EXPORT_TYPE: {
78
78
  readonly TC: 0;
79
- readonly IMOSIX: 1;
80
- readonly HOMAGIX: 2;
79
+ readonly HOMAGIX: 1;
81
80
  };
82
81
  export interface ExportType {
83
82
  value: Enumify<typeof CORE_EXPORT_TYPE>;
@@ -241,8 +240,6 @@ export interface AssetResponse {
241
240
  export interface Component {
242
241
  addOnSpots: AddOnSpot[];
243
242
  animations: Animation[];
244
- boundingBox: Cube;
245
- bounds: Vector3;
246
243
  boxForMeasurement: Cube;
247
244
  childAnimationTransformations: ComponentAnimationTransformation[];
248
245
  childIds: number[];
@@ -269,7 +266,6 @@ export interface Component {
269
266
  rootModuleIds: number[];
270
267
  rootSiblingIds: number[];
271
268
  rotation: Vector3;
272
- transform: Matrix4;
273
269
  type: PlanComponentType;
274
270
  valid: boolean;
275
271
  }
@@ -497,6 +493,7 @@ export interface RectangleReferencePoints {
497
493
  }
498
494
  export interface UniqueIdAndHash {
499
495
  hash: string;
496
+ libraryId: string;
500
497
  uniqueId: string;
501
498
  }
502
499
  export interface Variable {
@@ -38,8 +38,7 @@ exports.CORE_DOCK_PAIR_TYPE = {
38
38
  };
39
39
  exports.CORE_EXPORT_TYPE = {
40
40
  TC: 0,
41
- IMOSIX: 1,
42
- HOMAGIX: 2,
41
+ HOMAGIX: 1,
43
42
  };
44
43
  exports.CORE_LIGHT_SOURCE_TYPE = {
45
44
  SPOT: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"configuratorCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/configuratorCoreInterface.ts"],"names":[],"mappings":";;;AAqCa,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,SAAS;IACvB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;IACZ,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,CAAC;CACX,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACI,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,gBAAgB,GAAG;IAC9B,EAAE,EAAE,CAAC;IACL,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,CAAC;IACR,eAAe,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,4BAA4B,GAAG;IAC1C,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"configuratorCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/configuratorCoreInterface.ts"],"names":[],"mappings":";;;AAqCa,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,SAAS;IACvB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;IACZ,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,CAAC;CACX,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACI,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,gBAAgB,GAAG;IAC9B,EAAE,EAAE,CAAC;IACL,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,CAAC;IACR,eAAe,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,4BAA4B,GAAG;IAC1C,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;CACD,CAAC"}
@@ -76,8 +76,7 @@ export interface DockPairType {
76
76
  }
77
77
  export declare const CORE_EXPORT_TYPE: {
78
78
  readonly TC: 0;
79
- readonly IMOSIX: 1;
80
- readonly HOMAGIX: 2;
79
+ readonly HOMAGIX: 1;
81
80
  };
82
81
  export interface ExportType {
83
82
  value: Enumify<typeof CORE_EXPORT_TYPE>;
@@ -241,8 +240,6 @@ export interface AssetResponse {
241
240
  export interface Component {
242
241
  addOnSpots: AddOnSpot[];
243
242
  animations: Animation[];
244
- boundingBox: Cube;
245
- bounds: Vector3;
246
243
  boxForMeasurement: Cube;
247
244
  childAnimationTransformations: ComponentAnimationTransformation[];
248
245
  childIds: number[];
@@ -269,7 +266,6 @@ export interface Component {
269
266
  rootModuleIds: number[];
270
267
  rootSiblingIds: number[];
271
268
  rotation: Vector3;
272
- transform: Matrix4;
273
269
  type: PlanComponentType;
274
270
  valid: boolean;
275
271
  }
@@ -497,6 +493,7 @@ export interface RectangleReferencePoints {
497
493
  }
498
494
  export interface UniqueIdAndHash {
499
495
  hash: string;
496
+ libraryId: string;
500
497
  uniqueId: string;
501
498
  }
502
499
  export interface Variable {
@@ -38,8 +38,7 @@ exports.CORE_DOCK_PAIR_TYPE = {
38
38
  };
39
39
  exports.CORE_EXPORT_TYPE = {
40
40
  TC: 0,
41
- IMOSIX: 1,
42
- HOMAGIX: 2,
41
+ HOMAGIX: 1,
43
42
  };
44
43
  exports.CORE_LIGHT_SOURCE_TYPE = {
45
44
  SPOT: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"configuratorCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/configuratorCoreInterface.ts"],"names":[],"mappings":";;;AAqCa,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,SAAS;IACvB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;IACZ,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,CAAC;CACX,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACI,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,gBAAgB,GAAG;IAC9B,EAAE,EAAE,CAAC;IACL,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,CAAC;IACR,eAAe,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,4BAA4B,GAAG;IAC1C,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"configuratorCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/configuratorCoreInterface.ts"],"names":[],"mappings":";;;AAqCa,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,SAAS;IACvB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;IACZ,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,CAAC;CACX,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACI,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,gBAAgB,GAAG;IAC9B,EAAE,EAAE,CAAC;IACL,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,CAAC;IACR,eAAe,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,4BAA4B,GAAG;IAC1C,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;CACD,CAAC"}
@@ -1 +1 @@
1
- {"name": "roomle-core-hsc", "version": "2.71.0-alpha.21" }
1
+ {"name": "roomle-core-hsc", "version": "2.72.0-alpha.2" }
@@ -76,8 +76,7 @@ export interface DockPairType {
76
76
  }
77
77
  export declare const CORE_EXPORT_TYPE: {
78
78
  readonly TC: 0;
79
- readonly IMOSIX: 1;
80
- readonly HOMAGIX: 2;
79
+ readonly HOMAGIX: 1;
81
80
  };
82
81
  export interface ExportType {
83
82
  value: Enumify<typeof CORE_EXPORT_TYPE>;
@@ -241,8 +240,6 @@ export interface AssetResponse {
241
240
  export interface Component {
242
241
  addOnSpots: AddOnSpot[];
243
242
  animations: Animation[];
244
- boundingBox: Cube;
245
- bounds: Vector3;
246
243
  boxForMeasurement: Cube;
247
244
  childAnimationTransformations: ComponentAnimationTransformation[];
248
245
  childIds: number[];
@@ -269,7 +266,6 @@ export interface Component {
269
266
  rootModuleIds: number[];
270
267
  rootSiblingIds: number[];
271
268
  rotation: Vector3;
272
- transform: Matrix4;
273
269
  type: PlanComponentType;
274
270
  valid: boolean;
275
271
  }
@@ -497,6 +493,7 @@ export interface RectangleReferencePoints {
497
493
  }
498
494
  export interface UniqueIdAndHash {
499
495
  hash: string;
496
+ libraryId: string;
500
497
  uniqueId: string;
501
498
  }
502
499
  export interface Variable {
@@ -38,8 +38,7 @@ exports.CORE_DOCK_PAIR_TYPE = {
38
38
  };
39
39
  exports.CORE_EXPORT_TYPE = {
40
40
  TC: 0,
41
- IMOSIX: 1,
42
- HOMAGIX: 2,
41
+ HOMAGIX: 1,
43
42
  };
44
43
  exports.CORE_LIGHT_SOURCE_TYPE = {
45
44
  SPOT: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"configuratorCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/configuratorCoreInterface.ts"],"names":[],"mappings":";;;AAqCa,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,SAAS;IACvB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;IACZ,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,CAAC;CACX,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACI,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,gBAAgB,GAAG;IAC9B,EAAE,EAAE,CAAC;IACL,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,CAAC;IACR,eAAe,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,4BAA4B,GAAG;IAC1C,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"configuratorCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/configuratorCoreInterface.ts"],"names":[],"mappings":";;;AAqCa,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,SAAS;IACvB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,0BAA0B,GAAG;IACxC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAIE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;IACZ,aAAa,EAAE,CAAC;IAChB,mBAAmB,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,CAAC;CACX,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACI,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,gBAAgB,GAAG;IAC9B,EAAE,EAAE,CAAC;IACL,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,KAAK,EAAE,CAAC;IACR,eAAe,EAAE,CAAC;IAClB,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;IACL,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;CACC,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,4BAA4B,GAAG;IAC1C,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;CACD,CAAC"}
@@ -1,4 +1,4 @@
1
- import { fJ as C, r as z } from "./index-vA-vtmKN.mjs";
1
+ import { fJ as C, r as z } from "./index-C9LjHx1P.mjs";
2
2
  function T(f) {
3
3
  return f && f.__esModule && Object.prototype.hasOwnProperty.call(f, "default") ? f.default : f;
4
4
  }
@@ -105,4 +105,4 @@ I([
105
105
  export {
106
106
  M as default
107
107
  };
108
- //# sourceMappingURL=stats-helper-BVrsk2xy.mjs.map
108
+ //# sourceMappingURL=stats-helper-CQ3WmIXr.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"stats-helper-BVrsk2xy.mjs","sources":["../../../../node_modules/stats.js/build/stats.min.js","../../packages/common-core/src/utils/stats-helper.ts"],"sourcesContent":["// stats.js - http://github.com/mrdoob/stats.js\n(function(f,e){\"object\"===typeof exports&&\"undefined\"!==typeof module?module.exports=e():\"function\"===typeof define&&define.amd?define(e):f.Stats=e()})(this,function(){var f=function(){function e(a){c.appendChild(a.dom);return a}function u(a){for(var d=0;d<c.children.length;d++)c.children[d].style.display=d===a?\"block\":\"none\";l=a}var l=0,c=document.createElement(\"div\");c.style.cssText=\"position:fixed;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000\";c.addEventListener(\"click\",function(a){a.preventDefault();\nu(++l%c.children.length)},!1);var k=(performance||Date).now(),g=k,a=0,r=e(new f.Panel(\"FPS\",\"#0ff\",\"#002\")),h=e(new f.Panel(\"MS\",\"#0f0\",\"#020\"));if(self.performance&&self.performance.memory)var t=e(new f.Panel(\"MB\",\"#f08\",\"#201\"));u(0);return{REVISION:16,dom:c,addPanel:e,showPanel:u,begin:function(){k=(performance||Date).now()},end:function(){a++;var c=(performance||Date).now();h.update(c-k,200);if(c>g+1E3&&(r.update(1E3*a/(c-g),100),g=c,a=0,t)){var d=performance.memory;t.update(d.usedJSHeapSize/\n1048576,d.jsHeapSizeLimit/1048576)}return c},update:function(){k=this.end()},domElement:c,setMode:u}};f.Panel=function(e,f,l){var c=Infinity,k=0,g=Math.round,a=g(window.devicePixelRatio||1),r=80*a,h=48*a,t=3*a,v=2*a,d=3*a,m=15*a,n=74*a,p=30*a,q=document.createElement(\"canvas\");q.width=r;q.height=h;q.style.cssText=\"width:80px;height:48px\";var b=q.getContext(\"2d\");b.font=\"bold \"+9*a+\"px Helvetica,Arial,sans-serif\";b.textBaseline=\"top\";b.fillStyle=l;b.fillRect(0,0,r,h);b.fillStyle=f;b.fillText(e,t,v);\nb.fillRect(d,m,n,p);b.fillStyle=l;b.globalAlpha=.9;b.fillRect(d,m,n,p);return{dom:q,update:function(h,w){c=Math.min(c,h);k=Math.max(k,h);b.fillStyle=l;b.globalAlpha=1;b.fillRect(0,0,r,m);b.fillStyle=f;b.fillText(g(h)+\" \"+e+\" (\"+g(c)+\"-\"+g(k)+\")\",t,v);b.drawImage(q,d+a,m,n-a,p,d,m,n-a,p);b.fillRect(d+n-a,m,a,p);b.fillStyle=l;b.globalAlpha=.9;b.fillRect(d+n-a,m,a,g((1-h/w)*p))}}};return f});\n","import inject from '../di/inject';\nimport type { Panel } from '../../../typings/stats';\nimport type CacheHolder from '../services/cache-holder';\nimport type { WebGLInfo } from 'three';\nimport Stats from 'stats.js';\nimport {\n QUALITY_LEVELS,\n type QualityLevel,\n} from '../webgl/renderer/scene-renderer';\n\nexport default class StatsHelper {\n @inject\n protected _cacheHolder: CacheHolder;\n\n private _statPanels: Stats[] = [];\n private _drawPanel: Panel; // eslint-disable-line\n private _trianglesPanel: Panel; // eslint-disable-line\n private _geometryPanel: Panel; // eslint-disable-line\n private _texturePanel: Panel; // eslint-disable-line\n private _materialPanel: Panel; // eslint-disable-line\n private _qualityPanel: Panel; // eslint-disable-line\n\n constructor() {\n this._init();\n }\n\n private _init() {\n let fpsPanel = new Stats();\n fpsPanel.showPanel(0);\n fpsPanel.dom.style.cssText =\n 'position:absolute;top:0px;left:0px;z-index:110;';\n document.body.appendChild(fpsPanel.dom);\n this._statPanels.push(fpsPanel);\n\n let memoryPanel = new Stats();\n memoryPanel.showPanel(2);\n memoryPanel.dom.style.cssText =\n 'position:absolute;top:50px;left:0px;z-index:110;';\n document.body.appendChild(memoryPanel.dom);\n this._statPanels.push(memoryPanel);\n\n let drawPanel = new Stats();\n this._drawPanel = drawPanel.addPanel(\n new Stats.Panel('draw', '#0f0', '#000'),\n );\n drawPanel.showPanel(3);\n drawPanel.dom.style.cssText =\n 'position:absolute;top:100px;left:0px;z-index:110;';\n document.body.appendChild(drawPanel.dom);\n this._statPanels.push(drawPanel);\n\n let trianglesPanel = new Stats();\n this._trianglesPanel = trianglesPanel.addPanel(\n new Stats.Panel('poly', '#0f0', '#000'),\n );\n trianglesPanel.showPanel(3);\n trianglesPanel.dom.style.cssText =\n 'position:absolute;top:150px;left:0px;z-index:110;';\n document.body.appendChild(trianglesPanel.dom);\n this._statPanels.push(trianglesPanel);\n\n let geometryPanel = new Stats();\n this._geometryPanel = geometryPanel.addPanel(\n new Stats.Panel('geo', '#f00', '#000'),\n );\n geometryPanel.showPanel(3);\n geometryPanel.dom.style.cssText =\n 'position:absolute;top:200px;left:0px;z-index:110;';\n document.body.appendChild(geometryPanel.dom);\n this._statPanels.push(geometryPanel);\n\n let texturePanel = new Stats();\n this._texturePanel = texturePanel.addPanel(\n new Stats.Panel('tex', '#f00', '#000'),\n );\n texturePanel.showPanel(3);\n texturePanel.dom.style.cssText =\n 'position:absolute;top:250px;left:0px;z-index:110;';\n document.body.appendChild(texturePanel.dom);\n this._statPanels.push(texturePanel);\n\n let materialPanel = new Stats();\n this._materialPanel = materialPanel.addPanel(\n new Stats.Panel('mat', '#f00', '#000'),\n );\n materialPanel.showPanel(3);\n materialPanel.dom.style.cssText =\n 'position:absolute;top:300px;left:0px;z-index:110;';\n document.body.appendChild(materialPanel.dom);\n this._statPanels.push(materialPanel);\n\n let qualityPanel = new Stats();\n this._qualityPanel = qualityPanel.addPanel(\n new Stats.Panel('quality', '#fff', '#000'),\n );\n qualityPanel.showPanel(3);\n qualityPanel.dom.style.cssText =\n 'position:absolute;top:350px;left:0px;z-index:110;';\n document.body.appendChild(qualityPanel.dom);\n this._statPanels.push(qualityPanel);\n }\n\n public updateRenderInfo(info: WebGLInfo) {\n if (this._drawPanel && info.render.calls > 0) {\n this._drawPanel.update(info.render.calls, 500);\n }\n if (this._trianglesPanel && info.render.triangles > 0) {\n this._trianglesPanel.update(info.render.triangles, 10000);\n }\n if (this._geometryPanel && info.memory.geometries > 0) {\n this._geometryPanel.update(info.memory.geometries, 10000);\n }\n if (this._texturePanel && info.memory.textures > 0) {\n this._texturePanel.update(info.memory.textures, 10000);\n }\n if (this._materialPanel && this._cacheHolder.materialCache.size > 0) {\n this._materialPanel.update(this._cacheHolder.materialCache.size, 1000);\n }\n\n if (this._statPanels.length > 0) {\n this._statPanels.forEach((panel) => panel.update());\n }\n }\n\n public updateQualityInfo(qualityLevel: QualityLevel) {\n if (this._qualityPanel && qualityLevel) {\n const qualityValue = Object.values(QUALITY_LEVELS).indexOf(qualityLevel);\n this._qualityPanel.update(qualityValue, 5);\n }\n }\n}\n"],"names":["f","e","module","this","a","c","u","d","l","k","g","r","h","t","v","m","n","p","q","b","w","StatsHelper","fpsPanel","Stats","memoryPanel","drawPanel","trianglesPanel","geometryPanel","texturePanel","materialPanel","qualityPanel","info","panel","qualityLevel","qualityValue","QUALITY_LEVELS","__decorateClass","inject"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"stats-helper-CQ3WmIXr.mjs","sources":["../../../../node_modules/stats.js/build/stats.min.js","../../packages/common-core/src/utils/stats-helper.ts"],"sourcesContent":["// stats.js - http://github.com/mrdoob/stats.js\n(function(f,e){\"object\"===typeof exports&&\"undefined\"!==typeof module?module.exports=e():\"function\"===typeof define&&define.amd?define(e):f.Stats=e()})(this,function(){var f=function(){function e(a){c.appendChild(a.dom);return a}function u(a){for(var d=0;d<c.children.length;d++)c.children[d].style.display=d===a?\"block\":\"none\";l=a}var l=0,c=document.createElement(\"div\");c.style.cssText=\"position:fixed;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000\";c.addEventListener(\"click\",function(a){a.preventDefault();\nu(++l%c.children.length)},!1);var k=(performance||Date).now(),g=k,a=0,r=e(new f.Panel(\"FPS\",\"#0ff\",\"#002\")),h=e(new f.Panel(\"MS\",\"#0f0\",\"#020\"));if(self.performance&&self.performance.memory)var t=e(new f.Panel(\"MB\",\"#f08\",\"#201\"));u(0);return{REVISION:16,dom:c,addPanel:e,showPanel:u,begin:function(){k=(performance||Date).now()},end:function(){a++;var c=(performance||Date).now();h.update(c-k,200);if(c>g+1E3&&(r.update(1E3*a/(c-g),100),g=c,a=0,t)){var d=performance.memory;t.update(d.usedJSHeapSize/\n1048576,d.jsHeapSizeLimit/1048576)}return c},update:function(){k=this.end()},domElement:c,setMode:u}};f.Panel=function(e,f,l){var c=Infinity,k=0,g=Math.round,a=g(window.devicePixelRatio||1),r=80*a,h=48*a,t=3*a,v=2*a,d=3*a,m=15*a,n=74*a,p=30*a,q=document.createElement(\"canvas\");q.width=r;q.height=h;q.style.cssText=\"width:80px;height:48px\";var b=q.getContext(\"2d\");b.font=\"bold \"+9*a+\"px Helvetica,Arial,sans-serif\";b.textBaseline=\"top\";b.fillStyle=l;b.fillRect(0,0,r,h);b.fillStyle=f;b.fillText(e,t,v);\nb.fillRect(d,m,n,p);b.fillStyle=l;b.globalAlpha=.9;b.fillRect(d,m,n,p);return{dom:q,update:function(h,w){c=Math.min(c,h);k=Math.max(k,h);b.fillStyle=l;b.globalAlpha=1;b.fillRect(0,0,r,m);b.fillStyle=f;b.fillText(g(h)+\" \"+e+\" (\"+g(c)+\"-\"+g(k)+\")\",t,v);b.drawImage(q,d+a,m,n-a,p,d,m,n-a,p);b.fillRect(d+n-a,m,a,p);b.fillStyle=l;b.globalAlpha=.9;b.fillRect(d+n-a,m,a,g((1-h/w)*p))}}};return f});\n","import inject from '../di/inject';\nimport type { Panel } from '../../../typings/stats';\nimport type CacheHolder from '../services/cache-holder';\nimport type { WebGLInfo } from 'three';\nimport Stats from 'stats.js';\nimport {\n QUALITY_LEVELS,\n type QualityLevel,\n} from '../webgl/renderer/scene-renderer';\n\nexport default class StatsHelper {\n @inject\n protected _cacheHolder: CacheHolder;\n\n private _statPanels: Stats[] = [];\n private _drawPanel: Panel; // eslint-disable-line\n private _trianglesPanel: Panel; // eslint-disable-line\n private _geometryPanel: Panel; // eslint-disable-line\n private _texturePanel: Panel; // eslint-disable-line\n private _materialPanel: Panel; // eslint-disable-line\n private _qualityPanel: Panel; // eslint-disable-line\n\n constructor() {\n this._init();\n }\n\n private _init() {\n let fpsPanel = new Stats();\n fpsPanel.showPanel(0);\n fpsPanel.dom.style.cssText =\n 'position:absolute;top:0px;left:0px;z-index:110;';\n document.body.appendChild(fpsPanel.dom);\n this._statPanels.push(fpsPanel);\n\n let memoryPanel = new Stats();\n memoryPanel.showPanel(2);\n memoryPanel.dom.style.cssText =\n 'position:absolute;top:50px;left:0px;z-index:110;';\n document.body.appendChild(memoryPanel.dom);\n this._statPanels.push(memoryPanel);\n\n let drawPanel = new Stats();\n this._drawPanel = drawPanel.addPanel(\n new Stats.Panel('draw', '#0f0', '#000'),\n );\n drawPanel.showPanel(3);\n drawPanel.dom.style.cssText =\n 'position:absolute;top:100px;left:0px;z-index:110;';\n document.body.appendChild(drawPanel.dom);\n this._statPanels.push(drawPanel);\n\n let trianglesPanel = new Stats();\n this._trianglesPanel = trianglesPanel.addPanel(\n new Stats.Panel('poly', '#0f0', '#000'),\n );\n trianglesPanel.showPanel(3);\n trianglesPanel.dom.style.cssText =\n 'position:absolute;top:150px;left:0px;z-index:110;';\n document.body.appendChild(trianglesPanel.dom);\n this._statPanels.push(trianglesPanel);\n\n let geometryPanel = new Stats();\n this._geometryPanel = geometryPanel.addPanel(\n new Stats.Panel('geo', '#f00', '#000'),\n );\n geometryPanel.showPanel(3);\n geometryPanel.dom.style.cssText =\n 'position:absolute;top:200px;left:0px;z-index:110;';\n document.body.appendChild(geometryPanel.dom);\n this._statPanels.push(geometryPanel);\n\n let texturePanel = new Stats();\n this._texturePanel = texturePanel.addPanel(\n new Stats.Panel('tex', '#f00', '#000'),\n );\n texturePanel.showPanel(3);\n texturePanel.dom.style.cssText =\n 'position:absolute;top:250px;left:0px;z-index:110;';\n document.body.appendChild(texturePanel.dom);\n this._statPanels.push(texturePanel);\n\n let materialPanel = new Stats();\n this._materialPanel = materialPanel.addPanel(\n new Stats.Panel('mat', '#f00', '#000'),\n );\n materialPanel.showPanel(3);\n materialPanel.dom.style.cssText =\n 'position:absolute;top:300px;left:0px;z-index:110;';\n document.body.appendChild(materialPanel.dom);\n this._statPanels.push(materialPanel);\n\n let qualityPanel = new Stats();\n this._qualityPanel = qualityPanel.addPanel(\n new Stats.Panel('quality', '#fff', '#000'),\n );\n qualityPanel.showPanel(3);\n qualityPanel.dom.style.cssText =\n 'position:absolute;top:350px;left:0px;z-index:110;';\n document.body.appendChild(qualityPanel.dom);\n this._statPanels.push(qualityPanel);\n }\n\n public updateRenderInfo(info: WebGLInfo) {\n if (this._drawPanel && info.render.calls > 0) {\n this._drawPanel.update(info.render.calls, 500);\n }\n if (this._trianglesPanel && info.render.triangles > 0) {\n this._trianglesPanel.update(info.render.triangles, 10000);\n }\n if (this._geometryPanel && info.memory.geometries > 0) {\n this._geometryPanel.update(info.memory.geometries, 10000);\n }\n if (this._texturePanel && info.memory.textures > 0) {\n this._texturePanel.update(info.memory.textures, 10000);\n }\n if (this._materialPanel && this._cacheHolder.materialCache.size > 0) {\n this._materialPanel.update(this._cacheHolder.materialCache.size, 1000);\n }\n\n if (this._statPanels.length > 0) {\n this._statPanels.forEach((panel) => panel.update());\n }\n }\n\n public updateQualityInfo(qualityLevel: QualityLevel) {\n if (this._qualityPanel && qualityLevel) {\n const qualityValue = Object.values(QUALITY_LEVELS).indexOf(qualityLevel);\n this._qualityPanel.update(qualityValue, 5);\n }\n }\n}\n"],"names":["f","e","module","this","a","c","u","d","l","k","g","r","h","t","v","m","n","p","q","b","w","StatsHelper","fpsPanel","Stats","memoryPanel","drawPanel","trianglesPanel","geometryPanel","texturePanel","materialPanel","qualityPanel","info","panel","qualityLevel","qualityValue","QUALITY_LEVELS","__decorateClass","inject"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
- import { aH as L, aI as Le, aJ as gl, aK as hs, aL as oh, aM as Po, aN as ye, aO as P, aP as _e, aQ as Ve, aR as Zs, aS as ut, aT as ot, aU as xe, aV as St, aW as ah, aX as uh, aY as Xe, F as Rn, j as fs, aZ as vr, a_ as Tt, a$ as lh, b0 as ch, b1 as dh, b2 as Uo, b3 as hh, b4 as ph, b5 as fh, b6 as gh, b7 as mh, b8 as xh, b9 as Th, ba as yh, bb as _h, bc as Lo, bd as ml, be as yt, d as jt, bf as xl, bg as Aa, f as Ut, bh as Cr, bi as bh, n as Nh, bj as qe, bk as Xt, bl as Re, bm as Kt, bn as Yt, aG as os, bo as An, bp as Ct, bq as $t, br as Sh, as as k, bs as Rh, bt as Ah, bu as Io, bv as Go, bw as zi, bx as Oo, T as Vo, by as Is, m as vh, bz as W, bA as Ch, bB as Hn, bC as Tl, bD as ko, bE as Hs, bF as Eh, bG as Er, bH as De, bI as Wr, bJ as Gn, bK as Hr, bL as gs, bM as Wi, bN as On, bO as yl, bP as rt, bQ as _l, bR as bl, bS as Nl, bT as Sl, bU as Rl, bV as qr, bW as Al, bX as vl, bY as va, bZ as qs, b_ as Qe, b$ as wh, c0 as Cl, c1 as El, c2 as wl, c3 as Ml, c4 as Bl, c5 as Fl, c6 as Dl, c7 as Pl, c8 as Ul, c9 as Ll, ca as Il, cb as Gl, cc as Mh, cd as Bh, ce as Fh, cf as Vn, cg as wr, ch as Mr, ci as Br, cj as ms, ck as Ol, cl as Vl, cm as kl, cn as $l, co as zl, cp as Wl, cq as Hl, cr as ql, cs as Dh, ct as Ph, cu as Xl, cv as Kl, cw as vn, cx as Cn, cy as Gs, cz as Uh, cA as $o, cB as zo, cC as Wo, cD as wt, cE as Ho, cF as qo, cG as mr, cH as xr, cI as Tr, cJ as yr, cK as Ca, cL as Ea, cM as wa, cN as Ma, cO as Hi, cP as qi, cQ as Xi, cR as Ki, cS as Yi, cT as Fr, cU as Qi, cV as ji, cW as Zi, cX as Ji, cY as eo, cZ as to, c_ as so, c$ as no, d0 as ro, d1 as io, d2 as oo, d3 as ao, d4 as uo, d5 as lo, d6 as co, d7 as ho, d8 as po, d9 as fo, da as Dr, db as go, dc as Yl, dd as Lh, de as Ih, df as Gh, dg as Oh, dh as Vh, di as kh, dj as $h, aw as zh, dk as Wh, dl as Hh, dm as qh, dn as Xh, az as Xo, dp as Ba, dq as Kh, dr as Yh, ds as Qh, dt as jh, du as Ql, dv as Zh, dw as Jh, dx as ep, dy as tp, dz as sp, dA as np, dB as rp, dC as ip, dD as op, dE as ap, dF as up, dG as lp, dH as cp, dI as dp, dJ as hp, dK as pp, dL as fp, dM as gp, dN as mp, dO as jl, dP as xp, dQ as Tp, dR as yp, dS as _p, dT as bp, dU as Np, dV as Zl, dW as Sp, dX as Jl, dY as Rp, B as ec, dZ as Ap, d_ as _r, d$ as vp, e0 as Pr, e1 as Ur, e2 as ii, e3 as oi, e4 as Cp, e5 as Ep, e6 as wp, e7 as Ko, e8 as Mp, e9 as Bp, ea as Fp, aA as ai, eb as Dp, ec as Pp, ed as Up } from "./index-vA-vtmKN.mjs";
2
- import { eh as _S, ei as bS, ej as NS, ek as SS, el as RS, em as AS, h as vS, en as CS, eo as ES, ep as wS, eq as MS, er as BS, es as FS, et as DS, eu as PS, ev as US, ew as LS, ex as IS, ey as GS, ez as OS, eA as VS, eB as kS, eC as $S, eD as zS, eE as WS, eF as HS, eG as qS, eH as XS, eI as KS, eJ as YS, eK as QS, eL as jS, eM as ZS, ee as JS, eN as e0, eO as t0, ef as s0, eP as n0, eQ as r0, eR as i0, eS as o0, eT as a0, eU as u0, eV as l0, eW as c0, eX as d0, eY as h0, eZ as p0, aB as f0, aD as g0, e_ as m0, e$ as x0, f0 as T0, f1 as y0, f2 as _0, eg as b0, f3 as N0, f4 as S0, f5 as R0, f6 as A0, f7 as v0, f8 as C0, at as E0, f9 as w0, fa as M0, fb as B0, fc as F0, fd as D0, fe as P0, ff as U0, fg as L0, fh as I0, fi as G0, fj as O0, fk as V0, fl as k0, fm as $0, fn as z0, aF as W0, fo as H0, fp as q0, fq as X0, fr as K0, fs as Y0, ft as Q0, fu as j0, fv as Z0, fw as J0, fx as eR, fy as tR, fz as sR, fA as nR, fB as rR, fC as iR, fD as oR, fE as aR, fF as uR, fG as lR, fH as cR, fI as dR } from "./index-vA-vtmKN.mjs";
1
+ import { aH as L, aI as Le, aJ as gl, aK as hs, aL as oh, aM as Po, aN as ye, aO as P, aP as _e, aQ as Ve, aR as Zs, aS as ut, aT as ot, aU as xe, aV as St, aW as ah, aX as uh, aY as Xe, F as Rn, j as fs, aZ as vr, a_ as Tt, a$ as lh, b0 as ch, b1 as dh, b2 as Uo, b3 as hh, b4 as ph, b5 as fh, b6 as gh, b7 as mh, b8 as xh, b9 as Th, ba as yh, bb as _h, bc as Lo, bd as ml, be as yt, d as jt, bf as xl, bg as Aa, f as Ut, bh as Cr, bi as bh, n as Nh, bj as qe, bk as Xt, bl as Re, bm as Kt, bn as Yt, aG as os, bo as An, bp as Ct, bq as $t, br as Sh, as as k, bs as Rh, bt as Ah, bu as Io, bv as Go, bw as zi, bx as Oo, T as Vo, by as Is, m as vh, bz as W, bA as Ch, bB as Hn, bC as Tl, bD as ko, bE as Hs, bF as Eh, bG as Er, bH as De, bI as Wr, bJ as Gn, bK as Hr, bL as gs, bM as Wi, bN as On, bO as yl, bP as rt, bQ as _l, bR as bl, bS as Nl, bT as Sl, bU as Rl, bV as qr, bW as Al, bX as vl, bY as va, bZ as qs, b_ as Qe, b$ as wh, c0 as Cl, c1 as El, c2 as wl, c3 as Ml, c4 as Bl, c5 as Fl, c6 as Dl, c7 as Pl, c8 as Ul, c9 as Ll, ca as Il, cb as Gl, cc as Mh, cd as Bh, ce as Fh, cf as Vn, cg as wr, ch as Mr, ci as Br, cj as ms, ck as Ol, cl as Vl, cm as kl, cn as $l, co as zl, cp as Wl, cq as Hl, cr as ql, cs as Dh, ct as Ph, cu as Xl, cv as Kl, cw as vn, cx as Cn, cy as Gs, cz as Uh, cA as $o, cB as zo, cC as Wo, cD as wt, cE as Ho, cF as qo, cG as mr, cH as xr, cI as Tr, cJ as yr, cK as Ca, cL as Ea, cM as wa, cN as Ma, cO as Hi, cP as qi, cQ as Xi, cR as Ki, cS as Yi, cT as Fr, cU as Qi, cV as ji, cW as Zi, cX as Ji, cY as eo, cZ as to, c_ as so, c$ as no, d0 as ro, d1 as io, d2 as oo, d3 as ao, d4 as uo, d5 as lo, d6 as co, d7 as ho, d8 as po, d9 as fo, da as Dr, db as go, dc as Yl, dd as Lh, de as Ih, df as Gh, dg as Oh, dh as Vh, di as kh, dj as $h, aw as zh, dk as Wh, dl as Hh, dm as qh, dn as Xh, az as Xo, dp as Ba, dq as Kh, dr as Yh, ds as Qh, dt as jh, du as Ql, dv as Zh, dw as Jh, dx as ep, dy as tp, dz as sp, dA as np, dB as rp, dC as ip, dD as op, dE as ap, dF as up, dG as lp, dH as cp, dI as dp, dJ as hp, dK as pp, dL as fp, dM as gp, dN as mp, dO as jl, dP as xp, dQ as Tp, dR as yp, dS as _p, dT as bp, dU as Np, dV as Zl, dW as Sp, dX as Jl, dY as Rp, B as ec, dZ as Ap, d_ as _r, d$ as vp, e0 as Pr, e1 as Ur, e2 as ii, e3 as oi, e4 as Cp, e5 as Ep, e6 as wp, e7 as Ko, e8 as Mp, e9 as Bp, ea as Fp, aA as ai, eb as Dp, ec as Pp, ed as Up } from "./index-C9LjHx1P.mjs";
2
+ import { eh as _S, ei as bS, ej as NS, ek as SS, el as RS, em as AS, h as vS, en as CS, eo as ES, ep as wS, eq as MS, er as BS, es as FS, et as DS, eu as PS, ev as US, ew as LS, ex as IS, ey as GS, ez as OS, eA as VS, eB as kS, eC as $S, eD as zS, eE as WS, eF as HS, eG as qS, eH as XS, eI as KS, eJ as YS, eK as QS, eL as jS, eM as ZS, ee as JS, eN as e0, eO as t0, ef as s0, eP as n0, eQ as r0, eR as i0, eS as o0, eT as a0, eU as u0, eV as l0, eW as c0, eX as d0, eY as h0, eZ as p0, aB as f0, aD as g0, e_ as m0, e$ as x0, f0 as T0, f1 as y0, f2 as _0, eg as b0, f3 as N0, f4 as S0, f5 as R0, f6 as A0, f7 as v0, f8 as C0, at as E0, f9 as w0, fa as M0, fb as B0, fc as F0, fd as D0, fe as P0, ff as U0, fg as L0, fh as I0, fi as G0, fj as O0, fk as V0, fl as k0, fm as $0, fn as z0, aF as W0, fo as H0, fp as q0, fq as X0, fr as K0, fs as Y0, ft as Q0, fu as j0, fv as Z0, fw as J0, fx as eR, fy as tR, fz as sR, fA as nR, fB as rR, fC as iR, fD as oR, fE as aR, fF as uR, fG as lR, fH as cR, fI as dR } from "./index-C9LjHx1P.mjs";
3
3
  /**
4
4
  * @license
5
5
  * Copyright 2010-2025 Three.js Authors
@@ -27622,4 +27622,4 @@ export {
27622
27622
  L as warn,
27623
27623
  ye as warnOnce
27624
27624
  };
27625
- //# sourceMappingURL=three.webgpu-B22ruPXP.mjs.map
27625
+ //# sourceMappingURL=three.webgpu-DbyBQGBo.mjs.map