Commit 89a96ae7 authored by Wei Han's avatar Wei Han

code update

parent ba209dfa
......@@ -9,14 +9,14 @@ Pod::Spec.new do |s|
s.homepage = package["homepage"]
s.license = package["license"]
s.authors = package["author"]
s.platforms = { :ios => "15.1"}
s.platforms = { :ios => min_ios_version_supported }
s.source = { :git => "http://convep.ddns.me:20000/alepmustaqim03/qms-plugin.git.git", :tag => "#{s.version}" }
s.source_files = "ios/**/*.{h,m,mm,cpp}"
s.private_header_files = "ios/**/*.h"
s.swift_version = "5.0"
s.source = { :git => "http://convep.ddns.me:20000/WeiHan/weihan-plugin.git", :tag => "#{s.version}" }
s.source_files = "ios/QmsPlugin/**/*.{h,m,mm,cpp}"
s.private_header_files = "ios/QmsPlugin/**/*.h"
s.dependency "React-Core"
s.preserve_paths = "ios/QmsPluginFramework.xcframework"
s.vendored_frameworks = "ios/QmsPluginFramework.xcframework"
install_modules_dependencies(s)
# install_modules_dependencies(s)
end
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 77;
objects = {
/* Begin PBXFileReference section */
2F9647652E86307D002CC7CB /* QmsPluginFramework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = QmsPluginFramework.framework; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
2F96476C2E86307D002CC7CB /* Exceptions for "QmsPluginFramework" folder in "QmsPluginFramework" target */ = {
isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
publicHeaders = (
QmsPlugin.h,
QmsPluginFramework.h,
);
target = 2F9647642E86307D002CC7CB /* QmsPluginFramework */;
};
/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
/* Begin PBXFileSystemSynchronizedRootGroup section */
2F9647672E86307D002CC7CB /* QmsPluginFramework */ = {
isa = PBXFileSystemSynchronizedRootGroup;
exceptions = (
2F96476C2E86307D002CC7CB /* Exceptions for "QmsPluginFramework" folder in "QmsPluginFramework" target */,
);
path = QmsPluginFramework;
sourceTree = "<group>";
};
/* End PBXFileSystemSynchronizedRootGroup section */
/* Begin PBXFrameworksBuildPhase section */
2F9647622E86307D002CC7CB /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
2F96475B2E86307D002CC7CB = {
isa = PBXGroup;
children = (
2F9647672E86307D002CC7CB /* QmsPluginFramework */,
2F9647662E86307D002CC7CB /* Products */,
);
sourceTree = "<group>";
};
2F9647662E86307D002CC7CB /* Products */ = {
isa = PBXGroup;
children = (
2F9647652E86307D002CC7CB /* QmsPluginFramework.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
2F9647602E86307D002CC7CB /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
2F9647642E86307D002CC7CB /* QmsPluginFramework */ = {
isa = PBXNativeTarget;
buildConfigurationList = 2F96476D2E86307D002CC7CB /* Build configuration list for PBXNativeTarget "QmsPluginFramework" */;
buildPhases = (
2F9647602E86307D002CC7CB /* Headers */,
2F9647612E86307D002CC7CB /* Sources */,
2F9647622E86307D002CC7CB /* Frameworks */,
2F9647632E86307D002CC7CB /* Resources */,
);
buildRules = (
);
dependencies = (
);
fileSystemSynchronizedGroups = (
2F9647672E86307D002CC7CB /* QmsPluginFramework */,
);
name = QmsPluginFramework;
packageProductDependencies = (
);
productName = QmsPluginFramework;
productReference = 2F9647652E86307D002CC7CB /* QmsPluginFramework.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
2F96475C2E86307D002CC7CB /* Project object */ = {
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = 1;
LastUpgradeCheck = 2600;
TargetAttributes = {
2F9647642E86307D002CC7CB = {
CreatedOnToolsVersion = 26.0.1;
};
};
};
buildConfigurationList = 2F96475F2E86307D002CC7CB /* Build configuration list for PBXProject "QmsPluginFramework" */;
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
);
mainGroup = 2F96475B2E86307D002CC7CB;
minimizedProjectReferenceProxies = 1;
preferredProjectObjectVersion = 77;
productRefGroup = 2F9647662E86307D002CC7CB /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
2F9647642E86307D002CC7CB /* QmsPluginFramework */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
2F9647632E86307D002CC7CB /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
2F9647612E86307D002CC7CB /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
2F96476E2E86307D002CC7CB /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = 54TZWRHSND;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
ENABLE_MODULE_VERIFIER = YES;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_NSHumanReadableCopyright = "";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
MARKETING_VERSION = 1.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20";
PRODUCT_BUNDLE_IDENTIFIER = test.QmsPluginFramework;
PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
SKIP_INSTALL = YES;
STRING_CATALOG_GENERATE_SYMBOLS = YES;
SWIFT_EMIT_LOC_STRINGS = YES;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
2F96476F2E86307D002CC7CB /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = 54TZWRHSND;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
ENABLE_MODULE_VERIFIER = YES;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_NSHumanReadableCopyright = "";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
MARKETING_VERSION = 1.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20";
PRODUCT_BUNDLE_IDENTIFIER = test.QmsPluginFramework;
PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
SKIP_INSTALL = YES;
STRING_CATALOG_GENERATE_SYMBOLS = YES;
SWIFT_EMIT_LOC_STRINGS = YES;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};
2F9647702E86307D002CC7CB /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 54TZWRHSND;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
GCC_C_LANGUAGE_STANDARD = gnu17;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
};
name = Debug;
};
2F9647712E86307D002CC7CB /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 54TZWRHSND;
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
GCC_C_LANGUAGE_STANDARD = gnu17;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
2F96475F2E86307D002CC7CB /* Build configuration list for PBXProject "QmsPluginFramework" */ = {
isa = XCConfigurationList;
buildConfigurations = (
2F9647702E86307D002CC7CB /* Debug */,
2F9647712E86307D002CC7CB /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
2F96476D2E86307D002CC7CB /* Build configuration list for PBXNativeTarget "QmsPluginFramework" */ = {
isa = XCConfigurationList;
buildConfigurations = (
2F96476E2E86307D002CC7CB /* Debug */,
2F96476F2E86307D002CC7CB /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 2F96475C2E86307D002CC7CB /* Project object */;
}
//QmsPlugin.h
#import <Foundation/Foundation.h>
@interface QmsPlugin : NSObject
@end
FOUNDATION_EXPORT NSNumber* QmsPluginMultiply(double a, double b);
//QmsPlugin.mm
#import "QmsPlugin.h"
@implementation QmsPlugin
@end
NSNumber* QmsPluginMultiply(double a, double b) {
return @(a * b);
}
# ``QmsPluginFramework``
<!--@START_MENU_TOKEN@-->Summary<!--@END_MENU_TOKEN@-->
## Overview
<!--@START_MENU_TOKEN@-->Text<!--@END_MENU_TOKEN@-->
## Topics
### <!--@START_MENU_TOKEN@-->Group<!--@END_MENU_TOKEN@-->
- <!--@START_MENU_TOKEN@-->``Symbol``<!--@END_MENU_TOKEN@-->
\ No newline at end of file
//
// QmsPluginFramework.h
// QmsPluginFramework
//
// Created by Wei Han Ng on 26/09/2025.
//
#import <Foundation/Foundation.h>
//! Project version number for QmsPluginFramework.
FOUNDATION_EXPORT double QmsPluginFrameworkVersionNumber;
//! Project version string for QmsPluginFramework.
FOUNDATION_EXPORT const unsigned char QmsPluginFrameworkVersionString[];
// In this header, you should import all the public headers of your framework using statements like #import <QmsPluginFramework/PublicHeader.h>
#import<QmsPluginFramework/QmsPlugin.h>
//QmsPlugin.h
#import <QmsPluginSpec/QmsPluginSpec.h>
@interface QmsPlugin : NSObject <NativeQmsPluginSpec>
@end
import Foundation
@objc(QmsPlugin)
class QmsPlugin: NSObject {
// Expose this module to React Native
@objc static func requiresMainQueueSetup() -> Bool {
return false
}
// Example method: multiply two numbers
@objc
func multiply(_ a: Double, b: Double, resolver: RCTPromiseResolveBlock, rejecter: RCTPromiseRejectBlock) {
let result = a * b
resolver(result)
}
}
// ios/QmsPlugin/QmsPlugin.mm
#import <React/RCTBridgeModule.h>
#import <ReactCommon/RCTTurboModule.h>
#import <QmsPluginFramework/QmsPlugin.h>
#import "QmsPluginSpec.h"
@interface QmsPlugin : NSObject <RCTBridgeModule>
@end
@implementation QmsPlugin
RCT_EXPORT_MODULE();
- (NSNumber *)multiply:(double)a b:(double)b {
// Call into your XCFramework function
return QmsPluginMultiply(a, b);
}
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
(const facebook::react::ObjCTurboModule::InitParams &)params
{
return std::make_shared<facebook::react::NativeQmsPluginSpecJSI>(params);
}
@end
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>AvailableLibraries</key>
<array>
<dict>
<key>BinaryPath</key>
<string>QmsPluginFramework.framework/QmsPluginFramework</string>
<key>LibraryIdentifier</key>
<string>ios-arm64_x86_64-simulator</string>
<key>LibraryPath</key>
<string>QmsPluginFramework.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>BinaryPath</key>
<string>QmsPluginFramework.framework/QmsPluginFramework</string>
<key>LibraryIdentifier</key>
<string>ios-arm64</string>
<key>LibraryPath</key>
<string>QmsPluginFramework.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
</dict>
</array>
<key>CFBundlePackageType</key>
<string>XFWK</string>
<key>XCFrameworkFormatVersion</key>
<string>1.0</string>
</dict>
</plist>
//QmsPlugin.h
#import <Foundation/Foundation.h>
@interface QmsPlugin : NSObject
@end
FOUNDATION_EXPORT NSNumber* QmsPluginMultiply(double a, double b);
//
// QmsPluginFramework.h
// QmsPluginFramework
//
// Created by Wei Han Ng on 26/09/2025.
//
#import <Foundation/Foundation.h>
//! Project version number for QmsPluginFramework.
FOUNDATION_EXPORT double QmsPluginFrameworkVersionNumber;
//! Project version string for QmsPluginFramework.
FOUNDATION_EXPORT const unsigned char QmsPluginFrameworkVersionString[];
// In this header, you should import all the public headers of your framework using statements like #import <QmsPluginFramework/PublicHeader.h>
#import<QmsPluginFramework/QmsPlugin.h>
framework module QmsPluginFramework {
umbrella header "QmsPluginFramework.h"
export *
module * { export * }
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>files</key>
<dict>
<key>Headers/QmsPlugin.h</key>
<data>
aCL6rb2Q7Ad9zhx8vpvTOuIXPds=
</data>
<key>Headers/QmsPluginFramework.h</key>
<data>
Ac2nFon9nyl4ocnIjmBCQRCrHPo=
</data>
<key>Info.plist</key>
<data>
QvWHhX2X4hW9mXAFtK1rMMulanM=
</data>
<key>Modules/module.modulemap</key>
<data>
BD9YnWBkeFmDcuOl4cAjALd/7yw=
</data>
</dict>
<key>files2</key>
<dict>
<key>Headers/QmsPlugin.h</key>
<dict>
<key>hash2</key>
<data>
AKU6AKMhupZrsnTsWjRDR3IKFU0gGhL1f6WkNrfkdrw=
</data>
</dict>
<key>Headers/QmsPluginFramework.h</key>
<dict>
<key>hash2</key>
<data>
QS0NoHGZP72x4rQ9X9dKwp+s41xEUsBy01aUhw7JxAo=
</data>
</dict>
<key>Modules/module.modulemap</key>
<dict>
<key>hash2</key>
<data>
e+P6RtiuicqWfZ3H2B43r960DPkFwUWqXKWU+w7OVD0=
</data>
</dict>
</dict>
<key>rules</key>
<dict>
<key>^.*</key>
<true/>
<key>^.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^version.plist$</key>
<true/>
</dict>
<key>rules2</key>
<dict>
<key>.*\.dSYM($|/)</key>
<dict>
<key>weight</key>
<real>11</real>
</dict>
<key>^(.*/)?\.DS_Store$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>2000</real>
</dict>
<key>^.*</key>
<true/>
<key>^.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^Info\.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^PkgInfo$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^embedded\.provisionprofile$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^version\.plist$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
</dict>
</dict>
</plist>
//QmsPlugin.h
#import <Foundation/Foundation.h>
@interface QmsPlugin : NSObject
@end
FOUNDATION_EXPORT NSNumber* QmsPluginMultiply(double a, double b);
//
// QmsPluginFramework.h
// QmsPluginFramework
//
// Created by Wei Han Ng on 26/09/2025.
//
#import <Foundation/Foundation.h>
//! Project version number for QmsPluginFramework.
FOUNDATION_EXPORT double QmsPluginFrameworkVersionNumber;
//! Project version string for QmsPluginFramework.
FOUNDATION_EXPORT const unsigned char QmsPluginFrameworkVersionString[];
// In this header, you should import all the public headers of your framework using statements like #import <QmsPluginFramework/PublicHeader.h>
#import<QmsPluginFramework/QmsPlugin.h>
framework module QmsPluginFramework {
umbrella header "QmsPluginFramework.h"
export *
module * { export * }
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>files</key>
<dict>
<key>Headers/QmsPlugin.h</key>
<data>
aCL6rb2Q7Ad9zhx8vpvTOuIXPds=
</data>
<key>Headers/QmsPluginFramework.h</key>
<data>
Ac2nFon9nyl4ocnIjmBCQRCrHPo=
</data>
<key>Info.plist</key>
<data>
mHHohDKLbelgffJEne6sKFR+cnQ=
</data>
<key>Modules/module.modulemap</key>
<data>
BD9YnWBkeFmDcuOl4cAjALd/7yw=
</data>
</dict>
<key>files2</key>
<dict>
<key>Headers/QmsPlugin.h</key>
<dict>
<key>hash2</key>
<data>
AKU6AKMhupZrsnTsWjRDR3IKFU0gGhL1f6WkNrfkdrw=
</data>
</dict>
<key>Headers/QmsPluginFramework.h</key>
<dict>
<key>hash2</key>
<data>
QS0NoHGZP72x4rQ9X9dKwp+s41xEUsBy01aUhw7JxAo=
</data>
</dict>
<key>Modules/module.modulemap</key>
<dict>
<key>hash2</key>
<data>
e+P6RtiuicqWfZ3H2B43r960DPkFwUWqXKWU+w7OVD0=
</data>
</dict>
</dict>
<key>rules</key>
<dict>
<key>^.*</key>
<true/>
<key>^.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^version.plist$</key>
<true/>
</dict>
<key>rules2</key>
<dict>
<key>.*\.dSYM($|/)</key>
<dict>
<key>weight</key>
<real>11</real>
</dict>
<key>^(.*/)?\.DS_Store$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>2000</real>
</dict>
<key>^.*</key>
<true/>
<key>^.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^Info\.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^PkgInfo$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^embedded\.provisionprofile$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^version\.plist$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
</dict>
</dict>
</plist>
# EXAMPLE USAGE:
#
# Refer for explanation to following link:
# https://lefthook.dev/configuration/
#
# pre-push:
# jobs:
# - name: packages audit
# tags:
# - frontend
# - security
# run: yarn audit
#
# - name: gems audit
# tags:
# - backend
# - security
# run: bundle audit
#
# pre-commit:
# parallel: true
# jobs:
# - run: yarn eslint {staged_files}
# glob: "*.{js,ts,jsx,tsx}"
#
# - name: rubocop
# glob: "*.rb"
# exclude:
# - config/application.rb
# - config/routes.rb
# run: bundle exec rubocop --force-exclusion {all_files}
#
# - name: govet
# files: git ls-files -m
# glob: "*.go"
# run: go vet {files}
#
# - script: "hello.js"
# runner: node
#
# - script: "hello.go"
# runner: go run
......@@ -5,50 +5,6 @@ __metadata:
version: 6
cacheKey: 8
"@alepmustaqim03/react-native-qms-plugin@file:..::locator=react-native-qms-plugin-example%40workspace%3Aexample":
version: 0.1.0
resolution: "@alepmustaqim03/react-native-qms-plugin@file:..#..::hash=9cd406&locator=react-native-qms-plugin-example%40workspace%3Aexample"
peerDependencies:
react: "*"
react-native: "*"
checksum: 507ce015587a0b4f66b55a7429a889c383188cc6d6303a83c08f8db90949c4fd1ebde84d967c5687ea940de3e98da757f6f68de9e977d05da9f1a9bd3439c162
languageName: node
linkType: hard
"@alepmustaqim03/react-native-qms-plugin@workspace:.":
version: 0.0.0-use.local
resolution: "@alepmustaqim03/react-native-qms-plugin@workspace:."
dependencies:
"@commitlint/config-conventional": ^19.8.1
"@eslint/compat": ^1.3.2
"@eslint/eslintrc": ^3.3.1
"@eslint/js": ^9.35.0
"@evilmartians/lefthook": ^1.12.3
"@react-native-community/cli": 20.0.1
"@react-native/babel-preset": 0.81.1
"@react-native/eslint-config": ^0.81.1
"@release-it/conventional-changelog": ^10.0.1
"@types/jest": ^29.5.14
"@types/react": ^19.1.0
commitlint: ^19.8.1
del-cli: ^6.0.0
eslint: ^9.35.0
eslint-config-prettier: ^10.1.8
eslint-plugin-prettier: ^5.5.4
jest: ^29.7.0
prettier: ^3.6.2
react: 19.1.0
react-native: 0.81.1
react-native-builder-bob: ^0.40.13
release-it: ^19.0.4
turbo: ^2.5.6
typescript: ^5.9.2
peerDependencies:
react: "*"
react-native: "*"
languageName: unknown
linkType: soft
"@ark/schema@npm:0.49.0":
version: 0.49.0
resolution: "@ark/schema@npm:0.49.0"
......@@ -1393,7 +1349,7 @@ __metadata:
languageName: node
linkType: hard
"@babel/preset-env@npm:^7.25.2, @babel/preset-env@npm:^7.25.3":
"@babel/preset-env@npm:^7.25.2":
version: 7.28.3
resolution: "@babel/preset-env@npm:7.28.3"
dependencies:
......@@ -2767,18 +2723,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-clean@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-clean@npm:20.0.0"
dependencies:
"@react-native-community/cli-tools": 20.0.0
chalk: ^4.1.2
execa: ^5.0.0
fast-glob: ^3.3.2
checksum: 61e44c35d4dab0f037a3c8993056ac870c2b9492bc8452cabbc61ea7ff5ce3a55f4c5c1be799f9a943ad470911985783024863d0cfd2b81fee79063023a1d52b
languageName: node
linkType: hard
"@react-native-community/cli-clean@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-clean@npm:20.0.1"
......@@ -2791,18 +2735,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-config-android@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-config-android@npm:20.0.0"
dependencies:
"@react-native-community/cli-tools": 20.0.0
chalk: ^4.1.2
fast-glob: ^3.3.2
fast-xml-parser: ^4.4.1
checksum: cae974e97e1e814add722718f79b6fed5195beb9599209c327f5f26e51c24ba7cec551c4c6240cccfca455d6986f7ca2e8a64c3542d2117c0e0728f281569a30
languageName: node
linkType: hard
"@react-native-community/cli-config-android@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-config-android@npm:20.0.1"
......@@ -2815,18 +2747,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-config-apple@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-config-apple@npm:20.0.0"
dependencies:
"@react-native-community/cli-tools": 20.0.0
chalk: ^4.1.2
execa: ^5.0.0
fast-glob: ^3.3.2
checksum: b8ffb7d528dca06f1a6e99f5429f65bc6dee10b61059f229bc8c07a7a1096377495905020b7ead6251d47ed1faf1f85db9a68b3db69286a9b6d0753663d52266
languageName: node
linkType: hard
"@react-native-community/cli-config-apple@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-config-apple@npm:20.0.1"
......@@ -2839,20 +2759,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-config@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-config@npm:20.0.0"
dependencies:
"@react-native-community/cli-tools": 20.0.0
chalk: ^4.1.2
cosmiconfig: ^9.0.0
deepmerge: ^4.3.0
fast-glob: ^3.3.2
joi: ^17.2.1
checksum: 5d516474dfde07b2c725fc8b3755a7928bb3bb9c279cb574bd05e76851de8a91aa46879729b7a5ba0f65cd81f793fe69b891e9229d34d497914d83fb986c6a38
languageName: node
linkType: hard
"@react-native-community/cli-config@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-config@npm:20.0.1"
......@@ -2867,29 +2773,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-doctor@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-doctor@npm:20.0.0"
dependencies:
"@react-native-community/cli-config": 20.0.0
"@react-native-community/cli-platform-android": 20.0.0
"@react-native-community/cli-platform-apple": 20.0.0
"@react-native-community/cli-platform-ios": 20.0.0
"@react-native-community/cli-tools": 20.0.0
chalk: ^4.1.2
command-exists: ^1.2.8
deepmerge: ^4.3.0
envinfo: ^7.13.0
execa: ^5.0.0
node-stream-zip: ^1.9.1
ora: ^5.4.1
semver: ^7.5.2
wcwidth: ^1.0.1
yaml: ^2.2.1
checksum: aa80df1ebaf71741292608806ae408d506707e3c7e5894cf34c2470b1f0635fa4ef79dc653febcc2bad6dcddbc357f93a99706f758dc450a0a44f8b163df5227
languageName: node
linkType: hard
"@react-native-community/cli-doctor@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-doctor@npm:20.0.1"
......@@ -2913,19 +2796,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-platform-android@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-platform-android@npm:20.0.0"
dependencies:
"@react-native-community/cli-config-android": 20.0.0
"@react-native-community/cli-tools": 20.0.0
chalk: ^4.1.2
execa: ^5.0.0
logkitty: ^0.7.1
checksum: c619c5f871b90d49b06cb96630884d8e8439f56d43d9734401c77f062ba5312134049168a4754ecd55770b86a0a7708c8f2e52b06f058f443415a0b008932829
languageName: node
linkType: hard
"@react-native-community/cli-platform-android@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-platform-android@npm:20.0.1"
......@@ -2939,19 +2809,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-platform-apple@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-platform-apple@npm:20.0.0"
dependencies:
"@react-native-community/cli-config-apple": 20.0.0
"@react-native-community/cli-tools": 20.0.0
chalk: ^4.1.2
execa: ^5.0.0
fast-xml-parser: ^4.4.1
checksum: 10c457a95b8bf69463dadd3a6d426550866f91cbd5de9a1f2c76e08098f37c3422e41edfb5fb1b1252dd4ff4ca4740bd71411d81213ddb93c0069426f8c63988
languageName: node
linkType: hard
"@react-native-community/cli-platform-apple@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-platform-apple@npm:20.0.1"
......@@ -2965,15 +2822,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-platform-ios@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-platform-ios@npm:20.0.0"
dependencies:
"@react-native-community/cli-platform-apple": 20.0.0
checksum: c7fc89332a7cb9fa71c1c5d4fe928d39b0514c74fdcc85251a7a35344f1f5e9e3b4cd23a85a70ce447dded6e6552a5edfa848cf07d8b26127a0c3b05ce3e1768
languageName: node
linkType: hard
"@react-native-community/cli-platform-ios@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-platform-ios@npm:20.0.1"
......@@ -2983,24 +2831,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-server-api@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-server-api@npm:20.0.0"
dependencies:
"@react-native-community/cli-tools": 20.0.0
body-parser: ^1.20.3
compression: ^1.7.1
connect: ^3.6.5
errorhandler: ^1.5.1
nocache: ^3.0.1
open: ^6.2.0
pretty-format: ^29.7.0
serve-static: ^1.13.1
ws: ^6.2.3
checksum: 60dfd1d0cb9f0026cd2b267ab57902a4ecc57513240230fd8263b683c6ad9356c6202595f4262fc2a07d23cafbdf7b9d4c95fa7fae25472f25c7b87905c13305
languageName: node
linkType: hard
"@react-native-community/cli-server-api@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-server-api@npm:20.0.1"
......@@ -3019,24 +2849,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-tools@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-tools@npm:20.0.0"
dependencies:
"@vscode/sudo-prompt": ^9.0.0
appdirsjs: ^1.2.4
chalk: ^4.1.2
execa: ^5.0.0
find-up: ^5.0.0
launch-editor: ^2.9.1
mime: ^2.4.1
ora: ^5.4.1
prompts: ^2.4.2
semver: ^7.5.2
checksum: 6169f18e399a507e7f8b6fc8ddea113c0272b22b0af8cffdeb3f4ce77d61eaef97aff8aaede17c6501d470adaaf9e87411e1978e1be61202a98f53abe10ac224
languageName: node
linkType: hard
"@react-native-community/cli-tools@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-tools@npm:20.0.1"
......@@ -3055,15 +2867,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli-types@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli-types@npm:20.0.0"
dependencies:
joi: ^17.2.1
checksum: b64b03ff09eb3952c37ba96544156f0b6ffa76e616361a48254e645f914beaa844943ff77ee1fba46445ef8b45f726109fc9ad249afb9d360602cb03db846368
languageName: node
linkType: hard
"@react-native-community/cli-types@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli-types@npm:20.0.1"
......@@ -3073,31 +2876,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native-community/cli@npm:20.0.0":
version: 20.0.0
resolution: "@react-native-community/cli@npm:20.0.0"
dependencies:
"@react-native-community/cli-clean": 20.0.0
"@react-native-community/cli-config": 20.0.0
"@react-native-community/cli-doctor": 20.0.0
"@react-native-community/cli-server-api": 20.0.0
"@react-native-community/cli-tools": 20.0.0
"@react-native-community/cli-types": 20.0.0
chalk: ^4.1.2
commander: ^9.4.1
deepmerge: ^4.3.0
execa: ^5.0.0
find-up: ^5.0.0
fs-extra: ^8.1.0
graceful-fs: ^4.1.3
prompts: ^2.4.2
semver: ^7.5.2
bin:
rnc-cli: build/bin.js
checksum: 70a48fef9a9b5c70c3c8cceae076ee25a791e57e20b956a63d24790d8c3a571a069f9114f731384e1cb14fa56721a82faec3a53095a8c4062a2584e2ee862542
languageName: node
linkType: hard
"@react-native-community/cli@npm:20.0.1":
version: 20.0.1
resolution: "@react-native-community/cli@npm:20.0.1"
......@@ -3305,46 +3083,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native/metro-babel-transformer@npm:0.81.1":
version: 0.81.1
resolution: "@react-native/metro-babel-transformer@npm:0.81.1"
dependencies:
"@babel/core": ^7.25.2
"@react-native/babel-preset": 0.81.1
hermes-parser: 0.29.1
nullthrows: ^1.1.1
peerDependencies:
"@babel/core": "*"
checksum: d671a87b7509c5c397c970eb3f27c3eacfec5fe129293e83f998d2645c7ac0a9f31fa8fbee8ee869592953adc4f914dd9e32bd38467d9590685f97c0b79c1d92
languageName: node
linkType: hard
"@react-native/metro-config@npm:0.81.1":
version: 0.81.1
resolution: "@react-native/metro-config@npm:0.81.1"
dependencies:
"@react-native/js-polyfills": 0.81.1
"@react-native/metro-babel-transformer": 0.81.1
metro-config: ^0.83.1
metro-runtime: ^0.83.1
checksum: fd1c1edfce1a6d4f78f54884b411b8c0b0b5e7a5906f2796445ee0a9ecf5ee8e05a45ac694b67c4b101ebd7aead302e1f8cf1b5fc734f8e64cd3516c3654604c
languageName: node
linkType: hard
"@react-native/new-app-screen@npm:0.81.1":
version: 0.81.1
resolution: "@react-native/new-app-screen@npm:0.81.1"
peerDependencies:
"@types/react": ^19.1.0
react: "*"
react-native: "*"
peerDependenciesMeta:
"@types/react":
optional: true
checksum: faa084596292146b3d8b0432dbee25f7dee53bde3b92f1964ab627babba4a8eba56b302f45f1c56294357d26f1458d7a1b2a70932828d5b2475737ed057ac058
languageName: node
linkType: hard
"@react-native/normalize-colors@npm:0.81.1":
version: 0.81.1
resolution: "@react-native/normalize-colors@npm:0.81.1"
......@@ -3352,13 +3090,6 @@ __metadata:
languageName: node
linkType: hard
"@react-native/typescript-config@npm:0.81.1":
version: 0.81.1
resolution: "@react-native/typescript-config@npm:0.81.1"
checksum: f8091d1174d3e7046f7c95c030448f83e6f35568728cc7b2293ced1dfc23927b3ddb73b0c28f64dd05a0023c069176f156cf06141c1723001d0f47240c6476bf
languageName: node
linkType: hard
"@react-native/virtualized-lists@npm:0.81.1":
version: 0.81.1
resolution: "@react-native/virtualized-lists@npm:0.81.1"
......@@ -3823,6 +3554,40 @@ __metadata:
languageName: node
linkType: hard
"QmsPlugin@workspace:.":
version: 0.0.0-use.local
resolution: "QmsPlugin@workspace:."
dependencies:
"@commitlint/config-conventional": ^19.8.1
"@eslint/compat": ^1.3.2
"@eslint/eslintrc": ^3.3.1
"@eslint/js": ^9.35.0
"@evilmartians/lefthook": ^1.12.3
"@react-native-community/cli": 20.0.1
"@react-native/babel-preset": 0.81.1
"@react-native/eslint-config": ^0.81.1
"@release-it/conventional-changelog": ^10.0.1
"@types/jest": ^29.5.14
"@types/react": ^19.1.0
commitlint: ^19.8.1
del-cli: ^6.0.0
eslint: ^9.35.0
eslint-config-prettier: ^10.1.8
eslint-plugin-prettier: ^5.5.4
jest: ^29.7.0
prettier: ^3.6.2
react: 19.1.0
react-native: 0.81.1
react-native-builder-bob: ^0.40.13
release-it: ^19.0.4
turbo: ^2.5.6
typescript: ^5.9.2
peerDependencies:
react: "*"
react-native: "*"
languageName: unknown
linkType: soft
"abbrev@npm:^3.0.0":
version: 3.0.1
resolution: "abbrev@npm:3.0.1"
......@@ -10248,7 +10013,7 @@ __metadata:
languageName: node
linkType: hard
"react-native-monorepo-config@npm:^0.1.8, react-native-monorepo-config@npm:^0.1.9":
"react-native-monorepo-config@npm:^0.1.8":
version: 0.1.10
resolution: "react-native-monorepo-config@npm:0.1.10"
dependencies:
......@@ -10258,40 +10023,6 @@ __metadata:
languageName: node
linkType: hard
"react-native-qms-plugin-example@workspace:example":
version: 0.0.0-use.local
resolution: "react-native-qms-plugin-example@workspace:example"
dependencies:
"@alepmustaqim03/react-native-qms-plugin": "file:.."
"@babel/core": ^7.25.2
"@babel/preset-env": ^7.25.3
"@babel/runtime": ^7.25.0
"@react-native-community/cli": 20.0.0
"@react-native-community/cli-platform-android": 20.0.0
"@react-native-community/cli-platform-ios": 20.0.0
"@react-native/babel-preset": 0.81.1
"@react-native/metro-config": 0.81.1
"@react-native/new-app-screen": 0.81.1
"@react-native/typescript-config": 0.81.1
"@types/react": ^19.1.0
react: 19.1.0
react-native: 0.81.1
react-native-builder-bob: ^0.40.13
react-native-monorepo-config: ^0.1.9
react-native-safe-area-context: ^5.5.2
languageName: unknown
linkType: soft
"react-native-safe-area-context@npm:^5.5.2":
version: 5.6.1
resolution: "react-native-safe-area-context@npm:5.6.1"
peerDependencies:
react: "*"
react-native: "*"
checksum: f346615d5f8f26c0c8459d29c149ea3f66684b8ae79cea6fd48d118d039851a69a92955d67b455d0e7ab46639155c4357ebf58ec1859b2377ee459e2a04b602b
languageName: node
linkType: hard
"react-native@npm:0.81.1":
version: 0.81.1
resolution: "react-native@npm:0.81.1"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment