@vertexvis/viewer 0.18.2-testing.0 → 0.18.2-testing.1
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/index-b99cd335.js +126 -1
- package/dist/esm/index-fd7d7b68.js +126 -1
- package/package.json +7 -7
- package/dist/components/_commonjsHelpers.js +0 -41
- package/dist/components/_commonjsHelpers.js.map +0 -1
- package/dist/components/browser.esm.js +0 -3173
- package/dist/components/browser.esm.js.map +0 -1
- package/dist/components/bundle.esm.js +0 -2250
- package/dist/components/bundle.esm.js.map +0 -1
- package/dist/components/bundle.esm2.js +0 -39740
- package/dist/components/bundle.esm2.js.map +0 -1
- package/dist/components/config.js +0 -81
- package/dist/components/config.js.map +0 -1
- package/dist/components/controller.js +0 -7627
- package/dist/components/controller.js.map +0 -1
- package/dist/components/controller2.js +0 -124
- package/dist/components/controller2.js.map +0 -1
- package/dist/components/controller3.js +0 -111
- package/dist/components/controller3.js.map +0 -1
- package/dist/components/cursors.js +0 -110
- package/dist/components/cursors.js.map +0 -1
- package/dist/components/dom.js +0 -43
- package/dist/components/dom.js.map +0 -1
- package/dist/components/dom2.js +0 -10
- package/dist/components/dom2.js.map +0 -1
- package/dist/components/elementRectObserver.js +0 -25
- package/dist/components/elementRectObserver.js.map +0 -1
- package/dist/components/entities.js +0 -179
- package/dist/components/entities.js.map +0 -1
- package/dist/components/errors.js +0 -80
- package/dist/components/errors.js.map +0 -1
- package/dist/components/events.js +0 -11
- package/dist/components/events.js.map +0 -1
- package/dist/components/index.d.ts +0 -26
- package/dist/components/index.js +0 -365
- package/dist/components/index.js.map +0 -1
- package/dist/components/index2.js +0 -63
- package/dist/components/index2.js.map +0 -1
- package/dist/components/interactions.js +0 -236
- package/dist/components/interactions.js.map +0 -1
- package/dist/components/mapper.js +0 -9811
- package/dist/components/mapper.js.map +0 -1
- package/dist/components/markup.js +0 -33
- package/dist/components/markup.js.map +0 -1
- package/dist/components/model.js +0 -134
- package/dist/components/model.js.map +0 -1
- package/dist/components/model2.js +0 -157
- package/dist/components/model2.js.map +0 -1
- package/dist/components/overlays.js +0 -76
- package/dist/components/overlays.js.map +0 -1
- package/dist/components/png-decoder.js +0 -2405
- package/dist/components/png-decoder.js.map +0 -1
- package/dist/components/regl-component.js +0 -12582
- package/dist/components/regl-component.js.map +0 -1
- package/dist/components/results.js +0 -24
- package/dist/components/results.js.map +0 -1
- package/dist/components/row.js +0 -32
- package/dist/components/row.js.map +0 -1
- package/dist/components/scene-tree-search.js +0 -146
- package/dist/components/scene-tree-search.js.map +0 -1
- package/dist/components/scene-tree-table-layout.js +0 -928
- package/dist/components/scene-tree-table-layout.js.map +0 -1
- package/dist/components/scene-tree-toolbar.js +0 -35
- package/dist/components/scene-tree-toolbar.js.map +0 -1
- package/dist/components/scene.js +0 -1508
- package/dist/components/scene.js.map +0 -1
- package/dist/components/stencil.js +0 -25
- package/dist/components/stencil.js.map +0 -1
- package/dist/components/streamAttributes.js +0 -40833
- package/dist/components/streamAttributes.js.map +0 -1
- package/dist/components/templates.js +0 -36
- package/dist/components/templates.js.map +0 -1
- package/dist/components/tslib.es6.js +0 -125
- package/dist/components/tslib.es6.js.map +0 -1
- package/dist/components/vertex-scene-tree-search.d.ts +0 -11
- package/dist/components/vertex-scene-tree-search.js +0 -11
- package/dist/components/vertex-scene-tree-search.js.map +0 -1
- package/dist/components/vertex-scene-tree-table-cell.d.ts +0 -11
- package/dist/components/vertex-scene-tree-table-cell.js +0 -209
- package/dist/components/vertex-scene-tree-table-cell.js.map +0 -1
- package/dist/components/vertex-scene-tree-table-column.d.ts +0 -11
- package/dist/components/vertex-scene-tree-table-column.js +0 -42
- package/dist/components/vertex-scene-tree-table-column.js.map +0 -1
- package/dist/components/vertex-scene-tree-table-header.d.ts +0 -11
- package/dist/components/vertex-scene-tree-table-header.js +0 -38
- package/dist/components/vertex-scene-tree-table-header.js.map +0 -1
- package/dist/components/vertex-scene-tree-table-layout.d.ts +0 -11
- package/dist/components/vertex-scene-tree-table-layout.js +0 -11
- package/dist/components/vertex-scene-tree-table-layout.js.map +0 -1
- package/dist/components/vertex-scene-tree-table-resize-divider.d.ts +0 -11
- package/dist/components/vertex-scene-tree-table-resize-divider.js +0 -57
- package/dist/components/vertex-scene-tree-table-resize-divider.js.map +0 -1
- package/dist/components/vertex-scene-tree-toolbar-group.d.ts +0 -11
- package/dist/components/vertex-scene-tree-toolbar-group.js +0 -38
- package/dist/components/vertex-scene-tree-toolbar-group.js.map +0 -1
- package/dist/components/vertex-scene-tree-toolbar.d.ts +0 -11
- package/dist/components/vertex-scene-tree-toolbar.js +0 -11
- package/dist/components/vertex-scene-tree-toolbar.js.map +0 -1
- package/dist/components/vertex-scene-tree.d.ts +0 -11
- package/dist/components/vertex-scene-tree.js +0 -803
- package/dist/components/vertex-scene-tree.js.map +0 -1
- package/dist/components/vertex-viewer-box-query-tool.d.ts +0 -11
- package/dist/components/vertex-viewer-box-query-tool.js +0 -352
- package/dist/components/vertex-viewer-box-query-tool.js.map +0 -1
- package/dist/components/vertex-viewer-button.d.ts +0 -11
- package/dist/components/vertex-viewer-button.js +0 -11
- package/dist/components/vertex-viewer-button.js.map +0 -1
- package/dist/components/vertex-viewer-default-toolbar.d.ts +0 -11
- package/dist/components/vertex-viewer-default-toolbar.js +0 -99
- package/dist/components/vertex-viewer-default-toolbar.js.map +0 -1
- package/dist/components/vertex-viewer-dom-element.d.ts +0 -11
- package/dist/components/vertex-viewer-dom-element.js +0 -11
- package/dist/components/vertex-viewer-dom-element.js.map +0 -1
- package/dist/components/vertex-viewer-dom-group.d.ts +0 -11
- package/dist/components/vertex-viewer-dom-group.js +0 -11
- package/dist/components/vertex-viewer-dom-group.js.map +0 -1
- package/dist/components/vertex-viewer-dom-renderer.d.ts +0 -11
- package/dist/components/vertex-viewer-dom-renderer.js +0 -11
- package/dist/components/vertex-viewer-dom-renderer.js.map +0 -1
- package/dist/components/vertex-viewer-hit-result-indicator.d.ts +0 -11
- package/dist/components/vertex-viewer-hit-result-indicator.js +0 -335
- package/dist/components/vertex-viewer-hit-result-indicator.js.map +0 -1
- package/dist/components/vertex-viewer-icon.d.ts +0 -11
- package/dist/components/vertex-viewer-icon.js +0 -11
- package/dist/components/vertex-viewer-icon.js.map +0 -1
- package/dist/components/vertex-viewer-layer.d.ts +0 -11
- package/dist/components/vertex-viewer-layer.js +0 -11
- package/dist/components/vertex-viewer-layer.js.map +0 -1
- package/dist/components/vertex-viewer-markup-arrow.d.ts +0 -11
- package/dist/components/vertex-viewer-markup-arrow.js +0 -11
- package/dist/components/vertex-viewer-markup-arrow.js.map +0 -1
- package/dist/components/vertex-viewer-markup-circle.d.ts +0 -11
- package/dist/components/vertex-viewer-markup-circle.js +0 -11
- package/dist/components/vertex-viewer-markup-circle.js.map +0 -1
- package/dist/components/vertex-viewer-markup-freeform.d.ts +0 -11
- package/dist/components/vertex-viewer-markup-freeform.js +0 -11
- package/dist/components/vertex-viewer-markup-freeform.js.map +0 -1
- package/dist/components/vertex-viewer-markup-tool.d.ts +0 -11
- package/dist/components/vertex-viewer-markup-tool.js +0 -257
- package/dist/components/vertex-viewer-markup-tool.js.map +0 -1
- package/dist/components/vertex-viewer-markup.d.ts +0 -11
- package/dist/components/vertex-viewer-markup.js +0 -362
- package/dist/components/vertex-viewer-markup.js.map +0 -1
- package/dist/components/vertex-viewer-measurement-details.d.ts +0 -11
- package/dist/components/vertex-viewer-measurement-details.js +0 -307
- package/dist/components/vertex-viewer-measurement-details.js.map +0 -1
- package/dist/components/vertex-viewer-measurement-distance.d.ts +0 -11
- package/dist/components/vertex-viewer-measurement-distance.js +0 -1067
- package/dist/components/vertex-viewer-measurement-distance.js.map +0 -1
- package/dist/components/vertex-viewer-measurement-line.d.ts +0 -11
- package/dist/components/vertex-viewer-measurement-line.js +0 -11
- package/dist/components/vertex-viewer-measurement-line.js.map +0 -1
- package/dist/components/vertex-viewer-measurement-overlays.d.ts +0 -11
- package/dist/components/vertex-viewer-measurement-overlays.js +0 -11
- package/dist/components/vertex-viewer-measurement-overlays.js.map +0 -1
- package/dist/components/vertex-viewer-measurement-precise.d.ts +0 -11
- package/dist/components/vertex-viewer-measurement-precise.js +0 -362
- package/dist/components/vertex-viewer-measurement-precise.js.map +0 -1
- package/dist/components/vertex-viewer-pin-group.d.ts +0 -11
- package/dist/components/vertex-viewer-pin-group.js +0 -11
- package/dist/components/vertex-viewer-pin-group.js.map +0 -1
- package/dist/components/vertex-viewer-pin-label-line.d.ts +0 -11
- package/dist/components/vertex-viewer-pin-label-line.js +0 -11
- package/dist/components/vertex-viewer-pin-label-line.js.map +0 -1
- package/dist/components/vertex-viewer-pin-label.d.ts +0 -11
- package/dist/components/vertex-viewer-pin-label.js +0 -11
- package/dist/components/vertex-viewer-pin-label.js.map +0 -1
- package/dist/components/vertex-viewer-pin-tool.d.ts +0 -11
- package/dist/components/vertex-viewer-pin-tool.js +0 -430
- package/dist/components/vertex-viewer-pin-tool.js.map +0 -1
- package/dist/components/vertex-viewer-spinner.d.ts +0 -11
- package/dist/components/vertex-viewer-spinner.js +0 -11
- package/dist/components/vertex-viewer-spinner.js.map +0 -1
- package/dist/components/vertex-viewer-toolbar-group.d.ts +0 -11
- package/dist/components/vertex-viewer-toolbar-group.js +0 -11
- package/dist/components/vertex-viewer-toolbar-group.js.map +0 -1
- package/dist/components/vertex-viewer-toolbar.d.ts +0 -11
- package/dist/components/vertex-viewer-toolbar.js +0 -11
- package/dist/components/vertex-viewer-toolbar.js.map +0 -1
- package/dist/components/vertex-viewer-transform-widget.d.ts +0 -11
- package/dist/components/vertex-viewer-transform-widget.js +0 -838
- package/dist/components/vertex-viewer-transform-widget.js.map +0 -1
- package/dist/components/vertex-viewer-view-cube.d.ts +0 -11
- package/dist/components/vertex-viewer-view-cube.js +0 -270
- package/dist/components/vertex-viewer-view-cube.js.map +0 -1
- package/dist/components/vertex-viewer.d.ts +0 -11
- package/dist/components/vertex-viewer.js +0 -3543
- package/dist/components/vertex-viewer.js.map +0 -1
- package/dist/components/viewer-button.js +0 -35
- package/dist/components/viewer-button.js.map +0 -1
- package/dist/components/viewer-dom-element.js +0 -250
- package/dist/components/viewer-dom-element.js.map +0 -1
- package/dist/components/viewer-dom-group.js +0 -214
- package/dist/components/viewer-dom-group.js.map +0 -1
- package/dist/components/viewer-dom-renderer.js +0 -295
- package/dist/components/viewer-dom-renderer.js.map +0 -1
- package/dist/components/viewer-icon.js +0 -87
- package/dist/components/viewer-icon.js.map +0 -1
- package/dist/components/viewer-layer.js +0 -46
- package/dist/components/viewer-layer.js.map +0 -1
- package/dist/components/viewer-markup-arrow.js +0 -235
- package/dist/components/viewer-markup-arrow.js.map +0 -1
- package/dist/components/viewer-markup-circle-components.js +0 -42
- package/dist/components/viewer-markup-circle-components.js.map +0 -1
- package/dist/components/viewer-markup-circle.js +0 -201
- package/dist/components/viewer-markup-circle.js.map +0 -1
- package/dist/components/viewer-markup-freeform.js +0 -251
- package/dist/components/viewer-markup-freeform.js.map +0 -1
- package/dist/components/viewer-measurement-line.js +0 -77
- package/dist/components/viewer-measurement-line.js.map +0 -1
- package/dist/components/viewer-measurement-overlays.js +0 -184
- package/dist/components/viewer-measurement-overlays.js.map +0 -1
- package/dist/components/viewer-pin-group.js +0 -207
- package/dist/components/viewer-pin-group.js.map +0 -1
- package/dist/components/viewer-pin-label-line.js +0 -43
- package/dist/components/viewer-pin-label-line.js.map +0 -1
- package/dist/components/viewer-pin-label.js +0 -427
- package/dist/components/viewer-pin-label.js.map +0 -1
- package/dist/components/viewer-spinner.js +0 -53
- package/dist/components/viewer-spinner.js.map +0 -1
- package/dist/components/viewer-toolbar-group.js +0 -42
- package/dist/components/viewer-toolbar-group.js.map +0 -1
- package/dist/components/viewer-toolbar.js +0 -61
- package/dist/components/viewer-toolbar.js.map +0 -1
- package/dist/components/viewport.js +0 -188
- package/dist/components/viewport.js.map +0 -1
- package/dist/components/wrappers_pb.js +0 -1926
- package/dist/components/wrappers_pb.js.map +0 -1
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Components, JSX } from "../types/regl-shape";
|
|
2
|
-
|
|
3
|
-
interface VertexViewerLayer extends Components.VertexViewerLayer, HTMLElement {}
|
|
4
|
-
export const VertexViewerLayer: {
|
|
5
|
-
prototype: VertexViewerLayer;
|
|
6
|
-
new (): VertexViewerLayer;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Used to define this component and all nested components recursively.
|
|
10
|
-
*/
|
|
11
|
-
export const defineCustomElement: () => void;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2023 Vertex Software LLC. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { V as ViewerLayer, d as defineCustomElement$1 } from './viewer-layer.js';
|
|
5
|
-
|
|
6
|
-
const VertexViewerLayer = ViewerLayer;
|
|
7
|
-
const defineCustomElement = defineCustomElement$1;
|
|
8
|
-
|
|
9
|
-
export { VertexViewerLayer, defineCustomElement };
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=vertex-viewer-layer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"vertex-viewer-layer.js","mappings":";;;;;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Components, JSX } from "../types/regl-shape";
|
|
2
|
-
|
|
3
|
-
interface VertexViewerMarkupArrow extends Components.VertexViewerMarkupArrow, HTMLElement {}
|
|
4
|
-
export const VertexViewerMarkupArrow: {
|
|
5
|
-
prototype: VertexViewerMarkupArrow;
|
|
6
|
-
new (): VertexViewerMarkupArrow;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Used to define this component and all nested components recursively.
|
|
10
|
-
*/
|
|
11
|
-
export const defineCustomElement: () => void;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2023 Vertex Software LLC. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { V as ViewerMarkupArrow, d as defineCustomElement$1 } from './viewer-markup-arrow.js';
|
|
5
|
-
|
|
6
|
-
const VertexViewerMarkupArrow = ViewerMarkupArrow;
|
|
7
|
-
const defineCustomElement = defineCustomElement$1;
|
|
8
|
-
|
|
9
|
-
export { VertexViewerMarkupArrow, defineCustomElement };
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=vertex-viewer-markup-arrow.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"vertex-viewer-markup-arrow.js","mappings":";;;;;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Components, JSX } from "../types/regl-shape";
|
|
2
|
-
|
|
3
|
-
interface VertexViewerMarkupCircle extends Components.VertexViewerMarkupCircle, HTMLElement {}
|
|
4
|
-
export const VertexViewerMarkupCircle: {
|
|
5
|
-
prototype: VertexViewerMarkupCircle;
|
|
6
|
-
new (): VertexViewerMarkupCircle;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Used to define this component and all nested components recursively.
|
|
10
|
-
*/
|
|
11
|
-
export const defineCustomElement: () => void;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2023 Vertex Software LLC. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { V as ViewerMarkupCircle, d as defineCustomElement$1 } from './viewer-markup-circle.js';
|
|
5
|
-
|
|
6
|
-
const VertexViewerMarkupCircle = ViewerMarkupCircle;
|
|
7
|
-
const defineCustomElement = defineCustomElement$1;
|
|
8
|
-
|
|
9
|
-
export { VertexViewerMarkupCircle, defineCustomElement };
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=vertex-viewer-markup-circle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"vertex-viewer-markup-circle.js","mappings":";;;;;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Components, JSX } from "../types/regl-shape";
|
|
2
|
-
|
|
3
|
-
interface VertexViewerMarkupFreeform extends Components.VertexViewerMarkupFreeform, HTMLElement {}
|
|
4
|
-
export const VertexViewerMarkupFreeform: {
|
|
5
|
-
prototype: VertexViewerMarkupFreeform;
|
|
6
|
-
new (): VertexViewerMarkupFreeform;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Used to define this component and all nested components recursively.
|
|
10
|
-
*/
|
|
11
|
-
export const defineCustomElement: () => void;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2023 Vertex Software LLC. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { V as ViewerMarkupFreeform, d as defineCustomElement$1 } from './viewer-markup-freeform.js';
|
|
5
|
-
|
|
6
|
-
const VertexViewerMarkupFreeform = ViewerMarkupFreeform;
|
|
7
|
-
const defineCustomElement = defineCustomElement$1;
|
|
8
|
-
|
|
9
|
-
export { VertexViewerMarkupFreeform, defineCustomElement };
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=vertex-viewer-markup-freeform.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"vertex-viewer-markup-freeform.js","mappings":";;;;;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Components, JSX } from "../types/regl-shape";
|
|
2
|
-
|
|
3
|
-
interface VertexViewerMarkupTool extends Components.VertexViewerMarkupTool, HTMLElement {}
|
|
4
|
-
export const VertexViewerMarkupTool: {
|
|
5
|
-
prototype: VertexViewerMarkupTool;
|
|
6
|
-
new (): VertexViewerMarkupTool;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Used to define this component and all nested components recursively.
|
|
10
|
-
*/
|
|
11
|
-
export const defineCustomElement: () => void;
|
|
@@ -1,257 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) 2023 Vertex Software LLC. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
5
|
-
import { s as stampTemplateWithId } from './templates.js';
|
|
6
|
-
import { F as FreeformMarkup, C as CircleMarkup, A as ArrowMarkup } from './markup.js';
|
|
7
|
-
import { b as isVertexViewerFreeformMarkup, a as isVertexViewerCircleMarkup, i as isVertexViewerArrowMarkup } from './interactions.js';
|
|
8
|
-
import { d as defineCustomElement$4 } from './viewer-markup-arrow.js';
|
|
9
|
-
import { d as defineCustomElement$3 } from './viewer-markup-circle.js';
|
|
10
|
-
import { d as defineCustomElement$2 } from './viewer-markup-freeform.js';
|
|
11
|
-
|
|
12
|
-
const viewerMarkupToolCss = ":host{position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none}:host([elevated=\"\"]){z-index:100}";
|
|
13
|
-
|
|
14
|
-
const ViewerMarkupTool = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
15
|
-
constructor() {
|
|
16
|
-
super();
|
|
17
|
-
this.__registerHost();
|
|
18
|
-
this.__attachShadow();
|
|
19
|
-
this.markupBegin = createEvent(this, "markupBegin", 7);
|
|
20
|
-
this.markupEnd = createEvent(this, "markupEnd", 7);
|
|
21
|
-
/**
|
|
22
|
-
* The type of markup.
|
|
23
|
-
*
|
|
24
|
-
* This property will automatically be set when a child of a
|
|
25
|
-
* `<vertex-viewer-markup>` element.
|
|
26
|
-
*/
|
|
27
|
-
this.tool = 'arrow';
|
|
28
|
-
/**
|
|
29
|
-
* Disables markups.
|
|
30
|
-
*
|
|
31
|
-
* This property will automatically be set when a child of a
|
|
32
|
-
* `<vertex-viewer-markup>` element.
|
|
33
|
-
*/
|
|
34
|
-
this.disabled = false;
|
|
35
|
-
/**
|
|
36
|
-
* Captures internal state that you want to preserve across dev refreshes, but
|
|
37
|
-
* don't want to trigger a render when the state changes.
|
|
38
|
-
*/
|
|
39
|
-
this.stateMap = {};
|
|
40
|
-
this.handleMarkupEditBegin = () => {
|
|
41
|
-
this.markupBegin.emit();
|
|
42
|
-
};
|
|
43
|
-
this.handleMarkupEditEnd = () => {
|
|
44
|
-
const { markupElement } = this.stateMap;
|
|
45
|
-
if (isVertexViewerFreeformMarkup(markupElement)) {
|
|
46
|
-
const { points, bounds } = markupElement;
|
|
47
|
-
if (points != null && points.length > 0 && bounds != null) {
|
|
48
|
-
this.markupEnd.emit(new FreeformMarkup({ points, bounds }));
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
else if (isVertexViewerCircleMarkup(markupElement)) {
|
|
52
|
-
const { bounds } = markupElement;
|
|
53
|
-
if (bounds != null) {
|
|
54
|
-
this.markupEnd.emit(new CircleMarkup({ bounds }));
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
else if (isVertexViewerArrowMarkup(markupElement)) {
|
|
58
|
-
const { start, end } = markupElement;
|
|
59
|
-
if (start != null && end != null) {
|
|
60
|
-
this.markupEnd.emit(new ArrowMarkup({ start, end }));
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
async handleViewerChanged() {
|
|
66
|
-
if (this.stateMap.markupElement != null) {
|
|
67
|
-
this.stateMap.markupElement.viewer = this.viewer;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* @ignore
|
|
72
|
-
*/
|
|
73
|
-
handleToolChanged() {
|
|
74
|
-
this.updateMarkupElement();
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* @ignore
|
|
78
|
-
*/
|
|
79
|
-
handleArrowTemplateIdChanged() {
|
|
80
|
-
this.updateMarkupElement();
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* @ignore
|
|
84
|
-
*/
|
|
85
|
-
handleCircleTemplateIdChanged() {
|
|
86
|
-
this.updateMarkupElement();
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* @ignore
|
|
90
|
-
*/
|
|
91
|
-
handleFreeformTemplateIdChanged() {
|
|
92
|
-
this.updateMarkupElement();
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* @ignore
|
|
96
|
-
*/
|
|
97
|
-
handleDisabledChanged() {
|
|
98
|
-
this.updateMarkupElement();
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* @ignore
|
|
102
|
-
*/
|
|
103
|
-
componentDidLoad() {
|
|
104
|
-
this.updateMarkupElement();
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Resets the state of the internally managed markup element
|
|
108
|
-
* to allow for creating a new markup. This state is automatically
|
|
109
|
-
* managed when this element is placed as a child of a
|
|
110
|
-
* `<vertex-viewer-markup>` element.
|
|
111
|
-
*/
|
|
112
|
-
async reset() {
|
|
113
|
-
const { markupElement } = this.stateMap;
|
|
114
|
-
if (isVertexViewerFreeformMarkup(markupElement)) {
|
|
115
|
-
markupElement.points = undefined;
|
|
116
|
-
markupElement.bounds = undefined;
|
|
117
|
-
markupElement.mode = 'create';
|
|
118
|
-
}
|
|
119
|
-
else if (isVertexViewerCircleMarkup(markupElement)) {
|
|
120
|
-
markupElement.bounds = undefined;
|
|
121
|
-
markupElement.mode = 'create';
|
|
122
|
-
}
|
|
123
|
-
else if (isVertexViewerArrowMarkup(markupElement)) {
|
|
124
|
-
markupElement.start = undefined;
|
|
125
|
-
markupElement.end = undefined;
|
|
126
|
-
markupElement.mode = 'create';
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* @ignore
|
|
131
|
-
*/
|
|
132
|
-
render() {
|
|
133
|
-
if (!this.disabled) {
|
|
134
|
-
if (this.tool === 'arrow' ||
|
|
135
|
-
this.tool === 'circle' ||
|
|
136
|
-
this.tool === 'freeform') {
|
|
137
|
-
return (h(Host, null, h("slot", null)));
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
return h(Host, null, `Unsupported tool type '${this.tool}'.`);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
else {
|
|
144
|
-
return h(Host, null);
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
createArrowMarkupElement() {
|
|
148
|
-
if (this.arrowTemplateId != null) {
|
|
149
|
-
const element = stampTemplateWithId(window.document.body, this.arrowTemplateId, isVertexViewerArrowMarkup, () => console.warn(`Arrow template with ID ${this.arrowTemplateId} not found. Using default arrow element.`), () => console.warn(`Arrow template does not contain a vertex-viewer-markup-arrow. Using default arrow element.`));
|
|
150
|
-
if (element != null) {
|
|
151
|
-
return element;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
return document.createElement('vertex-viewer-markup-arrow');
|
|
155
|
-
}
|
|
156
|
-
createCircleMarkupElement() {
|
|
157
|
-
if (this.circleTemplateId != null) {
|
|
158
|
-
const element = stampTemplateWithId(window.document.body, this.circleTemplateId, isVertexViewerCircleMarkup, () => console.warn(`Circle template with ID ${this.circleTemplateId} not found. Using default circle element.`), () => console.warn(`Circle template does not contain a vertex-viewer-markup-circle. Using default circle element.`));
|
|
159
|
-
if (element != null) {
|
|
160
|
-
return element;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
return document.createElement('vertex-viewer-markup-circle');
|
|
164
|
-
}
|
|
165
|
-
createFreeformMarkupElement() {
|
|
166
|
-
if (this.freeformTemplateId != null) {
|
|
167
|
-
const element = stampTemplateWithId(window.document.body, this.freeformTemplateId, isVertexViewerFreeformMarkup, () => console.warn(`Freeform template with ID ${this.freeformTemplateId} not found. Using default freeform element.`), () => console.warn(`Freeform template does not contain a vertex-viewer-markup-freeform. Using default freeform element.`));
|
|
168
|
-
if (element != null) {
|
|
169
|
-
return element;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
return document.createElement('vertex-viewer-markup-freeform');
|
|
173
|
-
}
|
|
174
|
-
createNewMarkupElement() {
|
|
175
|
-
switch (this.tool) {
|
|
176
|
-
case 'arrow':
|
|
177
|
-
return this.createArrowMarkupElement();
|
|
178
|
-
case 'circle':
|
|
179
|
-
return this.createCircleMarkupElement();
|
|
180
|
-
case 'freeform':
|
|
181
|
-
return this.createFreeformMarkupElement();
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
updateMarkupElement() {
|
|
185
|
-
const { markupElement } = this.stateMap;
|
|
186
|
-
if (markupElement != null) {
|
|
187
|
-
markupElement.remove();
|
|
188
|
-
markupElement.dispose();
|
|
189
|
-
markupElement.viewer = undefined;
|
|
190
|
-
markupElement.removeEventListener('editBegin', this.handleMarkupEditBegin);
|
|
191
|
-
markupElement.removeEventListener('editEnd', this.handleMarkupEditEnd);
|
|
192
|
-
}
|
|
193
|
-
if (!this.disabled) {
|
|
194
|
-
const newMarkupElement = this.createNewMarkupElement();
|
|
195
|
-
newMarkupElement.mode = 'create';
|
|
196
|
-
newMarkupElement.viewer = this.viewer;
|
|
197
|
-
newMarkupElement.addEventListener('editBegin', this.handleMarkupEditBegin);
|
|
198
|
-
newMarkupElement.addEventListener('editEnd', this.handleMarkupEditEnd);
|
|
199
|
-
this.stateMap.markupElement = newMarkupElement;
|
|
200
|
-
this.hostEl.append(newMarkupElement);
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
get hostEl() { return this; }
|
|
204
|
-
static get watchers() { return {
|
|
205
|
-
"viewer": ["handleViewerChanged"],
|
|
206
|
-
"tool": ["handleToolChanged"],
|
|
207
|
-
"arrowTemplateId": ["handleArrowTemplateIdChanged"],
|
|
208
|
-
"circleTemplateId": ["handleCircleTemplateIdChanged"],
|
|
209
|
-
"freeformTemplateId": ["handleFreeformTemplateIdChanged"],
|
|
210
|
-
"disabled": ["handleDisabledChanged"]
|
|
211
|
-
}; }
|
|
212
|
-
static get style() { return viewerMarkupToolCss; }
|
|
213
|
-
}, [1, "vertex-viewer-markup-tool", {
|
|
214
|
-
"arrowTemplateId": [1, "arrow-template-id"],
|
|
215
|
-
"circleTemplateId": [1, "circle-template-id"],
|
|
216
|
-
"freeformTemplateId": [1, "freeform-template-id"],
|
|
217
|
-
"tool": [1],
|
|
218
|
-
"disabled": [4],
|
|
219
|
-
"viewer": [16],
|
|
220
|
-
"stateMap": [32],
|
|
221
|
-
"reset": [64]
|
|
222
|
-
}]);
|
|
223
|
-
function defineCustomElement$1() {
|
|
224
|
-
if (typeof customElements === "undefined") {
|
|
225
|
-
return;
|
|
226
|
-
}
|
|
227
|
-
const components = ["vertex-viewer-markup-tool", "vertex-viewer-markup-arrow", "vertex-viewer-markup-circle", "vertex-viewer-markup-freeform"];
|
|
228
|
-
components.forEach(tagName => { switch (tagName) {
|
|
229
|
-
case "vertex-viewer-markup-tool":
|
|
230
|
-
if (!customElements.get(tagName)) {
|
|
231
|
-
customElements.define(tagName, ViewerMarkupTool);
|
|
232
|
-
}
|
|
233
|
-
break;
|
|
234
|
-
case "vertex-viewer-markup-arrow":
|
|
235
|
-
if (!customElements.get(tagName)) {
|
|
236
|
-
defineCustomElement$4();
|
|
237
|
-
}
|
|
238
|
-
break;
|
|
239
|
-
case "vertex-viewer-markup-circle":
|
|
240
|
-
if (!customElements.get(tagName)) {
|
|
241
|
-
defineCustomElement$3();
|
|
242
|
-
}
|
|
243
|
-
break;
|
|
244
|
-
case "vertex-viewer-markup-freeform":
|
|
245
|
-
if (!customElements.get(tagName)) {
|
|
246
|
-
defineCustomElement$2();
|
|
247
|
-
}
|
|
248
|
-
break;
|
|
249
|
-
} });
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
const VertexViewerMarkupTool = ViewerMarkupTool;
|
|
253
|
-
const defineCustomElement = defineCustomElement$1;
|
|
254
|
-
|
|
255
|
-
export { VertexViewerMarkupTool, defineCustomElement };
|
|
256
|
-
|
|
257
|
-
//# sourceMappingURL=vertex-viewer-markup-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"vertex-viewer-markup-tool.js","mappings":"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","names":[],"sources":["./src/components/viewer-markup-tool/viewer-markup-tool.css?tag=vertex-viewer-markup-tool&encapsulation=shadow","./src/components/viewer-markup-tool/viewer-markup-tool.tsx"],"sourcesContent":[":host {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n}\n\n:host([elevated=\"\"]) {\n z-index: 100;\n}","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\nimport { stampTemplateWithId } from '../../lib/templates';\nimport {\n ArrowMarkup,\n CircleMarkup,\n FreeformMarkup,\n Markup,\n} from '../../lib/types/markup';\nimport { isVertexViewerArrowMarkup } from '../viewer-markup-arrow/utils';\nimport { isVertexViewerCircleMarkup } from '../viewer-markup-circle/utils';\nimport { isVertexViewerFreeformMarkup } from '../viewer-markup-freeform/utils';\n\n/**\n * The types of markup that can be performed by this tool.\n */\nexport type ViewerMarkupToolType = 'arrow' | 'circle' | 'freeform';\n\ninterface StateMap {\n markupElement?:\n | HTMLVertexViewerMarkupArrowElement\n | HTMLVertexViewerMarkupCircleElement\n | HTMLVertexViewerMarkupFreeformElement;\n}\n\n@Component({\n tag: 'vertex-viewer-markup-tool',\n styleUrl: 'viewer-markup-tool.css',\n shadow: true,\n})\nexport class ViewerMarkupTool {\n /**\n * An HTML template that describes the HTML to use for new arrow\n * markup. It's expected that the template contains a\n * `<vertex-viewer-markup-arrow>`.\n */\n @Prop()\n public arrowTemplateId?: string;\n\n /**\n * An HTML template that describes the HTML to use for new circle\n * markup. It's expected that the template contains a\n * `<vertex-viewer-markup-circle>`.\n */\n @Prop()\n public circleTemplateId?: string;\n\n /**\n * An HTML template that describes the HTML to use for new freeform\n * markup. It's expected that the template contains a\n * `<vertex-viewer-markup-freeform>`.\n */\n @Prop()\n public freeformTemplateId?: string;\n\n /**\n * The type of markup.\n *\n * This property will automatically be set when a child of a\n * `<vertex-viewer-markup>` element.\n */\n @Prop()\n public tool: ViewerMarkupToolType = 'arrow';\n\n /**\n * Disables markups.\n *\n * This property will automatically be set when a child of a\n * `<vertex-viewer-markup>` element.\n */\n @Prop()\n public disabled = false;\n\n /**\n * The viewer to connect to markup.\n *\n * This property will automatically be set when a child of a\n * `<vertex-viewer-markup>` or `<vertex-viewer>` element.\n */\n @Prop()\n public viewer?: HTMLVertexViewerElement;\n\n /**\n * An event that is dispatched when a user begins a new markup.\n */\n @Event({ bubbles: true })\n public markupBegin!: EventEmitter<void>;\n\n /**\n * An event that is dispatched when a user has finished their markup.\n */\n @Event({ bubbles: true })\n public markupEnd!: EventEmitter<Markup>;\n\n @Element()\n private hostEl!: HTMLElement;\n\n /**\n * Captures internal state that you want to preserve across dev refreshes, but\n * don't want to trigger a render when the state changes.\n */\n @State()\n private stateMap: StateMap = {};\n\n @Watch('viewer')\n protected async handleViewerChanged(): Promise<void> {\n if (this.stateMap.markupElement != null) {\n this.stateMap.markupElement.viewer = this.viewer;\n }\n }\n\n /**\n * @ignore\n */\n @Watch('tool')\n protected handleToolChanged(): void {\n this.updateMarkupElement();\n }\n\n /**\n * @ignore\n */\n @Watch('arrowTemplateId')\n protected handleArrowTemplateIdChanged(): void {\n this.updateMarkupElement();\n }\n\n /**\n * @ignore\n */\n @Watch('circleTemplateId')\n protected handleCircleTemplateIdChanged(): void {\n this.updateMarkupElement();\n }\n\n /**\n * @ignore\n */\n @Watch('freeformTemplateId')\n protected handleFreeformTemplateIdChanged(): void {\n this.updateMarkupElement();\n }\n\n /**\n * @ignore\n */\n @Watch('disabled')\n protected handleDisabledChanged(): void {\n this.updateMarkupElement();\n }\n\n /**\n * @ignore\n */\n protected componentDidLoad(): void {\n this.updateMarkupElement();\n }\n\n /**\n * Resets the state of the internally managed markup element\n * to allow for creating a new markup. This state is automatically\n * managed when this element is placed as a child of a\n * `<vertex-viewer-markup>` element.\n */\n @Method()\n public async reset(): Promise<void> {\n const { markupElement } = this.stateMap;\n if (isVertexViewerFreeformMarkup(markupElement)) {\n markupElement.points = undefined;\n markupElement.bounds = undefined;\n markupElement.mode = 'create';\n } else if (isVertexViewerCircleMarkup(markupElement)) {\n markupElement.bounds = undefined;\n markupElement.mode = 'create';\n } else if (isVertexViewerArrowMarkup(markupElement)) {\n markupElement.start = undefined;\n markupElement.end = undefined;\n markupElement.mode = 'create';\n }\n }\n\n /**\n * @ignore\n */\n protected render(): h.JSX.IntrinsicElements {\n if (!this.disabled) {\n if (\n this.tool === 'arrow' ||\n this.tool === 'circle' ||\n this.tool === 'freeform'\n ) {\n return (\n <Host>\n <slot />\n </Host>\n );\n } else {\n return <Host>{`Unsupported tool type '${this.tool}'.`}</Host>;\n }\n } else {\n return <Host></Host>;\n }\n }\n\n private createArrowMarkupElement(): HTMLVertexViewerMarkupArrowElement {\n if (this.arrowTemplateId != null) {\n const element = stampTemplateWithId(\n window.document.body,\n this.arrowTemplateId,\n isVertexViewerArrowMarkup,\n () =>\n console.warn(\n `Arrow template with ID ${this.arrowTemplateId} not found. Using default arrow element.`\n ),\n () =>\n console.warn(\n `Arrow template does not contain a vertex-viewer-markup-arrow. Using default arrow element.`\n )\n );\n\n if (element != null) {\n return element;\n }\n }\n\n return document.createElement('vertex-viewer-markup-arrow');\n }\n\n private createCircleMarkupElement(): HTMLVertexViewerMarkupCircleElement {\n if (this.circleTemplateId != null) {\n const element = stampTemplateWithId(\n window.document.body,\n this.circleTemplateId,\n isVertexViewerCircleMarkup,\n () =>\n console.warn(\n `Circle template with ID ${this.circleTemplateId} not found. Using default circle element.`\n ),\n () =>\n console.warn(\n `Circle template does not contain a vertex-viewer-markup-circle. Using default circle element.`\n )\n );\n\n if (element != null) {\n return element;\n }\n }\n\n return document.createElement('vertex-viewer-markup-circle');\n }\n\n private createFreeformMarkupElement(): HTMLVertexViewerMarkupFreeformElement {\n if (this.freeformTemplateId != null) {\n const element = stampTemplateWithId(\n window.document.body,\n this.freeformTemplateId,\n isVertexViewerFreeformMarkup,\n () =>\n console.warn(\n `Freeform template with ID ${this.freeformTemplateId} not found. Using default freeform element.`\n ),\n () =>\n console.warn(\n `Freeform template does not contain a vertex-viewer-markup-freeform. Using default freeform element.`\n )\n );\n\n if (element != null) {\n return element;\n }\n }\n\n return document.createElement('vertex-viewer-markup-freeform');\n }\n\n private createNewMarkupElement():\n | HTMLVertexViewerMarkupArrowElement\n | HTMLVertexViewerMarkupCircleElement\n | HTMLVertexViewerMarkupFreeformElement {\n switch (this.tool) {\n case 'arrow':\n return this.createArrowMarkupElement();\n case 'circle':\n return this.createCircleMarkupElement();\n case 'freeform':\n return this.createFreeformMarkupElement();\n }\n }\n\n private updateMarkupElement(): void {\n const { markupElement } = this.stateMap;\n if (markupElement != null) {\n markupElement.remove();\n markupElement.dispose();\n markupElement.viewer = undefined;\n markupElement.removeEventListener(\n 'editBegin',\n this.handleMarkupEditBegin\n );\n markupElement.removeEventListener('editEnd', this.handleMarkupEditEnd);\n }\n\n if (!this.disabled) {\n const newMarkupElement = this.createNewMarkupElement();\n newMarkupElement.mode = 'create';\n newMarkupElement.viewer = this.viewer;\n newMarkupElement.addEventListener(\n 'editBegin',\n this.handleMarkupEditBegin\n );\n newMarkupElement.addEventListener('editEnd', this.handleMarkupEditEnd);\n this.stateMap.markupElement = newMarkupElement;\n this.hostEl.append(newMarkupElement);\n }\n }\n\n private handleMarkupEditBegin = (): void => {\n this.markupBegin.emit();\n };\n\n private handleMarkupEditEnd = (): void => {\n const { markupElement } = this.stateMap;\n if (isVertexViewerFreeformMarkup(markupElement)) {\n const { points, bounds } = markupElement;\n\n if (points != null && points.length > 0 && bounds != null) {\n this.markupEnd.emit(new FreeformMarkup({ points, bounds }));\n }\n } else if (isVertexViewerCircleMarkup(markupElement)) {\n const { bounds } = markupElement;\n\n if (bounds != null) {\n this.markupEnd.emit(new CircleMarkup({ bounds }));\n }\n } else if (isVertexViewerArrowMarkup(markupElement)) {\n const { start, end } = markupElement;\n\n if (start != null && end != null) {\n this.markupEnd.emit(new ArrowMarkup({ start, end }));\n }\n }\n };\n}\n"],"version":3}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Components, JSX } from "../types/regl-shape";
|
|
2
|
-
|
|
3
|
-
interface VertexViewerMarkup extends Components.VertexViewerMarkup, HTMLElement {}
|
|
4
|
-
export const VertexViewerMarkup: {
|
|
5
|
-
prototype: VertexViewerMarkup;
|
|
6
|
-
new (): VertexViewerMarkup;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Used to define this component and all nested components recursively.
|
|
10
|
-
*/
|
|
11
|
-
export const defineCustomElement: () => void;
|