Class: Super::Assets::Handler

Inherits:
Object
  • Object
show all
Defined in:
lib/super/assets.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(asset_handler) ⇒ Handler

Returns a new instance of Handler.



131
132
133
# File 'lib/super/assets.rb', line 131

def initialize(asset_handler)
  @asset_handler = asset_handler
end

Class Method Details

.autoObject



90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/super/assets.rb', line 90

def auto
  sprockets_spec = gem_specification("sprockets")
  if sprockets_spec
    major = sprockets_spec.version.segments.first
    if major >= 2
      return sprockets
    end
  end

  webpacker_spec = gem_specification("webpacker")
  if webpacker_spec
    major = webpacker_spec.version.segments.first
    if major >= 4
      return webpacker
    end
  end

  none
end

.gem_specification(gem_name) ⇒ Object



114
115
116
# File 'lib/super/assets.rb', line 114

def gem_specification(gem_name)
  Gem::Dependency.new(gem_name).matching_specs&.sort_by(&:version)&.first
end

.noneObject



127
128
129
# File 'lib/super/assets.rb', line 127

def self.none
  @none ||= new(:none)
end

.sprocketsObject



119
120
121
# File 'lib/super/assets.rb', line 119

def self.sprockets
  @sprockets ||= new(:sprockets)
end

.sprockets_available?Boolean

Returns:

  • (Boolean)


110
111
112
# File 'lib/super/assets.rb', line 110

def sprockets_available?
  !gem_specification("sprockets").nil? && defined?(Sprockets)
end

.webpackerObject



123
124
125
# File 'lib/super/assets.rb', line 123

def self.webpacker
  @webpacker ||= new(:webpacker)
end

Instance Method Details

#==(other) ⇒ Object



135
136
137
# File 'lib/super/assets.rb', line 135

def ==(other)
  to_sym == other.to_sym
end

#none?Boolean

Returns:

  • (Boolean)


147
148
149
# File 'lib/super/assets.rb', line 147

def none?
  @asset_handler == :none
end

#sprockets?Boolean

Returns:

  • (Boolean)


139
140
141
# File 'lib/super/assets.rb', line 139

def sprockets?
  @asset_handler == :sprockets
end

#to_sObject



155
156
157
# File 'lib/super/assets.rb', line 155

def to_s
  @asset_handler.to_s
end

#to_symObject



151
152
153
# File 'lib/super/assets.rb', line 151

def to_sym
  @asset_handler
end

#webpacker?Boolean

Returns:

  • (Boolean)


143
144
145
# File 'lib/super/assets.rb', line 143

def webpacker?
  @asset_handler == :webpacker
end