@onekeyfe/react-native-image 3.0.98
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 +21 -0
- package/OneKeyImage.podspec +32 -0
- package/README.md +88 -0
- package/android/CMakeLists.txt +12 -0
- package/android/build.gradle +85 -0
- package/android/consumer-rules.pro +10 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +1 -0
- package/android/src/main/cpp/cpp-adapter.cpp +6 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImage.kt +616 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImageCache.kt +131 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImageDecodeDimensions.kt +169 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImageGlideRegistry.kt +285 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImageModel.kt +68 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImagePackage.kt +28 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImageSafety.kt +1120 -0
- package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyTosUrl.kt +93 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyAnimationTimelineInspectorTest.kt +210 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyImageCacheTypeTest.kt +16 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyImageDecodeDimensionsTest.kt +70 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyImageModelTest.kt +65 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyImageRequestSignatureTest.kt +33 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyImageSafetyTest.kt +346 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyResourceCleanupTest.kt +43 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyTerminalEventPairTest.kt +38 -0
- package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyTosUrlTest.kt +82 -0
- package/ios/OneKeyImage.swift +636 -0
- package/ios/OneKeyImageCache.swift +215 -0
- package/ios/OneKeyImageRequestContext.swift +781 -0
- package/ios/OneKeyTosURL.swift +69 -0
- package/ios/tests/OneKeyImageInfrastructureTests.swift +555 -0
- package/ios/tests/OneKeyTosURLTests.swift +142 -0
- package/lib/module/OneKeyImage.nitro.js +30 -0
- package/lib/module/index.js +223 -0
- package/lib/module/package.json +1 -0
- package/lib/nitrogen/generated/android/c++/JFunc_void.hpp +75 -0
- package/lib/nitrogen/generated/android/c++/JFunc_void_double_double_OneKeyImageCacheType.hpp +77 -0
- package/lib/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +76 -0
- package/lib/nitrogen/generated/android/c++/JHybridOneKeyImageCacheSpec.cpp +130 -0
- package/lib/nitrogen/generated/android/c++/JHybridOneKeyImageCacheSpec.hpp +66 -0
- package/lib/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.cpp +255 -0
- package/lib/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.hpp +93 -0
- package/lib/nitrogen/generated/android/c++/JOneKeyImageCachePolicy.hpp +64 -0
- package/lib/nitrogen/generated/android/c++/JOneKeyImageCacheType.hpp +61 -0
- package/lib/nitrogen/generated/android/c++/JOneKeyImageContentFit.hpp +64 -0
- package/lib/nitrogen/generated/android/c++/JOneKeyImageLoadingStrategy.hpp +61 -0
- package/lib/nitrogen/generated/android/c++/JOneKeyImagePreloadSource.hpp +88 -0
- package/lib/nitrogen/generated/android/c++/JOneKeyImageVariant.hpp +64 -0
- package/lib/nitrogen/generated/android/c++/views/JHybridOneKeyImageStateUpdater.cpp +144 -0
- package/lib/nitrogen/generated/android/c++/views/JHybridOneKeyImageStateUpdater.hpp +54 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/Func_void.kt +78 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/Func_void_double_double_OneKeyImageCacheType.kt +78 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/Func_void_std__string.kt +78 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/HybridOneKeyImageCacheSpec.kt +69 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/HybridOneKeyImageSpec.kt +189 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageCachePolicy.kt +25 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageCacheType.kt +24 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageContentFit.kt +25 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageLoadingStrategy.kt +24 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImagePreloadSource.kt +86 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageVariant.kt +25 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/onekeyimageOnLoad.kt +35 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/views/HybridOneKeyImageManager.kt +96 -0
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/views/HybridOneKeyImageStateUpdater.kt +23 -0
- package/lib/nitrogen/generated/android/onekeyimage+autolinking.cmake +85 -0
- package/lib/nitrogen/generated/android/onekeyimage+autolinking.gradle +27 -0
- package/lib/nitrogen/generated/android/onekeyimageOnLoad.cpp +78 -0
- package/lib/nitrogen/generated/android/onekeyimageOnLoad.hpp +34 -0
- package/lib/nitrogen/generated/ios/OneKeyImage+autolinking.rb +62 -0
- package/lib/nitrogen/generated/ios/OneKeyImage-Swift-Cxx-Bridge.cpp +90 -0
- package/lib/nitrogen/generated/ios/OneKeyImage-Swift-Cxx-Bridge.hpp +405 -0
- package/lib/nitrogen/generated/ios/OneKeyImage-Swift-Cxx-Umbrella.hpp +71 -0
- package/lib/nitrogen/generated/ios/OneKeyImageAutolinking.mm +41 -0
- package/lib/nitrogen/generated/ios/OneKeyImageAutolinking.swift +38 -0
- package/lib/nitrogen/generated/ios/c++/HybridOneKeyImageCacheSpecSwift.cpp +11 -0
- package/lib/nitrogen/generated/ios/c++/HybridOneKeyImageCacheSpecSwift.hpp +114 -0
- package/lib/nitrogen/generated/ios/c++/HybridOneKeyImageSpecSwift.cpp +11 -0
- package/lib/nitrogen/generated/ios/c++/HybridOneKeyImageSpecSwift.hpp +206 -0
- package/lib/nitrogen/generated/ios/c++/views/HybridOneKeyImageComponent.mm +228 -0
- package/lib/nitrogen/generated/ios/swift/Func_void.swift +46 -0
- package/lib/nitrogen/generated/ios/swift/Func_void_bool.swift +46 -0
- package/lib/nitrogen/generated/ios/swift/Func_void_double_double_OneKeyImageCacheType.swift +46 -0
- package/lib/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
- package/lib/nitrogen/generated/ios/swift/Func_void_std__string.swift +46 -0
- package/lib/nitrogen/generated/ios/swift/HybridOneKeyImageCacheSpec.swift +58 -0
- package/lib/nitrogen/generated/ios/swift/HybridOneKeyImageCacheSpec_cxx.swift +202 -0
- package/lib/nitrogen/generated/ios/swift/HybridOneKeyImageSpec.swift +70 -0
- package/lib/nitrogen/generated/ios/swift/HybridOneKeyImageSpec_cxx.swift +539 -0
- package/lib/nitrogen/generated/ios/swift/OneKeyImageCachePolicy.swift +48 -0
- package/lib/nitrogen/generated/ios/swift/OneKeyImageCacheType.swift +44 -0
- package/lib/nitrogen/generated/ios/swift/OneKeyImageContentFit.swift +48 -0
- package/lib/nitrogen/generated/ios/swift/OneKeyImageLoadingStrategy.swift +44 -0
- package/lib/nitrogen/generated/ios/swift/OneKeyImagePreloadSource.swift +148 -0
- package/lib/nitrogen/generated/ios/swift/OneKeyImageVariant.swift +48 -0
- package/lib/nitrogen/generated/shared/c++/HybridOneKeyImageCacheSpec.cpp +24 -0
- package/lib/nitrogen/generated/shared/c++/HybridOneKeyImageCacheSpec.hpp +68 -0
- package/lib/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.cpp +52 -0
- package/lib/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.hpp +108 -0
- package/lib/nitrogen/generated/shared/c++/OneKeyImageCachePolicy.hpp +84 -0
- package/lib/nitrogen/generated/shared/c++/OneKeyImageCacheType.hpp +80 -0
- package/lib/nitrogen/generated/shared/c++/OneKeyImageContentFit.hpp +84 -0
- package/lib/nitrogen/generated/shared/c++/OneKeyImageLoadingStrategy.hpp +80 -0
- package/lib/nitrogen/generated/shared/c++/OneKeyImagePreloadSource.hpp +114 -0
- package/lib/nitrogen/generated/shared/c++/OneKeyImageVariant.hpp +84 -0
- package/lib/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.cpp +62 -0
- package/lib/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.hpp +132 -0
- package/lib/nitrogen/generated/shared/json/OneKeyImageConfig.json +24 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/OneKeyImage.nitro.d.ts +67 -0
- package/lib/typescript/src/index.d.ts +55 -0
- package/nitro.json +31 -0
- package/nitrogen/generated/android/c++/JFunc_void.hpp +75 -0
- package/nitrogen/generated/android/c++/JFunc_void_double_double_OneKeyImageCacheType.hpp +77 -0
- package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +76 -0
- package/nitrogen/generated/android/c++/JHybridOneKeyImageCacheSpec.cpp +130 -0
- package/nitrogen/generated/android/c++/JHybridOneKeyImageCacheSpec.hpp +66 -0
- package/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.cpp +255 -0
- package/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.hpp +93 -0
- package/nitrogen/generated/android/c++/JOneKeyImageCachePolicy.hpp +64 -0
- package/nitrogen/generated/android/c++/JOneKeyImageCacheType.hpp +61 -0
- package/nitrogen/generated/android/c++/JOneKeyImageContentFit.hpp +64 -0
- package/nitrogen/generated/android/c++/JOneKeyImageLoadingStrategy.hpp +61 -0
- package/nitrogen/generated/android/c++/JOneKeyImagePreloadSource.hpp +88 -0
- package/nitrogen/generated/android/c++/JOneKeyImageVariant.hpp +64 -0
- package/nitrogen/generated/android/c++/views/JHybridOneKeyImageStateUpdater.cpp +144 -0
- package/nitrogen/generated/android/c++/views/JHybridOneKeyImageStateUpdater.hpp +54 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/Func_void.kt +78 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/Func_void_double_double_OneKeyImageCacheType.kt +78 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/Func_void_std__string.kt +78 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/HybridOneKeyImageCacheSpec.kt +69 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/HybridOneKeyImageSpec.kt +189 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageCachePolicy.kt +25 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageCacheType.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageContentFit.kt +25 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageLoadingStrategy.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImagePreloadSource.kt +86 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageVariant.kt +25 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/onekeyimageOnLoad.kt +35 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/views/HybridOneKeyImageManager.kt +96 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/views/HybridOneKeyImageStateUpdater.kt +23 -0
- package/nitrogen/generated/android/onekeyimage+autolinking.cmake +85 -0
- package/nitrogen/generated/android/onekeyimage+autolinking.gradle +27 -0
- package/nitrogen/generated/android/onekeyimageOnLoad.cpp +78 -0
- package/nitrogen/generated/android/onekeyimageOnLoad.hpp +34 -0
- package/nitrogen/generated/ios/OneKeyImage+autolinking.rb +62 -0
- package/nitrogen/generated/ios/OneKeyImage-Swift-Cxx-Bridge.cpp +90 -0
- package/nitrogen/generated/ios/OneKeyImage-Swift-Cxx-Bridge.hpp +405 -0
- package/nitrogen/generated/ios/OneKeyImage-Swift-Cxx-Umbrella.hpp +71 -0
- package/nitrogen/generated/ios/OneKeyImageAutolinking.mm +41 -0
- package/nitrogen/generated/ios/OneKeyImageAutolinking.swift +38 -0
- package/nitrogen/generated/ios/c++/HybridOneKeyImageCacheSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridOneKeyImageCacheSpecSwift.hpp +114 -0
- package/nitrogen/generated/ios/c++/HybridOneKeyImageSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridOneKeyImageSpecSwift.hpp +206 -0
- package/nitrogen/generated/ios/c++/views/HybridOneKeyImageComponent.mm +228 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_double_double_OneKeyImageCacheType.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridOneKeyImageCacheSpec.swift +58 -0
- package/nitrogen/generated/ios/swift/HybridOneKeyImageCacheSpec_cxx.swift +202 -0
- package/nitrogen/generated/ios/swift/HybridOneKeyImageSpec.swift +70 -0
- package/nitrogen/generated/ios/swift/HybridOneKeyImageSpec_cxx.swift +539 -0
- package/nitrogen/generated/ios/swift/OneKeyImageCachePolicy.swift +48 -0
- package/nitrogen/generated/ios/swift/OneKeyImageCacheType.swift +44 -0
- package/nitrogen/generated/ios/swift/OneKeyImageContentFit.swift +48 -0
- package/nitrogen/generated/ios/swift/OneKeyImageLoadingStrategy.swift +44 -0
- package/nitrogen/generated/ios/swift/OneKeyImagePreloadSource.swift +148 -0
- package/nitrogen/generated/ios/swift/OneKeyImageVariant.swift +48 -0
- package/nitrogen/generated/shared/c++/HybridOneKeyImageCacheSpec.cpp +24 -0
- package/nitrogen/generated/shared/c++/HybridOneKeyImageCacheSpec.hpp +68 -0
- package/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.cpp +52 -0
- package/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.hpp +108 -0
- package/nitrogen/generated/shared/c++/OneKeyImageCachePolicy.hpp +84 -0
- package/nitrogen/generated/shared/c++/OneKeyImageCacheType.hpp +80 -0
- package/nitrogen/generated/shared/c++/OneKeyImageContentFit.hpp +84 -0
- package/nitrogen/generated/shared/c++/OneKeyImageLoadingStrategy.hpp +80 -0
- package/nitrogen/generated/shared/c++/OneKeyImagePreloadSource.hpp +114 -0
- package/nitrogen/generated/shared/c++/OneKeyImageVariant.hpp +84 -0
- package/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.cpp +62 -0
- package/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.hpp +132 -0
- package/nitrogen/generated/shared/json/OneKeyImageConfig.json +24 -0
- package/package.json +128 -0
- package/src/OneKeyImage.nitro.ts +86 -0
- package/src/index.tsx +376 -0
package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/HybridOneKeyImageSpec.kt
ADDED
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridOneKeyImageSpec.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.jni.HybridData
|
|
12
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
13
|
+
import dalvik.annotation.optimization.FastNative
|
|
14
|
+
import com.margelo.nitro.core.HybridObject
|
|
15
|
+
import com.margelo.nitro.views.HybridView
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* A Kotlin class representing the OneKeyImage HybridObject.
|
|
19
|
+
* Implement this abstract class to create Kotlin-based instances of OneKeyImage.
|
|
20
|
+
*/
|
|
21
|
+
@DoNotStrip
|
|
22
|
+
@Keep
|
|
23
|
+
@Suppress(
|
|
24
|
+
"KotlinJniMissingFunction", "unused",
|
|
25
|
+
"RedundantSuppression", "RedundantUnitReturnType", "SimpleRedundantLet",
|
|
26
|
+
"LocalVariableName", "PropertyName", "PrivatePropertyName", "FunctionName"
|
|
27
|
+
)
|
|
28
|
+
abstract class HybridOneKeyImageSpec: HybridView() {
|
|
29
|
+
// Properties
|
|
30
|
+
@get:DoNotStrip
|
|
31
|
+
@get:Keep
|
|
32
|
+
@set:DoNotStrip
|
|
33
|
+
@set:Keep
|
|
34
|
+
abstract var sourceUri: String?
|
|
35
|
+
|
|
36
|
+
@get:DoNotStrip
|
|
37
|
+
@get:Keep
|
|
38
|
+
@set:DoNotStrip
|
|
39
|
+
@set:Keep
|
|
40
|
+
abstract var sourceHeadersJson: String?
|
|
41
|
+
|
|
42
|
+
@get:DoNotStrip
|
|
43
|
+
@get:Keep
|
|
44
|
+
@set:DoNotStrip
|
|
45
|
+
@set:Keep
|
|
46
|
+
abstract var variant: OneKeyImageVariant?
|
|
47
|
+
|
|
48
|
+
@get:DoNotStrip
|
|
49
|
+
@get:Keep
|
|
50
|
+
@set:DoNotStrip
|
|
51
|
+
@set:Keep
|
|
52
|
+
abstract var contentFit: OneKeyImageContentFit?
|
|
53
|
+
|
|
54
|
+
@get:DoNotStrip
|
|
55
|
+
@get:Keep
|
|
56
|
+
@set:DoNotStrip
|
|
57
|
+
@set:Keep
|
|
58
|
+
abstract var cachePolicy: OneKeyImageCachePolicy?
|
|
59
|
+
|
|
60
|
+
@get:DoNotStrip
|
|
61
|
+
@get:Keep
|
|
62
|
+
@set:DoNotStrip
|
|
63
|
+
@set:Keep
|
|
64
|
+
abstract var autoplay: Boolean?
|
|
65
|
+
|
|
66
|
+
@get:DoNotStrip
|
|
67
|
+
@get:Keep
|
|
68
|
+
@set:DoNotStrip
|
|
69
|
+
@set:Keep
|
|
70
|
+
abstract var recyclingKey: String?
|
|
71
|
+
|
|
72
|
+
@get:DoNotStrip
|
|
73
|
+
@get:Keep
|
|
74
|
+
@set:DoNotStrip
|
|
75
|
+
@set:Keep
|
|
76
|
+
abstract var optimizeTos: Boolean?
|
|
77
|
+
|
|
78
|
+
@get:DoNotStrip
|
|
79
|
+
@get:Keep
|
|
80
|
+
@set:DoNotStrip
|
|
81
|
+
@set:Keep
|
|
82
|
+
abstract var overscan: Double?
|
|
83
|
+
|
|
84
|
+
@get:DoNotStrip
|
|
85
|
+
@get:Keep
|
|
86
|
+
@set:DoNotStrip
|
|
87
|
+
@set:Keep
|
|
88
|
+
abstract var loadingStrategy: OneKeyImageLoadingStrategy?
|
|
89
|
+
|
|
90
|
+
abstract var onLoadStart: (() -> Unit)?
|
|
91
|
+
|
|
92
|
+
private var onLoadStart_cxx: Func_void?
|
|
93
|
+
@Keep
|
|
94
|
+
@DoNotStrip
|
|
95
|
+
get() {
|
|
96
|
+
return onLoadStart?.let { Func_void_java(it) }
|
|
97
|
+
}
|
|
98
|
+
@Keep
|
|
99
|
+
@DoNotStrip
|
|
100
|
+
set(value) {
|
|
101
|
+
onLoadStart = value?.let { it }
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
abstract var onLoad: ((width: Double, height: Double, cacheType: OneKeyImageCacheType) -> Unit)?
|
|
105
|
+
|
|
106
|
+
private var onLoad_cxx: Func_void_double_double_OneKeyImageCacheType?
|
|
107
|
+
@Keep
|
|
108
|
+
@DoNotStrip
|
|
109
|
+
get() {
|
|
110
|
+
return onLoad?.let { Func_void_double_double_OneKeyImageCacheType_java(it) }
|
|
111
|
+
}
|
|
112
|
+
@Keep
|
|
113
|
+
@DoNotStrip
|
|
114
|
+
set(value) {
|
|
115
|
+
onLoad = value?.let { it }
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
abstract var onDisplay: (() -> Unit)?
|
|
119
|
+
|
|
120
|
+
private var onDisplay_cxx: Func_void?
|
|
121
|
+
@Keep
|
|
122
|
+
@DoNotStrip
|
|
123
|
+
get() {
|
|
124
|
+
return onDisplay?.let { Func_void_java(it) }
|
|
125
|
+
}
|
|
126
|
+
@Keep
|
|
127
|
+
@DoNotStrip
|
|
128
|
+
set(value) {
|
|
129
|
+
onDisplay = value?.let { it }
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
abstract var onError: ((message: String) -> Unit)?
|
|
133
|
+
|
|
134
|
+
private var onError_cxx: Func_void_std__string?
|
|
135
|
+
@Keep
|
|
136
|
+
@DoNotStrip
|
|
137
|
+
get() {
|
|
138
|
+
return onError?.let { Func_void_std__string_java(it) }
|
|
139
|
+
}
|
|
140
|
+
@Keep
|
|
141
|
+
@DoNotStrip
|
|
142
|
+
set(value) {
|
|
143
|
+
onError = value?.let { it }
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
abstract var onLoadEnd: (() -> Unit)?
|
|
147
|
+
|
|
148
|
+
private var onLoadEnd_cxx: Func_void?
|
|
149
|
+
@Keep
|
|
150
|
+
@DoNotStrip
|
|
151
|
+
get() {
|
|
152
|
+
return onLoadEnd?.let { Func_void_java(it) }
|
|
153
|
+
}
|
|
154
|
+
@Keep
|
|
155
|
+
@DoNotStrip
|
|
156
|
+
set(value) {
|
|
157
|
+
onLoadEnd = value?.let { it }
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
// Methods
|
|
161
|
+
@DoNotStrip
|
|
162
|
+
@Keep
|
|
163
|
+
abstract fun reload(): Unit
|
|
164
|
+
|
|
165
|
+
@DoNotStrip
|
|
166
|
+
@Keep
|
|
167
|
+
abstract fun cancel(): Unit
|
|
168
|
+
|
|
169
|
+
// Default implementation of `HybridObject.toString()`
|
|
170
|
+
override fun toString(): String {
|
|
171
|
+
return "[HybridObject OneKeyImage]"
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
// C++ backing class
|
|
175
|
+
@DoNotStrip
|
|
176
|
+
@Keep
|
|
177
|
+
protected open class CxxPart(javaPart: HybridOneKeyImageSpec): HybridObject.CxxPart(javaPart) {
|
|
178
|
+
// C++ JHybridOneKeyImageSpec::CxxPart::initHybrid(...)
|
|
179
|
+
@FastNative
|
|
180
|
+
external override fun initHybrid(): HybridData
|
|
181
|
+
}
|
|
182
|
+
override fun createCxxPart(): CxxPart {
|
|
183
|
+
return CxxPart(this)
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
companion object {
|
|
187
|
+
protected const val TAG = "HybridOneKeyImageSpec"
|
|
188
|
+
}
|
|
189
|
+
}
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageCachePolicy.kt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// OneKeyImageCachePolicy.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Represents the JavaScript enum/union "OneKeyImageCachePolicy".
|
|
15
|
+
*/
|
|
16
|
+
@DoNotStrip
|
|
17
|
+
@Keep
|
|
18
|
+
enum class OneKeyImageCachePolicy(@DoNotStrip @Keep val value: Int) {
|
|
19
|
+
MEMORY_DISK(0),
|
|
20
|
+
MEMORY(1),
|
|
21
|
+
DISK(2),
|
|
22
|
+
NONE(3);
|
|
23
|
+
|
|
24
|
+
companion object
|
|
25
|
+
}
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageCacheType.kt
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// OneKeyImageCacheType.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Represents the JavaScript enum/union "OneKeyImageCacheType".
|
|
15
|
+
*/
|
|
16
|
+
@DoNotStrip
|
|
17
|
+
@Keep
|
|
18
|
+
enum class OneKeyImageCacheType(@DoNotStrip @Keep val value: Int) {
|
|
19
|
+
NONE(0),
|
|
20
|
+
MEMORY(1),
|
|
21
|
+
DISK(2);
|
|
22
|
+
|
|
23
|
+
companion object
|
|
24
|
+
}
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImageContentFit.kt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// OneKeyImageContentFit.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Represents the JavaScript enum/union "OneKeyImageContentFit".
|
|
15
|
+
*/
|
|
16
|
+
@DoNotStrip
|
|
17
|
+
@Keep
|
|
18
|
+
enum class OneKeyImageContentFit(@DoNotStrip @Keep val value: Int) {
|
|
19
|
+
COVER(0),
|
|
20
|
+
CONTAIN(1),
|
|
21
|
+
FILL(2),
|
|
22
|
+
CENTER(3);
|
|
23
|
+
|
|
24
|
+
companion object
|
|
25
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// OneKeyImageLoadingStrategy.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Represents the JavaScript enum/union "OneKeyImageLoadingStrategy".
|
|
15
|
+
*/
|
|
16
|
+
@DoNotStrip
|
|
17
|
+
@Keep
|
|
18
|
+
enum class OneKeyImageLoadingStrategy(@DoNotStrip @Keep val value: Int) {
|
|
19
|
+
STATIC(0),
|
|
20
|
+
SKELETON(1),
|
|
21
|
+
NONE(2);
|
|
22
|
+
|
|
23
|
+
companion object
|
|
24
|
+
}
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/OneKeyImagePreloadSource.kt
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// OneKeyImagePreloadSource.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
12
|
+
import java.util.Objects
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Represents the JavaScript object/struct "OneKeyImagePreloadSource".
|
|
17
|
+
*/
|
|
18
|
+
@DoNotStrip
|
|
19
|
+
@Keep
|
|
20
|
+
data class OneKeyImagePreloadSource(
|
|
21
|
+
@DoNotStrip
|
|
22
|
+
@Keep
|
|
23
|
+
val uri: String,
|
|
24
|
+
@DoNotStrip
|
|
25
|
+
@Keep
|
|
26
|
+
val headersJson: String?,
|
|
27
|
+
@DoNotStrip
|
|
28
|
+
@Keep
|
|
29
|
+
val cachePolicy: OneKeyImageCachePolicy?,
|
|
30
|
+
@DoNotStrip
|
|
31
|
+
@Keep
|
|
32
|
+
val resizeWidth: Double?,
|
|
33
|
+
@DoNotStrip
|
|
34
|
+
@Keep
|
|
35
|
+
val resizeHeight: Double?,
|
|
36
|
+
@DoNotStrip
|
|
37
|
+
@Keep
|
|
38
|
+
val pixelRatio: Double?,
|
|
39
|
+
@DoNotStrip
|
|
40
|
+
@Keep
|
|
41
|
+
val overscan: Double?,
|
|
42
|
+
@DoNotStrip
|
|
43
|
+
@Keep
|
|
44
|
+
val optimizeTos: Boolean?
|
|
45
|
+
) {
|
|
46
|
+
/* primary constructor */
|
|
47
|
+
|
|
48
|
+
override fun equals(other: Any?): Boolean {
|
|
49
|
+
if (this === other) return true
|
|
50
|
+
if (other !is OneKeyImagePreloadSource) return false
|
|
51
|
+
return Objects.deepEquals(this.uri, other.uri)
|
|
52
|
+
&& Objects.deepEquals(this.headersJson, other.headersJson)
|
|
53
|
+
&& Objects.deepEquals(this.cachePolicy, other.cachePolicy)
|
|
54
|
+
&& Objects.deepEquals(this.resizeWidth, other.resizeWidth)
|
|
55
|
+
&& Objects.deepEquals(this.resizeHeight, other.resizeHeight)
|
|
56
|
+
&& Objects.deepEquals(this.pixelRatio, other.pixelRatio)
|
|
57
|
+
&& Objects.deepEquals(this.overscan, other.overscan)
|
|
58
|
+
&& Objects.deepEquals(this.optimizeTos, other.optimizeTos)
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
override fun hashCode(): Int {
|
|
62
|
+
return arrayOf<Any?>(
|
|
63
|
+
uri,
|
|
64
|
+
headersJson,
|
|
65
|
+
cachePolicy,
|
|
66
|
+
resizeWidth,
|
|
67
|
+
resizeHeight,
|
|
68
|
+
pixelRatio,
|
|
69
|
+
overscan,
|
|
70
|
+
optimizeTos
|
|
71
|
+
).contentDeepHashCode()
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
companion object {
|
|
75
|
+
/**
|
|
76
|
+
* Constructor called from C++
|
|
77
|
+
*/
|
|
78
|
+
@DoNotStrip
|
|
79
|
+
@Keep
|
|
80
|
+
@Suppress("unused")
|
|
81
|
+
@JvmStatic
|
|
82
|
+
private fun fromCpp(uri: String, headersJson: String?, cachePolicy: OneKeyImageCachePolicy?, resizeWidth: Double?, resizeHeight: Double?, pixelRatio: Double?, overscan: Double?, optimizeTos: Boolean?): OneKeyImagePreloadSource {
|
|
83
|
+
return OneKeyImagePreloadSource(uri, headersJson, cachePolicy, resizeWidth, resizeHeight, pixelRatio, overscan, optimizeTos)
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// OneKeyImageVariant.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import androidx.annotation.Keep
|
|
11
|
+
import com.facebook.proguard.annotations.DoNotStrip
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Represents the JavaScript enum/union "OneKeyImageVariant".
|
|
15
|
+
*/
|
|
16
|
+
@DoNotStrip
|
|
17
|
+
@Keep
|
|
18
|
+
enum class OneKeyImageVariant(@DoNotStrip @Keep val value: Int) {
|
|
19
|
+
GENERIC(0),
|
|
20
|
+
TOKEN(1),
|
|
21
|
+
NETWORK(2),
|
|
22
|
+
AVATAR(3);
|
|
23
|
+
|
|
24
|
+
companion object
|
|
25
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// onekeyimageOnLoad.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage
|
|
9
|
+
|
|
10
|
+
import android.util.Log
|
|
11
|
+
|
|
12
|
+
internal class onekeyimageOnLoad {
|
|
13
|
+
companion object {
|
|
14
|
+
private const val TAG = "onekeyimageOnLoad"
|
|
15
|
+
private var didLoad = false
|
|
16
|
+
/**
|
|
17
|
+
* Initializes the native part of "onekeyimage".
|
|
18
|
+
* This method is idempotent and can be called more than once.
|
|
19
|
+
*/
|
|
20
|
+
@JvmStatic
|
|
21
|
+
fun initializeNative() {
|
|
22
|
+
if (didLoad) return
|
|
23
|
+
try {
|
|
24
|
+
Log.i(TAG, "Loading onekeyimage C++ library...")
|
|
25
|
+
System.loadLibrary("onekeyimage")
|
|
26
|
+
Log.i(TAG, "Successfully loaded onekeyimage C++ library!")
|
|
27
|
+
didLoad = true
|
|
28
|
+
} catch (e: Error) {
|
|
29
|
+
Log.e(TAG, "Failed to load onekeyimage C++ library! Is it properly installed and linked? " +
|
|
30
|
+
"Is the name correct? (see `CMakeLists.txt`, at `add_library(...)`)", e)
|
|
31
|
+
throw e
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridOneKeyImageManager.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage.views
|
|
9
|
+
|
|
10
|
+
import android.view.View
|
|
11
|
+
import com.facebook.react.uimanager.ReactStylesDiffMap
|
|
12
|
+
import com.facebook.react.uimanager.SimpleViewManager
|
|
13
|
+
import com.facebook.react.uimanager.StateWrapper
|
|
14
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
15
|
+
import com.margelo.nitro.R.id.associated_hybrid_view_tag
|
|
16
|
+
import com.margelo.nitro.views.RecyclableView
|
|
17
|
+
import com.margelo.nitro.onekeyimage.*
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Represents the React Native `ViewManager` for the "OneKeyImage" Nitro HybridView.
|
|
21
|
+
*/
|
|
22
|
+
public class HybridOneKeyImageManager: SimpleViewManager<View>() {
|
|
23
|
+
/**
|
|
24
|
+
* Represents the View and its last state snapshot (mutable)
|
|
25
|
+
*/
|
|
26
|
+
private class HybridViewHolder(
|
|
27
|
+
val hybridView: HybridOneKeyImage,
|
|
28
|
+
var lastState: StateWrapper? = null,
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
init {
|
|
32
|
+
if (RecyclableView::class.java.isAssignableFrom(HybridOneKeyImage::class.java)) {
|
|
33
|
+
// Enable view recycling
|
|
34
|
+
super.setupViewRecycling()
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
override fun getName(): String {
|
|
39
|
+
return "OneKeyImage"
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
override fun createViewInstance(reactContext: ThemedReactContext): View {
|
|
43
|
+
val hybridView = HybridOneKeyImage(reactContext)
|
|
44
|
+
val view = hybridView.view
|
|
45
|
+
view.setTag(associated_hybrid_view_tag, HybridViewHolder(hybridView))
|
|
46
|
+
return view
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
override fun updateState(view: View, props: ReactStylesDiffMap, stateWrapper: StateWrapper): Any? {
|
|
50
|
+
val holder = getHybridViewHolder(view)
|
|
51
|
+
?: throw Error("Couldn't find view $view in local views table!")
|
|
52
|
+
val hybridView = holder.hybridView
|
|
53
|
+
val oldState = holder.lastState
|
|
54
|
+
val newState = stateWrapper
|
|
55
|
+
|
|
56
|
+
// 1. Update each prop individually
|
|
57
|
+
hybridView.beforeUpdate()
|
|
58
|
+
HybridOneKeyImageStateUpdater.updateViewProps(hybridView, newState, oldState)
|
|
59
|
+
hybridView.afterUpdate()
|
|
60
|
+
holder.lastState = newState
|
|
61
|
+
|
|
62
|
+
// 2. Continue in base View props
|
|
63
|
+
return super.updateState(view, props, newState)
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
override fun onDropViewInstance(view: View) {
|
|
67
|
+
val holder = getHybridViewHolder(view)
|
|
68
|
+
holder?.lastState = null
|
|
69
|
+
holder?.hybridView?.onDropView()
|
|
70
|
+
return super.onDropViewInstance(view)
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
protected override fun prepareToRecycleView(reactContext: ThemedReactContext, view: View): View? {
|
|
74
|
+
val preparedView = super.prepareToRecycleView(reactContext, view)
|
|
75
|
+
?: return null
|
|
76
|
+
val holder = getHybridViewHolder(preparedView)
|
|
77
|
+
?: return null
|
|
78
|
+
val hybridView = holder.hybridView
|
|
79
|
+
holder.lastState = null
|
|
80
|
+
|
|
81
|
+
@Suppress("USELESS_IS_CHECK")
|
|
82
|
+
if (hybridView is RecyclableView) {
|
|
83
|
+
// Recycle in it's implementation
|
|
84
|
+
hybridView.prepareForRecycle()
|
|
85
|
+
|
|
86
|
+
// Maybe update the view if it changed
|
|
87
|
+
return hybridView.view
|
|
88
|
+
} else {
|
|
89
|
+
return null
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
private fun getHybridViewHolder(view: View): HybridViewHolder? {
|
|
94
|
+
return view.getTag(associated_hybrid_view_tag) as? HybridViewHolder
|
|
95
|
+
}
|
|
96
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// HybridOneKeyImageStateUpdater.kt
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
package com.margelo.nitro.onekeyimage.views
|
|
9
|
+
|
|
10
|
+
import com.facebook.react.uimanager.StateWrapper
|
|
11
|
+
import com.margelo.nitro.onekeyimage.*
|
|
12
|
+
|
|
13
|
+
internal class HybridOneKeyImageStateUpdater {
|
|
14
|
+
companion object {
|
|
15
|
+
/**
|
|
16
|
+
* Updates the props for [view] through C++.
|
|
17
|
+
* The [newState] prop is expected to contain [view]'s props as wrapped Fabric state.
|
|
18
|
+
*/
|
|
19
|
+
@Suppress("KotlinJniMissingFunction")
|
|
20
|
+
@JvmStatic
|
|
21
|
+
external fun updateViewProps(view: HybridOneKeyImageSpec, newState: StateWrapper, oldState: StateWrapper?)
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
#
|
|
2
|
+
# onekeyimage+autolinking.cmake
|
|
3
|
+
# This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
# https://github.com/mrousavy/nitro
|
|
5
|
+
# Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
#
|
|
7
|
+
|
|
8
|
+
# This is a CMake file that adds all files generated by Nitrogen
|
|
9
|
+
# to the current CMake project.
|
|
10
|
+
#
|
|
11
|
+
# To use it, add this to your CMakeLists.txt:
|
|
12
|
+
# ```cmake
|
|
13
|
+
# include(${CMAKE_SOURCE_DIR}/../nitrogen/generated/android/onekeyimage+autolinking.cmake)
|
|
14
|
+
# ```
|
|
15
|
+
|
|
16
|
+
# Define a flag to check if we are building properly
|
|
17
|
+
add_definitions(-DBUILDING_ONEKEYIMAGE_WITH_GENERATED_CMAKE_PROJECT)
|
|
18
|
+
|
|
19
|
+
# Enable Raw Props parsing in react-native (for Nitro Views)
|
|
20
|
+
add_definitions(-DRN_SERIALIZABLE_STATE)
|
|
21
|
+
|
|
22
|
+
# Add all headers that were generated by Nitrogen
|
|
23
|
+
include_directories(
|
|
24
|
+
"../nitrogen/generated/shared/c++"
|
|
25
|
+
"../nitrogen/generated/android/c++"
|
|
26
|
+
"../nitrogen/generated/android/"
|
|
27
|
+
)
|
|
28
|
+
|
|
29
|
+
# Add all .cpp sources that were generated by Nitrogen
|
|
30
|
+
target_sources(
|
|
31
|
+
# CMake project name (Android C++ library name)
|
|
32
|
+
onekeyimage PRIVATE
|
|
33
|
+
# Autolinking Setup
|
|
34
|
+
../nitrogen/generated/android/onekeyimageOnLoad.cpp
|
|
35
|
+
# Shared Nitrogen C++ sources
|
|
36
|
+
../nitrogen/generated/shared/c++/HybridOneKeyImageCacheSpec.cpp
|
|
37
|
+
../nitrogen/generated/shared/c++/HybridOneKeyImageSpec.cpp
|
|
38
|
+
../nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.cpp
|
|
39
|
+
# Android-specific Nitrogen C++ sources
|
|
40
|
+
../nitrogen/generated/android/c++/JHybridOneKeyImageCacheSpec.cpp
|
|
41
|
+
../nitrogen/generated/android/c++/JHybridOneKeyImageSpec.cpp
|
|
42
|
+
../nitrogen/generated/android/c++/views/JHybridOneKeyImageStateUpdater.cpp
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
# From node_modules/react-native/ReactAndroid/cmake-utils/folly-flags.cmake
|
|
46
|
+
# Used in node_modules/react-native/ReactAndroid/cmake-utils/ReactNative-application.cmake
|
|
47
|
+
target_compile_definitions(
|
|
48
|
+
onekeyimage PRIVATE
|
|
49
|
+
-DFOLLY_NO_CONFIG=1
|
|
50
|
+
-DFOLLY_HAVE_CLOCK_GETTIME=1
|
|
51
|
+
-DFOLLY_USE_LIBCPP=1
|
|
52
|
+
-DFOLLY_CFG_NO_COROUTINES=1
|
|
53
|
+
-DFOLLY_MOBILE=1
|
|
54
|
+
-DFOLLY_HAVE_RECVMMSG=1
|
|
55
|
+
-DFOLLY_HAVE_PTHREAD=1
|
|
56
|
+
# Once we target android-23 above, we can comment
|
|
57
|
+
# the following line. NDK uses GNU style stderror_r() after API 23.
|
|
58
|
+
-DFOLLY_HAVE_XSI_STRERROR_R=1
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
# Add all libraries required by the generated specs
|
|
62
|
+
find_package(fbjni REQUIRED) # <-- Used for communication between Java <-> C++
|
|
63
|
+
find_package(ReactAndroid REQUIRED) # <-- Used to set up React Native bindings (e.g. CallInvoker/TurboModule)
|
|
64
|
+
find_package(react-native-nitro-modules REQUIRED) # <-- Used to create all HybridObjects and use the Nitro core library
|
|
65
|
+
|
|
66
|
+
# Link all libraries together
|
|
67
|
+
target_link_libraries(
|
|
68
|
+
onekeyimage
|
|
69
|
+
fbjni::fbjni # <-- Facebook C++ JNI helpers
|
|
70
|
+
ReactAndroid::jsi # <-- RN: JSI
|
|
71
|
+
react-native-nitro-modules::NitroModules # <-- NitroModules Core :)
|
|
72
|
+
)
|
|
73
|
+
|
|
74
|
+
# Link react-native (different prefab between RN 0.75 and RN 0.76)
|
|
75
|
+
if(ReactAndroid_VERSION_MINOR GREATER_EQUAL 76)
|
|
76
|
+
target_link_libraries(
|
|
77
|
+
onekeyimage
|
|
78
|
+
ReactAndroid::reactnative # <-- RN: Native Modules umbrella prefab
|
|
79
|
+
)
|
|
80
|
+
else()
|
|
81
|
+
target_link_libraries(
|
|
82
|
+
onekeyimage
|
|
83
|
+
ReactAndroid::react_nativemodule_core # <-- RN: TurboModules Core
|
|
84
|
+
)
|
|
85
|
+
endif()
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// onekeyimage+autolinking.gradle
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
/// This is a Gradle file that adds all files generated by Nitrogen
|
|
9
|
+
/// to the current Gradle project.
|
|
10
|
+
///
|
|
11
|
+
/// To use it, add this to your build.gradle:
|
|
12
|
+
/// ```gradle
|
|
13
|
+
/// apply from: '../nitrogen/generated/android/onekeyimage+autolinking.gradle'
|
|
14
|
+
/// ```
|
|
15
|
+
|
|
16
|
+
logger.warn("[NitroModules] 🔥 onekeyimage is boosted by nitro!")
|
|
17
|
+
|
|
18
|
+
android {
|
|
19
|
+
sourceSets {
|
|
20
|
+
main {
|
|
21
|
+
java.srcDirs += [
|
|
22
|
+
// Nitrogen files
|
|
23
|
+
"${project.projectDir}/../nitrogen/generated/android/kotlin"
|
|
24
|
+
]
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|