react-native-cesium 1.2.18 → 1.2.19

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 (42) hide show
  1. package/README.md +1 -1
  2. package/android/CMakeLists.txt +1 -0
  3. package/android/build.gradle +1 -1
  4. package/android/gradle.properties +4 -4
  5. package/android/src/main/cpp/CesiumBridgeAndroid.cpp +5 -15
  6. package/android/src/main/cpp/CesiumBridgeAndroid.h +2 -0
  7. package/cpp/engine/CameraIntegrator.cpp +82 -47
  8. package/cpp/engine/CameraIntegrator.hpp +27 -8
  9. package/cpp/engine/CesiumEngine.cpp +152 -304
  10. package/cpp/engine/CesiumEngine.hpp +38 -28
  11. package/cpp/engine/EngineTunables.hpp +6 -5
  12. package/cpp/engine/GltfToMesh.cpp +14 -5
  13. package/cpp/engine/ResourcePreparer.cpp +3 -3
  14. package/cpp/engine/ResourcePreparer.hpp +1 -1
  15. package/cpp/engine/TerrainFloor.hpp +70 -0
  16. package/cpp/engine/TerrainHeight.hpp +113 -0
  17. package/cpp/engine/test/CameraIntegratorTest.cpp +264 -0
  18. package/ios/CesiumBridge.mm +7 -27
  19. package/lib/typescript/src/specs/cesium-view.nitro.d.ts +7 -6
  20. package/lib/typescript/src/specs/cesium-view.nitro.d.ts.map +1 -1
  21. package/nitrogen/generated/android/ReactNativeCesiumOnLoad.cpp +1 -1
  22. package/nitrogen/generated/android/c++/JCameraState.hpp +1 -1
  23. package/nitrogen/generated/android/c++/JCesiumMetrics.hpp +1 -1
  24. package/nitrogen/generated/android/c++/JQuaternion.hpp +1 -1
  25. package/nitrogen/generated/android/c++/views/JHybridCesiumViewStateUpdater.cpp +177 -131
  26. package/nitrogen/generated/android/c++/views/JHybridCesiumViewStateUpdater.hpp +6 -1
  27. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/CameraState.kt +1 -1
  28. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/CesiumMetrics.kt +1 -1
  29. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/Func_void_CameraState.kt +0 -2
  30. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/Func_void_CesiumMetrics.kt +0 -2
  31. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/HybridCesiumViewSpec.kt +2 -0
  32. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/Quaternion.kt +1 -1
  33. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/views/HybridCesiumViewManager.kt +26 -10
  34. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativecesium/views/HybridCesiumViewStateUpdater.kt +2 -2
  35. package/nitrogen/generated/ios/c++/views/HybridCesiumViewComponent.mm +211 -161
  36. package/nitrogen/generated/shared/c++/views/HybridCesiumViewComponent.cpp +34 -335
  37. package/nitrogen/generated/shared/c++/views/HybridCesiumViewComponent.hpp +107 -77
  38. package/package.json +12 -12
  39. package/scripts/cesium/config.mjs +1 -1
  40. package/scripts/cesium/vcpkg-triplets/arm64-ios-simulator.cmake +3 -0
  41. package/scripts/cesium/vcpkg-triplets/arm64-ios.cmake +4 -0
  42. package/src/specs/cesium-view.nitro.ts +7 -6
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-cesium",
3
- "version": "1.2.18",
3
+ "version": "1.2.19",
4
4
  "description": "Experimental Cesium rendering for React Native via Nitro",
5
5
  "main": "./lib/commonjs/index.js",
6
6
  "module": "./lib/module/index.js",
@@ -65,7 +65,7 @@
65
65
  "node": ">=18"
66
66
  },
67
67
  "dependencies": {
68
- "react-native-nitro-modules": "^0.35.9"
68
+ "react-native-nitro-modules": "^0.37.1"
69
69
  },
70
70
  "publishConfig": {
71
71
  "access": "public",
@@ -73,17 +73,17 @@
73
73
  },
74
74
  "devDependencies": {
75
75
  "@jamesacarr/eslint-formatter-github-actions": "^0.2.0",
76
- "@semantic-release/changelog": "^6.0.3",
77
- "@semantic-release/git": "^10.0.1",
76
+ "@semantic-release/changelog": "^7.0.0",
77
+ "@semantic-release/git": "^11.0.1",
78
78
  "@types/jest": "^29.5.14",
79
- "@types/react": "19.2.17",
80
- "conventional-changelog-conventionalcommits": "^9.3.1",
81
- "nitrogen": "0.35.9",
82
- "react": "19.2.3",
83
- "react-native": "0.86.0",
84
- "react-native-builder-bob": "^0.43.0",
85
- "semantic-release": "^25.0.5",
86
- "typescript": "^5.9.3"
79
+ "@types/react": "^19.3.0",
80
+ "conventional-changelog-conventionalcommits": "^10.4.1",
81
+ "nitrogen": "^0.37.1",
82
+ "react": "^19.3.0",
83
+ "react-native": "^0.87.1",
84
+ "react-native-builder-bob": "^0.43.2",
85
+ "semantic-release": "^25.0.9",
86
+ "typescript": "^6.0.3"
87
87
  },
88
88
  "peerDependencies": {
89
89
  "react": ">=18.0.0",
@@ -5,4 +5,4 @@
5
5
  */
6
6
 
7
7
  /** Git tag of CesiumGS/cesium-native to clone and build. */
8
- export const CESIUM_NATIVE_REF = 'v0.61.0'
8
+ export const CESIUM_NATIVE_REF = 'v0.65.0'
@@ -7,4 +7,7 @@ set(VCPKG_CRT_LINKAGE dynamic)
7
7
  set(VCPKG_LIBRARY_LINKAGE static)
8
8
  set(VCPKG_CMAKE_SYSTEM_NAME iOS)
9
9
  set(VCPKG_OSX_SYSROOT iphonesimulator)
10
+ # Same iOS 15.1 floor as arm64-ios: Xcode 27 libc++ rejects older deployment
11
+ # targets under -Werror (ktx/astc-encoder).
12
+ set(VCPKG_OSX_DEPLOYMENT_TARGET 15.1)
10
13
  set(VCPKG_CMAKE_CONFIGURE_OPTIONS "-DHAVE_PIPE2=OFF;-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY")
@@ -11,4 +11,8 @@ set(VCPKG_CMAKE_SYSTEM_NAME iOS)
11
11
  # CMake defaults CMAKE_OSX_SYSROOT to the host MacOSX SDK and Clang builds with an invalid
12
12
  # --target=…-macabi mix (breaks ktx/astc-encoder on newer Xcode).
13
13
  set(VCPKG_OSX_SYSROOT iphoneos)
14
+ # Xcode 27 libc++ warns (and ktx/astc-encoder builds with -Werror) when the
15
+ # deployment target is below iOS 15. CMake's iOS default is 12.0. Match the
16
+ # Cesium Native iOS build (CMAKE_OSX_DEPLOYMENT_TARGET=15.1).
17
+ set(VCPKG_OSX_DEPLOYMENT_TARGET 15.1)
14
18
  set(VCPKG_CMAKE_CONFIGURE_OPTIONS "-DHAVE_PIPE2=OFF;-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY")
@@ -98,12 +98,13 @@ export interface CesiumViewProps extends HybridViewProps {
98
98
  */
99
99
  taskProcessorThreads?: number
100
100
  /**
101
- * Minimum clearance above the loaded terrain surface, in metres (added on top of the
102
- * terrain MSL height at the camera position). Default 0 (no constraint).
103
- * Set to e.g. 2 to prevent the camera from going underground.
104
- * The clamp runs only after terrain tiles have been sampled; until then the demand
105
- * altitude is used as-is. The demand altitude is not modified — only the rendered
106
- * (actual) camera may be raised to meet this minimum.
101
+ * Clearance above the rendered terrain surface, in metres, added on top of the
102
+ * terrain height at the camera position. The floor is always on. 0 means the
103
+ * camera may sit on the surface and may not go below it.
104
+ * Until a terrain tile has been sampled, the camera is held at or above the
105
+ * WGS84 ellipsoid. The demand altitude is not modified — only the rendered
106
+ * (actual) camera is held to this minimum, and it follows the surface down
107
+ * when the demand is at or below the floor.
107
108
  */
108
109
  minAltitudeAboveTerrain?: number
109
110