@roomle/web-sdk 3.4.0 → 3.5.0-alpha.2
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.
- package/lib/{BufferGeometry-Br8QIDeK.mjs → BufferGeometry-zhwL66xZ.mjs} +170 -178
- package/lib/BufferGeometry-zhwL66xZ.mjs.map +1 -0
- package/lib/ConfiguratorKernel.wasm +0 -0
- package/lib/{GLTFExporter-DUjuGznV.mjs → GLTFExporter-DmFnAzRr.mjs} +24 -24
- package/lib/GLTFExporter-DmFnAzRr.mjs.map +1 -0
- package/lib/{PointLightHelper-_pWwb-rd.mjs → PointLightHelper-SLT01bR2.mjs} +19 -19
- package/lib/PointLightHelper-SLT01bR2.mjs.map +1 -0
- package/lib/RoomleCore.wasm +0 -0
- package/lib/RoomleToolsCore.wasm +0 -0
- package/lib/{SpotLightHelper-DiuKfHVi.mjs → SpotLightHelper-CC4_xqY4.mjs} +24 -24
- package/lib/SpotLightHelper-CC4_xqY4.mjs.map +1 -0
- package/lib/USDZExporter-Cpnpkq95.mjs +545 -0
- package/lib/USDZExporter-Cpnpkq95.mjs.map +1 -0
- package/lib/{banana-for-scale-Bio4mpMQ.mjs → banana-for-scale-evc4Yb9f.mjs} +2 -2
- package/lib/{banana-for-scale-Bio4mpMQ.mjs.map → banana-for-scale-evc4Yb9f.mjs.map} +1 -1
- package/lib/component-dimensioning-Dvorqw_7.mjs +229 -0
- package/lib/component-dimensioning-Dvorqw_7.mjs.map +1 -0
- package/lib/{continuous-drawing-helper-BYjzGaWD.mjs → continuous-drawing-helper-BfZl8h5N.mjs} +2 -2
- package/lib/{continuous-drawing-helper-BYjzGaWD.mjs.map → continuous-drawing-helper-BfZl8h5N.mjs.map} +1 -1
- package/lib/homag-intelligence-CJgnNjgW.mjs +547 -0
- package/lib/homag-intelligence-CJgnNjgW.mjs.map +1 -0
- package/lib/{imos-ix-poc-export-helper-Bl13RKd1.mjs → imos-ix-poc-export-helper--y8HNzbW.mjs} +2 -2
- package/lib/{imos-ix-poc-export-helper-Bl13RKd1.mjs.map → imos-ix-poc-export-helper--y8HNzbW.mjs.map} +1 -1
- package/lib/{index-DYoZpNEJ.mjs → index-E00NytVZ.mjs} +18423 -15546
- package/lib/index-E00NytVZ.mjs.map +1 -0
- package/lib/{material-viewer-DqZ9kv7j.mjs → material-viewer-DdvFNwKG.mjs} +2 -2
- package/lib/{material-viewer-DqZ9kv7j.mjs.map → material-viewer-DdvFNwKG.mjs.map} +1 -1
- package/lib/roomle-sdk.d.ts +46 -14
- package/lib/roomle-sdk.js +22 -22
- package/lib/static/roomle-core-hsc/ConfiguratorKernel.wasm +0 -0
- package/lib/static/roomle-core-hsc/RoomleCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/RoomleServiceCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/RoomleToolsCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.d.ts +8 -4
- package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.js +6 -2
- package/lib/static/roomle-core-hsc/embind/plannerCoreInterface.js.map +1 -1
- package/lib/static/roomle-core-hsc/package.json +1 -1
- package/lib/static/roomle-core-hsc/plannerCoreInterface.d.ts +8 -4
- package/lib/static/roomle-core-hsc/plannerCoreInterface.js +6 -2
- package/lib/static/roomle-core-hsc/plannerCoreInterface.js.map +1 -1
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts +8 -4
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.js +6 -2
- package/lib/static/roomle-core-hsc/src/embind/plannerCoreInterface.js.map +1 -1
- package/lib/static/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleServiceCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
- package/lib/{stats-helper-BedaceYL.mjs → stats-helper-NaTxB7Fu.mjs} +2 -2
- package/lib/{stats-helper-BedaceYL.mjs.map → stats-helper-NaTxB7Fu.mjs.map} +1 -1
- package/lib/{three.webgpu-Bk8XgilA.mjs → three.webgpu-DN1k7B0u.mjs} +7222 -4815
- package/lib/three.webgpu-DN1k7B0u.mjs.map +1 -0
- package/lib/{tools-core-D1vOTlAR.mjs → tools-core-By95pE-u.mjs} +2 -2
- package/lib/{tools-core-D1vOTlAR.mjs.map → tools-core-By95pE-u.mjs.map} +1 -1
- package/package.json +3 -3
- package/lib/BufferGeometry-Br8QIDeK.mjs.map +0 -1
- package/lib/GLTFExporter-DUjuGznV.mjs.map +0 -1
- package/lib/PointLightHelper-_pWwb-rd.mjs.map +0 -1
- package/lib/SpotLightHelper-DiuKfHVi.mjs.map +0 -1
- package/lib/USDZExporter-B9ygWQMw.mjs +0 -545
- package/lib/USDZExporter-B9ygWQMw.mjs.map +0 -1
- package/lib/component-dimensioning-Bar2YYNs.mjs +0 -148
- package/lib/component-dimensioning-Bar2YYNs.mjs.map +0 -1
- package/lib/homag-intelligence-Bb8gfi80.mjs +0 -1626
- package/lib/homag-intelligence-Bb8gfi80.mjs.map +0 -1
- package/lib/index-DYoZpNEJ.mjs.map +0 -1
- package/lib/three.webgpu-Bk8XgilA.mjs.map +0 -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-
|
|
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-E00NytVZ.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-
|
|
450
|
+
//# sourceMappingURL=material-viewer-DdvFNwKG.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"material-viewer-DqZ9kv7j.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 null,\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(), null),\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 {\n if (!this._mesh) {\n return null;\n }\n return new Box3().setFromObject(this._mesh);\n }\n\n getGeometryBounds(): Box3 {\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 {\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-DdvFNwKG.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 null,\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(), null),\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 {\n if (!this._mesh) {\n return null;\n }\n return new Box3().setFromObject(this._mesh);\n }\n\n getGeometryBounds(): Box3 {\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 {\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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"}
|
package/lib/roomle-sdk.d.ts
CHANGED
|
@@ -207,11 +207,17 @@ export declare interface AORenderPassParameters {
|
|
|
207
207
|
screenSpaceRadius: boolean;
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
+
/**
|
|
211
|
+
* Currently this is a Configurator-specific App State, not a generic one.
|
|
212
|
+
* If we need it for other modules, we should create separate interfaces per context.
|
|
213
|
+
*/
|
|
210
214
|
export declare interface AppState {
|
|
211
215
|
locale?: string;
|
|
212
216
|
kernelInstance?: any;
|
|
213
217
|
kernelContainer?: any;
|
|
218
|
+
/** @deprecated Use `configurationRuntimeId` instead */
|
|
214
219
|
planObjectId?: number;
|
|
220
|
+
configurationRuntimeId?: number;
|
|
215
221
|
}
|
|
216
222
|
|
|
217
223
|
export declare type ArticleNumber = string;
|
|
@@ -1002,6 +1008,7 @@ export declare interface CommonInitData {
|
|
|
1002
1008
|
export declare abstract class CommonKernelAccess implements LifeCycleCallbacks, Context {
|
|
1003
1009
|
_creator_: string;
|
|
1004
1010
|
protected _rapiAccess: RapiAccess;
|
|
1011
|
+
private _materialProvider;
|
|
1005
1012
|
protected _scriptLoader: ScriptLoader;
|
|
1006
1013
|
protected _kernelIo: KernelIo;
|
|
1007
1014
|
protected _dataSyncer: DataSyncer;
|
|
@@ -1063,7 +1070,7 @@ export declare abstract class CommonKernelAccess implements LifeCycleCallbacks,
|
|
|
1063
1070
|
private _flushSubComponentsWaiters;
|
|
1064
1071
|
protected isReady(): void;
|
|
1065
1072
|
protected addDebugInfo(): void;
|
|
1066
|
-
getConfigurationData(
|
|
1073
|
+
getConfigurationData(configurationRuntimeId: number): Promise<RapiConfiguration>;
|
|
1067
1074
|
requestAssets(requestedAssets: AssetRequest[]): void;
|
|
1068
1075
|
loadComponent(componentIds: string[]): void;
|
|
1069
1076
|
loadItemConfigurations(itemIds: string[]): Promise<void>;
|
|
@@ -1185,6 +1192,7 @@ export declare class Configurator extends Main {
|
|
|
1185
1192
|
protected setupDependencies(): void;
|
|
1186
1193
|
protected cleanUpGlobals(): void;
|
|
1187
1194
|
protected cleanUpDependencies(): void;
|
|
1195
|
+
/** Currently the only module that uses AppState — all others ignore the parameter. */
|
|
1188
1196
|
protected setupGlobals(appState?: AppState): void;
|
|
1189
1197
|
getApi(): RoomleConfigurator;
|
|
1190
1198
|
protected bootFinished(): Promise<void>;
|
|
@@ -1210,7 +1218,7 @@ export declare class ConfiguratorCameraBehaviour extends CameraBehaviour {
|
|
|
1210
1218
|
}
|
|
1211
1219
|
|
|
1212
1220
|
export declare class ConfiguratorContext {
|
|
1213
|
-
|
|
1221
|
+
configurationRuntimeId: number;
|
|
1214
1222
|
planElementId: number;
|
|
1215
1223
|
rootComponentId: number;
|
|
1216
1224
|
dockingRootComponentId: number;
|
|
@@ -1703,6 +1711,12 @@ export declare class ConfiguratorSceneManager extends SceneManager implements Co
|
|
|
1703
1711
|
private _isComponentDimensionsVisible;
|
|
1704
1712
|
private _dimensionUpdateDebounced;
|
|
1705
1713
|
constructor(creator: string, offset: CanvasOffset, mode: Enumify_3<typeof CAMERA_TYPE>);
|
|
1714
|
+
/**
|
|
1715
|
+
* Single point for deciding whether to push HTML label positions to the UI.
|
|
1716
|
+
* In ThreeJS mode this is a no-op — labels render in-scene.
|
|
1717
|
+
* In HTML mode the scene manager must push screen positions after any change.
|
|
1718
|
+
*/
|
|
1719
|
+
private _notifyDimensionLabels;
|
|
1706
1720
|
private _initOptionalModules;
|
|
1707
1721
|
protected _changeCameraBehaviour(cameraBehaviour: CameraBehaviour): void;
|
|
1708
1722
|
disableEvents(): void;
|
|
@@ -1716,6 +1730,7 @@ export declare class ConfiguratorSceneManager extends SceneManager implements Co
|
|
|
1716
1730
|
private _cancelDockings;
|
|
1717
1731
|
updateAddons(): void;
|
|
1718
1732
|
private _onHoverOn;
|
|
1733
|
+
private _onDimensionsAdded;
|
|
1719
1734
|
private _onHoverOff;
|
|
1720
1735
|
private _highlightComponent;
|
|
1721
1736
|
protected shouldClearShadowsAndAO(): boolean;
|
|
@@ -1729,7 +1744,7 @@ export declare class ConfiguratorSceneManager extends SceneManager implements Co
|
|
|
1729
1744
|
display(component: RoomleComponent): void;
|
|
1730
1745
|
protected setRootComponentId(rootComponentId: number): void;
|
|
1731
1746
|
debugSceneGraph(id?: number): void;
|
|
1732
|
-
debugScene(): Scene
|
|
1747
|
+
debugScene(): Scene<Object3DEventMap>;
|
|
1733
1748
|
private _printObjectGraph;
|
|
1734
1749
|
clearScene(): void;
|
|
1735
1750
|
planObjectConstructionDone(_planObject: PlanObjectKernel): void;
|
|
@@ -1738,7 +1753,7 @@ export declare class ConfiguratorSceneManager extends SceneManager implements Co
|
|
|
1738
1753
|
preparePerspectiveImage(options?: PrepareImageOptions, _isolationMode?: boolean): Promise<Base64Image>;
|
|
1739
1754
|
renderImage(renderOptions: RenderOptions): Promise<Base64Image>;
|
|
1740
1755
|
preparePartImage(partId: number, options: PrepareImageOptions): Promise<any>;
|
|
1741
|
-
protected
|
|
1756
|
+
protected _calculateImageCameraTarget(spacing?: number, showDimensions?: boolean): CameraTarget;
|
|
1742
1757
|
private _externalMeshesAndMaterialsReady;
|
|
1743
1758
|
prepareTopImage(options?: PrepareImageOptions, _isolationMode?: boolean): Promise<Base64Image>;
|
|
1744
1759
|
enableDragIn(dragEvent: DragEvent): void;
|
|
@@ -2196,11 +2211,12 @@ export declare class ConfiguratorViewModel implements ConfiguratorKernelCallback
|
|
|
2196
2211
|
configurationLoaded(conversationId: number, objectId: number, componentId: number, _hash: string, _errors: any): void;
|
|
2197
2212
|
finishParameterChange(resolve: () => void, _reject: () => void): void;
|
|
2198
2213
|
planObjectConfigurationUpdated(planObjectId: number, _configuration: ConfigurationString, _hash: string, pendingDocking: boolean): void;
|
|
2199
|
-
planObjectCreated(_conversationId: number,
|
|
2214
|
+
planObjectCreated(_conversationId: number, configurationRuntimeId: number): void;
|
|
2200
2215
|
planObjectUpdated(planObject: PlanObjectKernel, pendingDocking: boolean): void;
|
|
2201
2216
|
sceneCleared(): void;
|
|
2202
2217
|
setListener(listener: ConfiguratorViewModelCallbackI): void;
|
|
2203
|
-
getBoundingBox(): Box3;
|
|
2218
|
+
getBoundingBox(excludeEnvironment?: boolean): Box3;
|
|
2219
|
+
private getBoundingBoxOfComponent;
|
|
2204
2220
|
getBoundingBoxOfGeometry(): Box3;
|
|
2205
2221
|
getBoundingBoxWithPreviews(): Box3;
|
|
2206
2222
|
hasPreviews(): boolean;
|
|
@@ -2359,8 +2375,12 @@ export declare const CORE_DOCK_PAIR_TYPE: {
|
|
|
2359
2375
|
};
|
|
2360
2376
|
|
|
2361
2377
|
export declare const CORE_HELP_LINE_TYPE: {
|
|
2362
|
-
readonly
|
|
2363
|
-
readonly
|
|
2378
|
+
readonly NONE: 0;
|
|
2379
|
+
readonly WALL_SNAP_LEVEL: 1;
|
|
2380
|
+
readonly WALL_SNAP_LEVEL_SNAPPED: 2;
|
|
2381
|
+
readonly WALL_EDGE: 3;
|
|
2382
|
+
readonly DOCKING_VECTOR: 4;
|
|
2383
|
+
readonly OBJECT_CONTOUR: 5;
|
|
2364
2384
|
};
|
|
2365
2385
|
|
|
2366
2386
|
export declare const CORE_PERMISSION_TO_DELETE: {
|
|
@@ -3229,6 +3249,7 @@ export declare interface FeatureFlags {
|
|
|
3229
3249
|
/* Excluded from this release type: interiorLights */
|
|
3230
3250
|
/* Excluded from this release type: advancedDimensioning */
|
|
3231
3251
|
/* Excluded from this release type: webGpu */
|
|
3252
|
+
/* Excluded from this release type: useHTMLMeasurementLabels */
|
|
3232
3253
|
}
|
|
3233
3254
|
|
|
3234
3255
|
export declare interface FetchOptions {
|
|
@@ -3519,6 +3540,7 @@ export declare interface GlueLogic {
|
|
|
3519
3540
|
newPosDataFromId(id: string): Promise<PosGroup>;
|
|
3520
3541
|
newPosDataFromGroup(posDataJson: PosGroup): Promise<PosGroup>;
|
|
3521
3542
|
getGroupDataForOrder(roomlePlannerId?: string): Promise<HiOrderData>;
|
|
3543
|
+
getMaterialUrl(materialId: string, groupOrModuleId?: string): string | null;
|
|
3522
3544
|
}
|
|
3523
3545
|
|
|
3524
3546
|
export declare interface GroundReflectionConstructorParameters {
|
|
@@ -3584,7 +3606,7 @@ export declare class HdrEnvironmentLoader implements Context {
|
|
|
3584
3606
|
private _environmentMap;
|
|
3585
3607
|
private _envChangedCallback;
|
|
3586
3608
|
private _exrLoader;
|
|
3587
|
-
private
|
|
3609
|
+
private _hdrLoader;
|
|
3588
3610
|
constructor(creator: string);
|
|
3589
3611
|
loadUrl(_renderer: WebGLRenderer | WebGPURenderer, url: string): Promise<EnvironmentMapResult>;
|
|
3590
3612
|
private _loadExr;
|
|
@@ -4553,6 +4575,7 @@ export declare interface LoadExternalObjectGroupResult {
|
|
|
4553
4575
|
export declare interface LoadExternalObjectOptions {
|
|
4554
4576
|
dragIn?: boolean;
|
|
4555
4577
|
newAction?: boolean;
|
|
4578
|
+
continueAction?: boolean;
|
|
4556
4579
|
findFreeSpaceInPlan?: boolean;
|
|
4557
4580
|
correctArrangement?: boolean;
|
|
4558
4581
|
moduleIdMap?: Array<{
|
|
@@ -4610,6 +4633,11 @@ export declare const enum MAIL_TYPE {
|
|
|
4610
4633
|
|
|
4611
4634
|
export declare abstract class Main implements LifeCycleCallbacks {
|
|
4612
4635
|
protected _context: string;
|
|
4636
|
+
/**
|
|
4637
|
+
* @todo AppState is currently Configurator-specific (see AppState JSDoc).
|
|
4638
|
+
* If other modules (Planner, GLB-Viewer, etc.) need boot settings,
|
|
4639
|
+
* this should use a generic base type with module-specific extensions.
|
|
4640
|
+
*/
|
|
4613
4641
|
protected abstract setupGlobals(settings?: AppState): void;
|
|
4614
4642
|
protected abstract setupDependencies(): void;
|
|
4615
4643
|
protected abstract cleanUpGlobals(): void;
|
|
@@ -4640,6 +4668,11 @@ export declare interface MasterData {
|
|
|
4640
4668
|
libraryId: string;
|
|
4641
4669
|
modules: MDModuleInfo[];
|
|
4642
4670
|
attributes: MDAttributeInfo[];
|
|
4671
|
+
materialProviders?: Map<string, MaterialProvider>;
|
|
4672
|
+
}
|
|
4673
|
+
|
|
4674
|
+
export declare interface MaterialProvider {
|
|
4675
|
+
url: string;
|
|
4643
4676
|
}
|
|
4644
4677
|
|
|
4645
4678
|
export declare const enum MaterialSourceType {
|
|
@@ -4833,6 +4866,7 @@ export declare class MeshGenerator implements Context {
|
|
|
4833
4866
|
protected _geometryComponentMaterialCache: Map<string, string>;
|
|
4834
4867
|
private _initData;
|
|
4835
4868
|
protected _rapiAccess: RapiAccess;
|
|
4869
|
+
private _materialProvider;
|
|
4836
4870
|
protected _dataSyncer: DataSyncer;
|
|
4837
4871
|
protected _singlePromiseFactory: SinglePromiseFactory;
|
|
4838
4872
|
protected _cacheHolder: CacheHolder;
|
|
@@ -5331,7 +5365,7 @@ export declare interface PlanInteractionHandler {
|
|
|
5331
5365
|
createPlanWithObjectFromItem(object: KernelObject, position: KernelVector3, rotationInRad: number): Plan_2;
|
|
5332
5366
|
getPlan(): Plan_2;
|
|
5333
5367
|
moveElementTo(planObject: KernelObject, point: KernelVector3): void;
|
|
5334
|
-
moveElementToIn2d(planObject: KernelObject, point: KernelVector3): void;
|
|
5368
|
+
moveElementToIn2d(planObject: KernelObject, point: KernelVector3, dragging: boolean): void;
|
|
5335
5369
|
moveElementBy(planObject: KernelObject, distance: KernelVector3): void;
|
|
5336
5370
|
duplicatePlanObject(object: PlanObject, count: number, findFreeSpaceInPlan: boolean): PlanObject[];
|
|
5337
5371
|
duplicatePlanObjects(objects: PlanObjectList, count: number, findFreeSpaceInPlan: boolean): PlanObject[];
|
|
@@ -5476,7 +5510,7 @@ export declare interface PlanModelViewHelper_2 {
|
|
|
5476
5510
|
getExternalObjectGroups(plan: Plan_2): KernelObjectConfigurationArray;
|
|
5477
5511
|
getExternalRoomInformation(plan: Plan_2): RoomInformation;
|
|
5478
5512
|
calculateLightSourceDistribution(plan: Plan_2, lightSourceConfiguration: LightSourceConfiguration): RoomLightSourceDistributionArray;
|
|
5479
|
-
getObjectGeometryHelpLines(anObject: PlanObject): GeometryHelpLineArray;
|
|
5513
|
+
getObjectGeometryHelpLines(anObject: PlanObject, debugHelpLines: boolean): GeometryHelpLineArray;
|
|
5480
5514
|
}
|
|
5481
5515
|
|
|
5482
5516
|
export declare class Planner<P extends readonly PluginName[] = readonly []> extends Main {
|
|
@@ -5528,6 +5562,7 @@ export declare class PlannerKernelAccess extends ConfiguratorKernelAccess {
|
|
|
5528
5562
|
constructor(creator: string);
|
|
5529
5563
|
protected _loadSuccess(): void;
|
|
5530
5564
|
protected _loadError(): void;
|
|
5565
|
+
get homagIntelligence(): HomagIntelligence;
|
|
5531
5566
|
setHomagIntelligence(homagIntelligence: HomagIntelligence | null): void;
|
|
5532
5567
|
private _createPlanInteractionHandler;
|
|
5533
5568
|
addPlannerListener(listener: PlannerKernelCallbackI): void;
|
|
@@ -9561,8 +9596,6 @@ export declare class SceneVolume {
|
|
|
9561
9596
|
center: Vector3;
|
|
9562
9597
|
maxSceneDistanceFromCenter: number;
|
|
9563
9598
|
maxSceneDistanceFrom0: number;
|
|
9564
|
-
copyFrom(other: SceneVolume): void;
|
|
9565
|
-
updateFromObject(sceneObject: Object3D): void;
|
|
9566
9599
|
updateFromBox(boundingBox: Box3): void;
|
|
9567
9600
|
updateCameraViewVolumeFromBounds(camera: Camera): void;
|
|
9568
9601
|
getNearAndFarForPerspectiveCamera(cameraPosition: Vector3, backScale?: number): number[];
|
|
@@ -9796,7 +9829,6 @@ export declare class ShadowTypeConfiguration {
|
|
|
9796
9829
|
private static _noShadow;
|
|
9797
9830
|
private static _basicShadow;
|
|
9798
9831
|
private static _pcfShadow;
|
|
9799
|
-
private static _pcfSoftShadow;
|
|
9800
9832
|
private static _vcmShadow;
|
|
9801
9833
|
types: Map<string, ShadowTypeParameters>;
|
|
9802
9834
|
private static _defaultType;
|
package/lib/roomle-sdk.js
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import {
|
|
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-E00NytVZ.mjs";
|
|
2
2
|
export {
|
|
3
3
|
s as CONFIGURATION_TYPE,
|
|
4
4
|
l as CORE_PERMISSION_TO_DELETE,
|
|
5
5
|
o as Configurator,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
6
|
+
i as ConfiguratorUiCallbacks,
|
|
7
|
+
n as FloorPlanElementViewModel,
|
|
8
|
+
r as GlbViewer,
|
|
9
|
+
t as GlobalCallback,
|
|
10
|
+
f as HI_CONTEXT_ACTION,
|
|
11
|
+
g as IdbManager,
|
|
12
|
+
E as Main,
|
|
13
|
+
m as MeasurementLinePlanElementViewModel,
|
|
14
|
+
O as PLAN_ELEMENT_CHANGE_TYPES,
|
|
15
|
+
P as PlanElementViewModel,
|
|
16
16
|
b as PlanObjectViewModel,
|
|
17
17
|
c as Planner,
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
C as RapiAccess,
|
|
19
|
+
d as RoomDesignerApi,
|
|
20
20
|
M as RoomleConfigurator,
|
|
21
21
|
R as RoomleGLBViewer,
|
|
22
|
-
|
|
22
|
+
I as RoomleLightSource,
|
|
23
23
|
T as RoomlePlanner,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
_ as RoomlePlannerUiCallback,
|
|
25
|
+
N as RoomleSdk,
|
|
26
|
+
V as StaticPlanObjectViewModel,
|
|
27
|
+
w as WallPlanElementViewModel,
|
|
28
|
+
x as createExtObj,
|
|
29
29
|
S as createExtObjId,
|
|
30
30
|
j as getCatalogIdFromConfigurationHash,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
u as isExtObjId,
|
|
32
|
+
A as isExternalObject,
|
|
33
|
+
L as isSafari,
|
|
34
34
|
G as removeExtObjIdPrefix
|
|
35
35
|
};
|
|
36
36
|
//# sourceMappingURL=roomle-sdk.js.map
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -44,8 +44,12 @@ export interface DrawingType {
|
|
|
44
44
|
value: Enumify<typeof CORE_DRAWING_TYPE>;
|
|
45
45
|
}
|
|
46
46
|
export declare const CORE_HELP_LINE_TYPE: {
|
|
47
|
-
readonly
|
|
48
|
-
readonly
|
|
47
|
+
readonly NONE: 0;
|
|
48
|
+
readonly WALL_SNAP_LEVEL: 1;
|
|
49
|
+
readonly WALL_SNAP_LEVEL_SNAPPED: 2;
|
|
50
|
+
readonly WALL_EDGE: 3;
|
|
51
|
+
readonly DOCKING_VECTOR: 4;
|
|
52
|
+
readonly OBJECT_CONTOUR: 5;
|
|
49
53
|
};
|
|
50
54
|
export interface HelpLineType {
|
|
51
55
|
value: Enumify<typeof CORE_HELP_LINE_TYPE>;
|
|
@@ -613,7 +617,7 @@ export interface PlanModelViewHelper {
|
|
|
613
617
|
getExternalRoomInformation(plan: Plan): RoomInformation;
|
|
614
618
|
getExternalGroupStructure(plan: Plan, groupOrRootModuleId: string): PosGroupStructure;
|
|
615
619
|
calculateLightSourceDistribution(plan: Plan, lightSourceConfiguration: LightSourceConfiguration): RoomLightSourceDistributionArray;
|
|
616
|
-
getObjectGeometryHelpLines(anObject: PlanObject): GeometryHelpLineArray;
|
|
620
|
+
getObjectGeometryHelpLines(anObject: PlanObject, debugHelpLines: boolean): GeometryHelpLineArray;
|
|
617
621
|
getGroundContoursOfObjects(plan: Plan): GroundContourArray;
|
|
618
622
|
getObstacleMap(plan: Plan): ObstacleMap2d;
|
|
619
623
|
}
|
|
@@ -635,7 +639,7 @@ export interface PlanInteractionHandler {
|
|
|
635
639
|
setDefaultFloorMaterial(floorMaterial: FloorMaterial): void;
|
|
636
640
|
moveElementBy(element: PlanElement, offset: Point): void;
|
|
637
641
|
moveElementTo(element: PlanElement, position: Point): void;
|
|
638
|
-
moveElementToIn2d(element: PlanElement, position: Point): void;
|
|
642
|
+
moveElementToIn2d(element: PlanElement, position: Point, dragging: boolean): void;
|
|
639
643
|
setDiscardExternalObjectsOnLoad(discard: boolean): void;
|
|
640
644
|
moveObjectsBy(objects: PlanObjectPtrList, offset: Point): void;
|
|
641
645
|
removeChildObjectAtPosition(element: PlanElement, position: Point): boolean;
|
|
@@ -11,8 +11,12 @@ exports.CORE_DRAWING_TYPE = {
|
|
|
11
11
|
CLICK_PER_CLICK: 1,
|
|
12
12
|
};
|
|
13
13
|
exports.CORE_HELP_LINE_TYPE = {
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
NONE: 0,
|
|
15
|
+
WALL_SNAP_LEVEL: 1,
|
|
16
|
+
WALL_SNAP_LEVEL_SNAPPED: 2,
|
|
17
|
+
WALL_EDGE: 3,
|
|
18
|
+
DOCKING_VECTOR: 4,
|
|
19
|
+
OBJECT_CONTOUR: 5,
|
|
16
20
|
};
|
|
17
21
|
exports.CORE_MATERIAL_SOURCE_TYPE = {
|
|
18
22
|
NONE: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plannerCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/plannerCoreInterface.ts"],"names":[],"mappings":";;;AAgEa,QAAA,sBAAsB,GAAG;IACpC,GAAG,EAAE,CAAC;IACN,iBAAiB,EAAE,CAAC;IACpB,cAAc,EAAE,CAAC;CACT,CAAC;AAME,QAAA,iBAAiB,GAAG;IAC/B,SAAS,EAAE,CAAC;IACZ,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,eAAe,EAAE,CAAC;IAClB,uBAAuB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"plannerCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/plannerCoreInterface.ts"],"names":[],"mappings":";;;AAgEa,QAAA,sBAAsB,GAAG;IACpC,GAAG,EAAE,CAAC;IACN,iBAAiB,EAAE,CAAC;IACpB,cAAc,EAAE,CAAC;CACT,CAAC;AAME,QAAA,iBAAiB,GAAG;IAC/B,SAAS,EAAE,CAAC;IACZ,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,IAAI,EAAE,CAAC;IACP,eAAe,EAAE,CAAC;IAClB,uBAAuB,EAAE,CAAC;IAC1B,SAAS,EAAE,CAAC;IACZ,cAAc,EAAE,CAAC;IACjB,cAAc,EAAE,CAAC;CACT,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,IAAI,EAAE,CAAC;IACP,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,8BAA8B,GAAG;IAC5C,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,kBAAkB,GAAG;IAChC,MAAM,EAAE,CAAC;IACT,cAAc,EAAE,CAAC;IACjB,oBAAoB,EAAE,CAAC;CACf,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,cAAc,EAAE,CAAC;IACjB,qBAAqB,EAAE,CAAC;IACxB,eAAe,EAAE,CAAC;IAClB,sBAAsB,EAAE,CAAC;CACjB,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,oBAAoB,GAAG;IAClC,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC;IACZ,UAAU,EAAE,CAAC;IACb,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,GAAG,EAAE,CAAC;IACN,YAAY,EAAE,CAAC;IACf,mCAAmC,EAAE,CAAC;IACtC,oBAAoB,EAAE,CAAC;CACf,CAAC;AAME,QAAA,oBAAoB,GAAG;IAClC,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,WAAW,EAAE,CAAC;IACd,SAAS,EAAE,CAAC;IACZ,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,cAAc,EAAE,CAAC;IACjB,aAAa,EAAE,CAAC;IAChB,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;CACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name": "roomle-core-hsc", "version": "2.
|
|
1
|
+
{"name": "roomle-core-hsc", "version": "2.71.0-alpha.5" }
|
|
@@ -44,8 +44,12 @@ export interface DrawingType {
|
|
|
44
44
|
value: Enumify<typeof CORE_DRAWING_TYPE>;
|
|
45
45
|
}
|
|
46
46
|
export declare const CORE_HELP_LINE_TYPE: {
|
|
47
|
-
readonly
|
|
48
|
-
readonly
|
|
47
|
+
readonly NONE: 0;
|
|
48
|
+
readonly WALL_SNAP_LEVEL: 1;
|
|
49
|
+
readonly WALL_SNAP_LEVEL_SNAPPED: 2;
|
|
50
|
+
readonly WALL_EDGE: 3;
|
|
51
|
+
readonly DOCKING_VECTOR: 4;
|
|
52
|
+
readonly OBJECT_CONTOUR: 5;
|
|
49
53
|
};
|
|
50
54
|
export interface HelpLineType {
|
|
51
55
|
value: Enumify<typeof CORE_HELP_LINE_TYPE>;
|
|
@@ -613,7 +617,7 @@ export interface PlanModelViewHelper {
|
|
|
613
617
|
getExternalRoomInformation(plan: Plan): RoomInformation;
|
|
614
618
|
getExternalGroupStructure(plan: Plan, groupOrRootModuleId: string): PosGroupStructure;
|
|
615
619
|
calculateLightSourceDistribution(plan: Plan, lightSourceConfiguration: LightSourceConfiguration): RoomLightSourceDistributionArray;
|
|
616
|
-
getObjectGeometryHelpLines(anObject: PlanObject): GeometryHelpLineArray;
|
|
620
|
+
getObjectGeometryHelpLines(anObject: PlanObject, debugHelpLines: boolean): GeometryHelpLineArray;
|
|
617
621
|
getGroundContoursOfObjects(plan: Plan): GroundContourArray;
|
|
618
622
|
getObstacleMap(plan: Plan): ObstacleMap2d;
|
|
619
623
|
}
|
|
@@ -635,7 +639,7 @@ export interface PlanInteractionHandler {
|
|
|
635
639
|
setDefaultFloorMaterial(floorMaterial: FloorMaterial): void;
|
|
636
640
|
moveElementBy(element: PlanElement, offset: Point): void;
|
|
637
641
|
moveElementTo(element: PlanElement, position: Point): void;
|
|
638
|
-
moveElementToIn2d(element: PlanElement, position: Point): void;
|
|
642
|
+
moveElementToIn2d(element: PlanElement, position: Point, dragging: boolean): void;
|
|
639
643
|
setDiscardExternalObjectsOnLoad(discard: boolean): void;
|
|
640
644
|
moveObjectsBy(objects: PlanObjectPtrList, offset: Point): void;
|
|
641
645
|
removeChildObjectAtPosition(element: PlanElement, position: Point): boolean;
|
|
@@ -11,8 +11,12 @@ exports.CORE_DRAWING_TYPE = {
|
|
|
11
11
|
CLICK_PER_CLICK: 1,
|
|
12
12
|
};
|
|
13
13
|
exports.CORE_HELP_LINE_TYPE = {
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
NONE: 0,
|
|
15
|
+
WALL_SNAP_LEVEL: 1,
|
|
16
|
+
WALL_SNAP_LEVEL_SNAPPED: 2,
|
|
17
|
+
WALL_EDGE: 3,
|
|
18
|
+
DOCKING_VECTOR: 4,
|
|
19
|
+
OBJECT_CONTOUR: 5,
|
|
16
20
|
};
|
|
17
21
|
exports.CORE_MATERIAL_SOURCE_TYPE = {
|
|
18
22
|
NONE: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plannerCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/plannerCoreInterface.ts"],"names":[],"mappings":";;;AAgEa,QAAA,sBAAsB,GAAG;IACpC,GAAG,EAAE,CAAC;IACN,iBAAiB,EAAE,CAAC;IACpB,cAAc,EAAE,CAAC;CACT,CAAC;AAME,QAAA,iBAAiB,GAAG;IAC/B,SAAS,EAAE,CAAC;IACZ,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,eAAe,EAAE,CAAC;IAClB,uBAAuB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"plannerCoreInterface.js","sourceRoot":"","sources":["../../../src/embind/plannerCoreInterface.ts"],"names":[],"mappings":";;;AAgEa,QAAA,sBAAsB,GAAG;IACpC,GAAG,EAAE,CAAC;IACN,iBAAiB,EAAE,CAAC;IACpB,cAAc,EAAE,CAAC;CACT,CAAC;AAME,QAAA,iBAAiB,GAAG;IAC/B,SAAS,EAAE,CAAC;IACZ,eAAe,EAAE,CAAC;CACV,CAAC;AAME,QAAA,mBAAmB,GAAG;IACjC,IAAI,EAAE,CAAC;IACP,eAAe,EAAE,CAAC;IAClB,uBAAuB,EAAE,CAAC;IAC1B,SAAS,EAAE,CAAC;IACZ,cAAc,EAAE,CAAC;IACjB,cAAc,EAAE,CAAC;CACT,CAAC;AAME,QAAA,yBAAyB,GAAG;IACvC,IAAI,EAAE,CAAC;IACP,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,8BAA8B,GAAG;IAC5C,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,CAAC;CACH,CAAC;AAME,QAAA,kBAAkB,GAAG;IAChC,MAAM,EAAE,CAAC;IACT,cAAc,EAAE,CAAC;IACjB,oBAAoB,EAAE,CAAC;CACf,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,cAAc,EAAE,CAAC;IACjB,qBAAqB,EAAE,CAAC;IACxB,eAAe,EAAE,CAAC;IAClB,sBAAsB,EAAE,CAAC;CACjB,CAAC;AAME,QAAA,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,qBAAqB,GAAG;IACnC,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,oBAAoB,GAAG;IAClC,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC;IACZ,UAAU,EAAE,CAAC;IACb,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACA,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,GAAG,EAAE,CAAC;IACN,YAAY,EAAE,CAAC;IACf,mCAAmC,EAAE,CAAC;IACtC,oBAAoB,EAAE,CAAC;CACf,CAAC;AAME,QAAA,oBAAoB,GAAG;IAClC,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,CAAC;CACF,CAAC;AAME,QAAA,wBAAwB,GAAG;IACtC,WAAW,EAAE,CAAC;IACd,SAAS,EAAE,CAAC;IACZ,UAAU,EAAE,CAAC;CACL,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;CACD,CAAC;AAME,QAAA,cAAc,GAAG;IAC5B,cAAc,EAAE,CAAC;IACjB,aAAa,EAAE,CAAC;IAChB,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;CACJ,CAAC"}
|