@reearth/core 0.0.7-alpha.2 → 0.0.7-alpha.21

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 (434) hide show
  1. package/dist/core.js +34414 -33038
  2. package/dist/core.umd.cjs +3867 -3825
  3. package/dist/{index-DqatWUTw.js → index-DqGWVPtz.js} +0 -1
  4. package/dist/index.d.ts +70 -15
  5. package/package.json +27 -9
  6. package/src/Map/Layer/hooks.ts +6 -3
  7. package/src/Map/Layer/index.tsx +2 -0
  8. package/src/Map/Layers/hooks.ts +27 -0
  9. package/src/Map/Layers/index.tsx +12 -1
  10. package/src/Map/Layers/keys.ts +1 -0
  11. package/src/Map/Sketch/hooks.ts +412 -406
  12. package/src/Map/Sketch/index.tsx +65 -18
  13. package/src/Map/Sketch/sketchMachine.ts +359 -4
  14. package/src/Map/Sketch/sketchMachine.typegen.ts +58 -1
  15. package/src/Map/Sketch/types.ts +10 -20
  16. package/src/Map/Sketch/usePluginSketchLayer.ts +105 -0
  17. package/src/Map/Sketch/useSketch.ts +559 -0
  18. package/src/Map/Sketch/useSketchFeature.ts +198 -0
  19. package/src/Map/hooks.ts +32 -1
  20. package/src/Map/index.tsx +24 -0
  21. package/src/Map/ref.ts +10 -0
  22. package/src/Map/types/index.ts +28 -1
  23. package/src/Map/types/viewerProperty.ts +2 -0
  24. package/src/Visualizer/coreContext.tsx +2 -0
  25. package/src/Visualizer/hooks.ts +39 -2
  26. package/src/Visualizer/index.tsx +20 -0
  27. package/src/engines/Cesium/Feature/Resource/utils.ts +81 -97
  28. package/src/engines/Cesium/Feature/Tileset/hooks.ts +52 -24
  29. package/src/engines/Cesium/Feature/Tileset/useClippingBox.ts +10 -1
  30. package/src/engines/Cesium/Feature/context.ts +1 -0
  31. package/src/engines/Cesium/Feature/index.tsx +6 -2
  32. package/src/engines/Cesium/Feature/utils.tsx +9 -4
  33. package/src/engines/Cesium/Shaders/OverriddenShaders/GlobeFS/IBL.glsl +6 -10
  34. package/src/engines/Cesium/Sketch/ControlPoint.tsx +128 -24
  35. package/src/engines/Cesium/Sketch/ExtrudedControlPoints.tsx +70 -25
  36. package/src/engines/Cesium/Sketch/ExtrudedMeasurement.tsx +3 -1
  37. package/src/engines/Cesium/Sketch/ExtrudedPolygonEntity.tsx +14 -14
  38. package/src/engines/Cesium/Sketch/PolylineEntity.tsx +7 -4
  39. package/src/engines/Cesium/Sketch/SurfaceAddingPoints.tsx +60 -0
  40. package/src/engines/Cesium/Sketch/SurfaceControlPoints.tsx +125 -35
  41. package/src/engines/Cesium/Sketch/constants.ts +5 -0
  42. package/src/engines/Cesium/Sketch/index.tsx +68 -29
  43. package/src/engines/Cesium/common.ts +44 -11
  44. package/src/engines/Cesium/core/Globe.tsx +11 -2
  45. package/src/engines/Cesium/core/Imagery.tsx +7 -2
  46. package/src/engines/Cesium/core/labels/JapanGSIOptimalBVmapVectorMapLabel/JapanGSIOptimalBVmapLabelImagery.tsx +8 -1
  47. package/src/engines/Cesium/core/labels/JapanGSIOptimalBVmapVectorMapLabel/JapanGSIOptimalBVmapVectorMapLabel.tsx +14 -2
  48. package/src/engines/Cesium/core/labels/LabelImageryLayers.tsx +10 -1
  49. package/src/engines/Cesium/core/presets.ts +0 -11
  50. package/src/engines/Cesium/helpers/getGeometryFromEntity.ts +55 -0
  51. package/src/engines/Cesium/hooks/useEngineRef.ts +44 -0
  52. package/src/engines/Cesium/hooks/useOverrideGlobeShader/useOverrideGlobeShader.ts +1 -1
  53. package/src/engines/Cesium/hooks.ts +42 -5
  54. package/src/engines/Cesium/index.tsx +16 -3
  55. package/src/mantle/atoms/compute.ts +5 -1
  56. package/src/mantle/data/geojson.ts +53 -22
  57. package/src/mantle/types/appearance.ts +1 -2
  58. package/src/mantle/types/index.ts +3 -0
  59. package/src/utils/image.ts +1 -11
  60. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_0.json +0 -1
  61. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_1.json +0 -1
  62. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_10.json +0 -1
  63. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_11.json +0 -1
  64. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_12.json +0 -1
  65. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_13.json +0 -1
  66. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_14.json +0 -1
  67. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_15.json +0 -1
  68. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_16.json +0 -1
  69. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_17.json +0 -1
  70. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_18.json +0 -1
  71. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_19.json +0 -1
  72. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_2.json +0 -1
  73. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_20.json +0 -1
  74. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_21.json +0 -1
  75. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_22.json +0 -1
  76. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_23.json +0 -1
  77. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_24.json +0 -1
  78. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_25.json +0 -1
  79. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_26.json +0 -1
  80. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_27.json +0 -1
  81. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_3.json +0 -1
  82. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_4.json +0 -1
  83. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_5.json +0 -1
  84. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_6.json +0 -1
  85. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_7.json +0 -1
  86. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_8.json +0 -1
  87. package/dist/cesium/Assets/IAU2006_XYS/IAU2006_XYS_9.json +0 -1
  88. package/dist/cesium/Assets/Images/bing_maps_credit.png +0 -0
  89. package/dist/cesium/Assets/Images/cesium_credit.png +0 -0
  90. package/dist/cesium/Assets/Images/google_earth_credit.png +0 -0
  91. package/dist/cesium/Assets/Images/ion-credit.png +0 -0
  92. package/dist/cesium/Assets/Textures/LensFlare/DirtMask.jpg +0 -0
  93. package/dist/cesium/Assets/Textures/LensFlare/StarBurst.jpg +0 -0
  94. package/dist/cesium/Assets/Textures/NaturalEarthII/0/0/0.jpg +0 -0
  95. package/dist/cesium/Assets/Textures/NaturalEarthII/0/1/0.jpg +0 -0
  96. package/dist/cesium/Assets/Textures/NaturalEarthII/1/0/0.jpg +0 -0
  97. package/dist/cesium/Assets/Textures/NaturalEarthII/1/0/1.jpg +0 -0
  98. package/dist/cesium/Assets/Textures/NaturalEarthII/1/1/0.jpg +0 -0
  99. package/dist/cesium/Assets/Textures/NaturalEarthII/1/1/1.jpg +0 -0
  100. package/dist/cesium/Assets/Textures/NaturalEarthII/1/2/0.jpg +0 -0
  101. package/dist/cesium/Assets/Textures/NaturalEarthII/1/2/1.jpg +0 -0
  102. package/dist/cesium/Assets/Textures/NaturalEarthII/1/3/0.jpg +0 -0
  103. package/dist/cesium/Assets/Textures/NaturalEarthII/1/3/1.jpg +0 -0
  104. package/dist/cesium/Assets/Textures/NaturalEarthII/2/0/0.jpg +0 -0
  105. package/dist/cesium/Assets/Textures/NaturalEarthII/2/0/1.jpg +0 -0
  106. package/dist/cesium/Assets/Textures/NaturalEarthII/2/0/2.jpg +0 -0
  107. package/dist/cesium/Assets/Textures/NaturalEarthII/2/0/3.jpg +0 -0
  108. package/dist/cesium/Assets/Textures/NaturalEarthII/2/1/0.jpg +0 -0
  109. package/dist/cesium/Assets/Textures/NaturalEarthII/2/1/1.jpg +0 -0
  110. package/dist/cesium/Assets/Textures/NaturalEarthII/2/1/2.jpg +0 -0
  111. package/dist/cesium/Assets/Textures/NaturalEarthII/2/1/3.jpg +0 -0
  112. package/dist/cesium/Assets/Textures/NaturalEarthII/2/2/0.jpg +0 -0
  113. package/dist/cesium/Assets/Textures/NaturalEarthII/2/2/1.jpg +0 -0
  114. package/dist/cesium/Assets/Textures/NaturalEarthII/2/2/2.jpg +0 -0
  115. package/dist/cesium/Assets/Textures/NaturalEarthII/2/2/3.jpg +0 -0
  116. package/dist/cesium/Assets/Textures/NaturalEarthII/2/3/0.jpg +0 -0
  117. package/dist/cesium/Assets/Textures/NaturalEarthII/2/3/1.jpg +0 -0
  118. package/dist/cesium/Assets/Textures/NaturalEarthII/2/3/2.jpg +0 -0
  119. package/dist/cesium/Assets/Textures/NaturalEarthII/2/3/3.jpg +0 -0
  120. package/dist/cesium/Assets/Textures/NaturalEarthII/2/4/0.jpg +0 -0
  121. package/dist/cesium/Assets/Textures/NaturalEarthII/2/4/1.jpg +0 -0
  122. package/dist/cesium/Assets/Textures/NaturalEarthII/2/4/2.jpg +0 -0
  123. package/dist/cesium/Assets/Textures/NaturalEarthII/2/4/3.jpg +0 -0
  124. package/dist/cesium/Assets/Textures/NaturalEarthII/2/5/0.jpg +0 -0
  125. package/dist/cesium/Assets/Textures/NaturalEarthII/2/5/1.jpg +0 -0
  126. package/dist/cesium/Assets/Textures/NaturalEarthII/2/5/2.jpg +0 -0
  127. package/dist/cesium/Assets/Textures/NaturalEarthII/2/5/3.jpg +0 -0
  128. package/dist/cesium/Assets/Textures/NaturalEarthII/2/6/0.jpg +0 -0
  129. package/dist/cesium/Assets/Textures/NaturalEarthII/2/6/1.jpg +0 -0
  130. package/dist/cesium/Assets/Textures/NaturalEarthII/2/6/2.jpg +0 -0
  131. package/dist/cesium/Assets/Textures/NaturalEarthII/2/6/3.jpg +0 -0
  132. package/dist/cesium/Assets/Textures/NaturalEarthII/2/7/0.jpg +0 -0
  133. package/dist/cesium/Assets/Textures/NaturalEarthII/2/7/1.jpg +0 -0
  134. package/dist/cesium/Assets/Textures/NaturalEarthII/2/7/2.jpg +0 -0
  135. package/dist/cesium/Assets/Textures/NaturalEarthII/2/7/3.jpg +0 -0
  136. package/dist/cesium/Assets/Textures/NaturalEarthII/tilemapresource.xml +0 -14
  137. package/dist/cesium/Assets/Textures/SkyBox/tycho2t3_80_mx.jpg +0 -0
  138. package/dist/cesium/Assets/Textures/SkyBox/tycho2t3_80_my.jpg +0 -0
  139. package/dist/cesium/Assets/Textures/SkyBox/tycho2t3_80_mz.jpg +0 -0
  140. package/dist/cesium/Assets/Textures/SkyBox/tycho2t3_80_px.jpg +0 -0
  141. package/dist/cesium/Assets/Textures/SkyBox/tycho2t3_80_py.jpg +0 -0
  142. package/dist/cesium/Assets/Textures/SkyBox/tycho2t3_80_pz.jpg +0 -0
  143. package/dist/cesium/Assets/Textures/maki/airfield.png +0 -0
  144. package/dist/cesium/Assets/Textures/maki/airport.png +0 -0
  145. package/dist/cesium/Assets/Textures/maki/alcohol-shop.png +0 -0
  146. package/dist/cesium/Assets/Textures/maki/america-football.png +0 -0
  147. package/dist/cesium/Assets/Textures/maki/art-gallery.png +0 -0
  148. package/dist/cesium/Assets/Textures/maki/bakery.png +0 -0
  149. package/dist/cesium/Assets/Textures/maki/bank.png +0 -0
  150. package/dist/cesium/Assets/Textures/maki/bar.png +0 -0
  151. package/dist/cesium/Assets/Textures/maki/baseball.png +0 -0
  152. package/dist/cesium/Assets/Textures/maki/basketball.png +0 -0
  153. package/dist/cesium/Assets/Textures/maki/beer.png +0 -0
  154. package/dist/cesium/Assets/Textures/maki/bicycle.png +0 -0
  155. package/dist/cesium/Assets/Textures/maki/building.png +0 -0
  156. package/dist/cesium/Assets/Textures/maki/bus.png +0 -0
  157. package/dist/cesium/Assets/Textures/maki/cafe.png +0 -0
  158. package/dist/cesium/Assets/Textures/maki/camera.png +0 -0
  159. package/dist/cesium/Assets/Textures/maki/campsite.png +0 -0
  160. package/dist/cesium/Assets/Textures/maki/car.png +0 -0
  161. package/dist/cesium/Assets/Textures/maki/cemetery.png +0 -0
  162. package/dist/cesium/Assets/Textures/maki/cesium.png +0 -0
  163. package/dist/cesium/Assets/Textures/maki/chemist.png +0 -0
  164. package/dist/cesium/Assets/Textures/maki/cinema.png +0 -0
  165. package/dist/cesium/Assets/Textures/maki/circle-stroked.png +0 -0
  166. package/dist/cesium/Assets/Textures/maki/circle.png +0 -0
  167. package/dist/cesium/Assets/Textures/maki/city.png +0 -0
  168. package/dist/cesium/Assets/Textures/maki/clothing-store.png +0 -0
  169. package/dist/cesium/Assets/Textures/maki/college.png +0 -0
  170. package/dist/cesium/Assets/Textures/maki/commercial.png +0 -0
  171. package/dist/cesium/Assets/Textures/maki/cricket.png +0 -0
  172. package/dist/cesium/Assets/Textures/maki/cross.png +0 -0
  173. package/dist/cesium/Assets/Textures/maki/dam.png +0 -0
  174. package/dist/cesium/Assets/Textures/maki/danger.png +0 -0
  175. package/dist/cesium/Assets/Textures/maki/disability.png +0 -0
  176. package/dist/cesium/Assets/Textures/maki/dog-park.png +0 -0
  177. package/dist/cesium/Assets/Textures/maki/embassy.png +0 -0
  178. package/dist/cesium/Assets/Textures/maki/emergency-telephone.png +0 -0
  179. package/dist/cesium/Assets/Textures/maki/entrance.png +0 -0
  180. package/dist/cesium/Assets/Textures/maki/farm.png +0 -0
  181. package/dist/cesium/Assets/Textures/maki/fast-food.png +0 -0
  182. package/dist/cesium/Assets/Textures/maki/ferry.png +0 -0
  183. package/dist/cesium/Assets/Textures/maki/fire-station.png +0 -0
  184. package/dist/cesium/Assets/Textures/maki/fuel.png +0 -0
  185. package/dist/cesium/Assets/Textures/maki/garden.png +0 -0
  186. package/dist/cesium/Assets/Textures/maki/gift.png +0 -0
  187. package/dist/cesium/Assets/Textures/maki/golf.png +0 -0
  188. package/dist/cesium/Assets/Textures/maki/grocery.png +0 -0
  189. package/dist/cesium/Assets/Textures/maki/hairdresser.png +0 -0
  190. package/dist/cesium/Assets/Textures/maki/harbor.png +0 -0
  191. package/dist/cesium/Assets/Textures/maki/heart.png +0 -0
  192. package/dist/cesium/Assets/Textures/maki/heliport.png +0 -0
  193. package/dist/cesium/Assets/Textures/maki/hospital.png +0 -0
  194. package/dist/cesium/Assets/Textures/maki/ice-cream.png +0 -0
  195. package/dist/cesium/Assets/Textures/maki/industrial.png +0 -0
  196. package/dist/cesium/Assets/Textures/maki/land-use.png +0 -0
  197. package/dist/cesium/Assets/Textures/maki/laundry.png +0 -0
  198. package/dist/cesium/Assets/Textures/maki/library.png +0 -0
  199. package/dist/cesium/Assets/Textures/maki/lighthouse.png +0 -0
  200. package/dist/cesium/Assets/Textures/maki/lodging.png +0 -0
  201. package/dist/cesium/Assets/Textures/maki/logging.png +0 -0
  202. package/dist/cesium/Assets/Textures/maki/london-underground.png +0 -0
  203. package/dist/cesium/Assets/Textures/maki/marker-stroked.png +0 -0
  204. package/dist/cesium/Assets/Textures/maki/marker.png +0 -0
  205. package/dist/cesium/Assets/Textures/maki/minefield.png +0 -0
  206. package/dist/cesium/Assets/Textures/maki/mobilephone.png +0 -0
  207. package/dist/cesium/Assets/Textures/maki/monument.png +0 -0
  208. package/dist/cesium/Assets/Textures/maki/museum.png +0 -0
  209. package/dist/cesium/Assets/Textures/maki/music.png +0 -0
  210. package/dist/cesium/Assets/Textures/maki/oil-well.png +0 -0
  211. package/dist/cesium/Assets/Textures/maki/park.png +0 -0
  212. package/dist/cesium/Assets/Textures/maki/park2.png +0 -0
  213. package/dist/cesium/Assets/Textures/maki/parking-garage.png +0 -0
  214. package/dist/cesium/Assets/Textures/maki/parking.png +0 -0
  215. package/dist/cesium/Assets/Textures/maki/pharmacy.png +0 -0
  216. package/dist/cesium/Assets/Textures/maki/pitch.png +0 -0
  217. package/dist/cesium/Assets/Textures/maki/place-of-worship.png +0 -0
  218. package/dist/cesium/Assets/Textures/maki/playground.png +0 -0
  219. package/dist/cesium/Assets/Textures/maki/police.png +0 -0
  220. package/dist/cesium/Assets/Textures/maki/polling-place.png +0 -0
  221. package/dist/cesium/Assets/Textures/maki/post.png +0 -0
  222. package/dist/cesium/Assets/Textures/maki/prison.png +0 -0
  223. package/dist/cesium/Assets/Textures/maki/rail-above.png +0 -0
  224. package/dist/cesium/Assets/Textures/maki/rail-light.png +0 -0
  225. package/dist/cesium/Assets/Textures/maki/rail-metro.png +0 -0
  226. package/dist/cesium/Assets/Textures/maki/rail-underground.png +0 -0
  227. package/dist/cesium/Assets/Textures/maki/rail.png +0 -0
  228. package/dist/cesium/Assets/Textures/maki/religious-christian.png +0 -0
  229. package/dist/cesium/Assets/Textures/maki/religious-jewish.png +0 -0
  230. package/dist/cesium/Assets/Textures/maki/religious-muslim.png +0 -0
  231. package/dist/cesium/Assets/Textures/maki/restaurant.png +0 -0
  232. package/dist/cesium/Assets/Textures/maki/roadblock.png +0 -0
  233. package/dist/cesium/Assets/Textures/maki/rocket.png +0 -0
  234. package/dist/cesium/Assets/Textures/maki/school.png +0 -0
  235. package/dist/cesium/Assets/Textures/maki/scooter.png +0 -0
  236. package/dist/cesium/Assets/Textures/maki/shop.png +0 -0
  237. package/dist/cesium/Assets/Textures/maki/skiing.png +0 -0
  238. package/dist/cesium/Assets/Textures/maki/slaughterhouse.png +0 -0
  239. package/dist/cesium/Assets/Textures/maki/soccer.png +0 -0
  240. package/dist/cesium/Assets/Textures/maki/square-stroked.png +0 -0
  241. package/dist/cesium/Assets/Textures/maki/square.png +0 -0
  242. package/dist/cesium/Assets/Textures/maki/star-stroked.png +0 -0
  243. package/dist/cesium/Assets/Textures/maki/star.png +0 -0
  244. package/dist/cesium/Assets/Textures/maki/suitcase.png +0 -0
  245. package/dist/cesium/Assets/Textures/maki/swimming.png +0 -0
  246. package/dist/cesium/Assets/Textures/maki/telephone.png +0 -0
  247. package/dist/cesium/Assets/Textures/maki/tennis.png +0 -0
  248. package/dist/cesium/Assets/Textures/maki/theatre.png +0 -0
  249. package/dist/cesium/Assets/Textures/maki/toilets.png +0 -0
  250. package/dist/cesium/Assets/Textures/maki/town-hall.png +0 -0
  251. package/dist/cesium/Assets/Textures/maki/town.png +0 -0
  252. package/dist/cesium/Assets/Textures/maki/triangle-stroked.png +0 -0
  253. package/dist/cesium/Assets/Textures/maki/triangle.png +0 -0
  254. package/dist/cesium/Assets/Textures/maki/village.png +0 -0
  255. package/dist/cesium/Assets/Textures/maki/warehouse.png +0 -0
  256. package/dist/cesium/Assets/Textures/maki/waste-basket.png +0 -0
  257. package/dist/cesium/Assets/Textures/maki/water.png +0 -0
  258. package/dist/cesium/Assets/Textures/maki/wetland.png +0 -0
  259. package/dist/cesium/Assets/Textures/maki/zoo.png +0 -0
  260. package/dist/cesium/Assets/Textures/moonSmall.jpg +0 -0
  261. package/dist/cesium/Assets/Textures/pin.svg +0 -1
  262. package/dist/cesium/Assets/Textures/waterNormals.jpg +0 -0
  263. package/dist/cesium/Assets/Textures/waterNormalsSmall.jpg +0 -0
  264. package/dist/cesium/Assets/approximateTerrainHeights.json +0 -1
  265. package/dist/cesium/ThirdParty/Workers/package.json +0 -1
  266. package/dist/cesium/ThirdParty/Workers/pako_deflate.min.js +0 -1
  267. package/dist/cesium/ThirdParty/Workers/pako_inflate.min.js +0 -1
  268. package/dist/cesium/ThirdParty/Workers/z-worker-pako.js +0 -1
  269. package/dist/cesium/ThirdParty/basis_transcoder.wasm +0 -0
  270. package/dist/cesium/ThirdParty/draco_decoder.wasm +0 -0
  271. package/dist/cesium/ThirdParty/google-earth-dbroot-parser.js +0 -1
  272. package/dist/cesium/Widgets/Animation/Animation.css +0 -127
  273. package/dist/cesium/Widgets/Animation/lighter.css +0 -70
  274. package/dist/cesium/Widgets/BaseLayerPicker/BaseLayerPicker.css +0 -108
  275. package/dist/cesium/Widgets/BaseLayerPicker/lighter.css +0 -22
  276. package/dist/cesium/Widgets/Cesium3DTilesInspector/Cesium3DTilesInspector.css +0 -102
  277. package/dist/cesium/Widgets/CesiumInspector/CesiumInspector.css +0 -113
  278. package/dist/cesium/Widgets/CesiumWidget/CesiumWidget.css +0 -124
  279. package/dist/cesium/Widgets/CesiumWidget/lighter.css +0 -14
  280. package/dist/cesium/Widgets/FullscreenButton/FullscreenButton.css +0 -8
  281. package/dist/cesium/Widgets/Geocoder/Geocoder.css +0 -70
  282. package/dist/cesium/Widgets/Geocoder/lighter.css +0 -17
  283. package/dist/cesium/Widgets/I3SBuildingSceneLayerExplorer/I3SBuildingSceneLayerExplorer.css +0 -27
  284. package/dist/cesium/Widgets/Images/ImageryProviders/ArcGisMapServiceWorldHillshade.png +0 -0
  285. package/dist/cesium/Widgets/Images/ImageryProviders/ArcGisMapServiceWorldImagery.png +0 -0
  286. package/dist/cesium/Widgets/Images/ImageryProviders/ArcGisMapServiceWorldOcean.png +0 -0
  287. package/dist/cesium/Widgets/Images/ImageryProviders/bingAerial.png +0 -0
  288. package/dist/cesium/Widgets/Images/ImageryProviders/bingAerialLabels.png +0 -0
  289. package/dist/cesium/Widgets/Images/ImageryProviders/bingRoads.png +0 -0
  290. package/dist/cesium/Widgets/Images/ImageryProviders/blueMarble.png +0 -0
  291. package/dist/cesium/Widgets/Images/ImageryProviders/earthAtNight.png +0 -0
  292. package/dist/cesium/Widgets/Images/ImageryProviders/mapQuestOpenStreetMap.png +0 -0
  293. package/dist/cesium/Widgets/Images/ImageryProviders/mapboxSatellite.png +0 -0
  294. package/dist/cesium/Widgets/Images/ImageryProviders/mapboxStreets.png +0 -0
  295. package/dist/cesium/Widgets/Images/ImageryProviders/mapboxTerrain.png +0 -0
  296. package/dist/cesium/Widgets/Images/ImageryProviders/naturalEarthII.png +0 -0
  297. package/dist/cesium/Widgets/Images/ImageryProviders/openStreetMap.png +0 -0
  298. package/dist/cesium/Widgets/Images/ImageryProviders/sentinel-2.png +0 -0
  299. package/dist/cesium/Widgets/Images/ImageryProviders/stadiaAlidadeSmooth.png +0 -0
  300. package/dist/cesium/Widgets/Images/ImageryProviders/stadiaAlidadeSmoothDark.png +0 -0
  301. package/dist/cesium/Widgets/Images/ImageryProviders/stamenToner.png +0 -0
  302. package/dist/cesium/Widgets/Images/ImageryProviders/stamenWatercolor.png +0 -0
  303. package/dist/cesium/Widgets/Images/NavigationHelp/Mouse.svg +0 -84
  304. package/dist/cesium/Widgets/Images/NavigationHelp/MouseLeft.svg +0 -76
  305. package/dist/cesium/Widgets/Images/NavigationHelp/MouseMiddle.svg +0 -76
  306. package/dist/cesium/Widgets/Images/NavigationHelp/MouseRight.svg +0 -76
  307. package/dist/cesium/Widgets/Images/NavigationHelp/Touch.svg +0 -120
  308. package/dist/cesium/Widgets/Images/NavigationHelp/TouchDrag.svg +0 -129
  309. package/dist/cesium/Widgets/Images/NavigationHelp/TouchRotate.svg +0 -76
  310. package/dist/cesium/Widgets/Images/NavigationHelp/TouchTilt.svg +0 -135
  311. package/dist/cesium/Widgets/Images/NavigationHelp/TouchZoom.svg +0 -74
  312. package/dist/cesium/Widgets/Images/TerrainProviders/CesiumWorldTerrain.png +0 -0
  313. package/dist/cesium/Widgets/Images/TerrainProviders/Ellipsoid.png +0 -0
  314. package/dist/cesium/Widgets/Images/TimelineIcons.png +0 -0
  315. package/dist/cesium/Widgets/Images/info-loading.gif +0 -0
  316. package/dist/cesium/Widgets/InfoBox/InfoBox.css +0 -92
  317. package/dist/cesium/Widgets/InfoBox/InfoBoxDescription.css +0 -178
  318. package/dist/cesium/Widgets/NavigationHelpButton/NavigationHelpButton.css +0 -93
  319. package/dist/cesium/Widgets/NavigationHelpButton/lighter.css +0 -38
  320. package/dist/cesium/Widgets/PerformanceWatchdog/PerformanceWatchdog.css +0 -15
  321. package/dist/cesium/Widgets/ProjectionPicker/ProjectionPicker.css +0 -38
  322. package/dist/cesium/Widgets/SceneModePicker/SceneModePicker.css +0 -56
  323. package/dist/cesium/Widgets/SelectionIndicator/SelectionIndicator.css +0 -20
  324. package/dist/cesium/Widgets/Timeline/Timeline.css +0 -103
  325. package/dist/cesium/Widgets/Timeline/lighter.css +0 -23
  326. package/dist/cesium/Widgets/VRButton/VRButton.css +0 -8
  327. package/dist/cesium/Widgets/Viewer/Viewer.css +0 -107
  328. package/dist/cesium/Widgets/VoxelInspector/VoxelInspector.css +0 -16
  329. package/dist/cesium/Widgets/lighter.css +0 -237
  330. package/dist/cesium/Widgets/lighterShared.css +0 -46
  331. package/dist/cesium/Widgets/shared.css +0 -103
  332. package/dist/cesium/Widgets/widgets.css +0 -1346
  333. package/dist/cesium/Workers/chunk-2ED5WI77.js +0 -26
  334. package/dist/cesium/Workers/chunk-2MBPFWCP.js +0 -26
  335. package/dist/cesium/Workers/chunk-3C74MLG3.js +0 -26
  336. package/dist/cesium/Workers/chunk-45U7TTT3.js +0 -26
  337. package/dist/cesium/Workers/chunk-4N7SRDH5.js +0 -26
  338. package/dist/cesium/Workers/chunk-4T6AS6BZ.js +0 -26
  339. package/dist/cesium/Workers/chunk-5AG2MVRM.js +0 -26
  340. package/dist/cesium/Workers/chunk-5Z6L2FHX.js +0 -26
  341. package/dist/cesium/Workers/chunk-6AUUBDOF.js +0 -26
  342. package/dist/cesium/Workers/chunk-74N6MC2V.js +0 -26
  343. package/dist/cesium/Workers/chunk-7VJK3KHI.js +0 -26
  344. package/dist/cesium/Workers/chunk-7VZHIB6P.js +0 -26
  345. package/dist/cesium/Workers/chunk-7X2YQ6I4.js +0 -27
  346. package/dist/cesium/Workers/chunk-B2SKQ7LU.js +0 -26
  347. package/dist/cesium/Workers/chunk-B4TQDFIE.js +0 -26
  348. package/dist/cesium/Workers/chunk-B6TRTFAA.js +0 -26
  349. package/dist/cesium/Workers/chunk-BK3HCS7I.js +0 -26
  350. package/dist/cesium/Workers/chunk-BOPB43LN.js +0 -26
  351. package/dist/cesium/Workers/chunk-C6DMEJQ7.js +0 -26
  352. package/dist/cesium/Workers/chunk-CN7UN2OZ.js +0 -26
  353. package/dist/cesium/Workers/chunk-CSISXEG7.js +0 -26
  354. package/dist/cesium/Workers/chunk-CUOR5F7T.js +0 -28
  355. package/dist/cesium/Workers/chunk-DGCK3LD2.js +0 -30
  356. package/dist/cesium/Workers/chunk-DXEZYE3K.js +0 -62
  357. package/dist/cesium/Workers/chunk-EXBFEYPQ.js +0 -26
  358. package/dist/cesium/Workers/chunk-FK5KFB6H.js +0 -26
  359. package/dist/cesium/Workers/chunk-HPBHKP5S.js +0 -26
  360. package/dist/cesium/Workers/chunk-JCJ24DHF.js +0 -26
  361. package/dist/cesium/Workers/chunk-JEWHFDAA.js +0 -26
  362. package/dist/cesium/Workers/chunk-JZLZJJQD.js +0 -26
  363. package/dist/cesium/Workers/chunk-KRZBI2MU.js +0 -26
  364. package/dist/cesium/Workers/chunk-KTTUANTJ.js +0 -26
  365. package/dist/cesium/Workers/chunk-LDCAXLGS.js +0 -26
  366. package/dist/cesium/Workers/chunk-LOPN5R3I.js +0 -26
  367. package/dist/cesium/Workers/chunk-MDLPQIMP.js +0 -26
  368. package/dist/cesium/Workers/chunk-MRR3RGFO.js +0 -26
  369. package/dist/cesium/Workers/chunk-NPBZI5YA.js +0 -26
  370. package/dist/cesium/Workers/chunk-NUSW5B6A.js +0 -26
  371. package/dist/cesium/Workers/chunk-OUXRUXNB.js +0 -26
  372. package/dist/cesium/Workers/chunk-QPOPEH3M.js +0 -26
  373. package/dist/cesium/Workers/chunk-R2AN7EKC.js +0 -26
  374. package/dist/cesium/Workers/chunk-RURL6ZX2.js +0 -26
  375. package/dist/cesium/Workers/chunk-SUQM3OSW.js +0 -28
  376. package/dist/cesium/Workers/chunk-UBIRX2SP.js +0 -26
  377. package/dist/cesium/Workers/chunk-VAKC5J5C.js +0 -26
  378. package/dist/cesium/Workers/chunk-VHNZBQTR.js +0 -27
  379. package/dist/cesium/Workers/chunk-VKV642QV.js +0 -26
  380. package/dist/cesium/Workers/chunk-VMSXG4OA.js +0 -26
  381. package/dist/cesium/Workers/chunk-VQZSIOZW.js +0 -26
  382. package/dist/cesium/Workers/chunk-WZUWQMI7.js +0 -26
  383. package/dist/cesium/Workers/chunk-YBI55DLZ.js +0 -26
  384. package/dist/cesium/Workers/chunk-YEJWCH6C.js +0 -26
  385. package/dist/cesium/Workers/chunk-YPDO7SPO.js +0 -26
  386. package/dist/cesium/Workers/chunk-ZYWD6OQH.js +0 -26
  387. package/dist/cesium/Workers/combineGeometry.js +0 -26
  388. package/dist/cesium/Workers/createBoxGeometry.js +0 -26
  389. package/dist/cesium/Workers/createBoxOutlineGeometry.js +0 -26
  390. package/dist/cesium/Workers/createCircleGeometry.js +0 -26
  391. package/dist/cesium/Workers/createCircleOutlineGeometry.js +0 -26
  392. package/dist/cesium/Workers/createCoplanarPolygonGeometry.js +0 -26
  393. package/dist/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +0 -26
  394. package/dist/cesium/Workers/createCorridorGeometry.js +0 -26
  395. package/dist/cesium/Workers/createCorridorOutlineGeometry.js +0 -26
  396. package/dist/cesium/Workers/createCylinderGeometry.js +0 -26
  397. package/dist/cesium/Workers/createCylinderOutlineGeometry.js +0 -26
  398. package/dist/cesium/Workers/createEllipseGeometry.js +0 -26
  399. package/dist/cesium/Workers/createEllipseOutlineGeometry.js +0 -26
  400. package/dist/cesium/Workers/createEllipsoidGeometry.js +0 -26
  401. package/dist/cesium/Workers/createEllipsoidOutlineGeometry.js +0 -26
  402. package/dist/cesium/Workers/createFrustumGeometry.js +0 -26
  403. package/dist/cesium/Workers/createFrustumOutlineGeometry.js +0 -26
  404. package/dist/cesium/Workers/createGeometry.js +0 -26
  405. package/dist/cesium/Workers/createGroundPolylineGeometry.js +0 -26
  406. package/dist/cesium/Workers/createPlaneGeometry.js +0 -26
  407. package/dist/cesium/Workers/createPlaneOutlineGeometry.js +0 -26
  408. package/dist/cesium/Workers/createPolygonGeometry.js +0 -26
  409. package/dist/cesium/Workers/createPolygonOutlineGeometry.js +0 -26
  410. package/dist/cesium/Workers/createPolylineGeometry.js +0 -26
  411. package/dist/cesium/Workers/createPolylineVolumeGeometry.js +0 -26
  412. package/dist/cesium/Workers/createPolylineVolumeOutlineGeometry.js +0 -26
  413. package/dist/cesium/Workers/createRectangleGeometry.js +0 -26
  414. package/dist/cesium/Workers/createRectangleOutlineGeometry.js +0 -26
  415. package/dist/cesium/Workers/createSimplePolylineGeometry.js +0 -26
  416. package/dist/cesium/Workers/createSphereGeometry.js +0 -26
  417. package/dist/cesium/Workers/createSphereOutlineGeometry.js +0 -26
  418. package/dist/cesium/Workers/createTaskProcessorWorker.js +0 -26
  419. package/dist/cesium/Workers/createVectorTileClampedPolylines.js +0 -26
  420. package/dist/cesium/Workers/createVectorTileGeometries.js +0 -26
  421. package/dist/cesium/Workers/createVectorTilePoints.js +0 -26
  422. package/dist/cesium/Workers/createVectorTilePolygons.js +0 -26
  423. package/dist/cesium/Workers/createVectorTilePolylines.js +0 -26
  424. package/dist/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +0 -26
  425. package/dist/cesium/Workers/createVerticesFromHeightmap.js +0 -26
  426. package/dist/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +0 -26
  427. package/dist/cesium/Workers/createWallGeometry.js +0 -26
  428. package/dist/cesium/Workers/createWallOutlineGeometry.js +0 -26
  429. package/dist/cesium/Workers/decodeDraco.js +0 -26
  430. package/dist/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +0 -26
  431. package/dist/cesium/Workers/decodeI3S.js +0 -26
  432. package/dist/cesium/Workers/transcodeKTX2.js +0 -56
  433. package/dist/cesium/Workers/transferTypedArrayTest.js +0 -26
  434. package/dist/cesium/Workers/upsampleQuantizedTerrainMesh.js +0 -26
@@ -1,4 +1,3 @@
1
- window.CESIUM_BASE_URL = "/cesium/";
2
1
  var oe = typeof global < "u" ? global : typeof self < "u" ? self : typeof window < "u" ? window : {}, P = [], M = [], Qt = typeof Uint8Array < "u" ? Uint8Array : Array, je = !1;
3
2
  function at() {
4
3
  je = !0;
package/dist/index.d.ts CHANGED
@@ -17,7 +17,6 @@ import { PropsWithoutRef } from 'react';
17
17
  import { ReactNode } from 'react';
18
18
  import { RefAttributes } from 'react';
19
19
  import { RefObject } from 'react';
20
- import { RequireExactlyOne } from 'type-fest';
21
20
  import { WritableAtom } from 'jotai';
22
21
 
23
22
  export declare type AmbientOcclusionProperty = {
@@ -164,13 +163,12 @@ export declare type Cesium3DTilesAppearance = {
164
163
  color?: string;
165
164
  styleUrl?: string;
166
165
  shadows?: "disabled" | "enabled" | "cast_only" | "receive_only";
167
- colorBlendMode?: "highlight" | "replace" | "mix" | "default";
166
+ colorBlendMode?: "highlight" | "replace" | "mix";
168
167
  edgeWidth?: number;
169
168
  edgeColor?: string;
170
169
  selectedFeatureColor?: string;
171
170
  disableIndexingFeature?: boolean;
172
171
  tileset?: string;
173
- apiKey?: string;
174
172
  experimental_clipping?: EXPERIMENTAL_clipping;
175
173
  pointSize?: number;
176
174
  meta?: unknown;
@@ -278,6 +276,7 @@ declare type CommonProps = {
278
276
  isHidden?: boolean;
279
277
  isSelected?: boolean;
280
278
  meta?: Record<string, unknown>;
279
+ sketchEditingFeature?: SketchEditingFeature;
281
280
  };
282
281
 
283
282
  export declare function computeAtom(cache?: typeof globalDataFeaturesCache): WritableAtom<ComputedLayer | undefined, Command, void>;
@@ -299,6 +298,8 @@ export declare type ConditionsExpression = {
299
298
  conditions: [string, string][];
300
299
  };
301
300
 
301
+ declare type ControlPointMouseEventHandler = (index: number, isExtrudedPoint: boolean, type: "mousedown" | "click") => void;
302
+
302
303
  export declare function convertLayer(l: Layer): LegacyLayer | undefined;
303
304
 
304
305
  export declare function convertLegacyCluster(clusters: LegacyCluster[]): Cluster[];
@@ -320,6 +321,8 @@ declare type CoreContext = {
320
321
  handleCameraForceHorizontalRollChange?: (enable?: boolean) => void;
321
322
  handleInteractionModeChange?: (mode?: InteractionModeType | undefined) => void;
322
323
  onSketchPluginFeatureCreate?: (cb: SketchEventCallback) => void;
324
+ onSketchPluginFeatureUpdate?: (cb: SketchEventCallback) => void;
325
+ onSketchPluginFeatureDelete?: (cb: SketchEventCallback) => void;
323
326
  onSketchTypeChange?: (cb: (type: SketchType | undefined) => void) => void;
324
327
  onLayerVisibility?: (cb: (e: LayerVisibilityEvent) => void) => void;
325
328
  onLayerLoad?: (cb: (e: LayerLoadEvent) => void) => void;
@@ -352,6 +355,7 @@ export declare type CoreVisualizerProps = {
352
355
  ready?: boolean;
353
356
  hiddenLayers?: string[];
354
357
  zoomedLayerId?: string;
358
+ displayCredits?: boolean;
355
359
  onCameraChange?: (camera: Camera) => void;
356
360
  onLayerDrop?: (layerId: string, propertyKey: string, position: LatLng | undefined) => void;
357
361
  onLayerSelect?: (layerId: string | undefined, layer: (() => Promise<ComputedLayer | undefined>) | undefined, feature: ComputedFeature | undefined, reason: LayerSelectionReason | undefined) => void;
@@ -359,7 +363,15 @@ export declare type CoreVisualizerProps = {
359
363
  onMount?: () => void;
360
364
  onSketchTypeChangeProp?: (type: SketchType | undefined) => void;
361
365
  onSketchFeatureCreate?: (feature: SketchFeature | null) => void;
366
+ onSketchFeatureUpdate?: (feature: SketchFeature | null) => void;
367
+ onSketchFeatureDelete?: (layerId: string, featureId: string) => void;
362
368
  onInteractionModeChange?: (mode: InteractionModeType) => void;
369
+ onAPIReady?: () => void;
370
+ onCreditsUpdate?: (credits: Credit[]) => void;
371
+ };
372
+
373
+ export declare type Credit = {
374
+ html?: string;
363
375
  };
364
376
 
365
377
  export declare type CursorType = "auto" | "grab" | "crosshair";
@@ -376,6 +388,9 @@ export declare type Data = {
376
388
  updateInterval?: number;
377
389
  parameters?: Record<string, any>;
378
390
  idProperty?: string;
391
+ serviceTokens?: {
392
+ googleMapApiKey?: string;
393
+ };
379
394
  time?: {
380
395
  property?: string;
381
396
  interval?: number;
@@ -489,6 +504,7 @@ export declare type EngineProps = {
489
504
  isLayerDragging?: boolean;
490
505
  shouldRender?: boolean;
491
506
  meta?: Record<string, unknown>;
507
+ displayCredits?: boolean;
492
508
  layersRef?: RefObject<LayersRef>;
493
509
  requestingRenderMode?: MutableRefObject<RequestingRenderMode>;
494
510
  timelineManagerRef?: TimelineManagerRef;
@@ -503,6 +519,7 @@ export declare type EngineProps = {
503
519
  onLayerSelectWithRectStart?: (e: LayerSelectWithRectStart) => void;
504
520
  onLayerSelectWithRectMove?: (e: LayerSelectWithRectMove) => void;
505
521
  onLayerSelectWithRectEnd?: (e: LayerSelectWithRectEnd) => void;
522
+ onCreditsUpdate?: (credits: Credit[]) => void;
506
523
  };
507
524
 
508
525
  export declare type EngineRef = {
@@ -532,6 +549,7 @@ export declare type EngineRef = {
532
549
  setView: (camera: CameraPosition) => void;
533
550
  toWindowPosition: (position: [x: number, y: number, z: number]) => [x: number, y: number] | undefined;
534
551
  getExtrudedHeight: (position: [x: number, y: number, z: number], windowPosition: [x: number, y: number]) => number | undefined;
552
+ getExtrudedPoint: (position: [x: number, y: number, z: number], extrutedHeight: number) => Position3d | undefined;
535
553
  getSurfaceDistance: (point1: Cartesian3, point2: Cartesian3) => number | undefined;
536
554
  equalsEpsilon2d: (point1: Position2d, point2: Position2d, relativeEpsilon: number | undefined, absoluteEpsilon: number | undefined) => boolean;
537
555
  equalsEpsilon3d: (point1: Position3d, point2: Position3d, relativeEpsilon: number | undefined, absoluteEpsilon: number | undefined) => boolean;
@@ -589,6 +607,8 @@ export declare type EngineRef = {
589
607
  selectFeatures: (layerId: string, featureId: string[]) => void;
590
608
  unselectFeatures: (layerId: string, featureId: string[]) => void;
591
609
  pickManyFromViewport: (windowPosition: [x: number, y: number], windowWidth: number, windowHeight: number, condition?: (f: PickedFeature) => boolean) => PickedFeature[] | undefined;
610
+ calcRectangleControlPoint: (p1: Position3d, p2: Position3d, p3: Position3d) => [p1: Position3d, p2: Position3d, p3: Position3d];
611
+ getCredits: () => Credit[] | undefined;
592
612
  } & MouseEventHandles;
593
613
 
594
614
  export declare const engines: {
@@ -747,11 +767,6 @@ export declare type FrustumAppearance = {
747
767
 
748
768
  export declare type Geometry = Point | LineString | Polygon_2 | MultiPoint | MultiLineString | MultiPolygon;
749
769
 
750
- declare type GeometryOptions = {
751
- type: SketchType;
752
- controlPoints: readonly Position3d[];
753
- };
754
-
755
770
  export declare type GeometryOptionsXYZ = {
756
771
  type: SketchType;
757
772
  controlPoints: Position3d[];
@@ -954,6 +969,8 @@ export declare type LayersRef = {
954
969
  }) | null) => void;
955
970
  deleteLayer: (...ids: string[]) => void;
956
971
  isLayer: (obj: any) => obj is LazyLayer;
972
+ isComputedLayer: (obj: any) => obj is ComputedLayer;
973
+ isTempLayer: (layerId?: string) => boolean;
957
974
  layers: () => LazyLayer[];
958
975
  walk: <T>(fn: (layer: LazyLayer, index: number, parents: LazyLayer[]) => T | void) => T | undefined;
959
976
  find: (fn: (layer: LazyLayer, index: number, parents: LazyLayer[]) => boolean) => LazyLayer | undefined;
@@ -984,6 +1001,7 @@ export declare type LayerVisibilityEvent = {
984
1001
  */
985
1002
  export declare type LazyLayer = Readonly<Layer> & {
986
1003
  computed?: Readonly<ComputedLayer>;
1004
+ isTempLayer?: boolean;
987
1005
  pluginId?: string;
988
1006
  extensionId?: string;
989
1007
  property?: any;
@@ -1074,7 +1092,8 @@ export declare type LUT = readonly ColorTuple[];
1074
1092
  declare const Map_2: ForwardRefExoticComponent< {
1075
1093
  engines?: Record<string, Engine> | undefined;
1076
1094
  engine?: string | undefined;
1077
- } & Omit<Props_2, "Feature" | "viewerProperty" | "selectionReason" | "delegatedDataTypes" | "clusterComponent" | "selectedLayerId"> & Omit<EngineProps, "onLayerSelect" | "selectedLayerId" | "layerSelectionReason"> & Omit<SketchProps, "engineRef" | "layersRef" | "SketchComponent"> & {
1095
+ onAPIReady?: (() => void) | undefined;
1096
+ } & Omit<Props_2, "Feature" | "viewerProperty" | "selectionReason" | "delegatedDataTypes" | "clusterComponent" | "selectedLayerId"> & Omit<EngineProps, "onLayerSelect" | "selectedLayerId" | "layerSelectionReason"> & Omit<SketchProps, "engineRef" | "SketchComponent" | "layersRef"> & {
1078
1097
  cursor?: CursorType | undefined;
1079
1098
  } & RefAttributes<MapRef>>;
1080
1099
  export { Map_2 as Map }
@@ -1316,6 +1335,7 @@ declare type PropertyItem<T> = {
1316
1335
  export declare type Props = {
1317
1336
  engines?: Record<string, Engine>;
1318
1337
  engine?: string;
1338
+ onAPIReady?: () => void;
1319
1339
  } & Omit<Props_2, "Feature" | "clusterComponent" | "selectionReason" | "delegatedDataTypes" | "selectedLayerId" | "viewerProperty"> & Omit<EngineProps, "onLayerSelect" | "layerSelectionReason" | "selectedLayerId"> & Omit<SketchProps, "layersRef" | "engineRef" | "SketchComponent"> & {
1320
1340
  cursor?: CursorType;
1321
1341
  };
@@ -1331,6 +1351,7 @@ declare type Props_2 = Omit<Props_3, "atomMap" | "isHidden" | "selectedLayerId">
1331
1351
  requestingRenderMode?: MutableRefObject<RequestingRenderMode>;
1332
1352
  engineRef?: RefObject<EngineRef>;
1333
1353
  onLayerSelect?: (layerId: string | undefined, featureId: string | undefined, layer: (() => Promise<ComputedLayer | undefined>) | undefined, reason: LayerSelectionReason | undefined, info: SelectedFeatureInfo | undefined) => void;
1354
+ onMount?: () => void;
1334
1355
  };
1335
1356
 
1336
1357
  declare type Props_3 = {
@@ -1458,17 +1479,34 @@ export declare type ShadowProperty = {
1458
1479
 
1459
1480
  export declare type SketchAppearance = Partial<LayerAppearanceTypes>;
1460
1481
 
1461
- declare type SketchComponentProps = RequireExactlyOne<{
1462
- geometry?: LineString | Polygon_2 | MultiPolygon | null;
1463
- geometryOptions?: GeometryOptions | null;
1482
+ declare type SketchComponentProps = {
1483
+ geometryOptions?: {
1484
+ type: SketchType;
1485
+ controlPoints: readonly Position3d[];
1486
+ } | null;
1464
1487
  extrudedHeight?: number;
1488
+ extrudedPoint?: Position3d;
1489
+ centroidBasePoint?: Position3d;
1490
+ centroidExtrudedPoint?: Position3d;
1465
1491
  disableShadow?: boolean;
1466
- enableRelativeHeight?: boolean;
1467
1492
  color?: string;
1468
- }, "geometry" | "geometryOptions">;
1493
+ isEditing?: boolean;
1494
+ catchedControlPointIndex?: number;
1495
+ catchedExtrudedPoint?: boolean;
1496
+ selectedControlPointIndex?: number;
1497
+ handleControlPointMouseEvent?: ControlPointMouseEventHandler;
1498
+ handleAddControlPoint?: (position: Position3d, index: number) => void;
1499
+ };
1469
1500
 
1470
1501
  export declare type SketchComponentType = ComponentType<SketchComponentProps>;
1471
1502
 
1503
+ export declare type SketchEditFeatureChangeCb = (feature: SketchEditingFeature | undefined) => void;
1504
+
1505
+ export declare type SketchEditingFeature = {
1506
+ layerId: string;
1507
+ feature: ComputedFeature;
1508
+ };
1509
+
1472
1510
  export declare type SketchEventCallback = (event: SketchEventProps) => void;
1473
1511
 
1474
1512
  export declare type SketchEventProps = {
@@ -1489,9 +1527,9 @@ export declare type SketchOptions = {
1489
1527
  appearance?: SketchAppearance;
1490
1528
  dataOnly?: boolean;
1491
1529
  disableShadow?: boolean;
1492
- enableRelativeHeight?: boolean;
1493
1530
  rightClickToAbort?: boolean;
1494
1531
  autoResetInteractionMode?: boolean;
1532
+ useCentroidExtrudedHeight?: boolean;
1495
1533
  };
1496
1534
 
1497
1535
  export declare type SketchProps = {
@@ -1504,7 +1542,17 @@ export declare type SketchProps = {
1504
1542
  onSketchTypeChange?: (type: SketchType | undefined, from?: "editor" | "plugin") => void;
1505
1543
  onSketchFeatureCreate?: (feature: SketchFeature | null) => void;
1506
1544
  onSketchPluginFeatureCreate?: (props: SketchEventProps) => void;
1545
+ onSketchFeatureUpdate?: (feature: SketchFeature | null) => void;
1546
+ onSketchPluginFeatureUpdate?: (props: SketchEventProps) => void;
1547
+ onSketchFeatureDelete?: (layerId: string, featureId: string) => void;
1548
+ onSketchPluginFeatureDelete?: (props: {
1549
+ layerId: string;
1550
+ featureId: string;
1551
+ }) => void;
1507
1552
  onLayerSelect?: OnLayerSelectType;
1553
+ sketchEditingFeature?: SketchEditingFeature;
1554
+ onSketchEditFeature?: (feature: SketchEditingFeature | undefined) => void;
1555
+ onMount?: () => void;
1508
1556
  };
1509
1557
 
1510
1558
  export declare type SketchRef = {
@@ -1512,6 +1560,11 @@ export declare type SketchRef = {
1512
1560
  setType: (type: SketchType | undefined, from?: "editor" | "plugin") => void;
1513
1561
  getOptions: () => SketchOptions;
1514
1562
  overrideOptions: (options: SketchOptions) => void;
1563
+ editFeature: (feature: SketchEditingFeature | undefined) => void;
1564
+ cancelEdit: (ignoreAutoReSelect?: boolean) => void;
1565
+ applyEdit: () => void;
1566
+ deleteFeature: (layerId: string, featureId: string) => void;
1567
+ onEditFeatureChange: (cb: SketchEditFeatureChangeCb) => void;
1515
1568
  };
1516
1569
 
1517
1570
  export declare type SketchType = "marker" | "polyline" | "circle" | "rectangle" | "polygon" | "extrudedCircle" | "extrudedRectangle" | "extrudedPolygon";
@@ -1580,6 +1633,8 @@ export declare type TileLabelProperty = {
1580
1633
  id: string;
1581
1634
  labelType: "japan_gsi_optimal_bvmap";
1582
1635
  style: Record<string, any>;
1636
+ near?: number;
1637
+ far?: number;
1583
1638
  };
1584
1639
 
1585
1640
  export declare type TileProperty = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reearth/core",
3
- "version": "0.0.7-alpha.2",
3
+ "version": "0.0.7-alpha.21",
4
4
  "author": "Re:Earth contributors <community@reearth.io>",
5
5
  "license": "Apache-2.0",
6
6
  "description": "A library that abstracts a map engine as one common API.",
@@ -21,17 +21,26 @@
21
21
  "storybook": "storybook dev -p 6007",
22
22
  "build-storybook": "storybook build",
23
23
  "preversion": "yarn test run",
24
- "version": "yarn build"
24
+ "version": "yarn build",
25
+ "sketch-typegen": "xstate typegen src/**/sketchMachine.ts"
25
26
  },
26
27
  "engines": {
27
28
  "node": ">=20"
28
29
  },
29
30
  "peerDependencies": {
31
+ "cesium": "1.118.x",
30
32
  "react": "^18.2.0",
31
- "react-dom": "^18.2.0",
32
- "cesium": "1.x"
33
+ "react-dom": "^18.2.0"
33
34
  },
34
35
  "dependencies": {
36
+ "@radix-ui/react-checkbox": "1.1.1",
37
+ "@radix-ui/react-dialog": "1.1.1",
38
+ "@radix-ui/react-icons": "1.3.0",
39
+ "@radix-ui/react-select": "2.1.1",
40
+ "@radix-ui/react-separator": "1.1.0",
41
+ "@radix-ui/react-slot": "1.1.0",
42
+ "@radix-ui/react-switch": "1.1.0",
43
+ "@radix-ui/react-toggle": "1.1.0",
35
44
  "@reearth/cesium-mvt-imagery-provider": "1.5.4",
36
45
  "@rot1024/use-transition": "1.0.0",
37
46
  "@seznam/compose-react-refs": "1.0.6",
@@ -61,8 +70,11 @@
61
70
  "react-error-boundary": "4.0.11",
62
71
  "react-nl2br": "1.0.4",
63
72
  "react-use": "17.5.0",
64
- "resium": "1.17.4",
73
+ "resium": "1.18.2",
65
74
  "suspend-react": "0.1.3",
75
+ "tailwind-merge": "2.5.2",
76
+ "tailwindcss": "3.4.10",
77
+ "tailwindcss-animate": "1.0.7",
66
78
  "tiny-invariant": "1.3.3",
67
79
  "use-callback-ref": "1.3.2",
68
80
  "use-custom-compare": "1.4.0",
@@ -89,26 +101,32 @@
89
101
  "@types/lodash-es": "4.17.12",
90
102
  "@types/node": "20.12.7",
91
103
  "@types/pbf": "3.0.5",
92
- "@types/react": "18.2.6",
93
- "@types/react-dom": "18.2.6",
104
+ "@types/react": "18.3.0",
105
+ "@types/react-dom": "18.3.0",
106
+ "@types/scheduler": "0.23.0",
94
107
  "@types/uuid": "9.0.8",
95
108
  "@typescript-eslint/eslint-plugin": "7.2.0",
96
109
  "@typescript-eslint/parser": "7.2.0",
97
110
  "@vitejs/plugin-react": "4.2.1",
98
- "cesium": "1.116.0",
111
+ "@xstate/cli": "0.5.17",
112
+ "autoprefixer": "10.4.20",
113
+ "cesium": "1.118.0",
114
+ "class-variance-authority": "0.7.0",
115
+ "clsx": "2.1.1",
99
116
  "eslint": "8.57.0",
100
117
  "eslint-config-reearth": "0.3.0",
101
118
  "eslint-plugin-react-hooks": "4.6.0",
102
119
  "eslint-plugin-react-refresh": "0.4.6",
103
120
  "eslint-plugin-storybook": "0.8.0",
104
121
  "jsdom": "22.1.0",
122
+ "postcss": "8.4.41",
105
123
  "prettier": "3.2.5",
106
124
  "react": "18.2.0",
107
125
  "react-dom": "18.2.0",
108
126
  "storybook": "8.0.8",
109
127
  "typescript": "5.2.2",
110
128
  "vite": "5.0.8",
111
- "vite-plugin-cesium": "1.2.22",
129
+ "vite-plugin-cesium": "1.2.23",
112
130
  "vite-plugin-dts": "3.8.1",
113
131
  "vite-plugin-svgr": "4.2.0",
114
132
  "vite-tsconfig-paths": "^4.3.2",
@@ -107,12 +107,15 @@ export default function useHooks({
107
107
  };
108
108
  }, [layer, forceUpdateFeatures]);
109
109
 
110
- const prevForceUpdatableData = useRef<Pick<Data, "csv" | "jsonProperties">>();
110
+ const prevForceUpdatableData = useRef<Pick<Data, "csv" | "jsonProperties" | "value">>();
111
111
  useLayoutEffect(() => {
112
112
  const data = layer?.type === "simple" ? layer.data : undefined;
113
- const forceUpdatableData = pick(data, "csv", "jsonProperties");
113
+ const forceUpdatableData = pick(data, "csv", "jsonProperties", "value");
114
114
 
115
- if (isEqual(forceUpdatableData, prevForceUpdatableData.current) || !data?.url) {
115
+ if (
116
+ isEqual(forceUpdatableData, prevForceUpdatableData.current) ||
117
+ (!data?.url && !data?.value)
118
+ ) {
116
119
  return;
117
120
  }
118
121
 
@@ -9,6 +9,7 @@ import type {
9
9
  ComputedFeature,
10
10
  LayerSimple,
11
11
  } from "../../mantle";
12
+ import { SketchEditingFeature } from "../Sketch";
12
13
  import { ViewerProperty } from "../types";
13
14
 
14
15
  import useHooks, { type Atom, type EvalFeature } from "./hooks";
@@ -25,6 +26,7 @@ export type CommonProps = {
25
26
  isHidden?: boolean;
26
27
  isSelected?: boolean;
27
28
  meta?: Record<string, unknown>;
29
+ sketchEditingFeature?: SketchEditingFeature;
28
30
  };
29
31
 
30
32
  export type FeatureComponentProps = {
@@ -35,6 +35,7 @@ export type { Layer, NaiveLayer } from "../../mantle";
35
35
  */
36
36
  export type LazyLayer = Readonly<Layer> & {
37
37
  computed?: Readonly<ComputedLayer>;
38
+ isTempLayer?: boolean;
38
39
  // compat
39
40
  pluginId?: string;
40
41
  extensionId?: string;
@@ -52,6 +53,8 @@ export type Ref = {
52
53
  override: (id: string, layer?: (Partial<Layer> & { property?: any }) | null) => void;
53
54
  deleteLayer: (...ids: string[]) => void;
54
55
  isLayer: (obj: any) => obj is LazyLayer;
56
+ isComputedLayer: (obj: any) => obj is ComputedLayer;
57
+ isTempLayer: (layerId?: string) => boolean;
55
58
  layers: () => LazyLayer[];
56
59
  walk: <T>(
57
60
  fn: (layer: LazyLayer, index: number, parents: LazyLayer[]) => T | void,
@@ -118,6 +121,7 @@ export default function useHooks({
118
121
  requestingRenderMode,
119
122
  onLayerSelect,
120
123
  engineRef,
124
+ onMount,
121
125
  }: {
122
126
  layers?: Layer[];
123
127
  ref?: ForwardedRef<Ref>;
@@ -136,6 +140,7 @@ export default function useHooks({
136
140
  info: SelectedFeatureInfo | undefined,
137
141
  ) => void;
138
142
  engineRef?: RefObject<EngineRef>;
143
+ onMount?: () => void;
139
144
  }) {
140
145
  const layerMap = useMemo(() => new Map<string, Layer>(), []);
141
146
  const [overriddenLayers, setOverridenLayers] = useState<OverriddenLayer[]>([]);
@@ -455,6 +460,20 @@ export default function useHooks({
455
460
  [lazyLayerPrototype],
456
461
  );
457
462
 
463
+ const isTempLayer = useCallback(
464
+ (layerId?: string) => {
465
+ return tempLayersRef.current.some(l => l.id === layerId);
466
+ },
467
+ [tempLayersRef],
468
+ );
469
+
470
+ const isComputedLayer = useCallback(
471
+ (obj: any): obj is ComputedLayer => {
472
+ return typeof obj === "object" && Object.getPrototypeOf(obj) === lazyComputedLayerPrototype;
473
+ },
474
+ [lazyComputedLayerPrototype],
475
+ );
476
+
458
477
  const rootLayers = useCallback(() => {
459
478
  return [...(layersRef() ?? []), ...tempLayersRef.current]
460
479
  .map(l => findById(l.id))
@@ -551,6 +570,8 @@ export default function useHooks({
551
570
  deleteLayer,
552
571
  findByIds,
553
572
  isLayer,
573
+ isComputedLayer,
574
+ isTempLayer,
554
575
  layers: rootLayers,
555
576
  walk,
556
577
  find,
@@ -575,6 +596,8 @@ export default function useHooks({
575
596
  deleteLayer,
576
597
  findByIds,
577
598
  isLayer,
599
+ isComputedLayer,
600
+ isTempLayer,
578
601
  rootLayers,
579
602
  walk,
580
603
  find,
@@ -592,6 +615,10 @@ export default function useHooks({
592
615
  ],
593
616
  );
594
617
 
618
+ useEffect(() => {
619
+ onMount?.();
620
+ }, [onMount]);
621
+
595
622
  const prevLayers = useRef<Layer[] | undefined>([]);
596
623
  useLayoutEffect(() => {
597
624
  const ids = new Set<string>();
@@ -46,10 +46,20 @@ export type Props = Omit<ClusteredLayerProps, "atomMap" | "isHidden" | "selected
46
46
  reason: LayerSelectionReason | undefined,
47
47
  info: SelectedFeatureInfo | undefined,
48
48
  ) => void;
49
+ onMount?: () => void;
49
50
  };
50
51
 
51
52
  const Layers: ForwardRefRenderFunction<Ref, Props> = (
52
- { layers, selectedLayer, hiddenLayers, requestingRenderMode, engineRef, onLayerSelect, ...props },
53
+ {
54
+ layers,
55
+ selectedLayer,
56
+ hiddenLayers,
57
+ requestingRenderMode,
58
+ engineRef,
59
+ onLayerSelect,
60
+ onMount,
61
+ ...props
62
+ },
53
63
  ref,
54
64
  ) => {
55
65
  const { atomMap, flattenedLayers, isHidden } = useHooks({
@@ -60,6 +70,7 @@ const Layers: ForwardRefRenderFunction<Ref, Props> = (
60
70
  requestingRenderMode,
61
71
  engineRef,
62
72
  onLayerSelect,
73
+ onMount,
63
74
  });
64
75
 
65
76
  return (
@@ -18,6 +18,7 @@ export const layerKeys = objKeys<
18
18
  computed: 1,
19
19
  defines: 1,
20
20
  layerStyleId: 1,
21
+ isTempLayer: 1,
21
22
  // appearance
22
23
  ...appearanceKeyObj,
23
24
  // legacy layer