@builder.io/mitosis-cli 0.0.6 → 0.0.11
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/dist/__tests__/cli-integration.test.js +5 -5
- package/dist/build/build.js +195 -95
- package/dist/build/helpers/babel-transform-expression.js +39 -0
- package/dist/build/helpers/compile-vue-file.js +82 -18
- package/dist/build/helpers/compile-vue-v2-file.js +253 -0
- package/dist/build/helpers/compile-vue-v2-file.test.js +55 -0
- package/dist/build/helpers/transpile-optional-chaining.js +20 -0
- package/dist/build/helpers/transpile-solid-file.js +2 -3
- package/dist/build/helpers/transpile-vue-binding-expression.js +38 -0
- package/dist/build/helpers/transpile.js +19 -17
- package/dist/cli.js +3 -3
- package/dist/commands/build.js +2 -2
- package/dist/commands/compile.js +18 -36
- package/dist/commands/new.js +2 -2
- package/dist/templates/library-simple/src/components/my-component.lite.jsx +3 -3
- package/dist/templates/library-simple/src/components/my-component.lite.tsx +2 -2
- package/dist/types/build/build.d.ts +1 -1
- package/dist/types/build/helpers/babel-transform-expression.d.ts +1 -0
- package/dist/types/build/helpers/compile-vue-file.d.ts +6 -0
- package/dist/types/build/helpers/compile-vue-v2-file.d.ts +9 -0
- package/dist/types/build/helpers/compile-vue-v2-file.test.d.ts +1 -0
- package/dist/types/build/helpers/transpile-optional-chaining.d.ts +1 -0
- package/dist/types/build/helpers/transpile-vue-binding-expression.d.ts +1 -0
- package/dist/types/build/helpers/transpile.d.ts +1 -1
- package/dist/types/helpers/get-mitosis-config.d.ts +1 -1
- package/package.json +19 -11
- package/dist/targets.js +0 -18
- package/dist/templates/library-simple/mitosis.config.js +0 -13
- package/dist/templates/library-simple/package-lock.json +0 -2590
- package/dist/types/mitosis-config.js +0 -3
- package/dist/types/targets.d.ts +0 -1
- package/dist/types/types/mitosis-config.d.ts +0 -17
|
@@ -62,12 +62,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
62
62
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
63
63
|
};
|
|
64
64
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
65
|
-
exports.compileVueFile = void 0;
|
|
65
|
+
exports.compileVueFile = exports.compileVueV2 = void 0;
|
|
66
66
|
var vueCompilerSfc = __importStar(require("@vue/compiler-sfc"));
|
|
67
67
|
var dedent_1 = __importDefault(require("dedent"));
|
|
68
68
|
var get_simple_id_1 = require("./get-simple-id");
|
|
69
69
|
var json5 = __importStar(require("json5"));
|
|
70
70
|
var esbuild = __importStar(require("esbuild"));
|
|
71
|
+
var compile_vue_v2_file_1 = require("./compile-vue-v2-file");
|
|
71
72
|
function toCjs(path, contents) {
|
|
72
73
|
return __awaiter(this, void 0, void 0, function () {
|
|
73
74
|
var output, err_1;
|
|
@@ -82,18 +83,79 @@ function toCjs(path, contents) {
|
|
|
82
83
|
case 1:
|
|
83
84
|
output = _a.sent();
|
|
84
85
|
if (output.warnings.length) {
|
|
85
|
-
console.warn("Warnings found in file: "
|
|
86
|
+
console.warn("Warnings found in file: ".concat(path), output.warnings);
|
|
86
87
|
}
|
|
87
88
|
return [2 /*return*/, output.code];
|
|
88
89
|
case 2:
|
|
89
90
|
err_1 = _a.sent();
|
|
90
|
-
console.error("Failed to transform file "
|
|
91
|
+
console.error("Failed to transform file ".concat(path), contents);
|
|
91
92
|
throw err_1;
|
|
92
93
|
case 3: return [2 /*return*/];
|
|
93
94
|
}
|
|
94
95
|
});
|
|
95
96
|
});
|
|
96
97
|
}
|
|
98
|
+
function compileVueV2(options) {
|
|
99
|
+
var _a;
|
|
100
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
101
|
+
var rootPath, id, registerComponentHook, fileName, entry, _b, css, code, scriptContents, cssContents, cssCode;
|
|
102
|
+
var _this = this;
|
|
103
|
+
return __generator(this, function (_c) {
|
|
104
|
+
switch (_c.label) {
|
|
105
|
+
case 0:
|
|
106
|
+
rootPath = "".concat(options.distDir, "/vue/").concat(options.path.replace(/\.lite\.tsx$/, ''));
|
|
107
|
+
id = options.id || (0, get_simple_id_1.getSimpleId)();
|
|
108
|
+
registerComponentHook = options.mitosisComponent.meta.registerComponent;
|
|
109
|
+
fileName = rootPath.split('/').pop();
|
|
110
|
+
entry = (0, dedent_1.default)(templateObject_2 || (templateObject_2 = __makeTemplateObject([" \n import script from './", "_script'\n import './", "_styles'\n\n ", "\n export default script\n "], [" \n import script from './", "_script'\n import './", "_styles'\n\n ", "\n export default script\n "])), fileName, fileName, !registerComponentHook
|
|
111
|
+
? ''
|
|
112
|
+
: (0, dedent_1.default)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n import { registerComponent } from '../functions/register-component'\n registerComponent(script, ", ")\n "], ["\n import { registerComponent } from '../functions/register-component'\n registerComponent(script, ", ")\n "])), json5.stringify(registerComponentHook)));
|
|
113
|
+
return [4 /*yield*/, (0, compile_vue_v2_file_1.vue2Transform)(options.contents, id, {
|
|
114
|
+
compileTemplate: true
|
|
115
|
+
})];
|
|
116
|
+
case 1:
|
|
117
|
+
_b = _c.sent(), css = _b.css, code = _b.code;
|
|
118
|
+
scriptContents = code;
|
|
119
|
+
// Remove .lite extensions from imports without having to load a slow parser like babel
|
|
120
|
+
// E.g. convert `import { foo } from './block.lite';` -> `import { foo } from './block';`
|
|
121
|
+
scriptContents = scriptContents.replace(/\.lite(['"];)/g, '$1');
|
|
122
|
+
cssContents = ((_a = css[0]) === null || _a === void 0 ? void 0 : _a.code) || '';
|
|
123
|
+
cssCode = cssContents
|
|
124
|
+
? "\n const id = '".concat(id, "';\n if (typeof document !== 'undefined') {\n if (!document.getElementById(id)) {\n const style = document.createElement('style');\n style.id = id;\n style.innerHTML = `").concat(cssContents.replace(/`/g, '\\`'), "`;\n document.head.appendChild(style);\n console.log('added style?', style)\n }\n }\n ")
|
|
125
|
+
: '';
|
|
126
|
+
return [4 /*yield*/, Promise.all([
|
|
127
|
+
{ path: "".concat(rootPath, ".original.vue"), contents: options.contents },
|
|
128
|
+
{ path: "".concat(rootPath, ".js"), contents: entry },
|
|
129
|
+
{ path: "".concat(rootPath, "_script.js"), contents: scriptContents },
|
|
130
|
+
{ path: "".concat(rootPath, "_styles.js"), contents: cssCode }
|
|
131
|
+
].map(function (item) { return __awaiter(_this, void 0, void 0, function () {
|
|
132
|
+
var _a;
|
|
133
|
+
var _b;
|
|
134
|
+
return __generator(this, function (_c) {
|
|
135
|
+
switch (_c.label) {
|
|
136
|
+
case 0:
|
|
137
|
+
if (!item.path.endsWith('.js')) return [3 /*break*/, 2];
|
|
138
|
+
_b = {
|
|
139
|
+
path: item.path
|
|
140
|
+
};
|
|
141
|
+
return [4 /*yield*/, toCjs(item.path, item.contents)];
|
|
142
|
+
case 1:
|
|
143
|
+
_a = (_b.contents = _c.sent(),
|
|
144
|
+
_b);
|
|
145
|
+
return [3 /*break*/, 3];
|
|
146
|
+
case 2:
|
|
147
|
+
_a = item;
|
|
148
|
+
_c.label = 3;
|
|
149
|
+
case 3: return [2 /*return*/, _a];
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
}); }))];
|
|
153
|
+
case 2: return [2 /*return*/, _c.sent()];
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
exports.compileVueV2 = compileVueV2;
|
|
97
159
|
function compileVueFile(options) {
|
|
98
160
|
var _a;
|
|
99
161
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -102,11 +164,14 @@ function compileVueFile(options) {
|
|
|
102
164
|
return __generator(this, function (_b) {
|
|
103
165
|
switch (_b.label) {
|
|
104
166
|
case 0:
|
|
105
|
-
|
|
167
|
+
if (options.vueVersion === 2) {
|
|
168
|
+
return [2 /*return*/, compileVueV2(options)];
|
|
169
|
+
}
|
|
170
|
+
rootPath = "".concat(options.distDir, "/vue/").concat(options.path.replace(/\.lite\.tsx$/, ''));
|
|
106
171
|
parsed = vueCompilerSfc.parse(options.contents);
|
|
107
|
-
id = get_simple_id_1.getSimpleId();
|
|
172
|
+
id = (0, get_simple_id_1.getSimpleId)();
|
|
108
173
|
if (parsed.errors.length) {
|
|
109
|
-
console.warn("Vue template compiler errors in file "
|
|
174
|
+
console.warn("Vue template compiler errors in file ".concat(options.path), parsed.errors);
|
|
110
175
|
console.warn(options.contents);
|
|
111
176
|
}
|
|
112
177
|
compiledTemplate = vueCompilerSfc.compileTemplate({
|
|
@@ -116,7 +181,7 @@ function compileVueFile(options) {
|
|
|
116
181
|
scoped: true
|
|
117
182
|
});
|
|
118
183
|
if (compiledTemplate.errors.length) {
|
|
119
|
-
console.warn("Vue template compiler errors in file "
|
|
184
|
+
console.warn("Vue template compiler errors in file ".concat(options.path), compiledTemplate.errors);
|
|
120
185
|
console.warn(options.contents);
|
|
121
186
|
}
|
|
122
187
|
compiledScript = vueCompilerSfc.compileScript(parsed.descriptor, {
|
|
@@ -131,25 +196,24 @@ function compileVueFile(options) {
|
|
|
131
196
|
case 1:
|
|
132
197
|
compiledStyles = _b.sent();
|
|
133
198
|
if (compiledStyles.errors.length > 1) {
|
|
134
|
-
console.warn("Vue style compiler errors in file "
|
|
199
|
+
console.warn("Vue style compiler errors in file ".concat(options.path), compiledTemplate.errors);
|
|
135
200
|
console.warn(options.contents);
|
|
136
201
|
}
|
|
137
202
|
registerComponentHook = options.mitosisComponent.meta.registerComponent;
|
|
138
203
|
fileName = rootPath.split('/').pop();
|
|
139
|
-
entry = dedent_1.default(
|
|
140
|
-
"\n export default script\n "])), fileName, fileName, fileName, !registerComponentHook
|
|
204
|
+
entry = (0, dedent_1.default)(templateObject_4 || (templateObject_4 = __makeTemplateObject([" \n import script from './", "_script'\n import { render } from './", "_render'\n import './", "_styles.css'\n\n script.render = render\n\n ", "\n export default script\n "], [" \n import script from './", "_script'\n import { render } from './", "_render'\n import './", "_styles.css'\n\n script.render = render\n\n ", "\n export default script\n "])), fileName, fileName, fileName, !registerComponentHook
|
|
141
205
|
? ''
|
|
142
|
-
: dedent_1.default(
|
|
206
|
+
: (0, dedent_1.default)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n import { registerComponent } from '../functions/register-component'\n registerComponent(script, ", ")\n "], ["\n import { registerComponent } from '../functions/register-component'\n registerComponent(script, ", ")\n "])), json5.stringify(registerComponentHook)));
|
|
143
207
|
scriptContents = compiledScript.content;
|
|
144
208
|
// Remove .lite extensions from imports without having to load a slow parser like babel
|
|
145
209
|
// E.g. convert `import { foo } from './block.lite';` -> `import { foo } from './block';`
|
|
146
210
|
scriptContents = scriptContents.replace(/\.lite(['"];)/g, '$1');
|
|
147
211
|
return [4 /*yield*/, Promise.all([
|
|
148
|
-
{ path: rootPath
|
|
149
|
-
{ path: rootPath
|
|
150
|
-
{ path: rootPath
|
|
151
|
-
{ path: rootPath
|
|
152
|
-
{ path: rootPath
|
|
212
|
+
{ path: "".concat(rootPath, ".original.vue"), contents: options.contents },
|
|
213
|
+
{ path: "".concat(rootPath, ".js"), contents: entry },
|
|
214
|
+
{ path: "".concat(rootPath, "_script.js"), contents: scriptContents },
|
|
215
|
+
{ path: "".concat(rootPath, "_render.js"), contents: compiledTemplate.code },
|
|
216
|
+
{ path: "".concat(rootPath, "_styles.css"), contents: compiledStyles.code }
|
|
153
217
|
].map(function (item) { return __awaiter(_this, void 0, void 0, function () {
|
|
154
218
|
var _a;
|
|
155
219
|
var _b;
|
|
@@ -178,5 +242,5 @@ function compileVueFile(options) {
|
|
|
178
242
|
});
|
|
179
243
|
}
|
|
180
244
|
exports.compileVueFile = compileVueFile;
|
|
181
|
-
var templateObject_1, templateObject_2;
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
245
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
|
|
246
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsZS12dWUtZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZC9oZWxwZXJzL2NvbXBpbGUtdnVlLWZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxnRUFBbUQ7QUFDbkQsa0RBQTJCO0FBQzNCLGlEQUE2QztBQUM3QywyQ0FBOEI7QUFDOUIsK0NBQWtDO0FBQ2xDLDZEQUFxRDtBQWdCckQsU0FBZSxLQUFLLENBQUMsSUFBWSxFQUFFLFFBQWdCOzs7Ozs7O29CQUVoQyxxQkFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTs0QkFDL0MsTUFBTSxFQUFFLEtBQUs7NEJBQ2IsTUFBTSxFQUFFLEtBQUs7eUJBQ2QsQ0FBQyxFQUFBOztvQkFISSxNQUFNLEdBQUcsU0FHYjtvQkFFRixJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO3dCQUMxQixPQUFPLENBQUMsSUFBSSxDQUFDLGtDQUEyQixJQUFJLENBQUUsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7cUJBQ2pFO29CQUVELHNCQUFPLE1BQU0sQ0FBQyxJQUFJLEVBQUE7OztvQkFFbEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQ0FBNEIsSUFBSSxDQUFFLEVBQUUsUUFBUSxDQUFDLENBQUE7b0JBQzNELE1BQU0sS0FBRyxDQUFBOzs7OztDQUVaO0FBRUQsU0FBc0IsWUFBWSxDQUFDLE9BQThCOzs7Ozs7OztvQkFDekQsUUFBUSxHQUFHLFVBQUcsT0FBTyxDQUFDLE9BQU8sa0JBQVEsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQzdELGNBQWMsRUFDZCxFQUFFLENBQ0gsQ0FBRSxDQUFBO29CQUVHLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxJQUFJLElBQUEsMkJBQVcsR0FBRSxDQUFBO29CQUNoQyxxQkFBcUIsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFBO29CQUV2RSxRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtvQkFHcEMsS0FBSyxPQUFHLGdCQUFNLDJMQUFBLG9DQUNNLEVBQVEsMEJBQ3BCLEVBQVEsa0JBRWxCLEVBT0YsaUNBRUQsS0FaeUIsUUFBUSxFQUNwQixRQUFRLEVBR2xCLENBQUMscUJBQXFCO3dCQUNwQixDQUFDLENBQUMsRUFBRTt3QkFDSixDQUFDLEtBQUMsZ0JBQU0sME1BQUEsdUhBRXNCLEVBQXNDLGFBQ25FLEtBRDZCLEtBQUssQ0FBQyxTQUFTLENBQUMscUJBQXFCLENBQUMsQ0FDbkUsQ0FHTixDQUFBO29CQUVxQixxQkFBTSxJQUFBLG1DQUFhLEVBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUU7NEJBQzlELGVBQWUsRUFBRSxJQUFJO3lCQUN0QixDQUFDLEVBQUE7O29CQUZJLEtBQWdCLFNBRXBCLEVBRk0sR0FBRyxTQUFBLEVBQUUsSUFBSSxVQUFBO29CQUliLGNBQWMsR0FBRyxJQUFJLENBQUE7b0JBQ3pCLHVGQUF1RjtvQkFDdkYseUZBQXlGO29CQUN6RixjQUFjLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsQ0FBQTtvQkFFekQsV0FBVyxHQUFXLENBQUEsTUFBQSxHQUFHLENBQUMsQ0FBQyxDQUFDLDBDQUFFLElBQUksS0FBSSxFQUFFLENBQUE7b0JBRXhDLE9BQU8sR0FBRyxXQUFXO3dCQUN6QixDQUFDLENBQUMsNEJBQ1ksRUFBRSxtTkFLVSxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsa0hBSzNEO3dCQUNDLENBQUMsQ0FBQyxFQUFFLENBQUE7b0JBRUMscUJBQU0sT0FBTyxDQUFDLEdBQUcsQ0FDdEI7NEJBQ0UsRUFBRSxJQUFJLEVBQUUsVUFBRyxRQUFRLGtCQUFlLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUU7NEJBQ2hFLEVBQUUsSUFBSSxFQUFFLFVBQUcsUUFBUSxRQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTs0QkFDM0MsRUFBRSxJQUFJLEVBQUUsVUFBRyxRQUFRLGVBQVksRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFOzRCQUMzRCxFQUFFLElBQUksRUFBRSxVQUFHLFFBQVEsZUFBWSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7eUJBQ3JELENBQUMsR0FBRyxDQUFDLFVBQU0sSUFBSTs7Ozs7OzZDQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUF6Qix3QkFBeUI7OzRDQUVuQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7O3dDQUNMLHFCQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBQTs7OENBQS9DLFdBQVEsR0FBRSxTQUFxQzs7Ozt3Q0FFakQsS0FBQSxJQUFJLENBQUE7OzRDQUxSLDBCQUtROzs7NkJBQUEsQ0FDVCxDQUNGLEVBQUE7d0JBZEQsc0JBQU8sU0FjTixFQUFBOzs7O0NBR0Y7QUF0RUQsb0NBc0VDO0FBRUQsU0FBc0IsY0FBYyxDQUNsQyxPQUE4Qjs7Ozs7Ozs7b0JBRTlCLElBQUksT0FBTyxDQUFDLFVBQVUsS0FBSyxDQUFDLEVBQUU7d0JBQzVCLHNCQUFPLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBQTtxQkFDN0I7b0JBQ0ssUUFBUSxHQUFHLFVBQUcsT0FBTyxDQUFDLE9BQU8sa0JBQVEsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQzdELGNBQWMsRUFDZCxFQUFFLENBQ0gsQ0FBRSxDQUFBO29CQUNHLE1BQU0sR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQTtvQkFDL0MsRUFBRSxHQUFHLElBQUEsMkJBQVcsR0FBRSxDQUFBO29CQUV4QixJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO3dCQUN4QixPQUFPLENBQUMsSUFBSSxDQUNWLCtDQUF3QyxPQUFPLENBQUMsSUFBSSxDQUFFLEVBQ3RELE1BQU0sQ0FBQyxNQUFNLENBQ2QsQ0FBQTt3QkFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQTtxQkFDL0I7b0JBRUssZ0JBQWdCLEdBQUcsY0FBYyxDQUFDLGVBQWUsQ0FBQzt3QkFDdEQsUUFBUSxFQUFFLE9BQU8sQ0FBQyxJQUFJO3dCQUN0QixNQUFNLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTzt3QkFDMUMsRUFBRSxJQUFBO3dCQUNGLE1BQU0sRUFBRSxJQUFJO3FCQUNiLENBQUMsQ0FBQTtvQkFDRixJQUFJLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7d0JBQ2xDLE9BQU8sQ0FBQyxJQUFJLENBQ1YsK0NBQXdDLE9BQU8sQ0FBQyxJQUFJLENBQUUsRUFDdEQsZ0JBQWdCLENBQUMsTUFBTSxDQUN4QixDQUFBO3dCQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFBO3FCQUMvQjtvQkFDSyxjQUFjLEdBQUcsY0FBYyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFO3dCQUNyRSxFQUFFLEVBQUUsRUFBRTtxQkFDUCxDQUFDLENBQUE7b0JBRXFCLHFCQUFNLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQzs0QkFDNUQsRUFBRSxJQUFBOzRCQUNGLFFBQVEsRUFBRSxPQUFPLENBQUMsSUFBSTs0QkFDdEIsTUFBTSxFQUFFLElBQUk7NEJBQ1osTUFBTSxFQUFFLENBQUEsTUFBQSxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsMENBQUUsT0FBTyxLQUFJLEVBQUU7eUJBQ25ELENBQUMsRUFBQTs7b0JBTEksY0FBYyxHQUFHLFNBS3JCO29CQUNGLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO3dCQUNwQyxPQUFPLENBQUMsSUFBSSxDQUNWLDRDQUFxQyxPQUFPLENBQUMsSUFBSSxDQUFFLEVBQ25ELGdCQUFnQixDQUFDLE1BQU0sQ0FDeEIsQ0FBQTt3QkFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQTtxQkFDL0I7b0JBRUsscUJBQXFCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQTtvQkFFdkUsUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7b0JBR3BDLEtBQUssT0FBRyxnQkFBTSx5UUFBQSxvQ0FDTSxFQUFRLDBDQUNKLEVBQVEsMEJBQ3hCLEVBQVEsb0RBSWxCLEVBT0YsaUNBRUQsS0FmeUIsUUFBUSxFQUNKLFFBQVEsRUFDeEIsUUFBUSxFQUtsQixDQUFDLHFCQUFxQjt3QkFDcEIsQ0FBQyxDQUFDLEVBQUU7d0JBQ0osQ0FBQyxLQUFDLGdCQUFNLDBNQUFBLHVIQUVzQixFQUFzQyxhQUNuRSxLQUQ2QixLQUFLLENBQUMsU0FBUyxDQUFDLHFCQUFxQixDQUFDLENBQ25FLENBR04sQ0FBQTtvQkFFRyxjQUFjLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQTtvQkFDM0MsdUZBQXVGO29CQUN2Rix5RkFBeUY7b0JBQ3pGLGNBQWMsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFBO29CQUV4RCxxQkFBTSxPQUFPLENBQUMsR0FBRyxDQUN0Qjs0QkFDRSxFQUFFLElBQUksRUFBRSxVQUFHLFFBQVEsa0JBQWUsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRTs0QkFDaEUsRUFBRSxJQUFJLEVBQUUsVUFBRyxRQUFRLFFBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFOzRCQUMzQyxFQUFFLElBQUksRUFBRSxVQUFHLFFBQVEsZUFBWSxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUU7NEJBQzNELEVBQUUsSUFBSSxFQUFFLFVBQUcsUUFBUSxlQUFZLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixDQUFDLElBQUksRUFBRTs0QkFDbEUsRUFBRSxJQUFJLEVBQUUsVUFBRyxRQUFRLGdCQUFhLEVBQUUsUUFBUSxFQUFFLGNBQWMsQ0FBQyxJQUFJLEVBQUU7eUJBQ2xFLENBQUMsR0FBRyxDQUFDLFVBQU0sSUFBSTs7Ozs7OzZDQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUF6Qix3QkFBeUI7OzRDQUVuQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7O3dDQUNMLHFCQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBQTs7OENBQS9DLFdBQVEsR0FBRSxTQUFxQzs7Ozt3Q0FFakQsS0FBQSxJQUFJLENBQUE7OzRDQUxSLDBCQUtROzs7NkJBQUEsQ0FDVCxDQUNGLEVBQUE7d0JBZkQsc0JBQU8sU0FlTixFQUFBOzs7O0NBQ0Y7QUFoR0Qsd0NBZ0dDIn0=
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* This file is modified from Vue 2's rollup plugin
|
|
4
|
+
* https://github.com/vuejs/rollup-plugin-vue/blob/2.2/src/vueTransform.js
|
|
5
|
+
*/
|
|
6
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
7
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
8
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
9
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
10
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
11
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
12
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
16
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
17
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
18
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
19
|
+
function step(op) {
|
|
20
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
21
|
+
while (_) try {
|
|
22
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
23
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
24
|
+
switch (op[0]) {
|
|
25
|
+
case 0: case 1: t = op; break;
|
|
26
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
27
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
28
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
29
|
+
default:
|
|
30
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
31
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
32
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
33
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
34
|
+
if (t[2]) _.ops.pop();
|
|
35
|
+
_.trys.pop(); continue;
|
|
36
|
+
}
|
|
37
|
+
op = body.call(thisArg, _);
|
|
38
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
39
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
43
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
44
|
+
};
|
|
45
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.vue2Transform = void 0;
|
|
47
|
+
var de_indent_1 = __importDefault(require("de-indent"));
|
|
48
|
+
var html_minifier_1 = __importDefault(require("html-minifier"));
|
|
49
|
+
var magic_string_1 = __importDefault(require("magic-string"));
|
|
50
|
+
var parse5_1 = __importDefault(require("parse5"));
|
|
51
|
+
var path_1 = require("path");
|
|
52
|
+
var vue_template_es2015_compiler_1 = __importDefault(require("vue-template-es2015-compiler"));
|
|
53
|
+
var vue_template_validator_1 = __importDefault(require("vue-template-validator"));
|
|
54
|
+
var tsPreset = require('@babel/preset-typescript');
|
|
55
|
+
function getNodeAttrs(node) {
|
|
56
|
+
if (node.attrs) {
|
|
57
|
+
var attributes = {};
|
|
58
|
+
for (var _i = 0, _a = node.attrs; _i < _a.length; _i++) {
|
|
59
|
+
var attr = _a[_i];
|
|
60
|
+
attributes[attr.name] = attr.value;
|
|
61
|
+
}
|
|
62
|
+
return attributes;
|
|
63
|
+
}
|
|
64
|
+
return {};
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Pad content with empty lines to get correct line number in errors.
|
|
68
|
+
*/
|
|
69
|
+
function padContent(content) {
|
|
70
|
+
return content
|
|
71
|
+
.split(/\r?\n/g)
|
|
72
|
+
.map(function () { return ''; })
|
|
73
|
+
.join('\n');
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Wrap code inside a with statement inside a function
|
|
77
|
+
* This is necessary for Vue 2 template compilation
|
|
78
|
+
*/
|
|
79
|
+
function wrapRenderFunction(code) {
|
|
80
|
+
return "function(){".concat(code, "}");
|
|
81
|
+
}
|
|
82
|
+
function injectRender(script, render, lang, options) {
|
|
83
|
+
if (['js', 'babel'].indexOf(lang.toLowerCase()) > -1) {
|
|
84
|
+
var matches = /(export default[^{]*\{)/g.exec(script);
|
|
85
|
+
if (matches) {
|
|
86
|
+
var renderScript = 'module.exports={' +
|
|
87
|
+
"render: ".concat(wrapRenderFunction(render.render), ",") +
|
|
88
|
+
'staticRenderFns: [' +
|
|
89
|
+
"".concat(render.staticRenderFns.map(wrapRenderFunction).join(','), "],}");
|
|
90
|
+
if (options.stripWith !== false) {
|
|
91
|
+
try {
|
|
92
|
+
renderScript = (0, vue_template_es2015_compiler_1.default)(renderScript, options.vue);
|
|
93
|
+
}
|
|
94
|
+
catch (e) {
|
|
95
|
+
console.error(e, 'in:', renderScript);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
var result = script
|
|
99
|
+
.split(matches[1])
|
|
100
|
+
.join(renderScript
|
|
101
|
+
.replace('module.exports={', 'export default {')
|
|
102
|
+
.replace(/\}$/, ''));
|
|
103
|
+
return result;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
else if (options.inject) {
|
|
107
|
+
return options.inject(script, render, lang, options);
|
|
108
|
+
}
|
|
109
|
+
throw new Error('[rollup-plugin-vue] could not find place to inject template in script.');
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* @param script
|
|
113
|
+
* @param template
|
|
114
|
+
* @param lang
|
|
115
|
+
* @returns {string}
|
|
116
|
+
*/
|
|
117
|
+
function injectTemplate(script, template, lang, options) {
|
|
118
|
+
if (template === undefined)
|
|
119
|
+
return script;
|
|
120
|
+
if (['js', 'babel'].indexOf(lang.toLowerCase()) > -1) {
|
|
121
|
+
var matches = /(export default[^{]*\{)/g.exec(script);
|
|
122
|
+
if (matches) {
|
|
123
|
+
return script
|
|
124
|
+
.split(matches[1])
|
|
125
|
+
.join("".concat(matches[1], " template: ").concat(JSON.stringify(template), ","));
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
else if (options.inject) {
|
|
129
|
+
return options.inject(script, template, lang, options);
|
|
130
|
+
}
|
|
131
|
+
throw new Error('[rollup-plugin-vue] could not find place to inject template in script.');
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Compile template: DeIndent and minify html.
|
|
135
|
+
*/
|
|
136
|
+
function processTemplate(source, id, content, options) {
|
|
137
|
+
if (source === undefined)
|
|
138
|
+
return undefined;
|
|
139
|
+
var code = source.code;
|
|
140
|
+
var template = (0, de_indent_1.default)(code);
|
|
141
|
+
var ignore = [
|
|
142
|
+
'Found camelCase attribute:',
|
|
143
|
+
'Tag <slot> cannot appear inside <table> due to HTML content restrictions.'
|
|
144
|
+
];
|
|
145
|
+
var warnings = (0, vue_template_validator_1.default)(code, content);
|
|
146
|
+
if (warnings) {
|
|
147
|
+
var relativePath_1 = (0, path_1.relative)(process.cwd(), id);
|
|
148
|
+
warnings
|
|
149
|
+
.filter(function (warning) {
|
|
150
|
+
return (options.compileTemplate &&
|
|
151
|
+
ignore.findIndex(function (i) { return warning.indexOf(i) > -1; }) < 0);
|
|
152
|
+
})
|
|
153
|
+
.forEach(function (msg) {
|
|
154
|
+
console.warn("\n Warning in ".concat(relativePath_1, ":\n ").concat(msg));
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
return html_minifier_1.default.minify(template, options.htmlMinifier);
|
|
158
|
+
}
|
|
159
|
+
function processScript(source, id, content, options, nodes) {
|
|
160
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
161
|
+
var startTemplate, template, lang, script, map, render;
|
|
162
|
+
return __generator(this, function (_a) {
|
|
163
|
+
startTemplate = nodes.template[0];
|
|
164
|
+
if (startTemplate) {
|
|
165
|
+
startTemplate.code = startTemplate.code;
|
|
166
|
+
}
|
|
167
|
+
template = processTemplate(startTemplate, id, content, options);
|
|
168
|
+
lang = source.attrs.lang || 'js';
|
|
169
|
+
script = (0, de_indent_1.default)(padContent(content.slice(0, content.indexOf(source.code))) + source.code);
|
|
170
|
+
map = new magic_string_1.default(script).generateMap({ hires: true });
|
|
171
|
+
if (template && options.compileTemplate) {
|
|
172
|
+
render = require('vue-template-compiler').compile(template);
|
|
173
|
+
return [2 /*return*/, { map: map, code: injectRender(script, render, lang, options) }];
|
|
174
|
+
}
|
|
175
|
+
else if (template) {
|
|
176
|
+
return [2 /*return*/, { map: map, code: injectTemplate(script, template, lang, options) }];
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
return [2 /*return*/, { map: map, code: script }];
|
|
180
|
+
}
|
|
181
|
+
return [2 /*return*/];
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
function processStyle(styles, id) {
|
|
186
|
+
return styles.map(function (style) { return ({
|
|
187
|
+
id: id,
|
|
188
|
+
code: (0, de_indent_1.default)(style.code).trim(),
|
|
189
|
+
lang: style.attrs.lang || 'css'
|
|
190
|
+
}); });
|
|
191
|
+
}
|
|
192
|
+
function parseTemplate(code) {
|
|
193
|
+
var fragment = parse5_1.default.parseFragment(code, {
|
|
194
|
+
locationInfo: true
|
|
195
|
+
});
|
|
196
|
+
var nodes = {
|
|
197
|
+
template: [],
|
|
198
|
+
script: [],
|
|
199
|
+
style: []
|
|
200
|
+
};
|
|
201
|
+
for (var i = fragment.childNodes.length - 1; i >= 0; i -= 1) {
|
|
202
|
+
var name_1 = fragment.childNodes[i].nodeName;
|
|
203
|
+
if (!(name_1 in nodes)) {
|
|
204
|
+
continue;
|
|
205
|
+
}
|
|
206
|
+
var start = fragment.childNodes[i].__location.startTag.endOffset;
|
|
207
|
+
var end = fragment.childNodes[i].__location.endTag.startOffset;
|
|
208
|
+
nodes[name_1].push({
|
|
209
|
+
node: fragment.childNodes[i],
|
|
210
|
+
code: code.substr(start, end - start),
|
|
211
|
+
attrs: getNodeAttrs(fragment.childNodes[i])
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
if (nodes.script.length === 0) {
|
|
215
|
+
nodes.script.push({
|
|
216
|
+
node: null,
|
|
217
|
+
code: 'export default {\n}',
|
|
218
|
+
attrs: {}
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
return nodes;
|
|
222
|
+
}
|
|
223
|
+
function vue2Transform(code, id, options) {
|
|
224
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
225
|
+
var nodes, js, css, isProduction, isWithStripped, style;
|
|
226
|
+
return __generator(this, function (_a) {
|
|
227
|
+
switch (_a.label) {
|
|
228
|
+
case 0:
|
|
229
|
+
nodes = parseTemplate(code);
|
|
230
|
+
return [4 /*yield*/, processScript(nodes.script[0], id, code, options, nodes)];
|
|
231
|
+
case 1:
|
|
232
|
+
js = _a.sent();
|
|
233
|
+
css = processStyle(nodes.style, id);
|
|
234
|
+
isProduction = process.env.NODE_ENV === 'production';
|
|
235
|
+
isWithStripped = options.stripWith !== false;
|
|
236
|
+
if (!isProduction && !isWithStripped) {
|
|
237
|
+
js.code = js.code + '\nmodule.exports.render._withStripped = true';
|
|
238
|
+
}
|
|
239
|
+
if (options.styleToImports === true) {
|
|
240
|
+
style = css
|
|
241
|
+
.map(function (s, i) {
|
|
242
|
+
return 'import ' + JSON.stringify("".concat(id, ".").concat(i, ".vue.component.").concat(s.lang)) + ';';
|
|
243
|
+
})
|
|
244
|
+
.join(' ');
|
|
245
|
+
return [2 /*return*/, { css: css, code: style + js.code, map: js.map }];
|
|
246
|
+
}
|
|
247
|
+
return [2 /*return*/, { css: css, code: js.code, map: js.map }];
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
exports.vue2Transform = vue2Transform;
|
|
253
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsZS12dWUtdjItZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9idWlsZC9oZWxwZXJzL2NvbXBpbGUtdnVlLXYyLWZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7R0FHRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsd0RBQWdDO0FBQ2hDLGdFQUF3QztBQUN4Qyw4REFBc0M7QUFDdEMsa0RBQTJCO0FBQzNCLDZCQUErQjtBQUMvQiw4RkFBK0Q7QUFDL0Qsa0ZBQXFEO0FBQ3JELElBQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBRXBELFNBQVMsWUFBWSxDQUFDLElBQUk7SUFDeEIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ2QsSUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFBO1FBRXJCLEtBQW1CLFVBQVUsRUFBVixLQUFBLElBQUksQ0FBQyxLQUFLLEVBQVYsY0FBVSxFQUFWLElBQVUsRUFBRTtZQUExQixJQUFNLElBQUksU0FBQTtZQUNiLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQTtTQUNuQztRQUVELE9BQU8sVUFBVSxDQUFBO0tBQ2xCO0lBRUQsT0FBTyxFQUFFLENBQUE7QUFDWCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLFVBQVUsQ0FBQyxPQUFPO0lBQ3pCLE9BQU8sT0FBTztTQUNYLEtBQUssQ0FBQyxRQUFRLENBQUM7U0FDZixHQUFHLENBQUMsY0FBTSxPQUFBLEVBQUUsRUFBRixDQUFFLENBQUM7U0FDYixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDZixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBQyxJQUFJO0lBQzlCLE9BQU8scUJBQWMsSUFBSSxNQUFHLENBQUE7QUFDOUIsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFD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
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var transpile_vue_binding_expression_1 = require("./transpile-vue-binding-expression");
|
|
40
|
+
test('Transforms binding expression optional member access', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
41
|
+
var _a;
|
|
42
|
+
return __generator(this, function (_b) {
|
|
43
|
+
switch (_b.label) {
|
|
44
|
+
case 0:
|
|
45
|
+
_a = expect;
|
|
46
|
+
return [4 /*yield*/, (0, transpile_vue_binding_expression_1.transpileBindingExpression)('foo?.bar?.baz')];
|
|
47
|
+
case 1:
|
|
48
|
+
_a.apply(void 0, [_b.sent()]).toEqual(
|
|
49
|
+
// A little redundant, but effective for our needs
|
|
50
|
+
'((foo && foo.bar) && (foo && foo.bar).baz)');
|
|
51
|
+
return [2 /*return*/];
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}); });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsZS12dWUtdjItZmlsZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2J1aWxkL2hlbHBlcnMvY29tcGlsZS12dWUtdjItZmlsZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUZBQStFO0FBRS9FLElBQUksQ0FBQyxzREFBc0QsRUFBRTs7Ozs7Z0JBQzNELEtBQUEsTUFBTSxDQUFBO2dCQUFDLHFCQUFNLElBQUEsNkRBQTBCLEVBQUMsZUFBZSxDQUFDLEVBQUE7O2dCQUF4RCxrQkFBTyxTQUFpRCxFQUFDLENBQUMsT0FBTztnQkFDL0Qsa0RBQWtEO2dCQUNsRCw0Q0FBNEMsQ0FDN0MsQ0FBQTs7OztLQUNGLENBQUMsQ0FBQSJ9
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.transpileOptionalChaining = void 0;
|
|
4
|
+
var transpile_vue_binding_expression_1 = require("./transpile-vue-binding-expression");
|
|
5
|
+
function transpileOptionalChaining(template) {
|
|
6
|
+
return (
|
|
7
|
+
// TODO: use proper HTMl parsing of vue instead of regexes. Slower
|
|
8
|
+
// but more reliable for real attribute values
|
|
9
|
+
template
|
|
10
|
+
// Transpile out the ?. operator which Vue 2 templates don't support
|
|
11
|
+
// Special match for v-for as it doesn't use normal JS syntax at the
|
|
12
|
+
// start of it
|
|
13
|
+
.replace(/v-for="(.+?) in ([^"]+?)"/g, function (_match, group1, group2) {
|
|
14
|
+
return "v-for=\"".concat(group1, " in ").concat((0, transpile_vue_binding_expression_1.transpileBindingExpression)(group2), "\"");
|
|
15
|
+
})
|
|
16
|
+
// Transpile out the ?. operator which Vue 2 templates don't support
|
|
17
|
+
.replace(/="([^"]*?\?\.[^"]*?)"/g, function (_match, group) { return "=\"".concat((0, transpile_vue_binding_expression_1.transpileBindingExpression)(group), "\""); }));
|
|
18
|
+
}
|
|
19
|
+
exports.transpileOptionalChaining = transpileOptionalChaining;
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwaWxlLW9wdGlvbmFsLWNoYWluaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2J1aWxkL2hlbHBlcnMvdHJhbnNwaWxlLW9wdGlvbmFsLWNoYWluaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVGQUErRTtBQUUvRSxTQUFnQix5QkFBeUIsQ0FBQyxRQUFnQjtJQUN4RCxPQUFPO0lBQ0wsa0VBQWtFO0lBQ2xFLDhDQUE4QztJQUM5QyxRQUFRO1FBQ04sb0VBQW9FO1FBQ3BFLG9FQUFvRTtRQUNwRSxjQUFjO1NBQ2IsT0FBTyxDQUNOLDRCQUE0QixFQUM1QixVQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTTtRQUNyQixPQUFBLGtCQUFVLE1BQU0saUJBQU8sSUFBQSw2REFBMEIsRUFBQyxNQUFNLENBQUMsT0FBRztJQUE1RCxDQUE0RCxDQUMvRDtRQUNELG9FQUFvRTtTQUNuRSxPQUFPLENBQ04sd0JBQXdCLEVBQ3hCLFVBQUMsTUFBTSxFQUFFLEtBQUssSUFBSyxPQUFBLGFBQUssSUFBQSw2REFBMEIsRUFBQyxLQUFLLENBQUMsT0FBRyxFQUF6QyxDQUF5QyxDQUM3RCxDQUNKLENBQUE7QUFDSCxDQUFDO0FBbkJELDhEQW1CQyJ9
|
|
@@ -82,8 +82,7 @@ function transpileSolidFile(options) {
|
|
|
82
82
|
.replace(/\.lite(['"];)/g, '$1');
|
|
83
83
|
registerComponentHook = options.mitosisComponent.meta.registerComponent;
|
|
84
84
|
if (registerComponentHook) {
|
|
85
|
-
str += dedent_1.default(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n import { registerComponent } from '../functions/register-component';\n registerComponent(", ", ", ");\n "], ["\n import { registerComponent } from '../functions/register-component';\n registerComponent(", ", ",
|
|
86
|
-
");\n "])), options.mitosisComponent.name, json5.stringify(registerComponentHook));
|
|
85
|
+
str += (0, dedent_1.default)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n import { registerComponent } from '../functions/register-component';\n registerComponent(", ", ", ");\n "], ["\n import { registerComponent } from '../functions/register-component';\n registerComponent(", ", ", ");\n "])), options.mitosisComponent.name, json5.stringify(registerComponentHook));
|
|
87
86
|
}
|
|
88
87
|
return [2 /*return*/, str];
|
|
89
88
|
});
|
|
@@ -91,4 +90,4 @@ function transpileSolidFile(options) {
|
|
|
91
90
|
}
|
|
92
91
|
exports.transpileSolidFile = transpileSolidFile;
|
|
93
92
|
var templateObject_1;
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwaWxlLXNvbGlkLWZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnVpbGQvaGVscGVycy90cmFuc3BpbGUtc29saWQtZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlEQUFvQztBQUVwQyxrREFBMkI7QUFDM0IsMkNBQThCO0FBRTlCLElBQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ3BELElBQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0FBUWpELFNBQXNCLGtCQUFrQixDQUFDLE9BQWtDOzs7O1lBQ3JFLEdBQUcsR0FBRyxLQUFLO2lCQUNaLFNBQVMsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO2dCQUMzQixRQUFRLEVBQUUsVUFBVTtnQkFDcEIsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQzthQUNqQyxDQUFDO2lCQUNELElBQUksQ0FBQyx1RkFBdUY7Z0JBQzdGLHlGQUF5RjtpQkFDeEYsT0FBTyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFBO1lBRTVCLHFCQUFxQixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUE7WUFDN0UsSUFBSSxxQkFBcUIsRUFBRTtnQkFDekIsR0FBRyxRQUFJLGdCQUFNLDhMQUFBLHdHQUVTLEVBQTZCLElBQUssRUFFdkQsVUFDQSxLQUhxQixPQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFLLEtBQUssQ0FBQyxTQUFTLENBQ3JFLHFCQUFxQixDQUN0QixDQUNBLENBQUE7YUFDRjtZQUVELHNCQUFPLEdBQUcsRUFBQTs7O0NBQ1g7QUFyQkQsZ0RBcUJDIn0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.transpileBindingExpression = void 0;
|
|
23
|
+
var babel = __importStar(require("@babel/core"));
|
|
24
|
+
var babel_transform_expression_1 = require("./babel-transform-expression");
|
|
25
|
+
function transpileBindingExpression(code) {
|
|
26
|
+
if (!code.match(/\?\./)) {
|
|
27
|
+
return code;
|
|
28
|
+
}
|
|
29
|
+
var types = babel.types;
|
|
30
|
+
return (0, babel_transform_expression_1.babelTransformExpression)(code, {
|
|
31
|
+
// Replace foo?.bar -> foo && foo.barF
|
|
32
|
+
OptionalMemberExpression: function (path) {
|
|
33
|
+
path.replaceWith(types.parenthesizedExpression(types.logicalExpression('&&', path.node.object, types.memberExpression(path.node.object, path.node.property))));
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
exports.transpileBindingExpression = transpileBindingExpression;
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwaWxlLXZ1ZS1iaW5kaW5nLWV4cHJlc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnVpbGQvaGVscGVycy90cmFuc3BpbGUtdnVlLWJpbmRpbmctZXhwcmVzc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQW9DO0FBQ3BDLDJFQUF1RTtBQUV2RSxTQUFnQiwwQkFBMEIsQ0FBQyxJQUFZO0lBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3ZCLE9BQU8sSUFBSSxDQUFBO0tBQ1o7SUFFTyxJQUFBLEtBQUssR0FBSyxLQUFLLE1BQVYsQ0FBVTtJQUN2QixPQUFPLElBQUEscURBQXdCLEVBQUMsSUFBSSxFQUFFO1FBQ3BDLHNDQUFzQztRQUN0Qyx3QkFBd0IsRUFBeEIsVUFDRSxJQUEwRDtZQUUxRCxJQUFJLENBQUMsV0FBVyxDQUNkLEtBQUssQ0FBQyx1QkFBdUIsQ0FDM0IsS0FBSyxDQUFDLGlCQUFpQixDQUNyQixJQUFJLEVBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQ2hCLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUM3RCxDQUNGLENBQ0YsQ0FBQTtRQUNILENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDO0FBdEJELGdFQXNCQyJ9
|