Add iOS framework
2
.gitignore
vendored
@@ -16,7 +16,7 @@ proguard/
|
||||
captures/
|
||||
|
||||
# Built application files
|
||||
/*/build/
|
||||
build/
|
||||
|
||||
## File-based project format:
|
||||
*.ipr
|
||||
|
||||
23
README.md
@@ -1,10 +1,25 @@
|
||||
# Android-Widgets
|
||||
Contains the source code of the `org.nativescript.widgets` library used by the NativeScript cross-platform modules implementation for Android.
|
||||
Contains the source code of the `tns-core-modules-widgets` library.
|
||||
This library contains native code (Java and Objective-C) used by the NativeScript core modules `tns-core-modules`.
|
||||
|
||||
## How to Build
|
||||
On Mac in the root folder run:
|
||||
```
|
||||
gradle packFramework
|
||||
./build.sh
|
||||
```
|
||||
This will run Android and iOS build and pack `dist/tns-core-modules-widgets-*.tgz`.
|
||||
|
||||
## How to Build Android
|
||||
In the `android` folder run:
|
||||
```
|
||||
gradle build
|
||||
```
|
||||
This will output `android/build/widgets-release.aar`.
|
||||
|
||||
## How to Build iOS
|
||||
On Mac in the `ios` folder under mac run:
|
||||
```
|
||||
./build.sh
|
||||
```
|
||||
This will output `ios/build/TNSWidgets.framework`.
|
||||
|
||||
This generates widgets-debug.aar and widgets-release.aar files located in the widgets/build/outputs/aar folder.
|
||||
And generates tgz files in dist folder.
|
||||
|
||||
0
app/.gitignore → android/app/.gitignore
vendored
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 7.5 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
0
gradlew → android/gradlew
vendored
73
android/widgets/build.gradle
Normal file
@@ -0,0 +1,73 @@
|
||||
import groovy.json.JsonSlurper //used to parse package.json
|
||||
import groovy.json.JsonBuilder
|
||||
import groovy.json.JsonOutput
|
||||
|
||||
def isWinOs = System.properties['os.name'].toLowerCase().contains('windows')
|
||||
|
||||
apply plugin: 'com.android.library'
|
||||
|
||||
def computeCompuleSdkVersion () {
|
||||
if(project.hasProperty("compileSdk")) {
|
||||
return compileSdk
|
||||
}
|
||||
else {
|
||||
return 23
|
||||
}
|
||||
}
|
||||
|
||||
def computeBuildToolsVersion() {
|
||||
if(project.hasProperty("buildToolsVersion")) {
|
||||
return buildToolsVersion
|
||||
}
|
||||
else {
|
||||
return "22.0.1"
|
||||
}
|
||||
}
|
||||
|
||||
def computeTargetSdkVersion() {
|
||||
if(project.hasProperty("targetSdk")) {
|
||||
return targetSdk
|
||||
}
|
||||
else {
|
||||
return 23
|
||||
}
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion computeCompuleSdkVersion()
|
||||
buildToolsVersion computeBuildToolsVersion()
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion 17
|
||||
targetSdkVersion computeTargetSdkVersion()
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile fileTree(include: ['*.jar'], dir: 'libs')
|
||||
testCompile 'junit:junit:4.12'
|
||||
compile 'com.android.support:support-v4:+'
|
||||
}
|
||||
|
||||
task cleanBuildDir (type: Delete) {
|
||||
delete "../build/"
|
||||
}
|
||||
|
||||
task copyAar << {
|
||||
copy {
|
||||
from "build/outputs/aar/widgets-release.aar"
|
||||
into "../build/"
|
||||
}
|
||||
}
|
||||
|
||||
assembleRelease.dependsOn(cleanBuildDir)
|
||||
copyAar.dependsOn(assembleRelease)
|
||||
build.dependsOn(copyAar)
|
||||
35
build.sh
Executable file
@@ -0,0 +1,35 @@
|
||||
#!/bin/sh
|
||||
|
||||
rm -rf dist
|
||||
mkdir dist
|
||||
mkdir dist/package
|
||||
mkdir dist/package/platforms
|
||||
|
||||
echo "Build android"
|
||||
mkdir dist/package/platforms/android
|
||||
cd android
|
||||
gradle build
|
||||
cd ..
|
||||
cp android/build/widgets-release.aar dist/package/platforms/android/widgets-release.aar
|
||||
|
||||
echo "Build ios"
|
||||
mkdir dist/package/platforms/ios
|
||||
cd ios
|
||||
./build.sh
|
||||
cd ..
|
||||
cp -r ios/TNSWidgets/build/TNSWidgets.framework dist/package/platforms/ios/TNSWidgets.framework
|
||||
|
||||
echo "Copy NPM artefacts"
|
||||
cp LICENSE dist/package/LICENSE
|
||||
cp LICENSE.md dist/package/LICENSE.md
|
||||
cp README.md dist/package/README.md
|
||||
cp package.json dist/package/package.json
|
||||
|
||||
# npm pack
|
||||
echo "NPM pack"
|
||||
cd dist/package
|
||||
PACKAGE="$(npm pack)"
|
||||
cd ../..
|
||||
mv dist/package/$PACKAGE dist/$PACKAGE
|
||||
echo "Output: dist/$PACKAGE"
|
||||
|
||||
397
ios/TNSWidgets/TNSWidgets.xcodeproj/project.pbxproj
Normal file
@@ -0,0 +1,397 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
F98F5CB31CD0EFEA00978308 /* TNSWidgets.h in Headers */ = {isa = PBXBuildFile; fileRef = F98F5CB21CD0EFEA00978308 /* TNSWidgets.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
F98F5CBA1CD0EFEA00978308 /* TNSWidgets.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F98F5CAF1CD0EFEA00978308 /* TNSWidgets.framework */; };
|
||||
F98F5CBF1CD0EFEA00978308 /* TNSWidgetsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F98F5CBE1CD0EFEA00978308 /* TNSWidgetsTests.m */; };
|
||||
F98F5CCB1CD0F09E00978308 /* UIImage+TNSBlocks.h in Headers */ = {isa = PBXBuildFile; fileRef = F98F5CC91CD0F09E00978308 /* UIImage+TNSBlocks.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
F98F5CCC1CD0F09E00978308 /* UIImage+TNSBlocks.m in Sources */ = {isa = PBXBuildFile; fileRef = F98F5CCA1CD0F09E00978308 /* UIImage+TNSBlocks.m */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
F98F5CBB1CD0EFEA00978308 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = F98F5CA61CD0EFEA00978308 /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = F98F5CAE1CD0EFEA00978308;
|
||||
remoteInfo = TNSWidgets;
|
||||
};
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
F98F5CAF1CD0EFEA00978308 /* TNSWidgets.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = TNSWidgets.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
F98F5CB21CD0EFEA00978308 /* TNSWidgets.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TNSWidgets.h; sourceTree = "<group>"; };
|
||||
F98F5CB41CD0EFEA00978308 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
F98F5CB91CD0EFEA00978308 /* TNSWidgetsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TNSWidgetsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
F98F5CBE1CD0EFEA00978308 /* TNSWidgetsTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = TNSWidgetsTests.m; sourceTree = "<group>"; };
|
||||
F98F5CC01CD0EFEA00978308 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
F98F5CC91CD0F09E00978308 /* UIImage+TNSBlocks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+TNSBlocks.h"; sourceTree = "<group>"; };
|
||||
F98F5CCA1CD0F09E00978308 /* UIImage+TNSBlocks.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+TNSBlocks.m"; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
F98F5CAB1CD0EFEA00978308 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
F98F5CB61CD0EFEA00978308 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F98F5CBA1CD0EFEA00978308 /* TNSWidgets.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
F98F5CA51CD0EFEA00978308 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F98F5CB11CD0EFEA00978308 /* TNSWidgets */,
|
||||
F98F5CBD1CD0EFEA00978308 /* TNSWidgetsTests */,
|
||||
F98F5CB01CD0EFEA00978308 /* Products */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F98F5CB01CD0EFEA00978308 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F98F5CAF1CD0EFEA00978308 /* TNSWidgets.framework */,
|
||||
F98F5CB91CD0EFEA00978308 /* TNSWidgetsTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F98F5CB11CD0EFEA00978308 /* TNSWidgets */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F98F5CB21CD0EFEA00978308 /* TNSWidgets.h */,
|
||||
F98F5CC91CD0F09E00978308 /* UIImage+TNSBlocks.h */,
|
||||
F98F5CCA1CD0F09E00978308 /* UIImage+TNSBlocks.m */,
|
||||
F98F5CB41CD0EFEA00978308 /* Info.plist */,
|
||||
);
|
||||
path = TNSWidgets;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F98F5CBD1CD0EFEA00978308 /* TNSWidgetsTests */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F98F5CBE1CD0EFEA00978308 /* TNSWidgetsTests.m */,
|
||||
F98F5CC01CD0EFEA00978308 /* Info.plist */,
|
||||
);
|
||||
path = TNSWidgetsTests;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
F98F5CAC1CD0EFEA00978308 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F98F5CB31CD0EFEA00978308 /* TNSWidgets.h in Headers */,
|
||||
F98F5CCB1CD0F09E00978308 /* UIImage+TNSBlocks.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
F98F5CAE1CD0EFEA00978308 /* TNSWidgets */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = F98F5CC31CD0EFEA00978308 /* Build configuration list for PBXNativeTarget "TNSWidgets" */;
|
||||
buildPhases = (
|
||||
F98F5CAA1CD0EFEA00978308 /* Sources */,
|
||||
F98F5CAB1CD0EFEA00978308 /* Frameworks */,
|
||||
F98F5CAC1CD0EFEA00978308 /* Headers */,
|
||||
F98F5CAD1CD0EFEA00978308 /* Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = TNSWidgets;
|
||||
productName = TNSWidgets;
|
||||
productReference = F98F5CAF1CD0EFEA00978308 /* TNSWidgets.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
F98F5CB81CD0EFEA00978308 /* TNSWidgetsTests */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = F98F5CC61CD0EFEA00978308 /* Build configuration list for PBXNativeTarget "TNSWidgetsTests" */;
|
||||
buildPhases = (
|
||||
F98F5CB51CD0EFEA00978308 /* Sources */,
|
||||
F98F5CB61CD0EFEA00978308 /* Frameworks */,
|
||||
F98F5CB71CD0EFEA00978308 /* Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
F98F5CBC1CD0EFEA00978308 /* PBXTargetDependency */,
|
||||
);
|
||||
name = TNSWidgetsTests;
|
||||
productName = TNSWidgetsTests;
|
||||
productReference = F98F5CB91CD0EFEA00978308 /* TNSWidgetsTests.xctest */;
|
||||
productType = "com.apple.product-type.bundle.unit-test";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
F98F5CA61CD0EFEA00978308 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0720;
|
||||
ORGANIZATIONNAME = "Telerik A D";
|
||||
TargetAttributes = {
|
||||
F98F5CAE1CD0EFEA00978308 = {
|
||||
CreatedOnToolsVersion = 7.2;
|
||||
};
|
||||
F98F5CB81CD0EFEA00978308 = {
|
||||
CreatedOnToolsVersion = 7.2;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = F98F5CA91CD0EFEA00978308 /* Build configuration list for PBXProject "TNSWidgets" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
);
|
||||
mainGroup = F98F5CA51CD0EFEA00978308;
|
||||
productRefGroup = F98F5CB01CD0EFEA00978308 /* Products */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
F98F5CAE1CD0EFEA00978308 /* TNSWidgets */,
|
||||
F98F5CB81CD0EFEA00978308 /* TNSWidgetsTests */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
F98F5CAD1CD0EFEA00978308 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
F98F5CB71CD0EFEA00978308 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
F98F5CAA1CD0EFEA00978308 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F98F5CCC1CD0F09E00978308 /* UIImage+TNSBlocks.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
F98F5CB51CD0EFEA00978308 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F98F5CBF1CD0EFEA00978308 /* TNSWidgetsTests.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXTargetDependency section */
|
||||
F98F5CBC1CD0EFEA00978308 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = F98F5CAE1CD0EFEA00978308 /* TNSWidgets */;
|
||||
targetProxy = F98F5CBB1CD0EFEA00978308 /* PBXContainerItemProxy */;
|
||||
};
|
||||
/* End PBXTargetDependency section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
F98F5CC11CD0EFEA00978308 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
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 = 9.2;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
F98F5CC21CD0EFEA00978308 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
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 = 9.2;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
F98F5CC41CD0EFEA00978308 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = TNSWidgets/Info.plist;
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.nativescript.TNSWidgets;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SKIP_INSTALL = YES;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
F98F5CC51CD0EFEA00978308 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
INFOPLIST_FILE = TNSWidgets/Info.plist;
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.nativescript.TNSWidgets;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SKIP_INSTALL = YES;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
F98F5CC71CD0EFEA00978308 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = TNSWidgetsTests/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.nativescript.TNSWidgetsTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
F98F5CC81CD0EFEA00978308 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = TNSWidgetsTests/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.nativescript.TNSWidgetsTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
F98F5CA91CD0EFEA00978308 /* Build configuration list for PBXProject "TNSWidgets" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
F98F5CC11CD0EFEA00978308 /* Debug */,
|
||||
F98F5CC21CD0EFEA00978308 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
F98F5CC31CD0EFEA00978308 /* Build configuration list for PBXNativeTarget "TNSWidgets" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
F98F5CC41CD0EFEA00978308 /* Debug */,
|
||||
F98F5CC51CD0EFEA00978308 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
};
|
||||
F98F5CC61CD0EFEA00978308 /* Build configuration list for PBXNativeTarget "TNSWidgetsTests" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
F98F5CC71CD0EFEA00978308 /* Debug */,
|
||||
F98F5CC81CD0EFEA00978308 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = F98F5CA61CD0EFEA00978308 /* Project object */;
|
||||
}
|
||||
7
ios/TNSWidgets/TNSWidgets.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:TNSWidgets.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
@@ -0,0 +1,99 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0720"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F98F5CAE1CD0EFEA00978308"
|
||||
BuildableName = "TNSWidgets.framework"
|
||||
BlueprintName = "TNSWidgets"
|
||||
ReferencedContainer = "container:TNSWidgets.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F98F5CB81CD0EFEA00978308"
|
||||
BuildableName = "TNSWidgetsTests.xctest"
|
||||
BlueprintName = "TNSWidgetsTests"
|
||||
ReferencedContainer = "container:TNSWidgets.xcodeproj">
|
||||
</BuildableReference>
|
||||
</TestableReference>
|
||||
</Testables>
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F98F5CAE1CD0EFEA00978308"
|
||||
BuildableName = "TNSWidgets.framework"
|
||||
BlueprintName = "TNSWidgets"
|
||||
ReferencedContainer = "container:TNSWidgets.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F98F5CAE1CD0EFEA00978308"
|
||||
BuildableName = "TNSWidgets.framework"
|
||||
BlueprintName = "TNSWidgets"
|
||||
ReferencedContainer = "container:TNSWidgets.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F98F5CAE1CD0EFEA00978308"
|
||||
BuildableName = "TNSWidgets.framework"
|
||||
BlueprintName = "TNSWidgets"
|
||||
ReferencedContainer = "container:TNSWidgets.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?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>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>TNSWidgets.xcscheme</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>F98F5CAE1CD0EFEA00978308</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>F98F5CB81CD0EFEA00978308</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
26
ios/TNSWidgets/TNSWidgets/Info.plist
Normal file
@@ -0,0 +1,26 @@
|
||||
<?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>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>$(CURRENT_PROJECT_VERSION)</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
</dict>
|
||||
</plist>
|
||||
20
ios/TNSWidgets/TNSWidgets/TNSWidgets.h
Normal file
@@ -0,0 +1,20 @@
|
||||
//
|
||||
// TNSWidgets.h
|
||||
// TNSWidgets
|
||||
//
|
||||
// Created by Panayot Cankov on 4/27/16.
|
||||
// Copyright © 2016 Telerik A D. All rights reserved.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
//! Project version number for TNSWidgets.
|
||||
FOUNDATION_EXPORT double TNSWidgetsVersionNumber;
|
||||
|
||||
//! Project version string for TNSWidgets.
|
||||
FOUNDATION_EXPORT const unsigned char TNSWidgetsVersionString[];
|
||||
|
||||
// In this header, you should import all the public headers of your framework using statements like #import <TNSWidgets/PublicHeader.h>
|
||||
|
||||
#import "UIImage+TNSBlocks.h"
|
||||
|
||||
15
ios/TNSWidgets/TNSWidgets/UIImage+TNSBlocks.h
Normal file
@@ -0,0 +1,15 @@
|
||||
//
|
||||
// UIImage+UIImage_Async.h
|
||||
// TKImageAsync
|
||||
//
|
||||
// Created by Panayot Cankov on 4/18/16.
|
||||
// Copyright © 2016 Telerik A D. All rights reserved.
|
||||
//
|
||||
|
||||
|
||||
|
||||
@interface UIImage (TNSBlocks)
|
||||
|
||||
+ (void) tns_imageNamed: (NSString*) name completion: (void (^) (UIImage*))callback;
|
||||
|
||||
@end
|
||||
37
ios/TNSWidgets/TNSWidgets/UIImage+TNSBlocks.m
Normal file
@@ -0,0 +1,37 @@
|
||||
//
|
||||
// UIImage+UIImage_Async.m
|
||||
// TKImageAsync
|
||||
//
|
||||
// Created by Panayot Cankov on 4/18/16.
|
||||
// Copyright © 2016 Telerik A D. All rights reserved.
|
||||
//
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "UIImage+TNSBlocks.h"
|
||||
|
||||
@implementation UIImage (TNSBlocks)
|
||||
|
||||
static dispatch_queue_t image_queue;
|
||||
+ (void) initialize {
|
||||
image_queue = dispatch_queue_create("org.nativescript.TNSWidgets.image", NULL);
|
||||
}
|
||||
|
||||
- (void) tns_decompressImage {
|
||||
CGImageRef cgImg = [self CGImage];
|
||||
// TODO: Do performance tests if actual drawing is necessary
|
||||
|
||||
// UIGraphicsBeginImageContext(CGSizeMake(1, 1));
|
||||
// [self drawAtPoint:CGPointZero];
|
||||
// UIGraphicsEndImageContext();
|
||||
}
|
||||
|
||||
+ (void) tns_imageNamed: (NSString*) name completion: (void (^) (UIImage*))callback {
|
||||
dispatch_async(image_queue, ^(void){
|
||||
UIImage* image = [UIImage imageNamed: name];
|
||||
[image tns_decompressImage];
|
||||
dispatch_async(dispatch_get_main_queue(), ^(void) {
|
||||
callback(image);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@end
|
||||
24
ios/TNSWidgets/TNSWidgetsTests/Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?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>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
</dict>
|
||||
</plist>
|
||||
39
ios/TNSWidgets/TNSWidgetsTests/TNSWidgetsTests.m
Normal file
@@ -0,0 +1,39 @@
|
||||
//
|
||||
// TNSWidgetsTests.m
|
||||
// TNSWidgetsTests
|
||||
//
|
||||
// Created by Panayot Cankov on 4/27/16.
|
||||
// Copyright © 2016 Telerik A D. All rights reserved.
|
||||
//
|
||||
|
||||
#import <XCTest/XCTest.h>
|
||||
|
||||
@interface TNSWidgetsTests : XCTestCase
|
||||
|
||||
@end
|
||||
|
||||
@implementation TNSWidgetsTests
|
||||
|
||||
- (void)setUp {
|
||||
[super setUp];
|
||||
// Put setup code here. This method is called before the invocation of each test method in the class.
|
||||
}
|
||||
|
||||
- (void)tearDown {
|
||||
// Put teardown code here. This method is called after the invocation of each test method in the class.
|
||||
[super tearDown];
|
||||
}
|
||||
|
||||
- (void)testExample {
|
||||
// This is an example of a functional test case.
|
||||
// Use XCTAssert and related functions to verify your tests produce the correct results.
|
||||
}
|
||||
|
||||
- (void)testPerformanceExample {
|
||||
// This is an example of a performance test case.
|
||||
[self measureBlock:^{
|
||||
// Put the code you want to measure the time of here.
|
||||
}];
|
||||
}
|
||||
|
||||
@end
|
||||
16
ios/build.sh
Executable file
@@ -0,0 +1,16 @@
|
||||
echo "Build for iphonesimulator"
|
||||
xcodebuild -project TNSWidgets/TNSWidgets.xcodeproj -sdk iphonesimulator -target TNSWidgets -configuration Release clean build CONFIGURATION_BUILD_DIR=build/Release-iphonesimulator
|
||||
|
||||
echo "Build for iphoneos"
|
||||
xcodebuild -project TNSWidgets/TNSWidgets.xcodeproj -sdk iphoneos -target TNSWidgets -configuration Release clean build CONFIGURATION_BUILD_DIR=build/Release-iphoneos
|
||||
|
||||
echo "Build fat framework at TNSWidgets/build/TNSWidgets.framework"
|
||||
rm -rf TNSWidgets/build/TNSWidgets.framework
|
||||
mkdir TNSWidgets/build/TNSWidgets.framework
|
||||
|
||||
cp -r TNSWidgets/build/Release-iphoneos/TNSWidgets.framework/Headers TNSWidgets/build/TNSWidgets.framework/Headers
|
||||
cp -r TNSWidgets/build/Release-iphoneos/TNSWidgets.framework/Modules TNSWidgets/build/TNSWidgets.framework/Modules
|
||||
cp -r TNSWidgets/build/Release-iphoneos/TNSWidgets.framework/Info.plist TNSWidgets/build/TNSWidgets.framework/Info.plist
|
||||
|
||||
lipo -create TNSWidgets/build/Release-iphoneos/TNSWidgets.framework/TNSWidgets TNSWidgets/build/Release-iphonesimulator/TNSWidgets.framework/TNSWidgets -o TNSWidgets/build/TNSWidgets.framework/TNSWidgets
|
||||
file TNSWidgets/build/TNSWidgets.framework/TNSWidgets
|
||||
@@ -1,110 +0,0 @@
|
||||
import groovy.json.JsonSlurper //used to parse package.json
|
||||
import groovy.json.JsonBuilder
|
||||
import groovy.json.JsonOutput
|
||||
|
||||
def isWinOs = System.properties['os.name'].toLowerCase().contains('windows')
|
||||
|
||||
apply plugin: 'com.android.library'
|
||||
|
||||
def computeCompuleSdkVersion () {
|
||||
if(project.hasProperty("compileSdk")) {
|
||||
return compileSdk
|
||||
}
|
||||
else {
|
||||
return 23
|
||||
}
|
||||
}
|
||||
|
||||
def computeBuildToolsVersion() {
|
||||
if(project.hasProperty("buildToolsVersion")) {
|
||||
return buildToolsVersion
|
||||
}
|
||||
else {
|
||||
return "22.0.1"
|
||||
}
|
||||
}
|
||||
|
||||
def computeTargetSdkVersion() {
|
||||
if(project.hasProperty("targetSdk")) {
|
||||
return targetSdk
|
||||
}
|
||||
else {
|
||||
return 23
|
||||
}
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion computeCompuleSdkVersion()
|
||||
buildToolsVersion computeBuildToolsVersion()
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion 17
|
||||
targetSdkVersion computeTargetSdkVersion()
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile fileTree(include: ['*.jar'], dir: 'libs')
|
||||
testCompile 'junit:junit:4.12'
|
||||
compile 'com.android.support:support-v4:+'
|
||||
}
|
||||
|
||||
task cleanDistDir (type: Delete) {
|
||||
delete "../dist/"
|
||||
}
|
||||
|
||||
task fixVersion << {
|
||||
if(project.hasProperty("PACKAGE_VERSION")) {
|
||||
def inputFile = new File("../package.json")
|
||||
def json = new JsonSlurper().parseText(inputFile.text)
|
||||
json.version = json.version + "-" + PACKAGE_VERSION
|
||||
def jb = new JsonBuilder(json);
|
||||
inputFile.text = JsonOutput.prettyPrint(jb.toString())
|
||||
}
|
||||
}
|
||||
|
||||
task copyAar << {
|
||||
copy {
|
||||
from "../package.json"
|
||||
into "../dist"
|
||||
}
|
||||
copy {
|
||||
from "build/outputs/aar/widgets-release.aar"
|
||||
into "../dist/platforms/android/"
|
||||
}
|
||||
}
|
||||
|
||||
task revertPackageJson (type: Exec) {
|
||||
if(isWinOs) {
|
||||
commandLine "cmd", "/c", "git", "checkout", "--", "../package.json"
|
||||
}
|
||||
else {
|
||||
commandLine "git", "checkout", "--", "../package.json"
|
||||
}
|
||||
}
|
||||
|
||||
task packFramework (type: Exec) {
|
||||
workingDir "../dist"
|
||||
|
||||
if(isWinOs) {
|
||||
commandLine "cmd", "/c", "npm", "pack"
|
||||
}
|
||||
else {
|
||||
commandLine "npm", "pack"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
assembleRelease.dependsOn(cleanDistDir)
|
||||
fixVersion.dependsOn(assembleRelease)
|
||||
copyAar.dependsOn(fixVersion)
|
||||
revertPackageJson.dependsOn(copyAar)
|
||||
packFramework.dependsOn(revertPackageJson)
|
||||