@map-colonies/react-components 3.8.0 → 3.10.1

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 (389) hide show
  1. package/.storybook/main.js +1 -4
  2. package/CHANGELOG.md +36 -0
  3. package/dist/assets/img/map-marker.gif +0 -0
  4. package/dist/autocomplete/autocomplete.d.ts +0 -1
  5. package/dist/autocomplete/autocomplete.js +22 -9
  6. package/dist/autocomplete/index.d.ts +0 -1
  7. package/dist/autocomplete/index.js +2 -2
  8. package/dist/box/box.d.ts +0 -1
  9. package/dist/box/box.js +3 -2
  10. package/dist/box/index.d.ts +0 -1
  11. package/dist/box/index.js +2 -2
  12. package/dist/cesium-map/data-sources/custom.data-source.d.ts +0 -1
  13. package/dist/cesium-map/data-sources/custom.data-source.js +3 -2
  14. package/dist/cesium-map/data-sources/drawings.data-source.d.ts +0 -1
  15. package/dist/cesium-map/data-sources/drawings.data-source.js +29 -16
  16. package/dist/cesium-map/data-sources/index.d.ts +0 -1
  17. package/dist/cesium-map/data-sources/index.js +12 -6
  18. package/dist/cesium-map/entities/entity.d.ts +0 -1
  19. package/dist/cesium-map/entities/entity.description.d.ts +0 -1
  20. package/dist/cesium-map/entities/entity.description.js +5 -3
  21. package/dist/cesium-map/entities/entity.js +3 -2
  22. package/dist/cesium-map/entities/graphics/polygon.graphics.d.ts +0 -1
  23. package/dist/cesium-map/entities/graphics/polygon.graphics.js +3 -2
  24. package/dist/cesium-map/entities/graphics/polyline.graphics.d.ts +0 -1
  25. package/dist/cesium-map/entities/graphics/polyline.graphics.js +3 -2
  26. package/dist/cesium-map/entities/graphics/rectangle.graphics.d.ts +0 -1
  27. package/dist/cesium-map/entities/graphics/rectangle.graphics.js +3 -2
  28. package/dist/cesium-map/entities/index.d.ts +0 -1
  29. package/dist/cesium-map/entities/index.js +14 -8
  30. package/dist/cesium-map/index.d.ts +0 -1
  31. package/dist/cesium-map/index.js +17 -11
  32. package/dist/cesium-map/layers/3d.tileset.d.ts +0 -1
  33. package/dist/cesium-map/layers/3d.tileset.js +5 -4
  34. package/dist/cesium-map/layers/3d.tileset.update.d.ts +1 -0
  35. package/dist/cesium-map/layers/3d.tileset.update.js +5 -0
  36. package/dist/cesium-map/layers/geojson.layer.d.ts +0 -1
  37. package/dist/cesium-map/layers/geojson.layer.js +3 -2
  38. package/dist/cesium-map/layers/imagery.layer.d.ts +0 -1
  39. package/dist/cesium-map/layers/imagery.layer.js +22 -9
  40. package/dist/cesium-map/layers/index.d.ts +0 -1
  41. package/dist/cesium-map/layers/index.js +17 -11
  42. package/dist/cesium-map/layers/osm.layer.d.ts +0 -1
  43. package/dist/cesium-map/layers/osm.layer.js +3 -2
  44. package/dist/cesium-map/layers/wms.layer.d.ts +0 -1
  45. package/dist/cesium-map/layers/wms.layer.js +3 -2
  46. package/dist/cesium-map/layers/wmts.layer.d.ts +0 -1
  47. package/dist/cesium-map/layers/wmts.layer.js +3 -2
  48. package/dist/cesium-map/layers/xyz.layer.d.ts +0 -1
  49. package/dist/cesium-map/layers/xyz.layer.js +3 -2
  50. package/dist/cesium-map/layers-manager.d.ts +2 -2
  51. package/dist/cesium-map/layers-manager.js +3 -7
  52. package/dist/cesium-map/map.d.ts +2 -2
  53. package/dist/cesium-map/map.js +59 -37
  54. package/dist/cesium-map/map.types.d.ts +0 -1
  55. package/dist/cesium-map/map.types.js +1 -1
  56. package/dist/cesium-map/proxied.types.d.ts +0 -1
  57. package/dist/cesium-map/proxied.types.js +4 -2
  58. package/dist/cesium-map/settings/base-maps.d.ts +0 -1
  59. package/dist/cesium-map/settings/base-maps.js +22 -12
  60. package/dist/cesium-map/settings/scene-modes.d.ts +0 -1
  61. package/dist/cesium-map/settings/scene-modes.js +17 -4
  62. package/dist/cesium-map/settings/settings.d.ts +0 -1
  63. package/dist/cesium-map/settings/settings.js +20 -7
  64. package/dist/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.d.ts +3 -0
  65. package/dist/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.js +245 -0
  66. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-decoder.d.ts +9 -0
  67. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-decoder.js +202 -0
  68. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.d.ts +50 -0
  69. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.js +136 -0
  70. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.d.ts +0 -1
  71. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.js +17 -4
  72. package/dist/cesium-map/tools/coordinates-tracker.tool.d.ts +0 -1
  73. package/dist/cesium-map/tools/coordinates-tracker.tool.js +17 -4
  74. package/dist/cesium-map/tools/draw/drawHelper.d.ts +0 -1
  75. package/dist/cesium-map/tools/draw/drawHelper.js +16 -3
  76. package/dist/cesium-map/tools/geojson/geojson-to-primitive.d.ts +1 -2
  77. package/dist/cesium-map/tools/geojson/geojson-to-primitive.js +3 -2
  78. package/dist/cesium-map/tools/geojson/index.d.ts +0 -1
  79. package/dist/cesium-map/tools/geojson/index.js +12 -6
  80. package/dist/cesium-map/tools/geojson/point.geojson.d.ts +0 -1
  81. package/dist/cesium-map/tools/geojson/point.geojson.js +3 -2
  82. package/dist/cesium-map/tools/geojson/polygon.geojson.d.ts +0 -1
  83. package/dist/cesium-map/tools/geojson/polygon.geojson.js +3 -2
  84. package/dist/cesium-map/tools/geojson/rectangle.geojson.d.ts +0 -1
  85. package/dist/cesium-map/tools/geojson/rectangle.geojson.js +17 -4
  86. package/dist/cesium-map/tools/inspector.tool.d.ts +4 -0
  87. package/dist/cesium-map/tools/inspector.tool.js +33 -0
  88. package/dist/cesium-map/tools/scale-tracker.tool.d.ts +0 -1
  89. package/dist/cesium-map/tools/scale-tracker.tool.js +19 -6
  90. package/dist/cesium-map/tools/terranian-height.tool.d.ts +4 -0
  91. package/dist/cesium-map/tools/terranian-height.tool.js +113 -0
  92. package/dist/cssbaseline/cssbaseline.d.ts +0 -1
  93. package/dist/cssbaseline/cssbaseline.js +5 -3
  94. package/dist/cssbaseline/index.d.ts +0 -1
  95. package/dist/cssbaseline/index.js +3 -3
  96. package/dist/date-picker/date-picker.d.ts +0 -1
  97. package/dist/date-picker/date-picker.js +24 -11
  98. package/dist/date-picker/index.d.ts +0 -1
  99. package/dist/date-picker/index.js +11 -5
  100. package/dist/date-range-picker/date-range-picker.d.ts +0 -1
  101. package/dist/date-range-picker/date-range-picker.form-control.d.ts +0 -1
  102. package/dist/date-range-picker/date-range-picker.form-control.js +31 -18
  103. package/dist/date-range-picker/date-range-picker.js +26 -13
  104. package/dist/date-range-picker/index.d.ts +0 -1
  105. package/dist/date-range-picker/index.js +12 -6
  106. package/dist/file-picker/file-picker.css +56 -0
  107. package/dist/file-picker/file-picker.d.ts +275 -0
  108. package/dist/file-picker/file-picker.js +151 -0
  109. package/dist/file-picker/fs-map.json +1557 -0
  110. package/dist/file-picker/index.d.ts +1 -0
  111. package/dist/file-picker/index.js +13 -0
  112. package/dist/file-picker/localization.d.ts +6 -0
  113. package/dist/file-picker/localization.js +119 -0
  114. package/dist/index.d.ts +1 -1
  115. package/dist/index.js +23 -16
  116. package/dist/map-filter-container/container-map.d.ts +0 -1
  117. package/dist/map-filter-container/container-map.js +3 -2
  118. package/dist/map-filter-container/index.d.ts +0 -1
  119. package/dist/map-filter-container/index.js +11 -5
  120. package/dist/map-filter-container/map-filter-container.d.ts +0 -1
  121. package/dist/map-filter-container/map-filter-container.js +17 -4
  122. package/dist/map-filter-container/polygon-selection-ui.d.ts +0 -1
  123. package/dist/map-filter-container/polygon-selection-ui.js +3 -2
  124. package/dist/models/defaults.d.ts +0 -1
  125. package/dist/models/defaults.js +0 -1
  126. package/dist/models/enums.d.ts +2 -2
  127. package/dist/models/enums.js +2 -1
  128. package/dist/models/index.d.ts +0 -1
  129. package/dist/models/index.js +11 -5
  130. package/dist/ol-map/feature.d.ts +0 -1
  131. package/dist/ol-map/feature.js +3 -2
  132. package/dist/ol-map/index.d.ts +0 -1
  133. package/dist/ol-map/index.js +16 -10
  134. package/dist/ol-map/interactions/draw.d.ts +0 -1
  135. package/dist/ol-map/interactions/draw.js +4 -4
  136. package/dist/ol-map/interactions/index.d.ts +0 -1
  137. package/dist/ol-map/interactions/index.js +11 -5
  138. package/dist/ol-map/layers/index.d.ts +0 -1
  139. package/dist/ol-map/layers/index.js +13 -7
  140. package/dist/ol-map/layers/tile-layer.d.ts +0 -1
  141. package/dist/ol-map/layers/tile-layer.js +19 -5
  142. package/dist/ol-map/layers/vector-layer.d.ts +0 -1
  143. package/dist/ol-map/layers/vector-layer.js +19 -5
  144. package/dist/ol-map/layers/vector-tile-layer.d.ts +0 -1
  145. package/dist/ol-map/layers/vector-tile-layer.js +19 -5
  146. package/dist/ol-map/map.d.ts +0 -1
  147. package/dist/ol-map/map.js +24 -10
  148. package/dist/ol-map/source/index.d.ts +0 -1
  149. package/dist/ol-map/source/index.js +16 -10
  150. package/dist/ol-map/source/mvt.d.ts +0 -1
  151. package/dist/ol-map/source/mvt.js +7 -4
  152. package/dist/ol-map/source/osm.d.ts +0 -1
  153. package/dist/ol-map/source/osm.js +3 -2
  154. package/dist/ol-map/source/vector-source.d.ts +1 -2
  155. package/dist/ol-map/source/vector-source.js +19 -5
  156. package/dist/ol-map/source/wms.d.ts +0 -1
  157. package/dist/ol-map/source/wms.js +5 -3
  158. package/dist/ol-map/source/wmts.d.ts +0 -1
  159. package/dist/ol-map/source/wmts.js +5 -3
  160. package/dist/ol-map/source/xyz.d.ts +0 -1
  161. package/dist/ol-map/source/xyz.js +5 -3
  162. package/dist/ol-map/style.d.ts +0 -1
  163. package/dist/ol-map/style.js +1 -1
  164. package/dist/popover/index.d.ts +0 -1
  165. package/dist/popover/index.js +2 -2
  166. package/dist/popover/popover.d.ts +0 -1
  167. package/dist/popover/popover.js +3 -2
  168. package/dist/smart-table/__mock-data__/smartTableMocks.d.ts +0 -1
  169. package/dist/smart-table/__mock-data__/smartTableMocks.js +1 -1
  170. package/dist/smart-table/index.d.ts +0 -1
  171. package/dist/smart-table/index.js +12 -6
  172. package/dist/smart-table/smart-table-head.d.ts +0 -1
  173. package/dist/smart-table/smart-table-head.js +1 -1
  174. package/dist/smart-table/smart-table-row.d.ts +0 -2
  175. package/dist/smart-table/smart-table-row.js +18 -8
  176. package/dist/smart-table/smart-table-types.d.ts +0 -2
  177. package/dist/smart-table/smart-table-types.js +0 -1
  178. package/dist/smart-table/smart-table.d.ts +0 -1
  179. package/dist/smart-table/smart-table.js +15 -3
  180. package/dist/theme/index.d.ts +0 -1
  181. package/dist/theme/index.js +11 -5
  182. package/dist/theme/theme.d.ts +0 -1
  183. package/dist/theme/theme.js +1 -1
  184. package/dist/utils/map.d.ts +0 -1
  185. package/dist/utils/map.js +7 -4
  186. package/dist/utils/projections.d.ts +0 -1
  187. package/dist/utils/projections.js +1 -1
  188. package/dist/utils/story.d.ts +0 -1
  189. package/dist/utils/story.js +0 -1
  190. package/package.json +8 -4
  191. package/public/assets/img/map-marker.gif +0 -0
  192. package/src/lib/cesium-map/context-menu.stories.tsx +1 -2
  193. package/src/lib/cesium-map/layers/3d.tileset.stories.tsx +1 -2
  194. package/src/lib/cesium-map/layers/3d.tileset.update.ts +72 -0
  195. package/src/lib/cesium-map/layers/layers.rect.stories.tsx +171 -0
  196. package/src/lib/cesium-map/layers-manager.stories.tsx +2 -3
  197. package/src/lib/cesium-map/layers-manager.ts +3 -1
  198. package/src/lib/cesium-map/map.stories.tsx +3 -3
  199. package/src/lib/cesium-map/map.tsx +22 -11
  200. package/src/lib/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.ts +243 -0
  201. package/src/lib/cesium-map/terrain-providers/custom/quantized-mesh-decoder.ts +321 -0
  202. package/src/lib/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.ts +237 -0
  203. package/src/lib/cesium-map/terrain-providers/terrain-provider-heights-tool.stories.tsx +155 -0
  204. package/src/lib/cesium-map/terrain-providers/terrain-provider.stories.tsx +185 -0
  205. package/src/lib/cesium-map/tools/inspector.tool.tsx +15 -0
  206. package/src/lib/cesium-map/tools/terranian-height.tool.tsx +167 -0
  207. package/src/lib/date-range-picker/{stories/DateRangePicker.stories.tsx → date-range-picker.stories.tsx} +5 -5
  208. package/src/lib/file-picker/file-picker.css +56 -0
  209. package/src/lib/file-picker/file-picker.stories.tsx +444 -0
  210. package/src/lib/file-picker/file-picker.tsx +177 -0
  211. package/src/lib/file-picker/fs-map.json +1557 -0
  212. package/src/lib/file-picker/index.ts +1 -0
  213. package/src/lib/file-picker/localization.ts +137 -0
  214. package/src/lib/index.ts +1 -0
  215. package/src/lib/models/enums.ts +1 -0
  216. package/src/types/quantized-mesh-decoder.d.ts +1 -0
  217. package/storybook-static/mock/{tileset → tileset_1}/ll.b3dm +0 -0
  218. package/storybook-static/mock/{tileset → tileset_1}/lr.b3dm +0 -0
  219. package/storybook-static/mock/{tileset → tileset_1}/parent.b3dm +0 -0
  220. package/storybook-static/mock/{tileset → tileset_1}/tileset.json +0 -0
  221. package/storybook-static/mock/{tileset → tileset_1}/ul.b3dm +0 -0
  222. package/storybook-static/mock/{tileset → tileset_1}/ur.b3dm +0 -0
  223. package/tsbuildconfig.json +2 -2
  224. package/dist/autocomplete/autocomplete.d.ts.map +0 -1
  225. package/dist/autocomplete/autocomplete.js.map +0 -1
  226. package/dist/autocomplete/index.d.ts.map +0 -1
  227. package/dist/autocomplete/index.js.map +0 -1
  228. package/dist/box/box.d.ts.map +0 -1
  229. package/dist/box/box.js.map +0 -1
  230. package/dist/box/index.d.ts.map +0 -1
  231. package/dist/box/index.js.map +0 -1
  232. package/dist/cesium-map/data-sources/custom.data-source.d.ts.map +0 -1
  233. package/dist/cesium-map/data-sources/custom.data-source.js.map +0 -1
  234. package/dist/cesium-map/data-sources/drawings.data-source.d.ts.map +0 -1
  235. package/dist/cesium-map/data-sources/drawings.data-source.js.map +0 -1
  236. package/dist/cesium-map/data-sources/index.d.ts.map +0 -1
  237. package/dist/cesium-map/data-sources/index.js.map +0 -1
  238. package/dist/cesium-map/entities/entity.d.ts.map +0 -1
  239. package/dist/cesium-map/entities/entity.description.d.ts.map +0 -1
  240. package/dist/cesium-map/entities/entity.description.js.map +0 -1
  241. package/dist/cesium-map/entities/entity.js.map +0 -1
  242. package/dist/cesium-map/entities/graphics/polygon.graphics.d.ts.map +0 -1
  243. package/dist/cesium-map/entities/graphics/polygon.graphics.js.map +0 -1
  244. package/dist/cesium-map/entities/graphics/polyline.graphics.d.ts.map +0 -1
  245. package/dist/cesium-map/entities/graphics/polyline.graphics.js.map +0 -1
  246. package/dist/cesium-map/entities/graphics/rectangle.graphics.d.ts.map +0 -1
  247. package/dist/cesium-map/entities/graphics/rectangle.graphics.js.map +0 -1
  248. package/dist/cesium-map/entities/index.d.ts.map +0 -1
  249. package/dist/cesium-map/entities/index.js.map +0 -1
  250. package/dist/cesium-map/index.d.ts.map +0 -1
  251. package/dist/cesium-map/index.js.map +0 -1
  252. package/dist/cesium-map/layers/3d.tileset.d.ts.map +0 -1
  253. package/dist/cesium-map/layers/3d.tileset.js.map +0 -1
  254. package/dist/cesium-map/layers/geojson.layer.d.ts.map +0 -1
  255. package/dist/cesium-map/layers/geojson.layer.js.map +0 -1
  256. package/dist/cesium-map/layers/imagery.layer.d.ts.map +0 -1
  257. package/dist/cesium-map/layers/imagery.layer.js.map +0 -1
  258. package/dist/cesium-map/layers/index.d.ts.map +0 -1
  259. package/dist/cesium-map/layers/index.js.map +0 -1
  260. package/dist/cesium-map/layers/osm.layer.d.ts.map +0 -1
  261. package/dist/cesium-map/layers/osm.layer.js.map +0 -1
  262. package/dist/cesium-map/layers/wms.layer.d.ts.map +0 -1
  263. package/dist/cesium-map/layers/wms.layer.js.map +0 -1
  264. package/dist/cesium-map/layers/wmts.layer.d.ts.map +0 -1
  265. package/dist/cesium-map/layers/wmts.layer.js.map +0 -1
  266. package/dist/cesium-map/layers/xyz.layer.d.ts.map +0 -1
  267. package/dist/cesium-map/layers/xyz.layer.js.map +0 -1
  268. package/dist/cesium-map/layers-manager.d.ts.map +0 -1
  269. package/dist/cesium-map/layers-manager.js.map +0 -1
  270. package/dist/cesium-map/map.d.ts.map +0 -1
  271. package/dist/cesium-map/map.js.map +0 -1
  272. package/dist/cesium-map/map.types.d.ts.map +0 -1
  273. package/dist/cesium-map/map.types.js.map +0 -1
  274. package/dist/cesium-map/proxied.types.d.ts.map +0 -1
  275. package/dist/cesium-map/proxied.types.js.map +0 -1
  276. package/dist/cesium-map/settings/base-maps.d.ts.map +0 -1
  277. package/dist/cesium-map/settings/base-maps.js.map +0 -1
  278. package/dist/cesium-map/settings/scene-modes.d.ts.map +0 -1
  279. package/dist/cesium-map/settings/scene-modes.js.map +0 -1
  280. package/dist/cesium-map/settings/settings.d.ts.map +0 -1
  281. package/dist/cesium-map/settings/settings.js.map +0 -1
  282. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.d.ts.map +0 -1
  283. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.js.map +0 -1
  284. package/dist/cesium-map/tools/coordinates-tracker.tool.d.ts.map +0 -1
  285. package/dist/cesium-map/tools/coordinates-tracker.tool.js.map +0 -1
  286. package/dist/cesium-map/tools/draw/drawHelper.d.ts.map +0 -1
  287. package/dist/cesium-map/tools/draw/drawHelper.js.map +0 -1
  288. package/dist/cesium-map/tools/geojson/geojson-to-primitive.d.ts.map +0 -1
  289. package/dist/cesium-map/tools/geojson/geojson-to-primitive.js.map +0 -1
  290. package/dist/cesium-map/tools/geojson/index.d.ts.map +0 -1
  291. package/dist/cesium-map/tools/geojson/index.js.map +0 -1
  292. package/dist/cesium-map/tools/geojson/point.geojson.d.ts.map +0 -1
  293. package/dist/cesium-map/tools/geojson/point.geojson.js.map +0 -1
  294. package/dist/cesium-map/tools/geojson/polygon.geojson.d.ts.map +0 -1
  295. package/dist/cesium-map/tools/geojson/polygon.geojson.js.map +0 -1
  296. package/dist/cesium-map/tools/geojson/rectangle.geojson.d.ts.map +0 -1
  297. package/dist/cesium-map/tools/geojson/rectangle.geojson.js.map +0 -1
  298. package/dist/cesium-map/tools/scale-tracker.tool.d.ts.map +0 -1
  299. package/dist/cesium-map/tools/scale-tracker.tool.js.map +0 -1
  300. package/dist/cssbaseline/cssbaseline.d.ts.map +0 -1
  301. package/dist/cssbaseline/cssbaseline.js.map +0 -1
  302. package/dist/cssbaseline/index.d.ts.map +0 -1
  303. package/dist/cssbaseline/index.js.map +0 -1
  304. package/dist/date-picker/date-picker.d.ts.map +0 -1
  305. package/dist/date-picker/date-picker.js.map +0 -1
  306. package/dist/date-picker/index.d.ts.map +0 -1
  307. package/dist/date-picker/index.js.map +0 -1
  308. package/dist/date-range-picker/date-range-picker.d.ts.map +0 -1
  309. package/dist/date-range-picker/date-range-picker.form-control.d.ts.map +0 -1
  310. package/dist/date-range-picker/date-range-picker.form-control.js.map +0 -1
  311. package/dist/date-range-picker/date-range-picker.js.map +0 -1
  312. package/dist/date-range-picker/index.d.ts.map +0 -1
  313. package/dist/date-range-picker/index.js.map +0 -1
  314. package/dist/index.d.ts.map +0 -1
  315. package/dist/index.js.map +0 -1
  316. package/dist/map-filter-container/container-map.d.ts.map +0 -1
  317. package/dist/map-filter-container/container-map.js.map +0 -1
  318. package/dist/map-filter-container/index.d.ts.map +0 -1
  319. package/dist/map-filter-container/index.js.map +0 -1
  320. package/dist/map-filter-container/map-filter-container.d.ts.map +0 -1
  321. package/dist/map-filter-container/map-filter-container.js.map +0 -1
  322. package/dist/map-filter-container/polygon-selection-ui.d.ts.map +0 -1
  323. package/dist/map-filter-container/polygon-selection-ui.js.map +0 -1
  324. package/dist/models/defaults.d.ts.map +0 -1
  325. package/dist/models/defaults.js.map +0 -1
  326. package/dist/models/enums.d.ts.map +0 -1
  327. package/dist/models/enums.js.map +0 -1
  328. package/dist/models/index.d.ts.map +0 -1
  329. package/dist/models/index.js.map +0 -1
  330. package/dist/ol-map/feature.d.ts.map +0 -1
  331. package/dist/ol-map/feature.js.map +0 -1
  332. package/dist/ol-map/index.d.ts.map +0 -1
  333. package/dist/ol-map/index.js.map +0 -1
  334. package/dist/ol-map/interactions/draw.d.ts.map +0 -1
  335. package/dist/ol-map/interactions/draw.js.map +0 -1
  336. package/dist/ol-map/interactions/index.d.ts.map +0 -1
  337. package/dist/ol-map/interactions/index.js.map +0 -1
  338. package/dist/ol-map/layers/index.d.ts.map +0 -1
  339. package/dist/ol-map/layers/index.js.map +0 -1
  340. package/dist/ol-map/layers/tile-layer.d.ts.map +0 -1
  341. package/dist/ol-map/layers/tile-layer.js.map +0 -1
  342. package/dist/ol-map/layers/vector-layer.d.ts.map +0 -1
  343. package/dist/ol-map/layers/vector-layer.js.map +0 -1
  344. package/dist/ol-map/layers/vector-tile-layer.d.ts.map +0 -1
  345. package/dist/ol-map/layers/vector-tile-layer.js.map +0 -1
  346. package/dist/ol-map/map.d.ts.map +0 -1
  347. package/dist/ol-map/map.js.map +0 -1
  348. package/dist/ol-map/source/index.d.ts.map +0 -1
  349. package/dist/ol-map/source/index.js.map +0 -1
  350. package/dist/ol-map/source/mvt.d.ts.map +0 -1
  351. package/dist/ol-map/source/mvt.js.map +0 -1
  352. package/dist/ol-map/source/osm.d.ts.map +0 -1
  353. package/dist/ol-map/source/osm.js.map +0 -1
  354. package/dist/ol-map/source/vector-source.d.ts.map +0 -1
  355. package/dist/ol-map/source/vector-source.js.map +0 -1
  356. package/dist/ol-map/source/wms.d.ts.map +0 -1
  357. package/dist/ol-map/source/wms.js.map +0 -1
  358. package/dist/ol-map/source/wmts.d.ts.map +0 -1
  359. package/dist/ol-map/source/wmts.js.map +0 -1
  360. package/dist/ol-map/source/xyz.d.ts.map +0 -1
  361. package/dist/ol-map/source/xyz.js.map +0 -1
  362. package/dist/ol-map/style.d.ts.map +0 -1
  363. package/dist/ol-map/style.js.map +0 -1
  364. package/dist/popover/index.d.ts.map +0 -1
  365. package/dist/popover/index.js.map +0 -1
  366. package/dist/popover/popover.d.ts.map +0 -1
  367. package/dist/popover/popover.js.map +0 -1
  368. package/dist/smart-table/__mock-data__/smartTableMocks.d.ts.map +0 -1
  369. package/dist/smart-table/__mock-data__/smartTableMocks.js.map +0 -1
  370. package/dist/smart-table/index.d.ts.map +0 -1
  371. package/dist/smart-table/index.js.map +0 -1
  372. package/dist/smart-table/smart-table-head.d.ts.map +0 -1
  373. package/dist/smart-table/smart-table-head.js.map +0 -1
  374. package/dist/smart-table/smart-table-row.d.ts.map +0 -1
  375. package/dist/smart-table/smart-table-row.js.map +0 -1
  376. package/dist/smart-table/smart-table-types.d.ts.map +0 -1
  377. package/dist/smart-table/smart-table-types.js.map +0 -1
  378. package/dist/smart-table/smart-table.d.ts.map +0 -1
  379. package/dist/smart-table/smart-table.js.map +0 -1
  380. package/dist/theme/index.d.ts.map +0 -1
  381. package/dist/theme/index.js.map +0 -1
  382. package/dist/theme/theme.d.ts.map +0 -1
  383. package/dist/theme/theme.js.map +0 -1
  384. package/dist/utils/map.d.ts.map +0 -1
  385. package/dist/utils/map.js.map +0 -1
  386. package/dist/utils/projections.d.ts.map +0 -1
  387. package/dist/utils/projections.js.map +0 -1
  388. package/dist/utils/story.d.ts.map +0 -1
  389. package/dist/utils/story.js.map +0 -1
@@ -0,0 +1,237 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /* eslint-disable @typescript-eslint/no-unsafe-call */
3
+ /* eslint-disable @typescript-eslint/no-unsafe-return */
4
+ /* eslint-disable @typescript-eslint/no-unsafe-assignment */
5
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
6
+ /* eslint-disable @typescript-eslint/no-magic-numbers */
7
+ import {
8
+ BoundingSphere,
9
+ Cartesian3,
10
+ Cartographic,
11
+ Credit,
12
+ Ellipsoid,
13
+ Math,
14
+ OrientedBoundingBox,
15
+ QuantizedMeshTerrainData,
16
+ Rectangle,
17
+ TerrainProvider,
18
+ TilingScheme,
19
+ WebMercatorTilingScheme,
20
+ } from 'cesium';
21
+ import decode from '@here/quantized-mesh-decoder';
22
+ import dummyTileBuffer from './dummy-quantized-mesh-tile';
23
+
24
+ const TILE_IMAGE_WIDTH = 65;
25
+
26
+ export interface IDecodedTileHeader {
27
+ centerX: number;
28
+ centerY: number;
29
+ centerZ: number;
30
+ minHeight: number;
31
+ maxHeight: number;
32
+ boundingSphereCenterX: number;
33
+ boundingSphereCenterY: number;
34
+ boundingSphereCenterZ: number;
35
+ boundingSphereRadius: number;
36
+ horizonOcclusionPointX: number;
37
+ horizonOcclusionPointY: number;
38
+ horizonOcclusionPointZ: number;
39
+ }
40
+
41
+ export interface IExtensions {
42
+ vertexNormals?: Uint8Array;
43
+ waterMask?: ArrayBufferLike;
44
+ metadata?: unknown;
45
+ }
46
+
47
+ export interface IDecodedTile {
48
+ header: IDecodedTileHeader;
49
+ vertexData: Uint16Array;
50
+ triangleIndices: Uint16Array | Uint32Array;
51
+ westIndices: number[];
52
+ northIndices: number[];
53
+ eastIndices: number[];
54
+ southIndices: number[];
55
+ extensions?: IExtensions;
56
+ }
57
+
58
+ export default class QuantizedMeshTerrainProvider /*extends TerrainProvider*/ {
59
+ public tilingScheme: TilingScheme;
60
+ public ready: boolean;
61
+ public readyPromise: Promise<boolean>;
62
+ private readonly dummyTile: IDecodedTile;
63
+ private readonly getUrl: (x: number, y: number, level: number) => string;
64
+ private readonly credits: Credit[] | undefined;
65
+
66
+ public constructor(options: {
67
+ getUrl?: (x: number, y: number, level: number) => string;
68
+ credit?: string;
69
+ tilingScheme?: TilingScheme;
70
+ }) {
71
+ // super();
72
+ this.ready = false;
73
+ this.dummyTile = decode(dummyTileBuffer);
74
+ this.tilingScheme = options.tilingScheme ?? new WebMercatorTilingScheme();
75
+
76
+ if (options.getUrl === undefined) {
77
+ throw new Error('getUrl option is missing');
78
+ }
79
+
80
+ if (options.credit !== undefined) {
81
+ this.credits = [new Credit(options.credit)];
82
+ }
83
+
84
+ this.getUrl = options.getUrl;
85
+
86
+ this.readyPromise = Promise.resolve(true);
87
+ this.ready = true;
88
+ }
89
+
90
+ public requestTileGeometry(
91
+ x: number,
92
+ y: number,
93
+ level: number
94
+ ): Promise<void | QuantizedMeshTerrainData> | undefined {
95
+ const url = this.getUrl(x, y, level);
96
+
97
+ return window
98
+ .fetch(url)
99
+ .then((res: Response) => {
100
+ if (res.status !== 200) {
101
+ return this.generateDummyTile(x, y, level);
102
+ }
103
+ return this.decodeResponse(res, x, y, level);
104
+ })
105
+ .then((decodedTile: IDecodedTile) => {
106
+ return this.createQuantizedMeshData(decodedTile, x, y, level);
107
+ })
108
+ .catch((err: unknown) => {
109
+ console.error(err);
110
+ });
111
+ }
112
+
113
+ public getTileDataAvailable(x: number, y: number, level: number): boolean {
114
+ return true;
115
+ }
116
+
117
+ public getLevelMaximumGeometricError(level: number): number {
118
+ const levelZeroMaximumGeometricError = TerrainProvider.getEstimatedLevelZeroGeometricErrorForAHeightmap(
119
+ this.tilingScheme.ellipsoid,
120
+ TILE_IMAGE_WIDTH,
121
+ this.tilingScheme.getNumberOfXTilesAtLevel(0)
122
+ );
123
+
124
+ return levelZeroMaximumGeometricError / (1 << level);
125
+ }
126
+
127
+ private generateDummyTileHeader(
128
+ x: number,
129
+ y: number,
130
+ level: number
131
+ ): IDecodedTileHeader {
132
+ const tileRect = this.tilingScheme.tileXYToRectangle(x, y, level);
133
+ const tileNativeRect = this.tilingScheme.tileXYToNativeRectangle(
134
+ x,
135
+ y,
136
+ level
137
+ );
138
+ const tileCenter = Cartographic.toCartesian(Rectangle.center(tileRect));
139
+ const horizonOcclusionPoint = Ellipsoid.WGS84.transformPositionToScaledSpace(
140
+ tileCenter
141
+ );
142
+
143
+ return {
144
+ centerX: tileCenter.x,
145
+ centerY: tileCenter.y,
146
+ centerZ: tileCenter.z,
147
+ minHeight: 0,
148
+ maxHeight: 0,
149
+ boundingSphereCenterX: tileCenter.x,
150
+ boundingSphereCenterY: tileCenter.y,
151
+ boundingSphereCenterZ: tileCenter.z,
152
+ boundingSphereRadius: tileNativeRect.height,
153
+ horizonOcclusionPointX: horizonOcclusionPoint.x,
154
+ horizonOcclusionPointY: horizonOcclusionPoint.y,
155
+ horizonOcclusionPointZ: horizonOcclusionPoint.z,
156
+ };
157
+ }
158
+
159
+ private createQuantizedMeshData(
160
+ decodedTile: IDecodedTile,
161
+ x: number,
162
+ y: number,
163
+ level: number
164
+ ): QuantizedMeshTerrainData {
165
+ const tileRect = this.tilingScheme.tileXYToRectangle(x, y, level);
166
+ const boundingSphereCenter = new Cartesian3(
167
+ decodedTile.header.boundingSphereCenterX,
168
+ decodedTile.header.boundingSphereCenterY,
169
+ decodedTile.header.boundingSphereCenterZ
170
+ );
171
+ const boundingSphere = new BoundingSphere(
172
+ boundingSphereCenter,
173
+ decodedTile.header.boundingSphereRadius
174
+ );
175
+ const horizonOcclusionPoint = new Cartesian3(
176
+ decodedTile.header.horizonOcclusionPointX,
177
+ decodedTile.header.horizonOcclusionPointY,
178
+ decodedTile.header.horizonOcclusionPointZ
179
+ );
180
+
181
+ let orientedBoundingBox;
182
+
183
+ if (tileRect.width < Math.PI_OVER_TWO + Math.EPSILON5) {
184
+ orientedBoundingBox = OrientedBoundingBox.fromRectangle(
185
+ tileRect,
186
+ decodedTile.header.minHeight,
187
+ decodedTile.header.maxHeight
188
+ );
189
+ }
190
+
191
+ return new QuantizedMeshTerrainData({
192
+ minimumHeight: decodedTile.header.minHeight,
193
+ maximumHeight: decodedTile.header.maxHeight,
194
+ quantizedVertices: decodedTile.vertexData,
195
+ indices: decodedTile.triangleIndices,
196
+ boundingSphere: boundingSphere,
197
+ orientedBoundingBox: orientedBoundingBox,
198
+ horizonOcclusionPoint: horizonOcclusionPoint,
199
+ westIndices: decodedTile.westIndices,
200
+ southIndices: decodedTile.southIndices,
201
+ eastIndices: decodedTile.eastIndices,
202
+ northIndices: decodedTile.northIndices,
203
+ westSkirtHeight: 100,
204
+ southSkirtHeight: 100,
205
+ eastSkirtHeight: 100,
206
+ northSkirtHeight: 100,
207
+ childTileMask: 15,
208
+ credits: this.credits,
209
+ });
210
+ }
211
+
212
+ private generateDummyTile(x: number, y: number, level: number): IDecodedTile {
213
+ return {
214
+ ...this.dummyTile,
215
+ ...this.generateDummyTileHeader(x, y, level),
216
+ };
217
+ }
218
+
219
+ private decodeResponse(
220
+ res: any,
221
+ x: number,
222
+ y: number,
223
+ level: number
224
+ ): IDecodedTile {
225
+ return res
226
+ .arrayBuffer()
227
+ .then((buffer: ArrayBufferLike) => {
228
+ return decode(buffer);
229
+ })
230
+ .catch((err: unknown) => {
231
+ console.error(`Decoding failed on tile ${this.getUrl(x, y, level)}`);
232
+ console.error(err);
233
+
234
+ return this.generateDummyTile(x, y, level);
235
+ });
236
+ }
237
+ }
@@ -0,0 +1,155 @@
1
+ import React, { useState } from 'react';
2
+ import {
3
+ ArcGISTiledElevationTerrainProvider,
4
+ EllipsoidTerrainProvider,
5
+ TerrainProvider,
6
+ CesiumTerrainProvider,
7
+ Resource,
8
+ } from 'cesium';
9
+ import { Story, Meta } from '@storybook/react/types-6-0';
10
+ import { CesiumMap, useCesiumMap } from '../map';
11
+ import { CesiumSceneMode } from '../map.types';
12
+ import { Cesium3DTileset } from '../layers';
13
+ import { InspectorTool } from '../tools/inspector.tool';
14
+ import { TerrainianHeightTool } from '../tools/terranian-height.tool';
15
+ import { LayerType } from '../layers-manager';
16
+
17
+ export default {
18
+ title: 'Cesium Map/QuantizedMesh',
19
+ component: CesiumMap,
20
+ parameters: {
21
+ layout: 'fullscreen',
22
+ },
23
+ } as Meta;
24
+
25
+ const mapDivStyle = {
26
+ height: '90%',
27
+ width: '100%',
28
+ position: 'absolute' as const,
29
+ };
30
+
31
+ const BASE_MAPS = {
32
+ maps: [
33
+ {
34
+ id: '1st',
35
+ title: '1st Map Title',
36
+ isCurrent: true,
37
+ thumbnail:
38
+ 'https://nsw.digitaltwin.terria.io/build/efa2f6c408eb790753a9b5fb2f3dc678.png',
39
+ baseRasteLayers: [
40
+ {
41
+ id: 'GOOGLE_TERRAIN',
42
+ type: 'XYZ_LAYER' as LayerType,
43
+ opacity: 1,
44
+ zIndex: 0,
45
+ options: {
46
+ url: 'https://mt1.google.com/vt/lyrs=s&x={x}&y={y}&z={z}',
47
+ layers: '',
48
+ credit: 'GOOGLE',
49
+ },
50
+ },
51
+ ],
52
+ baseVectorLayers: [],
53
+ },
54
+ ],
55
+ };
56
+
57
+ const EllipsoidProvider = new EllipsoidTerrainProvider({});
58
+
59
+ // eslint-disable-next-line @typescript-eslint/naming-convention
60
+ const MCCesiumProviderMercator = new CesiumTerrainProvider({
61
+ url: new Resource({
62
+ url: 'http://localhost:3000/terrain_mercator_crop',
63
+ }),
64
+ });
65
+
66
+ // eslint-disable-next-line @typescript-eslint/naming-convention
67
+ const MCCesiumProviderW84 = new CesiumTerrainProvider({
68
+ url: new Resource({
69
+ url: 'http://localhost:3000/terrain_w84_geo_crop',
70
+ }),
71
+ });
72
+
73
+ const ArcGisProvider = new ArcGISTiledElevationTerrainProvider({
74
+ url:
75
+ 'https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer',
76
+ });
77
+
78
+ const terrainProviderListQmesh = [
79
+ {
80
+ id: 'NONE',
81
+ value: EllipsoidProvider,
82
+ },
83
+ {
84
+ id: 'MC Mercator - Cesium Terrain Provider',
85
+ value: MCCesiumProviderMercator,
86
+ },
87
+ {
88
+ id: 'MC W84 - Cesium Terrain Provider',
89
+ value: MCCesiumProviderW84,
90
+ },
91
+ {
92
+ id: 'Arc Gis Terrain Provider',
93
+ value: ArcGisProvider,
94
+ },
95
+ ];
96
+
97
+ interface ITerrainProviderItem {
98
+ id: string;
99
+ value: TerrainProvider | undefined;
100
+ }
101
+
102
+ interface ITerrainProviderSelectorProps {
103
+ terrainProviderList: ITerrainProviderItem[];
104
+ }
105
+
106
+ const TerrainProviderSelector: React.FC<ITerrainProviderSelectorProps> = ({
107
+ terrainProviderList,
108
+ }) => {
109
+ const mapViewer = useCesiumMap();
110
+
111
+ return (
112
+ <>
113
+ <select
114
+ defaultValue={terrainProviderList[0].id}
115
+ onChange={(evt): void => {
116
+ const selected = terrainProviderList.find(
117
+ (item) => item.id === evt.target.value
118
+ );
119
+ mapViewer.terrainProvider = (selected as ITerrainProviderItem)
120
+ .value as TerrainProvider;
121
+ }}
122
+ >
123
+ {terrainProviderList.map((provider) => {
124
+ return <option key={provider.id}>{provider.id}</option>;
125
+ })}
126
+ </select>
127
+ </>
128
+ );
129
+ };
130
+
131
+ export const QuantizedMeshHeightsTool: Story = () => {
132
+ const [center] = useState<[number, number]>([-122, 43]);
133
+ return (
134
+ <div style={mapDivStyle}>
135
+ <CesiumMap
136
+ center={center}
137
+ zoom={5}
138
+ imageryProvider={false}
139
+ sceneModes={[CesiumSceneMode.SCENE3D, CesiumSceneMode.COLUMBUS_VIEW]}
140
+ baseMaps={BASE_MAPS}
141
+ >
142
+ <Cesium3DTileset
143
+ isZoomTo={true}
144
+ url="https://3d.ofek-air.com/3d/Jeru_Old_City_Cesium/ACT/Jeru_Old_City_Cesium_ACT.json"
145
+ />
146
+ <TerrainProviderSelector
147
+ terrainProviderList={terrainProviderListQmesh}
148
+ />
149
+ <TerrainianHeightTool />
150
+ <InspectorTool />
151
+ </CesiumMap>
152
+ </div>
153
+ );
154
+ };
155
+ QuantizedMeshHeightsTool.storyName = 'Heights Tool';
@@ -0,0 +1,185 @@
1
+ import React, { ChangeEvent, useState } from 'react';
2
+ import {
3
+ ArcGISTiledElevationTerrainProvider,
4
+ EllipsoidTerrainProvider,
5
+ TerrainProvider,
6
+ VRTheWorldTerrainProvider,
7
+ WebMercatorProjection,
8
+ CesiumTerrainProvider,
9
+ Resource,
10
+ WebMercatorTilingScheme,
11
+ } from 'cesium';
12
+ import { Story, Meta } from '@storybook/react/types-6-0';
13
+ import { CesiumMap, useCesiumMap } from '../map';
14
+ import { CesiumSceneMode } from '../map.types';
15
+ import { Cesium3DTileset } from '../layers';
16
+ import { LayerType } from '../layers-manager';
17
+ import QuantizedMeshTerrainProvider from './custom/quantized-mesh-terrain-provider';
18
+
19
+ export default {
20
+ title: 'Cesium Map/QuantizedMesh',
21
+ component: CesiumMap,
22
+ parameters: {
23
+ layout: 'fullscreen',
24
+ },
25
+ } as Meta;
26
+
27
+ const mapDivStyle = {
28
+ height: '90%',
29
+ width: '100%',
30
+ position: 'absolute' as const,
31
+ };
32
+
33
+ const BASE_MAPS = {
34
+ maps: [
35
+ {
36
+ id: '1st',
37
+ title: '1st Map Title',
38
+ isCurrent: true,
39
+ thumbnail:
40
+ 'https://nsw.digitaltwin.terria.io/build/efa2f6c408eb790753a9b5fb2f3dc678.png',
41
+ baseRasteLayers: [
42
+ {
43
+ id: 'GOOGLE_TERRAIN',
44
+ type: 'XYZ_LAYER' as LayerType,
45
+ opacity: 1,
46
+ zIndex: 0,
47
+ options: {
48
+ url: 'https://mt1.google.com/vt/lyrs=s&x={x}&y={y}&z={z}',
49
+ layers: '',
50
+ credit: 'GOOGLE',
51
+ },
52
+ },
53
+ ],
54
+ baseVectorLayers: [],
55
+ },
56
+ ],
57
+ };
58
+
59
+ const EllipsoidProvider = new EllipsoidTerrainProvider({});
60
+
61
+ const CesiumProvider = new CesiumTerrainProvider({
62
+ url: new Resource({
63
+ url: 'https://my-assets.cesium.com/1',
64
+ headers: {
65
+ authorization: 'Bearer <my-access-token>',
66
+ },
67
+ }),
68
+ });
69
+
70
+ const VRTheWorldProvider = new VRTheWorldTerrainProvider({
71
+ url: 'http://www.vr-theworld.com/vr-theworld/tiles1.0.0/73/',
72
+ });
73
+
74
+ const ArcGisProvider = new ArcGISTiledElevationTerrainProvider({
75
+ url:
76
+ 'https://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer',
77
+ });
78
+
79
+ const QuantizedMeshProvider = new QuantizedMeshTerrainProvider({
80
+ getUrl: (x: number, y: number, level: number): string => {
81
+ const tilingScheme = new WebMercatorTilingScheme();
82
+ const column = x;
83
+ const row = tilingScheme.getNumberOfYTilesAtLevel(level) - y - 1;
84
+
85
+ return `/mock/terrain_example_tiles/${level}/${column}/${row}.terrain`;
86
+ },
87
+ credit: `Mapcolonies`,
88
+ });
89
+
90
+ const terrainProviderList = [
91
+ {
92
+ id: 'NONE',
93
+ value: EllipsoidProvider,
94
+ },
95
+ {
96
+ id: 'Cesium Terrain Provider',
97
+ value: CesiumProvider,
98
+ },
99
+ {
100
+ id: 'V R The World Terrain Provider (Hight Map)',
101
+ value: VRTheWorldProvider,
102
+ },
103
+ {
104
+ id: 'Arc Gis Terrain Provider',
105
+ value: ArcGisProvider,
106
+ },
107
+ {
108
+ id: 'Custom Terrain Provider',
109
+ value: QuantizedMeshProvider,
110
+ },
111
+ ];
112
+
113
+ interface ITerrainProviderItem {
114
+ id: string;
115
+ value: TerrainProvider | undefined;
116
+ }
117
+
118
+ interface ITerrainProviderSelectorProps {
119
+ terrainProviderList: ITerrainProviderItem[];
120
+ }
121
+
122
+ const TerrainProviderSelector: React.FC<ITerrainProviderSelectorProps> = ({
123
+ terrainProviderList,
124
+ }) => {
125
+ const mapViewer = useCesiumMap();
126
+ const [depthTest, setDepthTest] = useState<boolean>(false);
127
+
128
+ const scene = mapViewer.scene;
129
+
130
+ const handleDepthTestChange = (e: ChangeEvent<HTMLInputElement>): void => {
131
+ setDepthTest(e.target.checked);
132
+ scene.globe.depthTestAgainstTerrain = !depthTest;
133
+ };
134
+
135
+ return (
136
+ <>
137
+ <select
138
+ defaultValue={terrainProviderList[0].id}
139
+ onChange={(evt): void => {
140
+ const selected = terrainProviderList.find(
141
+ (item) => item.id === evt.target.value
142
+ );
143
+ mapViewer.terrainProvider = (selected as ITerrainProviderItem)
144
+ .value as TerrainProvider;
145
+ }}
146
+ >
147
+ {terrainProviderList.map((provider) => {
148
+ return <option key={provider.id}>{provider.id}</option>;
149
+ })}
150
+ </select>
151
+ <br />
152
+ <input
153
+ type="checkbox"
154
+ id="input"
155
+ checked={depthTest}
156
+ onChange={handleDepthTestChange}
157
+ />
158
+ <label htmlFor="input">depthTestAgainstTerrain</label>
159
+ </>
160
+ );
161
+ };
162
+
163
+ export const QuantizedMeshProviders: Story = () => {
164
+ // const [center] = useState<[number, number]>([24, -200]);
165
+ const [center] = useState<[number, number]>([-122, 43]);
166
+ return (
167
+ <div style={mapDivStyle}>
168
+ <CesiumMap
169
+ center={center}
170
+ zoom={5}
171
+ imageryProvider={false}
172
+ sceneModes={[CesiumSceneMode.SCENE3D, CesiumSceneMode.COLUMBUS_VIEW]}
173
+ baseMaps={BASE_MAPS}
174
+ mapProjection={new WebMercatorProjection()}
175
+ >
176
+ <Cesium3DTileset
177
+ isZoomTo={true}
178
+ url="/mock/tileset_2/L16_31023/L16_31023.json"
179
+ />
180
+ <TerrainProviderSelector terrainProviderList={terrainProviderList} />
181
+ </CesiumMap>
182
+ </div>
183
+ );
184
+ };
185
+ QuantizedMeshProviders.storyName = 'Providers';
@@ -0,0 +1,15 @@
1
+ import React, { useEffect } from 'react';
2
+ import { viewerCesiumInspectorMixin } from 'cesium';
3
+ import { CesiumViewer, useCesiumMap } from '../map';
4
+
5
+ export interface InspectorProps {}
6
+
7
+ export const InspectorTool: React.FC<InspectorProps> = (props) => {
8
+ const mapViewer: CesiumViewer = useCesiumMap();
9
+
10
+ useEffect(() => {
11
+ mapViewer.extend(viewerCesiumInspectorMixin);
12
+ }, [mapViewer]);
13
+
14
+ return <></>;
15
+ };