@embroider/core 0.44.0-alpha.2 → 0.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -6
- package/src/app-differ.js +20 -20
- package/src/app-differ.js.map +1 -1
- package/src/app-files.js.map +1 -1
- package/src/app.js +81 -109
- package/src/app.js.map +1 -1
- package/src/asset.js.map +1 -1
- package/src/babel-import-adder.d.ts +11 -0
- package/src/babel-import-adder.js +75 -0
- package/src/babel-import-adder.js.map +1 -0
- package/src/babel-plugin-adjust-imports.d.ts +5 -6
- package/src/babel-plugin-adjust-imports.js +25 -24
- package/src/babel-plugin-adjust-imports.js.map +1 -1
- package/src/babel-plugin-inline-hbs-node.d.ts +9 -3
- package/src/babel-plugin-inline-hbs-node.js +1 -1
- package/src/babel-plugin-inline-hbs-node.js.map +1 -1
- package/src/babel-plugin-inline-hbs.d.ts +9 -7
- package/src/babel-plugin-inline-hbs.js +77 -39
- package/src/babel-plugin-inline-hbs.js.map +1 -1
- package/src/browser-index.js.map +1 -1
- package/src/build-stage.js +2 -2
- package/src/build-stage.js.map +1 -1
- package/src/describe-exports.js +6 -6
- package/src/describe-exports.js.map +1 -1
- package/src/ember-html.js +1 -1
- package/src/ember-html.js.map +1 -1
- package/src/ember-template-compiler-types.js.map +1 -1
- package/src/engine-mangler.js.map +1 -1
- package/src/html-entrypoint.js +6 -6
- package/src/html-entrypoint.js.map +1 -1
- package/src/html-placeholder.js.map +1 -1
- package/src/index.js.map +1 -1
- package/src/js-handlebars.d.ts +2 -2
- package/src/js-handlebars.js +5 -5
- package/src/js-handlebars.js.map +1 -1
- package/src/load-ember-template-compiler.js +6 -6
- package/src/load-ember-template-compiler.js.map +1 -1
- package/src/measure-concat.js +2 -2
- package/src/measure-concat.js.map +1 -1
- package/src/messages.js +6 -6
- package/src/messages.js.map +1 -1
- package/src/mini-modules-polyfill.d.ts +1 -1
- package/src/mini-modules-polyfill.js.map +1 -1
- package/src/multi-tree-diff.js +1 -1
- package/src/multi-tree-diff.js.map +1 -1
- package/src/options.js.map +1 -1
- package/src/packager.js +2 -2
- package/src/packager.js.map +1 -1
- package/src/patch-template-compiler.js +6 -5
- package/src/patch-template-compiler.js.map +1 -1
- package/src/portable-babel-config.js +1 -1
- package/src/portable-babel-config.js.map +1 -1
- package/src/portable-babel-launcher.js.map +1 -1
- package/src/portable.js +4 -4
- package/src/portable.js.map +1 -1
- package/src/rename-require-plugin.js.map +1 -1
- package/src/resolver.js.map +1 -1
- package/src/stage.js.map +1 -1
- package/src/template-colocation-plugin.d.ts +8 -9
- package/src/template-colocation-plugin.js +11 -5
- package/src/template-colocation-plugin.js.map +1 -1
- package/src/template-compiler-common.d.ts +1 -3
- package/src/template-compiler-common.js +16 -12
- package/src/template-compiler-common.js.map +1 -1
- package/src/template-compiler-node.js +10 -10
- package/src/template-compiler-node.js.map +1 -1
- package/src/to-broccoli-plugin.js.map +1 -1
- package/src/wait-for-trees.js.map +1 -1
- package/src/write-template-compiler.js +2 -2
- package/src/write-template-compiler.js.map +1 -1
- package/src/babel-plugin-inline-hbs-deps-node.d.ts +0 -14
- package/src/babel-plugin-inline-hbs-deps-node.js +0 -27
- package/src/babel-plugin-inline-hbs-deps-node.js.map +0 -1
- package/src/babel-plugin-inline-hbs-deps.d.ts +0 -10
- package/src/babel-plugin-inline-hbs-deps.js +0 -118
- package/src/babel-plugin-inline-hbs-deps.js.map +0 -1
- package/src/babel-plugin-stage1-inline-hbs-node.d.ts +0 -12
- package/src/babel-plugin-stage1-inline-hbs-node.js +0 -9
- package/src/babel-plugin-stage1-inline-hbs-node.js.map +0 -1
- package/src/babel-plugin-stage1-inline-hbs.d.ts +0 -9
- package/src/babel-plugin-stage1-inline-hbs.js +0 -96
- package/src/babel-plugin-stage1-inline-hbs.js.map +0 -1
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.precompile = void 0;
|
|
4
|
-
const path_1 = require("path");
|
|
5
|
-
const shared_internals_1 = require("@embroider/shared-internals");
|
|
6
|
-
const babel_import_util_1 = require("babel-import-util");
|
|
7
|
-
/*
|
|
8
|
-
In order to coordinate with babel-plugin-htmlbars-inline-precompile, we need
|
|
9
|
-
to give it a `precompile` function that, as a side-effect, captures the
|
|
10
|
-
dependencies needed within the current file. We do this coordination via this
|
|
11
|
-
module-scoped variable, which is safe given Javascript's single-threaded
|
|
12
|
-
nature and babel's synchronicity.
|
|
13
|
-
*/
|
|
14
|
-
let currentState;
|
|
15
|
-
/*
|
|
16
|
-
This is the precompile function you should pass to
|
|
17
|
-
babel-plugin-htmlbars-inline-precompile.
|
|
18
|
-
*/
|
|
19
|
-
function precompile(templateSource, options) {
|
|
20
|
-
if (!currentState) {
|
|
21
|
-
throw new Error(`bug: babel-plugin-htmlbars-inline-precompile and babel-plugin-inline-hbs-deps aren't coordinating correctly`);
|
|
22
|
-
}
|
|
23
|
-
let { compiled, dependencies } = compiler(currentState).precompile(templateSource, Object.assign({ filename: currentState.file.opts.filename }, options));
|
|
24
|
-
for (let dep of dependencies) {
|
|
25
|
-
currentState.dependencies.set(dep.runtimeName, dep);
|
|
26
|
-
}
|
|
27
|
-
return compiled;
|
|
28
|
-
}
|
|
29
|
-
exports.precompile = precompile;
|
|
30
|
-
function make(getCompiler) {
|
|
31
|
-
function inlineHBSTransform(babel) {
|
|
32
|
-
let t = babel.types;
|
|
33
|
-
return {
|
|
34
|
-
visitor: {
|
|
35
|
-
Program: {
|
|
36
|
-
enter(path, state) {
|
|
37
|
-
state.dependencies = new Map();
|
|
38
|
-
state.adder = new babel_import_util_1.ImportUtil(t, path);
|
|
39
|
-
state.emittedCallExpressions = new Set();
|
|
40
|
-
state.getCompiler = getCompiler;
|
|
41
|
-
currentState = state;
|
|
42
|
-
},
|
|
43
|
-
exit(path, state) {
|
|
44
|
-
// we are responsible for rewriting all usages of all the
|
|
45
|
-
// templateCompilationModules to standardize on
|
|
46
|
-
// @ember/template-compilation, so all imports other than that one
|
|
47
|
-
// need to be cleaned up here.
|
|
48
|
-
for (let moduleConfig of shared_internals_1.templateCompilationModules) {
|
|
49
|
-
if (moduleConfig.module !== '@ember/template-compilation') {
|
|
50
|
-
state.adder.removeImport(moduleConfig.module, moduleConfig.exportedName);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
let counter = 0;
|
|
54
|
-
for (let dep of state.dependencies.values()) {
|
|
55
|
-
path.node.body.unshift(amdDefine(dep.runtimeName, counter, t));
|
|
56
|
-
path.node.body.unshift(t.importDeclaration([t.importDefaultSpecifier(t.identifier(`a${counter++}`))], t.stringLiteral(dep.path)));
|
|
57
|
-
}
|
|
58
|
-
currentState = undefined;
|
|
59
|
-
},
|
|
60
|
-
},
|
|
61
|
-
TaggedTemplateExpression(path, state) {
|
|
62
|
-
for (let { module, exportedName } of shared_internals_1.templateCompilationModules) {
|
|
63
|
-
if (path.get('tag').referencesImport(module, exportedName)) {
|
|
64
|
-
handleTagged(path, state, t);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
},
|
|
68
|
-
CallExpression(path, state) {
|
|
69
|
-
if (state.emittedCallExpressions.has(path.node)) {
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
for (let { module, exportedName } of shared_internals_1.templateCompilationModules) {
|
|
73
|
-
if (path.get('callee').referencesImport(module, exportedName)) {
|
|
74
|
-
handleCalled(path, state, t);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
inlineHBSTransform._parallelBabel = {
|
|
82
|
-
requireFile: __filename,
|
|
83
|
-
};
|
|
84
|
-
inlineHBSTransform.baseDir = function () {
|
|
85
|
-
return path_1.join(__dirname, '..');
|
|
86
|
-
};
|
|
87
|
-
function handleTagged(path, state, t) {
|
|
88
|
-
if (path.node.quasi.expressions.length) {
|
|
89
|
-
throw path.buildCodeFrameError('placeholders inside a tagged template string are not supported');
|
|
90
|
-
}
|
|
91
|
-
let template = path.node.quasi.quasis.map(quasi => quasi.value.cooked).join('');
|
|
92
|
-
let newCallExpression = t.callExpression(state.adder.import(path, '@ember/template-compilation', 'precompileTemplate'), [
|
|
93
|
-
t.stringLiteral(template),
|
|
94
|
-
]);
|
|
95
|
-
state.emittedCallExpressions.add(newCallExpression);
|
|
96
|
-
path.replaceWith(newCallExpression);
|
|
97
|
-
}
|
|
98
|
-
function handleCalled(path, state, t) {
|
|
99
|
-
let newCallExpression = t.callExpression(state.adder.import(path, '@ember/template-compilation', 'precompileTemplate'), path.node.arguments);
|
|
100
|
-
state.emittedCallExpressions.add(newCallExpression);
|
|
101
|
-
path.replaceWith(newCallExpression);
|
|
102
|
-
}
|
|
103
|
-
function amdDefine(runtimeName, importCounter, t) {
|
|
104
|
-
return t.expressionStatement(t.callExpression(t.memberExpression(t.identifier('window'), t.identifier('define')), [
|
|
105
|
-
t.stringLiteral(runtimeName),
|
|
106
|
-
t.functionExpression(null, [], t.blockStatement([t.returnStatement(t.identifier(`a${importCounter}`))])),
|
|
107
|
-
]));
|
|
108
|
-
}
|
|
109
|
-
return inlineHBSTransform;
|
|
110
|
-
}
|
|
111
|
-
exports.default = make;
|
|
112
|
-
function compiler(state) {
|
|
113
|
-
if (!state.templateCompiler) {
|
|
114
|
-
state.templateCompiler = state.getCompiler(state.opts);
|
|
115
|
-
}
|
|
116
|
-
return state.templateCompiler;
|
|
117
|
-
}
|
|
118
|
-
//# sourceMappingURL=babel-plugin-inline-hbs-deps.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-inline-hbs-deps.js","sourceRoot":"","sources":["babel-plugin-inline-hbs-deps.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { NodeTemplateCompilerParams } from './template-compiler-node';
|
|
2
|
-
export interface Params {
|
|
3
|
-
templateCompiler: NodeTemplateCompilerParams;
|
|
4
|
-
}
|
|
5
|
-
declare const _default: {
|
|
6
|
-
(babel: typeof import("@babel/core")): unknown;
|
|
7
|
-
_parallelBabel: {
|
|
8
|
-
requireFile: string;
|
|
9
|
-
};
|
|
10
|
-
baseDir(): string;
|
|
11
|
-
};
|
|
12
|
-
export default _default;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const template_compiler_node_1 = require("./template-compiler-node");
|
|
7
|
-
const babel_plugin_stage1_inline_hbs_1 = __importDefault(require("./babel-plugin-stage1-inline-hbs"));
|
|
8
|
-
exports.default = babel_plugin_stage1_inline_hbs_1.default((opts) => new template_compiler_node_1.NodeTemplateCompiler(opts.templateCompiler));
|
|
9
|
-
//# sourceMappingURL=babel-plugin-stage1-inline-hbs-node.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-stage1-inline-hbs-node.js","sourceRoot":"","sources":["babel-plugin-stage1-inline-hbs-node.ts"],"names":[],"mappings":";;;;;AAAA,qEAA4F;AAC5F,sGAAoD;AAMpD,kBAAe,wCAAI,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,6CAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { TemplateCompiler } from './template-compiler-common';
|
|
2
|
-
import type * as Babel from '@babel/core';
|
|
3
|
-
export default function make<Opts>(getCompiler: (opts: Opts) => TemplateCompiler): {
|
|
4
|
-
(babel: typeof Babel): unknown;
|
|
5
|
-
_parallelBabel: {
|
|
6
|
-
requireFile: string;
|
|
7
|
-
};
|
|
8
|
-
baseDir(): string;
|
|
9
|
-
};
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
This babel plugins is responsible for running custom AST transform in inline
|
|
4
|
-
templates. It doesn't compile to wire format, because it runs at stage1.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
const path_1 = require("path");
|
|
8
|
-
const shared_internals_1 = require("@embroider/shared-internals");
|
|
9
|
-
function make(getCompiler) {
|
|
10
|
-
function stage1InlineHBSTransform(babel) {
|
|
11
|
-
let t = babel.types;
|
|
12
|
-
return {
|
|
13
|
-
visitor: {
|
|
14
|
-
TaggedTemplateExpression(path, state) {
|
|
15
|
-
for (let { module, exportedName } of shared_internals_1.templateCompilationModules) {
|
|
16
|
-
if (path.get('tag').referencesImport(module, exportedName)) {
|
|
17
|
-
handleTagged(path, state, t);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
CallExpression(path, state) {
|
|
22
|
-
for (let { module, exportedName } of shared_internals_1.templateCompilationModules) {
|
|
23
|
-
if (path.get('callee').referencesImport(module, exportedName)) {
|
|
24
|
-
handleCalled(path, state, t);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
stage1InlineHBSTransform._parallelBabel = {
|
|
32
|
-
requireFile: __filename,
|
|
33
|
-
};
|
|
34
|
-
stage1InlineHBSTransform.baseDir = function () {
|
|
35
|
-
return path_1.join(__dirname, '..');
|
|
36
|
-
};
|
|
37
|
-
function handleTagged(path, state, t) {
|
|
38
|
-
if (path.node.quasi.expressions.length) {
|
|
39
|
-
throw path.buildCodeFrameError('placeholders inside a tagged template string are not supported');
|
|
40
|
-
}
|
|
41
|
-
let template = path.node.quasi.quasis.map(quasi => quasi.value.cooked).join('');
|
|
42
|
-
let compiled = compiler(state).applyTransforms(state.file.opts.filename, template);
|
|
43
|
-
path.get('quasi').replaceWith(t.templateLiteral([t.templateElement({ raw: compiled, cooked: compiled })], []));
|
|
44
|
-
}
|
|
45
|
-
function handleCalled(path, state, t) {
|
|
46
|
-
let { template, insertRuntimeErrors } = getCallArguments(path);
|
|
47
|
-
let compilerInstance = compiler(state);
|
|
48
|
-
let compiled;
|
|
49
|
-
try {
|
|
50
|
-
compiled = compilerInstance.applyTransforms(state.file.opts.filename, template);
|
|
51
|
-
}
|
|
52
|
-
catch (err) {
|
|
53
|
-
if (insertRuntimeErrors) {
|
|
54
|
-
// in stage 1 we just leave the bad template in place (we were only
|
|
55
|
-
// trying to run transforms and re-emit hbs), so that it will be handled
|
|
56
|
-
// at stage3 instead.
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
throw err;
|
|
60
|
-
}
|
|
61
|
-
path.get('arguments')[0].replaceWith(t.stringLiteral(compiled));
|
|
62
|
-
}
|
|
63
|
-
function compiler(state) {
|
|
64
|
-
if (!state.templateCompiler) {
|
|
65
|
-
state.templateCompiler = getCompiler(state.opts);
|
|
66
|
-
}
|
|
67
|
-
return state.templateCompiler;
|
|
68
|
-
}
|
|
69
|
-
function getCallArguments(path) {
|
|
70
|
-
let [template, options] = path.node.arguments;
|
|
71
|
-
let insertRuntimeErrors = (options === null || options === void 0 ? void 0 : options.type) === 'ObjectExpression' &&
|
|
72
|
-
options.properties.some(prop => prop.type === 'ObjectProperty' &&
|
|
73
|
-
prop.computed === false &&
|
|
74
|
-
prop.key.type === 'Identifier' &&
|
|
75
|
-
prop.key.name === 'insertRuntimeErrors' &&
|
|
76
|
-
prop.value.type === 'BooleanLiteral' &&
|
|
77
|
-
prop.value.value);
|
|
78
|
-
return {
|
|
79
|
-
template: getTemplateString(template, path),
|
|
80
|
-
insertRuntimeErrors,
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
return stage1InlineHBSTransform;
|
|
84
|
-
}
|
|
85
|
-
exports.default = make;
|
|
86
|
-
function getTemplateString(template, path) {
|
|
87
|
-
if ((template === null || template === void 0 ? void 0 : template.type) === 'StringLiteral') {
|
|
88
|
-
return template.value;
|
|
89
|
-
}
|
|
90
|
-
// treat inert TemplateLiteral (without subexpressions) like a StringLiteral
|
|
91
|
-
if ((template === null || template === void 0 ? void 0 : template.type) === 'TemplateLiteral' && !template.expressions.length) {
|
|
92
|
-
return template.quasis[0].value.cooked;
|
|
93
|
-
}
|
|
94
|
-
throw path.buildCodeFrameError('hbs accepts only a string literal argument');
|
|
95
|
-
}
|
|
96
|
-
//# sourceMappingURL=babel-plugin-stage1-inline-hbs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin-stage1-inline-hbs.js","sourceRoot":"","sources":["babel-plugin-stage1-inline-hbs.ts"],"names":[],"mappings":"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"}
|