| Index: node_modules/vulcanize/bin/vulcanize
|
| diff --git a/node_modules/vulcanize/bin/vulcanize b/node_modules/vulcanize/bin/vulcanize
|
| new file mode 100755
|
| index 0000000000000000000000000000000000000000..73fcc4c962bb41606e7d144ca0759bc26ae645ca
|
| --- /dev/null
|
| +++ b/node_modules/vulcanize/bin/vulcanize
|
| @@ -0,0 +1,111 @@
|
| +#!/usr/bin/env node
|
| +/**
|
| + * @license
|
| + * Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
|
| + * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
| + * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
| + * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
| + * Code distributed by Google as part of the polymer project is also
|
| + * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
|
| + */
|
| +
|
| +var path = require('path');
|
| +var fs = require('fs');
|
| +var nopt = require('nopt');
|
| +var vulcan = require('../lib/vulcan.js');
|
| +
|
| +var pkg = require('../package.json');
|
| +
|
| +var help = [
|
| + 'vulcanize: Concatenate a set of Web Components into one file',
|
| + '',
|
| + 'Usage:',
|
| + ' vulcanize [OPTIONS] <html file>*',
|
| + '',
|
| + 'Options:',
|
| + ' --output, -o: Output file name (defaults to vulcanized.html)',
|
| + ' --verbose, -v: More verbose logging',
|
| + ' --help, -h, -?: Print this message',
|
| + ' --config: Read the given config file',
|
| + ' --strip, -s: Remove comments and empty text nodes',
|
| + ' --abspath, -p: Specify site root. Resolve paths to absolute paths based on site root',
|
| + ' --csp: Extract inline scripts to a separate file (uses <output file name>.js)',
|
| + ' --inline: The opposite of CSP mode, inline all assets (script and css) into the document',
|
| + ' --csp --inline: Bundle all javascript (inline and external) into <output file name>.js',
|
| + ' --version, -V: print version information',
|
| + ' --no-strip-excludes: Keep imports excluded from inlining',
|
| + ' --no-update-notifier: disable "update vulcanize" checks',
|
| + '',
|
| + 'Config:',
|
| + ' JSON file for additional options',
|
| + '',
|
| + ' {',
|
| + ' "excludes": {',
|
| + ' "imports": [ "regex-to-exclude" ],',
|
| + ' "styles": [ "regex-to-exclude" ],',
|
| + ' "scripts": [ "regex-to-exclude" ],',
|
| + ' }',
|
| + ' }'
|
| +];
|
| +
|
| +function printHelp() {
|
| + console.log(help.join('\n'));
|
| + process.exit(0);
|
| +}
|
| +
|
| +var options = nopt(
|
| + {
|
| + 'config': path,
|
| + 'csp': Boolean,
|
| + 'help': Boolean,
|
| + 'inline': Boolean,
|
| + 'output': path,
|
| + 'abspath': path,
|
| + 'strip': Boolean,
|
| + 'verbose': Boolean,
|
| + 'version': Boolean
|
| + },
|
| + {
|
| + '?': ['--help'],
|
| + 'h': ['--help'],
|
| + 'o': ['--output'],
|
| + 'p': ['--abspath'],
|
| + 's': ['--strip'],
|
| + 'v': ['--verbose'],
|
| + 'V': ['--version']
|
| + }
|
| +);
|
| +
|
| +if (options.help || process.argv.length === 2) {
|
| + printHelp();
|
| +}
|
| +
|
| +if (options.version) {
|
| + console.log('vulcanize %s', pkg.version);
|
| + process.exit(0);
|
| +}
|
| +
|
| +if (options['update-notifier'] !== false) {
|
| + (function() {
|
| + try {
|
| + require('update-notifier')({
|
| + packageName: pkg.name,
|
| + packageVersion: pkg.version
|
| + }).notify();
|
| + } catch(_) {}
|
| + })();
|
| +}
|
| +
|
| +var argv = options.argv.remain;
|
| +
|
| +if (argv[0]) {
|
| + options.input = path.resolve(argv[0]);
|
| +}
|
| +
|
| +vulcan.setOptions(options, function(err) {
|
| + if (err) {
|
| + console.error(err);
|
| + process.exit(1);
|
| + }
|
| + vulcan.processDocument();
|
| +});
|
|
|