@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
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';
|
|
2
|
+
import { VolumeIntersectionQueryController } from '../../lib/volume-intersection/controller';
|
|
3
|
+
import { VolumeIntersectionQueryInteractionHandler } from '../../lib/volume-intersection/interactions';
|
|
4
|
+
import { VolumeIntersectionQueryModel, } from '../../lib/volume-intersection/model';
|
|
5
|
+
/**
|
|
6
|
+
* The `ViewerBoxQueryTool` allows for the drawing of a "box" on screen to represent
|
|
7
|
+
* a query for items in a specific area of the viewer. This tool then allows for an
|
|
8
|
+
* operation to be performed on the items contained (exclusive) by the box or both
|
|
9
|
+
* contained by and intersecting with (inclusive) the box.
|
|
10
|
+
*/
|
|
11
|
+
export class ViewerBoxQueryTool {
|
|
12
|
+
constructor() {
|
|
13
|
+
/**
|
|
14
|
+
* The default operation to perform when a drag has completed and the intersection
|
|
15
|
+
* query will be run. Defaults to `clearAndSelect`, and can be changed to `select` or `deselect`.
|
|
16
|
+
*
|
|
17
|
+
* `clearAndSelect` will clear all existing selection, and select the results of the query.
|
|
18
|
+
* `select` will maintain existing selection, and select the results of the query.
|
|
19
|
+
* `deselect` will maintain existing selection, and deselect the results of the query.
|
|
20
|
+
*
|
|
21
|
+
* The operation behavior for this intersection query tool can also be changed by
|
|
22
|
+
* providing a custom implementation of the `VolumeIntersectionQueryController`, or
|
|
23
|
+
* by using the `setOperationTransform` method of the default controller.
|
|
24
|
+
*/
|
|
25
|
+
this.operationType = 'clearAndSelect';
|
|
26
|
+
this.handleScreenBoundsChanged = this.handleScreenBoundsChanged.bind(this);
|
|
27
|
+
this.handleExecuteStarted = this.handleExecuteStarted.bind(this);
|
|
28
|
+
this.handleExecuteComplete = this.handleExecuteComplete.bind(this);
|
|
29
|
+
}
|
|
30
|
+
componentWillLoad() {
|
|
31
|
+
var _a;
|
|
32
|
+
this.model = (_a = this.model) !== null && _a !== void 0 ? _a : new VolumeIntersectionQueryModel(this.mode);
|
|
33
|
+
this.screenBoundsChangedDisposable = this.model.onScreenBoundsChanged(this.handleScreenBoundsChanged);
|
|
34
|
+
this.handleViewerChanged(this.viewer);
|
|
35
|
+
this.handleControllerChange(this.controller);
|
|
36
|
+
this.handleDefaultOperationChange(this.operationType);
|
|
37
|
+
}
|
|
38
|
+
disconnectedCallback() {
|
|
39
|
+
var _a, _b, _c, _d;
|
|
40
|
+
(_a = this.model) === null || _a === void 0 ? void 0 : _a.reset();
|
|
41
|
+
(_b = this.screenBoundsChangedDisposable) === null || _b === void 0 ? void 0 : _b.dispose();
|
|
42
|
+
(_c = this.operationStartedDisposable) === null || _c === void 0 ? void 0 : _c.dispose();
|
|
43
|
+
(_d = this.operationCompleteDisposable) === null || _d === void 0 ? void 0 : _d.dispose();
|
|
44
|
+
this.deregisterInteractionHandler();
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* @ignore
|
|
48
|
+
*/
|
|
49
|
+
handleViewerChanged(newViewer) {
|
|
50
|
+
this.deregisterInteractionHandler();
|
|
51
|
+
if (this.model != null && newViewer != null) {
|
|
52
|
+
this.controller = new VolumeIntersectionQueryController(this.model, newViewer);
|
|
53
|
+
this.handleDefaultOperationChange(this.operationType);
|
|
54
|
+
this.registerInteractionHandler(this.controller, newViewer);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @ignore
|
|
59
|
+
*/
|
|
60
|
+
handleDefaultOperationChange(updatedOperationType) {
|
|
61
|
+
switch (updatedOperationType) {
|
|
62
|
+
case 'clearAndSelect':
|
|
63
|
+
this.setDefaultClearAndSelectOperation();
|
|
64
|
+
break;
|
|
65
|
+
case 'select':
|
|
66
|
+
this.setDefaultSelectOperation();
|
|
67
|
+
break;
|
|
68
|
+
case 'deselect':
|
|
69
|
+
this.setDefaultDeselectOperation();
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* @ignore
|
|
75
|
+
*/
|
|
76
|
+
handleModeChange(updatedMode) {
|
|
77
|
+
var _a;
|
|
78
|
+
(_a = this.model) === null || _a === void 0 ? void 0 : _a.setMode(updatedMode);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* @ignore
|
|
82
|
+
*/
|
|
83
|
+
handleControllerChange(controller) {
|
|
84
|
+
var _a, _b;
|
|
85
|
+
(_a = this.operationStartedDisposable) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
86
|
+
(_b = this.operationCompleteDisposable) === null || _b === void 0 ? void 0 : _b.dispose();
|
|
87
|
+
this.operationStartedDisposable = controller === null || controller === void 0 ? void 0 : controller.onExecuteStarted(this.handleExecuteStarted);
|
|
88
|
+
this.operationStartedDisposable = controller === null || controller === void 0 ? void 0 : controller.onExecuteComplete(this.handleExecuteComplete);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* @ignore
|
|
92
|
+
*/
|
|
93
|
+
render() {
|
|
94
|
+
return (h(Host, null,
|
|
95
|
+
h("vertex-viewer-layer", null, this.details != null && (h("div", { class: "bounds", style: {
|
|
96
|
+
left: `${this.details.screenBounds.x}px`,
|
|
97
|
+
top: `${this.details.screenBounds.y}px`,
|
|
98
|
+
width: `${this.details.screenBounds.width}px`,
|
|
99
|
+
height: `${this.details.screenBounds.height}px`,
|
|
100
|
+
} },
|
|
101
|
+
h("slot", { name: "bounds" },
|
|
102
|
+
h("div", { class: "outline" }),
|
|
103
|
+
h("div", { class: "fill" })))))));
|
|
104
|
+
}
|
|
105
|
+
handleScreenBoundsChanged(details) {
|
|
106
|
+
this.details = details;
|
|
107
|
+
this.updateTypeAttribute(details === null || details === void 0 ? void 0 : details.type);
|
|
108
|
+
}
|
|
109
|
+
handleExecuteStarted() {
|
|
110
|
+
var _a;
|
|
111
|
+
(_a = this.interactionHandler) === null || _a === void 0 ? void 0 : _a.disable();
|
|
112
|
+
}
|
|
113
|
+
handleExecuteComplete() {
|
|
114
|
+
var _a;
|
|
115
|
+
(_a = this.interactionHandler) === null || _a === void 0 ? void 0 : _a.enable();
|
|
116
|
+
}
|
|
117
|
+
async registerInteractionHandler(controller, viewer) {
|
|
118
|
+
this.interactionHandler = new VolumeIntersectionQueryInteractionHandler(controller);
|
|
119
|
+
this.interactionHandlerDisposable = await viewer.registerInteractionHandler(this.interactionHandler);
|
|
120
|
+
}
|
|
121
|
+
deregisterInteractionHandler() {
|
|
122
|
+
var _a, _b;
|
|
123
|
+
(_a = this.interactionHandlerDisposable) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
124
|
+
(_b = this.interactionHandler) === null || _b === void 0 ? void 0 : _b.dispose();
|
|
125
|
+
this.interactionHandler = undefined;
|
|
126
|
+
}
|
|
127
|
+
updateTypeAttribute(type) {
|
|
128
|
+
this.hostEl.setAttribute('inclusive', `${type === 'inclusive'}`);
|
|
129
|
+
this.hostEl.setAttribute('exclusive', `${type === 'exclusive'}`);
|
|
130
|
+
}
|
|
131
|
+
setDefaultClearAndSelectOperation() {
|
|
132
|
+
var _a, _b;
|
|
133
|
+
(_a = this.controller) === null || _a === void 0 ? void 0 : _a.setOperationTransform((builder) => builder.select());
|
|
134
|
+
(_b = this.controller) === null || _b === void 0 ? void 0 : _b.setAdditionalTransforms([
|
|
135
|
+
(op) => op.where((q) => q.withSelected()).deselect(),
|
|
136
|
+
]);
|
|
137
|
+
}
|
|
138
|
+
setDefaultSelectOperation() {
|
|
139
|
+
var _a, _b;
|
|
140
|
+
(_a = this.controller) === null || _a === void 0 ? void 0 : _a.setOperationTransform((builder) => builder.select());
|
|
141
|
+
(_b = this.controller) === null || _b === void 0 ? void 0 : _b.setAdditionalTransforms([]);
|
|
142
|
+
}
|
|
143
|
+
setDefaultDeselectOperation() {
|
|
144
|
+
var _a, _b;
|
|
145
|
+
(_a = this.controller) === null || _a === void 0 ? void 0 : _a.setOperationTransform((builder) => builder.deselect());
|
|
146
|
+
(_b = this.controller) === null || _b === void 0 ? void 0 : _b.setAdditionalTransforms([]);
|
|
147
|
+
}
|
|
148
|
+
static get is() { return "vertex-viewer-box-query-tool"; }
|
|
149
|
+
static get encapsulation() { return "shadow"; }
|
|
150
|
+
static get originalStyleUrls() { return {
|
|
151
|
+
"$": ["viewer-box-query-tool.css"]
|
|
152
|
+
}; }
|
|
153
|
+
static get styleUrls() { return {
|
|
154
|
+
"$": ["viewer-box-query-tool.css"]
|
|
155
|
+
}; }
|
|
156
|
+
static get properties() { return {
|
|
157
|
+
"viewer": {
|
|
158
|
+
"type": "unknown",
|
|
159
|
+
"mutable": false,
|
|
160
|
+
"complexType": {
|
|
161
|
+
"original": "HTMLVertexViewerElement",
|
|
162
|
+
"resolved": "HTMLVertexViewerElement | undefined",
|
|
163
|
+
"references": {
|
|
164
|
+
"HTMLVertexViewerElement": {
|
|
165
|
+
"location": "global"
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"required": false,
|
|
170
|
+
"optional": true,
|
|
171
|
+
"docs": {
|
|
172
|
+
"tags": [],
|
|
173
|
+
"text": "The viewer that this component is bound to. This is automatically assigned\nif added to the light-dom of a parent viewer element."
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
"controller": {
|
|
177
|
+
"type": "unknown",
|
|
178
|
+
"mutable": true,
|
|
179
|
+
"complexType": {
|
|
180
|
+
"original": "VolumeIntersectionQueryController",
|
|
181
|
+
"resolved": "VolumeIntersectionQueryController | undefined",
|
|
182
|
+
"references": {
|
|
183
|
+
"VolumeIntersectionQueryController": {
|
|
184
|
+
"location": "import",
|
|
185
|
+
"path": "../../lib/volume-intersection/controller"
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
"required": false,
|
|
190
|
+
"optional": true,
|
|
191
|
+
"docs": {
|
|
192
|
+
"tags": [],
|
|
193
|
+
"text": "The controller that is responsible for performing operations using the\nvolume intersection query defined by the drawn box and updating the model."
|
|
194
|
+
}
|
|
195
|
+
},
|
|
196
|
+
"model": {
|
|
197
|
+
"type": "unknown",
|
|
198
|
+
"mutable": true,
|
|
199
|
+
"complexType": {
|
|
200
|
+
"original": "VolumeIntersectionQueryModel",
|
|
201
|
+
"resolved": "VolumeIntersectionQueryModel | undefined",
|
|
202
|
+
"references": {
|
|
203
|
+
"VolumeIntersectionQueryModel": {
|
|
204
|
+
"location": "import",
|
|
205
|
+
"path": "../../lib/volume-intersection/model"
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
},
|
|
209
|
+
"required": false,
|
|
210
|
+
"optional": true,
|
|
211
|
+
"docs": {
|
|
212
|
+
"tags": [],
|
|
213
|
+
"text": "The model that contains the points representing the corners of the box\ndisplayed on screen, the type of the query to be performed, and methods\nfor setting these values."
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
"operationType": {
|
|
217
|
+
"type": "string",
|
|
218
|
+
"mutable": false,
|
|
219
|
+
"complexType": {
|
|
220
|
+
"original": "VolumeIntersectionQueryType",
|
|
221
|
+
"resolved": "\"clearAndSelect\" | \"deselect\" | \"select\"",
|
|
222
|
+
"references": {
|
|
223
|
+
"VolumeIntersectionQueryType": {
|
|
224
|
+
"location": "local"
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
},
|
|
228
|
+
"required": false,
|
|
229
|
+
"optional": false,
|
|
230
|
+
"docs": {
|
|
231
|
+
"tags": [],
|
|
232
|
+
"text": "The default operation to perform when a drag has completed and the intersection\nquery will be run. Defaults to `clearAndSelect`, and can be changed to `select` or `deselect`.\n\n`clearAndSelect` will clear all existing selection, and select the results of the query.\n`select` will maintain existing selection, and select the results of the query.\n`deselect` will maintain existing selection, and deselect the results of the query.\n\nThe operation behavior for this intersection query tool can also be changed by\nproviding a custom implementation of the `VolumeIntersectionQueryController`, or\nby using the `setOperationTransform` method of the default controller."
|
|
233
|
+
},
|
|
234
|
+
"attribute": "operation-type",
|
|
235
|
+
"reflect": false,
|
|
236
|
+
"defaultValue": "'clearAndSelect'"
|
|
237
|
+
},
|
|
238
|
+
"mode": {
|
|
239
|
+
"type": "string",
|
|
240
|
+
"mutable": false,
|
|
241
|
+
"complexType": {
|
|
242
|
+
"original": "VolumeIntersectionQueryMode",
|
|
243
|
+
"resolved": "\"exclusive\" | \"inclusive\" | undefined",
|
|
244
|
+
"references": {
|
|
245
|
+
"VolumeIntersectionQueryMode": {
|
|
246
|
+
"location": "local"
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
"required": false,
|
|
251
|
+
"optional": true,
|
|
252
|
+
"docs": {
|
|
253
|
+
"tags": [],
|
|
254
|
+
"text": "An optional value to specify a singular mode of intersection query. This value\ndefaults to `undefined`, which will indicate that both `exclusive` and `inclusive`\nqueries should be made, with `inclusive` being represented by a left to right\ndrag behavior and `exclusive` being represented by a right to left drag.\n\nSetting this value to `inclusive` will cause dragging left to right and left to right\nto result in an `inclusive` query, and the box will only be styled for `inclusive` queries.\n\nSetting this value to `exclusive` will cause dragging left to right and left to right\nto result in an `exclusive` query, and the box will only be styled for `exclusive` queries."
|
|
255
|
+
},
|
|
256
|
+
"attribute": "mode",
|
|
257
|
+
"reflect": false
|
|
258
|
+
}
|
|
259
|
+
}; }
|
|
260
|
+
static get states() { return {
|
|
261
|
+
"details": {}
|
|
262
|
+
}; }
|
|
263
|
+
static get elementRef() { return "hostEl"; }
|
|
264
|
+
static get watchers() { return [{
|
|
265
|
+
"propName": "viewer",
|
|
266
|
+
"methodName": "handleViewerChanged"
|
|
267
|
+
}, {
|
|
268
|
+
"propName": "operationType",
|
|
269
|
+
"methodName": "handleDefaultOperationChange"
|
|
270
|
+
}, {
|
|
271
|
+
"propName": "mode",
|
|
272
|
+
"methodName": "handleModeChange"
|
|
273
|
+
}, {
|
|
274
|
+
"propName": "controller",
|
|
275
|
+
"methodName": "handleControllerChange"
|
|
276
|
+
}]; }
|
|
277
|
+
}
|
|
278
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLWJveC1xdWVyeS10b29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld2VyLWJveC1xdWVyeS10b29sL3ZpZXdlci1ib3gtcXVlcnktdG9vbC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RixPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN2RyxPQUFPLEVBR0wsNEJBQTRCLEdBQzdCLE1BQU0scUNBQXFDLENBQUM7QUFTN0M7Ozs7O0dBS0c7QUFNSCxNQUFNLE9BQU8sa0JBQWtCO0VBa0U3QjtJQTNDQTs7Ozs7Ozs7Ozs7T0FXRztJQUVJLGtCQUFhLEdBQWdDLGdCQUFnQixDQUFDO0lBK0JuRSxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRSxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqRSxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztFQUNyRSxDQUFDO0VBRU0saUJBQWlCOztJQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQUEsSUFBSSxDQUFDLEtBQUssbUNBQUksSUFBSSw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFdkUsSUFBSSxDQUFDLDZCQUE2QixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFC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
|
|
@@ -33,10 +33,14 @@ export class ViewerPinGroup {
|
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
componentDidLoad() {
|
|
36
|
+
var _a;
|
|
36
37
|
this.setLabelObserver();
|
|
37
38
|
if (this.pinController == null) {
|
|
38
39
|
this.pinController = new PinController(this.pinModel);
|
|
39
40
|
}
|
|
41
|
+
if (this.selected) {
|
|
42
|
+
(_a = this.labelEl) === null || _a === void 0 ? void 0 : _a.setFocus();
|
|
43
|
+
}
|
|
40
44
|
}
|
|
41
45
|
disconnectedCallback() {
|
|
42
46
|
var _a, _b;
|
|
@@ -265,4 +269,4 @@ export class ViewerPinGroup {
|
|
|
265
269
|
"invalidateStateCounter": {}
|
|
266
270
|
}; }
|
|
267
271
|
}
|
|
268
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
272
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLXBpbi1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlci1waW4tZ3JvdXAvdmlld2VyLXBpbi1ncm91cC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxRQUFRO0FBQ1IsNkRBQTZEO0FBQzdELENBQUMsRUFDRCxJQUFJLEVBQ0osS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBYyxPQUFPLEVBQVMsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFMUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUNqQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQVlsRCxNQUFNLE9BQU8sY0FBYztFQUwzQjtJQVlFOztPQUVHO0lBRUksV0FBTSxHQUFvQixPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFeEQ7O09BRUc7SUFFSSx5QkFBb0IsR0FBb0IsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBUXRFOztPQUVHO0lBRUksYUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7SUFRM0M7O09BRUc7SUFFSSxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBR2hCLDJCQUFzQixHQUFHLENBQUMsQ0FBQztJQXNFM0Isb0JBQWUsR0FBRyxHQUFTLEVBQUU7TUFDbkMsSUFBSSxDQUFDLHNCQUFz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
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
|
|
56
56
|
/**
|
|
57
57
|
* @prop --viewer-annotations-pin-label-min-width: A CSS length that
|
|
58
|
-
* specifies the minimum width of the label. Defaults to `
|
|
58
|
+
* specifies the minimum width of the label. Defaults to `2rem`.
|
|
59
59
|
*/
|
|
60
60
|
--viewer-annotations-pin-label-min-width: 2rem;
|
|
61
61
|
|
|
@@ -25,12 +25,15 @@ export class VertexPinLabel {
|
|
|
25
25
|
});
|
|
26
26
|
};
|
|
27
27
|
this.handleInputKeyDown = (event) => {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
event.stopPropagation();
|
|
29
|
+
if (event.key === 'Enter' &&
|
|
30
|
+
(event.ctrlKey || event.metaKey || event.shiftKey)) {
|
|
31
|
+
this.textareaRows += 1;
|
|
32
|
+
this.value += '\n';
|
|
31
33
|
}
|
|
32
34
|
else if (event.key === 'Enter') {
|
|
33
|
-
|
|
35
|
+
event.preventDefault();
|
|
36
|
+
this.submit();
|
|
34
37
|
}
|
|
35
38
|
};
|
|
36
39
|
this.handlePointerDown = (event) => {
|
|
@@ -49,6 +52,8 @@ export class VertexPinLabel {
|
|
|
49
52
|
if (this.elementBounds != null &&
|
|
50
53
|
this.relativePointerDownPosition &&
|
|
51
54
|
this.pinPointerDownPosition != null) {
|
|
55
|
+
// Prevent selection of any text while interacting with the label
|
|
56
|
+
event.preventDefault();
|
|
52
57
|
const point = getMouseClientPosition(event, this.elementBounds);
|
|
53
58
|
const relative = translatePointToRelative(point, this.elementBounds);
|
|
54
59
|
const relativeDelta = Point.subtract(relative, this.relativePointerDownPosition);
|
|
@@ -93,12 +98,9 @@ export class VertexPinLabel {
|
|
|
93
98
|
var _a, _b, _c;
|
|
94
99
|
// HTMLInputElement.focus() doesn't exist in tests.
|
|
95
100
|
if (typeof ((_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.focus) === 'function') {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
else {
|
|
100
|
-
(_c = this.inputEl) === null || _c === void 0 ? void 0 : _c.blur();
|
|
101
|
-
}
|
|
101
|
+
this.focused = true;
|
|
102
|
+
this.labelFocused.emit((_b = this.pin) === null || _b === void 0 ? void 0 : _b.id);
|
|
103
|
+
(_c = this.inputEl) === null || _c === void 0 ? void 0 : _c.focus();
|
|
102
104
|
}
|
|
103
105
|
}
|
|
104
106
|
watchFocusChange() {
|
|
@@ -179,7 +181,7 @@ export class VertexPinLabel {
|
|
|
179
181
|
}
|
|
180
182
|
computeMinWidth() {
|
|
181
183
|
if (this.contentElBounds != null) {
|
|
182
|
-
const expected = `${this.contentElBounds.width +
|
|
184
|
+
const expected = `${this.contentElBounds.width + 8}px`;
|
|
183
185
|
return `min(${expected}, ${this.computeMaxWidth()})`;
|
|
184
186
|
}
|
|
185
187
|
else {
|
|
@@ -401,4 +403,4 @@ export class VertexPinLabel {
|
|
|
401
403
|
"methodName": "watchElementBoundsChange"
|
|
402
404
|
}]; }
|
|
403
405
|
}
|
|
404
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLXBpbi1sYWJlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlci1waW4tbGFiZWwvdmlld2VyLXBpbi1sYWJlbC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSztBQUVMLDZEQUE2RDtBQUM3RCxDQUFDLEVBQ0QsSUFBSSxFQUNKLE1BQU0sRUFDTixJQUFJLEVBQ0osS0FBSyxFQUNMLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUMsT0FBTyxVQUFVLE1BQU0sWUFBWSxDQUFDO0FBRXBDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUNMLFlBQVksRUFDWixTQUFTLEVBQ1QsUUFBUSxHQUVULE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIsc0JBQXNCLEdBQ3ZCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBTzNDLE1BQU0sT0FBTyxjQUFjO0VBc0V6QjtJQXBCUSxZQUFPLEdBQUcsS0FBSyxDQUFDO0lBTWhCLGlCQUFZLEdBQUcsQ0FBQyxDQUFDO0lBa05qQix1QkFBa0IsR0FBRyxHQUFTLEVBQUU7TUFDdEMsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUNYLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQUU7VUFDMUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixFQUFFLENBQUM7VUFD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
|
|
406
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLXBpbi1sYWJlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlci1waW4tbGFiZWwvdmlld2VyLXBpbi1sYWJlbC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSztBQUVMLDZEQUE2RDtBQUM3RCxDQUFDLEVBQ0QsSUFBSSxFQUNKLE1BQU0sRUFDTixJQUFJLEVBQ0osS0FBSyxFQUNMLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUMsT0FBTyxVQUFVLE1BQU0sWUFBWSxDQUFDO0FBRXBDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUNMLFlBQVksRUFDWixTQUFTLEVBQ1QsUUFBUSxHQUVULE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIsc0JBQXNCLEdBQ3ZCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBTzNDLE1BQU0sT0FBTyxjQUFjO0VBc0V6QjtJQXBCUSxZQUFPLEdBQUcsS0FBSyxDQUFDO0lBTWhCLGlCQUFZLEdBQUcsQ0FBQyxDQUFDO0lBZ05qQix1QkFBa0IsR0FBRyxHQUFTLEVBQUU7TUFDdEMsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUNYLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQUU7VUFDMUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixFQUFFLENBQUM7VUFD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
|
|
@@ -14,8 +14,29 @@ export function translatePointToScreen(pt, canvasDimensions) {
|
|
|
14
14
|
/**
|
|
15
15
|
* Translates a point in screen units to a point in relative units.
|
|
16
16
|
*/
|
|
17
|
-
export function translatePointToRelative(pt, canvasDimensions) {
|
|
18
|
-
const
|
|
19
|
-
|
|
17
|
+
export function translatePointToRelative(pt, canvasDimensions, includeOffset, xOffset, yOffset) {
|
|
18
|
+
const verticalScaleFactor = 1 / canvasDimensions.height;
|
|
19
|
+
const horizontalScaleFactor = 1 / canvasDimensions.width;
|
|
20
|
+
const canvasCenterPoint = Dimensions.center(canvasDimensions);
|
|
21
|
+
const point = Point.scale(Point.subtract(pt, canvasCenterPoint), horizontalScaleFactor, verticalScaleFactor);
|
|
22
|
+
if (includeOffset) {
|
|
23
|
+
const offset = Point.scale(Point.create(xOffset, yOffset), horizontalScaleFactor, verticalScaleFactor);
|
|
24
|
+
// We want to place the label towards the center of the screen.
|
|
25
|
+
// The given point corresponds to the upper left corner of the label, so increase the offset
|
|
26
|
+
// when placing it to the left or above to ensure that part of the label line is visible
|
|
27
|
+
const centerIsToTheRightInXDirection = canvasCenterPoint.x > pt.x;
|
|
28
|
+
const xOffsetCalculated = centerIsToTheRightInXDirection
|
|
29
|
+
? offset.x
|
|
30
|
+
: -3 * offset.x;
|
|
31
|
+
const centerIsBelowInYDirection = canvasCenterPoint.y > pt.y;
|
|
32
|
+
const yOffsetCalculated = centerIsBelowInYDirection
|
|
33
|
+
? offset.y
|
|
34
|
+
: -3 * offset.y;
|
|
35
|
+
const offsetPoint = Point.add(point, Point.create(xOffsetCalculated, yOffsetCalculated));
|
|
36
|
+
return constrainRelativePoint(offsetPoint, Range.create(-0.5, 0.5));
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
return constrainRelativePoint(point, Range.create(-0.5, 0.5));
|
|
40
|
+
}
|
|
20
41
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3ZXItcGluLXRvb2wvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFekMsTUFBTSxVQUFVLHNCQUFzQixDQUNwQyxFQUFlLEVBQ2YsS0FBa0I7RUFFbEIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztFQUN0RSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0VBRXRFLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFDbEQsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUNwQyxFQUFlLEVBQ2YsZ0JBQXVDO0VBRXZDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FDZCxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQ2hFLFVBQVUsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FDcEMsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSx3QkFBd0IsQ0FDdEMsRUFBZSxFQUNmLGdCQUF1QyxFQUN2QyxhQUF1QixFQUN2QixPQUFnQixFQUNoQixPQUFnQjtFQUVoQixNQUFNLG1CQUFtQixHQUFHLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7RUFDeEQsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO0VBQ3pELE1BQU0saUJBQWlCLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0VBRTlELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQ3ZCLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLGlCQUFpQixDQUFDLEVBQ3JDLHFCQUFxQixFQUNyQixtQkFBbUIsQ0FDcEIsQ0FBQztFQUVGLElBQUksYUFBYSxFQUFFO0lBQ2pCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQ3hCLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUM5QixxQkFBcUIsRUFDckIsbUJBQW1CLENBQ3BCLENBQUM7SUFFRiwrREFBK0Q7SUFDL0QsNEZBQTRGO0lBQzVGLHdGQUF3RjtJQUN4RixNQUFNLDhCQUE4QixHQUFHLGlCQUFpQixDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0saUJBQWlCLEdBQUcsOEJBQThCO01BQ3RELENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztNQUNWLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBRWxCLE1BQU0seUJBQXlCLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0QsTUFBTSxpQkFBaUIsR0FBRyx5QkFBeUI7TUFDakQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO01BQ1YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFbEIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FDM0IsS0FBSyxFQUNMLEtBQUssQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUMsQ0FDbkQsQ0FBQztJQUVGLE9BQU8sc0JBQXNCLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztHQUNyRTtPQUFNO0lBQ0wsT0FBTyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0dBQy9EO0FBQ0gsQ0FBQyJ9
|
|
@@ -6,4 +6,16 @@
|
|
|
6
6
|
right: 0;
|
|
7
7
|
overflow: hidden;
|
|
8
8
|
pointer-events: none;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @prop --viewer-pin-tool-initial-label-offset-x: The number of pixels to offset
|
|
12
|
+
the label in the x direction. Defaults to 20.
|
|
13
|
+
*/
|
|
14
|
+
--viewer-pin-tool-initial-label-offset-x: 20;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @prop --viewer-pin-tool-initial-label-offset-y: The number of pixels to offset
|
|
18
|
+
the label in the y direction. Defaults to 20.
|
|
19
|
+
*/
|
|
20
|
+
--viewer-pin-tool-initial-label-offset-y: 20;
|
|
9
21
|
}
|
|
@@ -127,10 +127,17 @@ export class ViewerPinTool {
|
|
|
127
127
|
}
|
|
128
128
|
setupInteractionHandler() {
|
|
129
129
|
var _a;
|
|
130
|
+
const hostStyles = window.getComputedStyle(this.hostEl);
|
|
131
|
+
const xOffset = hostStyles
|
|
132
|
+
.getPropertyValue('--viewer-pin-tool-initial-label-offset-x')
|
|
133
|
+
.trim();
|
|
134
|
+
const yOffset = hostStyles
|
|
135
|
+
.getPropertyValue('--viewer-pin-tool-initial-label-offset-y')
|
|
136
|
+
.trim();
|
|
130
137
|
this.clearInteractionHandler();
|
|
131
138
|
if (this.pinController != null) {
|
|
132
139
|
this.registeredInteractionHandler =
|
|
133
|
-
(_a = this.viewer) === null || _a === void 0 ? void 0 : _a.registerInteractionHandler(new PinsInteractionHandler(this.pinController));
|
|
140
|
+
(_a = this.viewer) === null || _a === void 0 ? void 0 : _a.registerInteractionHandler(new PinsInteractionHandler(this.pinController, parseInt(xOffset), parseInt(yOffset)));
|
|
134
141
|
}
|
|
135
142
|
}
|
|
136
143
|
clearModelListeners() {
|
|
@@ -327,4 +334,4 @@ export class ViewerPinTool {
|
|
|
327
334
|
"methodName": "handleViewerChanged"
|
|
328
335
|
}]; }
|
|
329
336
|
}
|
|
330
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
337
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLXBpbi10b29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld2VyLXBpbi10b29sL3ZpZXdlci1waW4tdG9vbC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPO0FBQ1AsNkRBQTZEO0FBQzdELENBQUMsRUFDRCxJQUFJLEVBQ0osSUFBSSxFQUNKLEtBQUssRUFDTCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFFTCxRQUFRLEdBR1QsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU9uRSxNQUFNLE9BQU8sYUFBYTtFQUwxQjtJQVlFOztPQUVHO0lBRUksYUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7SUFTM0M7Ozs7T0FJRztJQUVJLFNBQUksR0FBc0IsVUFBVSxDQUFDO0lBRTVDOztPQUVHO0lBRUksU0FBSSxHQUFzQixNQUFNLENBQUM7SUFvQmhDLFNBQUksR0FBVSxFQUFFLENBQUM7SUFtSGpCLDhCQUF5QixHQUFHLEdBQVMsRUFBRTs7TUFDN0MsSUFBSSxDQUFDLG9CQUFvQjtRQUN2QixNQUFBLE1BQUEsSUFBSSxDQUFDLE1BQU0sMENBQUUsS0FBSywwQ0FBRSxLQUFLLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDO0lBQzFELENBQUMsQ0FBQztHQStFSDtFQXJMQzs7S0FFRztFQUVPLGVBQWU7O0lBQ3ZCLE1BQUEsSUFBSSxDQUFDLGFBQWEsMENBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztF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
|