new build
This commit is contained in:
parent
2e55203b31
commit
b644adc7f8
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -4,6 +4,22 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libDynamicFonts.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libDynamicFonts.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libDynamicFonts.a</string>
|
<string>libDynamicFonts.a</string>
|
||||||
|
@ -23,22 +39,6 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libDynamicFonts.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libDynamicFonts.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -4,6 +4,22 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libNewsmemory.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libNewsmemory.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libNewsmemory.a</string>
|
<string>libNewsmemory.a</string>
|
||||||
|
@ -23,22 +39,6 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libNewsmemory.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libNewsmemory.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,18 @@
|
||||||
|
#ifdef __OBJC__
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#import "RCTTypeSafety/RCTConvertHelpers.h"
|
||||||
|
#import "RCTTypeSafety/RCTTypedModuleConstants.h"
|
||||||
|
|
||||||
|
FOUNDATION_EXPORT double RCTTypeSafetyVersionNumber;
|
||||||
|
FOUNDATION_EXPORT const unsigned char RCTTypeSafetyVersionString[];
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
module RCTTypeSafety {
|
||||||
|
umbrella header "RCTTypeSafety-umbrella.h"
|
||||||
|
|
||||||
|
export *
|
||||||
|
module * { export * }
|
||||||
|
}
|
|
@ -1,16 +1,17 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
*
|
*
|
||||||
* This source code is licensed under the MIT license found in the
|
* This source code is licensed under the MIT license found in the
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#import <optional>
|
||||||
|
|
||||||
#import <vector>
|
#import <vector>
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
#import <FBLazyVector/FBLazyVector.h>
|
#import <FBLazyVector/FBLazyVector.h>
|
||||||
#import <folly/Optional.h>
|
|
||||||
|
|
||||||
namespace facebook {
|
namespace facebook {
|
||||||
namespace react {
|
namespace react {
|
||||||
|
@ -35,22 +36,22 @@ NSArray *RCTConvertVecToArray(const ContainerT &vec)
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename ContainerT>
|
template<typename ContainerT>
|
||||||
NSArray *RCTConvertOptionalVecToArray(const folly::Optional<ContainerT> &vec, id (^convertor)(typename ContainerT::value_type element))
|
NSArray *RCTConvertOptionalVecToArray(const std::optional<ContainerT> &vec, id (^convertor)(typename ContainerT::value_type element))
|
||||||
{
|
{
|
||||||
return vec.hasValue() ? RCTConvertVecToArray(vec.value(), convertor) : nil;
|
return vec.has_value() ? RCTConvertVecToArray(vec.value(), convertor) : nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename ContainerT>
|
template<typename ContainerT>
|
||||||
NSArray *RCTConvertOptionalVecToArray(const folly::Optional<ContainerT> &vec)
|
NSArray *RCTConvertOptionalVecToArray(const std::optional<ContainerT> &vec)
|
||||||
{
|
{
|
||||||
return vec.hasValue() ? RCTConvertVecToArray(vec.value(), ^id(typename ContainerT::value_type element) { return element; }) : nil;
|
return vec.has_value() ? RCTConvertVecToArray(vec.value(), ^id(typename ContainerT::value_type element) { return element; }) : nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool RCTBridgingToBool(id value);
|
bool RCTBridgingToBool(id value);
|
||||||
folly::Optional<bool> RCTBridgingToOptionalBool(id value);
|
std::optional<bool> RCTBridgingToOptionalBool(id value);
|
||||||
NSString *RCTBridgingToString(id value);
|
NSString *RCTBridgingToString(id value);
|
||||||
NSString *RCTBridgingToOptionalString(id value);
|
NSString *RCTBridgingToOptionalString(id value);
|
||||||
folly::Optional<double> RCTBridgingToOptionalDouble(id value);
|
std::optional<double> RCTBridgingToOptionalDouble(id value);
|
||||||
double RCTBridgingToDouble(id value);
|
double RCTBridgingToDouble(id value);
|
||||||
NSArray *RCTBridgingToArray(id value);
|
NSArray *RCTBridgingToArray(id value);
|
||||||
|
|
||||||
|
@ -64,10 +65,10 @@ facebook::react::LazyVector<T> RCTBridgingToVec(id value, T (^ctor)(id element))
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
folly::Optional<facebook::react::LazyVector<T>> RCTBridgingToOptionalVec(id value, T (^ctor)(id element))
|
std::optional<facebook::react::LazyVector<T>> RCTBridgingToOptionalVec(id value, T (^ctor)(id element))
|
||||||
{
|
{
|
||||||
if (value == nil || value == (id)kCFNull) {
|
if (value == nil || value == (id)kCFNull) {
|
||||||
return folly::none;
|
return std::nullopt;
|
||||||
} else {
|
} else {
|
||||||
return RCTBridgingToVec(value, ctor);
|
return RCTBridgingToVec(value, ctor);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
*
|
*
|
||||||
* This source code is licensed under the MIT license found in the
|
* This source code is licensed under the MIT license found in the
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
|
|
Binary file not shown.
|
@ -0,0 +1,18 @@
|
||||||
|
#ifdef __OBJC__
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#else
|
||||||
|
#ifndef FOUNDATION_EXPORT
|
||||||
|
#if defined(__cplusplus)
|
||||||
|
#define FOUNDATION_EXPORT extern "C"
|
||||||
|
#else
|
||||||
|
#define FOUNDATION_EXPORT extern
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#import "RCTTypeSafety/RCTConvertHelpers.h"
|
||||||
|
#import "RCTTypeSafety/RCTTypedModuleConstants.h"
|
||||||
|
|
||||||
|
FOUNDATION_EXPORT double RCTTypeSafetyVersionNumber;
|
||||||
|
FOUNDATION_EXPORT const unsigned char RCTTypeSafetyVersionString[];
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
module RCTTypeSafety {
|
||||||
|
umbrella header "RCTTypeSafety-umbrella.h"
|
||||||
|
|
||||||
|
export *
|
||||||
|
module * { export * }
|
||||||
|
}
|
|
@ -1,16 +1,17 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
*
|
*
|
||||||
* This source code is licensed under the MIT license found in the
|
* This source code is licensed under the MIT license found in the
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#import <optional>
|
||||||
|
|
||||||
#import <vector>
|
#import <vector>
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
#import <FBLazyVector/FBLazyVector.h>
|
#import <FBLazyVector/FBLazyVector.h>
|
||||||
#import <folly/Optional.h>
|
|
||||||
|
|
||||||
namespace facebook {
|
namespace facebook {
|
||||||
namespace react {
|
namespace react {
|
||||||
|
@ -35,22 +36,22 @@ NSArray *RCTConvertVecToArray(const ContainerT &vec)
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename ContainerT>
|
template<typename ContainerT>
|
||||||
NSArray *RCTConvertOptionalVecToArray(const folly::Optional<ContainerT> &vec, id (^convertor)(typename ContainerT::value_type element))
|
NSArray *RCTConvertOptionalVecToArray(const std::optional<ContainerT> &vec, id (^convertor)(typename ContainerT::value_type element))
|
||||||
{
|
{
|
||||||
return vec.hasValue() ? RCTConvertVecToArray(vec.value(), convertor) : nil;
|
return vec.has_value() ? RCTConvertVecToArray(vec.value(), convertor) : nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename ContainerT>
|
template<typename ContainerT>
|
||||||
NSArray *RCTConvertOptionalVecToArray(const folly::Optional<ContainerT> &vec)
|
NSArray *RCTConvertOptionalVecToArray(const std::optional<ContainerT> &vec)
|
||||||
{
|
{
|
||||||
return vec.hasValue() ? RCTConvertVecToArray(vec.value(), ^id(typename ContainerT::value_type element) { return element; }) : nil;
|
return vec.has_value() ? RCTConvertVecToArray(vec.value(), ^id(typename ContainerT::value_type element) { return element; }) : nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool RCTBridgingToBool(id value);
|
bool RCTBridgingToBool(id value);
|
||||||
folly::Optional<bool> RCTBridgingToOptionalBool(id value);
|
std::optional<bool> RCTBridgingToOptionalBool(id value);
|
||||||
NSString *RCTBridgingToString(id value);
|
NSString *RCTBridgingToString(id value);
|
||||||
NSString *RCTBridgingToOptionalString(id value);
|
NSString *RCTBridgingToOptionalString(id value);
|
||||||
folly::Optional<double> RCTBridgingToOptionalDouble(id value);
|
std::optional<double> RCTBridgingToOptionalDouble(id value);
|
||||||
double RCTBridgingToDouble(id value);
|
double RCTBridgingToDouble(id value);
|
||||||
NSArray *RCTBridgingToArray(id value);
|
NSArray *RCTBridgingToArray(id value);
|
||||||
|
|
||||||
|
@ -64,10 +65,10 @@ facebook::react::LazyVector<T> RCTBridgingToVec(id value, T (^ctor)(id element))
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
folly::Optional<facebook::react::LazyVector<T>> RCTBridgingToOptionalVec(id value, T (^ctor)(id element))
|
std::optional<facebook::react::LazyVector<T>> RCTBridgingToOptionalVec(id value, T (^ctor)(id element))
|
||||||
{
|
{
|
||||||
if (value == nil || value == (id)kCFNull) {
|
if (value == nil || value == (id)kCFNull) {
|
||||||
return folly::none;
|
return std::nullopt;
|
||||||
} else {
|
} else {
|
||||||
return RCTBridgingToVec(value, ctor);
|
return RCTBridgingToVec(value, ctor);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||||
*
|
*
|
||||||
* This source code is licensed under the MIT license found in the
|
* This source code is licensed under the MIT license found in the
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,8 +0,0 @@
|
||||||
#import <React/UIView+React.h>
|
|
||||||
#import <React/RCTView.h>
|
|
||||||
|
|
||||||
@interface CMIFColorMatrixImageFilter : RCTView
|
|
||||||
|
|
||||||
@property (nonatomic, strong) NSArray<NSNumber *> *matrix;
|
|
||||||
|
|
||||||
@end
|
|
Binary file not shown.
|
@ -1,8 +0,0 @@
|
||||||
#import <React/UIView+React.h>
|
|
||||||
#import <React/RCTView.h>
|
|
||||||
|
|
||||||
@interface CMIFColorMatrixImageFilter : RCTView
|
|
||||||
|
|
||||||
@property (nonatomic, strong) NSArray<NSNumber *> *matrix;
|
|
||||||
|
|
||||||
@end
|
|
Binary file not shown.
|
@ -4,22 +4,6 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libRNDateTimePicker.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libRNDateTimePicker.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libRNDateTimePicker.a</string>
|
<string>libRNDateTimePicker.a</string>
|
||||||
|
@ -39,6 +23,22 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libRNDateTimePicker.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libRNDateTimePicker.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -4,6 +4,22 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libRNDefaultPreference.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libRNDefaultPreference.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libRNDefaultPreference.a</string>
|
<string>libRNDefaultPreference.a</string>
|
||||||
|
@ -23,22 +39,6 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libRNDefaultPreference.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libRNDefaultPreference.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -4,22 +4,6 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libRNDeviceInfo.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libRNDeviceInfo.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libRNDeviceInfo.a</string>
|
<string>libRNDeviceInfo.a</string>
|
||||||
|
@ -39,6 +23,22 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libRNDeviceInfo.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libRNDeviceInfo.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -4,22 +4,6 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libRNFastImage.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libRNFastImage.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libRNFastImage.a</string>
|
<string>libRNFastImage.a</string>
|
||||||
|
@ -39,6 +23,22 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libRNFastImage.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libRNFastImage.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -4,22 +4,6 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libRNOpenAppSettings.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libRNOpenAppSettings.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libRNOpenAppSettings.a</string>
|
<string>libRNOpenAppSettings.a</string>
|
||||||
|
@ -39,6 +23,22 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libRNOpenAppSettings.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libRNOpenAppSettings.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -4,22 +4,6 @@
|
||||||
<dict>
|
<dict>
|
||||||
<key>AvailableLibraries</key>
|
<key>AvailableLibraries</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
|
||||||
<key>BinaryPath</key>
|
|
||||||
<string>libRNReanimated.a</string>
|
|
||||||
<key>HeadersPath</key>
|
|
||||||
<string>Headers</string>
|
|
||||||
<key>LibraryIdentifier</key>
|
|
||||||
<string>ios-arm64</string>
|
|
||||||
<key>LibraryPath</key>
|
|
||||||
<string>libRNReanimated.a</string>
|
|
||||||
<key>SupportedArchitectures</key>
|
|
||||||
<array>
|
|
||||||
<string>arm64</string>
|
|
||||||
</array>
|
|
||||||
<key>SupportedPlatform</key>
|
|
||||||
<string>ios</string>
|
|
||||||
</dict>
|
|
||||||
<dict>
|
<dict>
|
||||||
<key>BinaryPath</key>
|
<key>BinaryPath</key>
|
||||||
<string>libRNReanimated.a</string>
|
<string>libRNReanimated.a</string>
|
||||||
|
@ -39,6 +23,22 @@
|
||||||
<key>SupportedPlatformVariant</key>
|
<key>SupportedPlatformVariant</key>
|
||||||
<string>simulator</string>
|
<string>simulator</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>BinaryPath</key>
|
||||||
|
<string>libRNReanimated.a</string>
|
||||||
|
<key>HeadersPath</key>
|
||||||
|
<string>Headers</string>
|
||||||
|
<key>LibraryIdentifier</key>
|
||||||
|
<string>ios-arm64</string>
|
||||||
|
<key>LibraryPath</key>
|
||||||
|
<string>libRNReanimated.a</string>
|
||||||
|
<key>SupportedArchitectures</key>
|
||||||
|
<array>
|
||||||
|
<string>arm64</string>
|
||||||
|
</array>
|
||||||
|
<key>SupportedPlatform</key>
|
||||||
|
<string>ios</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XFWK</string>
|
<string>XFWK</string>
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <unordered_set>
|
||||||
|
|
||||||
|
#include "PlatformDepMethodsHolder.h"
|
||||||
|
#include "RuntimeManager.h"
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
enum SensorType {
|
||||||
|
ACCELEROMETER = 1,
|
||||||
|
GYROSCOPE = 2,
|
||||||
|
GRAVITY = 3,
|
||||||
|
MAGNETIC_FIELD = 4,
|
||||||
|
ROTATION_VECTOR = 5,
|
||||||
|
};
|
||||||
|
|
||||||
|
class AnimatedSensorModule {
|
||||||
|
std::unordered_set<int> sensorsIds_;
|
||||||
|
RegisterSensorFunction platformRegisterSensorFunction_;
|
||||||
|
UnregisterSensorFunction platformUnregisterSensorFunction_;
|
||||||
|
RuntimeManager *runtimeManager_;
|
||||||
|
|
||||||
|
public:
|
||||||
|
AnimatedSensorModule(
|
||||||
|
const PlatformDepMethodsHolder &platformDepMethodsHolder,
|
||||||
|
RuntimeManager *runtimeManager);
|
||||||
|
~AnimatedSensorModule();
|
||||||
|
|
||||||
|
jsi::Value registerSensor(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &sensorType,
|
||||||
|
const jsi::Value &interval,
|
||||||
|
const jsi::Value &sensorDataContainer);
|
||||||
|
void unregisterSensor(const jsi::Value &sensorId);
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,32 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include "Scheduler.h"
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
struct ErrorWrapper {
|
||||||
|
std::string message = "";
|
||||||
|
bool handled = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
class ErrorHandler {
|
||||||
|
public:
|
||||||
|
bool raise() {
|
||||||
|
if (getError()->handled) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
this->getScheduler()->scheduleOnUI([this]() mutable { this->raiseSpec(); });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
virtual std::shared_ptr<Scheduler> getScheduler() = 0;
|
||||||
|
virtual std::shared_ptr<ErrorWrapper> getError() = 0;
|
||||||
|
virtual void setError(std::string message) = 0;
|
||||||
|
virtual ~ErrorHandler() {}
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual void raiseSpec() = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,37 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <map>
|
||||||
|
#include <memory>
|
||||||
|
#include <mutex>
|
||||||
|
#include <set>
|
||||||
|
#include <string>
|
||||||
|
#include <unordered_map>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class WorkletEventHandler;
|
||||||
|
|
||||||
|
class EventHandlerRegistry {
|
||||||
|
std::map<
|
||||||
|
std::string,
|
||||||
|
std::unordered_map<unsigned long, std::shared_ptr<WorkletEventHandler>>>
|
||||||
|
eventMappings;
|
||||||
|
std::map<unsigned long, std::shared_ptr<WorkletEventHandler>> eventHandlers;
|
||||||
|
std::mutex instanceMutex;
|
||||||
|
|
||||||
|
public:
|
||||||
|
void registerEventHandler(std::shared_ptr<WorkletEventHandler> eventHandler);
|
||||||
|
void unregisterEventHandler(unsigned long id);
|
||||||
|
|
||||||
|
void processEvent(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
std::string eventName,
|
||||||
|
std::string eventPayload);
|
||||||
|
bool isAnyHandlerWaitingForEvent(std::string eventName);
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,19 @@
|
||||||
|
#pragma once
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class FeaturesConfig {
|
||||||
|
public:
|
||||||
|
static inline bool isLayoutAnimationEnabled() {
|
||||||
|
return _isLayoutAnimationEnabled;
|
||||||
|
}
|
||||||
|
static inline void setLayoutAnimationEnabled(bool isLayoutAnimationEnabled) {
|
||||||
|
_isLayoutAnimationEnabled = isLayoutAnimationEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
static bool _isLayoutAnimationEnabled;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,36 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <unordered_map>
|
||||||
|
#include <vector>
|
||||||
|
#include "RuntimeManager.h"
|
||||||
|
#include "SharedParent.h"
|
||||||
|
#include "WorkletsCache.h"
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class FrozenObject : public jsi::HostObject {
|
||||||
|
friend WorkletsCache;
|
||||||
|
friend void extractMutables(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
std::shared_ptr<ShareableValue> sv,
|
||||||
|
std::vector<std::shared_ptr<MutableValue>> &res);
|
||||||
|
|
||||||
|
private:
|
||||||
|
std::unordered_map<std::string, std::shared_ptr<ShareableValue>> map;
|
||||||
|
std::vector<std::string> namesOrder;
|
||||||
|
|
||||||
|
public:
|
||||||
|
FrozenObject(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Object &object,
|
||||||
|
RuntimeManager *runtimeManager);
|
||||||
|
jsi::Object shallowClone(jsi::Runtime &rt);
|
||||||
|
bool containsHostFunction = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,28 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
struct HostFunctionHandler : jsi::HostObject {
|
||||||
|
std::shared_ptr<jsi::Function> pureFunction;
|
||||||
|
std::string functionName;
|
||||||
|
jsi::Runtime *hostRuntime;
|
||||||
|
jsi::HostObject a;
|
||||||
|
|
||||||
|
HostFunctionHandler(std::shared_ptr<jsi::Function> f, jsi::Runtime &rt) {
|
||||||
|
pureFunction = f;
|
||||||
|
functionName = f->getProperty(rt, "name").asString(rt).utf8(rt);
|
||||||
|
hostRuntime = &rt;
|
||||||
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<jsi::Function> getPureFunction() {
|
||||||
|
return pureFunction;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,37 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <mutex>
|
||||||
|
#include <unordered_map>
|
||||||
|
#include <vector>
|
||||||
|
#include "Scheduler.h"
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class RuntimeManager;
|
||||||
|
|
||||||
|
struct StaticStoreUser {
|
||||||
|
std::atomic<int> ctr;
|
||||||
|
std::unordered_map<int, std::vector<std::shared_ptr<jsi::Value>>> store;
|
||||||
|
std::recursive_mutex storeMutex;
|
||||||
|
};
|
||||||
|
|
||||||
|
class StoreUser {
|
||||||
|
int identifier = 0;
|
||||||
|
std::weak_ptr<Scheduler> scheduler;
|
||||||
|
std::shared_ptr<StaticStoreUser> storeUserData;
|
||||||
|
|
||||||
|
public:
|
||||||
|
StoreUser(std::shared_ptr<Scheduler> s, const RuntimeManager &runtimeManager);
|
||||||
|
|
||||||
|
std::weak_ptr<jsi::Value> getWeakRef(jsi::Runtime &rt);
|
||||||
|
void removeRefs();
|
||||||
|
|
||||||
|
virtual ~StoreUser();
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,32 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <functional>
|
||||||
|
#include <map>
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
class MutableValue;
|
||||||
|
|
||||||
|
class LayoutAnimationsProxy {
|
||||||
|
public:
|
||||||
|
LayoutAnimationsProxy(
|
||||||
|
std::function<void(int, jsi::Object newProps)> _notifyAboutProgress,
|
||||||
|
std::function<void(int, bool)> _notifyAboutEnd);
|
||||||
|
|
||||||
|
void
|
||||||
|
startObserving(int tag, std::shared_ptr<MutableValue> sv, jsi::Runtime &rt);
|
||||||
|
void stopObserving(int tag, bool finished);
|
||||||
|
void notifyAboutCancellation(int tag);
|
||||||
|
|
||||||
|
private:
|
||||||
|
std::function<void(int, jsi::Object newProps)> notifyAboutProgress;
|
||||||
|
std::function<void(int, bool)> notifyAboutEnd;
|
||||||
|
std::map<int, std::shared_ptr<MutableValue>> observedValues;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,22 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
#include "./LoggerInterface.h"
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class Logger {
|
||||||
|
public:
|
||||||
|
template <typename T>
|
||||||
|
static void log(T value) {
|
||||||
|
if (instance == nullptr) {
|
||||||
|
throw std::runtime_error("no logger specified");
|
||||||
|
}
|
||||||
|
instance->log(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
static std::unique_ptr<LoggerInterface> instance;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,14 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class LoggerInterface {
|
||||||
|
public:
|
||||||
|
virtual void log(const char *str) = 0;
|
||||||
|
virtual void log(double d) = 0;
|
||||||
|
virtual void log(int i) = 0;
|
||||||
|
virtual void log(bool b) = 0;
|
||||||
|
virtual ~LoggerInterface() {}
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,51 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <vector>
|
||||||
|
#include "NativeReanimatedModule.h"
|
||||||
|
#include "ShareableValue.h"
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class MapperRegistry;
|
||||||
|
|
||||||
|
struct ViewDescriptor {
|
||||||
|
int tag;
|
||||||
|
jsi::Value name;
|
||||||
|
};
|
||||||
|
|
||||||
|
class Mapper : public std::enable_shared_from_this<Mapper> {
|
||||||
|
friend MapperRegistry;
|
||||||
|
|
||||||
|
private:
|
||||||
|
unsigned long id;
|
||||||
|
NativeReanimatedModule *module;
|
||||||
|
std::shared_ptr<jsi::Function> mapper;
|
||||||
|
std::vector<std::shared_ptr<MutableValue>> inputs;
|
||||||
|
std::vector<std::shared_ptr<MutableValue>> outputs;
|
||||||
|
bool dirty = true;
|
||||||
|
std::shared_ptr<jsi::Function> userUpdater;
|
||||||
|
UpdaterFunction *updateProps;
|
||||||
|
int optimalizationLvl = 0;
|
||||||
|
std::shared_ptr<ShareableValue> viewDescriptors;
|
||||||
|
|
||||||
|
public:
|
||||||
|
Mapper(
|
||||||
|
NativeReanimatedModule *module,
|
||||||
|
unsigned long id,
|
||||||
|
std::shared_ptr<jsi::Function> mapper,
|
||||||
|
std::vector<std::shared_ptr<MutableValue>> inputs,
|
||||||
|
std::vector<std::shared_ptr<MutableValue>> outputs);
|
||||||
|
void execute(jsi::Runtime &rt);
|
||||||
|
void enableFastMode(
|
||||||
|
const int optimalizationLvl,
|
||||||
|
const std::shared_ptr<ShareableValue> &updater,
|
||||||
|
const std::shared_ptr<ShareableValue> &jsViewDescriptors);
|
||||||
|
virtual ~Mapper();
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,29 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <unordered_map>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class Mapper;
|
||||||
|
|
||||||
|
class MapperRegistry {
|
||||||
|
std::unordered_map<unsigned long, std::shared_ptr<Mapper>> mappers;
|
||||||
|
std::vector<std::shared_ptr<Mapper>> sortedMappers;
|
||||||
|
void updateOrder();
|
||||||
|
bool updatedSinceLastExecute = false;
|
||||||
|
|
||||||
|
public:
|
||||||
|
void startMapper(std::shared_ptr<Mapper> mapper);
|
||||||
|
void stopMapper(unsigned long id);
|
||||||
|
|
||||||
|
void execute(jsi::Runtime &rt);
|
||||||
|
|
||||||
|
bool needRunOnRender();
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,54 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <map>
|
||||||
|
#include <memory>
|
||||||
|
#include <mutex>
|
||||||
|
#include <vector>
|
||||||
|
#include "JSIStoreValueUser.h"
|
||||||
|
#include "LayoutAnimationsProxy.h"
|
||||||
|
#include "MutableValueSetterProxy.h"
|
||||||
|
#include "RuntimeManager.h"
|
||||||
|
#include "SharedParent.h"
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class MutableValue : public jsi::HostObject,
|
||||||
|
public std::enable_shared_from_this<MutableValue>,
|
||||||
|
public StoreUser {
|
||||||
|
private:
|
||||||
|
friend MutableValueSetterProxy;
|
||||||
|
friend LayoutAnimationsProxy;
|
||||||
|
|
||||||
|
private:
|
||||||
|
RuntimeManager *runtimeManager;
|
||||||
|
std::mutex readWriteMutex;
|
||||||
|
std::shared_ptr<ShareableValue> value;
|
||||||
|
std::weak_ptr<jsi::Value> animation;
|
||||||
|
std::map<unsigned long, std::function<void()>> listeners;
|
||||||
|
|
||||||
|
public:
|
||||||
|
void setValue(jsi::Runtime &rt, const jsi::Value &newValue);
|
||||||
|
jsi::Value getValue(jsi::Runtime &rt);
|
||||||
|
|
||||||
|
public:
|
||||||
|
MutableValue(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &initial,
|
||||||
|
RuntimeManager *runtimeManager,
|
||||||
|
std::shared_ptr<Scheduler> s);
|
||||||
|
|
||||||
|
public:
|
||||||
|
void
|
||||||
|
set(jsi::Runtime &rt, const jsi::PropNameID &name, const jsi::Value &value);
|
||||||
|
jsi::Value get(jsi::Runtime &rt, const jsi::PropNameID &name);
|
||||||
|
std::vector<jsi::PropNameID> getPropertyNames(jsi::Runtime &rt);
|
||||||
|
unsigned long addListener(
|
||||||
|
unsigned long listenerId,
|
||||||
|
std::function<void()> listener);
|
||||||
|
void removeListener(unsigned long listenerId);
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,25 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <utility>
|
||||||
|
#include "SharedParent.h"
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class MutableValueSetterProxy : public jsi::HostObject {
|
||||||
|
private:
|
||||||
|
friend MutableValue;
|
||||||
|
std::shared_ptr<MutableValue> mutableValue;
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit MutableValueSetterProxy(std::shared_ptr<MutableValue> mutableValue)
|
||||||
|
: mutableValue(std::move(mutableValue)) {}
|
||||||
|
void
|
||||||
|
set(jsi::Runtime &rt, const jsi::PropNameID &name, const jsi::Value &value);
|
||||||
|
jsi::Value get(jsi::Runtime &rt, const jsi::PropNameID &name);
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,24 @@
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <RNReanimated/RNGestureHandlerStateManager.h>
|
||||||
|
#import <React/RCTUIManager.h>
|
||||||
|
#include <string>
|
||||||
|
#include <utility>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
std::vector<std::pair<std::string, double>> measure(
|
||||||
|
int viewTag,
|
||||||
|
RCTUIManager *uiManager);
|
||||||
|
void scrollTo(
|
||||||
|
int scrollViewTag,
|
||||||
|
RCTUIManager *uiManager,
|
||||||
|
double x,
|
||||||
|
double y,
|
||||||
|
bool animated);
|
||||||
|
void setGestureState(
|
||||||
|
id<RNGestureHandlerStateManager> gestureHandlerStateManager,
|
||||||
|
int handlerTag,
|
||||||
|
int newState);
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,15 @@
|
||||||
|
#if __cplusplus
|
||||||
|
|
||||||
|
#import <RNReanimated/NativeReanimatedModule.h>
|
||||||
|
#import <React/RCTEventDispatcher.h>
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
std::shared_ptr<reanimated::NativeReanimatedModule> createReanimatedModule(
|
||||||
|
RCTBridge *bridge,
|
||||||
|
std::shared_ptr<facebook::react::CallInvoker> jsInvoker);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1,121 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
#include "AnimatedSensorModule.h"
|
||||||
|
#include "ErrorHandler.h"
|
||||||
|
#include "LayoutAnimationsProxy.h"
|
||||||
|
#include "NativeReanimatedModuleSpec.h"
|
||||||
|
#include "PlatformDepMethodsHolder.h"
|
||||||
|
#include "RuntimeDecorator.h"
|
||||||
|
#include "RuntimeManager.h"
|
||||||
|
#include "Scheduler.h"
|
||||||
|
#include "SingleInstanceChecker.h"
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
using FrameCallback = std::function<void(double)>;
|
||||||
|
|
||||||
|
class ShareableValue;
|
||||||
|
class MutableValue;
|
||||||
|
class MapperRegistry;
|
||||||
|
class EventHandlerRegistry;
|
||||||
|
|
||||||
|
class NativeReanimatedModule : public NativeReanimatedModuleSpec,
|
||||||
|
public RuntimeManager {
|
||||||
|
friend ShareableValue;
|
||||||
|
friend MutableValue;
|
||||||
|
|
||||||
|
public:
|
||||||
|
NativeReanimatedModule(
|
||||||
|
std::shared_ptr<CallInvoker> jsInvoker,
|
||||||
|
std::shared_ptr<Scheduler> scheduler,
|
||||||
|
std::shared_ptr<jsi::Runtime> rt,
|
||||||
|
std::shared_ptr<ErrorHandler> errorHandler,
|
||||||
|
std::function<jsi::Value(jsi::Runtime &, const int, const jsi::String &)>
|
||||||
|
propObtainer,
|
||||||
|
std::shared_ptr<LayoutAnimationsProxy> layoutAnimationsProxy,
|
||||||
|
PlatformDepMethodsHolder platformDepMethodsHolder);
|
||||||
|
|
||||||
|
void installCoreFunctions(jsi::Runtime &rt, const jsi::Value &valueSetter)
|
||||||
|
override;
|
||||||
|
|
||||||
|
jsi::Value makeShareable(jsi::Runtime &rt, const jsi::Value &value) override;
|
||||||
|
jsi::Value makeMutable(jsi::Runtime &rt, const jsi::Value &value) override;
|
||||||
|
jsi::Value makeRemote(jsi::Runtime &rt, const jsi::Value &value) override;
|
||||||
|
|
||||||
|
jsi::Value startMapper(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &worklet,
|
||||||
|
const jsi::Value &inputs,
|
||||||
|
const jsi::Value &outputs,
|
||||||
|
const jsi::Value &updater,
|
||||||
|
const jsi::Value &viewDescriptors) override;
|
||||||
|
void stopMapper(jsi::Runtime &rt, const jsi::Value &mapperId) override;
|
||||||
|
|
||||||
|
jsi::Value registerEventHandler(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &eventHash,
|
||||||
|
const jsi::Value &worklet) override;
|
||||||
|
void unregisterEventHandler(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value ®istrationId) override;
|
||||||
|
|
||||||
|
jsi::Value getViewProp(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &viewTag,
|
||||||
|
const jsi::Value &propName,
|
||||||
|
const jsi::Value &callback) override;
|
||||||
|
|
||||||
|
jsi::Value enableLayoutAnimations(jsi::Runtime &rt, const jsi::Value &config)
|
||||||
|
override;
|
||||||
|
jsi::Value configureProps(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &uiProps,
|
||||||
|
const jsi::Value &nativeProps) override;
|
||||||
|
|
||||||
|
void onRender(double timestampMs);
|
||||||
|
void onEvent(std::string eventName, std::string eventAsString);
|
||||||
|
bool isAnyHandlerWaitingForEvent(std::string eventName);
|
||||||
|
|
||||||
|
void maybeRequestRender();
|
||||||
|
UpdaterFunction updaterFunction;
|
||||||
|
|
||||||
|
jsi::Value registerSensor(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &sensorType,
|
||||||
|
const jsi::Value &interval,
|
||||||
|
const jsi::Value &sensorDataContainer) override;
|
||||||
|
void unregisterSensor(jsi::Runtime &rt, const jsi::Value &sensorId) override;
|
||||||
|
jsi::Value subscribeForKeyboardEvents(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &keyboardEventContainer) override;
|
||||||
|
void unsubscribeFromKeyboardEvents(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &listenerId) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
std::shared_ptr<MapperRegistry> mapperRegistry;
|
||||||
|
std::shared_ptr<EventHandlerRegistry> eventHandlerRegistry;
|
||||||
|
std::function<void(FrameCallback &, jsi::Runtime &)> requestRender;
|
||||||
|
std::shared_ptr<jsi::Value> dummyEvent;
|
||||||
|
std::vector<FrameCallback> frameCallbacks;
|
||||||
|
bool renderRequested = false;
|
||||||
|
std::function<jsi::Value(jsi::Runtime &, const int, const jsi::String &)>
|
||||||
|
propObtainer;
|
||||||
|
std::function<void(double)> onRenderCallback;
|
||||||
|
std::shared_ptr<LayoutAnimationsProxy> layoutAnimationsProxy;
|
||||||
|
AnimatedSensorModule animatedSensorModule;
|
||||||
|
ConfigurePropsFunction configurePropsPlatformFunction;
|
||||||
|
KeyboardEventSubscribeFunction subscribeForKeyboardEventsFunction;
|
||||||
|
KeyboardEventUnsubscribeFunction unsubscribeFromKeyboardEventsFunction;
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
|
SingleInstanceChecker<NativeReanimatedModule> singleInstanceChecker_;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,90 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
#ifdef ANDROID
|
||||||
|
#include "TurboModule.h"
|
||||||
|
#else
|
||||||
|
#include <ReactCommon/TurboModule.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <ReactCommon/CallInvoker.h>
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
using namespace react;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class JSI_EXPORT NativeReanimatedModuleSpec : public TurboModule {
|
||||||
|
protected:
|
||||||
|
explicit NativeReanimatedModuleSpec(std::shared_ptr<CallInvoker> jsInvoker);
|
||||||
|
|
||||||
|
public:
|
||||||
|
virtual void installCoreFunctions(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &valueSetter) = 0;
|
||||||
|
|
||||||
|
// SharedValue
|
||||||
|
virtual jsi::Value makeShareable(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &value) = 0;
|
||||||
|
virtual jsi::Value makeMutable(jsi::Runtime &rt, const jsi::Value &value) = 0;
|
||||||
|
virtual jsi::Value makeRemote(jsi::Runtime &rt, const jsi::Value &value) = 0;
|
||||||
|
|
||||||
|
// mappers
|
||||||
|
virtual jsi::Value startMapper(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &worklet,
|
||||||
|
const jsi::Value &inputs,
|
||||||
|
const jsi::Value &outputs,
|
||||||
|
const jsi::Value &updater,
|
||||||
|
const jsi::Value &viewDescriptors) = 0;
|
||||||
|
virtual void stopMapper(jsi::Runtime &rt, const jsi::Value &mapperId) = 0;
|
||||||
|
|
||||||
|
// events
|
||||||
|
virtual jsi::Value registerEventHandler(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &eventHash,
|
||||||
|
const jsi::Value &worklet) = 0;
|
||||||
|
virtual void unregisterEventHandler(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value ®istrationId) = 0;
|
||||||
|
|
||||||
|
// views
|
||||||
|
virtual jsi::Value getViewProp(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &viewTag,
|
||||||
|
const jsi::Value &propName,
|
||||||
|
const jsi::Value &callback) = 0;
|
||||||
|
|
||||||
|
// sensors
|
||||||
|
virtual jsi::Value registerSensor(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &sensorType,
|
||||||
|
const jsi::Value &interval,
|
||||||
|
const jsi::Value &sensorDataContainer) = 0;
|
||||||
|
virtual void unregisterSensor(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &sensorId) = 0;
|
||||||
|
|
||||||
|
// keyboard
|
||||||
|
virtual jsi::Value subscribeForKeyboardEvents(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &keyboardEventContainer) = 0;
|
||||||
|
virtual void unsubscribeFromKeyboardEvents(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &listenerId) = 0;
|
||||||
|
|
||||||
|
// other
|
||||||
|
virtual jsi::Value enableLayoutAnimations(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &config) = 0;
|
||||||
|
virtual jsi::Value configureProps(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &uiProps,
|
||||||
|
const jsi::Value &nativeProps) = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,51 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <jsi/jsi.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string>
|
||||||
|
#include <utility>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
using UpdaterFunction = std::function<void(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
int viewTag,
|
||||||
|
const jsi::Value &viewName,
|
||||||
|
const jsi::Object &object)>;
|
||||||
|
using RequestRender =
|
||||||
|
std::function<void(std::function<void(double)>, jsi::Runtime &rt)>;
|
||||||
|
using ScrollToFunction = std::function<void(int, double, double, bool)>;
|
||||||
|
using MeasuringFunction =
|
||||||
|
std::function<std::vector<std::pair<std::string, double>>(int)>;
|
||||||
|
using TimeProviderFunction = std::function<double(void)>;
|
||||||
|
|
||||||
|
using RegisterSensorFunction =
|
||||||
|
std::function<int(int, int, std::function<void(double[])>)>;
|
||||||
|
using UnregisterSensorFunction = std::function<void(int)>;
|
||||||
|
using SetGestureStateFunction = std::function<void(int, int)>;
|
||||||
|
using ConfigurePropsFunction = std::function<void(
|
||||||
|
jsi::Runtime &rt,
|
||||||
|
const jsi::Value &uiProps,
|
||||||
|
const jsi::Value &nativeProps)>;
|
||||||
|
using KeyboardEventSubscribeFunction =
|
||||||
|
std::function<int(std::function<void(int, int)>)>;
|
||||||
|
using KeyboardEventUnsubscribeFunction = std::function<void(int)>;
|
||||||
|
|
||||||
|
struct PlatformDepMethodsHolder {
|
||||||
|
RequestRender requestRender;
|
||||||
|
UpdaterFunction updaterFunction;
|
||||||
|
ScrollToFunction scrollToFunction;
|
||||||
|
MeasuringFunction measuringFunction;
|
||||||
|
TimeProviderFunction getCurrentTime;
|
||||||
|
RegisterSensorFunction registerSensor;
|
||||||
|
UnregisterSensorFunction unregisterSensor;
|
||||||
|
SetGestureStateFunction setGestureStateFunction;
|
||||||
|
ConfigurePropsFunction configurePropsFunction;
|
||||||
|
KeyboardEventSubscribeFunction subscribeForKeyboardEvents;
|
||||||
|
KeyboardEventUnsubscribeFunction unsubscribeFromKeyboardEvents;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -1,7 +1,6 @@
|
||||||
|
#import <RNReanimated/REATransition.h>
|
||||||
#import <React/RCTConvert.h>
|
#import <React/RCTConvert.h>
|
||||||
|
|
||||||
#import "REATransition.h"
|
|
||||||
|
|
||||||
@interface RCTConvert (REATransition)
|
@interface RCTConvert (REATransition)
|
||||||
|
|
||||||
+ (REATransitionType)REATransitionType:(id)json;
|
+ (REATransitionType)REATransitionType:(id)json;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REATransition.h"
|
#import <RNReanimated/REATransition.h>
|
||||||
|
|
||||||
@interface REATransitionGroup : REATransition
|
@interface REATransitionGroup : REATransition
|
||||||
@property (nonatomic) BOOL sequence;
|
@property (nonatomic) BOOL sequence;
|
||||||
|
@ -8,8 +8,8 @@
|
||||||
|
|
||||||
@interface REAVisibilityTransition : REATransition
|
@interface REAVisibilityTransition : REATransition
|
||||||
@property (nonatomic) REATransitionAnimationType animationType;
|
@property (nonatomic) REATransitionAnimationType animationType;
|
||||||
- (REATransitionAnimation *)appearView:(UIView*)view inParent:(UIView*)parent;
|
- (REATransitionAnimation *)appearView:(UIView *)view inParent:(UIView *)parent;
|
||||||
- (REATransitionAnimation *)disappearView:(UIView*)view fromParent:(UIView*)parent;
|
- (REATransitionAnimation *)disappearView:(UIView *)view fromParent:(UIView *)parent;
|
||||||
- (instancetype)initWithConfig:(NSDictionary *)config;
|
- (instancetype)initWithConfig:(NSDictionary *)config;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAAlwaysNode : REANode <REAFinalNode>
|
@interface REAAlwaysNode : REANode <REAFinalNode>
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <RNReanimated/REASnapshot.h>
|
||||||
|
#import <React/RCTUIManager.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
typedef NS_ENUM(NSInteger, ViewState) {
|
||||||
|
Inactive,
|
||||||
|
Appearing,
|
||||||
|
Disappearing,
|
||||||
|
Layout,
|
||||||
|
ToRemove,
|
||||||
|
};
|
||||||
|
|
||||||
|
@interface REAAnimationsManager : NSObject
|
||||||
|
|
||||||
|
- (instancetype)initWithUIManager:(RCTUIManager *)uiManager;
|
||||||
|
- (void)setRemovingConfigBlock:(void (^)(NSNumber *tag))block;
|
||||||
|
- (void)setAnimationStartingBlock:
|
||||||
|
(void (^)(NSNumber *tag, NSString *type, NSDictionary *target, NSNumber *depth))startAnimation;
|
||||||
|
- (void)notifyAboutProgress:(NSDictionary *)newStyle tag:(NSNumber *)tag;
|
||||||
|
- (void)notifyAboutEnd:(NSNumber *)tag cancelled:(BOOL)cancelled;
|
||||||
|
- (void)invalidate;
|
||||||
|
- (void)onViewRemoval:(UIView *)view before:(REASnapshot *)before;
|
||||||
|
- (void)onViewCreate:(UIView *)view after:(REASnapshot *)after;
|
||||||
|
- (void)onViewUpdate:(UIView *)view before:(REASnapshot *)before after:(REASnapshot *)after;
|
||||||
|
- (void)setToBeRemovedRegistry:(NSMutableDictionary<NSNumber *, NSMutableSet<id<RCTComponent>> *> *)toBeRemovedRegister;
|
||||||
|
- (void)removeLeftovers;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REABezierNode : REANode
|
@interface REABezierNode : REANode
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REABlockNode : REANode
|
@interface REABlockNode : REANode
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REACallFuncNode : REANode
|
@interface REACallFuncNode : REANode
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAClockNode : REANode
|
@interface REAClockNode : REANode
|
||||||
@property (nonatomic, readonly) BOOL isRunning;
|
@property (nonatomic, readonly) BOOL isRunning;
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAConcatNode : REANode
|
@interface REAConcatNode : REANode
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REACondNode : REANode
|
@interface REACondNode : REANode
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface READebugNode : REANode
|
@interface READebugNode : REANode
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <React/RCTEventDispatcher.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface REAEventDispatcher : RCTEventDispatcher
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
|
@ -1,5 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
#import <React/RCTEventDispatcher.h>
|
#import <React/RCTEventDispatcher.h>
|
||||||
|
|
||||||
@interface REAEventNode : REANode
|
@interface REAEventNode : REANode
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAFunctionNode : REANode
|
@interface REAFunctionNode : REANode
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
#import <RNReanimated/ErrorHandler.h>
|
||||||
|
#import <RNReanimated/Scheduler.h>
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class REAIOSErrorHandler : public ErrorHandler {
|
||||||
|
std::shared_ptr<Scheduler> scheduler;
|
||||||
|
void raiseSpec() override;
|
||||||
|
std::shared_ptr<ErrorWrapper> error;
|
||||||
|
|
||||||
|
public:
|
||||||
|
REAIOSErrorHandler(std::shared_ptr<Scheduler> scheduler);
|
||||||
|
std::shared_ptr<Scheduler> getScheduler() override;
|
||||||
|
std::shared_ptr<ErrorWrapper> getError() override;
|
||||||
|
void setError(std::string message) override;
|
||||||
|
virtual ~REAIOSErrorHandler() {}
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,15 @@
|
||||||
|
#import <RNReanimated/ReanimatedHiddenHeaders.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
class REAIOSLogger : public LoggerInterface {
|
||||||
|
public:
|
||||||
|
void log(const char *str) override;
|
||||||
|
void log(double d) override;
|
||||||
|
void log(int i) override;
|
||||||
|
void log(bool b) override;
|
||||||
|
virtual ~REAIOSLogger() {}
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,19 @@
|
||||||
|
#import <RNReanimated/Scheduler.h>
|
||||||
|
#import <React/RCTUIManager.h>
|
||||||
|
#import <ReactCommon/CallInvoker.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
using namespace react;
|
||||||
|
|
||||||
|
class REAIOSScheduler : public Scheduler {
|
||||||
|
public:
|
||||||
|
REAIOSScheduler(std::shared_ptr<CallInvoker> jsInvoker);
|
||||||
|
void scheduleOnUI(std::function<void()> job) override;
|
||||||
|
virtual ~REAIOSScheduler();
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace reanimated
|
|
@ -0,0 +1,30 @@
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <RNReanimated/NativeProxy.h>
|
||||||
|
#import <RNReanimated/REAEventDispatcher.h>
|
||||||
|
#import <RNReanimated/REAModule.h>
|
||||||
|
#import <React/RCTBridge+Private.h>
|
||||||
|
#import <React/RCTCxxBridgeDelegate.h>
|
||||||
|
#import <ReactCommon/RCTTurboModuleManager.h>
|
||||||
|
#import <jsireact/JSIExecutor.h>
|
||||||
|
|
||||||
|
#if REACT_NATIVE_MINOR_VERSION >= 64
|
||||||
|
#import <React/RCTJSIExecutorRuntimeInstaller.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if REACT_NATIVE_MINOR_VERSION < 63
|
||||||
|
#import <ReactCommon/BridgeJSCallInvoker.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
namespace reanimated {
|
||||||
|
|
||||||
|
using namespace facebook;
|
||||||
|
using namespace react;
|
||||||
|
|
||||||
|
JSIExecutor::RuntimeInstaller REAJSIExecutorRuntimeInstaller(
|
||||||
|
RCTBridge *bridge,
|
||||||
|
JSIExecutor::RuntimeInstaller runtimeInstallerToWrap);
|
||||||
|
|
||||||
|
} // namespace reanimated
|
||||||
|
NS_ASSUME_NONNULL_END
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAJSCallNode : REANode
|
@interface REAJSCallNode : REANode
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
#ifndef REAKeyboardEventManager_h
|
||||||
|
#define REAKeyboardEventManager_h
|
||||||
|
|
||||||
|
#import <RNReanimated/REAEventDispatcher.h>
|
||||||
|
#import <React/RCTEventDispatcher.h>
|
||||||
|
|
||||||
|
typedef void (^KeyboardEventListenerBlock)(int keyboardState, int height);
|
||||||
|
|
||||||
|
@interface REAKeyboardEventObserver : NSObject
|
||||||
|
|
||||||
|
- (instancetype)init;
|
||||||
|
- (int)subscribeForKeyboardEvents:(KeyboardEventListenerBlock)listener;
|
||||||
|
- (void)unsubscribeFromKeyboardEvents:(int)listenerId;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
#endif /* REAKeyboardEventManager_h */
|
|
@ -5,8 +5,10 @@
|
||||||
#import <React/RCTUIManagerObserverCoordinator.h>
|
#import <React/RCTUIManagerObserverCoordinator.h>
|
||||||
#import <React/RCTUIManagerUtils.h>
|
#import <React/RCTUIManagerUtils.h>
|
||||||
|
|
||||||
#import "REAValueNode.h"
|
#import <RNReanimated/REAValueNode.h>
|
||||||
|
|
||||||
@interface REAModule : RCTEventEmitter <RCTBridgeModule, RCTEventDispatcherObserver, RCTUIManagerObserver>
|
@interface REAModule : RCTEventEmitter <RCTBridgeModule, RCTEventDispatcherObserver, RCTUIManagerObserver>
|
||||||
|
|
||||||
|
@property (nonatomic, readonly) REANodesManager *nodesManager;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
@class REANodesManager;
|
@class REANodesManager;
|
||||||
|
|
||||||
typedef NSNumber* REANodeID;
|
typedef NSNumber *REANodeID;
|
||||||
|
|
||||||
@protocol REAFinalNode
|
@protocol REAFinalNode
|
||||||
|
|
||||||
|
@ -12,15 +12,14 @@ typedef NSNumber* REANodeID;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@interface REAUpdateContext : NSObject
|
@interface REAUpdateContext : NSObject
|
||||||
@property (nonatomic) NSString* callID;
|
@property (nonatomic) NSString *callID;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@interface REANode : NSObject
|
@interface REANode : NSObject
|
||||||
|
|
||||||
+ (void)runPropUpdates:(nonnull REAUpdateContext *)context;
|
+ (void)runPropUpdates:(nonnull REAUpdateContext *)context;
|
||||||
|
|
||||||
- (instancetype)initWithID:(REANodeID)nodeID
|
- (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config NS_DESIGNATED_INITIALIZER;
|
||||||
config:(NSDictionary<NSString *, id> *)config NS_DESIGNATED_INITIALIZER;
|
|
||||||
|
|
||||||
@property (nonatomic, weak, nullable) REANodesManager *nodesManager;
|
@property (nonatomic, weak, nullable) REANodesManager *nodesManager;
|
||||||
@property (nonatomic, nullable) REAUpdateContext *updateContext;
|
@property (nonatomic, nullable) REAUpdateContext *updateContext;
|
||||||
|
@ -36,4 +35,6 @@ typedef NSNumber* REANodeID;
|
||||||
- (void)dangerouslyRescheduleEvaluate;
|
- (void)dangerouslyRescheduleEvaluate;
|
||||||
- (void)forceUpdateMemoizedValue:(id)value;
|
- (void)forceUpdateMemoizedValue:(id)value;
|
||||||
|
|
||||||
|
- (void)onDrop;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <RNReanimated/REANode.h>
|
||||||
#import "REANode.h"
|
|
||||||
#import <React/RCTBridgeModule.h>
|
#import <React/RCTBridgeModule.h>
|
||||||
#import <React/RCTUIManager.h>
|
#import <React/RCTUIManager.h>
|
||||||
|
|
||||||
|
@ -8,6 +7,7 @@
|
||||||
|
|
||||||
typedef void (^REAOnAnimationCallback)(CADisplayLink *displayLink);
|
typedef void (^REAOnAnimationCallback)(CADisplayLink *displayLink);
|
||||||
typedef void (^REANativeAnimationOp)(RCTUIManager *uiManager);
|
typedef void (^REANativeAnimationOp)(RCTUIManager *uiManager);
|
||||||
|
typedef void (^REAEventHandler)(NSString *eventName, id<RCTEvent> event);
|
||||||
|
|
||||||
@interface REANodesManager : NSObject
|
@interface REANodesManager : NSObject
|
||||||
|
|
||||||
|
@ -18,10 +18,9 @@ typedef void (^REANativeAnimationOp)(RCTUIManager *uiManager);
|
||||||
@property (nonatomic, nullable) NSSet<NSString *> *uiProps;
|
@property (nonatomic, nullable) NSSet<NSString *> *uiProps;
|
||||||
@property (nonatomic, nullable) NSSet<NSString *> *nativeProps;
|
@property (nonatomic, nullable) NSSet<NSString *> *nativeProps;
|
||||||
|
|
||||||
- (nonnull instancetype)initWithModule:(REAModule *)reanimatedModule
|
- (nonnull instancetype)initWithModule:(REAModule *)reanimatedModule uiManager:(nonnull RCTUIManager *)uiManager;
|
||||||
uiManager:(nonnull RCTUIManager *)uiManager;
|
|
||||||
|
|
||||||
- (REANode* _Nullable)findNodeByID:(nonnull REANodeID)nodeID;
|
- (REANode *_Nullable)findNodeByID:(nonnull REANodeID)nodeID;
|
||||||
|
|
||||||
- (void)invalidate;
|
- (void)invalidate;
|
||||||
|
|
||||||
|
@ -31,31 +30,28 @@ typedef void (^REANativeAnimationOp)(RCTUIManager *uiManager);
|
||||||
|
|
||||||
- (void)postOnAnimation:(REAOnAnimationCallback)clb;
|
- (void)postOnAnimation:(REAOnAnimationCallback)clb;
|
||||||
- (void)postRunUpdatesAfterAnimation;
|
- (void)postRunUpdatesAfterAnimation;
|
||||||
|
- (void)registerEventHandler:(REAEventHandler)eventHandler;
|
||||||
- (void)enqueueUpdateViewOnNativeThread:(nonnull NSNumber *)reactTag
|
- (void)enqueueUpdateViewOnNativeThread:(nonnull NSNumber *)reactTag
|
||||||
viewName:(NSString *) viewName
|
viewName:(NSString *)viewName
|
||||||
nativeProps:(NSMutableDictionary *)nativeProps;
|
nativeProps:(NSMutableDictionary *)nativeProps
|
||||||
- (void)getValue:(REANodeID)nodeID
|
trySynchronously:(BOOL)trySync;
|
||||||
callback:(RCTResponseSenderBlock)callback;
|
- (void)getValue:(REANodeID)nodeID callback:(RCTResponseSenderBlock)callback;
|
||||||
|
|
||||||
// graph
|
// graph
|
||||||
|
|
||||||
- (void)createNode:(nonnull REANodeID)tag
|
- (void)createNode:(nonnull REANodeID)tag config:(NSDictionary<NSString *, id> *__nonnull)config;
|
||||||
config:(NSDictionary<NSString *, id> *__nonnull)config;
|
|
||||||
|
|
||||||
- (void)dropNode:(nonnull REANodeID)tag;
|
- (void)dropNode:(nonnull REANodeID)tag;
|
||||||
|
|
||||||
- (void)connectNodes:(nonnull REANodeID)parentID
|
- (void)connectNodes:(nonnull REANodeID)parentID childID:(nonnull REANodeID)childID;
|
||||||
childID:(nonnull REANodeID)childID;
|
|
||||||
|
|
||||||
- (void)disconnectNodes:(nonnull REANodeID)parentID
|
- (void)disconnectNodes:(nonnull REANodeID)parentID childID:(nonnull REANodeID)childID;
|
||||||
childID:(nonnull REANodeID)childID;
|
|
||||||
|
|
||||||
- (void)connectNodeToView:(nonnull REANodeID)nodeID
|
- (void)connectNodeToView:(nonnull REANodeID)nodeID
|
||||||
viewTag:(nonnull NSNumber *)viewTag
|
viewTag:(nonnull NSNumber *)viewTag
|
||||||
viewName:(nonnull NSString *)viewName;
|
viewName:(nonnull NSString *)viewName;
|
||||||
|
|
||||||
- (void)disconnectNodeFromView:(nonnull REANodeID)nodeID
|
- (void)disconnectNodeFromView:(nonnull REANodeID)nodeID viewTag:(nonnull NSNumber *)viewTag;
|
||||||
viewTag:(nonnull NSNumber *)viewTag;
|
|
||||||
|
|
||||||
- (void)attachEvent:(nonnull NSNumber *)viewTag
|
- (void)attachEvent:(nonnull NSNumber *)viewTag
|
||||||
eventName:(nonnull NSString *)eventName
|
eventName:(nonnull NSString *)eventName
|
||||||
|
@ -67,8 +63,14 @@ typedef void (^REANativeAnimationOp)(RCTUIManager *uiManager);
|
||||||
|
|
||||||
// configuration
|
// configuration
|
||||||
|
|
||||||
- (void)configureProps:(nonnull NSSet<NSString *> *)nativeProps
|
- (void)configureUiProps:(nonnull NSSet<NSString *> *)uiPropsSet
|
||||||
uiProps:(nonnull NSSet<NSString *> *)uiProps;
|
andNativeProps:(nonnull NSSet<NSString *> *)nativePropsSet;
|
||||||
|
|
||||||
|
- (void)updateProps:(nonnull NSDictionary *)props
|
||||||
|
ofViewWithTag:(nonnull NSNumber *)viewTag
|
||||||
|
withName:(nonnull NSString *)viewName;
|
||||||
|
|
||||||
|
- (NSString *)obtainProp:(nonnull NSNumber *)viewTag propName:(nonnull NSString *)propName;
|
||||||
|
|
||||||
// events
|
// events
|
||||||
|
|
||||||
|
@ -76,4 +78,6 @@ typedef void (^REANativeAnimationOp)(RCTUIManager *uiManager);
|
||||||
|
|
||||||
- (void)setValueForNodeID:(nonnull NSNumber *)nodeID value:(nonnull NSNumber *)newValue;
|
- (void)setValueForNodeID:(nonnull NSNumber *)nodeID value:(nonnull NSNumber *)newValue;
|
||||||
|
|
||||||
|
- (void)maybeFlushUpdateBuffer;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAOperatorNode : REANode
|
@interface REAOperatorNode : REANode
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,10 @@
|
||||||
#import "REAValueNode.h"
|
#import <RNReanimated/REAValueNode.h>
|
||||||
|
|
||||||
@interface REAParamNode : REAValueNode
|
@interface REAParamNode : REAValueNode
|
||||||
|
|
||||||
- (void)beginContext:(NSNumber*) ref
|
- (void)beginContext:(NSNumber *)ref prevCallID:(NSNumber *)prevCallID;
|
||||||
prevCallID:(NSNumber*) prevCallID;
|
|
||||||
- (void)endContext;
|
- (void)endContext;
|
||||||
- (void)start;
|
- (void)start;
|
||||||
- (void)stop;
|
- (void)stop;
|
||||||
- (BOOL)isRunning;
|
- (BOOL)isRunning;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,9 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAPropsNode : REANode <REAFinalNode>
|
@interface REAPropsNode : REANode <REAFinalNode>
|
||||||
|
|
||||||
- (void)connectToView:(NSNumber *_Nonnull)viewTag
|
- (void)connectToView:(NSNumber *_Nonnull)viewTag viewName:(NSString *_Nonnull)viewName;
|
||||||
viewName:(NSString *_Nonnull)viewName;
|
|
||||||
|
|
||||||
- (void)disconnectFromView:(NSNumber *_Nonnull)viewTag;
|
- (void)disconnectFromView:(NSNumber *_Nonnull)viewTag;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REASetNode : REANode
|
@interface REASetNode : REANode
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface REASnapshot : NSObject
|
||||||
|
|
||||||
|
@property NSMutableDictionary *values;
|
||||||
|
|
||||||
|
- (instancetype)init:(UIView *)view;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
|
@ -1,6 +1,5 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REAStyleNode : REANode
|
@interface REAStyleNode : REANode
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#import "REANode.h"
|
#import <RNReanimated/REANode.h>
|
||||||
|
|
||||||
@interface REATransformNode : REANode
|
@interface REATransformNode : REANode
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
#import <UIKit/UIKit.h>
|
|
||||||
#import <QuartzCore/QuartzCore.h>
|
#import <QuartzCore/QuartzCore.h>
|
||||||
|
#import <RNReanimated/REATransitionAnimation.h>
|
||||||
|
#import <RNReanimated/REATransitionValues.h>
|
||||||
#import <React/RCTView.h>
|
#import <React/RCTView.h>
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
#import "REATransitionAnimation.h"
|
|
||||||
#import "REATransitionValues.h"
|
|
||||||
|
|
||||||
// TODO: fix below implementation
|
// TODO: fix below implementation
|
||||||
#define IS_LAYOUT_ONLY(view) ([view isKindOfClass:[RCTView class]] && view.backgroundColor == nil)
|
#define IS_LAYOUT_ONLY(view) ([view isKindOfClass:[RCTView class]] && view.backgroundColor == nil)
|
||||||
|
@ -53,11 +52,12 @@ typedef NS_ENUM(NSInteger, REATransitionPropagationType) {
|
||||||
- (void)playInRoot:(UIView *)root;
|
- (void)playInRoot:(UIView *)root;
|
||||||
- (REATransitionValues *)findStartValuesForKey:(NSNumber *)key;
|
- (REATransitionValues *)findStartValuesForKey:(NSNumber *)key;
|
||||||
- (REATransitionValues *)findEndValuesForKey:(NSNumber *)key;
|
- (REATransitionValues *)findEndValuesForKey:(NSNumber *)key;
|
||||||
- (REATransitionAnimation *)animationForTransitioning:(REATransitionValues*)startValues
|
- (REATransitionAnimation *)animationForTransitioning:(REATransitionValues *)startValues
|
||||||
endValues:(REATransitionValues*)endValues
|
endValues:(REATransitionValues *)endValues
|
||||||
forRoot:(UIView *)root;
|
forRoot:(UIView *)root;
|
||||||
- (NSArray<REATransitionAnimation*> *)animationsForTransitioning:(NSMutableDictionary<NSNumber*, REATransitionValues*> *)startValues
|
- (NSArray<REATransitionAnimation *> *)
|
||||||
endValues:(NSMutableDictionary<NSNumber*, REATransitionValues*> *)endValues
|
animationsForTransitioning:(NSMutableDictionary<NSNumber *, REATransitionValues *> *)startValues
|
||||||
|
endValues:(NSMutableDictionary<NSNumber *, REATransitionValues *> *)endValues
|
||||||
forRoot:(UIView *)root;
|
forRoot:(UIView *)root;
|
||||||
|
|
||||||
+ (REATransition *)inflate:(NSDictionary *)config;
|
+ (REATransition *)inflate:(NSDictionary *)config;
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue