Class: Shakapacker::VersionChecker::NodePackageVersion
- Inherits:
- 
      Object
      
        - Object
- Shakapacker::VersionChecker::NodePackageVersion
 
- Defined in:
- lib/shakapacker/version_checker.rb
Instance Attribute Summary collapse
- 
  
    
      #package_json  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute package_json. 
Class Method Summary collapse
Instance Method Summary collapse
- 
  
    
      #initialize(package_json, yarn_lock, package_lock)  ⇒ NodePackageVersion 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of NodePackageVersion. 
- #major_minor_patch ⇒ Object
- #raw ⇒ Object
- #semver_wildcard? ⇒ Boolean
- #skip_processing? ⇒ Boolean
Constructor Details
#initialize(package_json, yarn_lock, package_lock) ⇒ NodePackageVersion
Returns a new instance of NodePackageVersion.
| 109 110 111 112 113 | # File 'lib/shakapacker/version_checker.rb', line 109 def initialize(package_json, yarn_lock, package_lock) @package_json = package_json @yarn_lock = yarn_lock @package_lock = package_lock end | 
Instance Attribute Details
#package_json ⇒ Object (readonly)
Returns the value of attribute package_json.
| 91 92 93 | # File 'lib/shakapacker/version_checker.rb', line 91 def package_json @package_json end | 
Class Method Details
.build ⇒ Object
| 93 94 95 | # File 'lib/shakapacker/version_checker.rb', line 93 def self.build new(package_json_path, yarn_lock_path, package_lock_path) end | 
.package_json_path ⇒ Object
| 97 98 99 | # File 'lib/shakapacker/version_checker.rb', line 97 def self.package_json_path Rails.root.join("package.json") end | 
.package_lock_path ⇒ Object
| 105 106 107 | # File 'lib/shakapacker/version_checker.rb', line 105 def self.package_lock_path Rails.root.join("package-lock.json") end | 
.yarn_lock_path ⇒ Object
| 101 102 103 | # File 'lib/shakapacker/version_checker.rb', line 101 def self.yarn_lock_path Rails.root.join("yarn.lock") end | 
Instance Method Details
#major_minor_patch ⇒ Object
| 127 128 129 130 131 132 133 134 135 136 | # File 'lib/shakapacker/version_checker.rb', line 127 def major_minor_patch return if skip_processing? match = raw.match(MAJOR_MINOR_PATCH_VERSION_REGEX) unless match raise "Cannot parse version number '#{raw}' (wildcard versions are not supported)" end [match[1], match[2], match[3]] end | 
#raw ⇒ Object
| 115 116 117 | # File 'lib/shakapacker/version_checker.rb', line 115 def raw @raw ||= find_version end | 
#semver_wildcard? ⇒ Boolean
| 119 120 121 | # File 'lib/shakapacker/version_checker.rb', line 119 def semver_wildcard? raw.match(/[~^]/).present? end | 
#skip_processing? ⇒ Boolean
| 123 124 125 | # File 'lib/shakapacker/version_checker.rb', line 123 def skip_processing? !package_specified? || relative_path? || git_url? || github_url? end |