@vertexvis/viewer 1.0.2-canary.3 → 1.0.2-canary.4

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 (501) hide show
  1. package/dist/cjs/config-20ozv4y8.js.map +1 -1
  2. package/dist/cjs/controller-BhcNbaX_.js.map +1 -1
  3. package/dist/cjs/controller-CSwG6gbQ.js.map +1 -1
  4. package/dist/cjs/cursors-BZmDRtaZ.js.map +1 -1
  5. package/dist/cjs/dom-BBil4aN3.js.map +1 -1
  6. package/dist/cjs/dom-CvGkFQon.js.map +1 -1
  7. package/dist/cjs/entities-D6kgGria.js.map +1 -1
  8. package/dist/cjs/geometry_pb-BTko2Wi0.js.map +1 -1
  9. package/dist/cjs/grpc-BsWFEUrc.js.map +1 -1
  10. package/dist/cjs/index.cjs.js.map +1 -1
  11. package/dist/cjs/model-C9WvOKYT.js.map +1 -1
  12. package/dist/cjs/model-D17EQTIh.js.map +1 -1
  13. package/dist/cjs/model-DAB4oD5n.js.map +1 -1
  14. package/dist/cjs/model-DkXCzhs_.js.map +1 -1
  15. package/dist/cjs/multiElementInteractionHandler-BHvRKVIp.js.map +1 -1
  16. package/dist/cjs/overlays-B-06bUbI.js.map +1 -1
  17. package/dist/cjs/queries-Da9I-xMf.js.map +1 -1
  18. package/dist/cjs/regl-component-HhKCyGQ3.js.map +1 -1
  19. package/dist/cjs/representation_pb-CrCGjlyP.js.map +1 -1
  20. package/dist/cjs/results-1wRRZiYG.js.map +1 -1
  21. package/dist/cjs/row-Cet6xXup.js.map +1 -1
  22. package/dist/cjs/stencil-Hsr_8Chs.js.map +1 -1
  23. package/dist/cjs/streamAttributes-D_J-W8-2.js.map +1 -1
  24. package/dist/cjs/templates-DvjgjnlO.js.map +1 -1
  25. package/dist/cjs/util-DIJSIQXH.js.map +1 -1
  26. package/dist/cjs/utils-CibrnHQ4.js.map +1 -1
  27. package/dist/cjs/utils-D8MbXbwO.js.map +1 -1
  28. package/dist/cjs/utils-qErVs2Vt.js.map +1 -1
  29. package/dist/cjs/vertex-scene-tree-notification-banner_4.cjs.entry.js +6 -8
  30. package/dist/cjs/vertex-scene-tree-notification-banner_4.cjs.entry.js.map +1 -1
  31. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +1 -1
  32. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js.map +1 -1
  33. package/dist/cjs/vertex-scene-tree.cjs.entry.js +2 -2
  34. package/dist/cjs/vertex-scene-tree.cjs.entry.js.map +1 -1
  35. package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js +2 -2
  36. package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js.map +1 -1
  37. package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +1 -1
  38. package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js.map +1 -1
  39. package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +1 -1
  40. package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js.map +1 -1
  41. package/dist/cjs/vertex-viewer-hit-result-indicator.cjs.entry.js +1 -1
  42. package/dist/cjs/vertex-viewer-hit-result-indicator.cjs.entry.js.map +1 -1
  43. package/dist/cjs/vertex-viewer-icon.cjs.entry.js.map +1 -1
  44. package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js.map +1 -1
  45. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js.map +1 -1
  46. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +1 -1
  47. package/dist/cjs/vertex-viewer-markup.cjs.entry.js.map +1 -1
  48. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js.map +1 -1
  49. package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js.map +1 -1
  50. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +2 -2
  51. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js.map +1 -1
  52. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js.map +1 -1
  53. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +2 -2
  54. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js.map +1 -1
  55. package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js.map +1 -1
  56. package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +1 -1
  57. package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js.map +1 -1
  58. package/dist/cjs/vertex-viewer-teleport-tool.cjs.entry.js.map +1 -1
  59. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +4 -5
  60. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js.map +1 -1
  61. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +1 -1
  62. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js.map +1 -1
  63. package/dist/cjs/vertex-viewer-walk-mode-tool.cjs.entry.js.map +1 -1
  64. package/dist/cjs/vertex-viewer.cjs.entry.js +9 -5
  65. package/dist/cjs/vertex-viewer.cjs.entry.js.map +1 -1
  66. package/dist/cjs/viewport-CG1VYkIU.js.map +1 -1
  67. package/dist/collection/components/scene-tree/errors.js.map +1 -1
  68. package/dist/collection/components/scene-tree/lib/controller.js.map +1 -1
  69. package/dist/collection/components/scene-tree/lib/dom.js.map +1 -1
  70. package/dist/collection/components/scene-tree/lib/errors.js.map +1 -1
  71. package/dist/collection/components/scene-tree/lib/grpc.js.map +1 -1
  72. package/dist/collection/components/scene-tree/lib/handlers.js.map +1 -1
  73. package/dist/collection/components/scene-tree/lib/row.js.map +1 -1
  74. package/dist/collection/components/scene-tree/lib/viewer-ops.js.map +1 -1
  75. package/dist/collection/components/scene-tree/scene-tree.js +2 -2
  76. package/dist/collection/components/scene-tree/scene-tree.js.map +1 -1
  77. package/dist/collection/components/scene-tree-search/scene-tree-search.js.map +1 -1
  78. package/dist/collection/components/scene-tree-table-cell/scene-tree-table-cell.js +1 -1
  79. package/dist/collection/components/scene-tree-table-cell/scene-tree-table-cell.js.map +1 -1
  80. package/dist/collection/components/scene-tree-table-cell/utils.js.map +1 -1
  81. package/dist/collection/components/scene-tree-table-layout/lib/dom.js.map +1 -1
  82. package/dist/collection/components/scene-tree-table-layout/lib/window.js.map +1 -1
  83. package/dist/collection/components/scene-tree-table-layout/scene-tree-table-layout.js +5 -5
  84. package/dist/collection/components/scene-tree-table-layout/scene-tree-table-layout.js.map +1 -1
  85. package/dist/collection/components/viewer/utils.js.map +1 -1
  86. package/dist/collection/components/viewer/viewer.js +9 -5
  87. package/dist/collection/components/viewer/viewer.js.map +1 -1
  88. package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.js +2 -2
  89. package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.js.map +1 -1
  90. package/dist/collection/components/viewer-dom-element/utils.js.map +1 -1
  91. package/dist/collection/components/viewer-dom-element/viewer-dom-element.js +1 -1
  92. package/dist/collection/components/viewer-dom-element/viewer-dom-element.js.map +1 -1
  93. package/dist/collection/components/viewer-dom-group/utils.js.map +1 -1
  94. package/dist/collection/components/viewer-dom-group/viewer-dom-group.js +1 -1
  95. package/dist/collection/components/viewer-dom-group/viewer-dom-group.js.map +1 -1
  96. package/dist/collection/components/viewer-dom-renderer/renderer2d.js.map +1 -1
  97. package/dist/collection/components/viewer-dom-renderer/renderer3d.js.map +1 -1
  98. package/dist/collection/components/viewer-dom-renderer/viewer-dom-renderer.js.map +1 -1
  99. package/dist/collection/components/viewer-hit-result-indicator/lib/dom.js.map +1 -1
  100. package/dist/collection/components/viewer-hit-result-indicator/lib/indicator.js.map +1 -1
  101. package/dist/collection/components/viewer-hit-result-indicator/lib/plane.js.map +1 -1
  102. package/dist/collection/components/viewer-hit-result-indicator/lib/point.js.map +1 -1
  103. package/dist/collection/components/viewer-hit-result-indicator/viewer-hit-result-indicator.js +1 -1
  104. package/dist/collection/components/viewer-hit-result-indicator/viewer-hit-result-indicator.js.map +1 -1
  105. package/dist/collection/components/viewer-icon/viewer-icon.js.map +1 -1
  106. package/dist/collection/components/viewer-markup/markup-utils.js.map +1 -1
  107. package/dist/collection/components/viewer-markup/viewer-markup-components.js.map +1 -1
  108. package/dist/collection/components/viewer-markup/viewer-markup.js +1 -1
  109. package/dist/collection/components/viewer-markup/viewer-markup.js.map +1 -1
  110. package/dist/collection/components/viewer-markup-arrow/interactions.js.map +1 -1
  111. package/dist/collection/components/viewer-markup-arrow/utils.js.map +1 -1
  112. package/dist/collection/components/viewer-markup-arrow/viewer-markup-arrow-components.js.map +1 -1
  113. package/dist/collection/components/viewer-markup-arrow/viewer-markup-arrow.js.map +1 -1
  114. package/dist/collection/components/viewer-markup-circle/interactions.js.map +1 -1
  115. package/dist/collection/components/viewer-markup-circle/utils.js.map +1 -1
  116. package/dist/collection/components/viewer-markup-circle/viewer-markup-circle.js.map +1 -1
  117. package/dist/collection/components/viewer-markup-freeform/interactions.js.map +1 -1
  118. package/dist/collection/components/viewer-markup-freeform/utils.js.map +1 -1
  119. package/dist/collection/components/viewer-markup-freeform/viewer-markup-freeform.js.map +1 -1
  120. package/dist/collection/components/viewer-markup-tool/viewer-markup-tool.js.map +1 -1
  121. package/dist/collection/components/viewer-measurement-details/viewer-measurement-details.js.map +1 -1
  122. package/dist/collection/components/viewer-measurement-distance/hitTest.js.map +1 -1
  123. package/dist/collection/components/viewer-measurement-distance/interactions.js.map +1 -1
  124. package/dist/collection/components/viewer-measurement-distance/utils.js.map +1 -1
  125. package/dist/collection/components/viewer-measurement-distance/viewer-measurement-distance.js.map +1 -1
  126. package/dist/collection/components/viewer-measurement-line/viewer-measurement-line.js +1 -1
  127. package/dist/collection/components/viewer-measurement-line/viewer-measurement-line.js.map +1 -1
  128. package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays.js +1 -1
  129. package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays.js.map +1 -1
  130. package/dist/collection/components/viewer-measurement-precise/viewer-measurement-precise.js.map +1 -1
  131. package/dist/collection/components/viewer-pin-group/utils.js.map +1 -1
  132. package/dist/collection/components/viewer-pin-group/viewer-pin-group.js +2 -2
  133. package/dist/collection/components/viewer-pin-group/viewer-pin-group.js.map +1 -1
  134. package/dist/collection/components/viewer-pin-label/viewer-pin-label.js.map +1 -1
  135. package/dist/collection/components/viewer-pin-tool/utils.js.map +1 -1
  136. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.js +1 -1
  137. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.js.map +1 -1
  138. package/dist/collection/components/viewer-teleport-tool/viewer-teleport-tool.js.map +1 -1
  139. package/dist/collection/components/viewer-transform-widget/util.js +1 -2
  140. package/dist/collection/components/viewer-transform-widget/util.js.map +1 -1
  141. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget-components.js.map +1 -1
  142. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js +3 -3
  143. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js.map +1 -1
  144. package/dist/collection/components/viewer-transform-widget/widget.js.map +1 -1
  145. package/dist/collection/components/viewer-view-cube/viewer-view-cube.js +1 -1
  146. package/dist/collection/components/viewer-view-cube/viewer-view-cube.js.map +1 -1
  147. package/dist/collection/components/viewer-walk-mode-tool/viewer-walk-mode-tool.js.map +1 -1
  148. package/dist/collection/lib/annotations/controller.js.map +1 -1
  149. package/dist/collection/lib/canvases/controller.js.map +1 -1
  150. package/dist/collection/lib/canvases/mapper.js.map +1 -1
  151. package/dist/collection/lib/config.js.map +1 -1
  152. package/dist/collection/lib/cursors.js.map +1 -1
  153. package/dist/collection/lib/dom.js.map +1 -1
  154. package/dist/collection/lib/grpc.js.map +1 -1
  155. package/dist/collection/lib/interactions/baseInteractionHandler.js.map +1 -1
  156. package/dist/collection/lib/interactions/flyToPartKeyInteraction.js.map +1 -1
  157. package/dist/collection/lib/interactions/flyToPositionKeyInteraction.js.map +1 -1
  158. package/dist/collection/lib/interactions/interactionApi.js.map +1 -1
  159. package/dist/collection/lib/interactions/interactionApiOrthographic.js.map +1 -1
  160. package/dist/collection/lib/interactions/interactionApiPerspective.js.map +1 -1
  161. package/dist/collection/lib/interactions/mouseInteractionHandler.js.map +1 -1
  162. package/dist/collection/lib/interactions/mouseInteractions.js.map +1 -1
  163. package/dist/collection/lib/interactions/multiElementInteractionHandler.js.map +1 -1
  164. package/dist/collection/lib/interactions/multiPointerInteractionHandler.js.map +1 -1
  165. package/dist/collection/lib/interactions/multiTouchInteractionHandler.js.map +1 -1
  166. package/dist/collection/lib/interactions/pointerInteractionHandler.js.map +1 -1
  167. package/dist/collection/lib/interactions/tapInteractionHandler.js.map +1 -1
  168. package/dist/collection/lib/interactions/touchInteractionHandler.js.map +1 -1
  169. package/dist/collection/lib/keyBinding.js.map +1 -1
  170. package/dist/collection/lib/mappers/annotation.js.map +1 -1
  171. package/dist/collection/lib/mappers/camera.js.map +1 -1
  172. package/dist/collection/lib/mappers/color.js.map +1 -1
  173. package/dist/collection/lib/mappers/colorMaterial.js.map +1 -1
  174. package/dist/collection/lib/mappers/corePb.js.map +1 -1
  175. package/dist/collection/lib/mappers/corePbJs.js.map +1 -1
  176. package/dist/collection/lib/mappers/frameStreaming.js.map +1 -1
  177. package/dist/collection/lib/mappers/geometry.js.map +1 -1
  178. package/dist/collection/lib/mappers/material.js.map +1 -1
  179. package/dist/collection/lib/mappers/pagination.js.map +1 -1
  180. package/dist/collection/lib/mappers/scalar.js.map +1 -1
  181. package/dist/collection/lib/mappers/streamAttributes.js.map +1 -1
  182. package/dist/collection/lib/markup/interactions.js.map +1 -1
  183. package/dist/collection/lib/measurement/controller.js.map +1 -1
  184. package/dist/collection/lib/measurement/entities.js.map +1 -1
  185. package/dist/collection/lib/measurement/interactions.js.map +1 -1
  186. package/dist/collection/lib/measurement/mapper.js.map +1 -1
  187. package/dist/collection/lib/measurement/model.js.map +1 -1
  188. package/dist/collection/lib/measurement/overlays.js.map +1 -1
  189. package/dist/collection/lib/measurement/results.js.map +1 -1
  190. package/dist/collection/lib/meters.js.map +1 -1
  191. package/dist/collection/lib/model-views/controller.js.map +1 -1
  192. package/dist/collection/lib/model-views/mapper.js.map +1 -1
  193. package/dist/collection/lib/pins/controller.js.map +1 -1
  194. package/dist/collection/lib/pins/interactions.js.map +1 -1
  195. package/dist/collection/lib/pmi/controller.js.map +1 -1
  196. package/dist/collection/lib/pmi/mapper.js.map +1 -1
  197. package/dist/collection/lib/rendering/canvas.js.map +1 -1
  198. package/dist/collection/lib/rendering/imageLoaders.js.map +1 -1
  199. package/dist/collection/lib/rendering/matrices.js.map +1 -1
  200. package/dist/collection/lib/rendering/timing.js.map +1 -1
  201. package/dist/collection/lib/rendering/utils.js.map +1 -1
  202. package/dist/collection/lib/rendering/vectors.js.map +1 -1
  203. package/dist/collection/lib/scene-items/controller.js.map +1 -1
  204. package/dist/collection/lib/scene-items/mapper.js.map +1 -1
  205. package/dist/collection/lib/scenes/camera.js.map +1 -1
  206. package/dist/collection/lib/scenes/cameraRenderResult.js.map +1 -1
  207. package/dist/collection/lib/scenes/colorMaterial.js.map +1 -1
  208. package/dist/collection/lib/scenes/crossSectioner.js.map +1 -1
  209. package/dist/collection/lib/scenes/mapper.js.map +1 -1
  210. package/dist/collection/lib/scenes/operations.js.map +1 -1
  211. package/dist/collection/lib/scenes/queries.js.map +1 -1
  212. package/dist/collection/lib/scenes/raycaster.js.map +1 -1
  213. package/dist/collection/lib/scenes/scene.js.map +1 -1
  214. package/dist/collection/lib/scenes/sceneOperationExecuteResult.js.map +1 -1
  215. package/dist/collection/lib/scenes/sceneViewStateLoader.js.map +1 -1
  216. package/dist/collection/lib/stencil.js.map +1 -1
  217. package/dist/collection/lib/storage.js.map +1 -1
  218. package/dist/collection/lib/stream/dispatcher.js.map +1 -1
  219. package/dist/collection/lib/stream/stream.js.map +1 -1
  220. package/dist/collection/lib/stream/utils.js.map +1 -1
  221. package/dist/collection/lib/teleportation/interactions.js.map +1 -1
  222. package/dist/collection/lib/templates.js.map +1 -1
  223. package/dist/collection/lib/token.js.map +1 -1
  224. package/dist/collection/lib/transforms/axis-lines.js.map +1 -1
  225. package/dist/collection/lib/transforms/axis-rotation.js.map +1 -1
  226. package/dist/collection/lib/transforms/axis-translation.js.map +1 -1
  227. package/dist/collection/lib/transforms/controller.js.map +1 -1
  228. package/dist/collection/lib/transforms/drawable.js.map +1 -1
  229. package/dist/collection/lib/transforms/hits.js.map +1 -1
  230. package/dist/collection/lib/transforms/line.js.map +1 -1
  231. package/dist/collection/lib/transforms/mesh.js.map +1 -1
  232. package/dist/collection/lib/transforms/shape.js.map +1 -1
  233. package/dist/collection/lib/transforms/transformation-delta.js.map +1 -1
  234. package/dist/collection/lib/transforms/util.js.map +1 -1
  235. package/dist/collection/lib/types/clippingPlanes.js.map +1 -1
  236. package/dist/collection/lib/types/depthBuffer.js.map +1 -1
  237. package/dist/collection/lib/types/featureMap.js.map +1 -1
  238. package/dist/collection/lib/types/flags.js.map +1 -1
  239. package/dist/collection/lib/types/frame.js.map +1 -1
  240. package/dist/collection/lib/types/frameCamera.js.map +1 -1
  241. package/dist/collection/lib/types/loadableResource.js.map +1 -1
  242. package/dist/collection/lib/types/orientation.js.map +1 -1
  243. package/dist/collection/lib/types/sceneViewStateIdentifier.js.map +1 -1
  244. package/dist/collection/lib/types/standardView.js.map +1 -1
  245. package/dist/collection/lib/types/stencilBuffer.js.map +1 -1
  246. package/dist/collection/lib/types/synchronizedClock.js.map +1 -1
  247. package/dist/collection/lib/types/viewport.js.map +1 -1
  248. package/dist/collection/lib/visibilityObserver.js.map +1 -1
  249. package/dist/collection/lib/volume-intersection/controller.js.map +1 -1
  250. package/dist/collection/lib/volume-intersection/interactions.js.map +1 -1
  251. package/dist/collection/lib/volume-intersection/model.js.map +1 -1
  252. package/dist/collection/lib/walk-mode/controller.js.map +1 -1
  253. package/dist/collection/lib/walk-mode/interactions.js.map +1 -1
  254. package/dist/collection/lib/walk-mode/model.js.map +1 -1
  255. package/dist/collection/lib/webgl/regl-component.js.map +1 -1
  256. package/dist/collection/testing/annotations.js.map +1 -1
  257. package/dist/collection/testing/canvases.js.map +1 -1
  258. package/dist/collection/testing/colors.js.map +1 -1
  259. package/dist/collection/testing/eventually.js.map +1 -1
  260. package/dist/collection/testing/fixtures.js.map +1 -1
  261. package/dist/collection/testing/grpc.js +3 -9
  262. package/dist/collection/testing/grpc.js.map +1 -1
  263. package/dist/collection/testing/modelViews.js.map +1 -1
  264. package/dist/collection/testing/pmi.js.map +1 -1
  265. package/dist/collection/testing/random.js.map +1 -1
  266. package/dist/collection/testing/resizeObserver.js.map +1 -1
  267. package/dist/collection/testing/scene-items-helper.js.map +1 -1
  268. package/dist/collection/testing/sceneTree.js.map +1 -1
  269. package/dist/collection/testing/viewer.js.map +1 -1
  270. package/dist/collection/testing/webgl.js.map +1 -1
  271. package/dist/components/index.js.map +1 -1
  272. package/dist/components/{p-St4ctu2K.js → p-3-bKfpqr.js} +2 -2
  273. package/dist/components/{p-St4ctu2K.js.map → p-3-bKfpqr.js.map} +1 -1
  274. package/dist/components/p-3DqRAYgO.js.map +1 -1
  275. package/dist/components/p-B-ToCp8-.js.map +1 -1
  276. package/dist/components/p-B156bTbY.js +5 -0
  277. package/dist/components/p-B156bTbY.js.map +1 -0
  278. package/dist/components/p-B9R0QWr4.js.map +1 -1
  279. package/dist/components/p-BCOD9yfw.js.map +1 -1
  280. package/dist/components/p-BHAaIoH5.js.map +1 -1
  281. package/dist/components/{p-Doltf1wO.js → p-BOJJZ1cN.js} +2 -2
  282. package/dist/components/p-BOJJZ1cN.js.map +1 -0
  283. package/dist/components/p-BkHp-aAR.js.map +1 -1
  284. package/dist/components/p-Bkm6H5uq.js.map +1 -1
  285. package/dist/components/p-C-VWDW9n.js.map +1 -1
  286. package/dist/components/p-C79PxobX.js.map +1 -1
  287. package/dist/components/p-CAugdB_8.js.map +1 -1
  288. package/dist/components/p-CEzVEgdQ.js.map +1 -1
  289. package/dist/components/p-CGCJ5hbJ.js.map +1 -1
  290. package/dist/components/p-COlcifvm.js.map +1 -1
  291. package/dist/components/p-CXTH3zrN.js.map +1 -1
  292. package/dist/components/p-CZCXdo3t.js.map +1 -1
  293. package/dist/components/p-Cd7kap5W.js.map +1 -1
  294. package/dist/components/p-CiSHWNC4.js.map +1 -1
  295. package/dist/components/p-CjG1fMh1.js.map +1 -1
  296. package/dist/components/p-CkjXRDNL.js.map +1 -1
  297. package/dist/components/p-D0KZu516.js.map +1 -1
  298. package/dist/components/p-D12q-fpW.js.map +1 -1
  299. package/dist/components/p-D33gVA2W.js.map +1 -1
  300. package/dist/components/p-DC86ZXai.js.map +1 -1
  301. package/dist/components/{p-B80hfIq6.js → p-DF4kEsJU.js} +2 -2
  302. package/dist/components/p-DF4kEsJU.js.map +1 -0
  303. package/dist/components/p-DRh4_Z-g.js.map +1 -1
  304. package/dist/components/p-DRnMrHWY.js.map +1 -1
  305. package/dist/components/{p-b0ZzPHz8.js → p-DUC59SSO.js} +2 -2
  306. package/dist/components/p-DUC59SSO.js.map +1 -0
  307. package/dist/components/p-DVW2WZTq.js.map +1 -1
  308. package/dist/components/p-DZI8pnGz.js.map +1 -1
  309. package/dist/components/p-Dbz9yUqC.js.map +1 -1
  310. package/dist/components/p-Yfi0i5Kj.js.map +1 -1
  311. package/dist/components/p-abSJ29r7.js.map +1 -1
  312. package/dist/components/p-ahjMltGJ.js.map +1 -1
  313. package/dist/components/p-bal2RLiw.js.map +1 -1
  314. package/dist/components/{p-BopQW1sA.js → p-oK38ynrd.js} +2 -2
  315. package/dist/components/p-oK38ynrd.js.map +1 -0
  316. package/dist/components/vertex-scene-tree-table-cell.js +1 -1
  317. package/dist/components/vertex-scene-tree-table-cell.js.map +1 -1
  318. package/dist/components/vertex-scene-tree-table-layout.js +1 -1
  319. package/dist/components/vertex-scene-tree.js +1 -1
  320. package/dist/components/vertex-scene-tree.js.map +1 -1
  321. package/dist/components/vertex-viewer-box-query-tool.js +1 -1
  322. package/dist/components/vertex-viewer-box-query-tool.js.map +1 -1
  323. package/dist/components/vertex-viewer-dom-element.js +1 -1
  324. package/dist/components/vertex-viewer-dom-group.js +1 -1
  325. package/dist/components/vertex-viewer-hit-result-indicator.js +1 -1
  326. package/dist/components/vertex-viewer-hit-result-indicator.js.map +1 -1
  327. package/dist/components/vertex-viewer-markup-tool.js.map +1 -1
  328. package/dist/components/vertex-viewer-markup.js +1 -1
  329. package/dist/components/vertex-viewer-markup.js.map +1 -1
  330. package/dist/components/vertex-viewer-measurement-details.js.map +1 -1
  331. package/dist/components/vertex-viewer-measurement-distance.js +1 -1
  332. package/dist/components/vertex-viewer-measurement-distance.js.map +1 -1
  333. package/dist/components/vertex-viewer-measurement-line.js +1 -1
  334. package/dist/components/vertex-viewer-measurement-overlays.js +1 -1
  335. package/dist/components/vertex-viewer-measurement-precise.js +1 -1
  336. package/dist/components/vertex-viewer-measurement-precise.js.map +1 -1
  337. package/dist/components/vertex-viewer-pin-group.js +1 -1
  338. package/dist/components/vertex-viewer-pin-tool.js +1 -1
  339. package/dist/components/vertex-viewer-pin-tool.js.map +1 -1
  340. package/dist/components/vertex-viewer-transform-widget.js +1 -1
  341. package/dist/components/vertex-viewer-transform-widget.js.map +1 -1
  342. package/dist/components/vertex-viewer-view-cube.js +1 -1
  343. package/dist/components/vertex-viewer-view-cube.js.map +1 -1
  344. package/dist/components/vertex-viewer-walk-mode-tool.js.map +1 -1
  345. package/dist/components/vertex-viewer.js +1 -1
  346. package/dist/components/vertex-viewer.js.map +1 -1
  347. package/dist/esm/config-lglER3mU.js.map +1 -1
  348. package/dist/esm/controller-BMWGs-I6.js.map +1 -1
  349. package/dist/esm/controller-Iymb_J2R.js.map +1 -1
  350. package/dist/esm/cursors-BbBDEutb.js.map +1 -1
  351. package/dist/esm/dom-B3m2VjbN.js.map +1 -1
  352. package/dist/esm/dom-DX6pEG54.js.map +1 -1
  353. package/dist/esm/entities-zRken6VS.js.map +1 -1
  354. package/dist/esm/geometry_pb-BiZRfctN.js.map +1 -1
  355. package/dist/esm/grpc-CZAYqbTu.js.map +1 -1
  356. package/dist/esm/index.js.map +1 -1
  357. package/dist/esm/model-BYW5YIye.js.map +1 -1
  358. package/dist/esm/model-CLtwOS0o.js.map +1 -1
  359. package/dist/esm/model-D0EJdHmW.js.map +1 -1
  360. package/dist/esm/model-DHJ5aE4y.js.map +1 -1
  361. package/dist/esm/multiElementInteractionHandler-DwjL-r55.js.map +1 -1
  362. package/dist/esm/overlays-BE1oqniA.js.map +1 -1
  363. package/dist/esm/queries-DEzCmbTD.js.map +1 -1
  364. package/dist/esm/regl-component-DmkowWhg.js.map +1 -1
  365. package/dist/esm/representation_pb-g4f0WC4k.js.map +1 -1
  366. package/dist/esm/results-CFB6nKu8.js.map +1 -1
  367. package/dist/esm/row-CiSHWNC4.js.map +1 -1
  368. package/dist/esm/stencil-BV-7pO4q.js.map +1 -1
  369. package/dist/esm/streamAttributes-Cp8PEH9A.js.map +1 -1
  370. package/dist/esm/templates-DRh4_Z-g.js.map +1 -1
  371. package/dist/esm/util-BCZZYmp4.js.map +1 -1
  372. package/dist/esm/utils-BvZ9-fs0.js.map +1 -1
  373. package/dist/esm/utils-DC86ZXai.js.map +1 -1
  374. package/dist/esm/utils-D_pIldrS.js.map +1 -1
  375. package/dist/esm/vertex-scene-tree-notification-banner_4.entry.js +6 -8
  376. package/dist/esm/vertex-scene-tree-notification-banner_4.entry.js.map +1 -1
  377. package/dist/esm/vertex-scene-tree-table-cell.entry.js +1 -1
  378. package/dist/esm/vertex-scene-tree-table-cell.entry.js.map +1 -1
  379. package/dist/esm/vertex-scene-tree.entry.js +2 -2
  380. package/dist/esm/vertex-scene-tree.entry.js.map +1 -1
  381. package/dist/esm/vertex-viewer-box-query-tool.entry.js +2 -2
  382. package/dist/esm/vertex-viewer-box-query-tool.entry.js.map +1 -1
  383. package/dist/esm/vertex-viewer-dom-element_2.entry.js +1 -1
  384. package/dist/esm/vertex-viewer-dom-element_2.entry.js.map +1 -1
  385. package/dist/esm/vertex-viewer-dom-group.entry.js +1 -1
  386. package/dist/esm/vertex-viewer-dom-group.entry.js.map +1 -1
  387. package/dist/esm/vertex-viewer-hit-result-indicator.entry.js +1 -1
  388. package/dist/esm/vertex-viewer-hit-result-indicator.entry.js.map +1 -1
  389. package/dist/esm/vertex-viewer-icon.entry.js.map +1 -1
  390. package/dist/esm/vertex-viewer-markup-arrow_3.entry.js.map +1 -1
  391. package/dist/esm/vertex-viewer-markup-tool.entry.js.map +1 -1
  392. package/dist/esm/vertex-viewer-markup.entry.js +1 -1
  393. package/dist/esm/vertex-viewer-markup.entry.js.map +1 -1
  394. package/dist/esm/vertex-viewer-measurement-details.entry.js.map +1 -1
  395. package/dist/esm/vertex-viewer-measurement-distance.entry.js.map +1 -1
  396. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +2 -2
  397. package/dist/esm/vertex-viewer-measurement-line_2.entry.js.map +1 -1
  398. package/dist/esm/vertex-viewer-measurement-precise.entry.js.map +1 -1
  399. package/dist/esm/vertex-viewer-pin-group.entry.js +2 -2
  400. package/dist/esm/vertex-viewer-pin-group.entry.js.map +1 -1
  401. package/dist/esm/vertex-viewer-pin-label_2.entry.js.map +1 -1
  402. package/dist/esm/vertex-viewer-pin-tool.entry.js +1 -1
  403. package/dist/esm/vertex-viewer-pin-tool.entry.js.map +1 -1
  404. package/dist/esm/vertex-viewer-teleport-tool.entry.js.map +1 -1
  405. package/dist/esm/vertex-viewer-transform-widget.entry.js +4 -5
  406. package/dist/esm/vertex-viewer-transform-widget.entry.js.map +1 -1
  407. package/dist/esm/vertex-viewer-view-cube.entry.js +1 -1
  408. package/dist/esm/vertex-viewer-view-cube.entry.js.map +1 -1
  409. package/dist/esm/vertex-viewer-walk-mode-tool.entry.js.map +1 -1
  410. package/dist/esm/vertex-viewer.entry.js +9 -5
  411. package/dist/esm/vertex-viewer.entry.js.map +1 -1
  412. package/dist/esm/viewport-C8WQZxvx.js.map +1 -1
  413. package/dist/types/regl-shape.d.ts +1 -1
  414. package/dist/viewer/index.esm.js.map +1 -1
  415. package/dist/viewer/{p-eac63070.entry.js → p-051b5154.entry.js} +2 -2
  416. package/dist/viewer/p-051b5154.entry.js.map +1 -0
  417. package/dist/viewer/{p-3d3a7eeb.entry.js → p-0984c51f.entry.js} +2 -2
  418. package/dist/viewer/{p-3d3a7eeb.entry.js.map → p-0984c51f.entry.js.map} +1 -1
  419. package/dist/viewer/{p-864f40c7.entry.js → p-11cf755a.entry.js} +2 -2
  420. package/dist/viewer/p-11cf755a.entry.js.map +1 -0
  421. package/dist/viewer/{p-29d14611.entry.js → p-16775f7d.entry.js} +2 -2
  422. package/dist/viewer/p-16775f7d.entry.js.map +1 -0
  423. package/dist/viewer/{p-5a85cae5.entry.js → p-1eb636f8.entry.js} +2 -2
  424. package/dist/viewer/p-1eb636f8.entry.js.map +1 -0
  425. package/dist/viewer/{p-e993f300.entry.js → p-228d1d43.entry.js} +2 -2
  426. package/dist/viewer/p-228d1d43.entry.js.map +1 -0
  427. package/dist/viewer/p-33f44cc1.entry.js.map +1 -1
  428. package/dist/viewer/{p-3300d3dc.entry.js → p-35601c85.entry.js} +2 -2
  429. package/dist/viewer/p-35601c85.entry.js.map +1 -0
  430. package/dist/viewer/p-47766566.entry.js.map +1 -1
  431. package/dist/viewer/p-6e3a6bbd.entry.js.map +1 -1
  432. package/dist/viewer/p-7f388b45.entry.js.map +1 -1
  433. package/dist/viewer/p-89544066.entry.js.map +1 -1
  434. package/dist/viewer/{p-07b99ac9.entry.js → p-8c369777.entry.js} +2 -2
  435. package/dist/viewer/p-8c369777.entry.js.map +1 -0
  436. package/dist/viewer/{p-e59983dc.entry.js → p-9835c5e2.entry.js} +2 -2
  437. package/dist/viewer/p-9835c5e2.entry.js.map +1 -0
  438. package/dist/viewer/{p-aa95e21a.entry.js → p-9d8ff406.entry.js} +2 -2
  439. package/dist/viewer/p-9d8ff406.entry.js.map +1 -0
  440. package/dist/viewer/p-BDvACHun.js.map +1 -1
  441. package/dist/viewer/p-BIkuvTVH.js.map +1 -1
  442. package/dist/viewer/p-BRPkbTVP.js.map +1 -1
  443. package/dist/viewer/p-BsBIynwj.js.map +1 -1
  444. package/dist/viewer/p-BxtKMwBH.js.map +1 -1
  445. package/dist/viewer/p-C4y4Noe-.js.map +1 -1
  446. package/dist/viewer/p-C6KrfydC.js.map +1 -1
  447. package/dist/viewer/p-C7dYsPFU.js.map +1 -1
  448. package/dist/viewer/p-C9Cqbq6H.js.map +1 -1
  449. package/dist/viewer/p-CVWO4w6b.js.map +1 -1
  450. package/dist/viewer/p-ChqXy0cG.js.map +1 -1
  451. package/dist/viewer/p-CiSHWNC4.js.map +1 -1
  452. package/dist/viewer/p-CjG1fMh1.js.map +1 -1
  453. package/dist/viewer/p-Cs5KOvOQ.js.map +1 -1
  454. package/dist/viewer/p-CyGlYje2.js.map +1 -1
  455. package/dist/viewer/p-D6eJC1q4.js.map +1 -1
  456. package/dist/viewer/p-DC86ZXai.js.map +1 -1
  457. package/dist/viewer/p-DRh4_Z-g.js.map +1 -1
  458. package/dist/viewer/p-DUX5FvBC.js.map +1 -1
  459. package/dist/viewer/p-DX6pEG54.js.map +1 -1
  460. package/dist/viewer/p-D_ixWHO7.js.map +1 -1
  461. package/dist/viewer/p-DacE-wPp.js.map +1 -1
  462. package/dist/viewer/p-Dp56p_jX.js.map +1 -1
  463. package/dist/viewer/p-EsKoKfmx.js.map +1 -1
  464. package/dist/viewer/p-F8e15or2.js.map +1 -1
  465. package/dist/viewer/p-Jfxh0jq9.js.map +1 -1
  466. package/dist/viewer/p-WPRMWirY.js.map +1 -1
  467. package/dist/viewer/p-_93RRNxT.js.map +1 -1
  468. package/dist/viewer/p-a8a81cba.entry.js +5 -0
  469. package/dist/viewer/p-a8a81cba.entry.js.map +1 -0
  470. package/dist/viewer/p-a9282481.entry.js.map +1 -1
  471. package/dist/viewer/{p-63f4f702.entry.js → p-c7e62d66.entry.js} +2 -2
  472. package/dist/viewer/p-c7e62d66.entry.js.map +1 -0
  473. package/dist/viewer/p-d37e647b.entry.js.map +1 -1
  474. package/dist/viewer/{p-302f2078.entry.js → p-d9fe788f.entry.js} +2 -2
  475. package/dist/viewer/p-d9fe788f.entry.js.map +1 -0
  476. package/dist/viewer/p-e9b83dae.entry.js.map +1 -1
  477. package/dist/viewer/{p-70f3629d.entry.js → p-f271dc4a.entry.js} +2 -2
  478. package/dist/viewer/p-f271dc4a.entry.js.map +1 -0
  479. package/dist/viewer/p-f65c0769.entry.js.map +1 -1
  480. package/dist/viewer/viewer.esm.js +1 -1
  481. package/package.json +7 -7
  482. package/dist/components/p-B80hfIq6.js.map +0 -1
  483. package/dist/components/p-BopQW1sA.js.map +0 -1
  484. package/dist/components/p-DNtS2F8J.js +0 -5
  485. package/dist/components/p-DNtS2F8J.js.map +0 -1
  486. package/dist/components/p-Doltf1wO.js.map +0 -1
  487. package/dist/components/p-b0ZzPHz8.js.map +0 -1
  488. package/dist/viewer/p-07b99ac9.entry.js.map +0 -1
  489. package/dist/viewer/p-29d14611.entry.js.map +0 -1
  490. package/dist/viewer/p-302f2078.entry.js.map +0 -1
  491. package/dist/viewer/p-3300d3dc.entry.js.map +0 -1
  492. package/dist/viewer/p-5a85cae5.entry.js.map +0 -1
  493. package/dist/viewer/p-60c915e3.entry.js +0 -5
  494. package/dist/viewer/p-60c915e3.entry.js.map +0 -1
  495. package/dist/viewer/p-63f4f702.entry.js.map +0 -1
  496. package/dist/viewer/p-70f3629d.entry.js.map +0 -1
  497. package/dist/viewer/p-864f40c7.entry.js.map +0 -1
  498. package/dist/viewer/p-aa95e21a.entry.js.map +0 -1
  499. package/dist/viewer/p-e59983dc.entry.js.map +0 -1
  500. package/dist/viewer/p-e993f300.entry.js.map +0 -1
  501. package/dist/viewer/p-eac63070.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"templates-DvjgjnlO.js","sources":["src/lib/templates.ts"],"sourcesContent":["export function stampTemplate<E extends Element>(\n template: HTMLTemplateElement\n): E {\n const fragment = template.content.cloneNode(true) as HTMLElement;\n const element = fragment.firstElementChild;\n return element as E;\n}\n\nexport function stampTemplateWithValidation<E extends Element>(\n template: HTMLTemplateElement,\n validation: (value: unknown) => value is E,\n errorMsg?: () => void\n): E | undefined {\n const element = stampTemplate(template);\n if (validation(element)) {\n return element;\n } else {\n errorMsg?.();\n }\n}\n\nexport function stampTemplateWithId<E extends Element>(\n parent: Element,\n id: string,\n validation: (value: unknown) => value is E,\n templateNotFoundErrorMsg: () => void,\n validationErrorMsg: () => void\n): E | undefined {\n const template = getTemplateWithId(parent, id, templateNotFoundErrorMsg);\n if (template != null) {\n return stampTemplateWithValidation(\n template,\n validation,\n validationErrorMsg\n );\n }\n}\n\nexport function getTemplateWithId(\n parent: Element,\n id: string,\n errorMsg?: () => void\n): HTMLTemplateElement | undefined {\n const element = parent.querySelector(`#${id}`);\n\n if (element instanceof HTMLTemplateElement) {\n return element;\n } else {\n errorMsg?.();\n }\n}\n"],"names":[],"mappings":";;;;;AAAM,SAAU,aAAa,CAC3B,QAA6B,EAAA;IAE7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAgB;AAChE,IAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,iBAAiB;AAC1C,IAAA,OAAO,OAAY;AACrB;SAEgB,2BAA2B,CACzC,QAA6B,EAC7B,UAA0C,EAC1C,QAAqB,EAAA;AAErB,IAAA,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC;AACvC,IAAA,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE;AACvB,QAAA,OAAO,OAAO;;SACT;AACL,QAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,MAAA,GAAA,MAAA,GAAR,QAAQ,EAAI;;AAEhB;AAEM,SAAU,mBAAmB,CACjC,MAAe,EACf,EAAU,EACV,UAA0C,EAC1C,wBAAoC,EACpC,kBAA8B,EAAA;IAE9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,wBAAwB,CAAC;AACxE,IAAA,IAAI,QAAQ,IAAI,IAAI,EAAE;QACpB,OAAO,2BAA2B,CAChC,QAAQ,EACR,UAAU,EACV,kBAAkB,CACnB;;AAEL;SAEgB,iBAAiB,CAC/B,MAAe,EACf,EAAU,EACV,QAAqB,EAAA;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE,CAAC;AAE9C,IAAA,IAAI,OAAO,YAAY,mBAAmB,EAAE;AAC1C,QAAA,OAAO,OAAO;;SACT;AACL,QAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,MAAA,GAAA,MAAA,GAAR,QAAQ,EAAI;;AAEhB;;;;"}
1
+ {"version":3,"file":"templates-DvjgjnlO.js","sources":["src/lib/templates.ts"],"sourcesContent":["export function stampTemplate<E extends Element>(\n template: HTMLTemplateElement,\n): E {\n const fragment = template.content.cloneNode(true) as HTMLElement;\n const element = fragment.firstElementChild;\n return element as E;\n}\n\nexport function stampTemplateWithValidation<E extends Element>(\n template: HTMLTemplateElement,\n validation: (value: unknown) => value is E,\n errorMsg?: () => void,\n): E | undefined {\n const element = stampTemplate(template);\n if (validation(element)) {\n return element;\n } else {\n errorMsg?.();\n }\n}\n\nexport function stampTemplateWithId<E extends Element>(\n parent: Element,\n id: string,\n validation: (value: unknown) => value is E,\n templateNotFoundErrorMsg: () => void,\n validationErrorMsg: () => void,\n): E | undefined {\n const template = getTemplateWithId(parent, id, templateNotFoundErrorMsg);\n if (template != null) {\n return stampTemplateWithValidation(\n template,\n validation,\n validationErrorMsg,\n );\n }\n}\n\nexport function getTemplateWithId(\n parent: Element,\n id: string,\n errorMsg?: () => void,\n): HTMLTemplateElement | undefined {\n const element = parent.querySelector(`#${id}`);\n\n if (element instanceof HTMLTemplateElement) {\n return element;\n } else {\n errorMsg?.();\n }\n}\n"],"names":[],"mappings":";;;;;AAAM,SAAU,aAAa,CAC3B,QAA6B,EAAA;IAE7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAgB;AAChE,IAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,iBAAiB;AAC1C,IAAA,OAAO,OAAY;AACrB;SAEgB,2BAA2B,CACzC,QAA6B,EAC7B,UAA0C,EAC1C,QAAqB,EAAA;AAErB,IAAA,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC;AACvC,IAAA,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE;AACvB,QAAA,OAAO,OAAO;;SACT;AACL,QAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,MAAA,GAAA,MAAA,GAAR,QAAQ,EAAI;;AAEhB;AAEM,SAAU,mBAAmB,CACjC,MAAe,EACf,EAAU,EACV,UAA0C,EAC1C,wBAAoC,EACpC,kBAA8B,EAAA;IAE9B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,wBAAwB,CAAC;AACxE,IAAA,IAAI,QAAQ,IAAI,IAAI,EAAE;QACpB,OAAO,2BAA2B,CAChC,QAAQ,EACR,UAAU,EACV,kBAAkB,CACnB;;AAEL;SAEgB,iBAAiB,CAC/B,MAAe,EACf,EAAU,EACV,QAAqB,EAAA;IAErB,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE,CAAC;AAE9C,IAAA,IAAI,OAAO,YAAY,mBAAmB,EAAE;AAC1C,QAAA,OAAO,OAAO;;SACT;AACL,QAAA,QAAQ,KAAA,IAAA,IAAR,QAAQ,KAAA,MAAA,GAAA,MAAA,GAAR,QAAQ,EAAI;;AAEhB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"util-DIJSIQXH.js","sources":["src/lib/transforms/util.ts"],"sourcesContent":["import {\n Angle,\n Euler,\n Matrix4,\n Point,\n Quaternion,\n Vector3,\n} from '@vertexvis/geometry';\n\n/**\n * A type that wraps the local and world transforms for an item.\n */\nexport interface Transform {\n position: Vector3.Vector3;\n rotation: Vector3.Vector3;\n scale: number;\n}\n\n/**\n * Converts an array of points to an array of numbers\n * @param arr The array to convert\n * @returns The given array as an array of numbers\n */\nexport function flattenPointArray(arr: Point.Point[]): number[] {\n return arr.reduce((res, pt) => [...res, pt.x, pt.y], [] as number[]);\n}\n\n/**\n * Converts the rotation vector of a Transform from degrees to radians\n * @param transform The Transform to convert\n * @returns The Transform where the rotation matrix is in terms of radians\n */\nexport function toRadiansTransform(transform: Transform): Transform {\n const { position, rotation: r, scale } = transform;\n const rotation = Vector3.create(\n Angle.toRadians(r.x),\n Angle.toRadians(r.y),\n Angle.toRadians(r.z)\n );\n\n return { position, rotation, scale };\n}\n\n/**\n * Converts the rotation vector of a Transform from radians to degrees\n * @param transform The Transform to convert\n * @returns The Transform where the rotation matrix is in terms of degrees\n */\nexport function toDegreesTransform(transform: Transform): Transform {\n const { position, rotation: r, scale } = transform;\n const rotation = Vector3.create(\n Angle.toDegrees(r.x),\n Angle.toDegrees(r.y),\n Angle.toDegrees(r.z)\n );\n return { position, rotation, scale };\n}\n\n/**\n * Converts a Transform to a Matrix4 transform\n * @param transform The Transform to convert\n * @returns The transform as a Matrix4\n */\nexport function toMatrix(transform: Transform): Matrix4.Matrix4 {\n const { position: t, rotation, scale } = transform;\n const r = Quaternion.fromEuler(Euler.create(rotation));\n const s = Vector3.create(scale, scale, scale);\n return Matrix4.makeTRS(t, r, s);\n}\n\n/**\n * Converts a Matrix4 transform to a Transform\n * @param matrix The Matrix4 transform to convert\n * @returns The transform as a Transform\n */\nexport function toTransform(matrix: Matrix4.Matrix4): Transform {\n const position = Vector3.fromMatrixPosition(matrix);\n const rotation = Euler.fromRotationMatrix(matrix);\n const { x: scale } = Vector3.fromMatrixScale(matrix);\n return { position, rotation, scale };\n}\n\n/**\n * Converts a local transform to a world transform relative to the given parent world matrix.\n * @param localT The local transform to convert\n * @param parentWM The world matrix of the item's parent\n * @returns The world transform of the item\n */\nexport function toWorldTransform(\n localT: Transform,\n parentWM: Matrix4.Matrix4\n): Transform {\n const localM = toMatrix(toRadiansTransform(localT));\n const worldM = Matrix4.multiply(parentWM, localM);\n return toDegreesTransform(toTransform(worldM));\n}\n\n/**\n * Converts a world transform to a local transform relative to the given parent world matrix.\n * @param worldT The world transform to convert\n * @param parentWM The world matrix of the item's parent\n * @returns The local transform of the item\n */\nexport function toLocalTransform(\n worldT: Transform,\n parentWM: Matrix4.Matrix4\n): Transform {\n const worldM = toMatrix(toRadiansTransform(worldT));\n const localM = Matrix4.multiply(Matrix4.invert(parentWM), worldM);\n return toDegreesTransform(toTransform(localM));\n}\n"],"names":["Vector3","Angle","Quaternion","Euler","Matrix4"],"mappings":"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"}
1
+ {"version":3,"file":"util-DIJSIQXH.js","sources":["src/lib/transforms/util.ts"],"sourcesContent":["import {\n Angle,\n Euler,\n Matrix4,\n Point,\n Quaternion,\n Vector3,\n} from '@vertexvis/geometry';\n\n/**\n * A type that wraps the local and world transforms for an item.\n */\nexport interface Transform {\n position: Vector3.Vector3;\n rotation: Vector3.Vector3;\n scale: number;\n}\n\n/**\n * Converts an array of points to an array of numbers\n * @param arr The array to convert\n * @returns The given array as an array of numbers\n */\nexport function flattenPointArray(arr: Point.Point[]): number[] {\n return arr.reduce((res, pt) => [...res, pt.x, pt.y], [] as number[]);\n}\n\n/**\n * Converts the rotation vector of a Transform from degrees to radians\n * @param transform The Transform to convert\n * @returns The Transform where the rotation matrix is in terms of radians\n */\nexport function toRadiansTransform(transform: Transform): Transform {\n const { position, rotation: r, scale } = transform;\n const rotation = Vector3.create(\n Angle.toRadians(r.x),\n Angle.toRadians(r.y),\n Angle.toRadians(r.z),\n );\n\n return { position, rotation, scale };\n}\n\n/**\n * Converts the rotation vector of a Transform from radians to degrees\n * @param transform The Transform to convert\n * @returns The Transform where the rotation matrix is in terms of degrees\n */\nexport function toDegreesTransform(transform: Transform): Transform {\n const { position, rotation: r, scale } = transform;\n const rotation = Vector3.create(\n Angle.toDegrees(r.x),\n Angle.toDegrees(r.y),\n Angle.toDegrees(r.z),\n );\n return { position, rotation, scale };\n}\n\n/**\n * Converts a Transform to a Matrix4 transform\n * @param transform The Transform to convert\n * @returns The transform as a Matrix4\n */\nexport function toMatrix(transform: Transform): Matrix4.Matrix4 {\n const { position: t, rotation, scale } = transform;\n const r = Quaternion.fromEuler(Euler.create(rotation));\n const s = Vector3.create(scale, scale, scale);\n return Matrix4.makeTRS(t, r, s);\n}\n\n/**\n * Converts a Matrix4 transform to a Transform\n * @param matrix The Matrix4 transform to convert\n * @returns The transform as a Transform\n */\nexport function toTransform(matrix: Matrix4.Matrix4): Transform {\n const position = Vector3.fromMatrixPosition(matrix);\n const rotation = Euler.fromRotationMatrix(matrix);\n const { x: scale } = Vector3.fromMatrixScale(matrix);\n return { position, rotation, scale };\n}\n\n/**\n * Converts a local transform to a world transform relative to the given parent world matrix.\n * @param localT The local transform to convert\n * @param parentWM The world matrix of the item's parent\n * @returns The world transform of the item\n */\nexport function toWorldTransform(\n localT: Transform,\n parentWM: Matrix4.Matrix4,\n): Transform {\n const localM = toMatrix(toRadiansTransform(localT));\n const worldM = Matrix4.multiply(parentWM, localM);\n return toDegreesTransform(toTransform(worldM));\n}\n\n/**\n * Converts a world transform to a local transform relative to the given parent world matrix.\n * @param worldT The world transform to convert\n * @param parentWM The world matrix of the item's parent\n * @returns The local transform of the item\n */\nexport function toLocalTransform(\n worldT: Transform,\n parentWM: Matrix4.Matrix4,\n): Transform {\n const worldM = toMatrix(toRadiansTransform(worldT));\n const localM = Matrix4.multiply(Matrix4.invert(parentWM), worldM);\n return toDegreesTransform(toTransform(localM));\n}\n"],"names":["Vector3","Angle","Quaternion","Euler","Matrix4"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils-CibrnHQ4.js","sources":["src/components/viewer-measurement-distance/utils.ts"],"sourcesContent":["import { Line3, Point } from '@vertexvis/geometry';\n\nimport { FrameCameraBase, Viewport } from '../../lib/types';\n\nexport type Anchor = 'start' | 'end';\n\nexport interface MeasurementElementPositions {\n startPt?: Point.Point;\n endPt?: Point.Point;\n labelPt?: Point.Point;\n indicatorPt?: Point.Point;\n hideStart?: boolean;\n hideEnd?: boolean;\n}\n\nexport interface RenderParams {\n viewport: Viewport;\n camera: FrameCameraBase;\n}\n\nexport function translateWorldLineToViewport(\n line: Line3.Line3,\n params: RenderParams\n): {\n start: Point.Point;\n end: Point.Point;\n hideStart: boolean;\n hideEnd: boolean;\n} {\n const { camera, viewport } = params;\n\n const isStartBehindCamera = camera.isPointBehindNear(line.start);\n const isEndBehindCamera = camera.isPointBehindNear(line.end);\n\n // If either the start or end of the line is behind the camera, then we need\n // to truncate the line so it can be presented correctly. You cannot use a\n // projection matrix to compute a point behind the near plane.\n if (isStartBehindCamera || isEndBehindCamera) {\n const pt = camera.intersectLineWithNear(line);\n const newLine = Line3.create({\n start: isStartBehindCamera && pt != null ? pt : line.start,\n end: isEndBehindCamera && pt != null ? pt : line.end,\n });\n\n const ndc = Line3.transformMatrix(newLine, camera.projectionViewMatrix);\n return {\n start: viewport.transformVectorToViewport(ndc.start),\n end: viewport.transformVectorToViewport(ndc.end),\n hideStart: isStartBehindCamera,\n hideEnd: isEndBehindCamera,\n };\n } else {\n const ndc = Line3.transformMatrix(line, camera.projectionViewMatrix);\n return {\n start: viewport.transformVectorToViewport(ndc.start),\n end: viewport.transformVectorToViewport(ndc.end),\n hideStart: false,\n hideEnd: false,\n };\n }\n}\n\nexport function getViewingElementPositions(\n line: Line3.Line3,\n interactingAnchor: Anchor | 'none',\n params: RenderParams\n): MeasurementElementPositions {\n const {\n start: startPt,\n end: endPt,\n hideStart,\n hideEnd,\n } = translateWorldLineToViewport(line, params);\n const labelPt = Point.lerp(startPt, endPt, 0.5);\n const indicatorPt =\n interactingAnchor !== 'none'\n ? getIndicatorPtForAnchor(line, interactingAnchor, params)\n : undefined;\n\n return { startPt, endPt, labelPt, indicatorPt, hideStart, hideEnd };\n}\n\nexport function isVertexViewerDistanceMeasurement(\n el: unknown\n): el is HTMLVertexViewerMeasurementDistanceElement {\n return (\n el instanceof HTMLElement &&\n el.nodeName === 'VERTEX-VIEWER-MEASUREMENT-DISTANCE'\n );\n}\n\nfunction getIndicatorPtForAnchor(\n line: Line3.Line3,\n anchor: Anchor,\n params: RenderParams\n): Point.Point {\n return params.viewport.transformWorldToViewport(\n anchor === 'start' ? line.start : line.end,\n params.camera.projectionViewMatrix\n );\n}\n"],"names":["Line3","Point"],"mappings":";;;;;;;AAoBM,SAAU,4BAA4B,CAC1C,IAAiB,EACjB,MAAoB,EAAA;AAOpB,IAAA,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM;IAEnC,MAAM,mBAAmB,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;IAChE,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;;;;AAK5D,IAAA,IAAI,mBAAmB,IAAI,iBAAiB,EAAE;QAC5C,MAAM,EAAE,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC;AAC7C,QAAA,MAAM,OAAO,GAAGA,YAAK,CAAC,MAAM,CAAC;AAC3B,YAAA,KAAK,EAAE,mBAAmB,IAAI,EAAE,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK;AAC1D,YAAA,GAAG,EAAE,iBAAiB,IAAI,EAAE,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG;AACrD,SAAA,CAAC;AAEF,QAAA,MAAM,GAAG,GAAGA,YAAK,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,oBAAoB,CAAC;QACvE,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC;YACpD,GAAG,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,GAAG,CAAC;AAChD,YAAA,SAAS,EAAE,mBAAmB;AAC9B,YAAA,OAAO,EAAE,iBAAiB;SAC3B;;SACI;AACL,QAAA,MAAM,GAAG,GAAGA,YAAK,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,oBAAoB,CAAC;QACpE,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC;YACpD,GAAG,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,GAAG,CAAC;AAChD,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,OAAO,EAAE,KAAK;SACf;;AAEL;SAEgB,0BAA0B,CACxC,IAAiB,EACjB,iBAAkC,EAClC,MAAoB,EAAA;IAEpB,MAAM,EACJ,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,KAAK,EACV,SAAS,EACT,OAAO,GACR,GAAG,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC;AAC9C,IAAA,MAAM,OAAO,GAAGC,YAAK,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC;AAC/C,IAAA,MAAM,WAAW,GACf,iBAAiB,KAAK;UAClB,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM;UACvD,SAAS;AAEf,IAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE;AACrE;AAWA,SAAS,uBAAuB,CAC9B,IAAiB,EACjB,MAAc,EACd,MAAoB,EAAA;AAEpB,IAAA,OAAO,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAC7C,MAAM,KAAK,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAC1C,MAAM,CAAC,MAAM,CAAC,oBAAoB,CACnC;AACH;;;;;"}
1
+ {"version":3,"file":"utils-CibrnHQ4.js","sources":["src/components/viewer-measurement-distance/utils.ts"],"sourcesContent":["import { Line3, Point } from '@vertexvis/geometry';\n\nimport { FrameCameraBase, Viewport } from '../../lib/types';\n\nexport type Anchor = 'start' | 'end';\n\nexport interface MeasurementElementPositions {\n startPt?: Point.Point;\n endPt?: Point.Point;\n labelPt?: Point.Point;\n indicatorPt?: Point.Point;\n hideStart?: boolean;\n hideEnd?: boolean;\n}\n\nexport interface RenderParams {\n viewport: Viewport;\n camera: FrameCameraBase;\n}\n\nexport function translateWorldLineToViewport(\n line: Line3.Line3,\n params: RenderParams,\n): {\n start: Point.Point;\n end: Point.Point;\n hideStart: boolean;\n hideEnd: boolean;\n} {\n const { camera, viewport } = params;\n\n const isStartBehindCamera = camera.isPointBehindNear(line.start);\n const isEndBehindCamera = camera.isPointBehindNear(line.end);\n\n // If either the start or end of the line is behind the camera, then we need\n // to truncate the line so it can be presented correctly. You cannot use a\n // projection matrix to compute a point behind the near plane.\n if (isStartBehindCamera || isEndBehindCamera) {\n const pt = camera.intersectLineWithNear(line);\n const newLine = Line3.create({\n start: isStartBehindCamera && pt != null ? pt : line.start,\n end: isEndBehindCamera && pt != null ? pt : line.end,\n });\n\n const ndc = Line3.transformMatrix(newLine, camera.projectionViewMatrix);\n return {\n start: viewport.transformVectorToViewport(ndc.start),\n end: viewport.transformVectorToViewport(ndc.end),\n hideStart: isStartBehindCamera,\n hideEnd: isEndBehindCamera,\n };\n } else {\n const ndc = Line3.transformMatrix(line, camera.projectionViewMatrix);\n return {\n start: viewport.transformVectorToViewport(ndc.start),\n end: viewport.transformVectorToViewport(ndc.end),\n hideStart: false,\n hideEnd: false,\n };\n }\n}\n\nexport function getViewingElementPositions(\n line: Line3.Line3,\n interactingAnchor: Anchor | 'none',\n params: RenderParams,\n): MeasurementElementPositions {\n const {\n start: startPt,\n end: endPt,\n hideStart,\n hideEnd,\n } = translateWorldLineToViewport(line, params);\n const labelPt = Point.lerp(startPt, endPt, 0.5);\n const indicatorPt =\n interactingAnchor !== 'none'\n ? getIndicatorPtForAnchor(line, interactingAnchor, params)\n : undefined;\n\n return { startPt, endPt, labelPt, indicatorPt, hideStart, hideEnd };\n}\n\nexport function isVertexViewerDistanceMeasurement(\n el: unknown,\n): el is HTMLVertexViewerMeasurementDistanceElement {\n return (\n el instanceof HTMLElement &&\n el.nodeName === 'VERTEX-VIEWER-MEASUREMENT-DISTANCE'\n );\n}\n\nfunction getIndicatorPtForAnchor(\n line: Line3.Line3,\n anchor: Anchor,\n params: RenderParams,\n): Point.Point {\n return params.viewport.transformWorldToViewport(\n anchor === 'start' ? line.start : line.end,\n params.camera.projectionViewMatrix,\n );\n}\n"],"names":["Line3","Point"],"mappings":";;;;;;;AAoBM,SAAU,4BAA4B,CAC1C,IAAiB,EACjB,MAAoB,EAAA;AAOpB,IAAA,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM;IAEnC,MAAM,mBAAmB,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;IAChE,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;;;;AAK5D,IAAA,IAAI,mBAAmB,IAAI,iBAAiB,EAAE;QAC5C,MAAM,EAAE,GAAG,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC;AAC7C,QAAA,MAAM,OAAO,GAAGA,YAAK,CAAC,MAAM,CAAC;AAC3B,YAAA,KAAK,EAAE,mBAAmB,IAAI,EAAE,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK;AAC1D,YAAA,GAAG,EAAE,iBAAiB,IAAI,EAAE,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG;AACrD,SAAA,CAAC;AAEF,QAAA,MAAM,GAAG,GAAGA,YAAK,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,oBAAoB,CAAC;QACvE,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC;YACpD,GAAG,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,GAAG,CAAC;AAChD,YAAA,SAAS,EAAE,mBAAmB;AAC9B,YAAA,OAAO,EAAE,iBAAiB;SAC3B;;SACI;AACL,QAAA,MAAM,GAAG,GAAGA,YAAK,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,oBAAoB,CAAC;QACpE,OAAO;YACL,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC;YACpD,GAAG,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,GAAG,CAAC;AAChD,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,OAAO,EAAE,KAAK;SACf;;AAEL;SAEgB,0BAA0B,CACxC,IAAiB,EACjB,iBAAkC,EAClC,MAAoB,EAAA;IAEpB,MAAM,EACJ,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,KAAK,EACV,SAAS,EACT,OAAO,GACR,GAAG,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC;AAC9C,IAAA,MAAM,OAAO,GAAGC,YAAK,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC;AAC/C,IAAA,MAAM,WAAW,GACf,iBAAiB,KAAK;UAClB,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM;UACvD,SAAS;AAEf,IAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE;AACrE;AAWA,SAAS,uBAAuB,CAC9B,IAAiB,EACjB,MAAc,EACd,MAAoB,EAAA;AAEpB,IAAA,OAAO,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAC7C,MAAM,KAAK,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAC1C,MAAM,CAAC,MAAM,CAAC,oBAAoB,CACnC;AACH;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils-D8MbXbwO.js","sources":["../geometry/src/point.ts","src/components/viewer-markup-arrow/utils.ts","src/components/viewer-markup-circle/utils.ts","src/components/viewer-markup-freeform/utils.ts"],"sourcesContent":["import * as Angle from './angle';\nimport { lerp as lerpNumber } from './math';\n\n/**\n * A `Point` represents a cartesian coordinate with a horizontal and vertical\n * position or length.\n */\nexport interface Point {\n x: number;\n y: number;\n}\n\n/**\n * Returns a new `Point` with the given horizontal and vertical position.\n */\nexport function create(x = 0, y = 0): Point {\n return { x, y };\n}\n\n/**\n * Converts a polar coordinate (length and angle) into a Cartesian coordinate.\n */\nexport function polar(length: number, radians: Angle.Angle): Point {\n const x = Math.cos(radians) * length;\n const y = Math.sin(radians) * length;\n return create(x, y);\n}\n\n/**\n * Returns the distance between two points.\n */\nexport function distance(a: Point, b: Point): number {\n const delta = subtract(a, b);\n return Math.sqrt(delta.x * delta.x + delta.y * delta.y);\n}\n\n/**\n * Returns a new `Point` where `b` is subtracted from `a`.\n */\nexport function subtract(a: Point, b: Point): Point {\n return { x: a.x - b.x, y: a.y - b.y };\n}\n\n/**\n * Returns a new `Point` where `b` is added to `a`.\n */\nexport function add(a: Point, b: Point): Point {\n return { x: a.x + b.x, y: a.y + b.y };\n}\n\n/**\n * Returns `true` if the `x` and `y` positions of `a` and `b` are equal.\n */\nexport function isEqual(a: Point, b: Point): boolean {\n return a.x === b.x && a.y === b.y;\n}\n\n/**\n * Performs a linear interpolation between `a` and `b` and returns the result.\n * The value of `t` is clamped between `[0, 1]`.\n *\n * @param a The start value.\n * @param b The end value.\n * @param t A value between 0 and 1.\n * @returns A point between `a` and `b`.\n */\nexport function lerp(a: Point, b: Point, t: number): Point {\n return {\n x: lerpNumber(a.x, b.x, t),\n y: lerpNumber(a.y, b.y, t),\n };\n}\n\n/**\n * Returns a new `Point` where `x` and `y` are inverted.\n */\nexport function negate(pt: Point): Point {\n return create(-pt.x, -pt.y);\n}\n\n/**\n * Returns a new `Point` where `x` and `y` are multiplied by the given scale\n * factors.\n */\nexport function scale(pt: Point, scaleX: number, scaleY: number): Point {\n return {\n x: pt.x * scaleX,\n y: pt.y * scaleY,\n };\n}\n\n/**\n * Returns a new `Point` where `x` and `y` are multiplied by the given scale\n * factor.\n */\nexport function scaleProportional(pt: Point, scale: number): Point {\n return {\n x: pt.x * scale,\n y: pt.y * scale,\n };\n}\n\n/**\n * Returns the magnitude of a point.\n */\nexport function magnitude(pt: Point): number {\n return Math.sqrt(pt.x * pt.x + pt.y * pt.y);\n}\n\n/**\n * Transforms a vector into the corresponding normal (unit) vector.\n */\nexport function normalizeVector(pt: Point): Point {\n const magnitudeOfPoint = magnitude(pt);\n if (magnitudeOfPoint === 0) {\n return create(0, 0);\n } else {\n return scaleProportional(pt, 1 / magnitudeOfPoint);\n }\n}\n\n/**\n * Returns a new normal (unit) vector pointing between the two given points.\n */\nexport function normalDirectionVector(ptA: Point, ptB: Point): Point {\n return normalizeVector(subtract(ptB, ptA));\n}\n\n/**\n * Returns a vector orthogonal to the vector between the two given points.\n */\nexport function orthogonalVector(ptA: Point, ptB: Point): Point {\n const unitVectorBetweenPoints = normalDirectionVector(ptA, ptB);\n\n // Handle vectors that are parallel to the x or y axis\n if (unitVectorBetweenPoints.x === 0 || unitVectorBetweenPoints.y === 0) {\n return create(-1 * unitVectorBetweenPoints.y, unitVectorBetweenPoints.x);\n }\n\n if (\n Math.abs(unitVectorBetweenPoints.x) > Math.abs(unitVectorBetweenPoints.y)\n ) {\n const vectorXValue = 1 - Math.pow(unitVectorBetweenPoints.x, 2);\n const vectorYValue =\n -1 * unitVectorBetweenPoints.x * unitVectorBetweenPoints.y;\n return normalizeVector(create(vectorXValue, vectorYValue));\n } else {\n const vectorXValue =\n -1 * unitVectorBetweenPoints.x * unitVectorBetweenPoints.y;\n const vectorYValue = 1 - Math.pow(unitVectorBetweenPoints.y, 2);\n return normalizeVector(create(vectorXValue, vectorYValue));\n }\n}\n\n/**\n * Parses a JSON string representation of a Point and returns an object.\n *\n * @param json A JSON string, either in the form `[x,y]` or `{\"x\": 0, \"y\": 0}`\n * @returns A parsed Point.\n */\nexport function fromJson(json: string): Point {\n const obj = JSON.parse(json);\n if (Array.isArray(obj)) {\n const [x, y] = obj;\n return create(x, y);\n } else {\n const { x, y } = obj;\n return create(x, y);\n }\n}\n","import { Angle } from '@vertexvis/geometry';\n\nimport * as Point from '../../../../geometry/src/point';\n\nexport type LineAnchorStyle =\n | 'arrow-triangle'\n | 'arrow-line'\n | 'dot'\n | 'hash'\n | 'none';\n\nexport interface LineAnchorStylePoints {\n tip: Point.Point;\n base: Point.Point;\n arrowTriangle: ArrowheadPoints;\n arrowLine: ArrowheadPoints;\n hash: ArrowheadPoints;\n radius: number;\n}\n\nexport interface ArrowheadPoints {\n leftPoint: Point.Point;\n rightPoint: Point.Point;\n}\n\nexport interface LinePoints {\n x1: number;\n y1: number;\n x2: number;\n y2: number;\n}\n\nexport interface CirclePoints {\n cx: number;\n cy: number;\n r: number;\n}\n\nexport function createArrowheadPoints(\n start: Point.Point,\n end: Point.Point,\n arrowSideLength: number,\n arrowHeadTheta: number\n): ArrowheadPoints {\n const arrowOrthogonalVector = Point.orthogonalVector(start, end);\n const normalizedDirection = Point.normalDirectionVector(start, end);\n\n const arrowLeft = Point.subtract(\n end,\n Point.add(\n Point.scaleProportional(\n normalizedDirection,\n arrowSideLength * Math.cos(arrowHeadTheta)\n ),\n Point.scaleProportional(\n arrowOrthogonalVector,\n arrowSideLength * Math.sin(arrowHeadTheta)\n )\n )\n );\n const arrowRight = Point.subtract(\n end,\n Point.subtract(\n Point.scaleProportional(\n normalizedDirection,\n arrowSideLength * Math.cos(arrowHeadTheta)\n ),\n Point.scaleProportional(\n arrowOrthogonalVector,\n arrowSideLength * Math.sin(arrowHeadTheta)\n )\n )\n );\n\n return {\n leftPoint: arrowLeft,\n rightPoint: arrowRight,\n };\n}\n\nexport function createLineAnchorStylePoints(\n start: Point.Point,\n end: Point.Point,\n triangleArrowAngle = 65,\n lineArrowAngle = 85\n): LineAnchorStylePoints {\n // Adjust the size of the end style to the distance between the start and end points\n const distance = Point.distance(start, end);\n const arrowHeadHeight = Math.max(4, Math.min(16, distance * 0.25));\n const hashHeight = Math.max(4, Math.min(12, distance * 0.16));\n const radius = Math.min(5, distance * 0.1);\n\n // Triangle arrow position\n const triangleArrowRelativeHeight = arrowHeadHeight / distance;\n const triangleArrowBasePosition = Point.add(\n Point.scaleProportional(end, 1 - triangleArrowRelativeHeight),\n Point.scaleProportional(start, triangleArrowRelativeHeight)\n );\n const triangleArrowTheta = Angle.toRadians(triangleArrowAngle / 2);\n const triangleArrowSideLength =\n arrowHeadHeight / Math.cos(triangleArrowTheta);\n const triangleArrow = createArrowheadPoints(\n start,\n end,\n triangleArrowSideLength,\n triangleArrowTheta\n );\n\n // Line arrow position\n const lineArrowTheta = Angle.toRadians(lineArrowAngle / 2);\n const lineArrowSideLength = arrowHeadHeight / Math.cos(lineArrowTheta);\n const lineArrow = createArrowheadPoints(\n start,\n end,\n lineArrowSideLength,\n lineArrowTheta\n );\n\n // Hash position\n // Setting the arrowHeadAngle to 90 degrees results in a\n // straight hash mark perpendicular to the direction of the line\n const hashLineTheta = Angle.toRadians(90);\n const hashLine = createArrowheadPoints(start, end, hashHeight, hashLineTheta);\n\n return {\n tip: end,\n base: triangleArrowBasePosition,\n arrowTriangle: triangleArrow,\n arrowLine: lineArrow,\n hash: hashLine,\n radius: radius,\n };\n}\n\nexport function arrowheadPointsToPolygonPoints(\n points: LineAnchorStylePoints,\n scale = 1\n): string {\n const scaledRight = scalePointProportional(\n points.tip,\n points.arrowTriangle.rightPoint,\n scale\n );\n const scaledLeft = scalePointProportional(\n points.tip,\n points.arrowTriangle.leftPoint,\n scale\n );\n const scaledBase = scalePointProportional(points.tip, points.base, scale);\n\n return [points.tip, scaledRight, scaledBase, scaledLeft]\n .map((pt) => `${pt.x},${pt.y}`)\n .join(' ');\n}\n\nexport function arrowheadPointsToPathPoints(\n points: LineAnchorStylePoints,\n scale = 1\n): string {\n const scaledRight = scalePointProportional(\n points.tip,\n points.arrowLine.rightPoint,\n scale\n );\n const scaledLeft = scalePointProportional(\n points.tip,\n points.arrowLine.leftPoint,\n scale\n );\n\n return `M${scaledRight.x} ${scaledRight.y} L${points.tip.x} ${points.tip.y} L${scaledLeft.x} ${scaledLeft.y} L${points.tip.x} ${points.tip.y} Z`;\n}\n\nexport function arrowheadPointsToHashPoints(\n points: LineAnchorStylePoints,\n scale = 1\n): LinePoints {\n const scaledRight = scalePointProportional(\n points.tip,\n points.hash.rightPoint,\n scale\n );\n const scaledLeft = scalePointProportional(\n points.tip,\n points.hash.leftPoint,\n scale\n );\n\n return {\n x1: scaledRight.x,\n y1: scaledRight.y,\n x2: scaledLeft.x,\n y2: scaledLeft.y,\n };\n}\n\nexport function arrowheadPointsToCirclePoints(\n points: LineAnchorStylePoints,\n scale = 1\n): CirclePoints {\n return {\n cx: points.tip.x,\n cy: points.tip.y,\n r: points.radius * scale,\n };\n}\n\nexport function isVertexViewerArrowMarkup(\n el: unknown\n): el is HTMLVertexViewerMarkupArrowElement {\n return (\n el instanceof HTMLElement && el.nodeName === 'VERTEX-VIEWER-MARKUP-ARROW'\n );\n}\n\nexport function parsePoint(\n value: string | Point.Point | undefined\n): Point.Point | undefined {\n return typeof value === 'string' ? Point.fromJson(value) : value;\n}\n\nexport function scalePointProportional(\n basePoint: Point.Point,\n scaledPoint: Point.Point,\n scale: number\n): Point.Point {\n return Point.add(\n basePoint,\n Point.scaleProportional(Point.subtract(scaledPoint, basePoint), scale)\n );\n}\n","import { Rectangle } from '@vertexvis/geometry';\n\nexport function isVertexViewerCircleMarkup(\n el: unknown\n): el is HTMLVertexViewerMarkupCircleElement {\n return (\n el instanceof HTMLElement && el.nodeName === 'VERTEX-VIEWER-MARKUP-CIRCLE'\n );\n}\n\nexport function parseBounds(\n value: string | Rectangle.Rectangle | undefined\n): Rectangle.Rectangle | undefined {\n return typeof value === 'string' ? Rectangle.fromJson(value) : value;\n}\n","import { Point } from '@vertexvis/geometry';\n\nexport function parsePoints(\n value: string | Point.Point[] | undefined\n): Point.Point[] | undefined {\n return typeof value === 'string'\n ? JSON.parse(value).map((values: number[]) =>\n Point.fromJson(JSON.stringify(values))\n )\n : value;\n}\n\nexport function isVertexViewerFreeformMarkup(\n el: unknown\n): el is HTMLVertexViewerMarkupFreeformElement {\n return (\n el instanceof HTMLElement && el.nodeName === 'VERTEX-VIEWER-MARKUP-FREEFORM'\n );\n}\n"],"names":["Point.orthogonalVector","Point.normalDirectionVector","Point.subtract","Point.add","Point.scaleProportional","distance","Point.distance","Angle","Point.fromJson","Rectangle","Point"],"mappings":"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"}
1
+ {"version":3,"file":"utils-D8MbXbwO.js","sources":["../geometry/src/point.ts","src/components/viewer-markup-arrow/utils.ts","src/components/viewer-markup-circle/utils.ts","src/components/viewer-markup-freeform/utils.ts"],"sourcesContent":["import * as Angle from './angle';\nimport { lerp as lerpNumber } from './math';\n\n/**\n * A `Point` represents a cartesian coordinate with a horizontal and vertical\n * position or length.\n */\nexport interface Point {\n x: number;\n y: number;\n}\n\n/**\n * Returns a new `Point` with the given horizontal and vertical position.\n */\nexport function create(x = 0, y = 0): Point {\n return { x, y };\n}\n\n/**\n * Converts a polar coordinate (length and angle) into a Cartesian coordinate.\n */\nexport function polar(length: number, radians: Angle.Angle): Point {\n const x = Math.cos(radians) * length;\n const y = Math.sin(radians) * length;\n return create(x, y);\n}\n\n/**\n * Returns the distance between two points.\n */\nexport function distance(a: Point, b: Point): number {\n const delta = subtract(a, b);\n return Math.sqrt(delta.x * delta.x + delta.y * delta.y);\n}\n\n/**\n * Returns a new `Point` where `b` is subtracted from `a`.\n */\nexport function subtract(a: Point, b: Point): Point {\n return { x: a.x - b.x, y: a.y - b.y };\n}\n\n/**\n * Returns a new `Point` where `b` is added to `a`.\n */\nexport function add(a: Point, b: Point): Point {\n return { x: a.x + b.x, y: a.y + b.y };\n}\n\n/**\n * Returns `true` if the `x` and `y` positions of `a` and `b` are equal.\n */\nexport function isEqual(a: Point, b: Point): boolean {\n return a.x === b.x && a.y === b.y;\n}\n\n/**\n * Performs a linear interpolation between `a` and `b` and returns the result.\n * The value of `t` is clamped between `[0, 1]`.\n *\n * @param a The start value.\n * @param b The end value.\n * @param t A value between 0 and 1.\n * @returns A point between `a` and `b`.\n */\nexport function lerp(a: Point, b: Point, t: number): Point {\n return {\n x: lerpNumber(a.x, b.x, t),\n y: lerpNumber(a.y, b.y, t),\n };\n}\n\n/**\n * Returns a new `Point` where `x` and `y` are inverted.\n */\nexport function negate(pt: Point): Point {\n return create(-pt.x, -pt.y);\n}\n\n/**\n * Returns a new `Point` where `x` and `y` are multiplied by the given scale\n * factors.\n */\nexport function scale(pt: Point, scaleX: number, scaleY: number): Point {\n return {\n x: pt.x * scaleX,\n y: pt.y * scaleY,\n };\n}\n\n/**\n * Returns a new `Point` where `x` and `y` are multiplied by the given scale\n * factor.\n */\nexport function scaleProportional(pt: Point, scale: number): Point {\n return {\n x: pt.x * scale,\n y: pt.y * scale,\n };\n}\n\n/**\n * Returns the magnitude of a point.\n */\nexport function magnitude(pt: Point): number {\n return Math.sqrt(pt.x * pt.x + pt.y * pt.y);\n}\n\n/**\n * Transforms a vector into the corresponding normal (unit) vector.\n */\nexport function normalizeVector(pt: Point): Point {\n const magnitudeOfPoint = magnitude(pt);\n if (magnitudeOfPoint === 0) {\n return create(0, 0);\n } else {\n return scaleProportional(pt, 1 / magnitudeOfPoint);\n }\n}\n\n/**\n * Returns a new normal (unit) vector pointing between the two given points.\n */\nexport function normalDirectionVector(ptA: Point, ptB: Point): Point {\n return normalizeVector(subtract(ptB, ptA));\n}\n\n/**\n * Returns a vector orthogonal to the vector between the two given points.\n */\nexport function orthogonalVector(ptA: Point, ptB: Point): Point {\n const unitVectorBetweenPoints = normalDirectionVector(ptA, ptB);\n\n // Handle vectors that are parallel to the x or y axis\n if (unitVectorBetweenPoints.x === 0 || unitVectorBetweenPoints.y === 0) {\n return create(-1 * unitVectorBetweenPoints.y, unitVectorBetweenPoints.x);\n }\n\n if (\n Math.abs(unitVectorBetweenPoints.x) > Math.abs(unitVectorBetweenPoints.y)\n ) {\n const vectorXValue = 1 - Math.pow(unitVectorBetweenPoints.x, 2);\n const vectorYValue =\n -1 * unitVectorBetweenPoints.x * unitVectorBetweenPoints.y;\n return normalizeVector(create(vectorXValue, vectorYValue));\n } else {\n const vectorXValue =\n -1 * unitVectorBetweenPoints.x * unitVectorBetweenPoints.y;\n const vectorYValue = 1 - Math.pow(unitVectorBetweenPoints.y, 2);\n return normalizeVector(create(vectorXValue, vectorYValue));\n }\n}\n\n/**\n * Parses a JSON string representation of a Point and returns an object.\n *\n * @param json A JSON string, either in the form `[x,y]` or `{\"x\": 0, \"y\": 0}`\n * @returns A parsed Point.\n */\nexport function fromJson(json: string): Point {\n const obj = JSON.parse(json);\n if (Array.isArray(obj)) {\n const [x, y] = obj;\n return create(x, y);\n } else {\n const { x, y } = obj;\n return create(x, y);\n }\n}\n","import { Angle } from '@vertexvis/geometry';\n\nimport * as Point from '../../../../geometry/src/point';\n\nexport type LineAnchorStyle =\n | 'arrow-triangle'\n | 'arrow-line'\n | 'dot'\n | 'hash'\n | 'none';\n\nexport interface LineAnchorStylePoints {\n tip: Point.Point;\n base: Point.Point;\n arrowTriangle: ArrowheadPoints;\n arrowLine: ArrowheadPoints;\n hash: ArrowheadPoints;\n radius: number;\n}\n\nexport interface ArrowheadPoints {\n leftPoint: Point.Point;\n rightPoint: Point.Point;\n}\n\nexport interface LinePoints {\n x1: number;\n y1: number;\n x2: number;\n y2: number;\n}\n\nexport interface CirclePoints {\n cx: number;\n cy: number;\n r: number;\n}\n\nexport function createArrowheadPoints(\n start: Point.Point,\n end: Point.Point,\n arrowSideLength: number,\n arrowHeadTheta: number,\n): ArrowheadPoints {\n const arrowOrthogonalVector = Point.orthogonalVector(start, end);\n const normalizedDirection = Point.normalDirectionVector(start, end);\n\n const arrowLeft = Point.subtract(\n end,\n Point.add(\n Point.scaleProportional(\n normalizedDirection,\n arrowSideLength * Math.cos(arrowHeadTheta),\n ),\n Point.scaleProportional(\n arrowOrthogonalVector,\n arrowSideLength * Math.sin(arrowHeadTheta),\n ),\n ),\n );\n const arrowRight = Point.subtract(\n end,\n Point.subtract(\n Point.scaleProportional(\n normalizedDirection,\n arrowSideLength * Math.cos(arrowHeadTheta),\n ),\n Point.scaleProportional(\n arrowOrthogonalVector,\n arrowSideLength * Math.sin(arrowHeadTheta),\n ),\n ),\n );\n\n return {\n leftPoint: arrowLeft,\n rightPoint: arrowRight,\n };\n}\n\nexport function createLineAnchorStylePoints(\n start: Point.Point,\n end: Point.Point,\n triangleArrowAngle = 65,\n lineArrowAngle = 85,\n): LineAnchorStylePoints {\n // Adjust the size of the end style to the distance between the start and end points\n const distance = Point.distance(start, end);\n const arrowHeadHeight = Math.max(4, Math.min(16, distance * 0.25));\n const hashHeight = Math.max(4, Math.min(12, distance * 0.16));\n const radius = Math.min(5, distance * 0.1);\n\n // Triangle arrow position\n const triangleArrowRelativeHeight = arrowHeadHeight / distance;\n const triangleArrowBasePosition = Point.add(\n Point.scaleProportional(end, 1 - triangleArrowRelativeHeight),\n Point.scaleProportional(start, triangleArrowRelativeHeight),\n );\n const triangleArrowTheta = Angle.toRadians(triangleArrowAngle / 2);\n const triangleArrowSideLength =\n arrowHeadHeight / Math.cos(triangleArrowTheta);\n const triangleArrow = createArrowheadPoints(\n start,\n end,\n triangleArrowSideLength,\n triangleArrowTheta,\n );\n\n // Line arrow position\n const lineArrowTheta = Angle.toRadians(lineArrowAngle / 2);\n const lineArrowSideLength = arrowHeadHeight / Math.cos(lineArrowTheta);\n const lineArrow = createArrowheadPoints(\n start,\n end,\n lineArrowSideLength,\n lineArrowTheta,\n );\n\n // Hash position\n // Setting the arrowHeadAngle to 90 degrees results in a\n // straight hash mark perpendicular to the direction of the line\n const hashLineTheta = Angle.toRadians(90);\n const hashLine = createArrowheadPoints(start, end, hashHeight, hashLineTheta);\n\n return {\n tip: end,\n base: triangleArrowBasePosition,\n arrowTriangle: triangleArrow,\n arrowLine: lineArrow,\n hash: hashLine,\n radius: radius,\n };\n}\n\nexport function arrowheadPointsToPolygonPoints(\n points: LineAnchorStylePoints,\n scale = 1,\n): string {\n const scaledRight = scalePointProportional(\n points.tip,\n points.arrowTriangle.rightPoint,\n scale,\n );\n const scaledLeft = scalePointProportional(\n points.tip,\n points.arrowTriangle.leftPoint,\n scale,\n );\n const scaledBase = scalePointProportional(points.tip, points.base, scale);\n\n return [points.tip, scaledRight, scaledBase, scaledLeft]\n .map((pt) => `${pt.x},${pt.y}`)\n .join(' ');\n}\n\nexport function arrowheadPointsToPathPoints(\n points: LineAnchorStylePoints,\n scale = 1,\n): string {\n const scaledRight = scalePointProportional(\n points.tip,\n points.arrowLine.rightPoint,\n scale,\n );\n const scaledLeft = scalePointProportional(\n points.tip,\n points.arrowLine.leftPoint,\n scale,\n );\n\n return `M${scaledRight.x} ${scaledRight.y} L${points.tip.x} ${points.tip.y} L${scaledLeft.x} ${scaledLeft.y} L${points.tip.x} ${points.tip.y} Z`;\n}\n\nexport function arrowheadPointsToHashPoints(\n points: LineAnchorStylePoints,\n scale = 1,\n): LinePoints {\n const scaledRight = scalePointProportional(\n points.tip,\n points.hash.rightPoint,\n scale,\n );\n const scaledLeft = scalePointProportional(\n points.tip,\n points.hash.leftPoint,\n scale,\n );\n\n return {\n x1: scaledRight.x,\n y1: scaledRight.y,\n x2: scaledLeft.x,\n y2: scaledLeft.y,\n };\n}\n\nexport function arrowheadPointsToCirclePoints(\n points: LineAnchorStylePoints,\n scale = 1,\n): CirclePoints {\n return {\n cx: points.tip.x,\n cy: points.tip.y,\n r: points.radius * scale,\n };\n}\n\nexport function isVertexViewerArrowMarkup(\n el: unknown,\n): el is HTMLVertexViewerMarkupArrowElement {\n return (\n el instanceof HTMLElement && el.nodeName === 'VERTEX-VIEWER-MARKUP-ARROW'\n );\n}\n\nexport function parsePoint(\n value: string | Point.Point | undefined,\n): Point.Point | undefined {\n return typeof value === 'string' ? Point.fromJson(value) : value;\n}\n\nexport function scalePointProportional(\n basePoint: Point.Point,\n scaledPoint: Point.Point,\n scale: number,\n): Point.Point {\n return Point.add(\n basePoint,\n Point.scaleProportional(Point.subtract(scaledPoint, basePoint), scale),\n );\n}\n","import { Rectangle } from '@vertexvis/geometry';\n\nexport function isVertexViewerCircleMarkup(\n el: unknown,\n): el is HTMLVertexViewerMarkupCircleElement {\n return (\n el instanceof HTMLElement && el.nodeName === 'VERTEX-VIEWER-MARKUP-CIRCLE'\n );\n}\n\nexport function parseBounds(\n value: string | Rectangle.Rectangle | undefined,\n): Rectangle.Rectangle | undefined {\n return typeof value === 'string' ? Rectangle.fromJson(value) : value;\n}\n","import { Point } from '@vertexvis/geometry';\n\nexport function parsePoints(\n value: string | Point.Point[] | undefined,\n): Point.Point[] | undefined {\n return typeof value === 'string'\n ? JSON.parse(value).map((values: number[]) =>\n Point.fromJson(JSON.stringify(values)),\n )\n : value;\n}\n\nexport function isVertexViewerFreeformMarkup(\n el: unknown,\n): el is HTMLVertexViewerMarkupFreeformElement {\n return (\n el instanceof HTMLElement && el.nodeName === 'VERTEX-VIEWER-MARKUP-FREEFORM'\n );\n}\n"],"names":["Point.orthogonalVector","Point.normalDirectionVector","Point.subtract","Point.add","Point.scaleProportional","distance","Point.distance","Angle","Point.fromJson","Rectangle","Point"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils-qErVs2Vt.js","sources":["src/components/scene-tree-table-cell/utils.ts"],"sourcesContent":["export function isSceneTreeTableCellElement(\n el: unknown\n): el is HTMLVertexSceneTreeTableCellElement {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return el != null && (el as any).nodeName === 'VERTEX-SCENE-TREE-TABLE-CELL';\n}\n\nexport function blurElement(element: HTMLElement): void {\n element.blur();\n}\n"],"names":[],"mappings":";;;;;AAAM,SAAU,2BAA2B,CACzC,EAAW,EAAA;;IAGX,OAAO,EAAE,IAAI,IAAI,IAAK,EAAU,CAAC,QAAQ,KAAK,8BAA8B;AAC9E;AAEM,SAAU,WAAW,CAAC,OAAoB,EAAA;IAC9C,OAAO,CAAC,IAAI,EAAE;AAChB;;;;;"}
1
+ {"version":3,"file":"utils-qErVs2Vt.js","sources":["src/components/scene-tree-table-cell/utils.ts"],"sourcesContent":["export function isSceneTreeTableCellElement(\n el: unknown,\n): el is HTMLVertexSceneTreeTableCellElement {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return el != null && (el as any).nodeName === 'VERTEX-SCENE-TREE-TABLE-CELL';\n}\n\nexport function blurElement(element: HTMLElement): void {\n element.blur();\n}\n"],"names":[],"mappings":";;;;;AAAM,SAAU,2BAA2B,CACzC,EAAW,EAAA;;IAGX,OAAO,EAAE,IAAI,IAAI,IAAK,EAAU,CAAC,QAAQ,KAAK,8BAA8B;AAC9E;AAEM,SAAU,WAAW,CAAC,OAAoB,EAAA;IAC9C,OAAO,CAAC,IAAI,EAAE;AAChB;;;;;"}
@@ -357,9 +357,7 @@ function replaceBinding(data, expr) {
357
357
  return expr;
358
358
  }
359
359
  }
360
- function getBindableValue(data, path, isHead = false
361
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
362
- ) {
360
+ function getBindableValue(data, path, isHead = false) {
363
361
  const [head, ...tail] = path.split('.');
364
362
  if (isHead && tail.length === 0) {
365
363
  return data;
@@ -878,21 +876,21 @@ const SceneTreeTableLayout = class {
878
876
  this.computeCellHeight();
879
877
  }
880
878
  render() {
881
- return (index.h(index.Host, { key: 'd03ad68c3f972ae06117323ee2d93ea72fba68df' }, index.h("div", { key: 'f0bf6530a25bf37a898792c2547e5617d96f0e8f', class: "header", ref: (ref) => (this.headerElement = ref), style: {
879
+ return (index.h(index.Host, { key: '2656824698df951f2a41f2ad223cb459dd78cb05' }, index.h("div", { key: 'df621c883d9f8c4e00490eb7665bda5e65bb9ef3', class: "header", ref: (ref) => (this.headerElement = ref), style: {
882
880
  gridTemplateColumns: this.columnGridFixedLayout,
883
881
  display: this.columnElements.length <= 1 ? 'none' : 'grid',
884
- } }, index.h("slot", { key: '859ae58af0f796e3334c02e3a32613fa6eb46aa3', name: "header" })), index.h("div", { key: '0554485cbc8a6640a76f2999c783fe8802db0535', class: "table", ref: (ref) => (this.tableElement = ref), style: {
882
+ } }, index.h("slot", { key: '3d6425521dd682166712477f7697544b49267dfd', name: "header" })), index.h("div", { key: 'e54e5bef181ab97fc204c4a67b702d198d10ae9a', class: "table", ref: (ref) => (this.tableElement = ref), style: {
885
883
  gridTemplateColumns: this.columnGridLayout,
886
- } }, index.h("slot", { key: '03bbe18d7b24f8d54816e2c967990fda96c85c1d', onSlotchange: () => {
884
+ } }, index.h("slot", { key: '4bd35302ad438bf5d20e19afe3d2793c9ea2a073', onSlotchange: () => {
887
885
  this.ensureDividerTemplateDefined();
888
886
  this.updateColumnElements();
889
887
  this.recreateColumnPools();
890
888
  this.computeInitialColumnWidths();
891
889
  this.rebindHeaderData();
892
890
  this.computeColumnGridLayout();
893
- } })), index.h("div", { key: 'a70e34447a0414fd268233cb3cdc41389a339990', class: "divider-overlay", style: {
891
+ } })), index.h("div", { key: '2a732b5e4f66a64392f035946bffc9fdd9e569fd', class: "divider-overlay", style: {
894
892
  gridTemplateColumns: this.columnGridFixedLayout,
895
- } }, index.h("slot", { key: 'cf0f78b06877eca19a28c9b49f1182e79c57e78f', name: "divider" })), this.resizingColumnIndex != null && index.h("div", { key: '12ef4a77e9921c018f0598b51a80764c1649a5e5', class: "resize-overlay" })));
893
+ } }, index.h("slot", { key: '497a76a7cf9e7e8cd41eec79e9a0f89b2946516c', name: "divider" })), this.resizingColumnIndex != null && index.h("div", { key: 'd0252a71b7e88f85253a7d47229fc2f664ccdea5', class: "resize-overlay" })));
896
894
  }
897
895
  computeViewportRows() {
898
896
  const viewportHeight = this.getLayoutHeight();