@combeenation/3d-viewer 5.1.2 → 5.2.0-alpha4

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 (221) hide show
  1. package/README.md +111 -111
  2. package/dist/lib-cjs/api/classes/animationInterface.d.ts +8 -8
  3. package/dist/lib-cjs/api/classes/animationInterface.js +2 -1
  4. package/dist/lib-cjs/api/classes/dottedPath.d.ts +79 -79
  5. package/dist/lib-cjs/api/classes/dottedPath.js +166 -187
  6. package/dist/lib-cjs/api/classes/dottedPath.js.map +1 -1
  7. package/dist/lib-cjs/api/classes/element.d.ts +149 -149
  8. package/dist/lib-cjs/api/classes/element.js +668 -823
  9. package/dist/lib-cjs/api/classes/element.js.map +1 -1
  10. package/dist/lib-cjs/api/classes/event.d.ts +326 -326
  11. package/dist/lib-cjs/api/classes/event.js +349 -371
  12. package/dist/lib-cjs/api/classes/event.js.map +1 -1
  13. package/dist/lib-cjs/api/classes/eventBroadcaster.d.ts +26 -26
  14. package/dist/lib-cjs/api/classes/eventBroadcaster.js +49 -53
  15. package/dist/lib-cjs/api/classes/eventBroadcaster.js.map +1 -1
  16. package/dist/lib-cjs/api/classes/parameter.d.ts +336 -336
  17. package/dist/lib-cjs/api/classes/parameter.js +461 -471
  18. package/dist/lib-cjs/api/classes/parameter.js.map +1 -1
  19. package/dist/lib-cjs/api/classes/parameterObservable.d.ts +36 -36
  20. package/dist/lib-cjs/api/classes/parameterObservable.js +97 -101
  21. package/dist/lib-cjs/api/classes/parameterObservable.js.map +1 -1
  22. package/dist/lib-cjs/api/classes/parameterizable.d.ts +15 -15
  23. package/dist/lib-cjs/api/classes/parameterizable.js +102 -149
  24. package/dist/lib-cjs/api/classes/parameterizable.js.map +1 -1
  25. package/dist/lib-cjs/api/classes/placementAnimation.d.ts +45 -44
  26. package/dist/lib-cjs/api/classes/placementAnimation.js +175 -163
  27. package/dist/lib-cjs/api/classes/placementAnimation.js.map +1 -1
  28. package/dist/lib-cjs/api/classes/variant.d.ts +234 -234
  29. package/dist/lib-cjs/api/classes/variant.js +836 -1203
  30. package/dist/lib-cjs/api/classes/variant.js.map +1 -1
  31. package/dist/lib-cjs/api/classes/variantInstance.d.ts +45 -45
  32. package/dist/lib-cjs/api/classes/variantInstance.js +101 -108
  33. package/dist/lib-cjs/api/classes/variantInstance.js.map +1 -1
  34. package/dist/lib-cjs/api/classes/variantParameterizable.d.ts +17 -17
  35. package/dist/lib-cjs/api/classes/variantParameterizable.js +88 -99
  36. package/dist/lib-cjs/api/classes/variantParameterizable.js.map +1 -1
  37. package/dist/lib-cjs/api/classes/viewer.d.ts +187 -184
  38. package/dist/lib-cjs/api/classes/viewer.js +593 -731
  39. package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
  40. package/dist/lib-cjs/api/classes/viewerLight.d.ts +66 -66
  41. package/dist/lib-cjs/api/classes/viewerLight.js +343 -392
  42. package/dist/lib-cjs/api/classes/viewerLight.js.map +1 -1
  43. package/dist/lib-cjs/api/internal/lensRendering.d.ts +8 -8
  44. package/dist/lib-cjs/api/internal/lensRendering.js +11 -11
  45. package/dist/lib-cjs/api/internal/lensRendering.js.map +1 -1
  46. package/dist/lib-cjs/api/internal/sceneSetup.d.ts +13 -13
  47. package/dist/lib-cjs/api/internal/sceneSetup.js +225 -238
  48. package/dist/lib-cjs/api/internal/sceneSetup.js.map +1 -1
  49. package/dist/lib-cjs/api/manager/animationManager.d.ts +30 -29
  50. package/dist/lib-cjs/api/manager/animationManager.js +126 -130
  51. package/dist/lib-cjs/api/manager/animationManager.js.map +1 -1
  52. package/dist/lib-cjs/api/manager/gltfExportManager.d.ts +65 -65
  53. package/dist/lib-cjs/api/manager/gltfExportManager.js +196 -223
  54. package/dist/lib-cjs/api/manager/gltfExportManager.js.map +1 -1
  55. package/dist/lib-cjs/api/manager/sceneManager.d.ts +31 -31
  56. package/dist/lib-cjs/api/manager/sceneManager.js +127 -152
  57. package/dist/lib-cjs/api/manager/sceneManager.js.map +1 -1
  58. package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +92 -92
  59. package/dist/lib-cjs/api/manager/variantInstanceManager.js +260 -335
  60. package/dist/lib-cjs/api/manager/variantInstanceManager.js.map +1 -1
  61. package/dist/lib-cjs/api/store/specStorage.d.ts +24 -24
  62. package/dist/lib-cjs/api/store/specStorage.js +50 -51
  63. package/dist/lib-cjs/api/store/specStorage.js.map +1 -1
  64. package/dist/lib-cjs/api/util/babylonHelper.d.ts +174 -174
  65. package/dist/lib-cjs/api/util/babylonHelper.js +591 -611
  66. package/dist/lib-cjs/api/util/babylonHelper.js.map +1 -1
  67. package/dist/lib-cjs/api/util/globalTypes.d.ts +366 -366
  68. package/dist/lib-cjs/api/util/globalTypes.js +1 -1
  69. package/dist/lib-cjs/api/util/resourceHelper.d.ts +58 -58
  70. package/dist/lib-cjs/api/util/resourceHelper.js +201 -257
  71. package/dist/lib-cjs/api/util/resourceHelper.js.map +1 -1
  72. package/dist/lib-cjs/api/util/sceneLoaderHelper.d.ts +35 -35
  73. package/dist/lib-cjs/api/util/sceneLoaderHelper.js +141 -140
  74. package/dist/lib-cjs/api/util/sceneLoaderHelper.js.map +1 -1
  75. package/dist/lib-cjs/api/util/stringHelper.d.ts +9 -9
  76. package/dist/lib-cjs/api/util/stringHelper.js +23 -25
  77. package/dist/lib-cjs/api/util/stringHelper.js.map +1 -1
  78. package/dist/lib-cjs/api/util/structureHelper.d.ts +9 -9
  79. package/dist/lib-cjs/api/util/structureHelper.js +48 -48
  80. package/dist/lib-cjs/api/util/structureHelper.js.map +1 -1
  81. package/dist/lib-cjs/buildinfo.json +3 -3
  82. package/dist/lib-cjs/index.d.ts +51 -49
  83. package/dist/lib-cjs/index.js +110 -89
  84. package/dist/lib-cjs/index.js.map +1 -1
  85. package/dist/lib-es6/api/classes/animationInterface.d.ts +8 -8
  86. package/dist/lib-es6/api/classes/animationInterface.js +1 -1
  87. package/dist/lib-es6/api/classes/dottedPath.d.ts +79 -79
  88. package/dist/lib-es6/api/classes/dottedPath.js +162 -184
  89. package/dist/lib-es6/api/classes/dottedPath.js.map +1 -1
  90. package/dist/lib-es6/api/classes/element.d.ts +149 -149
  91. package/dist/lib-es6/api/classes/element.js +664 -820
  92. package/dist/lib-es6/api/classes/element.js.map +1 -1
  93. package/dist/lib-es6/api/classes/event.d.ts +326 -326
  94. package/dist/lib-es6/api/classes/event.js +345 -368
  95. package/dist/lib-es6/api/classes/event.js.map +1 -1
  96. package/dist/lib-es6/api/classes/eventBroadcaster.d.ts +26 -26
  97. package/dist/lib-es6/api/classes/eventBroadcaster.js +42 -50
  98. package/dist/lib-es6/api/classes/eventBroadcaster.js.map +1 -1
  99. package/dist/lib-es6/api/classes/parameter.d.ts +336 -336
  100. package/dist/lib-es6/api/classes/parameter.js +457 -468
  101. package/dist/lib-es6/api/classes/parameter.js.map +1 -1
  102. package/dist/lib-es6/api/classes/parameterObservable.d.ts +36 -36
  103. package/dist/lib-es6/api/classes/parameterObservable.js +93 -98
  104. package/dist/lib-es6/api/classes/parameterObservable.js.map +1 -1
  105. package/dist/lib-es6/api/classes/parameterizable.d.ts +15 -15
  106. package/dist/lib-es6/api/classes/parameterizable.js +98 -146
  107. package/dist/lib-es6/api/classes/parameterizable.js.map +1 -1
  108. package/dist/lib-es6/api/classes/placementAnimation.d.ts +45 -44
  109. package/dist/lib-es6/api/classes/placementAnimation.js +171 -160
  110. package/dist/lib-es6/api/classes/placementAnimation.js.map +1 -1
  111. package/dist/lib-es6/api/classes/variant.d.ts +234 -234
  112. package/dist/lib-es6/api/classes/variant.js +832 -1198
  113. package/dist/lib-es6/api/classes/variant.js.map +1 -1
  114. package/dist/lib-es6/api/classes/variantInstance.d.ts +45 -45
  115. package/dist/lib-es6/api/classes/variantInstance.js +97 -105
  116. package/dist/lib-es6/api/classes/variantInstance.js.map +1 -1
  117. package/dist/lib-es6/api/classes/variantParameterizable.d.ts +17 -17
  118. package/dist/lib-es6/api/classes/variantParameterizable.js +84 -96
  119. package/dist/lib-es6/api/classes/variantParameterizable.js.map +1 -1
  120. package/dist/lib-es6/api/classes/viewer.d.ts +187 -184
  121. package/dist/lib-es6/api/classes/viewer.js +586 -728
  122. package/dist/lib-es6/api/classes/viewer.js.map +1 -1
  123. package/dist/lib-es6/api/classes/viewerLight.d.ts +66 -66
  124. package/dist/lib-es6/api/classes/viewerLight.js +316 -389
  125. package/dist/lib-es6/api/classes/viewerLight.js.map +1 -1
  126. package/dist/lib-es6/api/internal/lensRendering.d.ts +8 -8
  127. package/dist/lib-es6/api/internal/lensRendering.js +8 -8
  128. package/dist/lib-es6/api/internal/lensRendering.js.map +1 -1
  129. package/dist/lib-es6/api/internal/sceneSetup.d.ts +13 -13
  130. package/dist/lib-es6/api/internal/sceneSetup.js +197 -233
  131. package/dist/lib-es6/api/internal/sceneSetup.js.map +1 -1
  132. package/dist/lib-es6/api/manager/animationManager.d.ts +30 -29
  133. package/dist/lib-es6/api/manager/animationManager.js +122 -127
  134. package/dist/lib-es6/api/manager/animationManager.js.map +1 -1
  135. package/dist/lib-es6/api/manager/gltfExportManager.d.ts +65 -65
  136. package/dist/lib-es6/api/manager/gltfExportManager.js +192 -220
  137. package/dist/lib-es6/api/manager/gltfExportManager.js.map +1 -1
  138. package/dist/lib-es6/api/manager/sceneManager.d.ts +31 -31
  139. package/dist/lib-es6/api/manager/sceneManager.js +123 -149
  140. package/dist/lib-es6/api/manager/sceneManager.js.map +1 -1
  141. package/dist/lib-es6/api/manager/variantInstanceManager.d.ts +92 -92
  142. package/dist/lib-es6/api/manager/variantInstanceManager.js +256 -332
  143. package/dist/lib-es6/api/manager/variantInstanceManager.js.map +1 -1
  144. package/dist/lib-es6/api/store/specStorage.d.ts +24 -24
  145. package/dist/lib-es6/api/store/specStorage.js +46 -48
  146. package/dist/lib-es6/api/store/specStorage.js.map +1 -1
  147. package/dist/lib-es6/api/util/babylonHelper.d.ts +174 -174
  148. package/dist/lib-es6/api/util/babylonHelper.js +561 -581
  149. package/dist/lib-es6/api/util/babylonHelper.js.map +1 -1
  150. package/dist/lib-es6/api/util/globalTypes.d.ts +366 -366
  151. package/dist/lib-es6/api/util/globalTypes.js +1 -1
  152. package/dist/lib-es6/api/util/resourceHelper.d.ts +58 -58
  153. package/dist/lib-es6/api/util/resourceHelper.js +191 -247
  154. package/dist/lib-es6/api/util/resourceHelper.js.map +1 -1
  155. package/dist/lib-es6/api/util/sceneLoaderHelper.d.ts +35 -35
  156. package/dist/lib-es6/api/util/sceneLoaderHelper.js +131 -133
  157. package/dist/lib-es6/api/util/sceneLoaderHelper.js.map +1 -1
  158. package/dist/lib-es6/api/util/stringHelper.d.ts +9 -9
  159. package/dist/lib-es6/api/util/stringHelper.js +19 -21
  160. package/dist/lib-es6/api/util/stringHelper.js.map +1 -1
  161. package/dist/lib-es6/api/util/structureHelper.d.ts +9 -9
  162. package/dist/lib-es6/api/util/structureHelper.js +45 -45
  163. package/dist/lib-es6/api/util/structureHelper.js.map +1 -1
  164. package/dist/lib-es6/buildinfo.json +3 -3
  165. package/dist/lib-es6/index.d.ts +51 -49
  166. package/dist/lib-es6/index.js +48 -50
  167. package/dist/lib-es6/index.js.map +1 -1
  168. package/dist/lib-full/lens-rendering.js +2 -0
  169. package/dist/lib-full/lens-rendering.js.map +1 -0
  170. package/dist/lib-full/main.js +3 -0
  171. package/dist/lib-full/main.js.LICENSE.txt +9 -0
  172. package/dist/lib-full/main.js.map +1 -0
  173. package/package.json +76 -88
  174. package/src/api/classes/animationInterface.ts +10 -10
  175. package/src/api/classes/dottedPath.ts +181 -181
  176. package/src/api/classes/element.ts +716 -716
  177. package/src/api/classes/event.ts +367 -367
  178. package/src/api/classes/eventBroadcaster.ts +52 -52
  179. package/src/api/classes/parameter.ts +494 -494
  180. package/src/api/classes/parameterObservable.ts +100 -100
  181. package/src/api/classes/parameterizable.ts +87 -87
  182. package/src/api/classes/placementAnimation.ts +161 -160
  183. package/src/api/classes/variant.ts +904 -905
  184. package/src/api/classes/variantInstance.ts +97 -97
  185. package/src/api/classes/variantParameterizable.ts +85 -85
  186. package/src/api/classes/viewer.ts +669 -668
  187. package/src/api/classes/viewerLight.ts +334 -334
  188. package/src/api/internal/debugViewer.ts +90 -90
  189. package/src/api/internal/lensRendering.ts +9 -10
  190. package/src/api/internal/sceneSetup.ts +204 -204
  191. package/src/api/manager/animationManager.ts +143 -142
  192. package/src/api/manager/gltfExportManager.ts +191 -191
  193. package/src/api/manager/sceneManager.ts +127 -127
  194. package/src/api/manager/variantInstanceManager.ts +265 -265
  195. package/src/api/store/specStorage.ts +51 -51
  196. package/src/api/util/babylonHelper.ts +663 -663
  197. package/src/api/util/globalTypes.ts +413 -413
  198. package/src/api/util/resourceHelper.ts +189 -189
  199. package/src/api/util/sceneLoaderHelper.ts +148 -147
  200. package/src/api/util/stringHelper.ts +23 -23
  201. package/src/api/util/structureHelper.ts +49 -49
  202. package/src/buildinfo.json +3 -3
  203. package/src/dev.ts +61 -64
  204. package/src/index.ts +96 -94
  205. package/src/types.d.ts +28 -28
  206. package/dist/lib-cjs/api/classes/elementParameterizable.d.ts +0 -14
  207. package/dist/lib-cjs/api/classes/elementParameterizable.js +0 -135
  208. package/dist/lib-cjs/api/classes/elementParameterizable.js.map +0 -1
  209. package/dist/lib-cjs/api/internal/debugViewer.d.ts +0 -13
  210. package/dist/lib-cjs/api/internal/debugViewer.js +0 -87
  211. package/dist/lib-cjs/api/internal/debugViewer.js.map +0 -1
  212. package/dist/lib-es6/api/internal/debugViewer.d.ts +0 -13
  213. package/dist/lib-es6/api/internal/debugViewer.js +0 -84
  214. package/dist/lib-es6/api/internal/debugViewer.js.map +0 -1
  215. package/dist/webpack-stats.json +0 -0
  216. package/src/commonjs.tsconfig.json +0 -10
  217. package/src/declaration.tsconfig.json +0 -8
  218. package/src/es6.tsconfig.json +0 -10
  219. package/src/pagesconfig.json +0 -81
  220. package/src/tsconfig.json +0 -33
  221. package/src/tsconfig.types.json +0 -9
@@ -1,372 +1,350 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Event = exports.emitter = void 0;
4
- var eventemitter3_1 = require("eventemitter3");
5
- var lodash_es_1 = require("lodash-es");
6
- /** @internal **/
7
- exports.emitter = new eventemitter3_1.EventEmitter();
8
- /**
9
- * This `Event` class defines all events that can be consumed and fired by the {@link EventBroadcaster}. Use
10
- * {@link EventBroadcaster.addEventListener} or {@link EventBroadcaster.on} to register event handler on your objects.
11
- * You could also use the `Emitter` to globally register event handlers. Some events are fired in certain scopes. A
12
- * scope is also considered to be the object the event could be registered on. Those scopes are documented in the
13
- * events itself.
14
- *
15
- * Example using a bootstrapping event.
16
- * ```js
17
- * Emitter.on(Event.BOOTSTRAP_START, viewer => { ... });
18
- * ```
19
- *
20
- * Example using a variant parameter event.
21
- * ```js
22
- * const variantInstance = await viewer.variantInstances.get('my_instance');
23
- * const variant = variantInstance.variant;
24
- * variant.on(Event.VARIANT_PARAMETER_COMMITTED, (variant, parameter) => { ... });
25
- * ```
26
- *
27
- * Example using a scene processing event.
28
- * ```js
29
- * const canvas = document.getElementById('viewer-canvas');
30
- * const viewer = new Viewer(canvas, createSpec());
31
- * viewer.on(Event.SCENE_PROCESSING_END, scene => {
32
- * scene.clearColor = new Color4(0, 0, 0, 0);
33
- * });
34
- * await viewer.bootstrap();
35
- * ```
36
- */
37
- var Event = /** @class */ (function () {
38
- /**
39
- * Constructor.
40
- */
41
- function Event() {
42
- }
43
- Object.defineProperty(Event, "all", {
44
- /**
45
- * All events defined in this class.
46
- */
47
- get: function () {
48
- var all = [];
49
- for (var event_1 in Event) {
50
- var property = Object.getOwnPropertyDescriptor(Event, event_1);
51
- if (event_1.toUpperCase() === event_1 && property && lodash_es_1.isString(property.value)) {
52
- all.push(property.value);
53
- }
54
- }
55
- return all;
56
- },
57
- enumerable: false,
58
- configurable: true
59
- });
60
- Object.defineProperty(Event, "variant", {
61
- /**
62
- * All events starting with 'variant'.
63
- */
64
- get: function () {
65
- return Event.all.filter(function (event) { return event.startsWith('variant'); });
66
- },
67
- enumerable: false,
68
- configurable: true
69
- });
70
- Object.defineProperty(Event, "element", {
71
- /**
72
- * All events starting with 'element'.
73
- */
74
- get: function () {
75
- return Event.all.filter(function (event) { return event.startsWith('element'); });
76
- },
77
- enumerable: false,
78
- configurable: true
79
- });
80
- Object.defineProperty(Event, "scene", {
81
- /**
82
- * All events starting with 'scene'.
83
- */
84
- get: function () {
85
- return Event.all.filter(function (event) { return event.startsWith('scene'); });
86
- },
87
- enumerable: false,
88
- configurable: true
89
- });
90
- Object.defineProperty(Event, "camera", {
91
- /**
92
- * All events starting with 'camera'.
93
- */
94
- get: function () {
95
- return Event.all.filter(function (event) { return event.startsWith('camera'); });
96
- },
97
- enumerable: false,
98
- configurable: true
99
- });
100
- /**
101
- * Fired before bootstrapping of the {@link Viewer} starts.
102
- *
103
- * Scopes:
104
- * * Global
105
- * * {@link Viewer}
106
- *
107
- * Payload:
108
- * * viewer: {@link Viewer}
109
- */
110
- Event.BOOTSTRAP_START = 'bootstrapStart';
111
- /**
112
- * Fired after bootstrapping of the {@link Viewer} finished.
113
- *
114
- * Scopes:
115
- * * Global
116
- * * {@link Viewer}
117
- *
118
- * Payload:
119
- * * viewer: {@link Viewer}
120
- */
121
- Event.BOOTSTRAP_END = 'bootstrapEnd';
122
- /**
123
- * Fired before loading any type of JSON or resource.
124
- *
125
- * Scopes:
126
- * * Global
127
- *
128
- * Payload:
129
- * * path: string
130
- */
131
- Event.LOADING_START = 'loadingStart';
132
- /**
133
- * Fired after loading any type of JSON or resource finished.
134
- *
135
- * Scopes:
136
- * * Global
137
- *
138
- * Payload:
139
- * * path: string
140
- */
141
- Event.LOADING_END = 'loadingEnd';
142
- /**
143
- * Fired before loading an asset (e.g. glTF) onto the scene.
144
- *
145
- * Scopes:
146
- * * Global
147
- * * {@link Variant}
148
- *
149
- * Payload:
150
- * * variant: {@link Variant}
151
- */
152
- Event.ASSET_LOADING_START = 'assetLoadingStart';
153
- /**
154
- * Fired after loading an asset (e.g. glTF) onto the scene finished.
155
- *
156
- * Scopes:
157
- * * Global
158
- * * {@link Variant}
159
- *
160
- * Payload:
161
- * * variant: {@link Variant}
162
- */
163
- Event.ASSET_LOADING_END = 'assetLoadingEnd';
164
- /**
165
- * Fired before scene initialization starts when bootstrapping the {@link Viewer}.
166
- *
167
- * Scopes:
168
- * * Global
169
- * * {@link Viewer}
170
- *
171
- * Payload:
172
- * * sceneJson: {@link SceneJson}
173
- */
174
- Event.SCENE_PROCESSING_START = 'sceneProcessingStart';
175
- /**
176
- * Fired after scene initialization end when bootstrapping the {@link Viewer}.
177
- *
178
- * Scopes:
179
- * * Global
180
- * * {@link Viewer}
181
- *
182
- * Payload:
183
- * * scene: {@link Scene}
184
- */
185
- Event.SCENE_PROCESSING_END = 'sceneProcessingEnd';
186
- /**
187
- * Fired after a {@link Variant} has been created.
188
- *
189
- * Scopes:
190
- * * Global
191
- * * {@link Variant}
192
- *
193
- * Payload:
194
- * * variant: {@link Variant}
195
- */
196
- Event.VARIANT_CREATED = 'variantCreated';
197
- /**
198
- * Fired after a {@link Variant} has been destroyed.
199
- *
200
- * Scopes:
201
- * * Global
202
- * * {@link Variant}
203
- *
204
- * Payload:
205
- * * variant: {@link Variant}
206
- */
207
- Event.VARIANT_DESTROYED = 'variantDestroyed';
208
- /**
209
- * Fired after the {@link Variant} under the cursor has been picked/selected.
210
- *
211
- * Scopes:
212
- * * Global
213
- * * {@link Viewer}
214
- *
215
- * Payload:
216
- * * variant: {@link Variant}
217
- */
218
- Event.VARIANT_PICKED = 'variantPicked';
219
- /**
220
- * Fired after the {@link Element} under the cursor has been picked/selected.
221
- *
222
- * Scopes:
223
- * * Global
224
- * * {@link Viewer}
225
- *
226
- * Payload:
227
- * * element: {@link Element}
228
- */
229
- Event.ELEMENT_PICKED = 'elementPicked';
230
- /**
231
- * Fired after a parameter on a {@link Variant} has been committed.
232
- *
233
- * Scopes:
234
- * * Global
235
- * * {@link Variant}
236
- *
237
- * Payload:
238
- * * variant: {@link Variant}
239
- * * parameter: string
240
- * * oldValue: string
241
- * * newValue: string
242
- */
243
- Event.VARIANT_PARAMETER_COMMITTED = 'variantParameterCommitted';
244
- /**
245
- * Fired after a {@link ParameterBag} has been committed.
246
- *
247
- * Scopes:
248
- * * Global
249
- * * {@link Variant}
250
- *
251
- * Payload:
252
- * * variant: {@link Variant}
253
- * * parameters: {@link ParameterBag}
254
- * * oldValues: string[]
255
- * * newValues: string[]
256
- */
257
- Event.VARIANT_PARAMETER_BAG_COMMITTED = 'variantParameterBagCommitted';
258
- /**
259
- * Fired after a {@link VariantInstance} has been created.
260
- *
261
- * Scopes:
262
- * * Global
263
- * * {@link VariantInstanceManager}
264
- *
265
- * Payload:
266
- * * variantInstance: {@link VariantInstance}
267
- */
268
- Event.VARIANT_INSTANCE_CREATED = 'variantInstanceCreated';
269
- /**
270
- * Fired after a {@link VariantInstance} has been registered. This is the case when the {@link VariantInstance} is
271
- * considered "lazy".
272
- *
273
- * Scopes:
274
- * * Global
275
- * * {@link VariantInstanceManager}
276
- *
277
- * Payload:
278
- * * variantInstanceDefinition: {@link VariantInstanceDefinition}
279
- */
280
- Event.VARIANT_INSTANCE_REGISTERED = 'variantInstanceRegistered';
281
- /**
282
- * Fired after a {@link VariantInstance} has been cloned.
283
- *
284
- * Scopes:
285
- * * Global
286
- * * {@link VariantInstanceManager}
287
- *
288
- * Payload:
289
- * * variantInstanceClone: {@link VariantInstance}
290
- */
291
- Event.VARIANT_INSTANCE_CLONED = 'variantInstanceCloned';
292
- /**
293
- * Fired after a {@link VariantInstance} has been destroyed.
294
- *
295
- * Scopes:
296
- * * Global
297
- * * {@link VariantInstanceManager}
298
- *
299
- * Payload:
300
- * * variantInstance: {@link VariantInstance}
301
- */
302
- Event.VARIANT_INSTANCE_DESTROYED = 'variantInstanceDestroyed';
303
- /**
304
- * Fired after a parameter on an {@link Element} has been committed.
305
- *
306
- * Scopes:
307
- * * Global
308
- * * {@link Element}
309
- *
310
- * Payload:
311
- * * element: {@link Element}
312
- * * parameter: string
313
- * * oldValue: string
314
- * * newValue: string
315
- */
316
- Event.ELEMENT_PARAMETER_COMMITTED = 'elementParameterCommitted';
317
- /**
318
- * Fired after a parameter on an {@link ViewerLight} has been committed.
319
- *
320
- * Scopes:
321
- * * Global
322
- * * {@link ViewerLight}
323
- *
324
- * Payload:
325
- * * light: {@link ViewerLight}
326
- * * parameter: string
327
- * * oldValue: string
328
- * * newValue: string
329
- */
330
- Event.VIEWER_LIGHT_PARAMETER_COMMITTED = 'viewerLightParameterCommitted';
331
- /**
332
- * Fired after a parameter on an {@link SceneManager} has been committed.
333
- *
334
- * Scopes:
335
- * * Global
336
- * * {@link SceneManager}
337
- *
338
- * Payload:
339
- * * variant: {@link SceneManager}
340
- * * parameter: string
341
- * * oldValue: string
342
- * * newValue: string
343
- */
344
- Event.SCENE_PARAMETER_COMMITTED = 'sceneParameterCommitted';
345
- /**
346
- * Fired after the active camera on the scene has been switched.
347
- *
348
- * Scopes:
349
- * * Global
350
- * * {@link Viewer}
351
- *
352
- * Payload:
353
- * * camera: Camera
354
- */
355
- Event.CAMERA_SWITCHED = 'cameraSwitched';
356
- /**
357
- * Fired after the {@link Mesh} under the cursor has been picked/selected.
358
- *
359
- * Scopes:
360
- * * Global
361
- * * {@link Viewer}
362
- *
363
- * Payload:
364
- * * mesh: {@link Mesh}
365
- * * element: {@link Element}
366
- * * variant: {@link Variant}
367
- */
368
- Event.MESH_PICKED = 'meshPicked';
369
- return Event;
370
- }());
371
- exports.Event = Event;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Event = exports.emitter = void 0;
4
+ const eventemitter3_1 = require("eventemitter3");
5
+ const lodash_es_1 = require("lodash-es");
6
+ /** @internal **/
7
+ exports.emitter = new eventemitter3_1.EventEmitter();
8
+ /**
9
+ * This `Event` class defines all events that can be consumed and fired by the {@link EventBroadcaster}. Use
10
+ * {@link EventBroadcaster.addEventListener} or {@link EventBroadcaster.on} to register event handler on your objects.
11
+ * You could also use the `Emitter` to globally register event handlers. Some events are fired in certain scopes. A
12
+ * scope is also considered to be the object the event could be registered on. Those scopes are documented in the
13
+ * events itself.
14
+ *
15
+ * Example using a bootstrapping event.
16
+ * ```js
17
+ * Emitter.on(Event.BOOTSTRAP_START, viewer => { ... });
18
+ * ```
19
+ *
20
+ * Example using a variant parameter event.
21
+ * ```js
22
+ * const variantInstance = await viewer.variantInstances.get('my_instance');
23
+ * const variant = variantInstance.variant;
24
+ * variant.on(Event.VARIANT_PARAMETER_COMMITTED, (variant, parameter) => { ... });
25
+ * ```
26
+ *
27
+ * Example using a scene processing event.
28
+ * ```js
29
+ * const canvas = document.getElementById('viewer-canvas');
30
+ * const viewer = new Viewer(canvas, createSpec());
31
+ * viewer.on(Event.SCENE_PROCESSING_END, scene => {
32
+ * scene.clearColor = new Color4(0, 0, 0, 0);
33
+ * });
34
+ * await viewer.bootstrap();
35
+ * ```
36
+ */
37
+ class Event {
38
+ /**
39
+ * Constructor.
40
+ */
41
+ constructor() { }
42
+ /**
43
+ * All events defined in this class.
44
+ */
45
+ static get all() {
46
+ const all = [];
47
+ for (const event in Event) {
48
+ const property = Object.getOwnPropertyDescriptor(Event, event);
49
+ if (event.toUpperCase() === event && property && (0, lodash_es_1.isString)(property.value)) {
50
+ all.push(property.value);
51
+ }
52
+ }
53
+ return all;
54
+ }
55
+ /**
56
+ * All events starting with 'variant'.
57
+ */
58
+ static get variant() {
59
+ return Event.all.filter(event => event.startsWith('variant'));
60
+ }
61
+ /**
62
+ * All events starting with 'element'.
63
+ */
64
+ static get element() {
65
+ return Event.all.filter(event => event.startsWith('element'));
66
+ }
67
+ /**
68
+ * All events starting with 'scene'.
69
+ */
70
+ static get scene() {
71
+ return Event.all.filter(event => event.startsWith('scene'));
72
+ }
73
+ /**
74
+ * All events starting with 'camera'.
75
+ */
76
+ static get camera() {
77
+ return Event.all.filter(event => event.startsWith('camera'));
78
+ }
79
+ }
80
+ exports.Event = Event;
81
+ /**
82
+ * Fired before bootstrapping of the {@link Viewer} starts.
83
+ *
84
+ * Scopes:
85
+ * * Global
86
+ * * {@link Viewer}
87
+ *
88
+ * Payload:
89
+ * * viewer: {@link Viewer}
90
+ */
91
+ Event.BOOTSTRAP_START = 'bootstrapStart';
92
+ /**
93
+ * Fired after bootstrapping of the {@link Viewer} finished.
94
+ *
95
+ * Scopes:
96
+ * * Global
97
+ * * {@link Viewer}
98
+ *
99
+ * Payload:
100
+ * * viewer: {@link Viewer}
101
+ */
102
+ Event.BOOTSTRAP_END = 'bootstrapEnd';
103
+ /**
104
+ * Fired before loading any type of JSON or resource.
105
+ *
106
+ * Scopes:
107
+ * * Global
108
+ *
109
+ * Payload:
110
+ * * path: string
111
+ */
112
+ Event.LOADING_START = 'loadingStart';
113
+ /**
114
+ * Fired after loading any type of JSON or resource finished.
115
+ *
116
+ * Scopes:
117
+ * * Global
118
+ *
119
+ * Payload:
120
+ * * path: string
121
+ */
122
+ Event.LOADING_END = 'loadingEnd';
123
+ /**
124
+ * Fired before loading an asset (e.g. glTF) onto the scene.
125
+ *
126
+ * Scopes:
127
+ * * Global
128
+ * * {@link Variant}
129
+ *
130
+ * Payload:
131
+ * * variant: {@link Variant}
132
+ */
133
+ Event.ASSET_LOADING_START = 'assetLoadingStart';
134
+ /**
135
+ * Fired after loading an asset (e.g. glTF) onto the scene finished.
136
+ *
137
+ * Scopes:
138
+ * * Global
139
+ * * {@link Variant}
140
+ *
141
+ * Payload:
142
+ * * variant: {@link Variant}
143
+ */
144
+ Event.ASSET_LOADING_END = 'assetLoadingEnd';
145
+ /**
146
+ * Fired before scene initialization starts when bootstrapping the {@link Viewer}.
147
+ *
148
+ * Scopes:
149
+ * * Global
150
+ * * {@link Viewer}
151
+ *
152
+ * Payload:
153
+ * * sceneJson: {@link SceneJson}
154
+ */
155
+ Event.SCENE_PROCESSING_START = 'sceneProcessingStart';
156
+ /**
157
+ * Fired after scene initialization end when bootstrapping the {@link Viewer}.
158
+ *
159
+ * Scopes:
160
+ * * Global
161
+ * * {@link Viewer}
162
+ *
163
+ * Payload:
164
+ * * scene: {@link Scene}
165
+ */
166
+ Event.SCENE_PROCESSING_END = 'sceneProcessingEnd';
167
+ /**
168
+ * Fired after a {@link Variant} has been created.
169
+ *
170
+ * Scopes:
171
+ * * Global
172
+ * * {@link Variant}
173
+ *
174
+ * Payload:
175
+ * * variant: {@link Variant}
176
+ */
177
+ Event.VARIANT_CREATED = 'variantCreated';
178
+ /**
179
+ * Fired after a {@link Variant} has been destroyed.
180
+ *
181
+ * Scopes:
182
+ * * Global
183
+ * * {@link Variant}
184
+ *
185
+ * Payload:
186
+ * * variant: {@link Variant}
187
+ */
188
+ Event.VARIANT_DESTROYED = 'variantDestroyed';
189
+ /**
190
+ * Fired after the {@link Variant} under the cursor has been picked/selected.
191
+ *
192
+ * Scopes:
193
+ * * Global
194
+ * * {@link Viewer}
195
+ *
196
+ * Payload:
197
+ * * variant: {@link Variant}
198
+ */
199
+ Event.VARIANT_PICKED = 'variantPicked';
200
+ /**
201
+ * Fired after the {@link Element} under the cursor has been picked/selected.
202
+ *
203
+ * Scopes:
204
+ * * Global
205
+ * * {@link Viewer}
206
+ *
207
+ * Payload:
208
+ * * element: {@link Element}
209
+ */
210
+ Event.ELEMENT_PICKED = 'elementPicked';
211
+ /**
212
+ * Fired after a parameter on a {@link Variant} has been committed.
213
+ *
214
+ * Scopes:
215
+ * * Global
216
+ * * {@link Variant}
217
+ *
218
+ * Payload:
219
+ * * variant: {@link Variant}
220
+ * * parameter: string
221
+ * * oldValue: string
222
+ * * newValue: string
223
+ */
224
+ Event.VARIANT_PARAMETER_COMMITTED = 'variantParameterCommitted';
225
+ /**
226
+ * Fired after a {@link ParameterBag} has been committed.
227
+ *
228
+ * Scopes:
229
+ * * Global
230
+ * * {@link Variant}
231
+ *
232
+ * Payload:
233
+ * * variant: {@link Variant}
234
+ * * parameters: {@link ParameterBag}
235
+ * * oldValues: string[]
236
+ * * newValues: string[]
237
+ */
238
+ Event.VARIANT_PARAMETER_BAG_COMMITTED = 'variantParameterBagCommitted';
239
+ /**
240
+ * Fired after a {@link VariantInstance} has been created.
241
+ *
242
+ * Scopes:
243
+ * * Global
244
+ * * {@link VariantInstanceManager}
245
+ *
246
+ * Payload:
247
+ * * variantInstance: {@link VariantInstance}
248
+ */
249
+ Event.VARIANT_INSTANCE_CREATED = 'variantInstanceCreated';
250
+ /**
251
+ * Fired after a {@link VariantInstance} has been registered. This is the case when the {@link VariantInstance} is
252
+ * considered "lazy".
253
+ *
254
+ * Scopes:
255
+ * * Global
256
+ * * {@link VariantInstanceManager}
257
+ *
258
+ * Payload:
259
+ * * variantInstanceDefinition: {@link VariantInstanceDefinition}
260
+ */
261
+ Event.VARIANT_INSTANCE_REGISTERED = 'variantInstanceRegistered';
262
+ /**
263
+ * Fired after a {@link VariantInstance} has been cloned.
264
+ *
265
+ * Scopes:
266
+ * * Global
267
+ * * {@link VariantInstanceManager}
268
+ *
269
+ * Payload:
270
+ * * variantInstanceClone: {@link VariantInstance}
271
+ */
272
+ Event.VARIANT_INSTANCE_CLONED = 'variantInstanceCloned';
273
+ /**
274
+ * Fired after a {@link VariantInstance} has been destroyed.
275
+ *
276
+ * Scopes:
277
+ * * Global
278
+ * * {@link VariantInstanceManager}
279
+ *
280
+ * Payload:
281
+ * * variantInstance: {@link VariantInstance}
282
+ */
283
+ Event.VARIANT_INSTANCE_DESTROYED = 'variantInstanceDestroyed';
284
+ /**
285
+ * Fired after a parameter on an {@link Element} has been committed.
286
+ *
287
+ * Scopes:
288
+ * * Global
289
+ * * {@link Element}
290
+ *
291
+ * Payload:
292
+ * * element: {@link Element}
293
+ * * parameter: string
294
+ * * oldValue: string
295
+ * * newValue: string
296
+ */
297
+ Event.ELEMENT_PARAMETER_COMMITTED = 'elementParameterCommitted';
298
+ /**
299
+ * Fired after a parameter on an {@link ViewerLight} has been committed.
300
+ *
301
+ * Scopes:
302
+ * * Global
303
+ * * {@link ViewerLight}
304
+ *
305
+ * Payload:
306
+ * * light: {@link ViewerLight}
307
+ * * parameter: string
308
+ * * oldValue: string
309
+ * * newValue: string
310
+ */
311
+ Event.VIEWER_LIGHT_PARAMETER_COMMITTED = 'viewerLightParameterCommitted';
312
+ /**
313
+ * Fired after a parameter on an {@link SceneManager} has been committed.
314
+ *
315
+ * Scopes:
316
+ * * Global
317
+ * * {@link SceneManager}
318
+ *
319
+ * Payload:
320
+ * * variant: {@link SceneManager}
321
+ * * parameter: string
322
+ * * oldValue: string
323
+ * * newValue: string
324
+ */
325
+ Event.SCENE_PARAMETER_COMMITTED = 'sceneParameterCommitted';
326
+ /**
327
+ * Fired after the active camera on the scene has been switched.
328
+ *
329
+ * Scopes:
330
+ * * Global
331
+ * * {@link Viewer}
332
+ *
333
+ * Payload:
334
+ * * camera: Camera
335
+ */
336
+ Event.CAMERA_SWITCHED = 'cameraSwitched';
337
+ /**
338
+ * Fired after the {@link Mesh} under the cursor has been picked/selected.
339
+ *
340
+ * Scopes:
341
+ * * Global
342
+ * * {@link Viewer}
343
+ *
344
+ * Payload:
345
+ * * mesh: {@link Mesh}
346
+ * * element: {@link Element}
347
+ * * variant: {@link Variant}
348
+ */
349
+ Event.MESH_PICKED = 'meshPicked';
372
350
  //# sourceMappingURL=event.js.map