gonative-cli 0.5.6 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/lib/gonative/commands/android/create.rb +17 -0
  4. data/lib/gonative/commands/ios/create.rb +1 -1
  5. data/lib/gonative/commands.rb +1 -0
  6. data/lib/gonative/plugins/android/create.rb +54 -0
  7. data/lib/gonative/plugins/ios/create.rb +1 -27
  8. data/lib/gonative/utils/content_evaluator.rb +16 -0
  9. data/lib/gonative/utils/sanitize_plugin_name.rb +17 -0
  10. data/lib/gonative/utils/template_inflator.rb +38 -8
  11. data/lib/gonative/{plugins.rb → utils.rb} +1 -1
  12. data/lib/gonative/version.rb +1 -1
  13. data/templates/plugins/android/build.gradle +33 -0
  14. data/templates/plugins/android/consumer-rules.pro +0 -0
  15. data/templates/plugins/android/plugin-metadata.json.tpl +7 -0
  16. data/templates/plugins/android/proguard-rules.pro +21 -0
  17. data/templates/plugins/android/src/main/AndroidManifest.xml.tpl +5 -0
  18. data/templates/plugins/android/src/main/java/io/gonative/android/plugins/JAVA_PACKAGE/PLUGIN_NAME.java.tpl +26 -0
  19. data/templates/plugins/ios/common/PLUGIN_NAME.podspec.tpl +7 -7
  20. data/templates/plugins/ios/common/Podfile.tpl +2 -2
  21. data/templates/plugins/ios/common/create-framework.sh.tpl +4 -4
  22. data/templates/plugins/ios/language-specific/objc/PLUGIN_NAME/Classes/GNPLUGIN_NAME.h.tpl +3 -3
  23. data/templates/plugins/ios/language-specific/objc/PLUGIN_NAME/Classes/GNPLUGIN_NAME.m.tpl +4 -4
  24. data/templates/plugins/ios/language-specific/swift/PLUGIN_NAME/Classes/GNSwiftModule.m.tpl +3 -3
  25. data/templates/plugins/ios/language-specific/swift/PLUGIN_NAME/Classes/GNSwiftModule.swift.tpl +4 -4
  26. metadata +13 -4
  27. data/templates/plugins/ios/common/js/info.plist.json.tpl +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8b5265e83ea1fb696fde7c7268dbae499678c2d5b6a20f65af77f461faed3d56
4
- data.tar.gz: 2b4ac25eac3e13767571f6b7206362449eb1943f9cfecd28d33779c291e254ae
3
+ metadata.gz: 0d7617eafaa04e3fb5a03bd016234479630b5d6ffd6c443d8a94e7e03c2d16d7
4
+ data.tar.gz: 64e72111529ade7df6d6da73c902f8e4848e04339ddc71a555670f357d95af3f
5
5
  SHA512:
6
- metadata.gz: fe8fc2019620d93576c49edfab157e296947da7658beec2baf2dc2fb7550a1c75aa9d68559948b4085500d5fcadfc2baeaa82d0885e669a61b27dd570fd8ae53
7
- data.tar.gz: a75d080664f67c918e1691492ec8248c0808332bac1d14df6755dced4790f566dc38a280575843c324b5b7f0fbbe91eba3141f9036d830026a5c1cb43794d0df
6
+ metadata.gz: 1f8d324a15a04236a1b0f4549f7b811cfb7faaa9de53ad1de899d9894d3b1d23bc937e84c9f15b1242b6998b04329fba699aef7f6d503ed1f785215f20014127
7
+ data.tar.gz: 61f6dc8ca394e5c11652214811161aecb7c55bc59f34a7d31bbf323ba1b07dc6e09b3edee31542d1df3c718f8cbe766fb6b8be74c33d67cc72bee7d8d3519290
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gonative-cli (0.5.5)
4
+ gonative-cli (0.5.6)
5
5
  activesupport (~> 6.0)
6
6
  cocoapods (~> 1.10)
7
7
  colorize (~> 0.8.0)
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GoNative
4
+ module Commands
5
+ module Android
6
+ class Create < Base
7
+ desc 'Create a new android plugin'
8
+
9
+ argument :name, required: true, desc: 'Name of the plugin'
10
+
11
+ def call(name:, **)
12
+ Plugins::Android::Create.call(name)
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -7,7 +7,7 @@ module GoNative
7
7
  desc 'Create a new plugin'
8
8
 
9
9
  argument :name, required: true, desc: 'Name of the plugin'
10
- option :language, default: "objc", values: Plugins::IOS::Create::LANGUAGES, desc: "Plugin's language"
10
+ option :language, default: "objc", options: Plugins::IOS::Create::LANGUAGES, desc: "Plugin's language"
11
11
 
12
12
  def call(name:, language:, **)
13
13
  Plugins::IOS::Create.call(name, language)
@@ -7,5 +7,6 @@ module GoNative
7
7
  register 'version', Version, aliases: %w[--version -v]
8
8
  register 'ios create', IOS::Create
9
9
  register 'ios publish', IOS::Publish
10
+ register 'android create', Android::Create
10
11
  end
11
12
  end
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'active_support/core_ext/string/inflections'
4
+
5
+ module GoNative
6
+ module Plugins
7
+ module Android
8
+ class Create
9
+ autoload :FileUtils, 'fileutils'
10
+
11
+ extend DSL::Serviceable
12
+
13
+ TEMPLATE_DIRECTORY_PATH = File.expand_path(File.join(__dir__, '../../../..', 'templates', 'plugins', 'android'))
14
+
15
+ attr_reader :plugin_name
16
+
17
+ def initialize(plugin_name)
18
+ @plugin_name = Utils::SanitizePluginName.call(plugin_name, 'android')
19
+ end
20
+
21
+ def call
22
+ assert_not_exists!
23
+ set_working_dir!
24
+ cp_template_files!
25
+ Utils::TemplateInflator.new(plugin_name: capitalized_plugin_name, java_package: java_package).call
26
+ end
27
+
28
+ def assert_not_exists!
29
+ return unless File.directory?(plugin_name)
30
+
31
+ raise Error, "Directory #{plugin_name} already exists"
32
+ end
33
+
34
+ def set_working_dir!
35
+ FileUtils.mkdir(plugin_name)
36
+ FileUtils.cd(plugin_name)
37
+ end
38
+
39
+ def cp_template_files!
40
+ FileUtils.cp_r("#{TEMPLATE_DIRECTORY_PATH}/.", '.')
41
+ system('ditto', TEMPLATE_DIRECTORY_PATH, '.')
42
+ end
43
+
44
+ def capitalized_plugin_name
45
+ [plugin_name, 'plugin'].join('_').camelize
46
+ end
47
+
48
+ def java_package
49
+ plugin_name
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -27,7 +27,7 @@ module GoNative
27
27
  assert_not_exists!
28
28
  set_working_dir!
29
29
  cp_template_files!
30
- inflate_templates!
30
+ Utils::TemplateInflator.new(plugin_name: plugin_name).call
31
31
  chmod_frameworks_script!
32
32
  create_framework_proj!
33
33
  run_pod_install!
@@ -49,18 +49,6 @@ module GoNative
49
49
  system('ditto', File.join(TEMPLATE_DIRECTORY_PATH, 'language-specific', language), '.')
50
50
  end
51
51
 
52
- def inflate_templates!
53
- Dir.glob('*/').each do |dir|
54
- FileUtils.cd(dir)
55
- inflate_templates!
56
- FileUtils.cd('..')
57
- dir_name = dir.delete_suffix('/')
58
- normalized_name = normalized_name(dir_name)
59
- FileUtils.mv(dir_name, normalized_name) if dir_name != normalized_name
60
- end
61
- inflate_files
62
- end
63
-
64
52
  def chmod_frameworks_script!
65
53
  FileUtils.chmod 0755, 'create-framework.sh'
66
54
  end
@@ -83,20 +71,6 @@ module GoNative
83
71
  system 'pod install'
84
72
  end
85
73
 
86
- def inflate_files
87
- Dir.glob("*#{TEMPLATE_FILES_EXTENSION}").each do |file|
88
- File.write(normalized_name(file), contents(file))
89
- FileUtils.rm(file)
90
- end
91
- end
92
-
93
- def normalized_name(file)
94
- file.gsub('PLUGIN_NAME', plugin_name).delete_suffix(TEMPLATE_FILES_EXTENSION)
95
- end
96
-
97
- def contents(file)
98
- Utils::TemplateInflator.new(File.read(file)).call(PLUGIN_NAME: plugin_name, REPO_NAME: repo_name)
99
- end
100
74
 
101
75
  def repo_name
102
76
  plugin_name.underscore.dasherize.prepend 'ios-'
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'ostruct'
4
+
5
+ module GoNative
6
+ module Utils
7
+ class ContentEvaluator
8
+ class << self
9
+ def call(content, values)
10
+ o = OpenStruct.new(values)
11
+ o.instance_eval('"' + content.gsub('"', '\\\\"') + '"')
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'active_support/core_ext/string/inflections'
4
+
5
+ module GoNative
6
+ module Utils
7
+ class SanitizePluginName
8
+ class << self
9
+ def call(raw_name, platform)
10
+ name_components = raw_name.underscore.dasherize.split('-') - ['plugin', platform]
11
+
12
+ name_components.join('-')
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -3,19 +3,49 @@
3
3
  module GoNative
4
4
  module Utils
5
5
  class TemplateInflator
6
- def initialize(content)
7
- @content = content.dup
6
+ autoload :FileUtils, 'fileutils'
7
+
8
+ extend DSL::Serviceable
9
+
10
+ def initialize(options)
11
+ @options = options
8
12
  end
9
-
10
- def call(values)
11
- values.each { |name, value| content.gsub!("{{#{name}}}", value.to_s) }
12
-
13
- content
13
+
14
+ def call
15
+ Dir.glob('*/').each do |dir|
16
+ FileUtils.cd(dir)
17
+ call
18
+ FileUtils.cd('..')
19
+ dir_name = dir.delete_suffix('/')
20
+ normalized_name = normalized_name(dir_name)
21
+ FileUtils.mv(dir_name, normalized_name) if dir_name != normalized_name
22
+ end
23
+ inflate_files
24
+ end
25
+
26
+ def inflate_files
27
+ Dir.glob("*#{TEMPLATE_FILES_EXTENSION}").each do |file|
28
+ File.write(normalized_name(file), contents(file))
29
+ FileUtils.rm(file)
30
+ end
31
+ end
32
+
33
+ def contents(file)
34
+ content = File.read(file)
35
+ Utils::ContentEvaluator.call(content, options)
36
+ end
37
+
38
+ def normalized_name(file_name)
39
+ new_name = file_name.dup
40
+ options.each do |key, value|
41
+ new_name.gsub!(key.to_s.upcase, value)
42
+ end
43
+ new_name.delete_suffix(TEMPLATE_FILES_EXTENSION)
14
44
  end
15
45
 
16
46
  private
17
47
 
18
- attr_reader :content
48
+ attr_reader :options
19
49
  end
20
50
  end
21
51
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GoNative
4
- module Plugins
4
+ module Utils
5
5
  TEMPLATE_FILES_EXTENSION = '.tpl'.freeze
6
6
  end
7
7
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GoNative
4
- VERSION = "0.5.6"
4
+ VERSION = "0.6.0"
5
5
  end
@@ -0,0 +1,33 @@
1
+ plugins {
2
+ id 'com.android.library'
3
+ }
4
+
5
+ android {
6
+ compileSdkVersion 30
7
+
8
+ defaultConfig {
9
+ minSdkVersion 16
10
+ targetSdkVersion 30
11
+ versionCode 1
12
+ versionName "1.0"
13
+
14
+ testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
15
+ consumerProguardFiles "consumer-rules.pro"
16
+ }
17
+
18
+ buildTypes {
19
+ release {
20
+ minifyEnabled false
21
+ proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
22
+ }
23
+ }
24
+ compileOptions {
25
+ sourceCompatibility JavaVersion.VERSION_1_8
26
+ targetCompatibility JavaVersion.VERSION_1_8
27
+ }
28
+ }
29
+
30
+ dependencies {
31
+ implementation "io.gonative.android:library:+"
32
+ api project(':gonative-core')
33
+ }
File without changes
@@ -0,0 +1,7 @@
1
+ {
2
+ "plugin": {
3
+ "packageName": "io.gonative.android.plugins.#{java_package}",
4
+ "classInstance": "#{plugin_name}",
5
+ "pluginName": "#{java_package + '-plugin'}"
6
+ }
7
+ }
@@ -0,0 +1,21 @@
1
+ # Add project specific ProGuard rules here.
2
+ # You can control the set of applied configuration files using the
3
+ # proguardFiles setting in build.gradle.
4
+ #
5
+ # For more details, see
6
+ # http://developer.android.com/guide/developing/tools/proguard.html
7
+
8
+ # If your project uses WebView with JS, uncomment the following
9
+ # and specify the fully qualified class name to the JavaScript interface
10
+ # class:
11
+ #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12
+ # public *;
13
+ #}
14
+
15
+ # Uncomment this to preserve the line number information for
16
+ # debugging stack traces.
17
+ #-keepattributes SourceFile,LineNumberTable
18
+
19
+ # If you keep the line number information, uncomment this to
20
+ # hide the original source file name.
21
+ #-renamesourcefileattribute SourceFile
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3
+ package="io.gonative.android.plugins.#{java_package}">
4
+
5
+ </manifest>
@@ -0,0 +1,26 @@
1
+ package io.gonative.android.plugins.#{java_package};
2
+
3
+ import android.app.Activity;
4
+ import android.content.Context;
5
+
6
+ import io.gonative.gonative_core.BridgeModule;
7
+ import io.gonative.gonative_core.GoNativeActivity;
8
+
9
+ public class #{plugin_name} implements BridgeModule {
10
+ private final static String TAG = #{plugin_name}.class.getSimpleName();
11
+
12
+ @Override
13
+ public void onApplicationCreate(Context context) {
14
+
15
+ }
16
+
17
+ @Override
18
+ public <T extends Activity & GoNativeActivity> void onActivityCreate(T activity, boolean isRoot) {
19
+
20
+ }
21
+
22
+ @Override
23
+ public <T extends Activity & GoNativeActivity> boolean shouldOverrideUrlLoading(T activity, Uri uri) {
24
+ return false;
25
+ }
26
+ }
@@ -1,5 +1,5 @@
1
1
  Pod::Spec.new do |s|
2
- s.name = '{{PLUGIN_NAME}}'
2
+ s.name = '#{plugin_name}'
3
3
  s.version = '0.1.0'
4
4
  s.summary = 'Facebook plugin for GoNative.'
5
5
 
@@ -7,22 +7,22 @@ Pod::Spec.new do |s|
7
7
  TODO: Add long description of the pod here.
8
8
  DESC
9
9
 
10
- s.homepage = 'https://github.com/gonativeio/{{PLUGIN_NAME}}'
10
+ s.homepage = 'https://github.com/gonativeio/#{plugin_name}'
11
11
  s.license = { :type => 'MIT', :file => 'LICENSE' }
12
12
  s.author = { 'hhunaid' => 'hhunaid@gmail.com' }
13
- s.source = { :git => 'git@github.com:gonativeio/{{REPO_NAME}}.git', :tag => s.version.to_s }
13
+ s.source = { :git => 'git@github.com:gonativeio/#{repo_name}.git', :tag => s.version.to_s }
14
14
 
15
15
  s.ios.deployment_target = '10.0'
16
16
  s.swift_versions = '5.0'
17
17
 
18
18
  s.subspec 'Source' do |cs|
19
- cs.source_files = '{{PLUGIN_NAME}}/Classes/**/*.{h,m,swift}'
20
- cs.resource_bundle = { '{{PLUGIN_NAME}}JS' => 'js/*.{js,json}' }
19
+ cs.source_files = '#{plugin_name}/Classes/**/*.{h,m,swift}'
20
+ cs.resource_bundle = { '#{plugin_name}JS' => 'js/*.{js,json}' }
21
21
  end
22
22
 
23
23
  s.subspec 'Binary' do |cs|
24
- cs.ios.vendored_frameworks = 'XCFramework/{{PLUGIN_NAME}}.xcframework'
25
- cs.resource_bundle = { '{{PLUGIN_NAME}}JS' => 'js/*.{js,json}' }
24
+ cs.ios.vendored_frameworks = 'XCFramework/#{plugin_name}.xcframework'
25
+ cs.resource_bundle = { '#{plugin_name}JS' => 'js/*.{js,json}' }
26
26
  end
27
27
 
28
28
  s.default_subspec = 'Source'
@@ -3,7 +3,7 @@ platform :ios, '10.0'
3
3
  source 'https://cdn.cocoapods.org/'
4
4
  source 'git@github.com:gonativeio/gonative-specs.git'
5
5
 
6
- target '{{PLUGIN_NAME}}Framework' do
6
+ target '#{plugin_name}Framework' do
7
7
  use_frameworks!
8
- pod '{{PLUGIN_NAME}}', path: '.'
8
+ pod '#{plugin_name}', path: '.'
9
9
  end
@@ -5,11 +5,11 @@ WORKING_DIR=$(pwd)
5
5
 
6
6
  FRAMEWORK_FOLDER_NAME="XCFramework"
7
7
 
8
- FRAMEWORK_NAME="{{PLUGIN_NAME}}"
8
+ FRAMEWORK_NAME="#{plugin_name}"
9
9
 
10
10
  FRAMEWORK_PATH="${WORKING_DIR}/${FRAMEWORK_FOLDER_NAME}/${FRAMEWORK_NAME}.xcframework"
11
11
 
12
- BUILD_SCHEME="{{PLUGIN_NAME}}Framework"
12
+ BUILD_SCHEME="#{plugin_name}Framework"
13
13
 
14
14
  SIMULATOR_ARCHIVE_PATH="${WORKING_DIR}/${FRAMEWORK_FOLDER_NAME}/simulator.xcarchive"
15
15
 
@@ -21,9 +21,9 @@ mkdir "${FRAMEWORK_FOLDER_NAME}"
21
21
  echo "Created ${FRAMEWORK_FOLDER_NAME}"
22
22
  echo "Archiving ${FRAMEWORK_NAME}"
23
23
 
24
- xcodebuild -workspace "{{PLUGIN_NAME}}.xcworkspace" archive ONLY_ACTIVE_ARCH=NO ARCHS="x86_64 arm64 i386" -scheme ${BUILD_SCHEME} -destination="generic/platform=iOS Simulator" -archivePath "${SIMULATOR_ARCHIVE_PATH}" -sdk iphonesimulator SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES
24
+ xcodebuild -workspace "#{plugin_name}.xcworkspace" archive ONLY_ACTIVE_ARCH=NO ARCHS="x86_64 arm64 i386" -scheme ${BUILD_SCHEME} -destination="generic/platform=iOS Simulator" -archivePath "${SIMULATOR_ARCHIVE_PATH}" -sdk iphonesimulator SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES
25
25
 
26
- xcodebuild archive -workspace "{{PLUGIN_NAME}}.xcworkspace" -scheme ${BUILD_SCHEME} -destination="generic/platform=iOS" -archivePath "${IOS_DEVICE_ARCHIVE_PATH}" -sdk iphoneos SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES
26
+ xcodebuild archive -workspace "#{plugin_name}.xcworkspace" -scheme ${BUILD_SCHEME} -destination="generic/platform=iOS" -archivePath "${IOS_DEVICE_ARCHIVE_PATH}" -sdk iphoneos SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES
27
27
 
28
28
  xcodebuild -create-xcframework -framework ${SIMULATOR_ARCHIVE_PATH}/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework -framework ${IOS_DEVICE_ARCHIVE_PATH}/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework -output "${FRAMEWORK_PATH}"
29
29
 
@@ -1,6 +1,6 @@
1
1
  //
2
- // GN{{PLUGIN_NAME}}.h
3
- // {{PLUGIN_NAME}}
2
+ // GN#{plugin_name}.h
3
+ // #{plugin_name}
4
4
  //
5
5
  // Created by Hunaid Hassan.
6
6
  //
@@ -10,7 +10,7 @@
10
10
 
11
11
  NS_ASSUME_NONNULL_BEGIN
12
12
 
13
- @interface GN{{PLUGIN_NAME}} : GNEventEmitter
13
+ @interface GN#{plugin_name} : GNEventEmitter
14
14
 
15
15
  @end
16
16
 
@@ -1,13 +1,13 @@
1
1
  //
2
- // GN{{PLUGIN_NAME}}.m
3
- // {{PLUGIN_NAME}}
2
+ // GN#{plugin_name}.m
3
+ // #{plugin_name}
4
4
  //
5
5
  // Created by Hunaid Hassan.
6
6
  //
7
7
 
8
- #import "GN{{PLUGIN_NAME}}.h"
8
+ #import "GN#{plugin_name}.h"
9
9
 
10
- @implementation GN{{PLUGIN_NAME}}
10
+ @implementation GN#{plugin_name}
11
11
 
12
12
  GN_EXPORT_MODULE()
13
13
 
@@ -1,12 +1,12 @@
1
1
  //
2
- // GN{{PLUGIN_NAME}}.m
3
- // {{PLUGIN_NAME}}
2
+ // GN#{plugin_name}.m
3
+ // #{plugin_name}
4
4
  //
5
5
  // Created by Hunaid Hassan.
6
6
  //
7
7
 
8
8
  #import <GoNativeCore/GNEventEmitter.h>
9
9
 
10
- @interface GN_EXTERN_MODULE(GN{{PLUGIN_NAME}}, GNEventEmitter)
10
+ @interface GN_EXTERN_MODULE(GN#{plugin_name}, GNEventEmitter)
11
11
 
12
12
  @end
@@ -1,6 +1,6 @@
1
1
  //
2
- // GN{{PLUGIN_NAME}}.swift
3
- // {{PLUGIN_NAME}}
2
+ // GN#{plugin_name}.swift
3
+ // #{plugin_name}
4
4
  //
5
5
  // Created by Hunaid Hassan on.
6
6
  //
@@ -8,7 +8,7 @@
8
8
  import Foundation
9
9
  import GoNativeCore
10
10
 
11
- @objc(GN{{PLUGIN_NAME}})
12
- public class GN{{PLUGIN_NAME}}: GNEventEmitter {
11
+ @objc(GN#{plugin_name})
12
+ public class GN#{plugin_name}: GNEventEmitter {
13
13
 
14
14
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gonative-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.6
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hunaid Hassan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-10 00:00:00.000000000 Z
11
+ date: 2021-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-cli
@@ -187,26 +187,35 @@ files:
187
187
  - gonative-cli.gemspec
188
188
  - lib/gonative.rb
189
189
  - lib/gonative/commands.rb
190
+ - lib/gonative/commands/android/create.rb
190
191
  - lib/gonative/commands/base.rb
191
192
  - lib/gonative/commands/ios/create.rb
192
193
  - lib/gonative/commands/ios/publish.rb
193
194
  - lib/gonative/commands/version.rb
194
195
  - lib/gonative/dsl/error_catchable.rb
195
196
  - lib/gonative/dsl/serviceable.rb
196
- - lib/gonative/plugins.rb
197
+ - lib/gonative/plugins/android/create.rb
197
198
  - lib/gonative/plugins/ios/create.rb
198
199
  - lib/gonative/plugins/ios/release.rb
199
200
  - lib/gonative/plugins/ios/verify.rb
201
+ - lib/gonative/utils.rb
202
+ - lib/gonative/utils/content_evaluator.rb
203
+ - lib/gonative/utils/sanitize_plugin_name.rb
200
204
  - lib/gonative/utils/template_inflator.rb
201
205
  - lib/gonative/utils/ui.rb
202
206
  - lib/gonative/version.rb
207
+ - templates/plugins/android/build.gradle
208
+ - templates/plugins/android/consumer-rules.pro
209
+ - templates/plugins/android/plugin-metadata.json.tpl
210
+ - templates/plugins/android/proguard-rules.pro
211
+ - templates/plugins/android/src/main/AndroidManifest.xml.tpl
212
+ - templates/plugins/android/src/main/java/io/gonative/android/plugins/JAVA_PACKAGE/PLUGIN_NAME.java.tpl
203
213
  - templates/plugins/ios/common/.gitignore
204
214
  - templates/plugins/ios/common/LICENSE
205
215
  - templates/plugins/ios/common/PLUGIN_NAME.podspec.tpl
206
216
  - templates/plugins/ios/common/PLUGIN_NAME/Info.plist
207
217
  - templates/plugins/ios/common/Podfile.tpl
208
218
  - templates/plugins/ios/common/create-framework.sh.tpl
209
- - templates/plugins/ios/common/js/info.plist.json.tpl
210
219
  - templates/plugins/ios/common/js/polyfill.js.tpl
211
220
  - templates/plugins/ios/language-specific/objc/PLUGIN_NAME/Classes/GNPLUGIN_NAME.h.tpl
212
221
  - templates/plugins/ios/language-specific/objc/PLUGIN_NAME/Classes/GNPLUGIN_NAME.m.tpl