@tableslayer/ui 0.1.4 → 0.1.6

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 (387) hide show
  1. package/dist/components/MarkerTooltip/MarkerTooltip.svelte +9 -1
  2. package/dist/components/MarkerTooltip/MarkerTooltip.svelte.d.ts +13 -16
  3. package/dist/components/index.d.ts +0 -5
  4. package/dist/components/index.js +0 -5
  5. package/package.json +9 -16
  6. package/dist/components/DrawingSliders/DrawingSliders.svelte +0 -379
  7. package/dist/components/DrawingSliders/DrawingSliders.svelte.d.ts +0 -16
  8. package/dist/components/DrawingSliders/index.d.ts +0 -1
  9. package/dist/components/DrawingSliders/index.js +0 -1
  10. package/dist/components/MyCounterButton.svelte +0 -11
  11. package/dist/components/MyCounterButton.svelte.d.ts +0 -3
  12. package/dist/components/PropsTable/PropsTable.svelte +0 -107
  13. package/dist/components/PropsTable/PropsTable.svelte.d.ts +0 -26
  14. package/dist/components/RadialMenu/EffectPreview.svelte +0 -36
  15. package/dist/components/RadialMenu/EffectPreview.svelte.d.ts +0 -9
  16. package/dist/components/RadialMenu/EffectPreviewScene.svelte +0 -194
  17. package/dist/components/RadialMenu/EffectPreviewScene.svelte.d.ts +0 -8
  18. package/dist/components/RadialMenu/RadialMenu.svelte +0 -503
  19. package/dist/components/RadialMenu/RadialMenu.svelte.d.ts +0 -4
  20. package/dist/components/RadialMenu/RadialMenuItem.svelte +0 -176
  21. package/dist/components/RadialMenu/RadialMenuItem.svelte.d.ts +0 -11
  22. package/dist/components/RadialMenu/index.d.ts +0 -2
  23. package/dist/components/RadialMenu/index.js +0 -2
  24. package/dist/components/RadialMenu/types.d.ts +0 -35
  25. package/dist/components/RadialMenu/types.js +0 -1
  26. package/dist/components/Stage/components/AnnotationLayer/AnnotationLayer.svelte +0 -445
  27. package/dist/components/Stage/components/AnnotationLayer/AnnotationLayer.svelte.d.ts +0 -19
  28. package/dist/components/Stage/components/AnnotationLayer/AnnotationMaterial.svelte +0 -167
  29. package/dist/components/Stage/components/AnnotationLayer/AnnotationMaterial.svelte.d.ts +0 -20
  30. package/dist/components/Stage/components/AnnotationLayer/types.d.ts +0 -121
  31. package/dist/components/Stage/components/AnnotationLayer/types.js +0 -71
  32. package/dist/components/Stage/components/CursorLayer/CursorLayer.svelte +0 -148
  33. package/dist/components/Stage/components/CursorLayer/CursorLayer.svelte.d.ts +0 -7
  34. package/dist/components/Stage/components/CursorLayer/cursor.svg +0 -26
  35. package/dist/components/Stage/components/CursorLayer/index.d.ts +0 -2
  36. package/dist/components/Stage/components/CursorLayer/index.js +0 -1
  37. package/dist/components/Stage/components/CursorLayer/types.d.ts +0 -28
  38. package/dist/components/Stage/components/CursorLayer/types.js +0 -1
  39. package/dist/components/Stage/components/DrawingLayer/DrawingMaterial.svelte +0 -364
  40. package/dist/components/Stage/components/DrawingLayer/DrawingMaterial.svelte.d.ts +0 -24
  41. package/dist/components/Stage/components/DrawingLayer/types.d.ts +0 -56
  42. package/dist/components/Stage/components/DrawingLayer/types.js +0 -23
  43. package/dist/components/Stage/components/EdgeOverlayLayer/EdgeOverlayLayer.svelte +0 -72
  44. package/dist/components/Stage/components/EdgeOverlayLayer/EdgeOverlayLayer.svelte.d.ts +0 -11
  45. package/dist/components/Stage/components/EdgeOverlayLayer/types.d.ts +0 -29
  46. package/dist/components/Stage/components/EdgeOverlayLayer/types.js +0 -1
  47. package/dist/components/Stage/components/FogLayer/FogLayer.svelte +0 -75
  48. package/dist/components/Stage/components/FogLayer/FogLayer.svelte.d.ts +0 -11
  49. package/dist/components/Stage/components/FogLayer/types.d.ts +0 -42
  50. package/dist/components/Stage/components/FogLayer/types.js +0 -1
  51. package/dist/components/Stage/components/FogOfWarLayer/FogOfWarLayer.svelte +0 -249
  52. package/dist/components/Stage/components/FogOfWarLayer/FogOfWarLayer.svelte.d.ts +0 -19
  53. package/dist/components/Stage/components/FogOfWarLayer/FogOfWarMaterial.svelte +0 -200
  54. package/dist/components/Stage/components/FogOfWarLayer/FogOfWarMaterial.svelte.d.ts +0 -18
  55. package/dist/components/Stage/components/FogOfWarLayer/types.d.ts +0 -143
  56. package/dist/components/Stage/components/FogOfWarLayer/types.js +0 -1
  57. package/dist/components/Stage/components/GridLayer/GridLayer.svelte +0 -20
  58. package/dist/components/Stage/components/GridLayer/GridLayer.svelte.d.ts +0 -12
  59. package/dist/components/Stage/components/GridLayer/GridMaterial.svelte +0 -69
  60. package/dist/components/Stage/components/GridLayer/GridMaterial.svelte.d.ts +0 -10
  61. package/dist/components/Stage/components/GridLayer/types.d.ts +0 -65
  62. package/dist/components/Stage/components/GridLayer/types.js +0 -10
  63. package/dist/components/Stage/components/LayerInput/LayerInput.svelte +0 -300
  64. package/dist/components/Stage/components/LayerInput/LayerInput.svelte.d.ts +0 -20
  65. package/dist/components/Stage/components/MapLayer/MapLayer.svelte +0 -196
  66. package/dist/components/Stage/components/MapLayer/MapLayer.svelte.d.ts +0 -24
  67. package/dist/components/Stage/components/MapLayer/dataSources/GifDataSource.d.ts +0 -93
  68. package/dist/components/Stage/components/MapLayer/dataSources/GifDataSource.js +0 -229
  69. package/dist/components/Stage/components/MapLayer/dataSources/IMapDataSource.d.ts +0 -51
  70. package/dist/components/Stage/components/MapLayer/dataSources/IMapDataSource.js +0 -1
  71. package/dist/components/Stage/components/MapLayer/dataSources/ImageDataSource.d.ts +0 -49
  72. package/dist/components/Stage/components/MapLayer/dataSources/ImageDataSource.js +0 -87
  73. package/dist/components/Stage/components/MapLayer/dataSources/VideoDataSource.d.ts +0 -52
  74. package/dist/components/Stage/components/MapLayer/dataSources/VideoDataSource.js +0 -141
  75. package/dist/components/Stage/components/MapLayer/dataSources/dataSourceFactory.d.ts +0 -21
  76. package/dist/components/Stage/components/MapLayer/dataSources/dataSourceFactory.js +0 -44
  77. package/dist/components/Stage/components/MapLayer/dataSources/index.d.ts +0 -15
  78. package/dist/components/Stage/components/MapLayer/dataSources/index.js +0 -14
  79. package/dist/components/Stage/components/MapLayer/types.d.ts +0 -54
  80. package/dist/components/Stage/components/MapLayer/types.js +0 -9
  81. package/dist/components/Stage/components/MarkerLayer/MarkerLayer.svelte +0 -398
  82. package/dist/components/Stage/components/MarkerLayer/MarkerLayer.svelte.d.ts +0 -24
  83. package/dist/components/Stage/components/MarkerLayer/MarkerToken.svelte +0 -262
  84. package/dist/components/Stage/components/MarkerLayer/MarkerToken.svelte.d.ts +0 -27
  85. package/dist/components/Stage/components/MarkerLayer/types.d.ts +0 -109
  86. package/dist/components/Stage/components/MarkerLayer/types.js +0 -21
  87. package/dist/components/Stage/components/MeasurementLayer/MeasurementLayer.svelte +0 -364
  88. package/dist/components/Stage/components/MeasurementLayer/MeasurementLayer.svelte.d.ts +0 -49
  89. package/dist/components/Stage/components/MeasurementLayer/MeasurementManager.svelte +0 -473
  90. package/dist/components/Stage/components/MeasurementLayer/MeasurementManager.svelte.d.ts +0 -24
  91. package/dist/components/Stage/components/MeasurementLayer/measurements/BaseMeasurement.d.ts +0 -150
  92. package/dist/components/Stage/components/MeasurementLayer/measurements/BaseMeasurement.js +0 -274
  93. package/dist/components/Stage/components/MeasurementLayer/measurements/BeamMeasurement.d.ts +0 -10
  94. package/dist/components/Stage/components/MeasurementLayer/measurements/BeamMeasurement.js +0 -58
  95. package/dist/components/Stage/components/MeasurementLayer/measurements/CircleMeasurement.d.ts +0 -9
  96. package/dist/components/Stage/components/MeasurementLayer/measurements/CircleMeasurement.js +0 -66
  97. package/dist/components/Stage/components/MeasurementLayer/measurements/ConeMeasurement.d.ts +0 -10
  98. package/dist/components/Stage/components/MeasurementLayer/measurements/ConeMeasurement.js +0 -103
  99. package/dist/components/Stage/components/MeasurementLayer/measurements/LineMeasurement.d.ts +0 -9
  100. package/dist/components/Stage/components/MeasurementLayer/measurements/LineMeasurement.js +0 -75
  101. package/dist/components/Stage/components/MeasurementLayer/measurements/RectangleMeasurement.d.ts +0 -9
  102. package/dist/components/Stage/components/MeasurementLayer/measurements/RectangleMeasurement.js +0 -73
  103. package/dist/components/Stage/components/MeasurementLayer/measurements/index.d.ts +0 -2
  104. package/dist/components/Stage/components/MeasurementLayer/measurements/index.js +0 -7
  105. package/dist/components/Stage/components/MeasurementLayer/types.d.ts +0 -76
  106. package/dist/components/Stage/components/MeasurementLayer/types.js +0 -9
  107. package/dist/components/Stage/components/MeasurementLayer/utils/canvasDrawing.d.ts +0 -83
  108. package/dist/components/Stage/components/MeasurementLayer/utils/canvasDrawing.js +0 -267
  109. package/dist/components/Stage/components/MeasurementLayer/utils/distanceCalculations.d.ts +0 -74
  110. package/dist/components/Stage/components/MeasurementLayer/utils/distanceCalculations.js +0 -130
  111. package/dist/components/Stage/components/ParticleSystem/ParticleSystem.svelte +0 -220
  112. package/dist/components/Stage/components/ParticleSystem/ParticleSystem.svelte.d.ts +0 -9
  113. package/dist/components/Stage/components/ParticleSystem/particles/atlases/ash.png +0 -0
  114. package/dist/components/Stage/components/ParticleSystem/particles/atlases/leaves.png +0 -0
  115. package/dist/components/Stage/components/ParticleSystem/particles/atlases/rain.png +0 -0
  116. package/dist/components/Stage/components/ParticleSystem/particles/atlases/snow.png +0 -0
  117. package/dist/components/Stage/components/ParticleSystem/rng.d.ts +0 -7
  118. package/dist/components/Stage/components/ParticleSystem/rng.js +0 -20
  119. package/dist/components/Stage/components/ParticleSystem/types.d.ts +0 -88
  120. package/dist/components/Stage/components/ParticleSystem/types.js +0 -37
  121. package/dist/components/Stage/components/PerformanceDebugger/PerformanceDebugger.svelte +0 -144
  122. package/dist/components/Stage/components/PerformanceDebugger/PerformanceDebugger.svelte.d.ts +0 -19
  123. package/dist/components/Stage/components/PerformanceDebugger/index.d.ts +0 -1
  124. package/dist/components/Stage/components/PerformanceDebugger/index.js +0 -1
  125. package/dist/components/Stage/components/PerformanceOverlay/PerformanceOverlay.svelte +0 -208
  126. package/dist/components/Stage/components/PerformanceOverlay/PerformanceOverlay.svelte.d.ts +0 -7
  127. package/dist/components/Stage/components/PerformanceOverlay/index.d.ts +0 -1
  128. package/dist/components/Stage/components/PerformanceOverlay/index.js +0 -1
  129. package/dist/components/Stage/components/PointerInputManager/PointerInputManager.svelte +0 -201
  130. package/dist/components/Stage/components/PointerInputManager/PointerInputManager.svelte.d.ts +0 -17
  131. package/dist/components/Stage/components/Scene/Scene.svelte +0 -651
  132. package/dist/components/Stage/components/Scene/Scene.svelte.d.ts +0 -88
  133. package/dist/components/Stage/components/Scene/luts.d.ts +0 -7
  134. package/dist/components/Stage/components/Scene/luts.js +0 -33
  135. package/dist/components/Stage/components/Scene/types.d.ts +0 -207
  136. package/dist/components/Stage/components/Scene/types.js +0 -35
  137. package/dist/components/Stage/components/Stage/Stage.svelte +0 -332
  138. package/dist/components/Stage/components/Stage/Stage.svelte.d.ts +0 -86
  139. package/dist/components/Stage/components/Stage/types.d.ts +0 -163
  140. package/dist/components/Stage/components/Stage/types.js +0 -5
  141. package/dist/components/Stage/components/WeatherLayer/WeatherLayer.svelte +0 -135
  142. package/dist/components/Stage/components/WeatherLayer/WeatherLayer.svelte.d.ts +0 -13
  143. package/dist/components/Stage/components/WeatherLayer/presets/AshPreset.d.ts +0 -3
  144. package/dist/components/Stage/components/WeatherLayer/presets/AshPreset.js +0 -69
  145. package/dist/components/Stage/components/WeatherLayer/presets/LeavesPreset.d.ts +0 -3
  146. package/dist/components/Stage/components/WeatherLayer/presets/LeavesPreset.js +0 -68
  147. package/dist/components/Stage/components/WeatherLayer/presets/RainPreset.d.ts +0 -3
  148. package/dist/components/Stage/components/WeatherLayer/presets/RainPreset.js +0 -67
  149. package/dist/components/Stage/components/WeatherLayer/presets/SnowPreset.d.ts +0 -3
  150. package/dist/components/Stage/components/WeatherLayer/presets/SnowPreset.js +0 -68
  151. package/dist/components/Stage/components/WeatherLayer/presets/index.d.ts +0 -5
  152. package/dist/components/Stage/components/WeatherLayer/presets/index.js +0 -5
  153. package/dist/components/Stage/components/WeatherLayer/types.d.ts +0 -31
  154. package/dist/components/Stage/components/WeatherLayer/types.js +0 -9
  155. package/dist/components/Stage/helpers/clippingPlaneStore.svelte.d.ts +0 -7
  156. package/dist/components/Stage/helpers/clippingPlaneStore.svelte.js +0 -23
  157. package/dist/components/Stage/helpers/debugState.svelte.d.ts +0 -10
  158. package/dist/components/Stage/helpers/debugState.svelte.js +0 -13
  159. package/dist/components/Stage/helpers/grid.d.ts +0 -72
  160. package/dist/components/Stage/helpers/grid.js +0 -444
  161. package/dist/components/Stage/helpers/lazyBrush.d.ts +0 -63
  162. package/dist/components/Stage/helpers/lazyBrush.js +0 -137
  163. package/dist/components/Stage/helpers/performanceMetrics.svelte.d.ts +0 -62
  164. package/dist/components/Stage/helpers/performanceMetrics.svelte.js +0 -165
  165. package/dist/components/Stage/helpers/utils.d.ts +0 -3
  166. package/dist/components/Stage/helpers/utils.js +0 -18
  167. package/dist/components/Stage/index.d.ts +0 -21
  168. package/dist/components/Stage/index.js +0 -21
  169. package/dist/components/Stage/shaders/AnnotationEffects.frag +0 -1070
  170. package/dist/components/Stage/shaders/Annotations.frag +0 -29
  171. package/dist/components/Stage/shaders/Drawing.frag +0 -83
  172. package/dist/components/Stage/shaders/Drawing.vert +0 -5
  173. package/dist/components/Stage/shaders/Fog.frag +0 -147
  174. package/dist/components/Stage/shaders/FractalNoise.frag +0 -96
  175. package/dist/components/Stage/shaders/GridShader.frag +0 -174
  176. package/dist/components/Stage/shaders/Overlay.frag +0 -23
  177. package/dist/components/Stage/shaders/Overlay.vert +0 -0
  178. package/dist/components/Stage/shaders/Particles.frag +0 -27
  179. package/dist/components/Stage/shaders/Particles.vert +0 -51
  180. package/dist/components/Stage/shaders/ToolOutline.frag +0 -59
  181. package/dist/components/Stage/shaders/default.vert +0 -8
  182. package/dist/components/Stage/types.d.ts +0 -4
  183. package/dist/components/Stage/types.js +0 -1
  184. package/src/lib/components/Avatar/Avatar.svelte +0 -82
  185. package/src/lib/components/Avatar/AvatarFileInput.svelte +0 -85
  186. package/src/lib/components/Avatar/AvatarPopover.svelte +0 -34
  187. package/src/lib/components/Avatar/index.ts +0 -4
  188. package/src/lib/components/Avatar/types.ts +0 -24
  189. package/src/lib/components/BrushSizeSlider/BrushSizeSlider.svelte +0 -174
  190. package/src/lib/components/BrushSizeSlider/index.ts +0 -1
  191. package/src/lib/components/Button/Button.svelte +0 -182
  192. package/src/lib/components/Button/ConfirmActionButton.svelte +0 -98
  193. package/src/lib/components/Button/IconButton.svelte +0 -121
  194. package/src/lib/components/Button/RadioButton.svelte +0 -93
  195. package/src/lib/components/Button/index.ts +0 -5
  196. package/src/lib/components/Button/types.ts +0 -54
  197. package/src/lib/components/CardFan/CardFan.svelte +0 -165
  198. package/src/lib/components/CardFan/index.ts +0 -2
  199. package/src/lib/components/CardFan/types.ts +0 -6
  200. package/src/lib/components/CodeBlock/Code.svelte +0 -7
  201. package/src/lib/components/CodeBlock/CodeBlock.svelte +0 -102
  202. package/src/lib/components/CodeBlock/index.ts +0 -3
  203. package/src/lib/components/CodeBlock/types.ts +0 -10
  204. package/src/lib/components/ColorMode/ColorMode.svelte +0 -8
  205. package/src/lib/components/ColorMode/index.ts +0 -2
  206. package/src/lib/components/ColorMode/types.ts +0 -12
  207. package/src/lib/components/ColorPicker/ColorPicker.svelte +0 -838
  208. package/src/lib/components/ColorPicker/ColorPickerSwatch.svelte +0 -32
  209. package/src/lib/components/ColorPicker/index.ts +0 -3
  210. package/src/lib/components/ColorPicker/types.ts +0 -51
  211. package/src/lib/components/ContextMenu/ContextMenu.svelte +0 -86
  212. package/src/lib/components/ContextMenu/index.ts +0 -2
  213. package/src/lib/components/ContextMenu/types.ts +0 -15
  214. package/src/lib/components/DrawingSliders/DrawingSliders.svelte +0 -379
  215. package/src/lib/components/DrawingSliders/index.ts +0 -1
  216. package/src/lib/components/Editor/Editor.svelte +0 -825
  217. package/src/lib/components/Editor/index.ts +0 -1
  218. package/src/lib/components/FogSliders/FogSliders.svelte +0 -33
  219. package/src/lib/components/FogSliders/index.ts +0 -1
  220. package/src/lib/components/Hr/Hr.svelte +0 -15
  221. package/src/lib/components/Hr/index.ts +0 -1
  222. package/src/lib/components/Icon/Icon.svelte +0 -6
  223. package/src/lib/components/Icon/index.ts +0 -2
  224. package/src/lib/components/Icon/types.ts +0 -20
  225. package/src/lib/components/Input/DualInputSlider.svelte +0 -126
  226. package/src/lib/components/Input/FileInput.svelte +0 -176
  227. package/src/lib/components/Input/FormControl.svelte +0 -150
  228. package/src/lib/components/Input/FormError.svelte +0 -37
  229. package/src/lib/components/Input/Input.svelte +0 -56
  230. package/src/lib/components/Input/InputCheckbox.svelte +0 -99
  231. package/src/lib/components/Input/InputSlider.svelte +0 -86
  232. package/src/lib/components/Input/Label.svelte +0 -19
  233. package/src/lib/components/Input/index.ts +0 -9
  234. package/src/lib/components/Input/types.ts +0 -39
  235. package/src/lib/components/Link/Link.svelte +0 -41
  236. package/src/lib/components/Link/LinkBox.svelte +0 -20
  237. package/src/lib/components/Link/LinkOverlay.svelte +0 -23
  238. package/src/lib/components/Link/index.ts +0 -4
  239. package/src/lib/components/Link/types.ts +0 -17
  240. package/src/lib/components/Loading/Loader.svelte +0 -60
  241. package/src/lib/components/Loading/Skeleton.svelte +0 -9
  242. package/src/lib/components/Loading/index.ts +0 -2
  243. package/src/lib/components/Logo/Logo.svelte +0 -16
  244. package/src/lib/components/Logo/index.ts +0 -1
  245. package/src/lib/components/MarkerTooltip/MarkerTooltip.svelte +0 -435
  246. package/src/lib/components/MarkerTooltip/index.ts +0 -1
  247. package/src/lib/components/Menu/SelectorMenu.svelte +0 -280
  248. package/src/lib/components/Menu/index.ts +0 -2
  249. package/src/lib/components/Menu/types.ts +0 -17
  250. package/src/lib/components/MyCounterButton.svelte +0 -11
  251. package/src/lib/components/Panel/index.ts +0 -2
  252. package/src/lib/components/Panel/panel.svelte +0 -18
  253. package/src/lib/components/Panel/types.ts +0 -8
  254. package/src/lib/components/PersistButton/PersistButton.svelte +0 -100
  255. package/src/lib/components/PersistButton/index.ts +0 -1
  256. package/src/lib/components/Popover/Popover.svelte +0 -81
  257. package/src/lib/components/Popover/index.ts +0 -2
  258. package/src/lib/components/Popover/types.ts +0 -19
  259. package/src/lib/components/PropsTable/PropsTable.svelte +0 -107
  260. package/src/lib/components/RadialMenu/EffectPreview.svelte +0 -36
  261. package/src/lib/components/RadialMenu/EffectPreviewScene.svelte +0 -194
  262. package/src/lib/components/RadialMenu/RadialMenu.svelte +0 -503
  263. package/src/lib/components/RadialMenu/RadialMenuItem.svelte +0 -176
  264. package/src/lib/components/RadialMenu/index.ts +0 -2
  265. package/src/lib/components/RadialMenu/types.ts +0 -35
  266. package/src/lib/components/Select/Select.svelte +0 -342
  267. package/src/lib/components/Select/index.ts +0 -2
  268. package/src/lib/components/Select/types.ts +0 -22
  269. package/src/lib/components/Spacer/Spacer.svelte +0 -14
  270. package/src/lib/components/Spacer/index.ts +0 -2
  271. package/src/lib/components/Spacer/types.ts +0 -5
  272. package/src/lib/components/Stage/components/AnnotationLayer/AnnotationLayer.svelte +0 -445
  273. package/src/lib/components/Stage/components/AnnotationLayer/AnnotationMaterial.svelte +0 -167
  274. package/src/lib/components/Stage/components/AnnotationLayer/types.ts +0 -196
  275. package/src/lib/components/Stage/components/CursorLayer/CursorLayer.svelte +0 -148
  276. package/src/lib/components/Stage/components/CursorLayer/cursor.svg +0 -26
  277. package/src/lib/components/Stage/components/CursorLayer/index.ts +0 -2
  278. package/src/lib/components/Stage/components/CursorLayer/types.ts +0 -23
  279. package/src/lib/components/Stage/components/DrawingLayer/DrawingMaterial.svelte +0 -364
  280. package/src/lib/components/Stage/components/DrawingLayer/types.ts +0 -65
  281. package/src/lib/components/Stage/components/EdgeOverlayLayer/EdgeOverlayLayer.svelte +0 -72
  282. package/src/lib/components/Stage/components/EdgeOverlayLayer/types.ts +0 -34
  283. package/src/lib/components/Stage/components/FogLayer/FogLayer.svelte +0 -75
  284. package/src/lib/components/Stage/components/FogLayer/types.ts +0 -51
  285. package/src/lib/components/Stage/components/FogOfWarLayer/FogOfWarLayer.svelte +0 -249
  286. package/src/lib/components/Stage/components/FogOfWarLayer/FogOfWarMaterial.svelte +0 -200
  287. package/src/lib/components/Stage/components/FogOfWarLayer/types.ts +0 -116
  288. package/src/lib/components/Stage/components/GridLayer/GridLayer.svelte +0 -20
  289. package/src/lib/components/Stage/components/GridLayer/GridMaterial.svelte +0 -69
  290. package/src/lib/components/Stage/components/GridLayer/types.ts +0 -79
  291. package/src/lib/components/Stage/components/LayerInput/LayerInput.svelte +0 -300
  292. package/src/lib/components/Stage/components/MapLayer/MapLayer.svelte +0 -196
  293. package/src/lib/components/Stage/components/MapLayer/dataSources/GifDataSource.ts +0 -265
  294. package/src/lib/components/Stage/components/MapLayer/dataSources/IMapDataSource.ts +0 -55
  295. package/src/lib/components/Stage/components/MapLayer/dataSources/ImageDataSource.ts +0 -87
  296. package/src/lib/components/Stage/components/MapLayer/dataSources/VideoDataSource.ts +0 -150
  297. package/src/lib/components/Stage/components/MapLayer/dataSources/dataSourceFactory.ts +0 -48
  298. package/src/lib/components/Stage/components/MapLayer/dataSources/index.ts +0 -16
  299. package/src/lib/components/Stage/components/MapLayer/types.ts +0 -58
  300. package/src/lib/components/Stage/components/MarkerLayer/MarkerLayer.svelte +0 -398
  301. package/src/lib/components/Stage/components/MarkerLayer/MarkerToken.svelte +0 -262
  302. package/src/lib/components/Stage/components/MarkerLayer/types.ts +0 -126
  303. package/src/lib/components/Stage/components/MeasurementLayer/MeasurementLayer.svelte +0 -364
  304. package/src/lib/components/Stage/components/MeasurementLayer/MeasurementManager.svelte +0 -473
  305. package/src/lib/components/Stage/components/MeasurementLayer/measurements/BaseMeasurement.ts +0 -427
  306. package/src/lib/components/Stage/components/MeasurementLayer/measurements/BeamMeasurement.ts +0 -105
  307. package/src/lib/components/Stage/components/MeasurementLayer/measurements/CircleMeasurement.ts +0 -98
  308. package/src/lib/components/Stage/components/MeasurementLayer/measurements/ConeMeasurement.ts +0 -163
  309. package/src/lib/components/Stage/components/MeasurementLayer/measurements/LineMeasurement.ts +0 -102
  310. package/src/lib/components/Stage/components/MeasurementLayer/measurements/RectangleMeasurement.ts +0 -120
  311. package/src/lib/components/Stage/components/MeasurementLayer/measurements/index.ts +0 -7
  312. package/src/lib/components/Stage/components/MeasurementLayer/types.ts +0 -94
  313. package/src/lib/components/Stage/components/MeasurementLayer/utils/canvasDrawing.ts +0 -357
  314. package/src/lib/components/Stage/components/MeasurementLayer/utils/distanceCalculations.ts +0 -170
  315. package/src/lib/components/Stage/components/ParticleSystem/ParticleSystem.svelte +0 -220
  316. package/src/lib/components/Stage/components/ParticleSystem/particles/atlases/ash.png +0 -0
  317. package/src/lib/components/Stage/components/ParticleSystem/particles/atlases/leaves.png +0 -0
  318. package/src/lib/components/Stage/components/ParticleSystem/particles/atlases/rain.png +0 -0
  319. package/src/lib/components/Stage/components/ParticleSystem/particles/atlases/snow.png +0 -0
  320. package/src/lib/components/Stage/components/ParticleSystem/rng.js +0 -20
  321. package/src/lib/components/Stage/components/ParticleSystem/types.ts +0 -95
  322. package/src/lib/components/Stage/components/PerformanceDebugger/PerformanceDebugger.svelte +0 -144
  323. package/src/lib/components/Stage/components/PerformanceDebugger/index.ts +0 -1
  324. package/src/lib/components/Stage/components/PerformanceOverlay/PerformanceOverlay.svelte +0 -208
  325. package/src/lib/components/Stage/components/PerformanceOverlay/index.ts +0 -1
  326. package/src/lib/components/Stage/components/PointerInputManager/PointerInputManager.svelte +0 -201
  327. package/src/lib/components/Stage/components/Scene/Scene.svelte +0 -651
  328. package/src/lib/components/Stage/components/Scene/luts.ts +0 -24
  329. package/src/lib/components/Stage/components/Scene/types.ts +0 -225
  330. package/src/lib/components/Stage/components/Stage/Stage.svelte +0 -332
  331. package/src/lib/components/Stage/components/Stage/types.ts +0 -136
  332. package/src/lib/components/Stage/components/WeatherLayer/WeatherLayer.svelte +0 -135
  333. package/src/lib/components/Stage/components/WeatherLayer/presets/AshPreset.ts +0 -71
  334. package/src/lib/components/Stage/components/WeatherLayer/presets/LeavesPreset.ts +0 -70
  335. package/src/lib/components/Stage/components/WeatherLayer/presets/RainPreset.ts +0 -68
  336. package/src/lib/components/Stage/components/WeatherLayer/presets/SnowPreset.ts +0 -70
  337. package/src/lib/components/Stage/components/WeatherLayer/presets/index.ts +0 -6
  338. package/src/lib/components/Stage/components/WeatherLayer/types.ts +0 -35
  339. package/src/lib/components/Stage/helpers/clippingPlaneStore.svelte.ts +0 -28
  340. package/src/lib/components/Stage/helpers/debugState.svelte.ts +0 -18
  341. package/src/lib/components/Stage/helpers/grid.ts +0 -548
  342. package/src/lib/components/Stage/helpers/lazyBrush.ts +0 -171
  343. package/src/lib/components/Stage/helpers/performanceMetrics.svelte.ts +0 -220
  344. package/src/lib/components/Stage/helpers/utils.ts +0 -21
  345. package/src/lib/components/Stage/index.ts +0 -49
  346. package/src/lib/components/Stage/shaders/AnnotationEffects.frag +0 -1070
  347. package/src/lib/components/Stage/shaders/Annotations.frag +0 -29
  348. package/src/lib/components/Stage/shaders/Drawing.frag +0 -83
  349. package/src/lib/components/Stage/shaders/Drawing.vert +0 -5
  350. package/src/lib/components/Stage/shaders/Fog.frag +0 -147
  351. package/src/lib/components/Stage/shaders/FractalNoise.frag +0 -96
  352. package/src/lib/components/Stage/shaders/GridShader.frag +0 -174
  353. package/src/lib/components/Stage/shaders/Overlay.frag +0 -23
  354. package/src/lib/components/Stage/shaders/Overlay.vert +0 -0
  355. package/src/lib/components/Stage/shaders/Particles.frag +0 -27
  356. package/src/lib/components/Stage/shaders/Particles.vert +0 -51
  357. package/src/lib/components/Stage/shaders/ToolOutline.frag +0 -59
  358. package/src/lib/components/Stage/shaders/default.vert +0 -8
  359. package/src/lib/components/Stage/types.ts +0 -4
  360. package/src/lib/components/Table/Table.svelte +0 -16
  361. package/src/lib/components/Table/Td.svelte +0 -17
  362. package/src/lib/components/Table/Th.svelte +0 -18
  363. package/src/lib/components/Table/index.ts +0 -4
  364. package/src/lib/components/Table/types.ts +0 -14
  365. package/src/lib/components/Text/Text.svelte +0 -23
  366. package/src/lib/components/Text/index.ts +0 -2
  367. package/src/lib/components/Text/types.ts +0 -12
  368. package/src/lib/components/Title/Title.svelte +0 -54
  369. package/src/lib/components/Title/index.ts +0 -2
  370. package/src/lib/components/Title/types.ts +0 -9
  371. package/src/lib/components/Toast/Toast.svelte +0 -155
  372. package/src/lib/components/Toast/index.ts +0 -5
  373. package/src/lib/components/Toast/toastCookie.ts +0 -24
  374. package/src/lib/components/Toast/types.ts +0 -6
  375. package/src/lib/components/ToolTip/ToolTip.svelte +0 -70
  376. package/src/lib/components/ToolTip/index.ts +0 -2
  377. package/src/lib/components/ToolTip/types.ts +0 -14
  378. package/src/lib/components/index.ts +0 -32
  379. package/src/lib/components/types.ts +0 -0
  380. package/src/lib/index.ts +0 -2
  381. package/src/lib/styles/globals.css +0 -108
  382. package/src/lib/styles/normalize.css +0 -9
  383. package/src/lib/styles/reset.css +0 -133
  384. package/src/lib/styles/utilities.css +0 -179
  385. package/src/lib/styles/vars.css +0 -1103
  386. package/src/lib/types/awareness.ts +0 -17
  387. package/src/lib/utils/rle.ts +0 -217
@@ -1,473 +0,0 @@
1
- <script lang="ts">
2
- import * as THREE from 'three';
3
- import { T, useTask } from '@threlte/core';
4
- import { onDestroy } from 'svelte';
5
- import { MeasurementType, type MeasurementLayerProps } from './types';
6
- import type { IMeasurement } from './measurements/BaseMeasurement';
7
- import { LineMeasurement } from './measurements/LineMeasurement';
8
- import { CircleMeasurement } from './measurements/CircleMeasurement';
9
- import { RectangleMeasurement } from './measurements/RectangleMeasurement';
10
- import { BeamMeasurement } from './measurements/BeamMeasurement';
11
- import { ConeMeasurement } from './measurements/ConeMeasurement';
12
- import { drawCircle } from './utils/canvasDrawing';
13
- import type { DisplayProps } from '../Stage/types';
14
- import type { GridLayerProps } from '../GridLayer/types';
15
- import { SceneLayer, SceneLayerOrder } from '../Scene/types';
16
-
17
- interface Props {
18
- props: MeasurementLayerProps;
19
- visible: boolean;
20
- displayProps: DisplayProps;
21
- gridProps: GridLayerProps;
22
- sceneRotation?: number;
23
- onFadeComplete?: () => void;
24
- }
25
-
26
- const { props, visible, displayProps, gridProps, sceneRotation = 0, onFadeComplete }: Props = $props();
27
-
28
- $effect(() => {
29
- console.log('[MeasurementManager] Grid props:', gridProps);
30
- });
31
-
32
- let currentMeasurement: IMeasurement | null = null;
33
- let measurementGroup = $state(new THREE.Group());
34
- let autoHideTimeoutId: ReturnType<typeof setTimeout> | null = null;
35
-
36
- // Fade animation state
37
- let isFading = $state(false);
38
- let fadeStartTime = $state(0);
39
- let fadeOpacity = $state(1.0);
40
- let receivedFadeoutTime = $state<number | null>(null); // Store fadeout time for received measurements
41
-
42
- // Preview indicator
43
- let previewMesh = $state(new THREE.Mesh());
44
- let previewMaterial = $state(new THREE.MeshBasicMaterial());
45
- let previewGeometry = $state(new THREE.PlaneGeometry());
46
- let previewSize = $derived(props ? props.markerSize + props.outlineThickness * 2 : 22);
47
- let showPreview = $state(false);
48
-
49
- // Task for fade animation
50
- useTask(() => {
51
- if (isFading && props) {
52
- const now = performance.now();
53
- const fadeElapsed = now - fadeStartTime;
54
- // Use receivedFadeoutTime if set, otherwise use props.fadeoutTime
55
- const fadeTime = receivedFadeoutTime ?? props.fadeoutTime;
56
- const progress = Math.min(fadeElapsed / fadeTime, 1);
57
-
58
- fadeOpacity = 1 - progress;
59
-
60
- // Update the opacity of all materials in the measurement group
61
- if (currentMeasurement) {
62
- if (currentMeasurement.shapeMesh.material instanceof THREE.MeshBasicMaterial) {
63
- currentMeasurement.shapeMesh.material.opacity = props.opacity * fadeOpacity;
64
- }
65
- if (currentMeasurement.textMesh.material instanceof THREE.MeshBasicMaterial) {
66
- currentMeasurement.textMesh.material.opacity = props.opacity * fadeOpacity;
67
- }
68
- }
69
-
70
- if (progress >= 1) {
71
- isFading = false;
72
- clearMeasurement();
73
- // Notify parent that fade is complete
74
- if (onFadeComplete) {
75
- onFadeComplete();
76
- }
77
- }
78
- }
79
- });
80
-
81
- onDestroy(() => {
82
- // Clear any pending auto-hide timeout
83
- if (autoHideTimeoutId !== null) {
84
- clearTimeout(autoHideTimeoutId);
85
- autoHideTimeoutId = null;
86
- }
87
-
88
- // Stop fade animation
89
- isFading = false;
90
-
91
- currentMeasurement?.dispose();
92
- if (previewGeometry) {
93
- previewGeometry.dispose();
94
- }
95
- if (previewMaterial) {
96
- if (previewMaterial.map) {
97
- previewMaterial.map.dispose();
98
- }
99
- previewMaterial.dispose();
100
- }
101
- });
102
-
103
- /**
104
- * Creates a canvas texture for the preview marker that matches the measurement point styling.
105
- * The marker uses the same visual properties (color, thickness, outline) as measurement start/end points.
106
- */
107
- $effect(() => {
108
- if (!props) return;
109
-
110
- // Create the preview marker texture
111
- const markerCanvas = createMarkerCanvas();
112
- const markerTexture = new THREE.CanvasTexture(markerCanvas);
113
- markerTexture.needsUpdate = true;
114
-
115
- // Dispose the old texture before assigning new one to prevent memory leak
116
- if (previewMaterial.map) {
117
- previewMaterial.map.dispose();
118
- }
119
-
120
- // Assign the texture to the preview material
121
- previewMaterial.map = markerTexture;
122
- previewMaterial.needsUpdate = true;
123
- });
124
-
125
- /**
126
- * Updates the preview indicator position and visibility based on mouse position and measurement state.
127
- * The preview is automatically hidden when a measurement is currently being created.
128
- *
129
- * @param {THREE.Vector2 | null} position - The world position where the preview should be displayed, or null to hide
130
- * @param {boolean} [visible=true] - Whether the preview should be visible (defaults to true)
131
- * @returns {void}
132
- */
133
- function updatePreview(position: THREE.Vector2 | null, visible: boolean = true): void {
134
- if (!position || currentMeasurement) {
135
- showPreview = false;
136
- return;
137
- }
138
-
139
- showPreview = visible;
140
- if (previewMesh && showPreview) {
141
- previewMesh.position.set(position.x, position.y, 0);
142
- }
143
- }
144
-
145
- /**
146
- * Hides the preview indicator from view.
147
- * Used when measurements are active or when the cursor leaves the measurement area.
148
- * @returns {void}
149
- */
150
- function hidePreview(): void {
151
- showPreview = false;
152
- }
153
-
154
- /**
155
- * Shows the preview indicator if no measurement is currently active.
156
- * Provides visual feedback for where the next measurement point will be placed.
157
- * @returns {void}
158
- */
159
- function showPreviewIndicator(): void {
160
- if (!currentMeasurement) {
161
- showPreview = true;
162
- }
163
- }
164
-
165
- /**
166
- * Creates a canvas texture for the measurement marker that matches the measurement point styling.
167
- * The marker uses the same visual properties (color, thickness, outline) as measurement start/end points.
168
- *
169
- * @returns {HTMLCanvasElement} A canvas element with the rendered marker that can be used as a texture
170
- */
171
- function createMarkerCanvas(): HTMLCanvasElement {
172
- const canvas = document.createElement('canvas');
173
- const context = canvas.getContext('2d', { colorSpace: 'srgb' })!;
174
-
175
- const width = previewSize;
176
- const height = previewSize;
177
-
178
- canvas.width = width;
179
- canvas.height = height;
180
-
181
- context.clearRect(0, 0, canvas.width, canvas.height);
182
-
183
- if (props) {
184
- drawCircle(
185
- context,
186
- previewSize / 2,
187
- previewSize / 2,
188
- props.markerSize / 2,
189
- props.color,
190
- props.outlineColor,
191
- props.outlineThickness
192
- );
193
- }
194
-
195
- return canvas;
196
- }
197
-
198
- /**
199
- * Starts a new measurement at the specified point based on the current measurement type.
200
- * Clears any existing measurement and creates the appropriate measurement class instance.
201
- *
202
- * @param {THREE.Vector2} startPoint - The world coordinates where the measurement should begin
203
- * @returns {void}
204
- */
205
- function startMeasurement(startPoint: THREE.Vector2): void {
206
- if (!props) return;
207
-
208
- // Clear any existing auto-hide timeout
209
- if (autoHideTimeoutId !== null) {
210
- clearTimeout(autoHideTimeoutId);
211
- autoHideTimeoutId = null;
212
- }
213
-
214
- // Reset fade state
215
- isFading = false;
216
- fadeOpacity = 1.0;
217
-
218
- clearMeasurement();
219
- showPreview = false; // Hide preview when starting measurement
220
-
221
- // Create new measurement based on type
222
- let measurement: IMeasurement;
223
-
224
- switch (props.type) {
225
- case MeasurementType.Line:
226
- measurement = new LineMeasurement(startPoint, props, displayProps, gridProps);
227
- break;
228
- case MeasurementType.Beam:
229
- measurement = new BeamMeasurement(startPoint, props, displayProps, gridProps);
230
- break;
231
- case MeasurementType.Cone:
232
- measurement = new ConeMeasurement(startPoint, props, displayProps, gridProps);
233
- break;
234
- case MeasurementType.Circle:
235
- measurement = new CircleMeasurement(startPoint, props, displayProps, gridProps);
236
- break;
237
- case MeasurementType.Square:
238
- measurement = new RectangleMeasurement(startPoint, props, displayProps, gridProps);
239
- break;
240
- default:
241
- measurement = new LineMeasurement(startPoint, props, displayProps, gridProps);
242
- break;
243
- }
244
-
245
- currentMeasurement = measurement;
246
- measurementGroup.add(measurement.object);
247
- }
248
-
249
- /**
250
- * Updates the current measurement with a new end point, typically called during mouse movement.
251
- * Recalculates measurement geometry and updates the visual representation in real-time.
252
- *
253
- * @param {THREE.Vector2} endPoint - The world coordinates for the current end point of the measurement
254
- * @returns {void}
255
- */
256
- function updateMeasurement(endPoint: THREE.Vector2): void {
257
- currentMeasurement?.update(endPoint, sceneRotation);
258
- }
259
-
260
- /**
261
- * Completes the current measurement and schedules its automatic removal.
262
- * The measurement is displayed for the duration specified by autoHideDelay, then fades out over fadeoutTime before being cleared.
263
- * @returns {void}
264
- */
265
- function finishMeasurement(): void {
266
- if (!currentMeasurement || !props) return;
267
-
268
- // Don't finish measurements with zero distance (same start and end point)
269
- const distance = currentMeasurement.startPoint.distanceTo(currentMeasurement.endPoint);
270
- if (distance === 0) {
271
- clearMeasurement();
272
- return;
273
- }
274
-
275
- autoHideTimeoutId = setTimeout(() => {
276
- // Start the fade animation
277
- fadeStartTime = performance.now();
278
- isFading = true;
279
- }, props.autoHideDelay);
280
- }
281
-
282
- /**
283
- * Removes the current measurement from the scene and disposes of its resources.
284
- * Cleans up Three.js objects to prevent memory leaks and resets the measurement state.
285
- * @returns {void}
286
- */
287
- function clearMeasurement(): void {
288
- // Clear any existing auto-hide timeout
289
- if (autoHideTimeoutId !== null) {
290
- clearTimeout(autoHideTimeoutId);
291
- autoHideTimeoutId = null;
292
- }
293
-
294
- // Reset fade state
295
- isFading = false;
296
- fadeOpacity = 1.0;
297
- receivedFadeoutTime = null; // Reset received fadeout time
298
-
299
- if (currentMeasurement) {
300
- currentMeasurement.dispose();
301
- currentMeasurement = null;
302
- measurementGroup.clear();
303
- }
304
- }
305
-
306
- /**
307
- * Displays a measurement received from another user (via Y.js).
308
- * Creates the measurement and immediately sets it to finished state to trigger auto-fade.
309
- *
310
- * @param {THREE.Vector2} startPoint - The starting point of the measurement
311
- * @param {THREE.Vector2} endPoint - The ending point of the measurement
312
- * @param {number} type - The type of measurement (MeasurementType enum)
313
- * @returns {void}
314
- */
315
- function displayReceivedMeasurement(
316
- startPoint: THREE.Vector2,
317
- endPoint: THREE.Vector2,
318
- type: number,
319
- beamWidth?: number,
320
- coneAngle?: number,
321
- color?: string,
322
- thickness?: number,
323
- outlineColor?: string,
324
- outlineThickness?: number,
325
- opacity?: number,
326
- markerSize?: number,
327
- autoHideDelay?: number,
328
- fadeoutTime?: number,
329
- showDistance?: boolean,
330
- snapToGrid?: boolean,
331
- enableDMG252?: boolean
332
- ): void {
333
- if (!props) {
334
- console.log('[MeasurementManager] No props available for displayReceivedMeasurement');
335
- return;
336
- }
337
-
338
- console.log('[MeasurementManager] displayReceivedMeasurement called:', {
339
- startPoint,
340
- endPoint,
341
- type,
342
- beamWidth,
343
- coneAngle,
344
- thickness,
345
- hasCurrentMeasurement: !!currentMeasurement
346
- });
347
-
348
- // Clear any existing measurement
349
- clearMeasurement();
350
-
351
- // Create the appropriate measurement type
352
- let measurement: IMeasurement;
353
-
354
- // Use the received properties if provided, override the props temporarily
355
- const measurementProps = {
356
- ...props,
357
- type,
358
- ...(beamWidth !== undefined && { beamWidth }),
359
- ...(coneAngle !== undefined && { coneAngle }),
360
- ...(color !== undefined && { color }),
361
- ...(thickness !== undefined && { thickness }),
362
- ...(outlineColor !== undefined && { outlineColor }),
363
- ...(outlineThickness !== undefined && { outlineThickness }),
364
- ...(opacity !== undefined && { opacity }),
365
- ...(markerSize !== undefined && { markerSize }),
366
- ...(autoHideDelay !== undefined && { autoHideDelay }),
367
- ...(fadeoutTime !== undefined && { fadeoutTime }),
368
- ...(showDistance !== undefined && { showDistance }),
369
- ...(snapToGrid !== undefined && { snapToGrid }),
370
- ...(enableDMG252 !== undefined && { enableDMG252 })
371
- };
372
-
373
- switch (type) {
374
- case MeasurementType.Line:
375
- measurement = new LineMeasurement(startPoint, measurementProps, displayProps, gridProps);
376
- break;
377
- case MeasurementType.Beam:
378
- measurement = new BeamMeasurement(startPoint, measurementProps, displayProps, gridProps);
379
- break;
380
- case MeasurementType.Cone:
381
- measurement = new ConeMeasurement(startPoint, measurementProps, displayProps, gridProps);
382
- break;
383
- case MeasurementType.Circle:
384
- measurement = new CircleMeasurement(startPoint, measurementProps, displayProps, gridProps);
385
- break;
386
- case MeasurementType.Square:
387
- measurement = new RectangleMeasurement(startPoint, measurementProps, displayProps, gridProps);
388
- break;
389
- default:
390
- measurement = new LineMeasurement(startPoint, measurementProps, displayProps, gridProps);
391
- break;
392
- }
393
-
394
- // Set the measurement
395
- currentMeasurement = measurement;
396
- measurementGroup.add(measurement.object);
397
-
398
- console.log('[MeasurementManager] Measurement created and added to group:', {
399
- groupChildren: measurementGroup.children.length,
400
- measurementObject: measurement.object,
401
- visible: measurementGroup.visible
402
- });
403
-
404
- // Update to the end point
405
- currentMeasurement.update(endPoint, sceneRotation);
406
-
407
- console.log('[MeasurementManager] Measurement updated to endpoint');
408
-
409
- // Store the fadeout time if provided for the fade animation
410
- if (fadeoutTime !== undefined) {
411
- receivedFadeoutTime = fadeoutTime;
412
- }
413
-
414
- // Schedule auto-fade with the received timing properties
415
- const delay = autoHideDelay ?? props.autoHideDelay;
416
- console.log(
417
- '[MeasurementManager] Scheduling auto-fade with delay:',
418
- delay,
419
- 'fadeTime:',
420
- fadeoutTime ?? props.fadeoutTime
421
- );
422
-
423
- autoHideTimeoutId = setTimeout(() => {
424
- // Start the fade animation
425
- fadeStartTime = performance.now();
426
- isFading = true;
427
- }, delay);
428
-
429
- console.log('[MeasurementManager] Measurement auto-fade scheduled');
430
- }
431
-
432
- // Export the methods for use by parent components
433
- export {
434
- startMeasurement,
435
- updateMeasurement,
436
- finishMeasurement,
437
- clearMeasurement,
438
- updatePreview,
439
- hidePreview,
440
- showPreviewIndicator,
441
- displayReceivedMeasurement
442
- };
443
- </script>
444
-
445
- <!-- Measurement Group -->
446
- <!-- Always visible to show received measurements in playfield -->
447
- <T.Group
448
- bind:ref={measurementGroup}
449
- visible={true}
450
- layers={[SceneLayer.Overlay]}
451
- renderOrder={SceneLayerOrder.Measurement}
452
- >
453
- <!-- Measurement objects will be added here dynamically -->
454
- </T.Group>
455
-
456
- <!-- Preview indicator -->
457
- <T.Mesh
458
- bind:ref={previewMesh}
459
- visible={showPreview && visible}
460
- layers={[SceneLayer.Overlay]}
461
- renderOrder={SceneLayerOrder.Measurement}
462
- >
463
- <T.MeshBasicMaterial
464
- bind:ref={previewMaterial}
465
- transparent={true}
466
- opacity={props?.opacity ?? 1}
467
- side={THREE.DoubleSide}
468
- depthWrite={false}
469
- depthTest={false}
470
- toneMapped={false}
471
- />
472
- <T.PlaneGeometry bind:ref={previewGeometry} args={[previewSize, previewSize]} />
473
- </T.Mesh>
@@ -1,24 +0,0 @@
1
- import * as THREE from 'three';
2
- import { type MeasurementLayerProps } from './types';
3
- import type { DisplayProps } from '../Stage/types';
4
- import type { GridLayerProps } from '../GridLayer/types';
5
- interface Props {
6
- props: MeasurementLayerProps;
7
- visible: boolean;
8
- displayProps: DisplayProps;
9
- gridProps: GridLayerProps;
10
- sceneRotation?: number;
11
- onFadeComplete?: () => void;
12
- }
13
- declare const MeasurementManager: import("svelte").Component<Props, {
14
- startMeasurement: (startPoint: THREE.Vector2) => void;
15
- updateMeasurement: (endPoint: THREE.Vector2) => void;
16
- finishMeasurement: () => void;
17
- clearMeasurement: () => void;
18
- updatePreview: (position: THREE.Vector2 | null, visible?: boolean) => void;
19
- hidePreview: () => void;
20
- showPreviewIndicator: () => void;
21
- displayReceivedMeasurement: (startPoint: THREE.Vector2, endPoint: THREE.Vector2, type: number, beamWidth?: number, coneAngle?: number, color?: string, thickness?: number, outlineColor?: string, outlineThickness?: number, opacity?: number, markerSize?: number, autoHideDelay?: number, fadeoutTime?: number, showDistance?: boolean, snapToGrid?: boolean, enableDMG252?: boolean) => void;
22
- }, "">;
23
- type MeasurementManager = ReturnType<typeof MeasurementManager>;
24
- export default MeasurementManager;
@@ -1,150 +0,0 @@
1
- import * as THREE from 'three';
2
- import type { GridLayerProps } from '../../GridLayer/types';
3
- import type { DisplayProps } from '../../Stage/types';
4
- import { MeasurementType, type MeasurementLayerProps } from '../types';
5
- /**
6
- * Interface defining the contract that all measurement implementations must follow.
7
- * Provides methods for lifecycle management, rendering, and data access for measurements.
8
- */
9
- export interface IMeasurement {
10
- /** The Three.js group object containing the measurement visualization */
11
- object: THREE.Group;
12
- /** The rendered shape object in the Three.js scene */
13
- shapeMesh: THREE.Mesh;
14
- /** The rendered text object in the Three.js scene */
15
- textMesh: THREE.Mesh;
16
- /** Starting point of the measurement in world coordinates */
17
- startPoint: THREE.Vector2;
18
- /** Current end point of the measurement in world coordinates */
19
- endPoint: THREE.Vector2;
20
- /**
21
- * Updates the measurement with a new end point, typically called during mouse movement.
22
- * @param {THREE.Vector2} endPoint - The new end point coordinates in world space
23
- * @param {number} sceneRotation - Optional scene rotation in degrees
24
- * @returns {void}
25
- */
26
- update(endPoint: THREE.Vector2, sceneRotation?: number): void;
27
- /**
28
- * Renders only the shape portion of the measurement (without text labels).
29
- * @returns {void}
30
- */
31
- renderShape(): void;
32
- /**
33
- * Cleans up all Three.js resources and removes the measurement from memory.
34
- * Should be called when the measurement is no longer needed.
35
- * @returns {void}
36
- */
37
- dispose(): void;
38
- }
39
- /**
40
- * Abstract base class providing common functionality for all measurement types.
41
- * Handles shared behavior like distance calculation, text rendering, resource management,
42
- * and coordinate transformations while allowing subclasses to implement specific shapes.
43
- */
44
- export declare abstract class BaseMeasurement implements IMeasurement {
45
- /** Unique identifier for this measurement instance */
46
- id: string;
47
- /** The type of measurement (line, circle, rectangle, etc.) */
48
- type: MeasurementType;
49
- /** Starting point of the measurement in world coordinates */
50
- startPoint: THREE.Vector2;
51
- /** Current end point of the measurement in world coordinates */
52
- endPoint: THREE.Vector2;
53
- /** Timestamp when the measurement was created */
54
- createdAt: number;
55
- /** Primary color for the measurement visualization */
56
- color: string;
57
- /** Opacity level for the measurement (0.0 to 1.0) */
58
- opacity: number;
59
- /** Line thickness for drawing measurement elements */
60
- thickness: number;
61
- /** Diameter of the measurement markers/points */
62
- markerSize: number;
63
- /** Thickness of outline strokes around measurement elements */
64
- outlineThickness: number;
65
- /** Color used for outline strokes */
66
- outlineColor: string;
67
- /** Whether to display distance text labels */
68
- showDistance: boolean;
69
- /** Whether to snap measurement points to the grid */
70
- snapToGrid: boolean;
71
- /** Whether to use DMG 252 measurement calculations */
72
- enableDMG252: boolean;
73
- /** Display properties containing resolution and size information */
74
- protected displayProps: DisplayProps;
75
- /** Grid properties containing spacing and units information */
76
- protected gridProps: GridLayerProps;
77
- /** Scene rotation in degrees for text alignment */
78
- protected sceneRotation: number;
79
- /** The group object in the Three.js scene */
80
- object: THREE.Group;
81
- /** The rendered shape object in the Three.js scene */
82
- shapeMesh: THREE.Mesh;
83
- /** The rendered text object in the Three.js scene */
84
- textMesh: THREE.Mesh;
85
- /** Flag indicating whether this measurement has been disposed */
86
- protected isDisposed: boolean;
87
- /**
88
- * Creates a new measurement instance with the specified properties.
89
- * Initializes all measurement parameters and sets up the coordinate system.
90
- *
91
- * @param {MeasurementType} type - The specific type of measurement being created
92
- * @param {THREE.Vector2} startPoint - Initial starting point in world coordinates
93
- * @param {MeasurementLayerProps} measurementProps - Configuration properties for the measurement
94
- * @param {DisplayProps} displayProps - Display settings including resolution and dimensions
95
- * @param {GridLayerProps} gridProps - Grid configuration for snapping and units
96
- */
97
- constructor(type: MeasurementType, startPoint: THREE.Vector2, measurementProps: MeasurementLayerProps, displayProps: DisplayProps, gridProps: GridLayerProps);
98
- /**
99
- * Updates the measurement with a new end point and recalculates all derived values.
100
- * Recreates the shape and text objects to reflect the new measurement geometry.
101
- * This method is called continuously during measurement creation as the user moves the mouse.
102
- *
103
- * @param {THREE.Vector2} endPoint - The new end point coordinates in world space
104
- * @param {number} sceneRotation - Optional scene rotation in degrees
105
- * @returns {void}
106
- */
107
- update(endPoint: THREE.Vector2, sceneRotation?: number): void;
108
- /**
109
- * Renders the distance text label for this measurement with standard positioning logic.
110
- * Positions text 150 pixels away from the end point in the direction of the measurement.
111
- * All measurement types share this text positioning and styling approach.
112
- * Returns an empty group if distance display is disabled.
113
- *
114
- * @returns {void}
115
- */
116
- renderText(): void;
117
- /**
118
- * Abstract method that must be implemented by each measurement type to render its specific shape.
119
- * Should create and return a Three.js object representing the measurement's visual geometry
120
- * (line, circle, rectangle, etc.) based on the current start and end points.
121
- * The mesh should be stored in the `this.mesh` property.
122
- *
123
- * @returns {void}
124
- */
125
- abstract renderShape(): void;
126
- /**
127
- * Creates a Three.js mesh displaying text with consistent styling across all measurements.
128
- * Generates a canvas-based texture with the specified text and applies standard material settings
129
- * for proper transparency, layering, and visual appearance.
130
- *
131
- * @param {string} text - The text content to display
132
- * @param {THREE.Vector2} position - World coordinates where the text should be positioned
133
- * @returns {THREE.Mesh} A Three.js mesh containing the rendered text
134
- */
135
- protected createTextMesh(text: string, position: THREE.Vector2): THREE.Mesh;
136
- /**
137
- * Updates the shape mesh with a new geometry and texture.
138
- * @param {THREE.PlaneGeometry} geometry - The new geometry to use
139
- * @param {THREE.CanvasTexture} texture - The new texture to use
140
- * @returns {void}
141
- */
142
- protected updateShapeMesh(geometry: THREE.PlaneGeometry, texture: THREE.CanvasTexture): void;
143
- /**
144
- * Completely destroys this measurement instance and cleans up all associated resources.
145
- * Removes objects from the scene, disposes of Three.js resources, and marks the measurement as disposed.
146
- * Should be called when the measurement is no longer needed to prevent memory leaks.
147
- * @returns {void}
148
- */
149
- dispose(): void;
150
- }