@vertexvis/viewer 0.15.2-testing.3 → 0.15.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/dist/cjs/_commonjsHelpers-dcc4cf71.js +1 -1
  2. package/dist/cjs/app-globals-2035678d.js +1 -1
  3. package/dist/cjs/browser.esm-5d246754.js +1 -1
  4. package/dist/cjs/bundle.esm-22b6f2d6.js +1 -1
  5. package/dist/cjs/bundle.esm-b43c197a.js +38280 -0
  6. package/dist/cjs/{config-6e330a82.js → config-3fc1c093.js} +2 -2
  7. package/dist/cjs/{cursors-85d403e9.js → cursors-02a06ec9.js} +7 -1
  8. package/dist/cjs/dom-8d90bfaf.js +1 -1
  9. package/dist/cjs/dom-92728e58.js +1 -1
  10. package/dist/cjs/dom-d1bbd67c.js +1 -1
  11. package/dist/cjs/dom-d57d3c3b.js +1 -1
  12. package/dist/cjs/elementRectObserver-9b28f182.js +1 -1
  13. package/dist/cjs/entities-9eb7e608.js +1 -1
  14. package/dist/cjs/{entities-7b2e8c03.js → entities-c1c3c6a3.js} +3 -3
  15. package/dist/cjs/errors-1b37642b.js +97 -0
  16. package/dist/cjs/grpc-web-client.umd-2af20c1b.js +1 -1
  17. package/dist/cjs/index-70db349e.js +1 -1
  18. package/dist/cjs/index-b9d13137.js +1 -1
  19. package/dist/cjs/index.cjs.js +9 -6
  20. package/dist/cjs/loader.cjs.js +2 -2
  21. package/dist/cjs/{mapper-0f2294a6.js → mapper-d4145b72.js} +2 -2
  22. package/dist/cjs/markup-4a2fc281.js +1 -1
  23. package/dist/cjs/{model-b61f4d20.js → model-19fb560a.js} +27 -6
  24. package/dist/cjs/model-20a70d27.js +1 -1
  25. package/dist/cjs/overlays-b03ec80b.js +1 -1
  26. package/dist/cjs/png-decoder-ef097f37.js +1 -1
  27. package/dist/cjs/results-178e89a3.js +1 -1
  28. package/dist/cjs/{scene-56438693.js → scene-a94e6fa5.js} +293 -215
  29. package/dist/cjs/shadow-css-6b9daa41.js +1 -1
  30. package/dist/cjs/stencil-fc92b387.js +1 -1
  31. package/dist/cjs/{streamAttributes-c64aee75.js → streamAttributes-cf0c513d.js} +8424 -41995
  32. package/dist/cjs/templates-e57b3741.js +1 -1
  33. package/dist/cjs/utils-2c8e2aa3.js +1 -1
  34. package/dist/cjs/utils-ea359796.js +1 -1
  35. package/dist/cjs/vertex-scene-tree-search_3.cjs.entry.js +1 -1
  36. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +1 -1
  37. package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js +1 -1
  38. package/dist/cjs/vertex-scene-tree-table-header.cjs.entry.js +1 -1
  39. package/dist/cjs/vertex-scene-tree-table-resize-divider.cjs.entry.js +1 -1
  40. package/dist/cjs/vertex-scene-tree-toolbar-group.cjs.entry.js +1 -1
  41. package/dist/cjs/vertex-scene-tree.cjs.entry.js +158 -37
  42. package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js +425 -0
  43. package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +1 -1
  44. package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +1 -1
  45. package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +3 -2
  46. package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +1 -1
  47. package/dist/cjs/vertex-viewer-icon.cjs.entry.js +1 -1
  48. package/dist/cjs/vertex-viewer-layer.cjs.entry.js +1 -1
  49. package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +1 -1
  50. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +1 -1
  51. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +1 -1
  52. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +3 -2
  53. package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +5 -4
  54. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +4 -3
  55. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +7 -6
  56. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +10 -5
  57. package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js +15 -13
  58. package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +20 -9
  59. package/dist/cjs/vertex-viewer-spinner.cjs.entry.js +1 -1
  60. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +6 -4
  61. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +5 -4
  62. package/dist/cjs/vertex-viewer.cjs.entry.js +80 -53
  63. package/dist/cjs/viewer.cjs.js +2 -2
  64. package/dist/cjs/viewport-5ca619f7.js +1 -1
  65. package/dist/collection/collection-manifest.json +1 -0
  66. package/dist/collection/components/scene-tree/lib/controller.js +108 -28
  67. package/dist/collection/components/scene-tree/lib/errors.js +35 -2
  68. package/dist/collection/components/scene-tree/scene-tree.js +12 -5
  69. package/dist/collection/components/viewer/viewer.js +17 -15
  70. package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.css +79 -0
  71. package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.js +278 -0
  72. package/dist/collection/components/viewer-pin-group/viewer-pin-group.js +5 -1
  73. package/dist/collection/components/viewer-pin-label/viewer-pin-label.css +1 -1
  74. package/dist/collection/components/viewer-pin-label/viewer-pin-label.js +14 -12
  75. package/dist/collection/components/viewer-pin-tool/utils.js +25 -4
  76. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.css +12 -0
  77. package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.js +9 -2
  78. package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js +3 -2
  79. package/dist/collection/components/viewer-view-cube/viewer-view-cube.js +5 -5
  80. package/dist/collection/lib/cursors.js +6 -1
  81. package/dist/collection/lib/interactions/baseInteractionHandler.js +12 -2
  82. package/dist/collection/lib/interactions/mouseInteractions.js +5 -4
  83. package/dist/collection/lib/mappers/frameStreaming.js +11 -11
  84. package/dist/collection/lib/pins/interactions.js +9 -5
  85. package/dist/collection/lib/pins/model.js +2 -2
  86. package/dist/collection/lib/rendering/matrices.js +2 -4
  87. package/dist/collection/lib/scenes/camera.js +4 -2
  88. package/dist/collection/lib/scenes/mapper.js +103 -30
  89. package/dist/collection/lib/scenes/queries.js +101 -46
  90. package/dist/collection/lib/scenes/scene.js +15 -7
  91. package/dist/collection/lib/stream/stream.js +24 -12
  92. package/dist/collection/lib/transforms/drawable.js +2 -2
  93. package/dist/collection/lib/types/frame.js +4 -3
  94. package/dist/collection/lib/types/frameCamera.js +6 -1
  95. package/dist/collection/lib/types/index.js +3 -2
  96. package/dist/collection/lib/types/loadableResource.js +24 -4
  97. package/dist/collection/lib/types/sceneViewStateIdentifier.js +7 -0
  98. package/dist/collection/lib/volume-intersection/controller.js +104 -0
  99. package/dist/collection/lib/volume-intersection/interactions.js +82 -0
  100. package/dist/collection/lib/volume-intersection/model.js +84 -0
  101. package/dist/custom-elements/index.d.ts +6 -0
  102. package/dist/custom-elements/index.js +23825 -18358
  103. package/dist/custom-elements/png-decoder.js +1 -1
  104. package/dist/esm/_commonjsHelpers-11ca3be1.js +1 -1
  105. package/dist/esm/app-globals-40df99a0.js +1 -1
  106. package/dist/esm/{browser.esm-ae4ca1f1.js → browser.esm-07e7db8f.js} +2 -2
  107. package/dist/esm/bundle.esm-91404853.js +38273 -0
  108. package/dist/esm/{bundle.esm-ce2c7ad3.js → bundle.esm-92e615bf.js} +2 -2
  109. package/dist/esm/{config-49688db8.js → config-25384fe6.js} +3 -3
  110. package/dist/esm/{cursors-a8d4b3f4.js → cursors-127a3bb7.js} +8 -3
  111. package/dist/esm/dom-0440435d.js +1 -1
  112. package/dist/esm/dom-be140992.js +1 -1
  113. package/dist/esm/dom-e19ee80b.js +1 -1
  114. package/dist/esm/{dom-5b164305.js → dom-e436f0c0.js} +2 -2
  115. package/dist/esm/elementRectObserver-39cf7b95.js +1 -1
  116. package/dist/esm/{entities-a5bfef48.js → entities-0e325765.js} +4 -4
  117. package/dist/esm/entities-ce81dd7f.js +1 -1
  118. package/dist/esm/errors-a4cc9caa.js +85 -0
  119. package/dist/esm/grpc-web-client.umd-5409853c.js +1 -1
  120. package/dist/esm/index-26dfb2d0.js +1 -1
  121. package/dist/esm/index-e841d91b.js +1 -1
  122. package/dist/esm/index.js +15 -13
  123. package/dist/esm/index.mjs +15 -13
  124. package/dist/esm/loader.js +2 -2
  125. package/dist/esm/loader.mjs +2 -2
  126. package/dist/esm/{mapper-5894c2a4.js → mapper-dd937684.js} +3 -3
  127. package/dist/esm/{markup-3c2900f3.js → markup-2dde1f10.js} +3 -3
  128. package/dist/esm/{model-fa9af61a.js → model-3cd8cd47.js} +2 -2
  129. package/dist/esm/{model-40bd1711.js → model-bfe1c4d8.js} +29 -8
  130. package/dist/esm/{overlays-cc3efc30.js → overlays-8f195eb3.js} +3 -3
  131. package/dist/esm/{png-decoder-d4b65417.js → png-decoder-45f38ea3.js} +2 -2
  132. package/dist/esm/{results-3b4df2cf.js → results-38baef59.js} +2 -2
  133. package/dist/esm/{scene-5b919078.js → scene-2543b3bd.js} +254 -168
  134. package/dist/esm/shadow-css-51dd7708.js +1 -1
  135. package/dist/esm/stencil-bfbf099f.js +1 -1
  136. package/dist/esm/{streamAttributes-7e8565be.js → streamAttributes-23270e27.js} +8429 -41994
  137. package/dist/esm/templates-022199c1.js +1 -1
  138. package/dist/esm/{utils-81347571.js → utils-2306c744.js} +2 -2
  139. package/dist/esm/{utils-559e1632.js → utils-f03802ef.js} +2 -2
  140. package/dist/esm/vertex-scene-tree-search_3.entry.js +3 -3
  141. package/dist/esm/vertex-scene-tree-table-cell.entry.js +1 -1
  142. package/dist/esm/vertex-scene-tree-table-column.entry.js +1 -1
  143. package/dist/esm/vertex-scene-tree-table-header.entry.js +1 -1
  144. package/dist/esm/vertex-scene-tree-table-resize-divider.entry.js +1 -1
  145. package/dist/esm/vertex-scene-tree-toolbar-group.entry.js +1 -1
  146. package/dist/esm/vertex-scene-tree.entry.js +160 -39
  147. package/dist/esm/vertex-viewer-box-query-tool.entry.js +421 -0
  148. package/dist/esm/vertex-viewer-button_3.entry.js +1 -1
  149. package/dist/esm/vertex-viewer-default-toolbar.entry.js +1 -1
  150. package/dist/esm/vertex-viewer-dom-element_2.entry.js +6 -5
  151. package/dist/esm/vertex-viewer-dom-group.entry.js +3 -3
  152. package/dist/esm/vertex-viewer-icon.entry.js +1 -1
  153. package/dist/esm/vertex-viewer-layer.entry.js +1 -1
  154. package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +4 -4
  155. package/dist/esm/vertex-viewer-markup-tool.entry.js +5 -5
  156. package/dist/esm/vertex-viewer-markup.entry.js +5 -5
  157. package/dist/esm/vertex-viewer-measurement-details.entry.js +5 -4
  158. package/dist/esm/vertex-viewer-measurement-distance.entry.js +13 -12
  159. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +8 -7
  160. package/dist/esm/vertex-viewer-measurement-precise.entry.js +12 -11
  161. package/dist/esm/vertex-viewer-pin-group.entry.js +13 -8
  162. package/dist/esm/vertex-viewer-pin-label_2.entry.js +18 -16
  163. package/dist/esm/vertex-viewer-pin-tool.entry.js +23 -12
  164. package/dist/esm/vertex-viewer-spinner.entry.js +1 -1
  165. package/dist/esm/vertex-viewer-transform-widget.entry.js +9 -7
  166. package/dist/esm/vertex-viewer-view-cube.entry.js +7 -6
  167. package/dist/esm/vertex-viewer.entry.js +65 -38
  168. package/dist/esm/viewer.js +2 -2
  169. package/dist/esm/{viewport-e39e2eba.js → viewport-f19fc583.js} +2 -2
  170. package/dist/types/components/scene-tree/lib/controller.d.ts +18 -3
  171. package/dist/types/components/scene-tree/lib/errors.d.ts +17 -2
  172. package/dist/types/components/viewer/viewer.d.ts +2 -0
  173. package/dist/types/components/viewer-box-query-tool/viewer-box-query-tool.d.ts +94 -0
  174. package/dist/types/components/viewer-pin-tool/utils.d.ts +1 -1
  175. package/dist/types/components.d.ts +56 -0
  176. package/dist/types/lib/cursors.d.ts +5 -0
  177. package/dist/types/lib/interactions/baseInteractionHandler.d.ts +1 -0
  178. package/dist/types/lib/interactions/mouseInteractions.d.ts +2 -1
  179. package/dist/types/lib/pins/interactions.d.ts +4 -2
  180. package/dist/types/lib/pins/model.d.ts +1 -1
  181. package/dist/types/lib/scenes/camera.d.ts +1 -1
  182. package/dist/types/lib/scenes/mapper.d.ts +5 -1
  183. package/dist/types/lib/scenes/queries.d.ts +55 -28
  184. package/dist/types/lib/scenes/scene.d.ts +10 -1
  185. package/dist/types/lib/types/frame.d.ts +1 -1
  186. package/dist/types/lib/types/index.d.ts +2 -1
  187. package/dist/types/lib/types/loadableResource.d.ts +8 -2
  188. package/dist/types/lib/types/sceneViewStateIdentifier.d.ts +15 -0
  189. package/dist/types/lib/volume-intersection/controller.d.ts +45 -0
  190. package/dist/types/lib/volume-intersection/interactions.d.ts +24 -0
  191. package/dist/types/lib/volume-intersection/model.d.ts +33 -0
  192. package/dist/viewer/index.esm.js +2 -2
  193. package/dist/viewer/{p-ad09c92e.entry.js → p-029fba92.entry.js} +1 -1
  194. package/dist/viewer/p-07aeee89.js +1 -1
  195. package/dist/viewer/{p-29986489.js → p-0a017be7.js} +2 -2
  196. package/dist/viewer/p-0c583cad.entry.js +4 -0
  197. package/dist/viewer/p-0d494d01.js +4 -0
  198. package/dist/viewer/p-0fdad1a5.js +1 -1
  199. package/dist/viewer/{p-3ca4a7c1.js → p-1812c82d.js} +2 -2
  200. package/dist/viewer/{p-7663a603.entry.js → p-191156ad.entry.js} +1 -1
  201. package/dist/viewer/{p-a57dc6e4.entry.js → p-1998284a.entry.js} +2 -2
  202. package/dist/viewer/p-27f715f8.entry.js +4 -0
  203. package/dist/viewer/{p-7f6251da.js → p-283aeac4.js} +2 -2
  204. package/dist/viewer/p-298b63c2.entry.js +4 -0
  205. package/dist/viewer/p-2ace066b.entry.js +4 -0
  206. package/dist/viewer/{p-927b528b.js → p-2b60a8b0.js} +2 -2
  207. package/dist/viewer/{p-050f912b.entry.js → p-2fd123c8.entry.js} +1 -1
  208. package/dist/viewer/p-305a8be6.entry.js +4 -0
  209. package/dist/viewer/p-31724d24.js +4 -0
  210. package/dist/viewer/p-32cc2209.js +4 -0
  211. package/dist/viewer/p-3829dd99.entry.js +4 -0
  212. package/dist/viewer/{p-6da8a28f.entry.js → p-3aae4bf1.entry.js} +2 -2
  213. package/dist/viewer/{p-99352cf0.js → p-42760392.js} +2 -2
  214. package/dist/viewer/p-440c8174.js +4 -0
  215. package/dist/viewer/{p-e422deaf.entry.js → p-4f25e367.entry.js} +2 -2
  216. package/dist/viewer/{p-d64c1e14.entry.js → p-507b5aeb.entry.js} +3 -3
  217. package/dist/viewer/{p-1fc24ec6.js → p-51401063.js} +2 -2
  218. package/dist/viewer/{p-426970b3.entry.js → p-533b1c63.entry.js} +1 -1
  219. package/dist/viewer/{p-dcb9804c.entry.js → p-569ed94a.entry.js} +2 -2
  220. package/dist/viewer/p-5809b400.js +1 -1
  221. package/dist/viewer/p-6072cf84.js +4 -0
  222. package/dist/viewer/{p-e4a26a32.entry.js → p-6406a70a.entry.js} +1 -1
  223. package/dist/viewer/p-6bf0594b.entry.js +4 -0
  224. package/dist/viewer/p-72c59115.entry.js +4 -0
  225. package/dist/viewer/{p-d71652b0.entry.js → p-8ac7290a.entry.js} +1 -1
  226. package/dist/viewer/{p-f184bcab.entry.js → p-8afcbd99.entry.js} +1 -1
  227. package/dist/viewer/p-92fe4417.js +1 -1
  228. package/dist/viewer/{p-5746931d.entry.js → p-952a217d.entry.js} +1 -1
  229. package/dist/viewer/p-98e6a50e.js +1 -1
  230. package/dist/viewer/{p-99fd27e0.entry.js → p-9cb99ea8.entry.js} +1 -1
  231. package/dist/viewer/p-a2e9e8a5.js +4 -0
  232. package/dist/viewer/p-a380f0c2.js +1 -1
  233. package/dist/viewer/{p-661b5234.js → p-acfc5c50.js} +2 -2
  234. package/dist/viewer/{p-82bd25e8.entry.js → p-b3540dce.entry.js} +1 -1
  235. package/dist/viewer/p-b5ca30cd.js +4 -0
  236. package/dist/viewer/p-b74242dc.js +1 -1
  237. package/dist/viewer/p-bc1160cf.entry.js +4 -0
  238. package/dist/viewer/{p-c5e67a1e.entry.js → p-bd5a302c.entry.js} +2 -2
  239. package/dist/viewer/p-c738296e.js +1 -1
  240. package/dist/viewer/p-c8c4343b.js +1 -1
  241. package/dist/viewer/p-cd9ccb9e.entry.js +4 -0
  242. package/dist/viewer/{p-40a9dd7d.js → p-cf689bbd.js} +2 -2
  243. package/dist/viewer/{p-70e5e8a8.js → p-d216a866.js} +2 -2
  244. package/dist/viewer/p-d4ed7b8d.js +4 -0
  245. package/dist/viewer/p-d6d5d5de.entry.js +4 -0
  246. package/dist/viewer/p-d6fce4c1.js +1 -1
  247. package/dist/viewer/p-df8fbe56.js +1 -1
  248. package/dist/viewer/p-dfe5a97d.js +1 -1
  249. package/dist/viewer/{p-00ce31a0.js → p-e1896ce4.js} +2 -2
  250. package/dist/viewer/p-e23af70c.js +4 -0
  251. package/dist/viewer/p-e4aa9cdb.js +1 -1
  252. package/dist/viewer/p-e929dd63.entry.js +4 -0
  253. package/dist/viewer/{p-65af7a89.js → p-fc7d8c03.js} +3 -3
  254. package/dist/viewer/viewer.esm.js +2 -2
  255. package/package.json +9 -9
  256. package/readme.md +4 -4
  257. package/dist/viewer/p-096e60bd.js +0 -4
  258. package/dist/viewer/p-0cf4f05d.entry.js +0 -4
  259. package/dist/viewer/p-0fcafbf9.js +0 -4
  260. package/dist/viewer/p-1abfe4bf.js +0 -4
  261. package/dist/viewer/p-1e0dd2e9.js +0 -4
  262. package/dist/viewer/p-22ae6785.entry.js +0 -4
  263. package/dist/viewer/p-27dbc865.js +0 -4
  264. package/dist/viewer/p-31b87b90.js +0 -4
  265. package/dist/viewer/p-3f6f2457.entry.js +0 -4
  266. package/dist/viewer/p-61e50e11.entry.js +0 -4
  267. package/dist/viewer/p-7579e2a1.entry.js +0 -4
  268. package/dist/viewer/p-920c9a88.entry.js +0 -4
  269. package/dist/viewer/p-990f98c2.js +0 -4
  270. package/dist/viewer/p-9dfe0b43.entry.js +0 -4
  271. package/dist/viewer/p-a6558bb2.entry.js +0 -4
  272. package/dist/viewer/p-b7e170ac.entry.js +0 -4
  273. package/dist/viewer/p-d34ad2b2.entry.js +0 -4
  274. package/dist/viewer/p-f3ea0c2b.entry.js +0 -4
@@ -1,4 +1,4 @@
1
1
  /**!
2
- * Copyright (c) 2022 Vertex Software LLC. All rights reserved.
2
+ * Copyright (c) 2023 Vertex Software LLC. All rights reserved.
3
3
  */
4
4
  import{r,h as o}from"./p-d6fce4c1.js";const t=class{constructor(o){r(this,o),this.placement="bottom-center",this.direction="horizontal",this.animationsDisabled=!1,this.animationMs=1e3}render(){return o("vertex-viewer-toolbar",{placement:this.placement,direction:this.direction},o("vertex-viewer-toolbar-group",{class:"group",direction:this.direction,"data-direction":this.direction},o("vertex-viewer-button",{class:"group-item btn","data-test-id":"fit-all-btn",onClick:()=>this.viewAll()},o("vertex-viewer-icon",{class:"icon",name:"fit-all",size:"md"}))))}async viewAll(){var r;const o=await(null===(r=this.viewer)||void 0===r?void 0:r.scene()),t=this.animationsDisabled?void 0:{milliseconds:this.animationMs};null==o||o.camera().viewAll().render({animation:t})}};t.style=":host{--viewer-toolbar-group-gap:0.5rem;--viewer-toolbar-group-background:rgba(245, 245, 245, 0.95);--viewer-toolbar-group-border-radius:0.25rem;--viewer-toolbar-group-box-shadow:-1px 0 2px rgba(0, 0, 0, 0.12),\n 1px 0 2px rgba(0, 0, 0, 0.13);--viewer-toolbar-group-padding:0.25rem;--viewer-toolbar-group-item-gap:0.25rem}.group{background:var(--viewer-toolbar-group-background);border-radius:var(--viewer-toolbar-group-border-radius);box-shadow:var(--viewer-toolbar-group-box-shadow);padding:var(--viewer-toolbar-group-padding)}.group[data-direction='horizontal']:not(:first-child){margin-left:var(--viewer-toolbar-group-gap)}.group[data-direction='horizontal'] .group-item:not(:first-child){margin-left:var(--viewer-toolbar-group-item-gap)}.group[data-direction='vertical']:not(:first-child){margin-top:var(--viewer-toolbar-group-gap)}.group[data-direction='vertical'] .group-item:not(:first-child){margin-top:var(--viewer-toolbar-group-item-gap)}.btn{color:var(--neutral-800);padding:0.125rem;border-radius:0.125rem}.btn:hover{background:var(--neutral-300)}";export{t as vertex_viewer_default_toolbar}
@@ -1,4 +1,4 @@
1
1
  /**!
2
- * Copyright (c) 2022 Vertex Software LLC. All rights reserved.
2
+ * Copyright (c) 2023 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{r as t,c as i,h as s,H as e,g as n}from"./p-d6fce4c1.js";import{c as r}from"./p-07aeee89.js";import{d as o,r as h}from"./p-b74242dc.js";import{f as l,p as a}from"./p-70e5e8a8.js";import{i as c,a as d}from"./p-c8c4343b.js";import{E as u}from"./p-65af7a89.js";import"./p-dfe5a97d.js";const v=class{constructor(s){t(this,s),this.search=i(this,"search",7),this.debounce=350,this.disabled=!1,this.placeholder=void 0,this.value="",this.focused=!1,this.isSearching=!1,this.handleTextInput=t=>{this.value=t.target.value,this.search.emit(this.value)},this.handleTextFocus=()=>{this.focused=!0},this.handleTextBlur=()=>{this.focused=!1},this.handleClear=t=>{t.preventDefault(),this.value="",this.search.emit(this.value),this.setFocus()}}async setFocus(){var t,i;"function"==typeof(null===(t=this.inputEl)||void 0===t?void 0:t.focus)&&(null===(i=this.inputEl)||void 0===i||i.focus())}controllerChanged(t){this.setupController()}componentDidLoad(){this.handleDebounceChanged(),this.setupController()}disconnectedCallback(){var t;null===(t=this.onStateChangeDisposable)||void 0===t||t.dispose()}render(){return s(e,null,s("div",{class:"root"},s("div",{class:"overlay icon icon-search"},s("slot",{name:"search-icon"},this.isSearching?s("vertex-viewer-spinner",{slot:"search-icon",size:"xs"}):s("vertex-viewer-icon",{name:"search",size:"sm"}))),s("input",{class:r("input",{background:this.focused||this.value.length>0}),type:"text",ref:t=>this.inputEl=t,placeholder:this.placeholder,disabled:this.disabled,value:this.value,onInput:this.handleTextInput,onFocus:this.handleTextFocus,onBlur:this.handleTextBlur}),s("div",{class:r("overlay overlay-clear",{show:this.value.length>0})},s("button",{class:"clear-btn icon",tabIndex:-1,onMouseDown:this.handleClear,disabled:this.disabled},s("slot",{name:"clear-icon"},s("vertex-viewer-icon",{name:"close-circle",size:"sm"}))))))}handleDebounceChanged(){this.search=o(this.search,this.debounce)}setupController(){var t,i;null===(t=this.onStateChangeDisposable)||void 0===t||t.dispose(),this.onStateChangeDisposable=null===(i=this.controller)||void 0===i?void 0:i.onStateChange.on((t=>{this.isSearching=t.isSearching}))}static get watchers(){return{controller:["controllerChanged"]}}};function p(t){return t.toLowerCase()}v.style="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}";var f=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],m=/[^A-Z0-9]+/gi;function b(t,i,s){return i instanceof RegExp?t.replace(i,s):i.reduce((function(t,i){return t.replace(i,s)}),t)}function w(t,i){var s=t.charAt(0),e=t.substr(1).toLowerCase();return i>0&&s>="0"&&s<="9"?"_"+s+e:""+s.toUpperCase()+e}function g(t,i){return 0===i?t.toLowerCase():w(t,i)}function y(t,i){return void 0===i&&(i={}),function(t,i){return void 0===i&&(i={}),function(t,i){void 0===i&&(i={});for(var s=i.splitRegexp,e=i.stripRegexp,n=void 0===e?m:e,r=i.transform,o=void 0===r?p:r,h=i.delimiter,l=void 0===h?" ":h,a=b(b(t,void 0===s?f:s,"$1\0$2"),n,"\0"),c=0,d=a.length;"\0"===a.charAt(c);)c++;for(;"\0"===a.charAt(d-1);)d--;return a.slice(c,d).split("\0").map(o).join(l)}(t,l({delimiter:"",transform:w},i))}(t,l({transform:g},i))}const x=/{{(.+)}}/;class z{constructor(t){this.bindings=t}bind(t){this.bindings.forEach((i=>i.bind(t)))}}class C{constructor(t,i){this.node=t,this.expr=i}}class $ extends C{constructor(t,i){super(t,i)}bind(t){const i=L(t,this.expr);i!==this.node.textContent&&(this.node.textContent=i)}}class D extends C{constructor(t,i,s){super(t,i),this.attr=s}bind(t){const i=L(t,this.expr);this.node.getAttribute(this.attr)!==i&&this.node.setAttribute(this.attr,i)}}class k extends C{constructor(t,i,s){super(t,i),this.prop=s}bind(t){const i=function(t,i){const s=E(i);return null!=s?R(t,s,!0):i}(t,this.expr);this.node[this.prop]!==i&&(this.node[this.prop]=i)}}class j extends C{constructor(t,i,s){super(t,i),this.eventName=s}bind(t){var i;const s=E(this.expr);if(null!=s){null===(i=this.disposable)||void 0===i||i.dispose();const e=R(t,s,!0);this.node.addEventListener(this.eventName,e),this.disposable={dispose:()=>{this.node.removeEventListener(this.eventName,e)}}}}}function M(t){const i=[];if(t.nodeType===Node.ELEMENT_NODE){const s=t;Array.from(s.attributes).filter((t=>x.test(t.value))).forEach((t=>{if(t.name.startsWith("event:")){const e=y(t.name.replace("event:",""));i.push(new j(s,t.value,e))}else if(t.name.startsWith("attr:"))i.push(new D(s,t.value,t.name.replace("attr:","")));else if(t.name.startsWith("prop:")){const e=y(t.name.replace("prop:",""));i.push(new k(s,t.value,e))}}))}else t.nodeType===Node.TEXT_NODE&&null!=t.textContent&&x.test(t.textContent)&&i.push(new $(t,t.textContent));for(let s=0;s<t.childNodes.length;s++)i.push(...M(t.childNodes[s]));return i}function E(t){const i=x.exec(t);return null!=i?i[1]:void 0}function L(t,i){const s=E(i);if(null!=s){const e=R(t,s,!0);return i.replace(`{{${s}}}`,null==e?void 0:e.toString())}return i}function R(t,i,s=!1){const[e,...n]=i.split(".");if(s&&0===n.length)return t;if(s&&n.length>0)return R(t,n.join("."),!1);{const i=t[e];return n.length>0?R(i,n.join("."),!1):i}}class T{constructor(t,i){this.container=t,this.elementFactory=i,this.instanceMap=new Map,this.elements=[]}swapHeadToTail(t){const i=this.elements.splice(0,t);return this.elements.splice(this.elements.length,0,...i),this.elements.concat()}swapTailToHead(t){const i=this.elements.splice(-t,t);return this.elements.splice(0,0,...i),this.elements.concat()}updateElements(t){const i=t-this.elements.length;if(i>0)for(let t=0;t<i;t++)this.createElement();else for(let t=0;t<-i;t++)this.deleteElement();return this.elements.concat()}updateData(t){this.elements.forEach(((i,s)=>{const e=this.instanceMap.get(i),n=t(s);null==e||e.bindings.bind(n)}))}updateElementFactory(t){this.elementFactory=t,this.updateElements(0)}iterateElements(t){this.elements.forEach(((i,s)=>{const e=this.instanceMap.get(i);t(i,e.bindings,s)}))}createElement(){const t=this.elementFactory();return this.elements.push(t.element),this.instanceMap.set(t.element,t),this.container.append(t.element),t}deleteElement(){const t=this.elements.pop();null!=t&&(this.instanceMap.delete(t),t.remove())}}function _(t){const i=t.content.cloneNode(!0);return{element:i.firstElementChild,bindings:new z(M(i))}}class H{constructor(){this.onStateChange=new u}setHovered(t){this.onStateChange.emit(t)}stateChanged(t){return this.onStateChange.on(t)}}const A=class{constructor(s){t(this,s),this.layoutRendered=i(this,"layoutRendered",7),this.rows=[],this.totalRows=0,this.rowHeight=24,this.overScanCount=25,this.layoutOffset=0,this.scrollOffset=0,this.viewportStartIndex=0,this.viewportEndIndex=0,this.columnGridLayout="1fr",this.columnGridFixedLayout="",this.isComputingCellHeight=!0,this.isScrolling=!1,this.stateMap={viewportRows:[],columnWidths:[],columnWidthPercentages:[]},this.lastStartIndex=0,this.columnElements=[],this.cellHoverController=new H,this.layoutColumns=()=>{const t=this.viewportEndIndex-this.viewportStartIndex+1,i=this.viewportStartIndex-this.lastStartIndex;this.lastStartIndex=this.viewportStartIndex,this.iterateColumns(((s,e,n)=>{e.updateElements(t),i>0?e.swapHeadToTail(i):e.swapTailToHead(-i),s.style.minHeight=this.rowHeight*this.totalRows+"px";const r=0===n?t=>`calc(${t} * 0.5rem)`:()=>"0";e.iterateElements(((t,i,s)=>{const e=this.stateMap.viewportRows[s];c(e)&&this.updateCell(e,t,i,s,r)}))}))},this.updateCell=(t,i,s,e,n)=>{i.style.position="absolute",i.style.top=(this.viewportStartIndex+e)*this.rowHeight+"px",i.style.boxSizing="border-box",i.style.height=`${this.rowHeight}px`,i.style.width="100%",i.style.paddingLeft=n(t.node.depth),i.tree=this.tree,i.node=t.node,i.hoverController=this.cellHoverController,i.isScrolling=this.isScrolling,s.bind(t)},this.updateLayoutPosition=()=>{h((()=>{var t;null!=this.tableElement&&(this.layoutOffset=null!==(t=this.tableElement.getBoundingClientRect().top)&&void 0!==t?t:0)}))},this.recomputeColumnWidths=()=>{const t=this.getLayoutWidth();null!=t&&this.stateMap.columnWidths.length===this.stateMap.columnWidthPercentages.length&&(this.stateMap.columnWidths=this.stateMap.columnWidthPercentages.map((i=>i*t)))},this.recomputeColumnPercentages=()=>{const t=this.getLayoutWidth();null!=t&&this.stateMap.columnWidths.length===this.stateMap.columnWidthPercentages.length&&(this.stateMap.columnWidthPercentages=this.stateMap.columnWidths.map((i=>i/t)))},this.computeInitialColumnWidths=()=>{this.stateMap.columnWidths=this.columnElements.map((t=>{var i;return null!==(i=t.initialWidth)&&void 0!==i?i:100}));const t=this.getLayoutWidth();null!=t&&(this.stateMap.columnWidthPercentages=this.columnElements.map((i=>{var s;return(null!==(s=i.initialWidth)&&void 0!==s?s:100)/t})))},this.updateColumnElements=()=>{this.columnElements=Array.from(this.hostEl.querySelectorAll("vertex-scene-tree-table-column"))},this.computeCellHeight=async()=>{var t;if(this.isComputingCellHeight&&this.columnElements.length>0){const i={index:0,node:{id:{hex:""},name:"Dummy row",expanded:!1,selected:!1,visible:!1,partiallyVisible:!1,isLeaf:!1,depth:0,columnsList:[],filterHit:!1},metadata:{},data:{}},{bindings:s,element:e}=this.createColumnCellInstance(this.columnElements[0]);s.bind(i),e.style.visibility="hidden",null===(t=this.columnElements[0])||void 0===t||t.appendChild(e),"function"==typeof e.componentOnReady&&await e.componentOnReady();let n=e.clientHeight,r=0;for(;0===n&&r<10;)n=await new Promise((t=>{setTimeout((()=>t(e.getBoundingClientRect().height)),5)})),r+=1;this.rowHeight=null!=n?n:this.rowHeight,e.remove(),this.isComputingCellHeight=!1}},this.computeHeaderHeight=()=>{var t;null==this.stateMap.headerHeight&&(this.stateMap.headerHeight=null===(t=this.headerElement)||void 0===t?void 0:t.getBoundingClientRect().height,this.hostEl.style.setProperty("--header-height",`${this.stateMap.headerHeight}px`))},this.computeColumnGridLayout=()=>{0===this.stateMap.columnWidths.length&&(this.stateMap.columnWidths=this.columnElements.map((t=>{var i;return null!==(i=t.initialWidth)&&void 0!==i?i:100})));const t=this.getLayoutWidth();null!=t&&0===this.stateMap.columnWidthPercentages.length&&(this.stateMap.columnWidthPercentages=this.columnElements.map((i=>{var s;return(null!==(s=i.initialWidth)&&void 0!==s?s:100)/t}))),this.columnGridLayout=`${this.stateMap.columnWidths.slice(0,-1).reduce(((t,i)=>`${t} ${i}px`),"")} 1fr`,this.columnGridFixedLayout=`${this.stateMap.columnWidths.reduce(((t,i)=>`${t} ${i}px`),"")}`},this.bindHeaderData=()=>{null==this.stateMap.headerInstances&&(this.stateMap.headerInstances=this.columnElements.map(((t,i)=>{var s;const e=this.createHeaderInstance(t);return null!=e&&(e.element.style.paddingRight=i===this.columnElements.length-1?"0":"var(--scene-tree-table-column-gap)",e.element.slot="header",e.element.style.gridColumnStart=`${i+1}`,e.element.style.gridColumnEnd=`${i+2}`,null===(s=this.hostEl)||void 0===s||s.appendChild(e.element)),e})).filter((t=>null!=t))),null==this.stateMap.headerDividerInstances&&(this.stateMap.headerDividerInstances=this.columnElements.slice(0,-1).map(((t,i)=>{var s;const e=this.createDividerInstance();return e.element.slot="divider",e.element.style.position="absolute",e.element.style.right="0",e.element.style.pointerEvents="auto",e.element.style.gridColumnStart=`${i+1}`,e.element.style.gridColumnEnd=`${i+2}`,null===(s=this.hostEl)||void 0===s||s.appendChild(e.element),e})))},this.rebindHeaderData=()=>{var t,i;this.removeDividerDragListeners(),null===(t=this.stateMap.headerInstances)||void 0===t||t.forEach((t=>t.element.remove())),null===(i=this.stateMap.headerDividerInstances)||void 0===i||i.forEach((t=>t.element.remove())),this.stateMap.headerInstances=void 0,this.stateMap.headerDividerInstances=void 0,this.bindHeaderData(),this.addDividerDragListeners()},this.createDividerPointerDownHandler=t=>i=>{var s,e;i.preventDefault(),i.stopPropagation(),this.lastDividerPointerPosition=a.create(Math.floor(i.clientX),Math.floor(i.clientY)),this.resizingColumnIndex=t,null===(e=null===(s=this.stateMap.headerDividerInstances)||void 0===s?void 0:s[t])||void 0===e||e.element.classList.add("dragging"),window.addEventListener("pointermove",this.handleDividerPointerMove),window.addEventListener("pointerup",this.handleDividerPointerUp)},this.handleDividerPointerMove=t=>{const i=a.create(Math.floor(t.clientX),Math.floor(t.clientY));if(null!=this.lastDividerPointerPosition&&null!=this.resizingColumnIndex){const t=a.subtract(this.lastDividerPointerPosition,i);Math.abs(t.x)>=1&&this.isValidResize(t,this.resizingColumnIndex)&&(this.stateMap.columnWidths[this.resizingColumnIndex]-=t.x,this.resizingColumnIndex+1<this.stateMap.columnWidths.length&&(this.stateMap.columnWidths[this.resizingColumnIndex+1]+=t.x),this.lastDividerPointerPosition=i,this.computeColumnGridLayout())}},this.handleDividerPointerUp=()=>{var t,i;null!=this.resizingColumnIndex&&(null===(i=null===(t=this.stateMap.headerDividerInstances)||void 0===t?void 0:t[this.resizingColumnIndex])||void 0===i||i.element.classList.remove("dragging")),this.lastDividerPointerPosition=void 0,this.resizingColumnIndex=void 0,this.recomputeColumnPercentages(),window.removeEventListener("pointermove",this.handleDividerPointerMove),window.removeEventListener("pointerup",this.handleDividerPointerUp)},this.isValidResize=(t,i)=>{var s,e,n,r;const o=this.columnElements[i],h=this.columnElements[i+1],l=this.stateMap.columnWidths[i],a=this.stateMap.columnWidths[i+1],c=null!==(s=o.minWidth)&&void 0!==s?s:0,d=null!==(e=o.maxWidth)&&void 0!==e?e:Number.MAX_SAFE_INTEGER,u=null!==(n=h.minWidth)&&void 0!==n?n:0,v=null!==(r=h.maxWidth)&&void 0!==r?r:Number.MAX_SAFE_INTEGER;return l-t.x>c&&l-t.x<d&&(null==h||a+t.x>u&&a+t.x<v)},this.handleScrollChanged=t=>{this.isScrolling=!0,this.scrollTimer=function(t,i,s=200){return window.clearTimeout(i),window.setTimeout(t,s)}((()=>{this.isScrolling=!1}),this.scrollTimer),this.scrollOffset=t.target.scrollTop,this.computeAndUpdateViewportRows()}}componentWillLoad(){this.updateColumnElements(),this.createPools(),this.headerResizeObserver=new ResizeObserver((()=>{this.stateMap.headerHeight=void 0,this.computeHeaderHeight(),this.updateLayoutPosition()})),this.resizeObserver=new ResizeObserver((()=>{this.updateLayoutPosition(),this.clearLayoutHeight(),this.clearLayoutWidth(),this.recomputeColumnWidths(),this.computeColumnGridLayout()}))}componentDidLoad(){var t,i,s;this.computeColumnGridLayout(),this.ensureDividerTemplateDefined(),this.computeCellHeight(),this.computeHeaderHeight(),this.computeInitialColumnWidths(),this.rebindHeaderData(),null===(t=this.tableElement)||void 0===t||t.addEventListener("scroll",this.handleScrollChanged,{passive:!0}),null!=this.headerElement&&(null===(i=this.headerResizeObserver)||void 0===i||i.observe(this.headerElement)),null===(s=this.resizeObserver)||void 0===s||s.observe(this.hostEl)}async componentWillRender(){await this.computeAndUpdateViewportRows()}componentDidRender(){this.layoutColumns(),this.layoutRendered.emit()}disconnectedCallback(){var t,i,s;null===(t=this.tableElement)||void 0===t||t.removeEventListener("scroll",this.handleScrollChanged),this.removeDividerDragListeners(),null===(i=this.headerResizeObserver)||void 0===i||i.disconnect(),null===(s=this.resizeObserver)||void 0===s||s.disconnect(),this.stateMap.columnWidths=[],this.stateMap.columnWidthPercentages=[]}async scrollToPosition(t,i){null!=this.tableElement&&function(t,i,s){t.scrollTo(Object.assign({top:i},s))}(this.tableElement,t,i)}render(){return s(e,null,s("div",{class:"header",ref:t=>this.headerElement=t,style:{gridTemplateColumns:this.columnGridFixedLayout,display:this.columnElements.length<=1?"none":"grid"}},s("slot",{name:"header"})),s("div",{class:"table",ref:t=>this.tableElement=t,style:{gridTemplateColumns:this.columnGridLayout}},s("slot",{onSlotchange:()=>{this.ensureDividerTemplateDefined(),this.updateColumnElements(),this.recreateColumnPools(),this.computeInitialColumnWidths(),this.rebindHeaderData(),this.computeColumnGridLayout()}})),s("div",{class:"divider-overlay",style:{gridTemplateColumns:this.columnGridFixedLayout}},s("slot",{name:"divider"})),null!=this.resizingColumnIndex&&s("div",{class:"resize-overlay"}))}computeViewportRows(){const t=this.getLayoutHeight();if(null!=t){const i=Math.ceil(t/this.rowHeight),s=Math.floor(this.scrollOffset/this.rowHeight),e=s+i,n=Math.max(0,s-this.overScanCount),r=Math.min(this.totalRows-1,e+this.overScanCount),o=this.getViewportRows(n,r);this.viewportStartIndex=n,this.viewportEndIndex=r,this.stateMap.viewportRows=o}}async computeAndUpdateViewportRows(){var t;this.computeViewportRows(),(null===(t=this.controller)||void 0===t?void 0:t.isConnected)&&await this.controller.updateActiveRowRange(this.viewportStartIndex,this.viewportEndIndex)}createPools(){null==this.stateMap.columnElementPools&&(this.stateMap.columnElementPools=this.columnElements.reduce(((t,i)=>t.set(i,new T(i,(()=>this.createColumnCellInstance(i))))),new WeakMap))}recreateColumnPools(){this.columnElements.forEach((t=>{var i,s,e;null==(null===(i=this.stateMap.columnElementPools)||void 0===i?void 0:i.get(t))?null===(s=this.stateMap.columnElementPools)||void 0===s||s.set(t,new T(t,(()=>this.createColumnCellInstance(t)))):null===(e=this.stateMap.columnElementPools.get(t))||void 0===e||e.updateElementFactory((()=>this.createColumnCellInstance(t)))}))}iterateColumns(t){this.columnElements.forEach(((i,s)=>{var e;const n=null===(e=this.stateMap.columnElementPools)||void 0===e?void 0:e.get(i);if(null==n)throw new Error("Cannot find pool for column");t(i,n,s)}))}ensureDividerTemplateDefined(){if(null==this.hostEl.querySelector('template[slot="divider"]')){const t=document.createElement("template");t.slot="divider",t.innerHTML='\n <vertex-scene-tree-table-resize-divider slot="divider">\n </vertex-scene-tree-table-resize-divider>\n ',this.hostEl.appendChild(t)}}createHeaderInstance(t){const i=t.querySelector('template[slot="header"]');if(null!=i)return _(i)}createDividerInstance(){const t=this.hostEl.querySelector('template[slot="divider"]');if(null!=t)return _(t);throw new Error("Table is missing divider template element")}createColumnCellInstance(t){const i=t.querySelector('template:not([slot="header"])');if(null!=i)return _(i);throw new Error("Column is missing cell template element")}addDividerDragListeners(){var t;this.stateMap.headerDividerListeners=null===(t=this.stateMap.headerDividerInstances)||void 0===t?void 0:t.map(((t,i)=>{const s=this.createDividerPointerDownHandler(i);return t.element.addEventListener("pointerdown",s),s}))}removeDividerDragListeners(){var t;if(null!=this.stateMap.headerDividerListeners){const i=this.stateMap.headerDividerListeners;null===(t=this.stateMap.headerDividerInstances)||void 0===t||t.forEach(((t,s)=>{const e=i[s];null!=e&&t.element.removeEventListener("pointerdown",e)})),this.stateMap.headerDividerListeners=void 0}}getViewportRows(t,i){return this.rows.slice(t,i+1).map((t=>null!=t?this.populateRowData(t):t))}populateRowData(t){var i;if(null!=this.rowData&&null!=t){const s=(null===(i=this.rowData)||void 0===i?void 0:i.call(this,t))||{};return Object.assign(Object.assign({},t),{data:s})}return t}getLayoutHeight(){return null==this.layoutHeight&&null!=this.tableElement&&(this.layoutHeight=d(this.tableElement)),this.layoutHeight}getLayoutWidth(){if(null==this.layoutWidth){const t=this.hostEl.clientWidth;t>0&&(this.layoutWidth=t)}return this.layoutWidth}clearLayoutHeight(){this.layoutHeight=void 0}clearLayoutWidth(){this.layoutWidth=void 0}get hostEl(){return n(this)}};A.style=":host{position:relative;display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;font-size:0.825rem;--scene-tree-table-row-padding:2px 0px;--scene-tree-table-column-gap:0.5rem;--scene-tree-table-column-resize-cursor:col-resize}.header{position:relative;display:grid;width:100%;border-bottom:var(--scene-tree-toolbar-separator)}.table{position:relative;display:grid;width:100%;height:100%;overflow:auto}.resize-overlay{position:absolute;top:0;cursor:var(--scene-tree-table-column-resize-cursor);z-index:1000;width:100%;height:100%}.divider-overlay{position:absolute;top:0;display:grid;pointer-events:none;z-index:2000;width:100%;height:100%}";const W=class{constructor(i){t(this,i)}render(){return s(e,null,s("div",{class:"content"},s("slot",{name:"before"})),s("div",{class:"content content-primary"},s("slot",null)),s("div",{class:"content"},s("slot",{name:"after"})))}};W.style=":host{--scene-tree-toolbar-content-gap:8px;display:flex;padding:0.5rem}.content{display:flex;align-items:center}.content-primary{width:100%}::slotted(:not(:first-child)){margin-left:var(--scene-tree-toolbar-content-gap)}";export{v as vertex_scene_tree_search,A as vertex_scene_tree_table_layout,W as vertex_scene_tree_toolbar}
4
+ import{r as t,c as i,h as s,H as e,g as n}from"./p-d6fce4c1.js";import{c as r}from"./p-07aeee89.js";import{d as o,r as h}from"./p-b74242dc.js";import{j as l,p as a}from"./p-d216a866.js";import{i as c,a as d}from"./p-c8c4343b.js";import{E as u}from"./p-fc7d8c03.js";import"./p-dfe5a97d.js";const v=class{constructor(s){t(this,s),this.search=i(this,"search",7),this.debounce=350,this.disabled=!1,this.placeholder=void 0,this.value="",this.focused=!1,this.isSearching=!1,this.handleTextInput=t=>{this.value=t.target.value,this.search.emit(this.value)},this.handleTextFocus=()=>{this.focused=!0},this.handleTextBlur=()=>{this.focused=!1},this.handleClear=t=>{t.preventDefault(),this.value="",this.search.emit(this.value),this.setFocus()}}async setFocus(){var t,i;"function"==typeof(null===(t=this.inputEl)||void 0===t?void 0:t.focus)&&(null===(i=this.inputEl)||void 0===i||i.focus())}controllerChanged(t){this.setupController()}componentDidLoad(){this.handleDebounceChanged(),this.setupController()}disconnectedCallback(){var t;null===(t=this.onStateChangeDisposable)||void 0===t||t.dispose()}render(){return s(e,null,s("div",{class:"root"},s("div",{class:"overlay icon icon-search"},s("slot",{name:"search-icon"},this.isSearching?s("vertex-viewer-spinner",{slot:"search-icon",size:"xs"}):s("vertex-viewer-icon",{name:"search",size:"sm"}))),s("input",{class:r("input",{background:this.focused||this.value.length>0}),type:"text",ref:t=>this.inputEl=t,placeholder:this.placeholder,disabled:this.disabled,value:this.value,onInput:this.handleTextInput,onFocus:this.handleTextFocus,onBlur:this.handleTextBlur}),s("div",{class:r("overlay overlay-clear",{show:this.value.length>0})},s("button",{class:"clear-btn icon",tabIndex:-1,onMouseDown:this.handleClear,disabled:this.disabled},s("slot",{name:"clear-icon"},s("vertex-viewer-icon",{name:"close-circle",size:"sm"}))))))}handleDebounceChanged(){this.search=o(this.search,this.debounce)}setupController(){var t,i;null===(t=this.onStateChangeDisposable)||void 0===t||t.dispose(),this.onStateChangeDisposable=null===(i=this.controller)||void 0===i?void 0:i.onStateChange.on((t=>{this.isSearching=t.isSearching}))}static get watchers(){return{controller:["controllerChanged"]}}};function p(t){return t.toLowerCase()}v.style="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}";var m=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],f=/[^A-Z0-9]+/gi;function b(t,i,s){return i instanceof RegExp?t.replace(i,s):i.reduce((function(t,i){return t.replace(i,s)}),t)}function w(t,i){var s=t.charAt(0),e=t.substr(1).toLowerCase();return i>0&&s>="0"&&s<="9"?"_"+s+e:""+s.toUpperCase()+e}function g(t,i){return 0===i?t.toLowerCase():w(t,i)}function y(t,i){return void 0===i&&(i={}),function(t,i){return void 0===i&&(i={}),function(t,i){void 0===i&&(i={});for(var s=i.splitRegexp,e=i.stripRegexp,n=void 0===e?f:e,r=i.transform,o=void 0===r?p:r,h=i.delimiter,l=void 0===h?" ":h,a=b(b(t,void 0===s?m:s,"$1\0$2"),n,"\0"),c=0,d=a.length;"\0"===a.charAt(c);)c++;for(;"\0"===a.charAt(d-1);)d--;return a.slice(c,d).split("\0").map(o).join(l)}(t,l({delimiter:"",transform:w},i))}(t,l({transform:g},i))}const x=/{{(.+)}}/;class z{constructor(t){this.bindings=t}bind(t){this.bindings.forEach((i=>i.bind(t)))}}class C{constructor(t,i){this.node=t,this.expr=i}}class $ extends C{constructor(t,i){super(t,i)}bind(t){const i=L(t,this.expr);i!==this.node.textContent&&(this.node.textContent=i)}}class D extends C{constructor(t,i,s){super(t,i),this.attr=s}bind(t){const i=L(t,this.expr);this.node.getAttribute(this.attr)!==i&&this.node.setAttribute(this.attr,i)}}class j extends C{constructor(t,i,s){super(t,i),this.prop=s}bind(t){const i=function(t,i){const s=E(i);return null!=s?R(t,s,!0):i}(t,this.expr);this.node[this.prop]!==i&&(this.node[this.prop]=i)}}class k extends C{constructor(t,i,s){super(t,i),this.eventName=s}bind(t){var i;const s=E(this.expr);if(null!=s){null===(i=this.disposable)||void 0===i||i.dispose();const e=R(t,s,!0);this.node.addEventListener(this.eventName,e),this.disposable={dispose:()=>{this.node.removeEventListener(this.eventName,e)}}}}}function M(t){const i=[];if(t.nodeType===Node.ELEMENT_NODE){const s=t;Array.from(s.attributes).filter((t=>x.test(t.value))).forEach((t=>{if(t.name.startsWith("event:")){const e=y(t.name.replace("event:",""));i.push(new k(s,t.value,e))}else if(t.name.startsWith("attr:"))i.push(new D(s,t.value,t.name.replace("attr:","")));else if(t.name.startsWith("prop:")){const e=y(t.name.replace("prop:",""));i.push(new j(s,t.value,e))}}))}else t.nodeType===Node.TEXT_NODE&&null!=t.textContent&&x.test(t.textContent)&&i.push(new $(t,t.textContent));for(let s=0;s<t.childNodes.length;s++)i.push(...M(t.childNodes[s]));return i}function E(t){const i=x.exec(t);return null!=i?i[1]:void 0}function L(t,i){const s=E(i);if(null!=s){const e=R(t,s,!0);return i.replace(`{{${s}}}`,null==e?void 0:e.toString())}return i}function R(t,i,s=!1){const[e,...n]=i.split(".");if(s&&0===n.length)return t;if(s&&n.length>0)return R(t,n.join("."),!1);{const i=t[e];return n.length>0?R(i,n.join("."),!1):i}}class T{constructor(t,i){this.container=t,this.elementFactory=i,this.instanceMap=new Map,this.elements=[]}swapHeadToTail(t){const i=this.elements.splice(0,t);return this.elements.splice(this.elements.length,0,...i),this.elements.concat()}swapTailToHead(t){const i=this.elements.splice(-t,t);return this.elements.splice(0,0,...i),this.elements.concat()}updateElements(t){const i=t-this.elements.length;if(i>0)for(let t=0;t<i;t++)this.createElement();else for(let t=0;t<-i;t++)this.deleteElement();return this.elements.concat()}updateData(t){this.elements.forEach(((i,s)=>{const e=this.instanceMap.get(i),n=t(s);null==e||e.bindings.bind(n)}))}updateElementFactory(t){this.elementFactory=t,this.updateElements(0)}iterateElements(t){this.elements.forEach(((i,s)=>{const e=this.instanceMap.get(i);t(i,e.bindings,s)}))}createElement(){const t=this.elementFactory();return this.elements.push(t.element),this.instanceMap.set(t.element,t),this.container.append(t.element),t}deleteElement(){const t=this.elements.pop();null!=t&&(this.instanceMap.delete(t),t.remove())}}function _(t){const i=t.content.cloneNode(!0);return{element:i.firstElementChild,bindings:new z(M(i))}}class H{constructor(){this.onStateChange=new u}setHovered(t){this.onStateChange.emit(t)}stateChanged(t){return this.onStateChange.on(t)}}const A=class{constructor(s){t(this,s),this.layoutRendered=i(this,"layoutRendered",7),this.rows=[],this.totalRows=0,this.rowHeight=24,this.overScanCount=25,this.layoutOffset=0,this.scrollOffset=0,this.viewportStartIndex=0,this.viewportEndIndex=0,this.columnGridLayout="1fr",this.columnGridFixedLayout="",this.isComputingCellHeight=!0,this.isScrolling=!1,this.stateMap={viewportRows:[],columnWidths:[],columnWidthPercentages:[]},this.lastStartIndex=0,this.columnElements=[],this.cellHoverController=new H,this.layoutColumns=()=>{const t=this.viewportEndIndex-this.viewportStartIndex+1,i=this.viewportStartIndex-this.lastStartIndex;this.lastStartIndex=this.viewportStartIndex,this.iterateColumns(((s,e,n)=>{e.updateElements(t),i>0?e.swapHeadToTail(i):e.swapTailToHead(-i),s.style.minHeight=this.rowHeight*this.totalRows+"px";const r=0===n?t=>`calc(${t} * 0.5rem)`:()=>"0";e.iterateElements(((t,i,s)=>{const e=this.stateMap.viewportRows[s];c(e)&&this.updateCell(e,t,i,s,r)}))}))},this.updateCell=(t,i,s,e,n)=>{i.style.position="absolute",i.style.top=(this.viewportStartIndex+e)*this.rowHeight+"px",i.style.boxSizing="border-box",i.style.height=`${this.rowHeight}px`,i.style.width="100%",i.style.paddingLeft=n(t.node.depth),i.tree=this.tree,i.node=t.node,i.hoverController=this.cellHoverController,i.isScrolling=this.isScrolling,s.bind(t)},this.updateLayoutPosition=()=>{h((()=>{var t;null!=this.tableElement&&(this.layoutOffset=null!==(t=this.tableElement.getBoundingClientRect().top)&&void 0!==t?t:0)}))},this.recomputeColumnWidths=()=>{const t=this.getLayoutWidth();null!=t&&this.stateMap.columnWidths.length===this.stateMap.columnWidthPercentages.length&&(this.stateMap.columnWidths=this.stateMap.columnWidthPercentages.map((i=>i*t)))},this.recomputeColumnPercentages=()=>{const t=this.getLayoutWidth();null!=t&&this.stateMap.columnWidths.length===this.stateMap.columnWidthPercentages.length&&(this.stateMap.columnWidthPercentages=this.stateMap.columnWidths.map((i=>i/t)))},this.computeInitialColumnWidths=()=>{this.stateMap.columnWidths=this.columnElements.map((t=>{var i;return null!==(i=t.initialWidth)&&void 0!==i?i:100}));const t=this.getLayoutWidth();null!=t&&(this.stateMap.columnWidthPercentages=this.columnElements.map((i=>{var s;return(null!==(s=i.initialWidth)&&void 0!==s?s:100)/t})))},this.updateColumnElements=()=>{this.columnElements=Array.from(this.hostEl.querySelectorAll("vertex-scene-tree-table-column"))},this.computeCellHeight=async()=>{var t;if(this.isComputingCellHeight&&this.columnElements.length>0){const i={index:0,node:{id:{hex:""},name:"Dummy row",expanded:!1,selected:!1,visible:!1,partiallyVisible:!1,isLeaf:!1,depth:0,columnsList:[],filterHit:!1},metadata:{},data:{}},{bindings:s,element:e}=this.createColumnCellInstance(this.columnElements[0]);s.bind(i),e.style.visibility="hidden",null===(t=this.columnElements[0])||void 0===t||t.appendChild(e),"function"==typeof e.componentOnReady&&await e.componentOnReady();let n=e.clientHeight,r=0;for(;0===n&&r<10;)n=await new Promise((t=>{setTimeout((()=>t(e.getBoundingClientRect().height)),5)})),r+=1;this.rowHeight=null!=n?n:this.rowHeight,e.remove(),this.isComputingCellHeight=!1}},this.computeHeaderHeight=()=>{var t;null==this.stateMap.headerHeight&&(this.stateMap.headerHeight=null===(t=this.headerElement)||void 0===t?void 0:t.getBoundingClientRect().height,this.hostEl.style.setProperty("--header-height",`${this.stateMap.headerHeight}px`))},this.computeColumnGridLayout=()=>{0===this.stateMap.columnWidths.length&&(this.stateMap.columnWidths=this.columnElements.map((t=>{var i;return null!==(i=t.initialWidth)&&void 0!==i?i:100})));const t=this.getLayoutWidth();null!=t&&0===this.stateMap.columnWidthPercentages.length&&(this.stateMap.columnWidthPercentages=this.columnElements.map((i=>{var s;return(null!==(s=i.initialWidth)&&void 0!==s?s:100)/t}))),this.columnGridLayout=`${this.stateMap.columnWidths.slice(0,-1).reduce(((t,i)=>`${t} ${i}px`),"")} 1fr`,this.columnGridFixedLayout=`${this.stateMap.columnWidths.reduce(((t,i)=>`${t} ${i}px`),"")}`},this.bindHeaderData=()=>{null==this.stateMap.headerInstances&&(this.stateMap.headerInstances=this.columnElements.map(((t,i)=>{var s;const e=this.createHeaderInstance(t);return null!=e&&(e.element.style.paddingRight=i===this.columnElements.length-1?"0":"var(--scene-tree-table-column-gap)",e.element.slot="header",e.element.style.gridColumnStart=`${i+1}`,e.element.style.gridColumnEnd=`${i+2}`,null===(s=this.hostEl)||void 0===s||s.appendChild(e.element)),e})).filter((t=>null!=t))),null==this.stateMap.headerDividerInstances&&(this.stateMap.headerDividerInstances=this.columnElements.slice(0,-1).map(((t,i)=>{var s;const e=this.createDividerInstance();return e.element.slot="divider",e.element.style.position="absolute",e.element.style.right="0",e.element.style.pointerEvents="auto",e.element.style.gridColumnStart=`${i+1}`,e.element.style.gridColumnEnd=`${i+2}`,null===(s=this.hostEl)||void 0===s||s.appendChild(e.element),e})))},this.rebindHeaderData=()=>{var t,i;this.removeDividerDragListeners(),null===(t=this.stateMap.headerInstances)||void 0===t||t.forEach((t=>t.element.remove())),null===(i=this.stateMap.headerDividerInstances)||void 0===i||i.forEach((t=>t.element.remove())),this.stateMap.headerInstances=void 0,this.stateMap.headerDividerInstances=void 0,this.bindHeaderData(),this.addDividerDragListeners()},this.createDividerPointerDownHandler=t=>i=>{var s,e;i.preventDefault(),i.stopPropagation(),this.lastDividerPointerPosition=a.create(Math.floor(i.clientX),Math.floor(i.clientY)),this.resizingColumnIndex=t,null===(e=null===(s=this.stateMap.headerDividerInstances)||void 0===s?void 0:s[t])||void 0===e||e.element.classList.add("dragging"),window.addEventListener("pointermove",this.handleDividerPointerMove),window.addEventListener("pointerup",this.handleDividerPointerUp)},this.handleDividerPointerMove=t=>{const i=a.create(Math.floor(t.clientX),Math.floor(t.clientY));if(null!=this.lastDividerPointerPosition&&null!=this.resizingColumnIndex){const t=a.subtract(this.lastDividerPointerPosition,i);Math.abs(t.x)>=1&&this.isValidResize(t,this.resizingColumnIndex)&&(this.stateMap.columnWidths[this.resizingColumnIndex]-=t.x,this.resizingColumnIndex+1<this.stateMap.columnWidths.length&&(this.stateMap.columnWidths[this.resizingColumnIndex+1]+=t.x),this.lastDividerPointerPosition=i,this.computeColumnGridLayout())}},this.handleDividerPointerUp=()=>{var t,i;null!=this.resizingColumnIndex&&(null===(i=null===(t=this.stateMap.headerDividerInstances)||void 0===t?void 0:t[this.resizingColumnIndex])||void 0===i||i.element.classList.remove("dragging")),this.lastDividerPointerPosition=void 0,this.resizingColumnIndex=void 0,this.recomputeColumnPercentages(),window.removeEventListener("pointermove",this.handleDividerPointerMove),window.removeEventListener("pointerup",this.handleDividerPointerUp)},this.isValidResize=(t,i)=>{var s,e,n,r;const o=this.columnElements[i],h=this.columnElements[i+1],l=this.stateMap.columnWidths[i],a=this.stateMap.columnWidths[i+1],c=null!==(s=o.minWidth)&&void 0!==s?s:0,d=null!==(e=o.maxWidth)&&void 0!==e?e:Number.MAX_SAFE_INTEGER,u=null!==(n=h.minWidth)&&void 0!==n?n:0,v=null!==(r=h.maxWidth)&&void 0!==r?r:Number.MAX_SAFE_INTEGER;return l-t.x>c&&l-t.x<d&&(null==h||a+t.x>u&&a+t.x<v)},this.handleScrollChanged=t=>{this.isScrolling=!0,this.scrollTimer=function(t,i,s=200){return window.clearTimeout(i),window.setTimeout(t,s)}((()=>{this.isScrolling=!1}),this.scrollTimer),this.scrollOffset=t.target.scrollTop,this.computeAndUpdateViewportRows()}}componentWillLoad(){this.updateColumnElements(),this.createPools(),this.headerResizeObserver=new ResizeObserver((()=>{this.stateMap.headerHeight=void 0,this.computeHeaderHeight(),this.updateLayoutPosition()})),this.resizeObserver=new ResizeObserver((()=>{this.updateLayoutPosition(),this.clearLayoutHeight(),this.clearLayoutWidth(),this.recomputeColumnWidths(),this.computeColumnGridLayout()}))}componentDidLoad(){var t,i,s;this.computeColumnGridLayout(),this.ensureDividerTemplateDefined(),this.computeCellHeight(),this.computeHeaderHeight(),this.computeInitialColumnWidths(),this.rebindHeaderData(),null===(t=this.tableElement)||void 0===t||t.addEventListener("scroll",this.handleScrollChanged,{passive:!0}),null!=this.headerElement&&(null===(i=this.headerResizeObserver)||void 0===i||i.observe(this.headerElement)),null===(s=this.resizeObserver)||void 0===s||s.observe(this.hostEl)}async componentWillRender(){await this.computeAndUpdateViewportRows()}componentDidRender(){this.layoutColumns(),this.layoutRendered.emit()}disconnectedCallback(){var t,i,s;null===(t=this.tableElement)||void 0===t||t.removeEventListener("scroll",this.handleScrollChanged),this.removeDividerDragListeners(),null===(i=this.headerResizeObserver)||void 0===i||i.disconnect(),null===(s=this.resizeObserver)||void 0===s||s.disconnect(),this.stateMap.columnWidths=[],this.stateMap.columnWidthPercentages=[]}async scrollToPosition(t,i){null!=this.tableElement&&function(t,i,s){t.scrollTo(Object.assign({top:i},s))}(this.tableElement,t,i)}render(){return s(e,null,s("div",{class:"header",ref:t=>this.headerElement=t,style:{gridTemplateColumns:this.columnGridFixedLayout,display:this.columnElements.length<=1?"none":"grid"}},s("slot",{name:"header"})),s("div",{class:"table",ref:t=>this.tableElement=t,style:{gridTemplateColumns:this.columnGridLayout}},s("slot",{onSlotchange:()=>{this.ensureDividerTemplateDefined(),this.updateColumnElements(),this.recreateColumnPools(),this.computeInitialColumnWidths(),this.rebindHeaderData(),this.computeColumnGridLayout()}})),s("div",{class:"divider-overlay",style:{gridTemplateColumns:this.columnGridFixedLayout}},s("slot",{name:"divider"})),null!=this.resizingColumnIndex&&s("div",{class:"resize-overlay"}))}computeViewportRows(){const t=this.getLayoutHeight();if(null!=t){const i=Math.ceil(t/this.rowHeight),s=Math.floor(this.scrollOffset/this.rowHeight),e=s+i,n=Math.max(0,s-this.overScanCount),r=Math.min(this.totalRows-1,e+this.overScanCount),o=this.getViewportRows(n,r);this.viewportStartIndex=n,this.viewportEndIndex=r,this.stateMap.viewportRows=o}}async computeAndUpdateViewportRows(){var t;this.computeViewportRows(),(null===(t=this.controller)||void 0===t?void 0:t.isConnected)&&await this.controller.updateActiveRowRange(this.viewportStartIndex,this.viewportEndIndex)}createPools(){null==this.stateMap.columnElementPools&&(this.stateMap.columnElementPools=this.columnElements.reduce(((t,i)=>t.set(i,new T(i,(()=>this.createColumnCellInstance(i))))),new WeakMap))}recreateColumnPools(){this.columnElements.forEach((t=>{var i,s,e;null==(null===(i=this.stateMap.columnElementPools)||void 0===i?void 0:i.get(t))?null===(s=this.stateMap.columnElementPools)||void 0===s||s.set(t,new T(t,(()=>this.createColumnCellInstance(t)))):null===(e=this.stateMap.columnElementPools.get(t))||void 0===e||e.updateElementFactory((()=>this.createColumnCellInstance(t)))}))}iterateColumns(t){this.columnElements.forEach(((i,s)=>{var e;const n=null===(e=this.stateMap.columnElementPools)||void 0===e?void 0:e.get(i);if(null==n)throw new Error("Cannot find pool for column");t(i,n,s)}))}ensureDividerTemplateDefined(){if(null==this.hostEl.querySelector('template[slot="divider"]')){const t=document.createElement("template");t.slot="divider",t.innerHTML='\n <vertex-scene-tree-table-resize-divider slot="divider">\n </vertex-scene-tree-table-resize-divider>\n ',this.hostEl.appendChild(t)}}createHeaderInstance(t){const i=t.querySelector('template[slot="header"]');if(null!=i)return _(i)}createDividerInstance(){const t=this.hostEl.querySelector('template[slot="divider"]');if(null!=t)return _(t);throw new Error("Table is missing divider template element")}createColumnCellInstance(t){const i=t.querySelector('template:not([slot="header"])');if(null!=i)return _(i);throw new Error("Column is missing cell template element")}addDividerDragListeners(){var t;this.stateMap.headerDividerListeners=null===(t=this.stateMap.headerDividerInstances)||void 0===t?void 0:t.map(((t,i)=>{const s=this.createDividerPointerDownHandler(i);return t.element.addEventListener("pointerdown",s),s}))}removeDividerDragListeners(){var t;if(null!=this.stateMap.headerDividerListeners){const i=this.stateMap.headerDividerListeners;null===(t=this.stateMap.headerDividerInstances)||void 0===t||t.forEach(((t,s)=>{const e=i[s];null!=e&&t.element.removeEventListener("pointerdown",e)})),this.stateMap.headerDividerListeners=void 0}}getViewportRows(t,i){return this.rows.slice(t,i+1).map((t=>null!=t?this.populateRowData(t):t))}populateRowData(t){var i;if(null!=this.rowData&&null!=t){const s=(null===(i=this.rowData)||void 0===i?void 0:i.call(this,t))||{};return Object.assign(Object.assign({},t),{data:s})}return t}getLayoutHeight(){return null==this.layoutHeight&&null!=this.tableElement&&(this.layoutHeight=d(this.tableElement)),this.layoutHeight}getLayoutWidth(){if(null==this.layoutWidth){const t=this.hostEl.clientWidth;t>0&&(this.layoutWidth=t)}return this.layoutWidth}clearLayoutHeight(){this.layoutHeight=void 0}clearLayoutWidth(){this.layoutWidth=void 0}get hostEl(){return n(this)}};A.style=":host{position:relative;display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;font-size:0.825rem;--scene-tree-table-row-padding:2px 0px;--scene-tree-table-column-gap:0.5rem;--scene-tree-table-column-resize-cursor:col-resize}.header{position:relative;display:grid;width:100%;border-bottom:var(--scene-tree-toolbar-separator)}.table{position:relative;display:grid;width:100%;height:100%;overflow:auto}.resize-overlay{position:absolute;top:0;cursor:var(--scene-tree-table-column-resize-cursor);z-index:1000;width:100%;height:100%}.divider-overlay{position:absolute;top:0;display:grid;pointer-events:none;z-index:2000;width:100%;height:100%}";const W=class{constructor(i){t(this,i)}render(){return s(e,null,s("div",{class:"content"},s("slot",{name:"before"})),s("div",{class:"content content-primary"},s("slot",null)),s("div",{class:"content"},s("slot",{name:"after"})))}};W.style=":host{--scene-tree-toolbar-content-gap:8px;display:flex;padding:0.5rem}.content{display:flex;align-items:center}.content-primary{width:100%}::slotted(:not(:first-child)){margin-left:var(--scene-tree-toolbar-content-gap)}";export{v as vertex_scene_tree_search,A as vertex_scene_tree_table_layout,W as vertex_scene_tree_toolbar}
@@ -1,4 +1,4 @@
1
1
  /**!
2
- * Copyright (c) 2022 Vertex Software LLC. All rights reserved.
2
+ * Copyright (c) 2023 Vertex Software LLC. All rights reserved.
3
3
  */
4
4
  function n(n){return n.getBoundingClientRect()}export{n as g}