@combeenation/3d-viewer 12.4.1 → 13.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/dist/lib-cjs/buildinfo.json +1 -1
  2. package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
  3. package/dist/lib-cjs/index.d.ts +63 -63
  4. package/dist/lib-cjs/index.js +81 -114
  5. package/dist/lib-cjs/index.js.map +1 -1
  6. package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.d.ts +10 -0
  7. package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.js +132 -0
  8. package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.js.map +1 -0
  9. package/dist/lib-cjs/internal/cloning-helper.d.ts +19 -0
  10. package/dist/lib-cjs/internal/cloning-helper.js +164 -0
  11. package/dist/lib-cjs/internal/cloning-helper.js.map +1 -0
  12. package/dist/lib-cjs/internal/device-helper.d.ts +9 -0
  13. package/dist/lib-cjs/{api/util/deviceHelper.js → internal/device-helper.js} +7 -11
  14. package/dist/lib-cjs/internal/device-helper.js.map +1 -0
  15. package/dist/lib-cjs/internal/geometry-helper.d.ts +21 -0
  16. package/dist/lib-cjs/{api/util/geometryHelper.js → internal/geometry-helper.js} +58 -25
  17. package/dist/lib-cjs/internal/geometry-helper.js.map +1 -0
  18. package/dist/lib-cjs/internal/metadata-helper.d.ts +26 -0
  19. package/dist/lib-cjs/internal/metadata-helper.js +51 -0
  20. package/dist/lib-cjs/internal/metadata-helper.js.map +1 -0
  21. package/dist/lib-cjs/internal/paintable-helper.d.ts +40 -0
  22. package/dist/lib-cjs/internal/paintable-helper.js +287 -0
  23. package/dist/lib-cjs/internal/paintable-helper.js.map +1 -0
  24. package/dist/lib-cjs/internal/tags-helper.d.ts +12 -0
  25. package/dist/lib-cjs/internal/tags-helper.js +38 -0
  26. package/dist/lib-cjs/internal/tags-helper.js.map +1 -0
  27. package/dist/lib-cjs/manager/camera-manager.d.ts +51 -0
  28. package/dist/lib-cjs/manager/camera-manager.js +154 -0
  29. package/dist/lib-cjs/manager/camera-manager.js.map +1 -0
  30. package/dist/lib-cjs/manager/debug-manager.d.ts +60 -0
  31. package/dist/lib-cjs/manager/debug-manager.js +218 -0
  32. package/dist/lib-cjs/manager/debug-manager.js.map +1 -0
  33. package/dist/lib-cjs/manager/event-manager.d.ts +52 -0
  34. package/dist/lib-cjs/manager/event-manager.js +72 -0
  35. package/dist/lib-cjs/manager/event-manager.js.map +1 -0
  36. package/dist/lib-cjs/{api/manager/gltfExportManager.d.ts → manager/gltf-export-manager.d.ts} +29 -34
  37. package/dist/lib-cjs/{api/manager/gltfExportManager.js → manager/gltf-export-manager.js} +103 -124
  38. package/dist/lib-cjs/manager/gltf-export-manager.js.map +1 -0
  39. package/dist/lib-cjs/manager/material-manager.d.ts +35 -0
  40. package/dist/lib-cjs/manager/material-manager.js +126 -0
  41. package/dist/lib-cjs/manager/material-manager.js.map +1 -0
  42. package/dist/lib-cjs/manager/model-manager.d.ts +145 -0
  43. package/dist/lib-cjs/manager/model-manager.js +383 -0
  44. package/dist/lib-cjs/manager/model-manager.js.map +1 -0
  45. package/dist/lib-cjs/manager/parameter-manager.d.ts +210 -0
  46. package/dist/lib-cjs/manager/parameter-manager.js +515 -0
  47. package/dist/lib-cjs/manager/parameter-manager.js.map +1 -0
  48. package/dist/lib-cjs/manager/scene-manager.d.ts +45 -0
  49. package/dist/lib-cjs/manager/scene-manager.js +65 -0
  50. package/dist/lib-cjs/manager/scene-manager.js.map +1 -0
  51. package/dist/lib-cjs/manager/screenshot-manager.d.ts +36 -0
  52. package/dist/lib-cjs/manager/screenshot-manager.js +40 -0
  53. package/dist/lib-cjs/manager/screenshot-manager.js.map +1 -0
  54. package/dist/lib-cjs/manager/texture-manager.d.ts +12 -0
  55. package/dist/lib-cjs/manager/texture-manager.js +44 -0
  56. package/dist/lib-cjs/manager/texture-manager.js.map +1 -0
  57. package/dist/lib-cjs/{api/classes/viewerError.d.ts → viewer-error.d.ts} +6 -1
  58. package/dist/lib-cjs/{api/classes/viewerError.js → viewer-error.js} +7 -2
  59. package/dist/lib-cjs/viewer-error.js.map +1 -0
  60. package/dist/lib-cjs/viewer.d.ts +117 -0
  61. package/dist/lib-cjs/viewer.js +222 -0
  62. package/dist/lib-cjs/viewer.js.map +1 -0
  63. package/package.json +10 -11
  64. package/src/dev.ts +14 -37
  65. package/src/{types.d.ts → global-types.d.ts} +8 -18
  66. package/src/index.ts +79 -113
  67. package/src/internal/cbn-custom-babylon-loader-plugin.ts +159 -0
  68. package/src/internal/cloning-helper.ts +225 -0
  69. package/src/internal/device-helper.ts +25 -0
  70. package/src/{api/util/geometryHelper.ts → internal/geometry-helper.ts} +63 -24
  71. package/src/internal/metadata-helper.ts +63 -0
  72. package/src/internal/paintable-helper.ts +310 -0
  73. package/src/internal/tags-helper.ts +41 -0
  74. package/src/manager/camera-manager.ts +236 -0
  75. package/src/manager/debug-manager.ts +245 -0
  76. package/src/manager/event-manager.ts +72 -0
  77. package/src/{api/manager/gltfExportManager.ts → manager/gltf-export-manager.ts} +132 -125
  78. package/src/manager/material-manager.ts +135 -0
  79. package/src/manager/model-manager.ts +458 -0
  80. package/src/manager/parameter-manager.ts +652 -0
  81. package/src/manager/scene-manager.ts +101 -0
  82. package/src/manager/screenshot-manager.ts +59 -0
  83. package/src/manager/texture-manager.ts +32 -0
  84. package/src/{api/classes/viewerError.ts → viewer-error.ts} +6 -1
  85. package/src/viewer.ts +296 -0
  86. package/dist/lib-cjs/api/classes/animationInterface.d.ts +0 -8
  87. package/dist/lib-cjs/api/classes/animationInterface.js +0 -3
  88. package/dist/lib-cjs/api/classes/animationInterface.js.map +0 -1
  89. package/dist/lib-cjs/api/classes/dottedPath.d.ts +0 -79
  90. package/dist/lib-cjs/api/classes/dottedPath.js +0 -167
  91. package/dist/lib-cjs/api/classes/dottedPath.js.map +0 -1
  92. package/dist/lib-cjs/api/classes/element.d.ts +0 -153
  93. package/dist/lib-cjs/api/classes/element.js +0 -703
  94. package/dist/lib-cjs/api/classes/element.js.map +0 -1
  95. package/dist/lib-cjs/api/classes/event.d.ts +0 -401
  96. package/dist/lib-cjs/api/classes/event.js +0 -425
  97. package/dist/lib-cjs/api/classes/event.js.map +0 -1
  98. package/dist/lib-cjs/api/classes/eventBroadcaster.d.ts +0 -26
  99. package/dist/lib-cjs/api/classes/eventBroadcaster.js +0 -50
  100. package/dist/lib-cjs/api/classes/eventBroadcaster.js.map +0 -1
  101. package/dist/lib-cjs/api/classes/fuzzyMap.d.ts +0 -7
  102. package/dist/lib-cjs/api/classes/fuzzyMap.js +0 -22
  103. package/dist/lib-cjs/api/classes/fuzzyMap.js.map +0 -1
  104. package/dist/lib-cjs/api/classes/parameter.d.ts +0 -410
  105. package/dist/lib-cjs/api/classes/parameter.js +0 -643
  106. package/dist/lib-cjs/api/classes/parameter.js.map +0 -1
  107. package/dist/lib-cjs/api/classes/parameterObservable.d.ts +0 -36
  108. package/dist/lib-cjs/api/classes/parameterObservable.js +0 -73
  109. package/dist/lib-cjs/api/classes/parameterObservable.js.map +0 -1
  110. package/dist/lib-cjs/api/classes/parameterizable.d.ts +0 -15
  111. package/dist/lib-cjs/api/classes/parameterizable.js +0 -103
  112. package/dist/lib-cjs/api/classes/parameterizable.js.map +0 -1
  113. package/dist/lib-cjs/api/classes/placementAnimation.d.ts +0 -45
  114. package/dist/lib-cjs/api/classes/placementAnimation.js +0 -177
  115. package/dist/lib-cjs/api/classes/placementAnimation.js.map +0 -1
  116. package/dist/lib-cjs/api/classes/variant.d.ts +0 -261
  117. package/dist/lib-cjs/api/classes/variant.js +0 -873
  118. package/dist/lib-cjs/api/classes/variant.js.map +0 -1
  119. package/dist/lib-cjs/api/classes/variantInstance.d.ts +0 -53
  120. package/dist/lib-cjs/api/classes/variantInstance.js +0 -126
  121. package/dist/lib-cjs/api/classes/variantInstance.js.map +0 -1
  122. package/dist/lib-cjs/api/classes/variantParameterizable.d.ts +0 -17
  123. package/dist/lib-cjs/api/classes/variantParameterizable.js +0 -87
  124. package/dist/lib-cjs/api/classes/variantParameterizable.js.map +0 -1
  125. package/dist/lib-cjs/api/classes/viewer.d.ts +0 -215
  126. package/dist/lib-cjs/api/classes/viewer.js +0 -709
  127. package/dist/lib-cjs/api/classes/viewer.js.map +0 -1
  128. package/dist/lib-cjs/api/classes/viewerError.js.map +0 -1
  129. package/dist/lib-cjs/api/classes/viewerLight.d.ts +0 -66
  130. package/dist/lib-cjs/api/classes/viewerLight.js +0 -345
  131. package/dist/lib-cjs/api/classes/viewerLight.js.map +0 -1
  132. package/dist/lib-cjs/api/internal/lensRendering.d.ts +0 -8
  133. package/dist/lib-cjs/api/internal/lensRendering.js +0 -12
  134. package/dist/lib-cjs/api/internal/lensRendering.js.map +0 -1
  135. package/dist/lib-cjs/api/internal/sceneSetup.d.ts +0 -13
  136. package/dist/lib-cjs/api/internal/sceneSetup.js +0 -228
  137. package/dist/lib-cjs/api/internal/sceneSetup.js.map +0 -1
  138. package/dist/lib-cjs/api/manager/animationManager.d.ts +0 -30
  139. package/dist/lib-cjs/api/manager/animationManager.js +0 -127
  140. package/dist/lib-cjs/api/manager/animationManager.js.map +0 -1
  141. package/dist/lib-cjs/api/manager/gltfExportManager.js.map +0 -1
  142. package/dist/lib-cjs/api/manager/sceneManager.d.ts +0 -33
  143. package/dist/lib-cjs/api/manager/sceneManager.js +0 -129
  144. package/dist/lib-cjs/api/manager/sceneManager.js.map +0 -1
  145. package/dist/lib-cjs/api/manager/tagManager.d.ts +0 -118
  146. package/dist/lib-cjs/api/manager/tagManager.js +0 -531
  147. package/dist/lib-cjs/api/manager/tagManager.js.map +0 -1
  148. package/dist/lib-cjs/api/manager/textureLoadManager.d.ts +0 -22
  149. package/dist/lib-cjs/api/manager/textureLoadManager.js +0 -108
  150. package/dist/lib-cjs/api/manager/textureLoadManager.js.map +0 -1
  151. package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +0 -106
  152. package/dist/lib-cjs/api/manager/variantInstanceManager.js +0 -291
  153. package/dist/lib-cjs/api/manager/variantInstanceManager.js.map +0 -1
  154. package/dist/lib-cjs/api/store/specStorage.d.ts +0 -32
  155. package/dist/lib-cjs/api/store/specStorage.js +0 -66
  156. package/dist/lib-cjs/api/store/specStorage.js.map +0 -1
  157. package/dist/lib-cjs/api/util/babylonHelper.d.ts +0 -238
  158. package/dist/lib-cjs/api/util/babylonHelper.js +0 -826
  159. package/dist/lib-cjs/api/util/babylonHelper.js.map +0 -1
  160. package/dist/lib-cjs/api/util/debugHelper.d.ts +0 -9
  161. package/dist/lib-cjs/api/util/debugHelper.js +0 -94
  162. package/dist/lib-cjs/api/util/debugHelper.js.map +0 -1
  163. package/dist/lib-cjs/api/util/deviceHelper.d.ts +0 -9
  164. package/dist/lib-cjs/api/util/deviceHelper.js.map +0 -1
  165. package/dist/lib-cjs/api/util/geometryHelper.d.ts +0 -17
  166. package/dist/lib-cjs/api/util/geometryHelper.js.map +0 -1
  167. package/dist/lib-cjs/api/util/globalTypes.d.ts +0 -490
  168. package/dist/lib-cjs/api/util/globalTypes.js +0 -2
  169. package/dist/lib-cjs/api/util/globalTypes.js.map +0 -1
  170. package/dist/lib-cjs/api/util/resourceHelper.d.ts +0 -58
  171. package/dist/lib-cjs/api/util/resourceHelper.js +0 -215
  172. package/dist/lib-cjs/api/util/resourceHelper.js.map +0 -1
  173. package/dist/lib-cjs/api/util/sceneLoaderHelper.d.ts +0 -58
  174. package/dist/lib-cjs/api/util/sceneLoaderHelper.js +0 -229
  175. package/dist/lib-cjs/api/util/sceneLoaderHelper.js.map +0 -1
  176. package/dist/lib-cjs/api/util/stringHelper.d.ts +0 -13
  177. package/dist/lib-cjs/api/util/stringHelper.js +0 -33
  178. package/dist/lib-cjs/api/util/stringHelper.js.map +0 -1
  179. package/dist/lib-cjs/api/util/structureHelper.d.ts +0 -9
  180. package/dist/lib-cjs/api/util/structureHelper.js +0 -58
  181. package/dist/lib-cjs/api/util/structureHelper.js.map +0 -1
  182. package/src/api/classes/animationInterface.ts +0 -10
  183. package/src/api/classes/dottedPath.ts +0 -181
  184. package/src/api/classes/element.ts +0 -766
  185. package/src/api/classes/event.ts +0 -457
  186. package/src/api/classes/eventBroadcaster.ts +0 -52
  187. package/src/api/classes/fuzzyMap.ts +0 -21
  188. package/src/api/classes/parameter.ts +0 -686
  189. package/src/api/classes/parameterObservable.ts +0 -73
  190. package/src/api/classes/parameterizable.ts +0 -87
  191. package/src/api/classes/placementAnimation.ts +0 -162
  192. package/src/api/classes/variant.ts +0 -965
  193. package/src/api/classes/variantInstance.ts +0 -123
  194. package/src/api/classes/variantParameterizable.ts +0 -83
  195. package/src/api/classes/viewer.ts +0 -751
  196. package/src/api/classes/viewerLight.ts +0 -335
  197. package/src/api/internal/debugViewer.ts +0 -90
  198. package/src/api/internal/lensRendering.ts +0 -9
  199. package/src/api/internal/sceneSetup.ts +0 -208
  200. package/src/api/manager/animationManager.ts +0 -143
  201. package/src/api/manager/sceneManager.ts +0 -134
  202. package/src/api/manager/tagManager.ts +0 -572
  203. package/src/api/manager/textureLoadManager.ts +0 -107
  204. package/src/api/manager/variantInstanceManager.ts +0 -306
  205. package/src/api/store/specStorage.ts +0 -68
  206. package/src/api/util/babylonHelper.ts +0 -915
  207. package/src/api/util/debugHelper.ts +0 -121
  208. package/src/api/util/deviceHelper.ts +0 -31
  209. package/src/api/util/globalTypes.ts +0 -566
  210. package/src/api/util/resourceHelper.ts +0 -201
  211. package/src/api/util/sceneLoaderHelper.ts +0 -247
  212. package/src/api/util/stringHelper.ts +0 -30
  213. package/src/api/util/structureHelper.ts +0 -62
@@ -1 +0,0 @@
1
- {"version":3,"file":"variant.js","sourceRoot":"","sources":["../../../../src/api/classes/variant.ts"],"names":[],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- import { Element } from './element';
2
- import { EventBroadcaster } from './eventBroadcaster';
3
- import { ParameterObservable } from './parameterObservable';
4
- import { Variant } from './variant';
5
- import { ViewerLight } from './viewerLight';
6
- import { Mesh } from '@babylonjs/core/Meshes/mesh';
7
- /**
8
- * Class VariantInstance.
9
- */
10
- export declare class VariantInstance extends EventBroadcaster {
11
- name: string;
12
- protected _variant: Variant | null;
13
- /**
14
- * Constructor
15
- */
16
- protected constructor(name: string);
17
- /**
18
- * Creates a living clone of the given source {@link Variant} and instances a {@link VariantInstance} with given name
19
- * and {@link ParameterBag}.
20
- */
21
- static createLiving(sourceVariant: Variant, name: string, parameters?: ParameterBag): Promise<VariantInstance>;
22
- /**
23
- * WORK IN PROGRESS
24
- */
25
- /**
26
- * Gets the {@link Variant} attached to the {@link VariantInstance}.
27
- */
28
- get variant(): Variant;
29
- /**
30
- * A proxy for {@link Variant.getElement}.
31
- */
32
- getElement(dottedPath: DottedPathArgument): Promise<Element>;
33
- /**
34
- * A proxy for {@link Variant.getViewerLight}.
35
- */
36
- getViewerLight(dottedPath: DottedPathArgument): Promise<ViewerLight>;
37
- /**
38
- * A proxy for {@link Variant.getNode}.
39
- */
40
- getNode(elementDottedPath: DottedPathArgument, nodeDottedPath: DottedPathArgument): Promise<TransformNode>;
41
- /**
42
- * A proxy for {@link Variant.getMesh}.
43
- */
44
- getMesh(elementDottedPath: DottedPathArgument, meshDottedPath: DottedPathArgument): Promise<Mesh | null>;
45
- /**
46
- * A proxy for {@link Variant.commitParameters}.
47
- */
48
- commitParameters(parameters?: ParameterBag): Promise<Variant>;
49
- /**
50
- * A proxy for {@link ParameterObservable.commitParameter}.
51
- */
52
- commitParameter(parameter: string, value: ParameterValue): Promise<ParameterObservable>;
53
- }
@@ -1,126 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.VariantInstance = void 0;
13
- const eventBroadcaster_1 = require("./eventBroadcaster");
14
- /**
15
- * Class VariantInstance.
16
- */
17
- class VariantInstance extends eventBroadcaster_1.EventBroadcaster {
18
- /**
19
- * Constructor
20
- */
21
- constructor(name) {
22
- super();
23
- this.name = name;
24
- this._variant = null;
25
- }
26
- /**
27
- * Creates a living clone of the given source {@link Variant} and instances a {@link VariantInstance} with given name
28
- * and {@link ParameterBag}.
29
- */
30
- static createLiving(sourceVariant, name, parameters) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- const variantInstance = new VariantInstance(name);
33
- variantInstance._variant = yield sourceVariant.createLiving(variantInstance, parameters);
34
- return variantInstance;
35
- });
36
- }
37
- /**
38
- * WORK IN PROGRESS
39
- */
40
- /*
41
- public translate(
42
- joint: DottedPathArgument,
43
- variantInstance: VariantInstance,
44
- variantInstanceJoint: DottedPathArgument
45
- ): VariantInstance {
46
- joint = DottedPath.create( joint );
47
- variantInstanceJoint = DottedPath.create( variantInstanceJoint );
48
- const jointNode = variantInstance.variant.getNode( joint.path );
49
- const variantInstanceJointNode = variantInstance.variant.getNode( variantInstanceJoint.path );
50
- const differenceVector = variantInstanceJointNode.getAbsolutePosition().subtract( jointNode.getAbsolutePosition() );
51
- const differenceVectorRotation = variantInstanceJointNode.rotation.subtract( jointNode.rotation );
52
-
53
- console.log( variantInstanceJointNode.rotationQuaternion, 'ROTATION' );
54
-
55
- this.variant.nodes.forEach( node => {
56
- node.translate( Axis.X, differenceVector.x, Space.WORLD );
57
- node.translate( Axis.Y, differenceVector.y, Space.WORLD );
58
- node.translate( Axis.Z, differenceVector.z, Space.WORLD );
59
-
60
- node.rotateAround( Axis.Y, differenceVectorRotation, 20 );
61
- // node.rotate(Axis.Y, differenceVectorRotation.y, Space.WORLD );
62
- // node.rotate(Axis.Z, differenceVectorRotation.z, Space.WORLD );
63
- } );
64
- return this;
65
- }
66
- */
67
- /**
68
- * Gets the {@link Variant} attached to the {@link VariantInstance}.
69
- */
70
- get variant() {
71
- if (!this._variant) {
72
- throw new Error(`Variant has not been properly set for instance.`);
73
- }
74
- return this._variant;
75
- }
76
- /**
77
- * A proxy for {@link Variant.getElement}.
78
- */
79
- getElement(dottedPath) {
80
- return __awaiter(this, void 0, void 0, function* () {
81
- return this.variant.getElement(dottedPath);
82
- });
83
- }
84
- /**
85
- * A proxy for {@link Variant.getViewerLight}.
86
- */
87
- getViewerLight(dottedPath) {
88
- return __awaiter(this, void 0, void 0, function* () {
89
- return this.variant.getViewerLight(dottedPath);
90
- });
91
- }
92
- /**
93
- * A proxy for {@link Variant.getNode}.
94
- */
95
- getNode(elementDottedPath, nodeDottedPath) {
96
- return __awaiter(this, void 0, void 0, function* () {
97
- return this.variant.getNode(elementDottedPath, nodeDottedPath);
98
- });
99
- }
100
- /**
101
- * A proxy for {@link Variant.getMesh}.
102
- */
103
- getMesh(elementDottedPath, meshDottedPath) {
104
- return __awaiter(this, void 0, void 0, function* () {
105
- return this.variant.getMesh(elementDottedPath, meshDottedPath);
106
- });
107
- }
108
- /**
109
- * A proxy for {@link Variant.commitParameters}.
110
- */
111
- commitParameters(parameters) {
112
- return __awaiter(this, void 0, void 0, function* () {
113
- return this.variant.commitParameters(parameters);
114
- });
115
- }
116
- /**
117
- * A proxy for {@link ParameterObservable.commitParameter}.
118
- */
119
- commitParameter(parameter, value) {
120
- return __awaiter(this, void 0, void 0, function* () {
121
- return this.variant.commitParameter(parameter, value);
122
- });
123
- }
124
- }
125
- exports.VariantInstance = VariantInstance;
126
- //# sourceMappingURL=variantInstance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"variantInstance.js","sourceRoot":"","sources":["../../../../src/api/classes/variantInstance.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,yDAAsD;AAMtD;;GAEG;AACH,MAAa,eAAgB,SAAQ,mCAAgB;IAGnD;;OAEG;IACH,YAA6B,IAAY;QACvC,KAAK,EAAE,CAAC;QADmB,SAAI,GAAJ,IAAI,CAAQ;QAL/B,aAAQ,GAAmB,IAAI,CAAC;IAO1C,CAAC;IAED;;;OAGG;IACI,MAAM,CAAO,YAAY,CAC9B,aAAsB,EACtB,IAAY,EACZ,UAAyB;;YAEzB,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;YAClD,eAAe,CAAC,QAAQ,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;YACzF,OAAO,eAAe,CAAC;QACzB,CAAC;KAAA;IAED;;OAEG;IACH;;;;;;;;;;;;;;;;;;;;;;;;;;MA0BE;IAEF;;OAEG;IACH,IAAI,OAAO;QACT,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACpE;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACU,UAAU,CAAC,UAA8B;;YACpD,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC;KAAA;IAED;;OAEG;IACU,cAAc,CAAC,UAA8B;;YACxD,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACU,OAAO,CAClB,iBAAqC,EACrC,cAAkC;;YAElC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;QACjE,CAAC;KAAA;IAED;;OAEG;IACU,OAAO,CAClB,iBAAqC,EACrC,cAAkC;;YAElC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;QACjE,CAAC;KAAA;IAED;;OAEG;IACU,gBAAgB,CAAC,UAAyB;;YACrD,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACnD,CAAC;KAAA;IAED;;OAEG;IACU,eAAe,CAAC,SAAiB,EAAE,KAAqB;;YACnE,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;KAAA;CACF;AAhHD,0CAgHC"}
@@ -1,17 +0,0 @@
1
- import { Parameterizable } from './../classes/parameterizable';
2
- import { Variant } from './../classes/variant';
3
- export declare abstract class VariantParameterizable extends Parameterizable {
4
- readonly variant: Variant;
5
- readonly name: string;
6
- protected readonly _parameterObservers: Map<string, ParameterObserver[]>;
7
- protected constructor(variant: Variant, name: string);
8
- /**
9
- * Gets the inherited parameters from the {@link Variant} with cleaned {@link Parameterizable} prefix.
10
- */
11
- get inheritedParameters(): ParameterBag;
12
- /**
13
- * Places the given {@link ParameterBag} in the {@link VariantParameterizable}'s parameters, replaces all patterns in
14
- * the {@link StructureJson} and broadcasts all {@link ParameterObserver}s.
15
- */
16
- commitParameters(parameters?: ParameterBag): Promise<VariantParameterizable>;
17
- }
@@ -1,87 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.VariantParameterizable = void 0;
13
- const dottedPath_1 = require("./../classes/dottedPath");
14
- const event_1 = require("./../classes/event");
15
- const parameterizable_1 = require("./../classes/parameterizable");
16
- const resourceHelper_1 = require("./../util/resourceHelper");
17
- const stringHelper_1 = require("./../util/stringHelper");
18
- const lodash_es_1 = require("lodash-es");
19
- class VariantParameterizable extends parameterizable_1.Parameterizable {
20
- constructor(variant, name) {
21
- super();
22
- this.variant = variant;
23
- this.name = name;
24
- this._parameterObservers = new Map();
25
- }
26
- /**
27
- * Gets the inherited parameters from the {@link Variant} with cleaned {@link Parameterizable} prefix.
28
- */
29
- get inheritedParameters() {
30
- const parameterBag = {};
31
- for (const parameter in this.variant.inheritedParameters) {
32
- const dpp = dottedPath_1.DottedPath.create(parameter);
33
- if (dpp.parts.length !== 1) {
34
- continue;
35
- }
36
- parameterBag[parameter] = this.variant.inheritedParameters[parameter];
37
- }
38
- for (const parameter in this.variant.inheritedParameters) {
39
- const dpp = dottedPath_1.DottedPath.create(parameter);
40
- if (dpp.firstPart !== this.name) {
41
- continue;
42
- }
43
- dpp.shiftPart();
44
- parameterBag[dpp.path] = this.variant.inheritedParameters[parameter];
45
- }
46
- return parameterBag;
47
- }
48
- /**
49
- * Places the given {@link ParameterBag} in the {@link VariantParameterizable}'s parameters, replaces all patterns in
50
- * the {@link StructureJson} and broadcasts all {@link ParameterObserver}s.
51
- */
52
- commitParameters(parameters) {
53
- return __awaiter(this, void 0, void 0, function* () {
54
- if (!parameters) {
55
- parameters = {};
56
- }
57
- const oldParameters = (0, lodash_es_1.cloneDeep)(this.parameters);
58
- (0, lodash_es_1.merge)(this.parameters, parameters);
59
- // handle parameter observers
60
- let observerPromises = [];
61
- for (const parameter in this.parameters) {
62
- const oldParameterValue = oldParameters[parameter];
63
- const newParameterValue = this.parameters[parameter];
64
- this.variant.assertParameter(this.variant.inheritedParameterDeclaration, parameter, newParameterValue);
65
- if (oldParameterValue === newParameterValue) {
66
- continue;
67
- }
68
- // parameter changed
69
- const parameterObservers = (0, resourceHelper_1.mergeMaps)(this._parameterObservers, this.parameterObservers);
70
- if (parameterObservers.has(parameter)) {
71
- const observers = parameterObservers.get(parameter);
72
- observerPromises = (0, lodash_es_1.concat)(observerPromises, observers.map(observer => {
73
- const observerPromise = observer(this, oldParameterValue, newParameterValue);
74
- return Promise.resolve(observerPromise).then(() => {
75
- const clsName = (0, stringHelper_1.camelToSnakeCase)(this.constructor.name).toUpperCase();
76
- this.broadcastEvent((0, lodash_es_1.get)(event_1.Event, clsName + '_PARAMETER_COMMITTED'), this, parameter, oldParameterValue, newParameterValue);
77
- });
78
- }));
79
- }
80
- }
81
- yield Promise.all(observerPromises);
82
- return this;
83
- });
84
- }
85
- }
86
- exports.VariantParameterizable = VariantParameterizable;
87
- //# sourceMappingURL=variantParameterizable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"variantParameterizable.js","sourceRoot":"","sources":["../../../../src/api/classes/variantParameterizable.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wDAAqD;AACrD,8CAA2C;AAC3C,kEAA+D;AAE/D,6DAAqD;AACrD,yDAA0D;AAC1D,yCAA0D;AAE1D,MAAsB,sBAAuB,SAAQ,iCAAe;IAGlE,YAAsC,OAAgB,EAAkB,IAAY;QAClF,KAAK,EAAE,CAAC;QAD4B,YAAO,GAAP,OAAO,CAAS;QAAkB,SAAI,GAAJ,IAAI,CAAQ;QAFjE,wBAAmB,GAAqC,IAAI,GAAG,EAAE,CAAC;IAIrF,CAAC;IAED;;OAEG;IACH,IAAI,mBAAmB;QACrB,MAAM,YAAY,GAAiB,EAAE,CAAC;QACtC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YACxD,MAAM,GAAG,GAAG,uBAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,SAAS;aACV;YACD,YAAY,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;SACvE;QACD,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YACxD,MAAM,GAAG,GAAG,uBAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,IAAI,EAAE;gBAC/B,SAAS;aACV;YACD,GAAG,CAAC,SAAS,EAAE,CAAC;YAChB,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;SACtE;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;OAGG;IACU,gBAAgB,CAAC,UAAyB;;YACrD,IAAI,CAAC,UAAU,EAAE;gBACf,UAAU,GAAG,EAAE,CAAC;aACjB;YACD,MAAM,aAAa,GAAG,IAAA,qBAAS,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACjD,IAAA,iBAAK,EAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACnC,6BAA6B;YAC7B,IAAI,gBAAgB,GAAuC,EAAE,CAAC;YAC9D,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;gBACvC,MAAM,iBAAiB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;gBACnD,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACrD,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;gBACvG,IAAI,iBAAiB,KAAK,iBAAiB,EAAE;oBAC3C,SAAS;iBACV;gBACD,oBAAoB;gBACpB,MAAM,kBAAkB,GAAG,IAAA,0BAAS,EAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACxF,IAAI,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;oBACrC,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;oBACrD,gBAAgB,GAAG,IAAA,kBAAM,EACvB,gBAAgB,EAChB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;wBACvB,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;wBAC7E,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;4BAChD,MAAM,OAAO,GAAG,IAAA,+BAAgB,EAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;4BACtE,IAAI,CAAC,cAAc,CACjB,IAAA,eAAG,EAAC,aAAK,EAAE,OAAO,GAAG,sBAAsB,CAAC,EAC5C,IAAI,EACJ,SAAS,EACT,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;wBACJ,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CACH,CAAC;iBACH;aACF;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACpC,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;CACF;AA1ED,wDA0EC"}
@@ -1,215 +0,0 @@
1
- import { AnimationManager } from '../manager/animationManager';
2
- import { GltfExportManager } from '../manager/gltfExportManager';
3
- import { SceneManager } from '../manager/sceneManager';
4
- import { TagManager } from '../manager/tagManager';
5
- import { VariantInstanceManager } from '../manager/variantInstanceManager';
6
- import * as Index from './../../index';
7
- import { AnimationInterface } from './animationInterface';
8
- import { EventBroadcaster } from './eventBroadcaster';
9
- import { VariantInstance } from './variantInstance';
10
- import { BoundingInfo } from '@babylonjs/core/Culling/boundingInfo';
11
- import { Engine } from '@babylonjs/core/Engines/engine';
12
- import { Mesh } from '@babylonjs/core/Meshes/mesh';
13
- import { Scene } from '@babylonjs/core/scene';
14
- /**
15
- * The main exposed object. This is the entry point into the application
16
- *
17
- * ```js
18
- * const canvas = document.getElementById( 'babylon-canvas' );
19
- * const viewer = Viewer( canvas, '/path/to/index.json' );
20
- * ```
21
- * The class does nothing on its own and needs to {@link bootstrap}
22
- */
23
- export declare class Viewer extends EventBroadcaster {
24
- readonly canvas: HTMLCanvasElement;
25
- protected structureJson: string | StructureJson;
26
- protected _scene: Scene | null;
27
- protected _animationManager: AnimationManager | null;
28
- protected _sceneManager: SceneManager | null;
29
- protected _tagManager: TagManager | null;
30
- protected _gltfExportManager: GltfExportManager | null;
31
- protected _variantInstances: VariantInstanceManager | null;
32
- protected _cloneMaterialsOnMutation: boolean;
33
- protected _isRenderLoopPaused: boolean;
34
- protected _nodeNamingStrategyHandler: NodeNamingStrategyHandler | null;
35
- static version: string;
36
- private static readonly _autofocusConstants;
37
- /**
38
- * Help function for automatically creating a valid Spec from a list of variant names and dedicated GLB/babylon URLs.
39
- * This data is most likely coming from babylon assets from the Combeenation system but other sources are also valid.
40
- */
41
- static generateSpec(genData: SpecGenerationData[]): AutoSpecStructureJson;
42
- /**
43
- * Returns all modules which are exported by the viewers index file.
44
- *
45
- * Needed by the [Combeenation viewer control](https://docs.combeenation.com/docs/3d-viewer-control) in situations where the viewer is injected from external code.
46
- *
47
- * See [Combeenation docs](https://docs.combeenation.com/docs/3d-viewer-control-with-custom-js) for more details.
48
- */
49
- static getAllViewerModules(): typeof Index;
50
- /**
51
- * Constructor
52
- */
53
- constructor(canvas: HTMLCanvasElement, structureJson: string | StructureJson);
54
- /**
55
- * Gets the Babylon.js Scene that is attached to the instance.
56
- *
57
- * @throws Error if the `scene` has not been initialized.
58
- */
59
- get scene(): Scene;
60
- /**
61
- * Gets the {@link SceneManager} attached to the viewer.
62
- *
63
- * @throws Error if the {@link SceneManager} has not been initialized.
64
- */
65
- get sceneManager(): SceneManager;
66
- /**
67
- * Gets the {@link GltfExportManager} attached to the viewer.
68
- *
69
- * @throws Error if the {@link GltfExportManager} has not been initialized.
70
- */
71
- get gltfExportManager(): GltfExportManager;
72
- /**
73
- * Gets the Babylon.js Engine that is attached to the viewer.
74
- */
75
- get engine(): Engine;
76
- /**
77
- * Gets the {@link VariantInstanceManager} attached to the viewer.
78
- *
79
- * @throws Error if the {@link VariantInstanceManager} has not been initialized.
80
- */
81
- get variantInstances(): VariantInstanceManager;
82
- /**
83
- * Gets the {@link AnimationManager} attached to the viewer.
84
- *
85
- * @throws Error if the {@link AnimationManager} has not been initialized.
86
- */
87
- get animationManager(): AnimationManager;
88
- get tagManager(): TagManager;
89
- /**
90
- * Gets the `cloneMaterialsOnMutation` flag, as defined in the spec
91
- */
92
- get cloneMaterialsOnMutation(): boolean;
93
- /**
94
- * Gets the strategy handler for naming cloned nodes.
95
- */
96
- get nodeNamingStrategyHandler(): NodeNamingStrategyHandler;
97
- /**
98
- * Sets the strategy handler for naming cloned nodes.\
99
- * Check the docs of the tag managers [renaming](https://3dviewer.docs.combeenation.com/pages/documentation/Tag-Manager.html#uniqueness-of-node-and-tag-names)
100
- * chapter for further details.
101
- */
102
- set nodeNamingStrategyHandler(value: NodeNamingStrategyHandler);
103
- /**
104
- * Starts the application. This will
105
- * * load the given "index" JSON file
106
- * * setup the scene with the "scene" JSON file
107
- * * create an (optional) default setup with different variant settings
108
- * * sets up resizing by attaching a debounced version of {@link resize}
109
- *
110
- * @throws Error if any of the files is not found/valid
111
- *
112
- * @emits {@link Event.BOOTSTRAP_START}
113
- * @emits {@link Event.BOOTSTRAP_END}
114
- */
115
- bootstrap(tagManagerParameterValues?: TagManagerParameterValue[]): Promise<Viewer>;
116
- /**
117
- * Enables the Babylon.js [Inspector](https://doc.babylonjs.com/toolsAndResources/tools/inspector).\
118
- * Due to the additional size of the inspector, this function is only available in "development" builds!
119
- *
120
- * @returns Signalizes if inspector could be loaded
121
- */
122
- enableDebugLayer(options?: IInspectorOptions): Promise<boolean>;
123
- /**
124
- * Destroys all registered {@link VariantInstance}s that are registered
125
- */
126
- destroyVariantInstances(): Viewer;
127
- /**
128
- * Trigger a resize event for the `Engine`
129
- */
130
- resize(): Viewer;
131
- /**
132
- * A convenience method for directly getting a Node from a {@link VariantInstance} and an {@link Element} by its
133
- * {@link DottedPath}s.
134
- */
135
- getNode(variantInstanceName: string, elementDottedPath: DottedPathArgument, nodeDottedPath: DottedPathArgument): Promise<TransformNode>;
136
- /**
137
- * A convenience method for directly getting a Node from a {@link VariantInstance} and an {@link Element} by its
138
- * {@link DottedPath}s.
139
- */
140
- getMesh(variantInstanceName: string, elementDottedPath: DottedPathArgument, meshDottedPath: DottedPathArgument): Promise<Mesh | null>;
141
- /**
142
- * Switches the camera
143
- *
144
- * @emits {@link Event.CAMERA_SWITCHED}
145
- */
146
- switchCamera(newCamera: string, reset?: boolean): Viewer;
147
- /**
148
- * Moves or animates the active camera to given `placement`.
149
- */
150
- moveActiveCameraTo(placement: string | PlacementDefinition, animation?: string | AnimationDefinition): Promise<AnimationInterface>;
151
- /**
152
- * Takes a sceenshot the the current scene. The result is a string containing a base64 encoded image
153
- */
154
- screenshot(settings?: ScreenshotSettings): Promise<string>;
155
- /**
156
- * Checks whether the browser is capable of handling XR.
157
- */
158
- isBrowserARCapable(): Promise<boolean>;
159
- /**
160
- * Calculates the bounding box information from all visible meshes on the scene.
161
- */
162
- calculateBoundingInfo(excludeGeometry?: ExcludedGeometryList): BoundingInfo;
163
- /**
164
- * Focuses the camera to see every visible mesh in scene and tries to optimize wheel precision and panning
165
- */
166
- autofocusActiveCamera(settings?: AutofocusSettings): Promise<void>;
167
- /**
168
- * Resets everything by calling {@link destroy} to clear all references and {@link bootstrap} to setup a clean
169
- * environment
170
- */
171
- reset(tagManagerParameterValues?: TagManagerParameterValue[]): Promise<Viewer>;
172
- /**
173
- * Destroys
174
- *
175
- * * all {@link VariantInstance}s using {@link destroyVariantInstances}
176
- * * calling `dispose` on the `Engine` and `Scene`
177
- */
178
- destroy(): Viewer;
179
- /**
180
- * Show world coordinate system with given dimension (for debugging purpose).
181
- */
182
- showWorldCoordinates(dimension: number): void;
183
- /**
184
- * Hide world coordinate system.
185
- */
186
- hideWorldCoordinates(): void;
187
- /**
188
- * Pause render loop.
189
- */
190
- pauseRendering(): void;
191
- /**
192
- * Resume render loop when paused.
193
- */
194
- resumeRendering(): void;
195
- /**
196
- * Prints defined instances from SetupJson to the console.
197
- */
198
- protected printInstanceDefinitions(setupJson: SetupJson): void;
199
- /**
200
- * @emits {@link Event.SCENE_PROCESSING_START}
201
- * @emits {@link Event.SCENE_PROCESSING_END}
202
- */
203
- protected initScene(): Promise<Scene>;
204
- /**
205
- * Register custom file loader for babylon files which adds "missing-material" metadata to meshes which reference
206
- * materials that are not present in the `materials` section of the given babylon file.
207
- *
208
- * Required for babylon files & materials loaded from "Combeenation configurator assets".
209
- */
210
- protected initCbnBabylonLoaderPlugin(): void;
211
- /**
212
- * Batch creation of multiple {@link VariantInstance} objects with a {@link SetupJson} object passed
213
- */
214
- protected createVariantInstances(): Promise<VariantInstance[]>;
215
- }