@xyo-network/react-map 2.75.6 → 2.76.0

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 (449) hide show
  1. package/dist/neutral/AnimatedHeatMapSettings.d.cts +2 -0
  2. package/dist/neutral/AnimatedHeatMapSettings.d.cts.map +1 -0
  3. package/dist/neutral/AnimatedHeatMapSettings.d.mts +2 -0
  4. package/dist/neutral/AnimatedHeatMapSettings.d.mts.map +1 -0
  5. package/dist/neutral/AnimatedHeatMapSettings.d.ts +2 -0
  6. package/dist/neutral/AnimatedHeatMapSettings.d.ts.map +1 -0
  7. package/dist/neutral/Colors/MapColorProps.d.cts +17 -0
  8. package/dist/neutral/Colors/MapColorProps.d.cts.map +1 -0
  9. package/dist/neutral/Colors/MapColorProps.d.mts +17 -0
  10. package/dist/neutral/Colors/MapColorProps.d.mts.map +1 -0
  11. package/dist/neutral/Colors/MapColorProps.d.ts +17 -0
  12. package/dist/neutral/Colors/MapColorProps.d.ts.map +1 -0
  13. package/dist/neutral/Colors/index.d.cts +2 -0
  14. package/dist/neutral/Colors/index.d.cts.map +1 -0
  15. package/dist/neutral/Colors/index.d.mts +2 -0
  16. package/dist/neutral/Colors/index.d.mts.map +1 -0
  17. package/dist/neutral/Colors/index.d.ts +2 -0
  18. package/dist/neutral/Colors/index.d.ts.map +1 -0
  19. package/dist/neutral/Components/AnimatedHeatMap.d.cts +14 -0
  20. package/dist/neutral/Components/AnimatedHeatMap.d.cts.map +1 -0
  21. package/dist/neutral/Components/AnimatedHeatMap.d.mts +14 -0
  22. package/dist/neutral/Components/AnimatedHeatMap.d.mts.map +1 -0
  23. package/dist/neutral/Components/AnimatedHeatMap.d.ts +14 -0
  24. package/dist/neutral/Components/AnimatedHeatMap.d.ts.map +1 -0
  25. package/dist/neutral/Components/AnimatedHeatMapLoaded.d.cts +8 -0
  26. package/dist/neutral/Components/AnimatedHeatMapLoaded.d.cts.map +1 -0
  27. package/dist/neutral/Components/AnimatedHeatMapLoaded.d.mts +8 -0
  28. package/dist/neutral/Components/AnimatedHeatMapLoaded.d.mts.map +1 -0
  29. package/dist/neutral/Components/AnimatedHeatMapLoaded.d.ts +8 -0
  30. package/dist/neutral/Components/AnimatedHeatMapLoaded.d.ts.map +1 -0
  31. package/dist/neutral/Components/FeaturesToLayersMap.d.cts +7 -0
  32. package/dist/neutral/Components/FeaturesToLayersMap.d.cts.map +1 -0
  33. package/dist/neutral/Components/FeaturesToLayersMap.d.mts +7 -0
  34. package/dist/neutral/Components/FeaturesToLayersMap.d.mts.map +1 -0
  35. package/dist/neutral/Components/FeaturesToLayersMap.d.ts +7 -0
  36. package/dist/neutral/Components/FeaturesToLayersMap.d.ts.map +1 -0
  37. package/dist/neutral/Components/HeatMapSettings.d.cts +3 -0
  38. package/dist/neutral/Components/HeatMapSettings.d.cts.map +1 -0
  39. package/dist/neutral/Components/HeatMapSettings.d.mts +3 -0
  40. package/dist/neutral/Components/HeatMapSettings.d.mts.map +1 -0
  41. package/dist/neutral/Components/HeatMapSettings.d.ts +3 -0
  42. package/dist/neutral/Components/HeatMapSettings.d.ts.map +1 -0
  43. package/dist/neutral/Components/LayerAnimator.d.cts +12 -0
  44. package/dist/neutral/Components/LayerAnimator.d.cts.map +1 -0
  45. package/dist/neutral/Components/LayerAnimator.d.mts +12 -0
  46. package/dist/neutral/Components/LayerAnimator.d.mts.map +1 -0
  47. package/dist/neutral/Components/LayerAnimator.d.ts +12 -0
  48. package/dist/neutral/Components/LayerAnimator.d.ts.map +1 -0
  49. package/dist/neutral/Components/Legend.d.cts +5 -0
  50. package/dist/neutral/Components/Legend.d.cts.map +1 -0
  51. package/dist/neutral/Components/Legend.d.mts +5 -0
  52. package/dist/neutral/Components/Legend.d.mts.map +1 -0
  53. package/dist/neutral/Components/Legend.d.ts +5 -0
  54. package/dist/neutral/Components/Legend.d.ts.map +1 -0
  55. package/dist/neutral/Components/Legends/ColorGradient.d.cts +5 -0
  56. package/dist/neutral/Components/Legends/ColorGradient.d.cts.map +1 -0
  57. package/dist/neutral/Components/Legends/ColorGradient.d.mts +5 -0
  58. package/dist/neutral/Components/Legends/ColorGradient.d.mts.map +1 -0
  59. package/dist/neutral/Components/Legends/ColorGradient.d.ts +5 -0
  60. package/dist/neutral/Components/Legends/ColorGradient.d.ts.map +1 -0
  61. package/dist/neutral/Components/Legends/index.d.cts +2 -0
  62. package/dist/neutral/Components/Legends/index.d.cts.map +1 -0
  63. package/dist/neutral/Components/Legends/index.d.mts +2 -0
  64. package/dist/neutral/Components/Legends/index.d.mts.map +1 -0
  65. package/dist/neutral/Components/Legends/index.d.ts +2 -0
  66. package/dist/neutral/Components/Legends/index.d.ts.map +1 -0
  67. package/dist/neutral/Components/MapBox.d.cts +11 -0
  68. package/dist/neutral/Components/MapBox.d.cts.map +1 -0
  69. package/dist/neutral/Components/MapBox.d.mts +11 -0
  70. package/dist/neutral/Components/MapBox.d.mts.map +1 -0
  71. package/dist/neutral/Components/MapBox.d.ts +11 -0
  72. package/dist/neutral/Components/MapBox.d.ts.map +1 -0
  73. package/dist/neutral/Components/MapBoxHeat.d.cts +4 -0
  74. package/dist/neutral/Components/MapBoxHeat.d.cts.map +1 -0
  75. package/dist/neutral/Components/MapBoxHeat.d.mts +4 -0
  76. package/dist/neutral/Components/MapBoxHeat.d.mts.map +1 -0
  77. package/dist/neutral/Components/MapBoxHeat.d.ts +4 -0
  78. package/dist/neutral/Components/MapBoxHeat.d.ts.map +1 -0
  79. package/dist/neutral/Components/MapBoxPoints.d.cts +9 -0
  80. package/dist/neutral/Components/MapBoxPoints.d.cts.map +1 -0
  81. package/dist/neutral/Components/MapBoxPoints.d.mts +9 -0
  82. package/dist/neutral/Components/MapBoxPoints.d.mts.map +1 -0
  83. package/dist/neutral/Components/MapBoxPoints.d.ts +9 -0
  84. package/dist/neutral/Components/MapBoxPoints.d.ts.map +1 -0
  85. package/dist/neutral/Components/MapSettingsComponents/Setting.d.cts +8 -0
  86. package/dist/neutral/Components/MapSettingsComponents/Setting.d.cts.map +1 -0
  87. package/dist/neutral/Components/MapSettingsComponents/Setting.d.mts +8 -0
  88. package/dist/neutral/Components/MapSettingsComponents/Setting.d.mts.map +1 -0
  89. package/dist/neutral/Components/MapSettingsComponents/Setting.d.ts +8 -0
  90. package/dist/neutral/Components/MapSettingsComponents/Setting.d.ts.map +1 -0
  91. package/dist/neutral/Components/MapSettingsComponents/SettingsBox.d.cts +7 -0
  92. package/dist/neutral/Components/MapSettingsComponents/SettingsBox.d.cts.map +1 -0
  93. package/dist/neutral/Components/MapSettingsComponents/SettingsBox.d.mts +7 -0
  94. package/dist/neutral/Components/MapSettingsComponents/SettingsBox.d.mts.map +1 -0
  95. package/dist/neutral/Components/MapSettingsComponents/SettingsBox.d.ts +7 -0
  96. package/dist/neutral/Components/MapSettingsComponents/SettingsBox.d.ts.map +1 -0
  97. package/dist/neutral/Components/MapSettingsComponents/index.d.cts +3 -0
  98. package/dist/neutral/Components/MapSettingsComponents/index.d.cts.map +1 -0
  99. package/dist/neutral/Components/MapSettingsComponents/index.d.mts +3 -0
  100. package/dist/neutral/Components/MapSettingsComponents/index.d.mts.map +1 -0
  101. package/dist/neutral/Components/MapSettingsComponents/index.d.ts +3 -0
  102. package/dist/neutral/Components/MapSettingsComponents/index.d.ts.map +1 -0
  103. package/dist/neutral/Components/index.d.cts +12 -0
  104. package/dist/neutral/Components/index.d.cts.map +1 -0
  105. package/dist/neutral/Components/index.d.mts +12 -0
  106. package/dist/neutral/Components/index.d.mts.map +1 -0
  107. package/dist/neutral/Components/index.d.ts +12 -0
  108. package/dist/neutral/Components/index.d.ts.map +1 -0
  109. package/dist/neutral/Contexts/HeatMapInitializer/Context.d.cts +5 -0
  110. package/dist/neutral/Contexts/HeatMapInitializer/Context.d.cts.map +1 -0
  111. package/dist/neutral/Contexts/HeatMapInitializer/Context.d.mts +5 -0
  112. package/dist/neutral/Contexts/HeatMapInitializer/Context.d.mts.map +1 -0
  113. package/dist/neutral/Contexts/HeatMapInitializer/Context.d.ts +5 -0
  114. package/dist/neutral/Contexts/HeatMapInitializer/Context.d.ts.map +1 -0
  115. package/dist/neutral/Contexts/HeatMapInitializer/Provider.d.cts +16 -0
  116. package/dist/neutral/Contexts/HeatMapInitializer/Provider.d.cts.map +1 -0
  117. package/dist/neutral/Contexts/HeatMapInitializer/Provider.d.mts +16 -0
  118. package/dist/neutral/Contexts/HeatMapInitializer/Provider.d.mts.map +1 -0
  119. package/dist/neutral/Contexts/HeatMapInitializer/Provider.d.ts +16 -0
  120. package/dist/neutral/Contexts/HeatMapInitializer/Provider.d.ts.map +1 -0
  121. package/dist/neutral/Contexts/HeatMapInitializer/State.d.cts +7 -0
  122. package/dist/neutral/Contexts/HeatMapInitializer/State.d.cts.map +1 -0
  123. package/dist/neutral/Contexts/HeatMapInitializer/State.d.mts +7 -0
  124. package/dist/neutral/Contexts/HeatMapInitializer/State.d.mts.map +1 -0
  125. package/dist/neutral/Contexts/HeatMapInitializer/State.d.ts +7 -0
  126. package/dist/neutral/Contexts/HeatMapInitializer/State.d.ts.map +1 -0
  127. package/dist/neutral/Contexts/HeatMapInitializer/index.d.cts +4 -0
  128. package/dist/neutral/Contexts/HeatMapInitializer/index.d.cts.map +1 -0
  129. package/dist/neutral/Contexts/HeatMapInitializer/index.d.mts +4 -0
  130. package/dist/neutral/Contexts/HeatMapInitializer/index.d.mts.map +1 -0
  131. package/dist/neutral/Contexts/HeatMapInitializer/index.d.ts +4 -0
  132. package/dist/neutral/Contexts/HeatMapInitializer/index.d.ts.map +1 -0
  133. package/dist/neutral/Contexts/HeatMapInitializer/useHeatMapInitializer.d.cts +3 -0
  134. package/dist/neutral/Contexts/HeatMapInitializer/useHeatMapInitializer.d.cts.map +1 -0
  135. package/dist/neutral/Contexts/HeatMapInitializer/useHeatMapInitializer.d.mts +3 -0
  136. package/dist/neutral/Contexts/HeatMapInitializer/useHeatMapInitializer.d.mts.map +1 -0
  137. package/dist/neutral/Contexts/HeatMapInitializer/useHeatMapInitializer.d.ts +3 -0
  138. package/dist/neutral/Contexts/HeatMapInitializer/useHeatMapInitializer.d.ts.map +1 -0
  139. package/dist/neutral/Contexts/MapBoxInstance/Context.d.cts +5 -0
  140. package/dist/neutral/Contexts/MapBoxInstance/Context.d.cts.map +1 -0
  141. package/dist/neutral/Contexts/MapBoxInstance/Context.d.mts +5 -0
  142. package/dist/neutral/Contexts/MapBoxInstance/Context.d.mts.map +1 -0
  143. package/dist/neutral/Contexts/MapBoxInstance/Context.d.ts +5 -0
  144. package/dist/neutral/Contexts/MapBoxInstance/Context.d.ts.map +1 -0
  145. package/dist/neutral/Contexts/MapBoxInstance/Provider.d.cts +4 -0
  146. package/dist/neutral/Contexts/MapBoxInstance/Provider.d.cts.map +1 -0
  147. package/dist/neutral/Contexts/MapBoxInstance/Provider.d.mts +4 -0
  148. package/dist/neutral/Contexts/MapBoxInstance/Provider.d.mts.map +1 -0
  149. package/dist/neutral/Contexts/MapBoxInstance/Provider.d.ts +4 -0
  150. package/dist/neutral/Contexts/MapBoxInstance/Provider.d.ts.map +1 -0
  151. package/dist/neutral/Contexts/MapBoxInstance/State.d.cts +8 -0
  152. package/dist/neutral/Contexts/MapBoxInstance/State.d.cts.map +1 -0
  153. package/dist/neutral/Contexts/MapBoxInstance/State.d.mts +8 -0
  154. package/dist/neutral/Contexts/MapBoxInstance/State.d.mts.map +1 -0
  155. package/dist/neutral/Contexts/MapBoxInstance/State.d.ts +8 -0
  156. package/dist/neutral/Contexts/MapBoxInstance/State.d.ts.map +1 -0
  157. package/dist/neutral/Contexts/MapBoxInstance/index.d.cts +4 -0
  158. package/dist/neutral/Contexts/MapBoxInstance/index.d.cts.map +1 -0
  159. package/dist/neutral/Contexts/MapBoxInstance/index.d.mts +4 -0
  160. package/dist/neutral/Contexts/MapBoxInstance/index.d.mts.map +1 -0
  161. package/dist/neutral/Contexts/MapBoxInstance/index.d.ts +4 -0
  162. package/dist/neutral/Contexts/MapBoxInstance/index.d.ts.map +1 -0
  163. package/dist/neutral/Contexts/MapBoxInstance/useMapBoxInstance.d.cts +3 -0
  164. package/dist/neutral/Contexts/MapBoxInstance/useMapBoxInstance.d.cts.map +1 -0
  165. package/dist/neutral/Contexts/MapBoxInstance/useMapBoxInstance.d.mts +3 -0
  166. package/dist/neutral/Contexts/MapBoxInstance/useMapBoxInstance.d.mts.map +1 -0
  167. package/dist/neutral/Contexts/MapBoxInstance/useMapBoxInstance.d.ts +3 -0
  168. package/dist/neutral/Contexts/MapBoxInstance/useMapBoxInstance.d.ts.map +1 -0
  169. package/dist/neutral/Contexts/MapSettings/Context.d.cts +5 -0
  170. package/dist/neutral/Contexts/MapSettings/Context.d.cts.map +1 -0
  171. package/dist/neutral/Contexts/MapSettings/Context.d.mts +5 -0
  172. package/dist/neutral/Contexts/MapSettings/Context.d.mts.map +1 -0
  173. package/dist/neutral/Contexts/MapSettings/Context.d.ts +5 -0
  174. package/dist/neutral/Contexts/MapSettings/Context.d.ts.map +1 -0
  175. package/dist/neutral/Contexts/MapSettings/Provider.d.cts +11 -0
  176. package/dist/neutral/Contexts/MapSettings/Provider.d.cts.map +1 -0
  177. package/dist/neutral/Contexts/MapSettings/Provider.d.mts +11 -0
  178. package/dist/neutral/Contexts/MapSettings/Provider.d.mts.map +1 -0
  179. package/dist/neutral/Contexts/MapSettings/Provider.d.ts +11 -0
  180. package/dist/neutral/Contexts/MapSettings/Provider.d.ts.map +1 -0
  181. package/dist/neutral/Contexts/MapSettings/State.d.cts +7 -0
  182. package/dist/neutral/Contexts/MapSettings/State.d.cts.map +1 -0
  183. package/dist/neutral/Contexts/MapSettings/State.d.mts +7 -0
  184. package/dist/neutral/Contexts/MapSettings/State.d.mts.map +1 -0
  185. package/dist/neutral/Contexts/MapSettings/State.d.ts +7 -0
  186. package/dist/neutral/Contexts/MapSettings/State.d.ts.map +1 -0
  187. package/dist/neutral/Contexts/MapSettings/index.d.cts +4 -0
  188. package/dist/neutral/Contexts/MapSettings/index.d.cts.map +1 -0
  189. package/dist/neutral/Contexts/MapSettings/index.d.mts +4 -0
  190. package/dist/neutral/Contexts/MapSettings/index.d.mts.map +1 -0
  191. package/dist/neutral/Contexts/MapSettings/index.d.ts +4 -0
  192. package/dist/neutral/Contexts/MapSettings/index.d.ts.map +1 -0
  193. package/dist/neutral/Contexts/MapSettings/useMapSettings.d.cts +3 -0
  194. package/dist/neutral/Contexts/MapSettings/useMapSettings.d.cts.map +1 -0
  195. package/dist/neutral/Contexts/MapSettings/useMapSettings.d.mts +3 -0
  196. package/dist/neutral/Contexts/MapSettings/useMapSettings.d.mts.map +1 -0
  197. package/dist/neutral/Contexts/MapSettings/useMapSettings.d.ts +3 -0
  198. package/dist/neutral/Contexts/MapSettings/useMapSettings.d.ts.map +1 -0
  199. package/dist/neutral/Contexts/MapboxAccessToken/Context.d.cts +4 -0
  200. package/dist/neutral/Contexts/MapboxAccessToken/Context.d.cts.map +1 -0
  201. package/dist/neutral/Contexts/MapboxAccessToken/Context.d.mts +4 -0
  202. package/dist/neutral/Contexts/MapboxAccessToken/Context.d.mts.map +1 -0
  203. package/dist/neutral/Contexts/MapboxAccessToken/Context.d.ts +4 -0
  204. package/dist/neutral/Contexts/MapboxAccessToken/Context.d.ts.map +1 -0
  205. package/dist/neutral/Contexts/MapboxAccessToken/Provider.d.cts +7 -0
  206. package/dist/neutral/Contexts/MapboxAccessToken/Provider.d.cts.map +1 -0
  207. package/dist/neutral/Contexts/MapboxAccessToken/Provider.d.mts +7 -0
  208. package/dist/neutral/Contexts/MapboxAccessToken/Provider.d.mts.map +1 -0
  209. package/dist/neutral/Contexts/MapboxAccessToken/Provider.d.ts +7 -0
  210. package/dist/neutral/Contexts/MapboxAccessToken/Provider.d.ts.map +1 -0
  211. package/dist/neutral/Contexts/MapboxAccessToken/State.d.cts +7 -0
  212. package/dist/neutral/Contexts/MapboxAccessToken/State.d.cts.map +1 -0
  213. package/dist/neutral/Contexts/MapboxAccessToken/State.d.mts +7 -0
  214. package/dist/neutral/Contexts/MapboxAccessToken/State.d.mts.map +1 -0
  215. package/dist/neutral/Contexts/MapboxAccessToken/State.d.ts +7 -0
  216. package/dist/neutral/Contexts/MapboxAccessToken/State.d.ts.map +1 -0
  217. package/dist/neutral/Contexts/MapboxAccessToken/index.d.cts +5 -0
  218. package/dist/neutral/Contexts/MapboxAccessToken/index.d.cts.map +1 -0
  219. package/dist/neutral/Contexts/MapboxAccessToken/index.d.mts +5 -0
  220. package/dist/neutral/Contexts/MapboxAccessToken/index.d.mts.map +1 -0
  221. package/dist/neutral/Contexts/MapboxAccessToken/index.d.ts +5 -0
  222. package/dist/neutral/Contexts/MapboxAccessToken/index.d.ts.map +1 -0
  223. package/dist/neutral/Contexts/MapboxAccessToken/use.d.cts +2 -0
  224. package/dist/neutral/Contexts/MapboxAccessToken/use.d.cts.map +1 -0
  225. package/dist/neutral/Contexts/MapboxAccessToken/use.d.mts +2 -0
  226. package/dist/neutral/Contexts/MapboxAccessToken/use.d.mts.map +1 -0
  227. package/dist/neutral/Contexts/MapboxAccessToken/use.d.ts +2 -0
  228. package/dist/neutral/Contexts/MapboxAccessToken/use.d.ts.map +1 -0
  229. package/dist/neutral/Contexts/index.d.cts +5 -0
  230. package/dist/neutral/Contexts/index.d.cts.map +1 -0
  231. package/dist/neutral/Contexts/index.d.mts +5 -0
  232. package/dist/neutral/Contexts/index.d.mts.map +1 -0
  233. package/dist/neutral/Contexts/index.d.ts +5 -0
  234. package/dist/neutral/Contexts/index.d.ts.map +1 -0
  235. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilder.d.cts +13 -0
  236. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilder.d.cts.map +1 -0
  237. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilder.d.mts +13 -0
  238. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilder.d.mts.map +1 -0
  239. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilder.d.ts +13 -0
  240. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilder.d.ts.map +1 -0
  241. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilderAnimated.d.cts +3 -0
  242. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilderAnimated.d.cts.map +1 -0
  243. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilderAnimated.d.mts +3 -0
  244. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilderAnimated.d.mts.map +1 -0
  245. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilderAnimated.d.ts +3 -0
  246. package/dist/neutral/Layers/Builders/LocationHeatMapLayerBuilderAnimated.d.ts.map +1 -0
  247. package/dist/neutral/Layers/Builders/LocationPointsMapLayerBuilder.d.cts +7 -0
  248. package/dist/neutral/Layers/Builders/LocationPointsMapLayerBuilder.d.cts.map +1 -0
  249. package/dist/neutral/Layers/Builders/LocationPointsMapLayerBuilder.d.mts +7 -0
  250. package/dist/neutral/Layers/Builders/LocationPointsMapLayerBuilder.d.mts.map +1 -0
  251. package/dist/neutral/Layers/Builders/LocationPointsMapLayerBuilder.d.ts +7 -0
  252. package/dist/neutral/Layers/Builders/LocationPointsMapLayerBuilder.d.ts.map +1 -0
  253. package/dist/neutral/Layers/Builders/index.d.cts +4 -0
  254. package/dist/neutral/Layers/Builders/index.d.cts.map +1 -0
  255. package/dist/neutral/Layers/Builders/index.d.mts +4 -0
  256. package/dist/neutral/Layers/Builders/index.d.mts.map +1 -0
  257. package/dist/neutral/Layers/Builders/index.d.ts +4 -0
  258. package/dist/neutral/Layers/Builders/index.d.ts.map +1 -0
  259. package/dist/neutral/Layers/CircleLayer.d.cts +9 -0
  260. package/dist/neutral/Layers/CircleLayer.d.cts.map +1 -0
  261. package/dist/neutral/Layers/CircleLayer.d.mts +9 -0
  262. package/dist/neutral/Layers/CircleLayer.d.mts.map +1 -0
  263. package/dist/neutral/Layers/CircleLayer.d.ts +9 -0
  264. package/dist/neutral/Layers/CircleLayer.d.ts.map +1 -0
  265. package/dist/neutral/Layers/Configs/HeatMapFillLayerConfig.d.cts +3 -0
  266. package/dist/neutral/Layers/Configs/HeatMapFillLayerConfig.d.cts.map +1 -0
  267. package/dist/neutral/Layers/Configs/HeatMapFillLayerConfig.d.mts +3 -0
  268. package/dist/neutral/Layers/Configs/HeatMapFillLayerConfig.d.mts.map +1 -0
  269. package/dist/neutral/Layers/Configs/HeatMapFillLayerConfig.d.ts +3 -0
  270. package/dist/neutral/Layers/Configs/HeatMapFillLayerConfig.d.ts.map +1 -0
  271. package/dist/neutral/Layers/Configs/HeatMapLineLayerConfig.d.cts +3 -0
  272. package/dist/neutral/Layers/Configs/HeatMapLineLayerConfig.d.cts.map +1 -0
  273. package/dist/neutral/Layers/Configs/HeatMapLineLayerConfig.d.mts +3 -0
  274. package/dist/neutral/Layers/Configs/HeatMapLineLayerConfig.d.mts.map +1 -0
  275. package/dist/neutral/Layers/Configs/HeatMapLineLayerConfig.d.ts +3 -0
  276. package/dist/neutral/Layers/Configs/HeatMapLineLayerConfig.d.ts.map +1 -0
  277. package/dist/neutral/Layers/Configs/HeatMapSymbolLayerConfig.d.cts +3 -0
  278. package/dist/neutral/Layers/Configs/HeatMapSymbolLayerConfig.d.cts.map +1 -0
  279. package/dist/neutral/Layers/Configs/HeatMapSymbolLayerConfig.d.mts +3 -0
  280. package/dist/neutral/Layers/Configs/HeatMapSymbolLayerConfig.d.mts.map +1 -0
  281. package/dist/neutral/Layers/Configs/HeatMapSymbolLayerConfig.d.ts +3 -0
  282. package/dist/neutral/Layers/Configs/HeatMapSymbolLayerConfig.d.ts.map +1 -0
  283. package/dist/neutral/Layers/Configs/LocationPointLayerConfig.d.cts +3 -0
  284. package/dist/neutral/Layers/Configs/LocationPointLayerConfig.d.cts.map +1 -0
  285. package/dist/neutral/Layers/Configs/LocationPointLayerConfig.d.mts +3 -0
  286. package/dist/neutral/Layers/Configs/LocationPointLayerConfig.d.mts.map +1 -0
  287. package/dist/neutral/Layers/Configs/LocationPointLayerConfig.d.ts +3 -0
  288. package/dist/neutral/Layers/Configs/LocationPointLayerConfig.d.ts.map +1 -0
  289. package/dist/neutral/Layers/Configs/index.d.cts +5 -0
  290. package/dist/neutral/Layers/Configs/index.d.cts.map +1 -0
  291. package/dist/neutral/Layers/Configs/index.d.mts +5 -0
  292. package/dist/neutral/Layers/Configs/index.d.mts.map +1 -0
  293. package/dist/neutral/Layers/Configs/index.d.ts +5 -0
  294. package/dist/neutral/Layers/Configs/index.d.ts.map +1 -0
  295. package/dist/neutral/Layers/FillLayer.d.cts +9 -0
  296. package/dist/neutral/Layers/FillLayer.d.cts.map +1 -0
  297. package/dist/neutral/Layers/FillLayer.d.mts +9 -0
  298. package/dist/neutral/Layers/FillLayer.d.mts.map +1 -0
  299. package/dist/neutral/Layers/FillLayer.d.ts +9 -0
  300. package/dist/neutral/Layers/FillLayer.d.ts.map +1 -0
  301. package/dist/neutral/Layers/LineLayer.d.cts +9 -0
  302. package/dist/neutral/Layers/LineLayer.d.cts.map +1 -0
  303. package/dist/neutral/Layers/LineLayer.d.mts +9 -0
  304. package/dist/neutral/Layers/LineLayer.d.mts.map +1 -0
  305. package/dist/neutral/Layers/LineLayer.d.ts +9 -0
  306. package/dist/neutral/Layers/LineLayer.d.ts.map +1 -0
  307. package/dist/neutral/Layers/MapLayer.d.cts +6 -0
  308. package/dist/neutral/Layers/MapLayer.d.cts.map +1 -0
  309. package/dist/neutral/Layers/MapLayer.d.mts +6 -0
  310. package/dist/neutral/Layers/MapLayer.d.mts.map +1 -0
  311. package/dist/neutral/Layers/MapLayer.d.ts +6 -0
  312. package/dist/neutral/Layers/MapLayer.d.ts.map +1 -0
  313. package/dist/neutral/Layers/SymbolLayer.d.cts +9 -0
  314. package/dist/neutral/Layers/SymbolLayer.d.cts.map +1 -0
  315. package/dist/neutral/Layers/SymbolLayer.d.mts +9 -0
  316. package/dist/neutral/Layers/SymbolLayer.d.mts.map +1 -0
  317. package/dist/neutral/Layers/SymbolLayer.d.ts +9 -0
  318. package/dist/neutral/Layers/SymbolLayer.d.ts.map +1 -0
  319. package/dist/neutral/Layers/index.d.cts +8 -0
  320. package/dist/neutral/Layers/index.d.cts.map +1 -0
  321. package/dist/neutral/Layers/index.d.mts +8 -0
  322. package/dist/neutral/Layers/index.d.mts.map +1 -0
  323. package/dist/neutral/Layers/index.d.ts +8 -0
  324. package/dist/neutral/Layers/index.d.ts.map +1 -0
  325. package/dist/neutral/MapBoxClasses/MapBase.d.cts +16 -0
  326. package/dist/neutral/MapBoxClasses/MapBase.d.cts.map +1 -0
  327. package/dist/neutral/MapBoxClasses/MapBase.d.mts +16 -0
  328. package/dist/neutral/MapBoxClasses/MapBase.d.mts.map +1 -0
  329. package/dist/neutral/MapBoxClasses/MapBase.d.ts +16 -0
  330. package/dist/neutral/MapBoxClasses/MapBase.d.ts.map +1 -0
  331. package/dist/neutral/MapBoxClasses/MapHeat.d.cts +14 -0
  332. package/dist/neutral/MapBoxClasses/MapHeat.d.cts.map +1 -0
  333. package/dist/neutral/MapBoxClasses/MapHeat.d.mts +14 -0
  334. package/dist/neutral/MapBoxClasses/MapHeat.d.mts.map +1 -0
  335. package/dist/neutral/MapBoxClasses/MapHeat.d.ts +14 -0
  336. package/dist/neutral/MapBoxClasses/MapHeat.d.ts.map +1 -0
  337. package/dist/neutral/MapBoxClasses/MapPoints.d.cts +12 -0
  338. package/dist/neutral/MapBoxClasses/MapPoints.d.cts.map +1 -0
  339. package/dist/neutral/MapBoxClasses/MapPoints.d.mts +12 -0
  340. package/dist/neutral/MapBoxClasses/MapPoints.d.mts.map +1 -0
  341. package/dist/neutral/MapBoxClasses/MapPoints.d.ts +12 -0
  342. package/dist/neutral/MapBoxClasses/MapPoints.d.ts.map +1 -0
  343. package/dist/neutral/MapBoxClasses/MapSettings.d.cts +30 -0
  344. package/dist/neutral/MapBoxClasses/MapSettings.d.cts.map +1 -0
  345. package/dist/neutral/MapBoxClasses/MapSettings.d.mts +30 -0
  346. package/dist/neutral/MapBoxClasses/MapSettings.d.mts.map +1 -0
  347. package/dist/neutral/MapBoxClasses/MapSettings.d.ts +30 -0
  348. package/dist/neutral/MapBoxClasses/MapSettings.d.ts.map +1 -0
  349. package/dist/neutral/MapBoxClasses/index.d.cts +5 -0
  350. package/dist/neutral/MapBoxClasses/index.d.cts.map +1 -0
  351. package/dist/neutral/MapBoxClasses/index.d.mts +5 -0
  352. package/dist/neutral/MapBoxClasses/index.d.mts.map +1 -0
  353. package/dist/neutral/MapBoxClasses/index.d.ts +5 -0
  354. package/dist/neutral/MapBoxClasses/index.d.ts.map +1 -0
  355. package/dist/neutral/Settings/DefaultMapSettings.d.cts +3 -0
  356. package/dist/neutral/Settings/DefaultMapSettings.d.cts.map +1 -0
  357. package/dist/neutral/Settings/DefaultMapSettings.d.mts +3 -0
  358. package/dist/neutral/Settings/DefaultMapSettings.d.mts.map +1 -0
  359. package/dist/neutral/Settings/DefaultMapSettings.d.ts +3 -0
  360. package/dist/neutral/Settings/DefaultMapSettings.d.ts.map +1 -0
  361. package/dist/neutral/Settings/MapSetting.d.cts +16 -0
  362. package/dist/neutral/Settings/MapSetting.d.cts.map +1 -0
  363. package/dist/neutral/Settings/MapSetting.d.mts +16 -0
  364. package/dist/neutral/Settings/MapSetting.d.mts.map +1 -0
  365. package/dist/neutral/Settings/MapSetting.d.ts +16 -0
  366. package/dist/neutral/Settings/MapSetting.d.ts.map +1 -0
  367. package/dist/neutral/Settings/index.d.cts +3 -0
  368. package/dist/neutral/Settings/index.d.cts.map +1 -0
  369. package/dist/neutral/Settings/index.d.mts +3 -0
  370. package/dist/neutral/Settings/index.d.mts.map +1 -0
  371. package/dist/neutral/Settings/index.d.ts +3 -0
  372. package/dist/neutral/Settings/index.d.ts.map +1 -0
  373. package/dist/neutral/hooks/index.d.cts +6 -0
  374. package/dist/neutral/hooks/index.d.cts.map +1 -0
  375. package/dist/neutral/hooks/index.d.mts +6 -0
  376. package/dist/neutral/hooks/index.d.mts.map +1 -0
  377. package/dist/neutral/hooks/index.d.ts +6 -0
  378. package/dist/neutral/hooks/index.d.ts.map +1 -0
  379. package/dist/neutral/hooks/useDynamicMapResize.d.cts +7 -0
  380. package/dist/neutral/hooks/useDynamicMapResize.d.cts.map +1 -0
  381. package/dist/neutral/hooks/useDynamicMapResize.d.mts +7 -0
  382. package/dist/neutral/hooks/useDynamicMapResize.d.mts.map +1 -0
  383. package/dist/neutral/hooks/useDynamicMapResize.d.ts +7 -0
  384. package/dist/neutral/hooks/useDynamicMapResize.d.ts.map +1 -0
  385. package/dist/neutral/hooks/useDynamicPositioning.d.cts +6 -0
  386. package/dist/neutral/hooks/useDynamicPositioning.d.cts.map +1 -0
  387. package/dist/neutral/hooks/useDynamicPositioning.d.mts +6 -0
  388. package/dist/neutral/hooks/useDynamicPositioning.d.mts.map +1 -0
  389. package/dist/neutral/hooks/useDynamicPositioning.d.ts +6 -0
  390. package/dist/neutral/hooks/useDynamicPositioning.d.ts.map +1 -0
  391. package/dist/neutral/hooks/useFindHashes.d.cts +2 -0
  392. package/dist/neutral/hooks/useFindHashes.d.cts.map +1 -0
  393. package/dist/neutral/hooks/useFindHashes.d.mts +2 -0
  394. package/dist/neutral/hooks/useFindHashes.d.mts.map +1 -0
  395. package/dist/neutral/hooks/useFindHashes.d.ts +2 -0
  396. package/dist/neutral/hooks/useFindHashes.d.ts.map +1 -0
  397. package/dist/neutral/hooks/useHeatMapColors.d.cts +7 -0
  398. package/dist/neutral/hooks/useHeatMapColors.d.cts.map +1 -0
  399. package/dist/neutral/hooks/useHeatMapColors.d.mts +7 -0
  400. package/dist/neutral/hooks/useHeatMapColors.d.mts.map +1 -0
  401. package/dist/neutral/hooks/useHeatMapColors.d.ts +7 -0
  402. package/dist/neutral/hooks/useHeatMapColors.d.ts.map +1 -0
  403. package/dist/neutral/hooks/useQuadKeyPayloadsToFeatures.d.cts +9 -0
  404. package/dist/neutral/hooks/useQuadKeyPayloadsToFeatures.d.cts.map +1 -0
  405. package/dist/neutral/hooks/useQuadKeyPayloadsToFeatures.d.mts +9 -0
  406. package/dist/neutral/hooks/useQuadKeyPayloadsToFeatures.d.mts.map +1 -0
  407. package/dist/neutral/hooks/useQuadKeyPayloadsToFeatures.d.ts +9 -0
  408. package/dist/neutral/hooks/useQuadKeyPayloadsToFeatures.d.ts.map +1 -0
  409. package/dist/neutral/index.cjs +1333 -0
  410. package/dist/neutral/index.cjs.map +1 -0
  411. package/dist/neutral/index.d.cts +11 -0
  412. package/dist/neutral/index.d.cts.map +1 -0
  413. package/dist/neutral/index.d.mts +11 -0
  414. package/dist/neutral/index.d.mts.map +1 -0
  415. package/dist/neutral/index.d.ts +11 -0
  416. package/dist/neutral/index.d.ts.map +1 -0
  417. package/dist/neutral/index.js +1310 -0
  418. package/dist/neutral/index.js.map +1 -0
  419. package/dist/neutral/lib/MapBoxBaseProps.d.cts +19 -0
  420. package/dist/neutral/lib/MapBoxBaseProps.d.cts.map +1 -0
  421. package/dist/neutral/lib/MapBoxBaseProps.d.mts +19 -0
  422. package/dist/neutral/lib/MapBoxBaseProps.d.mts.map +1 -0
  423. package/dist/neutral/lib/MapBoxBaseProps.d.ts +19 -0
  424. package/dist/neutral/lib/MapBoxBaseProps.d.ts.map +1 -0
  425. package/dist/neutral/lib/MapStyle.d.cts +9 -0
  426. package/dist/neutral/lib/MapStyle.d.cts.map +1 -0
  427. package/dist/neutral/lib/MapStyle.d.mts +9 -0
  428. package/dist/neutral/lib/MapStyle.d.mts.map +1 -0
  429. package/dist/neutral/lib/MapStyle.d.ts +9 -0
  430. package/dist/neutral/lib/MapStyle.d.ts.map +1 -0
  431. package/dist/neutral/lib/index.d.cts +3 -0
  432. package/dist/neutral/lib/index.d.cts.map +1 -0
  433. package/dist/neutral/lib/index.d.mts +3 -0
  434. package/dist/neutral/lib/index.d.mts.map +1 -0
  435. package/dist/neutral/lib/index.d.ts +3 -0
  436. package/dist/neutral/lib/index.d.ts.map +1 -0
  437. package/dist/neutral/types/NetworkLocationAnswerBase.d.cts +37 -0
  438. package/dist/neutral/types/NetworkLocationAnswerBase.d.cts.map +1 -0
  439. package/dist/neutral/types/NetworkLocationAnswerBase.d.mts +37 -0
  440. package/dist/neutral/types/NetworkLocationAnswerBase.d.mts.map +1 -0
  441. package/dist/neutral/types/NetworkLocationAnswerBase.d.ts +37 -0
  442. package/dist/neutral/types/NetworkLocationAnswerBase.d.ts.map +1 -0
  443. package/dist/neutral/types/index.d.cts +2 -0
  444. package/dist/neutral/types/index.d.cts.map +1 -0
  445. package/dist/neutral/types/index.d.mts +2 -0
  446. package/dist/neutral/types/index.d.mts.map +1 -0
  447. package/dist/neutral/types/index.d.ts +2 -0
  448. package/dist/neutral/types/index.d.ts.map +1 -0
  449. package/package.json +16 -16
@@ -0,0 +1,1310 @@
1
+ // src/Settings/DefaultMapSettings.ts
2
+ var DefaultMapSettings = () => ({
3
+ debugLayer: {
4
+ devMode: true,
5
+ field: "debugLayer",
6
+ hidden: true,
7
+ label: "Debug Layer",
8
+ value: false
9
+ },
10
+ debugLogging: {
11
+ devMode: true,
12
+ field: "debugLogging",
13
+ hidden: true,
14
+ label: "Debug Logging",
15
+ value: false
16
+ },
17
+ dynamicMapResize: {
18
+ devMode: true,
19
+ field: "dynamicMapResize",
20
+ hidden: true,
21
+ label: "Auto Map Resize",
22
+ value: true
23
+ },
24
+ enableControls: {
25
+ devMode: true,
26
+ field: "enableControls",
27
+ hidden: true,
28
+ label: "Map Controls",
29
+ value: false
30
+ },
31
+ fitToPoints: {
32
+ devMode: true,
33
+ field: "fitToPoints",
34
+ hidden: true,
35
+ label: "Fit To Points",
36
+ value: false
37
+ },
38
+ preferDark: {
39
+ devMode: false,
40
+ field: "preferDark",
41
+ hidden: true,
42
+ label: "Prefer dark",
43
+ value: false
44
+ },
45
+ scrollToZoom: {
46
+ devMode: true,
47
+ field: "scrollToZoom",
48
+ hidden: true,
49
+ label: "Scroll To Zoom",
50
+ value: false
51
+ }
52
+ });
53
+
54
+ // src/AnimatedHeatMapSettings.ts
55
+ var AnimatedHeatMapSettings = DefaultMapSettings();
56
+ var { debugLayer, scrollToZoom, fitToPoints, preferDark } = AnimatedHeatMapSettings;
57
+ debugLayer.hidden = false;
58
+ scrollToZoom.value = true;
59
+ fitToPoints.value = false;
60
+ preferDark.value = true;
61
+
62
+ // src/Components/AnimatedHeatMap.tsx
63
+ import { darken, useTheme as useTheme2 } from "@mui/material";
64
+ import { FlexCol as FlexCol2 } from "@xylabs/react-flexbox";
65
+ import { useState as useState9 } from "react";
66
+
67
+ // src/Contexts/HeatMapInitializer/Provider.tsx
68
+ import { forget as forget2 } from "@xylabs/forget";
69
+ import { useEffect as useEffect6, useState as useState6 } from "react";
70
+
71
+ // src/hooks/useDynamicMapResize.tsx
72
+ import { useEffect, useMemo, useState } from "react";
73
+ var useDynamicMapResize = (mapContainerRef, mapCanvasRef, mapInstance, active = true) => {
74
+ const [dependenciesReady, setDependenciesReady] = useState(false);
75
+ const resizer = useMemo(
76
+ () => new ResizeObserver(() => {
77
+ const width = mapContainerRef.current?.getBoundingClientRect().width;
78
+ if (width && mapCanvasRef.current) {
79
+ mapCanvasRef.current.style.width = `${width}px`;
80
+ setTimeout(() => mapInstance?.resize());
81
+ }
82
+ }),
83
+ [mapCanvasRef, mapContainerRef, mapInstance]
84
+ );
85
+ useEffect(() => {
86
+ const dependenciesReady2 = !!(active && mapInstance && mapContainerRef?.current && mapCanvasRef.current);
87
+ setDependenciesReady(dependenciesReady2);
88
+ }, [active, mapCanvasRef, mapContainerRef, mapInstance]);
89
+ useEffect(() => {
90
+ if (dependenciesReady) {
91
+ if (mapContainerRef.current) {
92
+ resizer.observe(mapContainerRef.current);
93
+ }
94
+ return () => {
95
+ resizer.disconnect();
96
+ };
97
+ }
98
+ }, [active, dependenciesReady, mapCanvasRef, mapContainerRef, mapInstance, resizer]);
99
+ };
100
+
101
+ // src/hooks/useDynamicPositioning.tsx
102
+ import { useWindowSize } from "@xylabs/react-shared";
103
+ import { useEffect as useEffect2, useState as useState2 } from "react";
104
+ var defaultZoom = 1.6;
105
+ var defaultAspectRatioRange = [0.5, 2];
106
+ var latRange = [0.9121644205263664, 1.71785031559439];
107
+ var lngRange = [-81.4742014851959, 12.788958675506933];
108
+ var linearInterpolate = (aspectRatio, degreeRange, aspectRatioRange) => {
109
+ const [degreeMin, degreeMax] = degreeRange;
110
+ const [aspectRatioMin, aspectRatioMax] = aspectRatioRange || defaultAspectRatioRange;
111
+ const aspectRatioRangeSpan = aspectRatioMax - aspectRatioMin;
112
+ const degreeRangeSpan = degreeMax - degreeMin;
113
+ const percent = (aspectRatio - aspectRatioMin) / aspectRatioRangeSpan;
114
+ const scaledDegree = percent * degreeRangeSpan + degreeMin;
115
+ return scaledDegree;
116
+ };
117
+ var useDynamicPositioning = () => {
118
+ const [options, setOptions] = useState2({});
119
+ const { width, height } = useWindowSize();
120
+ useEffect2(() => {
121
+ if (width && height) {
122
+ const aspectRatio = width / height;
123
+ setOptions({
124
+ center: [linearInterpolate(aspectRatio, lngRange), linearInterpolate(aspectRatio, latRange)],
125
+ zoom: defaultZoom
126
+ });
127
+ }
128
+ }, [height, width]);
129
+ return { options };
130
+ };
131
+
132
+ // src/hooks/useFindHashes.tsx
133
+ import { useNetwork } from "@xyo-network/react-network";
134
+ import { useMemo as useMemo2 } from "react";
135
+ var animatedAnswerHashesConst = [
136
+ "79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5",
137
+ "531bfba6d8dfefd3bcc888aca54cdbbd4574ed2b3ec551b230845a1f9a608898",
138
+ "c874412b4faa4947de81372fd1ba12fdd6f43f5e408622b7f357cb2bcb3f17cb",
139
+ "29d3f8b882c61a82a1a1675782a27e797ea7196f45a23b4409680ab8b8d5f14e",
140
+ "cfd20f80ac073fd9518f4ef3f43d2a1f5e4e56e40c2677f38d6f6fecd05df60c",
141
+ "1354fa73497519a39aed19fc99bdbae78a880a1eafb2f7898d607e07db36528d",
142
+ "1043b0d25eacfc5013ae9dba780305a6fbf01a43543bd871d7c00537fca142a9",
143
+ "973dfc5df142851ced258d52d0ac2784e814000ac22e35776f772256b0d4dde9",
144
+ "463808eb74d3d87e6563970e0301a493577f8cd1b501e6e0ffa5e027ad2cea95",
145
+ "15b21acea2e3fd9d1ace3768a72636ee7bdf67a6f8e0807bfa2273dea2207555",
146
+ "32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e,"
147
+ ];
148
+ var staticAnswerHashConst = "c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5";
149
+ var useFindHashes = () => {
150
+ const { network } = useNetwork();
151
+ const exploreMapHashes = network?.nodes?.find((node) => node.type === "archivist")?.explorerMapHashes;
152
+ const animatedAnswerHashes = exploreMapHashes?.animatedAnswerHashes || animatedAnswerHashesConst;
153
+ const staticAnswerHash = exploreMapHashes?.staticAnswerHash || staticAnswerHashConst;
154
+ const foundHashes = useMemo2(() => [staticAnswerHash, ...animatedAnswerHashes], [animatedAnswerHashes, staticAnswerHash]);
155
+ return foundHashes;
156
+ };
157
+
158
+ // src/hooks/useHeatMapColors.tsx
159
+ import { useTheme } from "@mui/material";
160
+ var useHeatMapColors = () => {
161
+ const theme = useTheme();
162
+ const staticMapColor = "#FFFF75";
163
+ const highUsageColor = "#FF0000";
164
+ const heatMapColorProps = {
165
+ highUsageColor,
166
+ lowUsageColor: "#FFB3B3",
167
+ staticMapColor
168
+ };
169
+ const legendProps = {
170
+ endColor: highUsageColor,
171
+ endLabel: "High",
172
+ heading: "Network Usage",
173
+ startColor: staticMapColor,
174
+ startLabel: "Low",
175
+ textColor: theme.palette.common.white
176
+ };
177
+ return { heatMapColorProps, legendProps };
178
+ };
179
+
180
+ // src/hooks/useQuadKeyPayloadsToFeatures.tsx
181
+ import { compact } from "@xylabs/lodash";
182
+ import { GeoJson } from "@xyo-network/sdk-geo";
183
+ import { useEffect as useEffect3, useState as useState3 } from "react";
184
+ var quadKeyToFeature = ({ density, quadkey }) => {
185
+ const polygonFeature = new GeoJson(quadkey).polygonFeature();
186
+ polygonFeature.properties = {
187
+ count: density,
188
+ density
189
+ };
190
+ return polygonFeature;
191
+ };
192
+ var setDensity = (feature) => {
193
+ if (feature.properties) {
194
+ feature.properties.value = feature.properties.density / 5;
195
+ }
196
+ return feature;
197
+ };
198
+ var useQuadKeyPayloadsToFeatures = (payloads) => {
199
+ const [multipleFeatureSets, setMultipleFeatureSets] = useState3([[]]);
200
+ const [features, setFeatures] = useState3([]);
201
+ const [error, setError] = useState3();
202
+ useEffect3(() => {
203
+ if (Array.isArray(payloads)) {
204
+ if (compact(payloads).length > 0) {
205
+ const mappedFeatures = payloads?.map((payload) => payload?.result.map(quadKeyToFeature));
206
+ setMultipleFeatureSets(mappedFeatures.map((features2) => features2?.map(setDensity) ?? []));
207
+ } else {
208
+ setError(new Error("Cannot find payloads for provided hashes"));
209
+ }
210
+ }
211
+ if (payloads && payloads.result) {
212
+ const singlePayload = payloads;
213
+ const mappedFeatures = singlePayload.result.map(quadKeyToFeature);
214
+ setFeatures(mappedFeatures.map(setDensity));
215
+ }
216
+ }, [payloads]);
217
+ return { error, features, multipleFeatureSets };
218
+ };
219
+
220
+ // src/MapBoxClasses/MapBase.ts
221
+ import { assertEx } from "@xylabs/assert";
222
+ import { GeoJson as GeoJson2 } from "@xyo-network/sdk-geo";
223
+ var MapBase = class {
224
+ _config;
225
+ constructor(config) {
226
+ this._config = { requestLocation: true, zoom: 2, ...config };
227
+ }
228
+ get isMapReady() {
229
+ return !!this._config.map;
230
+ }
231
+ initializeMapSource(layer) {
232
+ const getSource = () => {
233
+ const featuresCollection = GeoJson2.featureCollection(this._config.features);
234
+ return GeoJson2.featuresSource(featuresCollection);
235
+ };
236
+ const existingSource = this._config.map.getSource(layer.source);
237
+ const source = getSource();
238
+ if (existingSource) {
239
+ existingSource.setData(assertEx(source.data));
240
+ } else {
241
+ this._config.map.addSource(layer.source, source);
242
+ }
243
+ layer.update(this._config.map, true);
244
+ return this;
245
+ }
246
+ };
247
+
248
+ // src/MapBoxClasses/MapHeat.ts
249
+ import { assertEx as assertEx2 } from "@xylabs/assert";
250
+ import { delay } from "@xylabs/delay";
251
+ import { forget } from "@xylabs/forget";
252
+ import { GeoJson as GeoJson3 } from "@xyo-network/sdk-geo";
253
+ import { LngLatBounds } from "mapbox-gl";
254
+ var MapHeat = class extends MapBase {
255
+ static animationStarted = false;
256
+ config;
257
+ constructor(config) {
258
+ super(config);
259
+ this.config = config;
260
+ }
261
+ static initialMapPositioning(options, map, features, initialBounds) {
262
+ if (!features) {
263
+ return;
264
+ }
265
+ let bounds;
266
+ if (initialBounds) {
267
+ bounds = initialBounds;
268
+ } else {
269
+ bounds = new LngLatBounds();
270
+ features.forEach((feature) => {
271
+ for (const coordinates of feature.geometry.coordinates) {
272
+ for (const position of coordinates) {
273
+ bounds.extend(position);
274
+ }
275
+ }
276
+ });
277
+ }
278
+ map.setCenter(bounds.getCenter());
279
+ map.fitBounds(bounds, options);
280
+ return this;
281
+ }
282
+ static async initializeAnimatedHeatMapSource(layers, featureSet, map, startColor, endColor) {
283
+ this.animationStarted = true;
284
+ let layerTick = 0;
285
+ let sourceTick = 0;
286
+ const sources = featureSet.map((feature) => {
287
+ const featuresCollection = GeoJson3.featureCollection(feature);
288
+ return GeoJson3.featuresSource(featuresCollection);
289
+ });
290
+ this.updateLayer(map, layers[0], sources[0]);
291
+ this.updateLayer(map, layers[1], sources[1]);
292
+ for (const layer of layers) {
293
+ map.setPaintProperty(layer.id, "fill-opacity", 0);
294
+ }
295
+ const frameLength = 3e3;
296
+ const initialPad = 0.5;
297
+ const factor = 10;
298
+ const steps = 30;
299
+ const stepLength = frameLength / steps;
300
+ const lowUsageColor = startColor ?? "#FFB3B3";
301
+ const highUsageColor = endColor ?? "#FF0000";
302
+ const dynamicFillColor = (factor2, initialPad2, i) => {
303
+ const sinFade = Math.sin(i / steps * Math.PI / 2);
304
+ const cosFade = Math.cos(i / steps * Math.PI / 2);
305
+ const divisor = factor2 + factor2 * sinFade;
306
+ const offset = initialPad2 * cosFade;
307
+ return [
308
+ "let",
309
+ "density",
310
+ ["+", ["/", ["number", ["get", "value"]], divisor], offset],
311
+ ["interpolate", ["linear"], ["var", "density"], 0, lowUsageColor, 0.5, highUsageColor]
312
+ ];
313
+ };
314
+ const fadedIn = layers.map((_) => false);
315
+ const fadeIn = async (id, index) => {
316
+ for (let i = steps; i >= 1; i--) {
317
+ map.setPaintProperty(id, "fill-color", dynamicFillColor(factor, initialPad, i * (180 / stepLength)));
318
+ await delay(stepLength);
319
+ }
320
+ fadedIn[index] = true;
321
+ };
322
+ const fadeOut = async (id, index) => {
323
+ for (let i = 1; i <= steps; i++) {
324
+ map.setPaintProperty(id, "fill-color", dynamicFillColor(factor, initialPad, i * (180 / stepLength)));
325
+ await delay(stepLength);
326
+ }
327
+ fadedIn[index] = false;
328
+ };
329
+ let started = false;
330
+ const startAnimation = async () => {
331
+ assertEx2(!started, () => "Animation Already Started");
332
+ started = true;
333
+ while (this.animationStarted) {
334
+ const upLayer = layerTick % layers.length;
335
+ const downLayer = (layerTick + 1) % layers.length;
336
+ const incomingSource = sourceTick % featureSet.length;
337
+ const outgoingSource = (sourceTick + 1) % featureSet.length;
338
+ if (fadedIn[upLayer]) {
339
+ this.updateLayer(map, layers[upLayer], sources[incomingSource]);
340
+ forget(fadeOut(layers[upLayer].id, upLayer));
341
+ }
342
+ if (!fadedIn[downLayer]) {
343
+ this.updateLayer(map, layers[downLayer], sources[outgoingSource]);
344
+ forget(fadeIn(layers[downLayer].id, downLayer));
345
+ }
346
+ while ((fadedIn[upLayer] || !fadedIn[downLayer]) && this.animationStarted) {
347
+ await delay(1e3);
348
+ }
349
+ layerTick++;
350
+ sourceTick++;
351
+ }
352
+ };
353
+ await startAnimation();
354
+ }
355
+ static updateLayer(map, layer, source) {
356
+ const existingSource = map.getSource(layer.source);
357
+ if (existingSource && source.data) {
358
+ existingSource.setData(source.data);
359
+ } else if (source) {
360
+ map.addSource(layer.source, source);
361
+ }
362
+ layer.update(map, true);
363
+ }
364
+ // Build layers each with the same features
365
+ initializeHeatMapSource(layers) {
366
+ const getSource = (_) => {
367
+ const featuresCollection = GeoJson3.featureCollection(this.config.features);
368
+ return GeoJson3.featuresSource(featuresCollection);
369
+ };
370
+ for (const [index, layer] of layers.entries()) {
371
+ const existingSource = this.config.map.getSource(layer.source);
372
+ const source = getSource(index);
373
+ if (existingSource) {
374
+ existingSource.setData(assertEx2(source.data));
375
+ } else {
376
+ this.config.map.addSource(layer.source, source);
377
+ }
378
+ layer.update(this.config.map, true);
379
+ }
380
+ return this;
381
+ }
382
+ };
383
+
384
+ // src/MapBoxClasses/MapPoints.ts
385
+ import { LngLatBounds as LngLatBounds2 } from "mapbox-gl";
386
+ var MapPoints = class extends MapBase {
387
+ config;
388
+ constructor(config) {
389
+ super(config);
390
+ this.config = config;
391
+ }
392
+ initialMapPositioning(options, initialBounds) {
393
+ let bounds;
394
+ if (initialBounds) {
395
+ bounds = initialBounds;
396
+ } else {
397
+ bounds = new LngLatBounds2();
398
+ this.config.features.forEach((feature) => {
399
+ bounds.extend(feature.geometry.coordinates);
400
+ });
401
+ }
402
+ this.config.map.setCenter(bounds.getCenter());
403
+ this.config.map.fitBounds(bounds, options);
404
+ return this.config.map;
405
+ }
406
+ };
407
+
408
+ // src/MapBoxClasses/MapSettings.ts
409
+ import { GeolocateControl, NavigationControl } from "mapbox-gl";
410
+ var MapSettings = class _MapSettings {
411
+ static geoLocateControl;
412
+ static mapListeners = {
413
+ logData: (ev, map) => {
414
+ const target = map || ev?.target;
415
+ if (target) {
416
+ console.log("zoom", target.getZoom());
417
+ console.log("center", target.getCenter());
418
+ }
419
+ }
420
+ };
421
+ static navControl;
422
+ static requestLocation;
423
+ static toggleControls(value, map, zoom, requestLocation) {
424
+ if (value) {
425
+ _MapSettings.addControls(map, zoom, requestLocation);
426
+ } else {
427
+ _MapSettings.removeControls(map);
428
+ }
429
+ return this;
430
+ }
431
+ static toggleDebugLayer(value, map, layerName) {
432
+ const debugLayer3 = map.getLayer(layerName);
433
+ if (debugLayer3) {
434
+ if (value) {
435
+ map.setLayoutProperty(layerName, "visibility", "visible");
436
+ } else {
437
+ map.setLayoutProperty(layerName, "visibility", "none");
438
+ }
439
+ }
440
+ return this;
441
+ }
442
+ static toggleDebugLogging(value, map) {
443
+ const debugEvents = ["resize", "zoomend", "dragend"];
444
+ if (value) {
445
+ this.mapListeners.logData(void 0, map);
446
+ for (const event of debugEvents)
447
+ map.on(event, this.mapListeners.logData);
448
+ } else {
449
+ for (const event of debugEvents)
450
+ map.off(event, this.mapListeners.logData);
451
+ }
452
+ }
453
+ static toggleScrollToZoom(value, map) {
454
+ if (value) {
455
+ map.scrollZoom.enable();
456
+ } else {
457
+ map.scrollZoom.disable();
458
+ }
459
+ return this;
460
+ }
461
+ static updateSettings(config) {
462
+ const { settings, map, zoom, requestLocation, debugLayerName = "" } = config;
463
+ const { scrollToZoom: scrollToZoom3, enableControls, debugLayer: debugLayer3, debugLogging } = settings;
464
+ _MapSettings.toggleControls(enableControls?.value, map, zoom, requestLocation).toggleScrollToZoom(scrollToZoom3?.value, map).toggleDebugLayer(debugLayer3?.value, map, debugLayerName).toggleDebugLogging(debugLogging.value, map);
465
+ }
466
+ // Needs to be static so we ensure controls are only instantiated once
467
+ static addControls(map, zoom, requestLocation) {
468
+ const geolocateControl = new GeolocateControl({
469
+ fitBoundsOptions: {
470
+ zoom: zoom || 2
471
+ },
472
+ positionOptions: {
473
+ enableHighAccuracy: true
474
+ },
475
+ trackUserLocation: true
476
+ });
477
+ const navControl = new NavigationControl({
478
+ showCompass: false
479
+ });
480
+ this.geoLocateControl = this.geoLocateControl || geolocateControl;
481
+ this.navControl = this.navControl || navControl;
482
+ if (!map.hasControl(this.geoLocateControl) && requestLocation) {
483
+ map.addControl(this.geoLocateControl);
484
+ }
485
+ if (!map.hasControl(this.navControl)) {
486
+ map.addControl(this.navControl, "top-left");
487
+ }
488
+ return this;
489
+ }
490
+ static removeControls(map) {
491
+ if (this.geoLocateControl && map.hasControl(this.geoLocateControl) && this.requestLocation) {
492
+ map.removeControl(this.geoLocateControl);
493
+ }
494
+ if (this.navControl && map.hasControl(this.navControl)) {
495
+ map.removeControl(this.navControl);
496
+ }
497
+ return this;
498
+ }
499
+ };
500
+
501
+ // src/Contexts/MapBoxInstance/Provider.tsx
502
+ import { useEffect as useEffect4, useState as useState4 } from "react";
503
+
504
+ // src/Contexts/MapBoxInstance/Context.ts
505
+ import { createContext } from "react";
506
+ var MapBoxInstanceContext = createContext({});
507
+
508
+ // src/Contexts/MapBoxInstance/Provider.tsx
509
+ import { jsx } from "react/jsx-runtime";
510
+ var MapBoxInstanceProvider = ({ children }) => {
511
+ const [map, setMapBoxInstance] = useState4();
512
+ const [mapInitialized, setMapInitialized] = useState4(false);
513
+ const value = { map, mapInitialized, setMapBoxInstance };
514
+ useEffect4(() => {
515
+ if (!mapInitialized && map) {
516
+ map?.on("load", () => {
517
+ setMapInitialized(true);
518
+ });
519
+ }
520
+ }, [map, mapInitialized, setMapInitialized]);
521
+ return /* @__PURE__ */ jsx(MapBoxInstanceContext.Provider, { value, children });
522
+ };
523
+
524
+ // src/Contexts/MapBoxInstance/useMapBoxInstance.tsx
525
+ import { assertEx as assertEx3 } from "@xylabs/assert";
526
+ import { useContext } from "react";
527
+ var useMapBoxInstance = () => {
528
+ const context = useContext(MapBoxInstanceContext);
529
+ assertEx3("map" in context, () => "useMapBoxInstance must be used within a MapBoxInstanceContext");
530
+ return context;
531
+ };
532
+
533
+ // src/Contexts/MapSettings/Provider.tsx
534
+ import { useEffect as useEffect5, useState as useState5 } from "react";
535
+
536
+ // src/Contexts/MapSettings/Context.ts
537
+ import { createContext as createContext2 } from "react";
538
+ var MapSettingsContext = createContext2({});
539
+
540
+ // src/Contexts/MapSettings/Provider.tsx
541
+ import { jsx as jsx2 } from "react/jsx-runtime";
542
+ var MapSettingsProvider = ({
543
+ children,
544
+ debugLayerName,
545
+ defaultMapSettings,
546
+ requestLocation,
547
+ zoom = 1
548
+ }) => {
549
+ const [mapSettings, setMapSettings] = useState5(defaultMapSettings || {});
550
+ const { map, mapInitialized } = useMapBoxInstance();
551
+ const value = {
552
+ mapSettings,
553
+ setMapSettings
554
+ };
555
+ useEffect5(() => {
556
+ if (mapSettings && map && mapInitialized) {
557
+ MapSettings.updateSettings({ debugLayerName, map, requestLocation, settings: mapSettings, zoom });
558
+ }
559
+ }, [debugLayerName, map, mapInitialized, mapSettings, requestLocation, zoom]);
560
+ return /* @__PURE__ */ jsx2(MapSettingsContext.Provider, { value, children });
561
+ };
562
+
563
+ // src/Contexts/MapSettings/useMapSettings.tsx
564
+ import { useContext as useContext2 } from "react";
565
+ var useMapSettings = () => {
566
+ const context = useContext2(MapSettingsContext);
567
+ return context;
568
+ };
569
+
570
+ // src/Contexts/HeatMapInitializer/Context.ts
571
+ import { createContext as createContext3 } from "react";
572
+ var HeatMapInitializerContext = createContext3({});
573
+
574
+ // src/Contexts/HeatMapInitializer/Provider.tsx
575
+ import { jsx as jsx3 } from "react/jsx-runtime";
576
+ var HeatMapInitializerProvider = ({
577
+ children,
578
+ featureSets,
579
+ featureSetsLayers,
580
+ features,
581
+ fitToPadding,
582
+ heatMapColorProps,
583
+ layers,
584
+ zoom
585
+ }) => {
586
+ const [mapHeat, setMapHeat] = useState6();
587
+ const { options } = useDynamicPositioning();
588
+ const { mapSettings } = useMapSettings();
589
+ const { map, mapInitialized } = useMapBoxInstance();
590
+ const value = {
591
+ MapHeat: mapHeat,
592
+ heatMapColorProps
593
+ };
594
+ useEffect6(() => {
595
+ if (mapInitialized && featureSets?.length && featureSets[0].length > 0 && map && featureSetsLayers?.length) {
596
+ const { lowUsageColor, highUsageColor } = heatMapColorProps;
597
+ forget2(MapHeat.initializeAnimatedHeatMapSource(featureSetsLayers, featureSets, map, lowUsageColor, highUsageColor));
598
+ }
599
+ return () => {
600
+ MapHeat.animationStarted = false;
601
+ };
602
+ }, [featureSets, featureSetsLayers, mapInitialized, map, heatMapColorProps]);
603
+ useEffect6(() => {
604
+ if (mapHeat && mapInitialized && features?.length && layers?.length) {
605
+ mapHeat.initializeHeatMapSource(layers);
606
+ }
607
+ }, [mapHeat, features?.length, layers, mapInitialized]);
608
+ useEffect6(() => {
609
+ if (mapInitialized) {
610
+ const { fitToPoints: fitToPoints3 } = mapSettings || {};
611
+ if (map) {
612
+ if (fitToPoints3?.value === true) {
613
+ MapHeat.initialMapPositioning({ padding: fitToPadding }, map, features);
614
+ } else if (options.zoom && options.center) {
615
+ map.setZoom(options.zoom);
616
+ map.setCenter(options.center);
617
+ }
618
+ }
619
+ }
620
+ }, [mapHeat, map, mapSettings, fitToPadding, options, mapInitialized, features]);
621
+ useEffect6(() => {
622
+ if (map && features?.length) {
623
+ setMapHeat(new MapHeat({ features, map, zoom }));
624
+ }
625
+ }, [map, features, zoom]);
626
+ return /* @__PURE__ */ jsx3(HeatMapInitializerContext.Provider, { value, children });
627
+ };
628
+
629
+ // src/Contexts/HeatMapInitializer/useHeatMapInitializer.tsx
630
+ import { assertEx as assertEx4 } from "@xylabs/assert";
631
+ import { useContext as useContext3 } from "react";
632
+ var useHeatMapInitializer = () => {
633
+ const context = useContext3(HeatMapInitializerContext);
634
+ assertEx4("heatMapInitialized" in context, () => "useHeatMapInitializer must be used within a HeatMapInitializerContext");
635
+ return context;
636
+ };
637
+
638
+ // src/Contexts/MapboxAccessToken/Context.ts
639
+ import { createContextEx } from "@xyo-network/react-shared";
640
+ var MapboxAccessTokenContext = createContextEx();
641
+
642
+ // src/Contexts/MapboxAccessToken/Provider.tsx
643
+ import { useState as useState7 } from "react";
644
+ import { jsx as jsx4 } from "react/jsx-runtime";
645
+ var MapboxAccessTokenProvider = ({ defaultAccessToken, ...props }) => {
646
+ const [accessToken, setAccessToken] = useState7();
647
+ return /* @__PURE__ */ jsx4(MapboxAccessTokenContext.Provider, { value: { accessToken: accessToken ?? defaultAccessToken, provided: true, setAccessToken }, ...props });
648
+ };
649
+
650
+ // src/Contexts/MapboxAccessToken/use.ts
651
+ import { useContextEx } from "@xyo-network/react-shared";
652
+ var useMapboxAccessToken = (required = false) => {
653
+ return useContextEx(MapboxAccessTokenContext, "MapboxAccessToken", required);
654
+ };
655
+
656
+ // src/Layers/Configs/HeatMapFillLayerConfig.ts
657
+ var HeatMapFillLayerConfig = (color) => ({
658
+ paint: {
659
+ "fill-color": color,
660
+ "fill-opacity": [
661
+ "let",
662
+ "density",
663
+ ["+", ["/", ["number", ["get", "value"]], 4], 0.125],
664
+ ["interpolate", ["linear"], ["var", "density"], 0.8, ["var", "density"], 1, 0.85]
665
+ ]
666
+ }
667
+ });
668
+
669
+ // src/Layers/Configs/HeatMapLineLayerConfig.ts
670
+ var HeatMapLineLayerConfig = (color) => ({
671
+ layout: {
672
+ // Enable for debugging
673
+ visibility: "none"
674
+ },
675
+ paint: {
676
+ "line-color": color,
677
+ "line-opacity": ["let", "density", 0, ["interpolate", ["linear"], ["var", "density"], 0.8, ["var", "density"], 1, 0.85]],
678
+ "line-width": 0.5
679
+ }
680
+ });
681
+
682
+ // src/Layers/Configs/HeatMapSymbolLayerConfig.ts
683
+ var HeatMapSymbolLayerConfig = (color) => ({
684
+ layout: {
685
+ "text-anchor": "center",
686
+ "text-field": [
687
+ "concat",
688
+ "value: ",
689
+ ["to-string", ["+", ["/", ["number", ["get", "value"]], 2], 0.25]],
690
+ "\n",
691
+ "count: ",
692
+ ["to-string", ["get", "count"]]
693
+ ],
694
+ "text-size": 10,
695
+ visibility: "none"
696
+ },
697
+ paint: {
698
+ "text-color": color
699
+ }
700
+ });
701
+
702
+ // src/Layers/Configs/LocationPointLayerConfig.ts
703
+ var LocationPointLayerConfig = (color, circleRadius, circleOpacity) => {
704
+ return {
705
+ paint: {
706
+ "circle-color": color,
707
+ "circle-opacity": circleOpacity,
708
+ "circle-radius": circleRadius
709
+ }
710
+ };
711
+ };
712
+
713
+ // src/Layers/FillLayer.ts
714
+ import { LayerBase } from "@xyo-network/sdk-geo";
715
+ var FillLayerBuilder = class extends LayerBase {
716
+ FillLayerOptions;
717
+ // ensures this class passes for `AnyLayer` type in MapBox
718
+ type = "fill";
719
+ constructor(id, source, FillLayerOptions) {
720
+ super(id, source);
721
+ this.FillLayerOptions = FillLayerOptions || { id: this.id, source: this.source };
722
+ }
723
+ buildLayer() {
724
+ return {
725
+ ...this.FillLayerOptions,
726
+ id: this.id,
727
+ source: this.source,
728
+ type: this.type
729
+ };
730
+ }
731
+ };
732
+
733
+ // src/Layers/LineLayer.ts
734
+ import { LayerBase as LayerBase2 } from "@xyo-network/sdk-geo";
735
+ var LineLayerBuilder = class extends LayerBase2 {
736
+ LineLayerOptions;
737
+ // ensures this class passes for `AnyLayer` type in MapBox
738
+ type = "line";
739
+ constructor(id, source, LineLayerOptions) {
740
+ super(id, source);
741
+ this.LineLayerOptions = LineLayerOptions || { id: this.id, source: this.source };
742
+ }
743
+ buildLayer() {
744
+ return {
745
+ ...this.LineLayerOptions,
746
+ id: this.id,
747
+ layout: {},
748
+ source: this.source,
749
+ type: this.type
750
+ };
751
+ }
752
+ };
753
+
754
+ // src/Layers/SymbolLayer.ts
755
+ import { LayerBase as LayerBase3 } from "@xyo-network/sdk-geo";
756
+ var SymbolLayerBuilder = class extends LayerBase3 {
757
+ SymbolLayerOptions;
758
+ // ensures this class passes for `AnyLayer` type in MapBox
759
+ type = "symbol";
760
+ constructor(id, source, SymbolLayerOptions) {
761
+ super(id, source);
762
+ this.SymbolLayerOptions = SymbolLayerOptions || { id: this.id, source: this.source };
763
+ }
764
+ buildLayer() {
765
+ return {
766
+ ...this.SymbolLayerOptions,
767
+ id: this.id,
768
+ source: this.source,
769
+ type: this.type
770
+ };
771
+ }
772
+ };
773
+
774
+ // src/Layers/Builders/LocationHeatMapLayerBuilder.ts
775
+ var MapHeatConstants = {
776
+ LocationDebugLayerId: "location-debug-id",
777
+ LocationDebugLayerSource: "location-debug-source",
778
+ LocationFillLayerId: "location-fill-id",
779
+ LocationFillLayerSource: "location-fill-source",
780
+ LocationLineLayerId: "location-line-id",
781
+ LocationLineLayerSource: "location-line-source"
782
+ };
783
+ var LocationHeatMapLayerBuilder = (color, alternateColor = "#000") => {
784
+ const {
785
+ LocationFillLayerId,
786
+ LocationFillLayerSource,
787
+ LocationLineLayerId,
788
+ LocationLineLayerSource,
789
+ LocationDebugLayerId,
790
+ LocationDebugLayerSource
791
+ } = MapHeatConstants;
792
+ const fillLayerConfig = HeatMapFillLayerConfig(color);
793
+ const lineLayerConfig = HeatMapLineLayerConfig(color);
794
+ const debugLayerConfig = HeatMapSymbolLayerConfig(alternateColor);
795
+ const fillLayer = new FillLayerBuilder(LocationFillLayerId, LocationFillLayerSource, fillLayerConfig);
796
+ const lineLayer = new LineLayerBuilder(LocationLineLayerId, LocationLineLayerSource, lineLayerConfig);
797
+ const debugLayer3 = new SymbolLayerBuilder(LocationDebugLayerId, LocationDebugLayerSource, debugLayerConfig);
798
+ return [fillLayer, lineLayer, debugLayer3];
799
+ };
800
+
801
+ // src/Layers/Builders/LocationHeatMapLayerBuilderAnimated.ts
802
+ var MapHeatConstants2 = (index, type) => ({
803
+ LocationDebugLayerId: `location-${type}-debug-id-${index}`,
804
+ LocationDebugLayerSource: `location-${type}-debug-source-${index}`,
805
+ LocationFillLayerId: `location-${type}-fill-id-${index}`,
806
+ LocationFillLayerSource: `location-${type}-fill-source-${index}`,
807
+ LocationLineLayerId: `location-${type}-line-id-${index}`,
808
+ LocationLineLayerSource: `location-${type}-line-source-${index}`
809
+ });
810
+ var LocationHeatMapLayerBuilderAnimated = (color, index, type = "") => {
811
+ const { LocationFillLayerId, LocationFillLayerSource } = MapHeatConstants2(index, type);
812
+ const fillLayerConfig = HeatMapFillLayerConfig(color);
813
+ const fillLayer = new FillLayerBuilder(LocationFillLayerId, LocationFillLayerSource, fillLayerConfig);
814
+ return fillLayer;
815
+ };
816
+
817
+ // src/Layers/CircleLayer.ts
818
+ import { LayerBase as LayerBase4 } from "@xyo-network/sdk-geo";
819
+ var CircleLayerBuilder = class extends LayerBase4 {
820
+ CircleLayerOptions;
821
+ // ensures this class passes for `AnyLayer` type in MapBox
822
+ type = "circle";
823
+ constructor(id, source, CircleLayerOptions) {
824
+ super(id, source);
825
+ this.CircleLayerOptions = CircleLayerOptions || { id: this.id, source: this.source, type: "circle" };
826
+ }
827
+ buildLayer() {
828
+ return {
829
+ filter: ["==", "$type", "Point"],
830
+ layout: {},
831
+ paint: {
832
+ "circle-color": "#ff0000",
833
+ "circle-radius": 6
834
+ },
835
+ type: this.type,
836
+ ...this.CircleLayerOptions,
837
+ id: this.id,
838
+ source: this.source
839
+ };
840
+ }
841
+ };
842
+
843
+ // src/Layers/Builders/LocationPointsMapLayerBuilder.ts
844
+ var MapPointsConstants = {
845
+ LocationDotsLayerId: "location-dots",
846
+ LocationDotsLayerSource: "location-dots-source"
847
+ };
848
+ var LocationPointsMapLayerBuilder = (color, circleRadius = 6, circleOpacity = 0.8) => {
849
+ const { LocationDotsLayerId, LocationDotsLayerSource } = MapPointsConstants;
850
+ const dotLayerConfig = LocationPointLayerConfig(color, circleRadius, circleOpacity);
851
+ const dotLayer = new CircleLayerBuilder(LocationDotsLayerId, LocationDotsLayerSource, dotLayerConfig);
852
+ return [dotLayer];
853
+ };
854
+
855
+ // src/Components/MapBoxHeat.tsx
856
+ import { FlexCol } from "@xylabs/react-flexbox";
857
+
858
+ // src/Components/MapBox.tsx
859
+ import "mapbox-gl/dist/mapbox-gl.css";
860
+ import { Map as Map3 } from "mapbox-gl";
861
+ import { useEffect as useEffect7, useRef, useState as useState8 } from "react";
862
+
863
+ // src/lib/MapStyle.ts
864
+ var MapStyle = /* @__PURE__ */ ((MapStyle2) => {
865
+ MapStyle2["Dark"] = "mapbox/dark-v10";
866
+ MapStyle2["Light"] = "mapbox/light-v10";
867
+ MapStyle2["Outdoors"] = "mapbox/outdoors-v11";
868
+ MapStyle2["Satellite"] = "mapbox/satellite-v9";
869
+ MapStyle2["SatelliteStreets"] = "mapbox/satellite-streets-v11";
870
+ MapStyle2["Streets"] = "mapbox/streets-v11";
871
+ return MapStyle2;
872
+ })(MapStyle || {});
873
+
874
+ // src/Components/MapBox.tsx
875
+ import { jsx as jsx5 } from "react/jsx-runtime";
876
+ var MapBox = ({ accessToken, darkMode = false, options, zoom = 2, ...props }) => {
877
+ const [map, setMap] = useState8();
878
+ const mapContainerRef = useRef(null);
879
+ const mapCanvasRef = useRef(null);
880
+ const { setMapBoxInstance, map: mapInstance } = useMapBoxInstance();
881
+ const { mapSettings } = useMapSettings();
882
+ const activeResize = mapSettings?.dynamicMapResize.value;
883
+ useDynamicMapResize(mapContainerRef, mapCanvasRef, mapInstance, activeResize);
884
+ useEffect7(() => {
885
+ if (mapSettings?.preferDark?.value === true) {
886
+ map?.setStyle(`mapbox://styles/${"mapbox/dark-v10" /* Dark */}`);
887
+ } else {
888
+ map?.setStyle(`mapbox://styles/${darkMode ? "mapbox/dark-v10" /* Dark */ : "mapbox/light-v10" /* Light */}`);
889
+ }
890
+ }, [map, darkMode, mapSettings]);
891
+ useEffect7(() => {
892
+ const map2 = new Map3({
893
+ accessToken,
894
+ center: [0, 0],
895
+ container: mapContainerRef.current ?? "",
896
+ style: `mapbox://styles/${"mapbox/light-v10" /* Light */}`,
897
+ zoom,
898
+ ...options
899
+ });
900
+ setMapBoxInstance?.(map2);
901
+ setMap(map2);
902
+ mapCanvasRef.current = document.querySelector(".mapboxgl-canvas");
903
+ console.log("Created Map");
904
+ return () => {
905
+ console.log("Removing Map");
906
+ map2.remove();
907
+ };
908
+ }, [mapContainerRef, setMap, options, zoom, setMapBoxInstance, accessToken]);
909
+ return /* @__PURE__ */ jsx5(
910
+ "div",
911
+ {
912
+ ref: (el) => mapContainerRef.current = el,
913
+ style: {
914
+ bottom: 0,
915
+ left: 0,
916
+ position: "absolute",
917
+ right: 0,
918
+ top: 0,
919
+ ...props
920
+ }
921
+ }
922
+ );
923
+ };
924
+
925
+ // src/Components/MapSettingsComponents/Setting.tsx
926
+ import { FormControlLabel, Switch } from "@mui/material";
927
+ import { jsx as jsx6 } from "react/jsx-runtime";
928
+ var MapSettingSwitch = ({ developerMode, field, ...props }) => {
929
+ const { mapSettings, setMapSettings } = useMapSettings();
930
+ const setting = mapSettings?.[field];
931
+ const onLocalChange = (event) => {
932
+ if (setting) {
933
+ setMapSettings?.((previous) => {
934
+ previous[setting.field].value = event.target.checked;
935
+ return { ...previous };
936
+ });
937
+ }
938
+ };
939
+ if (setting?.devMode && developerMode === false) {
940
+ return null;
941
+ }
942
+ return setting?.hidden ? null : /* @__PURE__ */ jsx6(FormControlLabel, { label: setting?.label, control: /* @__PURE__ */ jsx6(Switch, { checked: setting?.value, onChange: onLocalChange, ...props }) });
943
+ };
944
+
945
+ // src/Components/MapSettingsComponents/SettingsBox.tsx
946
+ import { Paper, Stack } from "@mui/material";
947
+ import { FlexGrowRow, FlexRow } from "@xylabs/react-flexbox";
948
+ import { useAppSettings } from "@xyo-network/react-app-settings";
949
+ import { jsx as jsx7 } from "react/jsx-runtime";
950
+ var MapSettingsBox = ({ developerMode, ...props }) => {
951
+ const { mapSettings } = useMapSettings();
952
+ const { developerMode: devModeFromContext } = useAppSettings();
953
+ const resolveDeveloperMode = developerMode ?? devModeFromContext;
954
+ return mapSettings && resolveDeveloperMode ? /* @__PURE__ */ jsx7(FlexGrowRow, { bottom: 36, left: 10, position: "absolute", ...props, children: /* @__PURE__ */ jsx7(FlexRow, { paddingX: 2, children: /* @__PURE__ */ jsx7(Paper, { children: /* @__PURE__ */ jsx7(Stack, { direction: "row", spacing: 1, marginX: 1, children: Object.keys(mapSettings).map((key, index) => {
955
+ return /* @__PURE__ */ jsx7(MapSettingSwitch, { field: mapSettings[key].field, developerMode }, index);
956
+ }) }) }) }) }) : null;
957
+ };
958
+
959
+ // src/Components/MapBoxHeat.tsx
960
+ import { jsx as jsx8, jsxs } from "react/jsx-runtime";
961
+ var MapboxHeatFlexBox = ({ accessToken, children, mapBoxOptions, zoom, legend, developerMode, ...props }) => {
962
+ return /* @__PURE__ */ jsxs(FlexCol, { ...props, children: [
963
+ /* @__PURE__ */ jsx8(MapBox, { accessToken, options: mapBoxOptions, zoom }),
964
+ /* @__PURE__ */ jsx8(MapSettingsBox, { developerMode }),
965
+ legend,
966
+ children
967
+ ] });
968
+ };
969
+
970
+ // src/Components/AnimatedHeatMap.tsx
971
+ import { jsx as jsx9 } from "react/jsx-runtime";
972
+ var AnimatedHeatMap = ({
973
+ accessToken,
974
+ animatedFeatureSets,
975
+ defaultMapSettings,
976
+ heatMapColorProps,
977
+ staticFeatureSet,
978
+ ...props
979
+ }) => {
980
+ const theme = useTheme2();
981
+ const { staticMapColor, lowUsageColor, highUsageColor } = heatMapColorProps || {};
982
+ const localStaticMapColor = staticMapColor ?? theme.palette.primary.light;
983
+ const [layers] = useState9([
984
+ LocationHeatMapLayerBuilderAnimated(localStaticMapColor, 0, "static"),
985
+ LocationHeatMapLayerBuilderAnimated(lowUsageColor || localStaticMapColor, 0, "animated"),
986
+ LocationHeatMapLayerBuilderAnimated(highUsageColor || darken(localStaticMapColor, 0.9), 1, "animated")
987
+ ]);
988
+ return animatedFeatureSets?.length ? /* @__PURE__ */ jsx9(MapBoxInstanceProvider, { children: /* @__PURE__ */ jsx9(MapSettingsProvider, { defaultMapSettings, debugLayerName: MapHeatConstants.LocationDebugLayerId, children: /* @__PURE__ */ jsx9(
989
+ HeatMapInitializerProvider,
990
+ {
991
+ features: staticFeatureSet,
992
+ layers: [layers[0]],
993
+ featureSets: animatedFeatureSets,
994
+ featureSetsLayers: layers.slice(1, 3),
995
+ heatMapColorProps,
996
+ children: /* @__PURE__ */ jsx9(MapboxHeatFlexBox, { accessToken, ...props })
997
+ }
998
+ ) }) }) : /* @__PURE__ */ jsx9(FlexCol2, { minHeight: 160, minWidth: 160, busy: true });
999
+ };
1000
+
1001
+ // src/Components/AnimatedHeatMapLoaded.tsx
1002
+ import { Alert, AlertTitle } from "@mui/material";
1003
+ import { FlexCol as FlexCol5 } from "@xylabs/react-flexbox";
1004
+ import { useWeakArchivistFromNode, useWeakArchivistGet } from "@xyo-network/react-archivist";
1005
+
1006
+ // src/Components/Legend.tsx
1007
+ import { useMediaQuery, useTheme as useTheme4 } from "@mui/material";
1008
+ import { FlexCol as FlexCol4 } from "@xylabs/react-flexbox";
1009
+
1010
+ // src/Components/Legends/ColorGradient.tsx
1011
+ import { Typography, useTheme as useTheme3 } from "@mui/material";
1012
+ import { FlexCol as FlexCol3, FlexRow as FlexRow2 } from "@xylabs/react-flexbox";
1013
+ import { jsx as jsx10, jsxs as jsxs2 } from "react/jsx-runtime";
1014
+ var ColorGradientLegend = ({ startColor, endColor, startLabel, endLabel, heading, textColor, ...props }) => {
1015
+ const theme = useTheme3();
1016
+ return /* @__PURE__ */ jsxs2(FlexCol3, { ...props, children: [
1017
+ /* @__PURE__ */ jsx10(Typography, { mb: theme.spacing(0.25), color: textColor, variant: "caption", textAlign: "center", children: heading }),
1018
+ /* @__PURE__ */ jsx10(FlexCol3, { flexGrow: 1, alignItems: "stretch", paddingX: theme.spacing(1), mb: theme.spacing(0.25), children: /* @__PURE__ */ jsx10(
1019
+ FlexCol3,
1020
+ {
1021
+ height: theme.spacing(0.75),
1022
+ border: `1px solid ${textColor}`,
1023
+ sx: { backgroundImage: `linear-gradient(to right, ${startColor},${endColor})` }
1024
+ }
1025
+ ) }),
1026
+ /* @__PURE__ */ jsxs2(FlexRow2, { flexGrow: 1, justifyContent: "space-between", children: [
1027
+ /* @__PURE__ */ jsx10(Typography, { color: textColor, variant: "caption", children: startLabel }),
1028
+ /* @__PURE__ */ jsx10(Typography, { color: textColor, variant: "caption", children: endLabel })
1029
+ ] })
1030
+ ] });
1031
+ };
1032
+
1033
+ // src/Components/Legend.tsx
1034
+ import { jsx as jsx11 } from "react/jsx-runtime";
1035
+ var AnimatedHeatMapLegend = ({ ...legendProps }) => {
1036
+ const { startColor, endColor, startLabel, endLabel, heading, textColor } = legendProps;
1037
+ const theme = useTheme4();
1038
+ const isSmall = useMediaQuery(theme.breakpoints.down("sm"));
1039
+ return /* @__PURE__ */ jsx11(FlexCol4, { position: "absolute", bottom: 0, right: 0, children: /* @__PURE__ */ jsx11(
1040
+ ColorGradientLegend,
1041
+ {
1042
+ startColor,
1043
+ endColor,
1044
+ startLabel,
1045
+ endLabel,
1046
+ heading,
1047
+ textColor,
1048
+ ...{
1049
+ alignItems: "stretch",
1050
+ marginBottom: theme.spacing(4),
1051
+ marginLeft: isSmall ? theme.spacing(3) : 0,
1052
+ marginRight: isSmall ? theme.spacing(2) : theme.spacing(3),
1053
+ width: isSmall ? "40vw" : theme.spacing(18)
1054
+ }
1055
+ }
1056
+ ) });
1057
+ };
1058
+
1059
+ // src/Components/AnimatedHeatMapLoaded.tsx
1060
+ import { jsx as jsx12, jsxs as jsxs3 } from "react/jsx-runtime";
1061
+ var AnimatedHeatMapLoaded = ({ accessToken, archivistNameOrAddress, ...props }) => {
1062
+ const hashes = useFindHashes();
1063
+ const [archivist] = useWeakArchivistFromNode(archivistNameOrAddress);
1064
+ const [payloads, xyoError] = useWeakArchivistGet(archivist, hashes);
1065
+ const { multipleFeatureSets } = useQuadKeyPayloadsToFeatures(payloads);
1066
+ const { heatMapColorProps, legendProps } = useHeatMapColors();
1067
+ const MapBoxHeatProps = {
1068
+ flexGrow: 1,
1069
+ legend: legendProps ? /* @__PURE__ */ jsx12(AnimatedHeatMapLegend, { ...legendProps }) : null
1070
+ };
1071
+ return /* @__PURE__ */ jsxs3(FlexCol5, { alignItems: "stretch", ...props, children: [
1072
+ xyoError ? /* @__PURE__ */ jsxs3(Alert, { sx: { mt: 2 }, children: [
1073
+ /* @__PURE__ */ jsx12(AlertTitle, { children: "Error Loading Map" }),
1074
+ xyoError.message ? `Error: ${xyoError.message}` : null,
1075
+ "You might try authenticating again."
1076
+ ] }) : null,
1077
+ hashes === void 0 ? /* @__PURE__ */ jsx12(Alert, { children: "Missing answer hash for heat map query" }) : /* @__PURE__ */ jsx12(
1078
+ AnimatedHeatMap,
1079
+ {
1080
+ accessToken,
1081
+ defaultMapSettings: AnimatedHeatMapSettings,
1082
+ animatedFeatureSets: multipleFeatureSets.slice(1, multipleFeatureSets.length),
1083
+ staticFeatureSet: multipleFeatureSets[0],
1084
+ heatMapColorProps,
1085
+ ...MapBoxHeatProps
1086
+ }
1087
+ )
1088
+ ] });
1089
+ };
1090
+
1091
+ // src/Components/HeatMapSettings.ts
1092
+ var HeatMapSettings = DefaultMapSettings();
1093
+ var { debugLayer: debugLayer2, scrollToZoom: scrollToZoom2, fitToPoints: fitToPoints2 } = HeatMapSettings;
1094
+ debugLayer2.hidden = false;
1095
+ scrollToZoom2.value = true;
1096
+ fitToPoints2.value = true;
1097
+
1098
+ // src/Components/LayerAnimator.tsx
1099
+ import { useInterval } from "@xylabs/react-shared";
1100
+ import { useCallback, useEffect as useEffect8, useRef as useRef2, useState as useState10 } from "react";
1101
+ import { Fragment, jsx as jsx13 } from "react/jsx-runtime";
1102
+ var timeIncrement = 2e3;
1103
+ var animatedLayerCount = 3;
1104
+ var LayerAnimator = ({ animateLayers, children, layers, layersInitialized, map }) => {
1105
+ const [fillLayers, setFillLayers] = useState10([]);
1106
+ const layerIndexQueue = useRef2([]);
1107
+ const incrementQueue = useCallback(
1108
+ (index) => {
1109
+ if (fillLayers[index]) {
1110
+ layerIndexQueue.current.push(index);
1111
+ } else {
1112
+ layerIndexQueue.current.push(0);
1113
+ }
1114
+ return layerIndexQueue.current.at(-1);
1115
+ },
1116
+ [fillLayers]
1117
+ );
1118
+ const lastQueuedIndex = useCallback(() => {
1119
+ const last = layerIndexQueue.current.at(-1);
1120
+ if (last === void 0) {
1121
+ incrementQueue(0);
1122
+ return 0;
1123
+ } else {
1124
+ return last;
1125
+ }
1126
+ }, [incrementQueue]);
1127
+ const unshiftQueue = useCallback(() => {
1128
+ layerIndexQueue.current.shift();
1129
+ }, []);
1130
+ const getNextLayer = useCallback(() => {
1131
+ const nextLayer = fillLayers[lastQueuedIndex()];
1132
+ incrementQueue(lastQueuedIndex() + 1);
1133
+ return nextLayer;
1134
+ }, [fillLayers, incrementQueue, lastQueuedIndex]);
1135
+ const layerAnimateWorker = useCallback(
1136
+ (layer) => {
1137
+ if (layer) {
1138
+ map?.setPaintProperty(layer.id, "fill-opacity", 0.85);
1139
+ setTimeout(() => {
1140
+ map?.setPaintProperty(layer.id, "fill-opacity", 0);
1141
+ unshiftQueue();
1142
+ }, timeIncrement * 2);
1143
+ } else {
1144
+ console.warn("tried to queue an empty layer");
1145
+ }
1146
+ },
1147
+ [map, unshiftQueue]
1148
+ );
1149
+ useEffect8(() => {
1150
+ if (layers?.length && map && layersInitialized) {
1151
+ setFillLayers(
1152
+ layers.filter((layer) => {
1153
+ const fillLayer = layer.id.startsWith("location-fill");
1154
+ if (fillLayer) {
1155
+ map.setPaintProperty(layer.id, "fill-opacity-transition", { delay: 0, duration: 4e3 });
1156
+ }
1157
+ return fillLayer;
1158
+ })
1159
+ );
1160
+ }
1161
+ }, [layers, layersInitialized, map]);
1162
+ const queueLayerAnimation = useCallback(() => {
1163
+ const animatedLayers = [];
1164
+ for (let i = 0; i < animatedLayerCount; i++) {
1165
+ animatedLayers.push(getNextLayer());
1166
+ }
1167
+ for (const [index, layer] of animatedLayers.entries()) {
1168
+ if (index === 0) {
1169
+ layerAnimateWorker(layer);
1170
+ } else {
1171
+ setTimeout(() => {
1172
+ layerAnimateWorker(layer);
1173
+ }, timeIncrement * index);
1174
+ }
1175
+ }
1176
+ }, [getNextLayer, layerAnimateWorker]);
1177
+ useEffect8(() => {
1178
+ if (animateLayers && layersInitialized && map && fillLayers.length > 0) {
1179
+ queueLayerAnimation();
1180
+ }
1181
+ }, [animateLayers, fillLayers.length, layersInitialized, map, queueLayerAnimation]);
1182
+ useInterval(() => {
1183
+ if (animateLayers && layersInitialized && map && fillLayers.length > 0) {
1184
+ queueLayerAnimation();
1185
+ }
1186
+ }, timeIncrement * animatedLayerCount);
1187
+ return /* @__PURE__ */ jsx13(Fragment, { children });
1188
+ };
1189
+
1190
+ // src/Components/MapBoxPoints.tsx
1191
+ import { Alert as Alert2 } from "@mui/material";
1192
+ import { FlexCol as FlexCol6 } from "@xylabs/react-flexbox";
1193
+ import { useCallback as useCallback2, useEffect as useEffect9, useState as useState11 } from "react";
1194
+ import { Fragment as Fragment2, jsx as jsx14, jsxs as jsxs4 } from "react/jsx-runtime";
1195
+ var MapboxPointsFlexBox = ({
1196
+ accessToken,
1197
+ features,
1198
+ fitToPointsPadding = 20,
1199
+ layers,
1200
+ zoom,
1201
+ ...props
1202
+ }) => {
1203
+ const [mapPoints, setMapPoints] = useState11();
1204
+ const { mapSettings } = useMapSettings();
1205
+ const { map, mapInitialized } = useMapBoxInstance();
1206
+ const customFitToBoundsOptions = (zoom2) => {
1207
+ if (zoom2 !== void 0) {
1208
+ return {
1209
+ maxZoom: zoom2
1210
+ };
1211
+ }
1212
+ return {};
1213
+ };
1214
+ const updateFeatures = useCallback2(() => {
1215
+ if (mapPoints?.isMapReady && features?.length && layers)
1216
+ for (const layer of layers) {
1217
+ mapPoints.initializeMapSource(layer);
1218
+ }
1219
+ }, [mapPoints, features, layers]);
1220
+ const updateMapSetup = useCallback2(() => {
1221
+ const { fitToPoints: fitToPoints3 } = mapSettings || {};
1222
+ if (mapPoints && map && fitToPoints3?.value === true) {
1223
+ mapPoints.initialMapPositioning({ padding: fitToPointsPadding, ...customFitToBoundsOptions(zoom) });
1224
+ }
1225
+ }, [mapSettings, mapPoints, map, fitToPointsPadding, zoom]);
1226
+ const reInitializeMap = useCallback2(() => {
1227
+ mapPoints?.initialMapPositioning({ padding: fitToPointsPadding, ...customFitToBoundsOptions(zoom) });
1228
+ updateFeatures();
1229
+ }, [mapPoints, fitToPointsPadding, updateFeatures, zoom]);
1230
+ useEffect9(() => {
1231
+ if (map && features?.length) {
1232
+ setMapPoints(new MapPoints({ features, map, zoom }));
1233
+ }
1234
+ }, [map, features, zoom]);
1235
+ useEffect9(() => {
1236
+ if (mapInitialized) {
1237
+ updateMapSetup();
1238
+ reInitializeMap();
1239
+ }
1240
+ }, [mapInitialized, reInitializeMap, updateMapSetup]);
1241
+ return /* @__PURE__ */ jsx14(FlexCol6, { alignItems: "stretch", id: "xyo-mapbox-wrap", ...props, children: features ? /* @__PURE__ */ jsxs4(Fragment2, { children: [
1242
+ /* @__PURE__ */ jsx14(MapBox, { accessToken, zoom }),
1243
+ /* @__PURE__ */ jsx14(MapSettingsBox, {})
1244
+ ] }) : /* @__PURE__ */ jsx14(Alert2, { severity: "error", children: "No data to show" }) });
1245
+ };
1246
+
1247
+ // src/types/NetworkLocationAnswerBase.ts
1248
+ import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
1249
+ var NetworkLocationAnswerSchema = "network.xyo.location.range.answer";
1250
+ var isNetworkLocationAnswer = isPayloadOfSchemaType(NetworkLocationAnswerSchema);
1251
+ var NetworkLocationHeatmapAnswerSchema = "network.xyo.location.heatmap.answer";
1252
+ var isNetworkLocationHeatmapAnswer = isPayloadOfSchemaType(NetworkLocationHeatmapAnswerSchema);
1253
+ var NetworkLocationHeatmapQuadkeyAnswerSchema = "network.xyo.location.heatmap.quadkey.answer";
1254
+ var isNetworkLocationHeatmapQuadkeyAnswer = isPayloadOfSchemaType(
1255
+ NetworkLocationHeatmapQuadkeyAnswerSchema
1256
+ );
1257
+ export {
1258
+ AnimatedHeatMap,
1259
+ AnimatedHeatMapLegend,
1260
+ AnimatedHeatMapLoaded,
1261
+ AnimatedHeatMapSettings,
1262
+ CircleLayerBuilder,
1263
+ ColorGradientLegend,
1264
+ DefaultMapSettings,
1265
+ FillLayerBuilder,
1266
+ HeatMapFillLayerConfig,
1267
+ HeatMapInitializerProvider,
1268
+ HeatMapLineLayerConfig,
1269
+ HeatMapSettings,
1270
+ HeatMapSymbolLayerConfig,
1271
+ LayerAnimator,
1272
+ LineLayerBuilder,
1273
+ LocationHeatMapLayerBuilder,
1274
+ LocationHeatMapLayerBuilderAnimated,
1275
+ LocationPointLayerConfig,
1276
+ LocationPointsMapLayerBuilder,
1277
+ MapBase,
1278
+ MapBox,
1279
+ MapBoxInstanceProvider,
1280
+ MapHeat,
1281
+ MapHeatConstants,
1282
+ MapPoints,
1283
+ MapPointsConstants,
1284
+ MapSettingSwitch,
1285
+ MapSettings,
1286
+ MapSettingsBox,
1287
+ MapSettingsProvider,
1288
+ MapStyle,
1289
+ MapboxAccessTokenContext,
1290
+ MapboxAccessTokenProvider,
1291
+ MapboxHeatFlexBox,
1292
+ MapboxPointsFlexBox,
1293
+ NetworkLocationAnswerSchema,
1294
+ NetworkLocationHeatmapAnswerSchema,
1295
+ NetworkLocationHeatmapQuadkeyAnswerSchema,
1296
+ SymbolLayerBuilder,
1297
+ isNetworkLocationAnswer,
1298
+ isNetworkLocationHeatmapAnswer,
1299
+ isNetworkLocationHeatmapQuadkeyAnswer,
1300
+ useDynamicMapResize,
1301
+ useDynamicPositioning,
1302
+ useFindHashes,
1303
+ useHeatMapColors,
1304
+ useHeatMapInitializer,
1305
+ useMapBoxInstance,
1306
+ useMapSettings,
1307
+ useMapboxAccessToken,
1308
+ useQuadKeyPayloadsToFeatures
1309
+ };
1310
+ //# sourceMappingURL=index.js.map