mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2024-12-13 23:48:55 +01:00
39 lines
755 B
Ruby
39 lines
755 B
Ruby
class PluginRegistry
|
|
class << self
|
|
attr_writer :javascripts
|
|
attr_writer :stylesheets
|
|
|
|
def asset_globs
|
|
@asset_globs ||= Set.new
|
|
end
|
|
|
|
def javascripts
|
|
@javascripts ||= Set.new
|
|
end
|
|
|
|
def stylesheets
|
|
@stylesheets ||= Set.new
|
|
end
|
|
|
|
def code_insertions
|
|
@code_insertions ||= {}
|
|
end
|
|
end
|
|
|
|
def self.register_glob(root, extension, options=nil)
|
|
asset_globs << [root, extension, options || {}]
|
|
end
|
|
|
|
def self.register_asset(asset, _opts = nil)
|
|
if asset =~ /\.js$|\.js\.erb$|\.js\.es6$|\.coffee$|\.coffee\.erb/
|
|
javascripts << asset
|
|
elsif asset =~ /\.css$|\.scss$/
|
|
stylesheets << asset
|
|
end
|
|
end
|
|
|
|
def self.insert_code(key)
|
|
code_insertions[key]&.join('\n')
|
|
end
|
|
end
|