@vitrosoftware/common-ui-ts 1.1.82 → 1.1.84

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 (154) hide show
  1. package/css/std/controls/pdf-viewer/compare.css +5 -2
  2. package/css/std/controls/pdf-viewer/pdf-viewer-index.css +11 -4
  3. package/css/std/controls/pdf-viewer/pdf-viewer.css +6 -2
  4. package/dist/index.js +90 -32
  5. package/dist/index.js.map +1 -1
  6. package/package.json +3 -5
  7. package/src/controls/BimViewer/js/bim-viewer.js +620 -4
  8. package/src/controls/PdfViewer/js/pdf-viewer.js +3 -4
  9. package/dist/constants/Control.d.ts +0 -11
  10. package/dist/constants/Ctrl.d.ts +0 -30
  11. package/dist/constants/Event.d.ts +0 -13
  12. package/dist/constants/Factory.d.ts +0 -3
  13. package/dist/constants/KeyCode.d.ts +0 -3
  14. package/dist/constants/Placement.d.ts +0 -7
  15. package/dist/constants/Unit.d.ts +0 -3
  16. package/dist/controls/ActionHandler/ActionHandler.d.ts +0 -31
  17. package/dist/controls/ActionHandler/ActionHandlerConstants.d.ts +0 -32
  18. package/dist/controls/ActionHandler/ActionInfo.d.ts +0 -12
  19. package/dist/controls/ActionHandler/ActionInfoItem.d.ts +0 -13
  20. package/dist/controls/ActionHandler/UpdatingPopover.d.ts +0 -2
  21. package/dist/controls/Activity/Activity.d.ts +0 -9
  22. package/dist/controls/ActivityItem/ActivityItem.d.ts +0 -16
  23. package/dist/controls/ActivityItem/ActivityMessage.d.ts +0 -6
  24. package/dist/controls/ActivityItem/ChangedValue.d.ts +0 -6
  25. package/dist/controls/Alert/Alert.d.ts +0 -19
  26. package/dist/controls/Alert/AlertConstants.d.ts +0 -5
  27. package/dist/controls/Avatar/Avatar.d.ts +0 -8
  28. package/dist/controls/Breadcrumbs/Breadcrumbs.d.ts +0 -13
  29. package/dist/controls/Breadcrumbs/BreadcrumbsItem.d.ts +0 -4
  30. package/dist/controls/Breadcrumbs/Item.d.ts +0 -10
  31. package/dist/controls/Button/Button.d.ts +0 -14
  32. package/dist/controls/Checkbox/Checkbox.d.ts +0 -11
  33. package/dist/controls/CommandMenu/CommandMenu.d.ts +0 -6
  34. package/dist/controls/CommandMenu/CommandMenuButton.d.ts +0 -13
  35. package/dist/controls/CommandMenu/CommandMenuDropdownButton.d.ts +0 -18
  36. package/dist/controls/CommandMenu/CommandMenuItemHeader.d.ts +0 -11
  37. package/dist/controls/CommandMenu/CommandMenuLookupPicker.d.ts +0 -32
  38. package/dist/controls/CommandMenu/CommandMenuSubItem.d.ts +0 -13
  39. package/dist/controls/ComponentLoader/ComponentLoader.d.ts +0 -8
  40. package/dist/controls/ComponentLoader/ComponentLoaderContext.d.ts +0 -6
  41. package/dist/controls/ComponentLoader/ComponentLoaderContextImpl.d.ts +0 -11
  42. package/dist/controls/ControlGroup/ControlGroup.d.ts +0 -7
  43. package/dist/controls/Criterion/Condition.d.ts +0 -6
  44. package/dist/controls/Criterion/ConditionSelect.d.ts +0 -9
  45. package/dist/controls/Criterion/Criterion.d.ts +0 -23
  46. package/dist/controls/Criterion/Operator.d.ts +0 -4
  47. package/dist/controls/DatePicker/DatePicker.d.ts +0 -29
  48. package/dist/controls/DatePicker/DatePickerConstants.d.ts +0 -12
  49. package/dist/controls/Dialog/Dialog.d.ts +0 -23
  50. package/dist/controls/Dialog/DialogButton.d.ts +0 -8
  51. package/dist/controls/Dialog/DialogCloseButton.d.ts +0 -8
  52. package/dist/controls/Dialog/DialogComponent.d.ts +0 -8
  53. package/dist/controls/Dialog/DialogConstants.d.ts +0 -5
  54. package/dist/controls/Dialog/DialogContent.d.ts +0 -7
  55. package/dist/controls/Dialog/DialogFooter.d.ts +0 -11
  56. package/dist/controls/Dialog/DialogHeader.d.ts +0 -8
  57. package/dist/controls/DropdownButton/DropdownButton.d.ts +0 -13
  58. package/dist/controls/DropdownButton/DropdownItem.d.ts +0 -11
  59. package/dist/controls/FieldIterator/FieldIterator.d.ts +0 -24
  60. package/dist/controls/Icon/Icon.d.ts +0 -11
  61. package/dist/controls/ImagePicker/ImagePicker.d.ts +0 -16
  62. package/dist/controls/ImagePicker/ImagePickerConstants.d.ts +0 -8
  63. package/dist/controls/Input/Input.d.ts +0 -32
  64. package/dist/controls/Input/InputConstants.d.ts +0 -4
  65. package/dist/controls/IssueTile/IssueTile.d.ts +0 -26
  66. package/dist/controls/IssueTile/IssueTileConstants.d.ts +0 -3
  67. package/dist/controls/IssueTile/IssueTileFooter.d.ts +0 -8
  68. package/dist/controls/IssueTile/IssueTileHeader.d.ts +0 -18
  69. package/dist/controls/Label/Label.d.ts +0 -9
  70. package/dist/controls/Label/LabelConstants.d.ts +0 -3
  71. package/dist/controls/Login/Login.d.ts +0 -16
  72. package/dist/controls/Login/LoginConstants.d.ts +0 -17
  73. package/dist/controls/Login/LoginFooter.d.ts +0 -10
  74. package/dist/controls/Login/LoginInput.d.ts +0 -17
  75. package/dist/controls/LookupPicker/LookupPicker.d.ts +0 -39
  76. package/dist/controls/LookupPicker/LookupPickerConstants.d.ts +0 -3
  77. package/dist/controls/LookupPicker/SelectedValueList.d.ts +0 -14
  78. package/dist/controls/LookupPicker/ValueList.d.ts +0 -22
  79. package/dist/controls/LookupPicker/ValueListItem.d.ts +0 -11
  80. package/dist/controls/MessageInput/MessageInput.d.ts +0 -12
  81. package/dist/controls/MessageInput/MessageInputConstants.d.ts +0 -3
  82. package/dist/controls/MicroFrontend/MicroFrontend.d.ts +0 -8
  83. package/dist/controls/MicroFrontend/MicroFrontendState.d.ts +0 -8
  84. package/dist/controls/MicroFrontend/renderMicrofrontend.d.ts +0 -2
  85. package/dist/controls/NumberInput/NumberInput.d.ts +0 -30
  86. package/dist/controls/NumberInput/NumberInputConstants.d.ts +0 -12
  87. package/dist/controls/PasswordInput/PasswordInput.d.ts +0 -31
  88. package/dist/controls/PasswordInput/PasswordInputConstants.d.ts +0 -4
  89. package/dist/controls/PdfViewer/PdfViewer.d.ts +0 -6
  90. package/dist/controls/PdfViewer/PdfViewerContext.d.ts +0 -12
  91. package/dist/controls/PdfViewer/Viewer.d.ts +0 -6
  92. package/dist/controls/RouteItem/RouteItem.d.ts +0 -17
  93. package/dist/controls/ScrollBar/ScrollBar.d.ts +0 -9
  94. package/dist/controls/Search/CheckboxList.d.ts +0 -12
  95. package/dist/controls/Search/Filter.d.ts +0 -21
  96. package/dist/controls/Search/Input.d.ts +0 -21
  97. package/dist/controls/Search/Search.d.ts +0 -29
  98. package/dist/controls/Search/SearchConstants.d.ts +0 -4
  99. package/dist/controls/Search/SearchCriterion.d.ts +0 -7
  100. package/dist/controls/Sidebar/Item.d.ts +0 -9
  101. package/dist/controls/Sidebar/LinkItem.d.ts +0 -17
  102. package/dist/controls/Sidebar/Section.d.ts +0 -11
  103. package/dist/controls/Sidebar/SectionList.d.ts +0 -10
  104. package/dist/controls/Sidebar/Sidebar.d.ts +0 -14
  105. package/dist/controls/Sidebar/SidebarConstants.d.ts +0 -4
  106. package/dist/controls/Sidebar/SidebarItem.d.ts +0 -10
  107. package/dist/controls/Sidebar/SidebarSection.d.ts +0 -7
  108. package/dist/controls/Splitter/Splitter.d.ts +0 -18
  109. package/dist/controls/Splitter/SplitterConstants.d.ts +0 -9
  110. package/dist/controls/TabGroup/OverflowButton.d.ts +0 -8
  111. package/dist/controls/TabGroup/Tab.d.ts +0 -10
  112. package/dist/controls/TabGroup/TabGroup.d.ts +0 -10
  113. package/dist/controls/TabGroup/TabGroupComponent.d.ts +0 -9
  114. package/dist/controls/TabGroup/TabGroupConstants.d.ts +0 -4
  115. package/dist/controls/TabGroup/TabGroupHeader.d.ts +0 -10
  116. package/dist/controls/TabGroup/TabItem.d.ts +0 -13
  117. package/dist/controls/TableView/TableView.d.ts +0 -26
  118. package/dist/controls/TableView/TableViewCol.d.ts +0 -3
  119. package/dist/controls/TableView/TableViewConstants.d.ts +0 -152
  120. package/dist/controls/TableView/TableViewContext.d.ts +0 -81
  121. package/dist/controls/TableView/TableViewEventHandler.d.ts +0 -4
  122. package/dist/controls/TableView/TableViewRow.d.ts +0 -3
  123. package/dist/controls/TableView/TreeGrid.d.ts +0 -17
  124. package/dist/controls/TableView/TreeGridTableViewContextImpl.d.ts +0 -91
  125. package/dist/controls/TaskTile/TaskTile.d.ts +0 -18
  126. package/dist/controls/TelerikUploader/TelerikUploader.d.ts +0 -11
  127. package/dist/controls/TelerikUploader/TelerikUploaderConstants.d.ts +0 -16
  128. package/dist/controls/TelerikUploader/TelerikUploaderContext.d.ts +0 -6
  129. package/dist/controls/TelerikUploader/TelerikUploaderContextImpl.d.ts +0 -39
  130. package/dist/controls/TelerikUploader/TelerikUploaderSettings.d.ts +0 -15
  131. package/dist/controls/TimePicker/TimePicker.d.ts +0 -23
  132. package/dist/controls/TimePicker/TimePickerConstants.d.ts +0 -12
  133. package/dist/controls/Tooltip/Tooltip.d.ts +0 -10
  134. package/dist/controls/Tooltip/TooltipConstants.d.ts +0 -6
  135. package/dist/controls/TopLevelMenu/LinkItem.d.ts +0 -9
  136. package/dist/controls/TopLevelMenu/TopLevelMenu.d.ts +0 -9
  137. package/dist/controls/TopLevelMenu/TopLevelMenuItem.d.ts +0 -7
  138. package/dist/controls/TreeView/JsTreeViewContextImpl.d.ts +0 -35
  139. package/dist/controls/TreeView/TreeView.d.ts +0 -13
  140. package/dist/controls/TreeView/TreeViewConfig.d.ts +0 -34
  141. package/dist/controls/TreeView/TreeViewConstants.d.ts +0 -52
  142. package/dist/controls/TreeView/TreeViewContext.d.ts +0 -32
  143. package/dist/controls/TreeView/TreeViewEventHandler.d.ts +0 -4
  144. package/dist/controls/UserLookupPicker/UserLookupPicker.d.ts +0 -40
  145. package/dist/controls/UserProfile/UserProfile.d.ts +0 -12
  146. package/dist/controls/UserProfile/UserProfileMenuItem.d.ts +0 -11
  147. package/dist/controls/View/View.d.ts +0 -7
  148. package/dist/controls/ViewPart/ViewPart.d.ts +0 -10
  149. package/dist/exceptions/AbortException.d.ts +0 -2
  150. package/dist/exceptions/impl/AbortExceptionImpl.d.ts +0 -3
  151. package/dist/services/LocaleService.d.ts +0 -3
  152. package/lib/xeokit/VitroTreeViewPlugin.js +0 -620
  153. package/src/controls/BimViewer/js/init-viewer-page.js +0 -24
  154. package/src/controls/PdfViewer/js/init-viewer-page.js +0 -25
@@ -1,620 +0,0 @@
1
- import { Viewer, Plugin, math, ContextMenu, TreeViewPlugin, MetaObject } from "/resource/bimViewer/js/xeokit/xeokit-sdk.es.js?version=v5";
2
- import { BIMModel } from '/resource/bimViewer/js/bim-viewer-models.js?version=v5';
3
-
4
- const processByChildIdList = (treeViewNode, event) => {
5
- viewer.scene.canvas.spinner.processes++;
6
-
7
- const callback = (objIds) => {
8
- objIds.push(treeViewNode.objectId);
9
- event(objIds);
10
- viewer.scene.canvas.spinner.processes--;
11
- };
12
-
13
- const error = (er) =>
14
- {
15
- viewer.scene.canvas.spinner.processes--;
16
- };
17
-
18
- BIMModel.GetChildIdList(treeViewNode.objectId, true, true, callback, error);
19
- };
20
-
21
- const treeViewContextMenu = new ContextMenu({
22
-
23
- items: [
24
- [
25
- {
26
- getTitle: function (context) { return document.webL10n.get('view_fit') },
27
- doAction: function (context) {
28
-
29
- context.treeViewPlugin.setNodeChecked(context.treeViewNode, true);
30
-
31
- const event = (objectIds) => {
32
- const scene = context.viewer.scene;
33
-
34
- scene.setObjectsVisible(objectIds, true);
35
- scene.setObjectsHighlighted(objectIds, true);
36
- context.viewer.cameraFlight.flyTo({
37
- projection: "perspective",
38
- aabb: scene.getAABB(objectIds),
39
- duration: 0.5
40
- }, () => {
41
- setTimeout(function () {
42
- scene.setObjectsHighlighted(scene.highlightedObjectIds, false);
43
- }, 500);
44
- });
45
- };
46
-
47
- processByChildIdList(context.treeViewNode, event);
48
- }
49
- },
50
- {
51
- getTitle: function (context) { return document.webL10n.get('view_fit_all') },
52
- doAction: function (context) {
53
- ViewFitAll(context.viewer);
54
- }
55
- }
56
- ],
57
- [
58
- {
59
- getTitle: function (context) { return document.webL10n.get('hide') },
60
- doAction: function (context) {
61
-
62
- context.treeViewPlugin.setNodeChecked(context.treeViewNode, false);
63
-
64
- const event = (objectIds) => {
65
- objectIds.forEach((id)=> {
66
- const entity = context.viewer.scene.objects[id];
67
- if (entity) {
68
- entity.visible = false;
69
- };
70
- });
71
- };
72
- processByChildIdList(context.treeViewNode, event);
73
- }
74
- },
75
- {
76
- getTitle: function (context) { return document.webL10n.get('hide_others') },
77
- doAction: function (context) {
78
-
79
- context.treeViewPlugin.setCheckedAll(false);
80
- context.treeViewPlugin.setNodeChecked(context.treeViewNode, true);
81
-
82
- const event = (objectIds) => {
83
- const scene = context.viewer.scene;
84
-
85
- scene.setObjectsVisible(scene.visibleObjectIds, false);
86
- scene.setObjectsXRayed(scene.xrayedObjectIds, false);
87
- scene.setObjectsSelected(scene.selectedObjectIds, false);
88
- scene.setObjectsHighlighted(scene.highlightedObjectIds, false);
89
-
90
- objectIds.forEach((id)=> {
91
- const entity = context.viewer.scene.objects[id];
92
- if (entity) {
93
- entity.visible = true;
94
- };
95
- });
96
- };
97
-
98
- processByChildIdList(context.treeViewNode, event);
99
- }
100
- },
101
- {
102
- getTitle: function (context) { return document.webL10n.get('hide_all') },
103
- getEnabled: function (context) {
104
- return (context.viewer.scene.visibleObjectIds.length > 0);
105
- },
106
- doAction: function (context) {
107
- context.treeViewPlugin.setCheckedAll(false);
108
- context.viewer.scene.setObjectsVisible(context.viewer.scene.visibleObjectIds, false);
109
- }
110
- }
111
- ],
112
- [
113
- {
114
- getTitle: function (context) { return document.webL10n.get('show') },
115
- doAction: function (context) {
116
-
117
- context.treeViewPlugin.setNodeChecked(context.treeViewNode, true);
118
-
119
- const event = (objectIds) => {
120
- objectIds.forEach((id)=> {
121
- const entity = context.viewer.scene.objects[id];
122
- if (entity) {
123
- entity.visible = true;
124
- entity.xrayed = false;
125
- entity.selected = false;
126
- }
127
- });
128
- };
129
-
130
- processByChildIdList(context.treeViewNode, event);
131
- }
132
- },
133
- {
134
- getTitle: function (context) { return document.webL10n.get('show_others') },
135
- doAction: function (context) {
136
- context.treeViewPlugin.setCheckedAll(true);
137
- context.treeViewPlugin.setNodeChecked(context.treeViewNode, false);
138
-
139
- const scene = context.viewer.scene;
140
-
141
- scene.setObjectsVisible(scene.objectIds, true);
142
- scene.setObjectsXRayed(scene.xrayedObjectIds, false);
143
- scene.setObjectsSelected(scene.selectedObjectIds, false);
144
-
145
- const event = (objectIds) => {
146
- objectIds.forEach((id) => {
147
- const entity = context.viewer.scene.objects[id];
148
- if (entity) {
149
- entity.visible = false;
150
- }
151
- });
152
- }
153
-
154
- processByChildIdList(context.treeViewNode, event);
155
- }
156
- },
157
- {
158
- getTitle: function (context) { return document.webL10n.get('show_all') },
159
- getEnabled: function (context) {
160
- const scene = context.viewer.scene;
161
- return (scene.numVisibleObjects < scene.numObjects);
162
- },
163
- doAction: function (context) {
164
- context.treeViewPlugin.setCheckedAll(true);
165
-
166
- const scene = context.viewer.scene;
167
- scene.setObjectsVisible(scene.objectIds, true);
168
- scene.setObjectsXRayed(scene.xrayedObjectIds, false);
169
- scene.setObjectsSelected(scene.selectedObjectIds, false);
170
- }
171
- }
172
- ],
173
- [
174
- {
175
- getTitle: function (context) { return document.webL10n.get('x_ray') },
176
- doAction: function (context) {
177
-
178
- context.treeViewPlugin.setNodeChecked(context.treeViewNode, true);
179
-
180
- const event = (objectIds) => {
181
- objectIds.forEach((id) => {
182
- const entity = context.viewer.scene.objects[id];
183
- if (entity) {
184
- entity.xrayed = true;
185
- entity.visible = true;
186
- }
187
- });
188
- }
189
-
190
- processByChildIdList(context.treeViewNode, event);
191
- }
192
- },
193
- {
194
- getTitle: function (context) { return document.webL10n.get('x_ray_undo') },
195
- doAction: function (context) {
196
-
197
- const event = (objectIds) => {
198
- objectIds.forEach((id) => {
199
- const entity = context.viewer.scene.objects[id];
200
- if (entity) {
201
- entity.xrayed = false;
202
- }
203
- });
204
- }
205
-
206
- processByChildIdList(context.treeViewNode, event);
207
- }
208
- },
209
- {
210
- getTitle: function (context) { return document.webL10n.get('x_ray_others') },
211
- doAction: function (context) {
212
- context.treeViewPlugin.setCheckedAll(true);
213
-
214
- const scene = context.viewer.scene;
215
- scene.setObjectsVisible(scene.objectIds, true);
216
- scene.setObjectsXRayed(scene.objectIds, true);
217
- scene.setObjectsSelected(scene.selectedObjectIds, false);
218
- scene.setObjectsHighlighted(scene.highlightedObjectIds, false);
219
-
220
- const event = (objectIds) => {
221
- objectIds.forEach((id) => {
222
- const entity = context.viewer.scene.objects[id];
223
- if (entity) {
224
- entity.xrayed = false;
225
- }
226
- });
227
- }
228
-
229
- processByChildIdList(context.treeViewNode, event);
230
- }
231
- },
232
- {
233
- getTitle: function (context) { return document.webL10n.get('x_ray_reset') },
234
- getEnabled: function (context) {
235
- return (context.viewer.scene.numXRayedObjects > 0);
236
- },
237
- doAction: function (context) {
238
- context.viewer.scene.setObjectsXRayed(context.viewer.scene.xrayedObjectIds, false);
239
- }
240
- }
241
- ],
242
- [
243
- {
244
- getTitle: function (context) { return document.webL10n.get('select') },
245
- doAction: function (context) {
246
- context.treeViewPlugin.setNodeChecked(context.treeViewNode, true);
247
-
248
- const event = (objectIds) => {
249
- objectIds.forEach((id) => {
250
- const entity = context.viewer.scene.objects[id];
251
- if (entity) {
252
- entity.selected = true;
253
- entity.visible = true;
254
- }
255
- });
256
- }
257
-
258
- processByChildIdList(context.treeViewNode, event);
259
- }
260
- },
261
- {
262
- getTitle: function (context) { return document.webL10n.get('deselect') },
263
- doAction: function (context) {
264
-
265
- const event = (objectIds) => {
266
- objectIds.forEach((id) => {
267
- const entity = context.viewer.scene.objects[id];
268
- if (entity) {
269
- entity.selected = false;
270
- }
271
- });
272
- }
273
-
274
- processByChildIdList(context.treeViewNode, event);
275
- }
276
- },
277
- {
278
- getTitle: function (context) { return document.webL10n.get('clear_selection') },
279
- getEnabled: function (context) {
280
- return (context.viewer.scene.numSelectedObjects > 0);
281
- },
282
- doAction: function (context) {
283
- context.viewer.scene.setObjectsSelected(context.viewer.scene.selectedObjectIds, false);
284
- }
285
- }
286
- ]
287
- ]
288
- });
289
-
290
- class VitroTreeViewPlugin extends TreeViewPlugin
291
- {
292
- constructor(viewer, cfg = {}) {
293
- super(viewer, cfg);
294
-
295
- this.checked = true;
296
-
297
- this._checkboxChangeHandler = (event) => {
298
- if (this._muteTreeEvents) {
299
- return;
300
- }
301
- this._muteSceneEvents = true;
302
- const checkbox = event.target;
303
- const visible = checkbox.checked;
304
- const nodeId = checkbox.id.replace('checkbox-', '');
305
- const checkedNode = this._nodeNodes[nodeId];
306
- const objects = this._viewer.scene.objects;
307
- let numUpdated = 0;
308
-
309
- viewer.scene.canvas.spinner.processes++;
310
-
311
- const callback = (data) => {
312
- for (var i = 0; i < data.length; i++) {
313
- const entity = objects[data[i]];
314
-
315
- if (entity) {
316
- entity.visible = visible;
317
- }
318
- }
319
-
320
- viewer.scene.canvas.spinner.processes--;
321
- viewer.scene.fire("reloadSmallScenes");
322
- };
323
-
324
- processByChildIdList(checkedNode, callback);
325
-
326
- this.setNodeChecked(checkedNode, visible);
327
-
328
- this._muteSceneEvents = false;
329
- };
330
-
331
- // Right-clicking on a tree node shows the context menu for that node
332
-
333
- this.on("contextmenu", (e) => {
334
-
335
- treeViewContextMenu.context = { // Must set context before opening menu
336
- viewer: e.viewer,
337
- treeViewPlugin: e.treeViewPlugin,
338
- treeViewNode: e.treeViewNode,
339
- entity: e.viewer.scene.objects[e.treeViewNode.objectId] // Only defined if tree node is a leaf node
340
- };
341
-
342
- treeViewContextMenu.show(e.event.pageX, e.event.pageY);
343
- });
344
-
345
- // Left-clicking on a tree node isolates that object in the 3D view
346
-
347
- this.on("nodeTitleClicked", (e) => {
348
- const scene = viewer.scene;
349
-
350
- e.treeViewPlugin.setCheckedAll(false);
351
- e.treeViewPlugin.setNodeChecked(e.treeViewNode, true);
352
-
353
- const event = (objectIds) => {
354
- e.treeViewPlugin.unShowNode();
355
- scene.setObjectsXRayed(scene.objectIds, true);
356
- scene.setObjectsVisible(scene.objectIds, true);
357
- scene.setObjectsXRayed(objectIds, false);
358
- viewer.cameraFlight.flyTo({
359
- aabb: scene.getAABB(objectIds),
360
- duration: 0.5
361
- }, () => {
362
- setTimeout(function () {
363
- scene.setObjectsVisible(scene.xrayedObjectIds, false);
364
- scene.setObjectsXRayed(scene.xrayedObjectIds, false);
365
- }, 500);
366
- });
367
- }
368
-
369
- processByChildIdList(e.treeViewNode, event);
370
- });
371
- }
372
-
373
- showInTree(objectId) {
374
- viewer.scene.canvas.spinner.processes++;
375
- BIMModel.GetParentIdList(objectId, true, null,
376
- (data) => {
377
- for (var i = 0; i < data.length; i++) {
378
- this._expandSwitchElementByObjectId(data[i]);
379
- }
380
-
381
- viewer.scene.canvas.spinner.processes--;
382
- },
383
- (error) => {
384
- viewer.scene.canvas.spinner.processes--;
385
- }
386
- );
387
- }
388
-
389
- setCheckedAll(checked) {
390
- this.checked = checked;
391
-
392
- this._rootNodes.forEach((rootNode) => {
393
- this.setNodeChecked(rootNode, checked);
394
- });
395
- }
396
-
397
-
398
- setNodeChecked(node, checked){
399
- this.withNodeTree(node, (node) => {
400
- if (node) {
401
- const checkbox2 = document.getElementById(`checkbox-${node.nodeId}`);
402
-
403
- if (checkbox2) {
404
- checkbox2.checked = checked;
405
- }
406
-
407
- node.checked = checked;
408
- }
409
- });
410
- }
411
-
412
- _createNodeElement(node) {
413
- const nodeElement = document.createElement('li');
414
- //const nodeId = this._objectToNodeID(node.objectId);
415
- const nodeId = node.nodeId;
416
- if (node.xrayed) {
417
- nodeElement.classList.add('xrayed-node');
418
- }
419
- nodeElement.id = nodeId;
420
- if (node.children.length > 0 || node.childCount > 0) { //vitro || node.childCount > 0
421
- const switchElementId = "switch-" + nodeId;
422
- const switchElement = document.createElement('a');
423
- switchElement.href = '#';
424
- switchElement.id = switchElementId;
425
- switchElement.textContent = '+';
426
- switchElement.classList.add('plus');
427
- switchElement.addEventListener('click', this._switchExpandHandler);
428
- nodeElement.appendChild(switchElement);
429
- }
430
- const checkbox = document.createElement('input');
431
- checkbox.id = `checkbox-${nodeId}`;
432
- checkbox.type = "checkbox";
433
- checkbox.checked = node.checked;
434
- checkbox.style["pointer-events"] = "all";
435
- checkbox.addEventListener("change", this._checkboxChangeHandler);
436
- nodeElement.appendChild(checkbox);
437
- const span = document.createElement('span');
438
- span.textContent = node.title;
439
- nodeElement.appendChild(span);
440
- span.oncontextmenu = (e) => {
441
- this.fire("contextmenu", {
442
- event: e,
443
- viewer: this._viewer,
444
- treeViewPlugin: this,
445
- treeViewNode: node
446
- });
447
- e.preventDefault();
448
- };
449
- span.onclick = (e) => {
450
- this.fire("nodeTitleClicked", {
451
- event: e,
452
- viewer: this._viewer,
453
- treeViewPlugin: this,
454
- treeViewNode: node
455
- });
456
- e.preventDefault();
457
- };
458
- return nodeElement;
459
- }
460
-
461
- _createContainmentNodes2(metaObject, parent) {
462
- if (this._pruneEmptyNodes && (metaObject._countEntities === 0)) {
463
- return;
464
- }
465
- const metaObjectType = metaObject.type;
466
- const metaObjectName = metaObject.name || metaObjectType;
467
- const children = metaObject.children;
468
- const objectId = metaObject.id;
469
- const childCount = metaObject.childCount;//vitro
470
- const node = {
471
- nodeId: `${this._id}-${objectId}`,
472
- objectId: objectId,
473
- title: (!parent) ? (this._rootName || metaObjectName) : (metaObjectName && metaObjectName !== "" && metaObjectName !== "Undefined" && metaObjectName !== "Default") ? metaObjectName : metaObjectType,
474
- type: metaObjectType,
475
- parent: parent,
476
- numEntities: 0,
477
- numVisibleEntities: 0,
478
- checked: (parent) ? parent.checked : this.checked,
479
- xrayed: false,
480
- children: [],
481
- childCount:childCount,//vitro
482
- };
483
- if (parent) {
484
- parent.children.push(node);
485
- } else {
486
- this._rootNodes.push(node);
487
- }
488
- this._objectNodes[node.objectId] = node;
489
- this._nodeNodes[node.nodeId] = node;
490
- if (children) {
491
- for (let i = 0, len = children.length; i < len; i++) {
492
- const childMetaObject = children[i];
493
- this._createContainmentNodes2(childMetaObject, node);
494
- }
495
- }
496
- }
497
-
498
- addObjectsToMetaModel(metaObjects, metaModel) {//vitro method
499
- const _metaObjectList = [];
500
-
501
- if (metaObjects) {
502
- for (let i = 0, len = metaObjects.length; i < len; i++) {
503
- const metaObjectData = metaObjects[i];
504
- const id = metaObjectData.id;
505
- let metaObject = metaModel.metaScene.metaObjects[id];
506
- if (!metaObject) {
507
- const type = metaObjectData.type;
508
- const originalSystemId = metaObjectData.originalSystemId;
509
- const propertySetIds = metaObjectData.propertySets || metaObjectData.propertySetIds;
510
- metaObject = new MetaObject({
511
- id,
512
- originalSystemId,
513
- parentId: metaObjectData.parent,
514
- type,
515
- name: metaObjectData.name,
516
- attributes: metaObjectData.attributes,
517
- propertySetIds,
518
- external: metaObjectData.external,
519
- });
520
- metaObject.childCount = metaObjectData.child_count,
521
- metaModel.metaScene.metaObjects[id] = metaObject;
522
- }
523
- //metaObject.metaModels.push(metaModel);
524
- if ((!metaObjectData.parent) || (metaObjectData.parent === -1)) {
525
- metaModel.rootMetaObjects.push(metaObject);
526
- metaModel.metaScene.rootMetaObjects[id] = metaObject;
527
- }
528
-
529
- metaModel.metaObjects.push(metaObject);
530
- _metaObjectList.push(metaObject);
531
- }
532
- }
533
-
534
- return _metaObjectList;
535
- }
536
-
537
- _expandSwitchElementByObjectId(id){
538
- const nodeId = `${this._id}-${id}`;
539
- const switchElementId = "switch-" + nodeId;
540
-
541
- const switchElement = document.getElementById(switchElementId);
542
-
543
- if (switchElement) {
544
- this._expandSwitchElement(switchElement);
545
- }
546
- }
547
-
548
- _expandSwitchElement(switchElement) {
549
- const parentElement = switchElement.parentElement;
550
- const expanded = parentElement.getElementsByTagName('li')[0];
551
- if (expanded) {
552
- return;
553
- }
554
- const nodeId = parentElement.id;
555
- const switchNode = this._nodeNodes[nodeId];
556
- const childNodes = switchNode.children;
557
- if(childNodes.length > 0){
558
- this.createChildElement(parentElement, childNodes, switchElement)
559
- }
560
- else{
561
- this.loadChildNodes(switchNode.objectId, parentElement, switchElement);
562
- }
563
- }
564
-
565
- loadChildNodes(objectId, parentElement, switchElement){
566
- viewer.scene.canvas.spinner.processes++;
567
-
568
- const callback = (metaObjects) =>
569
- {
570
- const metaModel = viewer.metaScene.metaModels[window.model.id];
571
- const metaObjectList = this.addObjectsToMetaModel(metaObjects, metaModel);
572
- const nodeId =`${this._id}-${objectId}`;
573
- const parentNode = this._nodeNodes[nodeId];
574
- const ul = document.createElement('ul');
575
-
576
- metaObjectList.forEach((object)=> {
577
- this._createContainmentNodes2(object, parentNode);
578
- const childNodeId =`${this._id}-${object.id}`;
579
- const childNode = this._nodeNodes[childNodeId];
580
- const nodeElement = this._createNodeElement(childNode);
581
-
582
- ul.appendChild(nodeElement);
583
- });
584
-
585
-
586
- parentElement.appendChild(ul);
587
- switchElement.classList.remove('plus');
588
- switchElement.classList.add('minus');
589
- switchElement.textContent = '-';
590
- switchElement.removeEventListener('click', this._switchExpandHandler);
591
- switchElement.addEventListener('click', this._switchCollapseHandler);
592
-
593
- viewer.scene.canvas.spinner.processes--;
594
- };
595
-
596
- const error = () => {
597
- viewer.scene.canvas.spinner.processes--;
598
- };
599
-
600
- BIMModel.GetChildList(objectId, false, null, callback, error, false);
601
- }
602
-
603
- createChildElement(parentElement, childNodes, switchElement){
604
- const nodeElements = childNodes.map((node) => {
605
- return this._createNodeElement(node);
606
- });
607
- const ul = document.createElement('ul');
608
- nodeElements.forEach((nodeElement) => {
609
- ul.appendChild(nodeElement);
610
- });
611
- parentElement.appendChild(ul);
612
- switchElement.classList.remove('plus');
613
- switchElement.classList.add('minus');
614
- switchElement.textContent = '-';
615
- switchElement.removeEventListener('click', this._switchExpandHandler);
616
- switchElement.addEventListener('click', this._switchCollapseHandler);
617
- }
618
- }
619
-
620
- export { VitroTreeViewPlugin };
@@ -1,24 +0,0 @@
1
- async function initHtml() {
2
- let htmlContainer = document.getElementsByTagName('html')[0];
3
- htmlContainer.dir = 'ltr';
4
- const resp = await fetch('resource/bimViewer/viewer.html?version=v5');
5
- const viewer = await resp.text();
6
- let container = document.getElementsByTagName('body')[0];
7
- container.insertAdjacentHTML('beforeend', viewer);
8
- }
9
-
10
- async function initPage() {
11
- let container = document.getElementsByTagName('head')[0];
12
- container.innerHTML += '<link rel="resource" type="application/l10n" href="resource/bimViewer/locale/locale.js?version=v5">';
13
- container.innerHTML += '<link href="/resource/bimViewer/css/bim-viewer.css?version=v5" rel="stylesheet">';
14
-
15
- await initHtml();
16
-
17
- const script = document.createElement('script');
18
- script.type = 'module';
19
- script.id = 'bim-viewer';
20
- script.src = 'resource/bimViewer/js/bim-viewer.js?version=v5';
21
- document.head.appendChild(script);
22
- }
23
-
24
- initPage();
@@ -1,25 +0,0 @@
1
- async function initHtml() {
2
- let htmlContainer = document.getElementsByTagName('html')[0];
3
- htmlContainer.dir = 'ltr';
4
- const resp = await fetch('resource/pdfViewer/viewer.html?version=v2');
5
- const viewer = await resp.text();
6
- let container = document.getElementsByTagName('body')[0];
7
- container.insertAdjacentHTML('afterbegin', viewer);
8
- }
9
-
10
-
11
- async function initPage() {
12
- let container = document.getElementsByTagName('head')[0];
13
- container.innerHTML += '<link rel="resource" type="application/l10n" href="resource/pdfViewer/locale/locale.js?version=v2">';
14
- container.innerHTML += '<link href="/resource/pdfViewer/css/pdf-viewer.css?version=v2" rel="stylesheet">';
15
-
16
- await initHtml();
17
-
18
- const script = document.createElement('script');
19
- script.type = 'text/javascript';
20
- script.id = 'pdf-viewer';
21
- script.src = 'resource/pdfViewer/js/pdf-viewer.js?version=v2';
22
- document.head.appendChild(script);
23
- }
24
-
25
- initPage();