Sha256: 8770e099e3b98e1c1701ec534469dd522d84798dfa2946cd8ef9876698f9b14c
Contents?: true
Size: 1.67 KB
Versions: 15
Compression:
Stored size: 1.67 KB
Contents
# =========================================================================== # Project: Abbot - SproutCore Build Tools # Copyright: ©2009 Apple Inc. # portions copyright @2006-2009 Sprout Systems, Inc. # and contributors # =========================================================================== require File.expand_path(File.join(File.dirname(__FILE__), 'base')) require 'fileutils' module SC # This builder combines several javascript files into a single file. It is # used to prepare a single javascript file for production use. This build # tool expects the javascript files to have already been processed for any # build directives such sc_static(). # class Builder::Combine < Builder::Base def build(dst_path) lines = [] entries = entry.ordered_entries || entry.source_entries target_name = entry.target.target_name.to_s.sub(/^\//,'') if entry.top_level_lazy_instantiation && entry.combined lines << "; if ((typeof SC !== 'undefined') && SC && !SC.LAZY_INSTANTIATION) { SC.LAZY_INSTANTIATION = {}; } if(!SC.LAZY_INSTANTIATION['#{target_name}']) { SC.LAZY_INSTANTIATION['#{target_name}'] = []; } SC.LAZY_INSTANTIATION['#{target_name}'].push( ( function() { " end entries.each do |entry| src_path = entry.stage!.staging_path next unless File.exist?(src_path) lines << "/* >>>>>>>>>> BEGIN #{entry.filename} */\n" lines += readlines(src_path) lines << "\n" end if entry.top_level_lazy_instantiation && entry.combined lines << " } ) ); " end writelines dst_path, lines end end end
Version data entries
15 entries across 15 versions & 1 rubygems