react-native-nitro-modules 0.26.3 → 0.26.4

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.
@@ -1,4 +1,5 @@
1
1
  require "json"
2
+ require "./nitro_pod_utils"
2
3
 
3
4
  package = JSON.parse(File.read(File.join(__dir__, "package.json")))
4
5
 
@@ -47,25 +48,33 @@ Pod::Spec.new do |s|
47
48
  "cpp/views/CachedProp.hpp",
48
49
  # Public iOS-specific headers that will be exposed in modulemap (for Swift)
49
50
  "ios/core/ArrayBufferHolder.hpp",
50
- "ios/core/AnyMapHolder.hpp",
51
51
  "ios/core/PromiseHolder.hpp",
52
+ "ios/utils/AnyMapUtils.hpp",
52
53
  "ios/utils/Result.hpp",
53
54
  "ios/utils/DateToChronoDate.hpp",
54
55
  "ios/utils/RuntimeError.hpp",
55
56
  "ios/utils/SwiftClosure.hpp",
56
57
  ]
57
58
 
58
- s.pod_target_xcconfig = {
59
+ xcconfig = {
59
60
  # Use C++ 20
60
61
  "CLANG_CXX_LANGUAGE_STANDARD" => "c++20",
61
62
  # Enables C++ <-> Swift interop (by default it's only C)
62
63
  "SWIFT_OBJC_INTEROP_MODE" => "objcxx",
63
64
  # Enables stricter modular headers
64
65
  "DEFINES_MODULE" => "YES",
65
- # C++ compiler flags, mainly for RN version and folly.
66
- "GCC_PREPROCESSOR_DEFINITIONS" => "$(inherited) FOLLY_NO_CONFIG FOLLY_CFG_NO_COROUTINES"
67
66
  }
68
67
 
68
+ if has_react_native()
69
+ react_native_version = get_react_native_version()
70
+ if (react_native_version < 80)
71
+ # C++ compiler flags, for folly when building as static framework:
72
+ xcconfig["GCC_PREPROCESSOR_DEFINITIONS"] = "$(inherited) FOLLY_NO_CONFIG FOLLY_CFG_NO_COROUTINES"
73
+ end
74
+ end
75
+
76
+ s.pod_target_xcconfig = xcconfig
77
+
69
78
  # Nitro depends on JSI.
70
79
  s.dependency 'React-jsi'
71
80
  # For React Native, we implement nitro::Dispatcher using react::CallInvoker
package/README.md CHANGED
@@ -202,13 +202,13 @@ The following C++ / JS types are supported out of the box:
202
202
  <tr>
203
203
  <td><code>{ ... }</code></td>
204
204
  <td><code>std::shared_ptr&lt;<a href="./cpp/core/AnyMap.hpp">AnyMap</a>&gt;</code></td>
205
- <td><code><a href="./ios/core/AnyMapHolder.swift">AnyMapHolder</a></code></td>
205
+ <td><code><a href="./ios/core/AnyMap.swift">AnyMap</a></code></td>
206
206
  <td><code><a href="./android/src/main/java/com/margelo/nitro/core/AnyMap.kt">AnyMap</a></code></td>
207
207
  </tr>
208
208
  <tr>
209
209
  <td><code>ArrayBuffer</code></td>
210
210
  <td><code>std::shared_ptr&lt;<a href="./cpp/core/ArrayBuffer.hpp">ArrayBuffer</a>&gt;</code></td>
211
- <td><code><a href="./ios/core/ArrayBufferHolder.swift">ArrayBufferHolder</a></code></td>
211
+ <td><code><a href="./ios/core/ArrayBuffer.swift">ArrayBuffer</a></code></td>
212
212
  <td><code><a href="./android/src/main/java/com/margelo/nitro/core/ArrayBuffer.kt">ArrayBuffer</a></code></td>
213
213
  </tr>
214
214
  <tr>
@@ -7,7 +7,7 @@ buildscript {
7
7
  }
8
8
 
9
9
  dependencies {
10
- classpath "com.android.tools.build:gradle:8.11.0"
10
+ classpath "com.android.tools.build:gradle:8.11.1"
11
11
  }
12
12
  }
13
13
 
@@ -1,4 +1,4 @@
1
- Nitro_kotlinVersion=2.0.21
1
+ Nitro_kotlinVersion=2.1.20
2
2
  Nitro_minSdkVersion=23
3
3
  Nitro_targetSdkVersion=35
4
4
  Nitro_compileSdkVersion=34
@@ -48,8 +48,8 @@ public:
48
48
  /**
49
49
  * Create a new `JArrayBuffer` that wraps the given `HardwareBuffer` from Java.
50
50
  */
51
- static jni::local_ref<JArrayBuffer::jhybriddata> initHybridHardwareBuffer(jni::alias_ref<jhybridobject>,
52
- jni::alias_ref<jni::JObject> boxedHardwareBuffer) {
51
+ static jni::local_ref<JArrayBuffer::jhybriddata>
52
+ initHybridHardwareBuffer(jni::alias_ref<jhybridobject>, [[maybe_unused]] jni::alias_ref<jni::JObject> boxedHardwareBuffer) {
53
53
  #if __ANDROID_API__ >= 26
54
54
  // Cast jobject* to AHardwareBuffer*. It has a retain count of 0 which will be retained in `HardwareBufferArrayBuffer(..)`.
55
55
  AHardwareBuffer* hardwareBuffer = AHardwareBuffer_fromHardwareBuffer(jni::Environment::current(), boxedHardwareBuffer.get());
@@ -11,7 +11,7 @@
11
11
 
12
12
  namespace margelo::nitro {
13
13
 
14
- size_t JHardwareBufferUtils::getHardwareBufferSize(AHardwareBuffer* hardwareBuffer) {
14
+ size_t JHardwareBufferUtils::getHardwareBufferSize([[maybe_unused]] AHardwareBuffer* hardwareBuffer) {
15
15
  #if __ANDROID_API__ >= 26
16
16
  AHardwareBuffer_Desc description;
17
17
  AHardwareBuffer_describe(hardwareBuffer, &description);
@@ -22,8 +22,9 @@ size_t JHardwareBufferUtils::getHardwareBufferSize(AHardwareBuffer* hardwareBuff
22
22
  #endif
23
23
  }
24
24
 
25
- jni::local_ref<jni::JObject> JHardwareBufferUtils::copyHardwareBufferBoxedNew(jni::alias_ref<jni::JClass>,
26
- jni::alias_ref<jni::JObject> boxedHardwareBuffer) {
25
+ jni::local_ref<jni::JObject>
26
+ JHardwareBufferUtils::copyHardwareBufferBoxedNew(jni::alias_ref<jni::JClass>,
27
+ [[maybe_unused]] jni::alias_ref<jni::JObject> boxedHardwareBuffer) {
27
28
  #if __ANDROID_API__ >= 26
28
29
  // 1. Unbox HardwareBuffer from jobject
29
30
  AHardwareBuffer* sourceHardwareBuffer = AHardwareBuffer_fromHardwareBuffer(jni::Environment::current(), boxedHardwareBuffer.get());
@@ -43,8 +44,9 @@ jni::local_ref<jni::JObject> JHardwareBufferUtils::copyHardwareBufferBoxedNew(jn
43
44
  #endif
44
45
  }
45
46
 
46
- void JHardwareBufferUtils::copyHardwareBufferBoxed(jni::alias_ref<jni::JClass>, jni::alias_ref<jni::JObject> boxedSourceHardwareBuffer,
47
- jni::alias_ref<jni::JObject> boxedDestinationHardwareBuffer) {
47
+ void JHardwareBufferUtils::copyHardwareBufferBoxed(jni::alias_ref<jni::JClass>,
48
+ [[maybe_unused]] jni::alias_ref<jni::JObject> boxedSourceHardwareBuffer,
49
+ [[maybe_unused]] jni::alias_ref<jni::JObject> boxedDestinationHardwareBuffer) {
48
50
  #if __ANDROID_API__ >= 26
49
51
  // 1. Unbox HardwareBuffer from jobject
50
52
  AHardwareBuffer* sourceHardwareBuffer = AHardwareBuffer_fromHardwareBuffer(jni::Environment::current(), boxedSourceHardwareBuffer.get());
@@ -57,7 +59,8 @@ void JHardwareBufferUtils::copyHardwareBufferBoxed(jni::alias_ref<jni::JClass>,
57
59
  #endif
58
60
  }
59
61
 
60
- void JHardwareBufferUtils::copyHardwareBuffer(AHardwareBuffer* sourceHardwareBuffer, AHardwareBuffer* destinationHardwareBuffer) {
62
+ void JHardwareBufferUtils::copyHardwareBuffer([[maybe_unused]] AHardwareBuffer* sourceHardwareBuffer,
63
+ [[maybe_unused]] AHardwareBuffer* destinationHardwareBuffer) {
61
64
  #if __ANDROID_API__ >= 26
62
65
  // 1. Get info about source buffer
63
66
  size_t sourceSize = getHardwareBufferSize(sourceHardwareBuffer);
@@ -92,4 +95,4 @@ void JHardwareBufferUtils::copyHardwareBuffer(AHardwareBuffer* sourceHardwareBuf
92
95
  #endif
93
96
  }
94
97
 
95
- } // namespace margelo::nitro
98
+ } // namespace margelo::nitro
@@ -1,5 +1,7 @@
1
1
  package com.margelo.nitro.utils
2
2
 
3
+ import androidx.annotation.Keep
4
+ import com.facebook.proguard.annotations.DoNotStrip
3
5
  import android.hardware.HardwareBuffer
4
6
  import android.os.Build
5
7
  import androidx.annotation.RequiresApi
@@ -11,6 +13,8 @@ import androidx.annotation.RequiresApi
11
13
  typealias BoxedHardwareBuffer = Any
12
14
 
13
15
  @Suppress("KotlinJniMissingFunction")
16
+ @Keep
17
+ @DoNotStrip
14
18
  class HardwareBufferUtils {
15
19
  companion object {
16
20
  @JvmStatic
@@ -138,6 +138,11 @@ public:
138
138
  */
139
139
  bool isOwner() const noexcept override;
140
140
 
141
+ public:
142
+ BorrowingReference<jsi::ArrayBuffer> getJSReference() const noexcept {
143
+ return _jsReference;
144
+ }
145
+
141
146
  private:
142
147
  jsi::Runtime& _runtime;
143
148
  BorrowingReference<jsi::ArrayBuffer> _jsReference;
@@ -109,17 +109,6 @@ public:
109
109
  std::string funcName = getHybridFuncFullName<THybrid>(kind, name, hybridInstance.get());
110
110
  std::string message = exception.what();
111
111
  throw jsi::JSError(runtime, funcName + ": " + message);
112
- #ifdef ANDROID
113
- #pragma clang diagnostic push
114
- #pragma clang diagnostic ignored "-Wexceptions"
115
- // Workaround for https://github.com/mrousavy/nitro/issues/382
116
- } catch (const std::runtime_error& exception) {
117
- // Some exception was thrown - add method name information and re-throw as `JSError`.
118
- std::string funcName = getHybridFuncFullName<THybrid>(kind, name, hybridInstance.get());
119
- std::string message = exception.what();
120
- throw jsi::JSError(runtime, funcName + ": " + message);
121
- #pragma clang diagnostic pop
122
- #endif
123
112
  } catch (...) {
124
113
  // Some unknown exception was thrown - add method name information and re-throw as `JSError`.
125
114
  std::string funcName = getHybridFuncFullName<THybrid>(kind, name, hybridInstance.get());
@@ -27,6 +27,12 @@ namespace margelo::nitro {
27
27
 
28
28
  using namespace facebook;
29
29
 
30
+ struct MutableBufferNativeState final : public jsi::NativeState {
31
+ public:
32
+ explicit MutableBufferNativeState(const std::shared_ptr<jsi::MutableBuffer>& buffer) : buffer(buffer) {}
33
+ std::shared_ptr<jsi::MutableBuffer> buffer;
34
+ };
35
+
30
36
  // MutableBuffer <> ArrayBuffer
31
37
  template <typename T>
32
38
  struct JSIConverter<T, std::enable_if_t<is_shared_ptr_to_v<T, jsi::MutableBuffer>>> final {
@@ -47,6 +53,14 @@ struct JSIConverter<T, std::enable_if_t<is_shared_ptr_to_v<T, jsi::MutableBuffer
47
53
  "Are you maybe passing a TypedArray (e.g. Uint8Array)? Try to pass it's `.buffer` value.");
48
54
  }
49
55
  #endif
56
+ if (object.hasNativeState<MutableBufferNativeState>(runtime)) {
57
+ // It already is a NativeBuffer! Let's get the jsi::MutableBuffer from the jsi::NativeState...
58
+ auto mutableBufferHolder = object.getNativeState<MutableBufferNativeState>(runtime);
59
+ auto mutableBuffer = mutableBufferHolder->buffer;
60
+ if (auto arrayBuffer = std::dynamic_pointer_cast<ArrayBuffer>(mutableBuffer)) [[likely]] {
61
+ return arrayBuffer;
62
+ }
63
+ }
50
64
 
51
65
  JSICacheReference cache = JSICache::getOrCreateCache(runtime);
52
66
  auto borrowingArrayBuffer = cache.makeShared(object.getArrayBuffer(runtime));
@@ -54,7 +68,21 @@ struct JSIConverter<T, std::enable_if_t<is_shared_ptr_to_v<T, jsi::MutableBuffer
54
68
  return std::make_shared<JSArrayBuffer>(runtime, borrowingArrayBuffer);
55
69
  }
56
70
  static inline jsi::Value toJSI(jsi::Runtime& runtime, const std::shared_ptr<jsi::MutableBuffer>& buffer) {
57
- return jsi::ArrayBuffer(runtime, buffer);
71
+ if (auto jsBuffer = std::dynamic_pointer_cast<JSArrayBuffer>(buffer)) {
72
+ // It already is a JSBuffer! Let's try to just get it's existing jsi::Value...
73
+ auto jsValue = jsBuffer->getJSReference();
74
+ if (jsValue != nullptr) [[likely]] {
75
+ return jsi::Value(runtime, *jsValue);
76
+ }
77
+ }
78
+
79
+ // 1. Create jsi::ArrayBuffer
80
+ jsi::ArrayBuffer arrayBuffer(runtime, buffer);
81
+ // 2. Wrap jsi::MutableBuffer in jsi::NativeState holder & attach it
82
+ auto mutableBufferHolder = std::make_shared<MutableBufferNativeState>(buffer);
83
+ arrayBuffer.setNativeState(runtime, mutableBufferHolder);
84
+ // 3. Return jsi::ArrayBuffer (with jsi::NativeState) to JS
85
+ return arrayBuffer;
58
86
  }
59
87
  static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
60
88
  if (value.isObject()) {
@@ -39,15 +39,6 @@ struct JSIConverter<std::exception_ptr> final {
39
39
  } catch (const std::exception& e) {
40
40
  jsi::JSError error(runtime, e.what());
41
41
  return jsi::Value(runtime, error.value());
42
- #ifdef ANDROID
43
- #pragma clang diagnostic push
44
- #pragma clang diagnostic ignored "-Wexceptions"
45
- // Workaround for https://github.com/mrousavy/nitro/issues/382
46
- } catch (const std::runtime_error& e) {
47
- jsi::JSError error(runtime, e.what());
48
- return jsi::Value(runtime, error.value());
49
- #pragma clang diagnostic pop
50
- #endif
51
42
  } catch (...) {
52
43
  // Some unknown exception was thrown - maybe an Objective-C error?
53
44
  std::string errorName = TypeInfo::getCurrentExceptionName();
@@ -9,7 +9,7 @@
9
9
  #define NitroDefines_h
10
10
 
11
11
  // Sets the version of the native Nitro core library
12
- #define NITRO_VERSION "0.26.3"
12
+ #define NITRO_VERSION "0.26.4"
13
13
 
14
14
  // Sets whether to use debug or optimized production build flags
15
15
  #ifdef DEBUG
@@ -1,5 +1,5 @@
1
1
  //
2
- // AnyMapHolder.swift
2
+ // AnyMap.swift
3
3
  // NitroModules
4
4
  //
5
5
  // Created by Marc Rousavy on 20.08.24.
@@ -21,20 +21,20 @@ public indirect enum AnyValue {
21
21
  case object(Dictionary<String, AnyValue>)
22
22
 
23
23
  static func create(_ value: margelo.nitro.AnyValue) -> AnyValue {
24
- if margelo.nitro.is_AnyValue_null(value) {
24
+ if margelo.nitro.AnyMapUtils.is_AnyValue_null(value) {
25
25
  return .null
26
- } else if margelo.nitro.is_AnyValue_bool(value) {
27
- return .bool(margelo.nitro.get_AnyValue_bool(value))
28
- } else if margelo.nitro.is_AnyValue_number(value) {
29
- return .number(margelo.nitro.get_AnyValue_number(value))
30
- } else if margelo.nitro.is_AnyValue_bigint(value) {
31
- return .bigint(margelo.nitro.get_AnyValue_bigint(value))
32
- } else if margelo.nitro.is_AnyValue_string(value) {
33
- return .string(margelo.nitro.get_AnyValue_string(value).toSwift())
34
- } else if margelo.nitro.is_AnyValue_AnyArray(value) {
35
- return .array(margelo.nitro.get_AnyValue_AnyArray(value).toSwift())
36
- } else if margelo.nitro.is_AnyValue_AnyObject(value) {
37
- return .object(margelo.nitro.get_AnyValue_AnyObject(value).toSwift())
26
+ } else if margelo.nitro.AnyMapUtils.is_AnyValue_bool(value) {
27
+ return .bool(margelo.nitro.AnyMapUtils.get_AnyValue_bool(value))
28
+ } else if margelo.nitro.AnyMapUtils.is_AnyValue_number(value) {
29
+ return .number(margelo.nitro.AnyMapUtils.get_AnyValue_number(value))
30
+ } else if margelo.nitro.AnyMapUtils.is_AnyValue_bigint(value) {
31
+ return .bigint(margelo.nitro.AnyMapUtils.get_AnyValue_bigint(value))
32
+ } else if margelo.nitro.AnyMapUtils.is_AnyValue_string(value) {
33
+ return .string(margelo.nitro.AnyMapUtils.get_AnyValue_string(value).toSwift())
34
+ } else if margelo.nitro.AnyMapUtils.is_AnyValue_AnyArray(value) {
35
+ return .array(margelo.nitro.AnyMapUtils.get_AnyValue_AnyArray(value).toSwift())
36
+ } else if margelo.nitro.AnyMapUtils.is_AnyValue_AnyObject(value) {
37
+ return .object(margelo.nitro.AnyMapUtils.get_AnyValue_AnyObject(value).toSwift())
38
38
  } else {
39
39
  fatalError("AnyValue has unknown type!")
40
40
  }
@@ -42,10 +42,11 @@ public indirect enum AnyValue {
42
42
  }
43
43
 
44
44
  /**
45
- * Represents an `AnyMap` that can be passed to Swift.
45
+ * Represents an `AnyMap`- an untyped map instance.
46
+ * See C++ `AnyMap.hpp` for more information.
46
47
  */
47
- public final class AnyMapHolder {
48
- public let cppPart: margelo.nitro.TSharedMap
48
+ public final class AnyMap {
49
+ public let cppPart: margelo.nitro.SharedAnyMap
49
50
 
50
51
  public init() {
51
52
  cppPart = margelo.nitro.AnyMap.make()
@@ -55,7 +56,7 @@ public final class AnyMapHolder {
55
56
  cppPart = margelo.nitro.AnyMap.make(size)
56
57
  }
57
58
 
58
- public init(withCppPart otherCppPart: margelo.nitro.TSharedMap) {
59
+ public init(withCppPart otherCppPart: margelo.nitro.SharedAnyMap) {
59
60
  cppPart = otherCppPart
60
61
  }
61
62
 
@@ -279,25 +280,25 @@ extension margelo.nitro.AnyValue {
279
280
  }
280
281
  }
281
282
  static func create() -> margelo.nitro.AnyValue {
282
- return margelo.nitro.create_AnyValue()
283
+ return margelo.nitro.AnyMapUtils.create_AnyValue()
283
284
  }
284
285
  static func create(_ value: Bool) -> margelo.nitro.AnyValue {
285
- return margelo.nitro.create_AnyValue(value)
286
+ return margelo.nitro.AnyMapUtils.create_AnyValue(value)
286
287
  }
287
288
  static func create(_ value: Double) -> margelo.nitro.AnyValue {
288
- return margelo.nitro.create_AnyValue(value)
289
+ return margelo.nitro.AnyMapUtils.create_AnyValue(value)
289
290
  }
290
291
  static func create(_ value: Int64) -> margelo.nitro.AnyValue {
291
- return margelo.nitro.create_AnyValue(value)
292
+ return margelo.nitro.AnyMapUtils.create_AnyValue(value)
292
293
  }
293
294
  static func create(_ value: String) -> margelo.nitro.AnyValue {
294
- return margelo.nitro.create_AnyValue(std.string(value))
295
+ return margelo.nitro.AnyMapUtils.create_AnyValue(std.string(value))
295
296
  }
296
297
  static func create(_ value: [AnyValue]) -> margelo.nitro.AnyValue {
297
- return margelo.nitro.create_AnyValue(margelo.nitro.AnyArray.create(value))
298
+ return margelo.nitro.AnyMapUtils.create_AnyValue(margelo.nitro.AnyArray.create(value))
298
299
  }
299
300
  static func create(_ value: Dictionary<String, AnyValue>) -> margelo.nitro.AnyValue {
300
- return margelo.nitro.create_AnyValue(margelo.nitro.AnyObject.create(value))
301
+ return margelo.nitro.AnyMapUtils.create_AnyValue(margelo.nitro.AnyObject.create(value))
301
302
  }
302
303
  }
303
304
 
@@ -344,12 +345,16 @@ extension margelo.nitro.AnyObject {
344
345
  }
345
346
 
346
347
  func toSwift() -> Dictionary<String, AnyValue> {
347
- let keys = margelo.nitro.getAnyObjectKeys(self)
348
+ let keys = margelo.nitro.AnyMapUtils.getAnyObjectKeys(self)
348
349
  var dictionary = Dictionary<String, AnyValue>(minimumCapacity: keys.size())
349
350
  for key in keys {
350
- let value = margelo.nitro.getAnyObjectValue(self, key)
351
+ let value = margelo.nitro.AnyMapUtils.getAnyObjectValue(self, key)
351
352
  dictionary[String(key)] = AnyValue.create(value)
352
353
  }
353
354
  return dictionary
354
355
  }
355
356
  }
357
+
358
+
359
+ @available(*, deprecated, renamed: "AnyMap")
360
+ public typealias AnyMapHolder = AnyMap
@@ -1,5 +1,5 @@
1
1
  //
2
- // ArrayBufferHolder.swift
2
+ // ArrayBuffer.swift
3
3
  // NitroModules
4
4
  //
5
5
  // Created by Marc Rousavy on 17.07.24.
@@ -13,36 +13,39 @@ import Foundation
13
13
  *
14
14
  * See `data`, `size` and `isOwning`.
15
15
  */
16
- public typealias ArrayBufferHolder = margelo.nitro.ArrayBufferHolder
16
+ public typealias ArrayBuffer = margelo.nitro.ArrayBufferHolder
17
+
18
+ @available(*, deprecated, renamed: "ArrayBuffer")
19
+ public typealias ArrayBufferHolder = ArrayBuffer
17
20
 
18
21
  // pragma MARK: Wrap
19
22
 
20
- public extension ArrayBufferHolder {
23
+ public extension ArrayBuffer {
21
24
  /**
22
- * Create a new `ArrayBufferHolder` that wraps the given `data` of the given `size`
25
+ * Create a new `ArrayBuffer` that wraps the given `data` of the given `size`
23
26
  * without performing a copy.
24
27
  * When the `ArrayBuffer` is no longer used, `onDelete` will be called, in which
25
28
  * you as a caller are responsible for deleting `data`.
26
29
  */
27
30
  static func wrap(dataWithoutCopy data: UnsafeMutablePointer<UInt8>,
28
31
  size: Int,
29
- onDelete delete: @escaping () -> Void) -> ArrayBufferHolder {
32
+ onDelete delete: @escaping () -> Void) -> ArrayBuffer {
30
33
  // Convert escaping Swift closure to a `void*`
31
34
  let swiftClosure = SwiftClosure(wrappingClosure: delete)
32
- // Create ArrayBufferHolder with our wrapped Swift closure to make it callable as a C-function pointer
33
- return ArrayBufferHolder.wrap(data, size, swiftClosure)
35
+ // Create ArrayBuffer with our wrapped Swift closure to make it callable as a C-function pointer
36
+ return ArrayBuffer.wrap(data, size, swiftClosure)
34
37
  }
35
38
 
36
39
  /**
37
- * Create a new `ArrayBufferHolder` that wraps the given `data` of the given `size`
40
+ * Create a new `ArrayBuffer` that wraps the given `data` of the given `size`
38
41
  * without performing a copy.
39
42
  * When the `ArrayBuffer` is no longer used, `onDelete` will be called, in which
40
43
  * you as a caller are responsible for deleting `data`.
41
44
  */
42
45
  static func wrap(dataWithoutCopy data: UnsafeMutableRawPointer,
43
46
  size: Int,
44
- onDelete delete: @escaping () -> Void) -> ArrayBufferHolder {
45
- return ArrayBufferHolder.wrap(dataWithoutCopy: data.assumingMemoryBound(to: UInt8.self),
47
+ onDelete delete: @escaping () -> Void) -> ArrayBuffer {
48
+ return ArrayBuffer.wrap(dataWithoutCopy: data.assumingMemoryBound(to: UInt8.self),
46
49
  size: size,
47
50
  onDelete: delete)
48
51
  }
@@ -50,12 +53,12 @@ public extension ArrayBufferHolder {
50
53
 
51
54
  // pragma MARK: Allocate
52
55
 
53
- public extension ArrayBufferHolder {
56
+ public extension ArrayBuffer {
54
57
  /**
55
58
  * Allocate a new buffer of the given `size`.
56
59
  * If `initializeToZero` is `true`, all bytes are set to `0`, otherwise they are left untouched.
57
60
  */
58
- static func allocate(size: Int, initializeToZero: Bool = false) -> ArrayBufferHolder {
61
+ static func allocate(size: Int, initializeToZero: Bool = false) -> ArrayBuffer {
59
62
  let data = UnsafeMutablePointer<UInt8>.allocate(capacity: size)
60
63
  if initializeToZero {
61
64
  data.initialize(repeating: 0, count: size)
@@ -63,18 +66,18 @@ public extension ArrayBufferHolder {
63
66
  let deleteFunc = SwiftClosure {
64
67
  data.deallocate()
65
68
  }
66
- return ArrayBufferHolder.wrap(data, size, deleteFunc)
69
+ return ArrayBuffer.wrap(data, size, deleteFunc)
67
70
  }
68
71
  }
69
72
 
70
73
  // pragma MARK: Copy
71
74
 
72
- public extension ArrayBufferHolder {
75
+ public extension ArrayBuffer {
73
76
  /**
74
- * Copy the given `UnsafeMutablePointer<UInt8>` into a new **owning** `ArrayBufferHolder`.
77
+ * Copy the given `UnsafeMutablePointer<UInt8>` into a new **owning** `ArrayBuffer`.
75
78
  */
76
79
  static func copy(of other: UnsafeMutablePointer<UInt8>,
77
- size: Int) -> ArrayBufferHolder {
80
+ size: Int) -> ArrayBuffer {
78
81
  // 1. Create new `UnsafeMutablePointer<UInt8>`
79
82
  let copy = UnsafeMutablePointer<UInt8>.allocate(capacity: size)
80
83
  // 2. Copy over data
@@ -83,32 +86,32 @@ public extension ArrayBufferHolder {
83
86
  let deleteFunc = SwiftClosure {
84
87
  copy.deallocate()
85
88
  }
86
- return ArrayBufferHolder.wrap(copy, size, deleteFunc)
89
+ return ArrayBuffer.wrap(copy, size, deleteFunc)
87
90
  }
88
91
 
89
92
  /**
90
- * Copy the given `UnsafeMutableRawPointer` into a new **owning** `ArrayBufferHolder`.
93
+ * Copy the given `UnsafeMutableRawPointer` into a new **owning** `ArrayBuffer`.
91
94
  */
92
95
  static func copy(of other: UnsafeMutableRawPointer,
93
- size: Int) -> ArrayBufferHolder {
94
- return ArrayBufferHolder.copy(of: other.assumingMemoryBound(to: UInt8.self),
96
+ size: Int) -> ArrayBuffer {
97
+ return ArrayBuffer.copy(of: other.assumingMemoryBound(to: UInt8.self),
95
98
  size: size)
96
99
  }
97
100
 
98
101
  /**
99
- * Copy the given `ArrayBufferHolder` into a new **owning** `ArrayBufferHolder`.
102
+ * Copy the given `ArrayBuffer` into a new **owning** `ArrayBuffer`.
100
103
  */
101
- static func copy(of other: ArrayBufferHolder) -> ArrayBufferHolder {
102
- return ArrayBufferHolder.copy(of: other.data, size: other.size)
104
+ static func copy(of other: ArrayBuffer) -> ArrayBuffer {
105
+ return ArrayBuffer.copy(of: other.data, size: other.size)
103
106
  }
104
107
 
105
108
  /**
106
- * Copy the given `Data` into a new **owning** `ArrayBufferHolder`.
109
+ * Copy the given `Data` into a new **owning** `ArrayBuffer`.
107
110
  */
108
- static func copy(data: Data) throws -> ArrayBufferHolder {
111
+ static func copy(data: Data) throws -> ArrayBuffer {
109
112
  // 1. Create new `ArrayBuffer` of same size
110
113
  let size = data.count
111
- let arrayBuffer = ArrayBufferHolder.allocate(size: size)
114
+ let arrayBuffer = ArrayBuffer.allocate(size: size)
112
115
  // 2. Copy all bytes from `Data` into our new `ArrayBuffer`
113
116
  try data.withUnsafeBytes { rawPointer in
114
117
  guard let baseAddress = rawPointer.baseAddress else {
@@ -123,9 +126,9 @@ public extension ArrayBufferHolder {
123
126
 
124
127
  // pragma MARK: Data
125
128
 
126
- public extension ArrayBufferHolder {
129
+ public extension ArrayBuffer {
127
130
  /**
128
- * Wrap this `ArrayBufferHolder` in a `Data` instance, without performing a copy.
131
+ * Wrap this `ArrayBuffer` in a `Data` instance, without performing a copy.
129
132
  * - `copyIfNeeded`: If this `ArrayBuffer` is **non-owning**, the foreign
130
133
  * data may needs to be copied to be safely used outside of the scope of the caller function.
131
134
  * This flag controls that.
@@ -24,7 +24,7 @@ using namespace facebook;
24
24
  * Passing around instances of `ArrayBufferHolder` (or `std::shared_ptr<ArrayBuffer>`)
25
25
  * does not involve any data copies and is almost zero-overhead - even when passed to JS.
26
26
  */
27
- class ArrayBufferHolder {
27
+ class ArrayBufferHolder final {
28
28
  public:
29
29
  ArrayBufferHolder(const std::shared_ptr<ArrayBuffer>& arrayBuffer) : _arrayBuffer(arrayBuffer) {}
30
30
 
@@ -0,0 +1,13 @@
1
+ //
2
+ // AnyMapHolder.hpp
3
+ // NitroModules
4
+ //
5
+ // Created by Marc Rousavy on 20.08.24.
6
+ //
7
+
8
+ #pragma once
9
+
10
+ #include "AnyMapUtils.hpp"
11
+
12
+ // THIS HEADER IS DEPRECATED! Update to latest Nitro
13
+ #warning "AnyMapHolder.hpp is deprecated. Update Nitro to the latest version to use AnyMapUtils.hpp instead!"
@@ -0,0 +1,107 @@
1
+ //
2
+ // AnyMapUtils.hpp
3
+ // NitroModules
4
+ //
5
+ // Created by Marc Rousavy on 20.08.24.
6
+ //
7
+
8
+ #pragma once
9
+
10
+ #include "AnyMap.hpp"
11
+
12
+ namespace margelo::nitro {
13
+
14
+ using SharedAnyMap = std::shared_ptr<AnyMap>;
15
+
16
+ // TODO: Remove TSharedMap.
17
+ /// @deprecated
18
+ using TSharedMap = SharedAnyMap;
19
+
20
+ namespace AnyMapUtils {
21
+
22
+ inline AnyValue create_AnyValue() {
23
+ return AnyValue{std::monostate{}};
24
+ }
25
+ inline AnyValue create_AnyValue(bool boolValue) {
26
+ return AnyValue{boolValue};
27
+ }
28
+ inline AnyValue create_AnyValue(double doubleValue) {
29
+ return AnyValue{doubleValue};
30
+ }
31
+ inline AnyValue create_AnyValue(int64_t bigintValue) {
32
+ return AnyValue{bigintValue};
33
+ }
34
+ inline AnyValue create_AnyValue(const std::string& stringValue) {
35
+ return AnyValue{stringValue};
36
+ }
37
+ inline AnyValue create_AnyValue(const AnyArray& arrayValue) {
38
+ return AnyValue{arrayValue};
39
+ }
40
+ inline AnyValue create_AnyValue(const AnyObject& objectValue) {
41
+ return AnyValue{objectValue};
42
+ }
43
+
44
+ inline bool is_AnyValue_null(const AnyValue& value) {
45
+ return std::holds_alternative<std::monostate>(value);
46
+ }
47
+ inline bool is_AnyValue_bool(const AnyValue& value) {
48
+ return std::holds_alternative<bool>(value);
49
+ }
50
+ inline bool is_AnyValue_number(const AnyValue& value) {
51
+ return std::holds_alternative<double>(value);
52
+ }
53
+ inline bool is_AnyValue_bigint(const AnyValue& value) {
54
+ return std::holds_alternative<int64_t>(value);
55
+ }
56
+ inline bool is_AnyValue_string(const AnyValue& value) {
57
+ return std::holds_alternative<std::string>(value);
58
+ }
59
+ inline bool is_AnyValue_AnyArray(const AnyValue& value) {
60
+ return std::holds_alternative<AnyArray>(value);
61
+ }
62
+ inline bool is_AnyValue_AnyObject(const AnyValue& value) {
63
+ return std::holds_alternative<AnyObject>(value);
64
+ }
65
+
66
+ inline std::monostate get_AnyValue_null(const AnyValue& value) {
67
+ return std::get<std::monostate>(value);
68
+ }
69
+ inline bool get_AnyValue_bool(const AnyValue& value) {
70
+ return std::get<bool>(value);
71
+ }
72
+ inline double get_AnyValue_number(const AnyValue& value) {
73
+ return std::get<double>(value);
74
+ }
75
+ inline int64_t get_AnyValue_bigint(const AnyValue& value) {
76
+ return std::get<int64_t>(value);
77
+ }
78
+ inline std::string get_AnyValue_string(const AnyValue& value) {
79
+ return std::get<std::string>(value);
80
+ }
81
+ inline AnyArray get_AnyValue_AnyArray(const AnyValue& value) {
82
+ return std::get<AnyArray>(value);
83
+ }
84
+ inline AnyObject get_AnyValue_AnyObject(const AnyValue& value) {
85
+ return std::get<AnyObject>(value);
86
+ }
87
+
88
+ inline std::vector<std::string> getAnyObjectKeys(const AnyObject& object) {
89
+ std::vector<std::string> keys;
90
+ keys.reserve(object.size());
91
+ for (const auto& entry : object) {
92
+ keys.push_back(entry.first);
93
+ }
94
+ return keys;
95
+ }
96
+
97
+ inline AnyValue getAnyObjectValue(const AnyObject& object, const std::string& key) {
98
+ auto item = object.find(key);
99
+ if (item == object.end()) {
100
+ throw std::runtime_error("Couldn't find " + key + " in AnyObject!");
101
+ }
102
+ return item->second;
103
+ }
104
+
105
+ }; // namespace AnyMapUtils
106
+
107
+ } // namespace margelo::nitro
@@ -11,7 +11,7 @@ public extension Date {
11
11
  /**
12
12
  * Create a new `Date` object from the given `std::chrono::system_clock::time_point` value.
13
13
  */
14
- public init(fromChrono date: margelo.nitro.chrono_time) {
14
+ init(fromChrono date: margelo.nitro.chrono_time) {
15
15
  let millisecondsSinceEpoch = margelo.nitro.millisecondsSinceEpochFromChronoDate(date)
16
16
  self = .init(timeIntervalSince1970: millisecondsSinceEpoch / 1_000)
17
17
  }
@@ -19,7 +19,7 @@ public extension Date {
19
19
  /**
20
20
  * Converts this `Date` object to a `std::chrono::system_clock::time_point` value.
21
21
  */
22
- public func toCpp() -> margelo.nitro.chrono_time {
22
+ func toCpp() -> margelo.nitro.chrono_time {
23
23
  let secondsSinceEpoch = self.timeIntervalSince1970
24
24
  let millisecondsSinceEpoch = secondsSinceEpoch * 1_000
25
25
  return margelo.nitro.chronoDateFromMillisecondsSinceEpoch(millisecondsSinceEpoch)
@@ -1 +1 @@
1
- {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/typescript/lib/lib.esnext.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/typescript/lib/lib.esnext.object.d.ts","../../../node_modules/typescript/lib/lib.esnext.regexp.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/anymap.ts","../src/hybridobject.ts","../src/boxedhybridobject.ts","../../../node_modules/react-native/types/modules/batchedbridge.d.ts","../../../node_modules/react-native/libraries/vendor/emitter/eventemitter.d.ts","../../../node_modules/react-native/types/modules/codegen.d.ts","../../../node_modules/react-native/types/modules/devtools.d.ts","../../../node_modules/react-native/types/modules/globals.d.ts","../../../node_modules/react-native/types/modules/launchscreen.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/react-native/types/private/utilities.d.ts","../../../node_modules/react-native/types/public/insets.d.ts","../../../node_modules/react-native/types/public/reactnativetypes.d.ts","../../../node_modules/react-native/libraries/types/coreeventtypes.d.ts","../../../node_modules/react-native/types/public/reactnativerenderer.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchable.d.ts","../../../node_modules/react-native/libraries/components/view/viewaccessibility.d.ts","../../../node_modules/react-native/libraries/components/view/viewproptypes.d.ts","../../../node_modules/react-native/libraries/components/refreshcontrol/refreshcontrol.d.ts","../../../node_modules/react-native/libraries/components/scrollview/scrollview.d.ts","../../../node_modules/react-native/libraries/components/view/view.d.ts","../../../node_modules/react-native/libraries/image/imageresizemode.d.ts","../../../node_modules/react-native/libraries/image/imagesource.d.ts","../../../node_modules/react-native/libraries/image/image.d.ts","../../../node_modules/@react-native/virtualized-lists/lists/virtualizedlist.d.ts","../../../node_modules/@react-native/virtualized-lists/index.d.ts","../../../node_modules/react-native/libraries/lists/flatlist.d.ts","../../../node_modules/react-native/libraries/reactnative/rendererproxy.d.ts","../../../node_modules/react-native/libraries/lists/sectionlist.d.ts","../../../node_modules/react-native/libraries/text/text.d.ts","../../../node_modules/react-native/libraries/animated/animated.d.ts","../../../node_modules/react-native/libraries/stylesheet/stylesheettypes.d.ts","../../../node_modules/react-native/libraries/stylesheet/stylesheet.d.ts","../../../node_modules/react-native/libraries/stylesheet/processcolor.d.ts","../../../node_modules/react-native/libraries/actionsheetios/actionsheetios.d.ts","../../../node_modules/react-native/libraries/alert/alert.d.ts","../../../node_modules/react-native/libraries/animated/easing.d.ts","../../../node_modules/react-native/libraries/animated/useanimatedvalue.d.ts","../../../node_modules/react-native/libraries/eventemitter/rctdeviceeventemitter.d.ts","../../../node_modules/react-native/libraries/eventemitter/rctnativeappeventemitter.d.ts","../../../node_modules/react-native/libraries/appstate/appstate.d.ts","../../../node_modules/react-native/libraries/batchedbridge/nativemodules.d.ts","../../../node_modules/react-native/libraries/components/accessibilityinfo/accessibilityinfo.d.ts","../../../node_modules/react-native/libraries/components/activityindicator/activityindicator.d.ts","../../../node_modules/react-native/libraries/components/clipboard/clipboard.d.ts","../../../node_modules/react-native/libraries/components/drawerandroid/drawerlayoutandroid.d.ts","../../../node_modules/react-native/libraries/eventemitter/nativeeventemitter.d.ts","../../../node_modules/react-native/libraries/components/keyboard/keyboard.d.ts","../../../node_modules/react-native/types/private/timermixin.d.ts","../../../node_modules/react-native/libraries/components/keyboard/keyboardavoidingview.d.ts","../../../node_modules/react-native/libraries/components/layoutconformance/layoutconformance.d.ts","../../../node_modules/react-native/libraries/components/pressable/pressable.d.ts","../../../node_modules/react-native/libraries/components/progressbarandroid/progressbarandroid.d.ts","../../../node_modules/react-native/libraries/components/safeareaview/safeareaview.d.ts","../../../node_modules/react-native/libraries/components/statusbar/statusbar.d.ts","../../../node_modules/react-native/libraries/components/switch/switch.d.ts","../../../node_modules/react-native/libraries/components/textinput/inputaccessoryview.d.ts","../../../node_modules/react-native/libraries/components/textinput/textinput.d.ts","../../../node_modules/react-native/libraries/components/toastandroid/toastandroid.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchablewithoutfeedback.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchablehighlight.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchableopacity.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchablenativefeedback.d.ts","../../../node_modules/react-native/libraries/components/button.d.ts","../../../node_modules/react-native/libraries/core/registercallablemodule.d.ts","../../../node_modules/react-native/libraries/interaction/interactionmanager.d.ts","../../../node_modules/react-native/libraries/interaction/panresponder.d.ts","../../../node_modules/react-native/libraries/layoutanimation/layoutanimation.d.ts","../../../node_modules/react-native/libraries/linking/linking.d.ts","../../../node_modules/react-native/libraries/logbox/logbox.d.ts","../../../node_modules/react-native/libraries/modal/modal.d.ts","../../../node_modules/react-native/libraries/performance/systrace.d.ts","../../../node_modules/react-native/libraries/permissionsandroid/permissionsandroid.d.ts","../../../node_modules/react-native/libraries/pushnotificationios/pushnotificationios.d.ts","../../../node_modules/react-native/libraries/utilities/iperformancelogger.d.ts","../../../node_modules/react-native/libraries/reactnative/appregistry.d.ts","../../../node_modules/react-native/libraries/reactnative/i18nmanager.d.ts","../../../node_modules/react-native/libraries/reactnative/roottag.d.ts","../../../node_modules/react-native/libraries/reactnative/uimanager.d.ts","../../../node_modules/react-native/libraries/reactnative/requirenativecomponent.d.ts","../../../node_modules/react-native/libraries/settings/settings.d.ts","../../../node_modules/react-native/libraries/share/share.d.ts","../../../node_modules/react-native/libraries/stylesheet/platformcolorvaluetypesios.d.ts","../../../node_modules/react-native/libraries/stylesheet/platformcolorvaluetypes.d.ts","../../../node_modules/react-native/libraries/turbomodule/rctexport.d.ts","../../../node_modules/react-native/libraries/turbomodule/turbomoduleregistry.d.ts","../../../node_modules/react-native/libraries/utilities/appearance.d.ts","../../../node_modules/react-native/libraries/utilities/backhandler.d.ts","../../../node_modules/react-native/src/private/devmenu/devmenu.d.ts","../../../node_modules/react-native/libraries/utilities/devsettings.d.ts","../../../node_modules/react-native/libraries/utilities/dimensions.d.ts","../../../node_modules/react-native/libraries/utilities/pixelratio.d.ts","../../../node_modules/react-native/libraries/utilities/platform.d.ts","../../../node_modules/react-native/libraries/vibration/vibration.d.ts","../../../node_modules/react-native/libraries/yellowbox/yellowboxdeprecated.d.ts","../../../node_modules/react-native/libraries/vendor/core/errorutils.d.ts","../../../node_modules/react-native/types/public/deprecatedpropertiesalias.d.ts","../../../node_modules/react-native/types/index.d.ts","../src/modulenotfounderror.ts","../src/nitromodulesproxy.ts","../src/turbomodule/nativenitromodules.ts","../src/nitromodules.ts","../src/constructor.ts","../src/sync.ts","../src/views/hybridview.ts","../src/views/gethostcomponent.ts","../src/index.ts","../src/__tests__/index.test.tsx","../src/turbomodule/nativenitromodules.web.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/jest-matcher-utils/node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts"],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","17edc026abf73c5c2dd508652d63f68ec4efd9d4856e3469890d27598209feb5",{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true},{"version":"ae37d6ccd1560b0203ab88d46987393adaaa78c919e51acf32fb82c86502e98c","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true},{"version":"d8670852241d4c6e03f2b89d67497a4bbefe29ecaa5a444e2c11a9b05e6fccc6","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true},{"version":"9d540251809289a05349b70ab5f4b7b99f922af66ab3c39ba56a475dcf95d5ff","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true},{"version":"0b11f3ca66aa33124202c80b70cd203219c3d4460cfc165e0707aa9ec710fc53","affectsGlobalScope":true},{"version":"6a3f5a0129cc80cf439ab71164334d649b47059a4f5afca90282362407d0c87f","affectsGlobalScope":true},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true},{"version":"15b98a533864d324e5f57cd3cfc0579b231df58c1c0f6063ea0fcb13c3c74ff9","affectsGlobalScope":true},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"a064b82533d211b1f97d1dc7c82e8d622d82d873a3dbb7e225f6e17814f40003","signature":"5d6084b922921ea84fce8617204272f5fb30ef8bedd91da18102c160fcf591aa"},{"version":"75c983a06ae990d5d05e9e6bcc5b20e52c1008f10a4d18af7561ce33ced01d23","signature":"90538ea42b1b8f3ac4ec7306a0a27ba7afee541df9684991e87202ffc9a6beb7"},{"version":"7cdf8681726690f80e41a5dcae289e664e78e0a0f81682d38b0f86ce9439f2aa","signature":"e5d121b23622c120b8e60e5efccd1436d9212b89f4cb180eb330f7d00cbe0e5d"},{"version":"3a909e8789a4f8b5377ef3fb8dc10d0c0a090c03f2e40aab599534727457475a","affectsGlobalScope":true},"fd412dd6372493eb8e3e95cae8687d35e4d34dde905a33e0ee47b74224cdd6ab","9d3b119c15e8eeb9a8fbeca47e0165ca7120704d90bf123b16ee5b612e2ecc9d","b8dd45aa6e099a5f564edcabfe8114096b096eb1ffaa343dd6f3fe73f1a6e85e",{"version":"38e8ac2d182bd3f85d28de9bdf1386c19a319f9c0280aa43960204c353b07878","affectsGlobalScope":true},"bc4db28f3510994e45bbabba1ee33e9a0d27dab33d4c8a5844cee8c85438a058",{"version":"36a2e4c9a67439aca5f91bb304611d5ae6e20d420503e96c230cf8fcdc948d94","affectsGlobalScope":true},"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","af5eabf1ad1627f116f661b0232c0fa57e7918123c2d191776f77e84c7e71f44","232f660363b3b189f7be7822ed71e907195d1a85bc8d55d2b7ce3f09b2136938","e745388cfad9efb4e5a9a15a2c6b66d54094dd82f8d0c2551064e216f7b51526","c154b73e4fb432f6bc34d1237e98a463615ae1c721e4b0ae5b3bcb5047d113a3","6a408ed36eee4e21dd4c2096cc6bc72d29283ee1a3e985e9f42ecd4d1a30613b","8ebf448e9837fda1a368acbb575b0e28843d5b2a3fda04bce76248b64326ea49","91b9f6241fca7843985aa31157cfa08cc724c77d91145a4d834d27cdde099c05","8b94ac8c460c9a2578ca3308fecfcf034e21af89e9c287c97710e9717ffae133","a7266bcc42f8ec0f31f319c2dd8100411b4d7b8a534235cb00a719f1c8a2a42e","3dfa3a6f2a62259b56fa7bcebfbacf886848dfa037298be5bed07c7a0381ee4f","a1e3cda52746919d2a95784ce0b1b9ffa22052209aab5f54e079e7b920f5339e","1882680f8c88c5648d603408dd1943857ca831a815e33d3126be8368f7a69252","e7d56fa3c64c44b29fa11d840b1fe04f6d782fc2e341a1f01b987f5e59f34266","6f7da03b2573c9f6f47c45fa7ae877b9493e59afdc5e5bc0948f7008c1eb5601","cbfbec26cc73a7e9359defb962c35b64922ca1549b6aa7c022a1d70b585c1184","488242948cc48ee6413a159c60bcaf70de15db01364741737a962662f1a127a5","42bacb33cddecbcfe3e043ee1117ba848801749e44f947626765b3e0aec74b1c","9c4cb91aa45db16c1a85e86502b6a87d971aa65169dca3c76bba6b7455661f5c","cd2156bc8e4d54d52a2817d1b6f4629a5dd3173b1d8bb0fc893ee678d6a78ecd","60526d9010e8ccb2a76a59821061463464c3acd5bc7a50320df6d2e4e0d6e4f7","8f47ba2a4106c63d2cd5fa6cae2e1ecdbf448f3325413c63c302d4c2392c2984","623fa4efc706bb9956d0ae94b13321c6617655bf8ebdb270c9792bb398f82e44","c4f6cc26bf998cec21820844d187217aadc875a879760828d9111180e122320d","79d6871ce0da76f4c865a58daa509d5c8a10545d510b804501daa5d0626e7028","9054417b5760061bc5fe31f9eee5dc9bf018339b0617d3c65dd1673c8e3c0f25","c6b68cd2e7838e91e05ede0a686815f521024281768f338644f6c0e0ad8e63cd","443702ca8101ef0adc827c2cc530ca93cf98d41e36ce4399efb9bc833ad9cb62","c94f70562ae60797cce564c3bebbaaf1752c327d5063d6ac152aa5ca1616c267","2aeb5fcdfc884b16015617d263fd8d1a8513f7efe23880be4e5f0bdb3794b37c","b561170fbe8d4292425e1dfa52406c8d97575681f7a5e420d11d9f72f7c29e38","5fe94f3f6411a0f6293f16fdc8e02ee61138941847ce91d6f6800c97fac22fcd","7f7c0ecc3eeeef905a3678e540947f4fbbc1a9c76075419dcc5fbfc3df59cb0b","df3303018d45c92be73fb4a282d5a242579f96235f5e0f8981983102caf5feca","92c10b9a2fcc6e4e4a781c22a97a0dac735e29b9059ecb6a7fa18d5b6916983b","8205e62a7310ac0513747f6d84175400680cff372559bc5fbe2df707194a295d","084d0df6805570b6dc6c8b49c3a71d5bdfe59606901e0026c63945b68d4b080a","9235e7b554d1c15ea04977b69cd123c79bd10f81704479ad5145e34d0205bf07","0f066f9654e700a9cf79c75553c934eb14296aa80583bd2b5d07e2d582a3f4ee","269c5d54104033b70331343bd931c9933852a882391ed6bd98c3d8b7d6465d22","a56b8577aaf471d9e60582065a8193269310e8cae48c1ce4111ed03216f5f715","486ae83cd51b813095f6716f06cc9b2cf480ad1d6c7f8ec59674d6c858cd2407","039f0a1f6d67514bbfea62ffbb0822007ce35ba180853ec9034431f60f63dbe6","fff527e2567a24dd634a30268f1aa8a220315fed9c513d70ee872e54f67f27f3","5dd0ff735b3f2e642c3f16bcfb3dc4ecebb679a70e43cfb19ab5fd84d8faaeed","d1d78d1ef0f21ac77cdc436d2a4d56592453a8a2e51af2040ec9a69a5d35e4de","bc55b91274e43f88030c9cfe2c4217fae57894c3c302173ab6e9743c29484e3d","8bb22f70bfd7bf186631fa565c9202ee6a1009ffb961197b7d092b5a1e1d56b1","77282216c61bcef9a700db98e142301d5a7d988d3076286029da63e415e98a42","2ceb62a57fa08babfd78d6ce00c00d114e41a905e9f07531712aeb79197960dd","64ce8e260a1362d4cadd6c753581a912a9869d4a53ec6e733dc61018f9250f5d","85a915dbb768b89cb92f5e6c165d776bfebd065883c34fee4e0219c3ed321b47","83df2f39cb14971adea51d1c84e7d146a34e9b7f84ad118450a51bdc3138412c","b96364fcb0c9d521e7618346b00acf3fe16ccf9368404ceac1658edee7b6332c","bdb2b70c74908c92ec41d8dd8375a195cb3bb07523e4de642b2b2dfbde249ca6","7b329f4137a552073f504022acbf8cd90d49cc5e5529791bef508f76ff774854","f63bbbffcfc897d22f34cf19ae13405cd267b1783cd21ec47d8a2d02947c98c1","d9725ef7f60a791668f7fb808eb90b1789feaaef989a686fefc0f7546a51dcdc","df55b9be6ba19a6f77487e09dc7a94d7c9bf66094d35ea168dbd4bac42c46b8f","595125f3e088b883d104622ef10e6b7d5875ff6976bbe4d7dca090a3e2dca513","8ebb6f0603bf481e893311c49e4d2e2061413c51b9ba5898cd9b0a01f5ef19c8","e0d7eed4ba363df3faadb8e617f95f9fc8adfbb00b87db7ade4a1098d6cf1e90","9670f806bd81af88e5f884098f8173e93c1704158c998fe268fd35d5c8f39113","de115595321ce012c456f512a799679bfc874f0ac0a4928a8429557bb25086aa","896e4b676a6f55ca66d40856b63ec2ff7f4f594d6350f8ae04eaee8876da0bc5","0524cab11ba9048d151d93cc666d3908fda329eec6b1642e9a936093e6d79f28","869073d7523e75f45bd65b2072865c60002d5e0cbd3d17831e999cf011312778","bc7b5906a6ce6c5744a640c314e020856be6c50a693e77dc12aff2d77b12ca76","56503e377bc1344f155e4e3115a772cb4e59350c0b8131e3e1fb2750ac491608","6b579287217ee1320ee1c6cfec5f6730f3a1f91daab000f7131558ee531b2bf8","e2ddb2877f5a841866f4fc772a601b58e90ac8399b35f9a06535be81b8e08b47","a793636667598e739a52684033037a67dc2d9db37fab727623626ef19aa5abb9","b15d6238a86bc0fc2368da429249b96c260debc0cec3eb7b5f838ad32587c129","9a9fba3a20769b0a74923e7032997451b61c1bd371c519429b29019399040d74","4b10e2fe52cb61035e58df3f1fdd926dd0fe9cf1a2302f92916da324332fb4e0","d1092ae8d6017f359f4758115f588e089848cc8fb359f7ba045b1a1cf3668a49","ddae9195b0da7b25a585ef43365f4dc5204a746b155fbee71e6ee1a9193fb69f","32dbced998ce74c5e76ce87044d0b4071857576dde36b0c6ed1d5957ce9cf5b5","5bc29a9918feba88816b71e32960cf11243b77b76630e9e87cad961e5e1d31d0","0aba767f26742d337f50e46f702a95f83ce694101fa9b8455786928a5672bb9b","8db57d8da0ab49e839fb2d0874cfe456553077d387f423a7730c54ef5f494318","ecc1b8878c8033bde0204b85e26fe1af6847805427759e5723882c848a11e134","cfc9c32553ad3b5be38342bc8731397438a93531118e1a226a8c79ad255b4f0c","16e5b5b023c2a1119c1878a51714861c56255778de0a7fe378391876a15f7433","52e8612d284467b4417143ca8fe54d30145fdfc3815f5b5ea9b14b677f422be5","a090a8a3b0ef2cceeb089acf4df95df72e7d934215896afe264ff6f734d66d15","a0259c6054e3ed2c5fb705b6638e384446cbcdf7fd2072c659b43bd56e214b9a","005319c82222e57934c7b211013eb6931829e46b2a61c5d9a1c3c25f8dc3ea90","151f422f08c8ca67b77c5c39d49278b4df452ef409237c8219be109ae3cdae9d",{"version":"53f74176ec51c6a621b518db2d4004f12dc6794bb3feb504fba5b2309cbca4e7","affectsGlobalScope":true},{"version":"445f7bb9b132395763d2fd00e88167a7b7d5c514728cfe462c17d044fe9f27d2","signature":"5423eff0aeb3d2eba041721efabde15d1c06709724dea6ae79b48559f86ed9b8","affectsGlobalScope":true},{"version":"489c7ab5618f45d5c1e6f9acf7ec6d980b656b659bbeffabe9024a46b9c5e616","signature":"18969c71a16d9d0ad05cf52dac1de4035dffe2de1b60b4ad7f143a3a694d1718"},{"version":"ee0cd52125f0a6012ad0f39327bf21ee6d8cf9f82036677b7b984b5866ee2156","signature":"c071991397ba57b75b07574dd2d11efe990aea9c59136423d149ce6c3f301eea","affectsGlobalScope":true},{"version":"725586b511f51bca1589b2476a469a9335db4cb1fe1b8fd0e94c189d7335fa98","signature":"edac49118a9eb46d842c8d24a567e31f0290ecdf8d44a5fc78da3112c2fdda54"},{"version":"c1a0e5e95335f3543144ae3343f67669817f88865ecddce2927152b5e0382d96","signature":"ae6311df7457b1396ee9675a75181a275b0d548a92d551642c851380e63221c6"},{"version":"9be7cfc079aa51a357a4aa6ec55dfde1b7a2f70dfffd5d4ec91dfdfda7d4e20b","signature":"9a69602e1cbf7afe7ea8fa14121f7572f2bf024948fb2f6ad6dfaab26adc4978"},{"version":"06ba2eeca898c4bd9a8e9f9b7ff8e0fc3b34cd79d791b7255f9d8b093eaedbcc","signature":"39a6002a361707e227b8d3b973aed942aa405103d5922b4d60282797840746a3"},{"version":"d3b6c41836df7023b254a52ca9c0524af6394820c4868503ab4afa2e681e3746","signature":"37e48fdbf94860217f01f1584faa8cee1052fae2a69f83d5caf281145ffbd6ad"},{"version":"3fe41e721814d3379e4d3e1ffac63eab2ba4db60aba30f49d7694334035312c0","signature":"57c1991ff5944cadbbd5ecd4ba872431d8d3f16ec8d1aa52e836985af3368d10"},{"version":"844f2848bfe787dc98769ea4edc2e30371a5bfb15ef9f3e6afd625e76f6dc5c8","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","affectsGlobalScope":true},{"version":"1c18d5790d0f5e15e84827cbf08982aef0339fb034b7971cff0535fc20a77879","signature":"68724f2c23cf02888072a2830ca5b336b6af536abce6094d3392e884c9293e52"},"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec",{"version":"f8db4fea512ab759b2223b90ecbbe7dae919c02f8ce95ec03f7fb1cf757cfbeb","affectsGlobalScope":true}],"root":[[72,74],[172,182]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"allowUnreachableCode":false,"allowUnusedLabels":false,"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":2,"module":99,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noImplicitUseStrict":false,"noStrictGenericChecks":false,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./typescript","rootDir":"../src","skipLibCheck":true,"strict":true,"target":99,"verbatimModuleSyntax":true},"fileIdsList":[[185],[98],[83,171],[187,190],[81,82],[183,189],[187],[184,188],[186],[106,107],[83,87,93,94,97,100,102,103,106],[104],[113],[76,86],[83,84,86,87,91,105,106],[83,106,135,136],[83,84,86,87,91,106],[76,120],[83,84,91,105,106,122],[83],[83,85,87,90,91,94,105,106],[83,84,86,91,106],[83,84,86,91],[83,84,85,87,89,91,92,105,106],[83,106],[83,105,106],[76,83,84,86,87,90,91,105,106,122],[83,85,87],[83,94,105,106,133],[83,84,89,106,133,135],[83,94,133],[83,84,85,87,89,90,105,106,122],[87],[83,85,87,88,89,90,105,106],[76],[112],[83,84,85,86,87,90,95,96,105,106],[87,88],[83,93,94,99,105,106],[83,93,99,101,105,106],[83,87,91,106],[83,105,148],[86],[83,86],[106],[105],[95,104,106],[83,84,86,87,90,105,106],[158],[120],[75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[76,171],[78],[171],[73],[73,175],[72,73,175,176,177,178,179],[174],[73,74],[171,172,173],[171,178]],"referencedMap":[[186,1],[99,2],[98,3],[191,4],[83,5],[190,6],[188,7],[189,8],[187,9],[108,10],[104,11],[111,12],[114,13],[116,14],[117,15],[137,16],[119,17],[121,18],[123,19],[124,20],[125,21],[126,22],[92,22],[127,23],[93,24],[128,25],[129,15],[130,26],[131,27],[89,28],[134,29],[136,30],[135,31],[133,32],[94,23],[90,33],[91,34],[120,35],[112,35],[113,36],[97,37],[139,35],[140,38],[142,18],[100,39],[102,40],[144,41],[149,42],[101,20],[153,43],[151,20],[152,44],[155,45],[157,45],[156,45],[107,45],[106,46],[105,47],[103,48],[159,49],[87,44],[160,13],[161,13],[163,50],[164,35],[168,20],[171,51],[77,52],[78,53],[170,54],[88,33],[86,20],[74,55],[176,56],[180,57],[172,54],[175,58],[173,59],[174,60],[182,54],[179,61],[178,55]],"latestChangedDtsFile":"./typescript/turbomodule/NativeNitroModules.web.d.ts"},"version":"5.5.4"}
1
+ {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/typescript/lib/lib.esnext.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/typescript/lib/lib.esnext.object.d.ts","../../../node_modules/typescript/lib/lib.esnext.regexp.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/anymap.ts","../src/hybridobject.ts","../src/boxedhybridobject.ts","../../../node_modules/react-native/types/modules/batchedbridge.d.ts","../../../node_modules/react-native/libraries/vendor/emitter/eventemitter.d.ts","../../../node_modules/react-native/types/modules/codegen.d.ts","../../../node_modules/react-native/types/modules/devtools.d.ts","../../../node_modules/react-native/libraries/vendor/core/errorutils.d.ts","../../../node_modules/react-native/src/types/globals.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/react-native/types/private/utilities.d.ts","../../../node_modules/react-native/types/public/insets.d.ts","../../../node_modules/react-native/types/public/reactnativetypes.d.ts","../../../node_modules/react-native/libraries/types/coreeventtypes.d.ts","../../../node_modules/react-native/types/public/reactnativerenderer.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchable.d.ts","../../../node_modules/react-native/libraries/components/view/viewaccessibility.d.ts","../../../node_modules/react-native/libraries/components/view/viewproptypes.d.ts","../../../node_modules/react-native/libraries/components/refreshcontrol/refreshcontrol.d.ts","../../../node_modules/react-native/libraries/components/scrollview/scrollview.d.ts","../../../node_modules/react-native/libraries/components/view/view.d.ts","../../../node_modules/react-native/libraries/image/imageresizemode.d.ts","../../../node_modules/react-native/libraries/image/imagesource.d.ts","../../../node_modules/react-native/libraries/image/image.d.ts","../../../node_modules/@react-native/virtualized-lists/lists/virtualizedlist.d.ts","../../../node_modules/@react-native/virtualized-lists/index.d.ts","../../../node_modules/react-native/libraries/lists/flatlist.d.ts","../../../node_modules/react-native/libraries/reactnative/rendererproxy.d.ts","../../../node_modules/react-native/libraries/lists/sectionlist.d.ts","../../../node_modules/react-native/libraries/text/text.d.ts","../../../node_modules/react-native/libraries/animated/animated.d.ts","../../../node_modules/react-native/libraries/stylesheet/stylesheettypes.d.ts","../../../node_modules/react-native/libraries/stylesheet/stylesheet.d.ts","../../../node_modules/react-native/libraries/stylesheet/processcolor.d.ts","../../../node_modules/react-native/libraries/actionsheetios/actionsheetios.d.ts","../../../node_modules/react-native/libraries/alert/alert.d.ts","../../../node_modules/react-native/libraries/animated/easing.d.ts","../../../node_modules/react-native/libraries/animated/useanimatedvalue.d.ts","../../../node_modules/react-native/libraries/eventemitter/rctdeviceeventemitter.d.ts","../../../node_modules/react-native/libraries/eventemitter/rctnativeappeventemitter.d.ts","../../../node_modules/react-native/libraries/appstate/appstate.d.ts","../../../node_modules/react-native/libraries/batchedbridge/nativemodules.d.ts","../../../node_modules/react-native/libraries/components/accessibilityinfo/accessibilityinfo.d.ts","../../../node_modules/react-native/libraries/components/activityindicator/activityindicator.d.ts","../../../node_modules/react-native/libraries/components/clipboard/clipboard.d.ts","../../../node_modules/react-native/libraries/components/drawerandroid/drawerlayoutandroid.d.ts","../../../node_modules/react-native/libraries/eventemitter/nativeeventemitter.d.ts","../../../node_modules/react-native/libraries/components/keyboard/keyboard.d.ts","../../../node_modules/react-native/types/private/timermixin.d.ts","../../../node_modules/react-native/libraries/components/keyboard/keyboardavoidingview.d.ts","../../../node_modules/react-native/libraries/components/layoutconformance/layoutconformance.d.ts","../../../node_modules/react-native/libraries/components/pressable/pressable.d.ts","../../../node_modules/react-native/libraries/components/progressbarandroid/progressbarandroid.d.ts","../../../node_modules/react-native/libraries/components/safeareaview/safeareaview.d.ts","../../../node_modules/react-native/libraries/components/statusbar/statusbar.d.ts","../../../node_modules/react-native/libraries/components/switch/switch.d.ts","../../../node_modules/react-native/libraries/components/textinput/inputaccessoryview.d.ts","../../../node_modules/react-native/libraries/components/textinput/textinput.d.ts","../../../node_modules/react-native/libraries/components/toastandroid/toastandroid.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchablewithoutfeedback.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchablehighlight.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchableopacity.d.ts","../../../node_modules/react-native/libraries/components/touchable/touchablenativefeedback.d.ts","../../../node_modules/react-native/libraries/components/button.d.ts","../../../node_modules/react-native/libraries/core/registercallablemodule.d.ts","../../../node_modules/react-native/libraries/interaction/interactionmanager.d.ts","../../../node_modules/react-native/libraries/interaction/panresponder.d.ts","../../../node_modules/react-native/libraries/layoutanimation/layoutanimation.d.ts","../../../node_modules/react-native/libraries/linking/linking.d.ts","../../../node_modules/react-native/libraries/logbox/logbox.d.ts","../../../node_modules/react-native/libraries/modal/modal.d.ts","../../../node_modules/react-native/libraries/performance/systrace.d.ts","../../../node_modules/react-native/libraries/permissionsandroid/permissionsandroid.d.ts","../../../node_modules/react-native/libraries/pushnotificationios/pushnotificationios.d.ts","../../../node_modules/react-native/libraries/utilities/iperformancelogger.d.ts","../../../node_modules/react-native/libraries/reactnative/appregistry.d.ts","../../../node_modules/react-native/libraries/reactnative/i18nmanager.d.ts","../../../node_modules/react-native/libraries/reactnative/roottag.d.ts","../../../node_modules/react-native/libraries/reactnative/uimanager.d.ts","../../../node_modules/react-native/libraries/reactnative/requirenativecomponent.d.ts","../../../node_modules/react-native/libraries/settings/settings.d.ts","../../../node_modules/react-native/libraries/share/share.d.ts","../../../node_modules/react-native/libraries/stylesheet/platformcolorvaluetypesios.d.ts","../../../node_modules/react-native/libraries/stylesheet/platformcolorvaluetypes.d.ts","../../../node_modules/react-native/libraries/turbomodule/rctexport.d.ts","../../../node_modules/react-native/libraries/turbomodule/turbomoduleregistry.d.ts","../../../node_modules/react-native/libraries/types/codegentypesnamespace.d.ts","../../../node_modules/react-native/libraries/utilities/appearance.d.ts","../../../node_modules/react-native/libraries/utilities/backhandler.d.ts","../../../node_modules/react-native/src/private/devsupport/devmenu/devmenu.d.ts","../../../node_modules/react-native/libraries/utilities/devsettings.d.ts","../../../node_modules/react-native/libraries/utilities/dimensions.d.ts","../../../node_modules/react-native/libraries/utilities/pixelratio.d.ts","../../../node_modules/react-native/libraries/utilities/platform.d.ts","../../../node_modules/react-native/libraries/vibration/vibration.d.ts","../../../node_modules/react-native/types/public/deprecatedpropertiesalias.d.ts","../../../node_modules/react-native/libraries/utilities/codegennativecommands.d.ts","../../../node_modules/react-native/libraries/utilities/codegennativecomponent.d.ts","../../../node_modules/react-native/types/index.d.ts","../src/modulenotfounderror.ts","../src/nitromodulesproxy.ts","../src/turbomodule/nativenitromodules.ts","../src/nitromodules.ts","../src/constructor.ts","../src/sync.ts","../src/views/hybridview.ts","../src/views/gethostcomponent.ts","../src/index.ts","../src/__tests__/index.test.tsx","../src/turbomodule/nativenitromodules.web.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/jest-matcher-utils/node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts"],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","17edc026abf73c5c2dd508652d63f68ec4efd9d4856e3469890d27598209feb5",{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true},{"version":"ae37d6ccd1560b0203ab88d46987393adaaa78c919e51acf32fb82c86502e98c","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true},{"version":"d8670852241d4c6e03f2b89d67497a4bbefe29ecaa5a444e2c11a9b05e6fccc6","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true},{"version":"9d540251809289a05349b70ab5f4b7b99f922af66ab3c39ba56a475dcf95d5ff","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true},{"version":"0b11f3ca66aa33124202c80b70cd203219c3d4460cfc165e0707aa9ec710fc53","affectsGlobalScope":true},{"version":"6a3f5a0129cc80cf439ab71164334d649b47059a4f5afca90282362407d0c87f","affectsGlobalScope":true},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true},{"version":"15b98a533864d324e5f57cd3cfc0579b231df58c1c0f6063ea0fcb13c3c74ff9","affectsGlobalScope":true},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"a064b82533d211b1f97d1dc7c82e8d622d82d873a3dbb7e225f6e17814f40003","signature":"5d6084b922921ea84fce8617204272f5fb30ef8bedd91da18102c160fcf591aa"},{"version":"75c983a06ae990d5d05e9e6bcc5b20e52c1008f10a4d18af7561ce33ced01d23","signature":"90538ea42b1b8f3ac4ec7306a0a27ba7afee541df9684991e87202ffc9a6beb7"},{"version":"7cdf8681726690f80e41a5dcae289e664e78e0a0f81682d38b0f86ce9439f2aa","signature":"e5d121b23622c120b8e60e5efccd1436d9212b89f4cb180eb330f7d00cbe0e5d"},{"version":"3a909e8789a4f8b5377ef3fb8dc10d0c0a090c03f2e40aab599534727457475a","affectsGlobalScope":true},"fd412dd6372493eb8e3e95cae8687d35e4d34dde905a33e0ee47b74224cdd6ab","9d3b119c15e8eeb9a8fbeca47e0165ca7120704d90bf123b16ee5b612e2ecc9d","b8dd45aa6e099a5f564edcabfe8114096b096eb1ffaa343dd6f3fe73f1a6e85e","005319c82222e57934c7b211013eb6931829e46b2a61c5d9a1c3c25f8dc3ea90",{"version":"54ccb63049fb6d1d3635f3dc313ebfe3a8059f6b6afa8b9d670579534f6e25a6","affectsGlobalScope":true},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true},"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","d4d7d3f832882a4b2d611a7eaaa80c780c3342b5732090130fa9af4a40bd051e","232f660363b3b189f7be7822ed71e907195d1a85bc8d55d2b7ce3f09b2136938","e745388cfad9efb4e5a9a15a2c6b66d54094dd82f8d0c2551064e216f7b51526","d11cbcaf3a54861b1d348ba2adeeba67976ce0b33eef5ea6e4bddc023d2ac4b2","875bf8a711cac4083f65ecd3819cc21d32ada989fbf147f246bab13f7d37a738","8ebf448e9837fda1a368acbb575b0e28843d5b2a3fda04bce76248b64326ea49","91b9f6241fca7843985aa31157cfa08cc724c77d91145a4d834d27cdde099c05","c5dc49c81f9cb20dff16b7933b50e19ac3565430cf685bbe51bcbcdb760fc03f","ae8f02628bcacc7696bfb0e61b2c313f7d9865b074394ec4645365bd6e22a3a6","3dfa3a6f2a62259b56fa7bcebfbacf886848dfa037298be5bed07c7a0381ee4f","9e4211423757b493d6b2c2a64dc939ad48ed9a9d4b32290f9998cd34e6f4a827","1882680f8c88c5648d603408dd1943857ca831a815e33d3126be8368f7a69252","e7d56fa3c64c44b29fa11d840b1fe04f6d782fc2e341a1f01b987f5e59f34266","6f7da03b2573c9f6f47c45fa7ae877b9493e59afdc5e5bc0948f7008c1eb5601","e1835114d3449689778b4d41a5dde326cf82c5d13ddd902a9b71f5bf223390fb","16000ce3a50ff9513f802cef9ec1ce95d4b93ce251d01fd82d5c61a34e0e35bd","42bacb33cddecbcfe3e043ee1117ba848801749e44f947626765b3e0aec74b1c","1e6d04e747dd573697c51916a45f5e49dfff6bb776d81f7e2a8773ef7a6e30a0","cd2156bc8e4d54d52a2817d1b6f4629a5dd3173b1d8bb0fc893ee678d6a78ecd","60526d9010e8ccb2a76a59821061463464c3acd5bc7a50320df6d2e4e0d6e4f7","87c124043ef4840cc17907323b8dd0b0752d1cb5a740427caa1650a159a2b4d9","623fa4efc706bb9956d0ae94b13321c6617655bf8ebdb270c9792bb398f82e44","70533e87167cf88facbec8ef771f9ad98021d796239c1e6f7826e0f386a725be","79d6871ce0da76f4c865a58daa509d5c8a10545d510b804501daa5d0626e7028","9054417b5760061bc5fe31f9eee5dc9bf018339b0617d3c65dd1673c8e3c0f25","c6b68cd2e7838e91e05ede0a686815f521024281768f338644f6c0e0ad8e63cd","20c7a8cb00fda35bf50333488657c20fd36b9af9acb550f8410ef3e9bef51ef0","c94f70562ae60797cce564c3bebbaaf1752c327d5063d6ac152aa5ca1616c267","2aeb5fcdfc884b16015617d263fd8d1a8513f7efe23880be4e5f0bdb3794b37c","b561170fbe8d4292425e1dfa52406c8d97575681f7a5e420d11d9f72f7c29e38","5fe94f3f6411a0f6293f16fdc8e02ee61138941847ce91d6f6800c97fac22fcd","7f7c0ecc3eeeef905a3678e540947f4fbbc1a9c76075419dcc5fbfc3df59cb0b","df3303018d45c92be73fb4a282d5a242579f96235f5e0f8981983102caf5feca","92c10b9a2fcc6e4e4a781c22a97a0dac735e29b9059ecb6a7fa18d5b6916983b","8205e62a7310ac0513747f6d84175400680cff372559bc5fbe2df707194a295d","084d0df6805570b6dc6c8b49c3a71d5bdfe59606901e0026c63945b68d4b080a","9235e7b554d1c15ea04977b69cd123c79bd10f81704479ad5145e34d0205bf07","0f066f9654e700a9cf79c75553c934eb14296aa80583bd2b5d07e2d582a3f4ee","269c5d54104033b70331343bd931c9933852a882391ed6bd98c3d8b7d6465d22","a56b8577aaf471d9e60582065a8193269310e8cae48c1ce4111ed03216f5f715","486ae83cd51b813095f6716f06cc9b2cf480ad1d6c7f8ec59674d6c858cd2407","039f0a1f6d67514bbfea62ffbb0822007ce35ba180853ec9034431f60f63dbe6","fff527e2567a24dd634a30268f1aa8a220315fed9c513d70ee872e54f67f27f3","5dd0ff735b3f2e642c3f16bcfb3dc4ecebb679a70e43cfb19ab5fd84d8faaeed","d1d78d1ef0f21ac77cdc436d2a4d56592453a8a2e51af2040ec9a69a5d35e4de","bc55b91274e43f88030c9cfe2c4217fae57894c3c302173ab6e9743c29484e3d","79150b9d6ee93942e4e45dddf3ef823b7298b3dda0a894ac8235206cf2909587","77282216c61bcef9a700db98e142301d5a7d988d3076286029da63e415e98a42","0b68a4c4466479174ff37100f630b528764accfe68430b2b5d2f406bf9347623","75ff8ea2c0c632719c14f50849c1fc7aa2d49f42b08c54373688536b3f995ee7","85a915dbb768b89cb92f5e6c165d776bfebd065883c34fee4e0219c3ed321b47","83df2f39cb14971adea51d1c84e7d146a34e9b7f84ad118450a51bdc3138412c","b96364fcb0c9d521e7618346b00acf3fe16ccf9368404ceac1658edee7b6332c","bdb2b70c74908c92ec41d8dd8375a195cb3bb07523e4de642b2b2dfbde249ca6","7b329f4137a552073f504022acbf8cd90d49cc5e5529791bef508f76ff774854","f63bbbffcfc897d22f34cf19ae13405cd267b1783cd21ec47d8a2d02947c98c1","9da2649fb89af9bd08b2215621ad1cfda50f798d0acbd0d5fee2274ee940c827","df55b9be6ba19a6f77487e09dc7a94d7c9bf66094d35ea168dbd4bac42c46b8f","595125f3e088b883d104622ef10e6b7d5875ff6976bbe4d7dca090a3e2dca513","737fc8159cb99bf39a201c4d7097e92ad654927da76a1297ace7ffe358a2eda3","e0d7eed4ba363df3faadb8e617f95f9fc8adfbb00b87db7ade4a1098d6cf1e90","9670f806bd81af88e5f884098f8173e93c1704158c998fe268fd35d5c8f39113","de115595321ce012c456f512a799679bfc874f0ac0a4928a8429557bb25086aa","896e4b676a6f55ca66d40856b63ec2ff7f4f594d6350f8ae04eaee8876da0bc5","0524cab11ba9048d151d93cc666d3908fda329eec6b1642e9a936093e6d79f28","869073d7523e75f45bd65b2072865c60002d5e0cbd3d17831e999cf011312778","bc7b5906a6ce6c5744a640c314e020856be6c50a693e77dc12aff2d77b12ca76","56503e377bc1344f155e4e3115a772cb4e59350c0b8131e3e1fb2750ac491608","6b579287217ee1320ee1c6cfec5f6730f3a1f91daab000f7131558ee531b2bf8","2586bc43511ba0f0c4d8e35dacf25ed596dde8ec50b9598ecd80194af52f992f","a793636667598e739a52684033037a67dc2d9db37fab727623626ef19aa5abb9","b15d6238a86bc0fc2368da429249b96c260debc0cec3eb7b5f838ad32587c129","9a9fba3a20769b0a74923e7032997451b61c1bd371c519429b29019399040d74","4b10e2fe52cb61035e58df3f1fdd926dd0fe9cf1a2302f92916da324332fb4e0","d1092ae8d6017f359f4758115f588e089848cc8fb359f7ba045b1a1cf3668a49","ddae9195b0da7b25a585ef43365f4dc5204a746b155fbee71e6ee1a9193fb69f","32dbced998ce74c5e76ce87044d0b4071857576dde36b0c6ed1d5957ce9cf5b5","29befd9bb08a9ed1660fd7ac0bc2ad24a56da550b75b8334ac76c2cfceda974a","5bc29a9918feba88816b71e32960cf11243b77b76630e9e87cad961e5e1d31d0","0aba767f26742d337f50e46f702a95f83ce694101fa9b8455786928a5672bb9b","8db57d8da0ab49e839fb2d0874cfe456553077d387f423a7730c54ef5f494318","ecc1b8878c8033bde0204b85e26fe1af6847805427759e5723882c848a11e134","cfc9c32553ad3b5be38342bc8731397438a93531118e1a226a8c79ad255b4f0c","16e5b5b023c2a1119c1878a51714861c56255778de0a7fe378391876a15f7433","52e8612d284467b4417143ca8fe54d30145fdfc3815f5b5ea9b14b677f422be5","a090a8a3b0ef2cceeb089acf4df95df72e7d934215896afe264ff6f734d66d15","151f422f08c8ca67b77c5c39d49278b4df452ef409237c8219be109ae3cdae9d","412a06aa68e902bc67d69f381c06f8fd52497921c5746fabddadd44f624741f5","c469120d20804fda2fc836f4d7007dfd5c1cef70443868858cb524fd6e54def1","a32cc760d7c937dde05523434e3d7036dd6ca0ba8cb69b8f4f9557ffd80028b7",{"version":"445f7bb9b132395763d2fd00e88167a7b7d5c514728cfe462c17d044fe9f27d2","signature":"5423eff0aeb3d2eba041721efabde15d1c06709724dea6ae79b48559f86ed9b8","affectsGlobalScope":true},{"version":"489c7ab5618f45d5c1e6f9acf7ec6d980b656b659bbeffabe9024a46b9c5e616","signature":"18969c71a16d9d0ad05cf52dac1de4035dffe2de1b60b4ad7f143a3a694d1718"},{"version":"ee0cd52125f0a6012ad0f39327bf21ee6d8cf9f82036677b7b984b5866ee2156","signature":"c071991397ba57b75b07574dd2d11efe990aea9c59136423d149ce6c3f301eea","affectsGlobalScope":true},{"version":"725586b511f51bca1589b2476a469a9335db4cb1fe1b8fd0e94c189d7335fa98","signature":"edac49118a9eb46d842c8d24a567e31f0290ecdf8d44a5fc78da3112c2fdda54"},{"version":"c1a0e5e95335f3543144ae3343f67669817f88865ecddce2927152b5e0382d96","signature":"ae6311df7457b1396ee9675a75181a275b0d548a92d551642c851380e63221c6"},{"version":"9be7cfc079aa51a357a4aa6ec55dfde1b7a2f70dfffd5d4ec91dfdfda7d4e20b","signature":"9a69602e1cbf7afe7ea8fa14121f7572f2bf024948fb2f6ad6dfaab26adc4978"},{"version":"06ba2eeca898c4bd9a8e9f9b7ff8e0fc3b34cd79d791b7255f9d8b093eaedbcc","signature":"39a6002a361707e227b8d3b973aed942aa405103d5922b4d60282797840746a3"},{"version":"d3b6c41836df7023b254a52ca9c0524af6394820c4868503ab4afa2e681e3746","signature":"37e48fdbf94860217f01f1584faa8cee1052fae2a69f83d5caf281145ffbd6ad"},{"version":"3fe41e721814d3379e4d3e1ffac63eab2ba4db60aba30f49d7694334035312c0","signature":"57c1991ff5944cadbbd5ecd4ba872431d8d3f16ec8d1aa52e836985af3368d10"},{"version":"844f2848bfe787dc98769ea4edc2e30371a5bfb15ef9f3e6afd625e76f6dc5c8","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","affectsGlobalScope":true},{"version":"1c18d5790d0f5e15e84827cbf08982aef0339fb034b7971cff0535fc20a77879","signature":"68724f2c23cf02888072a2830ca5b336b6af536abce6094d3392e884c9293e52"},"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec",{"version":"f8db4fea512ab759b2223b90ecbbe7dae919c02f8ce95ec03f7fb1cf757cfbeb","affectsGlobalScope":true}],"root":[[72,74],[173,183]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"allowUnreachableCode":false,"allowUnusedLabels":false,"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":2,"module":99,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noImplicitUseStrict":false,"noStrictGenericChecks":false,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./typescript","rootDir":"../src","skipLibCheck":true,"strict":true,"target":99,"verbatimModuleSyntax":true},"fileIdsList":[[186],[98],[83,172],[188,191],[81,82],[184,190],[188],[185,189],[187],[106,107],[83,87,93,94,97,100,102,103,106],[104],[113],[76,86],[83,84,86,87,91,105,106],[83,106,135,136],[83,84,86,87,91,106],[76,120],[83,84,91,105,106,122],[83],[83,85,87,90,91,94,105,106],[83,84,86,91,106],[83,84,86,91],[83,84,85,87,89,91,92,105,106],[83,106],[83,105,106],[76,83,84,86,87,90,91,105,106,122],[83,85,87],[83,94,105,106,133],[83,84,89,106,133,135],[83,94,133],[83,84,85,87,89,90,105,106,122],[87],[83,85,87,88,89,90,105,106],[76],[112],[83,84,85,86,87,90,95,96,105,106],[87,88],[83,93,94,99,105,106],[83,93,99,101,105,106],[83,87,91,106],[83,105,148],[86],[83,86],[106],[105],[95,104,106],[83,84,86,87,90,105,106],[158],[76,172],[172],[120],[79],[75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171],[78],[73],[73,176],[72,73,176,177,178,179,180],[175],[73,74],[172,173,174],[172,179]],"referencedMap":[[187,1],[99,2],[98,3],[192,4],[83,5],[191,6],[189,7],[190,8],[188,9],[108,10],[104,11],[111,12],[114,13],[116,14],[117,15],[137,16],[119,17],[121,18],[123,19],[124,20],[125,21],[126,22],[92,22],[127,23],[93,24],[128,25],[129,15],[130,26],[131,27],[89,28],[134,29],[136,30],[135,31],[133,32],[94,23],[90,33],[91,34],[120,35],[112,35],[113,36],[97,37],[139,35],[140,38],[142,18],[100,39],[102,40],[144,41],[149,42],[101,20],[153,43],[151,20],[152,44],[155,45],[157,45],[156,45],[107,45],[106,46],[105,47],[103,48],[159,49],[160,50],[87,44],[161,13],[162,13],[171,51],[164,52],[165,35],[80,53],[172,54],[77,50],[78,55],[169,51],[88,33],[86,20],[74,56],[177,57],[181,58],[173,51],[176,59],[174,60],[175,61],[183,51],[180,62],[179,56]],"latestChangedDtsFile":"./typescript/turbomodule/NativeNitroModules.web.d.ts"},"version":"5.5.4"}
@@ -0,0 +1,27 @@
1
+ require "json"
2
+
3
+ # Gets the path of the react-native/package.json file.
4
+ def get_react_native_package_path()
5
+ pod_root = Pod::Config.instance.installation_root.to_s
6
+ return `cd "#{pod_root}" && node --print "require.resolve('react-native/package.json')"`.strip!
7
+ end
8
+
9
+ # Finds out whether react-native is available, or not.
10
+ # This works by checking if the react-native node package can be resolved.
11
+ def has_react_native()
12
+ react_native_package_path = get_react_native_package_path()
13
+ return File.exist?(react_native_package_path)
14
+ end
15
+
16
+ # Gets the minor react-native version (e.g 76 for 0.76.4)
17
+ def get_react_native_version()
18
+ react_native_package_path = get_react_native_package_path()
19
+ if !File.exist?(react_native_package_path)
20
+ raise "[NitroModules] Couldn't find react-native path! File '#{react_native_package_path}' doesn't exist!"
21
+ end
22
+ react_native_package = JSON.parse(File.read(react_native_package_path))
23
+ react_native_version = react_native_package['version']
24
+ react_native_minor_version = react_native_version.split('.')[1].to_i
25
+ Pod::UI.puts "[NitroModules] Found react-native #{react_native_version} (#{react_native_minor_version}) in #{File.dirname(react_native_package_path)}!"
26
+ return react_native_minor_version
27
+ end
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-nitro-modules",
3
- "version": "0.26.3",
3
+ "version": "0.26.4",
4
4
  "description": "Insanely fast native C++, Swift or Kotlin modules with a statically compiled binding layer to JSI.",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -73,8 +73,8 @@
73
73
  "@types/jest": "*",
74
74
  "@types/react": "*",
75
75
  "jest": "*",
76
- "react": "19.0.0",
77
- "react-native": "0.78.2",
76
+ "react": "19.1.0",
77
+ "react-native": "0.80.1",
78
78
  "react-native-builder-bob": "^0.37.0"
79
79
  },
80
80
  "peerDependencies": {
@@ -1,99 +0,0 @@
1
- //
2
- // AnyMapHolder.hpp
3
- // NitroModules
4
- //
5
- // Created by Marc Rousavy on 20.08.24.
6
- //
7
-
8
- #pragma once
9
-
10
- #include "AnyMap.hpp"
11
-
12
- namespace margelo::nitro {
13
-
14
- using TSharedMap = std::shared_ptr<AnyMap>;
15
-
16
- inline AnyValue create_AnyValue() {
17
- return AnyValue{std::monostate{}};
18
- }
19
- inline AnyValue create_AnyValue(bool boolValue) {
20
- return AnyValue{boolValue};
21
- }
22
- inline AnyValue create_AnyValue(double doubleValue) {
23
- return AnyValue{doubleValue};
24
- }
25
- inline AnyValue create_AnyValue(int64_t bigintValue) {
26
- return AnyValue{bigintValue};
27
- }
28
- inline AnyValue create_AnyValue(const std::string& stringValue) {
29
- return AnyValue{stringValue};
30
- }
31
- inline AnyValue create_AnyValue(const AnyArray& arrayValue) {
32
- return AnyValue{arrayValue};
33
- }
34
- inline AnyValue create_AnyValue(const AnyObject& objectValue) {
35
- return AnyValue{objectValue};
36
- }
37
-
38
- inline bool is_AnyValue_null(const AnyValue& value) {
39
- return std::holds_alternative<std::monostate>(value);
40
- }
41
- inline bool is_AnyValue_bool(const AnyValue& value) {
42
- return std::holds_alternative<bool>(value);
43
- }
44
- inline bool is_AnyValue_number(const AnyValue& value) {
45
- return std::holds_alternative<double>(value);
46
- }
47
- inline bool is_AnyValue_bigint(const AnyValue& value) {
48
- return std::holds_alternative<int64_t>(value);
49
- }
50
- inline bool is_AnyValue_string(const AnyValue& value) {
51
- return std::holds_alternative<std::string>(value);
52
- }
53
- inline bool is_AnyValue_AnyArray(const AnyValue& value) {
54
- return std::holds_alternative<AnyArray>(value);
55
- }
56
- inline bool is_AnyValue_AnyObject(const AnyValue& value) {
57
- return std::holds_alternative<AnyObject>(value);
58
- }
59
-
60
- inline std::monostate get_AnyValue_null(const AnyValue& value) {
61
- return std::get<std::monostate>(value);
62
- }
63
- inline bool get_AnyValue_bool(const AnyValue& value) {
64
- return std::get<bool>(value);
65
- }
66
- inline double get_AnyValue_number(const AnyValue& value) {
67
- return std::get<double>(value);
68
- }
69
- inline int64_t get_AnyValue_bigint(const AnyValue& value) {
70
- return std::get<int64_t>(value);
71
- }
72
- inline std::string get_AnyValue_string(const AnyValue& value) {
73
- return std::get<std::string>(value);
74
- }
75
- inline AnyArray get_AnyValue_AnyArray(const AnyValue& value) {
76
- return std::get<AnyArray>(value);
77
- }
78
- inline AnyObject get_AnyValue_AnyObject(const AnyValue& value) {
79
- return std::get<AnyObject>(value);
80
- }
81
-
82
- inline std::vector<std::string> getAnyObjectKeys(const AnyObject& object) {
83
- std::vector<std::string> keys;
84
- keys.reserve(object.size());
85
- for (const auto& entry : object) {
86
- keys.push_back(entry.first);
87
- }
88
- return keys;
89
- }
90
-
91
- inline AnyValue getAnyObjectValue(const AnyObject& object, const std::string& key) {
92
- auto item = object.find(key);
93
- if (item == object.end()) {
94
- throw std::runtime_error("Couldn't find " + key + " in AnyObject!");
95
- }
96
- return item->second;
97
- }
98
-
99
- } // namespace margelo::nitro