12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- /**
- * @file
- *
- * Provides the build:js command to compile *.es6.js files to ES5.
- *
- * Run build:js with --file to only parse a specific file. Using the --check
- * flag build:js can be run to check if files are compiled correctly.
- * @example <caption>Only process misc/drupal.es6.js and misc/drupal.init.es6.js</caption
- * yarn run build:js -- --file misc/drupal.es6.js --file misc/drupal.init.es6.js
- * @example <caption>Check if all files have been compiled correctly</caption
- * yarn run build:js -- --check
- *
- * @internal This file is part of the core javascript build process and is only
- * meant to be used in that context.
- */
- 'use strict';
- const glob = require('glob');
- const argv = require('minimist')(process.argv.slice(2));
- const changeOrAdded = require('./changeOrAdded');
- const check = require('./check');
- const log = require('./log');
- // Match only on .es6.js files.
- const fileMatch = './**/*.es6.js';
- // Ignore everything in node_modules
- const globOptions = {
- ignore: './node_modules/**'
- };
- const processFiles = (error, filePaths) => {
- if (error) {
- process.exitCode = 1;
- }
- // Process all the found files.
- let callback = changeOrAdded;
- if (argv.check) {
- callback = check;
- }
- filePaths.forEach(callback);
- };
- if (argv.file) {
- processFiles(null, [].concat(argv.file));
- }
- else {
- glob(fileMatch, globOptions, processFiles);
- }
- process.exitCode = 0;
|