@roomle/web-sdk 3.9.0-alpha.3 → 3.9.0-alpha.4
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/ConfiguratorKernel.wasm +0 -0
- package/lib/RoomleCore.js +2 -2
- package/lib/RoomleCore.wasm +0 -0
- package/lib/RoomleToolsCore.wasm +0 -0
- package/lib/{api-Cp8M5v8V.mjs → api-x84SYo8e.mjs} +2 -2
- package/lib/{api-Cp8M5v8V.mjs.map → api-x84SYo8e.mjs.map} +1 -1
- package/lib/asset-loader.worker-A7nEeQB4.mjs.map +1 -1
- package/lib/banana-for-scale-CFY_5rk1.mjs.map +1 -1
- package/lib/budgeteer.sw-CQWYbQSc.mjs.map +1 -1
- package/lib/configurator-DeUTcLI3.mjs +2 -0
- package/lib/{configurator-B9H-kPm2.mjs → configurator-Dw5JbPMY.mjs} +3 -3
- package/lib/{configurator-B9H-kPm2.mjs.map → configurator-Dw5JbPMY.mjs.map} +1 -1
- package/lib/{glb-viewer-MuC-xMpl.mjs → glb-viewer-CWkc6wx7.mjs} +3 -3
- package/lib/{glb-viewer-MuC-xMpl.mjs.map → glb-viewer-CWkc6wx7.mjs.map} +1 -1
- package/lib/glb-viewer-Ci-IZcIt.mjs +2 -0
- package/lib/{homag-intelligence-Bq-OZ8uy.mjs → homag-intelligence-Dk4WxD0p.mjs} +3 -3
- package/lib/{homag-intelligence-Bq-OZ8uy.mjs.map → homag-intelligence-Dk4WxD0p.mjs.map} +1 -1
- package/lib/kernel-C7YDLxq8.mjs.map +1 -1
- package/lib/{main-BvkSjJpQ.mjs → main-CqSFaC9L.mjs} +1286 -1186
- package/lib/main-CqSFaC9L.mjs.map +1 -0
- package/lib/{material-viewer-xyS-wPPD.mjs → material-viewer-BSgvHUAe.mjs} +3 -3
- package/lib/{material-viewer-xyS-wPPD.mjs.map → material-viewer-BSgvHUAe.mjs.map} +1 -1
- package/lib/packages-0mEYlGTx.mjs +4 -0
- package/lib/{planner-CfxenPvQ.mjs → planner-BgAj8Jp1.mjs} +3 -3
- package/lib/{planner-CfxenPvQ.mjs.map → planner-BgAj8Jp1.mjs.map} +1 -1
- package/lib/planner-CIvdB7af.mjs +2 -0
- package/lib/roomle-headless.d.ts +31 -15
- package/lib/roomle-headless.js +47 -47
- package/lib/roomle-headless.js.map +1 -1
- package/lib/roomle-sdk.d.ts +31 -15
- package/lib/roomle-sdk.js +8 -8
- package/lib/{script-loader-uiPKVdkx.mjs → script-loader-DzyUQT3-.mjs} +2 -2
- package/lib/{script-loader-uiPKVdkx.mjs.map → script-loader-DzyUQT3-.mjs.map} +1 -1
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/package.json +1 -1
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts +17 -2
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.js +2 -2
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
- package/lib/threejs-utils-D7sinreM.mjs.map +1 -1
- package/lib/{tools-core-CCIcHAKj.mjs → tools-core-BxOoo-C1.mjs} +3 -3
- package/lib/{tools-core-CCIcHAKj.mjs.map → tools-core-BxOoo-C1.mjs.map} +1 -1
- package/package.json +1 -1
- package/lib/configurator-CWD62G9Q.mjs +0 -2
- package/lib/glb-viewer-BxbH6fKg.mjs +0 -2
- package/lib/main-BvkSjJpQ.mjs.map +0 -1
- package/lib/packages-C5mL8tCk.mjs +0 -4
- package/lib/planner-CMKaBsin.mjs +0 -2
package/lib/roomle-sdk.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { i as e, t } from "./kernel-C7YDLxq8.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import { F as
|
|
4
|
-
import { t as
|
|
5
|
-
import { t as
|
|
6
|
-
import { n as
|
|
7
|
-
import { t as
|
|
8
|
-
import "./packages-
|
|
9
|
-
export { t as CONFIGURATION_TYPE,
|
|
2
|
+
import { gt as n, pt as r } from "./threejs-utils-D7sinreM.mjs";
|
|
3
|
+
import { F as i, G as a, H as o, M as s, N as c, O as l, P as u, U as d, V as f, W as p, a as m, at as h, b as g, c as _, ct as v, j as y, l as b, n as x, q as S, st as C, ut as w, v as T, x as E, y as D, z as O } from "./main-CqSFaC9L.mjs";
|
|
4
|
+
import { t as k } from "./configurator-Dw5JbPMY.mjs";
|
|
5
|
+
import { t as A } from "./planner-BgAj8Jp1.mjs";
|
|
6
|
+
import { n as j, t as M } from "./glb-viewer-CWkc6wx7.mjs";
|
|
7
|
+
import { t as N } from "./api-x84SYo8e.mjs";
|
|
8
|
+
import "./packages-0mEYlGTx.mjs";
|
|
9
|
+
export { t as CONFIGURATION_TYPE, r as CORE_EDGE_TYPE, n as CORE_OBJECT_CATEGORY, e as CORE_PERMISSION_TO_DELETE, k as Configurator, m as ConfiguratorUiCallbacks, y as FloorPlanElementViewModel, M as GlbViewer, S as GlobalCallback, O as HI_CONTEXT_ACTION, C as IdbManager, x as Main, E as MeasurementLinePlanElementViewModel, T as PLAN_ELEMENT_CHANGE_TYPES, i as PlanElementViewModel, u as PlanObjectViewModel, A as Planner, h as RapiAccess, N as RoomDesignerApi, l as RoomleConfigurator, j as RoomleGLBViewer, w as RoomleLightSource, _ as RoomlePlanner, D as RoomlePlannerUiCallback, b as RoomleSdk, c as StaticPlanObjectViewModel, s as WallPlanElementViewModel, f as createExtObj, a as createExtObjId, v as getCatalogIdFromConfigurationHash, o as isExtObjId, d as isExternalObject, g as isSafari, p as removeExtObjIdPrefix };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as e, r as t, t as n } from "./decorate-C9r0zXzz.mjs";
|
|
2
|
-
import { A as r, et as i } from "./main-
|
|
2
|
+
import { A as r, et as i } from "./main-CqSFaC9L.mjs";
|
|
3
3
|
//#region ../../node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm?no-inline?url
|
|
4
4
|
var a = "" + new URL("ConfiguratorKernel.wasm", import.meta.url).href, o = "" + new URL("ConfiguratorKernel.js", import.meta.url).href, s = "" + new URL("RoomleCore.wasm", import.meta.url).href, c = "" + new URL("RoomleCore.js", import.meta.url).href, l = "" + new URL("RoomleToolsCore.wasm", import.meta.url).href, u = "" + new URL("RoomleToolsCore.js", import.meta.url).href, d = {
|
|
5
5
|
configurator: {
|
|
@@ -83,4 +83,4 @@ n([t, e("design:type", Object)], _.prototype, "_singlePromiseFactory", void 0);
|
|
|
83
83
|
//#endregion
|
|
84
84
|
export { p as n, _ as t };
|
|
85
85
|
|
|
86
|
-
//# sourceMappingURL=script-loader-
|
|
86
|
+
//# sourceMappingURL=script-loader-DzyUQT3-.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"script-loader-uiPKVdkx.mjs","names":[],"sources":["../../../../node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.js?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleCore.wasm?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleCore.js?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.js?no-inline?url","../../packages/common-core/src/static-files/roomle-core.ts","../../packages/common-core/src/script-loader.ts"],"sourcesContent":["export default \"__VITE_ASSET__Msg57USEadASvSStYSdmzA__\"","export default \"__VITE_ASSET__DUq8YoikZLXEejpNZ1KQvg__\"","export default \"__VITE_ASSET__epdbhdyBUyD3hvxx0_dcTg__\"","export default \"__VITE_ASSET__$oUiuAXR7gZMKRQU56HW2w__\"","export default \"__VITE_ASSET__aLISaAY6NSiJFT$6GdtrfA__\"","export default \"__VITE_ASSET__8HSUfh7cJHNFxCkInNzNXw__\"","// @ts-ignore -- Uses vite to reference files as URLs.\nimport CONFIGURATOR_WASM_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport CONFIGURATOR_LOADER_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/ConfiguratorKernel.js?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport PLANNER_WASM_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleCore.wasm?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport PLANNER_LOADER_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleCore.js?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport TOOLS_CORE_WASM_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport TOOLS_CORE_LOADER_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleToolsCore.js?no-inline?url';\n\nconst WASM_FILES: Record<string, { loader: string; wasm: string }> = {\n configurator: {\n loader: 'ConfiguratorKernel.js',\n wasm: 'ConfiguratorKernel.wasm',\n },\n planner: { loader: 'RoomleCore.js', wasm: 'RoomleCore.wasm' },\n tools: { loader: 'RoomleToolsCore.js', wasm: 'RoomleToolsCore.wasm' },\n};\n\n// The wasm paths returned by this function are specific to browsers (not headless):\nexport const getWasmPath = (type: 'configurator' | 'planner' | 'tools') => {\n if (type === 'planner') {\n return {\n wasm: PLANNER_WASM_MODERN_FILE_NAME,\n loader: PLANNER_LOADER_MODERN_FILE_NAME,\n };\n }\n if (type === 'tools') {\n return {\n wasm: TOOLS_CORE_WASM_MODERN_FILE_NAME,\n loader: TOOLS_CORE_LOADER_MODERN_FILE_NAME,\n };\n }\n return {\n wasm: CONFIGURATOR_WASM_MODERN_FILE_NAME,\n loader: CONFIGURATOR_LOADER_MODERN_FILE_NAME,\n };\n};\n\n// Resolve WASM module paths for headless (Node.js/Bun) mode.\n// Strategies (tried in order):\n// 1. import.meta.resolve('roomle-core-hsc/...') — works when running from\n// source in the monorepo where roomle-core-hsc is in node_modules, and\n// the module resolver can walk up to it from the current file's location.\n// 2. Files directly in the same directory as this bundle — works when the SDK\n// is consumed as a built package (dist/lib/), where vite-plugin-static-copy\n// places ConfiguratorKernel.wasm etc. alongside the bundle chunks.\n// 3. Legacy static/ subdirectory — kept as a final fallback for older dist\n// layouts where vite-plugin-static-copy targeted dist/lib/static/.\nexport const getHeadlessWasmPath = (\n type: 'configurator' | 'planner' | 'tools',\n): { loader: string; wasm: string } => {\n const entry = WASM_FILES[type];\n const moduleSpecifiers = {\n loader: `roomle-core-hsc/wasm_modern/${entry.loader}`,\n wasm: `roomle-core-hsc/wasm_modern/${entry.wasm}`,\n };\n\n const toPath = (url: string) =>\n url.startsWith('file://') ? url.slice(7) : url;\n\n // Strategy 1: resolve from node_modules (source / monorepo).\n // May fail when the consuming project's module resolver cannot reach\n // roomle-core-hsc (e.g. when web-sdk is installed via a file: reference\n // and symlink resolution stops before reaching the monorepo node_modules).\n try {\n return {\n loader: toPath(import.meta.resolve(moduleSpecifiers.loader)),\n wasm: toPath(import.meta.resolve(moduleSpecifiers.wasm)),\n };\n } catch {\n // roomle-core-hsc not reachable — fall through to bundle-relative lookup\n }\n\n // Strategy 2: files copied directly alongside the bundle (current dist layout).\n // vite-plugin-static-copy places ConfiguratorKernel.wasm / RoomleCore.wasm\n // etc. in dist/lib/ next to the JS chunks. import.meta.url of any chunk in\n // that directory has bundleDir = dist/lib/, so the files are found directly.\n const bundleDir = toPath(import.meta.url).replace(/\\/[^/]+$/, '');\n return {\n loader: `${bundleDir}/${entry.loader}`,\n wasm: `${bundleDir}/${entry.wasm}`,\n };\n};\n\nexport {\n CONFIGURATOR_WASM_MODERN_FILE_NAME,\n CONFIGURATOR_LOADER_MODERN_FILE_NAME,\n PLANNER_WASM_MODERN_FILE_NAME,\n PLANNER_LOADER_MODERN_FILE_NAME,\n TOOLS_CORE_WASM_MODERN_FILE_NAME,\n TOOLS_CORE_LOADER_MODERN_FILE_NAME,\n};\n","import Benchmark from './utils/benchmark';\nimport inject from './di/inject';\nimport type SinglePromiseFactory from './utils/single-promise-factory';\nimport { PROMISE_CATEGORY } from './utils/single-promise-factory';\nimport type { Context } from './di/context';\nimport { getWasmPath } from './static-files/roomle-core';\n\nlet _scriptCache: { [key: string]: boolean } = {};\nlet _idCache: { [key: string]: boolean } = {};\n\nfunction attachScript(\n url: string,\n options: { id: string },\n resolve: (value?: any) => void,\n reject: (error?: any) => void,\n) {\n if (_scriptCache[url]) {\n return resolve();\n }\n if (options.id && _idCache[options.id]) {\n return reject(\n new Error('There is already a script with ID \"' + options.id + '\"'),\n );\n }\n\n const mark = Benchmark.start('load_' + options.id.replace(/-/g, '_'));\n const element = document.createElement('script');\n element.async = false;\n element.src = url;\n element.id = options.id;\n element.onload = () => {\n _scriptCache[url] = true;\n _idCache[options.id] = true;\n Benchmark.end(mark);\n Object.defineProperty(resolve, 'name', { value: 'resolve-' + options.id });\n resolve();\n };\n element.onerror = (error) => {\n reject(error);\n };\n document.body.appendChild(element);\n}\n\nexport interface ScriptData {\n name: string;\n id: string;\n}\n\nexport default class ScriptLoader implements Context {\n public _creator_: string;\n\n @inject\n private _singlePromiseFactory: SinglePromiseFactory;\n\n constructor(creator: string) {\n this._creator_ = creator;\n }\n\n public fetch(url: string, options: { id: string }) {\n return this._singlePromiseFactory.create(\n PROMISE_CATEGORY.FETCH_SCRIPT,\n url,\n (resolve, reject) => {\n attachScript(url, options, resolve, reject);\n },\n );\n }\n\n public loadScripts(scripts: ScriptData[]) {\n const promises: any = [];\n scripts.forEach((script: any) => {\n let scriptLoadPromise = this.fetch(script.name, { id: script.id });\n promises.push(scriptLoadPromise);\n });\n return Promise.all(promises);\n }\n\n public resolveKernelPaths(type: 'configurator' | 'planner' | 'tools'): {\n wasm: string;\n loader: string;\n } {\n return getWasmPath(type);\n }\n\n public cleanUp() {\n for (let key in _idCache) {\n /* istanbul ignore else */\n if (_idCache.hasOwnProperty(key)) {\n const script = document.getElementById(key);\n if (script) {\n script.parentElement?.removeChild(script);\n }\n }\n }\n _scriptCache = {};\n _idCache = {};\n }\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5],"mappings":";;;AAAA,IAAA,IAAe,KAAA,IAAA,IAAA,2BAAA,OAAA,KAAA,IAAA,CAAA,MCAf,IAAe,KAAA,IAAA,IAAA,yBAAA,OAAA,KAAA,IAAA,CAAA,MCAf,IAAe,KAAA,IAAA,IAAA,mBAAA,OAAA,KAAA,IAAA,CAAA,MCAf,IAAe,KAAA,IAAA,IAAA,iBAAA,OAAA,KAAA,IAAA,CAAA,MCAf,IAAe,KAAA,IAAA,IAAA,wBAAA,OAAA,KAAA,IAAA,CAAA,MCAf,IAAe,KAAA,IAAA,IAAA,sBAAA,OAAA,KAAA,IAAA,CAAA,MCaT,IAA+D;CACnE,cAAc;EACZ,QAAQ;EACR,MAAM;EACP;CACD,SAAS;EAAE,QAAQ;EAAiB,MAAM;EAAmB;CAC7D,OAAO;EAAE,QAAQ;EAAsB,MAAM;;CAC9C,EAGY,KAAe,MACtB,MAAS,YACJ;CACL,MAAM;CACN,QAAQ;CACT,GAEC,MAAS,UACJ;CACL,MAAM;CACN,QAAQ;CACT,GAEI;CACL,MAAM;CACN,QAAQ;CACT,EAaU,KACX,MACqC;CACrC,IAAM,IAAQ,EAAW,IACnB,IAAmB;EACvB,QAAQ,+BAA+B,EAAM;EAC7C,MAAM,+BAA+B,EAAM;EAC5C,EAEK,KAAU,MACd,EAAI,WAAW,UAAU,GAAG,EAAI,MAAM,EAAE,GAAG;AAM7C,KAAI;AACF,SAAO;GACL,QAAQ,EAAO,OAAO,KAAK,QAAQ,EAAiB,OAAO,CAAC;GAC5D,MAAM,EAAO,OAAO,KAAK,QAAQ,EAAiB,KAAK,CAAA;GACxD;SACK;CAQR,IAAM,IAAY,EAAO,OAAO,KAAK,IAAI,CAAC,QAAQ,YAAY,GAAG;AACjE,QAAO;EACL,QAAQ,GAAG,EAAU,GAAG,EAAM;EAC9B,MAAM,GAAG,EAAU,GAAG,EAAM;EAC7B;GC9EC,IAA2C,EAAE,EAC7C,IAAuC,EAAE;AAE7C,SAAS,EACP,GACA,GACA,GACA,GACA;AACA,KAAI,EAAa,GACf,QAAO,GAAS;AAElB,KAAI,EAAQ,MAAM,EAAS,EAAQ,IACjC,QAAO,EACL,gBAAI,MAAM,yCAAwC,EAAQ,KAAK,KAAI,CACpE;CAGH,IAAM,IAAO,EAAU,MAAM,UAAU,EAAQ,GAAG,QAAQ,MAAM,IAAI,CAAC,EAC/D,IAAU,SAAS,cAAc,SAAS;AAchD,CAbA,EAAQ,QAAQ,IAChB,EAAQ,MAAM,GACd,EAAQ,KAAK,EAAQ,IACrB,EAAQ,eAAe;AAKrB,EAJA,EAAa,KAAO,IACpB,EAAS,EAAQ,MAAM,IACvB,EAAU,IAAI,EAAK,EACnB,OAAO,eAAe,GAAS,QAAQ,EAAE,OAAO,aAAa,EAAQ,IAAI,CAAC,EAC1E,GAAS;IAEX,EAAQ,WAAW,MAAU;AAC3B,IAAO,EAAM;IAEf,SAAS,KAAK,YAAY,EAAQ;;AAQpC,IAAqB,IAArB,MAAqD;CAMnD,YAAY,GAAiB;AAC3B,OAAK,YAAY;;CAGnB,MAAa,GAAa,GAAyB;AACjD,SAAO,KAAK,sBAAsB,OAChC,EAAiB,cACjB,IACC,GAAS,MAAW;AACnB,KAAa,GAAK,GAAS,GAAS,EAAO;IAE9C;;CAGH,YAAmB,GAAuB;EACxC,IAAM,IAAgB,EAAE;AAKxB,SAJA,EAAQ,SAAS,MAAgB;GAC/B,IAAI,IAAoB,KAAK,MAAM,EAAO,MAAM,EAAE,IAAI,EAAO,IAAI,CAAC;AAClE,KAAS,KAAK,EAAkB;IAChC,EACK,QAAQ,IAAI,EAAS;;CAG9B,mBAA0B,GAGxB;AACA,SAAO,EAAY,EAAK;;CAG1B,UAAiB;AACf,OAAK,IAAI,KAAO;;AAEd,MAAI,EAAS,eAAe,EAAI,EAAE;GAChC,IAAM,IAAS,SAAS,eAAe,EAAI;AAC3C,GAAI,KACF,EAAO,eAAe,YAAY,EAAO;;AAK/C,EADA,IAAe,EAAE,EACjB,IAAW,EAAE;;;GA5Cd,GAAA,EAAA,eAAA,OAAA,CAAA,EAAA,EAAA,WAAA,yBAAA,KAAA,EAAA"}
|
|
1
|
+
{"version":3,"file":"script-loader-DzyUQT3-.mjs","names":[],"sources":["../../../../node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.js?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleCore.wasm?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleCore.js?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm?no-inline?url","../../../../node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.js?no-inline?url","../../packages/common-core/src/static-files/roomle-core.ts","../../packages/common-core/src/script-loader.ts"],"sourcesContent":["export default \"__VITE_ASSET__ZoP2ebLT5e$hm8jPkF9mgA__\"","export default \"__VITE_ASSET__aLISaAY6NSiJFT$6GdtrfA__\"","export default \"__VITE_ASSET__2$LtLFQdS6IeO$uJxLxRJQ__\"","export default \"__VITE_ASSET__Msg57USEadASvSStYSdmzA__\"","export default \"__VITE_ASSET__gOpBNSELCNdnM_yZlyA5OQ__\"","export default \"__VITE_ASSET__cn7IAAGY294pWGc7MpElVg__\"","// @ts-ignore -- Uses vite to reference files as URLs.\nimport CONFIGURATOR_WASM_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport CONFIGURATOR_LOADER_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/ConfiguratorKernel.js?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport PLANNER_WASM_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleCore.wasm?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport PLANNER_LOADER_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleCore.js?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport TOOLS_CORE_WASM_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm?no-inline?url';\n// @ts-ignore -- Uses vite to reference files as URLs.\nimport TOOLS_CORE_LOADER_MODERN_FILE_NAME from 'roomle-core-hsc/wasm_modern/RoomleToolsCore.js?no-inline?url';\n\nconst WASM_FILES: Record<string, { loader: string; wasm: string }> = {\n configurator: {\n loader: 'ConfiguratorKernel.js',\n wasm: 'ConfiguratorKernel.wasm',\n },\n planner: { loader: 'RoomleCore.js', wasm: 'RoomleCore.wasm' },\n tools: { loader: 'RoomleToolsCore.js', wasm: 'RoomleToolsCore.wasm' },\n};\n\n// The wasm paths returned by this function are specific to browsers (not headless):\nexport const getWasmPath = (type: 'configurator' | 'planner' | 'tools') => {\n if (type === 'planner') {\n return {\n wasm: PLANNER_WASM_MODERN_FILE_NAME,\n loader: PLANNER_LOADER_MODERN_FILE_NAME,\n };\n }\n if (type === 'tools') {\n return {\n wasm: TOOLS_CORE_WASM_MODERN_FILE_NAME,\n loader: TOOLS_CORE_LOADER_MODERN_FILE_NAME,\n };\n }\n return {\n wasm: CONFIGURATOR_WASM_MODERN_FILE_NAME,\n loader: CONFIGURATOR_LOADER_MODERN_FILE_NAME,\n };\n};\n\n// Resolve WASM module paths for headless (Node.js/Bun) mode.\n// Strategies (tried in order):\n// 1. import.meta.resolve('roomle-core-hsc/...') — works when running from\n// source in the monorepo where roomle-core-hsc is in node_modules, and\n// the module resolver can walk up to it from the current file's location.\n// 2. Files directly in the same directory as this bundle — works when the SDK\n// is consumed as a built package (dist/lib/), where vite-plugin-static-copy\n// places ConfiguratorKernel.wasm etc. alongside the bundle chunks.\n// 3. Legacy static/ subdirectory — kept as a final fallback for older dist\n// layouts where vite-plugin-static-copy targeted dist/lib/static/.\nexport const getHeadlessWasmPath = (\n type: 'configurator' | 'planner' | 'tools',\n): { loader: string; wasm: string } => {\n const entry = WASM_FILES[type];\n const moduleSpecifiers = {\n loader: `roomle-core-hsc/wasm_modern/${entry.loader}`,\n wasm: `roomle-core-hsc/wasm_modern/${entry.wasm}`,\n };\n\n const toPath = (url: string) =>\n url.startsWith('file://') ? url.slice(7) : url;\n\n // Strategy 1: resolve from node_modules (source / monorepo).\n // May fail when the consuming project's module resolver cannot reach\n // roomle-core-hsc (e.g. when web-sdk is installed via a file: reference\n // and symlink resolution stops before reaching the monorepo node_modules).\n try {\n return {\n loader: toPath(import.meta.resolve(moduleSpecifiers.loader)),\n wasm: toPath(import.meta.resolve(moduleSpecifiers.wasm)),\n };\n } catch {\n // roomle-core-hsc not reachable — fall through to bundle-relative lookup\n }\n\n // Strategy 2: files copied directly alongside the bundle (current dist layout).\n // vite-plugin-static-copy places ConfiguratorKernel.wasm / RoomleCore.wasm\n // etc. in dist/lib/ next to the JS chunks. import.meta.url of any chunk in\n // that directory has bundleDir = dist/lib/, so the files are found directly.\n const bundleDir = toPath(import.meta.url).replace(/\\/[^/]+$/, '');\n return {\n loader: `${bundleDir}/${entry.loader}`,\n wasm: `${bundleDir}/${entry.wasm}`,\n };\n};\n\nexport {\n CONFIGURATOR_WASM_MODERN_FILE_NAME,\n CONFIGURATOR_LOADER_MODERN_FILE_NAME,\n PLANNER_WASM_MODERN_FILE_NAME,\n PLANNER_LOADER_MODERN_FILE_NAME,\n TOOLS_CORE_WASM_MODERN_FILE_NAME,\n TOOLS_CORE_LOADER_MODERN_FILE_NAME,\n};\n","import Benchmark from './utils/benchmark';\nimport inject from './di/inject';\nimport type SinglePromiseFactory from './utils/single-promise-factory';\nimport { PROMISE_CATEGORY } from './utils/single-promise-factory';\nimport type { Context } from './di/context';\nimport { getWasmPath } from './static-files/roomle-core';\n\nlet _scriptCache: { [key: string]: boolean } = {};\nlet _idCache: { [key: string]: boolean } = {};\n\nfunction attachScript(\n url: string,\n options: { id: string },\n resolve: (value?: any) => void,\n reject: (error?: any) => void,\n) {\n if (_scriptCache[url]) {\n return resolve();\n }\n if (options.id && _idCache[options.id]) {\n return reject(\n new Error('There is already a script with ID \"' + options.id + '\"'),\n );\n }\n\n const mark = Benchmark.start('load_' + options.id.replace(/-/g, '_'));\n const element = document.createElement('script');\n element.async = false;\n element.src = url;\n element.id = options.id;\n element.onload = () => {\n _scriptCache[url] = true;\n _idCache[options.id] = true;\n Benchmark.end(mark);\n Object.defineProperty(resolve, 'name', { value: 'resolve-' + options.id });\n resolve();\n };\n element.onerror = (error) => {\n reject(error);\n };\n document.body.appendChild(element);\n}\n\nexport interface ScriptData {\n name: string;\n id: string;\n}\n\nexport default class ScriptLoader implements Context {\n public _creator_: string;\n\n @inject\n private _singlePromiseFactory: SinglePromiseFactory;\n\n constructor(creator: string) {\n this._creator_ = creator;\n }\n\n public fetch(url: string, options: { id: string }) {\n return this._singlePromiseFactory.create(\n PROMISE_CATEGORY.FETCH_SCRIPT,\n url,\n (resolve, reject) => {\n attachScript(url, options, resolve, reject);\n },\n );\n }\n\n public loadScripts(scripts: ScriptData[]) {\n const promises: any = [];\n scripts.forEach((script: any) => {\n let scriptLoadPromise = this.fetch(script.name, { id: script.id });\n promises.push(scriptLoadPromise);\n });\n return Promise.all(promises);\n }\n\n public resolveKernelPaths(type: 'configurator' | 'planner' | 'tools'): {\n wasm: string;\n loader: string;\n } {\n return getWasmPath(type);\n }\n\n public cleanUp() {\n for (let key in _idCache) {\n /* istanbul ignore else */\n if (_idCache.hasOwnProperty(key)) {\n const script = document.getElementById(key);\n if (script) {\n script.parentElement?.removeChild(script);\n }\n }\n }\n _scriptCache = {};\n _idCache = {};\n }\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name": "roomle-core-hsc", "version": "2.
|
|
1
|
+
{"name": "roomle-core-hsc", "version": "2.80.0-alpha.15" }
|
package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts
CHANGED
|
@@ -237,6 +237,7 @@ export type RootModuleContextDataItemArray = EmscriptenArray<RootModuleContextDa
|
|
|
237
237
|
export type GeometryHelpLineArray = EmscriptenArray<GeometryHelpLine>;
|
|
238
238
|
export type GroundContourArray = EmscriptenArray<GroundContour>;
|
|
239
239
|
export type Obstacle2dArray = EmscriptenArray<Obstacle2d>;
|
|
240
|
+
export type ElevationProfilePointArray = EmscriptenArray<ElevationProfilePoint>;
|
|
240
241
|
export type ElevationViewArray = EmscriptenArray<ElevationView>;
|
|
241
242
|
export type ExternalValidContainerModuleArray = EmscriptenArray<ExternalValidContainerModule>;
|
|
242
243
|
export type ConstructionObjectSet = EmscriptenSet<ConstructionObject>;
|
|
@@ -255,9 +256,19 @@ export interface DockedContextRootModule {
|
|
|
255
256
|
dockingVectorIndex: number;
|
|
256
257
|
id: string;
|
|
257
258
|
}
|
|
259
|
+
export interface ElevationProfile {
|
|
260
|
+
profileContour: ElevationProfilePointArray;
|
|
261
|
+
}
|
|
262
|
+
export interface ElevationProfilePoint {
|
|
263
|
+
distance: number;
|
|
264
|
+
height: number;
|
|
265
|
+
position: Vector3;
|
|
266
|
+
slopeAngleInRadians: number;
|
|
267
|
+
}
|
|
258
268
|
export interface ElevationView {
|
|
259
269
|
lineOfSight: Vector3;
|
|
260
270
|
objects: PlanObjectPtrVector;
|
|
271
|
+
profile: ElevationProfile;
|
|
261
272
|
}
|
|
262
273
|
export interface ExternalObjectLoadConfiguration {
|
|
263
274
|
applyGlobalChildMode: boolean;
|
|
@@ -327,6 +338,7 @@ export interface ObjectComponent {
|
|
|
327
338
|
externalRootModuleId: string;
|
|
328
339
|
externalSubModuleId: string;
|
|
329
340
|
isAGeneratedModule: boolean;
|
|
341
|
+
isDuplicable: boolean;
|
|
330
342
|
isExchangeable: boolean;
|
|
331
343
|
isExternalObject: boolean;
|
|
332
344
|
name: string;
|
|
@@ -486,6 +498,7 @@ export interface PlanElement extends AbstractModel {
|
|
|
486
498
|
getMeshCenter(): Vector3;
|
|
487
499
|
getMeshOffsetRelativeToObject(): Vector3;
|
|
488
500
|
getCustomDataJson(): string;
|
|
501
|
+
isDuplicable(): boolean;
|
|
489
502
|
isLocked(): boolean;
|
|
490
503
|
isValid(): boolean;
|
|
491
504
|
readonly hidden: boolean;
|
|
@@ -495,6 +508,7 @@ export interface PlanObject extends PlanElement {
|
|
|
495
508
|
getCatalogItemId(): string;
|
|
496
509
|
getOpenConversationId(): number;
|
|
497
510
|
getConfigurationRuntimeId(): number;
|
|
511
|
+
getReplacementConstructionId(): number;
|
|
498
512
|
getObjectType(): string;
|
|
499
513
|
getObjectCategory(): ObjectTypeCategory;
|
|
500
514
|
hasConfiguration(): boolean;
|
|
@@ -732,8 +746,8 @@ export interface PlanInteractionHandler {
|
|
|
732
746
|
setDefaultInteriorWallMaterial(wallMaterial: WallMaterial): void;
|
|
733
747
|
getDefaultFloorMaterial(): FloorMaterial;
|
|
734
748
|
setDefaultFloorMaterial(floorMaterial: FloorMaterial): void;
|
|
735
|
-
moveElementBy(element: PlanElement, offset: Vector3): void;
|
|
736
|
-
moveElementTo(element: PlanElement, position: Vector3, cameraPosition?: Vector3): void;
|
|
749
|
+
moveElementBy(element: PlanElement, offset: Vector3, dragging: boolean): void;
|
|
750
|
+
moveElementTo(element: PlanElement, position: Vector3, dragging: boolean, cameraPosition?: Vector3): void;
|
|
737
751
|
moveElementToIn2d(element: PlanElement, position: Vector3, dragging: boolean): void;
|
|
738
752
|
setDiscardExternalObjectsOnLoad(discard: boolean): void;
|
|
739
753
|
moveObjectsBy(objects: PlanObjectPtrList, offset: Vector3): void;
|
|
@@ -884,6 +898,7 @@ export interface PlannerContainer extends ConfiguratorContainer {
|
|
|
884
898
|
GeometryHelpLineArray: GeometryHelpLineArray;
|
|
885
899
|
GroundContourArray: GroundContourArray;
|
|
886
900
|
Obstacle2dArray: Obstacle2dArray;
|
|
901
|
+
ElevationProfilePointArray: ElevationProfilePointArray;
|
|
887
902
|
ElevationViewArray: ElevationViewArray;
|
|
888
903
|
ExternalValidContainerModuleArray: ExternalValidContainerModuleArray;
|
|
889
904
|
ConstructionObjectSet: ConstructionObjectSet;
|
package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm
CHANGED
|
Binary file
|
|
@@ -41,13 +41,13 @@ return vb.apply(this,Ma)});var I=Object.create(E,{constructor:{value:v}});v.prot
|
|
|
41
41
|
var q=m.ha.constructor;void 0===q[a]?(l.ta=c-1,q[a]=l):(Wa(q,a,p),q[a].ma[c-1]=l);M([],k,t=>{t=[t[0],null].concat(t.slice(1));t=nb(p,t,null,g,f,h);void 0===q[a].ma?(t.ta=c-1,q[a]=t):q[a].ma[c-1]=t;if(m.ha.za)for(const v of m.ha.za)v.constructor.hasOwnProperty(a)||(v.constructor[a]=t);return[]});return[]})},Q:(b,a,c,d,e,g,f,h)=>{a=N(a);g=T(e,g);M([],[b],k=>{k=k[0];var m=`${k.name}.${a}`,l={get(){V(`Cannot access ${m} due to unbound types`,[c])},enumerable:!0,configurable:!0};l.set=h?()=>{V(`Cannot access ${m} due to unbound types`,
|
|
42
42
|
[c])}:()=>{throw new O(`${m} is a read-only property`);};Object.defineProperty(k.ha.constructor,a,l);M([],[c],p=>{p=p[0];var q={get(){return p.ia(g(d))},enumerable:!0};h&&(h=T(f,h),q.set=t=>{var v=[];h(d,p.la(v,t));F(v)});Object.defineProperty(k.ha.constructor,a,q);return[]});return[]})},g:(b,a,c,d,e,g)=>{var f=ob(a,c);e=T(d,e);M([],[b],h=>{h=h[0];var k=`constructor ${h.name}`;void 0===h.ha.va&&(h.ha.va=[]);if(void 0!==h.ha.va[a-1])throw new O(`Cannot register multiple constructors with identical number of parameters (${a-
|
|
43
43
|
1}) for class '${h.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);h.ha.va[a-1]=()=>{V(`Cannot construct ${h.name} due to unbound types`,f)};M([],f,m=>{m.splice(1,0,null);h.ha.va[a-1]=nb(k,m,null,e,g);return[]});return[]})},a:(b,a,c,d,e,g,f,h,k)=>{var m=ob(c,d);a=N(a);a=pb(a);g=T(e,g);M([],[b],l=>{function p(){V(`Cannot call ${q} due to unbound types`,m)}l=l[0];var q=`${l.name}.${a}`;a.startsWith("@@")&&(a=Symbol[a.substring(2)]);h&&l.ha.Va.push(a);
|
|
44
|
-
var t=l.ha.ua,v=t[a];void 0===v||void 0===v.ma&&v.className!==l.name&&v.ta===c-2?(p.ta=c-2,p.className=l.name,t[a]=p):(Wa(t,a,q),t[a].ma[c-2]=p);M([],m,z=>{z=nb(q,z,l,g,f,k);void 0===t[a].ma?(z.ta=c-2,t[a]=z):t[a].ma[c-2]=z;return[]});return[]})},
|
|
44
|
+
var t=l.ha.ua,v=t[a];void 0===v||void 0===v.ma&&v.className!==l.name&&v.ta===c-2?(p.ta=c-2,p.className=l.name,t[a]=p):(Wa(t,a,q),t[a].ma[c-2]=p);M([],m,z=>{z=nb(q,z,l,g,f,k);void 0===t[a].ma?(z.ta=c-2,t[a]=z):t[a].ma[c-2]=z;return[]});return[]})},i:(b,a,c,d,e,g,f,h,k,m)=>{a=N(a);e=T(d,e);M([],[b],l=>{l=l[0];var p=`${l.name}.${a}`,q={get(){V(`Cannot access ${p} due to unbound types`,[c,f])},enumerable:!0,configurable:!0};q.set=k?()=>V(`Cannot access ${p} due to unbound types`,[c,f]):()=>{throw new O(p+
|
|
45
45
|
" is a read-only property");};Object.defineProperty(l.ha.ua,a,q);M([],k?[c,f]:[c],t=>{var v=t[0],z={get(){var I=qb(this,l,p+" getter");return v.ia(e(g,I))},enumerable:!0};if(k){k=T(h,k);var E=t[1];z.set=function(I){var A=qb(this,l,p+" setter"),K=[];k(m,A,E.la(K,I));F(K)}}Object.defineProperty(l.ha.ua,a,z);return[]});return[]})},R:b=>L(b,ub),m:(b,a,c,d,e)=>{a=N(a);e=0===e?"object":1===e?"number":"string";switch(e){case "object":function f(){}f.values={};L(b,{name:a,constructor:f,valueType:e,ia:function(h){return this.constructor.values[h]},
|
|
46
46
|
la:(h,k)=>k.value,qa:wb(a,c,d),na:null});Q(a,f);break;case "number":var g={};L(b,{name:a,Da:g,valueType:e,ia:h=>h,la:(h,k)=>k,qa:wb(a,c,d),na:null});Q(a,g);delete n[a].ta;break;case "string":g={},L(b,{name:a,Ka:{},Ja:{},Da:g,valueType:e,ia:function(h){return this.Ja[h]},la:function(h,k){return this.Ka[k]},qa:wb(a,c,d),na:null}),Q(a,g),delete n[a].ta}},c:(b,a,c)=>{var d=xb(b,"enum");a=N(a);switch(d.valueType){case "object":b=d.constructor;d=Object.create(d.constructor.prototype,{value:{value:c},constructor:{value:Ua(`${d.name}_${a}`,
|
|
47
47
|
function(){})}});b.values[c]=d;b[a]=d;break;case "number":d.Da[a]=c;break;case "string":d.Ka[a]=c,d.Ja[c]=a,d.Da[a]=a}},A:(b,a,c)=>{a=N(a);L(b,{name:a,ia:d=>d,la:(d,e)=>e,qa:yb(a,c),na:null})},s:(b,a,c,d,e,g,f)=>{var h=ob(a,c);b=N(b);b=pb(b);e=T(d,e);Q(b,function(){V(`Cannot call ${b} due to unbound types`,h)},a-1);M([],h,k=>{k=[k[0],null].concat(k.slice(1));hb(b,nb(b,k,null,e,g,f),a-1);return[]})},u:(b,a,c,d,e)=>{a=N(a);let g=h=>h;if(0===d){var f=32-8*c;g=h=>h<<f>>>f;e=g(e)}L(b,{name:a,ia:g,la:(h,
|
|
48
48
|
k)=>k,qa:Oa(a,c,0!==d),na:null})},j:(b,a,c,d)=>{c=N(c);d=N(d);M([],[b,a],e=>{zb(e[0].ha.ua,c,d);return[]})},q:(b,a,c)=>{function d(g){return new e(ra.buffer,D[g+4>>2],D[g>>2])}var e=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][a];c=N(c);L(b,{name:c,ia:d,qa:d},{Ta:!0})},k:b=>{L(b,Ab)},n:(b,a,c,d,e,g,f,h,k,m,l,p)=>{c=N(c);g=T(e,g);h=T(f,h);m=T(k,m);p=T(l,p);M([b],[a],q=>{q=q[0];return[new S(c,q.ha,!1,!1,!0,q,d,g,h,m,p)]})},
|
|
49
49
|
S:(b,a)=>{a=N(a);L(b,{name:a,ia(c){var d=(d=c+4)?Cb.decode(y.subarray(d,Db(y,d,D[c>>2],!0))):"";U(c);return d},la(c,d){d instanceof ArrayBuffer&&(d=new Uint8Array(d));var e="string"==typeof d;if(!(e||ArrayBuffer.isView(d)&&1==d.BYTES_PER_ELEMENT))throw new O("Cannot pass non-string to std::string");var g=e?Bb(d):d.length;var f=Zb(4+g+1),h=f+4;D[f>>2]=g;e?Y(d,h,g+1):y.set(d,h);null!==c&&c.push(U,f);return f},qa:G,na(c){U(c)}})},y:(b,a,c)=>{c=N(c);if(2===a){var d=Fb;var e=Gb;var g=Hb}else d=Ib,e=Jb,
|
|
50
|
-
g=Kb;L(b,{name:c,ia:f=>{var h=d(f+4,D[f>>2]*a,!0);U(f);return h},la:(f,h)=>{if("string"!=typeof h)throw new O(`Cannot pass non-string to C++ string type ${c}`);var k=g(h),m=Zb(4+k+a);D[m>>2]=k/a;e(h,m+4,k+a);null!==f&&f.push(U,m);return m},qa:G,na(f){U(f)}})},
|
|
50
|
+
g=Kb;L(b,{name:c,ia:f=>{var h=d(f+4,D[f>>2]*a,!0);U(f);return h},la:(f,h)=>{if("string"!=typeof h)throw new O(`Cannot pass non-string to C++ string type ${c}`);var k=g(h),m=Zb(4+k+a);D[m>>2]=k/a;e(h,m+4,k+a);null!==f&&f.push(U,m);return m},qa:G,na(f){U(f)}})},h:(b,a,c,d,e,g)=>{Ia[b]={name:N(a),Ea:T(c,d),sa:T(e,g),Ga:[]}},b:(b,a,c,d,e,g,f,h,k,m)=>{Ia[b].Ga.push({Na:N(a),Sa:c,Qa:T(d,e),Ra:g,Ya:f,Xa:T(h,k),Za:m})},U:(b,a)=>{a=N(a);L(b,{Ha:!0,name:a,ia:()=>{},la:()=>{}})},F:()=>{Ha=!1;Lb=0},e:(b,a,c)=>
|
|
51
51
|
{var [d,...e]=Ob(b,a);a=d.la.bind(d);var g=e.map(k=>k.qa.bind(k));b--;var f={toValue:X};b=g.map((k,m)=>{var l=`argFromPtr${m}`;f[l]=k;return`${l}(args${m?"+"+8*m:""})`});switch(c){case 0:var h="toValue(handle)";break;case 2:h="new (toValue(handle))";break;case 3:h="";break;case 1:f.getStringOrSymbol=Rb,h="toValue(handle)[getStringOrSymbol(methodName)]"}h+=`(${b})`;d.Ha||(f.toReturnWire=a,f.emval_returnValue=Pb,h=`return emval_returnValue(toReturnWire, destructorsRef, ${h})`);h=`return function (handle, methodName, destructorsRef, args) {\n${h}\n}`;
|
|
52
52
|
c=(new Function(Object.keys(f),h))(...Object.values(f));h=`methodCaller<(${e.map(k=>k.name)}) => ${d.name}>`;return Nb(Ua(h,c))},W:tb,w:b=>{if(!b)return R(globalThis);b=Rb(b);return R(globalThis[b])},C:b=>{b=Rb(b);return R(n[b])},t:(b,a)=>{b=X(b);a=X(a);return R(b[a])},z:b=>{9<b&&(W[b+1]+=1)},V:(b,a)=>{b=X(b);a=X(a);return b instanceof a},d:(b,a,c,d,e)=>Mb[b](a,c,d,e),x:b=>{b=X(b);return"string"==typeof b},v:()=>R([]),l:b=>R(Rb(b)),r:()=>R({}),E:b=>{var a=X(b);F(a);tb(b)},o:(b,a,c)=>{b=X(b);a=X(a);
|
|
53
53
|
c=X(c);b[a]=c},Y:(b,a)=>{b=X(b);a=X(a);return b===a},G:(b,a)=>{Z[b]&&(clearTimeout(Z[b].id),delete Z[b]);if(!a)return 0;var c=setTimeout(()=>{delete Z[b];Ub(()=>ac(b,performance.now()))},a);Z[b]={id:c,ab:a};return 0},I:(b,a,c,d)=>{var e=(new Date).getFullYear(),g=(new Date(e,0,1)).getTimezoneOffset();e=(new Date(e,6,1)).getTimezoneOffset();D[b>>2]=60*Math.max(g,e);C[a>>2]=Number(g!=e);a=f=>{var h=Math.abs(f);return`UTC${0<=f?"-":"+"}${String(Math.floor(h/60)).padStart(2,"0")}${String(h%60).padStart(2,
|
|
Binary file
|