@vertexvis/viewer 0.12.0 → 0.13.0-canary.0

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 (225) hide show
  1. package/dist/cjs/{config-acd7cea9.js → config-90ee43d5.js} +1 -1
  2. package/dist/cjs/{cursors-399a9648.js → cursors-ad2fd395.js} +7 -0
  3. package/dist/cjs/{controller-8cbcdd8d.js → entities-aa59890e.js} +57 -22
  4. package/dist/cjs/{index-cc65325e.js → index-e100709a.js} +64 -3
  5. package/dist/cjs/index.cjs.js +21 -11
  6. package/dist/cjs/loader.cjs.js +2 -2
  7. package/dist/cjs/{model-18ef3363.js → mapper-f6e6cafe.js} +37 -191
  8. package/dist/cjs/model-4ec0c36e.js +134 -0
  9. package/dist/cjs/overlays-8a582edf.js +76 -0
  10. package/dist/cjs/results-bc325974.js +24 -0
  11. package/dist/cjs/{scene-ffee07ee.js → scene-f4040800.js} +1 -1
  12. package/dist/cjs/{stencil-bd453a38.js → stencil-a664cd10.js} +1 -1
  13. package/dist/cjs/{streamAttributes-9d6226ac.js → streamAttributes-d6236448.js} +87 -30
  14. package/dist/cjs/vertex-scene-tree-search_3.cjs.entry.js +2 -2
  15. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +1 -1
  16. package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js +1 -1
  17. package/dist/cjs/vertex-scene-tree-table-header.cjs.entry.js +1 -1
  18. package/dist/cjs/vertex-scene-tree-table-resize-divider.cjs.entry.js +1 -1
  19. package/dist/cjs/vertex-scene-tree-toolbar-group.cjs.entry.js +1 -1
  20. package/dist/cjs/vertex-scene-tree.cjs.entry.js +3 -3
  21. package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +1 -1
  22. package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +1 -1
  23. package/dist/cjs/vertex-viewer-dom-element_3.cjs.entry.js +4 -4
  24. package/dist/cjs/vertex-viewer-icon.cjs.entry.js +1 -1
  25. package/dist/cjs/vertex-viewer-layer.cjs.entry.js +1 -1
  26. package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +1 -1
  27. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +1 -1
  28. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +1 -1
  29. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +221 -75
  30. package/dist/cjs/{vertex-viewer-measurement-distance_2.cjs.entry.js → vertex-viewer-measurement-distance.cjs.entry.js} +30 -69
  31. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +170 -0
  32. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +163 -55
  33. package/dist/cjs/vertex-viewer-measurement-tool.cjs.entry.js +2 -2
  34. package/dist/cjs/vertex-viewer-measurements.cjs.entry.js +33 -4
  35. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +4 -4
  36. package/dist/cjs/vertex-viewer.cjs.entry.js +58 -10
  37. package/dist/cjs/viewer.cjs.js +2 -2
  38. package/dist/cjs/{viewport-51aa05ab.js → viewport-8c39089f.js} +11 -0
  39. package/dist/collection/collection-manifest.json +1 -0
  40. package/dist/collection/components/viewer/viewer.js +2 -2
  41. package/dist/collection/components/viewer-dom-renderer/viewer-dom-renderer.js +2 -2
  42. package/dist/collection/components/viewer-measurement-details/viewer-measurement-details-entry.js +14 -0
  43. package/dist/collection/components/viewer-measurement-details/viewer-measurement-details-results.js +22 -0
  44. package/dist/collection/components/viewer-measurement-details/viewer-measurement-details.css +3 -10
  45. package/dist/collection/components/viewer-measurement-details/viewer-measurement-details.js +125 -188
  46. package/dist/collection/components/viewer-measurement-distance/interactions.js +3 -14
  47. package/dist/collection/components/viewer-measurement-distance/viewer-measurement-distance.js +41 -1
  48. package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays-components.js +30 -0
  49. package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays.css +51 -0
  50. package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays.js +149 -0
  51. package/dist/collection/components/viewer-measurement-precise/viewer-measurement-precise.js +118 -26
  52. package/dist/collection/components/viewer-measurements/viewer-measurements.js +67 -2
  53. package/dist/collection/components/viewer-view-cube/viewer-view-cube.css +21 -3
  54. package/dist/collection/index.js +2 -2
  55. package/dist/collection/lib/cursors.js +7 -1
  56. package/dist/collection/lib/elementRectObserver.js +19 -0
  57. package/dist/collection/lib/interactions/interactionApi.js +53 -4
  58. package/dist/collection/lib/mappers/frameStreaming.js +2 -4
  59. package/dist/collection/lib/measurement/controller.js +21 -17
  60. package/dist/collection/lib/measurement/entities.js +34 -0
  61. package/dist/collection/lib/measurement/index.js +4 -2
  62. package/dist/collection/lib/measurement/interactions.js +74 -28
  63. package/dist/collection/lib/measurement/mapper.js +5 -5
  64. package/dist/collection/lib/measurement/model.js +24 -85
  65. package/dist/collection/lib/measurement/outcomes.js +2 -0
  66. package/dist/collection/lib/measurement/overlays.js +69 -0
  67. package/dist/collection/lib/measurement/results.js +17 -0
  68. package/dist/collection/lib/types/entities.js +5 -1
  69. package/dist/collection/lib/types/featureMap.js +14 -5
  70. package/dist/collection/lib/types/frame.js +3 -3
  71. package/dist/collection/lib/types/measurementUnits.js +7 -7
  72. package/dist/collection/lib/types/viewport.js +12 -1
  73. package/dist/collection/testing/eventually.js +30 -0
  74. package/dist/collection/testing/fixtures.js +11 -4
  75. package/dist/collection/testing/index.js +2 -1
  76. package/dist/custom-elements/index.d.ts +6 -0
  77. package/dist/custom-elements/index.js +851 -287
  78. package/dist/esm/{browser.esm-e6827921.js → browser.esm-59e914f6.js} +1 -1
  79. package/dist/esm/{bundle.esm-8f14ac60.js → bundle.esm-d899b2d5.js} +1 -1
  80. package/dist/esm/{config-a200c227.js → config-604c644e.js} +2 -2
  81. package/dist/esm/{cursors-5157d29d.js → cursors-a7ec4adb.js} +8 -2
  82. package/dist/esm/{dom-2d6a1e1e.js → dom-780d25be.js} +1 -1
  83. package/dist/esm/{controller-a756cf9c.js → entities-759d97cd.js} +52 -18
  84. package/dist/esm/{index-f0053642.js → index-10c1495a.js} +64 -3
  85. package/dist/esm/index.js +13 -11
  86. package/dist/esm/index.mjs +13 -11
  87. package/dist/esm/loader.js +2 -2
  88. package/dist/esm/loader.mjs +2 -2
  89. package/dist/esm/{model-f711a825.js → mapper-4b815e31.js} +37 -190
  90. package/dist/esm/{markup-e46623b3.js → markup-1d177b4a.js} +2 -2
  91. package/dist/esm/{measurement-702d6b8c.js → measurement-12cdbf5c.js} +2 -2
  92. package/dist/esm/model-e5a4f00f.js +132 -0
  93. package/dist/esm/overlays-dbe5d652.js +74 -0
  94. package/dist/esm/{png-decoder-59a0e9c2.js → png-decoder-3f1fa486.js} +1 -1
  95. package/dist/esm/results-994bdb50.js +22 -0
  96. package/dist/esm/{scene-16490983.js → scene-9ac8a484.js} +3 -3
  97. package/dist/esm/{stencil-7d04d41a.js → stencil-9bf7fb9e.js} +1 -1
  98. package/dist/esm/{streamAttributes-7aa486b2.js → streamAttributes-d623bb60.js} +77 -20
  99. package/dist/esm/{utils-8070900a.js → utils-01e4f587.js} +1 -1
  100. package/dist/esm/{utils-953a1619.js → utils-5e57bf24.js} +1 -1
  101. package/dist/esm/vertex-scene-tree-search_3.entry.js +3 -3
  102. package/dist/esm/vertex-scene-tree-table-cell.entry.js +1 -1
  103. package/dist/esm/vertex-scene-tree-table-column.entry.js +1 -1
  104. package/dist/esm/vertex-scene-tree-table-header.entry.js +1 -1
  105. package/dist/esm/vertex-scene-tree-table-resize-divider.entry.js +1 -1
  106. package/dist/esm/vertex-scene-tree-toolbar-group.entry.js +1 -1
  107. package/dist/esm/vertex-scene-tree.entry.js +5 -5
  108. package/dist/esm/vertex-viewer-button_3.entry.js +1 -1
  109. package/dist/esm/vertex-viewer-default-toolbar.entry.js +1 -1
  110. package/dist/esm/vertex-viewer-dom-element_3.entry.js +6 -6
  111. package/dist/esm/vertex-viewer-icon.entry.js +1 -1
  112. package/dist/esm/vertex-viewer-layer.entry.js +1 -1
  113. package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +4 -4
  114. package/dist/esm/vertex-viewer-markup-tool.entry.js +5 -5
  115. package/dist/esm/vertex-viewer-markup.entry.js +5 -5
  116. package/dist/esm/vertex-viewer-measurement-details.entry.js +221 -75
  117. package/dist/esm/{vertex-viewer-measurement-distance_2.entry.js → vertex-viewer-measurement-distance.entry.js} +35 -73
  118. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +165 -0
  119. package/dist/esm/vertex-viewer-measurement-precise.entry.js +160 -52
  120. package/dist/esm/vertex-viewer-measurement-tool.entry.js +6 -6
  121. package/dist/esm/vertex-viewer-measurements.entry.js +36 -7
  122. package/dist/esm/vertex-viewer-view-cube.entry.js +6 -6
  123. package/dist/esm/vertex-viewer.entry.js +61 -13
  124. package/dist/esm/viewer.js +2 -2
  125. package/dist/esm/{viewport-bb7c46d9.js → viewport-01c886ea.js} +12 -1
  126. package/dist/types/components/viewer-dom-renderer/viewer-dom-renderer.d.ts +1 -1
  127. package/dist/types/components/viewer-measurement-details/viewer-measurement-details-entry.d.ts +8 -0
  128. package/dist/types/components/viewer-measurement-details/viewer-measurement-details-results.d.ts +15 -0
  129. package/dist/types/components/viewer-measurement-details/viewer-measurement-details.d.ts +44 -42
  130. package/dist/types/components/viewer-measurement-distance/interactions.d.ts +23 -1
  131. package/dist/types/components/viewer-measurement-distance/viewer-measurement-distance.d.ts +8 -0
  132. package/dist/types/components/viewer-measurement-overlays/viewer-measurement-overlays-components.d.ts +10 -0
  133. package/dist/types/components/viewer-measurement-overlays/viewer-measurement-overlays.d.ts +41 -0
  134. package/dist/types/components/viewer-measurement-precise/viewer-measurement-precise.d.ts +62 -6
  135. package/dist/types/components/viewer-measurements/viewer-measurements.d.ts +12 -0
  136. package/dist/types/components.d.ts +103 -40
  137. package/dist/types/index.d.ts +1 -1
  138. package/dist/types/lib/cursors.d.ts +5 -0
  139. package/dist/types/lib/elementRectObserver.d.ts +8 -0
  140. package/dist/types/lib/interactions/interactionApi.d.ts +32 -5
  141. package/dist/types/lib/measurement/controller.d.ts +8 -7
  142. package/dist/types/lib/measurement/entities.d.ts +10 -0
  143. package/dist/types/lib/measurement/index.d.ts +3 -1
  144. package/dist/types/lib/measurement/interactions.d.ts +19 -5
  145. package/dist/types/lib/measurement/mapper.d.ts +1 -1
  146. package/dist/types/lib/measurement/model.d.ts +18 -153
  147. package/dist/types/lib/measurement/outcomes.d.ts +8 -0
  148. package/dist/types/lib/measurement/overlays.d.ts +38 -0
  149. package/dist/types/lib/measurement/results.d.ts +90 -0
  150. package/dist/types/lib/types/entities.d.ts +5 -1
  151. package/dist/types/lib/types/featureMap.d.ts +2 -2
  152. package/dist/types/lib/types/measurementUnits.d.ts +1 -1
  153. package/dist/types/lib/types/viewport.d.ts +9 -1
  154. package/dist/types/testing/eventually.d.ts +15 -0
  155. package/dist/types/testing/fixtures.d.ts +2 -2
  156. package/dist/types/testing/index.d.ts +1 -0
  157. package/dist/viewer/index.esm.js +1 -1
  158. package/dist/viewer/p-081e6873.js +4 -0
  159. package/dist/viewer/{p-5d82c131.entry.js → p-099fe6ca.entry.js} +1 -1
  160. package/dist/viewer/{p-784914e4.js → p-0aba71fd.js} +1 -1
  161. package/dist/viewer/p-0aeab3fc.js +4 -0
  162. package/dist/viewer/p-0eb195dd.entry.js +4 -0
  163. package/dist/viewer/p-1a7df99a.entry.js +4 -0
  164. package/dist/viewer/{p-f70d8def.js → p-301660cf.js} +1 -1
  165. package/dist/viewer/{p-a0e49d10.entry.js → p-31658489.entry.js} +1 -1
  166. package/dist/viewer/{p-95f3a81c.entry.js → p-353cfc7a.entry.js} +1 -1
  167. package/dist/viewer/p-364ce21c.js +4 -0
  168. package/dist/viewer/{p-a5a0bf86.js → p-3f6ac74f.js} +1 -1
  169. package/dist/viewer/p-423410be.js +4 -0
  170. package/dist/viewer/{p-6f71f0f2.js → p-439220c6.js} +1 -1
  171. package/dist/viewer/{p-e84ed098.entry.js → p-46459921.entry.js} +1 -1
  172. package/dist/viewer/{p-c23a8b34.entry.js → p-4717c98e.entry.js} +1 -1
  173. package/dist/viewer/p-4985fad5.js +4 -0
  174. package/dist/viewer/{p-ba393340.entry.js → p-61b1097b.entry.js} +1 -1
  175. package/dist/viewer/{p-011eecd5.entry.js → p-6370098c.entry.js} +1 -1
  176. package/dist/viewer/p-67446e35.js +4 -0
  177. package/dist/viewer/p-7006fd4e.entry.js +4 -0
  178. package/dist/viewer/{p-a20e4ea1.entry.js → p-70ca1ea7.entry.js} +1 -1
  179. package/dist/viewer/p-76ec0245.js +4 -0
  180. package/dist/viewer/p-7cad9bf4.js +4 -0
  181. package/dist/viewer/p-7f25dcb5.entry.js +4 -0
  182. package/dist/viewer/{p-ca6bbe53.entry.js → p-8decee06.entry.js} +1 -1
  183. package/dist/viewer/{p-b7ffa306.entry.js → p-915d95ad.entry.js} +1 -1
  184. package/dist/viewer/{p-4485ac6d.js → p-a0df0e0c.js} +1 -1
  185. package/dist/viewer/{p-cc9888be.entry.js → p-a455ae02.entry.js} +1 -1
  186. package/dist/viewer/{p-a6a8026f.js → p-acf22d3e.js} +1 -1
  187. package/dist/viewer/{p-653aca1b.entry.js → p-b2b48a42.entry.js} +1 -1
  188. package/dist/viewer/p-bc9b1e67.entry.js +4 -0
  189. package/dist/viewer/p-c458f191.entry.js +32 -0
  190. package/dist/viewer/p-cafa57a6.js +4 -0
  191. package/dist/viewer/p-d00e9203.js +4 -0
  192. package/dist/viewer/{p-3e96bd62.entry.js → p-d2bcf788.entry.js} +1 -1
  193. package/dist/viewer/p-d90f2f6d.entry.js +4 -0
  194. package/dist/viewer/p-da2f4a56.js +4 -0
  195. package/dist/viewer/{p-5a2e34e1.entry.js → p-e07377fa.entry.js} +1 -1
  196. package/dist/viewer/{p-40800e8d.entry.js → p-f755af5a.entry.js} +1 -1
  197. package/dist/viewer/p-f7cb7e59.js +4 -0
  198. package/dist/viewer/p-fad9693e.js +4 -0
  199. package/dist/viewer/p-fe11d694.js +4 -0
  200. package/dist/viewer/{p-b92a3ac2.entry.js → p-fec1a8d0.entry.js} +1 -1
  201. package/dist/viewer/viewer.css +1 -1
  202. package/dist/viewer/viewer.esm.js +1 -1
  203. package/package.json +11 -10
  204. package/dist/cjs/summary-7bbdb4c9.js +0 -45
  205. package/dist/collection/lib/measurement/summary.js +0 -38
  206. package/dist/esm/summary-0a3d0bf9.js +0 -43
  207. package/dist/types/lib/measurement/summary.d.ts +0 -11
  208. package/dist/viewer/p-03e482ff.js +0 -4
  209. package/dist/viewer/p-0c052bc8.entry.js +0 -4
  210. package/dist/viewer/p-148cd792.js +0 -4
  211. package/dist/viewer/p-26d99e2d.entry.js +0 -4
  212. package/dist/viewer/p-38eeacc5.js +0 -4
  213. package/dist/viewer/p-39d1720c.js +0 -4
  214. package/dist/viewer/p-5dc17b8b.js +0 -4
  215. package/dist/viewer/p-5fea3491.js +0 -4
  216. package/dist/viewer/p-6b700561.entry.js +0 -4
  217. package/dist/viewer/p-6cd7a6e0.js +0 -4
  218. package/dist/viewer/p-75337d0b.js +0 -4
  219. package/dist/viewer/p-b83cc8a9.js +0 -4
  220. package/dist/viewer/p-d2a9e047.js +0 -4
  221. package/dist/viewer/p-d40bd835.entry.js +0 -4
  222. package/dist/viewer/p-e10b1526.js +0 -4
  223. package/dist/viewer/p-ec8a1a68.entry.js +0 -4
  224. package/dist/viewer/p-f4a8c901.js +0 -4
  225. package/dist/viewer/p-f77dde26.entry.js +0 -4
@@ -2,40 +2,86 @@
2
2
  import { Component, h, Host, Prop, State, Watch } from '@stencil/core';
3
3
  import { SceneViewAPIClient } from '@vertexvis/scene-view-protos/sceneview/protos/scene_view_api_pb_service';
4
4
  import { parseConfig } from '../../lib/config';
5
- import { MeasurementController, MeasurementModel, } from '../../lib/measurement';
6
- import { PreciseMeasurementInteractionHandler } from '../../lib/measurement/interactions';
5
+ import { MeasurementController, MeasurementModel, MeasurementOverlayManager, } from '../../lib/measurement';
6
+ import { MeasurementInteractionHandler } from '../../lib/measurement/interactions';
7
+ import { EntityType } from '../../lib/types';
7
8
  export class ViewerMeasurementPrecise {
8
9
  constructor() {
10
+ /**
11
+ * The model that contains the entities and outcomes from performing precise
12
+ * measurements.
13
+ */
9
14
  this.measurementModel = new MeasurementModel();
15
+ /**
16
+ * The manager that is responsible for measurement overlays to present by this
17
+ * component.
18
+ */
19
+ this.measurementOverlays = new MeasurementOverlayManager();
20
+ /**
21
+ * @internal
22
+ *
23
+ * An internal property that can be used to opt-in to performing measurements
24
+ * on other types of entities.
25
+ */
26
+ this.measurableEntityTypes = [EntityType.PRECISE_SURFACE];
27
+ /**
28
+ * The environment that will be used to request measurement results.
29
+ */
10
30
  this.configEnv = 'platprod';
11
- this.entities = [];
12
- this.handleEntitiesChanged = () => {
13
- this.updateEntities();
14
- };
31
+ this.overlays = [];
15
32
  }
33
+ /**
34
+ * @ignore
35
+ */
16
36
  connectedCallback() {
17
37
  this.setupInteractionHandler();
18
38
  }
39
+ /**
40
+ * @ignore
41
+ */
19
42
  componentWillLoad() {
20
43
  this.setupController();
21
- this.setupInteractionHandler();
22
44
  this.setupModelListeners();
45
+ this.setupInteractionHandler();
23
46
  }
47
+ /**
48
+ * @ignore
49
+ */
24
50
  disconnectedCallback() {
25
51
  this.clearInteractionHandler();
52
+ this.clearModelListeners();
26
53
  }
54
+ /**
55
+ * @ignore
56
+ */
57
+ handleMeasurableEntityTypesChanged() {
58
+ this.setupInteractionHandler();
59
+ }
60
+ /**
61
+ * @ignore
62
+ */
27
63
  handleMeasurementControllerChanged() {
28
64
  this.setupInteractionHandler();
29
65
  }
66
+ /**
67
+ * @ignore
68
+ */
30
69
  handleMeasurementModelChanged() {
31
70
  this.setupController();
32
71
  this.setupModelListeners();
33
72
  }
73
+ /**
74
+ * @ignore
75
+ */
34
76
  handleViewerChanged() {
35
77
  this.setupInteractionHandler();
36
78
  }
79
+ /**
80
+ * @ignore
81
+ */
37
82
  render() {
38
- return h(Host, null);
83
+ return (h(Host, null,
84
+ h("vertex-viewer-measurement-overlays", { viewer: this.viewer, measurementOverlays: this.measurementOverlays })));
39
85
  }
40
86
  setupController() {
41
87
  var _a;
@@ -53,22 +99,20 @@ export class ViewerMeasurementPrecise {
53
99
  this.clearInteractionHandler();
54
100
  if (this.measurementController != null) {
55
101
  this.registeredInteractionHandler =
56
- (_a = this.viewer) === null || _a === void 0 ? void 0 : _a.registerInteractionHandler(new PreciseMeasurementInteractionHandler(this.measurementController));
102
+ (_a = this.viewer) === null || _a === void 0 ? void 0 : _a.registerInteractionHandler(new MeasurementInteractionHandler(this.measurementController, this.measurableEntityTypes));
57
103
  }
58
104
  }
59
105
  clearModelListeners() {
60
- var _a;
61
- (_a = this.onEntitiesChangedDisposable) === null || _a === void 0 ? void 0 : _a.dispose();
62
- this.onEntitiesChangedDisposable = undefined;
106
+ var _a, _b;
107
+ (_a = this.onEntitiesChangedHandler) === null || _a === void 0 ? void 0 : _a.dispose();
108
+ this.onEntitiesChangedHandler = undefined;
109
+ (_b = this.onOverlaysChangedHandler) === null || _b === void 0 ? void 0 : _b.dispose();
110
+ this.onOverlaysChangedHandler = undefined;
63
111
  }
64
112
  setupModelListeners() {
65
- var _a;
66
- this.clearModelListeners();
67
- this.onEntitiesChangedDisposable = (_a = this.measurementModel) === null || _a === void 0 ? void 0 : _a.onEntitiesChanged(this.handleEntitiesChanged);
68
- }
69
- updateEntities() {
70
- var _a, _b;
71
- this.entities = (_b = (_a = this.measurementModel) === null || _a === void 0 ? void 0 : _a.getEntities()) !== null && _b !== void 0 ? _b : [];
113
+ this.onOverlaysChangedHandler = this.measurementOverlays.onOverlaysChanged((overlays) => {
114
+ this.overlays = overlays;
115
+ });
72
116
  }
73
117
  static get is() { return "vertex-viewer-measurement-precise"; }
74
118
  static get encapsulation() { return "shadow"; }
@@ -96,10 +140,31 @@ export class ViewerMeasurementPrecise {
96
140
  "optional": false,
97
141
  "docs": {
98
142
  "tags": [],
99
- "text": ""
143
+ "text": "The model that contains the entities and outcomes from performing precise\nmeasurements."
100
144
  },
101
145
  "defaultValue": "new MeasurementModel()"
102
146
  },
147
+ "measurementOverlays": {
148
+ "type": "unknown",
149
+ "mutable": false,
150
+ "complexType": {
151
+ "original": "MeasurementOverlayManager",
152
+ "resolved": "MeasurementOverlayManager",
153
+ "references": {
154
+ "MeasurementOverlayManager": {
155
+ "location": "import",
156
+ "path": "../../lib/measurement"
157
+ }
158
+ }
159
+ },
160
+ "required": false,
161
+ "optional": false,
162
+ "docs": {
163
+ "tags": [],
164
+ "text": "The manager that is responsible for measurement overlays to present by this\ncomponent."
165
+ },
166
+ "defaultValue": "new MeasurementOverlayManager()"
167
+ },
103
168
  "measurementController": {
104
169
  "type": "unknown",
105
170
  "mutable": true,
@@ -117,9 +182,33 @@ export class ViewerMeasurementPrecise {
117
182
  "optional": true,
118
183
  "docs": {
119
184
  "tags": [],
120
- "text": ""
185
+ "text": "The controller that is responsible for performing measurements and updating\nthe model."
121
186
  }
122
187
  },
188
+ "measurableEntityTypes": {
189
+ "type": "unknown",
190
+ "mutable": false,
191
+ "complexType": {
192
+ "original": "EntityType[]",
193
+ "resolved": "EntityType[]",
194
+ "references": {
195
+ "EntityType": {
196
+ "location": "import",
197
+ "path": "../../lib/types"
198
+ }
199
+ }
200
+ },
201
+ "required": false,
202
+ "optional": false,
203
+ "docs": {
204
+ "tags": [{
205
+ "name": "internal",
206
+ "text": "An internal property that can be used to opt-in to performing measurements\non other types of entities."
207
+ }],
208
+ "text": ""
209
+ },
210
+ "defaultValue": "[EntityType.PRECISE_SURFACE]"
211
+ },
123
212
  "viewer": {
124
213
  "type": "unknown",
125
214
  "mutable": false,
@@ -136,7 +225,7 @@ export class ViewerMeasurementPrecise {
136
225
  "optional": true,
137
226
  "docs": {
138
227
  "tags": [],
139
- "text": ""
228
+ "text": "The viewer that this component is bound to. This is automatically assigned\nif added to the light-dom of a parent viewer element."
140
229
  }
141
230
  },
142
231
  "configEnv": {
@@ -156,7 +245,7 @@ export class ViewerMeasurementPrecise {
156
245
  "optional": false,
157
246
  "docs": {
158
247
  "tags": [],
159
- "text": ""
248
+ "text": "The environment that will be used to request measurement results."
160
249
  },
161
250
  "attribute": "config-env",
162
251
  "reflect": false,
@@ -179,14 +268,17 @@ export class ViewerMeasurementPrecise {
179
268
  "optional": true,
180
269
  "docs": {
181
270
  "tags": [],
182
- "text": ""
271
+ "text": "An optional configuration to setup network configuration of measurement\nendpoints."
183
272
  }
184
273
  }
185
274
  }; }
186
275
  static get states() { return {
187
- "entities": {}
276
+ "overlays": {}
188
277
  }; }
189
278
  static get watchers() { return [{
279
+ "propName": "measurableEntityTypes",
280
+ "methodName": "handleMeasurableEntityTypesChanged"
281
+ }, {
190
282
  "propName": "measurementController",
191
283
  "methodName": "handleMeasurementControllerChanged"
192
284
  }, {
@@ -197,4 +289,4 @@ export class ViewerMeasurementPrecise {
197
289
  "methodName": "handleViewerChanged"
198
290
  }]; }
199
291
  }
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLW1lYXN1cmVtZW50LXByZWNpc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3ZXItbWVhc3VyZW1lbnQtcHJlY2lzZS92aWV3ZXItbWVhc3VyZW1lbnQtcHJlY2lzZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUc3RyxPQUFPLEVBQVUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQsT0FBTyxFQUNMLHFCQUFxQixFQUVyQixnQkFBZ0IsR0FDakIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQU8xRixNQUFNLE9BQU8sd0JBQXdCO0VBTHJDO0lBT1MscUJBQWdCLEdBQXFCLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztJQVM1RCxjQUFTLEdBQWdCLFVBQVUsQ0FBQztJQU1uQyxhQUFRLEdBQXdCLEVBQUUsQ0FBQztJQStFbkMsMEJBQXFCLEdBQUcsR0FBUyxFQUFFO01BQ3pDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDLENBQUM7R0FLSDtFQWpGVyxpQkFBaUI7SUFDekIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7RUFDakMsQ0FBQztFQUVTLGlCQUFpQjtJQUN6QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDdkIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDL0IsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7RUFDN0IsQ0FBQztFQUVTLG9CQUFvQjtJQUM1QixJQUFJLENBQUMsdUJBQXVCLEVB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
292
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLW1lYXN1cmVtZW50LXByZWNpc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3ZXItbWVhc3VyZW1lbnQtcHJlY2lzZS92aWV3ZXItbWVhc3VyZW1lbnQtcHJlY2lzZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUc3RyxPQUFPLEVBQVUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixnQkFBZ0IsRUFFaEIseUJBQXlCLEdBQzFCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTzdDLE1BQU0sT0FBTyx3QkFBd0I7RUFMckM7SUFNRTs7O09BR0c7SUFFSSxxQkFBZ0IsR0FBcUIsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO0lBRW5FOzs7T0FHRztJQUVJLHdCQUFtQixHQUE4QixJQUFJLHlCQUF5QixFQUFFLENBQUM7SUFTeEY7Ozs7O09BS0c7SUFFSSwwQkFBcUIsR0FBaUIsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7SUFTMUU7O09BRUc7SUFFSSxjQUFTLEdBQWdCLFVBQVUsQ0FBQztJQVVuQyxhQUFRLEdBQXlCLEVBQUUsQ0FBQztHQTBIN0M7RUFwSEM7O0tBRUc7RUFDTyxpQkFBaUI7SUFDekIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7RUFDakMsQ0FBQztFQUVEOztLQUVHO0VBQ08saUJBQWlCO0lBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN2QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMzQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztFQUNqQyxDQUFDO0VBRUQ7O0tBRUc7RUFDTyxvQkFBb0I7SUFDNUIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDL0IsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7RUFDN0IsQ0FBQztFQUVEOztLQUVHO0VBRU8sa0NBQWtDO0lBQzFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0VBQ2pDLENBQUM7RUFFRDs7S0FFRztFQUVPLGtDQUFrQztJQUMxQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztFQUNqQyxDQUFDO0VBRUQ7O0tBRUc7RUFFTyw2QkFBNkI7SUFDckMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0VBQzdCLENBQUM7RUFFRDs7S0FFRztFQUVPLG1CQUFtQjtJQUMzQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztFQUNqQyxDQUFDO0VBRUQ7O0tBRUc7RUFDTyxNQUFNO0lBQ2QsT0FBTyxDQUNMLEVBQUMsSUFBSTtNQUNILDBDQUNFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUNuQixtQkFBbUIsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEdBQzdDLENBQ0csQ0FDUixDQUFDO0VBQ0osQ0FBQztFQUVPLGVBQWU7O0lBQ3JCLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEUsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUkscUJBQXFCLENBQ3BELElBQUksQ0FBQyxnQkFBZ0IsRUFDckIsTUFBTSxFQUNOLEdBQUcsRUFBRSxXQUFDLE9BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxLQUFLLENBQUEsRUFBQSxFQUN4QixNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFFBQVEsQ0FDdEIsQ0FBQztFQUNKLENBQUM7RUFFTyx1QkFBdUI7O0lBQzdCLE1BQUEsSUFBSSxDQUFDLDRCQUE0QiwwQ0FBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxTQUFTLENBQUM7RUFDaEQsQ0FBQztFQUVPLHVCQUF1Qjs7SUFDN0IsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFFL0IsSUFBSSxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxFQUFFO01BQ3RDLElBQUksQ0FBQyw0QkFBNEI7UUFDL0IsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSwwQkFBMEIsQ0FDckMsSUFBSSw2QkFBNkIsQ0FDL0IsSUFBSSxDQUFDLHFCQUFxQixFQUMxQixJQUFJLENBQUMscUJBQXFCLENBQzNCLENBQ0YsQ0FBQztLQUNMO0VBQ0gsQ0FBQztFQUVPLG1CQUFtQjs7SUFDekIsTUFBQSxJQUFJLENBQUMsd0JBQXdCLDBDQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ3pDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxTQUFTLENBQUM7SUFFMUMsTUFBQSxJQUFJLENBQUMsd0JBQXdCLDBDQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ3pDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxTQUFTLENBQUM7RUFDNUMsQ0FBQztFQUVPLG1CQUFtQjtJQUN6QixJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixDQUN4RSxDQUFDLFFBQVEsRUFBRSxFQUFFO01BQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQyxDQUNGLENBQUM7RUFDSixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQ0YifQ==
@@ -1,5 +1,6 @@
1
1
  import { Component, Element, Event, h, Host, Listen, Method, Prop, Watch, } from '@stencil/core';
2
2
  import { MEASUREMENT_SNAP_DISTANCE } from '../../lib/constants';
3
+ import { makeMinimumDistanceResult, MeasurementModel, } from '../../lib/measurement';
3
4
  import { stampTemplateWithId } from '../../lib/templates';
4
5
  import { DistanceMeasurement, } from '../../lib/types';
5
6
  import { isVertexViewerDistanceMeasurement } from '../viewer-measurement-distance/utils';
@@ -27,6 +28,17 @@ export class ViewerMeasurements {
27
28
  * value of 0 disables snapping.
28
29
  */
29
30
  this.snapDistance = MEASUREMENT_SNAP_DISTANCE;
31
+ /**
32
+ * Enables the display of axis reference lines between the start and end
33
+ * point of selected measurements.
34
+ */
35
+ this.showAxisReferenceLines = false;
36
+ /**
37
+ * The measurement model that will be updated with the selected measurement.
38
+ * You can pass this to a <vertex-viewer-measurement-details> component to
39
+ * display measurement outcomes.
40
+ */
41
+ this.measurementModel = new MeasurementModel();
30
42
  }
31
43
  /**
32
44
  * Adds a new measurement as a child to this component. A new measurement
@@ -95,9 +107,23 @@ export class ViewerMeasurements {
95
107
  * @ignore
96
108
  */
97
109
  async handleSelectedMeasurementIdChanged() {
110
+ this.measurementModel.clearOutcome();
98
111
  const measurements = await this.getMeasurementElements();
99
112
  measurements.forEach((m) => {
100
- m.mode = m.id === this.selectedMeasurementId ? 'edit' : '';
113
+ if (m.id === this.selectedMeasurementId) {
114
+ m.mode = 'edit';
115
+ m.showAxisReferenceLines = this.showAxisReferenceLines;
116
+ if (m.start != null && m.end != null) {
117
+ this.measurementModel.setOutcome({
118
+ isApproximate: true,
119
+ results: [makeMinimumDistanceResult(m.start, m.end)],
120
+ });
121
+ }
122
+ }
123
+ else {
124
+ m.mode = '';
125
+ m.showAxisReferenceLines = false;
126
+ }
101
127
  });
102
128
  }
103
129
  /**
@@ -376,6 +402,45 @@ export class ViewerMeasurements {
376
402
  "attribute": "snap-distance",
377
403
  "reflect": false,
378
404
  "defaultValue": "MEASUREMENT_SNAP_DISTANCE"
405
+ },
406
+ "showAxisReferenceLines": {
407
+ "type": "boolean",
408
+ "mutable": false,
409
+ "complexType": {
410
+ "original": "boolean",
411
+ "resolved": "boolean",
412
+ "references": {}
413
+ },
414
+ "required": false,
415
+ "optional": false,
416
+ "docs": {
417
+ "tags": [],
418
+ "text": "Enables the display of axis reference lines between the start and end\npoint of selected measurements."
419
+ },
420
+ "attribute": "show-axis-reference-lines",
421
+ "reflect": false,
422
+ "defaultValue": "false"
423
+ },
424
+ "measurementModel": {
425
+ "type": "unknown",
426
+ "mutable": false,
427
+ "complexType": {
428
+ "original": "MeasurementModel",
429
+ "resolved": "MeasurementModel",
430
+ "references": {
431
+ "MeasurementModel": {
432
+ "location": "import",
433
+ "path": "../../lib/measurement"
434
+ }
435
+ }
436
+ },
437
+ "required": false,
438
+ "optional": false,
439
+ "docs": {
440
+ "tags": [],
441
+ "text": "The measurement model that will be updated with the selected measurement.\nYou can pass this to a <vertex-viewer-measurement-details> component to\ndisplay measurement outcomes."
442
+ },
443
+ "defaultValue": "new MeasurementModel()"
379
444
  }
380
445
  }; }
381
446
  static get events() { return [{
@@ -587,4 +652,4 @@ export class ViewerMeasurements {
587
652
  "passive": true
588
653
  }]; }
589
654
  }
590
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLW1lYXN1cmVtZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlci1tZWFzdXJlbWVudHMvdmlld2VyLW1lYXN1cmVtZW50cy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUVMLENBQUMsRUFDRCxJQUFJLEVBQ0osTUFBTSxFQUNOLE1BQU0sRUFDTixJQUFJLEVBQ0osS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFDTCxtQkFBbUIsR0FHcEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQVF6RixNQUFNLE9BQU8sa0JBQWtCO0VBTC9CO0lBY0U7O09BRUc7SUFFSSxTQUFJLEdBQThCLFVBQVUsQ0FBQztJQUVwRDs7T0FFRztJQUVJLFVBQUssR0FBcUIsYUFBYSxDQUFDO0lBRS9DOztPQUVHO0lBRUkscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO0lBRTVCOzs7T0FHRztJQUVJLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFleEI7OztPQUdHO0lBRUksaUJBQVksR0FBVyx5QkFBeUIsQ0FBQztHQXdSekQ7RUFyUUM7Ozs7Ozs7O0tBUUc7RUFFSSxLQUFLLENBQUMsY0FBYyxDQUN6QixXQUF3QjtJQUV4QixJQUFJLFdBQVcsWUFBWSxtQkFBbUIsRUFBRTtNQUM5QyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxDQUFDO01BRWhELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRSxDQUFDO01B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
655
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLW1lYXN1cmVtZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlci1tZWFzdXJlbWVudHMvdmlld2VyLW1lYXN1cmVtZW50cy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUVMLENBQUMsRUFDRCxJQUFJLEVBQ0osTUFBTSxFQUNOLE1BQU0sRUFDTixJQUFJLEVBQ0osS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hFLE9BQU8sRUFDTCx5QkFBeUIsRUFDekIsZ0JBQWdCLEdBQ2pCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUNMLG1CQUFtQixHQUdwQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBUXpGLE1BQU0sT0FBTyxrQkFBa0I7RUFML0I7SUFjRTs7T0FFRztJQUVJLFNBQUksR0FBOEIsVUFBVSxDQUFDO0lBRXBEOztPQUVHO0lBRUksVUFBSyxHQUFxQixhQUFhLENBQUM7SUFFL0M7O09BRUc7SUFFSSxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFFNUI7OztPQUdHO0lBRUksYUFBUSxHQUFHLEtBQUssQ0FBQztJQWV4Qjs7O09BR0c7SUFFSSxpQkFBWSxHQUFXLHlCQUF5QixDQUFDO0lBRXhEOzs7T0FHRztJQUVJLDJCQUFzQixHQUFHLEtBQUssQ0FBQztJQUV0Qzs7OztPQUlHO0lBRUkscUJBQWdCLEdBQXFCLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztHQXVTcEU7RUFwUkM7Ozs7Ozs7O0tBUUc7RUFFSSxLQUFLLENBQUMsY0FBYyxDQUN6QixXQUF3QjtJ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
@@ -36,6 +36,24 @@
36
36
  */
37
37
  --viewer-view-cube-opacity: 0.8;
38
38
 
39
+ /**
40
+ * @prop --viewer-view-cube-triad-x-axis-color: A CSS color for the X axis of
41
+ * the triad
42
+ */
43
+ --viewer-view-cube-triad-x-axis-color: var(--x-axis-color);
44
+
45
+ /**
46
+ * @prop --viewer-view-cube-triad-y-axis-color: A CSS color for the Y axis of
47
+ * the triad
48
+ */
49
+ --viewer-view-cube-triad-y-axis-color: var(--y-axis-color);
50
+
51
+ /**
52
+ * @prop --viewer-view-cube-triad-z-axis-color: A CSS color for the Z axis of
53
+ * the triad
54
+ */
55
+ --viewer-view-cube-triad-z-axis-color: var(--z-axis-color);
56
+
39
57
  display: block;
40
58
  color: var(--neutral-700);
41
59
  width: 80px;
@@ -87,13 +105,13 @@
87
105
  font-size: 0.6875rem;
88
106
  }
89
107
  .triad-label-x {
90
- color: #ea3324;
108
+ color: var(--viewer-view-cube-triad-x-axis-color);
91
109
  }
92
110
  .triad-label-y {
93
- color: #4faf32;
111
+ color: var(--viewer-view-cube-triad-y-axis-color);
94
112
  }
95
113
  .triad-label-z {
96
- color: #0000ff;
114
+ color: var(--viewer-view-cube-triad-z-axis-color);
97
115
  }
98
116
 
99
117
  .cube {
@@ -10,7 +10,7 @@ export * from './lib/interactions/interactionHandler';
10
10
  export * from './lib/interactions/keyInteraction';
11
11
  export * from './lib/measurement';
12
12
  export { Scene } from './lib/scenes';
13
- export { LoadableResource, Frame as ReceivedFrame, FrameImage as ReceivedFrameImage, FrameScene as ReceivedFrameScene, FramePerspectiveCamera as ReceivedPerspectiveCamera, SynchronizedClock, Viewport, } from './lib/types';
13
+ export { EntityType, LoadableResource, Frame as ReceivedFrame, FrameImage as ReceivedFrameImage, FrameScene as ReceivedFrameScene, FramePerspectiveCamera as ReceivedPerspectiveCamera, SynchronizedClock, Viewport, } from './lib/types';
14
14
  export * from './lib/types/markup';
15
15
  export * from './lib/types/measurementUnits';
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEtBQUssYUFBYSxNQUFNLDRCQUE0QixDQUFDO0FBRTVELE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQztBQUV6QixjQUFjLGNBQWMsQ0FBQztBQUU3QixjQUFjLGVBQWUsQ0FBQztBQUU5QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckMsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixLQUFLLElBQUksYUFBYSxFQUN0QixVQUFVLElBQUksa0JBQWtCLEVBQ2hDLFVBQVUsSUFBSSxrQkFBa0IsRUFDaEMsc0JBQXNCLElBQUkseUJBQXlCLEVBQ25ELGlCQUFpQixFQUNqQixRQUFRLEdBQ1QsTUFBTSxhQUFhLENBQUM7QUFDckIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDhCQUE4QixDQUFDIn0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEtBQUssYUFBYSxNQUFNLDRCQUE0QixDQUFDO0FBRTVELE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQztBQUV6QixjQUFjLGNBQWMsQ0FBQztBQUU3QixjQUFjLGVBQWUsQ0FBQztBQUU5QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckMsT0FBTyxFQUNMLFVBQVUsRUFDVixnQkFBZ0IsRUFDaEIsS0FBSyxJQUFJLGFBQWEsRUFDdEIsVUFBVSxJQUFJLGtCQUFrQixFQUNoQyxVQUFVLElBQUksa0JBQWtCLEVBQ2hDLHNCQUFzQixJQUFJLHlCQUF5QixFQUNuRCxpQkFBaUIsRUFDakIsUUFBUSxHQUNULE1BQU0sYUFBYSxDQUFDO0FBQ3JCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyw4QkFBOEIsQ0FBQyJ9
@@ -74,9 +74,15 @@ CursorManager.NORMAL_PRIORITY = 10;
74
74
  * A constant representing the high priority cursors.
75
75
  */
76
76
  CursorManager.HIGH_PRIORITY = 20;
77
+ // CSS SVG images need to be URL encoded: https://yoksel.github.io/url-encoder/
77
78
  export const measurementCursor = {
78
79
  url: "data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' stroke='%23fff' stroke-width='1.25' stroke-opacity='0.5' stroke-miterlimit='10' shape-rendering='crispEdges'/%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' shape-rendering='crispEdges'/%3E%3C/svg%3E",
79
80
  offsetX: -24,
80
81
  offsetY: -24,
81
82
  };
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Vyc29ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY3Vyc29ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFpRS9EOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxhQUFhO0VBQTFCO0lBaUJFOzs7OztPQUtHO0lBQ2EsY0FBUyxHQUFHLElBQUksZUFBZSxFQUFRLENBQUM7SUFFaEQsWUFBTyxHQUFxQixFQUFFLENBQUM7SUFFL0IsV0FBTSxHQUFHLENBQUMsQ0FBQztFQWlEckIsQ0FBQztFQS9DQzs7Ozs7Ozs7O0tBU0c7RUFDSSxHQUFHLENBQ1IsTUFBYyxFQUNkLFFBQVEsR0FBRyxhQUFhLENBQUMsZUFBZTtJQUV4QyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDekIsTUFBTSxRQUFRLEdBQUcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsT0FBTyxRQUFRLENBQUM7RUFDbEIsQ0FBQztFQUVEOzs7O0tBSUc7RUFDSyxNQUFNLENBQUMsUUFBZ0I7SUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUM7SUFDbEUsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFO01BQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO01BQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7S0FDdkI7RUFDSCxDQUFDO0VBRUQ7Ozs7S0FJRztFQUNJLGVBQWU7O0lBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPO09BQ3hCLE1BQU0sRUFBRTtPQUNSLE9BQU8sRUFBRTtPQUNULElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sTUFBQSxNQUFNLENBQUMsQ0FBQyxDQUFDLDBDQUFFLE1BQU0sQ0FBQztFQUMzQixDQUFDOztBQTFFRDs7R0FFRztBQUNvQiwwQkFBWSxHQUFHLENBQUMsQ0FBQztBQUV4Qzs7O0dBR0c7QUFDb0IsNkJBQWUsR0FBRyxFQUFFLENBQUM7QUFFNUM7O0dBRUc7QUFDb0IsMkJBQWEsR0FBRyxFQUFFLENBQUM7QUErRDVDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHO0VBQy9CLEdBQUcsRUFBRSxpckJBQWlyQjtFQUN0ckIsT0FBTyxFQUFFLENBQUMsRUFBRTtFQUNaLE9BQU8sRUFBRSxDQUFDLEVBQUU7Q0FDYixDQUFDIn0=
83
+ export const measurementWithArrowCursor = {
84
+ url: "data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath class='cls-2' d='M1,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.08,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E%3Cpath class='cls-3' d='M8.75,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3C/svg%3E",
85
+ offsetX: -30,
86
+ offsetY: -30,
87
+ };
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Vyc29ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY3Vyc29ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFpRS9EOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxhQUFhO0VBQTFCO0lBaUJFOzs7OztPQUtHO0lBQ2EsY0FBUyxHQUFHLElBQUksZUFBZSxFQUFRLENBQUM7SUFFaEQsWUFBTyxHQUFxQixFQUFFLENBQUM7SUFFL0IsV0FBTSxHQUFHLENBQUMsQ0FBQztFQWlEckIsQ0FBQztFQS9DQzs7Ozs7Ozs7O0tBU0c7RUFDSSxHQUFHLENBQ1IsTUFBYyxFQUNkLFFBQVEsR0FBRyxhQUFhLENBQUMsZUFBZTtJQUV4QyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDekIsTUFBTSxRQUFRLEdBQUcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsT0FBTyxRQUFRLENBQUM7RUFDbEIsQ0FBQztFQUVEOzs7O0tBSUc7RUFDSyxNQUFNLENBQUMsUUFBZ0I7SUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUM7SUFDbEUsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFO01BQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO01BQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7S0FDdkI7RUFDSCxDQUFDO0VBRUQ7Ozs7S0FJRztFQUNJLGVBQWU7O0lBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPO09BQ3hCLE1BQU0sRUFBRTtPQUNSLE9BQU8sRUFBRTtPQUNULElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sTUFBQSxNQUFNLENBQUMsQ0FBQyxDQUFDLDBDQUFFLE1BQU0sQ0FBQztFQUMzQixDQUFDOztBQTFFRDs7R0FFRztBQUNvQiwwQkFBWSxHQUFHLENBQUMsQ0FBQztBQUV4Qzs7O0dBR0c7QUFDb0IsNkJBQWUsR0FBRyxFQUFFLENBQUM7QUFFNUM7O0dBRUc7QUFDb0IsMkJBQWEsR0FBRyxFQUFFLENBQUM7QUErRDVDLCtFQUErRTtBQUUvRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRztFQUMvQixHQUFHLEVBQUUsaXJCQUFpckI7RUFDdHJCLE9BQU8sRUFBRSxDQUFDLEVBQUU7RUFDWixPQUFPLEVBQUUsQ0FBQyxFQUFFO0NBQ2IsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHO0VBQ3hDLEdBQUcsRUFBRSxzaUNBQXNpQztFQUMzaUMsT0FBTyxFQUFFLENBQUMsRUFBRTtFQUNaLE9BQU8sRUFBRSxDQUFDLEVBQUU7Q0FDYixDQUFDIn0=
@@ -0,0 +1,19 @@
1
+ export class ElementRectObserver {
2
+ constructor() {
3
+ this.observer = new ResizeObserver(() => this.measure());
4
+ }
5
+ observe(element) {
6
+ this.element = element;
7
+ this.observer.observe(element);
8
+ this.measure();
9
+ }
10
+ disconnect() {
11
+ this.element = undefined;
12
+ this.observer.disconnect();
13
+ }
14
+ measure() {
15
+ var _a;
16
+ this.rect = (_a = this.element) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudFJlY3RPYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvZWxlbWVudFJlY3RPYnNlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sbUJBQW1CO0VBQWhDO0lBSVUsYUFBUSxHQUFtQixJQUFJLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztFQWdCOUUsQ0FBQztFQWRRLE9BQU8sQ0FBQyxPQUFvQjtJQUNqQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7RUFDakIsQ0FBQztFQUVNLFVBQVU7SUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQztJQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO0VBQzdCLENBQUM7RUFFTyxPQUFPOztJQUNiLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBQSxJQUFJLENBQUMsT0FBTywwQ0FBRSxxQkFBcUIsRUFBRSxDQUFDO0VBQ3BELENBQUM7Q0FDRiJ9