@vertexvis/viewer 1.1.1-testing.3 → 1.1.1-testing.5

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 (476) hide show
  1. package/README.template.md +14 -8
  2. package/dist/cjs/{bundle-07I6_WqC.js → bundle-BCS0nA91.js} +28 -25
  3. package/dist/cjs/bundle-BCS0nA91.js.map +1 -0
  4. package/dist/cjs/{config-CepHuwRF.js → config-OELTgslY.js} +3 -3
  5. package/dist/cjs/{config-CepHuwRF.js.map → config-OELTgslY.js.map} +1 -1
  6. package/dist/cjs/{controller-Dklbe0Y6.js → controller-DvE3p6ta.js} +3 -3
  7. package/dist/cjs/{controller-Dklbe0Y6.js.map → controller-DvE3p6ta.js.map} +1 -1
  8. package/dist/cjs/{dom-Dlu6-7PF.js → dom-BuQSLPWr.js} +3 -3
  9. package/dist/cjs/{dom-Dlu6-7PF.js.map → dom-BuQSLPWr.js.map} +1 -1
  10. package/dist/cjs/{entities-BdWnb6KI.js → entities-rj-TEPKc.js} +4 -4
  11. package/dist/cjs/{entities-BdWnb6KI.js.map → entities-rj-TEPKc.js.map} +1 -1
  12. package/dist/cjs/{geometry_pb-BISQT2vx.js → geometry_pb-asn2mNvW.js} +3 -3
  13. package/dist/cjs/{geometry_pb-BISQT2vx.js.map → geometry_pb-asn2mNvW.js.map} +1 -1
  14. package/dist/cjs/grpc-D5Apx_zz.js.map +1 -1
  15. package/dist/cjs/index.cjs.js +13 -13
  16. package/dist/cjs/loader.cjs.js +1 -1
  17. package/dist/cjs/{markup-C-qyTwID.js → markup-Du4uVRo4.js} +3 -3
  18. package/dist/cjs/{markup-C-qyTwID.js.map → markup-Du4uVRo4.js.map} +1 -1
  19. package/dist/cjs/{model-Dy5FvjIA.js → model-BC6acIWJ.js} +3 -3
  20. package/dist/cjs/{model-Dy5FvjIA.js.map → model-BC6acIWJ.js.map} +1 -1
  21. package/dist/cjs/model-Bw4h8wNt.js.map +1 -1
  22. package/dist/cjs/{model-k5VBFN6C.js → model-DqxeakCS.js} +3 -3
  23. package/dist/cjs/{model-k5VBFN6C.js.map → model-DqxeakCS.js.map} +1 -1
  24. package/dist/cjs/{multiElementInteractionHandler-Bqpg2wVT.js → multiElementInteractionHandler-Bdeo6FYp.js} +6 -5
  25. package/dist/cjs/multiElementInteractionHandler-Bdeo6FYp.js.map +1 -0
  26. package/dist/cjs/{overlays-BujVkBnG.js → overlays-DASFbMSp.js} +3 -3
  27. package/dist/cjs/{overlays-BujVkBnG.js.map → overlays-DASFbMSp.js.map} +1 -1
  28. package/dist/cjs/{queries-GhYmoomu.js → queries-e19TP_oF.js} +5 -5
  29. package/dist/cjs/queries-e19TP_oF.js.map +1 -0
  30. package/dist/cjs/{regl-component-CB004H91.js → regl-component-DjVaO3t3.js} +6 -6
  31. package/dist/cjs/{regl-component-CB004H91.js.map → regl-component-DjVaO3t3.js.map} +1 -1
  32. package/dist/cjs/{representation_pb-CHCm5o1e.js → representation_pb-BVBPrHLf.js} +3 -3
  33. package/dist/cjs/{representation_pb-CHCm5o1e.js.map → representation_pb-BVBPrHLf.js.map} +1 -1
  34. package/dist/cjs/{results-BpfUIwa8.js → results-CU9Ctm2K.js} +3 -3
  35. package/dist/cjs/{results-BpfUIwa8.js.map → results-CU9Ctm2K.js.map} +1 -1
  36. package/dist/cjs/{streamAttributes-CJOD7AxG.js → streamAttributes-M3UUIO3l.js} +118 -95
  37. package/dist/cjs/streamAttributes-M3UUIO3l.js.map +1 -0
  38. package/dist/cjs/{util-smaTO4bk.js → util-gX3IGslq.js} +3 -3
  39. package/dist/cjs/{util-smaTO4bk.js.map → util-gX3IGslq.js.map} +1 -1
  40. package/dist/cjs/{utils-BsXO-wLi.js → utils-D5TGpFAV.js} +3 -3
  41. package/dist/cjs/utils-D5TGpFAV.js.map +1 -0
  42. package/dist/cjs/{utils-DY6afhh8.js → utils-opS9hsaU.js} +3 -3
  43. package/dist/cjs/{utils-DY6afhh8.js.map → utils-opS9hsaU.js.map} +1 -1
  44. package/dist/cjs/vertex-scene-tree-notification-banner_4.cjs.entry.js +2 -2
  45. package/dist/cjs/vertex-scene-tree-notification-banner_4.cjs.entry.js.map +1 -1
  46. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +3 -3
  47. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js.map +1 -1
  48. package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js.map +1 -1
  49. package/dist/cjs/vertex-scene-tree.cjs.entry.js +3 -3
  50. package/dist/cjs/vertex-scene-tree.cjs.entry.js.map +1 -1
  51. package/dist/cjs/vertex-viewer-annotation-callout.cjs.entry.js.map +1 -1
  52. package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js +4 -4
  53. package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js.map +1 -1
  54. package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +6 -1
  55. package/dist/cjs/vertex-viewer-button_3.cjs.entry.js.map +1 -1
  56. package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +2 -2
  57. package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js.map +1 -1
  58. package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +5 -5
  59. package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +1 -1
  60. package/dist/cjs/vertex-viewer-hit-result-indicator.cjs.entry.js +5 -5
  61. package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +3 -3
  62. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +4 -4
  63. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js.map +1 -1
  64. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +3 -3
  65. package/dist/cjs/vertex-viewer-markup.cjs.entry.js.map +1 -1
  66. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +3 -3
  67. package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +8 -8
  68. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +5 -5
  69. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +7 -7
  70. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +7 -7
  71. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js.map +1 -1
  72. package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js +9 -8
  73. package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js.map +1 -1
  74. package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +3 -3
  75. package/dist/cjs/vertex-viewer-spinner.cjs.entry.js.map +1 -1
  76. package/dist/cjs/vertex-viewer-teleport-tool.cjs.entry.js +2 -2
  77. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +7 -7
  78. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js.map +1 -1
  79. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +2 -2
  80. package/dist/cjs/vertex-viewer-walk-mode-tool.cjs.entry.js +1 -1
  81. package/dist/cjs/vertex-viewer.cjs.entry.js +8 -8
  82. package/dist/cjs/viewer.cjs.js +1 -1
  83. package/dist/cjs/{viewport-B70DgDZj.js → viewport-BDbB9o9T.js} +3 -3
  84. package/dist/cjs/{viewport-B70DgDZj.js.map → viewport-BDbB9o9T.js.map} +1 -1
  85. package/dist/collection/components/scene-tree/scene-tree.css +2 -3
  86. package/dist/collection/components/scene-tree/scene-tree.js.map +1 -1
  87. package/dist/collection/components/scene-tree-notification-banner/scene-tree-notification-banner.css +1 -1
  88. package/dist/collection/components/scene-tree-search/scene-tree-search.css +1 -1
  89. package/dist/collection/components/scene-tree-search/scene-tree-search.js +1 -1
  90. package/dist/collection/components/scene-tree-search/scene-tree-search.js.map +1 -1
  91. package/dist/collection/components/scene-tree-table-cell/scene-tree-table-cell.css +10 -10
  92. package/dist/collection/components/scene-tree-table-cell/scene-tree-table-cell.js +1 -1
  93. package/dist/collection/components/scene-tree-table-cell/scene-tree-table-cell.js.map +1 -1
  94. package/dist/collection/components/scene-tree-table-column/scene-tree-table-column.css +0 -1
  95. package/dist/collection/components/scene-tree-table-layout/scene-tree-table-layout.css +3 -3
  96. package/dist/collection/components/viewer-annotation-callout/viewer-annotation-callout.css +3 -4
  97. package/dist/collection/components/viewer-box-query-tool/types.js.map +1 -1
  98. package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.css +9 -7
  99. package/dist/collection/components/viewer-button/viewer-button.js +32 -1
  100. package/dist/collection/components/viewer-button/viewer-button.js.map +1 -1
  101. package/dist/collection/components/viewer-default-toolbar/viewer-default-toolbar.css +2 -2
  102. package/dist/collection/components/viewer-default-toolbar/viewer-default-toolbar.js +1 -1
  103. package/dist/collection/components/viewer-default-toolbar/viewer-default-toolbar.js.map +1 -1
  104. package/dist/collection/components/viewer-markup/viewer-markup.js.map +1 -1
  105. package/dist/collection/components/viewer-markup-arrow/utils.js.map +1 -1
  106. package/dist/collection/components/viewer-markup-tool/viewer-markup-tool.css +2 -2
  107. package/dist/collection/components/viewer-pin-group/viewer-pin-group.css +12 -11
  108. package/dist/collection/components/viewer-pin-label/viewer-pin-label.css +21 -8
  109. package/dist/collection/components/viewer-pin-label/viewer-pin-label.js +4 -3
  110. package/dist/collection/components/viewer-pin-label/viewer-pin-label.js.map +1 -1
  111. package/dist/collection/components/viewer-pin-label-line/viewer-pin-label-line.css +5 -4
  112. package/dist/collection/components/viewer-spinner/viewer-spinner.css +2 -2
  113. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget-components.js +1 -1
  114. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget-components.js.map +1 -1
  115. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.css +1 -2
  116. package/dist/collection/lib/grpc.js.map +1 -1
  117. package/dist/collection/lib/interactions/baseInteractionHandler.js +2 -1
  118. package/dist/collection/lib/interactions/baseInteractionHandler.js.map +1 -1
  119. package/dist/collection/lib/scenes/scene.js.map +1 -1
  120. package/dist/collection/lib/scenes/sceneViewStateLoader.js.map +1 -1
  121. package/dist/collection/lib/stream/state.js.map +1 -1
  122. package/dist/collection/lib/types/loadableResource.js.map +1 -1
  123. package/dist/collection/lib/types/sceneViewStateIdentifier.js.map +1 -1
  124. package/dist/collection/lib/walk-mode/model.js.map +1 -1
  125. package/dist/collection/workers/png-decoder-pool.js +4 -3
  126. package/dist/collection/workers/png-decoder-pool.js.map +1 -1
  127. package/dist/components/index.js +1 -1
  128. package/dist/components/p-2UsvOTHJ.js +5 -0
  129. package/dist/components/p-2UsvOTHJ.js.map +1 -0
  130. package/dist/components/{p-CZgX-9yo.js → p-5bk1mHRt.js} +2 -2
  131. package/dist/components/{p-DRGCkSEK.js → p-B8530k7R.js} +2 -2
  132. package/dist/components/{p-garvKln8.js → p-BAuOB8M-.js} +2 -2
  133. package/dist/components/p-BAuOB8M-.js.map +1 -0
  134. package/dist/components/{p-BKQMbekH.js → p-BCuMPvZO.js} +2 -2
  135. package/dist/components/p-BFEV_v80.js +5 -0
  136. package/dist/components/p-BFEV_v80.js.map +1 -0
  137. package/dist/components/{p-C02XtMl4.js → p-BHyxBmg6.js} +2 -2
  138. package/dist/components/{p-O1_Yvjd6.js → p-BT9d9jRt.js} +2 -2
  139. package/dist/components/{p-oDn1DcWj.js → p-BZDn1Vuv.js} +2 -2
  140. package/dist/components/{p-VEJB73Ei.js → p-Bdf4AcJ2.js} +2 -2
  141. package/dist/components/p-BgzjmANj.js +5 -0
  142. package/dist/components/p-BgzjmANj.js.map +1 -0
  143. package/dist/components/p-BjvjKoy7.js +5 -0
  144. package/dist/components/p-BjvjKoy7.js.map +1 -0
  145. package/dist/components/p-Bwtyddca.js +5 -0
  146. package/dist/components/p-Bwtyddca.js.map +1 -0
  147. package/dist/components/{p-CMdP8O-G.js → p-Bx42CNGV.js} +2 -2
  148. package/dist/components/{p-CelQDFR0.js → p-C12jtCFb.js} +2 -2
  149. package/dist/components/p-C86HMDzi.js +5 -0
  150. package/dist/components/p-C86HMDzi.js.map +1 -0
  151. package/dist/components/{p-Dzs4u_ZY.js → p-CABws4i9.js} +2 -2
  152. package/dist/components/p-CIuxJYJL.js.map +1 -1
  153. package/dist/components/{p-BqeEZXPn.js → p-CPROw2BU.js} +2 -2
  154. package/dist/components/p-CSVgoQU8.js +5 -0
  155. package/dist/components/p-CSVgoQU8.js.map +1 -0
  156. package/dist/components/{p-DnVcQAR9.js → p-CTi-0-dI.js} +2 -2
  157. package/dist/components/{p-EG7pMA2M.js → p-CeZe0Qql.js} +2 -2
  158. package/dist/components/p-CioaIHsi.js.map +1 -1
  159. package/dist/components/{p-Due5EmBt.js → p-Clyxptbp.js} +2 -2
  160. package/dist/components/{p-taOlygmc.js → p-Cs2aiMUK.js} +2 -2
  161. package/dist/components/p-Cs2aiMUK.js.map +1 -0
  162. package/dist/components/p-DUo-H-nW.js +5 -0
  163. package/dist/components/p-DUo-H-nW.js.map +1 -0
  164. package/dist/components/{p-MnZadXO8.js → p-D_h07qsA.js} +2 -2
  165. package/dist/components/{p-DCTZZ5Rd.js → p-DjQ6RXWP.js} +2 -2
  166. package/dist/components/p-DxuSiXYg.js.map +1 -1
  167. package/dist/components/{p-CxzyM08j.js → p-DyL2wWm6.js} +2 -2
  168. package/dist/components/{p-avWSFTeP.js → p-JvS9LLoO.js} +2 -2
  169. package/dist/components/{p-CfTvpqud.js → p-KidjtXKE.js} +2 -2
  170. package/dist/{viewer/p-7m7Vr5V7.js → components/p-Ng27jBsS.js} +2 -2
  171. package/dist/components/p-Ng27jBsS.js.map +1 -0
  172. package/dist/components/{p-BC777sCK.js → p-UJR-ixsy.js} +2 -2
  173. package/dist/components/{p-Ib4vgh2t.js → p-UrT4ZJv3.js} +2 -2
  174. package/dist/components/{p-Ib4vgh2t.js.map → p-UrT4ZJv3.js.map} +1 -1
  175. package/dist/components/{p-mpsCUvSn.js → p-_qi2VkC2.js} +2 -2
  176. package/dist/components/{p-CNprIkKd.js → p-rDr0x5Z7.js} +2 -2
  177. package/dist/components/vertex-scene-tree-search.js +1 -1
  178. package/dist/components/vertex-scene-tree-table-cell.js +1 -1
  179. package/dist/components/vertex-scene-tree-table-cell.js.map +1 -1
  180. package/dist/components/vertex-scene-tree-table-column.js.map +1 -1
  181. package/dist/components/vertex-scene-tree-table-layout.js +1 -1
  182. package/dist/components/vertex-scene-tree.js +1 -1
  183. package/dist/components/vertex-scene-tree.js.map +1 -1
  184. package/dist/components/vertex-viewer-annotation-callout.js.map +1 -1
  185. package/dist/components/vertex-viewer-box-query-tool.js +1 -1
  186. package/dist/components/vertex-viewer-box-query-tool.js.map +1 -1
  187. package/dist/components/vertex-viewer-button.js +1 -1
  188. package/dist/components/vertex-viewer-default-toolbar.js +1 -1
  189. package/dist/components/vertex-viewer-default-toolbar.js.map +1 -1
  190. package/dist/components/vertex-viewer-dom-element.js +1 -1
  191. package/dist/components/vertex-viewer-dom-group.js +1 -1
  192. package/dist/components/vertex-viewer-dom-renderer.js +1 -1
  193. package/dist/components/vertex-viewer-hit-result-indicator.js +1 -1
  194. package/dist/components/vertex-viewer-markup-arrow.js +1 -1
  195. package/dist/components/vertex-viewer-markup-circle.js +1 -1
  196. package/dist/components/vertex-viewer-markup-freeform.js +1 -1
  197. package/dist/components/vertex-viewer-markup-tool.js +1 -1
  198. package/dist/components/vertex-viewer-markup-tool.js.map +1 -1
  199. package/dist/components/vertex-viewer-markup.js +1 -1
  200. package/dist/components/vertex-viewer-markup.js.map +1 -1
  201. package/dist/components/vertex-viewer-measurement-details.js +1 -1
  202. package/dist/components/vertex-viewer-measurement-distance.js +1 -1
  203. package/dist/components/vertex-viewer-measurement-line.js +1 -1
  204. package/dist/components/vertex-viewer-measurement-overlays.js +1 -1
  205. package/dist/components/vertex-viewer-measurement-precise.js +1 -1
  206. package/dist/components/vertex-viewer-pin-group.js +1 -1
  207. package/dist/components/vertex-viewer-pin-label-line.js +1 -1
  208. package/dist/components/vertex-viewer-pin-label.js +1 -1
  209. package/dist/components/vertex-viewer-pin-tool.js +1 -1
  210. package/dist/components/vertex-viewer-teleport-tool.js +1 -1
  211. package/dist/components/vertex-viewer-transform-widget.js +1 -1
  212. package/dist/components/vertex-viewer-transform-widget.js.map +1 -1
  213. package/dist/components/vertex-viewer-view-cube.js +1 -1
  214. package/dist/components/vertex-viewer-walk-mode-tool.js +1 -1
  215. package/dist/components/vertex-viewer.js +1 -1
  216. package/dist/esm/{bundle-CZZALKHT.js → bundle-2UsvOTHJ.js} +28 -25
  217. package/dist/esm/bundle-2UsvOTHJ.js.map +1 -0
  218. package/dist/esm/{config-CyaUTJEG.js → config-Cqrcty7U.js} +3 -3
  219. package/dist/esm/{config-CyaUTJEG.js.map → config-Cqrcty7U.js.map} +1 -1
  220. package/dist/esm/{controller-ByBd8r3O.js → controller-BPECXXfj.js} +3 -3
  221. package/dist/esm/{controller-ByBd8r3O.js.map → controller-BPECXXfj.js.map} +1 -1
  222. package/dist/esm/{dom-Bbf2HAst.js → dom-DaP9SiyY.js} +3 -3
  223. package/dist/esm/{dom-Bbf2HAst.js.map → dom-DaP9SiyY.js.map} +1 -1
  224. package/dist/esm/{entities-DriL3zBC.js → entities-CawBZH7i.js} +4 -4
  225. package/dist/esm/{entities-DriL3zBC.js.map → entities-CawBZH7i.js.map} +1 -1
  226. package/dist/esm/{geometry_pb-BEB8SExe.js → geometry_pb-COdZQiRi.js} +3 -3
  227. package/dist/esm/{geometry_pb-BEB8SExe.js.map → geometry_pb-COdZQiRi.js.map} +1 -1
  228. package/dist/esm/grpc-hWL8wFvk.js.map +1 -1
  229. package/dist/esm/index.js +13 -13
  230. package/dist/esm/index.mjs +13 -13
  231. package/dist/esm/loader.js +1 -1
  232. package/dist/esm/loader.mjs +1 -1
  233. package/dist/esm/{markup-y96-uR-l.js → markup-B58g75Hr.js} +3 -3
  234. package/dist/esm/{markup-y96-uR-l.js.map → markup-B58g75Hr.js.map} +1 -1
  235. package/dist/esm/{model-BJQo0DxL.js → model-B5KuXEsl.js} +3 -3
  236. package/dist/esm/{model-BJQo0DxL.js.map → model-B5KuXEsl.js.map} +1 -1
  237. package/dist/esm/model-BHVr1tU0.js.map +1 -1
  238. package/dist/esm/{model-CTdG73h9.js → model-Dc6T63-k.js} +3 -3
  239. package/dist/esm/{model-CTdG73h9.js.map → model-Dc6T63-k.js.map} +1 -1
  240. package/dist/esm/{multiElementInteractionHandler-C45E8VzE.js → multiElementInteractionHandler-3tE3OPpw.js} +6 -5
  241. package/dist/esm/multiElementInteractionHandler-3tE3OPpw.js.map +1 -0
  242. package/dist/esm/{overlays-DmcRtaSn.js → overlays-BwIqsqLW.js} +3 -3
  243. package/dist/esm/{overlays-DmcRtaSn.js.map → overlays-BwIqsqLW.js.map} +1 -1
  244. package/dist/esm/{queries-DWjy-LsV.js → queries-B4XotYyr.js} +5 -5
  245. package/dist/esm/queries-B4XotYyr.js.map +1 -0
  246. package/dist/esm/{regl-component-zzdsBise.js → regl-component-B1_h3_s8.js} +6 -6
  247. package/dist/esm/{regl-component-zzdsBise.js.map → regl-component-B1_h3_s8.js.map} +1 -1
  248. package/dist/esm/{representation_pb-CQdJxiGO.js → representation_pb-C4MJfZMo.js} +3 -3
  249. package/dist/esm/{representation_pb-CQdJxiGO.js.map → representation_pb-C4MJfZMo.js.map} +1 -1
  250. package/dist/esm/{results-ClIgKssN.js → results-De9arm7M.js} +3 -3
  251. package/dist/esm/{results-ClIgKssN.js.map → results-De9arm7M.js.map} +1 -1
  252. package/dist/esm/{streamAttributes-CTs61PCl.js → streamAttributes-BW9JzMeG.js} +117 -94
  253. package/dist/esm/streamAttributes-BW9JzMeG.js.map +1 -0
  254. package/dist/esm/{util-DUjEw5Kh.js → util-CMPFqnEv.js} +3 -3
  255. package/dist/esm/{util-DUjEw5Kh.js.map → util-CMPFqnEv.js.map} +1 -1
  256. package/dist/esm/{utils-DOjHP1wA.js → utils-B1mSYmAK.js} +3 -3
  257. package/dist/esm/{utils-DOjHP1wA.js.map → utils-B1mSYmAK.js.map} +1 -1
  258. package/dist/esm/{utils-DJ5FvINs.js → utils-c-mcLgsj.js} +3 -3
  259. package/dist/esm/utils-c-mcLgsj.js.map +1 -0
  260. package/dist/esm/vertex-scene-tree-notification-banner_4.entry.js +2 -2
  261. package/dist/esm/vertex-scene-tree-notification-banner_4.entry.js.map +1 -1
  262. package/dist/esm/vertex-scene-tree-table-cell.entry.js +3 -3
  263. package/dist/esm/vertex-scene-tree-table-cell.entry.js.map +1 -1
  264. package/dist/esm/vertex-scene-tree-table-column.entry.js.map +1 -1
  265. package/dist/esm/vertex-scene-tree.entry.js +3 -3
  266. package/dist/esm/vertex-scene-tree.entry.js.map +1 -1
  267. package/dist/esm/vertex-viewer-annotation-callout.entry.js.map +1 -1
  268. package/dist/esm/vertex-viewer-box-query-tool.entry.js +4 -4
  269. package/dist/esm/vertex-viewer-box-query-tool.entry.js.map +1 -1
  270. package/dist/esm/vertex-viewer-button_3.entry.js +6 -1
  271. package/dist/esm/vertex-viewer-button_3.entry.js.map +1 -1
  272. package/dist/esm/vertex-viewer-default-toolbar.entry.js +2 -2
  273. package/dist/esm/vertex-viewer-default-toolbar.entry.js.map +1 -1
  274. package/dist/esm/vertex-viewer-dom-element_2.entry.js +5 -5
  275. package/dist/esm/vertex-viewer-dom-group.entry.js +1 -1
  276. package/dist/esm/vertex-viewer-hit-result-indicator.entry.js +5 -5
  277. package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +3 -3
  278. package/dist/esm/vertex-viewer-markup-tool.entry.js +4 -4
  279. package/dist/esm/vertex-viewer-markup-tool.entry.js.map +1 -1
  280. package/dist/esm/vertex-viewer-markup.entry.js +3 -3
  281. package/dist/esm/vertex-viewer-markup.entry.js.map +1 -1
  282. package/dist/esm/vertex-viewer-measurement-details.entry.js +3 -3
  283. package/dist/esm/vertex-viewer-measurement-distance.entry.js +8 -8
  284. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +5 -5
  285. package/dist/esm/vertex-viewer-measurement-precise.entry.js +7 -7
  286. package/dist/esm/vertex-viewer-pin-group.entry.js +7 -7
  287. package/dist/esm/vertex-viewer-pin-group.entry.js.map +1 -1
  288. package/dist/esm/vertex-viewer-pin-label_2.entry.js +9 -8
  289. package/dist/esm/vertex-viewer-pin-label_2.entry.js.map +1 -1
  290. package/dist/esm/vertex-viewer-pin-tool.entry.js +3 -3
  291. package/dist/esm/vertex-viewer-spinner.entry.js.map +1 -1
  292. package/dist/esm/vertex-viewer-teleport-tool.entry.js +2 -2
  293. package/dist/esm/vertex-viewer-transform-widget.entry.js +7 -7
  294. package/dist/esm/vertex-viewer-transform-widget.entry.js.map +1 -1
  295. package/dist/esm/vertex-viewer-view-cube.entry.js +2 -2
  296. package/dist/esm/vertex-viewer-walk-mode-tool.entry.js +1 -1
  297. package/dist/esm/vertex-viewer.entry.js +8 -8
  298. package/dist/esm/viewer.js +1 -1
  299. package/dist/esm/{viewport-D90kzsD7.js → viewport-CHtidaFL.js} +3 -3
  300. package/dist/esm/{viewport-D90kzsD7.js.map → viewport-CHtidaFL.js.map} +1 -1
  301. package/dist/types/components/viewer-button/viewer-button.d.ts +5 -0
  302. package/dist/types/components.d.ts +14 -1
  303. package/dist/types/lib/walk-mode/model.d.ts +10 -10
  304. package/dist/types/regl-shape.d.ts +1 -5
  305. package/dist/types/workers/png-decoder-pool.d.ts +0 -1
  306. package/dist/viewer/index.esm.js +1 -1
  307. package/dist/viewer/{p-12a673f0.entry.js → p-1506f9a2.entry.js} +2 -2
  308. package/dist/viewer/p-1506f9a2.entry.js.map +1 -0
  309. package/dist/viewer/{p-78f422af.entry.js → p-287e0670.entry.js} +2 -2
  310. package/dist/viewer/{p-78f422af.entry.js.map → p-287e0670.entry.js.map} +1 -1
  311. package/dist/viewer/{p-7b4eec65.entry.js → p-293d8f3f.entry.js} +2 -2
  312. package/dist/viewer/p-2UsvOTHJ.js +5 -0
  313. package/dist/viewer/p-2UsvOTHJ.js.map +1 -0
  314. package/dist/viewer/{p-510fd2e1.entry.js → p-2d2fa147.entry.js} +2 -2
  315. package/dist/viewer/{p-a108a305.entry.js → p-2faddbf8.entry.js} +2 -2
  316. package/dist/viewer/{p-e3981cf8.entry.js → p-36349a80.entry.js} +2 -2
  317. package/dist/viewer/p-36349a80.entry.js.map +1 -0
  318. package/dist/viewer/{p-aa0359e0.entry.js → p-3c5dd716.entry.js} +2 -2
  319. package/dist/viewer/p-44395076.entry.js +5 -0
  320. package/dist/viewer/p-44395076.entry.js.map +1 -0
  321. package/dist/viewer/{p-fe434552.entry.js → p-45cc095e.entry.js} +2 -2
  322. package/dist/viewer/p-504e77a7.entry.js +5 -0
  323. package/dist/viewer/{p-c2c3579f.entry.js.map → p-504e77a7.entry.js.map} +1 -1
  324. package/dist/viewer/{p-71c03352.entry.js → p-53f6cc59.entry.js} +2 -2
  325. package/dist/viewer/{p-56e39cff.entry.js → p-83683307.entry.js} +2 -2
  326. package/dist/viewer/{p-91fca24b.entry.js → p-93311f46.entry.js} +2 -2
  327. package/dist/viewer/{p-BIR7Lfxx.js → p-BEOO-Ypv.js} +2 -2
  328. package/dist/viewer/{p-BIR7Lfxx.js.map → p-BEOO-Ypv.js.map} +1 -1
  329. package/dist/viewer/{p-C6YtUG51.js → p-BJGbLthH.js} +2 -2
  330. package/dist/viewer/{p-C6YtUG51.js.map → p-BJGbLthH.js.map} +1 -1
  331. package/dist/viewer/{p-O1_Yvjd6.js → p-BT9d9jRt.js} +2 -2
  332. package/dist/viewer/{p-O1_Yvjd6.js.map → p-BT9d9jRt.js.map} +1 -1
  333. package/dist/viewer/{p-VEJB73Ei.js → p-Bdf4AcJ2.js} +2 -2
  334. package/dist/viewer/{p-VEJB73Ei.js.map → p-Bdf4AcJ2.js.map} +1 -1
  335. package/dist/viewer/{p-C-huOg09.js → p-Br21pGVj.js} +2 -2
  336. package/dist/viewer/{p-C-huOg09.js.map → p-Br21pGVj.js.map} +1 -1
  337. package/dist/viewer/{p-Ce1j43tF.js → p-Bw_ryWU0.js} +2 -2
  338. package/dist/viewer/{p-Ce1j43tF.js.map → p-Bw_ryWU0.js.map} +1 -1
  339. package/dist/viewer/{p-CelQDFR0.js → p-C12jtCFb.js} +2 -2
  340. package/dist/viewer/{p-CelQDFR0.js.map → p-C12jtCFb.js.map} +1 -1
  341. package/dist/viewer/{p-B-J4CqZy.js → p-C4_1Jc7H.js} +2 -2
  342. package/dist/viewer/{p-B-J4CqZy.js.map → p-C4_1Jc7H.js.map} +1 -1
  343. package/dist/viewer/p-CEDqc5sS.js +5 -0
  344. package/dist/viewer/{p-BDy3SLKk.js.map → p-CEDqc5sS.js.map} +1 -1
  345. package/dist/viewer/p-Cc3XhAoA.js +5 -0
  346. package/dist/viewer/p-Cc3XhAoA.js.map +1 -0
  347. package/dist/viewer/{p-EG7pMA2M.js → p-CeZe0Qql.js} +2 -2
  348. package/dist/viewer/{p-EG7pMA2M.js.map → p-CeZe0Qql.js.map} +1 -1
  349. package/dist/viewer/p-CioaIHsi.js.map +1 -1
  350. package/dist/viewer/{p-EUeCUp3y.js → p-CxBXErQ8.js} +2 -2
  351. package/dist/viewer/{p-EUeCUp3y.js.map → p-CxBXErQ8.js.map} +1 -1
  352. package/dist/viewer/{p-CIBBr-p1.js → p-D0aTA_2m.js} +2 -2
  353. package/dist/viewer/{p-CIBBr-p1.js.map → p-D0aTA_2m.js.map} +1 -1
  354. package/dist/viewer/{p-UQXG8bCI.js → p-DBfvBC5O.js} +2 -2
  355. package/dist/viewer/p-DBfvBC5O.js.map +1 -0
  356. package/dist/{components/p-QhlhRt6X.js → viewer/p-DIbJ8Ijj.js} +2 -2
  357. package/dist/viewer/p-DIbJ8Ijj.js.map +1 -0
  358. package/dist/viewer/{p-Cju1inFh.js → p-DYDhLlLS.js} +2 -2
  359. package/dist/viewer/p-DYDhLlLS.js.map +1 -0
  360. package/dist/viewer/{p-CxzyM08j.js → p-DyL2wWm6.js} +2 -2
  361. package/dist/viewer/{p-CxzyM08j.js.map → p-DyL2wWm6.js.map} +1 -1
  362. package/dist/viewer/{p-avWSFTeP.js → p-JvS9LLoO.js} +2 -2
  363. package/dist/viewer/{p-avWSFTeP.js.map → p-JvS9LLoO.js.map} +1 -1
  364. package/dist/viewer/{p-mpsCUvSn.js → p-_qi2VkC2.js} +2 -2
  365. package/dist/viewer/{p-mpsCUvSn.js.map → p-_qi2VkC2.js.map} +1 -1
  366. package/dist/viewer/{p-9312a936.entry.js → p-a94b626c.entry.js} +2 -2
  367. package/dist/viewer/p-b5cc83a4.entry.js.map +1 -1
  368. package/dist/viewer/{p-fc7d9b2b.entry.js → p-c531ca97.entry.js} +2 -2
  369. package/dist/viewer/{p-fc7d9b2b.entry.js.map → p-c531ca97.entry.js.map} +1 -1
  370. package/dist/viewer/p-c9dee5c4.entry.js +5 -0
  371. package/dist/viewer/p-c9dee5c4.entry.js.map +1 -0
  372. package/dist/viewer/p-ce711ae0.entry.js +5 -0
  373. package/dist/viewer/p-ce711ae0.entry.js.map +1 -0
  374. package/dist/viewer/{p-82ed4346.entry.js → p-ced98004.entry.js} +2 -2
  375. package/dist/viewer/p-d357d235.entry.js.map +1 -1
  376. package/dist/viewer/p-dcb6ddfe.entry.js +5 -0
  377. package/dist/viewer/p-dcb6ddfe.entry.js.map +1 -0
  378. package/dist/viewer/p-e98db875.entry.js.map +1 -1
  379. package/dist/viewer/{p-c2454523.entry.js → p-ea45c3e9.entry.js} +2 -2
  380. package/dist/viewer/p-ebd9dd99.entry.js +5 -0
  381. package/dist/viewer/p-ebd9dd99.entry.js.map +1 -0
  382. package/dist/viewer/{p-a893a299.entry.js → p-ecd594f2.entry.js} +2 -2
  383. package/dist/viewer/{p-03a531d9.entry.js → p-ef9437ca.entry.js} +2 -2
  384. package/dist/viewer/p-fec5a15d.entry.js +5 -0
  385. package/dist/viewer/p-fec5a15d.entry.js.map +1 -0
  386. package/dist/viewer/p-ipyYHvea.js.map +1 -1
  387. package/dist/viewer/viewer.esm.js +1 -1
  388. package/package.json +10 -10
  389. package/readme.md +14 -8
  390. package/dist/cjs/bundle-07I6_WqC.js.map +0 -1
  391. package/dist/cjs/multiElementInteractionHandler-Bqpg2wVT.js.map +0 -1
  392. package/dist/cjs/queries-GhYmoomu.js.map +0 -1
  393. package/dist/cjs/streamAttributes-CJOD7AxG.js.map +0 -1
  394. package/dist/cjs/utils-BsXO-wLi.js.map +0 -1
  395. package/dist/components/p-B4sO9HdX.js +0 -5
  396. package/dist/components/p-B4sO9HdX.js.map +0 -1
  397. package/dist/components/p-C--Voxln.js +0 -5
  398. package/dist/components/p-C--Voxln.js.map +0 -1
  399. package/dist/components/p-CZZALKHT.js +0 -5
  400. package/dist/components/p-CZZALKHT.js.map +0 -1
  401. package/dist/components/p-Cn0vKqIN.js +0 -5
  402. package/dist/components/p-Cn0vKqIN.js.map +0 -1
  403. package/dist/components/p-DH341c7b.js +0 -5
  404. package/dist/components/p-DH341c7b.js.map +0 -1
  405. package/dist/components/p-DjrtwKcK.js +0 -5
  406. package/dist/components/p-DjrtwKcK.js.map +0 -1
  407. package/dist/components/p-Dmc49hX3.js +0 -5
  408. package/dist/components/p-Dmc49hX3.js.map +0 -1
  409. package/dist/components/p-QhlhRt6X.js.map +0 -1
  410. package/dist/components/p-Y8W_BXUk.js +0 -5
  411. package/dist/components/p-Y8W_BXUk.js.map +0 -1
  412. package/dist/components/p-garvKln8.js.map +0 -1
  413. package/dist/components/p-taOlygmc.js.map +0 -1
  414. package/dist/esm/bundle-CZZALKHT.js.map +0 -1
  415. package/dist/esm/multiElementInteractionHandler-C45E8VzE.js.map +0 -1
  416. package/dist/esm/queries-DWjy-LsV.js.map +0 -1
  417. package/dist/esm/streamAttributes-CTs61PCl.js.map +0 -1
  418. package/dist/esm/utils-DJ5FvINs.js.map +0 -1
  419. package/dist/viewer/p-02384d83.entry.js +0 -5
  420. package/dist/viewer/p-02384d83.entry.js.map +0 -1
  421. package/dist/viewer/p-12a673f0.entry.js.map +0 -1
  422. package/dist/viewer/p-49578ec9.entry.js +0 -5
  423. package/dist/viewer/p-49578ec9.entry.js.map +0 -1
  424. package/dist/viewer/p-4c223366.entry.js +0 -5
  425. package/dist/viewer/p-4c223366.entry.js.map +0 -1
  426. package/dist/viewer/p-7m7Vr5V7.js.map +0 -1
  427. package/dist/viewer/p-8774425b.entry.js +0 -5
  428. package/dist/viewer/p-8774425b.entry.js.map +0 -1
  429. package/dist/viewer/p-9c02567d.entry.js +0 -5
  430. package/dist/viewer/p-9c02567d.entry.js.map +0 -1
  431. package/dist/viewer/p-BDy3SLKk.js +0 -5
  432. package/dist/viewer/p-CZZALKHT.js +0 -5
  433. package/dist/viewer/p-CZZALKHT.js.map +0 -1
  434. package/dist/viewer/p-Cju1inFh.js.map +0 -1
  435. package/dist/viewer/p-Cr2EnhS-.js +0 -5
  436. package/dist/viewer/p-Cr2EnhS-.js.map +0 -1
  437. package/dist/viewer/p-UQXG8bCI.js.map +0 -1
  438. package/dist/viewer/p-c2c3579f.entry.js +0 -5
  439. package/dist/viewer/p-d5542b6a.entry.js +0 -5
  440. package/dist/viewer/p-d5542b6a.entry.js.map +0 -1
  441. package/dist/viewer/p-e3981cf8.entry.js.map +0 -1
  442. /package/dist/components/{p-CZgX-9yo.js.map → p-5bk1mHRt.js.map} +0 -0
  443. /package/dist/components/{p-DRGCkSEK.js.map → p-B8530k7R.js.map} +0 -0
  444. /package/dist/components/{p-BKQMbekH.js.map → p-BCuMPvZO.js.map} +0 -0
  445. /package/dist/components/{p-C02XtMl4.js.map → p-BHyxBmg6.js.map} +0 -0
  446. /package/dist/components/{p-O1_Yvjd6.js.map → p-BT9d9jRt.js.map} +0 -0
  447. /package/dist/components/{p-oDn1DcWj.js.map → p-BZDn1Vuv.js.map} +0 -0
  448. /package/dist/components/{p-VEJB73Ei.js.map → p-Bdf4AcJ2.js.map} +0 -0
  449. /package/dist/components/{p-CMdP8O-G.js.map → p-Bx42CNGV.js.map} +0 -0
  450. /package/dist/components/{p-CelQDFR0.js.map → p-C12jtCFb.js.map} +0 -0
  451. /package/dist/components/{p-Dzs4u_ZY.js.map → p-CABws4i9.js.map} +0 -0
  452. /package/dist/components/{p-BqeEZXPn.js.map → p-CPROw2BU.js.map} +0 -0
  453. /package/dist/components/{p-DnVcQAR9.js.map → p-CTi-0-dI.js.map} +0 -0
  454. /package/dist/components/{p-EG7pMA2M.js.map → p-CeZe0Qql.js.map} +0 -0
  455. /package/dist/components/{p-Due5EmBt.js.map → p-Clyxptbp.js.map} +0 -0
  456. /package/dist/components/{p-MnZadXO8.js.map → p-D_h07qsA.js.map} +0 -0
  457. /package/dist/components/{p-DCTZZ5Rd.js.map → p-DjQ6RXWP.js.map} +0 -0
  458. /package/dist/components/{p-CxzyM08j.js.map → p-DyL2wWm6.js.map} +0 -0
  459. /package/dist/components/{p-avWSFTeP.js.map → p-JvS9LLoO.js.map} +0 -0
  460. /package/dist/components/{p-CfTvpqud.js.map → p-KidjtXKE.js.map} +0 -0
  461. /package/dist/components/{p-BC777sCK.js.map → p-UJR-ixsy.js.map} +0 -0
  462. /package/dist/components/{p-mpsCUvSn.js.map → p-_qi2VkC2.js.map} +0 -0
  463. /package/dist/components/{p-CNprIkKd.js.map → p-rDr0x5Z7.js.map} +0 -0
  464. /package/dist/viewer/{p-7b4eec65.entry.js.map → p-293d8f3f.entry.js.map} +0 -0
  465. /package/dist/viewer/{p-510fd2e1.entry.js.map → p-2d2fa147.entry.js.map} +0 -0
  466. /package/dist/viewer/{p-a108a305.entry.js.map → p-2faddbf8.entry.js.map} +0 -0
  467. /package/dist/viewer/{p-aa0359e0.entry.js.map → p-3c5dd716.entry.js.map} +0 -0
  468. /package/dist/viewer/{p-fe434552.entry.js.map → p-45cc095e.entry.js.map} +0 -0
  469. /package/dist/viewer/{p-71c03352.entry.js.map → p-53f6cc59.entry.js.map} +0 -0
  470. /package/dist/viewer/{p-56e39cff.entry.js.map → p-83683307.entry.js.map} +0 -0
  471. /package/dist/viewer/{p-91fca24b.entry.js.map → p-93311f46.entry.js.map} +0 -0
  472. /package/dist/viewer/{p-9312a936.entry.js.map → p-a94b626c.entry.js.map} +0 -0
  473. /package/dist/viewer/{p-82ed4346.entry.js.map → p-ced98004.entry.js.map} +0 -0
  474. /package/dist/viewer/{p-c2454523.entry.js.map → p-ea45c3e9.entry.js.map} +0 -0
  475. /package/dist/viewer/{p-a893a299.entry.js.map → p-ecd594f2.entry.js.map} +0 -0
  476. /package/dist/viewer/{p-03a531d9.entry.js.map → p-ef9437ca.entry.js.map} +0 -0
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
+ */
4
+ import{h as e,F as i,t,p as n,H as o}from"./p-Bb32XUUS.js";import{p as s,m as r,v as a}from"./p-2UsvOTHJ.js";import"./p-DMG1CW3A.js";import"./p-DxMDDbmh.js";import"./p-BCuMPvZO.js";import"./p-FRKLa468.js";import"./p-ux1ckSDN.js";import"./p-5kcpg4MZ.js";import"./p-BjvjKoy7.js";import"./p-B8530k7R.js";import{V as l}from"./p-CeZe0Qql.js";import{d,P as c,t as p}from"./p-BgzjmANj.js";import{g as h,i as v,a as u,P as m}from"./p-D1akPoVm.js";import{c as b}from"./p-C6gMOKYg.js";import{d as f}from"./p-BHyxBmg6.js";import{d as w}from"./p-Bkm6H5uq.js";import{d as x}from"./p-BFEV_v80.js";const y=({pin:t,selected:n,occluded:o,detached:s})=>{const{primaryColor:r}=h(t);return e(i,null,u(t)&&e("div",{id:"pin-anchor",class:b("pin-anchor",{selected:n,"pin-occluded":o,"pin-detached":s}),style:{background:r}}),v(t)&&e("vertex-viewer-icon",{name:"pin-fill",size:"lg",class:b("pin",{"pin-selected":n,"pin-occluded":o,"pin-detached":s}),style:{color:r}}))};function g(e,i,t){const n={x:e.x+t.width/2,y:e.y};const o={x:e.x+t.width/2,y:e.y+t.height};const r={x:e.x+t.width,y:e.y+t.height/2};const a={x:e.x,y:e.y+t.height/2};const l=[n,o,a,r];const d=l.map((e=>s.distance(e,i)));const c=d.indexOf(Math.min(...d));return l[c]}const k=()=>`:host{--viewer-annotations-pin-primary-color:var(--blue-700);--viewer-annotations-pin-accent-color:var(--blue-200);--viewer-annotations-pin-dot-color:var( --viewer-annotations-pin-primary-color );--viewer-annotations-pin-color:var(--viewer-annotations-pin-primary-color);--viewer-annotations-pin-font-size:0.75rem;--viewer-annotations-pin-selected-stroke:var(--white);--viewer-annotations-pin-selected-border:2px solid var(--white);--viewer-annotations-pin-label-border:2px solid var(--black);--viewer-annotations-pin-selected-stroke:var(--white);font-size:var(--viewer-annotations-pin-font-size);position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;pointer-events:none}.pin-anchor{position:absolute;border-radius:50%;transform:translate(-50%, -50%);display:block;width:9px;height:9px;box-sizing:border-box;border:var(--viewer-annotations-pin-label-border);background:var(--viewer-annotations-pin-dot-color);pointer-events:auto;cursor:pointer}.selected{width:13px;height:13px;border:var(--viewer-annotations-pin-selected-border)}.pin{color:var(--viewer-annotations-pin-color);cursor:pointer;transition:opacity 0.3s ease-in;transform:translate(0px, -12px)}.pin-selected{stroke-width:1;stroke:var(--viewer-annotations-pin-selected-stroke)}.pin-occluded{opacity:0.3;transition:opacity 0.3s ease-in}.pin-detached{visibility:hidden}`;const P=n(class t extends o{constructor(e){super();if(e!==false){this.__registerHost()}this.matrix=r.makeIdentity();this.projectionViewMatrix=r.makeIdentity();this.pinModel=new m;this.selected=false;this.occluded=false;this.detached=false;this.invalidateStateCounter=0;this.invalidateState=()=>{this.invalidateStateCounter=this.invalidateStateCounter+1}}componentWillLoad(){if(this.pinController==null){this.pinController=new c(this.pinModel)}}componentDidLoad(){var e;this.setLabelObserver();if(this.selected){(e=this.labelEl)===null||e===void 0?void 0:e.setFocus()}}async handleOcclusionStateChanged(e){this.occluded=e.detail}async handleDetachedStateChanged(e){this.detached=e.detail}disconnectedCallback(){var e,i;(e=this.labelEl)===null||e===void 0?void 0:e.removeEventListener("labelChanged",this.invalidateState);(i=this.resizeObserver)===null||i===void 0?void 0:i.disconnect()}render(){var t;if(this.pin==null){throw new Error("Unable to draw pin")}const{pinPoint:n,labelPoint:o}=this.computePinPoints(this.pin);return e(i,{key:"84a22b24189e46d618c7266874d6584feb4e0b93"},e("vertex-viewer-dom-element",{key:"d4b9cf5194049099b2a7a2c1ef07fc3757e91cdc","data-testid":`drawn-pin-${this.pin.id}`,position:this.pin.worldPosition,onPointerDown:async()=>{var e;await((e=this.labelEl)===null||e===void 0?void 0:e.submit());this.selectPin();this.handleAnchorPointerDown()},detachedOff:false},e(y,{key:"7312b90e959e7d61de89c80ff032c29c5d32d888",pin:this.pin,selected:this.selected,occluded:this.occluded,detached:this.detached})),u(this.pin)&&!this.occluded&&!this.detached&&e(i,{key:"975ae561cc3eb0bf6d259d99c10c48ab0bb2661a"},e("vertex-viewer-pin-label-line",{key:"cbb32a2788a89f53c5ea2e2e6abe83b0b49c0fd4",id:`pin-label-line-${(t=this.pin)===null||t===void 0?void 0:t.id}`,pinPoint:n,pin:this.pin,labelPoint:o,onPointerDown:()=>this.selectPin()}),e("vertex-viewer-pin-label",{key:"296958cff46f102cef5621c2512b71f0d4d97ff9",pin:this.pin,ref:e=>this.labelEl=e,elementBounds:this.elementBounds,pinController:this.pinController,onPointerDown:()=>this.selectPin()})))}setLabelObserver(){if(this.labelEl!=null){this.labelEl.addEventListener("labelChanged",this.invalidateState);this.resizeObserver=new ResizeObserver((()=>this.invalidateState()));this.resizeObserver.observe(this.labelEl)}}computePinPoints(e){if(this.elementBounds!=null&&this.pin!=null){return u(this.pin)&&this.pin.label.point!=null?this.computeTextPinPoints(this.pin,this.elementBounds):this.computeDefaultPinPoints(this.pin,this.elementBounds)}return{pinPoint:e.worldPosition}}computeDefaultPinPoints(e,i){return{pinPoint:this.getFromWorldPosition(e.worldPosition,this.projectionViewMatrix,i)}}computeTextPinPoints(e,i){var t,n,o,s;const{pinPoint:r}=this.computeDefaultPinPoints(e,i);const a=p(e.label.point,i);const l=((n=(t=this.labelEl)===null||t===void 0?void 0:t.firstElementChild)===null||n===void 0?void 0:n.clientWidth)||0;const d=((s=(o=this.labelEl)===null||o===void 0?void 0:o.firstElementChild)===null||s===void 0?void 0:s.clientHeight)||0;return{pinPoint:r,labelPoint:g(a,r,{width:l,height:d})}}handleAnchorPointerDown(){var e,i;if(this.elementBounds!=null&&((e=this.pinController)===null||e===void 0?void 0:e.getToolMode())==="edit"&&this.pin!=null){(i=this.pinController)===null||i===void 0?void 0:i.setDraggable({id:this.pin.id})}}selectPin(){var e,i;(e=this.pinController)===null||e===void 0?void 0:e.setSelectedPinId((i=this.pin)===null||i===void 0?void 0:i.id)}getFromWorldPosition(e,i,t){const n=a.multiplyByTransformMatrixColumnMajor(e,i);return l.fromDimensions(t).transformVectorToViewport(n)}static get style(){return k()}},[0,"vertex-viewer-pin-group",{pin:[16],matrix:[1040],projectionViewMatrix:[16],elementBounds:[1040],pinModel:[16],pinController:[1040],selected:[4],occluded:[1540],detached:[1540],invalidateStateCounter:[32]},[[0,"occlusionStateChanged","handleOcclusionStateChanged"],[0,"detachedStateChanged","handleDetachedStateChanged"]]]);function j(){if(typeof customElements==="undefined"){return}const e=["vertex-viewer-pin-group","vertex-viewer-dom-element","vertex-viewer-icon","vertex-viewer-pin-label","vertex-viewer-pin-label-line"];e.forEach((e=>{switch(e){case"vertex-viewer-pin-group":if(!customElements.get(t(e))){customElements.define(t(e),P)}break;case"vertex-viewer-dom-element":if(!customElements.get(t(e))){f()}break;case"vertex-viewer-icon":if(!customElements.get(t(e))){w()}break;case"vertex-viewer-pin-label":if(!customElements.get(t(e))){d()}break;case"vertex-viewer-pin-label-line":if(!customElements.get(t(e))){x()}break}}))}j();export{P as V,j as d};
5
+ //# sourceMappingURL=p-Bwtyddca.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PinRenderer","pin","selected","occluded","detached","primaryColor","getPinColors","h","Fragment","isTextPin","id","class","classNames","style","background","isIconPin","name","size","color","getClosestCenterToPoint","boxPoint","pointToMeasure","dimensions","topPoint","x","width","y","bottomPoint","height","rightPoint","leftPoint","candidates","distances","map","candidate","Point","distance","candidateIndex","indexOf","Math","min","viewerPinGroupCss","ViewerPinGroup","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","matrix","Matrix4","makeIdentity","projectionViewMatrix","pinModel","PinModel","invalidateStateCounter","invalidateState","componentWillLoad","pinController","PinController","componentDidLoad","setLabelObserver","_a","labelEl","setFocus","handleOcclusionStateChanged","event","detail","handleDetachedStateChanged","disconnectedCallback","removeEventListener","_b","resizeObserver","disconnect","render","Error","pinPoint","labelPoint","computePinPoints","key","position","worldPosition","onPointerDown","async","submit","selectPin","handleAnchorPointerDown","detachedOff","ref","el","elementBounds","addEventListener","ResizeObserver","observe","label","point","computeTextPinPoints","computeDefaultPinPoints","getFromWorldPosition","screenPosition","translatePointToScreen","labelWidth","firstElementChild","clientWidth","labelHeight","_d","_c","clientHeight","getToolMode","setDraggable","setSelectedPinId","pt","ndcPt","Vector3","multiplyByTransformMatrixColumnMajor","Viewport","fromDimensions","transformVectorToViewport"],"sources":["src/components/viewer-pin-group/pin-renderer.tsx","src/components/viewer-pin-group/utils.ts","src/components/viewer-pin-group/viewer-pin-group.css?tag=vertex-viewer-pin-group","src/components/viewer-pin-group/viewer-pin-group.tsx"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { Fragment, FunctionalComponent, h } from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { getPinColors, isIconPin, isTextPin, Pin } from '../../lib/pins/model';\n\ninterface PinRendererProps {\n pin?: Pin;\n selected: boolean;\n occluded: boolean;\n detached: boolean;\n}\n\nexport const PinRenderer: FunctionalComponent<PinRendererProps> = ({\n pin,\n selected,\n occluded,\n detached,\n}) => {\n const { primaryColor } = getPinColors(pin);\n\n return (\n <Fragment>\n {isTextPin(pin) && (\n <div\n id=\"pin-anchor\"\n class={classNames('pin-anchor', {\n selected: selected,\n 'pin-occluded': occluded,\n 'pin-detached': detached,\n })}\n style={{\n background: primaryColor,\n }}\n ></div>\n )}\n\n {isIconPin(pin) && (\n <vertex-viewer-icon\n name=\"pin-fill\"\n size=\"lg\"\n class={classNames('pin', {\n 'pin-selected': selected,\n 'pin-occluded': occluded,\n 'pin-detached': detached,\n })}\n style={{\n color: primaryColor,\n }}\n />\n )}\n </Fragment>\n );\n};\n","import { Dimensions, Point } from '@vertexvis/geometry';\n\nexport function getClosestCenterToPoint(\n boxPoint: Point.Point,\n pointToMeasure: Point.Point,\n dimensions: Dimensions.Dimensions,\n): Point.Point {\n const topPoint = {\n x: boxPoint.x + dimensions.width / 2,\n y: boxPoint.y,\n };\n\n const bottomPoint = {\n x: boxPoint.x + dimensions.width / 2,\n y: boxPoint.y + dimensions.height,\n };\n\n const rightPoint = {\n x: boxPoint.x + dimensions.width,\n y: boxPoint.y + dimensions.height / 2,\n };\n\n const leftPoint = {\n x: boxPoint.x,\n y: boxPoint.y + dimensions.height / 2,\n };\n\n const candidates = [topPoint, bottomPoint, leftPoint, rightPoint];\n\n const distances = candidates.map((candidate) =>\n Point.distance(candidate, pointToMeasure),\n );\n\n const candidateIndex = distances.indexOf(Math.min(...distances));\n return candidates[candidateIndex];\n}\n",":host {\n /**\n * @prop --viewer-annotations-pin-primary-color: A CSS color that\n * specifies the primary color for the pins. This value gets used for the dot color \n * and borders\n */\n --viewer-annotations-pin-primary-color: var(--blue-700);\n\n /**\n * @prop --viewer-annotations-pin-accent-color: A CSS color that\n * specifies the accent color for the pins. This value gets used for background colors\n * \n */\n\n --viewer-annotations-pin-accent-color: var(--blue-200);\n /**\n * @prop viewer-annotations-pin-dot-color: A CSS color that\n * specifies the color of the anchor dot\n */\n --viewer-annotations-pin-dot-color: var(\n --viewer-annotations-pin-primary-color\n );\n\n /**\n * @prop --viewer-annotations-pin-color: A CSS color that\n * specifies the color of the pin\n */\n --viewer-annotations-pin-color: var(--viewer-annotations-pin-primary-color);\n\n /**\n * @prop --viewer-annotations-pin-font-size: A CSS property to specify\n the font size of the pin\n */\n --viewer-annotations-pin-font-size: 0.75rem;\n\n /**\n * @prop --viewer-annotations-pin-selected-stroke: A CSS color that\n * specifies the stroke color of a selected pin\n */\n --viewer-annotations-pin-selected-stroke: var(--white);\n\n /**\n * @prop --viewer-annotations-pin-selected-border: A CSS color that\n * specifies the border of a selected pin\n */\n --viewer-annotations-pin-selected-border: 2px solid var(--white);\n\n /**\n * @prop --viewer-annotations-pin-label-border: A CSS color that\n * specifies the border of a text pin anchor\n */\n --viewer-annotations-pin-label-border: 2px solid var(--black);\n\n /**\n * @prop --viewer-annotations-pin-selected-border: A CSS color that\n * specifies the stroke of a selected default pin\n */\n --viewer-annotations-pin-selected-stroke: var(--white);\n\n font-size: var(--viewer-annotations-pin-font-size);\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n overflow: hidden;\n pointer-events: none;\n}\n\n.pin-anchor {\n position: absolute;\n border-radius: 50%;\n transform: translate(-50%, -50%);\n display: block;\n width: 9px;\n height: 9px;\n box-sizing: border-box;\n border: var(--viewer-annotations-pin-label-border);\n background: var(--viewer-annotations-pin-dot-color);\n pointer-events: auto;\n cursor: pointer;\n}\n\n.selected {\n width: 13px;\n height: 13px;\n border: var(--viewer-annotations-pin-selected-border);\n}\n\n.pin {\n color: var(--viewer-annotations-pin-color);\n cursor: pointer;\n transition: opacity 0.3s ease-in;\n\n /**\n * Place bottom point of the pin at the location instead of the middle of the pin\n */\n transform: translate(0px, -12px);\n}\n\n.pin-selected {\n stroke-width: 1;\n stroke: var(--viewer-annotations-pin-selected-stroke);\n}\n\n.pin-occluded {\n opacity: 0.3;\n transition: opacity 0.3s ease-in;\n}\n\n.pin-detached {\n visibility: hidden;\n}\n","import {\n Component,\n Fragment,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n h,\n JSX,\n Listen,\n Prop,\n State,\n} from '@stencil/core';\nimport { Dimensions, Matrix4, Point, Vector3 } from '@vertexvis/geometry';\n\nimport { Viewport } from '../..';\nimport { PinController } from '../../lib/pins/controller';\nimport { isTextPin, Pin, TextPin } from '../../lib/pins/model';\nimport { PinModel } from '../../lib/pins/model';\nimport { translatePointToScreen } from '../viewer-pin-tool/utils';\nimport { PinRenderer } from './pin-renderer';\nimport { getClosestCenterToPoint } from './utils';\n\ninterface ComputedPoints {\n pinPoint: Point.Point;\n labelPoint?: Point.Point;\n}\n\n@Component({\n tag: 'vertex-viewer-pin-group',\n styleUrl: 'viewer-pin-group.css',\n shadow: false,\n})\nexport class ViewerPinGroup {\n /**\n * The pin to draw for the group\n */\n @Prop()\n public pin?: Pin;\n\n /**\n * The local matrix of this element.\n */\n @Prop({ mutable: true, attribute: null })\n public matrix: Matrix4.Matrix4 = Matrix4.makeIdentity();\n\n /**\n * Projection view matrix used for computing the position of the pin line\n */\n @Prop()\n public projectionViewMatrix: Matrix4.Matrix4 = Matrix4.makeIdentity();\n\n /**\n * The dimensions of the canvas for the pins\n */\n @Prop({ mutable: true })\n public elementBounds?: DOMRect;\n\n /**\n * The model that contains the entities and outcomes from performing pin operations\n */\n @Prop()\n public pinModel: PinModel = new PinModel();\n\n /**\n * The controller that drives behavior for pin operations\n */\n @Prop({ mutable: true })\n public pinController?: PinController;\n\n /**\n * Whether the pin is \"selected\"\n */\n @Prop()\n public selected = false;\n\n /**\n * @internal\n * Whether the pin is occluded\n */\n @Prop({ mutable: true, reflect: true })\n public occluded = false;\n\n /**\n * @internal\n * Whether the pin is detached\n */\n @Prop({ mutable: true, reflect: true })\n public detached = false;\n\n @State()\n private invalidateStateCounter = 0;\n\n private labelEl: HTMLVertexViewerPinLabelElement | undefined;\n\n private resizeObserver?: ResizeObserver;\n\n protected componentWillLoad(): void {\n if (this.pinController == null) {\n this.pinController = new PinController(this.pinModel);\n }\n }\n\n protected componentDidLoad(): void {\n this.setLabelObserver();\n\n if (this.selected) {\n this.labelEl?.setFocus();\n }\n }\n\n /**\n * @ignore\n */\n @Listen('occlusionStateChanged')\n protected async handleOcclusionStateChanged(\n event: CustomEvent<boolean>,\n ): Promise<void> {\n this.occluded = event.detail;\n }\n\n /**\n * @ignore\n */\n @Listen('detachedStateChanged')\n protected async handleDetachedStateChanged(\n event: CustomEvent<boolean>,\n ): Promise<void> {\n this.detached = event.detail;\n }\n\n protected disconnectedCallback(): void {\n this.labelEl?.removeEventListener('labelChanged', this.invalidateState);\n this.resizeObserver?.disconnect();\n }\n\n protected render(): JSX.Element {\n if (this.pin == null) {\n throw new Error('Unable to draw pin');\n }\n\n const { pinPoint, labelPoint } = this.computePinPoints(this.pin);\n\n return (\n <Fragment>\n <vertex-viewer-dom-element\n data-testid={`drawn-pin-${this.pin.id}`}\n position={this.pin.worldPosition}\n onPointerDown={async () => {\n await this.labelEl?.submit();\n this.selectPin();\n this.handleAnchorPointerDown();\n }}\n detachedOff={false}\n >\n <PinRenderer\n pin={this.pin}\n selected={this.selected}\n occluded={this.occluded}\n detached={this.detached}\n />\n </vertex-viewer-dom-element>\n\n {isTextPin(this.pin) && !this.occluded && !this.detached && (\n <Fragment>\n <vertex-viewer-pin-label-line\n id={`pin-label-line-${this.pin?.id}`}\n pinPoint={pinPoint}\n pin={this.pin}\n labelPoint={labelPoint}\n onPointerDown={() => this.selectPin()}\n ></vertex-viewer-pin-label-line>\n\n <vertex-viewer-pin-label\n pin={this.pin}\n ref={(el) => (this.labelEl = el)}\n elementBounds={this.elementBounds}\n pinController={this.pinController}\n onPointerDown={() => this.selectPin()}\n ></vertex-viewer-pin-label>\n </Fragment>\n )}\n </Fragment>\n );\n }\n\n private invalidateState = (): void => {\n this.invalidateStateCounter = this.invalidateStateCounter + 1;\n };\n\n private setLabelObserver(): void {\n if (this.labelEl != null) {\n this.labelEl.addEventListener('labelChanged', this.invalidateState);\n\n this.resizeObserver = new ResizeObserver(() => this.invalidateState());\n this.resizeObserver.observe(this.labelEl);\n }\n }\n\n private computePinPoints(pin: Pin): ComputedPoints {\n if (this.elementBounds != null && this.pin != null) {\n return isTextPin(this.pin) && this.pin.label.point != null\n ? this.computeTextPinPoints(this.pin, this.elementBounds)\n : this.computeDefaultPinPoints(this.pin, this.elementBounds);\n }\n\n return { pinPoint: pin.worldPosition };\n }\n\n private computeDefaultPinPoints(\n pin: Pin,\n elementBounds: DOMRect,\n ): ComputedPoints {\n return {\n pinPoint: this.getFromWorldPosition(\n pin.worldPosition,\n this.projectionViewMatrix,\n elementBounds,\n ),\n };\n }\n\n private computeTextPinPoints(\n pin: TextPin,\n elementBounds: DOMRect,\n ): ComputedPoints {\n const { pinPoint } = this.computeDefaultPinPoints(pin, elementBounds);\n\n const screenPosition = translatePointToScreen(\n pin.label.point,\n elementBounds,\n );\n\n const labelWidth = this.labelEl?.firstElementChild?.clientWidth || 0;\n const labelHeight = this.labelEl?.firstElementChild?.clientHeight || 0;\n\n return {\n pinPoint,\n labelPoint: getClosestCenterToPoint(screenPosition, pinPoint, {\n width: labelWidth,\n height: labelHeight,\n }),\n };\n }\n\n private handleAnchorPointerDown(): void {\n if (\n this.elementBounds != null &&\n this.pinController?.getToolMode() === 'edit' &&\n this.pin != null\n ) {\n this.pinController?.setDraggable({ id: this.pin.id });\n }\n }\n\n private selectPin(): void {\n this.pinController?.setSelectedPinId(this.pin?.id);\n }\n\n private getFromWorldPosition(\n pt: Vector3.Vector3,\n projectionViewMatrix: Matrix4.Matrix4,\n dimensions: Dimensions.Dimensions,\n ): Point.Point {\n const ndcPt = Vector3.multiplyByTransformMatrixColumnMajor(\n pt,\n projectionViewMatrix,\n );\n return Viewport.fromDimensions(dimensions).transformVectorToViewport(ndcPt);\n }\n}\n"],"mappings":";;;ukBAaO,MAAMA,EAAqD,EAChEC,MACAC,WACAC,WACAC,eAEA,MAAMC,aAAEA,GAAiBC,EAAaL,GAEtC,OACEM,EAACC,EAAQ,KACNC,EAAUR,IACTM,EAAA,OACEG,GAAG,aACHC,MAAOC,EAAW,aAAc,CAC9BV,SAAUA,EACV,eAAgBC,EAChB,eAAgBC,IAElBS,MAAO,CACLC,WAAYT,KAKjBU,EAAUd,IACTM,EAAA,sBACES,KAAK,WACLC,KAAK,KACLN,MAAOC,EAAW,MAAO,CACvB,eAAgBV,EAChB,eAAgBC,EAChB,eAAgBC,IAElBS,MAAO,CACLK,MAAOb,KAIJ,E,SCjDCc,EACdC,EACAC,EACAC,GAEA,MAAMC,EAAW,CACfC,EAAGJ,EAASI,EAAIF,EAAWG,MAAQ,EACnCC,EAAGN,EAASM,GAGd,MAAMC,EAAc,CAClBH,EAAGJ,EAASI,EAAIF,EAAWG,MAAQ,EACnCC,EAAGN,EAASM,EAAIJ,EAAWM,QAG7B,MAAMC,EAAa,CACjBL,EAAGJ,EAASI,EAAIF,EAAWG,MAC3BC,EAAGN,EAASM,EAAIJ,EAAWM,OAAS,GAGtC,MAAME,EAAY,CAChBN,EAAGJ,EAASI,EACZE,EAAGN,EAASM,EAAIJ,EAAWM,OAAS,GAGtC,MAAMG,EAAa,CAACR,EAAUI,EAAaG,EAAWD,GAEtD,MAAMG,EAAYD,EAAWE,KAAKC,GAChCC,EAAMC,SAASF,EAAWb,KAG5B,MAAMgB,EAAiBL,EAAUM,QAAQC,KAAKC,OAAOR,IACrD,OAAOD,EAAWM,EACpB,CCnCA,MAAMI,EAAoB,IAAM,m0C,MC8BnBC,EAAcC,EAAA,MAAAD,UAAAE,EAL3B,WAAAC,CAAAC,G,4CAgBSC,KAAAC,OAA0BC,EAAQC,eAMlCH,KAAAI,qBAAwCF,EAAQC,eAYhDH,KAAAK,SAAqB,IAAIC,EAYzBN,KAAA7C,SAAW,MAOX6C,KAAA5C,SAAW,MAOX4C,KAAA3C,SAAW,MAGV2C,KAAAO,uBAAyB,EA+FzBP,KAAAQ,gBAAkB,KACxBR,KAAKO,uBAAyBP,KAAKO,uBAAyB,CAAC,CAmFhE,CA7KW,iBAAAE,GACR,GAAIT,KAAKU,eAAiB,KAAM,CAC9BV,KAAKU,cAAgB,IAAIC,EAAcX,KAAKK,S,EAItC,gBAAAO,G,MACRZ,KAAKa,mBAEL,GAAIb,KAAK7C,SAAU,EACjB2D,EAAAd,KAAKe,WAAO,MAAAD,SAAA,SAAAA,EAAEE,U,EAQR,iCAAMC,CACdC,GAEAlB,KAAK5C,SAAW8D,EAAMC,M,CAOd,gCAAMC,CACdF,GAEAlB,KAAK3C,SAAW6D,EAAMC,M,CAGd,oBAAAE,G,SACRP,EAAAd,KAAKe,WAAO,MAAAD,SAAA,SAAAA,EAAEQ,oBAAoB,eAAgBtB,KAAKQ,kBACvDe,EAAAvB,KAAKwB,kBAAc,MAAAD,SAAA,SAAAA,EAAEE,Y,CAGb,MAAAC,G,MACR,GAAI1B,KAAK9C,KAAO,KAAM,CACpB,MAAM,IAAIyE,MAAM,qB,CAGlB,MAAMC,SAAEA,EAAQC,WAAEA,GAAe7B,KAAK8B,iBAAiB9B,KAAK9C,KAE5D,OACEM,EAACC,EAAQ,CAAAsE,IAAA,4CACPvE,EAAA,6BAAAuE,IAAA,yDACe,aAAa/B,KAAK9C,IAAIS,KACnCqE,SAAUhC,KAAK9C,IAAI+E,cACnBC,cAAeC,U,aACPrB,EAAAd,KAAKe,WAAO,MAAAD,SAAA,SAAAA,EAAEsB,UACpBpC,KAAKqC,YACLrC,KAAKsC,yBAAyB,EAEhCC,YAAa,OAEb/E,EAACP,EAAW,CAAA8E,IAAA,2CACV7E,IAAK8C,KAAK9C,IACVC,SAAU6C,KAAK7C,SACfC,SAAU4C,KAAK5C,SACfC,SAAU2C,KAAK3C,YAIlBK,EAAUsC,KAAK9C,OAAS8C,KAAK5C,WAAa4C,KAAK3C,UAC9CG,EAACC,EAAQ,CAAAsE,IAAA,4CACPvE,EAAA,gCAAAuE,IAAA,2CACEpE,GAAI,mBAAkBmD,EAAAd,KAAK9C,OAAG,MAAA4D,SAAA,SAAAA,EAAEnD,KAChCiE,SAAUA,EACV1E,IAAK8C,KAAK9C,IACV2E,WAAYA,EACZK,cAAe,IAAMlC,KAAKqC,cAG5B7E,EAAA,2BAAAuE,IAAA,2CACE7E,IAAK8C,KAAK9C,IACVsF,IAAMC,GAAQzC,KAAKe,QAAU0B,EAC7BC,cAAe1C,KAAK0C,cACpBhC,cAAeV,KAAKU,cACpBwB,cAAe,IAAMlC,KAAKqC,e,CAY9B,gBAAAxB,GACN,GAAIb,KAAKe,SAAW,KAAM,CACxBf,KAAKe,QAAQ4B,iBAAiB,eAAgB3C,KAAKQ,iBAEnDR,KAAKwB,eAAiB,IAAIoB,gBAAe,IAAM5C,KAAKQ,oBACpDR,KAAKwB,eAAeqB,QAAQ7C,KAAKe,Q,EAI7B,gBAAAe,CAAiB5E,GACvB,GAAI8C,KAAK0C,eAAiB,MAAQ1C,KAAK9C,KAAO,KAAM,CAClD,OAAOQ,EAAUsC,KAAK9C,MAAQ8C,KAAK9C,IAAI4F,MAAMC,OAAS,KAClD/C,KAAKgD,qBAAqBhD,KAAK9C,IAAK8C,KAAK0C,eACzC1C,KAAKiD,wBAAwBjD,KAAK9C,IAAK8C,KAAK0C,c,CAGlD,MAAO,CAAEd,SAAU1E,EAAI+E,c,CAGjB,uBAAAgB,CACN/F,EACAwF,GAEA,MAAO,CACLd,SAAU5B,KAAKkD,qBACbhG,EAAI+E,cACJjC,KAAKI,qBACLsC,G,CAKE,oBAAAM,CACN9F,EACAwF,G,YAEA,MAAMd,SAAEA,GAAa5B,KAAKiD,wBAAwB/F,EAAKwF,GAEvD,MAAMS,EAAiBC,EACrBlG,EAAI4F,MAAMC,MACVL,GAGF,MAAMW,IAAa9B,GAAAT,EAAAd,KAAKe,WAAO,MAAAD,SAAA,SAAAA,EAAEwC,qBAAiB,MAAA/B,SAAA,SAAAA,EAAEgC,cAAe,EACnE,MAAMC,IAAcC,GAAAC,EAAA1D,KAAKe,WAAO,MAAA2C,SAAA,SAAAA,EAAEJ,qBAAiB,MAAAG,SAAA,SAAAA,EAAEE,eAAgB,EAErE,MAAO,CACL/B,WACAC,WAAYzD,EAAwB+E,EAAgBvB,EAAU,CAC5DlD,MAAO2E,EACPxE,OAAQ2E,I,CAKN,uBAAAlB,G,QACN,GACEtC,KAAK0C,eAAiB,QACtB5B,EAAAd,KAAKU,iBAAa,MAAAI,SAAA,SAAAA,EAAE8C,iBAAkB,QACtC5D,KAAK9C,KAAO,KACZ,EACAqE,EAAAvB,KAAKU,iBAAa,MAAAa,SAAA,SAAAA,EAAEsC,aAAa,CAAElG,GAAIqC,KAAK9C,IAAIS,I,EAI5C,SAAA0E,G,SACNvB,EAAAd,KAAKU,iBAAa,MAAAI,SAAA,SAAAA,EAAEgD,kBAAiBvC,EAAAvB,KAAK9C,OAAG,MAAAqE,SAAA,SAAAA,EAAE5D,G,CAGzC,oBAAAuF,CACNa,EACA3D,EACA7B,GAEA,MAAMyF,EAAQC,EAAQC,qCACpBH,EACA3D,GAEF,OAAO+D,EAASC,eAAe7F,GAAY8F,0BAA0BL,E","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{h as e,t,p as n,H as s,e as i}from"./p-Bb32XUUS.js";import{m as r,v as o}from"./p-CZZALKHT.js";import{M as l}from"./p-QhlhRt6X.js";import"./p-DjrtwKcK.js";import{V as a}from"./p-EG7pMA2M.js";function c(e){return e instanceof HTMLElement&&e.nodeName==="VERTEX-VIEWER-DOM-ELEMENT"&&e.matrix!=null}function d(e){return(e instanceof HTMLElement&&e.nodeName==="VERTEX-VIEWER-DOM-GROUP"||e instanceof HTMLElement&&e.dataset.isDomGroupElement!=null)&&e.matrix!=null}const h=(t,n)=>e("div",{class:"root-2d"},n);function u(e,t,n,s,i){const r=v(e,t,s).sort(((e,t)=>e.distanceToCamera-t.distanceToCamera));for(let e=0;e<r.length;e++){const{element:t,worldMatrix:o,worldPosition:l}=r[e];const a=i==null;const c=a||!t.occlusionOff&&(i===null||i===void 0?void 0:i.isOccluded(l,n));const d=a||!t.detachedOff&&(i===null||i===void 0?void 0:i.isDetached(l,n));const h=p(l,s.projectionViewMatrix,n);f(t,h);m(t,e,r.length);u(t,o,n,s,i);t.occluded=c!==null&&c!==void 0?c:false;t.detached=d!==null&&d!==void 0?d:false;t.classList.add("ready")}}function v(e,t,n){const s=[];for(let i=0;i<e.children.length;i++){const l=e.children[i];if(d(l)){const e=r.multiply(l.matrix,t);s.push(...v(l,e,n))}else if(c(l)){const e=r.multiply(l.matrix,t);const i=o.fromMatrixPosition(e);const a=o.distanceSquared(n.position,i);s.push({element:l,worldMatrix:e,worldPosition:i,distanceToCamera:a})}else{s.push(...v(l,t,n))}}return s}function f(e,t){e.style.transform=[`translate(-50%, -50%)`,`translate(${t.x}px, ${t.y}px)`].join(" ")}function m(e,t,n){e.style.zIndex=`${n-t}`}function p(e,t,n){const s=o.multiplyByTransformMatrixColumnMajor(e,t);return n.transformVectorToViewport(s)}const w=({camera:t,viewport:n},s)=>{const i=r.toObjectColumnMajor(t.projectionMatrix);const o=t.isOrthographic()?t.far*2/(t.fovHeight*2)*(n.height/2):i.m22*(n.height/2);const l=[`translateZ(${o}px)`,M(t.viewMatrix),`translate(${n.width/2}px, ${n.height/2}px)`].join(" ");return e("div",{class:"root-3d",style:{perspective:`${o}px`}},e("div",{class:"camera",style:{transform:l}},s))};function E(e,t,n,s,i){for(let r=0;r<e.children.length;r++){const o=e.children[r];if(c(o)){x(o,t,n,s,i)}else if(d(o)){g(o,t,n,s,i)}else{E(o,t,n,s,i)}}}function x(e,t,n,s,i){const l=r.multiply(e.matrix,t);const a=o.fromMatrixPosition(l);const c=i==null;const d=c||!e.occlusionOff&&(i===null||i===void 0?void 0:i.isOccluded(a,n));e.occluded=d!==null&&d!==void 0?d:false;const h=c||!e.detachedOff&&(i===null||i===void 0?void 0:i.isDetached(a,n));e.detached=h!==null&&h!==void 0?h:false;e.classList.add("ready");if(e.billboardOff){e.style.transform=y(l)}else{const t=s.viewMatrix;const n=r.transpose(t);const i=r.position(n,l);const o=r.scale(i,e.scale);o[3]=0;o[7]=0;o[11]=0;o[15]=1;e.style.transform=y(o)}E(e,l,n,s,i)}function g(e,t,n,s,i){const o=r.multiply(e.matrix,t);E(e,o,n,s,i)}function M(e){const t=[V(e[0]),V(-e[1]),V(e[2]),V(e[3]),V(e[4]),V(-e[5]),V(e[6]),V(e[7]),V(e[8]),V(-e[9]),V(e[10]),V(e[11]),V(e[12]),V(-e[13]),V(e[14]),V(e[15])].join(", ");return`matrix3d(${t})`}function y(e){const t=[V(e[0]),V(e[1]),V(e[2]),V(e[3]),V(-e[4]),V(-e[5]),V(-e[6]),V(-e[7]),V(e[8]),V(e[9]),V(e[10]),V(e[11]),V(e[12]),V(e[13]),V(e[14]),V(e[15])].join(", ");return[`translate(-50%, -50%)`,`matrix3d(${t})`].join(" ")}function V(e){return Math.abs(e)<1e-10?0:e}const C=()=>`.sc-vertex-viewer-dom-renderer-h{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;pointer-events:none}.root-3d.sc-vertex-viewer-dom-renderer{width:100%;height:100%;pointer-events:inherit}.camera.sc-vertex-viewer-dom-renderer{transform-style:preserve-3d;pointer-events:inherit;width:100%;height:100%}`;const T=n(class t extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.drawMode="3d";this.propagateEventsToViewer=true;this.viewport=new a(0,0);this.invalidateFrameCounter=0;this.interactionDisposables=[];this.handleViewerFrameDrawn=async()=>{this.updatePropsFromViewer()}}componentWillLoad(){var e;const t=new ResizeObserver((()=>this.handleResize()));t.observe(this.hostEl);const n=new MutationObserver((()=>this.handleChildrenChange()));n.observe(this.hostEl,{childList:true});this.handleViewerChange(this.viewer,undefined);if(((e=this.viewer)===null||e===void 0?void 0:e.frame)!=null){this.handleViewerFrameDrawn()}}render(){if(this.camera!=null){if(this.drawMode==="2d"){return e(i,null,e(h,null,e("slot",null)))}else{return e(i,null,e(w,{camera:this.camera,viewport:this.viewport},e("slot",null)))}}else{return e(i,null)}}componentWillRender(){this.updateElements()}handleViewerChange(e,t){t===null||t===void 0?void 0:t.removeEventListener("frameDrawn",this.handleViewerFrameDrawn);e===null||e===void 0?void 0:e.addEventListener("frameDrawn",this.handleViewerFrameDrawn);if(this.propagateEventsToViewer&&e!=null){this.handleEventPropagationToViewer(e)}}handlePropertyChange(){this.invalidateFrame()}invalidateFrame(){this.invalidateFrameCounter=this.invalidateFrameCounter+1}handleEventPropagationToViewer(e){this.interactionDisposables.forEach((e=>{e.dispose()}));this.interactionDisposables=[];e.getInteractionHandlers().then((e=>{e.forEach((e=>{if(e instanceof l){const t=e.registerAdditionalElement(this.hostEl);this.interactionDisposables=[...this.interactionDisposables,t]}}))}))}async updateElements(){const{viewport:e,camera:t}=this;const n=r.makeIdentity();if(t!=null){if(this.drawMode==="3d"){E(this.hostEl,n,e,t,this.depthBuffer)}else{u(this.hostEl,n,e,t,this.depthBuffer)}}}handleResize(){const e=this.hostEl.getBoundingClientRect();this.viewport=new a(e.width,e.height)}handleChildrenChange(){this.invalidateFrame()}async updatePropsFromViewer(){const{frame:e}=this.viewer||{};this.depthBuffer=await(e===null||e===void 0?void 0:e.depthBuffer());this.camera=e===null||e===void 0?void 0:e.scene.camera}get hostEl(){return this}static get watchers(){return{viewer:[{handleViewerChange:0}]}}static get style(){return C()}},[262,"vertex-viewer-dom-renderer",{drawMode:[1,"draw-mode"],propagateEventsToViewer:[4,"propagate-events-to-viewer"],viewer:[16],camera:[1040],depthBuffer:[1040],viewport:[32],invalidateFrameCounter:[32],interactionDisposables:[32]},[[0,"propertyChange","handlePropertyChange"]],{viewer:[{handleViewerChange:0}]}]);function R(){if(typeof customElements==="undefined"){return}const e=["vertex-viewer-dom-renderer"];e.forEach((e=>{switch(e){case"vertex-viewer-dom-renderer":if(!customElements.get(t(e))){customElements.define(t(e),T)}break}}))}R();export{T as V,R as d};
5
- //# sourceMappingURL=p-CMdP8O-G.js.map
4
+ import{h as e,t,p as n,H as s,e as i}from"./p-Bb32XUUS.js";import{m as o,v as r}from"./p-2UsvOTHJ.js";import{M as l}from"./p-Ng27jBsS.js";import"./p-BjvjKoy7.js";import{V as a}from"./p-CeZe0Qql.js";function c(e){return e instanceof HTMLElement&&e.nodeName==="VERTEX-VIEWER-DOM-ELEMENT"&&e.matrix!=null}function d(e){return(e instanceof HTMLElement&&e.nodeName==="VERTEX-VIEWER-DOM-GROUP"||e instanceof HTMLElement&&e.dataset.isDomGroupElement!=null)&&e.matrix!=null}const h=(t,n)=>e("div",{class:"root-2d"},n);function u(e,t,n,s,i){const o=v(e,t,s).sort(((e,t)=>e.distanceToCamera-t.distanceToCamera));for(let e=0;e<o.length;e++){const{element:t,worldMatrix:r,worldPosition:l}=o[e];const a=i==null;const c=a||!t.occlusionOff&&(i===null||i===void 0?void 0:i.isOccluded(l,n));const d=a||!t.detachedOff&&(i===null||i===void 0?void 0:i.isDetached(l,n));const h=p(l,s.projectionViewMatrix,n);f(t,h);m(t,e,o.length);u(t,r,n,s,i);t.occluded=c!==null&&c!==void 0?c:false;t.detached=d!==null&&d!==void 0?d:false;t.classList.add("ready")}}function v(e,t,n){const s=[];for(let i=0;i<e.children.length;i++){const l=e.children[i];if(d(l)){const e=o.multiply(l.matrix,t);s.push(...v(l,e,n))}else if(c(l)){const e=o.multiply(l.matrix,t);const i=r.fromMatrixPosition(e);const a=r.distanceSquared(n.position,i);s.push({element:l,worldMatrix:e,worldPosition:i,distanceToCamera:a})}else{s.push(...v(l,t,n))}}return s}function f(e,t){e.style.transform=[`translate(-50%, -50%)`,`translate(${t.x}px, ${t.y}px)`].join(" ")}function m(e,t,n){e.style.zIndex=`${n-t}`}function p(e,t,n){const s=r.multiplyByTransformMatrixColumnMajor(e,t);return n.transformVectorToViewport(s)}const w=({camera:t,viewport:n},s)=>{const i=o.toObjectColumnMajor(t.projectionMatrix);const r=t.isOrthographic()?t.far*2/(t.fovHeight*2)*(n.height/2):i.m22*(n.height/2);const l=[`translateZ(${r}px)`,y(t.viewMatrix),`translate(${n.width/2}px, ${n.height/2}px)`].join(" ");return e("div",{class:"root-3d",style:{perspective:`${r}px`}},e("div",{class:"camera",style:{transform:l}},s))};function E(e,t,n,s,i){for(let o=0;o<e.children.length;o++){const r=e.children[o];if(c(r)){x(r,t,n,s,i)}else if(d(r)){g(r,t,n,s,i)}else{E(r,t,n,s,i)}}}function x(e,t,n,s,i){const l=o.multiply(e.matrix,t);const a=r.fromMatrixPosition(l);const c=i==null;const d=c||!e.occlusionOff&&(i===null||i===void 0?void 0:i.isOccluded(a,n));e.occluded=d!==null&&d!==void 0?d:false;const h=c||!e.detachedOff&&(i===null||i===void 0?void 0:i.isDetached(a,n));e.detached=h!==null&&h!==void 0?h:false;e.classList.add("ready");if(e.billboardOff){e.style.transform=M(l)}else{const t=s.viewMatrix;const n=o.transpose(t);const i=o.position(n,l);const r=o.scale(i,e.scale);r[3]=0;r[7]=0;r[11]=0;r[15]=1;e.style.transform=M(r)}E(e,l,n,s,i)}function g(e,t,n,s,i){const r=o.multiply(e.matrix,t);E(e,r,n,s,i)}function y(e){const t=[V(e[0]),V(-e[1]),V(e[2]),V(e[3]),V(e[4]),V(-e[5]),V(e[6]),V(e[7]),V(e[8]),V(-e[9]),V(e[10]),V(e[11]),V(e[12]),V(-e[13]),V(e[14]),V(e[15])].join(", ");return`matrix3d(${t})`}function M(e){const t=[V(e[0]),V(e[1]),V(e[2]),V(e[3]),V(-e[4]),V(-e[5]),V(-e[6]),V(-e[7]),V(e[8]),V(e[9]),V(e[10]),V(e[11]),V(e[12]),V(e[13]),V(e[14]),V(e[15])].join(", ");return[`translate(-50%, -50%)`,`matrix3d(${t})`].join(" ")}function V(e){return Math.abs(e)<1e-10?0:e}const C=()=>`.sc-vertex-viewer-dom-renderer-h{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;pointer-events:none}.root-3d.sc-vertex-viewer-dom-renderer{width:100%;height:100%;pointer-events:inherit}.camera.sc-vertex-viewer-dom-renderer{transform-style:preserve-3d;pointer-events:inherit;width:100%;height:100%}`;const T=n(class t extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.drawMode="3d";this.propagateEventsToViewer=true;this.viewport=new a(0,0);this.invalidateFrameCounter=0;this.interactionDisposables=[];this.handleViewerFrameDrawn=async()=>{this.updatePropsFromViewer()}}componentWillLoad(){var e;const t=new ResizeObserver((()=>this.handleResize()));t.observe(this.hostEl);const n=new MutationObserver((()=>this.handleChildrenChange()));n.observe(this.hostEl,{childList:true});this.handleViewerChange(this.viewer,undefined);if(((e=this.viewer)===null||e===void 0?void 0:e.frame)!=null){this.handleViewerFrameDrawn()}}render(){if(this.camera!=null){if(this.drawMode==="2d"){return e(i,null,e(h,null,e("slot",null)))}else{return e(i,null,e(w,{camera:this.camera,viewport:this.viewport},e("slot",null)))}}else{return e(i,null)}}componentWillRender(){this.updateElements()}handleViewerChange(e,t){t===null||t===void 0?void 0:t.removeEventListener("frameDrawn",this.handleViewerFrameDrawn);e===null||e===void 0?void 0:e.addEventListener("frameDrawn",this.handleViewerFrameDrawn);if(this.propagateEventsToViewer&&e!=null){this.handleEventPropagationToViewer(e)}}handlePropertyChange(){this.invalidateFrame()}invalidateFrame(){this.invalidateFrameCounter=this.invalidateFrameCounter+1}handleEventPropagationToViewer(e){this.interactionDisposables.forEach((e=>{e.dispose()}));this.interactionDisposables=[];e.getInteractionHandlers().then((e=>{e.forEach((e=>{if(e instanceof l){const t=e.registerAdditionalElement(this.hostEl);this.interactionDisposables=[...this.interactionDisposables,t]}}))}))}async updateElements(){const{viewport:e,camera:t}=this;const n=o.makeIdentity();if(t!=null){if(this.drawMode==="3d"){E(this.hostEl,n,e,t,this.depthBuffer)}else{u(this.hostEl,n,e,t,this.depthBuffer)}}}handleResize(){const e=this.hostEl.getBoundingClientRect();this.viewport=new a(e.width,e.height)}handleChildrenChange(){this.invalidateFrame()}async updatePropsFromViewer(){const{frame:e}=this.viewer||{};this.depthBuffer=await(e===null||e===void 0?void 0:e.depthBuffer());this.camera=e===null||e===void 0?void 0:e.scene.camera}get hostEl(){return this}static get watchers(){return{viewer:[{handleViewerChange:0}]}}static get style(){return C()}},[262,"vertex-viewer-dom-renderer",{drawMode:[1,"draw-mode"],propagateEventsToViewer:[4,"propagate-events-to-viewer"],viewer:[16],camera:[1040],depthBuffer:[1040],viewport:[32],invalidateFrameCounter:[32],interactionDisposables:[32]},[[0,"propertyChange","handlePropertyChange"]],{viewer:[{handleViewerChange:0}]}]);function $(){if(typeof customElements==="undefined"){return}const e=["vertex-viewer-dom-renderer"];e.forEach((e=>{switch(e){case"vertex-viewer-dom-renderer":if(!customElements.get(t(e))){customElements.define(t(e),T)}break}}))}$();export{T as V,$ as d};
5
+ //# sourceMappingURL=p-Bx42CNGV.js.map
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{m as t}from"./p-CZZALKHT.js";class s{constructor(s){this.stream=s;this.isTransforming=false;this.currentDelta=t.makeIdentity()}async dispose(){if(this.isTransforming){this.endTransform()}}async beginTransform(s=t.makeIdentity()){this.clearEndInteractionTimeout();if(!this.isTransforming){this.currentDelta=s;this.isTransforming=true;console.debug("Beginning transform interaction");await this.stream.beginInteraction({transform:{delta:this.toDeltaTransform(s)},transformMatrixCorrected:{value:true}})}}async updateTransform(t){this.currentDelta=t;await this.stream.updateInteraction({transform:{delta:this.toDeltaTransform(this.currentDelta)}})}getCurrentDelta(){return this.currentDelta}async endTransform(){if(this.isTransforming){await this.endInteraction()}}async endTransformDebounced(t,s){if(this.isTransforming){this.restartEndInteractionTimeout(t,s)}}clearTransform(){this.currentDelta=t.makeIdentity();this.previousDelta=undefined;this.endTransform()}async EXPERIMENTAL_undoTransform(){if(this.previousDelta!=null){const s=t.invert(this.previousDelta);console.debug(`Undo of previous transform [delta-applied=${s}]`);await this.beginTransform();await this.updateTransform(s);await this.endTransform();this.previousDelta=undefined;return s}else{console.debug("No previous transform to undo.")}}async endInteraction(){console.debug(`Ending transform interaction [delta=${this.currentDelta}]`);this.clearEndInteractionTimeout();this.previousDelta=this.currentDelta;await this.stream.endInteraction({transform:{delta:this.toDeltaTransform(this.currentDelta)},transformMatrixCorrected:{value:true}});this.isTransforming=false;this.currentDelta=t.makeIdentity()}restartEndInteractionTimeout(t,s){this.clearEndInteractionTimeout();this.endDebounceTimeout=setTimeout((async()=>{t===null||t===void 0?void 0:t();await this.endInteraction();s===null||s===void 0?void 0:s()}),500)}clearEndInteractionTimeout(){if(this.endDebounceTimeout!=null){clearTimeout(this.endDebounceTimeout);this.endDebounceTimeout=undefined}}toDeltaTransform(s){const i=t.toObjectColumnMajor(s);return{basisX:{x:i.m11,y:i.m21,z:i.m31},basisY:{x:i.m12,y:i.m22,z:i.m32},basisZ:{x:i.m13,y:i.m23,z:i.m33},xlate:{x:i.m14,y:i.m24,z:i.m34},scale:i.m44}}}export{s as T};
5
- //# sourceMappingURL=p-CelQDFR0.js.map
4
+ import{m as t}from"./p-2UsvOTHJ.js";class s{constructor(s){this.stream=s;this.isTransforming=false;this.currentDelta=t.makeIdentity()}async dispose(){if(this.isTransforming){this.endTransform()}}async beginTransform(s=t.makeIdentity()){this.clearEndInteractionTimeout();if(!this.isTransforming){this.currentDelta=s;this.isTransforming=true;console.debug("Beginning transform interaction");await this.stream.beginInteraction({transform:{delta:this.toDeltaTransform(s)},transformMatrixCorrected:{value:true}})}}async updateTransform(t){this.currentDelta=t;await this.stream.updateInteraction({transform:{delta:this.toDeltaTransform(this.currentDelta)}})}getCurrentDelta(){return this.currentDelta}async endTransform(){if(this.isTransforming){await this.endInteraction()}}async endTransformDebounced(t,s){if(this.isTransforming){this.restartEndInteractionTimeout(t,s)}}clearTransform(){this.currentDelta=t.makeIdentity();this.previousDelta=undefined;this.endTransform()}async EXPERIMENTAL_undoTransform(){if(this.previousDelta!=null){const s=t.invert(this.previousDelta);console.debug(`Undo of previous transform [delta-applied=${s}]`);await this.beginTransform();await this.updateTransform(s);await this.endTransform();this.previousDelta=undefined;return s}else{console.debug("No previous transform to undo.")}}async endInteraction(){console.debug(`Ending transform interaction [delta=${this.currentDelta}]`);this.clearEndInteractionTimeout();this.previousDelta=this.currentDelta;await this.stream.endInteraction({transform:{delta:this.toDeltaTransform(this.currentDelta)},transformMatrixCorrected:{value:true}});this.isTransforming=false;this.currentDelta=t.makeIdentity()}restartEndInteractionTimeout(t,s){this.clearEndInteractionTimeout();this.endDebounceTimeout=setTimeout((async()=>{t===null||t===void 0?void 0:t();await this.endInteraction();s===null||s===void 0?void 0:s()}),500)}clearEndInteractionTimeout(){if(this.endDebounceTimeout!=null){clearTimeout(this.endDebounceTimeout);this.endDebounceTimeout=undefined}}toDeltaTransform(s){const i=t.toObjectColumnMajor(s);return{basisX:{x:i.m11,y:i.m21,z:i.m31},basisY:{x:i.m12,y:i.m22,z:i.m32},basisZ:{x:i.m13,y:i.m23,z:i.m33},xlate:{x:i.m14,y:i.m24,z:i.m34},scale:i.m44}}}export{s as T};
5
+ //# sourceMappingURL=p-C12jtCFb.js.map
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
+ */
4
+ import{t as e,p as t,H as s,d as i,h as r,e as n}from"./p-Bb32XUUS.js";import{c as o}from"./p-C6gMOKYg.js";import{d as a}from"./p-Cd7kap5W.js";import{d as c}from"./p-Bkm6H5uq.js";import{d as l}from"./p-DxuSiXYg.js";const d=()=>`button{border:none;background:transparent;cursor:pointer;margin:0;padding:0}:host{--scene-tree-search-search-icon-offset:8px;--scene-tree-search-clear-button-offset:8px;--scene-tree-search-input-padding:0.5rem 32px;--scene-tree-search-input-border:none;--scene-tree-search-input-border-radius:0.25rem;--scene-tree-search-input-background:none;--scene-tree-search-focused-input-background:var(--neutral-200);--scene-tree-search-focused-input-outline:none;display:block;width:100%;font-size:0.875rem}.root{width:100%;position:relative}.input{background:var(--scene-tree-search-input-background);border:var(--scene-tree-search-input-border);border-radius:var(--scene-tree-search-input-border-radius);box-sizing:border-box;font-size:inherit;padding:var(--scene-tree-search-input-padding);outline:none;width:100%}.input.background{background:var(--scene-tree-search-focused-input-background);outline:var(--scene-tree-search-focused-input-outline)}.overlay{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.overlay-clear{display:none;right:var(--scene-tree-search-clear-button-offset)}.overlay-clear.show{display:flex}.icon{color:var(--neutral-700)}.icon-search{position:absolute;left:var(--scene-tree-search-search-icon-offset);pointer-events:none}.clear-btn{display:flex;align-items:center;justify-content:center;pointer-events:initial;cursor:pointer}.clear-btn:hover{color:var(--neutral-800)}.clear-btn:disabled{pointer-events:none;opacity:0.5}`;const h=t(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.__attachShadow();this.search=i(this,"search");this.searchCompleted=i(this,"searchCompleted");this.disabled=false;this.placeholder=undefined;this.value="";this.focused=false;this.isSearching=false;this.handleTextInput=e=>{const t=e.target;this.value=t.value;if(this.debounce!=null||this.value===""){this.emitCurrentValue()}};this.handleTextFocus=()=>{this.focused=true};this.handleTextBlur=()=>{var e;this.focused=false;(e=this.searchDisposable)===null||e===void 0?void 0:e.dispose();if(this.value!==this.lastEmittedValue){this.emitCurrentValue()}};this.handleKeyPress=e=>{var t;if(e.key==="Enter"){(t=this.searchDisposable)===null||t===void 0?void 0:t.dispose();this.emitCurrentValue()}};this.handleClear=e=>{var t;e.preventDefault();this.value="";(t=this.searchDisposable)===null||t===void 0?void 0:t.dispose();this.emitCurrentValue();this.setFocus()}}async setFocus(){var e,t;if(typeof((e=this.inputEl)===null||e===void 0?void 0:e.focus)==="function"){(t=this.inputEl)===null||t===void 0?void 0:t.focus()}}controllerChanged(e){this.setupController()}componentDidLoad(){this.handleDebounceChanged();this.setupController()}disconnectedCallback(){var e;(e=this.onStateChangeDisposable)===null||e===void 0?void 0:e.dispose()}async clear(){var e;this.value="";(e=this.searchDisposable)===null||e===void 0?void 0:e.dispose();this.emitCurrentValue()}render(){return r(n,{key:"763e2f4c7ab3d80a197b94c123f61b25eba41b24"},r("div",{key:"14b5f4af01483f0d31ee77f03fc36fd1ff46e525",class:"root"},r("div",{key:"a1ebe30b97a16c83c9443402998e0f3f761d687d",class:"overlay icon icon-search"},r("slot",{key:"41073c4ecd626c3b4a38b0e62d95c6317cd2e98a",name:"search-icon"},this.isSearching?r("vertex-viewer-spinner",{slot:"search-icon",size:"xs"}):r("vertex-viewer-icon",{name:"search",size:"sm"}))),r("input",{key:"173d13b8d597425fdff082eb872225279e99bd34",class:o("input",{background:this.focused||this.value.length>0}),type:"text",ref:e=>this.inputEl=e,placeholder:this.placeholder,disabled:this.disabled,value:this.value,onInput:this.handleTextInput,onFocus:this.handleTextFocus,onBlur:this.handleTextBlur,onKeyPress:this.handleKeyPress}),r("div",{key:"f5b0de0431a9c8b051f61fcd76ce9eb430c0a0c9",class:o("overlay overlay-clear",{show:this.value.length>0})},r("button",{key:"dffb9ffaba79c003552a53122a0feda46894fa2e",class:"clear-btn icon",tabIndex:-1,onMouseDown:this.handleClear,disabled:this.disabled,"aria-label":"Clear search"},r("slot",{key:"9185057767cff4df0098ea056f19bd931f6ef4c7",name:"clear-icon"},r("vertex-viewer-icon",{key:"5ec1fe210b9c82b98e609bce9da02d8f2055ec66",name:"close-circle",size:"sm"}))))))}handleDebounceChanged(){var e,t;(e=this.searchDisposable)===null||e===void 0?void 0:e.dispose();const s=a(this.search,(t=this.debounce)!==null&&t!==void 0?t:0);this.search=s;this.searchDisposable=s}setupController(){var e,t;(e=this.onStateChangeDisposable)===null||e===void 0?void 0:e.dispose();this.onStateChangeDisposable=(t=this.controller)===null||t===void 0?void 0:t.onStateChange.on((e=>{if(this.isSearching&&!e.isSearching){this.searchCompleted.emit(this.value)}this.isSearching=e.isSearching}))}emitCurrentValue(){this.lastEmittedValue=this.value;this.search.emit(this.value)}static get watchers(){return{controller:[{controllerChanged:0}]}}static get style(){return d()}},[257,"vertex-scene-tree-search",{debounce:[2],disabled:[4],placeholder:[1],controller:[16],value:[1025],focused:[32],isSearching:[32],setFocus:[64],clear:[64]},undefined,{controller:[{controllerChanged:0}]}]);function u(){if(typeof customElements==="undefined"){return}const t=["vertex-scene-tree-search","vertex-viewer-icon","vertex-viewer-spinner"];t.forEach((t=>{switch(t){case"vertex-scene-tree-search":if(!customElements.get(e(t))){customElements.define(e(t),h)}break;case"vertex-viewer-icon":if(!customElements.get(e(t))){c()}break;case"vertex-viewer-spinner":if(!customElements.get(e(t))){l()}break}}))}u();export{h as S,u as d};
5
+ //# sourceMappingURL=p-C86HMDzi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["sceneTreeSearchCss","SceneTreeSearch","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","disabled","placeholder","undefined","value","focused","isSearching","handleTextInput","event","input","target","debounce","emitCurrentValue","handleTextFocus","handleTextBlur","_a","searchDisposable","dispose","lastEmittedValue","handleKeyPress","key","handleClear","preventDefault","setFocus","inputEl","focus","_b","controllerChanged","controller","setupController","componentDidLoad","handleDebounceChanged","disconnectedCallback","onStateChangeDisposable","clear","render","h","Host","class","name","slot","size","classNames","background","length","type","ref","onInput","onFocus","onBlur","onKeyPress","show","tabIndex","onMouseDown","emitter","debounceEvent","search","onStateChange","on","state","searchCompleted","emit"],"sources":["src/components/scene-tree-search/scene-tree-search.css?tag=vertex-scene-tree-search&encapsulation=shadow","src/components/scene-tree-search/scene-tree-search.tsx"],"sourcesContent":["@import url('../../css/button-reset.css');\n\n:host {\n /**\n * @prop --scene-tree-search-search-icon-offset: A CSS length that specifies\n * the horizontal offset of the search icon\n */\n --scene-tree-search-search-icon-offset: 8px;\n\n /**\n * @prop --scene-tree-search-clear-button-offset: A CSS length that specifies\n * the horizontal offset of the clear button.\n */\n --scene-tree-search-clear-button-offset: 8px;\n\n /**\n * @prop --scene-tree-search-input-padding: A CSS padding value that specifies\n * horizontal and vertical lengths of the internal text input.\n */\n --scene-tree-search-input-padding: 0.5rem 32px;\n\n /**\n * @prop --scene-tree-search-input-border: A CSS border value that specifies\n * the border of the internal text input.\n */\n --scene-tree-search-input-border: none;\n\n /**\n * @prop --scene-tree-search-input-border-radius: A CSS length that specifies\n * the radius of the internal text input.\n */\n --scene-tree-search-input-border-radius: 0.25rem;\n\n /**\n * @prop --scene-tree-search-input-background: A CSS background that specifies\n * the background color or image of the internal text input.\n */\n --scene-tree-search-input-background: none;\n\n /**\n * @prop --scene-tree-search-focused-input-background: A CSS background value\n * that specifies the background of the internal text input when focused.\n */\n --scene-tree-search-focused-input-background: var(--neutral-200);\n\n /**\n * @prop --scene-tree-search-focused-input-outline: A CSS outline value that\n * specifies the outline of the internal text input when focused.\n */\n --scene-tree-search-focused-input-outline: none;\n\n display: block;\n width: 100%;\n font-size: 0.875rem;\n}\n\n.root {\n width: 100%;\n position: relative;\n}\n\n.input {\n background: var(--scene-tree-search-input-background);\n border: var(--scene-tree-search-input-border);\n border-radius: var(--scene-tree-search-input-border-radius);\n box-sizing: border-box;\n font-size: inherit;\n padding: var(--scene-tree-search-input-padding);\n outline: none;\n width: 100%;\n}\n\n.input.background {\n background: var(--scene-tree-search-focused-input-background);\n outline: var(--scene-tree-search-focused-input-outline);\n}\n\n.overlay {\n position: absolute;\n top: 0;\n bottom: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n}\n\n.overlay-clear {\n display: none;\n right: var(--scene-tree-search-clear-button-offset);\n}\n\n.overlay-clear.show {\n display: flex;\n}\n\n.icon {\n color: var(--neutral-700);\n}\n\n.icon-search {\n position: absolute;\n left: var(--scene-tree-search-search-icon-offset);\n pointer-events: none;\n}\n\n.clear-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: initial;\n cursor: pointer;\n}\n.clear-btn:hover {\n color: var(--neutral-800);\n}\n.clear-btn:disabled {\n pointer-events: none;\n opacity: 0.5;\n}\n","import {\n Component,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { Disposable } from '@vertexvis/utils';\nimport classNames from 'classnames';\n\nimport { debounceEvent } from '../../lib/stencil';\nimport { SceneTreeController } from '../scene-tree/lib/controller';\n\n/**\n * @slot search-icon - A slot that replaces the component's default search icon.\n * @slot clear-icon - A slot that replaces the component's default clear icon.\n */\n@Component({\n tag: 'vertex-scene-tree-search',\n styleUrl: 'scene-tree-search.css',\n shadow: true,\n})\nexport class SceneTreeSearch {\n /**\n * Specifies the delay, in milliseconds, to emit `search` events after user\n * input.\n *\n * If this value is specified, searches will automatically occur after a\n * keystroke has occurred and the debounce threshold has elapsed.\n *\n * Defaults to `undefined`, and searches only occur on an `Enter` press\n * or a `blur` event.\n */\n @Prop()\n public debounce?: number;\n\n /**\n * If `true`, disables user interaction of the component.\n */\n @Prop()\n public disabled = false;\n\n /**\n * Placeholder text if `value` is empty.\n */\n @Prop()\n public placeholder?: string = undefined;\n\n /**\n * The scene tree controller\n */\n @Prop()\n public controller?: SceneTreeController;\n\n /**\n * The current text value of the component. Value is updated on user\n * interaction.\n */\n @Prop({ mutable: true })\n public value = '';\n\n /**\n * An event that is emitted when a user has changed or cleared the search\n * term. The event may be delayed according to the current `debounce` value.\n */\n @Event({ bubbles: true })\n public search!: EventEmitter<string>;\n\n /**\n * An event that is emitted when a search has completed.\n */\n @Event({ bubbles: true })\n public searchCompleted!: EventEmitter<string>;\n\n @State()\n private focused = false;\n\n @State()\n private isSearching = false;\n\n private lastEmittedValue?: string;\n private inputEl?: HTMLInputElement;\n private onStateChangeDisposable?: Disposable;\n private searchDisposable?: Disposable;\n\n /**\n * Gives focus to the component's internal text input.\n */\n @Method()\n public async setFocus(): Promise<void> {\n // HTMLInputElement.focus() doesn't exist in tests.\n if (typeof this.inputEl?.focus === 'function') {\n this.inputEl?.focus();\n }\n }\n\n /**\n * @ignore\n */\n @Watch('controller')\n public controllerChanged(controller: SceneTreeController): void {\n this.setupController();\n }\n\n /**\n * @ignore\n */\n protected componentDidLoad(): void {\n this.handleDebounceChanged();\n\n this.setupController();\n }\n\n /**\n * @ignore\n */\n protected disconnectedCallback(): void {\n this.onStateChangeDisposable?.dispose();\n }\n\n /**\n * Clears the current search term and clears any debounced filters.\n */\n @Method()\n public async clear(): Promise<void> {\n this.value = '';\n this.searchDisposable?.dispose();\n this.emitCurrentValue();\n }\n\n /**\n * @ignore\n */\n protected render(): h.JSX.IntrinsicElements {\n return (\n <Host>\n <div class=\"root\">\n <div class=\"overlay icon icon-search\">\n <slot name=\"search-icon\">\n {this.isSearching ? (\n <vertex-viewer-spinner slot=\"search-icon\" size=\"xs\" />\n ) : (\n <vertex-viewer-icon name=\"search\" size=\"sm\" />\n )}\n </slot>\n </div>\n\n <input\n class={classNames('input', {\n background: this.focused || this.value.length > 0,\n })}\n type=\"text\"\n ref={(ref) => (this.inputEl = ref)}\n placeholder={this.placeholder}\n disabled={this.disabled}\n value={this.value}\n onInput={this.handleTextInput}\n onFocus={this.handleTextFocus}\n onBlur={this.handleTextBlur}\n onKeyPress={this.handleKeyPress}\n />\n\n <div\n class={classNames('overlay overlay-clear', {\n show: this.value.length > 0,\n })}\n >\n <button\n class=\"clear-btn icon\"\n tabIndex={-1}\n onMouseDown={this.handleClear}\n disabled={this.disabled}\n aria-label=\"Clear search\"\n >\n <slot name=\"clear-icon\">\n <vertex-viewer-icon name=\"close-circle\" size=\"sm\" />\n </slot>\n </button>\n </div>\n </div>\n </Host>\n );\n }\n\n private handleTextInput = (event: Event): void => {\n const input = event.target as HTMLInputElement;\n this.value = input.value;\n\n if (this.debounce != null || this.value === '') {\n this.emitCurrentValue();\n }\n };\n\n private handleTextFocus = (): void => {\n this.focused = true;\n };\n\n private handleTextBlur = (): void => {\n this.focused = false;\n\n this.searchDisposable?.dispose();\n\n if (this.value !== this.lastEmittedValue) {\n this.emitCurrentValue();\n }\n };\n\n private handleKeyPress = (event: KeyboardEvent): void => {\n if (event.key === 'Enter') {\n this.searchDisposable?.dispose();\n this.emitCurrentValue();\n }\n };\n\n private handleClear = (event: MouseEvent): void => {\n event.preventDefault();\n\n this.value = '';\n this.searchDisposable?.dispose();\n this.emitCurrentValue();\n this.setFocus();\n };\n\n private handleDebounceChanged(): void {\n this.searchDisposable?.dispose();\n\n const emitter = debounceEvent(this.search, this.debounce ?? 0);\n\n // Track this emitter in two separate variables to maintain the `EventEmitter` typing for\n // `this.search`. This allows for correct generation of `CustomEvent` types.\n this.search = emitter;\n this.searchDisposable = emitter;\n }\n\n private setupController(): void {\n this.onStateChangeDisposable?.dispose();\n\n this.onStateChangeDisposable = this.controller?.onStateChange.on(\n (state) => {\n // If a search was previously being performed, but has now finished,\n // emit the event that the search has completed.\n if (this.isSearching && !state.isSearching) {\n this.searchCompleted.emit(this.value);\n }\n\n this.isSearching = state.isSearching;\n },\n );\n }\n\n private emitCurrentValue(): void {\n this.lastEmittedValue = this.value;\n this.search.emit(this.value);\n }\n}\n"],"mappings":";;;uNAAA,MAAMA,EAAqB,IAAM,+9C,MC0BpBC,EAAeC,EAAA,MAAAD,UAAAE,EAL5B,WAAAC,CAAAC,G,8IAuBSC,KAAAC,SAAW,MAMXD,KAAAE,YAAuBC,UAavBH,KAAAI,MAAQ,GAgBPJ,KAAAK,QAAU,MAGVL,KAAAM,YAAc,MA0GdN,KAAAO,gBAAmBC,IACzB,MAAMC,EAAQD,EAAME,OACpBV,KAAKI,MAAQK,EAAML,MAEnB,GAAIJ,KAAKW,UAAY,MAAQX,KAAKI,QAAU,GAAI,CAC9CJ,KAAKY,kB,GAIDZ,KAAAa,gBAAkB,KACxBb,KAAKK,QAAU,IAAI,EAGbL,KAAAc,eAAiB,K,MACvBd,KAAKK,QAAU,OAEfU,EAAAf,KAAKgB,oBAAgB,MAAAD,SAAA,SAAAA,EAAEE,UAEvB,GAAIjB,KAAKI,QAAUJ,KAAKkB,iBAAkB,CACxClB,KAAKY,kB,GAIDZ,KAAAmB,eAAkBX,I,MACxB,GAAIA,EAAMY,MAAQ,QAAS,EACzBL,EAAAf,KAAKgB,oBAAgB,MAAAD,SAAA,SAAAA,EAAEE,UACvBjB,KAAKY,kB,GAIDZ,KAAAqB,YAAeb,I,MACrBA,EAAMc,iBAENtB,KAAKI,MAAQ,IACbW,EAAAf,KAAKgB,oBAAgB,MAAAD,SAAA,SAAAA,EAAEE,UACvBjB,KAAKY,mBACLZ,KAAKuB,UAAU,CAkClB,CArKQ,cAAMA,G,QAEX,WAAWR,EAAAf,KAAKwB,WAAO,MAAAT,SAAA,SAAAA,EAAEU,SAAU,WAAY,EAC7CC,EAAA1B,KAAKwB,WAAO,MAAAE,SAAA,SAAAA,EAAED,O,EAQX,iBAAAE,CAAkBC,GACvB5B,KAAK6B,iB,CAMG,gBAAAC,GACR9B,KAAK+B,wBAEL/B,KAAK6B,iB,CAMG,oBAAAG,G,OACRjB,EAAAf,KAAKiC,2BAAuB,MAAAlB,SAAA,SAAAA,EAAEE,S,CAOzB,WAAMiB,G,MACXlC,KAAKI,MAAQ,IACbW,EAAAf,KAAKgB,oBAAgB,MAAAD,SAAA,SAAAA,EAAEE,UACvBjB,KAAKY,kB,CAMG,MAAAuB,GACR,OACEC,EAACC,EAAI,CAAAjB,IAAA,4CACHgB,EAAA,OAAAhB,IAAA,2CAAKkB,MAAM,QACTF,EAAA,OAAAhB,IAAA,2CAAKkB,MAAM,4BACTF,EAAA,QAAAhB,IAAA,2CAAMmB,KAAK,eACRvC,KAAKM,YACJ8B,EAAA,yBAAuBI,KAAK,cAAcC,KAAK,OAE/CL,EAAA,sBAAoBG,KAAK,SAASE,KAAK,SAK7CL,EAAA,SAAAhB,IAAA,2CACEkB,MAAOI,EAAW,QAAS,CACzBC,WAAY3C,KAAKK,SAAWL,KAAKI,MAAMwC,OAAS,IAElDC,KAAK,OACLC,IAAMA,GAAS9C,KAAKwB,QAAUsB,EAC9B5C,YAAaF,KAAKE,YAClBD,SAAUD,KAAKC,SACfG,MAAOJ,KAAKI,MACZ2C,QAAS/C,KAAKO,gBACdyC,QAAShD,KAAKa,gBACdoC,OAAQjD,KAAKc,eACboC,WAAYlD,KAAKmB,iBAGnBiB,EAAA,OAAAhB,IAAA,2CACEkB,MAAOI,EAAW,wBAAyB,CACzCS,KAAMnD,KAAKI,MAAMwC,OAAS,KAG5BR,EAAA,UAAAhB,IAAA,2CACEkB,MAAM,iBACNc,UAAU,EACVC,YAAarD,KAAKqB,YAClBpB,SAAUD,KAAKC,SAAQ,aACZ,gBAEXmC,EAAA,QAAAhB,IAAA,2CAAMmB,KAAK,cACTH,EAAA,sBAAAhB,IAAA,2CAAoBmB,KAAK,eAAeE,KAAK,W,CAgDnD,qBAAAV,G,SACNhB,EAAAf,KAAKgB,oBAAgB,MAAAD,SAAA,SAAAA,EAAEE,UAEvB,MAAMqC,EAAUC,EAAcvD,KAAKwD,QAAQ9B,EAAA1B,KAAKW,YAAQ,MAAAe,SAAA,EAAAA,EAAI,GAI5D1B,KAAKwD,OAASF,EACdtD,KAAKgB,iBAAmBsC,C,CAGlB,eAAAzB,G,SACNd,EAAAf,KAAKiC,2BAAuB,MAAAlB,SAAA,SAAAA,EAAEE,UAE9BjB,KAAKiC,yBAA0BP,EAAA1B,KAAK4B,cAAU,MAAAF,SAAA,SAAAA,EAAE+B,cAAcC,IAC3DC,IAGC,GAAI3D,KAAKM,cAAgBqD,EAAMrD,YAAa,CAC1CN,KAAK4D,gBAAgBC,KAAK7D,KAAKI,M,CAGjCJ,KAAKM,YAAcqD,EAAMrD,WAAW,G,CAKlC,gBAAAM,GACNZ,KAAKkB,iBAAmBlB,KAAKI,MAC7BJ,KAAKwD,OAAOK,KAAK7D,KAAKI,M","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{t as e,p as t,H as i,d as o,h as r,e as s}from"./p-Bb32XUUS.js";import{g as n,a as h}from"./p-BqeEZXPn.js";import{w as a}from"./p-Cd7kap5W.js";import{g as d}from"./p-Bg-uS9BH.js";import{M as u,t as l,l as c,o as p,d as f,q as m,m as v,n as w,S as g,c as b}from"./p-taOlygmc.js";import{B as k}from"./p-Due5EmBt.js";import{p as P,g as C}from"./p-CZZALKHT.js";class x extends u{constructor(e,t,i,o){super(o);this.markupEl=e;this.interactionBegin=t;this.interactionEnd=i;this.anchor="bottom-right";this.handleResizeInteractionMove=e=>{if(this.resizeStartPosition!=null&&this.elementBounds!=null&&this.resizeBounds!=null&&this.resizePoints!=null){const t=l(n(e,this.elementBounds),this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);const i=c(this.resizeBounds,this.resizeStartPosition,t,this.anchor,e.shiftKey);this.markupEl.points=p(this.resizePoints,this.resizeBounds,i);this.markupEl.bounds=i}};this.handleResizeInteractionEnd=e=>{window.removeEventListener("pointermove",this.handleResizeInteractionMove);window.removeEventListener("pointerup",this.handleResizeInteractionEnd);this.resizeBounds=undefined;const t=this.markupEl.mode!=="edit";this.interactionEnd.emit({markup:this.markupEl,newlyCreatedMarkup:t})}}editAnchor(e,t){if(this.markupEl.mode==="edit"&&this.elementBounds!=null){this.resizeBounds=this.markupEl.bounds;this.resizePoints=this.markupEl.points;this.anchor=e;this.resizeStartPosition=l(n(t,this.elementBounds),this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);window.addEventListener("pointermove",this.handleResizeInteractionMove);window.addEventListener("pointerup",this.handleResizeInteractionEnd)}}startInteraction(e){this.handleInteractionAttempt(e)}computeBoundingRect(){return d(this.markupEl)}handleInteractionAttempt(e){var t;if(this.markupEl.mode!==""&&this.pointerId==null&&this.elementBounds!=null){this.pointerId=e.pointerId;const i=n(e,this.elementBounds);const o=l(i,this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);this.updateMinAndMax(o);this.markupEl.points=(t=this.markupEl.points)!==null&&t!==void 0?t:[o];this.interactionBegin.emit();this.acceptInteraction()}}handleInteractionMove(e){if(this.pointerId===e.pointerId&&this.markupEl.points!=null&&this.elementBounds!=null){const t=n(e,this.elementBounds);const i=l(t,this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);this.updateMinAndMax(i);this.markupEl.points=[...this.markupEl.points,i]}}handleInteractionEnd(e){if(this.pointerId===e.pointerId){if(this.markupEl.mode!==""&&this.markupEl.points!=null&&this.markupEl.points.length>2&&this.elementBounds!=null){const t=n(e,this.elementBounds);const i=l(t,this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);this.updateMinAndMax(i);this.markupEl.points=[...this.markupEl.points,i];const o=this.markupEl.mode!=="edit";this.interactionEnd.emit({markup:this.markupEl,newlyCreatedMarkup:o})}else{this.markupEl.points=undefined}this.min=undefined;this.max=undefined;this.pointerId=undefined}}updateMinAndMax(e){this.min=this.min!=null?P.create(Math.min(this.min.x,e.x),Math.min(this.min.y,e.y)):e;this.max=this.max!=null?P.create(Math.max(this.max.x,e.x),Math.max(this.max.y,e.y)):e;this.markupEl.bounds=C.create(this.min.x,this.min.y,this.max.x-this.min.x,this.max.y-this.min.y)}}const S=()=>`:host{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;--viewer-markup-freeform-stroke-color:var(--red-800);--viewer-markup-freeform-stroke-width:4px;--viewer-markup-freeform-line-join:round;--viewer-markup-freeform-line-cap:round;--viewer-markup-freeform-bounds-outline-border-color:var(--blue-400);--viewer-markup-freeform-bounds-outline-border-width:1px;--viewer-markup-freeform-bounds-edge-anchor-border-color:var(--blue-400);--viewer-markup-freeform-bounds-edge-anchor-border-width:1px;--viewer-markup-freeform-bounds-edge-anchor-background-color:white;--viewer-markup-freeform-bounds-center-anchor-border-color:white;--viewer-markup-freeform-bounds-center-anchor-border-width:1px;--viewer-markup-freeform-bounds-center-anchor-background-color:var( --blue-400 );--viewer-markup-freeform-bounds-anchor-width:9px;--viewer-markup-freeform-bounds-anchor-height:9px;--viewer-markup-freeform-scale:1}.svg{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.path{pointer-events:auto;cursor:default;stroke:var(--viewer-markup-freeform-stroke-color);stroke-width:calc( var(--viewer-markup-freeform-stroke-width) * var(--viewer-markup-freeform-scale) );stroke-linejoin:var(--viewer-markup-freeform-line-join);stroke-linecap:var(--viewer-markup-freeform-line-cap)}.create-overlay{pointer-events:auto;position:absolute;left:0;top:0;width:100%;height:100%;cursor:crosshair}.bounds-container{pointer-events:none;position:absolute;width:100%;height:100%;top:0;left:0;overflow:hidden}.bounds-outline{position:absolute;border-width:var(--viewer-markup-freeform-bounds-outline-border-width);border-color:var(--viewer-markup-freeform-bounds-outline-border-color);border-style:solid;box-shadow:0 0 3px rgba(0, 0, 0, 0.3)}.bounds-anchor-position{position:absolute;transform:translate(-50%, -50%)}.bounds-anchor{pointer-events:auto;cursor:default;user-select:none}.bounds-default-anchor{width:var(--viewer-markup-freeform-bounds-anchor-width);height:var(--viewer-markup-freeform-bounds-anchor-height);box-sizing:border-box;box-shadow:0 0 2px rgba(0, 0, 0, 0.3)}.bounds-center-anchor{border-radius:100%;border-width:var(--viewer-markup-freeform-bounds-center-anchor-border-width);border-color:var(--viewer-markup-freeform-bounds-center-anchor-border-color);border-style:solid;background-color:var( --viewer-markup-freeform-bounds-center-anchor-background-color )}.bounds-edge-anchor{border-width:var(--viewer-markup-freeform-bounds-edge-anchor-border-width);border-color:var(--viewer-markup-freeform-bounds-edge-anchor-border-color);border-style:solid;background-color:var( --viewer-markup-freeform-bounds-edge-anchor-background-color )}`;const B=t(class e extends i{constructor(e){super();if(e!==false){this.__registerHost()}this.__attachShadow();this.interactionBegin=o(this,"interactionBegin");this.interactionEnd=o(this,"interactionEnd");this.mode="";this.centeringBehavior="none";this.scale=1;this.screenPoints=[];this.interactionHandler=new x(this.hostEl,this.interactionBegin,this.interactionEnd,{scale:this.scale,offset:this.offset,originatingViewport:this.originatingViewport,centeringBehavior:this.centeringBehavior});this.handleWindowPointerDown=e=>{if(f(e)){this.interactionHandler.startInteraction(e)}};this.handleTouchStart=e=>{e.preventDefault()}}componentWillLoad(){this.updateViewport();this.handleViewerChanged(this.viewer);this.handleScaleChange();this.handleScalingConfigurationChange();this.updatePointsFromProps()}componentDidLoad(){const e=new ResizeObserver((()=>this.updateViewport()));e.observe(this.hostEl);if(this.mode==="create"){window.addEventListener("pointerdown",this.handleWindowPointerDown)}}disconnectedCallback(){this.dispose()}async dispose(){var e;(e=this.registeredInteraction)===null||e===void 0?void 0:e.dispose();this.registeredInteraction=undefined;window.removeEventListener("pointerdown",this.handleWindowPointerDown)}async handleViewerChanged(e){var t;(t=this.registeredInteraction)===null||t===void 0?void 0:t.dispose();this.registeredInteraction=undefined;if(e!=null){this.registeredInteraction=await e.registerBasicInteractionHandler(this.interactionHandler)}}recomputePointsFromProps(){this.updatePointsFromProps()}handleScalingConfigurationChange(){this.interactionHandler.updateScalingOptions({scale:this.scale,offset:this.offset,originatingViewport:this.originatingViewport,centeringBehavior:this.centeringBehavior})}handleScaleChange(){a((()=>{this.hostEl.style.setProperty("--viewer-markup-freeform-scale",this.scale.toString())}))}handleModeChange(){if(this.mode!=="create"){window.removeEventListener("pointerdown",this.handleWindowPointerDown)}}updateViewport(){var e;const t=d(this.hostEl);this.elementBounds=t;this.screenPoints=(e=this.convertPointsToScreen())!==null&&e!==void 0?e:this.screenPoints}updatePointsFromProps(){var e,t,i;this.points=(e=this.points)!==null&&e!==void 0?e:m(this.pointsJson);this.screenPoints=(t=this.convertPointsToScreen())!==null&&t!==void 0?t:[];this.bounds=(i=this.bounds)!==null&&i!==void 0?i:v(this.boundsJson)}render(){var e,t,i,o;if(this.screenPoints.length>0&&this.elementBounds!=null&&this.elementBounds.width>0&&this.elementBounds.height>0){const n=((t=(e=this.offset)===null||e===void 0?void 0:e.x)!==null&&t!==void 0?t:0)/h();const a=((o=(i=this.offset)===null||i===void 0?void 0:i.y)!==null&&o!==void 0?o:0)/h();return r(s,null,r("svg",{class:"svg",onTouchStart:this.handleTouchStart},r("defs",null,r(g,{id:"freeform-markup-shadow",scale:this.scale})),r("g",{transform:`translate(${n} ${a})`,filter:"url(#freeform-markup-shadow)"},r("path",{class:"path",d:this.screenPoints.reduce(((e,t)=>`${e}L${t.x},${t.y}`),`M${this.screenPoints[0].x},${this.screenPoints[0].y}`),fill:"none"}))),this.mode==="edit"&&this.bounds!=null&&r(k,{bounds:w(this.bounds,this.elementBounds,this.originatingViewport,this.centeringBehavior,this.scale),offset:{x:n,y:a},onTopLeftAnchorPointerDown:e=>this.interactionHandler.editAnchor("top-left",e),onTopRightAnchorPointerDown:e=>this.interactionHandler.editAnchor("top-right",e),onTopAnchorPointerDown:e=>this.interactionHandler.editAnchor("top",e),onBottomLeftAnchorPointerDown:e=>this.interactionHandler.editAnchor("bottom-left",e),onBottomRightAnchorPointerDown:e=>this.interactionHandler.editAnchor("bottom-right",e),onBottomAnchorPointerDown:e=>this.interactionHandler.editAnchor("bottom",e),onLeftAnchorPointerDown:e=>this.interactionHandler.editAnchor("left",e),onRightAnchorPointerDown:e=>this.interactionHandler.editAnchor("right",e),onCenterAnchorPointerDown:e=>this.interactionHandler.editAnchor("center",e)}),this.mode==="create"&&r("div",{class:"create-overlay",onTouchStart:this.handleTouchStart}))}else{return r(s,null,r("div",{class:"create-overlay",onTouchStart:this.handleTouchStart}))}}convertPointsToScreen(){var e;const t=this.elementBounds;if(t!=null){return(e=this.points)===null||e===void 0?void 0:e.map((e=>b(e,t,this.originatingViewport,this.centeringBehavior,this.scale)))}}get hostEl(){return this}static get watchers(){return{viewer:[{handleViewerChanged:0}],originatingViewport:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],offset:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],scale:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0},{handleScaleChange:0}],bounds:[{recomputePointsFromProps:0}],points:[{recomputePointsFromProps:0}],centeringBehavior:[{handleScalingConfigurationChange:0}],mode:[{handleModeChange:0}]}}static get style(){return S()}},[1,"vertex-viewer-markup-freeform",{points:[1040],pointsJson:[1,"points"],bounds:[1040],boundsJson:[1,"bounds"],mode:[513],viewer:[16],originatingViewport:[16],centeringBehavior:[1,"centering-behavior"],offset:[16],scale:[2],elementBounds:[32],screenPoints:[32],dispose:[64]},undefined,{viewer:[{handleViewerChanged:0}],originatingViewport:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],offset:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],scale:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0},{handleScaleChange:0}],bounds:[{recomputePointsFromProps:0}],points:[{recomputePointsFromProps:0}],centeringBehavior:[{handleScalingConfigurationChange:0}],mode:[{handleModeChange:0}]}]);function y(){if(typeof customElements==="undefined"){return}const t=["vertex-viewer-markup-freeform"];t.forEach((t=>{switch(t){case"vertex-viewer-markup-freeform":if(!customElements.get(e(t))){customElements.define(e(t),B)}break}}))}y();export{B as V,y as d};
5
- //# sourceMappingURL=p-Dzs4u_ZY.js.map
4
+ import{t as e,p as t,H as i,d as o,h as r,e as s}from"./p-Bb32XUUS.js";import{g as n,a as h}from"./p-CPROw2BU.js";import{w as a}from"./p-Cd7kap5W.js";import{g as d}from"./p-Bg-uS9BH.js";import{M as u,t as l,l as c,o as p,d as f,q as m,m as v,n as w,S as g,c as b}from"./p-Cs2aiMUK.js";import{B as k}from"./p-Clyxptbp.js";import{p as P,g as C}from"./p-2UsvOTHJ.js";class x extends u{constructor(e,t,i,o){super(o);this.markupEl=e;this.interactionBegin=t;this.interactionEnd=i;this.anchor="bottom-right";this.handleResizeInteractionMove=e=>{if(this.resizeStartPosition!=null&&this.elementBounds!=null&&this.resizeBounds!=null&&this.resizePoints!=null){const t=l(n(e,this.elementBounds),this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);const i=c(this.resizeBounds,this.resizeStartPosition,t,this.anchor,e.shiftKey);this.markupEl.points=p(this.resizePoints,this.resizeBounds,i);this.markupEl.bounds=i}};this.handleResizeInteractionEnd=e=>{window.removeEventListener("pointermove",this.handleResizeInteractionMove);window.removeEventListener("pointerup",this.handleResizeInteractionEnd);this.resizeBounds=undefined;const t=this.markupEl.mode!=="edit";this.interactionEnd.emit({markup:this.markupEl,newlyCreatedMarkup:t})}}editAnchor(e,t){if(this.markupEl.mode==="edit"&&this.elementBounds!=null){this.resizeBounds=this.markupEl.bounds;this.resizePoints=this.markupEl.points;this.anchor=e;this.resizeStartPosition=l(n(t,this.elementBounds),this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);window.addEventListener("pointermove",this.handleResizeInteractionMove);window.addEventListener("pointerup",this.handleResizeInteractionEnd)}}startInteraction(e){this.handleInteractionAttempt(e)}computeBoundingRect(){return d(this.markupEl)}handleInteractionAttempt(e){var t;if(this.markupEl.mode!==""&&this.pointerId==null&&this.elementBounds!=null){this.pointerId=e.pointerId;const i=n(e,this.elementBounds);const o=l(i,this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);this.updateMinAndMax(o);this.markupEl.points=(t=this.markupEl.points)!==null&&t!==void 0?t:[o];this.interactionBegin.emit();this.acceptInteraction()}}handleInteractionMove(e){if(this.pointerId===e.pointerId&&this.markupEl.points!=null&&this.elementBounds!=null){const t=n(e,this.elementBounds);const i=l(t,this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);this.updateMinAndMax(i);this.markupEl.points=[...this.markupEl.points,i]}}handleInteractionEnd(e){if(this.pointerId===e.pointerId){if(this.markupEl.mode!==""&&this.markupEl.points!=null&&this.markupEl.points.length>2&&this.elementBounds!=null){const t=n(e,this.elementBounds);const i=l(t,this.elementBounds,this.scalingOptions.originatingViewport,this.scalingOptions.centeringBehavior,this.scalingOptions.scale,this.scalingOptions.offset);this.updateMinAndMax(i);this.markupEl.points=[...this.markupEl.points,i];const o=this.markupEl.mode!=="edit";this.interactionEnd.emit({markup:this.markupEl,newlyCreatedMarkup:o})}else{this.markupEl.points=undefined}this.min=undefined;this.max=undefined;this.pointerId=undefined}}updateMinAndMax(e){this.min=this.min!=null?P.create(Math.min(this.min.x,e.x),Math.min(this.min.y,e.y)):e;this.max=this.max!=null?P.create(Math.max(this.max.x,e.x),Math.max(this.max.y,e.y)):e;this.markupEl.bounds=C.create(this.min.x,this.min.y,this.max.x-this.min.x,this.max.y-this.min.y)}}const S=()=>`:host{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;--viewer-markup-freeform-stroke-color:var(--red-800);--viewer-markup-freeform-stroke-width:4px;--viewer-markup-freeform-line-join:round;--viewer-markup-freeform-line-cap:round;--viewer-markup-freeform-bounds-outline-border-color:var(--blue-400);--viewer-markup-freeform-bounds-outline-border-width:1px;--viewer-markup-freeform-bounds-edge-anchor-border-color:var(--blue-400);--viewer-markup-freeform-bounds-edge-anchor-border-width:1px;--viewer-markup-freeform-bounds-edge-anchor-background-color:white;--viewer-markup-freeform-bounds-center-anchor-border-color:white;--viewer-markup-freeform-bounds-center-anchor-border-width:1px;--viewer-markup-freeform-bounds-center-anchor-background-color:var( --blue-400 );--viewer-markup-freeform-bounds-anchor-width:9px;--viewer-markup-freeform-bounds-anchor-height:9px;--viewer-markup-freeform-scale:1}.svg{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.path{pointer-events:auto;cursor:default;stroke:var(--viewer-markup-freeform-stroke-color);stroke-width:calc( var(--viewer-markup-freeform-stroke-width) * var(--viewer-markup-freeform-scale) );stroke-linejoin:var(--viewer-markup-freeform-line-join);stroke-linecap:var(--viewer-markup-freeform-line-cap)}.create-overlay{pointer-events:auto;position:absolute;left:0;top:0;width:100%;height:100%;cursor:crosshair}.bounds-container{pointer-events:none;position:absolute;width:100%;height:100%;top:0;left:0;overflow:hidden}.bounds-outline{position:absolute;border-width:var(--viewer-markup-freeform-bounds-outline-border-width);border-color:var(--viewer-markup-freeform-bounds-outline-border-color);border-style:solid;box-shadow:0 0 3px rgba(0, 0, 0, 0.3)}.bounds-anchor-position{position:absolute;transform:translate(-50%, -50%)}.bounds-anchor{pointer-events:auto;cursor:default;user-select:none}.bounds-default-anchor{width:var(--viewer-markup-freeform-bounds-anchor-width);height:var(--viewer-markup-freeform-bounds-anchor-height);box-sizing:border-box;box-shadow:0 0 2px rgba(0, 0, 0, 0.3)}.bounds-center-anchor{border-radius:100%;border-width:var(--viewer-markup-freeform-bounds-center-anchor-border-width);border-color:var(--viewer-markup-freeform-bounds-center-anchor-border-color);border-style:solid;background-color:var( --viewer-markup-freeform-bounds-center-anchor-background-color )}.bounds-edge-anchor{border-width:var(--viewer-markup-freeform-bounds-edge-anchor-border-width);border-color:var(--viewer-markup-freeform-bounds-edge-anchor-border-color);border-style:solid;background-color:var( --viewer-markup-freeform-bounds-edge-anchor-background-color )}`;const B=t(class e extends i{constructor(e){super();if(e!==false){this.__registerHost()}this.__attachShadow();this.interactionBegin=o(this,"interactionBegin");this.interactionEnd=o(this,"interactionEnd");this.mode="";this.centeringBehavior="none";this.scale=1;this.screenPoints=[];this.interactionHandler=new x(this.hostEl,this.interactionBegin,this.interactionEnd,{scale:this.scale,offset:this.offset,originatingViewport:this.originatingViewport,centeringBehavior:this.centeringBehavior});this.handleWindowPointerDown=e=>{if(f(e)){this.interactionHandler.startInteraction(e)}};this.handleTouchStart=e=>{e.preventDefault()}}componentWillLoad(){this.updateViewport();this.handleViewerChanged(this.viewer);this.handleScaleChange();this.handleScalingConfigurationChange();this.updatePointsFromProps()}componentDidLoad(){const e=new ResizeObserver((()=>this.updateViewport()));e.observe(this.hostEl);if(this.mode==="create"){window.addEventListener("pointerdown",this.handleWindowPointerDown)}}disconnectedCallback(){this.dispose()}async dispose(){var e;(e=this.registeredInteraction)===null||e===void 0?void 0:e.dispose();this.registeredInteraction=undefined;window.removeEventListener("pointerdown",this.handleWindowPointerDown)}async handleViewerChanged(e){var t;(t=this.registeredInteraction)===null||t===void 0?void 0:t.dispose();this.registeredInteraction=undefined;if(e!=null){this.registeredInteraction=await e.registerBasicInteractionHandler(this.interactionHandler)}}recomputePointsFromProps(){this.updatePointsFromProps()}handleScalingConfigurationChange(){this.interactionHandler.updateScalingOptions({scale:this.scale,offset:this.offset,originatingViewport:this.originatingViewport,centeringBehavior:this.centeringBehavior})}handleScaleChange(){a((()=>{this.hostEl.style.setProperty("--viewer-markup-freeform-scale",this.scale.toString())}))}handleModeChange(){if(this.mode!=="create"){window.removeEventListener("pointerdown",this.handleWindowPointerDown)}}updateViewport(){var e;const t=d(this.hostEl);this.elementBounds=t;this.screenPoints=(e=this.convertPointsToScreen())!==null&&e!==void 0?e:this.screenPoints}updatePointsFromProps(){var e,t,i;this.points=(e=this.points)!==null&&e!==void 0?e:m(this.pointsJson);this.screenPoints=(t=this.convertPointsToScreen())!==null&&t!==void 0?t:[];this.bounds=(i=this.bounds)!==null&&i!==void 0?i:v(this.boundsJson)}render(){var e,t,i,o;if(this.screenPoints.length>0&&this.elementBounds!=null&&this.elementBounds.width>0&&this.elementBounds.height>0){const n=((t=(e=this.offset)===null||e===void 0?void 0:e.x)!==null&&t!==void 0?t:0)/h();const a=((o=(i=this.offset)===null||i===void 0?void 0:i.y)!==null&&o!==void 0?o:0)/h();return r(s,null,r("svg",{class:"svg",onTouchStart:this.handleTouchStart},r("defs",null,r(g,{id:"freeform-markup-shadow",scale:this.scale})),r("g",{transform:`translate(${n} ${a})`,filter:"url(#freeform-markup-shadow)"},r("path",{class:"path",d:this.screenPoints.reduce(((e,t)=>`${e}L${t.x},${t.y}`),`M${this.screenPoints[0].x},${this.screenPoints[0].y}`),fill:"none"}))),this.mode==="edit"&&this.bounds!=null&&r(k,{bounds:w(this.bounds,this.elementBounds,this.originatingViewport,this.centeringBehavior,this.scale),offset:{x:n,y:a},onTopLeftAnchorPointerDown:e=>this.interactionHandler.editAnchor("top-left",e),onTopRightAnchorPointerDown:e=>this.interactionHandler.editAnchor("top-right",e),onTopAnchorPointerDown:e=>this.interactionHandler.editAnchor("top",e),onBottomLeftAnchorPointerDown:e=>this.interactionHandler.editAnchor("bottom-left",e),onBottomRightAnchorPointerDown:e=>this.interactionHandler.editAnchor("bottom-right",e),onBottomAnchorPointerDown:e=>this.interactionHandler.editAnchor("bottom",e),onLeftAnchorPointerDown:e=>this.interactionHandler.editAnchor("left",e),onRightAnchorPointerDown:e=>this.interactionHandler.editAnchor("right",e),onCenterAnchorPointerDown:e=>this.interactionHandler.editAnchor("center",e)}),this.mode==="create"&&r("div",{class:"create-overlay",onTouchStart:this.handleTouchStart}))}else{return r(s,null,r("div",{class:"create-overlay",onTouchStart:this.handleTouchStart}))}}convertPointsToScreen(){var e;const t=this.elementBounds;if(t!=null){return(e=this.points)===null||e===void 0?void 0:e.map((e=>b(e,t,this.originatingViewport,this.centeringBehavior,this.scale)))}}get hostEl(){return this}static get watchers(){return{viewer:[{handleViewerChanged:0}],originatingViewport:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],offset:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],scale:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0},{handleScaleChange:0}],bounds:[{recomputePointsFromProps:0}],points:[{recomputePointsFromProps:0}],centeringBehavior:[{handleScalingConfigurationChange:0}],mode:[{handleModeChange:0}]}}static get style(){return S()}},[1,"vertex-viewer-markup-freeform",{points:[1040],pointsJson:[1,"points"],bounds:[1040],boundsJson:[1,"bounds"],mode:[513],viewer:[16],originatingViewport:[16],centeringBehavior:[1,"centering-behavior"],offset:[16],scale:[2],elementBounds:[32],screenPoints:[32],dispose:[64]},undefined,{viewer:[{handleViewerChanged:0}],originatingViewport:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],offset:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0}],scale:[{recomputePointsFromProps:0},{handleScalingConfigurationChange:0},{handleScaleChange:0}],bounds:[{recomputePointsFromProps:0}],points:[{recomputePointsFromProps:0}],centeringBehavior:[{handleScalingConfigurationChange:0}],mode:[{handleModeChange:0}]}]);function M(){if(typeof customElements==="undefined"){return}const t=["vertex-viewer-markup-freeform"];t.forEach((t=>{switch(t){case"vertex-viewer-markup-freeform":if(!customElements.get(e(t))){customElements.define(e(t),B)}break}}))}M();export{B as V,M as d};
5
+ //# sourceMappingURL=p-CABws4i9.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["sceneTreeNotificationBannerCss","SceneTreeNotificationBanner","__stencil_proxyCustomElement","HTMLElement","render","h","Host","key","class","name","size","this","message","actionLabel","onClick","action","emit"],"sources":["src/components/scene-tree-notification-banner/scene-tree-notification-banner.css?tag=vertex-scene-tree-notification-banner&encapsulation=shadow","src/components/scene-tree-notification-banner/scene-tree-notification-banner.tsx"],"sourcesContent":[".notification-banner {\n background-color: var(--blue-200);\n padding-top: 0px;\n padding-bottom: 0px;\n padding-right: 16px;\n padding-left: 8px;\n display: flex;\n justify-content: space-between;\n font-size: 0.875rem;\n line-height: 0.5;\n color: var(--neutral-600);\n}\n\n.notification-banner-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.notification-banner-info .icon {\n color: var(--blue-600);\n}\n\n.notification-banner-actions {\n display: flex;\n align-items: center;\n}\n\n.notification-banner-button {\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n cursor: pointer;\n color: var(--blue-600);\n font-size: 0.875rem;\n display: flex;\n align-items: center;\n}\n\n.notification-banner-button:hover {\n color: var(--blue-800);\n}","import { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\n\n/**\n * A notification banner that displays a message and an action button.\n */\n@Component({\n tag: 'vertex-scene-tree-notification-banner',\n styleUrl: 'scene-tree-notification-banner.css',\n shadow: true,\n})\nexport class SceneTreeNotificationBanner {\n /**\n * The message to display in the banner.\n */\n @Prop()\n public message?: string;\n\n /**\n * The label of the action button.\n */\n @Prop()\n public actionLabel?: string;\n\n /**\n * An event that is emitted when the action button is clicked.\n */\n @Event()\n public action!: EventEmitter<void>;\n\n public render(): h.JSX.IntrinsicElements {\n return (\n <Host>\n <div class=\"notification-banner\">\n <div class=\"notification-banner-info\">\n <vertex-viewer-icon class=\"icon\" name=\"info\" size=\"sm\" />\n <p>{this.message}</p>\n </div>\n {this.actionLabel != null && (\n <div class=\"notification-banner-actions\">\n <button\n class=\"notification-banner-button\"\n onClick={() => this.action.emit()}\n >\n {this.actionLabel}\n </button>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":";;;2GAAA,MAAMA,EAAiC,IAAM,unB,MCUhCC,EAA2BC,EAAA,MAAAD,UAAAE,E,8GAmB/B,MAAAC,GACL,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,OAAAE,IAAA,2CAAKC,MAAM,uBACTH,EAAA,OAAAE,IAAA,2CAAKC,MAAM,4BACTH,EAAA,sBAAAE,IAAA,2CAAoBC,MAAM,OAAOC,KAAK,OAAOC,KAAK,OAClDL,EAAA,KAAAE,IAAA,4CAAII,KAAKC,UAEVD,KAAKE,aAAe,MACnBR,EAAA,OAAAE,IAAA,2CAAKC,MAAM,+BACTH,EAAA,UAAAE,IAAA,2CACEC,MAAM,6BACNM,QAAS,IAAMH,KAAKI,OAAOC,QAE1BL,KAAKE,e","ignoreList":[]}
1
+ {"version":3,"names":["sceneTreeNotificationBannerCss","SceneTreeNotificationBanner","__stencil_proxyCustomElement","HTMLElement","render","h","Host","key","class","name","size","this","message","actionLabel","onClick","action","emit"],"sources":["src/components/scene-tree-notification-banner/scene-tree-notification-banner.css?tag=vertex-scene-tree-notification-banner&encapsulation=shadow","src/components/scene-tree-notification-banner/scene-tree-notification-banner.tsx"],"sourcesContent":[".notification-banner {\n background-color: var(--blue-200);\n padding-top: 0px;\n padding-bottom: 0px;\n padding-right: 16px;\n padding-left: 8px;\n display: flex;\n justify-content: space-between;\n font-size: 0.875rem;\n line-height: 0.5;\n color: var(--neutral-600);\n}\n\n.notification-banner-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.notification-banner-info .icon {\n color: var(--blue-600);\n}\n\n.notification-banner-actions {\n display: flex;\n align-items: center;\n}\n\n.notification-banner-button {\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n cursor: pointer;\n color: var(--blue-600);\n font-size: 0.875rem;\n display: flex;\n align-items: center;\n}\n\n.notification-banner-button:hover {\n color: var(--blue-800);\n}\n","import { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\n\n/**\n * A notification banner that displays a message and an action button.\n */\n@Component({\n tag: 'vertex-scene-tree-notification-banner',\n styleUrl: 'scene-tree-notification-banner.css',\n shadow: true,\n})\nexport class SceneTreeNotificationBanner {\n /**\n * The message to display in the banner.\n */\n @Prop()\n public message?: string;\n\n /**\n * The label of the action button.\n */\n @Prop()\n public actionLabel?: string;\n\n /**\n * An event that is emitted when the action button is clicked.\n */\n @Event()\n public action!: EventEmitter<void>;\n\n public render(): h.JSX.IntrinsicElements {\n return (\n <Host>\n <div class=\"notification-banner\">\n <div class=\"notification-banner-info\">\n <vertex-viewer-icon class=\"icon\" name=\"info\" size=\"sm\" />\n <p>{this.message}</p>\n </div>\n {this.actionLabel != null && (\n <div class=\"notification-banner-actions\">\n <button\n class=\"notification-banner-button\"\n onClick={() => this.action.emit()}\n >\n {this.actionLabel}\n </button>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":";;;2GAAA,MAAMA,EAAiC,IAAM,unB,MCUhCC,EAA2BC,EAAA,MAAAD,UAAAE,E,8GAmB/B,MAAAC,GACL,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,OAAAE,IAAA,2CAAKC,MAAM,uBACTH,EAAA,OAAAE,IAAA,2CAAKC,MAAM,4BACTH,EAAA,sBAAAE,IAAA,2CAAoBC,MAAM,OAAOC,KAAK,OAAOC,KAAK,OAClDL,EAAA,KAAAE,IAAA,4CAAII,KAAKC,UAEVD,KAAKE,aAAe,MACnBR,EAAA,OAAAE,IAAA,2CAAKC,MAAM,+BACTH,EAAA,UAAAE,IAAA,2CACEC,MAAM,6BACNM,QAAS,IAAMH,KAAKI,OAAOC,QAE1BL,KAAKE,e","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{p as n}from"./p-CZZALKHT.js";function t(t,r){const e=n.create(t.clientX,t.clientY);if(r==null){return e}else{return n.subtract(e,n.create(r.left,r.top))}}function r(n){const{x:t,y:r}=n;return`translate(-50%, -50%) translate(${t}px, ${r}px)`}function e(n){var t,r;if(typeof n==="string"){return n}else{const e=[`url("${n.url}")`,(t=n.offsetX)!==null&&t!==void 0?t:0,(r=n.offsetY)!==null&&r!==void 0?r:0,", auto"];return e.join(" ")}}function o(){if(typeof window!=="undefined"){return window.devicePixelRatio}return 1}export{o as a,r as b,e as c,t as g};
5
- //# sourceMappingURL=p-BqeEZXPn.js.map
4
+ import{p as n}from"./p-2UsvOTHJ.js";function t(t,r){const e=n.create(t.clientX,t.clientY);if(r==null){return e}else{return n.subtract(e,n.create(r.left,r.top))}}function r(n){const{x:t,y:r}=n;return`translate(-50%, -50%) translate(${t}px, ${r}px)`}function e(n){var t,r;if(typeof n==="string"){return n}else{const e=[`url("${n.url}")`,(t=n.offsetX)!==null&&t!==void 0?t:0,(r=n.offsetY)!==null&&r!==void 0?r:0,", auto"];return e.join(" ")}}function o(){if(typeof window!=="undefined"){return window.devicePixelRatio}return 1}export{o as a,r as b,e as c,t as g};
5
+ //# sourceMappingURL=p-CPROw2BU.js.map
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
+ */
4
+ import{c as e,u as t,b as s,a as n}from"./p-CDM7zNn0.js";import{c as i,d as r,e as a}from"./p--8q6LyIm.js";import{u as o,m as u,a as h,p as c,b as l,r as d}from"./p-B8530k7R.js";import{s as p,w}from"./p-FRKLa468.js";import{r as v,c as f}from"./p-CioaIHsi.js";import{v as y,f as m,c as x,m as g,q as I,r as b,p as S,e as B}from"./p-2UsvOTHJ.js";import{R,t as V,T as A,u as E,e as k,g as T,U as q,V as C}from"./p-BjvjKoy7.js";import{v as P,t as M,L as O}from"./p-5kcpg4MZ.js";const j={opacity:255,glossiness:4,diffuse:{r:0,g:0,b:0,a:0},ambient:{r:0,g:0,b:0,a:0},specular:{r:0,g:0,b:0,a:0},emissive:{r:0,g:0,b:0,a:0}};const _=(e,t,s,n)=>({...j,opacity:n!==null&&n!==void 0?n:j.opacity,diffuse:{r:e,g:t,b:s,a:0}});const D=(t,s)=>{const n=e.fromHexString(t);return{...j,opacity:s!==null&&s!==void 0?s:j.opacity,diffuse:n!=null?{...n}:{...j.diffuse}}};var U=Object.freeze({__proto__:null,create:_,defaultColor:j,fromHex:D});function F(e){var s;const n=t.parse(e);if(n.scheme!=="urn"||n.path==null){throw new Error("Invalid URN. Expected URN scheme.")}const[r,a,o,...u]=n.path.split(/[:/]/);if(r!=="vertexvis"&&r!=="vertex"){throw new Error("Invalid URN. Expected URN to be vertex namespace")}if(r==="vertexvis"){console.warn("vertexvis namespace is deprecated. Use 'vertex' for the namespace urn instead")}switch(a){case"stream-key":const e=N(n.query);const t=(s=z(u.join("/")))!==null&&s!==void 0?s:e.find((e=>e.type==="scene-view-state"));return{resource:{type:"stream-key",id:o},subResource:t,queries:e.filter((e=>e.type!=="scene-view-state"))};default:throw new i(`Invalid URN. Unknown resource type ${a}`)}}function z(e){if(e!=null){const[t,s]=e.split("/");switch(t){case"scene-view-states":return{type:"scene-view-state",id:s};default:return undefined}}}function N(e){if(e!=null){return e.split("&").map((e=>{const[t,s]=e.split("=");switch(t){case"supplied-id":return{type:"supplied-id",id:s};case"scene-view-state":return{type:"scene-view-state",id:s};default:throw new Error("Invalid URN. Unknown query value type")}}))}else{return[]}}var H=Object.freeze({__proto__:null,fromUrn:F});function L(e){return e.id!=null}function Y(e){return e.suppliedId!=null}var K=Object.freeze({__proto__:null,isSceneViewStateId:L,isSceneViewStateSuppliedId:Y});class Q{constructor(e,t=new Date){this.knownRemoteTime=e;this.knownLocalTime=t}localOffset(){return this.duration(this.knownLocalTime,this.localNow())}localTime(e){const t=typeof e==="number"?new Date(this.knownLocalTime.getTime()+e):e;const s=this.duration(this.knownRemoteTime,t);return this.addDuration(this.knownLocalTime,s)}remoteOffset(e=new Date){return this.duration(this.remoteTime(this.knownLocalTime),this.remoteTime(e))}remoteNow(){return this.remoteTime(this.localNow())}remoteTime(e){const t=typeof e==="number"?new Date(this.knownLocalTime.getTime()+e):e;const s=this.duration(this.knownLocalTime,t);return this.addDuration(this.knownRemoteTime,s)}addDuration(e,t){return new Date(e.getTime()+t)}duration(e,t){return t.getTime()-e.getTime()}localNow(){return new Date(Date.now())}}function J(e){const t=s.toMsbLsb(e);const n=new o.Uuid2l;n.setMsb(t.msb);n.setLsb(t.lsb);return n}class W{constructor(e,t,s,n){this.client=e;this.stream=t;this.jwtProvider=s;this.deviceIdProvider=n}async listByItem(e,{hasAnnotations:t,cursor:s,size:n=50}={}){const i=await v((async i=>{const r=this.deviceIdProvider();const a=await f(this.jwtProvider,r);const o=new p.ListItemModelViewsRequest;const u=J(e);o.setItemId(u);if(t!=null){const e=new w.BoolValue;e.setValue(t);o.setHasAnnotations(e)}const h=new c.Pager;h.setLimit(n);if(s!=null){h.setCursor(s)}o.setPage(h);this.client.listItemModelViews(o,a,i)}));return u(i.toObject())}async load(e,t){const s=h({modelViewId:t,sceneItemId:e});this.stream.updateModelView({itemModelView:s},true)}async unload(){await this.stream.updateModelView({},true)}}class Z{constructor(e,t,s){this.client=e;this.jwtProvider=t;this.deviceIdProvider=s}async listAnnotations({modelViewId:e,cursor:t,size:s=50}={}){const n=await v((async n=>{const i=this.deviceIdProvider();const r=await f(this.jwtProvider,i);const a=new p.ListPmiAnnotationsRequest;if(e!=null){const t=J(e);a.setModelViewId(t)}const o=new c.Pager;o.setLimit(s);if(t!=null){o.setCursor(t)}a.setPage(o);this.client.listPmiAnnotations(a,r,n)}));return l(n.toObject())}}const $=1e3*10;class G{constructor(e,t,s,n=$){this.stream=e;this.predicate=t;this.transform=s;this.timeout=n;this.listeners=[];this.handleMessage=this.handleMessage.bind(this)}on(e){this.listeners=[...this.listeners,e];if(this.eventDisposable==null||this.requestDisposable==null){this.addListeners()}}off(e){this.listeners=this.listeners.filter((t=>t!==e));if(this.listeners.length===0){this.removeListeners()}}once(){let e;return n.timeout(this.timeout,new Promise((t=>{e=s=>{t(s);this.off(e)};this.on(e)}))).finally((()=>{this.off(e)}))}handleMessage(e){if(this.predicate(e)){const t=this.transform(e);if(t!=null){this.listeners.forEach((e=>e(t)))}}}addListeners(){this.eventDisposable=this.stream.onEvent(this.handleMessage);this.requestDisposable=this.stream.onRequest(this.handleMessage)}removeListeners(){var e,t;(e=this.eventDisposable)===null||e===void 0?void 0:e.dispose();(t=this.requestDisposable)===null||t===void 0?void 0:t.dispose()}}class X{constructor(e,t,{animationId:s,correlationId:n},i){this.data=undefined;this.onAnimationCompleted=new G(e,(e=>{var t,n,i;return((i=(n=(t=e.event)===null||t===void 0?void 0:t.animationCompleted)===null||n===void 0?void 0:n.animationId)===null||i===void 0?void 0:i.hex)===s}),(e=>{var t,s,n;return((n=(s=(t=e.event)===null||t===void 0?void 0:t.animationCompleted)===null||s===void 0?void 0:s.animationId)===null||n===void 0?void 0:n.hex)||undefined}),i);this.onFrameReceived=new G(e,(e=>{var t,s,i;return!!((i=(s=(t=e.request)===null||t===void 0?void 0:t.drawFrame)===null||s===void 0?void 0:s.frameCorrelationIds)===null||i===void 0?void 0:i.some((e=>e===n)))}),(e=>{var s;return((s=e.request)===null||s===void 0?void 0:s.drawFrame)!=null?t(e.request.drawFrame):undefined}),i)}}function ee(e){if(typeof e==="string"){return{sceneViewStateId:{hex:e}}}else if(L(e)){return{sceneViewStateId:{hex:e.id}}}else if(Y(e)){return{sceneViewStateSuppliedId:{value:e.suppliedId}}}else{throw new Error("Unable to build scene view state identifier, input must be a string or `SceneViewStateIdentifier`.")}}function te(e,t){switch(e.type){case"and":case"or":return{operand:{itemCollection:{queries:e.expressions.map((e=>({sceneItemQuery:re(e)})))}}};case"not":return{not:{expression:te(e.query,t)}};case"item-id":case"supplied-id":return{operand:{item:{sceneItemQuery:re(e)}}};case"all":return{operand:{root:{}}};case"scene-tree-range":return{operand:{sceneTreeRange:{start:e.range.start,end:e.range.end}}};case"metadata":if(e.removeHiddenItems){return{and:{first:{operand:{metadata:{valueFilter:e.filter,keys:e.keys,exactMatch:e.exactMatch}}},second:{operand:{override:{visibility:{visibilityState:true}}}}}}}else{return{operand:{metadata:{valueFilter:e.filter,keys:e.keys,exactMatch:e.exactMatch}}}}case"all-selected":return{operand:{override:{selection:{}}}};case"all-visible":return{operand:{override:{visibility:{visibilityState:true}}}};case"point":return{operand:{point:{point:e.point,viewport:t.dimensions}}};case"volume-intersection":return{operand:{volume:{frustumByRectangle:{rectangle:e.rectangle},exclusive:e.exclusive,viewport:t.dimensions}}};default:return{}}}function se(e,t){switch(e.type){case"and":const t=e.expressions.length;if(t===1){return se({type:"annotation-id",value:e.expressions[0].value})}else if(t!==2){throw new Error("Incorrect number of query expressions provided.")}return{and:{first:se(e.expressions[0]),second:se(e.expressions[1])}};case"or":const n=e.expressions.length;if(n===1){return se({type:"annotation-id",value:e.expressions[0].value})}else if(n!==2){throw new Error("Incorrect number of query expressions provided.")}return{or:{first:se(e.expressions[0]),second:se(e.expressions[1])}};case"not":return{not:{expression:se(e.query)}};case"annotation-id":const{msb:i,lsb:r}=s.toMsbLsb(e.value);return{operand:{annotation:{id:new P.protobuf.core.Uuid2l({msb:O.fromString(i),lsb:O.fromString(r)})}}};case"all":return{operand:{all:{}}};default:return{}}}function ne(e,t,s){const n=oe(t);const i=te(e,s);return{sceneItemOperation:{queryExpression:i,operationTypes:n}}}function ie(e,t,s){const n=ue(t);const i=se(e);return{pmiAnnotationOperation:{queryExpression:i,operationTypes:n}}}function re(e){switch(e.type){case"item-id":return{id:new P.protobuf.core.Uuid({hex:e.value})};case"supplied-id":return{suppliedId:e.value};default:return{}}}function ae(e,t,s,n,i=false){const{type:r,data:a}=t.flyTo;const o={frameCorrelationId:{value:e}};if(s!=null){o.animation={duration:M(s.milliseconds)}}if(n!=null){if(i||R(n)){o.baseCamera=V(n)}}switch(r){case"supplied":o.itemSuppliedId=a;break;case"internal":o.itemId=new P.protobuf.core.Uuid({hex:a});break;case"camera":o.camera=V(a);break;case"scene-item-query":o.sceneItemQueryExpression=a;break;case"bounding-box":o.boundingBox={xmin:a.min.x,xmax:a.max.x,ymin:a.min.y,ymax:a.max.y,zmin:a.min.z,zmax:a.max.z};break}return o}function oe(e){return e.map((e=>{var t,s;switch(e.type){case"change-material":return{changeMaterial:{materialOverride:{colorMaterial:{d:e.material.opacity,ns:e.material.glossiness,ka:e.material.ambient,kd:e.material.diffuse,ks:e.material.specular,ke:e.material.emissive}}}};case"clear-override":return{clearMaterial:{}};case"change-transform":return{changeTransform:{transform:{...e.transform}}};case"clear-transform":return{clearTransform:{cascade:e.cascade}};case"hide":return{changeVisibility:{visible:false}};case"show":return{changeVisibility:{visible:true}};case"select":return{changeSelection:{selected:true}};case"deselect":return{changeSelection:{selected:false}};case"change-phantom":return{changePhantom:{phantom:(t=e.phantomState)!==null&&t!==void 0?t:true}};case"clear-phantom":return{changePhantom:{phantom:false}};case"change-end-item":return{changeEndItem:{endItem:(s=e.endItemState)!==null&&s!==void 0?s:true}};case"clear-end-item":return{changeEndItem:{endItem:false}};case"view-rendition-by-id":return{viewRendition:{id:new P.protobuf.core.Uuid({hex:e.id})}};case"view-rendition-by-supplied-id":return{viewRendition:{suppliedId:e.suppliedId}};case"view-default-rendition":return{viewDefaultRendition:{}};case"clear-rendition":return{clearRendition:{}};case"view-representation":if(e.id==="empty"){return{viewRepresentation:{predefinedId:d.RepresentationPredefinedId.REPRESENTATION_PREDEFINED_ID_EMPTY}}}else if(e.id==="entire-part"){return{viewRepresentation:{predefinedId:d.RepresentationPredefinedId.REPRESENTATION_PREDEFINED_ID_ENTIRE_PART}}}else{return{viewRepresentation:{id:new P.protobuf.core.Uuid({hex:e.id})}}}case"clear-representation":return{clearRepresentation:{}};default:return{}}}))}function ue(e){return e.map((e=>{switch(e.type){case"show":return{changeVisibility:{visible:true}};case"hide":return{changeVisibility:{visible:false}};case"select":return{changeSelection:{selected:true}};case"deselect":return{changeSelection:{selected:false}};default:return{}}}))}function he(e){return e.map((e=>{switch(e){case"camera":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_CAMERA;case"material_overrides":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_MATERIAL_OVERRIDE;case"selection":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_SELECTION;case"visibility":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_VISIBILITY;case"transforms":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_TRANSFORM;case"cross_section":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_CROSS_SECTION;case"phantom":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_PHANTOM;case"shading":return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_SHADING;default:return P.protobuf.stream.SceneViewStateFeature.SCENE_VIEW_STATE_FEATURE_INVALID}}))}class ce{constructor(e){this.flyToOptions=e}build(){return this.flyToOptions}}class le{withItemId(e){return new ce({flyTo:{type:"internal",data:e}})}withSuppliedId(e){return new ce({flyTo:{type:"supplied",data:e}})}withCamera(e){return new ce({flyTo:{type:"camera",data:e}})}withBoundingBox(e){return new ce({flyTo:{type:"bounding-box",data:e}})}build(){return this.flyToOptions}}class de{constructor(e,t,s,n,i,r){this.stream=e;this.aspect=t;this.data=s;this.boundingBox=n;this.decodeFrame=i;this.flyToOptions=r;this.hasInitiallyValidFrameCamera=R(s)}fitToBoundingBox(e){return this.flyTo({boundingBox:e})}signedDistanceToBoundingBoxCenter(e){const{position:t,viewVector:s}=q(this.data);const n=x.center(e!==null&&e!==void 0?e:this.boundingBox);const i=y.subtract(n,t);return y.dot(s,i)/y.magnitude(s)}flyTo(e){if(typeof e!=="function"){const t=this.buildFlyToType(e);return this.updateFlyToOptions({flyTo:t})}else{return this.updateFlyToOptions(e(new le).build())}}viewAll(){return this.fitToBoundingBox(this.boundingBox)}async render(e={}){var t,n,i,r;if(this.flyToOptions==null&&e.animation){this.flyToOptions={flyTo:{type:"camera",data:this.data}}}try{(t=e.correlationId)!==null&&t!==void 0?t:e.correlationId=s.create();if(this.flyToOptions!=null){const t=ae(e.correlationId,this.flyToOptions,e.animation,this.toFrameCamera(),this.hasInitiallyValidFrameCamera&&e.skipCameraValidation);const s=await this.stream.flyTo(t,true);return new X(this.stream,this.decodeFrame,{correlationId:e.correlationId,animationId:((i=(n=s.flyTo)===null||n===void 0?void 0:n.animationId)===null||i===void 0?void 0:i.hex)||undefined},((r=e.animation)===null||r===void 0?void 0:r.milliseconds)!=null?e.animation.milliseconds+$:undefined)}else{this.stream.replaceCamera({camera:V(this.data),frameCorrelationId:{value:e.correlationId}});return new X(this.stream,this.decodeFrame,{correlationId:e.correlationId})}}catch(e){console.warn("Error when performing render: ",e);throw e}}rotateAroundAxis(e,t){return this.rotateAroundAxisAtPoint(e,this.data.lookAt,t)}alignTo(e,t){const s=y.normalize(y.cross(this.up,y.normalize(this.viewVector)));const n=y.normalize(y.cross(y.normalize(this.viewVector),s));const i=y.angleTo(t,n)>Math.PI/2?y.negate(n):n;const r=y.isEqual(i,t)?s:y.normalize(y.cross(i,t));const a=y.multiplyByTransformMatrixRowMajor(this.viewVector,g.makeRotation(I.fromAxisAngle(r,y.angleTo(t,i))));const o=b.create({origin:e,direction:y.normalize(a)});const u=b.at(o,y.magnitude(this.viewVector));return this.update({position:e,lookAt:u,up:t})}standardView(e){return this.update({position:e.position,viewVector:y.subtract(y.origin(),e.position),lookAt:y.origin(),up:e.up})}standardViewFixedLookAt(e){const t=b.create({origin:this.lookAt,direction:y.normalize(e.position)});const s=b.at(t,y.magnitude(this.viewVector));return this.update({up:e.up,position:s,viewVector:y.subtract(this.lookAt,s)})}buildFlyToType(e){if(e.boundingBox!=null){return{type:"bounding-box",data:e.boundingBox}}else if(e.camera!=null){return{type:"camera",data:e.camera}}else if(e.itemId!=null){return{type:"internal",data:e.itemId}}else if(e.itemSuppliedId!=null){return{type:"supplied",data:e.itemSuppliedId}}else if(e.sceneItemQueryExpression!=null){return{type:"scene-item-query",data:e.sceneItemQueryExpression}}else{throw new Error("Fly to must specify at least one option.")}}computeClippingPlanes(e){return C(this.boundingBox,e)}}class pe extends de{constructor(e,t,s,n,i,r){super(e,t,s,n,i,r);this.perspectiveData=s}moveBy(e){return this.update({position:y.add(this.position,e),lookAt:y.add(this.lookAt,e)})}rotateAroundAxisAtPoint(e,t,s){return this.update({position:y.rotateAboutAxis(e,this.position,s,t),lookAt:y.rotateAboutAxis(e,this.lookAt,s,t),up:y.rotateAboutAxis(e,this.up,s,y.origin())})}update(e){var t;const s=(t=e.fovY)!==null&&t!==void 0?t:this.fovY;return new pe(this.stream,this.aspect,{...this.perspectiveData,...e,fovY:s},this.boundingBox,this.decodeFrame,this.flyToOptions)}toFrameCamera(){var e;return new T(this.position,this.lookAt,this.up,this.near,this.far,this.aspectRatio,(e=this.fovY)!==null&&e!==void 0?e:45)}get viewVector(){return y.subtract(this.lookAt,this.position)}get position(){return{...this.perspectiveData.position}}get up(){return{...this.perspectiveData.up}}get lookAt(){return{...this.perspectiveData.lookAt}}get fovY(){return this.perspectiveData.fovY}get aspectRatio(){return this.aspect}get near(){const{near:e}=this.computeClippingPlanes(this.perspectiveData);return e}get far(){const{far:e}=this.computeClippingPlanes(this.perspectiveData);return e}updateFlyToOptions(e){return new pe(this.stream,this.aspect,this.perspectiveData,this.boundingBox,this.decodeFrame,e)}}class we extends de{constructor(e,t,s,n,i,r){super(e,t,s,n,i,r);this.orthographicData=s}moveBy(e){const t=y.add(this.lookAt,e);return this.update({lookAt:t,rotationPoint:t})}rotateAroundAxisAtPoint(e,t,s){const n=y.rotateAboutAxis(e,this.lookAt,s,t);const i=y.rotateAboutAxis(e,this.position,s,t);const r=A(y.subtract(n,i),m.create(this.boundingBox));return this.update({viewVector:r,lookAt:n,up:y.rotateAboutAxis(e,this.up,s,y.origin())})}update(e){return new we(this.stream,this.aspect,{...this.orthographicData,...e},this.boundingBox,this.decodeFrame,this.flyToOptions)}toFrameCamera(){const e=m.create(this.boundingBox);const t=A(this.viewVector,e);const s=E(this.lookAt,t,e.center);return new k(t,s,this.up,this.near,this.far,this.aspectRatio,this.fovHeight,this.rotationPoint)}get viewVector(){return{...this.orthographicData.viewVector}}get position(){return y.add(this.lookAt,y.negate(this.viewVector))}get rotationPoint(){const e=this.orthographicData.rotationPoint;if(e!=null){return e}else{return undefined}}get up(){return{...this.orthographicData.up}}get lookAt(){return{...this.orthographicData.lookAt}}get fovHeight(){return this.orthographicData.fovHeight}get aspectRatio(){return this.aspect}get near(){const{near:e}=this.computeClippingPlanes(this.orthographicData);return e}get far(){const{far:e}=this.computeClippingPlanes(this.orthographicData);return e}updateFlyToOptions(e){return new we(this.stream,this.aspect,this.orthographicData,this.boundingBox,this.decodeFrame,e)}}class ve{constructor(e,t){this.stream=e;this.data=t}async update(e){const t=await this.stream.updateCrossSectioning({crossSectioning:{sectionPlanes:e.sectionPlanes,highlightColor:e.highlightColor,lineWidth:(e===null||e===void 0?void 0:e.lineWidth)!=null?{value:e.lineWidth}:null}},true);return t.updateCrossSectioning||undefined}current(){return this.data}}class fe{constructor(e=[]){this.operations=e}build(){return this.operations.concat()}materialOverride(e){return new fe(this.operations.concat([{type:"change-material",material:e}]))}show(){return new fe(this.operations.concat([{type:"show"}]))}hide(){return new fe(this.operations.concat([{type:"hide"}]))}select(){return new fe(this.operations.concat([{type:"select"}]))}deselect(){return new fe(this.operations.concat([{type:"deselect"}]))}clearMaterialOverrides(){return new fe(this.operations.concat([{type:"clear-override"}]))}transform(e){return new fe(this.operations.concat([{type:"change-transform",transform:e}]))}clearTransforms(e=true){return new fe(this.operations.concat([{type:"clear-transform",cascade:e}]))}setPhantom(e){return new fe(this.operations.concat([{type:"change-phantom",phantomState:e}]))}clearPhantom(){return new fe(this.operations.concat([{type:"clear-phantom"}]))}setEndItem(e){return new fe(this.operations.concat([{type:"change-end-item",endItemState:e}]))}clearEndItem(){return new fe(this.operations.concat([{type:"clear-end-item"}]))}viewRenditionById(e){return new fe(this.operations.concat([{type:"view-rendition-by-id",id:e}]))}viewRenditionBySuppliedId(e){return new fe(this.operations.concat([{type:"view-rendition-by-supplied-id",suppliedId:e}]))}viewDefaultRendition(){return new fe(this.operations.concat([{type:"view-default-rendition"}]))}clearRendition(){return new fe(this.operations.concat([{type:"clear-rendition"}]))}viewRepresentation(e){return new fe(this.operations.concat({type:"view-representation",id:e}))}clearRepresentation(){return new fe(this.operations.concat({type:"clear-representation"}))}}class ye{constructor(e=[]){this.operations=e}build(){return this.operations.concat()}show(){return new ye(this.operations.concat([{type:"show"}]))}hide(){return new ye(this.operations.concat([{type:"hide"}]))}select(){return new ye(this.operations.concat([{type:"select"}]))}deselect(){return new ye(this.operations.concat([{type:"deselect"}]))}}class me{constructor(e,t){this.stream=e;this.imageScaleProvider=t}async hitItems(e,t){const s=this.imageScaleProvider();const n=await this.stream.hitItems({point:S.scale(e,(s===null||s===void 0?void 0:s.x)||1,(s===null||s===void 0?void 0:s.y)||1),includeMetadata:t===null||t===void 0?void 0:t.includeMetadata},true);return n.hitItems||undefined}}const xe=1e3*30;class ge{constructor(e,t,s,n){this.onFrameDrawn=new G(e,(e=>{var t,n,i;return!!((i=(n=(t=e.request)===null||t===void 0?void 0:t.drawFrame)===null||n===void 0?void 0:n.frameCorrelationIds)===null||i===void 0?void 0:i.some((e=>e===s)))}),(e=>{var s;return((s=e.request)===null||s===void 0?void 0:s.drawFrame)!=null?t(e.request.drawFrame):undefined}),n!==null&&n!==void 0?n:xe)}}class Ie{constructor(e,t,s,n,i){this.stream=e;this.decodeFrame=t;this.encodeCameraType=s;this.sceneId=n;this.sceneViewId=i}async applySceneViewState(e,t={}){const s=ee(e);await this.animateToSceneViewState(s,t);return await this.stream.loadSceneViewState({...s,frameCorrelationId:t.suppliedCorrelationId?{value:t.suppliedCorrelationId}:undefined,cameraType:t.cameraTypeOverride?this.encodeCameraType(t.cameraTypeOverride):undefined},true)}async applyPartialSceneViewState(e,t,s={}){const n=ee(e);const i=he(t);if(t.includes("camera")){await this.animateToSceneViewState(n,s)}return await this.stream.loadSceneViewState({...n,frameCorrelationId:s.suppliedCorrelationId?{value:s.suppliedCorrelationId}:undefined,sceneViewStateFeatureSubset:i,cameraType:s.cameraTypeOverride?this.encodeCameraType(s.cameraTypeOverride):undefined},true)}async animateToSceneViewState(e,t){var n,i,r;if(t.animation!=null){const a=s.create();const o=await this.stream.flyTo({sceneViewStateIdentifier:e,animation:{duration:M(t.animation.milliseconds)},frameCorrelationId:{value:a}},true);if(t.waitForAnimation==null||t.waitForAnimation){const e=new X(this.stream,this.decodeFrame,{animationId:(r=(i=(n=o.flyTo)===null||n===void 0?void 0:n.animationId)===null||i===void 0?void 0:i.hex)!==null&&r!==void 0?r:undefined,correlationId:a},t.animation.milliseconds+$);await e.onAnimationCompleted.once()}}}}class be{constructor(e,t){this.query=e;this.builder=t!==null&&t!==void 0?t:new fe}isItemBuilder(){return true}isAnnotationBuilder(){return false}materialOverride(e){if(typeof e==="string"){return new be(this.query,this.builder.materialOverride(D(e)))}else{return new be(this.query,this.builder.materialOverride(e))}}hide(){return new be(this.query,this.builder.hide())}show(){return new be(this.query,this.builder.show())}select(){return new be(this.query,this.builder.select())}deselect(){return new be(this.query,this.builder.deselect())}clearMaterialOverrides(){return new be(this.query,this.builder.clearMaterialOverrides())}transform(e){if(Array.isArray(e)){if(e.length!==16){throw new a("Matrix provided must contain exactly 16 values (4x4).")}return new be(this.query,this.builder.transform({r0:{x:e[0],y:e[1],z:e[2],w:e[3]},r1:{x:e[4],y:e[5],z:e[6],w:e[7]},r2:{x:e[8],y:e[9],z:e[10],w:e[11]},r3:{x:e[12],y:e[13],z:e[14],w:e[15]}}))}else{return new be(this.query,this.builder.transform(e))}}clearTransforms(e=true){return new be(this.query,this.builder.clearTransforms(e))}setPhantom(e){return new be(this.query,this.builder.setPhantom(e))}clearPhantom(){return new be(this.query,this.builder.clearPhantom())}setEndItem(e){return new be(this.query,this.builder.setEndItem(e))}clearEndItem(){return new be(this.query,this.builder.clearEndItem())}viewRenditionById(e){return new be(this.query,this.builder.viewRenditionById(e))}viewRenditionBySuppliedId(e){return new be(this.query,this.builder.viewRenditionBySuppliedId(e))}viewDefaultRendition(){return new be(this.query,this.builder.viewDefaultRendition())}clearRendition(){return new be(this.query,this.builder.clearRendition())}viewRepresentation(e){return new be(this.query,this.builder.viewRepresentation(e))}clearRepresentation(){return new be(this.query,this.builder.clearRepresentation())}build(){return{query:this.query,operations:this.builder.build()}}}class Se{constructor(e,t){this.query=e;this.builder=t!==null&&t!==void 0?t:new ye}isItemBuilder(){return false}isAnnotationBuilder(){return true}hide(){return new Se(this.query,this.builder.hide())}show(){return new Se(this.query,this.builder.show())}select(){return new Se(this.query,this.builder.select())}deselect(){return new Se(this.query,this.builder.deselect())}build(){return{query:this.query,operations:this.builder.build()}}}class Be{constructor(e,t,s,n,i,r){this.sceneViewId=e;this.stream=t;this.decodeFrame=s;this.dimensions=n;this.sceneItemQueryOperations=i;this.pmiAnnotationQueryOperations=r}async execute(e){var t;const n=this.sceneItemQueryOperations.map((e=>ne(e.query,e.operations,{dimensions:this.dimensions})));const i=this.pmiAnnotationQueryOperations.map((e=>ie(e.query,e.operations)));const r=(t=e===null||e===void 0?void 0:e.suppliedCorrelationId)!==null&&t!==void 0?t:s.create();const a={sceneViewId:{hex:this.sceneViewId},elementOperations:[...n,...i],suppliedCorrelationId:{value:r}};await this.stream.createSceneAlteration(a)}}class Re extends Be{async execute(e){var t;if(e===null||e===void 0?void 0:e.awaitCorrelatedFrame){const n=(t=e.suppliedCorrelationId)!==null&&t!==void 0?t:s.create();const i=new ge(this.stream,this.decodeFrame,n);await super.execute({...e,suppliedCorrelationId:n});await i.onFrameDrawn.once()}else{await super.execute(e)}}}class Ve extends Be{async execute(e){var t;if(e===null||e===void 0?void 0:e.skipAwaitCorrelatedFrame){await super.execute(e)}else{const n=(t=e===null||e===void 0?void 0:e.suppliedCorrelationId)!==null&&t!==void 0?t:s.create();const i=new ge(this.stream,this.decodeFrame,n);await super.execute({...e,suppliedCorrelationId:n});await i.onFrameDrawn.once()}}}class Ae{constructor(e,t,s,n,i,r,a,o){this.stream=e;this.frame=t;this.decodeFrame=s;this.encodeCameraType=n;this.imageScaleProvider=i;this.dimensions=r;this.sceneId=a;this.sceneViewId=o;this.sceneViewStateLoader=new Ie(e,s,n,a,o)}async applySceneViewState(e,t={}){return await this.sceneViewStateLoader.applySceneViewState(e,t)}async applyPartialSceneViewState(e,t,s={}){return await this.sceneViewStateLoader.applyPartialSceneViewState(e,t,s)}async reset(e={}){return await this.stream.resetSceneView({includeCamera:e.includeCamera,frameCorrelationId:e.suppliedCorrelationId?{value:e.suppliedCorrelationId}:undefined,cameraType:e.cameraTypeOverride?this.encodeCameraType(e.cameraTypeOverride):undefined},true)}items(e){const t=e(new We);const s=Array.isArray(t)?t:[t];const n=s.filter((e=>e.isItemBuilder()));const i=n.reduce(((e,t)=>e.concat(t.build())),[]);return new Re(this.sceneViewId,this.stream,this.decodeFrame,this.dimensions,i,[])}elements(e){const t=e(new Qe);const s=Array.isArray(t)?t:[t];const n=s.filter((e=>e.isItemBuilder()));const i=n.reduce(((e,t)=>e.concat(t.build())),[]);const r=s.filter((e=>e.isAnnotationBuilder()));const a=r.reduce(((e,t)=>e.concat(t.build())),[]);return new Ve(this.sceneViewId,this.stream,this.decodeFrame,this.dimensions,i,a)}camera(){const{scene:e}=this.frame;if(e.camera.isOrthographic()){return new we(this.stream,B.aspectRatio(this.viewport()),{viewVector:e.camera.viewVector,lookAt:e.camera.lookAt,up:e.camera.up,fovHeight:e.camera.fovHeight,rotationPoint:e.camera.lookAt},this.frame.scene.boundingBox,this.decodeFrame)}else if(e.camera.isPerspective()){return new pe(this.stream,B.aspectRatio(this.viewport()),{position:e.camera.position,lookAt:e.camera.lookAt,up:e.camera.up,fovY:e.camera.fovY},this.frame.scene.boundingBox,this.decodeFrame)}else{throw new r("Cannot retrieve camera. Scene has an unknown or invalid camera type.")}}isOrthographic(){const{scene:e}=this.frame;return e.camera.isOrthographic()}boundingBox(){return this.frame.scene.boundingBox}crossSectioning(){return new ve(this.stream,this.frame.scene.crossSection)}raycaster(){return new me(this.stream,this.imageScaleProvider)}viewport(){return this.frame.dimensions}scale(){return this.imageScaleProvider()||S.create(1,1)}}class Ee{constructor(e){this.inverted=e}build(){if(this.inverted){return{type:"not",query:this.queryExpressionBuilder()}}else{return this.queryExpressionBuilder()}}}class ke{constructor(e=false){this.inverted=e}all(){return new Pe}not(){return new Te(!this.inverted)}withItemIds(e){return new Fe(e,"item-id",this.inverted)}withSuppliedIds(e){return new Fe(e,"supplied-id",this.inverted)}withItemId(e){return new ze({type:"item-id",value:e},this.inverted)}withSuppliedId(e){return new ze({type:"supplied-id",value:e},this.inverted)}withSceneTreeRange(e){return new Me(e,this.inverted)}withMetadata(e,t,s,n){return new Oe(e,t,s,this.inverted,n)}withSelected(){return new je(this.inverted)}withVisible(){return new _e(this.inverted)}withPoint(e){return new De(e,this.inverted)}withVolumeIntersection(e,t){return new Ue(e,this.inverted,t)}}class Te extends ke{constructor(e){super(e)}}class qe{constructor(e=false){this.inverted=e}all(){return new Pe}not(){return new Ce(!this.inverted)}withAnnotationIds(e){return new Fe(e,"annotation-id",this.inverted)}withAnnotationId(e){return new Le({type:"annotation-id",value:e},this.inverted)}}class Ce extends qe{constructor(e){super(e)}}class Pe extends Ee{constructor(e=false){super(e)}queryExpressionBuilder(){return{type:"all"}}}class Me extends Ee{constructor(e,t){super(t);this.range=e}queryExpressionBuilder(){return{type:"scene-tree-range",range:this.range}}}class Oe extends Ee{constructor(e,t,s,n,i){super(n);this.filter=e;this.keys=t;this.exactMatch=s;this.removeHiddenItems=i}queryExpressionBuilder(){return{type:"metadata",filter:this.filter,keys:this.keys,exactMatch:this.exactMatch,removeHiddenItems:this.removeHiddenItems}}}class je extends Ee{constructor(e){super(e)}queryExpressionBuilder(){return{type:"all-selected"}}}class _e extends Ee{constructor(e){super(e)}queryExpressionBuilder(){return{type:"all-visible"}}}class De extends Ee{constructor(e,t){super(t);this.point=e}queryExpressionBuilder(){return{type:"point",point:this.point}}}class Ue extends Ee{constructor(e,t,s){super(t);this.rectangle=e;this.exclusive=s}queryExpressionBuilder(){return{type:"volume-intersection",rectangle:this.rectangle,exclusive:!!this.exclusive}}}class Fe extends Ee{constructor(e,t,s){super(s);this.ids=e;this.type=t}queryExpressionBuilder(){return{type:"or",expressions:this.ids.map((e=>({type:this.type,value:e})))}}}class ze extends Ee{constructor(e,t){super(t);this.query=e}queryExpressionBuilder(){return{...this.query}}and(){return new He([this.query],this.inverted)}or(){return new Ne([this.query],this.inverted)}}class Ne extends Ee{constructor(e,t){super(t);this.expressions=e}queryExpressionBuilder(){return{type:"or",expressions:[...this.expressions]}}withItemId(e){return new Ne([...this.expressions,{type:"item-id",value:e}],this.inverted)}withSuppliedId(e){return new Ne([...this.expressions,{type:"supplied-id",value:e}],this.inverted)}or(){return this}}class He extends Ee{constructor(e,t){super(t);this.expressions=e}queryExpressionBuilder(){return{type:"and",expressions:[...this.expressions]}}withItemId(e){return new He([...this.expressions,{type:"item-id",value:e}],this.inverted)}withSuppliedId(e){return new He([...this.expressions,{type:"supplied-id",value:e}],this.inverted)}and(){return this}}class Le extends Ee{constructor(e,t){super(t);this.query=e}queryExpressionBuilder(){return{...this.query}}and(){return new Ke([this.query],this.inverted)}or(){return new Ye([this.query],this.inverted)}}class Ye extends Ee{constructor(e,t){super(t);this.expressions=e}queryExpressionBuilder(){return{type:"or",expressions:[...this.expressions]}}withAnnotationId(e){return new Ye([...this.expressions,{type:"annotation-id",value:e}],this.inverted)}or(){return this}}class Ke extends Ee{constructor(e,t){super(t);this.expressions=e}queryExpressionBuilder(){return{type:"and",expressions:[...this.expressions]}}withAnnotationId(e){return new Ke([...this.expressions,{type:"annotation-id",value:e}],this.inverted)}and(){return this}}class Qe{get items(){return new We}get annotations(){return new Je}}class Je{where(e){const t=e(new qe).build();return new Se(t)}}class We{where(e){const t=e(new ke).build();return new be(t)}}export{de as C,fe as I,W as M,Se as P,me as R,Ae as S,ve as a,Je as b,U as c,ke as d,Qe as e,Ve as f,be as g,We as h,Re as i,Q as j,Z as k,H as l,j as m,F as n,K as s,J as t};
5
+ //# sourceMappingURL=p-CSVgoQU8.js.map