@vertexvis/viewer 0.15.2-testing.1 → 0.15.2-testing.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/dist/cjs/{config-4a86ae0b.js → config-6e330a82.js} +1 -1
  2. package/dist/cjs/{entities-496b61cd.js → entities-7b2e8c03.js} +2 -2
  3. package/dist/cjs/index.cjs.js +4 -4
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{mapper-216603b0.js → mapper-0f2294a6.js} +1 -1
  6. package/dist/cjs/{scene-cb169b09.js → scene-56438693.js} +1 -25
  7. package/dist/cjs/{streamAttributes-7725f5c4.js → streamAttributes-c64aee75.js} +4 -976
  8. package/dist/cjs/vertex-scene-tree.cjs.entry.js +2 -2
  9. package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +1 -1
  10. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +11 -1
  11. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +1 -1
  12. package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +2 -2
  13. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +2 -2
  14. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +4 -4
  15. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +2 -2
  16. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +1 -1
  17. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +1 -1
  18. package/dist/cjs/vertex-viewer.cjs.entry.js +3 -3
  19. package/dist/cjs/viewer.cjs.js +1 -1
  20. package/dist/collection/collection-manifest.json +0 -1
  21. package/dist/collection/components/viewer-markup/viewer-markup.js +36 -2
  22. package/dist/collection/lib/scenes/mapper.js +1 -11
  23. package/dist/collection/lib/scenes/queries.js +1 -15
  24. package/dist/custom-elements/index.d.ts +0 -6
  25. package/dist/custom-elements/index.js +16 -1175
  26. package/dist/esm/{config-6cdeb6ca.js → config-49688db8.js} +1 -1
  27. package/dist/esm/{entities-6f3c5437.js → entities-a5bfef48.js} +2 -2
  28. package/dist/esm/index.js +4 -4
  29. package/dist/esm/index.mjs +4 -4
  30. package/dist/esm/loader.js +1 -1
  31. package/dist/esm/loader.mjs +1 -1
  32. package/dist/esm/{mapper-941ff03c.js → mapper-5894c2a4.js} +1 -1
  33. package/dist/esm/{scene-6f98b0dd.js → scene-5b919078.js} +1 -25
  34. package/dist/esm/{streamAttributes-24bd7b3a.js → streamAttributes-7e8565be.js} +4 -976
  35. package/dist/esm/vertex-scene-tree.entry.js +2 -2
  36. package/dist/esm/vertex-viewer-dom-element_2.entry.js +1 -1
  37. package/dist/esm/vertex-viewer-markup.entry.js +11 -1
  38. package/dist/esm/vertex-viewer-measurement-details.entry.js +1 -1
  39. package/dist/esm/vertex-viewer-measurement-distance.entry.js +2 -2
  40. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +2 -2
  41. package/dist/esm/vertex-viewer-measurement-precise.entry.js +4 -4
  42. package/dist/esm/vertex-viewer-pin-group.entry.js +2 -2
  43. package/dist/esm/vertex-viewer-transform-widget.entry.js +1 -1
  44. package/dist/esm/vertex-viewer-view-cube.entry.js +1 -1
  45. package/dist/esm/vertex-viewer.entry.js +3 -3
  46. package/dist/esm/viewer.js +1 -1
  47. package/dist/types/components/viewer-markup/viewer-markup.d.ts +6 -0
  48. package/dist/types/components.d.ts +7 -24
  49. package/dist/types/lib/scenes/queries.d.ts +2 -12
  50. package/dist/viewer/index.esm.js +1 -1
  51. package/dist/viewer/{p-cea5d8bd.js → p-1e0dd2e9.js} +1 -1
  52. package/dist/viewer/{p-52ab9ec0.js → p-1fc24ec6.js} +1 -1
  53. package/dist/viewer/{p-a5f18e7b.entry.js → p-22ae6785.entry.js} +1 -1
  54. package/dist/viewer/p-31b87b90.js +4 -0
  55. package/dist/viewer/{p-24cda14a.entry.js → p-3f6f2457.entry.js} +1 -1
  56. package/dist/viewer/{p-9e1384c9.js → p-40a9dd7d.js} +1 -1
  57. package/dist/viewer/{p-608925c5.entry.js → p-61e50e11.entry.js} +1 -1
  58. package/dist/viewer/{p-74c772bb.entry.js → p-7579e2a1.entry.js} +1 -1
  59. package/dist/viewer/{p-bfacbaa8.entry.js → p-920c9a88.entry.js} +1 -1
  60. package/dist/viewer/{p-597cc9b5.js → p-927b528b.js} +1 -1
  61. package/dist/viewer/{p-1bba9ade.entry.js → p-a6558bb2.entry.js} +1 -1
  62. package/dist/viewer/{p-2b58afc3.entry.js → p-b7e170ac.entry.js} +1 -1
  63. package/dist/viewer/{p-69a3fce8.entry.js → p-d34ad2b2.entry.js} +1 -1
  64. package/dist/viewer/{p-a107b65e.entry.js → p-d64c1e14.entry.js} +2 -2
  65. package/dist/viewer/p-e422deaf.entry.js +4 -0
  66. package/dist/viewer/{p-c72da0fb.entry.js → p-f3ea0c2b.entry.js} +1 -1
  67. package/dist/viewer/viewer.esm.js +1 -1
  68. package/package.json +8 -8
  69. package/dist/cjs/vertex-viewer-drag-select.cjs.entry.js +0 -183
  70. package/dist/collection/components/viewer-drag-select/controller.js +0 -19
  71. package/dist/collection/components/viewer-drag-select/interaction-handler.js +0 -41
  72. package/dist/collection/components/viewer-drag-select/model.js +0 -49
  73. package/dist/collection/components/viewer-drag-select/viewer-drag-select.css +0 -36
  74. package/dist/collection/components/viewer-drag-select/viewer-drag-select.js +0 -120
  75. package/dist/esm/vertex-viewer-drag-select.entry.js +0 -179
  76. package/dist/types/components/viewer-drag-select/controller.d.ts +0 -9
  77. package/dist/types/components/viewer-drag-select/interaction-handler.d.ts +0 -15
  78. package/dist/types/components/viewer-drag-select/model.d.ts +0 -25
  79. package/dist/types/components/viewer-drag-select/viewer-drag-select.d.ts +0 -28
  80. package/dist/viewer/p-68e192b9.js +0 -4
  81. package/dist/viewer/p-7762c40a.entry.js +0 -4
  82. package/dist/viewer/p-fee62661.entry.js +0 -4
@@ -1,36 +0,0 @@
1
- :host {
2
- --viewer-drag-select-outline-exclusive-border-color: #5555ff;
3
- --viewer-drag-select-outline-exclusive-border-style: solid;
4
- --viewer-drag-select-outline-exclusive-fill-color: blue;
5
- --viewer-drag-select-outline-inclusive-border-color: #ff5555;
6
- --viewer-drag-select-outline-inclusive-border-style: dashed;
7
- --viewer-drag-select-outline-inclusive-fill-color: red;
8
- --viewer-drag-select-outline-fill-opacity: 0.1;
9
- }
10
-
11
- .outline {
12
- position: absolute;
13
- }
14
-
15
- .outline.exclusive {
16
- border: 3px var(--viewer-drag-select-outline-exclusive-border-style) var(--viewer-drag-select-outline-exclusive-border-color);
17
- }
18
-
19
- .outline.inclusive {
20
- border: 3px var(--viewer-drag-select-outline-inclusive-border-style) var(--viewer-drag-select-outline-inclusive-border-color);
21
- }
22
-
23
- .fill {
24
- position: relative;
25
- width: 100%;
26
- height: 100%;
27
- opacity: var(--viewer-drag-select-outline-fill-opacity);
28
- }
29
-
30
- .fill.exclusive {
31
- background-color: var(--viewer-drag-select-outline-exclusive-fill-color);
32
- }
33
-
34
- .fill.inclusive {
35
- background-color: var(--viewer-drag-select-outline-inclusive-fill-color);
36
- }
@@ -1,120 +0,0 @@
1
- import { Component, h, Host, Prop, State, Watch } from '@stencil/core';
2
- import classNames from 'classnames';
3
- import { ViewerDragSelectController } from './controller';
4
- import { ViewerDragSelectInteractionHandler } from './interaction-handler';
5
- import { ViewerDragSelectModel, } from './model';
6
- export class ViewerDragSelect {
7
- constructor() {
8
- this.handleBoundsChanged = this.handleBoundsChanged.bind(this);
9
- }
10
- componentWillLoad() {
11
- this.interactionModel = new ViewerDragSelectModel();
12
- this.interactionModel.onBoundsChanged(this.handleBoundsChanged);
13
- this.handleViewerChanged(this.viewer);
14
- }
15
- disconnectedCallback() {
16
- var _a, _b;
17
- (_a = this.controller) === null || _a === void 0 ? void 0 : _a.dispose();
18
- (_b = this.interactionHandler) === null || _b === void 0 ? void 0 : _b.dispose();
19
- }
20
- /**
21
- * @ignore
22
- */
23
- handleViewerChanged(newViewer) {
24
- this.deregisterInteractionHandler();
25
- if ((newViewer === null || newViewer === void 0 ? void 0 : newViewer.stream) != null) {
26
- this.registerInteractionHandler(newViewer);
27
- this.controller = new ViewerDragSelectController(newViewer, this.interactionModel);
28
- }
29
- }
30
- /**
31
- * @ignore
32
- */
33
- render() {
34
- return (h(Host, null,
35
- h("vertex-viewer-layer", null, this.dragRect != null && (h("div", { class: classNames('outline', {
36
- exclusive: this.dragDirection === 'right',
37
- inclusive: this.dragDirection === 'left',
38
- }), style: {
39
- left: `${this.dragRect.x}px`,
40
- top: `${this.dragRect.y}px`,
41
- width: `${this.dragRect.width}px`,
42
- height: `${this.dragRect.height}px`,
43
- } },
44
- h("div", { class: classNames('fill', {
45
- exclusive: this.dragDirection === 'right',
46
- inclusive: this.dragDirection === 'left',
47
- }) }))))));
48
- }
49
- handleBoundsChanged(event) {
50
- this.dragRect = event.rectangle;
51
- this.dragDirection = event.direction;
52
- }
53
- registerInteractionHandler(viewer) {
54
- this.interactionHandler = new ViewerDragSelectInteractionHandler(viewer, this.interactionModel);
55
- viewer.registerInteractionHandler(this.interactionHandler);
56
- }
57
- deregisterInteractionHandler() {
58
- var _a;
59
- (_a = this.interactionHandler) === null || _a === void 0 ? void 0 : _a.dispose();
60
- this.interactionHandler = undefined;
61
- }
62
- static get is() { return "vertex-viewer-drag-select"; }
63
- static get encapsulation() { return "shadow"; }
64
- static get originalStyleUrls() { return {
65
- "$": ["viewer-drag-select.css"]
66
- }; }
67
- static get styleUrls() { return {
68
- "$": ["viewer-drag-select.css"]
69
- }; }
70
- static get properties() { return {
71
- "viewer": {
72
- "type": "unknown",
73
- "mutable": false,
74
- "complexType": {
75
- "original": "HTMLVertexViewerElement",
76
- "resolved": "HTMLVertexViewerElement | undefined",
77
- "references": {
78
- "HTMLVertexViewerElement": {
79
- "location": "global"
80
- }
81
- }
82
- },
83
- "required": false,
84
- "optional": true,
85
- "docs": {
86
- "tags": [],
87
- "text": "The viewer that this component is bound to. This is automatically assigned\nif added to the light-dom of a parent viewer element."
88
- }
89
- },
90
- "controller": {
91
- "type": "unknown",
92
- "mutable": false,
93
- "complexType": {
94
- "original": "ViewerDragSelectController",
95
- "resolved": "ViewerDragSelectController | undefined",
96
- "references": {
97
- "ViewerDragSelectController": {
98
- "location": "import",
99
- "path": "./controller"
100
- }
101
- }
102
- },
103
- "required": false,
104
- "optional": true,
105
- "docs": {
106
- "tags": [],
107
- "text": ""
108
- }
109
- }
110
- }; }
111
- static get states() { return {
112
- "dragRect": {},
113
- "dragDirection": {}
114
- }; }
115
- static get watchers() { return [{
116
- "propName": "viewer",
117
- "methodName": "handleViewerChanged"
118
- }]; }
119
- }
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLWRyYWctc2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld2VyLWRyYWctc2VsZWN0L3ZpZXdlci1kcmFnLXNlbGVjdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sVUFBVSxNQUFNLFlBQVksQ0FBQztBQUVwQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0UsT0FBTyxFQUdMLHFCQUFxQixHQUN0QixNQUFNLFNBQVMsQ0FBQztBQU9qQixNQUFNLE9BQU8sZ0JBQWdCO0VBb0IzQjtJQUNFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0VBQ2pFLENBQUM7RUFFTSxpQkFBaUI7SUFDdEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUkscUJBQXFCLEVBQUUsQ0FBQztJQUVwRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBRWhFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7RUFDeEMsQ0FBQztFQUVNLG9CQUFvQjs7SUFDekIsTUFBQSxJQUFJLENBQUMsVUFBVSwwQ0FBRSxPQUFPLEVBQUUsQ0FBQztJQUMzQixNQUFBLElBQUksQ0FBQyxrQkFBa0IsMENBQUUsT0FBTyxFQUFFLENBQUM7RUFDckMsQ0FBQztFQUVEOztLQUVHO0VBRU8sbUJBQW1CLENBQUMsU0FBbUM7SUFDL0QsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7SUFFcEMsSUFBSSxDQUFBLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxNQUFNLEtBQUksSUFBSSxFQUFFO01BQzdCLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxTQUFTLENBQUMsQ0FBQztNQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksMEJBQTBCLENBQzlDLFNBQVMsRUFDVCxJQUFJLENBQUMsZ0JBQWdCLENBQ3RCLENBQUM7S0FDSDtFQUNILENBQUM7RUFFRDs7S0FFRztFQUNPLE1BQU07SUFDZCxPQUFPLENBQ0wsRUFBQyxJQUFJO01BQ0gsK0JBQ0csSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLElBQUksQ0FDeEIsV0FDRSxLQUFLLEVBQUUsVUFBVSxDQUFDLFNBQVMsRUFBRTtVQUMzQixTQUFTLEVBQUUsSUFBSSxDQUFDLGFBQWEsS0FBSyxPQUFPO1VBQ3pDLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxLQUFLLE1BQU07U0FDekMsQ0FBQyxFQUNGLEtBQUssRUFBRTtVQUNMLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJO1VBQzVCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJO1VBQzNCLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJO1VBQ2pDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJO1NBQ3BDO1FBRUQsV0FDRSxLQUFLLEVBQUUsVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUN4QixTQUFTLEVBQUUsSUFBSSxDQUFDLGFBQWEsS0FBSyxPQUFPO1lBQ3pDLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxLQUFLLE1BQU07V0FDekMsQ0FBQyxHQUNGLENBQ0UsQ0FDUCxDQUNtQixDQUNqQixDQUNSLENBQUM7RUFDSixDQUFDO0VBRU8sbUJBQW1CLENBQUMsS0FBeUI7SUFDbkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO0lBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztFQUN2QyxDQUFDO0VBRU8sMEJBQTBCLENBQUMsTUFBK0I7SUFDaEUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksa0NBQWtDLENBQzlELE1BQU0sRUFDTixJQUFJLENBQUMsZ0JBQWdCLENBQ3RCLENBQUM7SUFDRixNQUFNLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7RUFDN0QsQ0FBQztFQUVPLDRCQUE0Qjs7SUFDbEMsTUFBQSxJQUFJLENBQUMsa0JBQWtCLDBDQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ25DLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxTQUFTLENBQUM7RUFDdEMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUNGIn0=
@@ -1,179 +0,0 @@
1
- /**!
2
- * Copyright (c) 2022 Vertex Software LLC. All rights reserved.
3
- */
4
- import { r as registerInstance, h, H as Host } from './index-26dfb2d0.js';
5
- import { c as classnames } from './index-e841d91b.js';
6
- import { p as point, i as rectangle } from './bundle.esm-ce2c7ad3.js';
7
- import { E as EventDispatcher } from './browser.esm-ae4ca1f1.js';
8
- import './_commonjsHelpers-11ca3be1.js';
9
-
10
- class ViewerDragSelectController {
11
- constructor(viewer, model) {
12
- this.viewer = viewer;
13
- this.model = model;
14
- this.selectFromBounds = this.selectFromBounds.bind(this);
15
- this.dragEndDisposable = this.model.onDragFinished(this.selectFromBounds);
16
- }
17
- dispose() {
18
- var _a;
19
- (_a = this.dragEndDisposable) === null || _a === void 0 ? void 0 : _a.dispose();
20
- }
21
- async selectFromBounds(event) {
22
- const scene = await this.viewer.scene();
23
- await scene
24
- .items((op) => op.where((q) => q.withVolumeIntersection(event.rectangle)).select())
25
- .execute();
26
- }
27
- }
28
-
29
- class ViewerDragSelectInteractionHandler {
30
- constructor(viewer, dragSelectModel) {
31
- this.viewer = viewer;
32
- this.dragSelectModel = dragSelectModel;
33
- this.handleDragBegin = this.handleDragBegin.bind(this);
34
- this.handleDrag = this.handleDrag.bind(this);
35
- this.handleDragEnd = this.handleDragEnd.bind(this);
36
- }
37
- initialize(element, api) {
38
- this.element = element;
39
- this.api = api;
40
- this.element.addEventListener('pointerdown', this.handleDragBegin);
41
- }
42
- dispose() {
43
- var _a, _b, _c;
44
- (_a = this.element) === null || _a === void 0 ? void 0 : _a.removeEventListener('pointerdown', this.handleDragBegin);
45
- (_b = this.element) === null || _b === void 0 ? void 0 : _b.removeEventListener('pointermove', this.handleDrag);
46
- (_c = this.element) === null || _c === void 0 ? void 0 : _c.removeEventListener('pointerup', this.handleDragEnd);
47
- }
48
- handleDragBegin(event) {
49
- var _a, _b;
50
- if (event.buttons === 1) {
51
- this.viewer.cameraControls = false;
52
- this.dragSelectModel.updateStartPoint(point.create(event.offsetX, event.offsetY));
53
- (_a = this.element) === null || _a === void 0 ? void 0 : _a.addEventListener('pointermove', this.handleDrag);
54
- (_b = this.element) === null || _b === void 0 ? void 0 : _b.addEventListener('pointerup', this.handleDragEnd);
55
- }
56
- }
57
- handleDrag(event) {
58
- this.dragSelectModel.updateEndPoint(point.create(event.offsetX, event.offsetY));
59
- }
60
- handleDragEnd() {
61
- var _a, _b;
62
- this.viewer.cameraControls = true;
63
- this.dragSelectModel.clear();
64
- (_a = this.element) === null || _a === void 0 ? void 0 : _a.removeEventListener('pointermove', this.handleDrag);
65
- (_b = this.element) === null || _b === void 0 ? void 0 : _b.removeEventListener('pointerup', this.handleDragEnd);
66
- }
67
- }
68
-
69
- class ViewerDragSelectModel {
70
- constructor() {
71
- this.dragFinished = new EventDispatcher();
72
- this.boundsChanged = new EventDispatcher();
73
- }
74
- updateStartPoint(point) {
75
- this.dragStartPoint = point;
76
- }
77
- updateEndPoint(point$1) {
78
- var _a;
79
- this.dragEndPoint = point$1;
80
- this.direction =
81
- point.subtract(point$1, (_a = this.dragStartPoint) !== null && _a !== void 0 ? _a : point$1).x > 0
82
- ? 'right'
83
- : 'left';
84
- this.boundsChanged.emit({
85
- rectangle: this.getDragBounds(),
86
- direction: this.getDragDirection(),
87
- });
88
- }
89
- clear() {
90
- this.dragFinished.emit({
91
- rectangle: this.getDragBounds(),
92
- direction: this.getDragDirection(),
93
- });
94
- this.dragStartPoint = undefined;
95
- this.dragEndPoint = undefined;
96
- this.boundsChanged.emit({});
97
- }
98
- onDragFinished(listener) {
99
- return this.dragFinished.on(listener);
100
- }
101
- onBoundsChanged(listener) {
102
- return this.boundsChanged.on(listener);
103
- }
104
- getDragBounds() {
105
- if (this.dragStartPoint != null && this.dragEndPoint != null) {
106
- return rectangle.fromPoints(this.dragStartPoint, this.dragEndPoint);
107
- }
108
- return rectangle.create(0, 0, 0, 0);
109
- }
110
- getDragDirection() {
111
- var _a;
112
- return (_a = this.direction) !== null && _a !== void 0 ? _a : 'right';
113
- }
114
- }
115
-
116
- const viewerDragSelectCss = ":host{--viewer-drag-select-outline-exclusive-border-color:#5555ff;--viewer-drag-select-outline-exclusive-border-style:solid;--viewer-drag-select-outline-exclusive-fill-color:blue;--viewer-drag-select-outline-inclusive-border-color:#ff5555;--viewer-drag-select-outline-inclusive-border-style:dashed;--viewer-drag-select-outline-inclusive-fill-color:red;--viewer-drag-select-outline-fill-opacity:0.1}.outline{position:absolute}.outline.exclusive{border:3px var(--viewer-drag-select-outline-exclusive-border-style) var(--viewer-drag-select-outline-exclusive-border-color)}.outline.inclusive{border:3px var(--viewer-drag-select-outline-inclusive-border-style) var(--viewer-drag-select-outline-inclusive-border-color)}.fill{position:relative;width:100%;height:100%;opacity:var(--viewer-drag-select-outline-fill-opacity)}.fill.exclusive{background-color:var(--viewer-drag-select-outline-exclusive-fill-color)}.fill.inclusive{background-color:var(--viewer-drag-select-outline-inclusive-fill-color)}";
117
-
118
- const ViewerDragSelect = class {
119
- constructor(hostRef) {
120
- registerInstance(this, hostRef);
121
- this.handleBoundsChanged = this.handleBoundsChanged.bind(this);
122
- }
123
- componentWillLoad() {
124
- this.interactionModel = new ViewerDragSelectModel();
125
- this.interactionModel.onBoundsChanged(this.handleBoundsChanged);
126
- this.handleViewerChanged(this.viewer);
127
- }
128
- disconnectedCallback() {
129
- var _a, _b;
130
- (_a = this.controller) === null || _a === void 0 ? void 0 : _a.dispose();
131
- (_b = this.interactionHandler) === null || _b === void 0 ? void 0 : _b.dispose();
132
- }
133
- /**
134
- * @ignore
135
- */
136
- handleViewerChanged(newViewer) {
137
- this.deregisterInteractionHandler();
138
- if ((newViewer === null || newViewer === void 0 ? void 0 : newViewer.stream) != null) {
139
- this.registerInteractionHandler(newViewer);
140
- this.controller = new ViewerDragSelectController(newViewer, this.interactionModel);
141
- }
142
- }
143
- /**
144
- * @ignore
145
- */
146
- render() {
147
- return (h(Host, null, h("vertex-viewer-layer", null, this.dragRect != null && (h("div", { class: classnames('outline', {
148
- exclusive: this.dragDirection === 'right',
149
- inclusive: this.dragDirection === 'left',
150
- }), style: {
151
- left: `${this.dragRect.x}px`,
152
- top: `${this.dragRect.y}px`,
153
- width: `${this.dragRect.width}px`,
154
- height: `${this.dragRect.height}px`,
155
- } }, h("div", { class: classnames('fill', {
156
- exclusive: this.dragDirection === 'right',
157
- inclusive: this.dragDirection === 'left',
158
- }) }))))));
159
- }
160
- handleBoundsChanged(event) {
161
- this.dragRect = event.rectangle;
162
- this.dragDirection = event.direction;
163
- }
164
- registerInteractionHandler(viewer) {
165
- this.interactionHandler = new ViewerDragSelectInteractionHandler(viewer, this.interactionModel);
166
- viewer.registerInteractionHandler(this.interactionHandler);
167
- }
168
- deregisterInteractionHandler() {
169
- var _a;
170
- (_a = this.interactionHandler) === null || _a === void 0 ? void 0 : _a.dispose();
171
- this.interactionHandler = undefined;
172
- }
173
- static get watchers() { return {
174
- "viewer": ["handleViewerChanged"]
175
- }; }
176
- };
177
- ViewerDragSelect.style = viewerDragSelectCss;
178
-
179
- export { ViewerDragSelect as vertex_viewer_drag_select };
@@ -1,9 +0,0 @@
1
- import { DragFinishedEvent, ViewerDragSelectModel } from './model';
2
- export declare class ViewerDragSelectController {
3
- private viewer;
4
- private model;
5
- private dragEndDisposable?;
6
- constructor(viewer: HTMLVertexViewerElement, model: ViewerDragSelectModel);
7
- dispose(): void;
8
- selectFromBounds(event: DragFinishedEvent): Promise<void>;
9
- }
@@ -1,15 +0,0 @@
1
- import { InteractionApi } from '../../lib/interactions';
2
- import { InteractionHandler } from '../../lib/interactions/interactionHandler';
3
- import { ViewerDragSelectModel } from './model';
4
- export declare class ViewerDragSelectInteractionHandler implements InteractionHandler {
5
- private viewer;
6
- private dragSelectModel;
7
- private element?;
8
- private api?;
9
- constructor(viewer: HTMLVertexViewerElement, dragSelectModel: ViewerDragSelectModel);
10
- initialize(element: HTMLElement, api: InteractionApi): void;
11
- dispose(): void;
12
- private handleDragBegin;
13
- private handleDrag;
14
- private handleDragEnd;
15
- }
@@ -1,25 +0,0 @@
1
- import { Point, Rectangle } from '@vertexvis/geometry';
2
- import { Disposable, Listener } from '@vertexvis/utils';
3
- export declare type ViewerDragSelectDirection = 'left' | 'right';
4
- export interface BoundsChangedEvent {
5
- rectangle?: Rectangle.Rectangle;
6
- direction?: ViewerDragSelectDirection;
7
- }
8
- export interface DragFinishedEvent {
9
- rectangle: Rectangle.Rectangle;
10
- direction: ViewerDragSelectDirection;
11
- }
12
- export declare class ViewerDragSelectModel {
13
- private dragStartPoint?;
14
- private dragEndPoint?;
15
- private direction?;
16
- private dragFinished;
17
- private boundsChanged;
18
- updateStartPoint(point: Point.Point): void;
19
- updateEndPoint(point: Point.Point): void;
20
- clear(): void;
21
- onDragFinished(listener: Listener<DragFinishedEvent>): Disposable;
22
- onBoundsChanged(listener: Listener<BoundsChangedEvent>): Disposable;
23
- private getDragBounds;
24
- private getDragDirection;
25
- }
@@ -1,28 +0,0 @@
1
- import { h } from '../../stencil-public-runtime';
2
- import { ViewerDragSelectController } from './controller';
3
- export declare class ViewerDragSelect {
4
- /**
5
- * The viewer that this component is bound to. This is automatically assigned
6
- * if added to the light-dom of a parent viewer element.
7
- */
8
- viewer?: HTMLVertexViewerElement;
9
- controller?: ViewerDragSelectController;
10
- private dragRect?;
11
- private dragDirection?;
12
- private interactionModel;
13
- private interactionHandler?;
14
- constructor();
15
- componentWillLoad(): void;
16
- disconnectedCallback(): void;
17
- /**
18
- * @ignore
19
- */
20
- protected handleViewerChanged(newViewer?: HTMLVertexViewerElement): void;
21
- /**
22
- * @ignore
23
- */
24
- protected render(): h.JSX.IntrinsicElements;
25
- private handleBoundsChanged;
26
- private registerInteractionHandler;
27
- private deregisterInteractionHandler;
28
- }