UNPKG

node-sass-package-importer

Version:
27 lines 1.18 kB
"use strict"; const fs = require("fs"); const toolbox_1 = require("node-sass-magic-importer/dist/toolbox"); const default_options_1 = require("./default-options"); module.exports = function packageImporter(userOptions) { const options = Object.assign({}, default_options_1.defaultOptions, userOptions); if (options.hasOwnProperty(`prefix`)) { process.emitWarning('Using the `prefix` option is not supported anymore, use `packagePrefix` instead.'); } const escapedPrefix = options.packagePrefix.replace(/[-/\\^$*+?.()|[\]{}]/g, `\\$&`); const matchPackageUrl = new RegExp(`^${escapedPrefix}(?!/)`); return function importer(url) { if (!url.match(matchPackageUrl)) { return null; } const cleanedUrl = url.replace(matchPackageUrl, ``); const file = toolbox_1.resolvePackageUrl(cleanedUrl, options.extensions, options.cwd, options.packageKeys); if (!file) { return null; } if (/\.css$/.test(file)) { return { contents: fs.readFileSync(file, 'utf-8') }; } return { file: file.replace(/\.css$/, ``) }; }; }; //# sourceMappingURL=index.js.map