@map-colonies/react-components 3.12.2 → 3.12.3

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 (375) hide show
  1. package/.eslintignore +1 -1
  2. package/.storybook/main.js +13 -13
  3. package/.storybook/manager.js +6 -6
  4. package/.storybook/preview-head.html +21 -21
  5. package/.storybook/preview.js +18 -18
  6. package/.storybook/theme.js +9 -9
  7. package/CHANGELOG.md +828 -819
  8. package/README.md +53 -53
  9. package/dist/autocomplete/autocomplete.css +25 -25
  10. package/dist/autocomplete/autocomplete.d.ts +33 -33
  11. package/dist/autocomplete/autocomplete.js +478 -478
  12. package/dist/autocomplete/index.d.ts +1 -1
  13. package/dist/autocomplete/index.js +5 -5
  14. package/dist/box/box.d.ts +3 -3
  15. package/dist/box/box.js +35 -35
  16. package/dist/box/index.d.ts +1 -1
  17. package/dist/box/index.js +5 -5
  18. package/dist/cesium-map/data-sources/custom.data-source.d.ts +5 -5
  19. package/dist/cesium-map/data-sources/custom.data-source.js +23 -23
  20. package/dist/cesium-map/data-sources/drawings.data-source.d.ts +34 -34
  21. package/dist/cesium-map/data-sources/drawings.data-source.js +187 -187
  22. package/dist/cesium-map/data-sources/index.d.ts +2 -2
  23. package/dist/cesium-map/data-sources/index.js +14 -14
  24. package/dist/cesium-map/entities/entity.d.ts +5 -5
  25. package/dist/cesium-map/entities/entity.description.d.ts +6 -6
  26. package/dist/cesium-map/entities/entity.description.js +27 -27
  27. package/dist/cesium-map/entities/entity.js +23 -23
  28. package/dist/cesium-map/entities/graphics/polygon.graphics.d.ts +5 -5
  29. package/dist/cesium-map/entities/graphics/polygon.graphics.js +23 -23
  30. package/dist/cesium-map/entities/graphics/polyline.graphics.d.ts +5 -5
  31. package/dist/cesium-map/entities/graphics/polyline.graphics.js +23 -23
  32. package/dist/cesium-map/entities/graphics/rectangle.graphics.d.ts +5 -5
  33. package/dist/cesium-map/entities/graphics/rectangle.graphics.js +23 -23
  34. package/dist/cesium-map/entities/index.d.ts +4 -4
  35. package/dist/cesium-map/entities/index.js +16 -16
  36. package/dist/cesium-map/index.d.ts +8 -8
  37. package/dist/cesium-map/index.js +20 -20
  38. package/dist/cesium-map/layers/3d.tileset.d.ts +7 -7
  39. package/dist/cesium-map/layers/3d.tileset.js +43 -43
  40. package/dist/cesium-map/layers/3d.tileset.with.update.d.ts +6 -6
  41. package/dist/cesium-map/layers/3d.tileset.with.update.js +115 -115
  42. package/dist/cesium-map/layers/geojson.layer.d.ts +5 -5
  43. package/dist/cesium-map/layers/geojson.layer.js +23 -23
  44. package/dist/cesium-map/layers/imagery.layer.d.ts +6 -6
  45. package/dist/cesium-map/layers/imagery.layer.js +68 -68
  46. package/dist/cesium-map/layers/index.d.ts +7 -7
  47. package/dist/cesium-map/layers/index.js +19 -19
  48. package/dist/cesium-map/layers/osm.layer.d.ts +9 -9
  49. package/dist/cesium-map/layers/osm.layer.js +36 -36
  50. package/dist/cesium-map/layers/wms.layer.d.ts +9 -9
  51. package/dist/cesium-map/layers/wms.layer.js +36 -36
  52. package/dist/cesium-map/layers/wmts.layer.d.ts +9 -9
  53. package/dist/cesium-map/layers/wmts.layer.js +36 -36
  54. package/dist/cesium-map/layers/xyz.layer.d.ts +9 -9
  55. package/dist/cesium-map/layers/xyz.layer.js +36 -36
  56. package/dist/cesium-map/layers-manager.d.ts +55 -55
  57. package/dist/cesium-map/layers-manager.js +246 -246
  58. package/dist/cesium-map/map-legend/MapLegend.css +135 -135
  59. package/dist/cesium-map/map-legend/MapLegend.d.ts +15 -15
  60. package/dist/cesium-map/map-legend/MapLegend.js +57 -57
  61. package/dist/cesium-map/map-legend/MapLegendList.d.ts +13 -13
  62. package/dist/cesium-map/map-legend/MapLegendList.js +43 -43
  63. package/dist/cesium-map/map-legend/MapLegendSidebar.d.ts +16 -16
  64. package/dist/cesium-map/map-legend/MapLegendSidebar.js +20 -20
  65. package/dist/cesium-map/map-legend/MapLegendToggle.d.ts +7 -7
  66. package/dist/cesium-map/map-legend/MapLegendToggle.js +20 -20
  67. package/dist/cesium-map/map-legend/index.d.ts +3 -3
  68. package/dist/cesium-map/map-legend/index.js +14 -14
  69. package/dist/cesium-map/map.css +59 -59
  70. package/dist/cesium-map/map.d.ts +59 -59
  71. package/dist/cesium-map/map.js +305 -305
  72. package/dist/cesium-map/map.types.d.ts +8 -8
  73. package/dist/cesium-map/map.types.js +12 -12
  74. package/dist/cesium-map/proxied.types.d.ts +30 -30
  75. package/dist/cesium-map/proxied.types.js +132 -132
  76. package/dist/cesium-map/settings/base-maps.css +37 -37
  77. package/dist/cesium-map/settings/base-maps.d.ts +7 -7
  78. package/dist/cesium-map/settings/base-maps.js +78 -78
  79. package/dist/cesium-map/settings/scene-modes.css +19 -19
  80. package/dist/cesium-map/settings/scene-modes.d.ts +7 -7
  81. package/dist/cesium-map/settings/scene-modes.js +65 -65
  82. package/dist/cesium-map/settings/settings.css +52 -52
  83. package/dist/cesium-map/settings/settings.d.ts +23 -23
  84. package/dist/cesium-map/settings/settings.js +79 -79
  85. package/dist/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.d.ts +3 -3
  86. package/dist/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.js +245 -245
  87. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-decoder.d.ts +9 -9
  88. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-decoder.js +202 -202
  89. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.d.ts +50 -50
  90. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.js +136 -136
  91. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.d.ts +2 -2
  92. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.js +38 -38
  93. package/dist/cesium-map/tools/coordinates-tracker.tool.css +11 -11
  94. package/dist/cesium-map/tools/coordinates-tracker.tool.d.ts +7 -7
  95. package/dist/cesium-map/tools/coordinates-tracker.tool.js +78 -78
  96. package/dist/cesium-map/tools/draw/drawHelper.css +101 -101
  97. package/dist/cesium-map/tools/draw/drawHelper.d.ts +28 -28
  98. package/dist/cesium-map/tools/draw/drawHelper.js +1694 -1694
  99. package/dist/cesium-map/tools/geojson/geojson-to-primitive.d.ts +4 -4
  100. package/dist/cesium-map/tools/geojson/geojson-to-primitive.js +41 -41
  101. package/dist/cesium-map/tools/geojson/index.d.ts +2 -2
  102. package/dist/cesium-map/tools/geojson/index.js +14 -14
  103. package/dist/cesium-map/tools/geojson/point.geojson.d.ts +3 -3
  104. package/dist/cesium-map/tools/geojson/point.geojson.js +21 -21
  105. package/dist/cesium-map/tools/geojson/polygon.geojson.d.ts +3 -3
  106. package/dist/cesium-map/tools/geojson/polygon.geojson.js +24 -24
  107. package/dist/cesium-map/tools/geojson/rectangle.geojson.d.ts +3 -3
  108. package/dist/cesium-map/tools/geojson/rectangle.geojson.js +44 -44
  109. package/dist/cesium-map/tools/inspector.tool.d.ts +4 -4
  110. package/dist/cesium-map/tools/inspector.tool.js +33 -33
  111. package/dist/cesium-map/tools/scale-tracker.tool.css +16 -16
  112. package/dist/cesium-map/tools/scale-tracker.tool.d.ts +8 -8
  113. package/dist/cesium-map/tools/scale-tracker.tool.js +158 -158
  114. package/dist/cesium-map/tools/terranian-height.tool.d.ts +4 -4
  115. package/dist/cesium-map/tools/terranian-height.tool.js +114 -114
  116. package/dist/cssbaseline/cssbaseline.d.ts +5 -5
  117. package/dist/cssbaseline/cssbaseline.js +41 -41
  118. package/dist/cssbaseline/index.d.ts +1 -1
  119. package/dist/cssbaseline/index.js +6 -6
  120. package/dist/date-picker/date-picker.css +9 -9
  121. package/dist/date-picker/date-picker.d.ts +14 -14
  122. package/dist/date-picker/date-picker.js +78 -78
  123. package/dist/date-picker/index.d.ts +1 -1
  124. package/dist/date-picker/index.js +13 -13
  125. package/dist/date-range-picker/date-range-picker.css +9 -9
  126. package/dist/date-range-picker/date-range-picker.d.ts +26 -26
  127. package/dist/date-range-picker/date-range-picker.form-control.css +3 -3
  128. package/dist/date-range-picker/date-range-picker.form-control.d.ts +28 -28
  129. package/dist/date-range-picker/date-range-picker.form-control.js +95 -95
  130. package/dist/date-range-picker/date-range-picker.js +104 -104
  131. package/dist/date-range-picker/index.d.ts +2 -2
  132. package/dist/date-range-picker/index.js +14 -14
  133. package/dist/file-picker/file-picker.css +63 -63
  134. package/dist/file-picker/file-picker.d.ts +276 -276
  135. package/dist/file-picker/file-picker.js +151 -151
  136. package/dist/file-picker/fs-map.json +1556 -1556
  137. package/dist/file-picker/index.d.ts +2 -2
  138. package/dist/file-picker/index.js +14 -14
  139. package/dist/file-picker/localization.d.ts +11 -11
  140. package/dist/file-picker/localization.js +124 -124
  141. package/dist/index.d.ts +13 -13
  142. package/dist/index.js +25 -25
  143. package/dist/map-filter-container/container-map.css +5 -5
  144. package/dist/map-filter-container/container-map.d.ts +11 -11
  145. package/dist/map-filter-container/container-map.js +31 -31
  146. package/dist/map-filter-container/index.d.ts +1 -1
  147. package/dist/map-filter-container/index.js +13 -13
  148. package/dist/map-filter-container/map-filter-container.d.ts +9 -9
  149. package/dist/map-filter-container/map-filter-container.js +78 -78
  150. package/dist/map-filter-container/polygon-selection-ui.d.ts +12 -12
  151. package/dist/map-filter-container/polygon-selection-ui.js +62 -62
  152. package/dist/models/defaults.d.ts +28 -28
  153. package/dist/models/defaults.js +32 -32
  154. package/dist/models/enums.d.ts +14 -14
  155. package/dist/models/enums.js +20 -20
  156. package/dist/models/index.d.ts +1 -1
  157. package/dist/models/index.js +13 -13
  158. package/dist/ol-map/feature.d.ts +6 -6
  159. package/dist/ol-map/feature.js +20 -20
  160. package/dist/ol-map/index.d.ts +6 -6
  161. package/dist/ol-map/index.js +18 -18
  162. package/dist/ol-map/interactions/draw.d.ts +8 -8
  163. package/dist/ol-map/interactions/draw.js +44 -44
  164. package/dist/ol-map/interactions/index.d.ts +1 -1
  165. package/dist/ol-map/interactions/index.js +13 -13
  166. package/dist/ol-map/layers/index.d.ts +3 -3
  167. package/dist/ol-map/layers/index.js +15 -15
  168. package/dist/ol-map/layers/tile-layer.d.ts +9 -9
  169. package/dist/ol-map/layers/tile-layer.js +48 -48
  170. package/dist/ol-map/layers/vector-layer.d.ts +4 -4
  171. package/dist/ol-map/layers/vector-layer.js +48 -48
  172. package/dist/ol-map/layers/vector-tile-layer.d.ts +10 -10
  173. package/dist/ol-map/layers/vector-tile-layer.js +66 -66
  174. package/dist/ol-map/map.css +17 -17
  175. package/dist/ol-map/map.d.ts +14 -14
  176. package/dist/ol-map/map.js +117 -117
  177. package/dist/ol-map/source/index.d.ts +6 -6
  178. package/dist/ol-map/source/index.js +18 -18
  179. package/dist/ol-map/source/mvt.d.ts +11 -11
  180. package/dist/ol-map/source/mvt.js +37 -37
  181. package/dist/ol-map/source/osm.d.ts +2 -2
  182. package/dist/ol-map/source/osm.js +14 -14
  183. package/dist/ol-map/source/vector-source.d.ts +4 -4
  184. package/dist/ol-map/source/vector-source.js +45 -45
  185. package/dist/ol-map/source/wms.d.ts +17 -17
  186. package/dist/ol-map/source/wms.js +30 -30
  187. package/dist/ol-map/source/wmts.d.ts +21 -21
  188. package/dist/ol-map/source/wmts.js +59 -59
  189. package/dist/ol-map/source/xyz.d.ts +12 -12
  190. package/dist/ol-map/source/xyz.js +27 -27
  191. package/dist/ol-map/style.d.ts +4 -4
  192. package/dist/ol-map/style.js +22 -22
  193. package/dist/popover/index.d.ts +1 -1
  194. package/dist/popover/index.js +5 -5
  195. package/dist/popover/popover.d.ts +3 -3
  196. package/dist/popover/popover.js +35 -35
  197. package/dist/smart-table/__mock-data__/smartTableMocks.d.ts +7 -7
  198. package/dist/smart-table/__mock-data__/smartTableMocks.js +17 -17
  199. package/dist/smart-table/index.d.ts +2 -2
  200. package/dist/smart-table/index.js +14 -14
  201. package/dist/smart-table/smart-table-head.d.ts +11 -11
  202. package/dist/smart-table/smart-table-head.js +22 -22
  203. package/dist/smart-table/smart-table-row.d.ts +12 -12
  204. package/dist/smart-table/smart-table-row.js +46 -46
  205. package/dist/smart-table/smart-table-types.d.ts +9 -9
  206. package/dist/smart-table/smart-table-types.js +2 -2
  207. package/dist/smart-table/smart-table.d.ts +17 -17
  208. package/dist/smart-table/smart-table.js +51 -51
  209. package/dist/theme/index.d.ts +1 -1
  210. package/dist/theme/index.js +13 -13
  211. package/dist/theme/theme.d.ts +8 -8
  212. package/dist/theme/theme.js +124 -124
  213. package/dist/utils/map.d.ts +3 -3
  214. package/dist/utils/map.js +21 -21
  215. package/dist/utils/projections.d.ts +6 -6
  216. package/dist/utils/projections.js +10 -10
  217. package/dist/utils/story.d.ts +12 -12
  218. package/dist/utils/story.js +2 -2
  219. package/package.json +3 -3
  220. package/public/index.html +43 -43
  221. package/public/manifest.json +25 -25
  222. package/public/robots.txt +3 -3
  223. package/src/index.tsx +9 -9
  224. package/src/lib/autocomplete/autocomplete.css +25 -25
  225. package/src/lib/autocomplete/autocomplete.stories.tsx +101 -101
  226. package/src/lib/autocomplete/autocomplete.tsx +681 -681
  227. package/src/lib/autocomplete/index.ts +1 -1
  228. package/src/lib/box/box.tsx +7 -7
  229. package/src/lib/box/index.ts +1 -1
  230. package/src/lib/cesium-map/context-menu.stories.tsx +444 -444
  231. package/src/lib/cesium-map/data-sources/custom.data-source.tsx +12 -12
  232. package/src/lib/cesium-map/data-sources/drawings.data-source.stories.tsx +161 -161
  233. package/src/lib/cesium-map/data-sources/drawings.data-source.tsx +204 -204
  234. package/src/lib/cesium-map/data-sources/index.ts +2 -2
  235. package/src/lib/cesium-map/entities/entity.description.tsx +19 -19
  236. package/src/lib/cesium-map/entities/entity.graphics.stories.tsx +48 -48
  237. package/src/lib/cesium-map/entities/entity.stories.tsx +146 -146
  238. package/src/lib/cesium-map/entities/entity.tsx +10 -10
  239. package/src/lib/cesium-map/entities/graphics/polygon.graphics.tsx +12 -12
  240. package/src/lib/cesium-map/entities/graphics/polyline.graphics.tsx +12 -12
  241. package/src/lib/cesium-map/entities/graphics/rectangle.graphics.tsx +12 -12
  242. package/src/lib/cesium-map/entities/index.ts +4 -4
  243. package/src/lib/cesium-map/index.ts +8 -8
  244. package/src/lib/cesium-map/layers/3d.tileset.stories.tsx +164 -164
  245. package/src/lib/cesium-map/layers/3d.tileset.tsx +51 -51
  246. package/src/lib/cesium-map/layers/3d.tileset.with.update.tsx +120 -120
  247. package/src/lib/cesium-map/layers/geojson.layer.stories.tsx +119 -119
  248. package/src/lib/cesium-map/layers/geojson.layer.tsx +12 -12
  249. package/src/lib/cesium-map/layers/imagery.layer.stories.tsx +39 -39
  250. package/src/lib/cesium-map/layers/imagery.layer.tsx +37 -37
  251. package/src/lib/cesium-map/layers/index.ts +7 -7
  252. package/src/lib/cesium-map/layers/layers.rect.stories.tsx +171 -171
  253. package/src/lib/cesium-map/layers/osm.layer.stories.tsx +40 -40
  254. package/src/lib/cesium-map/layers/osm.layer.tsx +22 -22
  255. package/src/lib/cesium-map/layers/wms.layer.stories.tsx +38 -38
  256. package/src/lib/cesium-map/layers/wms.layer.tsx +22 -22
  257. package/src/lib/cesium-map/layers/wmts.layer.stories.tsx +53 -53
  258. package/src/lib/cesium-map/layers/wmts.layer.tsx +22 -22
  259. package/src/lib/cesium-map/layers/xyz.layer.stories.tsx +37 -37
  260. package/src/lib/cesium-map/layers/xyz.layer.tsx +22 -22
  261. package/src/lib/cesium-map/layers-manager.stories.tsx +286 -286
  262. package/src/lib/cesium-map/layers-manager.ts +354 -354
  263. package/src/lib/cesium-map/map-legend/MapLegend.css +135 -135
  264. package/src/lib/cesium-map/map-legend/MapLegend.tsx +92 -92
  265. package/src/lib/cesium-map/map-legend/MapLegendList.tsx +47 -47
  266. package/src/lib/cesium-map/map-legend/MapLegendSidebar.tsx +55 -55
  267. package/src/lib/cesium-map/map-legend/MapLegendToggle.tsx +31 -31
  268. package/src/lib/cesium-map/map-legend/index.tsx +3 -3
  269. package/src/lib/cesium-map/map-legend/legends-sidebar.stories.tsx +201 -201
  270. package/src/lib/cesium-map/map.css +59 -59
  271. package/src/lib/cesium-map/map.stories.tsx +143 -143
  272. package/src/lib/cesium-map/map.tsx +446 -446
  273. package/src/lib/cesium-map/map.types.ts +11 -11
  274. package/src/lib/cesium-map/proxied.types.ts +54 -54
  275. package/src/lib/cesium-map/settings/base-maps.css +37 -37
  276. package/src/lib/cesium-map/settings/base-maps.tsx +94 -94
  277. package/src/lib/cesium-map/settings/scene-modes.css +19 -19
  278. package/src/lib/cesium-map/settings/scene-modes.tsx +100 -100
  279. package/src/lib/cesium-map/settings/settings.css +52 -52
  280. package/src/lib/cesium-map/settings/settings.stories.tsx +182 -182
  281. package/src/lib/cesium-map/settings/settings.tsx +141 -141
  282. package/src/lib/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.ts +243 -243
  283. package/src/lib/cesium-map/terrain-providers/custom/quantized-mesh-decoder.ts +321 -321
  284. package/src/lib/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.ts +237 -237
  285. package/src/lib/cesium-map/terrain-providers/terrain-provider-heights-tool.stories.tsx +170 -170
  286. package/src/lib/cesium-map/terrain-providers/terrain-provider.stories.tsx +187 -187
  287. package/src/lib/cesium-map/tools/cesium/primitives-conversions.cesium.ts +15 -15
  288. package/src/lib/cesium-map/tools/coordinates-tracker.tool.css +11 -11
  289. package/src/lib/cesium-map/tools/coordinates-tracker.tool.tsx +79 -79
  290. package/src/lib/cesium-map/tools/draw/drawHelper.css +101 -101
  291. package/src/lib/cesium-map/tools/draw/drawHelper.ts +2116 -2116
  292. package/src/lib/cesium-map/tools/geojson/geojson-to-primitive.ts +54 -54
  293. package/src/lib/cesium-map/tools/geojson/index.ts +2 -2
  294. package/src/lib/cesium-map/tools/geojson/point.geojson.ts +29 -29
  295. package/src/lib/cesium-map/tools/geojson/polygon.geojson.ts +24 -24
  296. package/src/lib/cesium-map/tools/geojson/rectangle.geojson.ts +21 -21
  297. package/src/lib/cesium-map/tools/inspector.tool.tsx +15 -15
  298. package/src/lib/cesium-map/tools/scale-tracker.tool.css +16 -16
  299. package/src/lib/cesium-map/tools/scale-tracker.tool.tsx +192 -192
  300. package/src/lib/cesium-map/tools/terranian-height.tool.tsx +171 -171
  301. package/src/lib/cssbaseline/cssbaseline.tsx +19 -19
  302. package/src/lib/cssbaseline/index.ts +4 -4
  303. package/src/lib/date-picker/date-picker.css +9 -9
  304. package/src/lib/date-picker/date-picker.stories.tsx +130 -130
  305. package/src/lib/date-picker/date-picker.tsx +90 -90
  306. package/src/lib/date-picker/index.ts +1 -1
  307. package/src/lib/date-range-picker/date-range-picker.css +9 -9
  308. package/src/lib/date-range-picker/date-range-picker.form-control.css +3 -3
  309. package/src/lib/date-range-picker/date-range-picker.form-control.spec.tsx +58 -58
  310. package/src/lib/date-range-picker/date-range-picker.form-control.tsx +150 -150
  311. package/src/lib/date-range-picker/date-range-picker.stories.tsx +207 -207
  312. package/src/lib/date-range-picker/date-range-picker.tsx +156 -156
  313. package/src/lib/date-range-picker/index.ts +2 -2
  314. package/src/lib/file-picker/file-picker.css +63 -63
  315. package/src/lib/file-picker/file-picker.stories.tsx +447 -447
  316. package/src/lib/file-picker/file-picker.tsx +180 -180
  317. package/src/lib/file-picker/fs-map.json +1556 -1556
  318. package/src/lib/file-picker/index.ts +2 -2
  319. package/src/lib/file-picker/localization.ts +164 -164
  320. package/src/lib/index.ts +13 -13
  321. package/src/lib/map-filter-container/container-map.css +5 -5
  322. package/src/lib/map-filter-container/container-map.tsx +48 -48
  323. package/src/lib/map-filter-container/index.ts +1 -1
  324. package/src/lib/map-filter-container/map-filter-container.tsx +91 -91
  325. package/src/lib/map-filter-container/polygon-selection-ui.spec.tsx +119 -119
  326. package/src/lib/map-filter-container/polygon-selection-ui.tsx +111 -111
  327. package/src/lib/map-filter-container/stories/Map.stories.tsx +76 -76
  328. package/src/lib/models/defaults.ts +32 -32
  329. package/src/lib/models/enums.ts +16 -16
  330. package/src/lib/models/index.ts +1 -1
  331. package/src/lib/ol-map/feature.tsx +23 -23
  332. package/src/lib/ol-map/index.ts +6 -6
  333. package/src/lib/ol-map/interactions/draw.tsx +56 -56
  334. package/src/lib/ol-map/interactions/index.ts +1 -1
  335. package/src/lib/ol-map/layers/index.ts +3 -3
  336. package/src/lib/ol-map/layers/tile-layer.tsx +36 -36
  337. package/src/lib/ol-map/layers/vector-layer.tsx +32 -32
  338. package/src/lib/ol-map/layers/vector-tile-layer.tsx +56 -56
  339. package/src/lib/ol-map/map.css +17 -17
  340. package/src/lib/ol-map/map.tsx +137 -137
  341. package/src/lib/ol-map/source/index.ts +6 -6
  342. package/src/lib/ol-map/source/mvt.tsx +46 -46
  343. package/src/lib/ol-map/source/osm.tsx +13 -13
  344. package/src/lib/ol-map/source/stories/mvt.stories.tsx +68 -68
  345. package/src/lib/ol-map/source/stories/vector-source.stories.tsx +78 -78
  346. package/src/lib/ol-map/source/stories/wms.stories.tsx +51 -51
  347. package/src/lib/ol-map/source/stories/wmts.stories.tsx +72 -72
  348. package/src/lib/ol-map/source/stories/xyz.stories.tsx +53 -53
  349. package/src/lib/ol-map/source/vector-source.tsx +30 -30
  350. package/src/lib/ol-map/source/wms.tsx +40 -40
  351. package/src/lib/ol-map/source/wmts.tsx +82 -82
  352. package/src/lib/ol-map/source/xyz.tsx +33 -33
  353. package/src/lib/ol-map/stories/map.stories.tsx +60 -60
  354. package/src/lib/ol-map/style.ts +24 -24
  355. package/src/lib/popover/index.ts +1 -1
  356. package/src/lib/popover/popover.tsx +7 -7
  357. package/src/lib/smart-table/__mock-data__/smartTableMocks.ts +22 -22
  358. package/src/lib/smart-table/index.ts +2 -2
  359. package/src/lib/smart-table/smart-table-head.spec.tsx +116 -116
  360. package/src/lib/smart-table/smart-table-head.tsx +47 -47
  361. package/src/lib/smart-table/smart-table-row.spec.tsx +109 -109
  362. package/src/lib/smart-table/smart-table-row.tsx +78 -78
  363. package/src/lib/smart-table/smart-table-types.ts +10 -10
  364. package/src/lib/smart-table/smart-table.spec.tsx +116 -116
  365. package/src/lib/smart-table/smart-table.tsx +115 -115
  366. package/src/lib/smart-table/stories/SmartTable.stories.tsx +114 -114
  367. package/src/lib/theme/index.ts +1 -1
  368. package/src/lib/theme/theme.ts +123 -123
  369. package/src/lib/utils/map.ts +19 -19
  370. package/src/lib/utils/projections.ts +7 -7
  371. package/src/lib/utils/story.ts +11 -11
  372. package/src/react-app-env.d.ts +1 -1
  373. package/src/setupTests.ts +14 -14
  374. package/tsbuildconfig.json +37 -37
  375. package/tsconfig.json +26 -26
@@ -1,137 +1,137 @@
1
- import React, {
2
- useRef,
3
- useEffect,
4
- createContext,
5
- useContext,
6
- useState,
7
- } from 'react';
8
- import { Map as OlMap, View } from 'ol';
9
- import './map.css';
10
- import 'ol/ol.css';
11
- import { format, Coordinate, CoordinateFormat } from 'ol/coordinate';
12
- import { defaults as defaultControls, FullScreen } from 'ol/control';
13
- import MousePosition from 'ol/control/MousePosition';
14
- import Collection from 'ol/Collection';
15
- import Control from 'ol/control/Control';
16
- import { transform } from 'ol/proj';
17
- import {
18
- Proj,
19
- COORDINATES_WGS_FRACTION_DIGITS,
20
- COORDINATES_MERCATOR_FRACTION_DIGITS,
21
- } from '../utils/projections';
22
-
23
- export interface MapProps {
24
- allowFullScreen?: boolean;
25
- showMousePosition?: boolean;
26
- projection?: Proj;
27
- center?: [number, number];
28
- zoom?: number;
29
- }
30
-
31
- const mapContext = createContext<OlMap | null>(null);
32
- const MapProvider = mapContext.Provider;
33
-
34
- const CENTER_LAT = 35,
35
- CENTER_LON = 32,
36
- DEFAULT_ZOOM = 10;
37
-
38
- const getDefaultCenter = (projection: string | undefined): Coordinate => {
39
- return projection !== undefined && projection !== Proj.WGS84
40
- ? transform([CENTER_LAT, CENTER_LON], Proj.WGS84, projection)
41
- : [CENTER_LAT, CENTER_LON];
42
- };
43
-
44
- const getCoordinateFormatString = (projection?: Proj): CoordinateFormat => {
45
- switch (projection) {
46
- case Proj.WEB_MERCATOR:
47
- return (coord?: Coordinate): string =>
48
- format(
49
- coord as Coordinate,
50
- 'Mercator: {y}m, {x}m',
51
- COORDINATES_MERCATOR_FRACTION_DIGITS
52
- );
53
- case Proj.WGS84:
54
- return (coord?: Coordinate): string =>
55
- format(
56
- coord as Coordinate,
57
- 'WGS84: {y}°N {x}°E',
58
- COORDINATES_WGS_FRACTION_DIGITS
59
- );
60
- default:
61
- return (coord?: Coordinate): string => '';
62
- }
63
- };
64
-
65
- export const useMap = (): OlMap => {
66
- const map = useContext(mapContext);
67
-
68
- if (map === null) {
69
- throw new Error('map context is null, please check the provider');
70
- }
71
-
72
- return map;
73
- };
74
-
75
- export const Map: React.FC<MapProps> = (props) => {
76
- const mapElementRef = useRef<HTMLDivElement>(null);
77
- const { allowFullScreen, showMousePosition, projection } = props;
78
-
79
- const [map] = useState(
80
- new OlMap({
81
- view: new View({
82
- projection: projection ?? Proj.WGS84,
83
- }),
84
- controls: defaultControls(),
85
- })
86
- );
87
-
88
- useEffect(() => {
89
- map.getView().setCenter(props.center ?? getDefaultCenter(props.projection));
90
- }, [map, props.center, props.projection]);
91
-
92
- useEffect(() => {
93
- map.getView().setZoom(props.zoom ?? DEFAULT_ZOOM);
94
- }, [map, props.zoom, props.projection]);
95
-
96
- // eslint-disable-next-line
97
- const removeControl = (ctrType: any, mapInst: OlMap): void => {
98
- const controls: Collection<Control> = mapInst.getControls();
99
- controls.forEach((control: Control) => {
100
- if (control instanceof ctrType) {
101
- mapInst.removeControl(control);
102
- }
103
- });
104
- };
105
-
106
- useEffect(() => {
107
- map.setTarget(mapElementRef.current as HTMLElement);
108
-
109
- if (allowFullScreen !== undefined && allowFullScreen) {
110
- map.addControl(new FullScreen());
111
- } else {
112
- removeControl(FullScreen, map);
113
- }
114
- }, [map, allowFullScreen]);
115
-
116
- useEffect(() => {
117
- if (showMousePosition !== undefined && showMousePosition) {
118
- removeControl(MousePosition, map);
119
- map.addControl(
120
- new MousePosition({
121
- coordinateFormat: getCoordinateFormatString(projection ?? Proj.WGS84),
122
- projection: projection ?? Proj.WGS84,
123
- undefinedHTML: '&nbsp;',
124
- })
125
- );
126
- } else {
127
- removeControl(MousePosition, map);
128
- }
129
- }, [map, showMousePosition, projection]);
130
-
131
- return (
132
- <MapProvider value={map}>
133
- <div className="map" ref={mapElementRef}></div>
134
- {props.children}
135
- </MapProvider>
136
- );
137
- };
1
+ import React, {
2
+ useRef,
3
+ useEffect,
4
+ createContext,
5
+ useContext,
6
+ useState,
7
+ } from 'react';
8
+ import { Map as OlMap, View } from 'ol';
9
+ import './map.css';
10
+ import 'ol/ol.css';
11
+ import { format, Coordinate, CoordinateFormat } from 'ol/coordinate';
12
+ import { defaults as defaultControls, FullScreen } from 'ol/control';
13
+ import MousePosition from 'ol/control/MousePosition';
14
+ import Collection from 'ol/Collection';
15
+ import Control from 'ol/control/Control';
16
+ import { transform } from 'ol/proj';
17
+ import {
18
+ Proj,
19
+ COORDINATES_WGS_FRACTION_DIGITS,
20
+ COORDINATES_MERCATOR_FRACTION_DIGITS,
21
+ } from '../utils/projections';
22
+
23
+ export interface MapProps {
24
+ allowFullScreen?: boolean;
25
+ showMousePosition?: boolean;
26
+ projection?: Proj;
27
+ center?: [number, number];
28
+ zoom?: number;
29
+ }
30
+
31
+ const mapContext = createContext<OlMap | null>(null);
32
+ const MapProvider = mapContext.Provider;
33
+
34
+ const CENTER_LAT = 35,
35
+ CENTER_LON = 32,
36
+ DEFAULT_ZOOM = 10;
37
+
38
+ const getDefaultCenter = (projection: string | undefined): Coordinate => {
39
+ return projection !== undefined && projection !== Proj.WGS84
40
+ ? transform([CENTER_LAT, CENTER_LON], Proj.WGS84, projection)
41
+ : [CENTER_LAT, CENTER_LON];
42
+ };
43
+
44
+ const getCoordinateFormatString = (projection?: Proj): CoordinateFormat => {
45
+ switch (projection) {
46
+ case Proj.WEB_MERCATOR:
47
+ return (coord?: Coordinate): string =>
48
+ format(
49
+ coord as Coordinate,
50
+ 'Mercator: {y}m, {x}m',
51
+ COORDINATES_MERCATOR_FRACTION_DIGITS
52
+ );
53
+ case Proj.WGS84:
54
+ return (coord?: Coordinate): string =>
55
+ format(
56
+ coord as Coordinate,
57
+ 'WGS84: {y}°N {x}°E',
58
+ COORDINATES_WGS_FRACTION_DIGITS
59
+ );
60
+ default:
61
+ return (coord?: Coordinate): string => '';
62
+ }
63
+ };
64
+
65
+ export const useMap = (): OlMap => {
66
+ const map = useContext(mapContext);
67
+
68
+ if (map === null) {
69
+ throw new Error('map context is null, please check the provider');
70
+ }
71
+
72
+ return map;
73
+ };
74
+
75
+ export const Map: React.FC<MapProps> = (props) => {
76
+ const mapElementRef = useRef<HTMLDivElement>(null);
77
+ const { allowFullScreen, showMousePosition, projection } = props;
78
+
79
+ const [map] = useState(
80
+ new OlMap({
81
+ view: new View({
82
+ projection: projection ?? Proj.WGS84,
83
+ }),
84
+ controls: defaultControls(),
85
+ })
86
+ );
87
+
88
+ useEffect(() => {
89
+ map.getView().setCenter(props.center ?? getDefaultCenter(props.projection));
90
+ }, [map, props.center, props.projection]);
91
+
92
+ useEffect(() => {
93
+ map.getView().setZoom(props.zoom ?? DEFAULT_ZOOM);
94
+ }, [map, props.zoom, props.projection]);
95
+
96
+ // eslint-disable-next-line
97
+ const removeControl = (ctrType: any, mapInst: OlMap): void => {
98
+ const controls: Collection<Control> = mapInst.getControls();
99
+ controls.forEach((control: Control) => {
100
+ if (control instanceof ctrType) {
101
+ mapInst.removeControl(control);
102
+ }
103
+ });
104
+ };
105
+
106
+ useEffect(() => {
107
+ map.setTarget(mapElementRef.current as HTMLElement);
108
+
109
+ if (allowFullScreen !== undefined && allowFullScreen) {
110
+ map.addControl(new FullScreen());
111
+ } else {
112
+ removeControl(FullScreen, map);
113
+ }
114
+ }, [map, allowFullScreen]);
115
+
116
+ useEffect(() => {
117
+ if (showMousePosition !== undefined && showMousePosition) {
118
+ removeControl(MousePosition, map);
119
+ map.addControl(
120
+ new MousePosition({
121
+ coordinateFormat: getCoordinateFormatString(projection ?? Proj.WGS84),
122
+ projection: projection ?? Proj.WGS84,
123
+ undefinedHTML: '&nbsp;',
124
+ })
125
+ );
126
+ } else {
127
+ removeControl(MousePosition, map);
128
+ }
129
+ }, [map, showMousePosition, projection]);
130
+
131
+ return (
132
+ <MapProvider value={map}>
133
+ <div className="map" ref={mapElementRef}></div>
134
+ {props.children}
135
+ </MapProvider>
136
+ );
137
+ };
@@ -1,6 +1,6 @@
1
- export * from './osm';
2
- export * from './vector-source';
3
- export * from './wmts';
4
- export * from './wms';
5
- export * from './xyz';
6
- export * from './mvt';
1
+ export * from './osm';
2
+ export * from './vector-source';
3
+ export * from './wmts';
4
+ export * from './wms';
5
+ export * from './xyz';
6
+ export * from './mvt';
@@ -1,46 +1,46 @@
1
- import React, { useEffect, createContext, useContext } from 'react';
2
- import VectorTileSource, { Options } from 'ol/source/VectorTile';
3
- import { MVT } from 'ol/format';
4
- import { useVectorTileLayer } from '../layers/vector-tile-layer';
5
-
6
- const vectorTileSourceContext = createContext<VectorTileSource | null>(null);
7
-
8
- export const useVectorTileSource = (): VectorTileSource => {
9
- const source = useContext(vectorTileSourceContext);
10
-
11
- if (source === null) {
12
- throw new Error(
13
- 'vector tile source context is null, please check the provider'
14
- );
15
- }
16
-
17
- return source;
18
- };
19
-
20
- export interface MVTSourceProps {
21
- options: Options;
22
- }
23
-
24
- export interface MVTOptionParams {
25
- url: string;
26
- }
27
-
28
- export const getMVTOptions = (optionParams: MVTOptionParams): Options => {
29
- const { url } = optionParams;
30
- const mvtOptions: Options = {
31
- url,
32
- format: new MVT(),
33
- };
34
-
35
- return mvtOptions;
36
- };
37
-
38
- export const MVTSource: React.FC<MVTSourceProps> = ({ children, options }) => {
39
- const vectorTileLayer = useVectorTileLayer();
40
-
41
- useEffect((): void => {
42
- vectorTileLayer.setSource(new VectorTileSource(options));
43
- }, [options, vectorTileLayer]);
44
-
45
- return null;
46
- };
1
+ import React, { useEffect, createContext, useContext } from 'react';
2
+ import VectorTileSource, { Options } from 'ol/source/VectorTile';
3
+ import { MVT } from 'ol/format';
4
+ import { useVectorTileLayer } from '../layers/vector-tile-layer';
5
+
6
+ const vectorTileSourceContext = createContext<VectorTileSource | null>(null);
7
+
8
+ export const useVectorTileSource = (): VectorTileSource => {
9
+ const source = useContext(vectorTileSourceContext);
10
+
11
+ if (source === null) {
12
+ throw new Error(
13
+ 'vector tile source context is null, please check the provider'
14
+ );
15
+ }
16
+
17
+ return source;
18
+ };
19
+
20
+ export interface MVTSourceProps {
21
+ options: Options;
22
+ }
23
+
24
+ export interface MVTOptionParams {
25
+ url: string;
26
+ }
27
+
28
+ export const getMVTOptions = (optionParams: MVTOptionParams): Options => {
29
+ const { url } = optionParams;
30
+ const mvtOptions: Options = {
31
+ url,
32
+ format: new MVT(),
33
+ };
34
+
35
+ return mvtOptions;
36
+ };
37
+
38
+ export const MVTSource: React.FC<MVTSourceProps> = ({ children, options }) => {
39
+ const vectorTileLayer = useVectorTileLayer();
40
+
41
+ useEffect((): void => {
42
+ vectorTileLayer.setSource(new VectorTileSource(options));
43
+ }, [options, vectorTileLayer]);
44
+
45
+ return null;
46
+ };
@@ -1,13 +1,13 @@
1
- import React, { useEffect } from 'react';
2
- import { OSM } from 'ol/source';
3
- import { useTileLayer } from '../layers/tile-layer';
4
-
5
- export const TileOsm: React.FC = (props) => {
6
- const tileLayer = useTileLayer();
7
-
8
- useEffect(() => {
9
- tileLayer.setSource(new OSM());
10
- }, [tileLayer]);
11
-
12
- return null;
13
- };
1
+ import React, { useEffect } from 'react';
2
+ import { OSM } from 'ol/source';
3
+ import { useTileLayer } from '../layers/tile-layer';
4
+
5
+ export const TileOsm: React.FC = (props) => {
6
+ const tileLayer = useTileLayer();
7
+
8
+ useEffect(() => {
9
+ tileLayer.setSource(new OSM());
10
+ }, [tileLayer]);
11
+
12
+ return null;
13
+ };
@@ -1,68 +1,68 @@
1
- import React from 'react';
2
- import { Style, Fill, Circle, Stroke } from 'ol/style';
3
- import { Proj } from '../../../utils/projections';
4
- import { VectorTileLayer } from '../../layers/vector-tile-layer';
5
- import { Map } from '../../map';
6
- import { TileLayer } from '../../layers';
7
- import { MVTSource, getMVTOptions } from '../mvt';
8
- import { TileOsm } from '..';
9
-
10
- export default {
11
- title: 'Map/Map Tiles/MVT',
12
- component: VectorTileLayer,
13
- subcomponents: MVTSource,
14
- parameters: {
15
- layout: 'fullscreen',
16
- },
17
- };
18
-
19
- const mapDivStyle = {
20
- height: '100%',
21
- width: '100%',
22
- position: 'absolute' as const,
23
- };
24
-
25
- export const Basic = (): JSX.Element => (
26
- <div style={mapDivStyle}>
27
- <Map projection={Proj.WEB_MERCATOR}>
28
- <TileLayer>
29
- <TileOsm />
30
- </TileLayer>
31
- <VectorTileLayer>
32
- <MVTSource
33
- options={getMVTOptions({
34
- url: 'http://localhost:9090/maps/osm/{z}/{x}/{y}.pbf',
35
- })}
36
- />
37
- </VectorTileLayer>
38
- </Map>
39
- </div>
40
- );
41
-
42
- export const Styled = (): JSX.Element => (
43
- <div style={mapDivStyle}>
44
- <Map projection={Proj.WEB_MERCATOR}>
45
- <TileLayer>
46
- <TileOsm />
47
- </TileLayer>
48
- <VectorTileLayer
49
- style={
50
- new Style({
51
- fill: new Fill({ color: 'red' }),
52
- image: new Circle({
53
- fill: new Fill({ color: 'orange' }),
54
- radius: 1,
55
- }),
56
- stroke: new Stroke({ color: 'blue' }),
57
- })
58
- }
59
- >
60
- <MVTSource
61
- options={getMVTOptions({
62
- url: 'http://localhost:9090/maps/osm/{z}/{x}/{y}.pbf',
63
- })}
64
- />
65
- </VectorTileLayer>
66
- </Map>
67
- </div>
68
- );
1
+ import React from 'react';
2
+ import { Style, Fill, Circle, Stroke } from 'ol/style';
3
+ import { Proj } from '../../../utils/projections';
4
+ import { VectorTileLayer } from '../../layers/vector-tile-layer';
5
+ import { Map } from '../../map';
6
+ import { TileLayer } from '../../layers';
7
+ import { MVTSource, getMVTOptions } from '../mvt';
8
+ import { TileOsm } from '..';
9
+
10
+ export default {
11
+ title: 'Map/Map Tiles/MVT',
12
+ component: VectorTileLayer,
13
+ subcomponents: MVTSource,
14
+ parameters: {
15
+ layout: 'fullscreen',
16
+ },
17
+ };
18
+
19
+ const mapDivStyle = {
20
+ height: '100%',
21
+ width: '100%',
22
+ position: 'absolute' as const,
23
+ };
24
+
25
+ export const Basic = (): JSX.Element => (
26
+ <div style={mapDivStyle}>
27
+ <Map projection={Proj.WEB_MERCATOR}>
28
+ <TileLayer>
29
+ <TileOsm />
30
+ </TileLayer>
31
+ <VectorTileLayer>
32
+ <MVTSource
33
+ options={getMVTOptions({
34
+ url: 'http://localhost:9090/maps/osm/{z}/{x}/{y}.pbf',
35
+ })}
36
+ />
37
+ </VectorTileLayer>
38
+ </Map>
39
+ </div>
40
+ );
41
+
42
+ export const Styled = (): JSX.Element => (
43
+ <div style={mapDivStyle}>
44
+ <Map projection={Proj.WEB_MERCATOR}>
45
+ <TileLayer>
46
+ <TileOsm />
47
+ </TileLayer>
48
+ <VectorTileLayer
49
+ style={
50
+ new Style({
51
+ fill: new Fill({ color: 'red' }),
52
+ image: new Circle({
53
+ fill: new Fill({ color: 'orange' }),
54
+ radius: 1,
55
+ }),
56
+ stroke: new Stroke({ color: 'blue' }),
57
+ })
58
+ }
59
+ >
60
+ <MVTSource
61
+ options={getMVTOptions({
62
+ url: 'http://localhost:9090/maps/osm/{z}/{x}/{y}.pbf',
63
+ })}
64
+ />
65
+ </VectorTileLayer>
66
+ </Map>
67
+ </div>
68
+ );