@onekeyfe/react-native-segment-slider 3.0.81 → 3.0.85
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/lib/nitrogen/generated/android/c++/JFunc_void.hpp +3 -3
- package/lib/nitrogen/generated/android/c++/JFunc_void_double.hpp +3 -3
- package/lib/nitrogen/generated/android/c++/JHybridSegmentSliderSpec.cpp +63 -62
- package/lib/nitrogen/generated/android/c++/JHybridSegmentSliderSpec.hpp +20 -22
- package/lib/nitrogen/generated/android/c++/views/JHybridSegmentSliderStateUpdater.cpp +77 -77
- package/lib/nitrogen/generated/android/c++/views/JHybridSegmentSliderStateUpdater.hpp +4 -4
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/Func_void.kt +1 -1
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/Func_void_double.kt +1 -1
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/HybridSegmentSliderSpec.kt +17 -19
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/segmentsliderOnLoad.kt +1 -1
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/views/HybridSegmentSliderManager.kt +40 -10
- package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/views/HybridSegmentSliderStateUpdater.kt +1 -1
- package/lib/nitrogen/generated/android/segmentslider+autolinking.cmake +1 -1
- package/lib/nitrogen/generated/android/segmentslider+autolinking.gradle +1 -1
- package/lib/nitrogen/generated/android/segmentsliderOnLoad.cpp +30 -20
- package/lib/nitrogen/generated/android/segmentsliderOnLoad.hpp +14 -5
- package/lib/nitrogen/generated/ios/SegmentSlider+autolinking.rb +2 -2
- package/lib/nitrogen/generated/ios/SegmentSlider-Swift-Cxx-Bridge.cpp +1 -1
- package/lib/nitrogen/generated/ios/SegmentSlider-Swift-Cxx-Bridge.hpp +3 -3
- package/lib/nitrogen/generated/ios/SegmentSlider-Swift-Cxx-Umbrella.hpp +1 -1
- package/lib/nitrogen/generated/ios/SegmentSliderAutolinking.mm +1 -1
- package/lib/nitrogen/generated/ios/SegmentSliderAutolinking.swift +9 -8
- package/lib/nitrogen/generated/ios/c++/HybridSegmentSliderSpecSwift.cpp +1 -1
- package/lib/nitrogen/generated/ios/c++/HybridSegmentSliderSpecSwift.hpp +7 -1
- package/lib/nitrogen/generated/ios/c++/views/HybridSegmentSliderComponent.mm +27 -1
- package/lib/nitrogen/generated/ios/swift/Func_void.swift +1 -2
- package/lib/nitrogen/generated/ios/swift/Func_void_double.swift +1 -2
- package/lib/nitrogen/generated/ios/swift/HybridSegmentSliderSpec.swift +3 -4
- package/lib/nitrogen/generated/ios/swift/HybridSegmentSliderSpec_cxx.swift +18 -2
- package/lib/nitrogen/generated/shared/c++/HybridSegmentSliderSpec.cpp +1 -1
- package/lib/nitrogen/generated/shared/c++/HybridSegmentSliderSpec.hpp +1 -1
- package/lib/nitrogen/generated/shared/c++/views/HybridSegmentSliderComponent.cpp +10 -34
- package/lib/nitrogen/generated/shared/c++/views/HybridSegmentSliderComponent.hpp +9 -6
- package/nitrogen/generated/android/c++/JFunc_void.hpp +3 -3
- package/nitrogen/generated/android/c++/JFunc_void_double.hpp +3 -3
- package/nitrogen/generated/android/c++/JHybridSegmentSliderSpec.cpp +63 -62
- package/nitrogen/generated/android/c++/JHybridSegmentSliderSpec.hpp +20 -22
- package/nitrogen/generated/android/c++/views/JHybridSegmentSliderStateUpdater.cpp +77 -77
- package/nitrogen/generated/android/c++/views/JHybridSegmentSliderStateUpdater.hpp +4 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/Func_void.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/Func_void_double.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/HybridSegmentSliderSpec.kt +17 -19
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/segmentsliderOnLoad.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/views/HybridSegmentSliderManager.kt +40 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/segmentslider/views/HybridSegmentSliderStateUpdater.kt +1 -1
- package/nitrogen/generated/android/segmentslider+autolinking.cmake +1 -1
- package/nitrogen/generated/android/segmentslider+autolinking.gradle +1 -1
- package/nitrogen/generated/android/segmentsliderOnLoad.cpp +30 -20
- package/nitrogen/generated/android/segmentsliderOnLoad.hpp +14 -5
- package/nitrogen/generated/ios/SegmentSlider+autolinking.rb +2 -2
- package/nitrogen/generated/ios/SegmentSlider-Swift-Cxx-Bridge.cpp +1 -1
- package/nitrogen/generated/ios/SegmentSlider-Swift-Cxx-Bridge.hpp +3 -3
- package/nitrogen/generated/ios/SegmentSlider-Swift-Cxx-Umbrella.hpp +1 -1
- package/nitrogen/generated/ios/SegmentSliderAutolinking.mm +1 -1
- package/nitrogen/generated/ios/SegmentSliderAutolinking.swift +9 -8
- package/nitrogen/generated/ios/c++/HybridSegmentSliderSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridSegmentSliderSpecSwift.hpp +7 -1
- package/nitrogen/generated/ios/c++/views/HybridSegmentSliderComponent.mm +27 -1
- package/nitrogen/generated/ios/swift/Func_void.swift +1 -2
- package/nitrogen/generated/ios/swift/Func_void_double.swift +1 -2
- package/nitrogen/generated/ios/swift/HybridSegmentSliderSpec.swift +3 -4
- package/nitrogen/generated/ios/swift/HybridSegmentSliderSpec_cxx.swift +18 -2
- package/nitrogen/generated/shared/c++/HybridSegmentSliderSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridSegmentSliderSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/views/HybridSegmentSliderComponent.cpp +10 -34
- package/nitrogen/generated/shared/c++/views/HybridSegmentSliderComponent.hpp +9 -6
- package/package.json +4 -4
|
@@ -2,19 +2,16 @@
|
|
|
2
2
|
/// SegmentSliderAutolinking.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
|
+
import NitroModules
|
|
9
|
+
|
|
10
|
+
// TODO: Use empty enums once Swift supports exporting them as namespaces
|
|
11
|
+
// See: https://github.com/swiftlang/swift/pull/83616
|
|
8
12
|
public final class SegmentSliderAutolinking {
|
|
9
13
|
public typealias bridge = margelo.nitro.segmentslider.bridge.swift
|
|
10
14
|
|
|
11
|
-
/**
|
|
12
|
-
* Creates an instance of a Swift class that implements `HybridSegmentSliderSpec`,
|
|
13
|
-
* and wraps it in a Swift class that can directly interop with C++ (`HybridSegmentSliderSpec_cxx`)
|
|
14
|
-
*
|
|
15
|
-
* This is generated by Nitrogen and will initialize the class specified
|
|
16
|
-
* in the `"autolinking"` property of `nitro.json` (in this case, `HybridSegmentSlider`).
|
|
17
|
-
*/
|
|
18
15
|
public static func createSegmentSlider() -> bridge.std__shared_ptr_HybridSegmentSliderSpec_ {
|
|
19
16
|
let hybridObject = HybridSegmentSlider()
|
|
20
17
|
return { () -> bridge.std__shared_ptr_HybridSegmentSliderSpec_ in
|
|
@@ -22,4 +19,8 @@ public final class SegmentSliderAutolinking {
|
|
|
22
19
|
return __cxxWrapped.getCxxPart()
|
|
23
20
|
}()
|
|
24
21
|
}
|
|
22
|
+
|
|
23
|
+
public static func isSegmentSliderRecyclable() -> Bool {
|
|
24
|
+
return HybridSegmentSlider.self is any RecyclableView.Type
|
|
25
|
+
}
|
|
25
26
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridSegmentSliderSpecSwift.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridSegmentSliderSpecSwift.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridSegmentSliderSpecSwift.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -49,6 +49,12 @@ namespace margelo::nitro::segmentslider {
|
|
|
49
49
|
inline size_t getExternalMemorySize() noexcept override {
|
|
50
50
|
return _swiftPart.getMemorySize();
|
|
51
51
|
}
|
|
52
|
+
bool equals(const std::shared_ptr<HybridObject>& other) override {
|
|
53
|
+
if (auto otherCast = std::dynamic_pointer_cast<HybridSegmentSliderSpecSwift>(other)) {
|
|
54
|
+
return _swiftPart.equals(otherCast->_swiftPart);
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
52
58
|
void dispose() noexcept override {
|
|
53
59
|
_swiftPart.dispose();
|
|
54
60
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridSegmentSliderComponent.mm
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#import "HybridSegmentSliderComponent.hpp"
|
|
@@ -17,6 +17,13 @@
|
|
|
17
17
|
#import "HybridSegmentSliderSpecSwift.hpp"
|
|
18
18
|
#import "SegmentSlider-Swift-Cxx-Umbrella.hpp"
|
|
19
19
|
|
|
20
|
+
#if __has_include(<cxxreact/ReactNativeVersion.h>)
|
|
21
|
+
#include <cxxreact/ReactNativeVersion.h>
|
|
22
|
+
#if REACT_NATIVE_VERSION_MINOR >= 82
|
|
23
|
+
#define ENABLE_RCT_COMPONENT_VIEW_INVALIDATE
|
|
24
|
+
#endif
|
|
25
|
+
#endif
|
|
26
|
+
|
|
20
27
|
using namespace facebook;
|
|
21
28
|
using namespace margelo::nitro::segmentslider;
|
|
22
29
|
using namespace margelo::nitro::segmentslider::views;
|
|
@@ -25,6 +32,7 @@ using namespace margelo::nitro::segmentslider::views;
|
|
|
25
32
|
* Represents the React Native View holder for the Nitro "SegmentSlider" HybridView.
|
|
26
33
|
*/
|
|
27
34
|
@interface HybridSegmentSliderComponent: RCTViewComponentView
|
|
35
|
+
+ (BOOL)shouldBeRecycled;
|
|
28
36
|
@end
|
|
29
37
|
|
|
30
38
|
@implementation HybridSegmentSliderComponent {
|
|
@@ -193,4 +201,22 @@ using namespace margelo::nitro::segmentslider::views;
|
|
|
193
201
|
[super updateProps:props oldProps:oldProps];
|
|
194
202
|
}
|
|
195
203
|
|
|
204
|
+
+ (BOOL)shouldBeRecycled {
|
|
205
|
+
return SegmentSlider::SegmentSliderAutolinking::isSegmentSliderRecyclable();
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
- (void)prepareForRecycle {
|
|
209
|
+
[super prepareForRecycle];
|
|
210
|
+
SegmentSlider::HybridSegmentSliderSpec_cxx& swiftPart = _hybridView->getSwiftPart();
|
|
211
|
+
swiftPart.maybePrepareForRecycle();
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
#ifdef ENABLE_RCT_COMPONENT_VIEW_INVALIDATE
|
|
215
|
+
- (void)invalidate {
|
|
216
|
+
SegmentSlider::HybridSegmentSliderSpec_cxx& swiftPart = _hybridView->getSwiftPart();
|
|
217
|
+
swiftPart.onDropView();
|
|
218
|
+
[super invalidate];
|
|
219
|
+
}
|
|
220
|
+
#endif
|
|
221
|
+
|
|
196
222
|
@end
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
/// Func_void.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
|
-
import Foundation
|
|
9
8
|
import NitroModules
|
|
10
9
|
|
|
11
10
|
/**
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
/// Func_void_double.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
|
-
import Foundation
|
|
9
8
|
import NitroModules
|
|
10
9
|
|
|
11
10
|
/**
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
/// HybridSegmentSliderSpec.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
|
-
import Foundation
|
|
9
8
|
import NitroModules
|
|
10
9
|
|
|
11
10
|
/// See ``HybridSegmentSliderSpec``
|
|
@@ -50,14 +49,14 @@ open class HybridSegmentSliderSpec_base {
|
|
|
50
49
|
public init() { }
|
|
51
50
|
public func getCxxWrapper() -> HybridSegmentSliderSpec_cxx {
|
|
52
51
|
#if DEBUG
|
|
53
|
-
guard self is HybridSegmentSliderSpec else {
|
|
52
|
+
guard self is any HybridSegmentSliderSpec else {
|
|
54
53
|
fatalError("`self` is not a `HybridSegmentSliderSpec`! Did you accidentally inherit from `HybridSegmentSliderSpec_base` instead of `HybridSegmentSliderSpec`?")
|
|
55
54
|
}
|
|
56
55
|
#endif
|
|
57
56
|
if let cxxWrapper = self.cxxWrapper {
|
|
58
57
|
return cxxWrapper
|
|
59
58
|
} else {
|
|
60
|
-
let cxxWrapper = HybridSegmentSliderSpec_cxx(self as! HybridSegmentSliderSpec)
|
|
59
|
+
let cxxWrapper = HybridSegmentSliderSpec_cxx(self as! any HybridSegmentSliderSpec)
|
|
61
60
|
self.cxxWrapper = cxxWrapper
|
|
62
61
|
return cxxWrapper
|
|
63
62
|
}
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
/// HybridSegmentSliderSpec_cxx.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
|
-
import Foundation
|
|
9
8
|
import NitroModules
|
|
10
9
|
|
|
11
10
|
/**
|
|
@@ -96,6 +95,14 @@ open class HybridSegmentSliderSpec_cxx {
|
|
|
96
95
|
return MemoryHelper.getSizeOf(self.__implementation) + self.__implementation.memorySize
|
|
97
96
|
}
|
|
98
97
|
|
|
98
|
+
/**
|
|
99
|
+
* Compares this object with the given [other] object for reference equality.
|
|
100
|
+
*/
|
|
101
|
+
@inline(__always)
|
|
102
|
+
public func equals(other: HybridSegmentSliderSpec_cxx) -> Bool {
|
|
103
|
+
return self.__implementation === other.__implementation
|
|
104
|
+
}
|
|
105
|
+
|
|
99
106
|
/**
|
|
100
107
|
* Call dispose() on the Swift class.
|
|
101
108
|
* This _may_ be called manually from JS.
|
|
@@ -431,4 +438,13 @@ open class HybridSegmentSliderSpec_cxx {
|
|
|
431
438
|
public final func afterUpdate() {
|
|
432
439
|
__implementation.afterUpdate()
|
|
433
440
|
}
|
|
441
|
+
|
|
442
|
+
public final func maybePrepareForRecycle() {
|
|
443
|
+
guard let recyclable = __implementation as? any RecyclableView else { return }
|
|
444
|
+
recyclable.prepareForRecycle()
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
public final func onDropView() {
|
|
448
|
+
__implementation.onDropView()
|
|
449
|
+
}
|
|
434
450
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridSegmentSliderSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridSegmentSliderSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridSegmentSliderComponent.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridSegmentSliderComponent.hpp"
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
#include <utility>
|
|
13
13
|
#include <NitroModules/NitroDefines.hpp>
|
|
14
14
|
#include <NitroModules/JSIConverter.hpp>
|
|
15
|
+
#include <NitroModules/PropNameIDCache.hpp>
|
|
15
16
|
#include <react/renderer/core/RawValue.h>
|
|
16
17
|
#include <react/renderer/core/ShadowNode.h>
|
|
17
18
|
#include <react/renderer/core/ComponentDescriptor.h>
|
|
@@ -210,7 +211,7 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
210
211
|
const react::RawValue* rawValue = rawProps.at("onChange", nullptr, nullptr);
|
|
211
212
|
if (rawValue == nullptr) return sourceProps.onChange;
|
|
212
213
|
const auto& [runtime, value] = (std::pair<jsi::Runtime*, jsi::Value>)*rawValue;
|
|
213
|
-
return CachedProp<std::optional<std::function<void(double /* value */)>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, "f"), sourceProps.onChange);
|
|
214
|
+
return CachedProp<std::optional<std::function<void(double /* value */)>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, PropNameIDCache::get(*runtime, "f")), sourceProps.onChange);
|
|
214
215
|
} catch (const std::exception& exc) {
|
|
215
216
|
throw std::runtime_error(std::string("SegmentSlider.onChange: ") + exc.what());
|
|
216
217
|
}
|
|
@@ -220,7 +221,7 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
220
221
|
const react::RawValue* rawValue = rawProps.at("onSlideStart", nullptr, nullptr);
|
|
221
222
|
if (rawValue == nullptr) return sourceProps.onSlideStart;
|
|
222
223
|
const auto& [runtime, value] = (std::pair<jsi::Runtime*, jsi::Value>)*rawValue;
|
|
223
|
-
return CachedProp<std::optional<std::function<void()>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, "f"), sourceProps.onSlideStart);
|
|
224
|
+
return CachedProp<std::optional<std::function<void()>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, PropNameIDCache::get(*runtime, "f")), sourceProps.onSlideStart);
|
|
224
225
|
} catch (const std::exception& exc) {
|
|
225
226
|
throw std::runtime_error(std::string("SegmentSlider.onSlideStart: ") + exc.what());
|
|
226
227
|
}
|
|
@@ -230,7 +231,7 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
230
231
|
const react::RawValue* rawValue = rawProps.at("onSlideComplete", nullptr, nullptr);
|
|
231
232
|
if (rawValue == nullptr) return sourceProps.onSlideComplete;
|
|
232
233
|
const auto& [runtime, value] = (std::pair<jsi::Runtime*, jsi::Value>)*rawValue;
|
|
233
|
-
return CachedProp<std::optional<std::function<void()>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, "f"), sourceProps.onSlideComplete);
|
|
234
|
+
return CachedProp<std::optional<std::function<void()>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, PropNameIDCache::get(*runtime, "f")), sourceProps.onSlideComplete);
|
|
234
235
|
} catch (const std::exception& exc) {
|
|
235
236
|
throw std::runtime_error(std::string("SegmentSlider.onSlideComplete: ") + exc.what());
|
|
236
237
|
}
|
|
@@ -240,37 +241,12 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
240
241
|
const react::RawValue* rawValue = rawProps.at("hybridRef", nullptr, nullptr);
|
|
241
242
|
if (rawValue == nullptr) return sourceProps.hybridRef;
|
|
242
243
|
const auto& [runtime, value] = (std::pair<jsi::Runtime*, jsi::Value>)*rawValue;
|
|
243
|
-
return CachedProp<std::optional<std::function<void(const std::shared_ptr<HybridSegmentSliderSpec>& /* ref */)>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, "f"), sourceProps.hybridRef);
|
|
244
|
+
return CachedProp<std::optional<std::function<void(const std::shared_ptr<HybridSegmentSliderSpec>& /* ref */)>>>::fromRawValue(*runtime, value.asObject(*runtime).getProperty(*runtime, PropNameIDCache::get(*runtime, "f")), sourceProps.hybridRef);
|
|
244
245
|
} catch (const std::exception& exc) {
|
|
245
246
|
throw std::runtime_error(std::string("SegmentSlider.hybridRef: ") + exc.what());
|
|
246
247
|
}
|
|
247
248
|
}()) { }
|
|
248
249
|
|
|
249
|
-
HybridSegmentSliderProps::HybridSegmentSliderProps(const HybridSegmentSliderProps& other):
|
|
250
|
-
react::ViewProps(),
|
|
251
|
-
defaultValue(other.defaultValue),
|
|
252
|
-
min(other.min),
|
|
253
|
-
max(other.max),
|
|
254
|
-
segments(other.segments),
|
|
255
|
-
sliderHeight(other.sliderHeight),
|
|
256
|
-
disabled(other.disabled),
|
|
257
|
-
showBubble(other.showBubble),
|
|
258
|
-
centerOrigin(other.centerOrigin),
|
|
259
|
-
snapTapToSegment(other.snapTapToSegment),
|
|
260
|
-
fillColor(other.fillColor),
|
|
261
|
-
trackColor(other.trackColor),
|
|
262
|
-
thumbColor(other.thumbColor),
|
|
263
|
-
thumbBorderColor(other.thumbBorderColor),
|
|
264
|
-
markActiveColor(other.markActiveColor),
|
|
265
|
-
markInactiveColor(other.markInactiveColor),
|
|
266
|
-
markBorderColor(other.markBorderColor),
|
|
267
|
-
bubbleColor(other.bubbleColor),
|
|
268
|
-
bubbleTextColor(other.bubbleTextColor),
|
|
269
|
-
onChange(other.onChange),
|
|
270
|
-
onSlideStart(other.onSlideStart),
|
|
271
|
-
onSlideComplete(other.onSlideComplete),
|
|
272
|
-
hybridRef(other.hybridRef) { }
|
|
273
|
-
|
|
274
250
|
bool HybridSegmentSliderProps::filterObjectKeys(const std::string& propName) {
|
|
275
251
|
switch (hashString(propName)) {
|
|
276
252
|
case hashString("defaultValue"): return true;
|
|
@@ -316,10 +292,10 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
316
292
|
void HybridSegmentSliderComponentDescriptor::adopt(react::ShadowNode& shadowNode) const {
|
|
317
293
|
// This is called immediately after `ShadowNode` is created, cloned or in progress.
|
|
318
294
|
// On Android, we need to wrap props in our state, which gets routed through Java and later unwrapped in JNI/C++.
|
|
319
|
-
auto& concreteShadowNode =
|
|
320
|
-
const HybridSegmentSliderProps
|
|
321
|
-
|
|
322
|
-
state
|
|
295
|
+
auto& concreteShadowNode = static_cast<HybridSegmentSliderShadowNode&>(shadowNode);
|
|
296
|
+
const std::shared_ptr<const HybridSegmentSliderProps>& constProps = concreteShadowNode.getConcreteSharedProps();
|
|
297
|
+
const std::shared_ptr<HybridSegmentSliderProps>& props = std::const_pointer_cast<HybridSegmentSliderProps>(constProps);
|
|
298
|
+
HybridSegmentSliderState state{props};
|
|
323
299
|
concreteShadowNode.setStateData(std::move(state));
|
|
324
300
|
}
|
|
325
301
|
#endif
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridSegmentSliderComponent.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -37,7 +37,6 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
37
37
|
class HybridSegmentSliderProps final: public react::ViewProps {
|
|
38
38
|
public:
|
|
39
39
|
HybridSegmentSliderProps() = default;
|
|
40
|
-
HybridSegmentSliderProps(const HybridSegmentSliderProps&);
|
|
41
40
|
HybridSegmentSliderProps(const react::PropsParserContext& context,
|
|
42
41
|
const HybridSegmentSliderProps& sourceProps,
|
|
43
42
|
const react::RawProps& rawProps);
|
|
@@ -76,10 +75,14 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
76
75
|
class HybridSegmentSliderState final {
|
|
77
76
|
public:
|
|
78
77
|
HybridSegmentSliderState() = default;
|
|
78
|
+
explicit HybridSegmentSliderState(const std::shared_ptr<HybridSegmentSliderProps>& props):
|
|
79
|
+
_props(props) {}
|
|
79
80
|
|
|
80
81
|
public:
|
|
81
|
-
|
|
82
|
-
const std::
|
|
82
|
+
[[nodiscard]]
|
|
83
|
+
const std::shared_ptr<HybridSegmentSliderProps>& getProps() const {
|
|
84
|
+
return _props;
|
|
85
|
+
}
|
|
83
86
|
|
|
84
87
|
public:
|
|
85
88
|
#ifdef ANDROID
|
|
@@ -93,7 +96,7 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
93
96
|
#endif
|
|
94
97
|
|
|
95
98
|
private:
|
|
96
|
-
std::
|
|
99
|
+
std::shared_ptr<HybridSegmentSliderProps> _props;
|
|
97
100
|
};
|
|
98
101
|
|
|
99
102
|
/**
|
|
@@ -109,7 +112,7 @@ namespace margelo::nitro::segmentslider::views {
|
|
|
109
112
|
*/
|
|
110
113
|
class HybridSegmentSliderComponentDescriptor final: public react::ConcreteComponentDescriptor<HybridSegmentSliderShadowNode> {
|
|
111
114
|
public:
|
|
112
|
-
HybridSegmentSliderComponentDescriptor(const react::ComponentDescriptorParameters& parameters);
|
|
115
|
+
explicit HybridSegmentSliderComponentDescriptor(const react::ComponentDescriptorParameters& parameters);
|
|
113
116
|
|
|
114
117
|
public:
|
|
115
118
|
/**
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JFunc_void.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -23,7 +23,7 @@ namespace margelo::nitro::segmentslider {
|
|
|
23
23
|
*/
|
|
24
24
|
struct JFunc_void: public jni::JavaClass<JFunc_void> {
|
|
25
25
|
public:
|
|
26
|
-
static auto
|
|
26
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/segmentslider/Func_void;";
|
|
27
27
|
|
|
28
28
|
public:
|
|
29
29
|
/**
|
|
@@ -59,7 +59,7 @@ namespace margelo::nitro::segmentslider {
|
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
public:
|
|
62
|
-
static auto
|
|
62
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/segmentslider/Func_void_cxx;";
|
|
63
63
|
static void registerNatives() {
|
|
64
64
|
registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_cxx::invoke_cxx)});
|
|
65
65
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JFunc_void_double.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -23,7 +23,7 @@ namespace margelo::nitro::segmentslider {
|
|
|
23
23
|
*/
|
|
24
24
|
struct JFunc_void_double: public jni::JavaClass<JFunc_void_double> {
|
|
25
25
|
public:
|
|
26
|
-
static auto
|
|
26
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/segmentslider/Func_void_double;";
|
|
27
27
|
|
|
28
28
|
public:
|
|
29
29
|
/**
|
|
@@ -59,7 +59,7 @@ namespace margelo::nitro::segmentslider {
|
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
public:
|
|
62
|
-
static auto
|
|
62
|
+
static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/segmentslider/Func_void_double_cxx;";
|
|
63
63
|
static void registerNatives() {
|
|
64
64
|
registerHybrid({makeNativeMethod("invoke_cxx", JFunc_void_double_cxx::invoke_cxx)});
|
|
65
65
|
}
|