@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,42 +0,0 @@
1
- export interface FogLayerProps {
2
- /**
3
- * Whether the fog layer is enabled
4
- */
5
- enabled: boolean;
6
- /**
7
- * Color of the fog
8
- */
9
- color: string;
10
- /**
11
- * Overall opacity of the fog layer
12
- */
13
- opacity: number;
14
- /**
15
- * Speed of fog movement
16
- */
17
- speed: number;
18
- /**
19
- * How quickly the amplitude decreases for each octave
20
- */
21
- persistence: number;
22
- /**
23
- * How quickly the frequency increases for each octave
24
- */
25
- lacunarity: number;
26
- /**
27
- * Base frequency of the noise
28
- */
29
- frequency: number;
30
- /**
31
- * Vertical offset of the noise
32
- */
33
- offset: number;
34
- /**
35
- * Overall amplitude of the noise
36
- */
37
- amplitude: number;
38
- /**
39
- * Number of octaves to use
40
- */
41
- levels: number;
42
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,249 +0,0 @@
1
- <script lang="ts">
2
- import * as THREE from 'three';
3
- import { getContext, onDestroy } from 'svelte';
4
- import { T, type Props as ThrelteProps } from '@threlte/core';
5
- import { ToolType } from '../DrawingLayer/types';
6
- import { type FogOfWarLayerProps } from './types';
7
- import type { Size } from '../../types';
8
- import type { Callbacks } from '../Stage/types';
9
- import LayerInput from '../LayerInput/LayerInput.svelte';
10
- import toolOutlineVertexShader from '../../shaders/default.vert?raw';
11
- import toolOutlineFragmentShader from '../../shaders/ToolOutline.frag?raw';
12
- import { SceneLayer } from '../Scene/types';
13
- import FogOfWarMaterial from './FogOfWarMaterial.svelte';
14
-
15
- interface Props extends ThrelteProps<typeof THREE.Mesh> {
16
- props: FogOfWarLayerProps;
17
- isActive: boolean;
18
- mapSize: Size | null;
19
- }
20
-
21
- const { props, isActive, mapSize, ...meshProps }: Props = $props();
22
-
23
- const onFogUpdate = getContext<Callbacks>('callbacks').onFogUpdate;
24
-
25
- // Convert percentage-based tool.size to texture pixels for outline
26
- // This must match the conversion in FogOfWarMaterial
27
- const toolSizePixels = $derived.by(() => {
28
- if (!mapSize) return props.tool.size;
29
- const textureSize = Math.min(mapSize.width, mapSize.height);
30
- return Math.round(textureSize * (props.tool.size / 100));
31
- });
32
-
33
- let mesh: THREE.Mesh = $state(new THREE.Mesh());
34
- let outlineMesh: THREE.Mesh = $state(new THREE.Mesh());
35
- let material: FogOfWarMaterial | undefined = $state();
36
- let drawing = false;
37
- let hasFinishedDrawing = false;
38
-
39
- // Export drawing state so parent can check it
40
- export function isDrawing() {
41
- return drawing;
42
- }
43
-
44
- // If mouse leaves the drawing area, we need to reset the start position
45
- // when it re-enters the drawing area to prevent the drawing from "jumping"
46
- // to the new point
47
- let lastPos: THREE.Vector2 | null = null;
48
-
49
- // Add outline material
50
- // Initial value will be updated by $effect below
51
- const outlineMaterial = new THREE.ShaderMaterial({
52
- uniforms: {
53
- uStart: { value: new THREE.Vector2(Infinity, Infinity) },
54
- uEnd: { value: new THREE.Vector2(Infinity, Infinity) },
55
- uBrushSize: { value: props.tool.size }, // Will be updated to pixels in $effect
56
- uTextureSize: { value: new THREE.Vector2(0, 0) },
57
- uShapeType: { value: props.tool.type },
58
- uOutlineColor: { value: new THREE.Color(props.outline.color) },
59
- uOutlineOpacity: { value: props.outline.opacity },
60
- uOutlineThickness: { value: props.outline.thickness }
61
- },
62
- vertexShader: toolOutlineVertexShader,
63
- fragmentShader: toolOutlineFragmentShader,
64
- transparent: true,
65
- depthTest: false
66
- });
67
-
68
- onDestroy(() => {
69
- outlineMaterial.dispose();
70
- });
71
-
72
- // Whenever the tool becomes inactive, reset the drawing state and hide outline
73
- $effect(() => {
74
- if (!isActive) {
75
- lastPos = null;
76
- drawing = false;
77
- material?.revertChanges();
78
- outlineMesh.visible = false;
79
- // Reset cursor position so it doesn't appear at old location when reactivated
80
- outlineMaterial.uniforms.uStart.value.set(Infinity, Infinity);
81
- outlineMaterial.uniforms.uEnd.value.set(Infinity, Infinity);
82
- }
83
- });
84
-
85
- // Update outline material uniforms (but don't control visibility here - let draw() handle it)
86
- $effect(() => {
87
- if (!mapSize) return;
88
-
89
- // Use .set() to avoid allocating new objects
90
- outlineMaterial.uniforms.uTextureSize.value.set(mapSize.width, mapSize.height);
91
- outlineMaterial.uniforms.uOutlineColor.value.set(props.outline.color);
92
- outlineMaterial.uniforms.uOutlineThickness.value = props.outline.thickness;
93
- outlineMaterial.uniforms.uOutlineOpacity.value = props.outline.opacity;
94
- outlineMaterial.uniforms.uShapeType.value = props.tool.type;
95
- outlineMaterial.uniforms.uBrushSize.value = toolSizePixels;
96
- });
97
-
98
- function onMouseDown(e: Event, p: THREE.Vector2 | null) {
99
- e.preventDefault();
100
- lastPos = p;
101
- drawing = true;
102
- hasFinishedDrawing = false;
103
-
104
- draw(e, p);
105
- }
106
-
107
- function onMouseUp(_e: Event, p: THREE.Vector2 | null) {
108
- // If using shapes, draw the shape outline when the mouse button is released
109
- if (props.tool.type === ToolType.Ellipse || props.tool.type === ToolType.Rectangle) {
110
- if (p && drawing && lastPos) {
111
- material?.drawPath(p, lastPos, true);
112
- outlineMesh.visible = false;
113
- hasFinishedDrawing = true;
114
- }
115
- }
116
-
117
- if (hasFinishedDrawing) {
118
- onFogUpdate(toPng());
119
- }
120
-
121
- // Reset the drawing state
122
- lastPos = null;
123
- drawing = false;
124
- hasFinishedDrawing = false;
125
- }
126
-
127
- function onMouseLeave() {
128
- lastPos = null;
129
- drawing = false;
130
- outlineMesh.visible = false;
131
- material?.revertChanges();
132
-
133
- // Hide cursor when mouse leaves
134
- outlineMaterial.uniforms.uStart.value.set(Infinity, Infinity);
135
- outlineMaterial.uniforms.uEnd.value.set(Infinity, Infinity);
136
- }
137
-
138
- function draw(e: Event, p: THREE.Vector2 | null) {
139
- // If the mouse is not within the drawing area, do nothing
140
- if (!p) {
141
- // Move cursor off-screen when mouse is outside
142
- outlineMaterial.uniforms.uStart.value.set(Infinity, Infinity);
143
- outlineMaterial.uniforms.uEnd.value.set(Infinity, Infinity);
144
- return;
145
- }
146
-
147
- if (props.tool.type === ToolType.Ellipse || props.tool.type === ToolType.Rectangle) {
148
- // Shapes don't use lazy brush
149
- outlineMaterial.uniforms.uStart.value.copy(p);
150
- outlineMaterial.uniforms.uEnd.value.copy(lastPos ?? p);
151
-
152
- // When using shapes, draw the shape outline while the mouse button is held down
153
- if (drawing) {
154
- outlineMesh.visible = true;
155
- material?.drawPath(p, lastPos);
156
- }
157
- } else {
158
- // For freehand tools, always show the cursor
159
- outlineMesh.visible = true;
160
-
161
- // For freehand drawing
162
- if (drawing) {
163
- if (!lastPos) {
164
- lastPos = p.clone();
165
- }
166
- material?.drawPath(p, lastPos, true);
167
- hasFinishedDrawing = true;
168
- lastPos = p.clone();
169
- }
170
-
171
- // Always show cursor at current position
172
- outlineMaterial.uniforms.uStart.value.copy(p);
173
- outlineMaterial.uniforms.uEnd.value.copy(p);
174
- }
175
- }
176
-
177
- /**
178
- * Clears all fog, revealing the entire map underneath
179
- */
180
- export function clearFog() {
181
- material?.clear();
182
- onFogUpdate(toPng());
183
- }
184
-
185
- /**
186
- * Resets the fog to fill the entire layer
187
- */
188
- export function resetFog() {
189
- material?.fill();
190
- onFogUpdate(toPng());
191
- }
192
-
193
- /**
194
- * Serializes the fog of war image data into a binary buffer
195
- * @return A binary buffer
196
- */
197
- export async function toPng(): Promise<Blob> {
198
- return (await material?.toPng()) ?? new Blob();
199
- }
200
-
201
- /**
202
- * Exports the fog of war state as RLE-encoded data
203
- * @returns RLE encoded Uint8Array
204
- */
205
- export async function toRLE(): Promise<Uint8Array> {
206
- return (await material?.toRLE()) ?? new Uint8Array();
207
- }
208
-
209
- /**
210
- * Loads RLE-encoded data into the fog of war
211
- * @param rleData RLE encoded data
212
- * @param width Image width
213
- * @param height Image height
214
- */
215
- export async function fromRLE(rleData: Uint8Array, width: number, height: number) {
216
- return material?.fromRLE(rleData, width, height);
217
- }
218
- </script>
219
-
220
- <LayerInput
221
- id="fogOfWar"
222
- {isActive}
223
- layerSize={mapSize}
224
- target={mesh}
225
- {onMouseDown}
226
- onMouseMove={draw}
227
- {onMouseUp}
228
- {onMouseLeave}
229
- />
230
-
231
- <!--
232
- Invisible mesh used for input detection.
233
- The plane geometry is larger than the map size to allow cursor
234
- events to be detected outside of the fog of war layer.
235
- -->
236
- <T.Mesh bind:ref={mesh} name="fogOfWarInput" layer={SceneLayer.Input}>
237
- <T.MeshBasicMaterial visible={false} />
238
- <T.PlaneGeometry args={[10, 10]} />
239
- </T.Mesh>
240
-
241
- <T.Mesh bind:ref={outlineMesh} name="fogOfWarToolOutline" layers={[SceneLayer.Overlay]}>
242
- <T is={outlineMaterial} transparent={true} opacity={0.0} depthTest={false} />
243
- <T.PlaneGeometry />
244
- </T.Mesh>
245
-
246
- <T.Mesh name="fogOfWar" {...meshProps} layers={[SceneLayer.Main]}>
247
- <FogOfWarMaterial bind:this={material} {props} {mapSize} />
248
- <T.PlaneGeometry />
249
- </T.Mesh>
@@ -1,19 +0,0 @@
1
- import * as THREE from 'three';
2
- import { type Props as ThrelteProps } from '@threlte/core';
3
- import { type FogOfWarLayerProps } from './types';
4
- import type { Size } from '../../types';
5
- interface Props extends ThrelteProps<typeof THREE.Mesh> {
6
- props: FogOfWarLayerProps;
7
- isActive: boolean;
8
- mapSize: Size | null;
9
- }
10
- declare const FogOfWarLayer: import("svelte").Component<Props, {
11
- isDrawing: () => boolean;
12
- clearFog: () => void;
13
- resetFog: () => void;
14
- toPng: () => Promise<Blob>;
15
- toRLE: () => Promise<Uint8Array>;
16
- fromRLE: (rleData: Uint8Array, width: number, height: number) => Promise<void | undefined>;
17
- }, "">;
18
- type FogOfWarLayer = ReturnType<typeof FogOfWarLayer>;
19
- export default FogOfWarLayer;
@@ -1,200 +0,0 @@
1
- <script lang="ts">
2
- import * as THREE from 'three';
3
- import { T, useTask } from '@threlte/core';
4
- import { getContext, onDestroy } from 'svelte';
5
- import DrawingMaterial from '../DrawingLayer/DrawingMaterial.svelte';
6
- import { type FogOfWarLayerProps } from './types';
7
- import type { Size } from '../../types';
8
- import { clippingPlaneStore } from '../../helpers/clippingPlaneStore.svelte';
9
- import { InitialState } from '../DrawingLayer/types';
10
- import { StageMode } from '../Stage/types';
11
- import fogVertexShader from '../../shaders/default.vert?raw';
12
- import fogFragmentShader from '../../shaders/Fog.frag?raw';
13
-
14
- interface Props {
15
- props: FogOfWarLayerProps;
16
- mapSize: Size | null;
17
- }
18
-
19
- const { props, mapSize }: Props = $props();
20
-
21
- const stage = getContext<{ mode: StageMode }>('stage');
22
- let drawMaterial: DrawingMaterial;
23
-
24
- // Convert percentage-based tool.size to texture pixels
25
- // tool.size is a percentage (5-20), mapSize gives texture dimensions
26
- const toolSizePixels = $derived.by(() => {
27
- if (!mapSize) return props.tool.size;
28
- const textureSize = Math.min(mapSize.width, mapSize.height);
29
- return Math.round(textureSize * (props.tool.size / 100));
30
- });
31
-
32
- // Create derived props with converted tool size
33
- const drawingProps = $derived({
34
- ...props,
35
- tool: {
36
- ...props.tool,
37
- size: toolSizePixels
38
- }
39
- });
40
-
41
- // Material used for rendering the fog of war
42
- let fogMaterial = new THREE.ShaderMaterial({
43
- uniforms: {
44
- uMaskTexture: { value: null },
45
- uTime: { value: 0.0 },
46
- uBaseColor: { value: new THREE.Color(props.noise.baseColor) },
47
- uFogColor1: { value: new THREE.Color(props.noise.fogColor1) },
48
- uFogColor2: { value: new THREE.Color(props.noise.fogColor2) },
49
- uFogColor3: { value: new THREE.Color(props.noise.fogColor3) },
50
- uFogColor4: { value: new THREE.Color(props.noise.fogColor4) },
51
- uFogSpeed: { value: props.noise.speed },
52
- uEdgeMinMipMapLevel: { value: props.edge.minMipMapLevel },
53
- uEdgeMaxMipMapLevel: { value: props.edge.maxMipMapLevel },
54
- uEdgeFrequency: { value: props.edge.frequency },
55
- uEdgeAmplitude: { value: props.edge.amplitude },
56
- uEdgeOffset: { value: props.edge.offset },
57
- uEdgeSpeed: { value: props.edge.speed },
58
- uPersistence: { value: props.noise.persistence },
59
- uLacunarity: { value: props.noise.lacunarity },
60
- uFrequency: { value: props.noise.frequency },
61
- uOffset: { value: props.noise.offset },
62
- uAmplitude: { value: props.noise.amplitude },
63
- uLevels: { value: props.noise.levels },
64
- uOpacity: { value: stage.mode === StageMode.DM ? props.opacity.dm : props.opacity.player },
65
- uClippingPlanes: new THREE.Uniform(
66
- clippingPlaneStore.value.map((p) => new THREE.Vector4(p.normal.x, p.normal.y, p.normal.z, p.constant))
67
- )
68
- },
69
- transparent: true,
70
- fragmentShader: fogFragmentShader,
71
- vertexShader: fogVertexShader
72
- });
73
-
74
- // Track opacity separately to ensure it updates properly
75
- let currentOpacity = $derived(stage.mode === StageMode.DM ? props.opacity.dm : props.opacity.player);
76
-
77
- // Update opacity when it changes
78
- $effect(() => {
79
- fogMaterial.uniforms.uOpacity.value = currentOpacity;
80
- fogMaterial.uniformsNeedUpdate = true;
81
- });
82
-
83
- // Whenever the fog of war props change, we need to update the material
84
- $effect(() => {
85
- // Use .set() to avoid allocating new Color objects
86
- fogMaterial.uniforms.uBaseColor.value.set(props.noise.baseColor);
87
- fogMaterial.uniforms.uFogColor1.value.set(props.noise.fogColor1);
88
- fogMaterial.uniforms.uFogColor2.value.set(props.noise.fogColor2);
89
- fogMaterial.uniforms.uFogColor3.value.set(props.noise.fogColor3);
90
- fogMaterial.uniforms.uFogColor4.value.set(props.noise.fogColor4);
91
-
92
- fogMaterial.uniforms.uEdgeMinMipMapLevel.value = props.edge.minMipMapLevel;
93
- fogMaterial.uniforms.uEdgeMaxMipMapLevel.value = props.edge.maxMipMapLevel;
94
- fogMaterial.uniforms.uEdgeFrequency.value = props.edge.frequency;
95
- fogMaterial.uniforms.uEdgeAmplitude.value = props.edge.amplitude;
96
- fogMaterial.uniforms.uEdgeOffset.value = props.edge.offset;
97
- fogMaterial.uniforms.uEdgeSpeed.value = props.edge.speed;
98
- fogMaterial.uniforms.uFogSpeed.value = props.noise.speed;
99
- fogMaterial.uniforms.uFrequency.value = props.noise.frequency;
100
- fogMaterial.uniforms.uPersistence.value = props.noise.persistence;
101
- fogMaterial.uniforms.uLacunarity.value = props.noise.lacunarity;
102
- fogMaterial.uniforms.uLevels.value = props.noise.levels;
103
- fogMaterial.uniforms.uOffset.value = props.noise.offset;
104
- fogMaterial.uniforms.uAmplitude.value = props.noise.amplitude;
105
-
106
- // Update clipping planes in place
107
- const planes = clippingPlaneStore.value;
108
- for (let i = 0; i < planes.length; i++) {
109
- const p = planes[i];
110
- fogMaterial.uniforms.uClippingPlanes.value[i].set(p.normal.x, p.normal.y, p.normal.z, p.constant);
111
- }
112
-
113
- // Force shader to update with new uniform values
114
- fogMaterial.uniformsNeedUpdate = true;
115
- });
116
-
117
- useTask((delta) => {
118
- fogMaterial.uniforms.uTime.value += delta;
119
- });
120
-
121
- /**
122
- * Reverts the changes made to the fog of war
123
- */
124
- export function revertChanges() {
125
- drawMaterial.revert();
126
- }
127
-
128
- /**
129
- * Clears the fog of war
130
- */
131
- export function clear() {
132
- drawMaterial.clear();
133
- }
134
-
135
- /**
136
- * Fills the fog of war
137
- */
138
- export function fill() {
139
- drawMaterial.fill();
140
- }
141
-
142
- /**
143
- * Draws a path on the fog of war
144
- * @param start The start position of the path
145
- * @param last The last position of the path
146
- * @param persist Whether to persist the current state
147
- */
148
- export function drawPath(start: THREE.Vector2, last: THREE.Vector2 | null = null, persist: boolean = false) {
149
- drawMaterial.drawPath(start, last, persist);
150
- }
151
-
152
- /**
153
- * Serializes the current fog of war state to a binary buffer
154
- * @returns A binary buffer representation of the fog of war textuare
155
- */
156
- export async function toPng(): Promise<Blob> {
157
- return drawMaterial.toPng();
158
- }
159
-
160
- /**
161
- * Exports the fog of war state as RLE-encoded data
162
- * @returns RLE encoded Uint8Array
163
- */
164
- export async function toRLE(): Promise<Uint8Array> {
165
- return drawMaterial.toRLE();
166
- }
167
-
168
- /**
169
- * Loads RLE-encoded data into the fog of war
170
- * @param rleData RLE encoded data
171
- * @param width Image width
172
- * @param height Image height
173
- */
174
- export async function fromRLE(rleData: Uint8Array, width: number, height: number) {
175
- return drawMaterial.fromRLE(rleData, width, height);
176
- }
177
-
178
- onDestroy(() => {
179
- fogMaterial.dispose();
180
- });
181
- </script>
182
-
183
- <DrawingMaterial
184
- bind:this={drawMaterial}
185
- props={drawingProps}
186
- size={mapSize}
187
- initialState={InitialState.Fill}
188
- onRender={(texture) => {
189
- fogMaterial.uniforms.uMaskTexture.value = texture;
190
- fogMaterial.uniformsNeedUpdate = true;
191
- }}
192
- />
193
-
194
- {#snippet attachMaterial()}
195
- {fogMaterial}
196
- {/snippet}
197
-
198
- <T is={fogMaterial}>
199
- {@render attachMaterial()}
200
- </T>
@@ -1,18 +0,0 @@
1
- import * as THREE from 'three';
2
- import { type FogOfWarLayerProps } from './types';
3
- import type { Size } from '../../types';
4
- interface Props {
5
- props: FogOfWarLayerProps;
6
- mapSize: Size | null;
7
- }
8
- declare const FogOfWarMaterial: import("svelte").Component<Props, {
9
- revertChanges: () => void;
10
- clear: () => void;
11
- fill: () => void;
12
- drawPath: (start: THREE.Vector2, last?: THREE.Vector2 | null, persist?: boolean) => void;
13
- toPng: () => Promise<Blob>;
14
- toRLE: () => Promise<Uint8Array>;
15
- fromRLE: (rleData: Uint8Array, width: number, height: number) => Promise<void>;
16
- }, "">;
17
- type FogOfWarMaterial = ReturnType<typeof FogOfWarMaterial>;
18
- export default FogOfWarMaterial;
@@ -1,143 +0,0 @@
1
- import type { DrawingLayerProps } from '../DrawingLayer/types';
2
- export interface FogOfWarLayerProps extends DrawingLayerProps {
3
- /**
4
- * The outline settings
5
- */
6
- outline: {
7
- /**
8
- * The color of the outline
9
- */
10
- color: string;
11
- /**
12
- * The opacity of the outline
13
- */
14
- opacity: number;
15
- /**
16
- * The thickness of the outline
17
- */
18
- thickness: number;
19
- };
20
- /**
21
- * The edge settings
22
- */
23
- edge: {
24
- /**
25
- * The minimum mip map level to use for the edge mask
26
- */
27
- minMipMapLevel: number;
28
- /**
29
- * The maximum mip map level to use for the edge mask
30
- */
31
- maxMipMapLevel: number;
32
- /**
33
- * The frequency of the noise added to the mask edge
34
- */
35
- frequency: {
36
- x: number;
37
- y: number;
38
- z: number;
39
- w: number;
40
- };
41
- /**
42
- * The amplitude of the noise added to the mask edge
43
- */
44
- amplitude: {
45
- x: number;
46
- y: number;
47
- z: number;
48
- w: number;
49
- };
50
- /**
51
- * The offset of the noise added to the mask edge
52
- */
53
- offset: number;
54
- /**
55
- * The speed of the noise added to the mask edge
56
- */
57
- speed: number;
58
- };
59
- /**
60
- * The noise settings
61
- */
62
- noise: {
63
- /**
64
- * Color of the fog
65
- */
66
- baseColor: string;
67
- fogColor1: string;
68
- fogColor2: string;
69
- fogColor3: string;
70
- fogColor4: string;
71
- /**
72
- * Controls the speed of the fog
73
- */
74
- speed: {
75
- x: number;
76
- y: number;
77
- z: number;
78
- w: number;
79
- };
80
- /**
81
- * Controls the frequency of the fog
82
- */
83
- frequency: {
84
- x: number;
85
- y: number;
86
- z: number;
87
- w: number;
88
- };
89
- /**
90
- * Controls the persistence of the fog
91
- */
92
- persistence: {
93
- x: number;
94
- y: number;
95
- z: number;
96
- w: number;
97
- };
98
- /**
99
- * Controls the lacunarity of the fog
100
- */
101
- lacunarity: {
102
- x: number;
103
- y: number;
104
- z: number;
105
- w: number;
106
- };
107
- /**
108
- * Controls the levels of the fog
109
- */
110
- levels: {
111
- x: number;
112
- y: number;
113
- z: number;
114
- w: number;
115
- };
116
- /**
117
- * Controls the offset of the fog
118
- */
119
- offset: {
120
- x: number;
121
- y: number;
122
- z: number;
123
- w: number;
124
- };
125
- /**
126
- * Controls the amplitude of the fog
127
- */
128
- amplitude: {
129
- x: number;
130
- y: number;
131
- z: number;
132
- w: number;
133
- };
134
- };
135
- }
136
- export interface FogOfWarExports {
137
- clearFog: () => void;
138
- resetFog: () => void;
139
- toPng: () => Promise<Blob>;
140
- toRLE: () => Promise<Uint8Array>;
141
- fromRLE: (rleData: Uint8Array, width: number, height: number) => Promise<void>;
142
- isDrawing: () => boolean;
143
- }
@@ -1,20 +0,0 @@
1
- <script lang="ts">
2
- import * as THREE from 'three';
3
- import { T, type Props as ThrelteProps } from '@threlte/core';
4
- import { type GridLayerProps } from './types';
5
- import { type DisplayProps } from '../Stage/types';
6
- import GridMaterial from './GridMaterial.svelte';
7
-
8
- interface Props extends ThrelteProps<typeof THREE.Mesh> {
9
- grid: GridLayerProps;
10
- display: DisplayProps;
11
- sceneZoom: number;
12
- }
13
-
14
- const { grid, display, sceneZoom, ...meshProps }: Props = $props();
15
- </script>
16
-
17
- <T.Mesh name="gridLayer" scale={[display.resolution.x, display.resolution.y, 1]} {...meshProps}>
18
- <GridMaterial {grid} {display} {sceneZoom} />
19
- <T.PlaneGeometry />
20
- </T.Mesh>