rake_npm 0.1.0.pre.10 → 0.1.0.pre.12

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: bcbfd303e9c9ba8ee3564f3dd8e8cd9f02daaf074b59e66db64e8efe9d495674
4
- data.tar.gz: fcf29130503636a353948a0dfaefa75ae805c3f63c64133cbdfcf62feddb553d
3
+ metadata.gz: 605d4a68d38097701544d8b201e0f4d27fc5fce61f6fba27855827b5e2029d57
4
+ data.tar.gz: 62ee11ea5ad2ddee03fee7c157774b399d49dbaaee930af5254c951a03b02c8b
5
5
  SHA512:
6
- metadata.gz: bcaf382a7a8a9275029fc7baeb3339b79da0d7f6cc034a7ba3138c7262d50710e1097f9847f9f1b6febbfd832785aa462494636dfa6597c1d090f4fc001b910e
7
- data.tar.gz: f9e5959168e78a8b7c9cbcbaaf493a3be907fdcb903ba78ae8aff7534e6f4965c561a07177f2e1c81853c8734a8d2ca6f4f7a45b10c08546702153ce226ccd64
6
+ metadata.gz: 32b1f11f3cb5ddec1806860a7d61ac59d999028393ff82782795817b79bedf2308f85b3148afede4592a0df2a6d3b2747d09a9eb607db23345df8e9c67b8cf4c
7
+ data.tar.gz: 7101850d6d63baa9a2d256dc71341b5fd406494f0dffc47f8a1e9a4a9a83f1e068feffd79e649fbfa31ca86bd69eb857548d1e50c4b4292b3faf3b0cbbacbaf4
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rake_npm (0.1.0.pre.10)
4
+ rake_npm (0.1.0.pre.12)
5
5
  colored2 (~> 3.1)
6
6
  rake_dependencies (~> 3.1)
7
7
  rake_factory (~> 0.23)
@@ -113,7 +113,7 @@ GEM
113
113
  ruby2_keywords (0.0.5)
114
114
  ruby_gpg2 (0.10.0)
115
115
  lino (~> 3.0)
116
- ruby_npm (0.1.0.pre.6)
116
+ ruby_npm (0.1.0.pre.7)
117
117
  immutable-struct (~> 2.4)
118
118
  lino (~> 3.0)
119
119
  rubyzip (2.3.2)
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rake'
4
+ require 'rake_dependencies'
5
+
6
+ module RakeNPM
7
+ module TaskSets
8
+ class Scripts < RakeFactory::TaskSet
9
+ parameter :directory
10
+
11
+ parameter :include, default: nil
12
+ parameter :exclude, default: nil
13
+
14
+ def define_on(application)
15
+ around_define(application) do
16
+ scripts.each_key do |script|
17
+ define_run_script_on(
18
+ application, { name: script, script: script }
19
+ )
20
+ end
21
+ end
22
+
23
+ self
24
+ end
25
+
26
+ private
27
+
28
+ def scripts
29
+ resolve_scripts(
30
+ lookup_scripts(parameter_values[:directory]),
31
+ parameter_values[:include],
32
+ parameter_values[:exclude]
33
+ )
34
+ end
35
+
36
+ def define_run_script_on(application, options)
37
+ TaskSpecification
38
+ .new(Tasks::RunScript, [options])
39
+ .for_task_set(self)
40
+ .define_on(application)
41
+ end
42
+
43
+ def lookup_scripts(directory)
44
+ path = File.join(directory || '.', 'package.json')
45
+ contents = JSON.parse(File.read(path))
46
+ contents['scripts']
47
+ end
48
+
49
+ def resolve_scripts(scripts, include, exclude)
50
+ include ||= scripts
51
+ exclude ||= []
52
+
53
+ scripts.select { |s| include.include?(s) }
54
+ .reject { |s| exclude.include?(s) }
55
+ end
56
+ end
57
+ end
58
+ end
@@ -1,3 +1,3 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'task_sets/npm'
3
+ require_relative 'task_sets/scripts'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RakeNPM
4
- VERSION = '0.1.0.pre.10'
4
+ VERSION = '0.1.0.pre.12'
5
5
  end
data/lib/rake_npm.rb CHANGED
@@ -8,4 +8,8 @@ module RakeNPM
8
8
  def self.define_install_task(opts = {}, &block)
9
9
  RakeNPM::Tasks::Install.define(opts, &block)
10
10
  end
11
+
12
+ def self.define_script_tasks(opts = {}, &block)
13
+ RakeNPM::TaskSets::Scripts.define(opts, &block)
14
+ end
11
15
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake_npm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre.10
4
+ version: 0.1.0.pre.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - InfraBlocks Maintainers
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-01-03 00:00:00.000000000 Z
11
+ date: 2023-01-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colored2
@@ -281,7 +281,7 @@ files:
281
281
  - lib/rake_npm.rb
282
282
  - lib/rake_npm/mixins/directoried.rb
283
283
  - lib/rake_npm/task_sets.rb
284
- - lib/rake_npm/task_sets/npm.rb
284
+ - lib/rake_npm/task_sets/scripts.rb
285
285
  - lib/rake_npm/tasks.rb
286
286
  - lib/rake_npm/tasks/install.rb
287
287
  - lib/rake_npm/tasks/run_script.rb
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'rake'
4
- require 'rake_dependencies'
5
-
6
- module RakeNPM
7
- module TaskSets
8
- end
9
- end