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

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: 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