@rive-app/react-native 0.1.1-beta.0
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.
- package/LICENSE +20 -0
- package/README.md +257 -0
- package/RNRive.podspec +53 -0
- package/android/CMakeLists.txt +24 -0
- package/android/build.gradle +155 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +13 -0
- package/android/src/main/cpp/cpp-adapter.cpp +6 -0
- package/android/src/main/java/com/margelo/nitro/rive/BaseHybridViewModelProperty.kt +20 -0
- package/android/src/main/java/com/margelo/nitro/rive/BaseHybridViewModelPropertyImpl.kt +50 -0
- package/android/src/main/java/com/margelo/nitro/rive/BytesDataLoader.kt +9 -0
- package/android/src/main/java/com/margelo/nitro/rive/DataLoader.kt +15 -0
- package/android/src/main/java/com/margelo/nitro/rive/DataSource.kt +38 -0
- package/android/src/main/java/com/margelo/nitro/rive/DataSourceResolver.kt +36 -0
- package/android/src/main/java/com/margelo/nitro/rive/EventPropertiesOutputExtensions.kt +12 -0
- package/android/src/main/java/com/margelo/nitro/rive/FileDataLoader.kt +21 -0
- package/android/src/main/java/com/margelo/nitro/rive/HTTPDataLoader.kt +37 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridRiveFile.kt +98 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridRiveFileFactory.kt +123 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridRiveImage.kt +15 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridRiveImageFactory.kt +23 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridRiveView.kt +279 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModel.kt +53 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelBooleanProperty.kt +22 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelColorProperty.kt +22 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelEnumProperty.kt +22 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelImageProperty.kt +21 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelInstance.kt +76 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelNumberProperty.kt +23 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelStringProperty.kt +22 -0
- package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelTriggerProperty.kt +21 -0
- package/android/src/main/java/com/margelo/nitro/rive/ReferencedAssetLoader.kt +108 -0
- package/android/src/main/java/com/margelo/nitro/rive/ResourceDataLoader.kt +44 -0
- package/android/src/main/java/com/margelo/nitro/rive/Rive.kt +12 -0
- package/android/src/main/java/com/rive/RivePackage.kt +29 -0
- package/android/src/main/java/com/rive/RiveReactNativeView.kt +433 -0
- package/android/src/main/java/com/rive/RiveViewManager.kt +11 -0
- package/ios/BaseHybridViewModelProperty.swift +118 -0
- package/ios/BundleDataLoader.swift +25 -0
- package/ios/BytesDataLoader.swift +10 -0
- package/ios/DataLoader.swift +28 -0
- package/ios/DataSource.swift +43 -0
- package/ios/DataSourceResolver.swift +55 -0
- package/ios/EventPropertiesOutputExtensions.swift +15 -0
- package/ios/FileDataLoader.swift +24 -0
- package/ios/HTTPDataLoader.swift +31 -0
- package/ios/HybridRiveFile.swift +113 -0
- package/ios/HybridRiveFileFactory.swift +163 -0
- package/ios/HybridRiveImage.swift +17 -0
- package/ios/HybridRiveImageFactory.swift +26 -0
- package/ios/HybridRiveView.swift +284 -0
- package/ios/HybridViewModel.swift +46 -0
- package/ios/HybridViewModelBooleanProperty.swift +29 -0
- package/ios/HybridViewModelColorProperty.swift +63 -0
- package/ios/HybridViewModelEnumProperty.swift +29 -0
- package/ios/HybridViewModelImageProperty.swift +31 -0
- package/ios/HybridViewModelInstance.swift +51 -0
- package/ios/HybridViewModelNumberProperty.swift +35 -0
- package/ios/HybridViewModelStringProperty.swift +29 -0
- package/ios/HybridViewModelTriggerProperty.swift +30 -0
- package/ios/RCTLog.swift +29 -0
- package/ios/RCTSwiftLog.h +11 -0
- package/ios/RCTSwiftLog.m +38 -0
- package/ios/ReferencedAssetLoader.swift +145 -0
- package/ios/Rive.swift +5 -0
- package/ios/RiveReactNativeView.swift +325 -0
- package/ios/Utils.swift +15 -0
- package/lib/module/core/Alignment.js +42 -0
- package/lib/module/core/Alignment.js.map +1 -0
- package/lib/module/core/Errors.js +13 -0
- package/lib/module/core/Errors.js.map +1 -0
- package/lib/module/core/Events.js +8 -0
- package/lib/module/core/Events.js.map +1 -0
- package/lib/module/core/Fit.js +51 -0
- package/lib/module/core/Fit.js.map +1 -0
- package/lib/module/core/NitroRiveViewComponent.js +6 -0
- package/lib/module/core/NitroRiveViewComponent.js.map +1 -0
- package/lib/module/core/ReferencedAssets.js +4 -0
- package/lib/module/core/ReferencedAssets.js.map +1 -0
- package/lib/module/core/RiveColor.js +90 -0
- package/lib/module/core/RiveColor.js.map +1 -0
- package/lib/module/core/RiveFile.js +64 -0
- package/lib/module/core/RiveFile.js.map +1 -0
- package/lib/module/core/RiveImages.js +5 -0
- package/lib/module/core/RiveImages.js.map +1 -0
- package/lib/module/core/RiveView.js +51 -0
- package/lib/module/core/RiveView.js.map +1 -0
- package/lib/module/core/callDispose.js +15 -0
- package/lib/module/core/callDispose.js.map +1 -0
- package/lib/module/hooks/useRive.js +51 -0
- package/lib/module/hooks/useRive.js.map +1 -0
- package/lib/module/hooks/useRiveBoolean.js +23 -0
- package/lib/module/hooks/useRiveBoolean.js.map +1 -0
- package/lib/module/hooks/useRiveColor.js +30 -0
- package/lib/module/hooks/useRiveColor.js.map +1 -0
- package/lib/module/hooks/useRiveEnum.js +23 -0
- package/lib/module/hooks/useRiveEnum.js.map +1 -0
- package/lib/module/hooks/useRiveFile.js +128 -0
- package/lib/module/hooks/useRiveFile.js.map +1 -0
- package/lib/module/hooks/useRiveNumber.js +23 -0
- package/lib/module/hooks/useRiveNumber.js.map +1 -0
- package/lib/module/hooks/useRiveProperty.js +79 -0
- package/lib/module/hooks/useRiveProperty.js.map +1 -0
- package/lib/module/hooks/useRiveString.js +23 -0
- package/lib/module/hooks/useRiveString.js.map +1 -0
- package/lib/module/hooks/useRiveTrigger.js +33 -0
- package/lib/module/hooks/useRiveTrigger.js.map +1 -0
- package/lib/module/index.js +28 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/specs/ArtboardBy.js +27 -0
- package/lib/module/specs/ArtboardBy.js.map +1 -0
- package/lib/module/specs/Rive.nitro.js +4 -0
- package/lib/module/specs/Rive.nitro.js.map +1 -0
- package/lib/module/specs/RiveFile.nitro.js +4 -0
- package/lib/module/specs/RiveFile.nitro.js.map +1 -0
- package/lib/module/specs/RiveImage.nitro.js +4 -0
- package/lib/module/specs/RiveImage.nitro.js.map +1 -0
- package/lib/module/specs/RiveView.nitro.js +23 -0
- package/lib/module/specs/RiveView.nitro.js.map +1 -0
- package/lib/module/specs/ViewModel.nitro.js +4 -0
- package/lib/module/specs/ViewModel.nitro.js.map +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/nitrogen/generated/shared/json/RiveViewConfig.json +18 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/core/Alignment.d.ts +39 -0
- package/lib/typescript/src/core/Alignment.d.ts.map +1 -0
- package/lib/typescript/src/core/Errors.d.ts +14 -0
- package/lib/typescript/src/core/Errors.d.ts.map +1 -0
- package/lib/typescript/src/core/Events.d.ts +26 -0
- package/lib/typescript/src/core/Events.d.ts.map +1 -0
- package/lib/typescript/src/core/Fit.d.ts +48 -0
- package/lib/typescript/src/core/Fit.d.ts.map +1 -0
- package/lib/typescript/src/core/NitroRiveViewComponent.d.ts +4 -0
- package/lib/typescript/src/core/NitroRiveViewComponent.d.ts.map +1 -0
- package/lib/typescript/src/core/ReferencedAssets.d.ts +15 -0
- package/lib/typescript/src/core/ReferencedAssets.d.ts.map +1 -0
- package/lib/typescript/src/core/RiveColor.d.ts +53 -0
- package/lib/typescript/src/core/RiveColor.d.ts.map +1 -0
- package/lib/typescript/src/core/RiveFile.d.ts +62 -0
- package/lib/typescript/src/core/RiveFile.d.ts.map +1 -0
- package/lib/typescript/src/core/RiveImages.d.ts +3 -0
- package/lib/typescript/src/core/RiveImages.d.ts.map +1 -0
- package/lib/typescript/src/core/RiveView.d.ts +38 -0
- package/lib/typescript/src/core/RiveView.d.ts.map +1 -0
- package/lib/typescript/src/core/callDispose.d.ts +7 -0
- package/lib/typescript/src/core/callDispose.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRive.d.ts +9 -0
- package/lib/typescript/src/hooks/useRive.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveBoolean.d.ts +11 -0
- package/lib/typescript/src/hooks/useRiveBoolean.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveColor.d.ts +14 -0
- package/lib/typescript/src/hooks/useRiveColor.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveEnum.d.ts +11 -0
- package/lib/typescript/src/hooks/useRiveEnum.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveFile.d.ts +24 -0
- package/lib/typescript/src/hooks/useRiveFile.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveNumber.d.ts +11 -0
- package/lib/typescript/src/hooks/useRiveNumber.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveProperty.d.ts +22 -0
- package/lib/typescript/src/hooks/useRiveProperty.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveString.d.ts +11 -0
- package/lib/typescript/src/hooks/useRiveString.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRiveTrigger.d.ts +11 -0
- package/lib/typescript/src/hooks/useRiveTrigger.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +32 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/specs/ArtboardBy.d.ts +20 -0
- package/lib/typescript/src/specs/ArtboardBy.d.ts.map +1 -0
- package/lib/typescript/src/specs/Rive.nitro.d.ts +8 -0
- package/lib/typescript/src/specs/Rive.nitro.d.ts.map +1 -0
- package/lib/typescript/src/specs/RiveFile.nitro.d.ts +42 -0
- package/lib/typescript/src/specs/RiveFile.nitro.d.ts.map +1 -0
- package/lib/typescript/src/specs/RiveImage.nitro.d.ts +43 -0
- package/lib/typescript/src/specs/RiveImage.nitro.d.ts.map +1 -0
- package/lib/typescript/src/specs/RiveView.nitro.d.ts +139 -0
- package/lib/typescript/src/specs/RiveView.nitro.d.ts.map +1 -0
- package/lib/typescript/src/specs/ViewModel.nitro.d.ts +103 -0
- package/lib/typescript/src/specs/ViewModel.nitro.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +33 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/nitrogen/generated/android/c++/JAlignment.hpp +80 -0
- package/nitrogen/generated/android/c++/JArtboardBy.hpp +68 -0
- package/nitrogen/generated/android/c++/JArtboardByTypes.hpp +59 -0
- package/nitrogen/generated/android/c++/JDataBindByName.hpp +57 -0
- package/nitrogen/generated/android/c++/JDataBindMode.hpp +59 -0
- package/nitrogen/generated/android/c++/JEventPropertiesOutput.cpp +30 -0
- package/nitrogen/generated/android/c++/JEventPropertiesOutput.hpp +83 -0
- package/nitrogen/generated/android/c++/JFit.hpp +77 -0
- package/nitrogen/generated/android/c++/JFunc_void.hpp +75 -0
- package/nitrogen/generated/android/c++/JFunc_void_RiveError.hpp +80 -0
- package/nitrogen/generated/android/c++/JFunc_void_UnifiedRiveEvent.hpp +84 -0
- package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +75 -0
- package/nitrogen/generated/android/c++/JFunc_void_double.hpp +75 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +76 -0
- package/nitrogen/generated/android/c++/JHybridRiveFileFactorySpec.cpp +134 -0
- package/nitrogen/generated/android/c++/JHybridRiveFileFactorySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridRiveFileSpec.cpp +96 -0
- package/nitrogen/generated/android/c++/JHybridRiveFileSpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridRiveImageFactorySpec.cpp +104 -0
- package/nitrogen/generated/android/c++/JHybridRiveImageFactorySpec.hpp +67 -0
- package/nitrogen/generated/android/c++/JHybridRiveImageSpec.cpp +52 -0
- package/nitrogen/generated/android/c++/JHybridRiveImageSpec.hpp +65 -0
- package/nitrogen/generated/android/c++/JHybridRiveSpec.cpp +52 -0
- package/nitrogen/generated/android/c++/JHybridRiveSpec.hpp +65 -0
- package/nitrogen/generated/android/c++/JHybridRiveViewSpec.cpp +299 -0
- package/nitrogen/generated/android/c++/JHybridRiveViewSpec.hpp +97 -0
- package/nitrogen/generated/android/c++/JHybridViewModelBooleanPropertySpec.cpp +65 -0
- package/nitrogen/generated/android/c++/JHybridViewModelBooleanPropertySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridViewModelColorPropertySpec.cpp +65 -0
- package/nitrogen/generated/android/c++/JHybridViewModelColorPropertySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridViewModelEnumPropertySpec.cpp +66 -0
- package/nitrogen/generated/android/c++/JHybridViewModelEnumPropertySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridViewModelImagePropertySpec.cpp +66 -0
- package/nitrogen/generated/android/c++/JHybridViewModelImagePropertySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridViewModelInstanceSpec.cpp +115 -0
- package/nitrogen/generated/android/c++/JHybridViewModelInstanceSpec.hpp +71 -0
- package/nitrogen/generated/android/c++/JHybridViewModelNumberPropertySpec.cpp +65 -0
- package/nitrogen/generated/android/c++/JHybridViewModelNumberPropertySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridViewModelPropertySpec.cpp +48 -0
- package/nitrogen/generated/android/c++/JHybridViewModelPropertySpec.hpp +65 -0
- package/nitrogen/generated/android/c++/JHybridViewModelSpec.cpp +86 -0
- package/nitrogen/generated/android/c++/JHybridViewModelSpec.hpp +70 -0
- package/nitrogen/generated/android/c++/JHybridViewModelStringPropertySpec.cpp +66 -0
- package/nitrogen/generated/android/c++/JHybridViewModelStringPropertySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JHybridViewModelTriggerPropertySpec.cpp +61 -0
- package/nitrogen/generated/android/c++/JHybridViewModelTriggerPropertySpec.hpp +68 -0
- package/nitrogen/generated/android/c++/JReferencedAssetsType.hpp +77 -0
- package/nitrogen/generated/android/c++/JResolvedReferencedAsset.hpp +77 -0
- package/nitrogen/generated/android/c++/JRiveError.hpp +63 -0
- package/nitrogen/generated/android/c++/JRiveErrorType.hpp +74 -0
- package/nitrogen/generated/android/c++/JRiveEventType.hpp +59 -0
- package/nitrogen/generated/android/c++/JUnifiedRiveEvent.hpp +96 -0
- package/nitrogen/generated/android/c++/JVariant_HybridViewModelInstanceSpec_DataBindMode_DataBindByName.cpp +30 -0
- package/nitrogen/generated/android/c++/JVariant_HybridViewModelInstanceSpec_DataBindMode_DataBindByName.hpp +90 -0
- package/nitrogen/generated/android/c++/views/JHybridRiveViewStateUpdater.cpp +88 -0
- package/nitrogen/generated/android/c++/views/JHybridRiveViewStateUpdater.hpp +49 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Alignment.kt +28 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/ArtboardBy.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/ArtboardByTypes.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/DataBindByName.kt +38 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/DataBindMode.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/EventPropertiesOutput.kt +72 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Fit.kt +27 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Func_void.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Func_void_RiveError.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Func_void_UnifiedRiveEvent.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Func_void_bool.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Func_void_double.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Func_void_std__string.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveFileFactorySpec.kt +71 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveFileSpec.kt +71 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveImageFactorySpec.kt +67 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveImageSpec.kt +57 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveSpec.kt +57 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridRiveViewSpec.kt +183 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelBooleanPropertySpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelColorPropertySpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelEnumPropertySpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelImagePropertySpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelInstanceSpec.kt +83 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelNumberPropertySpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelPropertySpec.kt +55 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelSpec.kt +79 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelStringPropertySpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/HybridViewModelTriggerPropertySpec.kt +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/ReferencedAssetsType.kt +38 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/ResolvedReferencedAsset.kt +50 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/RiveError.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/RiveErrorType.kt +26 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/RiveEventType.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/UnifiedRiveEvent.kt +53 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/Variant_HybridViewModelInstanceSpec_DataBindMode_DataBindByName.kt +72 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/riveOnLoad.kt +35 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/views/HybridRiveViewManager.kt +50 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rive/views/HybridRiveViewStateUpdater.kt +23 -0
- package/nitrogen/generated/android/rive+autolinking.cmake +115 -0
- package/nitrogen/generated/android/rive+autolinking.gradle +27 -0
- package/nitrogen/generated/android/riveOnLoad.cpp +192 -0
- package/nitrogen/generated/android/riveOnLoad.hpp +25 -0
- package/nitrogen/generated/ios/RNRive+autolinking.rb +60 -0
- package/nitrogen/generated/ios/RNRive-Swift-Cxx-Bridge.cpp +360 -0
- package/nitrogen/generated/ios/RNRive-Swift-Cxx-Bridge.hpp +1180 -0
- package/nitrogen/generated/ios/RNRive-Swift-Cxx-Umbrella.hpp +161 -0
- package/nitrogen/generated/ios/RNRiveAutolinking.mm +137 -0
- package/nitrogen/generated/ios/RNRiveAutolinking.swift +220 -0
- package/nitrogen/generated/ios/c++/HybridRiveFileFactorySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRiveFileFactorySpecSwift.hpp +119 -0
- package/nitrogen/generated/ios/c++/HybridRiveFileSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRiveFileSpecSwift.hpp +121 -0
- package/nitrogen/generated/ios/c++/HybridRiveImageFactorySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRiveImageFactorySpecSwift.hpp +100 -0
- package/nitrogen/generated/ios/c++/HybridRiveImageSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRiveImageSpecSwift.hpp +71 -0
- package/nitrogen/generated/ios/c++/HybridRiveSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRiveSpecSwift.hpp +76 -0
- package/nitrogen/generated/ios/c++/HybridRiveViewSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRiveViewSpecSwift.hpp +277 -0
- package/nitrogen/generated/ios/c++/HybridViewModelBooleanPropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelBooleanPropertySpecSwift.hpp +88 -0
- package/nitrogen/generated/ios/c++/HybridViewModelColorPropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelColorPropertySpecSwift.hpp +88 -0
- package/nitrogen/generated/ios/c++/HybridViewModelEnumPropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelEnumPropertySpecSwift.hpp +90 -0
- package/nitrogen/generated/ios/c++/HybridViewModelImagePropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelImagePropertySpecSwift.hpp +94 -0
- package/nitrogen/generated/ios/c++/HybridViewModelInstanceSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelInstanceSpecSwift.hpp +149 -0
- package/nitrogen/generated/ios/c++/HybridViewModelNumberPropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelNumberPropertySpecSwift.hpp +88 -0
- package/nitrogen/generated/ios/c++/HybridViewModelPropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelPropertySpecSwift.hpp +69 -0
- package/nitrogen/generated/ios/c++/HybridViewModelSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelSpecSwift.hpp +113 -0
- package/nitrogen/generated/ios/c++/HybridViewModelStringPropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelStringPropertySpecSwift.hpp +90 -0
- package/nitrogen/generated/ios/c++/HybridViewModelTriggerPropertySpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridViewModelTriggerPropertySpecSwift.hpp +89 -0
- package/nitrogen/generated/ios/c++/views/HybridRiveViewComponent.mm +136 -0
- package/nitrogen/generated/ios/swift/Alignment.swift +68 -0
- package/nitrogen/generated/ios/swift/ArtboardBy.swift +89 -0
- package/nitrogen/generated/ios/swift/ArtboardByTypes.swift +40 -0
- package/nitrogen/generated/ios/swift/DataBindByName.swift +36 -0
- package/nitrogen/generated/ios/swift/DataBindMode.swift +40 -0
- package/nitrogen/generated/ios/swift/EventPropertiesOutput.swift +19 -0
- package/nitrogen/generated/ios/swift/Fit.swift +64 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_RiveError.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_UnifiedRiveEvent.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_double.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridRiveFileSpec_.swift +51 -0
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_HybridRiveImageSpec_.swift +51 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
- package/nitrogen/generated/ios/swift/HybridRiveFileFactorySpec.swift +59 -0
- package/nitrogen/generated/ios/swift/HybridRiveFileFactorySpec_cxx.swift +207 -0
- package/nitrogen/generated/ios/swift/HybridRiveFileSpec.swift +59 -0
- package/nitrogen/generated/ios/swift/HybridRiveFileSpec_cxx.swift +204 -0
- package/nitrogen/generated/ios/swift/HybridRiveImageFactorySpec.swift +58 -0
- package/nitrogen/generated/ios/swift/HybridRiveImageFactorySpec_cxx.swift +185 -0
- package/nitrogen/generated/ios/swift/HybridRiveImageSpec.swift +56 -0
- package/nitrogen/generated/ios/swift/HybridRiveImageSpec_cxx.swift +126 -0
- package/nitrogen/generated/ios/swift/HybridRiveSpec.swift +56 -0
- package/nitrogen/generated/ios/swift/HybridRiveSpec_cxx.swift +131 -0
- package/nitrogen/generated/ios/swift/HybridRiveViewSpec.swift +79 -0
- package/nitrogen/generated/ios/swift/HybridRiveViewSpec_cxx.swift +623 -0
- package/nitrogen/generated/ios/swift/HybridViewModelBooleanPropertySpec.swift +57 -0
- package/nitrogen/generated/ios/swift/HybridViewModelBooleanPropertySpec_cxx.swift +158 -0
- package/nitrogen/generated/ios/swift/HybridViewModelColorPropertySpec.swift +57 -0
- package/nitrogen/generated/ios/swift/HybridViewModelColorPropertySpec_cxx.swift +158 -0
- package/nitrogen/generated/ios/swift/HybridViewModelEnumPropertySpec.swift +57 -0
- package/nitrogen/generated/ios/swift/HybridViewModelEnumPropertySpec_cxx.swift +158 -0
- package/nitrogen/generated/ios/swift/HybridViewModelImagePropertySpec.swift +58 -0
- package/nitrogen/generated/ios/swift/HybridViewModelImagePropertySpec_cxx.swift +171 -0
- package/nitrogen/generated/ios/swift/HybridViewModelInstanceSpec.swift +62 -0
- package/nitrogen/generated/ios/swift/HybridViewModelInstanceSpec_cxx.swift +271 -0
- package/nitrogen/generated/ios/swift/HybridViewModelNumberPropertySpec.swift +57 -0
- package/nitrogen/generated/ios/swift/HybridViewModelNumberPropertySpec_cxx.swift +158 -0
- package/nitrogen/generated/ios/swift/HybridViewModelPropertySpec.swift +56 -0
- package/nitrogen/generated/ios/swift/HybridViewModelPropertySpec_cxx.swift +121 -0
- package/nitrogen/generated/ios/swift/HybridViewModelSpec.swift +61 -0
- package/nitrogen/generated/ios/swift/HybridViewModelSpec_cxx.swift +222 -0
- package/nitrogen/generated/ios/swift/HybridViewModelStringPropertySpec.swift +57 -0
- package/nitrogen/generated/ios/swift/HybridViewModelStringPropertySpec_cxx.swift +158 -0
- package/nitrogen/generated/ios/swift/HybridViewModelTriggerPropertySpec.swift +58 -0
- package/nitrogen/generated/ios/swift/HybridViewModelTriggerPropertySpec_cxx.swift +160 -0
- package/nitrogen/generated/ios/swift/ReferencedAssetsType.swift +75 -0
- package/nitrogen/generated/ios/swift/ResolvedReferencedAsset.swift +185 -0
- package/nitrogen/generated/ios/swift/RiveError.swift +47 -0
- package/nitrogen/generated/ios/swift/RiveErrorType.swift +60 -0
- package/nitrogen/generated/ios/swift/RiveEventType.swift +40 -0
- package/nitrogen/generated/ios/swift/UnifiedRiveEvent.swift +213 -0
- package/nitrogen/generated/ios/swift/Variant__any_HybridViewModelInstanceSpec__DataBindMode_DataBindByName.swift +19 -0
- package/nitrogen/generated/shared/c++/Alignment.hpp +104 -0
- package/nitrogen/generated/shared/c++/ArtboardBy.hpp +86 -0
- package/nitrogen/generated/shared/c++/ArtboardByTypes.hpp +76 -0
- package/nitrogen/generated/shared/c++/DataBindByName.hpp +75 -0
- package/nitrogen/generated/shared/c++/DataBindMode.hpp +62 -0
- package/nitrogen/generated/shared/c++/Fit.hpp +68 -0
- package/nitrogen/generated/shared/c++/HybridRiveFileFactorySpec.cpp +24 -0
- package/nitrogen/generated/shared/c++/HybridRiveFileFactorySpec.hpp +74 -0
- package/nitrogen/generated/shared/c++/HybridRiveFileSpec.cpp +25 -0
- package/nitrogen/generated/shared/c++/HybridRiveFileSpec.hpp +75 -0
- package/nitrogen/generated/shared/c++/HybridRiveImageFactorySpec.cpp +23 -0
- package/nitrogen/generated/shared/c++/HybridRiveImageFactorySpec.hpp +69 -0
- package/nitrogen/generated/shared/c++/HybridRiveImageSpec.cpp +21 -0
- package/nitrogen/generated/shared/c++/HybridRiveImageSpec.hpp +62 -0
- package/nitrogen/generated/shared/c++/HybridRiveSpec.cpp +21 -0
- package/nitrogen/generated/shared/c++/HybridRiveSpec.hpp +62 -0
- package/nitrogen/generated/shared/c++/HybridRiveViewSpec.cpp +54 -0
- package/nitrogen/generated/shared/c++/HybridRiveViewSpec.hpp +122 -0
- package/nitrogen/generated/shared/c++/HybridViewModelBooleanPropertySpec.cpp +25 -0
- package/nitrogen/generated/shared/c++/HybridViewModelBooleanPropertySpec.hpp +67 -0
- package/nitrogen/generated/shared/c++/HybridViewModelColorPropertySpec.cpp +25 -0
- package/nitrogen/generated/shared/c++/HybridViewModelColorPropertySpec.hpp +67 -0
- package/nitrogen/generated/shared/c++/HybridViewModelEnumPropertySpec.cpp +25 -0
- package/nitrogen/generated/shared/c++/HybridViewModelEnumPropertySpec.hpp +68 -0
- package/nitrogen/generated/shared/c++/HybridViewModelImagePropertySpec.cpp +24 -0
- package/nitrogen/generated/shared/c++/HybridViewModelImagePropertySpec.hpp +71 -0
- package/nitrogen/generated/shared/c++/HybridViewModelInstanceSpec.cpp +28 -0
- package/nitrogen/generated/shared/c++/HybridViewModelInstanceSpec.hpp +90 -0
- package/nitrogen/generated/shared/c++/HybridViewModelNumberPropertySpec.cpp +25 -0
- package/nitrogen/generated/shared/c++/HybridViewModelNumberPropertySpec.hpp +67 -0
- package/nitrogen/generated/shared/c++/HybridViewModelPropertySpec.cpp +21 -0
- package/nitrogen/generated/shared/c++/HybridViewModelPropertySpec.hpp +62 -0
- package/nitrogen/generated/shared/c++/HybridViewModelSpec.cpp +27 -0
- package/nitrogen/generated/shared/c++/HybridViewModelSpec.hpp +71 -0
- package/nitrogen/generated/shared/c++/HybridViewModelStringPropertySpec.cpp +25 -0
- package/nitrogen/generated/shared/c++/HybridViewModelStringPropertySpec.hpp +68 -0
- package/nitrogen/generated/shared/c++/HybridViewModelTriggerPropertySpec.cpp +24 -0
- package/nitrogen/generated/shared/c++/HybridViewModelTriggerPropertySpec.hpp +67 -0
- package/nitrogen/generated/shared/c++/ReferencedAssetsType.hpp +79 -0
- package/nitrogen/generated/shared/c++/ResolvedReferencedAsset.hpp +95 -0
- package/nitrogen/generated/shared/c++/RiveError.hpp +81 -0
- package/nitrogen/generated/shared/c++/RiveErrorType.hpp +75 -0
- package/nitrogen/generated/shared/c++/RiveEventType.hpp +62 -0
- package/nitrogen/generated/shared/c++/UnifiedRiveEvent.hpp +100 -0
- package/nitrogen/generated/shared/c++/views/HybridRiveViewComponent.cpp +183 -0
- package/nitrogen/generated/shared/c++/views/HybridRiveViewComponent.hpp +124 -0
- package/nitrogen/generated/shared/json/RiveViewConfig.json +18 -0
- package/package.json +193 -0
- package/src/core/Alignment.ts +46 -0
- package/src/core/Errors.ts +14 -0
- package/src/core/Events.ts +31 -0
- package/src/core/Fit.ts +54 -0
- package/src/core/NitroRiveViewComponent.ts +18 -0
- package/src/core/ReferencedAssets.ts +14 -0
- package/src/core/RiveColor.ts +100 -0
- package/src/core/RiveFile.ts +149 -0
- package/src/core/RiveImages.ts +5 -0
- package/src/core/RiveView.tsx +48 -0
- package/src/core/callDispose.ts +18 -0
- package/src/hooks/useRive.ts +56 -0
- package/src/hooks/useRiveBoolean.ts +28 -0
- package/src/hooks/useRiveColor.ts +47 -0
- package/src/hooks/useRiveEnum.ts +27 -0
- package/src/hooks/useRiveFile.ts +184 -0
- package/src/hooks/useRiveNumber.ts +28 -0
- package/src/hooks/useRiveProperty.ts +110 -0
- package/src/hooks/useRiveString.ts +28 -0
- package/src/hooks/useRiveTrigger.ts +49 -0
- package/src/index.tsx +52 -0
- package/src/specs/ArtboardBy.ts +31 -0
- package/src/specs/Rive.nitro.ts +6 -0
- package/src/specs/RiveFile.nitro.ts +57 -0
- package/src/specs/RiveImage.nitro.ts +42 -0
- package/src/specs/RiveView.nitro.ts +149 -0
- package/src/specs/ViewModel.nitro.ts +126 -0
- package/src/types.tsx +34 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JFunc_void_UnifiedRiveEvent.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <fbjni/fbjni.h>
|
|
11
|
+
#include <functional>
|
|
12
|
+
|
|
13
|
+
#include "UnifiedRiveEvent.hpp"
|
|
14
|
+
#include <functional>
|
|
15
|
+
#include <NitroModules/JNICallable.hpp>
|
|
16
|
+
#include "JUnifiedRiveEvent.hpp"
|
|
17
|
+
#include <string>
|
|
18
|
+
#include "RiveEventType.hpp"
|
|
19
|
+
#include "JRiveEventType.hpp"
|
|
20
|
+
#include <optional>
|
|
21
|
+
#include <variant>
|
|
22
|
+
#include <unordered_map>
|
|
23
|
+
#include "JEventPropertiesOutput.hpp"
|
|
24
|
+
|
|
25
|
+
namespace margelo::nitro::rive {
|
|
26
|
+
|
|
27
|
+
using namespace facebook;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Represents the Java/Kotlin callback `(event: UnifiedRiveEvent) -> Unit`.
|
|
31
|
+
* This can be passed around between C++ and Java/Kotlin.
|
|
32
|
+
*/
|
|
33
|
+
struct JFunc_void_UnifiedRiveEvent: public jni::JavaClass<JFunc_void_UnifiedRiveEvent> {
|
|
34
|
+
public:
|
|
35
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_UnifiedRiveEvent;";
|
|
36
|
+
|
|
37
|
+
public:
|
|
38
|
+
/**
|
|
39
|
+
* Invokes the function this `JFunc_void_UnifiedRiveEvent` instance holds through JNI.
|
|
40
|
+
*/
|
|
41
|
+
void invoke(const UnifiedRiveEvent& event) const {
|
|
42
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JUnifiedRiveEvent> /* event */)>("invoke");
|
|
43
|
+
method(self(), JUnifiedRiveEvent::fromCpp(event));
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* An implementation of Func_void_UnifiedRiveEvent that is backed by a C++ implementation (using `std::function<...>`)
|
|
49
|
+
*/
|
|
50
|
+
class JFunc_void_UnifiedRiveEvent_cxx final: public jni::HybridClass<JFunc_void_UnifiedRiveEvent_cxx, JFunc_void_UnifiedRiveEvent> {
|
|
51
|
+
public:
|
|
52
|
+
static jni::local_ref<JFunc_void_UnifiedRiveEvent::javaobject> fromCpp(const std::function<void(const UnifiedRiveEvent& /* event */)>& func) {
|
|
53
|
+
return JFunc_void_UnifiedRiveEvent_cxx::newObjectCxxArgs(func);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
public:
|
|
57
|
+
/**
|
|
58
|
+
* Invokes the C++ `std::function<...>` this `JFunc_void_UnifiedRiveEvent_cxx` instance holds.
|
|
59
|
+
*/
|
|
60
|
+
void invoke_cxx(jni::alias_ref<JUnifiedRiveEvent> event) {
|
|
61
|
+
_func(event->toCpp());
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
public:
|
|
65
|
+
[[nodiscard]]
|
|
66
|
+
inline const std::function<void(const UnifiedRiveEvent& /* event */)>& getFunction() const {
|
|
67
|
+
return _func;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
public:
|
|
71
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_UnifiedRiveEvent_cxx;";
|
|
72
|
+
static void registerNatives() {
|
|
73
|
+
registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_UnifiedRiveEvent_cxx::invoke_cxx)});
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
private:
|
|
77
|
+
explicit JFunc_void_UnifiedRiveEvent_cxx(const std::function<void(const UnifiedRiveEvent& /* event */)>& func): _func(func) { }
|
|
78
|
+
|
|
79
|
+
private:
|
|
80
|
+
friend HybridBase;
|
|
81
|
+
std::function<void(const UnifiedRiveEvent& /* event */)> _func;
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
} // namespace margelo::nitro::rive
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JFunc_void_bool.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <fbjni/fbjni.h>
|
|
11
|
+
#include <functional>
|
|
12
|
+
|
|
13
|
+
#include <functional>
|
|
14
|
+
#include <NitroModules/JNICallable.hpp>
|
|
15
|
+
|
|
16
|
+
namespace margelo::nitro::rive {
|
|
17
|
+
|
|
18
|
+
using namespace facebook;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Represents the Java/Kotlin callback `(value: Boolean) -> Unit`.
|
|
22
|
+
* This can be passed around between C++ and Java/Kotlin.
|
|
23
|
+
*/
|
|
24
|
+
struct JFunc_void_bool: public jni::JavaClass<JFunc_void_bool> {
|
|
25
|
+
public:
|
|
26
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_bool;";
|
|
27
|
+
|
|
28
|
+
public:
|
|
29
|
+
/**
|
|
30
|
+
* Invokes the function this `JFunc_void_bool` instance holds through JNI.
|
|
31
|
+
*/
|
|
32
|
+
void invoke(bool value) const {
|
|
33
|
+
static const auto method = javaClassStatic()->getMethod<void(jboolean /* value */)>("invoke");
|
|
34
|
+
method(self(), value);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* An implementation of Func_void_bool that is backed by a C++ implementation (using `std::function<...>`)
|
|
40
|
+
*/
|
|
41
|
+
class JFunc_void_bool_cxx final: public jni::HybridClass<JFunc_void_bool_cxx, JFunc_void_bool> {
|
|
42
|
+
public:
|
|
43
|
+
static jni::local_ref<JFunc_void_bool::javaobject> fromCpp(const std::function<void(bool /* value */)>& func) {
|
|
44
|
+
return JFunc_void_bool_cxx::newObjectCxxArgs(func);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
public:
|
|
48
|
+
/**
|
|
49
|
+
* Invokes the C++ `std::function<...>` this `JFunc_void_bool_cxx` instance holds.
|
|
50
|
+
*/
|
|
51
|
+
void invoke_cxx(jboolean value) {
|
|
52
|
+
_func(static_cast<bool>(value));
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
public:
|
|
56
|
+
[[nodiscard]]
|
|
57
|
+
inline const std::function<void(bool /* value */)>& getFunction() const {
|
|
58
|
+
return _func;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
public:
|
|
62
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_bool_cxx;";
|
|
63
|
+
static void registerNatives() {
|
|
64
|
+
registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_bool_cxx::invoke_cxx)});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
private:
|
|
68
|
+
explicit JFunc_void_bool_cxx(const std::function<void(bool /* value */)>& func): _func(func) { }
|
|
69
|
+
|
|
70
|
+
private:
|
|
71
|
+
friend HybridBase;
|
|
72
|
+
std::function<void(bool /* value */)> _func;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
} // namespace margelo::nitro::rive
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JFunc_void_double.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <fbjni/fbjni.h>
|
|
11
|
+
#include <functional>
|
|
12
|
+
|
|
13
|
+
#include <functional>
|
|
14
|
+
#include <NitroModules/JNICallable.hpp>
|
|
15
|
+
|
|
16
|
+
namespace margelo::nitro::rive {
|
|
17
|
+
|
|
18
|
+
using namespace facebook;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Represents the Java/Kotlin callback `(value: Double) -> Unit`.
|
|
22
|
+
* This can be passed around between C++ and Java/Kotlin.
|
|
23
|
+
*/
|
|
24
|
+
struct JFunc_void_double: public jni::JavaClass<JFunc_void_double> {
|
|
25
|
+
public:
|
|
26
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_double;";
|
|
27
|
+
|
|
28
|
+
public:
|
|
29
|
+
/**
|
|
30
|
+
* Invokes the function this `JFunc_void_double` instance holds through JNI.
|
|
31
|
+
*/
|
|
32
|
+
void invoke(double value) const {
|
|
33
|
+
static const auto method = javaClassStatic()->getMethod<void(double /* value */)>("invoke");
|
|
34
|
+
method(self(), value);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* An implementation of Func_void_double that is backed by a C++ implementation (using `std::function<...>`)
|
|
40
|
+
*/
|
|
41
|
+
class JFunc_void_double_cxx final: public jni::HybridClass<JFunc_void_double_cxx, JFunc_void_double> {
|
|
42
|
+
public:
|
|
43
|
+
static jni::local_ref<JFunc_void_double::javaobject> fromCpp(const std::function<void(double /* value */)>& func) {
|
|
44
|
+
return JFunc_void_double_cxx::newObjectCxxArgs(func);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
public:
|
|
48
|
+
/**
|
|
49
|
+
* Invokes the C++ `std::function<...>` this `JFunc_void_double_cxx` instance holds.
|
|
50
|
+
*/
|
|
51
|
+
void invoke_cxx(double value) {
|
|
52
|
+
_func(value);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
public:
|
|
56
|
+
[[nodiscard]]
|
|
57
|
+
inline const std::function<void(double /* value */)>& getFunction() const {
|
|
58
|
+
return _func;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
public:
|
|
62
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_double_cxx;";
|
|
63
|
+
static void registerNatives() {
|
|
64
|
+
registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_double_cxx::invoke_cxx)});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
private:
|
|
68
|
+
explicit JFunc_void_double_cxx(const std::function<void(double /* value */)>& func): _func(func) { }
|
|
69
|
+
|
|
70
|
+
private:
|
|
71
|
+
friend HybridBase;
|
|
72
|
+
std::function<void(double /* value */)> _func;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
} // namespace margelo::nitro::rive
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JFunc_void_std__string.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <fbjni/fbjni.h>
|
|
11
|
+
#include <functional>
|
|
12
|
+
|
|
13
|
+
#include <string>
|
|
14
|
+
#include <functional>
|
|
15
|
+
#include <NitroModules/JNICallable.hpp>
|
|
16
|
+
|
|
17
|
+
namespace margelo::nitro::rive {
|
|
18
|
+
|
|
19
|
+
using namespace facebook;
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Represents the Java/Kotlin callback `(value: String) -> Unit`.
|
|
23
|
+
* This can be passed around between C++ and Java/Kotlin.
|
|
24
|
+
*/
|
|
25
|
+
struct JFunc_void_std__string: public jni::JavaClass<JFunc_void_std__string> {
|
|
26
|
+
public:
|
|
27
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_std__string;";
|
|
28
|
+
|
|
29
|
+
public:
|
|
30
|
+
/**
|
|
31
|
+
* Invokes the function this `JFunc_void_std__string` instance holds through JNI.
|
|
32
|
+
*/
|
|
33
|
+
void invoke(const std::string& value) const {
|
|
34
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* value */)>("invoke");
|
|
35
|
+
method(self(), jni::make_jstring(value));
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* An implementation of Func_void_std__string that is backed by a C++ implementation (using `std::function<...>`)
|
|
41
|
+
*/
|
|
42
|
+
class JFunc_void_std__string_cxx final: public jni::HybridClass<JFunc_void_std__string_cxx, JFunc_void_std__string> {
|
|
43
|
+
public:
|
|
44
|
+
static jni::local_ref<JFunc_void_std__string::javaobject> fromCpp(const std::function<void(const std::string& /* value */)>& func) {
|
|
45
|
+
return JFunc_void_std__string_cxx::newObjectCxxArgs(func);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
public:
|
|
49
|
+
/**
|
|
50
|
+
* Invokes the C++ `std::function<...>` this `JFunc_void_std__string_cxx` instance holds.
|
|
51
|
+
*/
|
|
52
|
+
void invoke_cxx(jni::alias_ref<jni::JString> value) {
|
|
53
|
+
_func(value->toStdString());
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
public:
|
|
57
|
+
[[nodiscard]]
|
|
58
|
+
inline const std::function<void(const std::string& /* value */)>& getFunction() const {
|
|
59
|
+
return _func;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
public:
|
|
63
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/Func_void_std__string_cxx;";
|
|
64
|
+
static void registerNatives() {
|
|
65
|
+
registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_std__string_cxx::invoke_cxx)});
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
private:
|
|
69
|
+
explicit JFunc_void_std__string_cxx(const std::function<void(const std::string& /* value */)>& func): _func(func) { }
|
|
70
|
+
|
|
71
|
+
private:
|
|
72
|
+
friend HybridBase;
|
|
73
|
+
std::function<void(const std::string& /* value */)> _func;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
} // namespace margelo::nitro::rive
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JHybridRiveFileFactorySpec.cpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#include "JHybridRiveFileFactorySpec.hpp"
|
|
9
|
+
|
|
10
|
+
// Forward declaration of `HybridRiveFileSpec` to properly resolve imports.
|
|
11
|
+
namespace margelo::nitro::rive { class HybridRiveFileSpec; }
|
|
12
|
+
// Forward declaration of `ReferencedAssetsType` to properly resolve imports.
|
|
13
|
+
namespace margelo::nitro::rive { struct ReferencedAssetsType; }
|
|
14
|
+
// Forward declaration of `ResolvedReferencedAsset` to properly resolve imports.
|
|
15
|
+
namespace margelo::nitro::rive { struct ResolvedReferencedAsset; }
|
|
16
|
+
// Forward declaration of `HybridRiveImageSpec` to properly resolve imports.
|
|
17
|
+
namespace margelo::nitro::rive { class HybridRiveImageSpec; }
|
|
18
|
+
|
|
19
|
+
#include <memory>
|
|
20
|
+
#include "HybridRiveFileSpec.hpp"
|
|
21
|
+
#include <NitroModules/Promise.hpp>
|
|
22
|
+
#include <NitroModules/JPromise.hpp>
|
|
23
|
+
#include "JHybridRiveFileSpec.hpp"
|
|
24
|
+
#include <string>
|
|
25
|
+
#include "ReferencedAssetsType.hpp"
|
|
26
|
+
#include <optional>
|
|
27
|
+
#include "JReferencedAssetsType.hpp"
|
|
28
|
+
#include "ResolvedReferencedAsset.hpp"
|
|
29
|
+
#include <unordered_map>
|
|
30
|
+
#include "JResolvedReferencedAsset.hpp"
|
|
31
|
+
#include "HybridRiveImageSpec.hpp"
|
|
32
|
+
#include "JHybridRiveImageSpec.hpp"
|
|
33
|
+
#include <NitroModules/ArrayBuffer.hpp>
|
|
34
|
+
#include <NitroModules/JArrayBuffer.hpp>
|
|
35
|
+
#include <NitroModules/JUnit.hpp>
|
|
36
|
+
|
|
37
|
+
namespace margelo::nitro::rive {
|
|
38
|
+
|
|
39
|
+
jni::local_ref<JHybridRiveFileFactorySpec::jhybriddata> JHybridRiveFileFactorySpec::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
40
|
+
return makeCxxInstance(jThis);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
void JHybridRiveFileFactorySpec::registerNatives() {
|
|
44
|
+
registerHybrid({
|
|
45
|
+
makeNativeMethod("initHybrid", JHybridRiveFileFactorySpec::initHybrid),
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
size_t JHybridRiveFileFactorySpec::getExternalMemorySize() noexcept {
|
|
50
|
+
static const auto method = javaClassStatic()->getMethod<jlong()>("getMemorySize");
|
|
51
|
+
return method(_javaPart);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
void JHybridRiveFileFactorySpec::dispose() noexcept {
|
|
55
|
+
static const auto method = javaClassStatic()->getMethod<void()>("dispose");
|
|
56
|
+
method(_javaPart);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
std::string JHybridRiveFileFactorySpec::toString() {
|
|
60
|
+
static const auto method = javaClassStatic()->getMethod<jni::JString()>("toString");
|
|
61
|
+
auto javaString = method(_javaPart);
|
|
62
|
+
return javaString->toStdString();
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Properties
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
// Methods
|
|
69
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> JHybridRiveFileFactorySpec::fromURL(const std::string& url, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) {
|
|
70
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<jni::JString> /* url */, jboolean /* loadCdn */, jni::alias_ref<JReferencedAssetsType> /* referencedAssets */)>("fromURL");
|
|
71
|
+
auto __result = method(_javaPart, jni::make_jstring(url), loadCdn, referencedAssets.has_value() ? JReferencedAssetsType::fromCpp(referencedAssets.value()) : nullptr);
|
|
72
|
+
return [&]() {
|
|
73
|
+
auto __promise = Promise<std::shared_ptr<HybridRiveFileSpec>>::create();
|
|
74
|
+
__result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& __boxedResult) {
|
|
75
|
+
auto __result = jni::static_ref_cast<JHybridRiveFileSpec::javaobject>(__boxedResult);
|
|
76
|
+
__promise->resolve(__result->cthis()->shared_cast<JHybridRiveFileSpec>());
|
|
77
|
+
});
|
|
78
|
+
__result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
|
|
79
|
+
jni::JniException __jniError(__throwable);
|
|
80
|
+
__promise->reject(std::make_exception_ptr(__jniError));
|
|
81
|
+
});
|
|
82
|
+
return __promise;
|
|
83
|
+
}();
|
|
84
|
+
}
|
|
85
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> JHybridRiveFileFactorySpec::fromFileURL(const std::string& fileURL, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) {
|
|
86
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<jni::JString> /* fileURL */, jboolean /* loadCdn */, jni::alias_ref<JReferencedAssetsType> /* referencedAssets */)>("fromFileURL");
|
|
87
|
+
auto __result = method(_javaPart, jni::make_jstring(fileURL), loadCdn, referencedAssets.has_value() ? JReferencedAssetsType::fromCpp(referencedAssets.value()) : nullptr);
|
|
88
|
+
return [&]() {
|
|
89
|
+
auto __promise = Promise<std::shared_ptr<HybridRiveFileSpec>>::create();
|
|
90
|
+
__result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& __boxedResult) {
|
|
91
|
+
auto __result = jni::static_ref_cast<JHybridRiveFileSpec::javaobject>(__boxedResult);
|
|
92
|
+
__promise->resolve(__result->cthis()->shared_cast<JHybridRiveFileSpec>());
|
|
93
|
+
});
|
|
94
|
+
__result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
|
|
95
|
+
jni::JniException __jniError(__throwable);
|
|
96
|
+
__promise->reject(std::make_exception_ptr(__jniError));
|
|
97
|
+
});
|
|
98
|
+
return __promise;
|
|
99
|
+
}();
|
|
100
|
+
}
|
|
101
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> JHybridRiveFileFactorySpec::fromResource(const std::string& resource, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) {
|
|
102
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<jni::JString> /* resource */, jboolean /* loadCdn */, jni::alias_ref<JReferencedAssetsType> /* referencedAssets */)>("fromResource");
|
|
103
|
+
auto __result = method(_javaPart, jni::make_jstring(resource), loadCdn, referencedAssets.has_value() ? JReferencedAssetsType::fromCpp(referencedAssets.value()) : nullptr);
|
|
104
|
+
return [&]() {
|
|
105
|
+
auto __promise = Promise<std::shared_ptr<HybridRiveFileSpec>>::create();
|
|
106
|
+
__result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& __boxedResult) {
|
|
107
|
+
auto __result = jni::static_ref_cast<JHybridRiveFileSpec::javaobject>(__boxedResult);
|
|
108
|
+
__promise->resolve(__result->cthis()->shared_cast<JHybridRiveFileSpec>());
|
|
109
|
+
});
|
|
110
|
+
__result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
|
|
111
|
+
jni::JniException __jniError(__throwable);
|
|
112
|
+
__promise->reject(std::make_exception_ptr(__jniError));
|
|
113
|
+
});
|
|
114
|
+
return __promise;
|
|
115
|
+
}();
|
|
116
|
+
}
|
|
117
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> JHybridRiveFileFactorySpec::fromBytes(const std::shared_ptr<ArrayBuffer>& bytes, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) {
|
|
118
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<JArrayBuffer::javaobject> /* bytes */, jboolean /* loadCdn */, jni::alias_ref<JReferencedAssetsType> /* referencedAssets */)>("fromBytes");
|
|
119
|
+
auto __result = method(_javaPart, JArrayBuffer::wrap(bytes), loadCdn, referencedAssets.has_value() ? JReferencedAssetsType::fromCpp(referencedAssets.value()) : nullptr);
|
|
120
|
+
return [&]() {
|
|
121
|
+
auto __promise = Promise<std::shared_ptr<HybridRiveFileSpec>>::create();
|
|
122
|
+
__result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& __boxedResult) {
|
|
123
|
+
auto __result = jni::static_ref_cast<JHybridRiveFileSpec::javaobject>(__boxedResult);
|
|
124
|
+
__promise->resolve(__result->cthis()->shared_cast<JHybridRiveFileSpec>());
|
|
125
|
+
});
|
|
126
|
+
__result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
|
|
127
|
+
jni::JniException __jniError(__throwable);
|
|
128
|
+
__promise->reject(std::make_exception_ptr(__jniError));
|
|
129
|
+
});
|
|
130
|
+
return __promise;
|
|
131
|
+
}();
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
} // namespace margelo::nitro::rive
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridRiveFileFactorySpec.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <NitroModules/JHybridObject.hpp>
|
|
11
|
+
#include <fbjni/fbjni.h>
|
|
12
|
+
#include "HybridRiveFileFactorySpec.hpp"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
namespace margelo::nitro::rive {
|
|
18
|
+
|
|
19
|
+
using namespace facebook;
|
|
20
|
+
|
|
21
|
+
class JHybridRiveFileFactorySpec: public jni::HybridClass<JHybridRiveFileFactorySpec, JHybridObject>,
|
|
22
|
+
public virtual HybridRiveFileFactorySpec {
|
|
23
|
+
public:
|
|
24
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridRiveFileFactorySpec;";
|
|
25
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
26
|
+
static void registerNatives();
|
|
27
|
+
|
|
28
|
+
protected:
|
|
29
|
+
// C++ constructor (called from Java via `initHybrid()`)
|
|
30
|
+
explicit JHybridRiveFileFactorySpec(jni::alias_ref<jhybridobject> jThis) :
|
|
31
|
+
HybridObject(HybridRiveFileFactorySpec::TAG),
|
|
32
|
+
HybridBase(jThis),
|
|
33
|
+
_javaPart(jni::make_global(jThis)) {}
|
|
34
|
+
|
|
35
|
+
public:
|
|
36
|
+
~JHybridRiveFileFactorySpec() override {
|
|
37
|
+
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
38
|
+
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public:
|
|
42
|
+
size_t getExternalMemorySize() noexcept override;
|
|
43
|
+
void dispose() noexcept override;
|
|
44
|
+
std::string toString() override;
|
|
45
|
+
|
|
46
|
+
public:
|
|
47
|
+
inline const jni::global_ref<JHybridRiveFileFactorySpec::javaobject>& getJavaPart() const noexcept {
|
|
48
|
+
return _javaPart;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public:
|
|
52
|
+
// Properties
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
public:
|
|
56
|
+
// Methods
|
|
57
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> fromURL(const std::string& url, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) override;
|
|
58
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> fromFileURL(const std::string& fileURL, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) override;
|
|
59
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> fromResource(const std::string& resource, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) override;
|
|
60
|
+
std::shared_ptr<Promise<std::shared_ptr<HybridRiveFileSpec>>> fromBytes(const std::shared_ptr<ArrayBuffer>& bytes, bool loadCdn, const std::optional<ReferencedAssetsType>& referencedAssets) override;
|
|
61
|
+
|
|
62
|
+
private:
|
|
63
|
+
friend HybridBase;
|
|
64
|
+
using HybridBase::HybridBase;
|
|
65
|
+
jni::global_ref<JHybridRiveFileFactorySpec::javaobject> _javaPart;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
} // namespace margelo::nitro::rive
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// JHybridRiveFileSpec.cpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#include "JHybridRiveFileSpec.hpp"
|
|
9
|
+
|
|
10
|
+
// Forward declaration of `HybridViewModelSpec` to properly resolve imports.
|
|
11
|
+
namespace margelo::nitro::rive { class HybridViewModelSpec; }
|
|
12
|
+
// Forward declaration of `ArtboardBy` to properly resolve imports.
|
|
13
|
+
namespace margelo::nitro::rive { struct ArtboardBy; }
|
|
14
|
+
// Forward declaration of `ArtboardByTypes` to properly resolve imports.
|
|
15
|
+
namespace margelo::nitro::rive { enum class ArtboardByTypes; }
|
|
16
|
+
// Forward declaration of `ReferencedAssetsType` to properly resolve imports.
|
|
17
|
+
namespace margelo::nitro::rive { struct ReferencedAssetsType; }
|
|
18
|
+
// Forward declaration of `ResolvedReferencedAsset` to properly resolve imports.
|
|
19
|
+
namespace margelo::nitro::rive { struct ResolvedReferencedAsset; }
|
|
20
|
+
// Forward declaration of `HybridRiveImageSpec` to properly resolve imports.
|
|
21
|
+
namespace margelo::nitro::rive { class HybridRiveImageSpec; }
|
|
22
|
+
|
|
23
|
+
#include <optional>
|
|
24
|
+
#include <memory>
|
|
25
|
+
#include "HybridViewModelSpec.hpp"
|
|
26
|
+
#include "JHybridViewModelSpec.hpp"
|
|
27
|
+
#include <string>
|
|
28
|
+
#include "ArtboardBy.hpp"
|
|
29
|
+
#include "JArtboardBy.hpp"
|
|
30
|
+
#include "ArtboardByTypes.hpp"
|
|
31
|
+
#include "JArtboardByTypes.hpp"
|
|
32
|
+
#include "ReferencedAssetsType.hpp"
|
|
33
|
+
#include "JReferencedAssetsType.hpp"
|
|
34
|
+
#include "ResolvedReferencedAsset.hpp"
|
|
35
|
+
#include <unordered_map>
|
|
36
|
+
#include "JResolvedReferencedAsset.hpp"
|
|
37
|
+
#include "HybridRiveImageSpec.hpp"
|
|
38
|
+
#include "JHybridRiveImageSpec.hpp"
|
|
39
|
+
|
|
40
|
+
namespace margelo::nitro::rive {
|
|
41
|
+
|
|
42
|
+
jni::local_ref<JHybridRiveFileSpec::jhybriddata> JHybridRiveFileSpec::initHybrid(jni::alias_ref<jhybridobject> jThis) {
|
|
43
|
+
return makeCxxInstance(jThis);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
void JHybridRiveFileSpec::registerNatives() {
|
|
47
|
+
registerHybrid({
|
|
48
|
+
makeNativeMethod("initHybrid", JHybridRiveFileSpec::initHybrid),
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
size_t JHybridRiveFileSpec::getExternalMemorySize() noexcept {
|
|
53
|
+
static const auto method = javaClassStatic()->getMethod<jlong()>("getMemorySize");
|
|
54
|
+
return method(_javaPart);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
void JHybridRiveFileSpec::dispose() noexcept {
|
|
58
|
+
static const auto method = javaClassStatic()->getMethod<void()>("dispose");
|
|
59
|
+
method(_javaPart);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
std::string JHybridRiveFileSpec::toString() {
|
|
63
|
+
static const auto method = javaClassStatic()->getMethod<jni::JString()>("toString");
|
|
64
|
+
auto javaString = method(_javaPart);
|
|
65
|
+
return javaString->toStdString();
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// Properties
|
|
69
|
+
std::optional<double> JHybridRiveFileSpec::getViewModelCount() {
|
|
70
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JDouble>()>("getViewModelCount");
|
|
71
|
+
auto __result = method(_javaPart);
|
|
72
|
+
return __result != nullptr ? std::make_optional(__result->value()) : std::nullopt;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Methods
|
|
76
|
+
std::optional<std::shared_ptr<HybridViewModelSpec>> JHybridRiveFileSpec::viewModelByIndex(double index) {
|
|
77
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JHybridViewModelSpec::javaobject>(double /* index */)>("viewModelByIndex");
|
|
78
|
+
auto __result = method(_javaPart, index);
|
|
79
|
+
return __result != nullptr ? std::make_optional(__result->cthis()->shared_cast<JHybridViewModelSpec>()) : std::nullopt;
|
|
80
|
+
}
|
|
81
|
+
std::optional<std::shared_ptr<HybridViewModelSpec>> JHybridRiveFileSpec::viewModelByName(const std::string& name) {
|
|
82
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JHybridViewModelSpec::javaobject>(jni::alias_ref<jni::JString> /* name */)>("viewModelByName");
|
|
83
|
+
auto __result = method(_javaPart, jni::make_jstring(name));
|
|
84
|
+
return __result != nullptr ? std::make_optional(__result->cthis()->shared_cast<JHybridViewModelSpec>()) : std::nullopt;
|
|
85
|
+
}
|
|
86
|
+
std::optional<std::shared_ptr<HybridViewModelSpec>> JHybridRiveFileSpec::defaultArtboardViewModel(const std::optional<ArtboardBy>& artboardBy) {
|
|
87
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JHybridViewModelSpec::javaobject>(jni::alias_ref<JArtboardBy> /* artboardBy */)>("defaultArtboardViewModel");
|
|
88
|
+
auto __result = method(_javaPart, artboardBy.has_value() ? JArtboardBy::fromCpp(artboardBy.value()) : nullptr);
|
|
89
|
+
return __result != nullptr ? std::make_optional(__result->cthis()->shared_cast<JHybridViewModelSpec>()) : std::nullopt;
|
|
90
|
+
}
|
|
91
|
+
void JHybridRiveFileSpec::updateReferencedAssets(const ReferencedAssetsType& referencedAssets) {
|
|
92
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JReferencedAssetsType> /* referencedAssets */)>("updateReferencedAssets");
|
|
93
|
+
method(_javaPart, JReferencedAssetsType::fromCpp(referencedAssets));
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
} // namespace margelo::nitro::rive
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridRiveFileSpec.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <NitroModules/JHybridObject.hpp>
|
|
11
|
+
#include <fbjni/fbjni.h>
|
|
12
|
+
#include "HybridRiveFileSpec.hpp"
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
namespace margelo::nitro::rive {
|
|
18
|
+
|
|
19
|
+
using namespace facebook;
|
|
20
|
+
|
|
21
|
+
class JHybridRiveFileSpec: public jni::HybridClass<JHybridRiveFileSpec, JHybridObject>,
|
|
22
|
+
public virtual HybridRiveFileSpec {
|
|
23
|
+
public:
|
|
24
|
+
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/rive/HybridRiveFileSpec;";
|
|
25
|
+
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
|
|
26
|
+
static void registerNatives();
|
|
27
|
+
|
|
28
|
+
protected:
|
|
29
|
+
// C++ constructor (called from Java via `initHybrid()`)
|
|
30
|
+
explicit JHybridRiveFileSpec(jni::alias_ref<jhybridobject> jThis) :
|
|
31
|
+
HybridObject(HybridRiveFileSpec::TAG),
|
|
32
|
+
HybridBase(jThis),
|
|
33
|
+
_javaPart(jni::make_global(jThis)) {}
|
|
34
|
+
|
|
35
|
+
public:
|
|
36
|
+
~JHybridRiveFileSpec() override {
|
|
37
|
+
// Hermes GC can destroy JS objects on a non-JNI Thread.
|
|
38
|
+
jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public:
|
|
42
|
+
size_t getExternalMemorySize() noexcept override;
|
|
43
|
+
void dispose() noexcept override;
|
|
44
|
+
std::string toString() override;
|
|
45
|
+
|
|
46
|
+
public:
|
|
47
|
+
inline const jni::global_ref<JHybridRiveFileSpec::javaobject>& getJavaPart() const noexcept {
|
|
48
|
+
return _javaPart;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public:
|
|
52
|
+
// Properties
|
|
53
|
+
std::optional<double> getViewModelCount() override;
|
|
54
|
+
|
|
55
|
+
public:
|
|
56
|
+
// Methods
|
|
57
|
+
std::optional<std::shared_ptr<HybridViewModelSpec>> viewModelByIndex(double index) override;
|
|
58
|
+
std::optional<std::shared_ptr<HybridViewModelSpec>> viewModelByName(const std::string& name) override;
|
|
59
|
+
std::optional<std::shared_ptr<HybridViewModelSpec>> defaultArtboardViewModel(const std::optional<ArtboardBy>& artboardBy) override;
|
|
60
|
+
void updateReferencedAssets(const ReferencedAssetsType& referencedAssets) override;
|
|
61
|
+
|
|
62
|
+
private:
|
|
63
|
+
friend HybridBase;
|
|
64
|
+
using HybridBase::HybridBase;
|
|
65
|
+
jni::global_ref<JHybridRiveFileSpec::javaobject> _javaPart;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
} // namespace margelo::nitro::rive
|