@vertexvis/viewer 0.24.4-canary.8 → 0.24.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/README.template.md +6 -0
  2. package/dist/cjs/{controller-f032798e.js → controller-4996f10d.js} +2 -2
  3. package/dist/cjs/{controller-f032798e.js.map → controller-4996f10d.js.map} +1 -1
  4. package/dist/cjs/{cursors-2dfb0ef3.js → cursors-17ad74ac.js} +2 -2
  5. package/dist/cjs/{cursors-2dfb0ef3.js.map → cursors-17ad74ac.js.map} +1 -1
  6. package/dist/cjs/dom-fc408b4c.js.map +1 -1
  7. package/dist/cjs/{errors-04aa7cf2.js → errors-78196ad4.js} +9 -1
  8. package/dist/cjs/errors-78196ad4.js.map +1 -0
  9. package/dist/cjs/{index-5fa5a527.js → index-0abd8b0b.js} +2 -2
  10. package/dist/cjs/index-0abd8b0b.js.map +1 -0
  11. package/dist/cjs/index.cjs.js +4 -4
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/loader.cjs.js.map +1 -1
  14. package/dist/cjs/{queries-68cd2664.js → queries-4580caa5.js} +9 -3
  15. package/dist/cjs/queries-4580caa5.js.map +1 -0
  16. package/dist/cjs/{shadow-css-8962c4a9.js → shadow-css-37297ac8.js} +1 -1
  17. package/dist/cjs/shadow-css-37297ac8.js.map +1 -0
  18. package/dist/cjs/{stencil-a3f4e15b.js → stencil-40ef9119.js} +2 -2
  19. package/dist/cjs/{stencil-a3f4e15b.js.map → stencil-40ef9119.js.map} +1 -1
  20. package/dist/cjs/vertex-scene-tree-notification-banner_4.cjs.entry.js +8 -2
  21. package/dist/cjs/vertex-scene-tree-notification-banner_4.cjs.entry.js.map +1 -1
  22. package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +1 -1
  23. package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js +1 -1
  24. package/dist/cjs/vertex-scene-tree-table-header.cjs.entry.js +1 -1
  25. package/dist/cjs/vertex-scene-tree-table-resize-divider.cjs.entry.js +1 -1
  26. package/dist/cjs/vertex-scene-tree-toolbar-group.cjs.entry.js +1 -1
  27. package/dist/cjs/vertex-scene-tree.cjs.entry.js +3 -3
  28. package/dist/cjs/vertex-scene-tree.cjs.entry.js.map +1 -1
  29. package/dist/cjs/vertex-viewer-annotation-callout.cjs.entry.js +1 -1
  30. package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js +2 -2
  31. package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +1 -1
  32. package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +1 -1
  33. package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +1 -1
  34. package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +1 -1
  35. package/dist/cjs/vertex-viewer-hit-result-indicator.cjs.entry.js +2 -2
  36. package/dist/cjs/vertex-viewer-icon.cjs.entry.js +1 -1
  37. package/dist/cjs/vertex-viewer-layer.cjs.entry.js +1 -1
  38. package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +1 -1
  39. package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +1 -1
  40. package/dist/cjs/vertex-viewer-markup.cjs.entry.js +1 -1
  41. package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +1 -1
  42. package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +2 -2
  43. package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +1 -1
  44. package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +2 -2
  45. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +5 -5
  46. package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js.map +1 -1
  47. package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js +2 -2
  48. package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +2 -2
  49. package/dist/cjs/vertex-viewer-spinner.cjs.entry.js +1 -1
  50. package/dist/cjs/vertex-viewer-teleport-tool.cjs.entry.js +1 -1
  51. package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +2 -2
  52. package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +2 -2
  53. package/dist/cjs/vertex-viewer-walk-mode-tool.cjs.entry.js +4 -4
  54. package/dist/cjs/vertex-viewer-walk-mode-tool.cjs.entry.js.map +1 -1
  55. package/dist/cjs/vertex-viewer.cjs.entry.js +31 -15
  56. package/dist/cjs/vertex-viewer.cjs.entry.js.map +1 -1
  57. package/dist/cjs/viewer.cjs.js +1 -1
  58. package/dist/cjs/viewer.cjs.js.map +1 -1
  59. package/dist/collection/components/scene-tree/scene-tree.js +1 -1
  60. package/dist/collection/components/scene-tree/scene-tree.js.map +1 -1
  61. package/dist/collection/components/scene-tree-search/scene-tree-search.js +21 -1
  62. package/dist/collection/components/scene-tree-search/scene-tree-search.js.map +1 -1
  63. package/dist/collection/components/viewer/viewer.js +23 -13
  64. package/dist/collection/components/viewer/viewer.js.map +1 -1
  65. package/dist/collection/components/viewer-pin-group/viewer-pin-group.css +5 -0
  66. package/dist/collection/components/viewer-walk-mode-tool/viewer-walk-mode-tool.js +3 -3
  67. package/dist/collection/components/viewer-walk-mode-tool/viewer-walk-mode-tool.js.map +1 -1
  68. package/dist/collection/lib/cursors.js +1 -1
  69. package/dist/collection/lib/cursors.js.map +1 -1
  70. package/dist/collection/lib/model-views/controller.js +7 -1
  71. package/dist/collection/lib/model-views/controller.js.map +1 -1
  72. package/dist/collection/lib/stream/stream.js +6 -5
  73. package/dist/collection/lib/stream/stream.js.map +1 -1
  74. package/dist/collection/testing/viewer.js +2 -2
  75. package/dist/collection/testing/viewer.js.map +1 -1
  76. package/dist/components/cursors.js +1 -1
  77. package/dist/components/cursors.js.map +1 -1
  78. package/dist/components/errors.js +8 -1
  79. package/dist/components/errors.js.map +1 -1
  80. package/dist/components/queries.js +7 -1
  81. package/dist/components/queries.js.map +1 -1
  82. package/dist/components/scene-tree-search.js +6 -0
  83. package/dist/components/scene-tree-search.js.map +1 -1
  84. package/dist/components/vertex-scene-tree.js.map +1 -1
  85. package/dist/components/vertex-viewer-walk-mode-tool.js +3 -3
  86. package/dist/components/vertex-viewer-walk-mode-tool.js.map +1 -1
  87. package/dist/components/vertex-viewer.js +27 -11
  88. package/dist/components/vertex-viewer.js.map +1 -1
  89. package/dist/components/viewer-pin-group.js +1 -1
  90. package/dist/components/viewer-pin-group.js.map +1 -1
  91. package/dist/esm/{controller-00b61632.js → controller-8cfb590e.js} +2 -2
  92. package/dist/esm/{controller-00b61632.js.map → controller-8cfb590e.js.map} +1 -1
  93. package/dist/esm/{cursors-9e349d61.js → cursors-3806bc04.js} +2 -2
  94. package/dist/esm/{cursors-9e349d61.js.map → cursors-3806bc04.js.map} +1 -1
  95. package/dist/esm/dom-dba69343.js.map +1 -1
  96. package/dist/esm/{errors-0cbe2f60.js → errors-3fccf79a.js} +9 -2
  97. package/dist/{cjs/errors-04aa7cf2.js.map → esm/errors-3fccf79a.js.map} +1 -1
  98. package/dist/esm/{index-f3e96c9e.js → index-c12dc0cd.js} +2 -2
  99. package/dist/esm/index-c12dc0cd.js.map +1 -0
  100. package/dist/esm/index.js +4 -4
  101. package/dist/esm/index.mjs +4 -4
  102. package/dist/esm/loader.js +1 -1
  103. package/dist/esm/loader.js.map +1 -1
  104. package/dist/esm/loader.mjs +1 -1
  105. package/dist/esm/{queries-794dddcf.js → queries-948a88f9.js} +9 -3
  106. package/dist/esm/queries-948a88f9.js.map +1 -0
  107. package/dist/esm/{shadow-css-9363884b.js → shadow-css-d5069bdf.js} +1 -1
  108. package/dist/esm/shadow-css-d5069bdf.js.map +1 -0
  109. package/dist/esm/{stencil-9d9f090f.js → stencil-38b2fc28.js} +2 -2
  110. package/dist/esm/{stencil-9d9f090f.js.map → stencil-38b2fc28.js.map} +1 -1
  111. package/dist/esm/vertex-scene-tree-notification-banner_4.entry.js +8 -2
  112. package/dist/esm/vertex-scene-tree-notification-banner_4.entry.js.map +1 -1
  113. package/dist/esm/vertex-scene-tree-table-cell.entry.js +1 -1
  114. package/dist/esm/vertex-scene-tree-table-column.entry.js +1 -1
  115. package/dist/esm/vertex-scene-tree-table-header.entry.js +1 -1
  116. package/dist/esm/vertex-scene-tree-table-resize-divider.entry.js +1 -1
  117. package/dist/esm/vertex-scene-tree-toolbar-group.entry.js +1 -1
  118. package/dist/esm/vertex-scene-tree.entry.js +3 -3
  119. package/dist/esm/vertex-scene-tree.entry.js.map +1 -1
  120. package/dist/esm/vertex-viewer-annotation-callout.entry.js +1 -1
  121. package/dist/esm/vertex-viewer-box-query-tool.entry.js +2 -2
  122. package/dist/esm/vertex-viewer-button_3.entry.js +1 -1
  123. package/dist/esm/vertex-viewer-default-toolbar.entry.js +1 -1
  124. package/dist/esm/vertex-viewer-dom-element_2.entry.js +1 -1
  125. package/dist/esm/vertex-viewer-dom-group.entry.js +1 -1
  126. package/dist/esm/vertex-viewer-hit-result-indicator.entry.js +2 -2
  127. package/dist/esm/vertex-viewer-icon.entry.js +1 -1
  128. package/dist/esm/vertex-viewer-layer.entry.js +1 -1
  129. package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +1 -1
  130. package/dist/esm/vertex-viewer-markup-tool.entry.js +1 -1
  131. package/dist/esm/vertex-viewer-markup.entry.js +1 -1
  132. package/dist/esm/vertex-viewer-measurement-details.entry.js +1 -1
  133. package/dist/esm/vertex-viewer-measurement-distance.entry.js +2 -2
  134. package/dist/esm/vertex-viewer-measurement-line_2.entry.js +1 -1
  135. package/dist/esm/vertex-viewer-measurement-precise.entry.js +2 -2
  136. package/dist/esm/vertex-viewer-pin-group.entry.js +5 -5
  137. package/dist/esm/vertex-viewer-pin-group.entry.js.map +1 -1
  138. package/dist/esm/vertex-viewer-pin-label_2.entry.js +2 -2
  139. package/dist/esm/vertex-viewer-pin-tool.entry.js +2 -2
  140. package/dist/esm/vertex-viewer-spinner.entry.js +1 -1
  141. package/dist/esm/vertex-viewer-teleport-tool.entry.js +1 -1
  142. package/dist/esm/vertex-viewer-transform-widget.entry.js +2 -2
  143. package/dist/esm/vertex-viewer-view-cube.entry.js +2 -2
  144. package/dist/esm/vertex-viewer-walk-mode-tool.entry.js +4 -4
  145. package/dist/esm/vertex-viewer-walk-mode-tool.entry.js.map +1 -1
  146. package/dist/esm/vertex-viewer.entry.js +31 -15
  147. package/dist/esm/vertex-viewer.entry.js.map +1 -1
  148. package/dist/esm/viewer.js +1 -1
  149. package/dist/esm/viewer.js.map +1 -1
  150. package/dist/types/components/scene-tree/scene-tree.d.ts +1 -1
  151. package/dist/types/components/scene-tree-search/scene-tree-search.d.ts +5 -1
  152. package/dist/types/components/viewer/viewer.d.ts +3 -2
  153. package/dist/types/components.d.ts +11 -7
  154. package/dist/types/lib/stream/stream.d.ts +1 -1
  155. package/dist/types/testing/viewer.d.ts +2 -2
  156. package/dist/viewer/index.esm.js +1 -1
  157. package/dist/viewer/{p-0e0973f0.entry.js → p-03efd0d6.entry.js} +2 -2
  158. package/dist/viewer/{p-7f0eeb06.entry.js → p-0988832f.entry.js} +2 -2
  159. package/dist/viewer/{p-78a1be4e.entry.js → p-0aa04328.entry.js} +2 -2
  160. package/dist/viewer/p-18ce3f3b.entry.js +5 -0
  161. package/dist/viewer/{p-93960b4f.entry.js.map → p-18ce3f3b.entry.js.map} +1 -1
  162. package/dist/viewer/{p-2ecdcd5d.entry.js → p-23f0bb30.entry.js} +2 -2
  163. package/dist/viewer/{p-06b8bca7.entry.js → p-296311d3.entry.js} +2 -2
  164. package/dist/viewer/{p-2172230d.entry.js → p-2fd66679.entry.js} +2 -2
  165. package/dist/viewer/{p-5540add8.entry.js → p-362f3e12.entry.js} +2 -2
  166. package/dist/viewer/{p-110f66c6.js → p-388f809e.js} +2 -2
  167. package/dist/viewer/p-388f809e.js.map +1 -0
  168. package/dist/viewer/{p-48b63c5f.entry.js → p-45044ff2.entry.js} +2 -2
  169. package/dist/viewer/{p-9fc2e56e.entry.js → p-45b5b5ed.entry.js} +2 -2
  170. package/dist/viewer/{p-f79933ae.entry.js → p-4bd1ea70.entry.js} +2 -2
  171. package/dist/viewer/{p-842cc51b.entry.js → p-4bf16450.entry.js} +2 -2
  172. package/dist/viewer/{p-a057d7f2.entry.js → p-56fa8168.entry.js} +2 -2
  173. package/dist/viewer/{p-8c367e87.entry.js → p-59f204e7.entry.js} +2 -2
  174. package/dist/viewer/p-59f204e7.entry.js.map +1 -0
  175. package/dist/viewer/{p-33033b58.entry.js → p-6cf6eb8a.entry.js} +2 -2
  176. package/dist/viewer/p-715255e1.entry.js +5 -0
  177. package/dist/viewer/p-715255e1.entry.js.map +1 -0
  178. package/dist/viewer/{p-5f9352c0.entry.js → p-75f5ae33.entry.js} +2 -2
  179. package/dist/viewer/{p-7eea3fb3.entry.js → p-7a87ae97.entry.js} +2 -2
  180. package/dist/viewer/{p-b974c985.entry.js → p-86e1ee86.entry.js} +2 -2
  181. package/dist/viewer/p-86e1ee86.entry.js.map +1 -0
  182. package/dist/viewer/p-89d93218.entry.js +5 -0
  183. package/dist/viewer/p-89d93218.entry.js.map +1 -0
  184. package/dist/viewer/{p-07325d65.entry.js → p-8c53ed63.entry.js} +2 -2
  185. package/dist/viewer/p-991f7bac.js.map +1 -1
  186. package/dist/viewer/{p-983db3dd.entry.js → p-a009c6d9.entry.js} +2 -2
  187. package/dist/viewer/{p-dcb64250.entry.js → p-a3bc0b79.entry.js} +2 -2
  188. package/dist/viewer/{p-29318a17.entry.js → p-aece4279.entry.js} +2 -2
  189. package/dist/viewer/{p-be257155.js → p-b8c0f6ff.js} +1 -1
  190. package/dist/viewer/p-b8c0f6ff.js.map +1 -0
  191. package/dist/viewer/{p-2507658c.js → p-ba120f65.js} +2 -2
  192. package/dist/viewer/p-ba120f65.js.map +1 -0
  193. package/dist/viewer/p-bab8266e.js +5 -0
  194. package/dist/viewer/p-bab8266e.js.map +1 -0
  195. package/dist/viewer/{p-05562c21.entry.js → p-bcddbdb2.entry.js} +2 -2
  196. package/dist/viewer/{p-40e8a5ea.entry.js → p-c3b071a3.entry.js} +2 -2
  197. package/dist/viewer/{p-fbfa1e82.entry.js → p-cd3f0870.entry.js} +2 -2
  198. package/dist/viewer/{p-d2677c13.entry.js → p-d9e75269.entry.js} +2 -2
  199. package/dist/viewer/p-e1eaedd8.js +5 -0
  200. package/dist/viewer/{p-a27a9775.entry.js → p-e70e2c04.entry.js} +2 -2
  201. package/dist/viewer/{p-ffa8a2dd.entry.js → p-ebea8f56.entry.js} +2 -2
  202. package/dist/viewer/{p-342dac8b.js → p-eda9f5d4.js} +2 -2
  203. package/dist/viewer/{p-342dac8b.js.map → p-eda9f5d4.js.map} +1 -1
  204. package/dist/viewer/{p-9d54d593.entry.js → p-f292e8ae.entry.js} +2 -2
  205. package/dist/viewer/{p-6f1b22f0.js → p-f8951894.js} +2 -2
  206. package/dist/viewer/{p-d024c250.entry.js → p-f8a9c4d2.entry.js} +2 -2
  207. package/dist/viewer/viewer.esm.js +1 -1
  208. package/dist/viewer/viewer.esm.js.map +1 -1
  209. package/package.json +7 -7
  210. package/readme.md +10 -4
  211. package/dist/cjs/index-5fa5a527.js.map +0 -1
  212. package/dist/cjs/queries-68cd2664.js.map +0 -1
  213. package/dist/cjs/shadow-css-8962c4a9.js.map +0 -1
  214. package/dist/esm/errors-0cbe2f60.js.map +0 -1
  215. package/dist/esm/index-f3e96c9e.js.map +0 -1
  216. package/dist/esm/queries-794dddcf.js.map +0 -1
  217. package/dist/esm/shadow-css-9363884b.js.map +0 -1
  218. package/dist/viewer/p-04bf6b89.js +0 -5
  219. package/dist/viewer/p-110f66c6.js.map +0 -1
  220. package/dist/viewer/p-2507658c.js.map +0 -1
  221. package/dist/viewer/p-2ce9b8f7.entry.js +0 -5
  222. package/dist/viewer/p-2ce9b8f7.entry.js.map +0 -1
  223. package/dist/viewer/p-629a5ae7.entry.js +0 -5
  224. package/dist/viewer/p-629a5ae7.entry.js.map +0 -1
  225. package/dist/viewer/p-8c367e87.entry.js.map +0 -1
  226. package/dist/viewer/p-93960b4f.entry.js +0 -5
  227. package/dist/viewer/p-b974c985.entry.js.map +0 -1
  228. package/dist/viewer/p-be257155.js.map +0 -1
  229. package/dist/viewer/p-d9093da4.js +0 -5
  230. package/dist/viewer/p-d9093da4.js.map +0 -1
  231. /package/dist/viewer/{p-0e0973f0.entry.js.map → p-03efd0d6.entry.js.map} +0 -0
  232. /package/dist/viewer/{p-7f0eeb06.entry.js.map → p-0988832f.entry.js.map} +0 -0
  233. /package/dist/viewer/{p-78a1be4e.entry.js.map → p-0aa04328.entry.js.map} +0 -0
  234. /package/dist/viewer/{p-2ecdcd5d.entry.js.map → p-23f0bb30.entry.js.map} +0 -0
  235. /package/dist/viewer/{p-06b8bca7.entry.js.map → p-296311d3.entry.js.map} +0 -0
  236. /package/dist/viewer/{p-2172230d.entry.js.map → p-2fd66679.entry.js.map} +0 -0
  237. /package/dist/viewer/{p-5540add8.entry.js.map → p-362f3e12.entry.js.map} +0 -0
  238. /package/dist/viewer/{p-48b63c5f.entry.js.map → p-45044ff2.entry.js.map} +0 -0
  239. /package/dist/viewer/{p-9fc2e56e.entry.js.map → p-45b5b5ed.entry.js.map} +0 -0
  240. /package/dist/viewer/{p-f79933ae.entry.js.map → p-4bd1ea70.entry.js.map} +0 -0
  241. /package/dist/viewer/{p-842cc51b.entry.js.map → p-4bf16450.entry.js.map} +0 -0
  242. /package/dist/viewer/{p-a057d7f2.entry.js.map → p-56fa8168.entry.js.map} +0 -0
  243. /package/dist/viewer/{p-33033b58.entry.js.map → p-6cf6eb8a.entry.js.map} +0 -0
  244. /package/dist/viewer/{p-5f9352c0.entry.js.map → p-75f5ae33.entry.js.map} +0 -0
  245. /package/dist/viewer/{p-7eea3fb3.entry.js.map → p-7a87ae97.entry.js.map} +0 -0
  246. /package/dist/viewer/{p-07325d65.entry.js.map → p-8c53ed63.entry.js.map} +0 -0
  247. /package/dist/viewer/{p-983db3dd.entry.js.map → p-a009c6d9.entry.js.map} +0 -0
  248. /package/dist/viewer/{p-dcb64250.entry.js.map → p-a3bc0b79.entry.js.map} +0 -0
  249. /package/dist/viewer/{p-29318a17.entry.js.map → p-aece4279.entry.js.map} +0 -0
  250. /package/dist/viewer/{p-05562c21.entry.js.map → p-bcddbdb2.entry.js.map} +0 -0
  251. /package/dist/viewer/{p-40e8a5ea.entry.js.map → p-c3b071a3.entry.js.map} +0 -0
  252. /package/dist/viewer/{p-fbfa1e82.entry.js.map → p-cd3f0870.entry.js.map} +0 -0
  253. /package/dist/viewer/{p-d2677c13.entry.js.map → p-d9e75269.entry.js.map} +0 -0
  254. /package/dist/viewer/{p-04bf6b89.js.map → p-e1eaedd8.js.map} +0 -0
  255. /package/dist/viewer/{p-a27a9775.entry.js.map → p-e70e2c04.entry.js.map} +0 -0
  256. /package/dist/viewer/{p-ffa8a2dd.entry.js.map → p-ebea8f56.entry.js.map} +0 -0
  257. /package/dist/viewer/{p-9d54d593.entry.js.map → p-f292e8ae.entry.js.map} +0 -0
  258. /package/dist/viewer/{p-6f1b22f0.js.map → p-f8951894.js.map} +0 -0
  259. /package/dist/viewer/{p-d024c250.entry.js.map → p-f8a9c4d2.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{E as s}from"./p-6b00f7cd.js";class t{constructor(){this.onChanged=new s;this.cursors=[];this.nextId=0}add(s,a=t.NORMAL_PRIORITY){const l=this.getExistingDuplicateCursor(s,a);if(l!=null){this.remove(l.id)}const h=++this.nextId;const i={id:h,cursor:s,priority:a,dispose:()=>this.remove(h)};this.cursors.push(i);this.onChanged.emit();return i}remove(s){const t=this.cursors.findIndex((({id:t})=>t===s));if(t>=0){this.cursors.splice(t,1);this.onChanged.emit()}}getExistingDuplicateCursor(s,t){return this.cursors.find((a=>a.cursor===s&&a.priority===t))}getActiveCursor(){var s;const t=this.cursors.concat().reverse().sort(((s,t)=>t.priority-s.priority));return(s=t[0])===null||s===void 0?void 0:s.cursor}}t.LOW_PRIORITY=0;t.NORMAL_PRIORITY=10;t.HIGH_PRIORITY=20;const a={url:"data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' stroke='%23fff' stroke-width='1.25' stroke-opacity='0.5' stroke-miterlimit='10' shape-rendering='crispEdges'/%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' shape-rendering='crispEdges'/%3E%3C/svg%3E",offsetX:-24,offsetY:-24};const l={url:"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath class='cls-2' d='M1,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.08,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E%3Cpath class='cls-3' d='M8.75,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3C/svg%3E",offsetX:-30,offsetY:-30};const h={url:"data:image/svg+xml,%3Csvg width='36px' height='36px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12,2 C7.581722,2 4,5.581722 4,10 C4.00435812,11.7714969 4.41127263,13.5188357 5.19,15.11 C6.15517666,17.0237439 7.49502409,18.7240579 9.13,20.11 C9.86916736,20.7592093 10.6620019,21.3446357 11.5,21.86 L12,22.14 L12.5,21.86 C13.8750156,21.0120029 15.1296156,19.9827599 16.23,18.8 C17.2698142,17.7023203 18.1394508,16.4551671 18.81,15.1 C19.5872532,13.5118707 19.9941287,11.7681184 20,10 C20,5.581722 16.418278,2 12,2 Z M12,13 C10.3431458,13 9,11.6568542 9,10 C9,8.34314575 10.3431458,7 12,7 C13.6568542,7 15,8.34314575 15,10 C15,10.7956495 14.6839295,11.5587112 14.1213203,12.1213203 C13.5587112,12.6839295 12.7956495,13 12,13 Z' id='path-1'%3E%3C/path%3E%3C/defs%3E%3Cg id='icons/pin-filled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cmask id='mask-2' fill='white'%3E%3Cuse xlink:href='%23path-1'%3E%3C/use%3E%3C/mask%3E%3Cuse id='Shape' stroke='%23FAFAFA' fill='%23BDBDBD' fill-rule='nonzero' xlink:href='%23path-1'%3E%3C/use%3E%3C/g%3E%3C/svg%3E",offsetX:17,offsetY:22};const i={url:"data:image/svg+xml,%3Csvg width='36px' height='36px' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 16 24' %3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;%7D.cls-2%7Bfill:%23616161;%7D.cls-3%7Bclip-path:url(%23clip-path);%7D%3C/style%3E%3CclipPath id='clip-path'%3E%3Ccircle cx='-576.76' cy='-107.26' r='4'/%3E%3C/clipPath%3E%3C/defs%3E%3Cpath d='M8,16H8a.48.48,0,0,1-.42-.23L5.75,13H3.51A1.5,1.5,0,0,1,2,11.5v-8A1.5,1.5,0,0,1,3.51,2h9A1.51,1.51,0,0,1,14,3.5v8a1.5,1.5,0,0,1-1.5,1.5H10.22L8.39,15.81A.5.5,0,0,1,8,16ZM3.51,3a.5.5,0,0,0-.5.5v8a.5.5,0,0,0,.5.5H6a.5.5,0,0,1,.42.23L8,14.61l1.55-2.38A.5.5,0,0,1,10,12h2.56a.5.5,0,0,0,.5-.5v-8a.51.51,0,0,0-.5-.5Z'/%3E%3Ccircle cx='8.01' cy='20' r='2'/%3E%3C/svg%3E%0A",offsetX:17,offsetY:29};const e={url:"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-2' d='M1.25,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.33,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E %3Cpath class='cls-3' d='M9,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2.25,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3Cpath class='cls-1' d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E %3Cpath d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E%3C/svg%3E",offsetX:-30,offsetY:-30};export{t as C,l as a,e as b,i as l,a as m,h as p};
5
- //# sourceMappingURL=p-342dac8b.js.map
4
+ import{E as s}from"./p-6b00f7cd.js";class t{constructor(){this.onChanged=new s;this.cursors=[];this.nextId=0}add(s,a=t.NORMAL_PRIORITY){const l=this.getExistingDuplicateCursor(s,a);if(l!=null){this.remove(l.id)}const h=++this.nextId;const i={id:h,cursor:s,priority:a,dispose:()=>this.remove(h)};this.cursors.push(i);this.onChanged.emit();return i}remove(s){const t=this.cursors.findIndex((({id:t})=>t===s));if(t>=0){this.cursors.splice(t,1);this.onChanged.emit()}}getExistingDuplicateCursor(s,t){return this.cursors.find((a=>a.cursor===s&&a.priority===t))}getActiveCursor(){var s;const t=this.cursors.concat().reverse().sort(((s,t)=>t.priority-s.priority));return(s=t[0])===null||s===void 0?void 0:s.cursor}}t.LOW_PRIORITY=0;t.NORMAL_PRIORITY=10;t.HIGH_PRIORITY=20;const a={url:"data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' stroke='%23fff' stroke-width='1.25' stroke-opacity='0.5' stroke-miterlimit='10' shape-rendering='crispEdges'/%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' shape-rendering='crispEdges'/%3E%3C/svg%3E",offsetX:-24,offsetY:-24};const l={url:"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath class='cls-2' d='M1,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.08,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E%3Cpath class='cls-3' d='M8.75,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3C/svg%3E",offsetX:-30,offsetY:-30};const h={url:"data:image/svg+xml,%3Csvg width='36px' height='36px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12,2 C7.581722,2 4,5.581722 4,10 C4.00435812,11.7714969 4.41127263,13.5188357 5.19,15.11 C6.15517666,17.0237439 7.49502409,18.7240579 9.13,20.11 C9.86916736,20.7592093 10.6620019,21.3446357 11.5,21.86 L12,22.14 L12.5,21.86 C13.8750156,21.0120029 15.1296156,19.9827599 16.23,18.8 C17.2698142,17.7023203 18.1394508,16.4551671 18.81,15.1 C19.5872532,13.5118707 19.9941287,11.7681184 20,10 C20,5.581722 16.418278,2 12,2 Z M12,13 C10.3431458,13 9,11.6568542 9,10 C9,8.34314575 10.3431458,7 12,7 C13.6568542,7 15,8.34314575 15,10 C15,10.7956495 14.6839295,11.5587112 14.1213203,12.1213203 C13.5587112,12.6839295 12.7956495,13 12,13 Z' id='path-1'%3E%3C/path%3E%3C/defs%3E%3Cg id='icons/pin-filled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cmask id='mask-2' fill='white'%3E%3Cuse xlink:href='%23path-1'%3E%3C/use%3E%3C/mask%3E%3Cuse id='Shape' stroke='%23FAFAFA' fill='%23BDBDBD' fill-rule='nonzero' xlink:href='%23path-1'%3E%3C/use%3E%3C/g%3E%3C/svg%3E",offsetX:17,offsetY:32};const i={url:"data:image/svg+xml,%3Csvg width='36px' height='36px' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 16 24' %3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;%7D.cls-2%7Bfill:%23616161;%7D.cls-3%7Bclip-path:url(%23clip-path);%7D%3C/style%3E%3CclipPath id='clip-path'%3E%3Ccircle cx='-576.76' cy='-107.26' r='4'/%3E%3C/clipPath%3E%3C/defs%3E%3Cpath d='M8,16H8a.48.48,0,0,1-.42-.23L5.75,13H3.51A1.5,1.5,0,0,1,2,11.5v-8A1.5,1.5,0,0,1,3.51,2h9A1.51,1.51,0,0,1,14,3.5v8a1.5,1.5,0,0,1-1.5,1.5H10.22L8.39,15.81A.5.5,0,0,1,8,16ZM3.51,3a.5.5,0,0,0-.5.5v8a.5.5,0,0,0,.5.5H6a.5.5,0,0,1,.42.23L8,14.61l1.55-2.38A.5.5,0,0,1,10,12h2.56a.5.5,0,0,0,.5-.5v-8a.51.51,0,0,0-.5-.5Z'/%3E%3Ccircle cx='8.01' cy='20' r='2'/%3E%3C/svg%3E%0A",offsetX:17,offsetY:29};const e={url:"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-2' d='M1.25,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.33,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E %3Cpath class='cls-3' d='M9,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2.25,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3Cpath class='cls-1' d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E %3Cpath d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E%3C/svg%3E",offsetX:-30,offsetY:-30};export{t as C,l as a,e as b,i as l,a as m,h as p};
5
+ //# sourceMappingURL=p-eda9f5d4.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["src/lib/cursors.ts"],"names":["CursorManager","[object Object]","this","onChanged","EventDispatcher","cursors","nextId","cursor","priority","NORMAL_PRIORITY","duplicateCursor","getExistingDuplicateCursor","remove","id","instance","dispose","push","emit","cursorId","index","findIndex","splice","cursorToCheck","priorityToCheck","find","sorted","concat","reverse","sort","a","b","_a","LOW_PRIORITY","HIGH_PRIORITY","measurementCursor","url","offsetX","offsetY","measurementWithArrowCursor","pinCursor","labelPinCursor","boxQueryCursor"],"mappings":";;;0CAwEaA,EAAbC,cAuBkBC,KAAAC,UAAY,IAAIC,EAExBF,KAAAG,QAA4B,GAE5BH,KAAAI,OAAS,EAYVL,IACLM,EACAC,EAAWR,EAAcS,iBAMzB,MAAMC,EAAkBR,KAAKS,2BAA2BJ,EAAQC,GAChE,GAAIE,GAAmB,KAAM,CAC3BR,KAAKU,OAAOF,EAAgBG,IAG9B,MAAMA,IAAOX,KAAKI,OAClB,MAAMQ,EAAW,CAAED,GAAAA,EAAIN,OAAAA,EAAQC,SAAAA,EAAUO,QAAS,IAAMb,KAAKU,OAAOC,IACpEX,KAAKG,QAAQW,KAAKF,GAClBZ,KAAKC,UAAUc,OACf,OAAOH,EAQDb,OAAOiB,GACb,MAAMC,EAAQjB,KAAKG,QAAQe,WAAU,EAAGP,GAAAA,KAASA,IAAOK,IACxD,GAAIC,GAAS,EAAG,CACdjB,KAAKG,QAAQgB,OAAOF,EAAO,GAC3BjB,KAAKC,UAAUc,QAWXhB,2BACNqB,EACAC,GAEA,OAAOrB,KAAKG,QAAQmB,MACjBjB,GACCA,EAAOA,SAAWe,GAAiBf,EAAOC,WAAae,IAStDtB,wBACL,MAAMwB,EAASvB,KAAKG,QACjBqB,SACAC,UACAC,MAAK,CAACC,EAAGC,IAAMA,EAAEtB,SAAWqB,EAAErB,WAEjC,OAAOuB,EAAAN,EAAO,MAAE,MAAAM,SAAA,OAAA,EAAAA,EAAExB,QAhGGP,EAAAgC,aAAe,EAMfhC,EAAAS,gBAAkB,GAKlBT,EAAAiC,cAAgB,SA2F5BC,EAAoB,CAC/BC,IAAK,krBACLC,SAAU,GACVC,SAAU,UAGCC,EAA6B,CACxCH,IAAK,uiCACLC,SAAU,GACVC,SAAU,UAGCE,EAAY,CACvBJ,IAAK,4oCACLC,QAAS,GACTC,QAAS,UAGEG,EAAiB,CAC5BL,IAAK,ovBACLC,QAAS,GACTC,QAAS,UAGEI,EAAiB,CAC5BN,IAAK,g1BACLC,SAAU,GACVC,SAAU","sourcesContent":["import { Disposable, EventDispatcher } from '@vertexvis/utils';\n\n/**\n * Represents a built-in [browser CSS\n * cursor](https://developer.mozilla.org/en-US/docs/Web/CSS/cursor).\n */\nexport type CssCursor =\n | 'auto'\n | 'default'\n | 'none'\n | 'context-menu'\n | 'help'\n | 'pointer'\n | 'progress'\n | 'wait'\n | 'cell'\n | 'crosshair'\n | 'text'\n | 'vertical-text'\n | 'alias'\n | 'copy'\n | 'move'\n | 'no-drop'\n | 'not-allowed'\n | 'grab'\n | 'grabbing'\n | 'all-scroll'\n | 'col-resize'\n | 'row-resize'\n | 'n-resize'\n | 'e-resize'\n | 's-resize'\n | 'w-resize'\n | 'ne-resize'\n | 'nw-resize'\n | 'se-resize'\n | 'sw-resize'\n | 'ew-resize'\n | 'ns-resize'\n | 'nesw-resize'\n | 'nwse-resize'\n | 'zoom-in'\n | 'zoom-out'\n | string;\n\n/**\n * Represents a custom cursor that points to an image file and offset.\n */\nexport interface CustomCursor {\n url: string;\n offsetX?: number;\n offsetY?: number;\n}\n\n/**\n * Represents all possible cursor types.\n */\nexport type Cursor = CssCursor | CustomCursor;\n\ninterface CursorInstance extends Disposable {\n id: number;\n cursor: Cursor;\n priority: number;\n}\n\n/**\n * The cursor manager maintains a prioritized list of cursors for the viewer.\n *\n * Cursors with the highest priority will be considered active, where the most\n * recently added cursor will take precedence if there are multiple cursors with\n * the same priority.\n */\nexport class CursorManager {\n /**\n * A constant representing the lowest priority cursors.\n */\n public static readonly LOW_PRIORITY = 0;\n\n /**\n * A constant representing a priority between `LOW_PRIORITY` and\n * `HIGH_PRIORITY`.\n */\n public static readonly NORMAL_PRIORITY = 10;\n\n /**\n * A constant representing the high priority cursors.\n */\n public static readonly HIGH_PRIORITY = 20;\n\n /**\n * An event dispatcher that emits an event when a cursor is added or removed.\n *\n * @see {@link CursorManager.add} to add a cursor.\n * @see {@link CursorManager.getActiveCursor} to query the current cursor.\n */\n public readonly onChanged = new EventDispatcher<void>();\n\n private cursors: CursorInstance[] = [];\n\n private nextId = 0;\n\n /**\n * Adds a cursor to the cursor manager, and returns an identifier that can be\n * used to remove the cursor.\n *\n * @param cursor The cursor to add.\n * @param priority The priority of the cursor. Higher values have higher\n * \tpriority over lower values.\n * @returns An identifier for the cursor.\n * @see {@link CursorManager.getActiveCursor} to query the current cursor.\n */\n public add(\n cursor: Cursor,\n priority = CursorManager.NORMAL_PRIORITY\n ): Disposable {\n // Ensure a duplicate cursor will not be added to the cursor manager.\n // If a matching cursor exists, delete it before proceeding.\n // Note that deleting the old cursor and adding the new one results in the\n // new cursor taking precedent over other existing cursors with the same priority.\n const duplicateCursor = this.getExistingDuplicateCursor(cursor, priority);\n if (duplicateCursor != null) {\n this.remove(duplicateCursor.id);\n }\n\n const id = ++this.nextId;\n const instance = { id, cursor, priority, dispose: () => this.remove(id) };\n this.cursors.push(instance);\n this.onChanged.emit();\n return instance;\n }\n\n /**\n * Removes a cursor with the given ID, if it exists.\n *\n * @param cursorId The ID of the cursor to remove.\n */\n private remove(cursorId: number): void {\n const index = this.cursors.findIndex(({ id }) => id === cursorId);\n if (index >= 0) {\n this.cursors.splice(index, 1);\n this.onChanged.emit();\n }\n }\n\n /**\n * Checks to see if an existing cursor matches the provided cursor and priority level.\n * The matching cursor is returned if found.\n *\n * @param cursorToCheck The cursor to check for duplicates against.\n * @param priorityToCheck The priority level to check for duplicates against.\n */\n private getExistingDuplicateCursor(\n cursorToCheck: Cursor,\n priorityToCheck: number\n ): CursorInstance | undefined {\n return this.cursors.find(\n (cursor) =>\n cursor.cursor === cursorToCheck && cursor.priority === priorityToCheck\n );\n }\n\n /**\n * Returns the active cursor based on priority and insertion order.\n *\n * @see {@link CursorManager.add} to add a cursor.\n */\n public getActiveCursor(): Cursor | undefined {\n const sorted = this.cursors\n .concat()\n .reverse()\n .sort((a, b) => b.priority - a.priority);\n\n return sorted[0]?.cursor;\n }\n}\n\n// CSS SVG images need to be URL encoded: https://yoksel.github.io/url-encoder/\n\nexport const measurementCursor = {\n url: \"data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' stroke='%23fff' stroke-width='1.25' stroke-opacity='0.5' stroke-miterlimit='10' shape-rendering='crispEdges'/%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' shape-rendering='crispEdges'/%3E%3C/svg%3E\",\n offsetX: -24,\n offsetY: -24,\n};\n\nexport const measurementWithArrowCursor = {\n url: \"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath class='cls-2' d='M1,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.08,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E%3Cpath class='cls-3' d='M8.75,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3C/svg%3E\",\n offsetX: -30,\n offsetY: -30,\n};\n\nexport const pinCursor = {\n url: \"data:image/svg+xml,%3Csvg width='36px' height='36px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12,2 C7.581722,2 4,5.581722 4,10 C4.00435812,11.7714969 4.41127263,13.5188357 5.19,15.11 C6.15517666,17.0237439 7.49502409,18.7240579 9.13,20.11 C9.86916736,20.7592093 10.6620019,21.3446357 11.5,21.86 L12,22.14 L12.5,21.86 C13.8750156,21.0120029 15.1296156,19.9827599 16.23,18.8 C17.2698142,17.7023203 18.1394508,16.4551671 18.81,15.1 C19.5872532,13.5118707 19.9941287,11.7681184 20,10 C20,5.581722 16.418278,2 12,2 Z M12,13 C10.3431458,13 9,11.6568542 9,10 C9,8.34314575 10.3431458,7 12,7 C13.6568542,7 15,8.34314575 15,10 C15,10.7956495 14.6839295,11.5587112 14.1213203,12.1213203 C13.5587112,12.6839295 12.7956495,13 12,13 Z' id='path-1'%3E%3C/path%3E%3C/defs%3E%3Cg id='icons/pin-filled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cmask id='mask-2' fill='white'%3E%3Cuse xlink:href='%23path-1'%3E%3C/use%3E%3C/mask%3E%3Cuse id='Shape' stroke='%23FAFAFA' fill='%23BDBDBD' fill-rule='nonzero' xlink:href='%23path-1'%3E%3C/use%3E%3C/g%3E%3C/svg%3E\",\n offsetX: 17,\n offsetY: 22,\n};\n\nexport const labelPinCursor = {\n url: \"data:image/svg+xml,%3Csvg width='36px' height='36px' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 16 24' %3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;%7D.cls-2%7Bfill:%23616161;%7D.cls-3%7Bclip-path:url(%23clip-path);%7D%3C/style%3E%3CclipPath id='clip-path'%3E%3Ccircle cx='-576.76' cy='-107.26' r='4'/%3E%3C/clipPath%3E%3C/defs%3E%3Cpath d='M8,16H8a.48.48,0,0,1-.42-.23L5.75,13H3.51A1.5,1.5,0,0,1,2,11.5v-8A1.5,1.5,0,0,1,3.51,2h9A1.51,1.51,0,0,1,14,3.5v8a1.5,1.5,0,0,1-1.5,1.5H10.22L8.39,15.81A.5.5,0,0,1,8,16ZM3.51,3a.5.5,0,0,0-.5.5v8a.5.5,0,0,0,.5.5H6a.5.5,0,0,1,.42.23L8,14.61l1.55-2.38A.5.5,0,0,1,10,12h2.56a.5.5,0,0,0,.5-.5v-8a.51.51,0,0,0-.5-.5Z'/%3E%3Ccircle cx='8.01' cy='20' r='2'/%3E%3C/svg%3E%0A\",\n offsetX: 17,\n offsetY: 29,\n};\n\nexport const boxQueryCursor = {\n url: \"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-2' d='M1.25,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.33,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E %3Cpath class='cls-3' d='M9,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2.25,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3Cpath class='cls-1' d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E %3Cpath d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E%3C/svg%3E\",\n offsetX: -30,\n offsetY: -30,\n};\n"]}
1
+ {"version":3,"sources":["src/lib/cursors.ts"],"names":["CursorManager","[object Object]","this","onChanged","EventDispatcher","cursors","nextId","cursor","priority","NORMAL_PRIORITY","duplicateCursor","getExistingDuplicateCursor","remove","id","instance","dispose","push","emit","cursorId","index","findIndex","splice","cursorToCheck","priorityToCheck","find","sorted","concat","reverse","sort","a","b","_a","LOW_PRIORITY","HIGH_PRIORITY","measurementCursor","url","offsetX","offsetY","measurementWithArrowCursor","pinCursor","labelPinCursor","boxQueryCursor"],"mappings":";;;0CAwEaA,EAAbC,cAuBkBC,KAAAC,UAAY,IAAIC,EAExBF,KAAAG,QAA4B,GAE5BH,KAAAI,OAAS,EAYVL,IACLM,EACAC,EAAWR,EAAcS,iBAMzB,MAAMC,EAAkBR,KAAKS,2BAA2BJ,EAAQC,GAChE,GAAIE,GAAmB,KAAM,CAC3BR,KAAKU,OAAOF,EAAgBG,IAG9B,MAAMA,IAAOX,KAAKI,OAClB,MAAMQ,EAAW,CAAED,GAAAA,EAAIN,OAAAA,EAAQC,SAAAA,EAAUO,QAAS,IAAMb,KAAKU,OAAOC,IACpEX,KAAKG,QAAQW,KAAKF,GAClBZ,KAAKC,UAAUc,OACf,OAAOH,EAQDb,OAAOiB,GACb,MAAMC,EAAQjB,KAAKG,QAAQe,WAAU,EAAGP,GAAAA,KAASA,IAAOK,IACxD,GAAIC,GAAS,EAAG,CACdjB,KAAKG,QAAQgB,OAAOF,EAAO,GAC3BjB,KAAKC,UAAUc,QAWXhB,2BACNqB,EACAC,GAEA,OAAOrB,KAAKG,QAAQmB,MACjBjB,GACCA,EAAOA,SAAWe,GAAiBf,EAAOC,WAAae,IAStDtB,wBACL,MAAMwB,EAASvB,KAAKG,QACjBqB,SACAC,UACAC,MAAK,CAACC,EAAGC,IAAMA,EAAEtB,SAAWqB,EAAErB,WAEjC,OAAOuB,EAAAN,EAAO,MAAE,MAAAM,SAAA,OAAA,EAAAA,EAAExB,QAhGGP,EAAAgC,aAAe,EAMfhC,EAAAS,gBAAkB,GAKlBT,EAAAiC,cAAgB,SA2F5BC,EAAoB,CAC/BC,IAAK,krBACLC,SAAU,GACVC,SAAU,UAGCC,EAA6B,CACxCH,IAAK,uiCACLC,SAAU,GACVC,SAAU,UAGCE,EAAY,CACvBJ,IAAK,4oCACLC,QAAS,GACTC,QAAS,UAGEG,EAAiB,CAC5BL,IAAK,ovBACLC,QAAS,GACTC,QAAS,UAGEI,EAAiB,CAC5BN,IAAK,g1BACLC,SAAU,GACVC,SAAU","sourcesContent":["import { Disposable, EventDispatcher } from '@vertexvis/utils';\n\n/**\n * Represents a built-in [browser CSS\n * cursor](https://developer.mozilla.org/en-US/docs/Web/CSS/cursor).\n */\nexport type CssCursor =\n | 'auto'\n | 'default'\n | 'none'\n | 'context-menu'\n | 'help'\n | 'pointer'\n | 'progress'\n | 'wait'\n | 'cell'\n | 'crosshair'\n | 'text'\n | 'vertical-text'\n | 'alias'\n | 'copy'\n | 'move'\n | 'no-drop'\n | 'not-allowed'\n | 'grab'\n | 'grabbing'\n | 'all-scroll'\n | 'col-resize'\n | 'row-resize'\n | 'n-resize'\n | 'e-resize'\n | 's-resize'\n | 'w-resize'\n | 'ne-resize'\n | 'nw-resize'\n | 'se-resize'\n | 'sw-resize'\n | 'ew-resize'\n | 'ns-resize'\n | 'nesw-resize'\n | 'nwse-resize'\n | 'zoom-in'\n | 'zoom-out'\n | string;\n\n/**\n * Represents a custom cursor that points to an image file and offset.\n */\nexport interface CustomCursor {\n url: string;\n offsetX?: number;\n offsetY?: number;\n}\n\n/**\n * Represents all possible cursor types.\n */\nexport type Cursor = CssCursor | CustomCursor;\n\ninterface CursorInstance extends Disposable {\n id: number;\n cursor: Cursor;\n priority: number;\n}\n\n/**\n * The cursor manager maintains a prioritized list of cursors for the viewer.\n *\n * Cursors with the highest priority will be considered active, where the most\n * recently added cursor will take precedence if there are multiple cursors with\n * the same priority.\n */\nexport class CursorManager {\n /**\n * A constant representing the lowest priority cursors.\n */\n public static readonly LOW_PRIORITY = 0;\n\n /**\n * A constant representing a priority between `LOW_PRIORITY` and\n * `HIGH_PRIORITY`.\n */\n public static readonly NORMAL_PRIORITY = 10;\n\n /**\n * A constant representing the high priority cursors.\n */\n public static readonly HIGH_PRIORITY = 20;\n\n /**\n * An event dispatcher that emits an event when a cursor is added or removed.\n *\n * @see {@link CursorManager.add} to add a cursor.\n * @see {@link CursorManager.getActiveCursor} to query the current cursor.\n */\n public readonly onChanged = new EventDispatcher<void>();\n\n private cursors: CursorInstance[] = [];\n\n private nextId = 0;\n\n /**\n * Adds a cursor to the cursor manager, and returns an identifier that can be\n * used to remove the cursor.\n *\n * @param cursor The cursor to add.\n * @param priority The priority of the cursor. Higher values have higher\n * \tpriority over lower values.\n * @returns An identifier for the cursor.\n * @see {@link CursorManager.getActiveCursor} to query the current cursor.\n */\n public add(\n cursor: Cursor,\n priority = CursorManager.NORMAL_PRIORITY\n ): Disposable {\n // Ensure a duplicate cursor will not be added to the cursor manager.\n // If a matching cursor exists, delete it before proceeding.\n // Note that deleting the old cursor and adding the new one results in the\n // new cursor taking precedent over other existing cursors with the same priority.\n const duplicateCursor = this.getExistingDuplicateCursor(cursor, priority);\n if (duplicateCursor != null) {\n this.remove(duplicateCursor.id);\n }\n\n const id = ++this.nextId;\n const instance = { id, cursor, priority, dispose: () => this.remove(id) };\n this.cursors.push(instance);\n this.onChanged.emit();\n return instance;\n }\n\n /**\n * Removes a cursor with the given ID, if it exists.\n *\n * @param cursorId The ID of the cursor to remove.\n */\n private remove(cursorId: number): void {\n const index = this.cursors.findIndex(({ id }) => id === cursorId);\n if (index >= 0) {\n this.cursors.splice(index, 1);\n this.onChanged.emit();\n }\n }\n\n /**\n * Checks to see if an existing cursor matches the provided cursor and priority level.\n * The matching cursor is returned if found.\n *\n * @param cursorToCheck The cursor to check for duplicates against.\n * @param priorityToCheck The priority level to check for duplicates against.\n */\n private getExistingDuplicateCursor(\n cursorToCheck: Cursor,\n priorityToCheck: number\n ): CursorInstance | undefined {\n return this.cursors.find(\n (cursor) =>\n cursor.cursor === cursorToCheck && cursor.priority === priorityToCheck\n );\n }\n\n /**\n * Returns the active cursor based on priority and insertion order.\n *\n * @see {@link CursorManager.add} to add a cursor.\n */\n public getActiveCursor(): Cursor | undefined {\n const sorted = this.cursors\n .concat()\n .reverse()\n .sort((a, b) => b.priority - a.priority);\n\n return sorted[0]?.cursor;\n }\n}\n\n// CSS SVG images need to be URL encoded: https://yoksel.github.io/url-encoder/\n\nexport const measurementCursor = {\n url: \"data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' stroke='%23fff' stroke-width='1.25' stroke-opacity='0.5' stroke-miterlimit='10' shape-rendering='crispEdges'/%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' shape-rendering='crispEdges'/%3E%3C/svg%3E\",\n offsetX: -24,\n offsetY: -24,\n};\n\nexport const measurementWithArrowCursor = {\n url: \"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath class='cls-2' d='M1,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.08,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E%3Cpath class='cls-3' d='M8.75,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3C/svg%3E\",\n offsetX: -30,\n offsetY: -30,\n};\n\nexport const pinCursor = {\n url: \"data:image/svg+xml,%3Csvg width='36px' height='36px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath d='M12,2 C7.581722,2 4,5.581722 4,10 C4.00435812,11.7714969 4.41127263,13.5188357 5.19,15.11 C6.15517666,17.0237439 7.49502409,18.7240579 9.13,20.11 C9.86916736,20.7592093 10.6620019,21.3446357 11.5,21.86 L12,22.14 L12.5,21.86 C13.8750156,21.0120029 15.1296156,19.9827599 16.23,18.8 C17.2698142,17.7023203 18.1394508,16.4551671 18.81,15.1 C19.5872532,13.5118707 19.9941287,11.7681184 20,10 C20,5.581722 16.418278,2 12,2 Z M12,13 C10.3431458,13 9,11.6568542 9,10 C9,8.34314575 10.3431458,7 12,7 C13.6568542,7 15,8.34314575 15,10 C15,10.7956495 14.6839295,11.5587112 14.1213203,12.1213203 C13.5587112,12.6839295 12.7956495,13 12,13 Z' id='path-1'%3E%3C/path%3E%3C/defs%3E%3Cg id='icons/pin-filled' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cmask id='mask-2' fill='white'%3E%3Cuse xlink:href='%23path-1'%3E%3C/use%3E%3C/mask%3E%3Cuse id='Shape' stroke='%23FAFAFA' fill='%23BDBDBD' fill-rule='nonzero' xlink:href='%23path-1'%3E%3C/use%3E%3C/g%3E%3C/svg%3E\",\n offsetX: 17,\n offsetY: 32,\n};\n\nexport const labelPinCursor = {\n url: \"data:image/svg+xml,%3Csvg width='36px' height='36px' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 16 24' %3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;%7D.cls-2%7Bfill:%23616161;%7D.cls-3%7Bclip-path:url(%23clip-path);%7D%3C/style%3E%3CclipPath id='clip-path'%3E%3Ccircle cx='-576.76' cy='-107.26' r='4'/%3E%3C/clipPath%3E%3C/defs%3E%3Cpath d='M8,16H8a.48.48,0,0,1-.42-.23L5.75,13H3.51A1.5,1.5,0,0,1,2,11.5v-8A1.5,1.5,0,0,1,3.51,2h9A1.51,1.51,0,0,1,14,3.5v8a1.5,1.5,0,0,1-1.5,1.5H10.22L8.39,15.81A.5.5,0,0,1,8,16ZM3.51,3a.5.5,0,0,0-.5.5v8a.5.5,0,0,0,.5.5H6a.5.5,0,0,1,.42.23L8,14.61l1.55-2.38A.5.5,0,0,1,10,12h2.56a.5.5,0,0,0,.5-.5v-8a.51.51,0,0,0-.5-.5Z'/%3E%3Ccircle cx='8.01' cy='20' r='2'/%3E%3C/svg%3E%0A\",\n offsetX: 17,\n offsetY: 29,\n};\n\nexport const boxQueryCursor = {\n url: \"data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-2' d='M1.25,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.33,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E %3Cpath class='cls-3' d='M9,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2.25,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3Cpath class='cls-1' d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E %3Cpath d='M21.36,22.5H15.5V16.64a.5.5,0,0,0-1,0V22.5H8.64a.5.5,0,0,0,0,1H14.5v5.86a.5.5,0,0,0,1,0V23.5h5.86a.5.5,0,0,0,0-1Z' /%3E%3C/svg%3E\",\n offsetX: -30,\n offsetY: -30,\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Copyright (c) 2026 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{r as e,h as t,H as r}from"./p-110f66c6.js";const o=":host{--scene-tree-toolbar-group-item-gap:calc(\n var(--scene-tree-toolbar-content-gap) / 2\n );display:flex}::slotted(:not(:first-child)){margin-left:var(--scene-tree-toolbar-group-item-gap)}";const s=class{constructor(t){e(this,t)}render(){return t(r,null,t("slot",null))}};s.style=o;export{s as vertex_scene_tree_toolbar_group};
5
- //# sourceMappingURL=p-9d54d593.entry.js.map
4
+ import{r as e,h as t,H as r}from"./p-388f809e.js";const o=":host{--scene-tree-toolbar-group-item-gap:calc(\n var(--scene-tree-toolbar-content-gap) / 2\n );display:flex}::slotted(:not(:first-child)){margin-left:var(--scene-tree-toolbar-group-item-gap)}";const s=class{constructor(t){e(this,t)}render(){return t(r,null,t("slot",null))}};s.style=o;export{s as vertex_scene_tree_toolbar_group};
5
+ //# sourceMappingURL=p-f292e8ae.entry.js.map