module Opal::Sprockets::Processor::PlainJavaScriptLoader
def self.call(input)
def self.call(input) sprockets = input[:environment] asset = OpenStruct.new(input) opal_extnames = sprockets.engines.map do |ext, engine| ext if engine <= ::Opal::Processor end.compact path_extnames = -> path { File.basename(path).scan(/\.[^.]+/) } processed_by_opal = -> asset { (path_extnames[asset.filename] & opal_extnames).any? } unless processed_by_opal[asset] [ input[:data], %{if (typeof(OpalLoaded) === 'undefined') OpalLoaded = []; OpalLoaded.push(#{input[:name].to_json});} ].join(";\n") end end