@samchon/ts-patch 3.2.2-dev.20241204

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.
Files changed (150) hide show
  1. package/CHANGELOG.md +268 -0
  2. package/LICENSE.md +13 -0
  3. package/README.md +348 -0
  4. package/actions/check.d.ts +11 -0
  5. package/actions/check.js +45 -0
  6. package/actions/check.js.map +1 -0
  7. package/actions/index.d.ts +5 -0
  8. package/actions/index.js +22 -0
  9. package/actions/index.js.map +1 -0
  10. package/actions/install.d.ts +5 -0
  11. package/actions/install.js +25 -0
  12. package/actions/install.js.map +1 -0
  13. package/actions/patch.d.ts +6 -0
  14. package/actions/patch.js +82 -0
  15. package/actions/patch.js.map +1 -0
  16. package/actions/uninstall.d.ts +5 -0
  17. package/actions/uninstall.js +26 -0
  18. package/actions/uninstall.js.map +1 -0
  19. package/actions/unpatch.d.ts +3 -0
  20. package/actions/unpatch.js +82 -0
  21. package/actions/unpatch.js.map +1 -0
  22. package/bin/ts-patch.d.ts +1 -0
  23. package/bin/ts-patch.js +33 -0
  24. package/bin/ts-patch.js.map +1 -0
  25. package/bin/tspc.d.ts +0 -0
  26. package/bin/tspc.js +14 -0
  27. package/bin/tspc.js.map +1 -0
  28. package/cli/cli.d.ts +14 -0
  29. package/cli/cli.js +96 -0
  30. package/cli/cli.js.map +1 -0
  31. package/cli/commands.d.ts +5 -0
  32. package/cli/commands.js +49 -0
  33. package/cli/commands.js.map +1 -0
  34. package/cli/help-menu.d.ts +1 -0
  35. package/cli/help-menu.js +43 -0
  36. package/cli/help-menu.js.map +1 -0
  37. package/cli/options.d.ts +14 -0
  38. package/cli/options.js +63 -0
  39. package/cli/options.js.map +1 -0
  40. package/compiler/package.json +4 -0
  41. package/compiler/tsc.js +19 -0
  42. package/compiler/tsserver.js +19 -0
  43. package/compiler/tsserverlibrary.js +19 -0
  44. package/compiler/typescript.js +19 -0
  45. package/config.d.ts +18 -0
  46. package/config.js +50 -0
  47. package/config.js.map +1 -0
  48. package/index.d.ts +4 -0
  49. package/index.js +29 -0
  50. package/index.js.map +1 -0
  51. package/module/get-live-module.d.ts +5 -0
  52. package/module/get-live-module.js +25 -0
  53. package/module/get-live-module.js.map +1 -0
  54. package/module/index.d.ts +4 -0
  55. package/module/index.js +21 -0
  56. package/module/index.js.map +1 -0
  57. package/module/module-file.d.ts +9 -0
  58. package/module/module-file.js +97 -0
  59. package/module/module-file.js.map +1 -0
  60. package/module/module-source.d.ts +15 -0
  61. package/module/module-source.js +35 -0
  62. package/module/module-source.js.map +1 -0
  63. package/module/source-section.d.ts +20 -0
  64. package/module/source-section.js +73 -0
  65. package/module/source-section.js.map +1 -0
  66. package/module/ts-module.d.ts +35 -0
  67. package/module/ts-module.js +100 -0
  68. package/module/ts-module.js.map +1 -0
  69. package/options.d.ts +19 -0
  70. package/options.js +32 -0
  71. package/options.js.map +1 -0
  72. package/package.json +107 -0
  73. package/patch/get-patched-source.d.ts +12 -0
  74. package/patch/get-patched-source.js +69 -0
  75. package/patch/get-patched-source.js.map +1 -0
  76. package/patch/patch-detail.d.ts +36 -0
  77. package/patch/patch-detail.js +67 -0
  78. package/patch/patch-detail.js.map +1 -0
  79. package/patch/patch-module.d.ts +5 -0
  80. package/patch/patch-module.js +182 -0
  81. package/patch/patch-module.js.map +1 -0
  82. package/patch/transformers/add-original-create-program.d.ts +3 -0
  83. package/patch/transformers/add-original-create-program.js +71 -0
  84. package/patch/transformers/add-original-create-program.js.map +1 -0
  85. package/patch/transformers/fix-ts-early-return.d.ts +2 -0
  86. package/patch/transformers/fix-ts-early-return.js +51 -0
  87. package/patch/transformers/fix-ts-early-return.js.map +1 -0
  88. package/patch/transformers/hook-tsc-exec.d.ts +2 -0
  89. package/patch/transformers/hook-tsc-exec.js +32 -0
  90. package/patch/transformers/hook-tsc-exec.js.map +1 -0
  91. package/patch/transformers/index.d.ts +6 -0
  92. package/patch/transformers/index.js +23 -0
  93. package/patch/transformers/index.js.map +1 -0
  94. package/patch/transformers/merge-statements.d.ts +2 -0
  95. package/patch/transformers/merge-statements.js +60 -0
  96. package/patch/transformers/merge-statements.js.map +1 -0
  97. package/patch/transformers/patch-create-program.d.ts +2 -0
  98. package/patch/transformers/patch-create-program.js +36 -0
  99. package/patch/transformers/patch-create-program.js.map +1 -0
  100. package/patch/transformers/patch-emitter.d.ts +2 -0
  101. package/patch/transformers/patch-emitter.js +44 -0
  102. package/patch/transformers/patch-emitter.js.map +1 -0
  103. package/plugin-types.d.ts +95 -0
  104. package/plugin-types.js +4 -0
  105. package/plugin-types.js.map +1 -0
  106. package/resources/module-patch.d.ts +50 -0
  107. package/resources/module-patch.js +609 -0
  108. package/slice/module-slice.d.ts +19 -0
  109. package/slice/module-slice.js +37 -0
  110. package/slice/module-slice.js.map +1 -0
  111. package/slice/ts54.d.ts +6 -0
  112. package/slice/ts54.js +70 -0
  113. package/slice/ts54.js.map +1 -0
  114. package/slice/ts55.d.ts +6 -0
  115. package/slice/ts55.js +70 -0
  116. package/slice/ts55.js.map +1 -0
  117. package/slice/ts552.d.ts +6 -0
  118. package/slice/ts552.js +70 -0
  119. package/slice/ts552.js.map +1 -0
  120. package/system/cache.d.ts +3 -0
  121. package/system/cache.js +69 -0
  122. package/system/cache.js.map +1 -0
  123. package/system/errors.d.ts +35 -0
  124. package/system/errors.js +82 -0
  125. package/system/errors.js.map +1 -0
  126. package/system/index.d.ts +4 -0
  127. package/system/index.js +21 -0
  128. package/system/index.js.map +1 -0
  129. package/system/logger.d.ts +7 -0
  130. package/system/logger.js +48 -0
  131. package/system/logger.js.map +1 -0
  132. package/system/types.d.ts +4 -0
  133. package/system/types.js +7 -0
  134. package/system/types.js.map +1 -0
  135. package/ts-package.d.ts +18 -0
  136. package/ts-package.js +73 -0
  137. package/ts-package.js.map +1 -0
  138. package/tsconfig.tsbuildinfo +1 -0
  139. package/utils/file-utils.d.ts +9 -0
  140. package/utils/file-utils.js +98 -0
  141. package/utils/file-utils.js.map +1 -0
  142. package/utils/find-cache-dir.d.ts +23 -0
  143. package/utils/find-cache-dir.js +93 -0
  144. package/utils/find-cache-dir.js.map +1 -0
  145. package/utils/general.d.ts +5 -0
  146. package/utils/general.js +16 -0
  147. package/utils/general.js.map +1 -0
  148. package/utils/index.d.ts +3 -0
  149. package/utils/index.js +20 -0
  150. package/utils/index.js.map +1 -0
@@ -0,0 +1,73 @@
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
+ exports.createSourceSection = createSourceSection;
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const path_1 = __importDefault(require("path"));
9
+ // endregion
10
+ /* ****************************************************************************************************************** */
11
+ // region: Utils
12
+ /* ****************************************************************************************************************** */
13
+ function createSourceSection(moduleFile, sectionName, startPos, endPos, indentLevel = 0, srcFileName) {
14
+ let sourceText;
15
+ let originalSourceFile;
16
+ let sourceFile;
17
+ let sourceFileName;
18
+ return {
19
+ hasTransformed: false,
20
+ hasUpdatedSourceText: false,
21
+ sectionName,
22
+ srcFileName,
23
+ indentLevel,
24
+ pos: { start: startPos, end: endPos },
25
+ get sourceText() {
26
+ return sourceText ?? (sourceText = moduleFile.content.slice(startPos, endPos));
27
+ },
28
+ getSourceFile() {
29
+ if (!sourceFile) {
30
+ if (this.hasUpdatedSourceText)
31
+ return createSourceFile(this);
32
+ else
33
+ return this.getOriginalSourceFile();
34
+ }
35
+ return sourceFile;
36
+ },
37
+ updateSourceText(newText) {
38
+ sourceText = newText;
39
+ sourceFile = undefined;
40
+ },
41
+ getOriginalSourceFile() {
42
+ originalSourceFile ?? (originalSourceFile = createSourceFile(this));
43
+ return originalSourceFile;
44
+ },
45
+ transform(transformers) {
46
+ const result = typescript_1.default.transform(this.getSourceFile(), transformers);
47
+ sourceFile = result.transformed[0];
48
+ this.hasTransformed = true;
49
+ this.indentLevel = 0;
50
+ },
51
+ print(printer) {
52
+ if (!this.hasTransformed)
53
+ return this.sourceText;
54
+ printer ?? (printer = typescript_1.default.createPrinter());
55
+ return printer.printFile(this.getSourceFile());
56
+ }
57
+ };
58
+ function createSourceFile(sourceSection) {
59
+ return typescript_1.default.createSourceFile(getSourceFileName(), sourceSection.sourceText, typescript_1.default.ScriptTarget.Latest, true, typescript_1.default.ScriptKind.JS);
60
+ }
61
+ function getSourceFileName() {
62
+ if (!sourceFileName) {
63
+ sourceFileName = srcFileName;
64
+ if (!sourceFileName) {
65
+ const baseName = path_1.default.basename(moduleFile.filePath, path_1.default.extname(moduleFile.filePath));
66
+ sourceFileName = `${baseName}.${sectionName}.ts`;
67
+ }
68
+ }
69
+ return sourceFileName;
70
+ }
71
+ }
72
+ // endregion
73
+ //# sourceMappingURL=source-section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-section.js","sourceRoot":"","sources":["../../../projects/core/src/module/source-section.ts"],"names":[],"mappings":";;;;;AAiCA,kDA0EC;AA3GD,4DAA4B;AAE5B,gDAAwB;AAwBxB,YAAY;AAGZ,wHAAwH;AACxH,gBAAgB;AAChB,wHAAwH;AAExH,SAAgB,mBAAmB,CACjC,UAAsB,EACtB,WAAyC,EACzC,QAAgB,EAChB,MAAc,EACd,cAAsB,CAAC,EACvB,WAAoB;IAIpB,IAAI,UAA8B,CAAC;IACnC,IAAI,kBAA6C,CAAC;IAClD,IAAI,UAAqC,CAAC;IAC1C,IAAI,cAAkC,CAAC;IAEvC,OAAO;QACL,cAAc,EAAE,KAAK;QACrB,oBAAoB,EAAE,KAAK;QAC3B,WAAW;QACX,WAAW;QACX,WAAW;QACX,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE;QACrC,IAAI,UAAU;YACZ,OAAO,UAAU,KAAV,UAAU,GAAK,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAC;QACnE,CAAC;QACD,aAAa;YACX,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,oBAAoB;oBAAE,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;;oBACxD,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC3C,CAAC;YACD,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,gBAAgB,CAAC,OAAe;YAC9B,UAAU,GAAG,OAAO,CAAC;YACrB,UAAU,GAAG,SAAS,CAAC;QACzB,CAAC;QACD,qBAAqB;YACnB,kBAAkB,KAAlB,kBAAkB,GAAK,gBAAgB,CAAC,IAAI,CAAC,EAAC;YAC9C,OAAO,kBAAkB,CAAC;QAC5B,CAAC;QACD,SAAS,CAAC,YAAoD;YAC5D,MAAM,MAAM,GAAG,oBAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,YAAY,CAAC,CAAC;YAChE,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACvB,CAAC;QACD,KAAK,CAAC,OAAoB;YACxB,IAAI,CAAC,IAAI,CAAC,cAAc;gBAAE,OAAO,IAAI,CAAC,UAAU,CAAC;YAEjD,OAAO,KAAP,OAAO,GAAK,oBAAE,CAAC,aAAa,EAAE,EAAC;YAC/B,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACjD,CAAC;KACF,CAAA;IAED,SAAS,gBAAgB,CAAC,aAA4B;QACpD,OAAO,oBAAE,CAAC,gBAAgB,CACxB,iBAAiB,EAAE,EACnB,aAAa,CAAC,UAAU,EACxB,oBAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,EACJ,oBAAE,CAAC,UAAU,CAAC,EAAE,CACjB,CAAC;IACJ,CAAC;IAED,SAAS,iBAAiB;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,cAAc,GAAG,WAAW,CAAC;YAC7B,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,QAAQ,GAAG,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,cAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACvF,cAAc,GAAG,GAAG,QAAQ,IAAI,WAAW,KAAK,CAAC;YACnD,CAAC;QACH,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAED,YAAY"}
@@ -0,0 +1,35 @@
1
+ import type { TsPackage } from '../ts-package';
2
+ import { ModuleSource } from './module-source';
3
+ import { ModuleFile } from './module-file';
4
+ export declare namespace TsModule {
5
+ const names: readonly ["tsc.js", "tsserverlibrary.js", "typescript.js", "tsserver.js", "_tsc.js", "_tsserver.js"];
6
+ }
7
+ export interface TsModule {
8
+ package: TsPackage;
9
+ majorVer: number;
10
+ minorVer: number;
11
+ isPatched: boolean;
12
+ moduleName: TsModule.Name;
13
+ modulePath: string;
14
+ moduleFile: ModuleFile;
15
+ dtsPath: string | undefined;
16
+ cacheKey: string;
17
+ backupCachePaths: {
18
+ js: string;
19
+ dts?: string;
20
+ };
21
+ patchedCachePaths: {
22
+ js: string;
23
+ dts?: string;
24
+ };
25
+ getUnpatchedModuleFile(): ModuleFile;
26
+ getUnpatchedSource(): ModuleSource;
27
+ }
28
+ export declare namespace TsModule {
29
+ type Name = (typeof names)[number] | string;
30
+ }
31
+ export interface GetTsModuleOptions {
32
+ skipCache?: boolean;
33
+ }
34
+ export declare function getTsModule(tsPackage: TsPackage, moduleName: TsModule.Name, options?: GetTsModuleOptions): TsModule;
35
+ export declare function getTsModule(tsPackage: TsPackage, moduleFile: ModuleFile, options?: GetTsModuleOptions): TsModule;
@@ -0,0 +1,100 @@
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
+ exports.TsModule = void 0;
7
+ exports.getTsModule = getTsModule;
8
+ const path_1 = __importDefault(require("path"));
9
+ const fs_1 = __importDefault(require("fs"));
10
+ const module_source_1 = require("./module-source");
11
+ const system_1 = require("../system");
12
+ const module_file_1 = require("./module-file");
13
+ const config_1 = require("../config");
14
+ /* ****************************************************************************************************************** */
15
+ // region: Config
16
+ /* ****************************************************************************************************************** */
17
+ var TsModule;
18
+ (function (TsModule) {
19
+ TsModule.names = [
20
+ 'tsc.js',
21
+ 'tsserverlibrary.js',
22
+ 'typescript.js',
23
+ 'tsserver.js',
24
+ '_tsc.js',
25
+ '_tsserver.js',
26
+ ];
27
+ })(TsModule || (exports.TsModule = TsModule = {}));
28
+ function getTsModule(tsPackage, moduleNameOrModuleFile, options) {
29
+ const skipCache = options?.skipCache;
30
+ /* Get Module File */
31
+ let moduleFile;
32
+ let moduleName;
33
+ let modulePath;
34
+ if (typeof moduleNameOrModuleFile === "object" && moduleNameOrModuleFile.content) {
35
+ moduleFile = moduleNameOrModuleFile;
36
+ moduleName = moduleFile.moduleName;
37
+ modulePath = moduleFile.filePath;
38
+ }
39
+ else {
40
+ moduleName = moduleNameOrModuleFile;
41
+ }
42
+ /* Handle Local Cache */
43
+ if (!skipCache && tsPackage.moduleCache.has(moduleName))
44
+ return tsPackage.moduleCache.get(moduleName);
45
+ /* Load File (if not already) */
46
+ if (!modulePath)
47
+ modulePath = path_1.default.join(tsPackage.libDir, moduleName);
48
+ if (!moduleFile)
49
+ moduleFile = (0, module_file_1.getModuleFile)(modulePath);
50
+ /* Get DTS if exists */
51
+ const maybeDtsFile = modulePath.replace(/\.js$/, '.d.ts');
52
+ const dtsPath = fs_1.default.existsSync(maybeDtsFile) ? maybeDtsFile : undefined;
53
+ const dtsName = dtsPath && path_1.default.basename(dtsPath);
54
+ /* Get Cache Paths */
55
+ const cacheKey = moduleFile.patchDetail?.originalHash || moduleFile.getHash();
56
+ const backupCachePaths = {
57
+ js: (0, system_1.getCachePath)(cacheKey, moduleName),
58
+ dts: dtsName && (0, system_1.getCachePath)(cacheKey, dtsName)
59
+ };
60
+ const patchedCachePaths = {
61
+ js: (0, system_1.getCachePath)(cacheKey, config_1.cachedFilePatchedPrefix + moduleName),
62
+ dts: dtsName && (0, system_1.getCachePath)(cacheKey, config_1.cachedFilePatchedPrefix + dtsName)
63
+ };
64
+ /* Create Module */
65
+ const isPatched = !!moduleFile.patchDetail;
66
+ let originalModuleFile;
67
+ const tsModule = {
68
+ package: tsPackage,
69
+ majorVer: tsPackage.majorVer,
70
+ minorVer: tsPackage.minorVer,
71
+ isPatched,
72
+ moduleName,
73
+ modulePath,
74
+ moduleFile,
75
+ dtsPath,
76
+ cacheKey,
77
+ backupCachePaths,
78
+ patchedCachePaths,
79
+ getUnpatchedSource() {
80
+ return (0, module_source_1.getModuleSource)(this);
81
+ },
82
+ getUnpatchedModuleFile() {
83
+ if (!originalModuleFile) {
84
+ if (isPatched) {
85
+ if (!fs_1.default.existsSync(backupCachePaths.js))
86
+ throw new system_1.TspError(`Cannot find backup cache file for ${moduleName}. Please wipe node_modules and reinstall.`);
87
+ originalModuleFile = (0, module_file_1.getModuleFile)(backupCachePaths.js);
88
+ }
89
+ else {
90
+ originalModuleFile = isPatched ? (0, module_file_1.getModuleFile)(backupCachePaths.js) : moduleFile;
91
+ }
92
+ }
93
+ return originalModuleFile;
94
+ }
95
+ };
96
+ tsPackage.moduleCache.set(moduleName, tsModule);
97
+ return tsModule;
98
+ }
99
+ // endregion
100
+ //# sourceMappingURL=ts-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts-module.js","sourceRoot":"","sources":["../../../projects/core/src/module/ts-module.ts"],"names":[],"mappings":"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"}
package/options.d.ts ADDED
@@ -0,0 +1,19 @@
1
+ import { Logger, LogLevel } from './system';
2
+ export interface InstallerOptions {
3
+ logLevel: LogLevel;
4
+ useColor: boolean;
5
+ dir: string;
6
+ silent: boolean;
7
+ logger: Logger;
8
+ skipCache: boolean;
9
+ }
10
+ export declare namespace InstallerOptions {
11
+ function getDefaults(): {
12
+ logLevel: LogLevel.normal;
13
+ useColor: true;
14
+ dir: string;
15
+ silent: false;
16
+ skipCache: false;
17
+ };
18
+ }
19
+ export declare function getInstallerOptions(options?: Partial<InstallerOptions>): InstallerOptions;
package/options.js ADDED
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InstallerOptions = void 0;
4
+ exports.getInstallerOptions = getInstallerOptions;
5
+ const system_1 = require("./system");
6
+ var InstallerOptions;
7
+ (function (InstallerOptions) {
8
+ function getDefaults() {
9
+ return {
10
+ logLevel: system_1.LogLevel.normal,
11
+ useColor: true,
12
+ dir: process.cwd(),
13
+ silent: false,
14
+ skipCache: false
15
+ };
16
+ }
17
+ InstallerOptions.getDefaults = getDefaults;
18
+ })(InstallerOptions || (exports.InstallerOptions = InstallerOptions = {}));
19
+ // endregion
20
+ /* ********************************************************************************************************************
21
+ * Parser
22
+ * ********************************************************************************************************************/
23
+ function getInstallerOptions(options) {
24
+ if (!options && typeof options === "object" && Object.isSealed(options))
25
+ return options;
26
+ const res = { ...InstallerOptions.getDefaults(), ...options };
27
+ return Object.seal({
28
+ ...res,
29
+ logger: res.logger ?? (0, system_1.createLogger)(res.logLevel, res.useColor, res.silent)
30
+ });
31
+ }
32
+ //# sourceMappingURL=options.js.map
package/options.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../projects/core/src/options.ts"],"names":[],"mappings":";;;AA6CA,kDASC;AAtDD,qCAA0D;AA0B1D,IAAiB,gBAAgB,CAUhC;AAVD,WAAiB,gBAAgB;IAC/B,SAAgB,WAAW;QACzB,OAAO;YACL,QAAQ,EAAE,iBAAQ,CAAC,MAAM;YACzB,QAAQ,EAAE,IAAI;YACd,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,MAAM,EAAE,KAAK;YACb,SAAS,EAAE,KAAK;SACO,CAAA;IAC3B,CAAC;IARe,4BAAW,cAQ1B,CAAA;AACH,CAAC,EAVgB,gBAAgB,gCAAhB,gBAAgB,QAUhC;AAED,YAAY;AAGZ;;wHAEwH;AAExH,SAAgB,mBAAmB,CAAC,OAAmC;IACrE,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAA2B,CAAC;IAE5G,MAAM,GAAG,GAAG,EAAE,GAAG,gBAAgB,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,EAAmB,CAAC;IAE/E,OAAO,MAAM,CAAC,IAAI,CAAC;QACjB,GAAG,GAAG;QACN,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAA,qBAAY,EAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC;KAC3E,CAAC,CAAC;AACL,CAAC"}
package/package.json ADDED
@@ -0,0 +1,107 @@
1
+ {
2
+ "name": "@samchon/ts-patch",
3
+ "version": "3.2.2-dev.20241204",
4
+ "description": "Patch typescript to support custom transformers in tsconfig.json",
5
+ "main": "./index.js",
6
+ "types": "./index.d.ts",
7
+ "keywords": [
8
+ "typescript",
9
+ "transform",
10
+ "transformer",
11
+ "plugin",
12
+ "config",
13
+ "ast"
14
+ ],
15
+ "author": {
16
+ "name": "Ron S.",
17
+ "url": "http://twitter.com/ron"
18
+ },
19
+ "license": "MIT",
20
+ "repository": {
21
+ "type": "git",
22
+ "url": "git+ssh://git@github.com/nonara/ts-patch.git"
23
+ },
24
+ "bugs": {
25
+ "url": "https://github.com/nonara/ts-patch/issues"
26
+ },
27
+ "homepage": "https://github.com/nonara/ts-patch#readme",
28
+ "dependencies": {
29
+ "chalk": "^4.1.2",
30
+ "global-prefix": "^3.0.0",
31
+ "minimist": "^1.2.8",
32
+ "resolve": "^1.22.2",
33
+ "semver": "^7.5.4",
34
+ "strip-ansi": "^6.0.1"
35
+ },
36
+ "bin": {
37
+ "ts-patch": "./bin/ts-patch.js",
38
+ "tspc": "./bin/tspc.js"
39
+ },
40
+ "directories": {
41
+ "resources": "./resources"
42
+ },
43
+ "standard-version": {
44
+ "types": [
45
+ {
46
+ "type": "feat",
47
+ "section": "Features"
48
+ },
49
+ {
50
+ "type": "feature",
51
+ "section": "Features"
52
+ },
53
+ {
54
+ "type": "fix",
55
+ "section": "Bug Fixes"
56
+ },
57
+ {
58
+ "type": "perf",
59
+ "section": "Performance Improvements"
60
+ },
61
+ {
62
+ "type": "revert",
63
+ "section": "Reverts"
64
+ },
65
+ {
66
+ "type": "docs",
67
+ "section": "Documentation",
68
+ "hidden": true
69
+ },
70
+ {
71
+ "type": "style",
72
+ "section": "Styles",
73
+ "hidden": true
74
+ },
75
+ {
76
+ "type": "chore",
77
+ "section": "Miscellaneous Chores",
78
+ "hidden": true
79
+ },
80
+ {
81
+ "type": "refactor",
82
+ "section": "Code Refactoring",
83
+ "hidden": true
84
+ },
85
+ {
86
+ "type": "test",
87
+ "section": "Tests",
88
+ "hidden": true
89
+ },
90
+ {
91
+ "type": "build",
92
+ "section": "Build System",
93
+ "hidden": true
94
+ },
95
+ {
96
+ "type": "ci",
97
+ "section": "Continuous Integration",
98
+ "hidden": true
99
+ },
100
+ {
101
+ "type": "change",
102
+ "section": "Changes"
103
+ }
104
+ ]
105
+ },
106
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
107
+ }
@@ -0,0 +1,12 @@
1
+ import { Logger } from '../system';
2
+ import { TsModule } from '../module';
3
+ export interface GetPatchedSourceOptions {
4
+ log?: Logger;
5
+ skipCache?: boolean;
6
+ skipDts?: boolean;
7
+ }
8
+ export declare function getPatchedSource(tsModule: TsModule, options?: GetPatchedSourceOptions): {
9
+ js: string;
10
+ dts: string | undefined;
11
+ loadedFromCache: boolean;
12
+ };
@@ -0,0 +1,69 @@
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
+ exports.getPatchedSource = getPatchedSource;
7
+ const system_1 = require("../system");
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const utils_1 = require("../utils");
11
+ const fs_1 = __importDefault(require("fs"));
12
+ const module_1 = require("../module");
13
+ const patch_module_1 = require("./patch-module");
14
+ // endregion
15
+ /* ****************************************************************************************************************** */
16
+ // region: Utils
17
+ /* ****************************************************************************************************************** */
18
+ function getPatchedSource(tsModule, options) {
19
+ const { backupCachePaths, patchedCachePaths } = tsModule;
20
+ const { log, skipCache } = options || {};
21
+ /* Write backup if not patched */
22
+ if (!tsModule.isPatched) {
23
+ for (const [key, backupPath] of Object.entries(backupCachePaths)) {
24
+ const srcPath = key === 'dts' ? tsModule.dtsPath : tsModule.modulePath;
25
+ if (key === 'dts' && options?.skipDts)
26
+ continue;
27
+ if (!srcPath)
28
+ continue;
29
+ log?.(['~', `Writing backup cache to ${chalk_1.default.blueBright(backupPath)}`], system_1.LogLevel.verbose);
30
+ const cacheDir = path_1.default.dirname(backupPath);
31
+ (0, utils_1.mkdirIfNotExist)(cacheDir);
32
+ (0, utils_1.copyFileWithLock)(srcPath, backupPath);
33
+ }
34
+ }
35
+ /* Get Patched Module */
36
+ const canUseCache = !skipCache
37
+ && !tsModule.moduleFile.patchDetail?.isOutdated
38
+ && (!patchedCachePaths.dts || fs_1.default.existsSync(patchedCachePaths.dts))
39
+ && fs_1.default.existsSync(patchedCachePaths.js)
40
+ && !(0, module_1.getModuleFile)(patchedCachePaths.js).patchDetail?.isOutdated;
41
+ let js;
42
+ let dts;
43
+ if (canUseCache) {
44
+ js = (0, utils_1.readFileWithLock)(patchedCachePaths.js);
45
+ dts = !options?.skipDts && patchedCachePaths.dts ? (0, utils_1.readFileWithLock)(patchedCachePaths.dts) : undefined;
46
+ }
47
+ else {
48
+ const res = (0, patch_module_1.patchModule)(tsModule, options?.skipDts);
49
+ js = res.js;
50
+ dts = res.dts;
51
+ /* Write patched cache */
52
+ if (!skipCache) {
53
+ const cacheDir = path_1.default.dirname(patchedCachePaths.js);
54
+ for (const [key, patchPath] of Object.entries(patchedCachePaths)) {
55
+ const srcPath = key === 'dts' ? dts : js;
56
+ if (key === 'dts' && options?.skipDts)
57
+ continue;
58
+ if (!srcPath)
59
+ continue;
60
+ log?.(['~', `Writing patched cache to ${chalk_1.default.blueBright(patchPath)}`], system_1.LogLevel.verbose);
61
+ (0, utils_1.mkdirIfNotExist)(cacheDir);
62
+ (0, utils_1.writeFileWithLock)(patchPath, srcPath);
63
+ }
64
+ }
65
+ }
66
+ return { js, dts, loadedFromCache: canUseCache };
67
+ }
68
+ // endregion
69
+ //# sourceMappingURL=get-patched-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-patched-source.js","sourceRoot":"","sources":["../../../projects/core/src/patch/get-patched-source.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { TsModule } from '../module';
2
+ export declare const tspHeaderBlockStart = "/// tsp-module:";
3
+ export declare const tspHeaderBlockStop = "/// :tsp-module";
4
+ export declare const currentPatchDetailVersion = "0.1.0";
5
+ export interface PatchDetail {
6
+ tsVersion: string;
7
+ tspVersion: string;
8
+ patchDetailVersion: string;
9
+ moduleName: TsModule.Name;
10
+ originalHash: string;
11
+ hash: string;
12
+ patches: PatchDetail.PatchEntry[];
13
+ }
14
+ export declare namespace PatchDetail {
15
+ interface PatchEntry {
16
+ library: string;
17
+ version: string;
18
+ patchName?: string;
19
+ hash?: string;
20
+ blocksCache?: boolean;
21
+ }
22
+ }
23
+ export declare class PatchDetail {
24
+ get isOutdated(): boolean;
25
+ toHeader(): string;
26
+ static fromHeader(header: string | string[]): PatchDetail | undefined;
27
+ static fromModule(tsModule: TsModule, patchedContent: string, patches?: PatchDetail.PatchEntry[]): PatchDetail & {
28
+ tsVersion: string;
29
+ tspVersion: any;
30
+ patchDetailVersion: string;
31
+ moduleName: string;
32
+ originalHash: string;
33
+ hash: string;
34
+ patches: PatchDetail.PatchEntry[];
35
+ };
36
+ }
@@ -0,0 +1,67 @@
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
+ exports.PatchDetail = exports.currentPatchDetailVersion = exports.tspHeaderBlockStop = exports.tspHeaderBlockStart = void 0;
7
+ const config_1 = require("../config");
8
+ const semver_1 = __importDefault(require("semver"));
9
+ const utils_1 = require("../utils");
10
+ /* ****************************************************************************************************************** */
11
+ // region: Config
12
+ /* ****************************************************************************************************************** */
13
+ exports.tspHeaderBlockStart = '/// tsp-module:';
14
+ exports.tspHeaderBlockStop = '/// :tsp-module';
15
+ exports.currentPatchDetailVersion = '0.1.0';
16
+ // endregion
17
+ /* ****************************************************************************************************************** */
18
+ // region: PatchDetail (class)
19
+ /* ****************************************************************************************************************** */
20
+ class PatchDetail {
21
+ /* ********************************************************* */
22
+ // region: Methods
23
+ /* ********************************************************* */
24
+ get isOutdated() {
25
+ const packageVersion = config_1.tspPackageJSON.version;
26
+ return semver_1.default.gt(packageVersion, this.tspVersion);
27
+ }
28
+ toHeader() {
29
+ const lines = JSON.stringify(this, null, 2)
30
+ .split('\n')
31
+ .map(line => `/// ${line}`)
32
+ .join('\n');
33
+ return `${exports.tspHeaderBlockStart}\n${lines}\n${exports.tspHeaderBlockStop}`;
34
+ }
35
+ static fromHeader(header) {
36
+ const headerLines = Array.isArray(header) ? header : header.split('\n');
37
+ let patchDetail;
38
+ const startIdx = headerLines.findIndex(line => line === exports.tspHeaderBlockStart) + 1;
39
+ let endIdx = headerLines.findIndex(line => line === exports.tspHeaderBlockStop);
40
+ if (endIdx === -1)
41
+ headerLines.length;
42
+ if (startIdx && endIdx) {
43
+ const patchInfoStr = headerLines
44
+ .slice(startIdx, endIdx)
45
+ .map(line => line.replace('/// ', ''))
46
+ .join('\n');
47
+ patchDetail = Object.assign(new PatchDetail(), JSON.parse(patchInfoStr));
48
+ }
49
+ return patchDetail;
50
+ }
51
+ static fromModule(tsModule, patchedContent, patches = []) {
52
+ patches.unshift({ library: 'ts-patch', patchName: config_1.corePatchName, version: config_1.tspPackageJSON.version });
53
+ const patchDetail = {
54
+ tsVersion: tsModule.package.version,
55
+ tspVersion: config_1.tspPackageJSON.version,
56
+ patchDetailVersion: exports.currentPatchDetailVersion,
57
+ moduleName: tsModule.moduleName,
58
+ originalHash: tsModule.cacheKey,
59
+ hash: (0, utils_1.getHash)(patchedContent),
60
+ patches: patches
61
+ };
62
+ return Object.assign(new PatchDetail(), patchDetail);
63
+ }
64
+ }
65
+ exports.PatchDetail = PatchDetail;
66
+ // endregion
67
+ //# sourceMappingURL=patch-detail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patch-detail.js","sourceRoot":"","sources":["../../../projects/core/src/patch/patch-detail.ts"],"names":[],"mappings":";;;;;;AACA,sCAA0D;AAC1D,oDAA4B;AAC5B,oCAAmC;AAGnC,wHAAwH;AACxH,iBAAiB;AACjB,wHAAwH;AAE3G,QAAA,mBAAmB,GAAG,iBAAiB,CAAC;AACxC,QAAA,kBAAkB,GAAG,iBAAiB,CAAC;AACvC,QAAA,yBAAyB,GAAG,OAAO,CAAC;AA6BjD,YAAY;AAGZ,wHAAwH;AACxH,8BAA8B;AAC9B,wHAAwH;AAExH,MAAa,WAAW;IAEtB,+DAA+D;IAC/D,kBAAkB;IAClB,+DAA+D;IAE/D,IAAI,UAAU;QACZ,MAAM,cAAc,GAAG,uBAAc,CAAC,OAAO,CAAC;QAC9C,OAAO,gBAAM,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,QAAQ;QACN,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;aACxC,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,GAAG,2BAAmB,KAAK,KAAK,KAAK,0BAAkB,EAAE,CAAC;IACnE,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAyB;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAExE,IAAI,WAAoC,CAAC;QACzC,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,2BAAmB,CAAC,GAAG,CAAC,CAAC;QACjF,IAAI,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,0BAAkB,CAAC,CAAC;QACxE,IAAI,MAAM,KAAK,CAAC,CAAC;YAAE,WAAW,CAAC,MAAM,CAAC;QACtC,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,WAAW;iBAC7B,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;iBACvB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;iBACrC,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAgB,CAAC,CAAC;QAC1F,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,QAAkB,EAAE,cAAsB,EAAE,UAAoC,EAAE;QAClG,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,sBAAa,EAAE,OAAO,EAAE,uBAAc,CAAC,OAAO,EAAE,CAAC,CAAC;QAEpG,MAAM,WAAW,GAAG;YAClB,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO;YACnC,UAAU,EAAE,uBAAc,CAAC,OAAO;YAClC,kBAAkB,EAAE,iCAAyB;YAC7C,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,QAAQ;YAC/B,IAAI,EAAE,IAAA,eAAO,EAAC,cAAc,CAAC;YAC7B,OAAO,EAAE,OAAO;SACsC,CAAA;QAExD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,EAAE,WAAW,CAAC,CAAC;IACvD,CAAC;CAGF;AAvDD,kCAuDC;AAED,YAAY"}
@@ -0,0 +1,5 @@
1
+ import { TsModule } from '../module';
2
+ export declare function patchModule(tsModule: TsModule, skipDts?: boolean): {
3
+ js: string;
4
+ dts?: string;
5
+ };