UNPKG

canonical

Version:

Canonical code style linter and formatter for JavaScript, SCSS and CSS.

81 lines (52 loc) 1.9 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _map = require('lodash/collection/map'); var _map2 = _interopRequireDefault(_map); var _uniq = require('lodash/array/uniq'); var _uniq2 = _interopRequireDefault(_uniq); var _endsWith = require('lodash/string/endsWith'); var _endsWith2 = _interopRequireDefault(_endsWith); var _filter = require('lodash/collection/filter'); var _filter2 = _interopRequireDefault(_filter); var _globby = require('globby'); var _globby2 = _interopRequireDefault(_globby); var _resolveAbsolutePath = require('./resolveAbsolutePath'); var _resolveAbsolutePath2 = _interopRequireDefault(_resolveAbsolutePath); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Uses glob to resolve all file paths recursively. * * @param {string[]} searchPaths * @returns {string[]} */ exports.default = searchPaths => { let appendPaths, paths; appendPaths = []; if (searchPaths.length) { paths = searchPaths; } else { paths = ['./']; } paths = (0, _filter2.default)(paths, pathName => { let exclude; exclude = (0, _endsWith2.default)(pathName, '/') === true; if (exclude) { appendPaths.push(pathName + '**/*.js'); appendPaths.push(pathName + '**/*.css'); appendPaths.push(pathName + '**/*.scss'); } return !exclude; }); paths = paths.concat(appendPaths); paths = (0, _uniq2.default)(paths); paths = _globby2.default.sync(paths); // @todo Test whether glob.sync can return non-unique file paths. // paths = _.unique(paths); // console.log('paths', paths); paths = (0, _map2.default)(paths, _resolveAbsolutePath2.default); // console.log('paths', paths); return paths; }; //# sourceMappingURL=getTargetPaths.js.map