incremental-compiler 19.0.9 → 19.0.10

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 (62) hide show
  1. package/browser/esm2022/incremental-compiler.mjs +5 -0
  2. package/browser/esm2022/lib/base-client-compiler.mjs +300 -0
  3. package/browser/esm2022/lib/change-of-file.mjs +16 -0
  4. package/browser/esm2022/lib/compiler-manager.mjs +216 -0
  5. package/browser/esm2022/lib/constants.mjs +18 -0
  6. package/browser/esm2022/lib/incremental-watcher/incremental-watcher-events.mjs +2 -0
  7. package/browser/esm2022/lib/incremental-watcher/incremental-watcher-instance.mjs +2 -0
  8. package/browser/esm2022/lib/incremental-watcher/incremental-watcher-options.mjs +2 -0
  9. package/browser/esm2022/lib/incremental-watcher/incremental-watcher.mjs +47 -0
  10. package/browser/esm2022/lib/incremental-watcher/index.mjs +4 -0
  11. package/browser/esm2022/lib/index.mjs +24 -0
  12. package/browser/esm2022/lib/models.mjs +2 -0
  13. package/browser/esm2022/public-api.mjs +2 -0
  14. package/browser/package.json +1 -1
  15. package/client/esm2022/incremental-compiler.mjs +5 -0
  16. package/client/esm2022/lib/base-client-compiler.mjs +300 -0
  17. package/client/esm2022/lib/change-of-file.mjs +16 -0
  18. package/client/esm2022/lib/compiler-manager.mjs +216 -0
  19. package/client/esm2022/lib/constants.mjs +18 -0
  20. package/client/esm2022/lib/incremental-watcher/incremental-watcher-events.mjs +2 -0
  21. package/client/esm2022/lib/incremental-watcher/incremental-watcher-instance.mjs +2 -0
  22. package/client/esm2022/lib/incremental-watcher/incremental-watcher-options.mjs +2 -0
  23. package/client/esm2022/lib/incremental-watcher/incremental-watcher.mjs +47 -0
  24. package/client/esm2022/lib/incremental-watcher/index.mjs +4 -0
  25. package/client/esm2022/lib/index.mjs +24 -0
  26. package/client/esm2022/lib/models.mjs +2 -0
  27. package/client/esm2022/public-api.mjs +2 -0
  28. package/client/package.json +1 -1
  29. package/lib/base-client-compiler.backend.d.ts +56 -0
  30. package/lib/base-client-compiler.backend.js +325 -0
  31. package/lib/base-client-compiler.backend.js.map +1 -0
  32. package/lib/build-info._auto-generated_.d.ts +1 -1
  33. package/lib/build-info._auto-generated_.js +1 -1
  34. package/lib/build-info._auto-generated_.js.map +1 -1
  35. package/lib/change-of-file.backend.d.ts +8 -0
  36. package/lib/change-of-file.backend.js +25 -0
  37. package/lib/change-of-file.backend.js.map +1 -0
  38. package/lib/compiler-manager.backend.d.ts +16 -0
  39. package/lib/compiler-manager.backend.js +213 -0
  40. package/lib/compiler-manager.backend.js.map +1 -0
  41. package/lib/decorators.backend.d.ts +5 -0
  42. package/lib/decorators.backend.js +56 -0
  43. package/lib/decorators.backend.js.map +1 -0
  44. package/lib/helpers.backend.d.ts +3 -0
  45. package/lib/helpers.backend.js +31 -0
  46. package/lib/helpers.backend.js.map +1 -0
  47. package/package.json +1 -1
  48. package/tmp-environment.json +3 -3
  49. package/websql/esm2022/incremental-compiler.mjs +5 -0
  50. package/websql/esm2022/lib/base-client-compiler.mjs +300 -0
  51. package/websql/esm2022/lib/change-of-file.mjs +16 -0
  52. package/websql/esm2022/lib/compiler-manager.mjs +216 -0
  53. package/websql/esm2022/lib/constants.mjs +18 -0
  54. package/websql/esm2022/lib/incremental-watcher/incremental-watcher-events.mjs +2 -0
  55. package/websql/esm2022/lib/incremental-watcher/incremental-watcher-instance.mjs +2 -0
  56. package/websql/esm2022/lib/incremental-watcher/incremental-watcher-options.mjs +2 -0
  57. package/websql/esm2022/lib/incremental-watcher/incremental-watcher.mjs +47 -0
  58. package/websql/esm2022/lib/incremental-watcher/index.mjs +4 -0
  59. package/websql/esm2022/lib/index.mjs +24 -0
  60. package/websql/esm2022/lib/models.mjs +2 -0
  61. package/websql/esm2022/public-api.mjs +2 -0
  62. package/websql/package.json +1 -1
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CompilerManager = void 0;
4
+ var tslib_1 = require("tslib");
5
+ //#region imports
6
+ //#region @backend
7
+ var tnp_core_1 = require("tnp-core");
8
+ //#endregion
9
+ var tnp_core_2 = require("tnp-core");
10
+ var tnp_helpers_1 = require("tnp-helpers");
11
+ var change_of_file_backend_1 = require("./change-of-file.backend");
12
+ var constants_1 = require("./constants");
13
+ var incremental_watcher_1 = require("./incremental-watcher");
14
+ //#region for debugging purpose...
15
+ // require('colors');
16
+ // const Diff = require('diff');
17
+ //#endregion
18
+ //#endregion
19
+ var ignoreByDefault = ['**/node_modules/**/*.*', '**/node_modules'];
20
+ var CompilerManager = /** @class */ (function () {
21
+ //#endregion
22
+ //#region constructor
23
+ function CompilerManager() {
24
+ //#endregion
25
+ //#endregion
26
+ //#region fields & getters
27
+ this.clients = [];
28
+ this.inited = false;
29
+ this.filesContentCache = {};
30
+ }
31
+ Object.defineProperty(CompilerManager, "Instance", {
32
+ get: function () {
33
+ if (!this._instance) {
34
+ this._instance = new CompilerManager();
35
+ }
36
+ return this._instance;
37
+ },
38
+ enumerable: false,
39
+ configurable: true
40
+ });
41
+ //#endregion
42
+ //#region methods / sync init
43
+ CompilerManager.prototype.syncInit = function (client, initalParams) {
44
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
45
+ var files, index, absFilePath, fileShouldBeCached;
46
+ return tslib_1.__generator(this, function (_a) {
47
+ switch (_a.label) {
48
+ case 0:
49
+ files = [];
50
+ if (tnp_core_2._.isArray(client.folderPath) && client.folderPath.length > 0) {
51
+ files = client.folderPath
52
+ .reduce(function (folderOrFileA, folderOrFileB) {
53
+ folderOrFileB = (0, tnp_core_2.crossPlatformPath)(folderOrFileB);
54
+ var filesFromB = [folderOrFileB];
55
+ if (tnp_core_1.fse.existsSync(folderOrFileB) &&
56
+ tnp_core_1.fse.lstatSync(folderOrFileB).isDirectory()) {
57
+ debugger;
58
+ var globPath = "".concat(folderOrFileB, "/**/*.*");
59
+ var ignore = tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(ignoreByDefault), false), tslib_1.__read(client.ignoreFolderPatter), false);
60
+ // console.log({ ignore });
61
+ filesFromB = tnp_core_1.fg.sync(globPath, {
62
+ // ! TODO QUICK_FIX for v18 @LAST
63
+ // symlinks: client.followSymlinks as any,
64
+ followSymbolicLinks: client.followSymlinks,
65
+ ignore: ignore,
66
+ dot: true,
67
+ });
68
+ // console.log({
69
+ // globPath,
70
+ // globIgnore,
71
+ // GENERATEDFILES: filesFromB.length
72
+ // })
73
+ }
74
+ return folderOrFileA.concat(filesFromB);
75
+ }, [])
76
+ .filter(function (f) {
77
+ if (client.subscribeOnlyFor.length > 0) {
78
+ return client.subscribeOnlyFor.includes(tnp_core_2.path.extname(f).replace('.', ''));
79
+ }
80
+ return true;
81
+ });
82
+ }
83
+ // console.log(`Files for client.folderPath: ${client.folderPath} client.followSymlinks: ${client.followSymlinks}`)
84
+ for (index = 0; index < files.length; index++) {
85
+ absFilePath = files[index];
86
+ fileShouldBeCached = this.fileShouldBeChecked(absFilePath, client);
87
+ if (fileShouldBeCached) {
88
+ this.filesContentCache[absFilePath] = (tnp_helpers_1.Helpers.readFile(absFilePath) || '').trim();
89
+ }
90
+ }
91
+ return [4 /*yield*/, client.syncAction(files, initalParams)];
92
+ case 1:
93
+ _a.sent();
94
+ return [2 /*return*/];
95
+ }
96
+ });
97
+ });
98
+ };
99
+ //#endregion
100
+ //#region methods / async init
101
+ CompilerManager.prototype.asyncInit = function (client, initialParams) {
102
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
103
+ var watchers, ignored, watcher;
104
+ var _this = this;
105
+ return tslib_1.__generator(this, function (_a) {
106
+ switch (_a.label) {
107
+ case 0:
108
+ watchers = [];
109
+ ignored = tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(ignoreByDefault), false), tslib_1.__read(client.ignoreFolderPatter), false);
110
+ return [4 /*yield*/, (0, incremental_watcher_1.incrementalWatcher)(client.filesToWatch(), tslib_1.__assign({ name: "[incremental-compiler watcher for ".concat(client.taskName, "]"), ignoreInitial: true, followSymlinks: client.followSymlinks, ignored: ignored }, constants_1.COMPILER_POOLING))];
111
+ case 1:
112
+ watcher = (_a.sent()).on('all', function (event, absoluteFilePath) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
113
+ return tslib_1.__generator(this, function (_a) {
114
+ switch (_a.label) {
115
+ case 0:
116
+ // console.log(`[ic] event ${event}, path: ${absoluteFilePath}`);
117
+ return [4 /*yield*/, this.actionForAsyncEvent(event, absoluteFilePath, client, initialParams)];
118
+ case 1:
119
+ // console.log(`[ic] event ${event}, path: ${absoluteFilePath}`);
120
+ _a.sent();
121
+ return [2 /*return*/];
122
+ }
123
+ });
124
+ }); });
125
+ watchers.push(watcher);
126
+ return [2 /*return*/];
127
+ }
128
+ });
129
+ });
130
+ };
131
+ CompilerManager.prototype.actionForAsyncEvent = function (event, absoluteFilePath, client, initalParams) {
132
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
133
+ var proceeedWithAsyncChange, fileShouldBeCached, currentContent, change;
134
+ return tslib_1.__generator(this, function (_a) {
135
+ switch (_a.label) {
136
+ case 0:
137
+ absoluteFilePath = (0, tnp_core_2.crossPlatformPath)(absoluteFilePath);
138
+ if (event === 'addDir') {
139
+ return [2 /*return*/];
140
+ }
141
+ if (client.lastAsyncFiles.includes(absoluteFilePath)) {
142
+ return [2 /*return*/];
143
+ }
144
+ else {
145
+ client.lastAsyncFiles.push(absoluteFilePath);
146
+ }
147
+ // console.log(`[ic] final event ${event}, path: ${absoluteFilePath}`, 1);
148
+ // console.log('this.clients', this.clients.map(c => c.key))
149
+ if (event === 'unlink' && !client.notifyOnFileUnlink) {
150
+ return [2 /*return*/];
151
+ }
152
+ proceeedWithAsyncChange = true;
153
+ fileShouldBeCached = this.fileShouldBeChecked(absoluteFilePath, client);
154
+ if (!(fileShouldBeCached && event === 'change')) return [3 /*break*/, 2];
155
+ return [4 /*yield*/, tnp_helpers_1.Helpers.tryReadFile(absoluteFilePath)];
156
+ case 1:
157
+ currentContent = ((_a.sent()) || '').trim();
158
+ if (currentContent === this.filesContentCache[absoluteFilePath]) {
159
+ // console.log('FILE THE SAME ' + absoluteFilePath)
160
+ proceeedWithAsyncChange = false;
161
+ }
162
+ else {
163
+ this.filesContentCache[absoluteFilePath] = currentContent;
164
+ }
165
+ _a.label = 2;
166
+ case 2:
167
+ if (!proceeedWithAsyncChange) return [3 /*break*/, 6];
168
+ change = new change_of_file_backend_1.ChangeOfFile(absoluteFilePath, event);
169
+ if (!this.asyncEventScenario) return [3 /*break*/, 4];
170
+ return [4 /*yield*/, this.asyncEventScenario(change)];
171
+ case 3:
172
+ _a.sent();
173
+ _a.label = 4;
174
+ case 4: return [4 /*yield*/, client.asyncAction(change, initalParams)];
175
+ case 5:
176
+ _a.sent();
177
+ _a.label = 6;
178
+ case 6:
179
+ client.lastAsyncFiles = client.lastAsyncFiles.filter(function (ef) { return ef !== absoluteFilePath; });
180
+ return [2 /*return*/];
181
+ }
182
+ });
183
+ });
184
+ };
185
+ //#endregion
186
+ //#region methods / add client
187
+ CompilerManager.prototype.addClient = function (client) {
188
+ // console.log(`Cilent added "${client.key}" folders`, client.folderPath)
189
+ var existed = this.clients.find(function (c) { return c === client; });
190
+ if (existed) {
191
+ tnp_helpers_1.Helpers.log("Task \"".concat(client.taskName, "\" alread added")); // TODO @LAST
192
+ }
193
+ this.clients.push(client);
194
+ };
195
+ //#endregion
196
+ //#region private methods / prevent already inited
197
+ CompilerManager.prototype.preventAlreadyInited = function () {
198
+ if (this.inited) {
199
+ tnp_helpers_1.Helpers.error("Please init Compiler Manager only once:\n CompilerManager.Instance.initScenario( ... async scenario ... );\n ", false, true);
200
+ }
201
+ };
202
+ //#endregion
203
+ //#region private methods / file should be checked
204
+ CompilerManager.prototype.fileShouldBeChecked = function (absFilePath, client) {
205
+ var fileShouldBeCached = !tnp_core_2._.isUndefined(client.folderPathContentCheck.find(function (patterFolder) {
206
+ return (0, tnp_core_2.crossPlatformPath)(absFilePath).startsWith((0, tnp_core_2.crossPlatformPath)(patterFolder));
207
+ }));
208
+ return fileShouldBeCached;
209
+ };
210
+ return CompilerManager;
211
+ }());
212
+ exports.CompilerManager = CompilerManager;
213
+ //# sourceMappingURL=compiler-manager.backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler-manager.backend.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/incremental-compiler/src/lib/compiler-manager.backend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare function AsyncAction(): (target: object, propertyKey: string, propertyDescriptor: PropertyDescriptor) => void;
2
+ export interface IncCompilerClassOptions {
3
+ className: string;
4
+ }
5
+ export declare function IncCompilerClass(options: IncCompilerClassOptions): (target: any) => void;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AsyncAction = AsyncAction;
4
+ exports.IncCompilerClass = IncCompilerClass;
5
+ //#region imports
6
+ var typescript_class_helpers_1 = require("typescript-class-helpers");
7
+ var tnp_core_1 = require("tnp-core");
8
+ var change_of_file_backend_1 = require("./change-of-file.backend");
9
+ var tnp_core_2 = require("tnp-core");
10
+ //#endregion
11
+ function AsyncAction() {
12
+ return function (target, propertyKey, propertyDescriptor) {
13
+ // get original method
14
+ // unsub(void 0, void 0);
15
+ var originalMethod = propertyDescriptor.value;
16
+ // redefine descriptor value within own function block
17
+ propertyDescriptor.value = function () {
18
+ var _this = this;
19
+ var args = [];
20
+ for (var _i = 0; _i < arguments.length; _i++) {
21
+ args[_i] = arguments[_i];
22
+ }
23
+ // log arguments before original function
24
+ // console.log(`${propertyKey} method called with args: ${JSON.stringify(args, null, 2)}`);
25
+ var first = tnp_core_1._.first(args);
26
+ if (first instanceof change_of_file_backend_1.ChangeOfFile) {
27
+ var ex = first.clientsForChange.find(function (f) {
28
+ // console.log(`${CLASS.getNameFromObject(f)} === ${CLASS.getNameFromObject(this)}`)
29
+ return typescript_class_helpers_1.CLASS.getNameFromObject(f) === typescript_class_helpers_1.CLASS.getNameFromObject(_this);
30
+ });
31
+ // console.log('ex', ex)
32
+ if (ex) {
33
+ first.executedFor.push(ex);
34
+ // console.log(`HHHH!!!!! Async Method called fror ${CLASS.getNameFromObject(this)}`);
35
+ }
36
+ }
37
+ // attach original method implementation
38
+ var result = originalMethod.apply(this, args);
39
+ // log result of method
40
+ // console.log(`${propertyKey} method return value: ${JSON.stringify(result)}`);
41
+ return result;
42
+ };
43
+ };
44
+ }
45
+ var instancesNames = [];
46
+ function IncCompilerClass(options) {
47
+ return function (target) {
48
+ var className = options.className;
49
+ if (instancesNames.includes(className)) {
50
+ tnp_core_2.Helpers.warn("Compiler class \"".concat(className, "\" already has instance."), false);
51
+ }
52
+ instancesNames.push(className);
53
+ typescript_class_helpers_1.CLASS.NAME(className)(target);
54
+ };
55
+ }
56
+ //# sourceMappingURL=decorators.backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.backend.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/incremental-compiler/src/lib/decorators.backend.ts"],"names":[],"mappings":";;AAOA,kCAgCC;AAQD,4CASC;AAxDD,iBAAiB;AACjB,qEAAiD;AACjD,qCAA6B;AAC7B,mEAAwD;AACxD,qCAAmC;AACnC,YAAY;AAEZ,SAAgB,WAAW;IACzB,OAAO,UACL,MAAc,EACd,WAAmB,EACnB,kBAAsC;QAEtC,sBAAsB;QACtB,yBAAyB;QACzB,IAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC;QAChD,sDAAsD;QACtD,kBAAkB,CAAC,KAAK,GAAG;YAAA,iBAoB1B;YApBoC,cAAc;iBAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;gBAAd,yBAAc;;YACjD,yCAAyC;YACzC,+FAA+F;YAC/F,IAAM,KAAK,GAAG,YAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,KAAK,YAAY,qCAAY,EAAE,CAAC;gBAClC,IAAM,EAAE,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAA,CAAC;oBACtC,oFAAoF;oBACpF,OAAO,gCAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,gCAAK,CAAC,iBAAiB,CAAC,KAAI,CAAC,CAAA;gBACrE,CAAC,CAAC,CAAC;gBACH,wBAAwB;gBACxB,IAAI,EAAE,EAAE,CAAC;oBACP,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC3B,sFAAsF;gBACxF,CAAC;YACH,CAAC;YACD,wCAAwC;YACxC,IAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAChD,uBAAuB;YACvB,iFAAiF;YACjF,OAAO,MAAM,CAAC;QAChB,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAOD,IAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,SAAgB,gBAAgB,CAAC,OAAgC;IAC/D,OAAO,UAAC,MAAM;QACJ,IAAA,SAAS,GAAK,OAAO,UAAZ,CAAa;QAC9B,IAAI,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,kBAAO,CAAC,IAAI,CAAC,2BAAmB,SAAS,6BAAyB,EAAE,KAAK,CAAC,CAAC;QAC7E,CAAC;QACD,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,gCAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { BaseClientCompiler } from './base-client-compiler.backend';
2
+ export declare function mapForWatching(c: string): string[];
3
+ export declare function clientsBy<T = BaseClientCompiler>(clientNameOrClass: string | Function, condition: (c: T) => boolean, clients: BaseClientCompiler[]): T[];
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mapForWatching = mapForWatching;
4
+ exports.clientsBy = clientsBy;
5
+ var tnp_core_1 = require("tnp-core");
6
+ var typescript_class_helpers_1 = require("typescript-class-helpers");
7
+ //#endregion
8
+ function mapForWatching(c) {
9
+ if (tnp_core_1.fse.existsSync(c) && tnp_core_1.fse.lstatSync(c).isDirectory()) {
10
+ return [c, "".concat(c, "/**/*.*")];
11
+ }
12
+ return [c];
13
+ }
14
+ function clientsBy(clientNameOrClass, condition, clients) {
15
+ if (tnp_core_1._.isFunction(clientNameOrClass)) {
16
+ clientNameOrClass = typescript_class_helpers_1.CLASS.getName(clientNameOrClass);
17
+ }
18
+ return clients.filter(function (cinstance) {
19
+ var classesOk = (typescript_class_helpers_1.CLASS.getNameFromObject(cinstance) === clientNameOrClass);
20
+ if (classesOk) {
21
+ if (tnp_core_1._.isFunction(condition)) {
22
+ return !!condition(cinstance);
23
+ }
24
+ else {
25
+ return true;
26
+ }
27
+ }
28
+ return false;
29
+ });
30
+ }
31
+ //# sourceMappingURL=helpers.backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.backend.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/incremental-compiler/src/lib/helpers.backend.ts"],"names":[],"mappings":";;AASA,wCAKC;AAED,8BAkBC;AA9BD,qCAAkC;AAElC,qEAAiD;AACjD,YAAY;AAEZ,SAAgB,cAAc,CAAC,CAAS;IACtC,IAAI,cAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,cAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACxD,OAAO,CAAC,CAAC,EAAE,UAAG,CAAC,YAAS,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,CAAC,CAAC,CAAC,CAAC;AACb,CAAC;AAED,SAAgB,SAAS,CAAyB,iBAAoC,EACpF,SAA4B,EAAE,OAA6B;IAE3D,IAAI,YAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACpC,iBAAiB,GAAG,gCAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IACtD,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,CAAC,UAAA,SAAS;QAC7B,IAAM,SAAS,GAAG,CAAC,gCAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,iBAAiB,CAAC,CAAC;QAC7E,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,YAAC,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,CAAC,SAAS,CAAC,SAAgB,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAQ,CAAC;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "incremental-compiler",
3
- "version": "19.0.9",
3
+ "version": "19.0.10",
4
4
  "license": "MIT",
5
5
  "author": "Dariusz Filipiak",
6
6
  "private": false,
@@ -24,12 +24,12 @@
24
24
  "releaseType": "manual",
25
25
  "targetArtifact": "npm-lib-and-cli-tool",
26
26
  "envName": "__",
27
- "resolvedNewVersion": "19.0.9"
27
+ "resolvedNewVersion": "19.0.10"
28
28
  },
29
29
  "copyToManager": {},
30
30
  "buildInfo": {
31
- "date": "2025-05-02T20:20:36.000Z",
32
- "hash": "b6597f6c13431b11ac327fced716a7c99fa362ca"
31
+ "date": "2025-05-06T22:10:03.000Z",
32
+ "hash": "abc040cec02e3d8cc3ba21eb4ec46b6b977d20b0"
33
33
  },
34
34
  "currentProjectName": "incremental-compiler",
35
35
  "currentProjectType": "isomorphic-lib",
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jcmVtZW50YWwtY29tcGlsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvaW5jcmVtZW50YWwtY29tcGlsZXIvcHJvamVjdHMvaW5jcmVtZW50YWwtY29tcGlsZXIvc3JjL2luY3JlbWVudGFsLWNvbXBpbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=