normalizeFallback.js 898 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. 'use strict';
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = normalizeFallback;
  6. var _loaderUtils = require('loader-utils');
  7. var _loaderUtils2 = _interopRequireDefault(_loaderUtils);
  8. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  9. function normalizeFallback(fallback, originalOptions) {
  10. let loader = 'file-loader';
  11. let options = {};
  12. if (typeof fallback === 'string') {
  13. loader = fallback;
  14. const index = fallback.indexOf('?');
  15. if (index >= 0) {
  16. loader = fallback.substr(0, index);
  17. options = _loaderUtils2.default.parseQuery(fallback.substr(index));
  18. }
  19. }
  20. if (fallback !== null && typeof fallback === 'object') {
  21. ({ loader, options } = fallback);
  22. }
  23. options = Object.assign({}, originalOptions, options);
  24. delete options.fallback;
  25. return { loader, options };
  26. }