@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
package/slice/ts54.js ADDED
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sliceTs54 = sliceTs54;
4
+ const module_slice_1 = require("./module-slice");
5
+ /* ****************************************************************************************************************** */
6
+ // region: Utils
7
+ /* ****************************************************************************************************************** */
8
+ /**
9
+ * Slice 5.0 - 5.4
10
+ */
11
+ function sliceTs54(moduleFile) {
12
+ let firstSourceFileStart;
13
+ let wrapperStart;
14
+ let wrapperEnd;
15
+ let bodyStart;
16
+ let bodyEnd;
17
+ let sourceFileStarts = [];
18
+ const { content } = moduleFile;
19
+ /* Find Wrapper or First File */
20
+ let matcher = /^(?:\s*\/\/\s*src\/)|(?:var\s+ts\s*=.+)/gm;
21
+ const firstMatch = matcher.exec(content);
22
+ if (!firstMatch?.[0])
23
+ throw module_slice_1.ModuleSlice.createError();
24
+ /* Handle wrapped */
25
+ if (firstMatch[0].startsWith('var')) {
26
+ wrapperStart = firstMatch.index;
27
+ bodyStart = firstMatch.index + firstMatch[0].length + 1;
28
+ /* Find First File */
29
+ matcher = /^\s*\/\/\s*src\//gm;
30
+ matcher.lastIndex = wrapperStart;
31
+ const firstFileMatch = matcher.exec(content);
32
+ if (!firstFileMatch?.[0])
33
+ throw module_slice_1.ModuleSlice.createError();
34
+ firstSourceFileStart = firstFileMatch.index;
35
+ /* Find Wrapper end */
36
+ matcher = /^}\)\(\)\s*;?/gm;
37
+ matcher.lastIndex = firstFileMatch.index;
38
+ const wrapperEndMatch = matcher.exec(content);
39
+ if (!wrapperEndMatch?.[0])
40
+ throw module_slice_1.ModuleSlice.createError();
41
+ bodyEnd = wrapperEndMatch.index - 1;
42
+ wrapperEnd = wrapperEndMatch.index + wrapperEndMatch[0].length;
43
+ }
44
+ /* Handle non-wrapped */
45
+ else {
46
+ firstSourceFileStart = firstMatch.index;
47
+ bodyStart = firstMatch.index + firstMatch[0].length;
48
+ bodyEnd = content.length;
49
+ }
50
+ /* Get Source File Positions */
51
+ matcher = /^\s*\/\/\s*(src\/.+)$/gm;
52
+ matcher.lastIndex = firstSourceFileStart;
53
+ for (let match = matcher.exec(content); match != null; match = matcher.exec(content)) {
54
+ sourceFileStarts.push([match[1], match.index]);
55
+ }
56
+ return {
57
+ moduleFile,
58
+ firstSourceFileStart,
59
+ wrapperPos: wrapperStart != null ? { start: wrapperStart, end: wrapperEnd } : undefined,
60
+ fileEnd: content.length,
61
+ bodyPos: { start: bodyStart, end: bodyEnd },
62
+ sourceFileStarts,
63
+ bodyWrapper: {
64
+ start: 'var ts = (() => {',
65
+ end: '})();'
66
+ }
67
+ };
68
+ }
69
+ // endregion
70
+ //# sourceMappingURL=ts54.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts54.js","sourceRoot":"","sources":["../../../projects/core/src/slice/ts54.ts"],"names":[],"mappings":";;AAWA,8BAiEC;AA3ED,iDAA6C;AAG7C,wHAAwH;AACxH,gBAAgB;AAChB,wHAAwH;AAExH;;GAEG;AACH,SAAgB,SAAS,CAAC,UAAsB;IAC9C,IAAI,oBAA4B,CAAC;IACjC,IAAI,YAAgC,CAAC;IACrC,IAAI,UAA8B,CAAC;IACnC,IAAI,SAAiB,CAAC;IACtB,IAAI,OAAe,CAAC;IACpB,IAAI,gBAAgB,GAAyC,EAAE,CAAC;IAEhE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAE/B,gCAAgC;IAChC,IAAI,OAAO,GAAG,2CAA2C,CAAC;IAE1D,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAAE,MAAM,0BAAW,CAAC,WAAW,EAAE,CAAC;IAEtD,oBAAoB;IACpB,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC;QAChC,SAAS,GAAG,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAExD,qBAAqB;QACrB,OAAO,GAAG,oBAAoB,CAAC;QAC/B,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;QAEjC,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;YAAE,MAAM,0BAAW,CAAC,WAAW,EAAE,CAAC;QAE1D,oBAAoB,GAAG,cAAc,CAAC,KAAK,CAAC;QAE5C,sBAAsB;QACtB,OAAO,GAAG,iBAAiB,CAAC;QAC5B,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC;QACzC,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;YAAE,MAAM,0BAAW,CAAC,WAAW,EAAE,CAAC;QAE3D,OAAO,GAAG,eAAe,CAAC,KAAK,GAAG,CAAC,CAAC;QACpC,UAAU,GAAG,eAAe,CAAC,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjE,CAAC;IACD,wBAAwB;SACnB,CAAC;QACJ,oBAAoB,GAAG,UAAU,CAAC,KAAK,CAAC;QACxC,SAAS,GAAG,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,+BAA+B;IAC/B,OAAO,GAAG,yBAAyB,CAAC;IACpC,OAAO,CAAC,SAAS,GAAG,oBAAoB,CAAC;IACzC,KAAK,IAAI,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACrF,gBAAgB,CAAC,IAAI,CAAC,CAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO;QACL,UAAU;QACV,oBAAoB;QACpB,UAAU,EAAE,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,UAAW,EAAE,CAAC,CAAC,CAAC,SAAS;QACxF,OAAO,EAAE,OAAO,CAAC,MAAM;QACvB,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE;QAC3C,gBAAgB;QAChB,WAAW,EAAE;YACX,KAAK,EAAE,mBAAmB;YAC1B,GAAG,EAAE,OAAO;SACb;KACF,CAAC;AACJ,CAAC;AAED,YAAY"}
@@ -0,0 +1,6 @@
1
+ import { ModuleFile } from '../module';
2
+ import { ModuleSlice } from './module-slice';
3
+ /**
4
+ * Slice 5.5+
5
+ */
6
+ export declare function sliceTs55(moduleFile: ModuleFile): ModuleSlice;
package/slice/ts55.js ADDED
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sliceTs55 = sliceTs55;
4
+ const module_slice_1 = require("./module-slice");
5
+ /* ****************************************************************************************************************** */
6
+ // region: Utils
7
+ /* ****************************************************************************************************************** */
8
+ /**
9
+ * Slice 5.5+
10
+ */
11
+ function sliceTs55(moduleFile) {
12
+ let firstSourceFileStart;
13
+ let wrapperStart;
14
+ let wrapperEnd;
15
+ let bodyStart;
16
+ let bodyEnd;
17
+ let sourceFileStarts = [];
18
+ const { content } = moduleFile;
19
+ /* Find Wrapper or First File */
20
+ let matcher = /^(?:\s*\/\/\s*src\/)|(?:var\s+ts\s*=.+)/gm;
21
+ const firstMatch = matcher.exec(content);
22
+ if (!firstMatch?.[0])
23
+ throw module_slice_1.ModuleSlice.createError();
24
+ let bodyWrapper = undefined;
25
+ /* Handle wrapped */
26
+ if (firstMatch[0].startsWith('var')) {
27
+ wrapperStart = firstMatch.index;
28
+ bodyStart = firstMatch.index + firstMatch[0].length + 1;
29
+ /* Find First File */
30
+ matcher = /^\s*\/\/\s*src\//gm;
31
+ matcher.lastIndex = wrapperStart;
32
+ const firstFileMatch = matcher.exec(content);
33
+ if (!firstFileMatch?.[0])
34
+ throw module_slice_1.ModuleSlice.createError();
35
+ firstSourceFileStart = firstFileMatch.index;
36
+ /* Find Wrapper end */
37
+ // TODO - We may later want to find a better approach, but this will work for now
38
+ matcher = /^}\)\(typeof module !== "undefined" .+$/gm;
39
+ matcher.lastIndex = firstFileMatch.index;
40
+ const wrapperEndMatch = matcher.exec(content);
41
+ if (!wrapperEndMatch?.[0])
42
+ throw module_slice_1.ModuleSlice.createError();
43
+ bodyEnd = wrapperEndMatch.index - 1;
44
+ wrapperEnd = wrapperEndMatch.index + wrapperEndMatch[0].length;
45
+ bodyWrapper = { start: firstMatch[0], end: wrapperEndMatch[0] };
46
+ }
47
+ /* Handle non-wrapped */
48
+ else {
49
+ firstSourceFileStart = firstMatch.index;
50
+ bodyStart = firstMatch.index + firstMatch[0].length;
51
+ bodyEnd = content.length;
52
+ }
53
+ /* Get Source File Positions */
54
+ matcher = /^\s*\/\/\s*(src\/.+)$/gm;
55
+ matcher.lastIndex = firstSourceFileStart;
56
+ for (let match = matcher.exec(content); match != null; match = matcher.exec(content)) {
57
+ sourceFileStarts.push([match[1], match.index]);
58
+ }
59
+ return {
60
+ moduleFile,
61
+ firstSourceFileStart,
62
+ wrapperPos: wrapperStart != null ? { start: wrapperStart, end: wrapperEnd } : undefined,
63
+ fileEnd: content.length,
64
+ bodyPos: { start: bodyStart, end: bodyEnd },
65
+ sourceFileStarts,
66
+ bodyWrapper
67
+ };
68
+ }
69
+ // endregion
70
+ //# sourceMappingURL=ts55.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts55.js","sourceRoot":"","sources":["../../../projects/core/src/slice/ts55.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ModuleFile } from '../module';
2
+ import { ModuleSlice } from './module-slice';
3
+ /**
4
+ * Slice 5.5.2+
5
+ */
6
+ export declare function sliceTs552(moduleFile: ModuleFile): ModuleSlice;
package/slice/ts552.js ADDED
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sliceTs552 = sliceTs552;
4
+ const module_slice_1 = require("./module-slice");
5
+ /* ****************************************************************************************************************** */
6
+ // region: Utils
7
+ /* ****************************************************************************************************************** */
8
+ /**
9
+ * Slice 5.5.2+
10
+ */
11
+ function sliceTs552(moduleFile) {
12
+ let firstSourceFileStart;
13
+ let wrapperStart;
14
+ let wrapperEnd;
15
+ let bodyStart;
16
+ let bodyEnd;
17
+ let sourceFileStarts = [];
18
+ const { content } = moduleFile;
19
+ /* Find Wrapper or First File */
20
+ let matcher = /^(?:\s*\/\/\s*src\/)|(?:var\s+ts\s*=.+)/gm;
21
+ const firstMatch = matcher.exec(content);
22
+ if (!firstMatch?.[0])
23
+ throw module_slice_1.ModuleSlice.createError();
24
+ let bodyWrapper = undefined;
25
+ /* Handle wrapped */
26
+ if (firstMatch[0].startsWith('var')) {
27
+ wrapperStart = firstMatch.index;
28
+ bodyStart = firstMatch.index + firstMatch[0].length + 1;
29
+ /* Find First File */
30
+ matcher = /^\s*\/\/\s*src\//gm;
31
+ matcher.lastIndex = wrapperStart;
32
+ const firstFileMatch = matcher.exec(content);
33
+ if (!firstFileMatch?.[0])
34
+ throw module_slice_1.ModuleSlice.createError();
35
+ firstSourceFileStart = firstFileMatch.index;
36
+ /* Find Wrapper end */
37
+ // TODO - We may later want to find a better approach, but this will work for now
38
+ matcher = /^}\)\({ get exports\(\) { return ts; }.+$/gm;
39
+ matcher.lastIndex = firstFileMatch.index;
40
+ const wrapperEndMatch = matcher.exec(content);
41
+ if (!wrapperEndMatch?.[0])
42
+ throw module_slice_1.ModuleSlice.createError();
43
+ bodyEnd = wrapperEndMatch.index - 1;
44
+ wrapperEnd = wrapperEndMatch.index + wrapperEndMatch[0].length;
45
+ bodyWrapper = { start: firstMatch[0], end: wrapperEndMatch[0] };
46
+ }
47
+ /* Handle non-wrapped */
48
+ else {
49
+ firstSourceFileStart = firstMatch.index;
50
+ bodyStart = firstMatch.index + firstMatch[0].length;
51
+ bodyEnd = content.length;
52
+ }
53
+ /* Get Source File Positions */
54
+ matcher = /^\s*\/\/\s*(src\/.+)$/gm;
55
+ matcher.lastIndex = firstSourceFileStart;
56
+ for (let match = matcher.exec(content); match != null; match = matcher.exec(content)) {
57
+ sourceFileStarts.push([match[1], match.index]);
58
+ }
59
+ return {
60
+ moduleFile,
61
+ firstSourceFileStart,
62
+ wrapperPos: wrapperStart != null ? { start: wrapperStart, end: wrapperEnd } : undefined,
63
+ fileEnd: content.length,
64
+ bodyPos: { start: bodyStart, end: bodyEnd },
65
+ sourceFileStarts,
66
+ bodyWrapper
67
+ };
68
+ }
69
+ // endregion
70
+ //# sourceMappingURL=ts552.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts552.js","sourceRoot":"","sources":["../../../projects/core/src/slice/ts552.ts"],"names":[],"mappings":";;AAWA,gCAkEC;AA5ED,iDAA6C;AAG7C,wHAAwH;AACxH,gBAAgB;AAChB,wHAAwH;AAExH;;GAEG;AACH,SAAgB,UAAU,CAAC,UAAsB;IAC/C,IAAI,oBAA4B,CAAC;IACjC,IAAI,YAAgC,CAAC;IACrC,IAAI,UAA8B,CAAC;IACnC,IAAI,SAAiB,CAAC;IACtB,IAAI,OAAe,CAAC;IACpB,IAAI,gBAAgB,GAAyC,EAAE,CAAC;IAEhE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAE/B,gCAAgC;IAChC,IAAI,OAAO,GAAG,2CAA2C,CAAC;IAE1D,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAAE,MAAM,0BAAW,CAAC,WAAW,EAAE,CAAC;IACtD,IAAI,WAAW,GAA+C,SAAS,CAAC;IAExE,oBAAoB;IACpB,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC;QAChC,SAAS,GAAG,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAExD,qBAAqB;QACrB,OAAO,GAAG,oBAAoB,CAAC;QAC/B,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;QAEjC,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;YAAE,MAAM,0BAAW,CAAC,WAAW,EAAE,CAAC;QAE1D,oBAAoB,GAAG,cAAc,CAAC,KAAK,CAAC;QAE5C,sBAAsB;QACtB,iFAAiF;QACjF,OAAO,GAAG,6CAA6C,CAAC;QACxD,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC;QACzC,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;YAAE,MAAM,0BAAW,CAAC,WAAW,EAAE,CAAC;QAE3D,OAAO,GAAG,eAAe,CAAC,KAAK,GAAG,CAAC,CAAC;QACpC,UAAU,GAAG,eAAe,CAAC,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAE/D,WAAW,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,CAAC;IACD,wBAAwB;SACnB,CAAC;QACJ,oBAAoB,GAAG,UAAU,CAAC,KAAK,CAAC;QACxC,SAAS,GAAG,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,+BAA+B;IAC/B,OAAO,GAAG,yBAAyB,CAAC;IACpC,OAAO,CAAC,SAAS,GAAG,oBAAoB,CAAC;IACzC,KAAK,IAAI,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACrF,gBAAgB,CAAC,IAAI,CAAC,CAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO;QACL,UAAU;QACV,oBAAoB;QACpB,UAAU,EAAE,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,UAAW,EAAE,CAAC,CAAC,CAAC,SAAS;QACxF,OAAO,EAAE,OAAO,CAAC,MAAM;QACvB,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE;QAC3C,gBAAgB;QAChB,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,YAAY"}
@@ -0,0 +1,3 @@
1
+ export declare function getCacheRoot(): string;
2
+ export declare function getCachePath(key: string, ...p: string[]): string;
3
+ export declare function getLockFilePath(key: string): string;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.getCacheRoot = getCacheRoot;
30
+ exports.getCachePath = getCachePath;
31
+ exports.getLockFilePath = getLockFilePath;
32
+ const path_1 = __importDefault(require("path"));
33
+ const os = __importStar(require("os"));
34
+ const utils_1 = require("../utils");
35
+ const config_1 = require("../config");
36
+ const fs_1 = __importDefault(require("fs"));
37
+ /* ****************************************************************************************************************** */
38
+ // region: Locals
39
+ /* ****************************************************************************************************************** */
40
+ let cacheRoot;
41
+ let lockFileRoot;
42
+ // endregion
43
+ /* ****************************************************************************************************************** */
44
+ // region: Utils
45
+ /* ****************************************************************************************************************** */
46
+ function getCacheRoot() {
47
+ if (!cacheRoot) {
48
+ cacheRoot =
49
+ process.env.TSP_CACHE_DIR ||
50
+ (0, utils_1.findCacheDirectory)({ name: 'ts-patch', cwd: path_1.default.resolve(config_1.appRoot, '..') }) ||
51
+ path_1.default.join(os.tmpdir(), 'ts-patch');
52
+ if (!fs_1.default.existsSync(cacheRoot))
53
+ fs_1.default.mkdirSync(cacheRoot, { recursive: true });
54
+ }
55
+ return cacheRoot;
56
+ }
57
+ function getCachePath(key, ...p) {
58
+ return path_1.default.resolve(getCacheRoot(), key, ...p);
59
+ }
60
+ function getLockFilePath(key) {
61
+ if (!lockFileRoot) {
62
+ lockFileRoot = path_1.default.join(getCacheRoot(), config_1.lockFileDir);
63
+ if (!fs_1.default.existsSync(lockFileRoot))
64
+ fs_1.default.mkdirSync(lockFileRoot, { recursive: true });
65
+ }
66
+ return path_1.default.join(getCacheRoot(), config_1.lockFileDir, key);
67
+ }
68
+ // endregion
69
+ //# sourceMappingURL=cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../projects/core/src/system/cache.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,oCAWC;AAED,oCAEC;AAED,0CAOC;AA7CD,gDAAwB;AACxB,uCAAyB;AACzB,oCAA8C;AAC9C,sCAAiD;AACjD,4CAAoB;AAGpB,wHAAwH;AACxH,iBAAiB;AACjB,wHAAwH;AAExH,IAAI,SAA6B,CAAC;AAClC,IAAI,YAAgC,CAAC;AAErC,YAAY;AAGZ,wHAAwH;AACxH,gBAAgB;AAChB,wHAAwH;AAExH,SAAgB,YAAY;IAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS;YACP,OAAO,CAAC,GAAG,CAAC,aAAa;gBACzB,IAAA,0BAAkB,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,cAAI,CAAC,OAAO,CAAC,gBAAO,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC1E,cAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;QAErC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,YAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,GAAG,CAAW;IACtD,OAAO,cAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,SAAgB,eAAe,CAAC,GAAW;IACzC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,oBAAW,CAAC,CAAC;QACtD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC;YAAE,YAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,OAAO,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,oBAAW,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,YAAY"}
@@ -0,0 +1,35 @@
1
+ export declare class TspError extends Error {
2
+ }
3
+ export declare class WrongTSVersion extends TspError {
4
+ name: string;
5
+ }
6
+ export declare class FileNotFound extends TspError {
7
+ name: string;
8
+ }
9
+ export declare class PackageError extends TspError {
10
+ name: string;
11
+ }
12
+ export declare class PatchError extends TspError {
13
+ name: string;
14
+ }
15
+ export declare class PersistenceError extends TspError {
16
+ name: string;
17
+ }
18
+ export declare class OptionsError extends TspError {
19
+ name: string;
20
+ }
21
+ export declare class NPMError extends TspError {
22
+ name: string;
23
+ }
24
+ export declare class RestoreError extends TspError {
25
+ filename: string;
26
+ constructor(filename: string, message: string);
27
+ }
28
+ export declare class BackupError extends TspError {
29
+ filename: string;
30
+ constructor(filename: string, message: string);
31
+ }
32
+ export declare class FileWriteError extends TspError {
33
+ filename: string;
34
+ constructor(filename: string, message?: string);
35
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ /* ********************************************************************************************************************
3
+ * Errors Classes
4
+ * ********************************************************************************************************************/
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FileWriteError = exports.BackupError = exports.RestoreError = exports.NPMError = exports.OptionsError = exports.PersistenceError = exports.PatchError = exports.PackageError = exports.FileNotFound = exports.WrongTSVersion = exports.TspError = void 0;
7
+ class TspError extends Error {
8
+ }
9
+ exports.TspError = TspError;
10
+ class WrongTSVersion extends TspError {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.name = 'WrongTSVersion';
14
+ }
15
+ }
16
+ exports.WrongTSVersion = WrongTSVersion;
17
+ class FileNotFound extends TspError {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.name = 'FileNotFound';
21
+ }
22
+ }
23
+ exports.FileNotFound = FileNotFound;
24
+ class PackageError extends TspError {
25
+ constructor() {
26
+ super(...arguments);
27
+ this.name = 'PackageError';
28
+ }
29
+ }
30
+ exports.PackageError = PackageError;
31
+ class PatchError extends TspError {
32
+ constructor() {
33
+ super(...arguments);
34
+ this.name = 'PatchError';
35
+ }
36
+ }
37
+ exports.PatchError = PatchError;
38
+ class PersistenceError extends TspError {
39
+ constructor() {
40
+ super(...arguments);
41
+ this.name = 'PersistenceError';
42
+ }
43
+ }
44
+ exports.PersistenceError = PersistenceError;
45
+ class OptionsError extends TspError {
46
+ constructor() {
47
+ super(...arguments);
48
+ this.name = 'OptionsError';
49
+ }
50
+ }
51
+ exports.OptionsError = OptionsError;
52
+ class NPMError extends TspError {
53
+ constructor() {
54
+ super(...arguments);
55
+ this.name = 'NPMError';
56
+ }
57
+ }
58
+ exports.NPMError = NPMError;
59
+ class RestoreError extends TspError {
60
+ constructor(filename, message) {
61
+ super(`Error restoring: ${filename}${message ? ' - ' + message : ''}`);
62
+ this.filename = filename;
63
+ this.name = 'RestoreError';
64
+ }
65
+ }
66
+ exports.RestoreError = RestoreError;
67
+ class BackupError extends TspError {
68
+ constructor(filename, message) {
69
+ super(`Error backing up ${filename}${message ? ' - ' + message : ''}`);
70
+ this.filename = filename;
71
+ this.name = 'BackupError';
72
+ }
73
+ }
74
+ exports.BackupError = BackupError;
75
+ class FileWriteError extends TspError {
76
+ constructor(filename, message) {
77
+ super(`Error while trying to write to ${filename}${message ? `: ${message}` : ''}`);
78
+ this.filename = filename;
79
+ }
80
+ }
81
+ exports.FileWriteError = FileWriteError;
82
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../projects/core/src/system/errors.ts"],"names":[],"mappings":";AAAA;;wHAEwH;;;AAExH,MAAa,QAAS,SAAQ,KAAK;CAAI;AAAvC,4BAAuC;AAEvC,MAAa,cAAe,SAAQ,QAAQ;IAA5C;;QAA8C,SAAI,GAAG,gBAAgB,CAAA;IAAA,CAAC;CAAA;AAAtE,wCAAsE;AAEtE,MAAa,YAAa,SAAQ,QAAQ;IAA1C;;QAA4C,SAAI,GAAG,cAAc,CAAA;IAAA,CAAC;CAAA;AAAlE,oCAAkE;AAElE,MAAa,YAAa,SAAQ,QAAQ;IAA1C;;QAA4C,SAAI,GAAG,cAAc,CAAA;IAAA,CAAC;CAAA;AAAlE,oCAAkE;AAElE,MAAa,UAAW,SAAQ,QAAQ;IAAxC;;QAA0C,SAAI,GAAG,YAAY,CAAA;IAAA,CAAC;CAAA;AAA9D,gCAA8D;AAE9D,MAAa,gBAAiB,SAAQ,QAAQ;IAA9C;;QAAgD,SAAI,GAAG,kBAAkB,CAAA;IAAA,CAAC;CAAA;AAA1E,4CAA0E;AAE1E,MAAa,YAAa,SAAQ,QAAQ;IAA1C;;QAA4C,SAAI,GAAG,cAAc,CAAA;IAAA,CAAC;CAAA;AAAlE,oCAAkE;AAElE,MAAa,QAAS,SAAQ,QAAQ;IAAtC;;QAAwC,SAAI,GAAG,UAAU,CAAA;IAAA,CAAC;CAAA;AAA1D,4BAA0D;AAE1D,MAAa,YAAa,SAAQ,QAAQ;IACxC,YAAmB,QAAgB,EAAE,OAAe;QAClD,KAAK,CAAC,oBAAoB,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QADtD,aAAQ,GAAR,QAAQ,CAAQ;QAEjC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AALD,oCAKC;AAED,MAAa,WAAY,SAAQ,QAAQ;IACvC,YAAmB,QAAgB,EAAE,OAAe;QAClD,KAAK,CAAC,oBAAoB,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QADtD,aAAQ,GAAR,QAAQ,CAAQ;QAEjC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AALD,kCAKC;AAED,MAAa,cAAe,SAAQ,QAAQ;IAC1C,YAAmB,QAAgB,EAAE,OAAgB;QACnD,KAAK,CAAC,kCAAkC,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QADnE,aAAQ,GAAR,QAAQ,CAAQ;IAEnC,CAAC;CACF;AAJD,wCAIC"}
@@ -0,0 +1,4 @@
1
+ export * from './cache';
2
+ export * from './errors';
3
+ export * from './logger';
4
+ export * from './types';
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cache"), exports);
18
+ __exportStar(require("./errors"), exports);
19
+ __exportStar(require("./logger"), exports);
20
+ __exportStar(require("./types"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../projects/core/src/system/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,2CAAyB;AACzB,2CAAyB;AACzB,0CAAwB"}
@@ -0,0 +1,7 @@
1
+ export declare enum LogLevel {
2
+ system = 0,
3
+ normal = 1,
4
+ verbose = 2
5
+ }
6
+ export type Logger = (msg: string | [string, string], logLevel?: LogLevel) => void;
7
+ export declare function createLogger(logLevel: LogLevel, useColour?: boolean, isSilent?: boolean): Logger;
@@ -0,0 +1,48 @@
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.LogLevel = void 0;
7
+ exports.createLogger = createLogger;
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const strip_ansi_1 = __importDefault(require("strip-ansi"));
10
+ /* ****************************************************************************************************************** */
11
+ // region: Types
12
+ /* ****************************************************************************************************************** */
13
+ var LogLevel;
14
+ (function (LogLevel) {
15
+ LogLevel[LogLevel["system"] = 0] = "system";
16
+ LogLevel[LogLevel["normal"] = 1] = "normal";
17
+ LogLevel[LogLevel["verbose"] = 2] = "verbose";
18
+ })(LogLevel || (exports.LogLevel = LogLevel = {}));
19
+ // endregion
20
+ /* ****************************************************************************************************************** */
21
+ // region: Utils
22
+ /* ****************************************************************************************************************** */
23
+ function createLogger(logLevel, useColour = true, isSilent = false) {
24
+ return function log(msg, msgLogLevel = LogLevel.normal) {
25
+ if (isSilent || msgLogLevel > logLevel)
26
+ return;
27
+ /* Handle Icon */
28
+ const printIcon = (icon) => chalk_1.default.bold.cyanBright(`[${icon}] `);
29
+ let icon = '';
30
+ if (Array.isArray(msg)) {
31
+ icon = msg[0];
32
+ // @formatter:off
33
+ msg = (icon === '!') ? printIcon(chalk_1.default.bold.yellow(icon)) + chalk_1.default.yellow(msg[1]) :
34
+ (icon === '~') ? printIcon(chalk_1.default.bold.cyanBright(icon)) + msg[1] :
35
+ (icon === '=') ? printIcon(chalk_1.default.bold.greenBright(icon)) + msg[1] :
36
+ (icon === '+') ? printIcon(chalk_1.default.bold.green(icon)) + msg[1] :
37
+ (icon === '-') ? printIcon(chalk_1.default.bold.white(icon)) + msg[1] :
38
+ msg[1];
39
+ // @formatter:on
40
+ }
41
+ /* Print message */
42
+ const isError = (icon === '!');
43
+ msg = !useColour ? (0, strip_ansi_1.default)(msg) : msg;
44
+ (isError ? console.error : console.log)(msg);
45
+ };
46
+ }
47
+ // endregion
48
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../projects/core/src/system/logger.ts"],"names":[],"mappings":";;;;;;AAuBA,oCA2BC;AAlDD,kDAA0B;AAC1B,4DAAmC;AAGnC,wHAAwH;AACxH,gBAAgB;AAChB,wHAAwH;AAExH,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,2CAAU,CAAA;IACV,2CAAU,CAAA;IACV,6CAAW,CAAA;AACb,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB;AAID,YAAY;AAGZ,wHAAwH;AACxH,gBAAgB;AAChB,wHAAwH;AAExH,SAAgB,YAAY,CAAC,QAAkB,EAAE,YAAqB,IAAI,EAAE,WAAoB,KAAK;IACnG,OAAO,SAAS,GAAG,CAAC,GAAgC,EAAE,cAAwB,QAAQ,CAAC,MAAM;QAC3F,IAAI,QAAQ,IAAI,WAAW,GAAG,QAAQ;YAAE,OAAO;QAE/C,iBAAiB;QACjB,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QAExE,IAAI,IAAI,GAAW,EAAE,CAAC;QACtB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAEd,iBAAiB;YACjB,GAAG,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,eAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChF,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBAClE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wBACnE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC7D,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAC7D,GAAG,CAAC,CAAC,CAAC,CAAC;YACT,gBAAgB;QAClB,CAAC;QAED,mBAAmB;QACnB,MAAM,OAAO,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;QAE/B,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,oBAAS,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACxC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC,CAAA;AACH,CAAC;AAED,YAAY"}
@@ -0,0 +1,4 @@
1
+ export interface Position {
2
+ start: number;
3
+ end: number;
4
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /* ****************************************************************************************************************** */
3
+ // region: Types
4
+ /* ****************************************************************************************************************** */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ // endregion
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../projects/core/src/system/types.ts"],"names":[],"mappings":";AACA,wHAAwH;AACxH,gBAAgB;AAChB,wHAAwH;;AAOxH,YAAY"}
@@ -0,0 +1,18 @@
1
+ import { TsModule } from './module';
2
+ export interface TsPackage {
3
+ majorVer: number;
4
+ minorVer: number;
5
+ version: string;
6
+ packageFile: string;
7
+ packageDir: string;
8
+ cacheDir: string;
9
+ libDir: string;
10
+ moduleNames: TsModule.Name[];
11
+ /** @internal */
12
+ moduleCache: Map<TsModule.Name, TsModule>;
13
+ getModulePath: (name: TsModule.Name) => string;
14
+ }
15
+ /**
16
+ * Get TypeScript package info - Resolve from dir, throws if not cannot find TS package
17
+ */
18
+ export declare function getTsPackage(dir?: string): TsPackage;