source: frontend/node_modules/@babel/helper-module-transforms/lib/dynamic-import.js

Last change on this file was 9af201e, checked in by MBK <marija.karapandzova@…>, 12 days ago

Fix frontend appearance

  • Property mode set to 100644
File size: 1.7 KB
Line 
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.buildDynamicImport = buildDynamicImport;
7var _core = require("@babel/core");
8exports.getDynamicImportSource = function getDynamicImportSource(node) {
9 const [source] = node.arguments;
10 return _core.types.isStringLiteral(source) || _core.types.isTemplateLiteral(source) ? source : _core.template.expression.ast`\`\${${source}}\``;
11};
12function buildDynamicImport(node, deferToThen, wrapWithPromise, builder) {
13 const specifier = _core.types.isCallExpression(node) ? node.arguments[0] : node.source;
14 if (_core.types.isStringLiteral(specifier) || _core.types.isTemplateLiteral(specifier) && specifier.quasis.length === 0) {
15 if (deferToThen) {
16 return _core.template.expression.ast`
17 Promise.resolve().then(() => ${builder(specifier)})
18 `;
19 } else return builder(specifier);
20 }
21 const specifierToString = _core.types.isTemplateLiteral(specifier) ? _core.types.identifier("specifier") : _core.types.templateLiteral([_core.types.templateElement({
22 raw: ""
23 }), _core.types.templateElement({
24 raw: ""
25 })], [_core.types.identifier("specifier")]);
26 if (deferToThen) {
27 return _core.template.expression.ast`
28 (specifier =>
29 new Promise(r => r(${specifierToString}))
30 .then(s => ${builder(_core.types.identifier("s"))})
31 )(${specifier})
32 `;
33 } else if (wrapWithPromise) {
34 return _core.template.expression.ast`
35 (specifier =>
36 new Promise(r => r(${builder(specifierToString)}))
37 )(${specifier})
38 `;
39 } else {
40 return _core.template.expression.ast`
41 (specifier => ${builder(specifierToString)})(${specifier})
42 `;
43 }
44}
45
46//# sourceMappingURL=dynamic-import.js.map
Note: See TracBrowser for help on using the repository browser.