| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports["default"] = _default;
- var _fs = _interopRequireDefault(require("fs"));
- var _path = _interopRequireDefault(require("path"));
- var _async = _interopRequireDefault(require("async"));
- var _getOptions = _interopRequireDefault(require("./utils/getOptions"));
- var _processResources = _interopRequireDefault(require("./utils/processResources"));
- var _expandResourceGlobs = _interopRequireDefault(require("./utils/expandResourceGlobs"));
- var _rewritePaths = _interopRequireDefault(require("./utils/rewritePaths"));
- var _logger = _interopRequireDefault(require("./utils/logger"));
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
- /* eslint func-names: 0 */
- function _default(source) {
- var webpack = this;
- if (webpack.cacheable) webpack.cacheable();
- var callback = webpack.async(); // eslint-disable-next-line no-underscore-dangle
- global.__DEBUG__ = process.env.DEBUG === 'sass-resources-loader' || process.env.DEBUG === '*';
- _logger["default"].debug('Hey, we\'re in DEBUG mode! Yabba dabba doo!');
- var options = (0, _getOptions["default"])(this);
- var resourcesFromConfig = options.resources;
- if (!resourcesFromConfig) {
- var error = new Error('Can\'t find sass resources in your config. Make sure loader.options.resources exists');
- return callback(error);
- }
- var resourcesLocations = (0, _expandResourceGlobs["default"])(resourcesFromConfig);
- var moduleContext = webpack.context;
- var webpackConfigContext = webpack.rootContext || webpack.options && webpack.options.context || process.cwd();
- if (!webpack.rootContext && !webpack.options && !webpack.options.context) {
- _logger["default"].debug('`options.context` is missing. Using current working directory as a root instead:', process.cwd());
- }
- _logger["default"].debug('Module context:', moduleContext);
- _logger["default"].debug('Webpack config context:', webpackConfigContext);
- _logger["default"].debug('Resources:', resourcesLocations);
- if (!resourcesLocations.length) {
- var _error = new Error("\n Something wrong with provided resources.\n Make sure 'options.resources' is String or Array of Strings with a valid file path.\n ");
- return callback(_error);
- }
- var files = resourcesLocations.map(function (resource) {
- var file = _path["default"].resolve(webpackConfigContext, resource);
- webpack.addDependency(file);
- return file;
- });
- _async["default"].map(files, function (file, cb) {
- _fs["default"].readFile(file, 'utf8', function (error, contents) {
- (0, _rewritePaths["default"])(error, file, contents, moduleContext, cb);
- });
- }, function (error, resources) {
- (0, _processResources["default"])(error, resources, source, options, moduleContext, callback);
- });
- return undefined;
- }
|