terser 1.1.13 → 1.1.15

Sign up to get free protection for your applications and to get access to all the features.
data/lib/terser.rb CHANGED
@@ -4,7 +4,7 @@
4
4
  require "json"
5
5
  require "base64"
6
6
  require "execjs"
7
- require "terser/railtie" if defined?(::Rails::Railtie)
7
+ require "terser/railtie" if defined?(Rails::Railtie)
8
8
  require "terser/version"
9
9
 
10
10
  # A wrapper around the Terser interface
@@ -85,6 +85,7 @@ class Terser
85
85
  :keep_fnames => false, # Do not drop names in function definitions
86
86
  :passes => 1, # Number of times to run compress. Raising the number of passes will increase compress time, but can produce slightly smaller code.
87
87
  :keep_infinity => false, # Prevent compression of Infinity to 1/0
88
+ :lhs_constants => true, # Moves constant values to the left-hand side of binary nodes. `foo == 42 → 42 == foo`
88
89
  :side_effects => true, # Pass false to disable potentially dropping functions marked as "pure" using pure comment annotation. See TerserJS documentation for details.
89
90
  :switches => true # de-duplicate and remove unreachable switch branches
90
91
  }, # Apply transformations to code, set to false to skip
@@ -405,8 +406,8 @@ class Terser
405
406
  if @options[:keep_fnames] || DEFAULTS[:keep_fnames]
406
407
  true
407
408
  else
408
- @options[type].respond_to?(:[]) && @options[type][:keep_fnames] ||
409
- DEFAULTS[type].respond_to?(:[]) && DEFAULTS[type][:keep_fnames]
409
+ (@options[type].respond_to?(:[]) && @options[type][:keep_fnames]) ||
410
+ (DEFAULTS[type].respond_to?(:[]) && DEFAULTS[type][:keep_fnames])
410
411
  end
411
412
  end
412
413
 
@@ -414,8 +415,8 @@ class Terser
414
415
  if @options[:keep_classnames] || DEFAULTS[:keep_classnames]
415
416
  true
416
417
  else
417
- @options[type].respond_to?(:[]) && @options[type][:keep_classnames] ||
418
- DEFAULTS[type].respond_to?(:[]) && DEFAULTS[type][:keep_classnames]
418
+ (@options[type].respond_to?(:[]) && @options[type][:keep_classnames]) ||
419
+ (DEFAULTS[type].respond_to?(:[]) && DEFAULTS[type][:keep_classnames])
419
420
  end
420
421
  end
421
422
 
data/terser.gemspec CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
32
32
 
33
33
  spec.add_runtime_dependency "execjs", [">= 0.3.0", "< 3"]
34
34
  spec.add_development_dependency "bundler", ">= 1.3"
35
- spec.add_development_dependency "rake", "~> 12.0"
35
+ spec.add_development_dependency "rake", "~> 13.0"
36
36
  spec.add_development_dependency "rspec", "~> 3.0"
37
37
  spec.add_development_dependency "sourcemap", "~> 0.1.1"
38
38
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: terser
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.13
4
+ version: 1.1.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Rosicky
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-03 00:00:00.000000000 Z
11
+ date: 2023-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: execjs
@@ -50,14 +50,14 @@ dependencies:
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '12.0'
53
+ version: '13.0'
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '12.0'
60
+ version: '13.0'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: rspec
63
63
  requirement: !ruby/object:Gem::Requirement