sprockets-commoner 0.4.0 → 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
  SHA1:
3
- metadata.gz: e7c8416718f11190e13414235a34fb2a8fdeca3f
4
- data.tar.gz: e3d70ee380116d1dd0fb1947439d330f0affbee1
3
+ metadata.gz: 0f24331ebf173f8083c0c49307c5b4ff3421a5f9
4
+ data.tar.gz: 7462509ec68a31116ce04f7977a607557b66d3c7
5
5
  SHA512:
6
- metadata.gz: f4fbae327bd4aada01d1838e0cce0a3985fcdb037f78e6531de8e702f98e38a0613d480c10c12b730683de4c5faef017948d5d5dccdc7bdf25ebdb161f40155a
7
- data.tar.gz: d4de98aff55c22a3ff464529f2ffd864bc8a97beb303b4c5fa4043660c377fbf5351abc9ce13e90fc5e575beba0b1e2b05fb0116834fa18ed62f58efa3ce316a
6
+ metadata.gz: 00df5b32888954876a2f0f8ad15bbda01728d84780af38787426863238074d1f367107dcb9c5272bb60ed3c1cd563c4c52883ec593a2bcaed9ff3bef215c264f
7
+ data.tar.gz: 15ffc7f2426585ef5ad78f89cb3f4cc30ec48acd99bde3ab5639226883c66928fc2a749d8fb68650bdc61f42c7408e5459fcc39da1d46f09a26b6b1a88562788
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.5.0
4
+
5
+ * Added (currently undocumented) `transform_options` argument to `Processor`.
6
+ * Removed undocumented babelrc configuration method.
7
+
3
8
  ## v0.4.0
4
9
 
5
10
  * Added `Sprockets::Commoner::Processor.unregister` method to remove the processor.
@@ -254,15 +254,6 @@ module.exports = function (context) {
254
254
  extensions: ['.js', '.json', '.coffee', '.js.erb', '.coffee.erb']
255
255
  };
256
256
 
257
- // Look for the sprockets-commoner plugin for extra options
258
- state.file.opts.plugins.map(function (plugin) {
259
- return plugin[1];
260
- }).filter(function (opts) {
261
- return opts != null && opts.__commoner_options;
262
- }).forEach(function (plugin) {
263
- return Object.assign(opts, plugin);
264
- });
265
-
266
257
  Object.assign(opts, state.opts, { basedir: dirname(state.file.opts.filename) });
267
258
  rootRegex = new RegExp('^' + state.file.opts.sourceRoot + '/');
268
259
  identifierRegex = createIdentifierRegex();
@@ -60,12 +60,13 @@ module Sprockets
60
60
  env.register_postprocessor('application/javascript', self.new(env.root, *args, **kwargs))
61
61
  end
62
62
 
63
- attr_reader :include, :exclude, :babel_exclude
64
- def initialize(root, include: [root], exclude: ['vendor/bundle'], babel_exclude: [/node_modules/])
63
+ attr_reader :include, :exclude, :babel_exclude, :transform_options
64
+ def initialize(root, include: [root], exclude: ['vendor/bundle'], babel_exclude: [/node_modules/], transform_options: [])
65
65
  @root = root
66
66
  @include = include.map {|path| expand_to_root(path, root) }
67
67
  @exclude = exclude.map {|path| expand_to_root(path, root) }
68
68
  @babel_exclude = babel_exclude.map {|path| expand_to_root(path, root) }
69
+ @transform_options = transform_options.map {|(path, options)| [expand_to_root(path, root), options]}
69
70
  super(root, 'NODE_PATH' => JS_PACKAGE_PATH)
70
71
  end
71
72
 
@@ -83,10 +84,8 @@ module Sprockets
83
84
  insertion_index = @required.index(input[:uri]) || -1
84
85
  @dependencies = Set.new(input[:metadata][:dependencies])
85
86
 
86
-
87
87
  babel_config = babelrc_data(filename)
88
-
89
- result = transform(input[:data], options(input), paths: @env.paths)
88
+ result = transform(input[:data], options(input), commoner_options(input))
90
89
 
91
90
  if result['metadata'].has_key?('targetsToProcess')
92
91
  result['metadata']['targetsToProcess'].each do |t|
@@ -126,6 +125,7 @@ module Sprockets
126
125
  @include.map(&:to_s),
127
126
  @exclude.map(&:to_s),
128
127
  @babel_exclude.map(&:to_s),
128
+ @transform_options.map { |(pattern, opts)| [pattern.to_s, opts] },
129
129
  ]
130
130
  end
131
131
 
@@ -183,6 +183,15 @@ module Sprockets
183
183
  return nil
184
184
  end
185
185
 
186
+ def commoner_options(input)
187
+ options = {}
188
+ transform_options.each do |(path, opts)|
189
+ options.merge!(opts) if pattern_match(path, input[:filename])
190
+ end
191
+ options[:paths] = @env.paths
192
+ options
193
+ end
194
+
186
195
  def options(input)
187
196
  # TODO(bouk): Fix sourcemaps. Sourcemaps are only available in Sprockets v4
188
197
  {
@@ -1,5 +1,5 @@
1
1
  module Sprockets
2
2
  module Commoner
3
- VERSION = '0.4.0'
3
+ VERSION = '0.5.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sprockets-commoner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bouke van der Bijl
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-06-28 00:00:00.000000000 Z
11
+ date: 2016-07-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sprockets
@@ -153,9 +153,6 @@ files:
153
153
  - js/babel-plugin-sprockets-commoner-internal/node_modules/resolve/lib/sync.js
154
154
  - js/babel-plugin-sprockets-commoner-internal/node_modules/resolve/package.json
155
155
  - js/babel-plugin-sprockets-commoner-internal/package.json
156
- - js/babel-plugin-sprockets-commoner/README.md
157
- - js/babel-plugin-sprockets-commoner/index.js
158
- - js/babel-plugin-sprockets-commoner/package.json
159
156
  - lib/sprockets/commoner.rb
160
157
  - lib/sprockets/commoner/bundle.rb
161
158
  - lib/sprockets/commoner/json_processor.rb
@@ -184,7 +181,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
184
181
  version: '0'
185
182
  requirements: []
186
183
  rubyforge_project:
187
- rubygems_version: 2.5.1
184
+ rubygems_version: 2.4.5.1
188
185
  signing_key:
189
186
  specification_version: 4
190
187
  summary: Use Babel in Sprockets to compile modules for the browser
@@ -1,3 +0,0 @@
1
- # commoner-options
2
-
3
- This is a dummy Babel plugin that's just used to receive options from Sprockets.
@@ -1,7 +0,0 @@
1
- module.exports = function () {
2
- return {
3
- pre: function pre() {
4
- this.opts.__commoner_options = true;
5
- }
6
- };
7
- };
@@ -1,5 +0,0 @@
1
- {
2
- "name": "babel-plugin-commoner-options",
3
- "description": "A bogus plugin used for receiving options from Sprockets",
4
- "private": true
5
- }