@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,171 +1,171 @@
1
- import React, { useLayoutEffect, useState } from 'react';
2
- import { Rectangle, Color } from 'cesium';
3
- import { Story, Meta } from '@storybook/react/types-6-0';
4
- import bbox from '@turf/bbox';
5
- import { CesiumMap, CesiumMapProps, useCesiumMap } from '../map';
6
- import { CesiumSceneMode } from '../map.types';
7
- import { IRasterLayer, LayerType } from '../layers-manager';
8
- import { IBaseMaps } from '../settings/settings';
9
- import { CesiumXYZLayer } from './xyz.layer';
10
-
11
- export default {
12
- title: 'Cesium Map/Layers/LayersRect',
13
- component: CesiumMap,
14
- parameters: {
15
- layout: 'fullscreen',
16
- },
17
- } as Meta;
18
-
19
- const mapDivStyle = {
20
- height: '90%',
21
- width: '100%',
22
- position: 'absolute' as const,
23
- };
24
-
25
- const BASE_MAPS = {
26
- maps: [
27
- {
28
- id: '3rd',
29
- title: '3rd Map Title',
30
- isCurrent: true,
31
- thumbnail:
32
- 'https://nsw.digitaltwin.terria.io/build/d8b97d3e38a0d43e5a06dea9aae17a3e.png',
33
- baseRasteLayers: [
34
- {
35
- id: 'VECTOR_TILES',
36
- type: 'XYZ_LAYER',
37
- opacity: 1,
38
- zIndex: 0,
39
- options: {
40
- url:
41
- 'https://{s}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey=6170aad10dfd42a38d4d8c709a536f38',
42
- layers: '',
43
- credit: 'thunderforest',
44
- },
45
- },
46
- {
47
- id: 'VECTOR_TILES_GPS',
48
- type: 'XYZ_LAYER',
49
- opacity: 1,
50
- zIndex: 1,
51
- options: {
52
- url: 'https://gps.tile.openstreetmap.org/lines/{z}/{x}/{y}.png',
53
- layers: '',
54
- credit: 'openstreetmap',
55
- },
56
- },
57
- {
58
- id: 'WMTS_POPULATION_TILES',
59
- type: 'WMTS_LAYER',
60
- opacity: 0.4,
61
- zIndex: 2,
62
- options: {
63
- url:
64
- 'https://services.arcgisonline.com/arcgis/rest/services/Demographics/USA_Population_Density/MapServer/WMTS/',
65
- layer: 'USGSShadedReliefOnly',
66
- style: 'default',
67
- format: 'image/jpeg',
68
- tileMatrixSetID: 'default028mm',
69
- maximumLevel: 19,
70
- credit: 'U. S. Geological Survey',
71
- },
72
- },
73
- ],
74
- baseVectorLayers: [],
75
- },
76
- ],
77
- };
78
-
79
- const mapViewProps: CesiumMapProps = {
80
- center: [34.811, 31.908],
81
- zoom: 14,
82
- imageryProvider: false,
83
- sceneModes: [CesiumSceneMode.SCENE3D, CesiumSceneMode.COLUMBUS_VIEW],
84
- baseMaps: BASE_MAPS as IBaseMaps,
85
- };
86
-
87
- const optionsRectXYZ = {
88
- url:
89
- 'https://tiles.openaerialmap.org/5a831b4a2553e6000ce5ac80/0/d02ddc76-9c2e-4994-97d4-a623eb371456/{z}/{x}/{y}.png',
90
- footprint: {
91
- type: 'Polygon',
92
- coordinates: [
93
- [
94
- [34.8043847068541, 31.9023297972932],
95
- [34.8142791322292, 31.9023297972932],
96
- [34.8142791322292, 31.9108796531516],
97
- [34.8043847068541, 31.9108796531516],
98
- [34.8043847068541, 31.9023297972932],
99
- ],
100
- ],
101
- },
102
- };
103
-
104
- // Use Turf.js/bbox to calculate the bounding box from the supplied footprint.
105
-
106
- const childLayerRect = Rectangle.fromDegrees(...bbox(optionsRectXYZ.footprint));
107
-
108
- export const MapWithXYZLayersAndRect: Story = () => (
109
- <div style={mapDivStyle}>
110
- <CesiumMap {...mapViewProps}>
111
- <CesiumXYZLayer rectangle={childLayerRect} options={optionsRectXYZ} />
112
- </CesiumMap>
113
- </div>
114
- );
115
-
116
- MapWithXYZLayersAndRect.storyName = 'XYZ child layer with rect';
117
-
118
- export const MapWithSettings: Story = () => {
119
- const layer = {
120
- id: '2_raster_ext',
121
- type: 'XYZ_LAYER' as LayerType,
122
- opacity: 1,
123
- zIndex: 0,
124
- show: true,
125
- options: {
126
- url:
127
- 'https://tiles.openaerialmap.org/5a9f90c42553e6000ce5ad6c/0/eee1a570-128e-4947-9ffa-1e69c1efab7c/{z}/{x}/{y}.png',
128
- },
129
- };
130
-
131
- return (
132
- <div style={mapDivStyle}>
133
- <CesiumMap {...mapViewProps}>
134
- <LayerViewer layer={layer as IRasterLayer} />
135
- </CesiumMap>
136
- </div>
137
- );
138
- };
139
- MapWithSettings.storyName = 'Layer manager rect';
140
-
141
- interface ILayerViewerProps {
142
- layer: IRasterLayer;
143
- }
144
-
145
- const LayerViewer: React.FC<ILayerViewerProps> = (props) => {
146
- const mapViewer = useCesiumMap();
147
- const { layer } = props;
148
-
149
- // Mockin footprint data on layer meta
150
- const layerFootprint = {
151
- type: 'Polygon',
152
- coordinates: [
153
- [
154
- [34.8099445223518, 31.9061345394902],
155
- [34.8200994167574, 31.9061345394902],
156
- [34.8200994167574, 31.9106311613979],
157
- [34.8099445223518, 31.9106311613979],
158
- [34.8099445223518, 31.9061345394902],
159
- ],
160
- ],
161
- };
162
-
163
- useLayoutEffect(() => {
164
- const layerManagerRect = Rectangle.fromDegrees(...bbox(layerFootprint));
165
-
166
- layer.options.rectangle = layerManagerRect;
167
-
168
- mapViewer.layersManager?.addRasterLayer(layer, 0, '');
169
- }, [mapViewer, layerFootprint, layer]);
170
- return <></>;
171
- };
1
+ import React, { useLayoutEffect, useState } from 'react';
2
+ import { Rectangle, Color } from 'cesium';
3
+ import { Story, Meta } from '@storybook/react/types-6-0';
4
+ import bbox from '@turf/bbox';
5
+ import { CesiumMap, CesiumMapProps, useCesiumMap } from '../map';
6
+ import { CesiumSceneMode } from '../map.types';
7
+ import { IRasterLayer, LayerType } from '../layers-manager';
8
+ import { IBaseMaps } from '../settings/settings';
9
+ import { CesiumXYZLayer } from './xyz.layer';
10
+
11
+ export default {
12
+ title: 'Cesium Map/Layers/LayersRect',
13
+ component: CesiumMap,
14
+ parameters: {
15
+ layout: 'fullscreen',
16
+ },
17
+ } as Meta;
18
+
19
+ const mapDivStyle = {
20
+ height: '90%',
21
+ width: '100%',
22
+ position: 'absolute' as const,
23
+ };
24
+
25
+ const BASE_MAPS = {
26
+ maps: [
27
+ {
28
+ id: '3rd',
29
+ title: '3rd Map Title',
30
+ isCurrent: true,
31
+ thumbnail:
32
+ 'https://nsw.digitaltwin.terria.io/build/d8b97d3e38a0d43e5a06dea9aae17a3e.png',
33
+ baseRasteLayers: [
34
+ {
35
+ id: 'VECTOR_TILES',
36
+ type: 'XYZ_LAYER',
37
+ opacity: 1,
38
+ zIndex: 0,
39
+ options: {
40
+ url:
41
+ 'https://{s}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey=6170aad10dfd42a38d4d8c709a536f38',
42
+ layers: '',
43
+ credit: 'thunderforest',
44
+ },
45
+ },
46
+ {
47
+ id: 'VECTOR_TILES_GPS',
48
+ type: 'XYZ_LAYER',
49
+ opacity: 1,
50
+ zIndex: 1,
51
+ options: {
52
+ url: 'https://gps.tile.openstreetmap.org/lines/{z}/{x}/{y}.png',
53
+ layers: '',
54
+ credit: 'openstreetmap',
55
+ },
56
+ },
57
+ {
58
+ id: 'WMTS_POPULATION_TILES',
59
+ type: 'WMTS_LAYER',
60
+ opacity: 0.4,
61
+ zIndex: 2,
62
+ options: {
63
+ url:
64
+ 'https://services.arcgisonline.com/arcgis/rest/services/Demographics/USA_Population_Density/MapServer/WMTS/',
65
+ layer: 'USGSShadedReliefOnly',
66
+ style: 'default',
67
+ format: 'image/jpeg',
68
+ tileMatrixSetID: 'default028mm',
69
+ maximumLevel: 19,
70
+ credit: 'U. S. Geological Survey',
71
+ },
72
+ },
73
+ ],
74
+ baseVectorLayers: [],
75
+ },
76
+ ],
77
+ };
78
+
79
+ const mapViewProps: CesiumMapProps = {
80
+ center: [34.811, 31.908],
81
+ zoom: 14,
82
+ imageryProvider: false,
83
+ sceneModes: [CesiumSceneMode.SCENE3D, CesiumSceneMode.COLUMBUS_VIEW],
84
+ baseMaps: BASE_MAPS as IBaseMaps,
85
+ };
86
+
87
+ const optionsRectXYZ = {
88
+ url:
89
+ 'https://tiles.openaerialmap.org/5a831b4a2553e6000ce5ac80/0/d02ddc76-9c2e-4994-97d4-a623eb371456/{z}/{x}/{y}.png',
90
+ footprint: {
91
+ type: 'Polygon',
92
+ coordinates: [
93
+ [
94
+ [34.8043847068541, 31.9023297972932],
95
+ [34.8142791322292, 31.9023297972932],
96
+ [34.8142791322292, 31.9108796531516],
97
+ [34.8043847068541, 31.9108796531516],
98
+ [34.8043847068541, 31.9023297972932],
99
+ ],
100
+ ],
101
+ },
102
+ };
103
+
104
+ // Use Turf.js/bbox to calculate the bounding box from the supplied footprint.
105
+
106
+ const childLayerRect = Rectangle.fromDegrees(...bbox(optionsRectXYZ.footprint));
107
+
108
+ export const MapWithXYZLayersAndRect: Story = () => (
109
+ <div style={mapDivStyle}>
110
+ <CesiumMap {...mapViewProps}>
111
+ <CesiumXYZLayer rectangle={childLayerRect} options={optionsRectXYZ} />
112
+ </CesiumMap>
113
+ </div>
114
+ );
115
+
116
+ MapWithXYZLayersAndRect.storyName = 'XYZ child layer with rect';
117
+
118
+ export const MapWithSettings: Story = () => {
119
+ const layer = {
120
+ id: '2_raster_ext',
121
+ type: 'XYZ_LAYER' as LayerType,
122
+ opacity: 1,
123
+ zIndex: 0,
124
+ show: true,
125
+ options: {
126
+ url:
127
+ 'https://tiles.openaerialmap.org/5a9f90c42553e6000ce5ad6c/0/eee1a570-128e-4947-9ffa-1e69c1efab7c/{z}/{x}/{y}.png',
128
+ },
129
+ };
130
+
131
+ return (
132
+ <div style={mapDivStyle}>
133
+ <CesiumMap {...mapViewProps}>
134
+ <LayerViewer layer={layer as IRasterLayer} />
135
+ </CesiumMap>
136
+ </div>
137
+ );
138
+ };
139
+ MapWithSettings.storyName = 'Layer manager rect';
140
+
141
+ interface ILayerViewerProps {
142
+ layer: IRasterLayer;
143
+ }
144
+
145
+ const LayerViewer: React.FC<ILayerViewerProps> = (props) => {
146
+ const mapViewer = useCesiumMap();
147
+ const { layer } = props;
148
+
149
+ // Mockin footprint data on layer meta
150
+ const layerFootprint = {
151
+ type: 'Polygon',
152
+ coordinates: [
153
+ [
154
+ [34.8099445223518, 31.9061345394902],
155
+ [34.8200994167574, 31.9061345394902],
156
+ [34.8200994167574, 31.9106311613979],
157
+ [34.8099445223518, 31.9106311613979],
158
+ [34.8099445223518, 31.9061345394902],
159
+ ],
160
+ ],
161
+ };
162
+
163
+ useLayoutEffect(() => {
164
+ const layerManagerRect = Rectangle.fromDegrees(...bbox(layerFootprint));
165
+
166
+ layer.options.rectangle = layerManagerRect;
167
+
168
+ mapViewer.layersManager?.addRasterLayer(layer, 0, '');
169
+ }, [mapViewer, layerFootprint, layer]);
170
+ return <></>;
171
+ };
@@ -1,40 +1,40 @@
1
- import React, { useState } from 'react';
2
- import { Story, Meta } from '@storybook/react/types-6-0';
3
- import { CesiumMap } from '../map';
4
- import { CesiumSceneMode } from '../map.types';
5
- import { CesiumOSMLayer } from './osm.layer';
6
- import { CesiumXYZLayer } from './xyz.layer';
7
-
8
- export default {
9
- title: 'Cesium Map/Layers/OSMLayer',
10
- component: CesiumOSMLayer,
11
- parameters: {
12
- layout: 'fullscreen',
13
- },
14
- } as Meta;
15
-
16
- const mapDivStyle = {
17
- height: '100%',
18
- width: '100%',
19
- position: 'absolute' as const,
20
- };
21
-
22
- const optionsOSM = {
23
- url: 'https://a.tile.openstreetmap.org/',
24
- };
25
- const optionsXYZ = {
26
- url: `https://tiles.openaerialmap.org/5b25fa612b6a08001185f80f/0/5b25fa612b6a08001185f810/{z}/{x}/{y}.png`,
27
- };
28
-
29
- export const MapWithOSMLayers: Story = (args) => {
30
- const [center] = useState<[number, number]>([34.82, 32.04]);
31
- return (
32
- <div style={mapDivStyle}>
33
- <CesiumMap center={center} sceneMode={CesiumSceneMode.SCENE2D} zoom={14}>
34
- <CesiumOSMLayer options={optionsOSM} />
35
- <CesiumXYZLayer options={optionsXYZ} />
36
- </CesiumMap>
37
- </div>
38
- );
39
- };
40
- MapWithOSMLayers.storyName = 'OSM layer and XYZ';
1
+ import React, { useState } from 'react';
2
+ import { Story, Meta } from '@storybook/react/types-6-0';
3
+ import { CesiumMap } from '../map';
4
+ import { CesiumSceneMode } from '../map.types';
5
+ import { CesiumOSMLayer } from './osm.layer';
6
+ import { CesiumXYZLayer } from './xyz.layer';
7
+
8
+ export default {
9
+ title: 'Cesium Map/Layers/OSMLayer',
10
+ component: CesiumOSMLayer,
11
+ parameters: {
12
+ layout: 'fullscreen',
13
+ },
14
+ } as Meta;
15
+
16
+ const mapDivStyle = {
17
+ height: '100%',
18
+ width: '100%',
19
+ position: 'absolute' as const,
20
+ };
21
+
22
+ const optionsOSM = {
23
+ url: 'https://a.tile.openstreetmap.org/',
24
+ };
25
+ const optionsXYZ = {
26
+ url: `https://tiles.openaerialmap.org/5b25fa612b6a08001185f80f/0/5b25fa612b6a08001185f810/{z}/{x}/{y}.png`,
27
+ };
28
+
29
+ export const MapWithOSMLayers: Story = (args) => {
30
+ const [center] = useState<[number, number]>([34.82, 32.04]);
31
+ return (
32
+ <div style={mapDivStyle}>
33
+ <CesiumMap center={center} sceneMode={CesiumSceneMode.SCENE2D} zoom={14}>
34
+ <CesiumOSMLayer options={optionsOSM} />
35
+ <CesiumXYZLayer options={optionsXYZ} />
36
+ </CesiumMap>
37
+ </div>
38
+ );
39
+ };
40
+ MapWithOSMLayers.storyName = 'OSM layer and XYZ';
@@ -1,22 +1,22 @@
1
- import React from 'react';
2
-
3
- import { OpenStreetMapImageryProvider } from 'cesium';
4
- import { CesiumImageryLayer, RCesiumImageryLayerProps } from './imagery.layer';
5
-
6
- export interface RCesiumOSMLayerOptions
7
- extends OpenStreetMapImageryProvider.ConstructorOptions {}
8
-
9
- export interface RCesiumOSMLayerProps
10
- extends Partial<RCesiumImageryLayerProps> {
11
- options: RCesiumOSMLayerOptions;
12
- }
13
-
14
- export const CesiumOSMLayer: React.FC<RCesiumOSMLayerProps> = (props) => {
15
- const { options, ...restProps } = props;
16
- return (
17
- <CesiumImageryLayer
18
- {...restProps}
19
- imageryProvider={new OpenStreetMapImageryProvider(options)}
20
- />
21
- );
22
- };
1
+ import React from 'react';
2
+
3
+ import { OpenStreetMapImageryProvider } from 'cesium';
4
+ import { CesiumImageryLayer, RCesiumImageryLayerProps } from './imagery.layer';
5
+
6
+ export interface RCesiumOSMLayerOptions
7
+ extends OpenStreetMapImageryProvider.ConstructorOptions {}
8
+
9
+ export interface RCesiumOSMLayerProps
10
+ extends Partial<RCesiumImageryLayerProps> {
11
+ options: RCesiumOSMLayerOptions;
12
+ }
13
+
14
+ export const CesiumOSMLayer: React.FC<RCesiumOSMLayerProps> = (props) => {
15
+ const { options, ...restProps } = props;
16
+ return (
17
+ <CesiumImageryLayer
18
+ {...restProps}
19
+ imageryProvider={new OpenStreetMapImageryProvider(options)}
20
+ />
21
+ );
22
+ };
@@ -1,38 +1,38 @@
1
- import React from 'react';
2
- import { Story, Meta } from '@storybook/react/types-6-0';
3
- import { CesiumMap } from '../map';
4
- import { CesiumWMSLayer } from './wms.layer';
5
-
6
- export default {
7
- title: 'Cesium Map/Layers/WMSLayer',
8
- component: CesiumWMSLayer,
9
- parameters: {
10
- layout: 'fullscreen',
11
- },
12
- } as Meta;
13
-
14
- const mapDivStyle = {
15
- height: '100%',
16
- width: '100%',
17
- position: 'absolute' as const,
18
- };
19
-
20
- const optionsWMS = {
21
- url: 'https://ahocevar.com/geoserver/wms',
22
- layers: 'ne:NE1_HR_LC_SR_W_DR',
23
- };
24
-
25
- const optionsWMS2 = {
26
- url: 'https://ahocevar.com/geoserver/wms',
27
- layers: 'opengeo:countries',
28
- };
29
-
30
- export const MapWithWMSLayers: Story = () => (
31
- <div style={mapDivStyle}>
32
- <CesiumMap>
33
- <CesiumWMSLayer options={optionsWMS} />
34
- <CesiumWMSLayer options={optionsWMS2} alpha={0.3} />
35
- </CesiumMap>
36
- </div>
37
- );
38
- MapWithWMSLayers.storyName = 'WMS 2 layers';
1
+ import React from 'react';
2
+ import { Story, Meta } from '@storybook/react/types-6-0';
3
+ import { CesiumMap } from '../map';
4
+ import { CesiumWMSLayer } from './wms.layer';
5
+
6
+ export default {
7
+ title: 'Cesium Map/Layers/WMSLayer',
8
+ component: CesiumWMSLayer,
9
+ parameters: {
10
+ layout: 'fullscreen',
11
+ },
12
+ } as Meta;
13
+
14
+ const mapDivStyle = {
15
+ height: '100%',
16
+ width: '100%',
17
+ position: 'absolute' as const,
18
+ };
19
+
20
+ const optionsWMS = {
21
+ url: 'https://ahocevar.com/geoserver/wms',
22
+ layers: 'ne:NE1_HR_LC_SR_W_DR',
23
+ };
24
+
25
+ const optionsWMS2 = {
26
+ url: 'https://ahocevar.com/geoserver/wms',
27
+ layers: 'opengeo:countries',
28
+ };
29
+
30
+ export const MapWithWMSLayers: Story = () => (
31
+ <div style={mapDivStyle}>
32
+ <CesiumMap>
33
+ <CesiumWMSLayer options={optionsWMS} />
34
+ <CesiumWMSLayer options={optionsWMS2} alpha={0.3} />
35
+ </CesiumMap>
36
+ </div>
37
+ );
38
+ MapWithWMSLayers.storyName = 'WMS 2 layers';
@@ -1,22 +1,22 @@
1
- import React from 'react';
2
-
3
- import { WebMapServiceImageryProvider } from 'cesium';
4
- import { CesiumImageryLayer, RCesiumImageryLayerProps } from './imagery.layer';
5
-
6
- export interface RCesiumWMSLayerOptions
7
- extends WebMapServiceImageryProvider.ConstructorOptions {}
8
-
9
- export interface RCesiumWMSLayerProps
10
- extends Partial<RCesiumImageryLayerProps> {
11
- options: RCesiumWMSLayerOptions;
12
- }
13
-
14
- export const CesiumWMSLayer: React.FC<RCesiumWMSLayerProps> = (props) => {
15
- const { options, ...restProps } = props;
16
- return (
17
- <CesiumImageryLayer
18
- {...restProps}
19
- imageryProvider={new WebMapServiceImageryProvider(options)}
20
- />
21
- );
22
- };
1
+ import React from 'react';
2
+
3
+ import { WebMapServiceImageryProvider } from 'cesium';
4
+ import { CesiumImageryLayer, RCesiumImageryLayerProps } from './imagery.layer';
5
+
6
+ export interface RCesiumWMSLayerOptions
7
+ extends WebMapServiceImageryProvider.ConstructorOptions {}
8
+
9
+ export interface RCesiumWMSLayerProps
10
+ extends Partial<RCesiumImageryLayerProps> {
11
+ options: RCesiumWMSLayerOptions;
12
+ }
13
+
14
+ export const CesiumWMSLayer: React.FC<RCesiumWMSLayerProps> = (props) => {
15
+ const { options, ...restProps } = props;
16
+ return (
17
+ <CesiumImageryLayer
18
+ {...restProps}
19
+ imageryProvider={new WebMapServiceImageryProvider(options)}
20
+ />
21
+ );
22
+ };