Befor generating

This commit is contained in:
marys
2026-06-01 13:17:37 +02:00
parent 3383f4bf4a
commit 1aa1b5f625
6756 changed files with 649946 additions and 1 deletions
@@ -0,0 +1 @@
export {};
@@ -0,0 +1,256 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
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;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var fs_1 = __importDefault(require("fs"));
var path_1 = __importDefault(require("path"));
var util_1 = require("util");
var transpiler_1 = require("../transpiler");
var renderer_1 = require("../../renderer");
var readFile = util_1.promisify(fs_1.default.readFile);
describe('Transpiler', function () {
var testFiles = path_1.default.resolve(__dirname, './testfiles');
var outputFiles = path_1.default.resolve(__dirname, './__transpiled_testfiles');
beforeAll(function (done) { return __awaiter(void 0, void 0, void 0, function () {
var e_1;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
_a.trys.push([0, 2, , 3]);
return [4 /*yield*/, transpiler_1.transpileFiles(testFiles, outputFiles, {
recursive: true
})];
case 1:
_a.sent();
done();
return [3 /*break*/, 3];
case 2:
e_1 = _a.sent();
console.log(e_1);
done(e_1);
return [3 /*break*/, 3];
case 3: return [2 /*return*/];
}
});
}); });
describe('should transpile CommonJS files', function () {
describe('with a simple setup', function () {
var commonjs_testFile = path_1.default.resolve(outputFiles, './CommonJS/simple.js');
var commonjs_testFileMap = path_1.default.resolve(outputFiles, './CommonJS/simple.js.map');
test('and import correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content, mapContent, _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, readFile(commonjs_testFile, 'utf8')];
case 1:
content = _b.sent();
expect(switchToUnixLinebreaks(content)).toMatchSnapshot();
return [4 /*yield*/, readFile(commonjs_testFileMap, 'utf8')];
case 2:
mapContent = _b.sent();
expect(switchToUnixLinebreaks(mapContent)).toMatchSnapshot();
_a = expect;
return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require(commonjs_testFile)); })];
case 3:
_a.apply(void 0, [_b.sent()]).toBeDefined();
return [2 /*return*/];
}
});
}); });
test('and render correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content;
var _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, renderer_1.renderTemplate(commonjs_testFile, { asyncapi: {}, originalAsyncAPI: "", params: {} })];
case 1:
content = _b.sent();
expect((_a = content) === null || _a === void 0 ? void 0 : _a.content).toBe("hello Test");
return [2 /*return*/];
}
});
}); });
});
});
describe('should transpile ES5 files', function () {
describe('with a simple setup', function () {
var es5_testFile = path_1.default.resolve(outputFiles, './ES5/simple.js');
var es5_testFileMap = path_1.default.resolve(outputFiles, './ES5/simple.js.map');
test('and import correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content, mapContent, _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, readFile(es5_testFile, 'utf8')];
case 1:
content = _b.sent();
expect(switchToUnixLinebreaks(content)).toMatchSnapshot();
return [4 /*yield*/, readFile(es5_testFileMap, 'utf8')];
case 2:
mapContent = _b.sent();
expect(switchToUnixLinebreaks(mapContent)).toMatchSnapshot();
_a = expect;
return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require(es5_testFile)); })];
case 3:
_a.apply(void 0, [_b.sent()]).toBeDefined();
return [2 /*return*/];
}
});
}); });
test('and render correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content;
var _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, renderer_1.renderTemplate(es5_testFile, { asyncapi: {}, originalAsyncAPI: "", params: {} })];
case 1:
content = _b.sent();
expect((_a = content) === null || _a === void 0 ? void 0 : _a.content).toBe("hello Test");
return [2 /*return*/];
}
});
}); });
});
});
describe('should transpile ES6 files', function () {
describe('with a simple setup', function () {
var es6_testFile = path_1.default.resolve(outputFiles, './ES6/simple.js');
var es6_testFileMap = path_1.default.resolve(outputFiles, './ES6/simple.js.map');
test('and import correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content, mapContent, _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, readFile(es6_testFile, 'utf8')];
case 1:
content = _b.sent();
expect(switchToUnixLinebreaks(content)).toMatchSnapshot();
return [4 /*yield*/, readFile(es6_testFileMap, 'utf8')];
case 2:
mapContent = _b.sent();
expect(switchToUnixLinebreaks(mapContent)).toMatchSnapshot();
_a = expect;
return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require(es6_testFile)); })];
case 3:
_a.apply(void 0, [_b.sent()]).toBeDefined();
return [2 /*return*/];
}
});
}); });
test('and render correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content;
var _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, renderer_1.renderTemplate(es6_testFile, { asyncapi: {}, originalAsyncAPI: "", params: {} })];
case 1:
content = _b.sent();
expect((_a = content) === null || _a === void 0 ? void 0 : _a.content).toBe("hello Test");
return [2 /*return*/];
}
});
}); });
});
});
describe('should keep names of files, even if special chars', function () {
describe('with a simple setup', function () {
var special_testFile = path_1.default.resolve(outputFiles, './SpecialChars/$$simple$$.js');
var special_testFileMap = path_1.default.resolve(outputFiles, './SpecialChars/$$simple$$.js.map');
test('and import correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content, mapContent, _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, readFile(special_testFile, 'utf8')];
case 1:
content = _b.sent();
expect(switchToUnixLinebreaks(content)).toMatchSnapshot();
return [4 /*yield*/, readFile(special_testFileMap, 'utf8')];
case 2:
mapContent = _b.sent();
expect(switchToUnixLinebreaks(mapContent)).toMatchSnapshot();
_a = expect;
return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require(special_testFile)); })];
case 3:
_a.apply(void 0, [_b.sent()]).toBeDefined();
return [2 /*return*/];
}
});
}); });
test('and render correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
var content;
var _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, renderer_1.renderTemplate(special_testFile, { asyncapi: {}, originalAsyncAPI: "", params: {} })];
case 1:
content = _b.sent();
expect((_a = content) === null || _a === void 0 ? void 0 : _a.content).toBe("hello Test");
return [2 /*return*/];
}
});
}); });
});
});
});
/*
It is a helper required for snapshot testing on windows. It can't be solved by editor configuration and the end line setting because snapshots are generated not created in the editor.
We need to remove `\r` from files transpiled on windows before we can match them with the snapshot generated on unix
*/
function switchToUnixLinebreaks(str) {
return str.replace(/\\r/g, "");
}
//# sourceMappingURL=transpiler.spec.js.map
@@ -0,0 +1 @@
{"version":3,"file":"transpiler.spec.js","sourceRoot":"","sources":["../../../src/transpiler/__tests__/transpiler.spec.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
export * from "./transpiler";
@@ -0,0 +1,14 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./transpiler"), exports);
//# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transpiler/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA6B"}
@@ -0,0 +1,9 @@
import { TranspileFilesOptions } from '../types';
/**
* Transpile files in a given directory (and sub directory if recursive option are passed) and write it to an output directory, if no errors are thrown it completed successfully.
*
* @param directory to transpile.
* @param outputDir to write the transpiled files to.
* @param options any extra options that should be passed.
*/
export declare function transpileFiles(directory: string, outputDir: string, options?: TranspileFilesOptions): Promise<void>;
@@ -0,0 +1,121 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
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;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.transpileFiles = void 0;
var path_1 = __importDefault(require("path"));
var rollup_1 = require("rollup");
var plugin_babel_1 = __importDefault(require("@rollup/plugin-babel"));
var utils_1 = require("../utils");
var ROOT_DIR = path_1.default.resolve(__dirname, '../..');
/**
* Transpile files in a given directory (and sub directory if recursive option are passed) and write it to an output directory, if no errors are thrown it completed successfully.
*
* @param directory to transpile.
* @param outputDir to write the transpiled files to.
* @param options any extra options that should be passed.
*/
function transpileFiles(directory, outputDir, options) {
return __awaiter(this, void 0, void 0, function () {
var _a, files, dirs, bundles, _i, dirs_1, subdir, subdirPath;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, utils_1.getStatsInDir(directory)];
case 1:
_a = _b.sent(), files = _a.files, dirs = _a.dirs;
if (!files.length) return [3 /*break*/, 4];
return [4 /*yield*/, rollup_1.rollup({
input: files,
onwarn: function () { },
plugins: [
plugin_babel_1.default({
cwd: ROOT_DIR,
babelHelpers: "bundled",
plugins: [
"source-map-support",
],
presets: [
["@babel/preset-env", {
targets: { node: "12.16" },
}],
["@babel/preset-react", {
runtime: "automatic",
}],
],
})
],
})];
case 2:
bundles = _b.sent();
return [4 /*yield*/, bundles.write({
format: "commonjs",
sourcemap: true,
dir: outputDir,
exports: "auto",
paths: {
'react/jsx-runtime': 'react/cjs/react-jsx-runtime.production.min',
},
sanitizeFileName: false,
})];
case 3:
_b.sent();
_b.label = 4;
case 4:
if (!((options === null || options === void 0 ? void 0 : options.recursive) === true && dirs.length > 0)) return [3 /*break*/, 8];
_i = 0, dirs_1 = dirs;
_b.label = 5;
case 5:
if (!(_i < dirs_1.length)) return [3 /*break*/, 8];
subdir = dirs_1[_i];
subdirPath = path_1.default.parse(subdir);
return [4 /*yield*/, transpileFiles(subdir, path_1.default.resolve(outputDir, subdirPath.base), options)];
case 6:
_b.sent();
_b.label = 7;
case 7:
_i++;
return [3 /*break*/, 5];
case 8: return [2 /*return*/];
}
});
});
}
exports.transpileFiles = transpileFiles;
//# sourceMappingURL=transpiler.js.map
@@ -0,0 +1 @@
{"version":3,"file":"transpiler.js","sourceRoot":"","sources":["../../src/transpiler/transpiler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAwB;AAExB,iCAAgC;AAChC,sEAAyC;AAEzC,kCAAyC;AAGzC,IAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAElD;;;;;;GAMG;AACH,SAAsB,cAAc,CAAC,SAAiB,EAAE,SAAiB,EAAE,OAA+B;;;;;wBAC9E,qBAAM,qBAAa,CAAC,SAAS,CAAC,EAAA;;oBAAhD,KAAkB,SAA8B,EAA9C,KAAK,WAAA,EAAE,IAAI,UAAA;yBACf,KAAK,CAAC,MAAM,EAAZ,wBAAY;oBAQI,qBAAM,eAAM,CAAC;4BACzB,KAAK,EAAE,KAAK;4BACZ,MAAM,EAAE,cAAO,CAAC;4BAChB,OAAO,EAAE;gCACL,sBAAK,CAAC;oCACF,GAAG,EAAE,QAAQ;oCACb,YAAY,EAAE,SAAS;oCACvB,OAAO,EAAE;wCACL,oBAAoB;qCACvB;oCACD,OAAO,EAAE;wCACL,CAAC,mBAAmB,EAAE;gDAClB,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;6CAC7B,CAAC;wCACF,CAAC,qBAAqB,EAAE;gDACpB,OAAO,EAAE,WAAW;6CACvB,CAAC;qCACL;iCACJ,CAAC;6BACL;yBACJ,CAAC,EAAA;;oBApBI,OAAO,GAAG,SAoBd;oBACF,qBAAM,OAAO,CAAC,KAAK,CAAC;4BAChB,MAAM,EAAE,UAAU;4BAClB,SAAS,EAAE,IAAI;4BACf,GAAG,EAAE,SAAS;4BACd,OAAO,EAAE,MAAM;4BACf,KAAK,EAAE;gCACL,mBAAmB,EAAE,4CAA4C;6BAClE;4BACD,gBAAgB,EAAE,KAAK;yBAC1B,CAAC,EAAA;;oBATF,SASE,CAAA;;;yBAIF,CAAA,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,MAAK,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA,EAA9C,wBAA8C;0BACrB,EAAJ,aAAI;;;yBAAJ,CAAA,kBAAI,CAAA;oBAAd,MAAM;oBACP,UAAU,GAAG,cAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACtC,qBAAM,cAAc,CAAC,MAAM,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAA;;oBAA/E,SAA+E,CAAC;;;oBAF/D,IAAI,CAAA;;;;;;CAKhC;AAlDD,wCAkDC"}