From 59e6d4c54a4db3e19a4682320dd106ea5ef506dd Mon Sep 17 00:00:00 2001 From: Mappable release bot Date: Mon, 8 Apr 2024 23:15:31 +0300 Subject: [PATCH] New version 4.1.3 Read more https://github.com/xdan/jodit/blob/main/CHANGELOG.md --- package-lock.json | 4 +- package.json | 2 +- tools/utils/resolve-alias-imports.ts | 57 ++++++++++++++++++++-------- 3 files changed, 44 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index eaae74093..f4244f993 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "jodit", - "version": "4.1.2", + "version": "4.1.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "jodit", - "version": "4.1.2", + "version": "4.1.3", "license": "MIT", "dependencies": { "autobind-decorator": "^2.4.0" diff --git a/package.json b/package.json index ad215c616..393e953f1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jodit", - "version": "4.1.2", + "version": "4.1.3", "description": "Jodit is an awesome and useful wysiwyg editor with filebrowser", "main": "build/jodit.min.js", "types": "./types/index.d.ts", diff --git a/tools/utils/resolve-alias-imports.ts b/tools/utils/resolve-alias-imports.ts index 4c0ae421b..de17fcae0 100755 --- a/tools/utils/resolve-alias-imports.ts +++ b/tools/utils/resolve-alias-imports.ts @@ -30,7 +30,10 @@ const argv = yargs(hideBin(process.argv)) }) .parseSync(); -const globalMaps = { +const globalMaps: Record< + string, + boolean | string | number | Record +> = { 'process.env.FAT_MODE': false, 'process.env.APP_VERSION': argv.ver, 'process.env.TARGET_ES': 'es2020', @@ -38,6 +41,7 @@ const globalMaps = { 'process.env.IS_ES_NEXT': true, 'process.env.IS_PROD': true, 'process.env.IS_TEST': false, + 'process.env.TOKENS': {}, 'process.env.HOMEPAGE': 'https://xdsoft.net/jodit/' } as const; @@ -142,6 +146,8 @@ function resoleAliasImports(dirPath: string): void { return modulePath; }; + const f = ts.factory; + const transformer = ( ctx: ts.TransformationContext ): ts.Transformer => { @@ -159,15 +165,34 @@ function resoleAliasImports(dirPath: string): void { throw Error(`Unknown variable: ${name}`); } - const bool = globalMaps[name] - ? ts.factory.createTrue() - : ts.factory.createFalse(); + const obj = globalMaps[name]; + if (typeof obj === 'boolean') { + return obj ? f.createTrue() : f.createFalse(); + } + + if (typeof obj === 'string') { + return f.createStringLiteral(obj); + } - return typeof globalMaps[name] === 'boolean' - ? bool - : ts.factory.createStringLiteral( - globalMaps[name].toString() + if (typeof obj === 'number') { + return f.createNumericLiteral(obj); + } + + return f.createObjectLiteralExpression( + Object.keys(obj).map(key => { + const value = obj[key]; + return f.createPropertyAssignment( + f.createIdentifier(key), + typeof value === 'boolean' + ? value + ? f.createTrue() + : f.createFalse() + : typeof value === 'string' + ? f.createStringLiteral(value) + : f.createNumericLiteral(value) ); + }) + ); } if ( @@ -176,9 +201,9 @@ function resoleAliasImports(dirPath: string): void { node.literal?.getText() ) { const newPath = resolvePath(node.literal.getText()); - return ts.factory.updateLiteralTypeNode( + return f.updateLiteralTypeNode( node, - ts.factory.createStringLiteral(newPath) + f.createStringLiteral(newPath) ); } @@ -186,12 +211,12 @@ function resoleAliasImports(dirPath: string): void { ts.isCallExpression(node) && node.expression.getText() === 'require' ) { - return ts.factory.updateCallExpression( + return f.updateCallExpression( node, node.expression, node.typeArguments, [ - ts.factory.createStringLiteral( + f.createStringLiteral( resolvePath(node.arguments[0].getText()) ) ] @@ -213,11 +238,11 @@ function resoleAliasImports(dirPath: string): void { const newPath = resolvePath( node.moduleSpecifier.getText() ); - return ts.factory.updateImportDeclaration( + return f.updateImportDeclaration( node, node.modifiers, node.importClause, - ts.factory.createStringLiteral(newPath), + f.createStringLiteral(newPath), node.assertClause ); } @@ -226,12 +251,12 @@ function resoleAliasImports(dirPath: string): void { const newPath = resolvePath( node.moduleSpecifier.getText() ); - return ts.factory.updateExportDeclaration( + return f.updateExportDeclaration( node, node.modifiers, node.isTypeOnly, node.exportClause, - ts.factory.createStringLiteral(newPath), + f.createStringLiteral(newPath), node.assertClause ); }