@onekeyfe/react-native-image 3.0.155 → 3.0.157

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImage.kt +76 -3
  2. package/android/src/main/java/com/margelo/nitro/onekeyimage/OneKeyImageReusableView.kt +2 -0
  3. package/android/src/test/java/com/margelo/nitro/onekeyimage/OneKeyImageRequestSignatureTest.kt +14 -1
  4. package/ios/OneKeyImage.swift +88 -19
  5. package/ios/OneKeyImageRequestContext.swift +34 -9
  6. package/ios/tests/OneKeyImageInfrastructureTests.swift +123 -19
  7. package/lib/module/index.js +5 -1
  8. package/lib/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.cpp +18 -0
  9. package/lib/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.hpp +4 -0
  10. package/lib/nitrogen/generated/android/c++/views/JHybridOneKeyImageStateUpdater.cpp +10 -0
  11. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/HybridOneKeyImageSpec.kt +12 -0
  12. package/lib/nitrogen/generated/ios/c++/HybridOneKeyImageSpecSwift.hpp +14 -0
  13. package/lib/nitrogen/generated/ios/c++/views/HybridOneKeyImageComponent.mm +12 -0
  14. package/lib/nitrogen/generated/ios/swift/HybridOneKeyImageSpec.swift +2 -0
  15. package/lib/nitrogen/generated/ios/swift/HybridOneKeyImageSpec_cxx.swift +48 -0
  16. package/lib/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.cpp +4 -0
  17. package/lib/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.hpp +4 -0
  18. package/lib/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.cpp +4 -0
  19. package/lib/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.hpp +6 -0
  20. package/lib/nitrogen/generated/shared/json/OneKeyImageConfig.json +2 -0
  21. package/lib/typescript/src/OneKeyImage.nitro.d.ts +8 -0
  22. package/lib/typescript/src/index.d.ts +1 -1
  23. package/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.cpp +18 -0
  24. package/nitrogen/generated/android/c++/JHybridOneKeyImageSpec.hpp +4 -0
  25. package/nitrogen/generated/android/c++/views/JHybridOneKeyImageStateUpdater.cpp +10 -0
  26. package/nitrogen/generated/android/kotlin/com/margelo/nitro/onekeyimage/HybridOneKeyImageSpec.kt +12 -0
  27. package/nitrogen/generated/ios/c++/HybridOneKeyImageSpecSwift.hpp +14 -0
  28. package/nitrogen/generated/ios/c++/views/HybridOneKeyImageComponent.mm +12 -0
  29. package/nitrogen/generated/ios/swift/HybridOneKeyImageSpec.swift +2 -0
  30. package/nitrogen/generated/ios/swift/HybridOneKeyImageSpec_cxx.swift +48 -0
  31. package/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.cpp +4 -0
  32. package/nitrogen/generated/shared/c++/HybridOneKeyImageSpec.hpp +4 -0
  33. package/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.cpp +4 -0
  34. package/nitrogen/generated/shared/c++/views/HybridOneKeyImageComponent.hpp +6 -0
  35. package/nitrogen/generated/shared/json/OneKeyImageConfig.json +2 -0
  36. package/package.json +2 -2
  37. package/src/OneKeyImage.nitro.ts +8 -0
  38. package/src/index.tsx +5 -1
@@ -56,7 +56,9 @@ namespace margelo::nitro::onekeyimage::views {
56
56
  nitro::ReactProp<std::optional<bool>> autoplay;
57
57
  nitro::ReactProp<std::optional<std::string>> recyclingKey;
58
58
  nitro::ReactProp<std::optional<bool>> optimizeTos;
59
+ nitro::ReactProp<std::optional<bool>> round;
59
60
  nitro::ReactProp<std::optional<double>> resizeWidth;
61
+ nitro::ReactProp<std::optional<double>> resizeHeight;
60
62
  nitro::ReactProp<std::optional<double>> overscan;
61
63
  nitro::ReactProp<std::optional<OneKeyImageLoadingStrategy>> loadingStrategy;
62
64
  nitro::ReactProp<std::optional<std::string>> placeholderColor;
@@ -77,7 +79,9 @@ namespace margelo::nitro::onekeyimage::views {
77
79
  autoplay.hasSameValue(other.autoplay) &&
78
80
  recyclingKey.hasSameValue(other.recyclingKey) &&
79
81
  optimizeTos.hasSameValue(other.optimizeTos) &&
82
+ round.hasSameValue(other.round) &&
80
83
  resizeWidth.hasSameValue(other.resizeWidth) &&
84
+ resizeHeight.hasSameValue(other.resizeHeight) &&
81
85
  overscan.hasSameValue(other.overscan) &&
82
86
  loadingStrategy.hasSameValue(other.loadingStrategy) &&
83
87
  placeholderColor.hasSameValue(other.placeholderColor) &&
@@ -99,7 +103,9 @@ namespace margelo::nitro::onekeyimage::views {
99
103
  autoplay.isProvided() ||
100
104
  recyclingKey.isProvided() ||
101
105
  optimizeTos.isProvided() ||
106
+ round.isProvided() ||
102
107
  resizeWidth.isProvided() ||
108
+ resizeHeight.isProvided() ||
103
109
  overscan.isProvided() ||
104
110
  loadingStrategy.isProvided() ||
105
111
  placeholderColor.isProvided() ||
@@ -12,7 +12,9 @@
12
12
  "autoplay": true,
13
13
  "recyclingKey": true,
14
14
  "optimizeTos": true,
15
+ "round": true,
15
16
  "resizeWidth": true,
17
+ "resizeHeight": true,
16
18
  "overscan": true,
17
19
  "loadingStrategy": true,
18
20
  "placeholderColor": true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onekeyfe/react-native-image",
3
- "version": "3.0.155",
3
+ "version": "3.0.157",
4
4
  "description": "High-performance native image view for OneKey",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -81,7 +81,7 @@
81
81
  "typescript": "^5.9.2"
82
82
  },
83
83
  "peerDependencies": {
84
- "@onekeyfe/react-native-skeleton": "3.0.155",
84
+ "@onekeyfe/react-native-skeleton": "3.0.157",
85
85
  "react": "*",
86
86
  "react-native": "*",
87
87
  "react-native-nitro-modules": "0.37.0"
@@ -43,8 +43,16 @@ export interface OneKeyImageNativeProps extends HybridViewProps {
43
43
  autoplay?: boolean;
44
44
  recyclingKey?: string;
45
45
  optimizeTos?: boolean;
46
+ /** Clips the native image to an oval using its current bounds. */
47
+ round?: boolean;
46
48
  /** Display width hint in layout units. Native applies the screen density. */
47
49
  resizeWidth?: number;
50
+ /**
51
+ * Display height hint in layout units. With `resizeWidth` it lets the
52
+ * pre-layout memory-cache probe derive the same decode thumbnail a preload
53
+ * with the same hints stored; omitted, the hint is a square of `resizeWidth`.
54
+ */
55
+ resizeHeight?: number;
48
56
  overscan?: number;
49
57
  loadingStrategy?: OneKeyImageLoadingStrategy;
50
58
  /** Theme-aware color used by static loading, error, and fallback states. */
package/src/index.tsx CHANGED
@@ -153,7 +153,9 @@ export function OneKeyImage({
153
153
  autoplay,
154
154
  recyclingKey,
155
155
  optimizeTos = true,
156
+ round = false,
156
157
  resizeWidth,
158
+ resizeHeight,
157
159
  overscan = 1.1,
158
160
  loadingStrategy = OneKeyImageLoadingStrategy.STATIC,
159
161
  placeholderColor,
@@ -175,7 +177,7 @@ export function OneKeyImage({
175
177
  normalized?.headers ?? {}
176
178
  )}|${resolvedCachePolicy}|${recyclingKey ?? ''}|${contentFit}|${
177
179
  optimizeTos ? '1' : '0'
178
- }|${resizeWidth ?? ''}|${overscan}`;
180
+ }|${resizeWidth ?? ''}|${resizeHeight ?? ''}|${overscan}`;
179
181
  const hasSource = normalized != null;
180
182
  const hasOverlay = placeholder != null || fallback != null;
181
183
  type LoadState = {
@@ -370,7 +372,9 @@ export function OneKeyImage({
370
372
  autoplay: autoplay ?? Platform.OS !== 'android',
371
373
  recyclingKey,
372
374
  optimizeTos,
375
+ round,
373
376
  resizeWidth,
377
+ resizeHeight,
374
378
  overscan,
375
379
  loadingStrategy:
376
380
  placeholder == null ? loadingStrategy : OneKeyImageLoadingStrategy.NONE,