gonative-cli 0.4.5 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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