@vertexvis/viewer 0.15.2-testing.4 → 0.15.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/dist/cjs/_commonjsHelpers-dcc4cf71.js +1 -1
  2. package/dist/cjs/app-globals-2035678d.js +1 -1
  3. package/dist/cjs/browser.esm-5d246754.js +1 -1
  4. package/dist/cjs/bundle.esm-22b6f2d6.js +1 -1
  5. package/dist/cjs/bundle.esm-b43c197a.js +38280 -0
  6. package/dist/cjs/{config-4a86ae0b.js → config-3fc1c093.js} +2 -2
  7. package/dist/cjs/{cursors-85d403e9.js → cursors-02a06ec9.js} +7 -1
  8. package/dist/cjs/dom-8d90bfaf.js +1 -1
  9. package/dist/cjs/dom-92728e58.js +1 -1
  10. package/dist/cjs/dom-d1bbd67c.js +1 -1
  11. package/dist/cjs/dom-d57d3c3b.js +1 -1
  12. package/dist/cjs/elementRectObserver-9b28f182.js +1 -1
  13. package/dist/cjs/entities-9eb7e608.js +1 -1
  14. package/dist/cjs/{entities-496b61cd.js → entities-c1c3c6a3.js} +3 -3
  15. package/dist/cjs/errors-1b37642b.js +97 -0
  16. package/dist/cjs/grpc-web-client.umd-2af20c1b.js +1 -1
  17. package/dist/cjs/index-70db349e.js +1 -1
  18. package/dist/cjs/index-b9d13137.js +1 -1
  19. package/dist/cjs/index.cjs.js +9 -6
  20. package/dist/cjs/loader.cjs.js +2 -2
  21. package/dist/cjs/{mapper-216603b0.js → mapper-d4145b72.js} +2 -2
  22. package/dist/cjs/markup-4a2fc281.js +1 -1
  23. package/dist/cjs/{model-b61f4d20.js → model-19fb560a.js} +27 -6
  24. package/dist/cjs/model-20a70d27.js +1 -1
  25. package/dist/cjs/overlays-b03ec80b.js +1 -1
  26. package/dist/cjs/png-decoder-ef097f37.js +1 -1
  27. package/dist/cjs/results-178e89a3.js +1 -1
  28. package/dist/cjs/{scene-0ce59b26.js → scene-a94e6fa5.js} +276 -225
  29. package/dist/cjs/shadow-css-6b9daa41.js +1 -1
  30. package/dist/cjs/stencil-fc92b387.js +1 -1
  31. package/dist/cjs/{streamAttributes-7725f5c4.js → streamAttributes-cf0c513d.js} +5408 -39951
  32. package/dist/cjs/templates-e57b3741.js +1 -1
  33. package/dist/cjs/utils-2c8e2aa3.js +1 -1
  34. package/dist/cjs/utils-ea359796.js +1 -1
  35. package/dist/cjs/vertex-scene-tree-search_3.cjs.entry.js +1 -1
  36. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +1 -1
  37. package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js +1 -1
  38. package/dist/cjs/vertex-scene-tree-table-header.cjs.entry.js +1 -1
  39. package/dist/cjs/vertex-scene-tree-table-resize-divider.cjs.entry.js +1 -1
  40. package/dist/cjs/vertex-scene-tree-toolbar-group.cjs.entry.js +1 -1
  41. package/dist/cjs/vertex-scene-tree.cjs.entry.js +158 -37
  42. package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js +229 -49
  43. package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +1 -1
  44. package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +1 -1
  45. package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +3 -2
  46. package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +1 -1
  47. package/dist/cjs/vertex-viewer-icon.cjs.entry.js +1 -1
  48. package/dist/cjs/vertex-viewer-layer.cjs.entry.js +1 -1
  49. package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +1 -1
  50. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +1 -1
  51. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +1 -1
  52. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +3 -2
  53. package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +5 -4
  54. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +4 -3
  55. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +7 -6
  56. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +10 -5
  57. package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js +15 -13
  58. package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +20 -9
  59. package/dist/cjs/vertex-viewer-spinner.cjs.entry.js +1 -1
  60. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +6 -4
  61. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +5 -4
  62. package/dist/cjs/vertex-viewer.cjs.entry.js +80 -53
  63. package/dist/cjs/viewer.cjs.js +2 -2
  64. package/dist/cjs/viewport-5ca619f7.js +1 -1
  65. package/dist/collection/components/scene-tree/lib/controller.js +108 -28
  66. package/dist/collection/components/scene-tree/lib/errors.js +35 -2
  67. package/dist/collection/components/scene-tree/scene-tree.js +12 -5
  68. package/dist/collection/components/viewer/viewer.js +17 -15
  69. package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.css +7 -2
  70. package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.js +105 -18
  71. package/dist/collection/components/viewer-pin-group/viewer-pin-group.js +5 -1
  72. package/dist/collection/components/viewer-pin-label/viewer-pin-label.css +1 -1
  73. package/dist/collection/components/viewer-pin-label/viewer-pin-label.js +14 -12
  74. package/dist/collection/components/viewer-pin-tool/utils.js +25 -4
  75. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.css +12 -0
  76. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.js +9 -2
  77. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js +3 -2
  78. package/dist/collection/components/viewer-view-cube/viewer-view-cube.js +5 -5
  79. package/dist/collection/lib/cursors.js +6 -1
  80. package/dist/collection/lib/interactions/baseInteractionHandler.js +12 -2
  81. package/dist/collection/lib/interactions/mouseInteractions.js +5 -4
  82. package/dist/collection/lib/mappers/frameStreaming.js +11 -11
  83. package/dist/collection/lib/pins/interactions.js +9 -5
  84. package/dist/collection/lib/pins/model.js +2 -2
  85. package/dist/collection/lib/rendering/matrices.js +2 -4
  86. package/dist/collection/lib/scenes/camera.js +4 -2
  87. package/dist/collection/lib/scenes/mapper.js +98 -36
  88. package/dist/collection/lib/scenes/queries.js +89 -50
  89. package/dist/collection/lib/scenes/scene.js +15 -7
  90. package/dist/collection/lib/stream/stream.js +24 -12
  91. package/dist/collection/lib/transforms/drawable.js +2 -2
  92. package/dist/collection/lib/types/frame.js +4 -3
  93. package/dist/collection/lib/types/frameCamera.js +6 -1
  94. package/dist/collection/lib/types/index.js +3 -2
  95. package/dist/collection/lib/types/loadableResource.js +24 -4
  96. package/dist/collection/lib/types/sceneViewStateIdentifier.js +7 -0
  97. package/dist/collection/lib/volume-intersection/controller.js +71 -15
  98. package/dist/collection/lib/volume-intersection/interactions.js +54 -9
  99. package/dist/collection/lib/volume-intersection/model.js +27 -10
  100. package/dist/custom-elements/index.js +20207 -15976
  101. package/dist/custom-elements/png-decoder.js +1 -1
  102. package/dist/esm/_commonjsHelpers-11ca3be1.js +1 -1
  103. package/dist/esm/app-globals-40df99a0.js +1 -1
  104. package/dist/esm/{browser.esm-ae4ca1f1.js → browser.esm-07e7db8f.js} +2 -2
  105. package/dist/esm/bundle.esm-91404853.js +38273 -0
  106. package/dist/esm/{bundle.esm-ce2c7ad3.js → bundle.esm-92e615bf.js} +2 -2
  107. package/dist/esm/{config-6cdeb6ca.js → config-25384fe6.js} +3 -3
  108. package/dist/esm/{cursors-a8d4b3f4.js → cursors-127a3bb7.js} +8 -3
  109. package/dist/esm/dom-0440435d.js +1 -1
  110. package/dist/esm/dom-be140992.js +1 -1
  111. package/dist/esm/dom-e19ee80b.js +1 -1
  112. package/dist/esm/{dom-5b164305.js → dom-e436f0c0.js} +2 -2
  113. package/dist/esm/elementRectObserver-39cf7b95.js +1 -1
  114. package/dist/esm/{entities-6f3c5437.js → entities-0e325765.js} +4 -4
  115. package/dist/esm/entities-ce81dd7f.js +1 -1
  116. package/dist/esm/errors-a4cc9caa.js +85 -0
  117. package/dist/esm/grpc-web-client.umd-5409853c.js +1 -1
  118. package/dist/esm/index-26dfb2d0.js +1 -1
  119. package/dist/esm/index-e841d91b.js +1 -1
  120. package/dist/esm/index.js +15 -13
  121. package/dist/esm/index.mjs +15 -13
  122. package/dist/esm/loader.js +2 -2
  123. package/dist/esm/loader.mjs +2 -2
  124. package/dist/esm/{mapper-941ff03c.js → mapper-dd937684.js} +3 -3
  125. package/dist/esm/{markup-3c2900f3.js → markup-2dde1f10.js} +3 -3
  126. package/dist/esm/{model-fa9af61a.js → model-3cd8cd47.js} +2 -2
  127. package/dist/esm/{model-40bd1711.js → model-bfe1c4d8.js} +29 -8
  128. package/dist/esm/{overlays-cc3efc30.js → overlays-8f195eb3.js} +3 -3
  129. package/dist/esm/{png-decoder-d4b65417.js → png-decoder-45f38ea3.js} +2 -2
  130. package/dist/esm/{results-3b4df2cf.js → results-38baef59.js} +2 -2
  131. package/dist/esm/{scene-970f5000.js → scene-2543b3bd.js} +237 -178
  132. package/dist/esm/shadow-css-51dd7708.js +1 -1
  133. package/dist/esm/stencil-bfbf099f.js +1 -1
  134. package/dist/esm/{streamAttributes-24bd7b3a.js → streamAttributes-23270e27.js} +5419 -39956
  135. package/dist/esm/templates-022199c1.js +1 -1
  136. package/dist/esm/{utils-81347571.js → utils-2306c744.js} +2 -2
  137. package/dist/esm/{utils-559e1632.js → utils-f03802ef.js} +2 -2
  138. package/dist/esm/vertex-scene-tree-search_3.entry.js +3 -3
  139. package/dist/esm/vertex-scene-tree-table-cell.entry.js +1 -1
  140. package/dist/esm/vertex-scene-tree-table-column.entry.js +1 -1
  141. package/dist/esm/vertex-scene-tree-table-header.entry.js +1 -1
  142. package/dist/esm/vertex-scene-tree-table-resize-divider.entry.js +1 -1
  143. package/dist/esm/vertex-scene-tree-toolbar-group.entry.js +1 -1
  144. package/dist/esm/vertex-scene-tree.entry.js +160 -39
  145. package/dist/esm/vertex-viewer-box-query-tool.entry.js +229 -49
  146. package/dist/esm/vertex-viewer-button_3.entry.js +1 -1
  147. package/dist/esm/vertex-viewer-default-toolbar.entry.js +1 -1
  148. package/dist/esm/vertex-viewer-dom-element_2.entry.js +6 -5
  149. package/dist/esm/vertex-viewer-dom-group.entry.js +3 -3
  150. package/dist/esm/vertex-viewer-icon.entry.js +1 -1
  151. package/dist/esm/vertex-viewer-layer.entry.js +1 -1
  152. package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +4 -4
  153. package/dist/esm/vertex-viewer-markup-tool.entry.js +5 -5
  154. package/dist/esm/vertex-viewer-markup.entry.js +5 -5
  155. package/dist/esm/vertex-viewer-measurement-details.entry.js +5 -4
  156. package/dist/esm/vertex-viewer-measurement-distance.entry.js +13 -12
  157. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +8 -7
  158. package/dist/esm/vertex-viewer-measurement-precise.entry.js +12 -11
  159. package/dist/esm/vertex-viewer-pin-group.entry.js +13 -8
  160. package/dist/esm/vertex-viewer-pin-label_2.entry.js +18 -16
  161. package/dist/esm/vertex-viewer-pin-tool.entry.js +23 -12
  162. package/dist/esm/vertex-viewer-spinner.entry.js +1 -1
  163. package/dist/esm/vertex-viewer-transform-widget.entry.js +9 -7
  164. package/dist/esm/vertex-viewer-view-cube.entry.js +7 -6
  165. package/dist/esm/vertex-viewer.entry.js +65 -38
  166. package/dist/esm/viewer.js +2 -2
  167. package/dist/esm/{viewport-e39e2eba.js → viewport-f19fc583.js} +2 -2
  168. package/dist/types/components/scene-tree/lib/controller.d.ts +18 -3
  169. package/dist/types/components/scene-tree/lib/errors.d.ts +17 -2
  170. package/dist/types/components/viewer/viewer.d.ts +2 -0
  171. package/dist/types/components/viewer-box-query-tool/viewer-box-query-tool.d.ts +36 -2
  172. package/dist/types/components/viewer-pin-tool/utils.d.ts +1 -1
  173. package/dist/types/components.d.ts +11 -3
  174. package/dist/types/lib/cursors.d.ts +5 -0
  175. package/dist/types/lib/interactions/baseInteractionHandler.d.ts +1 -0
  176. package/dist/types/lib/interactions/mouseInteractions.d.ts +2 -1
  177. package/dist/types/lib/pins/interactions.d.ts +4 -2
  178. package/dist/types/lib/pins/model.d.ts +1 -1
  179. package/dist/types/lib/scenes/camera.d.ts +1 -1
  180. package/dist/types/lib/scenes/mapper.d.ts +5 -1
  181. package/dist/types/lib/scenes/queries.d.ts +45 -30
  182. package/dist/types/lib/scenes/scene.d.ts +10 -1
  183. package/dist/types/lib/types/frame.d.ts +1 -1
  184. package/dist/types/lib/types/index.d.ts +2 -1
  185. package/dist/types/lib/types/loadableResource.d.ts +8 -2
  186. package/dist/types/lib/types/sceneViewStateIdentifier.d.ts +15 -0
  187. package/dist/types/lib/volume-intersection/controller.d.ts +33 -5
  188. package/dist/types/lib/volume-intersection/interactions.d.ts +12 -1
  189. package/dist/types/lib/volume-intersection/model.d.ts +7 -0
  190. package/dist/viewer/index.esm.js +2 -2
  191. package/dist/viewer/{p-ad09c92e.entry.js → p-029fba92.entry.js} +1 -1
  192. package/dist/viewer/p-07aeee89.js +1 -1
  193. package/dist/viewer/{p-29986489.js → p-0a017be7.js} +2 -2
  194. package/dist/viewer/p-0c583cad.entry.js +4 -0
  195. package/dist/viewer/p-0d494d01.js +4 -0
  196. package/dist/viewer/p-0fdad1a5.js +1 -1
  197. package/dist/viewer/{p-3ca4a7c1.js → p-1812c82d.js} +2 -2
  198. package/dist/viewer/{p-7663a603.entry.js → p-191156ad.entry.js} +1 -1
  199. package/dist/viewer/{p-a57dc6e4.entry.js → p-1998284a.entry.js} +2 -2
  200. package/dist/viewer/p-27f715f8.entry.js +4 -0
  201. package/dist/viewer/{p-7f6251da.js → p-283aeac4.js} +2 -2
  202. package/dist/viewer/p-298b63c2.entry.js +4 -0
  203. package/dist/viewer/p-2ace066b.entry.js +4 -0
  204. package/dist/viewer/{p-597cc9b5.js → p-2b60a8b0.js} +2 -2
  205. package/dist/viewer/{p-050f912b.entry.js → p-2fd123c8.entry.js} +1 -1
  206. package/dist/viewer/p-305a8be6.entry.js +4 -0
  207. package/dist/viewer/p-31724d24.js +4 -0
  208. package/dist/viewer/p-32cc2209.js +4 -0
  209. package/dist/viewer/p-3829dd99.entry.js +4 -0
  210. package/dist/viewer/{p-6da8a28f.entry.js → p-3aae4bf1.entry.js} +2 -2
  211. package/dist/viewer/{p-99352cf0.js → p-42760392.js} +2 -2
  212. package/dist/viewer/p-440c8174.js +4 -0
  213. package/dist/viewer/{p-e422deaf.entry.js → p-4f25e367.entry.js} +2 -2
  214. package/dist/viewer/{p-a107b65e.entry.js → p-507b5aeb.entry.js} +2 -2
  215. package/dist/viewer/{p-52ab9ec0.js → p-51401063.js} +2 -2
  216. package/dist/viewer/{p-426970b3.entry.js → p-533b1c63.entry.js} +1 -1
  217. package/dist/viewer/{p-dcb9804c.entry.js → p-569ed94a.entry.js} +2 -2
  218. package/dist/viewer/p-5809b400.js +1 -1
  219. package/dist/viewer/p-6072cf84.js +4 -0
  220. package/dist/viewer/{p-e4a26a32.entry.js → p-6406a70a.entry.js} +1 -1
  221. package/dist/viewer/p-6bf0594b.entry.js +4 -0
  222. package/dist/viewer/p-72c59115.entry.js +4 -0
  223. package/dist/viewer/{p-d71652b0.entry.js → p-8ac7290a.entry.js} +1 -1
  224. package/dist/viewer/{p-f184bcab.entry.js → p-8afcbd99.entry.js} +1 -1
  225. package/dist/viewer/p-92fe4417.js +1 -1
  226. package/dist/viewer/{p-5746931d.entry.js → p-952a217d.entry.js} +1 -1
  227. package/dist/viewer/p-98e6a50e.js +1 -1
  228. package/dist/viewer/{p-99fd27e0.entry.js → p-9cb99ea8.entry.js} +1 -1
  229. package/dist/viewer/p-a2e9e8a5.js +4 -0
  230. package/dist/viewer/p-a380f0c2.js +1 -1
  231. package/dist/viewer/{p-661b5234.js → p-acfc5c50.js} +2 -2
  232. package/dist/viewer/{p-82bd25e8.entry.js → p-b3540dce.entry.js} +1 -1
  233. package/dist/viewer/p-b5ca30cd.js +4 -0
  234. package/dist/viewer/p-b74242dc.js +1 -1
  235. package/dist/viewer/p-bc1160cf.entry.js +4 -0
  236. package/dist/viewer/{p-c5e67a1e.entry.js → p-bd5a302c.entry.js} +2 -2
  237. package/dist/viewer/p-c738296e.js +1 -1
  238. package/dist/viewer/p-c8c4343b.js +1 -1
  239. package/dist/viewer/p-cd9ccb9e.entry.js +4 -0
  240. package/dist/viewer/{p-9e1384c9.js → p-cf689bbd.js} +2 -2
  241. package/dist/viewer/{p-70e5e8a8.js → p-d216a866.js} +2 -2
  242. package/dist/viewer/p-d4ed7b8d.js +4 -0
  243. package/dist/viewer/p-d6d5d5de.entry.js +4 -0
  244. package/dist/viewer/p-d6fce4c1.js +1 -1
  245. package/dist/viewer/p-df8fbe56.js +1 -1
  246. package/dist/viewer/p-dfe5a97d.js +1 -1
  247. package/dist/viewer/{p-00ce31a0.js → p-e1896ce4.js} +2 -2
  248. package/dist/viewer/p-e23af70c.js +4 -0
  249. package/dist/viewer/p-e4aa9cdb.js +1 -1
  250. package/dist/viewer/p-e929dd63.entry.js +4 -0
  251. package/dist/viewer/{p-65af7a89.js → p-fc7d8c03.js} +3 -3
  252. package/dist/viewer/viewer.esm.js +2 -2
  253. package/package.json +9 -9
  254. package/readme.md +4 -4
  255. package/dist/viewer/p-096e60bd.js +0 -4
  256. package/dist/viewer/p-0cf4f05d.entry.js +0 -4
  257. package/dist/viewer/p-0fcafbf9.js +0 -4
  258. package/dist/viewer/p-10145045.js +0 -4
  259. package/dist/viewer/p-1abfe4bf.js +0 -4
  260. package/dist/viewer/p-1bba9ade.entry.js +0 -4
  261. package/dist/viewer/p-24cda14a.entry.js +0 -4
  262. package/dist/viewer/p-27dbc865.js +0 -4
  263. package/dist/viewer/p-2b58afc3.entry.js +0 -4
  264. package/dist/viewer/p-51966cef.entry.js +0 -4
  265. package/dist/viewer/p-608925c5.entry.js +0 -4
  266. package/dist/viewer/p-68e192b9.js +0 -4
  267. package/dist/viewer/p-69a3fce8.entry.js +0 -4
  268. package/dist/viewer/p-74c772bb.entry.js +0 -4
  269. package/dist/viewer/p-990f98c2.js +0 -4
  270. package/dist/viewer/p-9dfe0b43.entry.js +0 -4
  271. package/dist/viewer/p-bb425931.entry.js +0 -4
  272. package/dist/viewer/p-bfacbaa8.entry.js +0 -4
  273. package/dist/viewer/p-c72da0fb.entry.js +0 -4
@@ -3,7 +3,7 @@ import { OffsetPager } from '@vertexvis/scene-tree-protos/core/protos/paging_pb'
3
3
  import { Uuid } from '@vertexvis/scene-tree-protos/core/protos/uuid_pb';
4
4
  import { CollapseAllRequest, CollapseNodeRequest, ExpandAllRequest, ExpandNodeRequest, FilterRequest, GetAvailableColumnsRequest, GetNodeAncestorsRequest, GetTreeRequest, LocateItemRequest, SubscribeRequest, } from '@vertexvis/scene-tree-protos/scenetree/protos/scene_tree_api_pb';
5
5
  import { EventDispatcher } from '@vertexvis/utils';
6
- import { SceneTreeErrorCode, SceneTreeErrorDetails } from './errors';
6
+ import { SceneTreeConnectionCancelledError, SceneTreeError, SceneTreeErrorCode, SceneTreeErrorDetails, SceneTreeOperationFailedError, SceneTreeUnauthorizedError, } from './errors';
7
7
  import { isGrpcServiceError } from './grpc';
8
8
  import { decodeSceneTreeJwt } from './jwt';
9
9
  import { fromNodeProto, isLoadedRow } from './row';
@@ -61,11 +61,41 @@ export class SceneTreeController {
61
61
  setDebugLogs(debugLogs) {
62
62
  this.debugLogs = debugLogs;
63
63
  }
64
+ async handleSubscriptionHandshakeTimeout(jwtProvider, sceneViewId) {
65
+ var _a;
66
+ const connection = this.getState().connection;
67
+ if (this.isConnectedState(connection) &&
68
+ ((_a = connection.subscriptionStatusState) === null || _a === void 0 ? void 0 : _a.attempt) != null &&
69
+ connection.subscriptionStatusState.attempt <
70
+ SceneTreeController.MAX_SUBSCRIPTION_RETRY_COUNT) {
71
+ const newAttempt = connection.subscriptionStatusState.attempt + 1;
72
+ console.warn(`Failed to subscribe within the allotted timeout. Retry attempt={${newAttempt}}`);
73
+ connection.subscriptionStatusState.stream.cancel();
74
+ this.clearHandshakeTimer();
75
+ const stream = await this.subscribe();
76
+ this.invalidatePage(0);
77
+ this.updateState(Object.assign(Object.assign({}, this.state), { connection: Object.assign(Object.assign({}, connection), { type: 'connected', subscriptionStatusState: {
78
+ attempt: newAttempt,
79
+ stream,
80
+ } }) }));
81
+ this.subscriptionHandshakeTimer = window.setTimeout(() => {
82
+ this.handleSubscriptionHandshakeTimeout(jwtProvider, sceneViewId);
83
+ }, this.connectOptions.subscriptionHandshakeGracePeriodInMs);
84
+ }
85
+ else {
86
+ this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
87
+ type: 'failure',
88
+ jwtProvider,
89
+ sceneViewId,
90
+ details: new SceneTreeErrorDetails('SUBSCRIPTION_FAILURE', SceneTreeErrorCode.SUBSCRIPTION_FAILURE),
91
+ } }));
92
+ }
93
+ }
64
94
  async connect(jwtProvider) {
65
95
  const { connection } = this.state;
66
96
  const jwt = jwtProvider();
67
97
  if (jwt == null) {
68
- throw new Error('Cannot connect scene tree. JWT is undefined');
98
+ throw new SceneTreeUnauthorizedError('Cannot connect scene tree. JWT is undefined');
69
99
  }
70
100
  const { view: sceneViewId } = decodeSceneTreeJwt(jwt);
71
101
  if (connection.sceneViewId !== sceneViewId) {
@@ -82,28 +112,35 @@ export class SceneTreeController {
82
112
  this.updateState(Object.assign(Object.assign({}, this.state), { connection: connecting }));
83
113
  try {
84
114
  this.log('Scene tree controller connecting.');
85
- await this.fetchPage(0);
115
+ const [, stream] = await Promise.all([
116
+ this.fetchPage(0),
117
+ this.subscribe(),
118
+ ]);
119
+ this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
120
+ jwtProvider,
121
+ sceneViewId,
122
+ type: 'connected',
123
+ subscription: { dispose: () => stream.cancel() },
124
+ subscriptionStatusState: {
125
+ attempt: 0,
126
+ stream,
127
+ },
128
+ } }));
86
129
  this.subscriptionHandshakeTimer = window.setTimeout(() => {
130
+ this.handleSubscriptionHandshakeTimeout(jwtProvider, sceneViewId);
131
+ }, this.connectOptions.subscriptionHandshakeGracePeriodInMs);
132
+ }
133
+ catch (e) {
134
+ this.ifErrorIsFatal(e, () => {
87
135
  this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
88
136
  type: 'failure',
89
137
  jwtProvider,
90
138
  sceneViewId,
91
- details: new SceneTreeErrorDetails(SceneTreeErrorCode.SUBSCRIPTION_FAILURE),
139
+ details: this.getConnectionError(e),
92
140
  } }));
93
- }, this.connectOptions.subscriptionHandshakeGracePeriodInMs);
94
- const stream = await this.subscribe();
95
- stream.on('end', () => this.startConnectionLostReconnectTimer());
96
- this.updateState(Object.assign(Object.assign({}, this.state), { connection: Object.assign(Object.assign({}, connecting), { type: 'connected', subscription: { dispose: () => stream.cancel() } }) }));
97
- }
98
- catch (e) {
99
- this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
100
- type: 'failure',
101
- jwtProvider,
102
- sceneViewId,
103
- details: this.getConnectionError(e),
104
- } }));
105
- this.clearHandshakeTimer();
106
- throw e;
141
+ this.clearHandshakeTimer();
142
+ throw e;
143
+ });
107
144
  }
108
145
  this.startIdleReconnectTimer();
109
146
  if (this.metadataKeys.length > 0) {
@@ -144,7 +181,9 @@ export class SceneTreeController {
144
181
  await this.connect(() => viewer.token);
145
182
  }
146
183
  catch (e) {
147
- console.error('Scene tree controller erred connecting.', e);
184
+ this.ifErrorIsFatal(e, () => {
185
+ console.error('Scene tree controller erred connecting.', e);
186
+ });
148
187
  }
149
188
  }
150
189
  };
@@ -184,6 +223,27 @@ export class SceneTreeController {
184
223
  rows: reset ? [] : this.state.rows,
185
224
  });
186
225
  }
226
+ cancel() {
227
+ this.log(`Scene tree controller cancelled`);
228
+ this.clearHandshakeTimer();
229
+ this.clearReconnectTimer();
230
+ this.pages.clear();
231
+ this.activeRowRange = [];
232
+ const { connection } = this.state;
233
+ if (connection.type === 'connected') {
234
+ connection.subscription.dispose();
235
+ }
236
+ this.updateState({
237
+ connection: {
238
+ type: 'cancelled',
239
+ jwtProvider: connection.jwtProvider,
240
+ sceneViewId: connection.sceneViewId,
241
+ },
242
+ isSearching: false,
243
+ totalRows: 0,
244
+ rows: [],
245
+ });
246
+ }
187
247
  /**
188
248
  * Collapses a node with the given node ID.
189
249
  *
@@ -249,7 +309,7 @@ export class SceneTreeController {
249
309
  await this.fetchUnloadedPagesInActiveRows();
250
310
  }
251
311
  if (locatedIndex == null) {
252
- throw new Error('Cannot locate node. Location index is undefined.');
312
+ throw new SceneTreeOperationFailedError('Cannot locate node. Location index is undefined.');
253
313
  }
254
314
  return locatedIndex.value;
255
315
  });
@@ -497,6 +557,7 @@ export class SceneTreeController {
497
557
  });
498
558
  stream.on('end', () => {
499
559
  this.invalidateAfterOffset(0);
560
+ this.startConnectionLostReconnectTimer();
500
561
  });
501
562
  return stream;
502
563
  });
@@ -573,7 +634,8 @@ export class SceneTreeController {
573
634
  rows[this.activeRowRange[1]] == null);
574
635
  }
575
636
  updateState(newState) {
576
- if (this.loadingTimer && !this.isViewLoading(newState.rows)) {
637
+ const updateLoadingTimer = this.loadingTimer && !this.isViewLoading(newState.rows);
638
+ if (updateLoadingTimer) {
577
639
  clearTimeout(this.loadingTimer);
578
640
  this.loadingTimer = undefined;
579
641
  this.state = Object.assign(Object.assign({}, newState), { shouldShowLoading: false });
@@ -614,7 +676,7 @@ export class SceneTreeController {
614
676
  resolve(res);
615
677
  }
616
678
  else {
617
- reject(new Error('Invalid response. Both error and result are null'));
679
+ reject(new SceneTreeError('Invalid response. Both error and result are null'));
618
680
  }
619
681
  });
620
682
  });
@@ -636,24 +698,38 @@ export class SceneTreeController {
636
698
  return then(jwt);
637
699
  }
638
700
  else {
639
- throw new Error('SceneTreeController cannot perform request. Viewer JWT is undefined.');
701
+ throw new SceneTreeUnauthorizedError('SceneTreeController cannot perform request. Viewer JWT is undefined.');
640
702
  }
641
703
  }
704
+ else if (connection.type === 'cancelled') {
705
+ throw new SceneTreeConnectionCancelledError(`Request attempted, but controller was cancelled`);
706
+ }
642
707
  else {
643
- throw new Error('SceneTreeController is not in connected state');
708
+ throw new SceneTreeError('SceneTreeController is not in connected state');
709
+ }
710
+ }
711
+ ifErrorIsFatal(error, then) {
712
+ if (!(error instanceof SceneTreeConnectionCancelledError)) {
713
+ then();
644
714
  }
645
715
  }
646
716
  getConnectionError(e) {
647
717
  if (isGrpcServiceError(e)) {
648
718
  if (e.code === grpc.Code.FailedPrecondition) {
649
- return new SceneTreeErrorDetails(SceneTreeErrorCode.SCENE_TREE_DISABLED);
719
+ return new SceneTreeErrorDetails('SCENE_TREE_DISABLED', SceneTreeErrorCode.SCENE_TREE_DISABLED);
720
+ }
721
+ else if (e.code === grpc.Code.Unauthenticated) {
722
+ return new SceneTreeErrorDetails('UNAUTHORIZED', SceneTreeErrorCode.UNAUTHORIZED);
650
723
  }
651
724
  else {
652
- return new SceneTreeErrorDetails(SceneTreeErrorCode.UNKNOWN);
725
+ return new SceneTreeErrorDetails('UNKNOWN', SceneTreeErrorCode.UNKNOWN);
653
726
  }
654
727
  }
728
+ else if (e instanceof SceneTreeUnauthorizedError) {
729
+ return new SceneTreeErrorDetails('UNAUTHORIZED', SceneTreeErrorCode.UNAUTHORIZED);
730
+ }
655
731
  else {
656
- return new SceneTreeErrorDetails(SceneTreeErrorCode.UNKNOWN);
732
+ return new SceneTreeErrorDetails('UNKNOWN', SceneTreeErrorCode.UNKNOWN);
657
733
  }
658
734
  }
659
735
  constrainPageRange(start, end) {
@@ -673,7 +749,11 @@ export class SceneTreeController {
673
749
  console.debug(message, optionalParams);
674
750
  }
675
751
  }
752
+ isConnectedState(connection) {
753
+ return connection.type === 'connected';
754
+ }
676
755
  }
677
756
  SceneTreeController.IDLE_RECONNECT_IN_SECONDS = 4 * 60;
678
757
  SceneTreeController.LOST_CONNECTION_RECONNECT_IN_SECONDS = 2;
679
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NjZW5lLXRyZWUvbGliL2NvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUNqRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFeEUsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixhQUFhLEVBRWIsMEJBQTBCLEVBRTFCLHVCQUF1QixFQUV2QixjQUFjLEVBRWQsaUJBQWlCLEVBRWpCLGdCQUFnQixHQUVqQixNQUFNLGlFQUFpRSxDQUFDO0FBTXpFLE9BQU8sRUFBYyxlQUFlLEVBQVksTUFBTSxrQkFBa0IsQ0FBQztBQUd6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBTyxNQUFNLE9BQU8sQ0FBQztBQWdGeEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxtQkFBbUI7RUF5QzlCLFlBQ1UsTUFBMEIsRUFDMUIsUUFBZ0IsRUFDaEIsaUJBQWlDO0lBQ3ZDLFlBQVksRUFBRSxJQUFJO0lBQ2xCLG9DQUFvQyxFQUFFLElBQUk7R0FDM0M7SUFMTyxXQUFNLEdBQU4sTUFBTSxDQUFvQjtJQUMxQixhQUFRLEdBQVIsUUFBUSxDQUFRO0lBQ2hCLG1CQUFjLEdBQWQsY0FBYyxDQUdyQjtJQTNDSyxlQUFVLEdBQUcsQ0FBQyxDQUFD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
758
+ SceneTreeController.MAX_SUBSCRIPTION_RETRY_COUNT = 2;
759
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NjZW5lLXRyZWUvbGliL2NvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUNqRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFeEUsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixhQUFhLEVBRWIsMEJBQTBCLEVBRTFCLHVCQUF1QixFQUV2QixjQUFjLEVBRWQsaUJBQWlCLEVBRWpCLGdCQUFnQixHQUVqQixNQUFNLGlFQUFpRSxDQUFDO0FBTXpFLE9BQU8sRUFBYyxlQUFlLEVBQVksTUFBTSxrQkFBa0IsQ0FBQztBQUd6RSxPQUFPLEVBQ0wsaUNBQWlDLEVBQ2pDLGNBQWMsRUFDZCxrQkFBa0IsRUFDbEIscUJBQXFCLEVBQ3JCLDZCQUE2QixFQUM3QiwwQkFBMEIsR0FDM0IsTUFBTSxVQUFVLENBQUM7QUFDbEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBTyxNQUFNLE9BQU8sQ0FBQztBQTZGeEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxtQkFBbUI7RUEwQzlCLFlBQ1UsTUFBMEIsRUFDMUIsUUFBZ0IsRUFDaEIsaUJBQWlDO0lBQ3ZDLFlBQVksRUFBRSxJQUFJO0lBQ2xCLG9DQUFvQyxFQUFFLElBQUk7R0FDM0M7SUFMTyxXQUFNLEdBQU4sTUFBTSxDQUFvQjtJQUMxQixhQUFRLEdBQVIsUUFBUSxDQUFRO0lB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
@@ -1,3 +1,4 @@
1
+ import { CustomError } from '../../../lib/errors';
1
2
  export var SceneTreeErrorCode;
2
3
  (function (SceneTreeErrorCode) {
3
4
  SceneTreeErrorCode[SceneTreeErrorCode["UNKNOWN"] = 0] = "UNKNOWN";
@@ -5,9 +6,11 @@ export var SceneTreeErrorCode;
5
6
  SceneTreeErrorCode[SceneTreeErrorCode["MISSING_VIEWER"] = 2] = "MISSING_VIEWER";
6
7
  SceneTreeErrorCode[SceneTreeErrorCode["DISCONNECTED"] = 3] = "DISCONNECTED";
7
8
  SceneTreeErrorCode[SceneTreeErrorCode["SUBSCRIPTION_FAILURE"] = 4] = "SUBSCRIPTION_FAILURE";
9
+ SceneTreeErrorCode[SceneTreeErrorCode["UNAUTHORIZED"] = 5] = "UNAUTHORIZED";
8
10
  })(SceneTreeErrorCode || (SceneTreeErrorCode = {}));
9
11
  export class SceneTreeErrorDetails {
10
- constructor(code, link) {
12
+ constructor(name, code, link) {
13
+ this.name = name;
11
14
  this.code = code;
12
15
  this.link = link;
13
16
  this.message = getSceneTreeErrorMessage(code);
@@ -25,6 +28,36 @@ function getSceneTreeErrorMessage(code) {
25
28
  return 'Disconnected from server.';
26
29
  case SceneTreeErrorCode.SUBSCRIPTION_FAILURE:
27
30
  return 'The tree was not able to receive subscription events';
31
+ case SceneTreeErrorCode.UNAUTHORIZED:
32
+ return 'The tree was unauthorized to connect to the server. The associated Viewer may not be connected.';
28
33
  }
29
34
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2NlbmUtdHJlZS9saWIvZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGtCQU1YO0FBTkQsV0FBWSxrQkFBa0I7RUFDNUIsaUVBQVcsQ0FBQTtFQUNYLHlGQUF1QixDQUFBO0VBQ3ZCLCtFQUFrQixDQUFBO0VBQ2xCLDJFQUFnQixDQUFBO0VBQ2hCLDJGQUF3QixDQUFBO0FBQzFCLENBQUMsRUFOVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBTTdCO0FBRUQsTUFBTSxPQUFPLHFCQUFxQjtFQUdoQyxZQUNrQixJQUF3QixFQUN4QixJQUFhO0lBRGIsU0FBSSxHQUFKLElBQUksQ0FBb0I7SUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBUztJQUU3QixJQUFJLENBQUMsT0FBTyxHQUFHLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO0VBQ2hELENBQUM7Q0FDRjtBQUVELFNBQVMsd0JBQXdCLENBQUMsSUFBd0I7RUFDeEQsUUFBUSxJQUFJLEVBQUU7SUFDWixLQUFLLGtCQUFrQixDQUFDLE9BQU87TUFDN0IsT0FBTyw0QkFBNEIsQ0FBQztJQUN0QyxLQUFLLGtCQUFrQixDQUFDLG1CQUFtQjtNQUN6QyxPQUFPLG1HQUFtRyxDQUFDO0lBQzdHLEtBQUssa0JBQWtCLENBQUMsY0FBYztNQUNwQyxPQUFPLHdDQUF3QyxDQUFDO0lBQ2xELEtBQUssa0JBQWtCLENBQUMsWUFBWTtNQUNsQyxPQUFPLDJCQUEyQixDQUFDO0lBQ3JDLEtBQUssa0JBQWtCLENBQUMsb0JBQW9CO01BQzFDLE9BQU8sc0RBQXNELENBQUM7R0FDakU7QUFDSCxDQUFDIn0=
35
+ export class SceneTreeError extends CustomError {
36
+ constructor(message, e) {
37
+ super(message, e);
38
+ // Allows for `instanceof` checks.
39
+ Object.setPrototypeOf(this, SceneTreeError.prototype);
40
+ }
41
+ }
42
+ export class SceneTreeUnauthorizedError extends SceneTreeError {
43
+ constructor(message, e) {
44
+ super(message, e);
45
+ // Allows for `instanceof` checks.
46
+ Object.setPrototypeOf(this, SceneTreeUnauthorizedError.prototype);
47
+ }
48
+ }
49
+ export class SceneTreeConnectionCancelledError extends SceneTreeError {
50
+ constructor(message, e) {
51
+ super(message, e);
52
+ // Allows for `instanceof` checks.
53
+ Object.setPrototypeOf(this, SceneTreeConnectionCancelledError.prototype);
54
+ }
55
+ }
56
+ export class SceneTreeOperationFailedError extends SceneTreeError {
57
+ constructor(message, e) {
58
+ super(message, e);
59
+ // Allows for `instanceof` checks.
60
+ Object.setPrototypeOf(this, SceneTreeOperationFailedError.prototype);
61
+ }
62
+ }
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2NlbmUtdHJlZS9saWIvZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxNQUFNLENBQU4sSUFBWSxrQkFPWDtBQVBELFdBQVksa0JBQWtCO0VBQzVCLGlFQUFXLENBQUE7RUFDWCx5RkFBdUIsQ0FBQTtFQUN2QiwrRUFBa0IsQ0FBQTtFQUNsQiwyRUFBZ0IsQ0FBQTtFQUNoQiwyRkFBd0IsQ0FBQTtFQUN4QiwyRUFBZ0IsQ0FBQTtBQUNsQixDQUFDLEVBUFcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQU83QjtBQUVELE1BQU0sT0FBTyxxQkFBcUI7RUFHaEMsWUFDa0IsSUFBcUMsRUFDckMsSUFBd0IsRUFDeEIsSUFBYTtJQUZiLFNBQUksR0FBSixJQUFJLENBQWlDO0lBQ3JDLFNBQUksR0FBSixJQUFJLENBQW9CO0lBQ3hCLFNBQUksR0FBSixJQUFJLENBQVM7SUFFN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztFQUNoRCxDQUFDO0NBQ0Y7QUFFRCxTQUFTLHdCQUF3QixDQUFDLElBQXdCO0VBQ3hELFFBQVEsSUFBSSxFQUFFO0lBQ1osS0FBSyxrQkFBa0IsQ0FBQyxPQUFPO01BQzdCLE9BQU8sNEJBQTRCLENBQUM7SUFDdEMsS0FBSyxrQkFBa0IsQ0FBQyxtQkFBbUI7TUFDekMsT0FBTyxtR0FBbUcsQ0FBQztJQUM3RyxLQUFLLGtCQUFrQixDQUFDLGNBQWM7TUFDcEMsT0FBTyx3Q0FBd0MsQ0FBQztJQUNsRCxLQUFLLGtCQUFrQixDQUFDLFlBQVk7TUFDbEMsT0FBTywyQkFBMkIsQ0FBQztJQUNyQyxLQUFLLGtCQUFrQixDQUFDLG9CQUFvQjtNQUMxQyxPQUFPLHNEQUFzRCxDQUFDO0lBQ2hFLEtBQUssa0JBQWtCLENBQUMsWUFBWTtNQUNsQyxPQUFPLGlHQUFpRyxDQUFDO0dBQzVHO0FBQ0gsQ0FBQztBQUVELE1BQU0sT0FBTyxjQUFlLFNBQVEsV0FBVztFQUM3QyxZQUFtQixPQUFlLEVBQUUsQ0FBUztJQUMzQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRWxCLGtDQUFrQztJQUNsQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7RUFDeEQsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGNBQWM7RUFDNUQsWUFBbUIsT0FBZSxFQUFFLENBQVM7SUFDM0MsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVsQixrQ0FBa0M7SUFDbEMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsMEJBQTBCLENBQUMsU0FBUyxDQUFDLENBQUM7RUFDcEUsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLGlDQUFrQyxTQUFRLGNBQWM7RUFDbkUsWUFBbUIsT0FBZSxFQUFFLENBQVM7SUFDM0MsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVsQixrQ0FBa0M7SUFDbEMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsaUNBQWlDLENBQUMsU0FBUyxDQUFDLENBQUM7RUFDM0UsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLDZCQUE4QixTQUFRLGNBQWM7RUFDL0QsWUFBbUIsT0FBZSxFQUFFLENBQVM7SUFDM0MsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVsQixrQ0FBa0M7SUFDbEMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsNkJBQTZCLENBQUMsU0FBUyxDQUFDLENBQUM7RUFDdkUsQ0FBQztDQUNGIn0=
@@ -342,9 +342,15 @@ export class SceneTree {
342
342
  */
343
343
  async selectFilteredItems(term, options) {
344
344
  if (this.viewer != null) {
345
- const columnsToSearch = this.metadataSearchKeys.length > 0
345
+ const definedMetadataKeys = this.metadataSearchKeys.length > 0
346
346
  ? this.metadataSearchKeys
347
347
  : this.metadataKeys;
348
+ if (definedMetadataKeys.length === 0) {
349
+ console.warn("No metadata keys were found to perform the selection. Defaulting to ['VERTEX_SCENE_ITEM_NAME']");
350
+ }
351
+ const columnsToSearch = definedMetadataKeys.length > 0
352
+ ? definedMetadataKeys
353
+ : ['VERTEX_SCENE_ITEM_NAME'];
348
354
  await selectFilterResults(this.viewer, term, columnsToSearch, this.metadataSearchExactMatch, Object.assign({ append: false }, options));
349
355
  }
350
356
  }
@@ -364,8 +370,9 @@ export class SceneTree {
364
370
  * @ignore
365
371
  */
366
372
  disconnectedCallback() {
367
- var _a;
373
+ var _a, _b;
368
374
  (_a = this.stateMap.viewerDisposable) === null || _a === void 0 ? void 0 : _a.dispose();
375
+ (_b = this.controller) === null || _b === void 0 ? void 0 : _b.cancel();
369
376
  }
370
377
  /**
371
378
  * @ignore
@@ -399,7 +406,7 @@ export class SceneTree {
399
406
  this.stateMap.componentLoaded = true;
400
407
  (_a = this.controller) === null || _a === void 0 ? void 0 : _a.setMetadataKeys(this.metadataKeys);
401
408
  if (this.viewer == null) {
402
- this.errorDetails = new SceneTreeErrorDetails(SceneTreeErrorCode.MISSING_VIEWER);
409
+ this.errorDetails = new SceneTreeErrorDetails('MISSING_VIEWER', SceneTreeErrorCode.MISSING_VIEWER);
403
410
  }
404
411
  }
405
412
  componentWillRender() {
@@ -517,7 +524,7 @@ export class SceneTree {
517
524
  this.connectionError.emit(state.connection.details);
518
525
  }
519
526
  else if (state.connection.type === 'disconnected') {
520
- this.errorDetails = new SceneTreeErrorDetails(SceneTreeErrorCode.DISCONNECTED);
527
+ this.errorDetails = new SceneTreeErrorDetails('DISCONNECTED', SceneTreeErrorCode.DISCONNECTED);
521
528
  }
522
529
  else {
523
530
  this.errorDetails = undefined;
@@ -1437,4 +1444,4 @@ export class SceneTree {
1437
1444
  "passive": false
1438
1445
  }]; }
1439
1446
  }
1440
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NlbmUtdHJlZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NjZW5lLXRyZWUvc2NlbmUtdHJlZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sOEJBQThCLENBQUM7QUFFdEMsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUVMLFdBQVcsRUFDWCxDQUFDLEVBQ0QsSUFBSSxFQUNKLE1BQU0sRUFDTixNQUFNLEVBQ04sSUFBSSxFQUNKLEtBQUssRUFDTCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUVBQXlFLENBQUM7QUFHN0csT0FBTyxFQUFVLFdBQVcsRUFBaUIsTUFBTSxrQkFBa0IsQ0FBQztBQUV0RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTFDLE9BQU8sRUFFTCxtQkFBbUIsR0FFcEIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFPLE1BQU0sV0FBVyxDQUFDO0FBQzdDLE9BQU8sRUFDTCxZQUFZLEVBQ1osUUFBUSxFQUNSLG1CQUFtQixFQUNuQixVQUFVLEVBQ1Ysc0JBQXNCLEVBQ3RCLFFBQVEsR0FFVCxNQUFNLGtCQUFrQixDQUFDO0FBSTFCOzs7O0dBSUc7QUFDSCxNQUFNLHdCQUF3QixHQUFHLEVBQUUsQ0FBQztBQTREcEM7Ozs7OztHQU1HO0FBTUgsTUFBTSxPQUFPLFNBQVM7RUFMdEI7SUFNRTs7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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FDRiJ9
1447
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NlbmUtdHJlZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NjZW5lLXRyZWUvc2NlbmUtdHJlZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sOEJBQThCLENBQUM7QUFFdEMsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUVMLFdBQVcsRUFDWCxDQUFDLEVBQ0QsSUFBSSxFQUNKLE1BQU0sRUFDTixNQUFNLEVBQ04sSUFBSSxFQUNKLEtBQUssRUFDTCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUVBQXlFLENBQUM7QUFHN0csT0FBTyxFQUFVLFdBQVcsRUFBaUIsTUFBTSxrQkFBa0IsQ0FBQztBQUV0RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTFDLE9BQU8sRUFFTCxtQkFBbUIsR0FFcEIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFPLE1BQU0sV0FBVyxDQUFDO0FBQzdDLE9BQU8sRUFDTCxZQUFZLEVBQ1osUUFBUSxFQUNSLG1CQUFtQixFQUNuQixVQUFVLEVBQ1Ysc0JBQXNCLEVBQ3RCLFFBQVEsR0FFVCxNQUFNLGtCQUFrQixDQUFDO0FBSTFCOzs7O0dBSUc7QUFDSCxNQUFNLHdCQUF3QixHQUFHLEVBQUUsQ0FBQztBQTREcEM7Ozs7OztHQU1HO0FBTUgsTUFBTSxPQUFPLFNBQVM7RUFMdEI7SUFNRTs7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QUFJLElBQUksRUFBRTtNQUNsQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO0tBQy9CO1NBQU07TUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7S0FDaEQ7RUFDSCxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FDRiJ9