gonative-cli 0.4.5 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 456654f324684cda9b2a39dad0854d93a15e233e1c7788214fbc74174cbda08a
4
- data.tar.gz: e0c57236547ecbb83a8fbbb58d98c12c4c53069e60d0d721b01a8f8ab2625e60
3
+ metadata.gz: cb6548942f64dc18c96d0468c4073592bb6e894c2fb0e76f564e6d5e8cb6b88e
4
+ data.tar.gz: 163fd2f3918cff7e0433beb1330abcc9bfa44f943a4574942b50a77178cd61db
5
5
  SHA512:
6
- metadata.gz: 3896f5de592d2f022f8d925c8a6e5ecfca11d02f52504e8ab0e7fc714bbfa8bbaef2ee474f0d30acf5bbe5f8b4e6d5ac90db7f00fe5217d9c95dc516aa607559
7
- data.tar.gz: 724f72589b23fdcb280f60e278d58fe913bc90ec4fb7862bdee30ea4a844a1a287f07c1004a21bb64c393ceb3d62ef5f65a65dc93cfabddabeedf8a590911f9e
6
+ metadata.gz: bbcd4a57a19c23c90007da2687d45e1cd226f55f99aba8d6c8875dbf54431d5d919d5ed731cf6b8154f76cc8559bbdba7db957047611d3cf732c4c7824fc7cac
7
+ data.tar.gz: 360016fa4b68fc7672adc8e516ed102595c4ef272567b8b53b7df6ba50e72bfc72d835c0ca69689c96cc2d2b990cff96e12afbef136ed895ac759cab38d511c7
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gonative-cli (0.4.4)
4
+ gonative-cli (0.4.5)
5
5
  cocoapods (~> 1.10)
6
6
  colorize (~> 0.8.0)
7
7
  dry-cli (~> 0.7)
@@ -12,11 +12,12 @@ GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
14
  CFPropertyList (3.0.3)
15
- activesupport (5.2.6)
15
+ activesupport (6.1.3)
16
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
17
- i18n (>= 0.7, < 2)
18
- minitest (~> 5.1)
19
- tzinfo (~> 1.1)
17
+ i18n (>= 1.6, < 2)
18
+ minitest (>= 5.1)
19
+ tzinfo (~> 2.0)
20
+ zeitwerk (~> 2.3)
20
21
  addressable (2.8.0)
21
22
  public_suffix (>= 2.0.2, < 5.0)
22
23
  algoliasearch (1.27.5)
@@ -26,10 +27,10 @@ GEM
26
27
  atomos (0.1.3)
27
28
  byebug (11.1.3)
28
29
  claide (1.0.3)
29
- cocoapods (1.10.2)
30
- addressable (~> 2.6)
30
+ cocoapods (1.11.2)
31
+ addressable (~> 2.8)
31
32
  claide (>= 1.0.2, < 2.0)
32
- cocoapods-core (= 1.10.2)
33
+ cocoapods-core (= 1.11.2)
33
34
  cocoapods-deintegrate (>= 1.0.3, < 2.0)
34
35
  cocoapods-downloader (>= 1.4.0, < 2.0)
35
36
  cocoapods-plugins (>= 1.0.0, < 2.0)
@@ -40,19 +41,19 @@ GEM
40
41
  escape (~> 0.0.4)
41
42
  fourflusher (>= 2.3.0, < 3.0)
42
43
  gh_inspector (~> 1.0)
43
- molinillo (~> 0.6.6)
44
+ molinillo (~> 0.8.0)
44
45
  nap (~> 1.0)
45
- ruby-macho (~> 1.4)
46
- xcodeproj (>= 1.19.0, < 2.0)
47
- cocoapods-core (1.10.2)
48
- activesupport (> 5.0, < 6)
49
- addressable (~> 2.6)
46
+ ruby-macho (>= 1.0, < 3.0)
47
+ xcodeproj (>= 1.21.0, < 2.0)
48
+ cocoapods-core (1.11.2)
49
+ activesupport (>= 5.0, < 7)
50
+ addressable (~> 2.8)
50
51
  algoliasearch (~> 1.0)
51
52
  concurrent-ruby (~> 1.1)
52
53
  fuzzy_match (~> 2.0.4)
53
54
  nap (~> 1.0)
54
55
  netrc (~> 0.11)
55
- public_suffix
56
+ public_suffix (~> 4.0)
56
57
  typhoeus (~> 1.0)
57
58
  cocoapods-deintegrate (1.0.4)
58
59
  cocoapods-downloader (1.4.0)
@@ -82,7 +83,7 @@ GEM
82
83
  json (2.5.1)
83
84
  method_source (1.0.0)
84
85
  minitest (5.14.4)
85
- molinillo (0.6.6)
86
+ molinillo (0.8.0)
86
87
  nanaimo (0.3.0)
87
88
  nap (1.1.0)
88
89
  netrc (0.11.0)
@@ -129,13 +130,12 @@ GEM
129
130
  rubocop-ast (>= 0.4.0)
130
131
  ruby-macho (1.4.0)
131
132
  ruby-progressbar (1.11.0)
132
- thread_safe (0.3.6)
133
133
  typhoeus (1.4.0)
134
134
  ethon (>= 0.9.0)
135
- tzinfo (1.2.9)
136
- thread_safe (~> 0.1)
135
+ tzinfo (2.0.4)
136
+ concurrent-ruby (~> 1.0)
137
137
  unicode-display_width (2.0.0)
138
- xcodeproj (1.20.0)
138
+ xcodeproj (1.21.0)
139
139
  CFPropertyList (>= 2.3.3, < 4.0)
140
140
  atomos (~> 0.1.3)
141
141
  claide (>= 1.0.2, < 2.0)
@@ -7,9 +7,10 @@ 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
11
 
11
- def call(name:, **)
12
- Plugins::IOS::Create.call(name)
12
+ def call(name:, language:, **)
13
+ Plugins::IOS::Create.call(name, language)
13
14
  end
14
15
  end
15
16
  end
@@ -11,11 +11,15 @@ module GoNative
11
11
  extend DSL::Serviceable
12
12
 
13
13
  TEMPLATE_DIRECTORY_PATH = File.expand_path(File.join(__dir__, '../../../..', 'templates', 'plugins', 'ios'))
14
+ COMMON_TEMPLATES_PATH = File.join(TEMPLATE_DIRECTORY_PATH, 'common')
14
15
 
15
- attr_reader :plugin_name
16
+ LANGUAGES = %w[objc swift].freeze
16
17
 
17
- def initialize(plugin_name)
18
+ attr_reader :plugin_name, :language
19
+
20
+ def initialize(plugin_name, language)
18
21
  @plugin_name = plugin_name
22
+ @language = language
19
23
  end
20
24
 
21
25
  def call
@@ -40,7 +44,8 @@ module GoNative
40
44
  end
41
45
 
42
46
  def cp_template_files!
43
- FileUtils.cp_r("#{TEMPLATE_DIRECTORY_PATH}/.", '.')
47
+ FileUtils.cp_r("#{COMMON_TEMPLATES_PATH}/.", '.')
48
+ system('ditto', File.join(TEMPLATE_DIRECTORY_PATH, 'language-specific', language), '.')
44
49
  end
45
50
 
46
51
  def inflate_templates!
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GoNative
4
- VERSION = "0.4.5"
4
+ VERSION = "0.5.0"
5
5
  end
File without changes
@@ -16,11 +16,13 @@ TODO: Add long description of the pod here.
16
16
  s.swift_versions = '5.0'
17
17
 
18
18
  s.subspec 'Source' do |cs|
19
- cs.source_files = '{{PLUGIN_NAME}}/Classes/**/*'
19
+ cs.source_files = '{{PLUGIN_NAME}}/Classes/**/*.{h,m,swift}'
20
+ cs.resource_bundle = { 'JS' => 'js/*.{js}' }
20
21
  end
21
22
 
22
23
  s.subspec 'Binary' do |cs|
23
24
  cs.ios.vendored_frameworks = 'XCFramework/{{PLUGIN_NAME}}.xcframework'
25
+ cs.resource_bundle = { 'JS' => 'js/*.{js}' }
24
26
  end
25
27
 
26
28
  s.default_subspec = 'Source'
@@ -2,7 +2,7 @@
2
2
  // GN{{PLUGIN_NAME}}.h
3
3
  // {{PLUGIN_NAME}}
4
4
  //
5
- // Created by Hunaid Hassan on 20.07.21.
5
+ // Created by Hunaid Hassan.
6
6
  //
7
7
 
8
8
  #import <Foundation/Foundation.h>
@@ -2,7 +2,7 @@
2
2
  // GN{{PLUGIN_NAME}}.m
3
3
  // {{PLUGIN_NAME}}
4
4
  //
5
- // Created by Hunaid Hassan on 20.07.21.
5
+ // Created by Hunaid Hassan.
6
6
  //
7
7
 
8
8
  #import "GN{{PLUGIN_NAME}}.h"
@@ -0,0 +1,12 @@
1
+ //
2
+ // GN{{PLUGIN_NAME}}.m
3
+ // {{PLUGIN_NAME}}
4
+ //
5
+ // Created by Hunaid Hassan.
6
+ //
7
+
8
+ #import <GoNativeCore/GNEventEmitter.h>
9
+
10
+ @interface GN_EXTERN_MODULE(GN{{PLUGIN_NAME}}, GNEventEmitter)
11
+
12
+ @end
@@ -0,0 +1,14 @@
1
+ //
2
+ // GN{{PLUGIN_NAME}}.swift
3
+ // {{PLUGIN_NAME}}
4
+ //
5
+ // Created by Hunaid Hassan on.
6
+ //
7
+
8
+ import Foundation
9
+ import GoNativeCore
10
+
11
+ @objc(GN{{PLUGIN_NAME}})
12
+ public class GN{{PLUGIN_NAME}}: GNEventEmitter {
13
+
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.4.5
4
+ version: 0.5.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-09-14 00:00:00.000000000 Z
11
+ date: 2021-09-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-cli
@@ -186,15 +186,17 @@ files:
186
186
  - lib/gonative/utils/template_inflator.rb
187
187
  - lib/gonative/utils/ui.rb
188
188
  - lib/gonative/version.rb
189
- - templates/plugins/ios/.gitignore
190
- - templates/plugins/ios/LICENSE
191
- - templates/plugins/ios/PLUGIN_NAME.podspec.tpl
192
- - templates/plugins/ios/PLUGIN_NAME/Classes/GNPLUGIN_NAME.h.tpl
193
- - templates/plugins/ios/PLUGIN_NAME/Classes/GNPLUGIN_NAME.m.tpl
194
- - templates/plugins/ios/PLUGIN_NAME/Info.plist
195
- - templates/plugins/ios/Podfile.tpl
196
- - templates/plugins/ios/create-framework.sh.tpl
197
- - templates/plugins/ios/js/polyfill.js.tpl
189
+ - templates/plugins/ios/common/.gitignore
190
+ - templates/plugins/ios/common/LICENSE
191
+ - templates/plugins/ios/common/PLUGIN_NAME.podspec.tpl
192
+ - templates/plugins/ios/common/PLUGIN_NAME/Info.plist
193
+ - templates/plugins/ios/common/Podfile.tpl
194
+ - templates/plugins/ios/common/create-framework.sh.tpl
195
+ - templates/plugins/ios/common/js/polyfill.js.tpl
196
+ - templates/plugins/ios/language-specific/objc/PLUGIN_NAME/Classes/GNPLUGIN_NAME.h.tpl
197
+ - templates/plugins/ios/language-specific/objc/PLUGIN_NAME/Classes/GNPLUGIN_NAME.m.tpl
198
+ - templates/plugins/ios/language-specific/swift/PLUGIN_NAME/Classes/GNSwiftModule.m.tpl
199
+ - templates/plugins/ios/language-specific/swift/PLUGIN_NAME/Classes/GNSwiftModule.swift.tpl
198
200
  homepage: https://www.github.com/gonativeio/gonative-cli
199
201
  licenses:
200
202
  - MIT