UNPKG

gulp-resolve-dependencies-advanced

Version:
67 lines (54 loc) 2.42 kB
# gulp-resolve-dependencies-advanced [![build status](https://github.com/Nauja/gulp-resolve-dependencies-advanced/actions/workflows/nodejs.yml/badge.svg)](https://github.com/Nauja/gulp-resolve-dependencies-advanced/actions/workflows/nodejs.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT) This library aims to add some extra features to [gulp-resolve-dependencies](backflip/gulp-resolve-dependencies). It all started when I [needed](https://github.com/backflip/gulp-resolve-dependencies/pull/22) the library to be able to: * Resolve dependencies from external directories (i.e. node_modules) * Resolve dependencies without an explicit extension (i.e. `import React from "react";`) ## Usage First, install `gulp-resolve-dependencies-advanced` as a development dependency: ```shell npm install --save-dev gulp-resolve-dependencies-advanced ``` Import `gulp-resolve-dependencies` as usual and override the `resolvePath` option to use `advancedPathResolver` which implements an advanced strategy for resolving paths: ```javascript var resolveDependencies = require('gulp-resolve-dependencies'); var advancedResolveDependencies = require('gulp-resolve-dependencies-advanced'); var concat = require('gulp-concat'); gulp.task('resolve-dependencies', function(){ gulp.src(['./src/components/main.tsx']) .pipe(resolveDependencies({ pattern: /import .* \"(.*)\";/g, // Accept import without explicit extension resolvePath: advancedResolveDependencies.advancedPathResolver({ paths: { "*": [path.resolve(__dirname, "node_modules")] // Resolve files in node_modules }, extensions: [".tsx", ".jsx", ".ts", ""], mainFiles: [ "index.jsx", "index.tsx", "index.js", "index.ts" ] }), exclude: [ path.resolve(__dirname, "node_modules/**/*"), path.resolve(__dirname, "src/**/utils.ts") ] })) .on('error', function(err) { console.log(err.message); }) .pipe(concat()) .pipe(gulp.dest('dest/assets/js/')); }); ``` ## Testing ```bash $ git clone https://github.com/Nauja/gulp-resolve-dependencies-advanced.git $ cd gulp-resolve-dependencies-advanced $ npm install $ npm test ``` ## License Licensed under the [MIT](LICENSE) License.