@vertexvis/viewer 0.13.2-canary.9 → 0.14.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 (323) hide show
  1. package/dist/cjs/{_commonjsHelpers-537d719a.js → _commonjsHelpers-dcc4cf71.js} +21 -0
  2. package/dist/cjs/{app-globals-3671e828.js → app-globals-2035678d.js} +1 -1
  3. package/dist/cjs/{browser.esm-075810bf.js → browser.esm-0bcdc581.js} +1 -1
  4. package/dist/cjs/{bundle.esm-618a5fe9.js → bundle.esm-22b6f2d6.js} +35 -1
  5. package/dist/cjs/{config-fb124bac.js → config-c63caa4f.js} +3 -2
  6. package/dist/cjs/{cursors-d71f6a74.js → cursors-f5d3c9a6.js} +13 -1
  7. package/dist/cjs/{dom-57ef84e9.js → dom-8d90bfaf.js} +1 -1
  8. package/dist/cjs/dom-d1bbd67c.js +10 -0
  9. package/dist/cjs/elementRectObserver-9b28f182.js +25 -0
  10. package/dist/cjs/entities-9eb7e608.js +41 -0
  11. package/dist/cjs/{entities-90f1347a.js → entities-e71231d8.js} +4 -4
  12. package/dist/cjs/{grpc-web-client.umd-60a79aae.js → grpc-web-client.umd-2af20c1b.js} +1 -1
  13. package/dist/cjs/{index-e100709a.js → index-4138aa2c.js} +1 -0
  14. package/dist/cjs/{index-3bc6bac0.js → index-b9d13137.js} +1 -1
  15. package/dist/cjs/index.cjs.js +25 -22
  16. package/dist/cjs/loader.cjs.js +4 -4
  17. package/dist/cjs/{mapper-80ee2957.js → mapper-08bbab48.js} +4 -4
  18. package/dist/cjs/{markup-7f7de5f2.js → markup-f7e61d16.js} +2 -2
  19. package/dist/cjs/{measurement-f1ae9248.js → measurement-3367e9b7.js} +2 -2
  20. package/dist/cjs/{model-55abd9ab.js → model-5ca87867.js} +1 -1
  21. package/dist/cjs/model-a9cfd037.js +246 -0
  22. package/dist/cjs/{overlays-68e8eff2.js → overlays-b0ba69fd.js} +2 -2
  23. package/dist/cjs/{png-decoder-076131d8.js → png-decoder-ef097f37.js} +2 -2
  24. package/dist/cjs/{results-e9496869.js → results-178e89a3.js} +1 -1
  25. package/dist/cjs/{scene-92728420.js → scene-b6b78909.js} +49 -12
  26. package/dist/cjs/{stencil-a664cd10.js → stencil-ef19638e.js} +5 -1
  27. package/dist/cjs/{streamAttributes-81eb52f2.js → streamAttributes-c343bdc8.js} +1993 -78
  28. package/dist/cjs/utils-78928e4e.js +162 -0
  29. package/dist/cjs/{utils-6397efca.js → utils-b157b0af.js} +1 -1
  30. package/dist/cjs/{utils-463cd52e.js → utils-c74b8bf0.js} +1 -1
  31. package/dist/cjs/vertex-scene-tree-search_3.cjs.entry.js +16 -6
  32. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +16 -14
  33. package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js +1 -1
  34. package/dist/cjs/vertex-scene-tree-table-header.cjs.entry.js +1 -1
  35. package/dist/cjs/vertex-scene-tree-table-resize-divider.cjs.entry.js +3 -3
  36. package/dist/cjs/vertex-scene-tree-toolbar-group.cjs.entry.js +1 -1
  37. package/dist/cjs/vertex-scene-tree.cjs.entry.js +154 -27
  38. package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +3 -3
  39. package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +1 -1
  40. package/dist/cjs/{vertex-viewer-dom-element_3.cjs.entry.js → vertex-viewer-dom-element_2.cjs.entry.js} +20 -178
  41. package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +191 -0
  42. package/dist/cjs/vertex-viewer-icon.cjs.entry.js +6 -3
  43. package/dist/cjs/vertex-viewer-layer.cjs.entry.js +1 -1
  44. package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +49 -196
  45. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +5 -5
  46. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +5 -5
  47. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +8 -7
  48. package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +16 -15
  49. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +10 -9
  50. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +18 -35
  51. package/dist/cjs/vertex-viewer-measurement-tool.cjs.entry.js +8 -7
  52. package/dist/cjs/vertex-viewer-measurements.cjs.entry.js +12 -11
  53. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +167 -0
  54. package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js +276 -0
  55. package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +322 -0
  56. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +13272 -0
  57. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +8 -7
  58. package/dist/cjs/vertex-viewer.cjs.entry.js +119 -52
  59. package/dist/cjs/viewer.cjs.js +4 -4
  60. package/dist/cjs/{viewport-54b1389d.js → viewport-5ca619f7.js} +14 -4
  61. package/dist/collection/__mocks__/regl-shape.js +6 -0
  62. package/dist/collection/__mocks__/regl.js +3 -0
  63. package/dist/collection/collection-manifest.json +5 -0
  64. package/dist/collection/components/scene-tree/lib/controller.js +17 -5
  65. package/dist/collection/components/scene-tree/lib/errors.js +7 -1
  66. package/dist/collection/components/scene-tree/lib/viewer-ops.js +12 -1
  67. package/dist/collection/components/scene-tree/scene-tree.js +112 -22
  68. package/dist/collection/components/scene-tree-table-cell/scene-tree-table-cell.css +0 -7
  69. package/dist/collection/components/scene-tree-table-cell/scene-tree-table-cell.js +34 -12
  70. package/dist/collection/components/scene-tree-table-layout/scene-tree-table-layout.js +14 -2
  71. package/dist/collection/components/viewer/viewer.js +79 -14
  72. package/dist/collection/components/viewer-dom-element/viewer-dom-element.js +32 -4
  73. package/dist/collection/components/viewer-dom-group/utils.js +3 -2
  74. package/dist/collection/components/viewer-dom-group/viewer-dom-group.js +30 -2
  75. package/dist/collection/components/viewer-icon/viewer-icon.js +5 -2
  76. package/dist/collection/components/viewer-markup/utils.js +3 -2
  77. package/dist/collection/components/viewer-measurement-details/viewer-measurement-details-results.js +2 -2
  78. package/dist/collection/components/viewer-pin-group/pin-renderer.js +12 -0
  79. package/dist/collection/components/viewer-pin-group/utils.js +24 -0
  80. package/dist/collection/components/viewer-pin-group/viewer-pin-group.css +83 -0
  81. package/dist/collection/components/viewer-pin-group/viewer-pin-group.js +276 -0
  82. package/dist/collection/components/viewer-pin-label/utils.js +4 -0
  83. package/dist/collection/components/viewer-pin-label/viewer-pin-label.css +154 -0
  84. package/dist/collection/components/viewer-pin-label/viewer-pin-label.js +410 -0
  85. package/dist/collection/components/viewer-pin-label-line/viewer-pin-label-line.css +36 -0
  86. package/dist/collection/components/viewer-pin-label-line/viewer-pin-label-line.js +61 -0
  87. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.css +9 -0
  88. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.js +277 -0
  89. package/dist/collection/components/viewer-transform-widget/__mocks__/widget.js +21 -0
  90. package/dist/collection/components/viewer-transform-widget/util.js +78 -0
  91. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.css +48 -0
  92. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js +442 -0
  93. package/dist/collection/components/viewer-transform-widget/widget.js +259 -0
  94. package/dist/collection/lib/cursors.js +11 -1
  95. package/dist/collection/lib/interactions/baseInteractionHandler.js +9 -2
  96. package/dist/collection/lib/interactions/flyToPositionKeyInteraction.js +4 -3
  97. package/dist/collection/lib/interactions/interactionApi.js +21 -1
  98. package/dist/collection/lib/interactions/interactionApiOrthographic.js +18 -1
  99. package/dist/collection/lib/interactions/mouseInteractionHandler.js +4 -4
  100. package/dist/collection/lib/interactions/mouseInteractions.js +24 -1
  101. package/dist/collection/lib/interactions/multiTouchInteractionHandler.js +1 -2
  102. package/dist/collection/lib/interactions/pointerInteractionHandler.js +3 -3
  103. package/dist/collection/lib/mappers/streamAttributes.js +4 -2
  104. package/dist/collection/lib/pins/controller.js +100 -0
  105. package/dist/collection/lib/pins/interactions.js +183 -0
  106. package/dist/collection/lib/pins/model.js +136 -0
  107. package/dist/collection/lib/rendering/canvas.js +6 -28
  108. package/dist/collection/lib/scenes/camera.js +34 -2
  109. package/dist/collection/lib/scenes/colorMaterial.js +8 -8
  110. package/dist/collection/lib/scenes/mapper.js +2 -1
  111. package/dist/collection/lib/scenes/queries.js +6 -4
  112. package/dist/collection/lib/transforms/axis-lines.js +31 -0
  113. package/dist/collection/lib/transforms/axis-rotation.js +34 -0
  114. package/dist/collection/lib/transforms/axis-translation.js +30 -0
  115. package/dist/collection/lib/transforms/controller.js +117 -0
  116. package/dist/collection/lib/transforms/drawable.js +47 -0
  117. package/dist/collection/lib/transforms/hits.js +51 -0
  118. package/dist/collection/lib/transforms/line.js +58 -0
  119. package/dist/collection/lib/transforms/mesh.js +35 -0
  120. package/dist/collection/lib/transforms/shape.js +2 -0
  121. package/dist/collection/lib/transforms/util.js +4 -0
  122. package/dist/collection/lib/types/depthBuffer.js +2 -2
  123. package/dist/collection/lib/types/frameCamera.js +4 -6
  124. package/dist/collection/lib/types/viewport.js +14 -4
  125. package/dist/custom-elements/index.d.ts +30 -0
  126. package/dist/custom-elements/index.js +16835 -335
  127. package/dist/esm/{_commonjsHelpers-9943807e.js → _commonjsHelpers-11ca3be1.js} +20 -1
  128. package/dist/esm/{app-globals-3a04a531.js → app-globals-40df99a0.js} +1 -1
  129. package/dist/esm/{browser.esm-e72d80ad.js → browser.esm-1ddb69c9.js} +1 -1
  130. package/dist/esm/{bundle.esm-8ceccb91.js → bundle.esm-ce2c7ad3.js} +36 -2
  131. package/dist/esm/{config-fb7cd8ff.js → config-7075833a.js} +3 -2
  132. package/dist/esm/{cursors-fc2deed7.js → cursors-98b7d89d.js} +12 -2
  133. package/dist/esm/{dom-2cd18856.js → dom-5b164305.js} +1 -1
  134. package/dist/esm/dom-be140992.js +8 -0
  135. package/dist/esm/elementRectObserver-39cf7b95.js +23 -0
  136. package/dist/esm/{entities-78557270.js → entities-46be90d5.js} +4 -4
  137. package/dist/esm/entities-ce81dd7f.js +41 -0
  138. package/dist/esm/{grpc-web-client.umd-5982b7b0.js → grpc-web-client.umd-5409853c.js} +1 -1
  139. package/dist/esm/{index-10c1495a.js → index-a9fb8318.js} +1 -1
  140. package/dist/esm/{index-455380d0.js → index-e841d91b.js} +1 -1
  141. package/dist/esm/index.js +15 -14
  142. package/dist/esm/index.mjs +15 -14
  143. package/dist/esm/loader.js +4 -4
  144. package/dist/esm/loader.mjs +4 -4
  145. package/dist/esm/{mapper-da36de17.js → mapper-bde6c607.js} +4 -4
  146. package/dist/esm/{markup-c313d99c.js → markup-8904f2fe.js} +2 -2
  147. package/dist/esm/{measurement-544b69d5.js → measurement-3f9b0ae0.js} +2 -2
  148. package/dist/esm/{model-2a34b443.js → model-e54b081f.js} +1 -1
  149. package/dist/esm/model-f679c493.js +241 -0
  150. package/dist/esm/{overlays-354e275c.js → overlays-ea2d45ec.js} +2 -2
  151. package/dist/esm/{png-decoder-07de80d1.js → png-decoder-d4b65417.js} +2 -2
  152. package/dist/esm/{results-4d0c3568.js → results-3b4df2cf.js} +1 -1
  153. package/dist/esm/{scene-2bfcce74.js → scene-22ebacfd.js} +49 -12
  154. package/dist/esm/{stencil-9bf7fb9e.js → stencil-8b20e5a8.js} +5 -2
  155. package/dist/esm/{streamAttributes-d0b384b3.js → streamAttributes-72a92676.js} +1982 -67
  156. package/dist/esm/{utils-3ea0acdd.js → utils-0b980078.js} +1 -1
  157. package/dist/esm/utils-c714e2f7.js +153 -0
  158. package/dist/esm/{utils-e0941c61.js → utils-f11bd6f7.js} +1 -1
  159. package/dist/esm/vertex-scene-tree-search_3.entry.js +16 -6
  160. package/dist/esm/vertex-scene-tree-table-cell.entry.js +16 -14
  161. package/dist/esm/vertex-scene-tree-table-column.entry.js +1 -1
  162. package/dist/esm/vertex-scene-tree-table-header.entry.js +1 -1
  163. package/dist/esm/vertex-scene-tree-table-resize-divider.entry.js +3 -3
  164. package/dist/esm/vertex-scene-tree-toolbar-group.entry.js +1 -1
  165. package/dist/esm/vertex-scene-tree.entry.js +154 -27
  166. package/dist/esm/vertex-viewer-button_3.entry.js +3 -3
  167. package/dist/esm/vertex-viewer-default-toolbar.entry.js +1 -1
  168. package/dist/esm/{vertex-viewer-dom-element_3.entry.js → vertex-viewer-dom-element_2.entry.js} +21 -178
  169. package/dist/esm/vertex-viewer-dom-group.entry.js +187 -0
  170. package/dist/esm/vertex-viewer-icon.entry.js +6 -3
  171. package/dist/esm/vertex-viewer-layer.entry.js +1 -1
  172. package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +8 -155
  173. package/dist/esm/vertex-viewer-markup-tool.entry.js +5 -5
  174. package/dist/esm/vertex-viewer-markup.entry.js +5 -5
  175. package/dist/esm/vertex-viewer-measurement-details.entry.js +8 -7
  176. package/dist/esm/vertex-viewer-measurement-distance.entry.js +16 -15
  177. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +10 -9
  178. package/dist/esm/vertex-viewer-measurement-precise.entry.js +15 -32
  179. package/dist/esm/vertex-viewer-measurement-tool.entry.js +8 -7
  180. package/dist/esm/vertex-viewer-measurements.entry.js +12 -11
  181. package/dist/esm/vertex-viewer-pin-group.entry.js +163 -0
  182. package/dist/esm/vertex-viewer-pin-label_2.entry.js +271 -0
  183. package/dist/esm/vertex-viewer-pin-tool.entry.js +318 -0
  184. package/dist/esm/vertex-viewer-transform-widget.entry.js +13268 -0
  185. package/dist/esm/vertex-viewer-view-cube.entry.js +8 -7
  186. package/dist/esm/vertex-viewer.entry.js +118 -51
  187. package/dist/esm/viewer.js +4 -4
  188. package/dist/esm/{viewport-5cc7b128.js → viewport-e39e2eba.js} +14 -4
  189. package/dist/types/__mocks__/regl-shape.d.ts +5 -0
  190. package/dist/types/__mocks__/regl.d.ts +5 -0
  191. package/dist/types/components/scene-tree/lib/controller.d.ts +13 -1
  192. package/dist/types/components/scene-tree/lib/errors.d.ts +3 -1
  193. package/dist/types/components/scene-tree/lib/viewer-ops.d.ts +1 -0
  194. package/dist/types/components/scene-tree/scene-tree.d.ts +16 -4
  195. package/dist/types/components/scene-tree-table-cell/scene-tree-table-cell.d.ts +6 -2
  196. package/dist/types/components/scene-tree-table-layout/scene-tree-table-layout.d.ts +2 -0
  197. package/dist/types/components/viewer/viewer.d.ts +13 -1
  198. package/dist/types/components/viewer-dom-element/viewer-dom-element.d.ts +10 -2
  199. package/dist/types/components/viewer-dom-group/viewer-dom-group.d.ts +9 -1
  200. package/dist/types/components/viewer-icon/viewer-icon.d.ts +1 -1
  201. package/dist/types/components/viewer-pin-group/pin-renderer.d.ts +8 -0
  202. package/dist/types/components/viewer-pin-group/utils.d.ts +2 -0
  203. package/dist/types/components/viewer-pin-group/viewer-pin-group.d.ts +49 -0
  204. package/dist/types/components/viewer-pin-label/utils.d.ts +1 -0
  205. package/dist/types/components/viewer-pin-label/viewer-pin-label.d.ts +77 -0
  206. package/dist/types/components/viewer-pin-label-line/viewer-pin-label-line.d.ts +7 -0
  207. package/dist/types/components/viewer-pin-tool/viewer-pin-tool.d.ts +68 -0
  208. package/dist/types/components/viewer-transform-widget/__mocks__/widget.d.ts +11 -0
  209. package/dist/types/components/viewer-transform-widget/util.d.ts +5 -0
  210. package/dist/types/components/viewer-transform-widget/viewer-transform-widget.d.ts +81 -0
  211. package/dist/types/components/viewer-transform-widget/widget.d.ts +74 -0
  212. package/dist/types/components.d.ts +303 -12
  213. package/dist/types/interfaces.d.ts +1 -0
  214. package/dist/types/lib/cursors.d.ts +10 -0
  215. package/dist/types/lib/interactions/baseInteractionHandler.d.ts +4 -3
  216. package/dist/types/lib/interactions/interactionApi.d.ts +10 -1
  217. package/dist/types/lib/interactions/interactionApiOrthographic.d.ts +7 -0
  218. package/dist/types/lib/interactions/mouseInteractionHandler.d.ts +2 -2
  219. package/dist/types/lib/interactions/mouseInteractions.d.ts +6 -0
  220. package/dist/types/lib/pins/controller.d.ts +70 -0
  221. package/dist/types/lib/pins/interactions.d.ts +30 -0
  222. package/dist/types/lib/pins/model.d.ts +104 -0
  223. package/dist/types/lib/rendering/canvas.d.ts +1 -2
  224. package/dist/types/lib/scenes/camera.d.ts +10 -0
  225. package/dist/types/lib/scenes/colorMaterial.d.ts +1 -0
  226. package/dist/types/lib/scenes/queries.d.ts +4 -2
  227. package/dist/types/lib/transforms/axis-lines.d.ts +6 -0
  228. package/dist/types/lib/transforms/axis-rotation.d.ts +6 -0
  229. package/dist/types/lib/transforms/axis-translation.d.ts +6 -0
  230. package/dist/types/lib/transforms/controller.d.ts +17 -0
  231. package/dist/types/lib/transforms/drawable.d.ts +26 -0
  232. package/dist/types/lib/transforms/hits.d.ts +10 -0
  233. package/dist/types/lib/transforms/line.d.ts +31 -0
  234. package/dist/types/lib/transforms/mesh.d.ts +23 -0
  235. package/dist/types/lib/transforms/shape.d.ts +3 -0
  236. package/dist/types/lib/transforms/util.d.ts +2 -0
  237. package/dist/types/lib/types/frameCamera.d.ts +1 -0
  238. package/dist/types/lib/types/viewport.d.ts +8 -0
  239. package/dist/types/regl-shape.d.ts +26 -0
  240. package/dist/viewer/index.esm.js +1 -1
  241. package/dist/viewer/p-058632f4.js +4 -0
  242. package/dist/viewer/p-07aeee89.js +10 -0
  243. package/dist/viewer/{p-e75bba97.js → p-083f427e.js} +1 -1
  244. package/dist/viewer/{p-a455ae02.entry.js → p-08eda2b2.entry.js} +1 -1
  245. package/dist/viewer/{p-bcb66f97.js → p-096e60bd.js} +1 -1
  246. package/dist/viewer/p-0bc4b3f7.js +4 -0
  247. package/dist/viewer/p-148c5f1a.js +4 -0
  248. package/dist/viewer/p-1db9bd1a.entry.js +4 -0
  249. package/dist/viewer/{p-70ca1ea7.entry.js → p-1f251549.entry.js} +1 -1
  250. package/dist/viewer/p-29986489.js +4 -0
  251. package/dist/viewer/{p-cafa57a6.js → p-2e581b2a.js} +1 -1
  252. package/dist/viewer/{p-d2bcf788.entry.js → p-33daeb09.entry.js} +1 -1
  253. package/dist/viewer/p-39803f8f.js +4 -0
  254. package/dist/viewer/p-465a92d9.entry.js +4 -0
  255. package/dist/viewer/p-4a65ddb3.entry.js +4 -0
  256. package/dist/viewer/{p-099fe6ca.entry.js → p-4aaf02b4.entry.js} +1 -1
  257. package/dist/viewer/{p-31658489.entry.js → p-4c3a3738.entry.js} +1 -1
  258. package/dist/viewer/{p-e38458da.js → p-4d37d97c.js} +1 -1
  259. package/dist/viewer/p-4fdf8553.entry.js +4 -0
  260. package/dist/viewer/p-5679f46b.entry.js +4 -0
  261. package/dist/viewer/p-5809b400.js +4 -0
  262. package/dist/viewer/{p-fa9a0bed.js → p-58dacdce.js} +1 -1
  263. package/dist/viewer/p-61a042f0.entry.js +4 -0
  264. package/dist/viewer/{p-b8774c9c.js → p-6c377932.js} +1 -1
  265. package/dist/viewer/p-6d379d4a.js +4 -0
  266. package/dist/viewer/p-6d70b198.entry.js +4 -0
  267. package/dist/viewer/p-6e7e094a.entry.js +4 -0
  268. package/dist/viewer/{p-661f0612.js → p-70e5e8a8.js} +1 -1
  269. package/dist/viewer/p-74102b29.entry.js +32 -0
  270. package/dist/viewer/p-7a5a9a93.entry.js +4 -0
  271. package/dist/viewer/p-7c755e0e.entry.js +4 -0
  272. package/dist/viewer/{p-3a20a038.js → p-92fe4417.js} +1 -1
  273. package/dist/viewer/{p-7e0328aa.js → p-98e6a50e.js} +1 -1
  274. package/dist/viewer/{p-388a43f7.js → p-990f98c2.js} +1 -1
  275. package/dist/viewer/{p-487e054a.js → p-99352cf0.js} +1 -1
  276. package/dist/viewer/{p-1ca95f9a.entry.js → p-99799a71.entry.js} +1 -1
  277. package/dist/viewer/p-9acd1b44.js +4 -0
  278. package/dist/viewer/{p-69058178.js → p-9bcde9c8.js} +1 -1
  279. package/dist/viewer/{p-5b342e97.js → p-a2ef15e5.js} +1 -1
  280. package/dist/viewer/{p-61b1097b.entry.js → p-a32cc378.entry.js} +1 -1
  281. package/dist/viewer/p-a380f0c2.js +4 -0
  282. package/dist/viewer/{p-41028d3b.entry.js → p-af37b63e.entry.js} +1 -1
  283. package/dist/viewer/p-b6b727a6.entry.js +4 -0
  284. package/dist/viewer/p-c2e3312b.js +4 -0
  285. package/dist/viewer/{p-4717c98e.entry.js → p-c9f91798.entry.js} +1 -1
  286. package/dist/viewer/p-ca518dcb.entry.js +4 -0
  287. package/dist/viewer/p-d828fd18.entry.js +4 -0
  288. package/dist/viewer/p-d996b1d2.entry.js +4 -0
  289. package/dist/viewer/{p-3f0f83ad.js → p-db01460a.js} +1 -1
  290. package/dist/viewer/p-db716103.entry.js +4 -0
  291. package/dist/viewer/p-df8fbe56.js +4 -0
  292. package/dist/viewer/p-dfe5a97d.js +4 -0
  293. package/dist/viewer/p-e42cb163.js +4 -0
  294. package/dist/viewer/p-eb8e5db5.js +4 -0
  295. package/dist/viewer/{p-46459921.entry.js → p-ebb801c3.entry.js} +1 -1
  296. package/dist/viewer/p-ebd85d58.entry.js +4 -0
  297. package/dist/viewer/p-eefae62a.entry.js +4 -0
  298. package/dist/viewer/viewer.esm.js +1 -1
  299. package/package.json +12 -10
  300. package/readme.md +4 -4
  301. package/dist/viewer/p-0a189e62.entry.js +0 -4
  302. package/dist/viewer/p-112455b1.js +0 -4
  303. package/dist/viewer/p-3561d910.js +0 -4
  304. package/dist/viewer/p-49d36e94.entry.js +0 -4
  305. package/dist/viewer/p-73a5eacc.entry.js +0 -4
  306. package/dist/viewer/p-77be081a.js +0 -4
  307. package/dist/viewer/p-809d09d9.js +0 -4
  308. package/dist/viewer/p-858bd2c7.entry.js +0 -4
  309. package/dist/viewer/p-89b66838.entry.js +0 -32
  310. package/dist/viewer/p-90bb0a1f.entry.js +0 -4
  311. package/dist/viewer/p-a93a63a9.js +0 -4
  312. package/dist/viewer/p-b043b076.entry.js +0 -4
  313. package/dist/viewer/p-b0ac6b3c.entry.js +0 -4
  314. package/dist/viewer/p-bcde5521.entry.js +0 -4
  315. package/dist/viewer/p-d1584404.js +0 -4
  316. package/dist/viewer/p-d32b54cb.js +0 -4
  317. package/dist/viewer/p-d3a20af4.entry.js +0 -4
  318. package/dist/viewer/p-d9f99f4d.entry.js +0 -4
  319. package/dist/viewer/p-ebd55df7.entry.js +0 -4
  320. package/dist/viewer/p-f0411993.entry.js +0 -4
  321. package/dist/viewer/p-f482325b.js +0 -10
  322. package/dist/viewer/p-fad9693e.js +0 -4
  323. package/dist/viewer/p-ffdeb08c.js +0 -4
@@ -5,13 +5,14 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-e100709a.js');
9
- const bundle_esm = require('./bundle.esm-618a5fe9.js');
10
- const stencil = require('./stencil-a664cd10.js');
11
- const streamAttributes = require('./streamAttributes-81eb52f2.js');
12
- const index$1 = require('./index-3bc6bac0.js');
13
- require('./browser.esm-075810bf.js');
14
- require('./_commonjsHelpers-537d719a.js');
8
+ const index = require('./index-4138aa2c.js');
9
+ const bundle_esm = require('./bundle.esm-22b6f2d6.js');
10
+ const stencil = require('./stencil-ef19638e.js');
11
+ const streamAttributes = require('./streamAttributes-c343bdc8.js');
12
+ require('./entities-9eb7e608.js');
13
+ const index$1 = require('./index-b9d13137.js');
14
+ require('./browser.esm-0bcdc581.js');
15
+ require('./_commonjsHelpers-dcc4cf71.js');
15
16
 
16
17
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
17
18
  const viewCubeSides = {
@@ -5,17 +5,18 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-e100709a.js');
9
- const bundle_esm = require('./bundle.esm-618a5fe9.js');
10
- const streamAttributes = require('./streamAttributes-81eb52f2.js');
11
- const browser_esm = require('./browser.esm-075810bf.js');
12
- const index$1 = require('./index-3bc6bac0.js');
13
- const config = require('./config-fb124bac.js');
14
- const cursors = require('./cursors-d71f6a74.js');
15
- const dom = require('./dom-57ef84e9.js');
16
- const scene = require('./scene-92728420.js');
17
- const viewport = require('./viewport-54b1389d.js');
18
- require('./_commonjsHelpers-537d719a.js');
8
+ const index = require('./index-4138aa2c.js');
9
+ const bundle_esm = require('./bundle.esm-22b6f2d6.js');
10
+ const streamAttributes = require('./streamAttributes-c343bdc8.js');
11
+ const browser_esm = require('./browser.esm-0bcdc581.js');
12
+ const index$1 = require('./index-b9d13137.js');
13
+ const config = require('./config-c63caa4f.js');
14
+ const cursors = require('./cursors-f5d3c9a6.js');
15
+ const dom = require('./dom-8d90bfaf.js');
16
+ const scene = require('./scene-b6b78909.js');
17
+ const entities = require('./entities-9eb7e608.js');
18
+ const viewport = require('./viewport-5ca619f7.js');
19
+ require('./_commonjsHelpers-dcc4cf71.js');
19
20
 
20
21
  /**
21
22
  * A value that represents if a pixel does not contain a stencil value.
@@ -339,7 +340,7 @@ class InteractionApi {
339
340
  return featureMap.getEntityType(framePt);
340
341
  }
341
342
  else {
342
- return streamAttributes.EntityType.NO_GEOMETRY;
343
+ return entities.EntityType.NO_GEOMETRY;
343
344
  }
344
345
  }
345
346
  /**
@@ -595,6 +596,26 @@ class InteractionApi {
595
596
  return camera;
596
597
  });
597
598
  }
599
+ /**
600
+ * Performs a pivot operation of the scene's camera, updating the lookAt
601
+ * while maintaining the position, and requests a new image for the
602
+ * updated scene.
603
+ *
604
+ * @param degreesLocalX The angle to rotate the lookAt point around the local x-axis
605
+ * @param degreesLocalY The angle to rotate the lookAt point around the local y-axis
606
+ */
607
+ async pivotCamera(degreesLocalX, degreesLocalY) {
608
+ return this.transformCamera(({ camera }) => {
609
+ const { position, up, lookAt } = camera;
610
+ const normalizedUp = bundle_esm.vector3.normalize(up);
611
+ const normalizedViewVector = bundle_esm.vector3.normalize(camera.viewVector);
612
+ const xVector = bundle_esm.vector3.cross(normalizedUp, normalizedViewVector);
613
+ const yVector = bundle_esm.vector3.cross(normalizedViewVector, xVector);
614
+ const updatedLookAtX = bundle_esm.vector3.rotateAboutAxis(bundle_esm.angle.toRadians(degreesLocalX), lookAt, xVector, position);
615
+ const updatedLookAtY = bundle_esm.vector3.rotateAboutAxis(bundle_esm.angle.toRadians(degreesLocalY), updatedLookAtX, yVector, position);
616
+ return camera.update(Object.assign(Object.assign({}, camera), { lookAt: updatedLookAtY }));
617
+ });
618
+ }
598
619
  /**
599
620
  * Marks the end of an interaction.
600
621
  */
@@ -677,6 +698,23 @@ class InteractionApiOrthographic extends InteractionApi {
677
698
  constructor(stream, cursors, getConfig, getScene, getFrame, getViewport, tapEmitter, doubleTapEmitter, longPressEmitter, interactionStartedEmitter, interactionFinishedEmitter) {
678
699
  super(stream, cursors, getConfig, getScene, getFrame, getViewport, tapEmitter, doubleTapEmitter, longPressEmitter, interactionStartedEmitter, interactionFinishedEmitter);
679
700
  }
701
+ /**
702
+ * Returns a 3D point in world space for the given 2D point in viewport space.
703
+ *
704
+ * @param point A point in 2D viewport space to transform.
705
+ * @returns A 3D point in world space.
706
+ */
707
+ async getWorldPointFromViewport(point) {
708
+ const viewport = this.getViewport();
709
+ const frame = this.getFrame();
710
+ if (frame == null) {
711
+ throw new Error('Cannot get world point. Frame is undefined.');
712
+ }
713
+ const depthBuffer = await frame.depthBuffer();
714
+ return depthBuffer != null
715
+ ? viewport.transformPointToOrthographicWorldSpace(point, depthBuffer, 0.5)
716
+ : undefined;
717
+ }
680
718
  /**
681
719
  * Performs a pan operation of the scene's camera, and requests a new image
682
720
  * for the updated scene.
@@ -882,11 +920,11 @@ class FlyToPositionKeyInteraction {
882
920
  hit.hitPoint.y != null &&
883
921
  hit.hitPoint.z != null) {
884
922
  await this.stream.flyTo({
885
- camera: camera
923
+ camera: streamAttributes.toProtobuf(camera
886
924
  .update({
887
925
  lookAt: bundle_esm.vector3.create(hit.hitPoint.x, hit.hitPoint.y, hit.hitPoint.z),
888
926
  })
889
- .toFrameCamera(),
927
+ .toFrameCamera()),
890
928
  animation: {
891
929
  duration: streamAttributes.toProtoDuration(this.configProvider().animation.durationMs),
892
930
  },
@@ -906,7 +944,7 @@ const SCROLL_WHEEL_DELTA_PERCENTAGES = [0.2, 0.15, 0.25, 0.25, 0.15];
906
944
  const DEFAULT_FONT_SIZE = 16;
907
945
  const DEFAULT_LINE_HEIGHT = 1.2;
908
946
  class BaseInteractionHandler {
909
- constructor(downEvent, upEvent, moveEvent, rotateInteraction, rotatePointInteraction, zoomInteraction, panInteraction, twistInteraction, getConfig) {
947
+ constructor(downEvent, upEvent, moveEvent, rotateInteraction, rotatePointInteraction, zoomInteraction, panInteraction, twistInteraction, pivotInteraction, getConfig) {
910
948
  this.downEvent = downEvent;
911
949
  this.upEvent = upEvent;
912
950
  this.moveEvent = moveEvent;
@@ -915,6 +953,7 @@ class BaseInteractionHandler {
915
953
  this.zoomInteraction = zoomInteraction;
916
954
  this.panInteraction = panInteraction;
917
955
  this.twistInteraction = twistInteraction;
956
+ this.pivotInteraction = pivotInteraction;
918
957
  this.getConfig = getConfig;
919
958
  this.primaryInteraction = this.rotateInteraction;
920
959
  this.isDragging = false;
@@ -962,6 +1001,9 @@ class BaseInteractionHandler {
962
1001
  case 'rotate-point':
963
1002
  this.currentInteraction = this.rotatePointInteraction;
964
1003
  break;
1004
+ case 'pivot':
1005
+ this.currentInteraction = this.pivotInteraction;
1006
+ break;
965
1007
  default:
966
1008
  this.currentInteraction = undefined;
967
1009
  }
@@ -993,6 +1035,9 @@ class BaseInteractionHandler {
993
1035
  case 'pan':
994
1036
  this.primaryInteraction = this.panInteraction;
995
1037
  break;
1038
+ case 'pivot':
1039
+ this.primaryInteraction = this.pivotInteraction;
1040
+ break;
996
1041
  }
997
1042
  this.primaryInteractionTypeChange.emit();
998
1043
  }
@@ -1355,10 +1400,33 @@ class TwistInteraction extends MouseInteraction {
1355
1400
  super.endDrag(event, api);
1356
1401
  }
1357
1402
  }
1403
+ class PivotInteraction extends MouseInteraction {
1404
+ constructor() {
1405
+ super(...arguments);
1406
+ this.type = 'pivot';
1407
+ }
1408
+ beginDrag(event, canvasPosition, api) {
1409
+ if (this.currentPosition == null) {
1410
+ this.currentPosition = bundle_esm.point.create(event.screenX, event.screenY);
1411
+ api.beginInteraction();
1412
+ }
1413
+ }
1414
+ drag(event, api) {
1415
+ if (this.currentPosition != null) {
1416
+ const position = bundle_esm.point.create(event.screenX, event.screenY);
1417
+ const delta = bundle_esm.point.subtract(position, this.currentPosition);
1418
+ api.pivotCamera(-0.25 * delta.y, 0.25 * delta.x);
1419
+ this.currentPosition = position;
1420
+ }
1421
+ }
1422
+ endDrag(event, api) {
1423
+ super.endDrag(event, api);
1424
+ }
1425
+ }
1358
1426
 
1359
1427
  class MouseInteractionHandler extends BaseInteractionHandler {
1360
- constructor(getConfig, rotateInteraction = new RotateInteraction(), rotatePointInteraction = new RotatePointInteraction(), zoomInteraction = new ZoomInteraction(), panInteraction = new PanInteraction(), twistInteraction = new TwistInteraction()) {
1361
- super('mousedown', 'mouseup', 'mousemove', rotateInteraction, rotatePointInteraction, zoomInteraction, panInteraction, twistInteraction, getConfig);
1428
+ constructor(getConfig, rotateInteraction = new RotateInteraction(), rotatePointInteraction = new RotatePointInteraction(), zoomInteraction = new ZoomInteraction(), panInteraction = new PanInteraction(), twistInteraction = new TwistInteraction(), pivotInteraction = new PivotInteraction()) {
1429
+ super('mousedown', 'mouseup', 'mousemove', rotateInteraction, rotatePointInteraction, zoomInteraction, panInteraction, twistInteraction, pivotInteraction, getConfig);
1362
1430
  }
1363
1431
  }
1364
1432
 
@@ -1383,7 +1451,6 @@ class MultiTouchInteractionHandler {
1383
1451
  (_b = this.interactionApi) === null || _b === void 0 ? void 0 : _b.zoomCamera(zoom);
1384
1452
  (_c = this.interactionApi) === null || _c === void 0 ? void 0 : _c.panCameraByDelta(delta);
1385
1453
  // Setting a minimum angle to prevent wobbling
1386
- console.log(Math.abs(angle));
1387
1454
  if (Math.abs(angle) > 0.5) {
1388
1455
  (_d = this.interactionApi) === null || _d === void 0 ? void 0 : _d.twistCamera(angle);
1389
1456
  }
@@ -1448,7 +1515,7 @@ class MultiPointerInteractionHandler extends MultiTouchInteractionHandler {
1448
1515
 
1449
1516
  class PointerInteractionHandler extends BaseInteractionHandler {
1450
1517
  constructor(getConfig) {
1451
- super('pointerdown', 'pointerup', 'pointermove', new RotateInteraction(), new RotatePointInteraction(), new ZoomInteraction(), new PanInteraction(), new TwistInteraction(), getConfig);
1518
+ super('pointerdown', 'pointerup', 'pointermove', new RotateInteraction(), new RotatePointInteraction(), new ZoomInteraction(), new PanInteraction(), new TwistInteraction(), new PivotInteraction(), getConfig);
1452
1519
  this.touchPoints = new Set();
1453
1520
  this.handlePointerDown = this.handlePointerDown.bind(this);
1454
1521
  this.handlePointerUp = this.handlePointerUp.bind(this);
@@ -1911,36 +1978,15 @@ function measureCanvasRenderer(meter, renderer, logFrameRate, callback, interval
1911
1978
  function createCanvasRenderer() {
1912
1979
  let lastFrameNumber;
1913
1980
  return async (data) => {
1914
- var _a;
1915
- const frameNumber = data.frame.sequenceNumber;
1916
- const image = await loadImageBytes(data.frame.image.imageBytes);
1917
- if (lastFrameNumber == null || frameNumber > lastFrameNumber) {
1918
- lastFrameNumber = frameNumber;
1919
- (_a = data.beforeDraw) === null || _a === void 0 ? void 0 : _a.call(data);
1920
- drawImage(image, data);
1921
- }
1922
- image.dispose();
1923
- return data.frame;
1924
- };
1925
- }
1926
- function createHiddenCanvasRenderer() {
1927
- const hiddenCanvas = document.createElement('canvas');
1928
- let lastFrameNumber;
1929
- return async (data) => {
1930
- var _a;
1981
+ var _a, _b, _c;
1931
1982
  const frameNumber = data.frame.sequenceNumber;
1932
1983
  const frameIsNewer = lastFrameNumber == null || frameNumber > lastFrameNumber;
1933
- const frameDimensionsMatch = data.dimensions == null ||
1934
- bundle_esm.dimensions.isEqual(data.dimensions, data.frame.image.imageAttr.frameDimensions);
1935
1984
  const image = await loadImageBytes(data.frame.image.imageBytes);
1936
- hiddenCanvas.width = data.canvasDimensions.width;
1937
- hiddenCanvas.height = data.canvasDimensions.height;
1938
- const ctx = hiddenCanvas.getContext('2d');
1939
- if (ctx != null && frameIsNewer && frameDimensionsMatch) {
1985
+ const predicatePassing = (_b = (_a = data.predicate) === null || _a === void 0 ? void 0 : _a.call(data)) !== null && _b !== void 0 ? _b : true;
1986
+ if (frameIsNewer && predicatePassing) {
1940
1987
  lastFrameNumber = frameNumber;
1941
- drawImage(image, Object.assign(Object.assign({}, data), { canvas: ctx }));
1942
- (_a = data.beforeDraw) === null || _a === void 0 ? void 0 : _a.call(data);
1943
- data.canvas.drawImage(hiddenCanvas, 0, 0);
1988
+ (_c = data.beforeDraw) === null || _c === void 0 ? void 0 : _c.call(data);
1989
+ drawImage(image, data);
1944
1990
  }
1945
1991
  image.dispose();
1946
1992
  return data.frame;
@@ -2419,6 +2465,7 @@ let Viewer = class {
2419
2465
  this.sceneChanged = index.createEvent(this, "sceneChanged", 7);
2420
2466
  this.interactionStarted = index.createEvent(this, "interactionStarted", 7);
2421
2467
  this.interactionFinished = index.createEvent(this, "interactionFinished", 7);
2468
+ this.cameraTypeChanged = index.createEvent(this, "cameraTypeChanged", 7);
2422
2469
  this.deviceIdChange = index.createEvent(this, "deviceIdChange", 7);
2423
2470
  this.dimensionschange = index.createEvent(this, "dimensionschange", 7);
2424
2471
  /**
@@ -2459,6 +2506,12 @@ let Viewer = class {
2459
2506
  * **Note:** This feature is experimental, and may cause slower frame rates.
2460
2507
  */
2461
2508
  this.experimentalGhostingOpacity = 0;
2509
+ /**
2510
+ * Specifies whether to use the default lights for the scene. When false, default
2511
+ * lights are used. When true, no default lights are used, and the lights must
2512
+ * be specified separately.
2513
+ */
2514
+ this.noDefaultLights = false;
2462
2515
  /**
2463
2516
  * The default hex color or material to use when selecting items.
2464
2517
  */
@@ -2746,6 +2799,9 @@ let Viewer = class {
2746
2799
  handleExperimentalGhostingOpacityChanged() {
2747
2800
  this.updateStreamAttributes();
2748
2801
  }
2802
+ handleNoDefaultLightsChanged() {
2803
+ this.updateStreamAttributes();
2804
+ }
2749
2805
  /**
2750
2806
  * @ignore
2751
2807
  */
@@ -2949,7 +3005,6 @@ let Viewer = class {
2949
3005
  if (previous.type !== 'connected') {
2950
3006
  this.errorMessage = undefined;
2951
3007
  this.canvasRenderer = measureCanvasRenderer(paintTime, createCanvasRenderer(), this.getResolvedConfig().flags.logFrameRate, (timings) => this.reportPerformance(timings));
2952
- this.resizeRenderer = measureCanvasRenderer(paintTime, createHiddenCanvasRenderer(), this.getResolvedConfig().flags.logFrameRate, (timings) => this.reportPerformance(timings));
2953
3008
  this.emitConnectionChange({
2954
3009
  status: 'connected',
2955
3010
  jwt: state.token.token,
@@ -2993,14 +3048,19 @@ let Viewer = class {
2993
3048
  this.updateCanvasDimensions(canvasDimensions);
2994
3049
  this.isResizeUpdate = false;
2995
3050
  },
3051
+ predicate: () => {
3052
+ if (this.isResizeUpdate) {
3053
+ return (this.dimensions == null ||
3054
+ bundle_esm.dimensions.isEqual(this.dimensions, data.frame.image.imageAttr.frameDimensions));
3055
+ }
3056
+ return true;
3057
+ },
2996
3058
  };
2997
3059
  this.frameReceived.emit(this.frame);
2998
3060
  if (this.frame.scene.hasChanged) {
2999
3061
  this.sceneChanged.emit();
3000
3062
  }
3001
- const drawnFrame = this.isResizeUpdate
3002
- ? await this.resizeRenderer(data)
3003
- : await this.canvasRenderer(data);
3063
+ const drawnFrame = await this.canvasRenderer(data);
3004
3064
  this.dispatchFrameDrawn(drawnFrame);
3005
3065
  }
3006
3066
  }
@@ -3065,6 +3125,7 @@ let Viewer = class {
3065
3125
  return {
3066
3126
  depthBuffers: this.getDepthBufferStreamAttributesValue(),
3067
3127
  experimentalGhosting: this.experimentalGhostingOpacity,
3128
+ noDefaultLights: this.noDefaultLights,
3068
3129
  featureLines: this.featureLines,
3069
3130
  featureHighlighting: this.featureHighlighting,
3070
3131
  featureMaps: this.featureMaps,
@@ -3081,13 +3142,18 @@ let Viewer = class {
3081
3142
  (_a = this.stream) === null || _a === void 0 ? void 0 : _a.update({ streamAttributes: this.getStreamAttributes() });
3082
3143
  }
3083
3144
  updateInteractionApi(previousFrame) {
3084
- if (previousFrame != null && this.frame != null) {
3085
- const hasChangedFromPerspective = previousFrame.scene.camera.isPerspective() &&
3145
+ if (this.frame != null) {
3146
+ const hasChangedFromPerspective = (previousFrame == null || previousFrame.scene.camera.isPerspective()) &&
3086
3147
  this.frame.scene.camera.isOrthographic();
3087
- const hasChangedFromOrthographic = previousFrame.scene.camera.isOrthographic() &&
3148
+ const hasChangedFromOrthographic = (previousFrame == null ||
3149
+ previousFrame.scene.camera.isOrthographic()) &&
3088
3150
  this.frame.scene.camera.isPerspective();
3089
3151
  if (hasChangedFromPerspective || hasChangedFromOrthographic) {
3090
3152
  this.interactionApi = this.createInteractionApi();
3153
+ this.cameraType = this.frame.scene.camera.isPerspective()
3154
+ ? 'perspective'
3155
+ : 'orthographic';
3156
+ this.cameraTypeChanged.emit(this.cameraType);
3091
3157
  this.interactionHandlers.forEach((handler) => this.initializeInteractionHandler(handler));
3092
3158
  }
3093
3159
  }
@@ -3152,6 +3218,7 @@ let Viewer = class {
3152
3218
  "cameraType": ["handleCameraTypeChanged"],
3153
3219
  "depthBuffers": ["handleDepthBuffersChanged"],
3154
3220
  "experimentalGhostingOpacity": ["handleExperimentalGhostingOpacityChanged"],
3221
+ "noDefaultLights": ["handleNoDefaultLightsChanged"],
3155
3222
  "featureLines": ["handleFeatureLinesChanged"],
3156
3223
  "featureHighlighting": ["handleFeatureHighlightingChanged"],
3157
3224
  "featureMaps": ["handleFeatureMapsChanged"],
@@ -3,9 +3,9 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const index = require('./index-e100709a.js');
7
- const appGlobals = require('./app-globals-3671e828.js');
8
- require('./_commonjsHelpers-537d719a.js');
6
+ const index = require('./index-4138aa2c.js');
7
+ const appGlobals = require('./app-globals-2035678d.js');
8
+ require('./_commonjsHelpers-dcc4cf71.js');
9
9
 
10
10
  /*
11
11
  Stencil Client Patch Browser v2.12.1 | MIT Licensed | https://stenciljs.com
@@ -74,5 +74,5 @@ const patchDynamicImport = (base, orgScriptElm) => {
74
74
 
75
75
  patchBrowser().then(options => {
76
76
  appGlobals.globalScripts();
77
- return index.bootstrapLazy([["vertex-viewer-default-toolbar.cjs",[[1,"vertex-viewer-default-toolbar",{"viewer":[16],"placement":[1],"direction":[1],"animationsDisabled":[4,"animations-disabled"],"animationMs":[2,"animation-ms"]}]]],["vertex-scene-tree.cjs",[[1,"vertex-scene-tree",{"overScanCount":[2,"over-scan-count"],"viewerSelector":[1,"viewer-selector"],"viewer":[1040],"rowData":[16],"config":[16],"configEnv":[1,"config-env"],"controller":[1040],"filterOnMetadata":[1028,"filter-on-metadata"],"metadataKeys":[16],"rows":[32],"totalRows":[32],"stateMap":[32],"connectionErrorDetails":[32],"attemptingRetry":[32],"invalidateRows":[64],"scrollToIndex":[64],"scrollToItem":[64],"expandAll":[64],"collapseAll":[64],"expandItem":[64],"collapseItem":[64],"toggleExpandItem":[64],"toggleItemVisibility":[64],"hideItem":[64],"showItem":[64],"selectItem":[64],"deselectItem":[64],"getRowAtIndex":[64],"getRowForEvent":[64],"getRowAtClientY":[64],"filterItems":[64],"fetchMetadataKeys":[64]},[[0,"search","handleSearch"]]]]],["vertex-viewer-measurement-tool.cjs",[[1,"vertex-viewer-measurement-tool",{"distanceTemplateId":[1,"distance-template-id"],"tool":[1],"units":[1],"fractionalDigits":[2,"fractional-digits"],"disabled":[4],"viewer":[16],"isMeasuring":[1540,"is-measuring"],"snapDistance":[2,"snap-distance"],"stateMap":[32]}]]],["vertex-viewer-markup.cjs",[[1,"vertex-viewer-markup",{"arrowTemplateId":[1,"arrow-template-id"],"circleTemplateId":[1,"circle-template-id"],"freeformTemplateId":[1,"freeform-template-id"],"tool":[1],"disabled":[4],"viewer":[16],"selectedMarkupId":[1025,"selected-markup-id"],"selectNew":[4,"select-new"],"toSelectMarkupId":[32],"pointerDownPosition":[32],"addMarkup":[64],"removeMarkup":[64],"getMarkupElements":[64],"getMarkupElement":[64]},[[0,"markupEnd","handleMarkupEnd"],[1,"pointerdown","handleMarkupPointerDown"]]]]],["vertex-viewer-markup-tool.cjs",[[1,"vertex-viewer-markup-tool",{"arrowTemplateId":[1,"arrow-template-id"],"circleTemplateId":[1,"circle-template-id"],"freeformTemplateId":[1,"freeform-template-id"],"tool":[1],"disabled":[4],"viewer":[16],"stateMap":[32],"reset":[64]}]]],["vertex-viewer-measurements.cjs",[[1,"vertex-viewer-measurements",{"distanceTemplateId":[1,"distance-template-id"],"tool":[1],"units":[1],"fractionalDigits":[2,"fractional-digits"],"disabled":[4],"viewer":[16],"selectedMeasurementId":[1025,"selected-measurement-id"],"snapDistance":[2,"snap-distance"],"showAxisReferenceLines":[4,"show-axis-reference-lines"],"measurementModel":[16],"addMeasurement":[64],"removeMeasurement":[64],"getMeasurementElement":[64],"getMeasurementElements":[64]},[[0,"measureEnd","handleMeasureEnd"],[1,"pointerdown","handleMeasurementPointerDown"]]]]],["vertex-viewer-view-cube.cjs",[[1,"vertex-viewer-view-cube",{"xPositiveLabel":[1,"x-positive-label"],"xNegativeLabel":[1,"x-negative-label"],"yPositiveLabel":[1,"y-positive-label"],"yNegativeLabel":[1,"y-negative-label"],"zPositiveLabel":[1,"z-positive-label"],"zNegativeLabel":[1,"z-negative-label"],"standardViewsOff":[4,"standard-views-off"],"animationDuration":[2,"animation-duration"],"triadOff":[4,"triad-off"],"worldOrientation":[1040],"camera":[1040],"viewer":[16],"boxLength":[32],"triadPosition":[32]}]]],["vertex-viewer-measurement-precise.cjs",[[1,"vertex-viewer-measurement-precise",{"measurementModel":[16],"measurementOverlays":[16],"measurementController":[1040],"measurableEntityTypes":[16],"viewer":[16],"configEnv":[1,"config-env"],"config":[16],"overlays":[32]}]]],["vertex-scene-tree-table-cell.cjs",[[1,"vertex-scene-tree-table-cell",{"node":[16],"tree":[16],"value":[1],"placeholder":[1],"hoveredNodeId":[1,"hovered-node-id"],"expandToggle":[4,"expand-toggle"],"visibilityToggle":[4,"visibility-toggle"],"interactionsDisabled":[4,"interactions-disabled"],"recurseParentSelectionDisabled":[4,"recurse-parent-selection-disabled"]}]]],["vertex-scene-tree-table-column.cjs",[[1,"vertex-scene-tree-table-column",{"initialWidth":[2,"initial-width"],"minWidth":[2,"min-width"],"maxWidth":[2,"max-width"]}]]],["vertex-scene-tree-table-header.cjs",[[1,"vertex-scene-tree-table-header"]]],["vertex-scene-tree-table-resize-divider.cjs",[[1,"vertex-scene-tree-table-resize-divider",{"dragging":[32]}]]],["vertex-scene-tree-toolbar-group.cjs",[[1,"vertex-scene-tree-toolbar-group"]]],["vertex-viewer.cjs",[[1,"vertex-viewer",{"src":[1],"clientId":[1,"client-id"],"deviceId":[1,"device-id"],"config":[1],"configEnv":[1,"config-env"],"resolvedConfig":[1040],"cameraControls":[4,"camera-controls"],"cameraType":[1,"camera-type"],"keyboardControls":[4,"keyboard-controls"],"rotateAroundTapPoint":[4,"rotate-around-tap-point"],"token":[1025],"depthBuffers":[1,"depth-buffers"],"experimentalGhostingOpacity":[2,"experimental-ghosting-opacity"],"featureLines":[16],"featureHighlighting":[16],"featureMaps":[1,"feature-maps"],"selectionMaterial":[1,"selection-material"],"resizeDebounce":[2,"resize-debounce"],"frame":[1040],"stream":[1040],"stencilBuffer":[1040],"viewport":[1040],"dimensions":[32],"hostDimensions":[32],"errorMessage":[32],"cursor":[32],"stateMap":[32],"dispatchFrameDrawn":[64],"registerInteractionHandler":[64],"registerTapKeyInteraction":[64],"getInteractionTarget":[64],"addCursor":[64],"getInteractionHandlers":[64],"getBaseInteractionHandler":[64],"getJwt":[64],"load":[64],"unload":[64],"scene":[64],"isSceneReady":[64]},[[0,"tap","handleTapEvent"]]]]],["vertex-viewer-measurement-details.cjs",[[1,"vertex-viewer-measurement-details",{"measurementModel":[16],"measurementOverlays":[16],"measurementOutcome":[1040],"distanceUnits":[1,"distance-units"],"angleUnits":[1,"angle-units"],"fractionalDigits":[2,"fractional-digits"],"distanceFormatter":[16],"angleFormatter":[16],"areaFormatter":[16],"resultTypes":[16],"overlay":[32],"distanceMeasurementUnits":[32],"angleMeasurementUnits":[32],"areaMeasurementUnits":[32]}]]],["vertex-viewer-measurement-distance.cjs",[[1,"vertex-viewer-measurement-distance",{"start":[1040],"startJson":[1,"start-json"],"end":[1040],"endJson":[1,"end-json"],"distance":[1026],"showAxisReferenceLines":[4,"show-axis-reference-lines"],"snapDistance":[2,"snap-distance"],"units":[1],"fractionalDigits":[2,"fractional-digits"],"labelFormatter":[16],"anchorLabelOffset":[2,"anchor-label-offset"],"lineCapLength":[2,"line-cap-length"],"mode":[513],"interactingAnchor":[1537,"interacting-anchor"],"invalid":[1540],"camera":[16],"hitProvider":[16],"indicatorPt":[1040],"viewer":[16],"measurementModel":[16],"viewport":[32],"elementBounds":[32],"interactionCount":[32],"internalCamera":[32],"invalidateStateCounter":[32],"stateMap":[32],"measurementUnits":[32],"computeElementMetrics":[64]}]]],["vertex-scene-tree-search_3.cjs",[[1,"vertex-scene-tree-search",{"debounce":[2],"disabled":[4],"placeholder":[1],"value":[1025],"focused":[32],"setFocus":[64]}],[1,"vertex-scene-tree-table-layout",{"tree":[16],"controller":[16],"rows":[16],"totalRows":[2,"total-rows"],"rowHeight":[1026,"row-height"],"overScanCount":[2,"over-scan-count"],"rowData":[16],"layoutOffset":[1026,"layout-offset"],"scrollOffset":[1026,"scroll-offset"],"layoutHeight":[1026,"layout-height"],"layoutWidth":[1026,"layout-width"],"viewportStartIndex":[1026,"viewport-start-index"],"viewportEndIndex":[1026,"viewport-end-index"],"columnGridLayout":[32],"columnGridFixedLayout":[32],"hoveredNodeId":[32],"isComputingCellHeight":[32],"lastDividerPointerPosition":[32],"resizingColumnIndex":[32],"stateMap":[32],"scrollToPosition":[64]}],[1,"vertex-scene-tree-toolbar"]]],["vertex-viewer-button_3.cjs",[[1,"vertex-viewer-toolbar",{"placement":[1],"direction":[1]}],[1,"vertex-viewer-button"],[1,"vertex-viewer-toolbar-group",{"direction":[1]}]]],["vertex-viewer-dom-element_3.cjs",[[1,"vertex-viewer-dom-element",{"position":[1040],"positionJson":[1,"position"],"rotation":[1040],"rotationJson":[1,"rotation"],"quaternion":[1040],"quaternionJson":[1,"quaternion"],"scale":[1040],"scaleJson":[1,"scale"],"matrix":[1040],"occlusionOff":[4,"occlusion-off"],"occluded":[516],"billboardOff":[4,"billboard-off"],"interactionsOff":[516,"interactions-off"]}],[1,"vertex-viewer-dom-group",{"position":[1040],"positionJson":[1,"position"],"rotation":[1040],"rotationJson":[1,"rotation"],"quaternion":[1040],"quaternionJson":[1,"quaternion"],"scale":[1040],"scaleJson":[1,"scale"],"matrix":[1040]}],[1,"vertex-viewer-dom-renderer",{"drawMode":[1,"draw-mode"],"viewer":[16],"camera":[1040],"depthBuffer":[1040],"viewport":[32],"invalidateFrameCounter":[32]},[[0,"propertyChange","handlePropertyChange"]]]]],["vertex-viewer-icon.cjs",[[1,"vertex-viewer-icon",{"name":[1],"size":[1]}]]],["vertex-viewer-layer.cjs",[[1,"vertex-viewer-layer",{"stretchOff":[516,"stretch-off"]}]]],["vertex-viewer-markup-arrow_3.cjs",[[1,"vertex-viewer-markup-arrow",{"start":[1040],"startJson":[1,"start"],"end":[1040],"endJson":[1,"end"],"mode":[513],"viewer":[16],"elementBounds":[32],"editAnchor":[32],"dispose":[64]}],[1,"vertex-viewer-markup-circle",{"bounds":[1040],"boundsJson":[1,"bounds"],"mode":[513],"viewer":[16],"elementBounds":[32],"startPosition":[32],"editAnchor":[32],"resizeBounds":[32],"dispose":[64]}],[1,"vertex-viewer-markup-freeform",{"points":[1040],"pointsJson":[1,"points"],"bounds":[1040],"boundsJson":[1,"bounds"],"mode":[513],"viewer":[16],"elementBounds":[32],"resizeStartPosition":[32],"editAnchor":[32],"resizeBounds":[32],"resizePoints":[32],"screenPoints":[32],"dispose":[64]}]]],["vertex-viewer-measurement-line_2.cjs",[[1,"vertex-viewer-measurement-overlays",{"measurementOverlays":[16],"camera":[1040],"viewer":[16],"overlays":[32]}],[1,"vertex-viewer-measurement-line",{"start":[16],"end":[16],"capLength":[2,"cap-length"],"pointerEvents":[1,"pointer-events"]}]]]], options);
77
+ return index.bootstrapLazy(JSON.parse("[[\"vertex-viewer-pin-tool.cjs\",[[1,\"vertex-viewer-pin-tool\",{\"pinController\":[1040],\"pinModel\":[16],\"pins\":[1040],\"viewer\":[16],\"tool\":[1025],\"mode\":[1025],\"selectedPinId\":[32],\"elementBounds\":[32],\"projectionViewMatrix\":[32]}]]],[\"vertex-viewer-default-toolbar.cjs\",[[1,\"vertex-viewer-default-toolbar\",{\"viewer\":[16],\"placement\":[1],\"direction\":[1],\"animationsDisabled\":[4,\"animations-disabled\"],\"animationMs\":[2,\"animation-ms\"]}]]],[\"vertex-scene-tree.cjs\",[[1,\"vertex-scene-tree\",{\"overScanCount\":[2,\"over-scan-count\"],\"viewerSelector\":[1,\"viewer-selector\"],\"viewer\":[1040],\"rowData\":[16],\"config\":[16],\"configEnv\":[1,\"config-env\"],\"controller\":[1040],\"metadataSearchExactMatch\":[1028,\"metadata-search-exact-match\"],\"metadataSearchKeys\":[1040],\"metadataKeys\":[16],\"rows\":[32],\"totalRows\":[32],\"stateMap\":[32],\"errorDetails\":[32],\"attemptingRetry\":[32],\"invalidateRows\":[64],\"scrollToIndex\":[64],\"scrollToItem\":[64],\"expandAll\":[64],\"collapseAll\":[64],\"expandItem\":[64],\"collapseItem\":[64],\"toggleExpandItem\":[64],\"toggleItemVisibility\":[64],\"hideItem\":[64],\"showItem\":[64],\"selectItem\":[64],\"deselectItem\":[64],\"getRowAtIndex\":[64],\"getRowForEvent\":[64],\"getRowAtClientY\":[64],\"filterItems\":[64],\"selectFilteredItems\":[64],\"fetchMetadataKeys\":[64]},[[0,\"search\",\"handleSearch\"]]]]],[\"vertex-viewer-measurement-tool.cjs\",[[1,\"vertex-viewer-measurement-tool\",{\"distanceTemplateId\":[1,\"distance-template-id\"],\"tool\":[1],\"units\":[1],\"fractionalDigits\":[2,\"fractional-digits\"],\"disabled\":[4],\"viewer\":[16],\"isMeasuring\":[1540,\"is-measuring\"],\"snapDistance\":[2,\"snap-distance\"],\"stateMap\":[32]}]]],[\"vertex-viewer-markup.cjs\",[[1,\"vertex-viewer-markup\",{\"arrowTemplateId\":[1,\"arrow-template-id\"],\"circleTemplateId\":[1,\"circle-template-id\"],\"freeformTemplateId\":[1,\"freeform-template-id\"],\"tool\":[1],\"disabled\":[4],\"viewer\":[16],\"selectedMarkupId\":[1025,\"selected-markup-id\"],\"selectNew\":[4,\"select-new\"],\"toSelectMarkupId\":[32],\"pointerDownPosition\":[32],\"addMarkup\":[64],\"removeMarkup\":[64],\"getMarkupElements\":[64],\"getMarkupElement\":[64]},[[0,\"markupEnd\",\"handleMarkupEnd\"],[1,\"pointerdown\",\"handleMarkupPointerDown\"]]]]],[\"vertex-viewer-markup-tool.cjs\",[[1,\"vertex-viewer-markup-tool\",{\"arrowTemplateId\":[1,\"arrow-template-id\"],\"circleTemplateId\":[1,\"circle-template-id\"],\"freeformTemplateId\":[1,\"freeform-template-id\"],\"tool\":[1],\"disabled\":[4],\"viewer\":[16],\"stateMap\":[32],\"reset\":[64]}]]],[\"vertex-viewer-measurements.cjs\",[[1,\"vertex-viewer-measurements\",{\"distanceTemplateId\":[1,\"distance-template-id\"],\"tool\":[1],\"units\":[1],\"fractionalDigits\":[2,\"fractional-digits\"],\"disabled\":[4],\"viewer\":[16],\"selectedMeasurementId\":[1025,\"selected-measurement-id\"],\"snapDistance\":[2,\"snap-distance\"],\"showAxisReferenceLines\":[4,\"show-axis-reference-lines\"],\"measurementModel\":[16],\"addMeasurement\":[64],\"removeMeasurement\":[64],\"getMeasurementElement\":[64],\"getMeasurementElements\":[64]},[[0,\"measureEnd\",\"handleMeasureEnd\"],[1,\"pointerdown\",\"handleMeasurementPointerDown\"]]]]],[\"vertex-viewer-view-cube.cjs\",[[1,\"vertex-viewer-view-cube\",{\"xPositiveLabel\":[1,\"x-positive-label\"],\"xNegativeLabel\":[1,\"x-negative-label\"],\"yPositiveLabel\":[1,\"y-positive-label\"],\"yNegativeLabel\":[1,\"y-negative-label\"],\"zPositiveLabel\":[1,\"z-positive-label\"],\"zNegativeLabel\":[1,\"z-negative-label\"],\"standardViewsOff\":[4,\"standard-views-off\"],\"animationDuration\":[2,\"animation-duration\"],\"triadOff\":[4,\"triad-off\"],\"worldOrientation\":[1040],\"camera\":[1040],\"viewer\":[16],\"boxLength\":[32],\"triadPosition\":[32]}]]],[\"vertex-viewer-measurement-precise.cjs\",[[1,\"vertex-viewer-measurement-precise\",{\"measurementModel\":[16],\"measurementOverlays\":[16],\"measurementController\":[1040],\"measurableEntityTypes\":[16],\"viewer\":[16],\"configEnv\":[1,\"config-env\"],\"config\":[16],\"overlays\":[32]}]]],[\"vertex-scene-tree-table-cell.cjs\",[[1,\"vertex-scene-tree-table-cell\",{\"node\":[16],\"tree\":[16],\"value\":[1],\"placeholder\":[1],\"hoveredNodeId\":[1,\"hovered-node-id\"],\"isScrolling\":[4,\"is-scrolling\"],\"expandToggle\":[4,\"expand-toggle\"],\"visibilityToggle\":[4,\"visibility-toggle\"],\"interactionsDisabled\":[4,\"interactions-disabled\"],\"recurseParentSelectionDisabled\":[4,\"recurse-parent-selection-disabled\"]}]]],[\"vertex-scene-tree-table-column.cjs\",[[1,\"vertex-scene-tree-table-column\",{\"initialWidth\":[2,\"initial-width\"],\"minWidth\":[2,\"min-width\"],\"maxWidth\":[2,\"max-width\"]}]]],[\"vertex-scene-tree-table-header.cjs\",[[1,\"vertex-scene-tree-table-header\"]]],[\"vertex-scene-tree-table-resize-divider.cjs\",[[1,\"vertex-scene-tree-table-resize-divider\",{\"dragging\":[32]}]]],[\"vertex-scene-tree-toolbar-group.cjs\",[[1,\"vertex-scene-tree-toolbar-group\"]]],[\"vertex-viewer.cjs\",[[1,\"vertex-viewer\",{\"src\":[1],\"clientId\":[1,\"client-id\"],\"deviceId\":[1025,\"device-id\"],\"config\":[1],\"configEnv\":[1,\"config-env\"],\"resolvedConfig\":[1040],\"cameraControls\":[4,\"camera-controls\"],\"cameraType\":[1537,\"camera-type\"],\"keyboardControls\":[4,\"keyboard-controls\"],\"rotateAroundTapPoint\":[4,\"rotate-around-tap-point\"],\"token\":[1025],\"depthBuffers\":[1,\"depth-buffers\"],\"experimentalGhostingOpacity\":[2,\"experimental-ghosting-opacity\"],\"noDefaultLights\":[4,\"no-default-lights\"],\"featureLines\":[16],\"featureHighlighting\":[16],\"featureMaps\":[1,\"feature-maps\"],\"selectionMaterial\":[1,\"selection-material\"],\"resizeDebounce\":[2,\"resize-debounce\"],\"frame\":[1040],\"stream\":[1040],\"stencilBuffer\":[1040],\"viewport\":[1040],\"dimensions\":[32],\"hostDimensions\":[32],\"errorMessage\":[32],\"cursor\":[32],\"stateMap\":[32],\"dispatchFrameDrawn\":[64],\"registerInteractionHandler\":[64],\"registerTapKeyInteraction\":[64],\"getInteractionTarget\":[64],\"addCursor\":[64],\"getInteractionHandlers\":[64],\"getBaseInteractionHandler\":[64],\"getJwt\":[64],\"load\":[64],\"unload\":[64],\"scene\":[64],\"isSceneReady\":[64]},[[0,\"tap\",\"handleTapEvent\"]]]]],[\"vertex-viewer-measurement-details.cjs\",[[1,\"vertex-viewer-measurement-details\",{\"measurementModel\":[16],\"measurementOverlays\":[16],\"measurementOutcome\":[1040],\"distanceUnits\":[1,\"distance-units\"],\"angleUnits\":[1,\"angle-units\"],\"fractionalDigits\":[2,\"fractional-digits\"],\"distanceFormatter\":[16],\"angleFormatter\":[16],\"areaFormatter\":[16],\"resultTypes\":[16],\"overlay\":[32],\"distanceMeasurementUnits\":[32],\"angleMeasurementUnits\":[32],\"areaMeasurementUnits\":[32]}]]],[\"vertex-viewer-transform-widget.cjs\",[[1,\"vertex-viewer-transform-widget\",{\"viewer\":[16],\"position\":[1040],\"controller\":[1040],\"hovered\":[1040]}]]],[\"vertex-viewer-icon.cjs\",[[1,\"vertex-viewer-icon\",{\"name\":[1],\"size\":[1]}]]],[\"vertex-viewer-pin-group.cjs\",[[0,\"vertex-viewer-pin-group\",{\"pin\":[16],\"matrix\":[1040],\"projectionViewMatrix\":[16],\"elementBounds\":[1040],\"pinModel\":[16],\"pinController\":[16],\"selected\":[4],\"invalidateStateCounter\":[32],\"leafNodesRendered\":[32]}]]],[\"vertex-viewer-dom-group.cjs\",[[1,\"vertex-viewer-dom-group\",{\"position\":[1040],\"positionJson\":[1,\"position\"],\"rotation\":[1040],\"rotationJson\":[1,\"rotation\"],\"quaternion\":[1040],\"quaternionJson\":[1,\"quaternion\"],\"scale\":[1040],\"scaleJson\":[1,\"scale\"],\"matrix\":[1040]}]]],[\"vertex-viewer-measurement-distance.cjs\",[[1,\"vertex-viewer-measurement-distance\",{\"start\":[1040],\"startJson\":[1,\"start-json\"],\"end\":[1040],\"endJson\":[1,\"end-json\"],\"distance\":[1026],\"showAxisReferenceLines\":[4,\"show-axis-reference-lines\"],\"snapDistance\":[2,\"snap-distance\"],\"units\":[1],\"fractionalDigits\":[2,\"fractional-digits\"],\"labelFormatter\":[16],\"anchorLabelOffset\":[2,\"anchor-label-offset\"],\"lineCapLength\":[2,\"line-cap-length\"],\"mode\":[513],\"interactingAnchor\":[1537,\"interacting-anchor\"],\"invalid\":[1540],\"camera\":[16],\"hitProvider\":[16],\"indicatorPt\":[1040],\"viewer\":[16],\"measurementModel\":[16],\"viewport\":[32],\"elementBounds\":[32],\"interactionCount\":[32],\"internalCamera\":[32],\"invalidateStateCounter\":[32],\"stateMap\":[32],\"measurementUnits\":[32],\"computeElementMetrics\":[64]}]]],[\"vertex-scene-tree-search_3.cjs\",[[1,\"vertex-scene-tree-search\",{\"debounce\":[2],\"disabled\":[4],\"placeholder\":[1],\"value\":[1025],\"focused\":[32],\"setFocus\":[64]}],[1,\"vertex-scene-tree-table-layout\",{\"tree\":[16],\"controller\":[16],\"rows\":[16],\"totalRows\":[2,\"total-rows\"],\"rowHeight\":[1026,\"row-height\"],\"overScanCount\":[2,\"over-scan-count\"],\"rowData\":[16],\"layoutOffset\":[1026,\"layout-offset\"],\"scrollOffset\":[1026,\"scroll-offset\"],\"layoutHeight\":[1026,\"layout-height\"],\"layoutWidth\":[1026,\"layout-width\"],\"viewportStartIndex\":[1026,\"viewport-start-index\"],\"viewportEndIndex\":[1026,\"viewport-end-index\"],\"columnGridLayout\":[32],\"columnGridFixedLayout\":[32],\"hoveredNodeId\":[32],\"isComputingCellHeight\":[32],\"lastDividerPointerPosition\":[32],\"resizingColumnIndex\":[32],\"isScrolling\":[32],\"scrollTimer\":[32],\"stateMap\":[32],\"scrollToPosition\":[64]}],[1,\"vertex-scene-tree-toolbar\"]]],[\"vertex-viewer-layer.cjs\",[[1,\"vertex-viewer-layer\",{\"stretchOff\":[516,\"stretch-off\"]}]]],[\"vertex-viewer-button_3.cjs\",[[1,\"vertex-viewer-toolbar\",{\"placement\":[1],\"direction\":[1]}],[1,\"vertex-viewer-button\"],[1,\"vertex-viewer-toolbar-group\",{\"direction\":[1]}]]],[\"vertex-viewer-pin-label_2.cjs\",[[0,\"vertex-viewer-pin-label\",{\"pin\":[16],\"elementBounds\":[16],\"value\":[1025],\"pinController\":[16],\"focused\":[32],\"computedScreenPosition\":[32],\"textareaRows\":[32],\"contentElBounds\":[32],\"setFocus\":[64]}],[0,\"vertex-viewer-pin-label-line\",{\"pinPoint\":[16],\"labelPoint\":[16]}]]],[\"vertex-viewer-dom-element_2.cjs\",[[1,\"vertex-viewer-dom-renderer\",{\"drawMode\":[1,\"draw-mode\"],\"viewer\":[16],\"camera\":[1040],\"depthBuffer\":[1040],\"viewport\":[32],\"invalidateFrameCounter\":[32]},[[0,\"propertyChange\",\"handlePropertyChange\"]]],[1,\"vertex-viewer-dom-element\",{\"position\":[1040],\"positionJson\":[1,\"position\"],\"rotation\":[1040],\"rotationJson\":[1,\"rotation\"],\"quaternion\":[1040],\"quaternionJson\":[1,\"quaternion\"],\"scale\":[1040],\"scaleJson\":[1,\"scale\"],\"matrix\":[1040],\"occlusionOff\":[4,\"occlusion-off\"],\"occluded\":[516],\"billboardOff\":[4,\"billboard-off\"],\"interactionsOff\":[516,\"interactions-off\"]}]]],[\"vertex-viewer-markup-arrow_3.cjs\",[[1,\"vertex-viewer-markup-arrow\",{\"start\":[1040],\"startJson\":[1,\"start\"],\"end\":[1040],\"endJson\":[1,\"end\"],\"mode\":[513],\"viewer\":[16],\"elementBounds\":[32],\"editAnchor\":[32],\"dispose\":[64]}],[1,\"vertex-viewer-markup-circle\",{\"bounds\":[1040],\"boundsJson\":[1,\"bounds\"],\"mode\":[513],\"viewer\":[16],\"elementBounds\":[32],\"startPosition\":[32],\"editAnchor\":[32],\"resizeBounds\":[32],\"dispose\":[64]}],[1,\"vertex-viewer-markup-freeform\",{\"points\":[1040],\"pointsJson\":[1,\"points\"],\"bounds\":[1040],\"boundsJson\":[1,\"bounds\"],\"mode\":[513],\"viewer\":[16],\"elementBounds\":[32],\"resizeStartPosition\":[32],\"editAnchor\":[32],\"resizeBounds\":[32],\"resizePoints\":[32],\"screenPoints\":[32],\"dispose\":[64]}]]],[\"vertex-viewer-measurement-line_2.cjs\",[[1,\"vertex-viewer-measurement-overlays\",{\"measurementOverlays\":[16],\"camera\":[1040],\"viewer\":[16],\"overlays\":[32]}],[1,\"vertex-viewer-measurement-line\",{\"start\":[16],\"end\":[16],\"capLength\":[2,\"cap-length\"],\"pointerEvents\":[1,\"pointer-events\"]}]]]]"), options);
78
78
  });
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const bundle_esm = require('./bundle.esm-618a5fe9.js');
6
+ const bundle_esm = require('./bundle.esm-22b6f2d6.js');
7
7
 
8
8
  /**
9
9
  * A `Viewport` represents the drawing area in the viewer.
@@ -37,6 +37,16 @@ class Viewport {
37
37
  static fromDimensions(dimensions) {
38
38
  return new Viewport(dimensions.width, dimensions.height);
39
39
  }
40
+ /**
41
+ * Transforms a normalized device coordinate to a 2D point within the
42
+ * viewport.
43
+ *
44
+ * @param ndc A 2D point in NDC.
45
+ * @returns A 2D point in the coordinate space of the viewport.
46
+ */
47
+ transformNdcPointToViewport(ndc) {
48
+ return bundle_esm.point.create(ndc.x * this.center.x + this.center.x, -ndc.y * this.center.y + this.center.y);
49
+ }
40
50
  /**
41
51
  * Transforms a normalized device coordinate to a 2D point within the
42
52
  * viewport.
@@ -45,7 +55,7 @@ class Viewport {
45
55
  * @returns A 2D point in the coordinate space of the viewport.
46
56
  */
47
57
  transformVectorToViewport(ndc) {
48
- return bundle_esm.point.create(ndc.x * this.center.x + this.center.x, -ndc.y * this.center.y + this.center.y);
58
+ return this.transformNdcPointToViewport(ndc);
49
59
  }
50
60
  /**
51
61
  * Transforms a world point to 2D point in viewport space.
@@ -133,9 +143,9 @@ class Viewport {
133
143
  */
134
144
  transformPointToOrthographicRay(pt, image, camera) {
135
145
  const ndc = this.transformScreenPointToNdc(pt, image);
136
- const world = bundle_esm.vector3.transformNdcToWorldSpace(bundle_esm.vector3.create(ndc.x, ndc.y, 0.5), camera.worldMatrix, camera.projectionMatrixInverse);
146
+ const origin = bundle_esm.vector3.transformNdcToWorldSpace(bundle_esm.vector3.create(ndc.x, ndc.y, 0), camera.worldMatrix, camera.projectionMatrixInverse);
137
147
  return bundle_esm.ray.create({
138
- origin: world,
148
+ origin,
139
149
  direction: bundle_esm.vector3.normalize(camera.viewVector),
140
150
  });
141
151
  }
@@ -0,0 +1,6 @@
1
+ const draw = jest.fn();
2
+ const createShape = jest.fn(() => draw);
3
+ export default jest.fn(() => ({
4
+ createShape,
5
+ }));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnbC1zaGFwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX21vY2tzX18vcmVnbC1zaGFwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7QUFFdkIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV4QyxlQUFlLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztFQUM1QixXQUFXO0NBQ1osQ0FBQyxDQUFDLENBQUMifQ==
@@ -0,0 +1,3 @@
1
+ const frame = jest.fn((callback) => callback());
2
+ export default jest.fn(() => ({ frame }));
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX21vY2tzX18vcmVnbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0FBRWhELGVBQWUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDIn0=
@@ -31,6 +31,11 @@
31
31
  "./components/viewer-measurement-overlays/viewer-measurement-overlays.js",
32
32
  "./components/viewer-measurement-precise/viewer-measurement-precise.js",
33
33
  "./components/viewer-measurements/viewer-measurements.js",
34
+ "./components/viewer-pin-group/viewer-pin-group.js",
35
+ "./components/viewer-pin-label/viewer-pin-label.js",
36
+ "./components/viewer-pin-label-line/viewer-pin-label-line.js",
37
+ "./components/viewer-pin-tool/viewer-pin-tool.js",
38
+ "./components/viewer-transform-widget/viewer-transform-widget.js",
34
39
  "./components/viewer-view-cube/viewer-view-cube.js"
35
40
  ],
36
41
  "compiler": {