@vertexvis/viewer 0.15.2-testing.3 → 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.
- package/dist/cjs/_commonjsHelpers-dcc4cf71.js +1 -1
- package/dist/cjs/app-globals-2035678d.js +1 -1
- package/dist/cjs/browser.esm-5d246754.js +1 -1
- package/dist/cjs/bundle.esm-22b6f2d6.js +1 -1
- package/dist/cjs/bundle.esm-b43c197a.js +38280 -0
- package/dist/cjs/{config-6e330a82.js → config-3fc1c093.js} +2 -2
- package/dist/cjs/{cursors-85d403e9.js → cursors-02a06ec9.js} +7 -1
- package/dist/cjs/dom-8d90bfaf.js +1 -1
- package/dist/cjs/dom-92728e58.js +1 -1
- package/dist/cjs/dom-d1bbd67c.js +1 -1
- package/dist/cjs/dom-d57d3c3b.js +1 -1
- package/dist/cjs/elementRectObserver-9b28f182.js +1 -1
- package/dist/cjs/entities-9eb7e608.js +1 -1
- package/dist/cjs/{entities-7b2e8c03.js → entities-c1c3c6a3.js} +3 -3
- package/dist/cjs/errors-1b37642b.js +97 -0
- package/dist/cjs/grpc-web-client.umd-2af20c1b.js +1 -1
- package/dist/cjs/index-70db349e.js +1 -1
- package/dist/cjs/index-b9d13137.js +1 -1
- package/dist/cjs/index.cjs.js +9 -6
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{mapper-0f2294a6.js → mapper-d4145b72.js} +2 -2
- package/dist/cjs/markup-4a2fc281.js +1 -1
- package/dist/cjs/{model-b61f4d20.js → model-19fb560a.js} +27 -6
- package/dist/cjs/model-20a70d27.js +1 -1
- package/dist/cjs/overlays-b03ec80b.js +1 -1
- package/dist/cjs/png-decoder-ef097f37.js +1 -1
- package/dist/cjs/results-178e89a3.js +1 -1
- package/dist/cjs/{scene-56438693.js → scene-a94e6fa5.js} +293 -215
- package/dist/cjs/shadow-css-6b9daa41.js +1 -1
- package/dist/cjs/stencil-fc92b387.js +1 -1
- package/dist/cjs/{streamAttributes-c64aee75.js → streamAttributes-cf0c513d.js} +8424 -41995
- package/dist/cjs/templates-e57b3741.js +1 -1
- package/dist/cjs/utils-2c8e2aa3.js +1 -1
- package/dist/cjs/utils-ea359796.js +1 -1
- package/dist/cjs/vertex-scene-tree-search_3.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-header.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-resize-divider.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-toolbar-group.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree.cjs.entry.js +158 -37
- package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js +425 -0
- package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +3 -2
- package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-icon.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-layer.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-markup.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +3 -2
- package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +5 -4
- package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +4 -3
- package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +7 -6
- package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +10 -5
- package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js +15 -13
- package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +20 -9
- package/dist/cjs/vertex-viewer-spinner.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +6 -4
- package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +5 -4
- package/dist/cjs/vertex-viewer.cjs.entry.js +80 -53
- package/dist/cjs/viewer.cjs.js +2 -2
- package/dist/cjs/viewport-5ca619f7.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/scene-tree/lib/controller.js +108 -28
- package/dist/collection/components/scene-tree/lib/errors.js +35 -2
- package/dist/collection/components/scene-tree/scene-tree.js +12 -5
- package/dist/collection/components/viewer/viewer.js +17 -15
- package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.css +79 -0
- package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.js +278 -0
- package/dist/collection/components/viewer-pin-group/viewer-pin-group.js +5 -1
- package/dist/collection/components/viewer-pin-label/viewer-pin-label.css +1 -1
- package/dist/collection/components/viewer-pin-label/viewer-pin-label.js +14 -12
- package/dist/collection/components/viewer-pin-tool/utils.js +25 -4
- package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.css +12 -0
- package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.js +9 -2
- package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js +3 -2
- package/dist/collection/components/viewer-view-cube/viewer-view-cube.js +5 -5
- package/dist/collection/lib/cursors.js +6 -1
- package/dist/collection/lib/interactions/baseInteractionHandler.js +12 -2
- package/dist/collection/lib/interactions/mouseInteractions.js +5 -4
- package/dist/collection/lib/mappers/frameStreaming.js +11 -11
- package/dist/collection/lib/pins/interactions.js +9 -5
- package/dist/collection/lib/pins/model.js +2 -2
- package/dist/collection/lib/rendering/matrices.js +2 -4
- package/dist/collection/lib/scenes/camera.js +4 -2
- package/dist/collection/lib/scenes/mapper.js +103 -30
- package/dist/collection/lib/scenes/queries.js +101 -46
- package/dist/collection/lib/scenes/scene.js +15 -7
- package/dist/collection/lib/stream/stream.js +24 -12
- package/dist/collection/lib/transforms/drawable.js +2 -2
- package/dist/collection/lib/types/frame.js +4 -3
- package/dist/collection/lib/types/frameCamera.js +6 -1
- package/dist/collection/lib/types/index.js +3 -2
- package/dist/collection/lib/types/loadableResource.js +24 -4
- package/dist/collection/lib/types/sceneViewStateIdentifier.js +7 -0
- package/dist/collection/lib/volume-intersection/controller.js +104 -0
- package/dist/collection/lib/volume-intersection/interactions.js +82 -0
- package/dist/collection/lib/volume-intersection/model.js +84 -0
- package/dist/custom-elements/index.d.ts +6 -0
- package/dist/custom-elements/index.js +23825 -18358
- package/dist/custom-elements/png-decoder.js +1 -1
- package/dist/esm/_commonjsHelpers-11ca3be1.js +1 -1
- package/dist/esm/app-globals-40df99a0.js +1 -1
- package/dist/esm/{browser.esm-ae4ca1f1.js → browser.esm-07e7db8f.js} +2 -2
- package/dist/esm/bundle.esm-91404853.js +38273 -0
- package/dist/esm/{bundle.esm-ce2c7ad3.js → bundle.esm-92e615bf.js} +2 -2
- package/dist/esm/{config-49688db8.js → config-25384fe6.js} +3 -3
- package/dist/esm/{cursors-a8d4b3f4.js → cursors-127a3bb7.js} +8 -3
- package/dist/esm/dom-0440435d.js +1 -1
- package/dist/esm/dom-be140992.js +1 -1
- package/dist/esm/dom-e19ee80b.js +1 -1
- package/dist/esm/{dom-5b164305.js → dom-e436f0c0.js} +2 -2
- package/dist/esm/elementRectObserver-39cf7b95.js +1 -1
- package/dist/esm/{entities-a5bfef48.js → entities-0e325765.js} +4 -4
- package/dist/esm/entities-ce81dd7f.js +1 -1
- package/dist/esm/errors-a4cc9caa.js +85 -0
- package/dist/esm/grpc-web-client.umd-5409853c.js +1 -1
- package/dist/esm/index-26dfb2d0.js +1 -1
- package/dist/esm/index-e841d91b.js +1 -1
- package/dist/esm/index.js +15 -13
- package/dist/esm/index.mjs +15 -13
- package/dist/esm/loader.js +2 -2
- package/dist/esm/loader.mjs +2 -2
- package/dist/esm/{mapper-5894c2a4.js → mapper-dd937684.js} +3 -3
- package/dist/esm/{markup-3c2900f3.js → markup-2dde1f10.js} +3 -3
- package/dist/esm/{model-fa9af61a.js → model-3cd8cd47.js} +2 -2
- package/dist/esm/{model-40bd1711.js → model-bfe1c4d8.js} +29 -8
- package/dist/esm/{overlays-cc3efc30.js → overlays-8f195eb3.js} +3 -3
- package/dist/esm/{png-decoder-d4b65417.js → png-decoder-45f38ea3.js} +2 -2
- package/dist/esm/{results-3b4df2cf.js → results-38baef59.js} +2 -2
- package/dist/esm/{scene-5b919078.js → scene-2543b3bd.js} +254 -168
- package/dist/esm/shadow-css-51dd7708.js +1 -1
- package/dist/esm/stencil-bfbf099f.js +1 -1
- package/dist/esm/{streamAttributes-7e8565be.js → streamAttributes-23270e27.js} +8429 -41994
- package/dist/esm/templates-022199c1.js +1 -1
- package/dist/esm/{utils-81347571.js → utils-2306c744.js} +2 -2
- package/dist/esm/{utils-559e1632.js → utils-f03802ef.js} +2 -2
- package/dist/esm/vertex-scene-tree-search_3.entry.js +3 -3
- package/dist/esm/vertex-scene-tree-table-cell.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-table-column.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-table-header.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-table-resize-divider.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-toolbar-group.entry.js +1 -1
- package/dist/esm/vertex-scene-tree.entry.js +160 -39
- package/dist/esm/vertex-viewer-box-query-tool.entry.js +421 -0
- package/dist/esm/vertex-viewer-button_3.entry.js +1 -1
- package/dist/esm/vertex-viewer-default-toolbar.entry.js +1 -1
- package/dist/esm/vertex-viewer-dom-element_2.entry.js +6 -5
- package/dist/esm/vertex-viewer-dom-group.entry.js +3 -3
- package/dist/esm/vertex-viewer-icon.entry.js +1 -1
- package/dist/esm/vertex-viewer-layer.entry.js +1 -1
- package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +4 -4
- package/dist/esm/vertex-viewer-markup-tool.entry.js +5 -5
- package/dist/esm/vertex-viewer-markup.entry.js +5 -5
- package/dist/esm/vertex-viewer-measurement-details.entry.js +5 -4
- package/dist/esm/vertex-viewer-measurement-distance.entry.js +13 -12
- package/dist/esm/vertex-viewer-measurement-line_2.entry.js +8 -7
- package/dist/esm/vertex-viewer-measurement-precise.entry.js +12 -11
- package/dist/esm/vertex-viewer-pin-group.entry.js +13 -8
- package/dist/esm/vertex-viewer-pin-label_2.entry.js +18 -16
- package/dist/esm/vertex-viewer-pin-tool.entry.js +23 -12
- package/dist/esm/vertex-viewer-spinner.entry.js +1 -1
- package/dist/esm/vertex-viewer-transform-widget.entry.js +9 -7
- package/dist/esm/vertex-viewer-view-cube.entry.js +7 -6
- package/dist/esm/vertex-viewer.entry.js +65 -38
- package/dist/esm/viewer.js +2 -2
- package/dist/esm/{viewport-e39e2eba.js → viewport-f19fc583.js} +2 -2
- package/dist/types/components/scene-tree/lib/controller.d.ts +18 -3
- package/dist/types/components/scene-tree/lib/errors.d.ts +17 -2
- package/dist/types/components/viewer/viewer.d.ts +2 -0
- package/dist/types/components/viewer-box-query-tool/viewer-box-query-tool.d.ts +94 -0
- package/dist/types/components/viewer-pin-tool/utils.d.ts +1 -1
- package/dist/types/components.d.ts +56 -0
- package/dist/types/lib/cursors.d.ts +5 -0
- package/dist/types/lib/interactions/baseInteractionHandler.d.ts +1 -0
- package/dist/types/lib/interactions/mouseInteractions.d.ts +2 -1
- package/dist/types/lib/pins/interactions.d.ts +4 -2
- package/dist/types/lib/pins/model.d.ts +1 -1
- package/dist/types/lib/scenes/camera.d.ts +1 -1
- package/dist/types/lib/scenes/mapper.d.ts +5 -1
- package/dist/types/lib/scenes/queries.d.ts +55 -28
- package/dist/types/lib/scenes/scene.d.ts +10 -1
- package/dist/types/lib/types/frame.d.ts +1 -1
- package/dist/types/lib/types/index.d.ts +2 -1
- package/dist/types/lib/types/loadableResource.d.ts +8 -2
- package/dist/types/lib/types/sceneViewStateIdentifier.d.ts +15 -0
- package/dist/types/lib/volume-intersection/controller.d.ts +45 -0
- package/dist/types/lib/volume-intersection/interactions.d.ts +24 -0
- package/dist/types/lib/volume-intersection/model.d.ts +33 -0
- package/dist/viewer/index.esm.js +2 -2
- package/dist/viewer/{p-ad09c92e.entry.js → p-029fba92.entry.js} +1 -1
- package/dist/viewer/p-07aeee89.js +1 -1
- package/dist/viewer/{p-29986489.js → p-0a017be7.js} +2 -2
- package/dist/viewer/p-0c583cad.entry.js +4 -0
- package/dist/viewer/p-0d494d01.js +4 -0
- package/dist/viewer/p-0fdad1a5.js +1 -1
- package/dist/viewer/{p-3ca4a7c1.js → p-1812c82d.js} +2 -2
- package/dist/viewer/{p-7663a603.entry.js → p-191156ad.entry.js} +1 -1
- package/dist/viewer/{p-a57dc6e4.entry.js → p-1998284a.entry.js} +2 -2
- package/dist/viewer/p-27f715f8.entry.js +4 -0
- package/dist/viewer/{p-7f6251da.js → p-283aeac4.js} +2 -2
- package/dist/viewer/p-298b63c2.entry.js +4 -0
- package/dist/viewer/p-2ace066b.entry.js +4 -0
- package/dist/viewer/{p-927b528b.js → p-2b60a8b0.js} +2 -2
- package/dist/viewer/{p-050f912b.entry.js → p-2fd123c8.entry.js} +1 -1
- package/dist/viewer/p-305a8be6.entry.js +4 -0
- package/dist/viewer/p-31724d24.js +4 -0
- package/dist/viewer/p-32cc2209.js +4 -0
- package/dist/viewer/p-3829dd99.entry.js +4 -0
- package/dist/viewer/{p-6da8a28f.entry.js → p-3aae4bf1.entry.js} +2 -2
- package/dist/viewer/{p-99352cf0.js → p-42760392.js} +2 -2
- package/dist/viewer/p-440c8174.js +4 -0
- package/dist/viewer/{p-e422deaf.entry.js → p-4f25e367.entry.js} +2 -2
- package/dist/viewer/{p-d64c1e14.entry.js → p-507b5aeb.entry.js} +3 -3
- package/dist/viewer/{p-1fc24ec6.js → p-51401063.js} +2 -2
- package/dist/viewer/{p-426970b3.entry.js → p-533b1c63.entry.js} +1 -1
- package/dist/viewer/{p-dcb9804c.entry.js → p-569ed94a.entry.js} +2 -2
- package/dist/viewer/p-5809b400.js +1 -1
- package/dist/viewer/p-6072cf84.js +4 -0
- package/dist/viewer/{p-e4a26a32.entry.js → p-6406a70a.entry.js} +1 -1
- package/dist/viewer/p-6bf0594b.entry.js +4 -0
- package/dist/viewer/p-72c59115.entry.js +4 -0
- package/dist/viewer/{p-d71652b0.entry.js → p-8ac7290a.entry.js} +1 -1
- package/dist/viewer/{p-f184bcab.entry.js → p-8afcbd99.entry.js} +1 -1
- package/dist/viewer/p-92fe4417.js +1 -1
- package/dist/viewer/{p-5746931d.entry.js → p-952a217d.entry.js} +1 -1
- package/dist/viewer/p-98e6a50e.js +1 -1
- package/dist/viewer/{p-99fd27e0.entry.js → p-9cb99ea8.entry.js} +1 -1
- package/dist/viewer/p-a2e9e8a5.js +4 -0
- package/dist/viewer/p-a380f0c2.js +1 -1
- package/dist/viewer/{p-661b5234.js → p-acfc5c50.js} +2 -2
- package/dist/viewer/{p-82bd25e8.entry.js → p-b3540dce.entry.js} +1 -1
- package/dist/viewer/p-b5ca30cd.js +4 -0
- package/dist/viewer/p-b74242dc.js +1 -1
- package/dist/viewer/p-bc1160cf.entry.js +4 -0
- package/dist/viewer/{p-c5e67a1e.entry.js → p-bd5a302c.entry.js} +2 -2
- package/dist/viewer/p-c738296e.js +1 -1
- package/dist/viewer/p-c8c4343b.js +1 -1
- package/dist/viewer/p-cd9ccb9e.entry.js +4 -0
- package/dist/viewer/{p-40a9dd7d.js → p-cf689bbd.js} +2 -2
- package/dist/viewer/{p-70e5e8a8.js → p-d216a866.js} +2 -2
- package/dist/viewer/p-d4ed7b8d.js +4 -0
- package/dist/viewer/p-d6d5d5de.entry.js +4 -0
- package/dist/viewer/p-d6fce4c1.js +1 -1
- package/dist/viewer/p-df8fbe56.js +1 -1
- package/dist/viewer/p-dfe5a97d.js +1 -1
- package/dist/viewer/{p-00ce31a0.js → p-e1896ce4.js} +2 -2
- package/dist/viewer/p-e23af70c.js +4 -0
- package/dist/viewer/p-e4aa9cdb.js +1 -1
- package/dist/viewer/p-e929dd63.entry.js +4 -0
- package/dist/viewer/{p-65af7a89.js → p-fc7d8c03.js} +3 -3
- package/dist/viewer/viewer.esm.js +2 -2
- package/package.json +9 -9
- package/readme.md +4 -4
- package/dist/viewer/p-096e60bd.js +0 -4
- package/dist/viewer/p-0cf4f05d.entry.js +0 -4
- package/dist/viewer/p-0fcafbf9.js +0 -4
- package/dist/viewer/p-1abfe4bf.js +0 -4
- package/dist/viewer/p-1e0dd2e9.js +0 -4
- package/dist/viewer/p-22ae6785.entry.js +0 -4
- package/dist/viewer/p-27dbc865.js +0 -4
- package/dist/viewer/p-31b87b90.js +0 -4
- package/dist/viewer/p-3f6f2457.entry.js +0 -4
- package/dist/viewer/p-61e50e11.entry.js +0 -4
- package/dist/viewer/p-7579e2a1.entry.js +0 -4
- package/dist/viewer/p-920c9a88.entry.js +0 -4
- package/dist/viewer/p-990f98c2.js +0 -4
- package/dist/viewer/p-9dfe0b43.entry.js +0 -4
- package/dist/viewer/p-a6558bb2.entry.js +0 -4
- package/dist/viewer/p-b7e170ac.entry.js +0 -4
- package/dist/viewer/p-d34ad2b2.entry.js +0 -4
- package/dist/viewer/p-f3ea0c2b.entry.js +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**!
|
|
2
|
-
* Copyright (c)
|
|
2
|
+
* Copyright (c) 2023 Vertex Software LLC. All rights reserved.
|
|
3
3
|
*/
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
@@ -9,10 +9,12 @@ const index = require('./index-70db349e.js');
|
|
|
9
9
|
const bundle_esm = require('./bundle.esm-22b6f2d6.js');
|
|
10
10
|
const _commonjsHelpers = require('./_commonjsHelpers-dcc4cf71.js');
|
|
11
11
|
const grpcWebClient_umd = require('./grpc-web-client.umd-2af20c1b.js');
|
|
12
|
-
const config = require('./config-
|
|
12
|
+
const config = require('./config-3fc1c093.js');
|
|
13
13
|
const browser_esm = require('./browser.esm-5d246754.js');
|
|
14
|
+
const errors = require('./errors-1b37642b.js');
|
|
14
15
|
const dom = require('./dom-92728e58.js');
|
|
15
|
-
require('./streamAttributes-
|
|
16
|
+
require('./streamAttributes-cf0c513d.js');
|
|
17
|
+
require('./bundle.esm-b43c197a.js');
|
|
16
18
|
require('./entities-9eb7e608.js');
|
|
17
19
|
|
|
18
20
|
window.requestIdleCallback =
|
|
@@ -6702,7 +6704,7 @@ function isSceneTreeTableCellElement(el) {
|
|
|
6702
6704
|
}
|
|
6703
6705
|
|
|
6704
6706
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
6705
|
-
const SceneTreeError = ({ details }, children) => {
|
|
6707
|
+
const SceneTreeError$1 = ({ details }, children) => {
|
|
6706
6708
|
return (index.h("div", { class: "error" },
|
|
6707
6709
|
index.h("div", { class: "error-section error-message" },
|
|
6708
6710
|
index.h("span", null, details.message),
|
|
@@ -6721,9 +6723,11 @@ var SceneTreeErrorCode;
|
|
|
6721
6723
|
SceneTreeErrorCode[SceneTreeErrorCode["MISSING_VIEWER"] = 2] = "MISSING_VIEWER";
|
|
6722
6724
|
SceneTreeErrorCode[SceneTreeErrorCode["DISCONNECTED"] = 3] = "DISCONNECTED";
|
|
6723
6725
|
SceneTreeErrorCode[SceneTreeErrorCode["SUBSCRIPTION_FAILURE"] = 4] = "SUBSCRIPTION_FAILURE";
|
|
6726
|
+
SceneTreeErrorCode[SceneTreeErrorCode["UNAUTHORIZED"] = 5] = "UNAUTHORIZED";
|
|
6724
6727
|
})(SceneTreeErrorCode || (SceneTreeErrorCode = {}));
|
|
6725
6728
|
class SceneTreeErrorDetails {
|
|
6726
|
-
constructor(code, link) {
|
|
6729
|
+
constructor(name, code, link) {
|
|
6730
|
+
this.name = name;
|
|
6727
6731
|
this.code = code;
|
|
6728
6732
|
this.link = link;
|
|
6729
6733
|
this.message = getSceneTreeErrorMessage(code);
|
|
@@ -6741,6 +6745,36 @@ function getSceneTreeErrorMessage(code) {
|
|
|
6741
6745
|
return 'Disconnected from server.';
|
|
6742
6746
|
case SceneTreeErrorCode.SUBSCRIPTION_FAILURE:
|
|
6743
6747
|
return 'The tree was not able to receive subscription events';
|
|
6748
|
+
case SceneTreeErrorCode.UNAUTHORIZED:
|
|
6749
|
+
return 'The tree was unauthorized to connect to the server. The associated Viewer may not be connected.';
|
|
6750
|
+
}
|
|
6751
|
+
}
|
|
6752
|
+
class SceneTreeError extends errors.CustomError {
|
|
6753
|
+
constructor(message, e) {
|
|
6754
|
+
super(message, e);
|
|
6755
|
+
// Allows for `instanceof` checks.
|
|
6756
|
+
Object.setPrototypeOf(this, SceneTreeError.prototype);
|
|
6757
|
+
}
|
|
6758
|
+
}
|
|
6759
|
+
class SceneTreeUnauthorizedError extends SceneTreeError {
|
|
6760
|
+
constructor(message, e) {
|
|
6761
|
+
super(message, e);
|
|
6762
|
+
// Allows for `instanceof` checks.
|
|
6763
|
+
Object.setPrototypeOf(this, SceneTreeUnauthorizedError.prototype);
|
|
6764
|
+
}
|
|
6765
|
+
}
|
|
6766
|
+
class SceneTreeConnectionCancelledError extends SceneTreeError {
|
|
6767
|
+
constructor(message, e) {
|
|
6768
|
+
super(message, e);
|
|
6769
|
+
// Allows for `instanceof` checks.
|
|
6770
|
+
Object.setPrototypeOf(this, SceneTreeConnectionCancelledError.prototype);
|
|
6771
|
+
}
|
|
6772
|
+
}
|
|
6773
|
+
class SceneTreeOperationFailedError extends SceneTreeError {
|
|
6774
|
+
constructor(message, e) {
|
|
6775
|
+
super(message, e);
|
|
6776
|
+
// Allows for `instanceof` checks.
|
|
6777
|
+
Object.setPrototypeOf(this, SceneTreeOperationFailedError.prototype);
|
|
6744
6778
|
}
|
|
6745
6779
|
}
|
|
6746
6780
|
|
|
@@ -6816,11 +6850,41 @@ class SceneTreeController {
|
|
|
6816
6850
|
setDebugLogs(debugLogs) {
|
|
6817
6851
|
this.debugLogs = debugLogs;
|
|
6818
6852
|
}
|
|
6853
|
+
async handleSubscriptionHandshakeTimeout(jwtProvider, sceneViewId) {
|
|
6854
|
+
var _a;
|
|
6855
|
+
const connection = this.getState().connection;
|
|
6856
|
+
if (this.isConnectedState(connection) &&
|
|
6857
|
+
((_a = connection.subscriptionStatusState) === null || _a === void 0 ? void 0 : _a.attempt) != null &&
|
|
6858
|
+
connection.subscriptionStatusState.attempt <
|
|
6859
|
+
SceneTreeController.MAX_SUBSCRIPTION_RETRY_COUNT) {
|
|
6860
|
+
const newAttempt = connection.subscriptionStatusState.attempt + 1;
|
|
6861
|
+
console.warn(`Failed to subscribe within the allotted timeout. Retry attempt={${newAttempt}}`);
|
|
6862
|
+
connection.subscriptionStatusState.stream.cancel();
|
|
6863
|
+
this.clearHandshakeTimer();
|
|
6864
|
+
const stream = await this.subscribe();
|
|
6865
|
+
this.invalidatePage(0);
|
|
6866
|
+
this.updateState(Object.assign(Object.assign({}, this.state), { connection: Object.assign(Object.assign({}, connection), { type: 'connected', subscriptionStatusState: {
|
|
6867
|
+
attempt: newAttempt,
|
|
6868
|
+
stream,
|
|
6869
|
+
} }) }));
|
|
6870
|
+
this.subscriptionHandshakeTimer = window.setTimeout(() => {
|
|
6871
|
+
this.handleSubscriptionHandshakeTimeout(jwtProvider, sceneViewId);
|
|
6872
|
+
}, this.connectOptions.subscriptionHandshakeGracePeriodInMs);
|
|
6873
|
+
}
|
|
6874
|
+
else {
|
|
6875
|
+
this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
|
|
6876
|
+
type: 'failure',
|
|
6877
|
+
jwtProvider,
|
|
6878
|
+
sceneViewId,
|
|
6879
|
+
details: new SceneTreeErrorDetails('SUBSCRIPTION_FAILURE', SceneTreeErrorCode.SUBSCRIPTION_FAILURE),
|
|
6880
|
+
} }));
|
|
6881
|
+
}
|
|
6882
|
+
}
|
|
6819
6883
|
async connect(jwtProvider) {
|
|
6820
6884
|
const { connection } = this.state;
|
|
6821
6885
|
const jwt = jwtProvider();
|
|
6822
6886
|
if (jwt == null) {
|
|
6823
|
-
throw new
|
|
6887
|
+
throw new SceneTreeUnauthorizedError('Cannot connect scene tree. JWT is undefined');
|
|
6824
6888
|
}
|
|
6825
6889
|
const { view: sceneViewId } = decodeSceneTreeJwt(jwt);
|
|
6826
6890
|
if (connection.sceneViewId !== sceneViewId) {
|
|
@@ -6837,28 +6901,35 @@ class SceneTreeController {
|
|
|
6837
6901
|
this.updateState(Object.assign(Object.assign({}, this.state), { connection: connecting }));
|
|
6838
6902
|
try {
|
|
6839
6903
|
this.log('Scene tree controller connecting.');
|
|
6840
|
-
await
|
|
6904
|
+
const [, stream] = await Promise.all([
|
|
6905
|
+
this.fetchPage(0),
|
|
6906
|
+
this.subscribe(),
|
|
6907
|
+
]);
|
|
6908
|
+
this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
|
|
6909
|
+
jwtProvider,
|
|
6910
|
+
sceneViewId,
|
|
6911
|
+
type: 'connected',
|
|
6912
|
+
subscription: { dispose: () => stream.cancel() },
|
|
6913
|
+
subscriptionStatusState: {
|
|
6914
|
+
attempt: 0,
|
|
6915
|
+
stream,
|
|
6916
|
+
},
|
|
6917
|
+
} }));
|
|
6841
6918
|
this.subscriptionHandshakeTimer = window.setTimeout(() => {
|
|
6919
|
+
this.handleSubscriptionHandshakeTimeout(jwtProvider, sceneViewId);
|
|
6920
|
+
}, this.connectOptions.subscriptionHandshakeGracePeriodInMs);
|
|
6921
|
+
}
|
|
6922
|
+
catch (e) {
|
|
6923
|
+
this.ifErrorIsFatal(e, () => {
|
|
6842
6924
|
this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
|
|
6843
6925
|
type: 'failure',
|
|
6844
6926
|
jwtProvider,
|
|
6845
6927
|
sceneViewId,
|
|
6846
|
-
details:
|
|
6928
|
+
details: this.getConnectionError(e),
|
|
6847
6929
|
} }));
|
|
6848
|
-
|
|
6849
|
-
|
|
6850
|
-
|
|
6851
|
-
this.updateState(Object.assign(Object.assign({}, this.state), { connection: Object.assign(Object.assign({}, connecting), { type: 'connected', subscription: { dispose: () => stream.cancel() } }) }));
|
|
6852
|
-
}
|
|
6853
|
-
catch (e) {
|
|
6854
|
-
this.updateState(Object.assign(Object.assign({}, this.state), { connection: {
|
|
6855
|
-
type: 'failure',
|
|
6856
|
-
jwtProvider,
|
|
6857
|
-
sceneViewId,
|
|
6858
|
-
details: this.getConnectionError(e),
|
|
6859
|
-
} }));
|
|
6860
|
-
this.clearHandshakeTimer();
|
|
6861
|
-
throw e;
|
|
6930
|
+
this.clearHandshakeTimer();
|
|
6931
|
+
throw e;
|
|
6932
|
+
});
|
|
6862
6933
|
}
|
|
6863
6934
|
this.startIdleReconnectTimer();
|
|
6864
6935
|
if (this.metadataKeys.length > 0) {
|
|
@@ -6899,7 +6970,9 @@ class SceneTreeController {
|
|
|
6899
6970
|
await this.connect(() => viewer.token);
|
|
6900
6971
|
}
|
|
6901
6972
|
catch (e) {
|
|
6902
|
-
|
|
6973
|
+
this.ifErrorIsFatal(e, () => {
|
|
6974
|
+
console.error('Scene tree controller erred connecting.', e);
|
|
6975
|
+
});
|
|
6903
6976
|
}
|
|
6904
6977
|
}
|
|
6905
6978
|
};
|
|
@@ -6939,6 +7012,27 @@ class SceneTreeController {
|
|
|
6939
7012
|
rows: reset ? [] : this.state.rows,
|
|
6940
7013
|
});
|
|
6941
7014
|
}
|
|
7015
|
+
cancel() {
|
|
7016
|
+
this.log(`Scene tree controller cancelled`);
|
|
7017
|
+
this.clearHandshakeTimer();
|
|
7018
|
+
this.clearReconnectTimer();
|
|
7019
|
+
this.pages.clear();
|
|
7020
|
+
this.activeRowRange = [];
|
|
7021
|
+
const { connection } = this.state;
|
|
7022
|
+
if (connection.type === 'connected') {
|
|
7023
|
+
connection.subscription.dispose();
|
|
7024
|
+
}
|
|
7025
|
+
this.updateState({
|
|
7026
|
+
connection: {
|
|
7027
|
+
type: 'cancelled',
|
|
7028
|
+
jwtProvider: connection.jwtProvider,
|
|
7029
|
+
sceneViewId: connection.sceneViewId,
|
|
7030
|
+
},
|
|
7031
|
+
isSearching: false,
|
|
7032
|
+
totalRows: 0,
|
|
7033
|
+
rows: [],
|
|
7034
|
+
});
|
|
7035
|
+
}
|
|
6942
7036
|
/**
|
|
6943
7037
|
* Collapses a node with the given node ID.
|
|
6944
7038
|
*
|
|
@@ -7004,7 +7098,7 @@ class SceneTreeController {
|
|
|
7004
7098
|
await this.fetchUnloadedPagesInActiveRows();
|
|
7005
7099
|
}
|
|
7006
7100
|
if (locatedIndex == null) {
|
|
7007
|
-
throw new
|
|
7101
|
+
throw new SceneTreeOperationFailedError('Cannot locate node. Location index is undefined.');
|
|
7008
7102
|
}
|
|
7009
7103
|
return locatedIndex.value;
|
|
7010
7104
|
});
|
|
@@ -7252,6 +7346,7 @@ class SceneTreeController {
|
|
|
7252
7346
|
});
|
|
7253
7347
|
stream.on('end', () => {
|
|
7254
7348
|
this.invalidateAfterOffset(0);
|
|
7349
|
+
this.startConnectionLostReconnectTimer();
|
|
7255
7350
|
});
|
|
7256
7351
|
return stream;
|
|
7257
7352
|
});
|
|
@@ -7328,7 +7423,8 @@ class SceneTreeController {
|
|
|
7328
7423
|
rows[this.activeRowRange[1]] == null);
|
|
7329
7424
|
}
|
|
7330
7425
|
updateState(newState) {
|
|
7331
|
-
|
|
7426
|
+
const updateLoadingTimer = this.loadingTimer && !this.isViewLoading(newState.rows);
|
|
7427
|
+
if (updateLoadingTimer) {
|
|
7332
7428
|
clearTimeout(this.loadingTimer);
|
|
7333
7429
|
this.loadingTimer = undefined;
|
|
7334
7430
|
this.state = Object.assign(Object.assign({}, newState), { shouldShowLoading: false });
|
|
@@ -7369,7 +7465,7 @@ class SceneTreeController {
|
|
|
7369
7465
|
resolve(res);
|
|
7370
7466
|
}
|
|
7371
7467
|
else {
|
|
7372
|
-
reject(new
|
|
7468
|
+
reject(new SceneTreeError('Invalid response. Both error and result are null'));
|
|
7373
7469
|
}
|
|
7374
7470
|
});
|
|
7375
7471
|
});
|
|
@@ -7391,24 +7487,38 @@ class SceneTreeController {
|
|
|
7391
7487
|
return then(jwt);
|
|
7392
7488
|
}
|
|
7393
7489
|
else {
|
|
7394
|
-
throw new
|
|
7490
|
+
throw new SceneTreeUnauthorizedError('SceneTreeController cannot perform request. Viewer JWT is undefined.');
|
|
7395
7491
|
}
|
|
7396
7492
|
}
|
|
7493
|
+
else if (connection.type === 'cancelled') {
|
|
7494
|
+
throw new SceneTreeConnectionCancelledError(`Request attempted, but controller was cancelled`);
|
|
7495
|
+
}
|
|
7397
7496
|
else {
|
|
7398
|
-
throw new
|
|
7497
|
+
throw new SceneTreeError('SceneTreeController is not in connected state');
|
|
7498
|
+
}
|
|
7499
|
+
}
|
|
7500
|
+
ifErrorIsFatal(error, then) {
|
|
7501
|
+
if (!(error instanceof SceneTreeConnectionCancelledError)) {
|
|
7502
|
+
then();
|
|
7399
7503
|
}
|
|
7400
7504
|
}
|
|
7401
7505
|
getConnectionError(e) {
|
|
7402
7506
|
if (isGrpcServiceError(e)) {
|
|
7403
7507
|
if (e.code === grpcWebClient_umd.grpcWebClient_umd.grpc.Code.FailedPrecondition) {
|
|
7404
|
-
return new SceneTreeErrorDetails(SceneTreeErrorCode.SCENE_TREE_DISABLED);
|
|
7508
|
+
return new SceneTreeErrorDetails('SCENE_TREE_DISABLED', SceneTreeErrorCode.SCENE_TREE_DISABLED);
|
|
7509
|
+
}
|
|
7510
|
+
else if (e.code === grpcWebClient_umd.grpcWebClient_umd.grpc.Code.Unauthenticated) {
|
|
7511
|
+
return new SceneTreeErrorDetails('UNAUTHORIZED', SceneTreeErrorCode.UNAUTHORIZED);
|
|
7405
7512
|
}
|
|
7406
7513
|
else {
|
|
7407
|
-
return new SceneTreeErrorDetails(SceneTreeErrorCode.UNKNOWN);
|
|
7514
|
+
return new SceneTreeErrorDetails('UNKNOWN', SceneTreeErrorCode.UNKNOWN);
|
|
7408
7515
|
}
|
|
7409
7516
|
}
|
|
7517
|
+
else if (e instanceof SceneTreeUnauthorizedError) {
|
|
7518
|
+
return new SceneTreeErrorDetails('UNAUTHORIZED', SceneTreeErrorCode.UNAUTHORIZED);
|
|
7519
|
+
}
|
|
7410
7520
|
else {
|
|
7411
|
-
return new SceneTreeErrorDetails(SceneTreeErrorCode.UNKNOWN);
|
|
7521
|
+
return new SceneTreeErrorDetails('UNKNOWN', SceneTreeErrorCode.UNKNOWN);
|
|
7412
7522
|
}
|
|
7413
7523
|
}
|
|
7414
7524
|
constrainPageRange(start, end) {
|
|
@@ -7428,9 +7538,13 @@ class SceneTreeController {
|
|
|
7428
7538
|
console.debug(message, optionalParams);
|
|
7429
7539
|
}
|
|
7430
7540
|
}
|
|
7541
|
+
isConnectedState(connection) {
|
|
7542
|
+
return connection.type === 'connected';
|
|
7543
|
+
}
|
|
7431
7544
|
}
|
|
7432
7545
|
SceneTreeController.IDLE_RECONNECT_IN_SECONDS = 4 * 60;
|
|
7433
7546
|
SceneTreeController.LOST_CONNECTION_RECONNECT_IN_SECONDS = 2;
|
|
7547
|
+
SceneTreeController.MAX_SUBSCRIPTION_RETRY_COUNT = 2;
|
|
7434
7548
|
|
|
7435
7549
|
async function showItem(viewer, id, { suppliedCorrelationId } = {}) {
|
|
7436
7550
|
const scene = await viewer.scene();
|
|
@@ -7816,9 +7930,15 @@ const SceneTree = class {
|
|
|
7816
7930
|
*/
|
|
7817
7931
|
async selectFilteredItems(term, options) {
|
|
7818
7932
|
if (this.viewer != null) {
|
|
7819
|
-
const
|
|
7933
|
+
const definedMetadataKeys = this.metadataSearchKeys.length > 0
|
|
7820
7934
|
? this.metadataSearchKeys
|
|
7821
7935
|
: this.metadataKeys;
|
|
7936
|
+
if (definedMetadataKeys.length === 0) {
|
|
7937
|
+
console.warn("No metadata keys were found to perform the selection. Defaulting to ['VERTEX_SCENE_ITEM_NAME']");
|
|
7938
|
+
}
|
|
7939
|
+
const columnsToSearch = definedMetadataKeys.length > 0
|
|
7940
|
+
? definedMetadataKeys
|
|
7941
|
+
: ['VERTEX_SCENE_ITEM_NAME'];
|
|
7822
7942
|
await selectFilterResults(this.viewer, term, columnsToSearch, this.metadataSearchExactMatch, Object.assign({ append: false }, options));
|
|
7823
7943
|
}
|
|
7824
7944
|
}
|
|
@@ -7838,8 +7958,9 @@ const SceneTree = class {
|
|
|
7838
7958
|
* @ignore
|
|
7839
7959
|
*/
|
|
7840
7960
|
disconnectedCallback() {
|
|
7841
|
-
var _a;
|
|
7961
|
+
var _a, _b;
|
|
7842
7962
|
(_a = this.stateMap.viewerDisposable) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
7963
|
+
(_b = this.controller) === null || _b === void 0 ? void 0 : _b.cancel();
|
|
7843
7964
|
}
|
|
7844
7965
|
/**
|
|
7845
7966
|
* @ignore
|
|
@@ -7873,7 +7994,7 @@ const SceneTree = class {
|
|
|
7873
7994
|
this.stateMap.componentLoaded = true;
|
|
7874
7995
|
(_a = this.controller) === null || _a === void 0 ? void 0 : _a.setMetadataKeys(this.metadataKeys);
|
|
7875
7996
|
if (this.viewer == null) {
|
|
7876
|
-
this.errorDetails = new SceneTreeErrorDetails(SceneTreeErrorCode.MISSING_VIEWER);
|
|
7997
|
+
this.errorDetails = new SceneTreeErrorDetails('MISSING_VIEWER', SceneTreeErrorCode.MISSING_VIEWER);
|
|
7877
7998
|
}
|
|
7878
7999
|
}
|
|
7879
8000
|
componentWillRender() {
|
|
@@ -7889,10 +8010,10 @@ const SceneTree = class {
|
|
|
7889
8010
|
}
|
|
7890
8011
|
renderError(details) {
|
|
7891
8012
|
if (details.code !== SceneTreeErrorCode.SCENE_TREE_DISABLED) {
|
|
7892
|
-
return (index.h(SceneTreeError, { details: details }, index.h("button", { class: "button button-secondary", onClick: () => this.retryConnectToViewer(), disabled: this.attemptingRetry }, "Retry")));
|
|
8013
|
+
return (index.h(SceneTreeError$1, { details: details }, index.h("button", { class: "button button-secondary", onClick: () => this.retryConnectToViewer(), disabled: this.attemptingRetry }, "Retry")));
|
|
7893
8014
|
}
|
|
7894
8015
|
else {
|
|
7895
|
-
return index.h(SceneTreeError, { details: details });
|
|
8016
|
+
return index.h(SceneTreeError$1, { details: details });
|
|
7896
8017
|
}
|
|
7897
8018
|
}
|
|
7898
8019
|
/**
|
|
@@ -7979,7 +8100,7 @@ const SceneTree = class {
|
|
|
7979
8100
|
this.connectionError.emit(state.connection.details);
|
|
7980
8101
|
}
|
|
7981
8102
|
else if (state.connection.type === 'disconnected') {
|
|
7982
|
-
this.errorDetails = new SceneTreeErrorDetails(SceneTreeErrorCode.DISCONNECTED);
|
|
8103
|
+
this.errorDetails = new SceneTreeErrorDetails('DISCONNECTED', SceneTreeErrorCode.DISCONNECTED);
|
|
7983
8104
|
}
|
|
7984
8105
|
else {
|
|
7985
8106
|
this.errorDetails = undefined;
|