index.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. Object.defineProperty(exports, "__esModule", {
  2. value: true
  3. });
  4. exports['default'] = function (_ref) {
  5. var template = _ref.template,
  6. t = _ref.types;
  7. var buildImport = template('\n Promise.resolve().then(() => require(SOURCE))\n ');
  8. return {
  9. inherits: _babelPluginSyntaxDynamicImport2['default'],
  10. visitor: {
  11. Import: function () {
  12. function Import(path) {
  13. var importArguments = path.parentPath.node.arguments;
  14. var isString = t.isStringLiteral(importArguments[0]) || t.isTemplateLiteral(importArguments[0]);
  15. if (isString) {
  16. t.removeComments(importArguments[0]);
  17. }
  18. var newImport = buildImport({
  19. SOURCE: isString ? importArguments : t.templateLiteral([t.templateElement({ raw: '', cooked: '' }), t.templateElement({ raw: '', cooked: '' }, true)], importArguments)
  20. });
  21. path.parentPath.replaceWith(newImport);
  22. }
  23. return Import;
  24. }()
  25. }
  26. };
  27. };
  28. var _babelPluginSyntaxDynamicImport = require('babel-plugin-syntax-dynamic-import');
  29. var _babelPluginSyntaxDynamicImport2 = _interopRequireDefault(_babelPluginSyntaxDynamicImport);
  30. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }