@depup/angular-devkit__core 21.2.2-depup.0
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.
- package/LICENSE +21 -0
- package/README.md +25 -0
- package/changes.json +5 -0
- package/index.d.ts +8 -0
- package/index.js +25 -0
- package/index.js.map +1 -0
- package/node/cli-logger.d.ts +15 -0
- package/node/cli-logger.js +58 -0
- package/node/cli-logger.js.map +1 -0
- package/node/host.d.ts +43 -0
- package/node/host.js +211 -0
- package/node/host.js.map +1 -0
- package/node/index.d.ts +9 -0
- package/node/index.js +26 -0
- package/node/index.js.map +1 -0
- package/node/testing/index.d.ts +20 -0
- package/node/testing/index.js +90 -0
- package/node/testing/index.js.map +1 -0
- package/package.json +76 -0
- package/src/exception.d.ts +25 -0
- package/src/exception.js +48 -0
- package/src/exception.js.map +1 -0
- package/src/index.d.ts +15 -0
- package/src/index.js +57 -0
- package/src/index.js.map +1 -0
- package/src/json/index.d.ts +10 -0
- package/src/json/index.js +50 -0
- package/src/json/index.js.map +1 -0
- package/src/json/schema/index.d.ts +15 -0
- package/src/json/schema/index.js +55 -0
- package/src/json/schema/index.js.map +1 -0
- package/src/json/schema/interface.d.ts +84 -0
- package/src/json/schema/interface.js +10 -0
- package/src/json/schema/interface.js.map +1 -0
- package/src/json/schema/pointer.d.ts +11 -0
- package/src/json/schema/pointer.js +39 -0
- package/src/json/schema/pointer.js.map +1 -0
- package/src/json/schema/registry.d.ts +79 -0
- package/src/json/schema/registry.js +565 -0
- package/src/json/schema/registry.js.map +1 -0
- package/src/json/schema/schema.d.ts +22 -0
- package/src/json/schema/schema.js +52 -0
- package/src/json/schema/schema.js.map +1 -0
- package/src/json/schema/transforms.d.ts +12 -0
- package/src/json/schema/transforms.js +101 -0
- package/src/json/schema/transforms.js.map +1 -0
- package/src/json/schema/utility.d.ts +9 -0
- package/src/json/schema/utility.js +88 -0
- package/src/json/schema/utility.js.map +1 -0
- package/src/json/schema/visitor.d.ts +34 -0
- package/src/json/schema/visitor.js +147 -0
- package/src/json/schema/visitor.js.map +1 -0
- package/src/json/utils.d.ts +15 -0
- package/src/json/utils.js +18 -0
- package/src/json/utils.js.map +1 -0
- package/src/logger/indent.d.ts +11 -0
- package/src/logger/indent.js +41 -0
- package/src/logger/indent.js.map +1 -0
- package/src/logger/index.d.ts +12 -0
- package/src/logger/index.js +29 -0
- package/src/logger/index.js.map +1 -0
- package/src/logger/level.d.ts +28 -0
- package/src/logger/level.js +51 -0
- package/src/logger/level.js.map +1 -0
- package/src/logger/logger.d.ts +55 -0
- package/src/logger/logger.js +123 -0
- package/src/logger/logger.js.map +1 -0
- package/src/logger/null-logger.d.ts +12 -0
- package/src/logger/null-logger.js +31 -0
- package/src/logger/null-logger.js.map +1 -0
- package/src/logger/transform-logger.d.ts +12 -0
- package/src/logger/transform-logger.js +19 -0
- package/src/logger/transform-logger.js.map +1 -0
- package/src/utils/index.d.ts +15 -0
- package/src/utils/index.js +56 -0
- package/src/utils/index.js.map +1 -0
- package/src/utils/lang.d.ts +11 -0
- package/src/utils/lang.js +21 -0
- package/src/utils/lang.js.map +1 -0
- package/src/utils/literals.d.ts +15 -0
- package/src/utils/literals.js +59 -0
- package/src/utils/literals.js.map +1 -0
- package/src/utils/object.d.ts +8 -0
- package/src/utils/object.js +37 -0
- package/src/utils/object.js.map +1 -0
- package/src/utils/partially-ordered-set.d.ts +38 -0
- package/src/utils/partially-ordered-set.js +145 -0
- package/src/utils/partially-ordered-set.js.map +1 -0
- package/src/utils/priority-queue.d.ts +19 -0
- package/src/utils/priority-queue.js +50 -0
- package/src/utils/priority-queue.js.map +1 -0
- package/src/utils/strings.d.ts +112 -0
- package/src/utils/strings.js +179 -0
- package/src/utils/strings.js.map +1 -0
- package/src/utils/template.d.ts +89 -0
- package/src/utils/template.js +260 -0
- package/src/utils/template.js.map +1 -0
- package/src/virtual-fs/host/alias.d.ts +60 -0
- package/src/virtual-fs/host/alias.js +84 -0
- package/src/virtual-fs/host/alias.js.map +1 -0
- package/src/virtual-fs/host/buffer.d.ts +10 -0
- package/src/virtual-fs/host/buffer.js +22 -0
- package/src/virtual-fs/host/buffer.js.map +1 -0
- package/src/virtual-fs/host/create.d.ts +21 -0
- package/src/virtual-fs/host/create.js +55 -0
- package/src/virtual-fs/host/create.js.map +1 -0
- package/src/virtual-fs/host/empty.d.ts +19 -0
- package/src/virtual-fs/host/empty.js +38 -0
- package/src/virtual-fs/host/empty.js.map +1 -0
- package/src/virtual-fs/host/index.d.ts +21 -0
- package/src/virtual-fs/host/index.js +61 -0
- package/src/virtual-fs/host/index.js.map +1 -0
- package/src/virtual-fs/host/interface.d.ts +53 -0
- package/src/virtual-fs/host/interface.js +18 -0
- package/src/virtual-fs/host/interface.js.map +1 -0
- package/src/virtual-fs/host/memory.d.ts +49 -0
- package/src/virtual-fs/host/memory.js +332 -0
- package/src/virtual-fs/host/memory.js.map +1 -0
- package/src/virtual-fs/host/pattern.d.ts +17 -0
- package/src/virtual-fs/host/pattern.js +35 -0
- package/src/virtual-fs/host/pattern.js.map +1 -0
- package/src/virtual-fs/host/record.d.ts +92 -0
- package/src/virtual-fs/host/record.js +315 -0
- package/src/virtual-fs/host/record.js.map +1 -0
- package/src/virtual-fs/host/resolver.d.ts +30 -0
- package/src/virtual-fs/host/resolver.js +57 -0
- package/src/virtual-fs/host/resolver.js.map +1 -0
- package/src/virtual-fs/host/safe.d.ts +25 -0
- package/src/virtual-fs/host/safe.js +46 -0
- package/src/virtual-fs/host/safe.js.map +1 -0
- package/src/virtual-fs/host/scoped.d.ts +15 -0
- package/src/virtual-fs/host/scoped.js +24 -0
- package/src/virtual-fs/host/scoped.js.map +1 -0
- package/src/virtual-fs/host/sync.d.ts +34 -0
- package/src/virtual-fs/host/sync.js +93 -0
- package/src/virtual-fs/host/sync.js.map +1 -0
- package/src/virtual-fs/host/test.d.ts +48 -0
- package/src/virtual-fs/host/test.js +119 -0
- package/src/virtual-fs/host/test.js.map +1 -0
- package/src/virtual-fs/index.d.ts +10 -0
- package/src/virtual-fs/index.js +50 -0
- package/src/virtual-fs/index.js.map +1 -0
- package/src/virtual-fs/path.d.ts +111 -0
- package/src/virtual-fs/path.js +286 -0
- package/src/virtual-fs/path.js.map +1 -0
- package/src/workspace/core.d.ts +61 -0
- package/src/workspace/core.js +133 -0
- package/src/workspace/core.js.map +1 -0
- package/src/workspace/definitions.d.ts +63 -0
- package/src/workspace/definitions.js +169 -0
- package/src/workspace/definitions.js.map +1 -0
- package/src/workspace/host.d.ts +15 -0
- package/src/workspace/host.js +43 -0
- package/src/workspace/host.js.map +1 -0
- package/src/workspace/index.d.ts +10 -0
- package/src/workspace/index.js +32 -0
- package/src/workspace/index.js.map +1 -0
- package/src/workspace/json/metadata.d.ts +40 -0
- package/src/workspace/json/metadata.js +60 -0
- package/src/workspace/json/metadata.js.map +1 -0
- package/src/workspace/json/reader.d.ts +14 -0
- package/src/workspace/json/reader.js +231 -0
- package/src/workspace/json/reader.js.map +1 -0
- package/src/workspace/json/utilities.d.ts +14 -0
- package/src/workspace/json/utilities.js +113 -0
- package/src/workspace/json/utilities.js.map +1 -0
- package/src/workspace/json/writer.d.ts +12 -0
- package/src/workspace/json/writer.js +145 -0
- package/src/workspace/json/writer.js.map +1 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2010-2026 Google LLC. https://angular.dev/license
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# @depup/angular-devkit__core
|
|
2
|
+
|
|
3
|
+
> Dependency-bumped version of [@angular-devkit/core](https://www.npmjs.com/package/@angular-devkit/core)
|
|
4
|
+
|
|
5
|
+
Generated by [DepUp](https://github.com/depup/npm) -- all production
|
|
6
|
+
dependencies bumped to latest versions.
|
|
7
|
+
|
|
8
|
+
## Installation
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
npm install @depup/angular-devkit__core
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
| Field | Value |
|
|
15
|
+
|-------|-------|
|
|
16
|
+
| Original | [@angular-devkit/core](https://www.npmjs.com/package/@angular-devkit/core) @ 21.2.2 |
|
|
17
|
+
| Processed | 2026-03-17 |
|
|
18
|
+
| Smoke test | passed |
|
|
19
|
+
| Deps updated | 0 |
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
Source: https://github.com/depup/npm | Original: https://www.npmjs.com/package/@angular-devkit/core
|
|
24
|
+
|
|
25
|
+
License inherited from the original package.
|
package/changes.json
ADDED
package/index.d.ts
ADDED
package/index.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
21
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
__exportStar(require("./src/index"), exports);
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;AAEH,8CAA4B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import { logging } from '../src';
|
|
9
|
+
export interface ProcessOutput {
|
|
10
|
+
write(buffer: string | Buffer): boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* A Logger that sends information to STDOUT and STDERR.
|
|
14
|
+
*/
|
|
15
|
+
export declare function createConsoleLogger(verbose?: boolean, stdout?: ProcessOutput, stderr?: ProcessOutput, colors?: Partial<Record<logging.LogLevel, (s: string) => string>>): logging.Logger;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.createConsoleLogger = createConsoleLogger;
|
|
11
|
+
const rxjs_1 = require("rxjs");
|
|
12
|
+
const src_1 = require("../src");
|
|
13
|
+
/**
|
|
14
|
+
* A Logger that sends information to STDOUT and STDERR.
|
|
15
|
+
*/
|
|
16
|
+
function createConsoleLogger(verbose = false, stdout = process.stdout, stderr = process.stderr, colors) {
|
|
17
|
+
const logger = new src_1.logging.IndentLogger('cling');
|
|
18
|
+
logger.pipe((0, rxjs_1.filter)((entry) => entry.level !== 'debug' || verbose)).subscribe((entry) => {
|
|
19
|
+
const color = colors && colors[entry.level];
|
|
20
|
+
let output = stdout;
|
|
21
|
+
switch (entry.level) {
|
|
22
|
+
case 'warn':
|
|
23
|
+
case 'fatal':
|
|
24
|
+
case 'error':
|
|
25
|
+
output = stderr;
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
// If we do console.log(message) or process.stdout.write(message + '\n'), the process might
|
|
29
|
+
// stop before the whole message is written and the stream is flushed. This happens when
|
|
30
|
+
// streams are asynchronous.
|
|
31
|
+
//
|
|
32
|
+
// NodeJS IO streams are different depending on platform and usage. In POSIX environment,
|
|
33
|
+
// for example, they're asynchronous when writing to a pipe, but synchronous when writing
|
|
34
|
+
// to a TTY. In windows, it's the other way around. You can verify which is which with
|
|
35
|
+
// stream.isTTY and platform, but this is not good enough.
|
|
36
|
+
// In the async case, one should wait for the callback before sending more data or
|
|
37
|
+
// continuing the process. In our case it would be rather hard to do (but not impossible).
|
|
38
|
+
//
|
|
39
|
+
// Instead we take the easy way out and simply chunk the message and call the write
|
|
40
|
+
// function while the buffer drain itself asynchronously. With a smaller chunk size than
|
|
41
|
+
// the buffer, we are mostly certain that it works. In this case, the chunk has been picked
|
|
42
|
+
// as half a page size (4096/2 = 2048), minus some bytes for the color formatting.
|
|
43
|
+
// On POSIX it seems the buffer is 2 pages (8192), but just to be sure (could be different
|
|
44
|
+
// by platform).
|
|
45
|
+
//
|
|
46
|
+
// For more details, see https://nodejs.org/api/process.html#process_a_note_on_process_i_o
|
|
47
|
+
const chunkSize = 2000; // Small chunk.
|
|
48
|
+
let message = entry.message;
|
|
49
|
+
while (message) {
|
|
50
|
+
const chunk = message.slice(0, chunkSize);
|
|
51
|
+
message = message.slice(chunkSize);
|
|
52
|
+
output.write(color ? color(chunk) : chunk);
|
|
53
|
+
}
|
|
54
|
+
output.write('\n');
|
|
55
|
+
});
|
|
56
|
+
return logger;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=cli-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-logger.js","sourceRoot":"","sources":["cli-logger.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAYH,kDAkDC;AA5DD,+BAA8B;AAC9B,gCAAiC;AAMjC;;GAEG;AACH,SAAgB,mBAAmB,CACjC,OAAO,GAAG,KAAK,EACf,SAAwB,OAAO,CAAC,MAAM,EACtC,SAAwB,OAAO,CAAC,MAAM,EACtC,MAAiE;IAEjE,MAAM,MAAM,GAAG,IAAI,aAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAEjD,MAAM,CAAC,IAAI,CAAC,IAAA,aAAM,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QACrF,MAAM,KAAK,GAAG,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,MAAM,GAAG,MAAM,CAAC;QAEpB,QAAQ,KAAK,CAAC,KAAK,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC;YACZ,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACV,MAAM,GAAG,MAAM,CAAC;gBAChB,MAAM;QACV,CAAC;QAED,2FAA2F;QAC3F,wFAAwF;QACxF,4BAA4B;QAC5B,EAAE;QACF,yFAAyF;QACzF,yFAAyF;QACzF,sFAAsF;QACtF,0DAA0D;QAC1D,kFAAkF;QAClF,0FAA0F;QAC1F,EAAE;QACF,mFAAmF;QACnF,wFAAwF;QACxF,2FAA2F;QAC3F,kFAAkF;QAClF,0FAA0F;QAC1F,gBAAgB;QAChB,EAAE;QACF,0FAA0F;QAC1F,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,eAAe;QACvC,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC5B,OAAO,OAAO,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YAC1C,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/node/host.d.ts
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import { Stats } from 'node:fs';
|
|
9
|
+
import { Observable } from 'rxjs';
|
|
10
|
+
import { Path, PathFragment, virtualFs } from '../src';
|
|
11
|
+
/**
|
|
12
|
+
* An implementation of the Virtual FS using Node as the background. There are two versions; one
|
|
13
|
+
* synchronous and one asynchronous.
|
|
14
|
+
*/
|
|
15
|
+
export declare class NodeJsAsyncHost implements virtualFs.Host<Stats> {
|
|
16
|
+
get capabilities(): virtualFs.HostCapabilities;
|
|
17
|
+
write(path: Path, content: virtualFs.FileBuffer): Observable<void>;
|
|
18
|
+
read(path: Path): Observable<virtualFs.FileBuffer>;
|
|
19
|
+
delete(path: Path): Observable<void>;
|
|
20
|
+
rename(from: Path, to: Path): Observable<void>;
|
|
21
|
+
list(path: Path): Observable<PathFragment[]>;
|
|
22
|
+
exists(path: Path): Observable<boolean>;
|
|
23
|
+
isDirectory(path: Path): Observable<boolean>;
|
|
24
|
+
isFile(path: Path): Observable<boolean>;
|
|
25
|
+
stat(path: Path): Observable<virtualFs.Stats<Stats>>;
|
|
26
|
+
watch(path: Path, _options?: virtualFs.HostWatchOptions): Observable<virtualFs.HostWatchEvent> | null;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* An implementation of the Virtual FS using Node as the backend, synchronously.
|
|
30
|
+
*/
|
|
31
|
+
export declare class NodeJsSyncHost implements virtualFs.Host<Stats> {
|
|
32
|
+
get capabilities(): virtualFs.HostCapabilities;
|
|
33
|
+
write(path: Path, content: virtualFs.FileBuffer): Observable<void>;
|
|
34
|
+
read(path: Path): Observable<virtualFs.FileBuffer>;
|
|
35
|
+
delete(path: Path): Observable<void>;
|
|
36
|
+
rename(from: Path, to: Path): Observable<void>;
|
|
37
|
+
list(path: Path): Observable<PathFragment[]>;
|
|
38
|
+
exists(path: Path): Observable<boolean>;
|
|
39
|
+
isDirectory(path: Path): Observable<boolean>;
|
|
40
|
+
isFile(path: Path): Observable<boolean>;
|
|
41
|
+
stat(path: Path): Observable<virtualFs.Stats<Stats>>;
|
|
42
|
+
watch(path: Path, _options?: virtualFs.HostWatchOptions): Observable<virtualFs.HostWatchEvent> | null;
|
|
43
|
+
}
|
package/node/host.js
ADDED
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.NodeJsSyncHost = exports.NodeJsAsyncHost = void 0;
|
|
11
|
+
const node_fs_1 = require("node:fs");
|
|
12
|
+
const node_path_1 = require("node:path");
|
|
13
|
+
const rxjs_1 = require("rxjs");
|
|
14
|
+
const src_1 = require("../src");
|
|
15
|
+
async function exists(path) {
|
|
16
|
+
try {
|
|
17
|
+
await node_fs_1.promises.access(path, node_fs_1.constants.F_OK);
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
// This will only be initialized if the watch() method is called.
|
|
25
|
+
// Otherwise chokidar appears only in type positions, and shouldn't be referenced
|
|
26
|
+
// in the JavaScript output.
|
|
27
|
+
let FSWatcher;
|
|
28
|
+
function loadFSWatcher() {
|
|
29
|
+
if (!FSWatcher) {
|
|
30
|
+
try {
|
|
31
|
+
FSWatcher = require('chokidar').FSWatcher;
|
|
32
|
+
}
|
|
33
|
+
catch (e) {
|
|
34
|
+
if (e.code !== 'MODULE_NOT_FOUND') {
|
|
35
|
+
throw new Error('As of angular-devkit version 8.0, the "chokidar" package ' +
|
|
36
|
+
'must be installed in order to use watch() features.');
|
|
37
|
+
}
|
|
38
|
+
throw e;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* An implementation of the Virtual FS using Node as the background. There are two versions; one
|
|
44
|
+
* synchronous and one asynchronous.
|
|
45
|
+
*/
|
|
46
|
+
class NodeJsAsyncHost {
|
|
47
|
+
get capabilities() {
|
|
48
|
+
return { synchronous: false };
|
|
49
|
+
}
|
|
50
|
+
write(path, content) {
|
|
51
|
+
return (0, rxjs_1.from)(node_fs_1.promises.mkdir((0, src_1.getSystemPath)((0, src_1.dirname)(path)), { recursive: true })).pipe((0, rxjs_1.mergeMap)(() => node_fs_1.promises.writeFile((0, src_1.getSystemPath)(path), new Uint8Array(content))));
|
|
52
|
+
}
|
|
53
|
+
read(path) {
|
|
54
|
+
return (0, rxjs_1.from)(node_fs_1.promises.readFile((0, src_1.getSystemPath)(path))).pipe((0, rxjs_1.map)((buffer) => new Uint8Array(buffer).buffer));
|
|
55
|
+
}
|
|
56
|
+
delete(path) {
|
|
57
|
+
return (0, rxjs_1.from)(node_fs_1.promises.rm((0, src_1.getSystemPath)(path), { force: true, recursive: true, maxRetries: 3 }));
|
|
58
|
+
}
|
|
59
|
+
rename(from, to) {
|
|
60
|
+
return (0, rxjs_1.from)(node_fs_1.promises.rename((0, src_1.getSystemPath)(from), (0, src_1.getSystemPath)(to)));
|
|
61
|
+
}
|
|
62
|
+
list(path) {
|
|
63
|
+
return (0, rxjs_1.from)(node_fs_1.promises.readdir((0, src_1.getSystemPath)(path))).pipe((0, rxjs_1.map)((names) => names.map((name) => (0, src_1.fragment)(name))));
|
|
64
|
+
}
|
|
65
|
+
exists(path) {
|
|
66
|
+
return (0, rxjs_1.from)(exists((0, src_1.getSystemPath)(path)));
|
|
67
|
+
}
|
|
68
|
+
isDirectory(path) {
|
|
69
|
+
return this.stat(path).pipe((0, rxjs_1.map)((stat) => stat.isDirectory()));
|
|
70
|
+
}
|
|
71
|
+
isFile(path) {
|
|
72
|
+
return this.stat(path).pipe((0, rxjs_1.map)((stat) => stat.isFile()));
|
|
73
|
+
}
|
|
74
|
+
// Some hosts may not support stat.
|
|
75
|
+
stat(path) {
|
|
76
|
+
return (0, rxjs_1.from)(node_fs_1.promises.stat((0, src_1.getSystemPath)(path)));
|
|
77
|
+
}
|
|
78
|
+
// Some hosts may not support watching.
|
|
79
|
+
watch(path, _options) {
|
|
80
|
+
return new rxjs_1.Observable((obs) => {
|
|
81
|
+
loadFSWatcher();
|
|
82
|
+
const watcher = new FSWatcher({ persistent: true });
|
|
83
|
+
watcher.add((0, src_1.getSystemPath)(path));
|
|
84
|
+
watcher
|
|
85
|
+
.on('change', (path) => {
|
|
86
|
+
obs.next({
|
|
87
|
+
path: (0, src_1.normalize)(path),
|
|
88
|
+
time: new Date(),
|
|
89
|
+
type: src_1.virtualFs.HostWatchEventType.Changed,
|
|
90
|
+
});
|
|
91
|
+
})
|
|
92
|
+
.on('add', (path) => {
|
|
93
|
+
obs.next({
|
|
94
|
+
path: (0, src_1.normalize)(path),
|
|
95
|
+
time: new Date(),
|
|
96
|
+
type: src_1.virtualFs.HostWatchEventType.Created,
|
|
97
|
+
});
|
|
98
|
+
})
|
|
99
|
+
.on('unlink', (path) => {
|
|
100
|
+
obs.next({
|
|
101
|
+
path: (0, src_1.normalize)(path),
|
|
102
|
+
time: new Date(),
|
|
103
|
+
type: src_1.virtualFs.HostWatchEventType.Deleted,
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
return () => {
|
|
107
|
+
void watcher.close();
|
|
108
|
+
};
|
|
109
|
+
}).pipe((0, rxjs_1.publish)(), (0, rxjs_1.refCount)());
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
exports.NodeJsAsyncHost = NodeJsAsyncHost;
|
|
113
|
+
/**
|
|
114
|
+
* An implementation of the Virtual FS using Node as the backend, synchronously.
|
|
115
|
+
*/
|
|
116
|
+
class NodeJsSyncHost {
|
|
117
|
+
get capabilities() {
|
|
118
|
+
return { synchronous: true };
|
|
119
|
+
}
|
|
120
|
+
write(path, content) {
|
|
121
|
+
return new rxjs_1.Observable((obs) => {
|
|
122
|
+
(0, node_fs_1.mkdirSync)((0, src_1.getSystemPath)((0, src_1.dirname)(path)), { recursive: true });
|
|
123
|
+
(0, node_fs_1.writeFileSync)((0, src_1.getSystemPath)(path), new Uint8Array(content));
|
|
124
|
+
obs.next();
|
|
125
|
+
obs.complete();
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
read(path) {
|
|
129
|
+
return new rxjs_1.Observable((obs) => {
|
|
130
|
+
const buffer = (0, node_fs_1.readFileSync)((0, src_1.getSystemPath)(path));
|
|
131
|
+
obs.next(new Uint8Array(buffer).buffer);
|
|
132
|
+
obs.complete();
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
delete(path) {
|
|
136
|
+
return new rxjs_1.Observable((obs) => {
|
|
137
|
+
(0, node_fs_1.rmSync)((0, src_1.getSystemPath)(path), { force: true, recursive: true, maxRetries: 3 });
|
|
138
|
+
obs.complete();
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
rename(from, to) {
|
|
142
|
+
return new rxjs_1.Observable((obs) => {
|
|
143
|
+
const toSystemPath = (0, src_1.getSystemPath)(to);
|
|
144
|
+
(0, node_fs_1.mkdirSync)((0, node_path_1.dirname)(toSystemPath), { recursive: true });
|
|
145
|
+
(0, node_fs_1.renameSync)((0, src_1.getSystemPath)(from), toSystemPath);
|
|
146
|
+
obs.next();
|
|
147
|
+
obs.complete();
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
list(path) {
|
|
151
|
+
return new rxjs_1.Observable((obs) => {
|
|
152
|
+
const names = (0, node_fs_1.readdirSync)((0, src_1.getSystemPath)(path));
|
|
153
|
+
obs.next(names.map((name) => (0, src_1.fragment)(name)));
|
|
154
|
+
obs.complete();
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
exists(path) {
|
|
158
|
+
return new rxjs_1.Observable((obs) => {
|
|
159
|
+
obs.next((0, node_fs_1.existsSync)((0, src_1.getSystemPath)(path)));
|
|
160
|
+
obs.complete();
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
isDirectory(path) {
|
|
164
|
+
return this.stat(path).pipe((0, rxjs_1.map)((stat) => stat.isDirectory()));
|
|
165
|
+
}
|
|
166
|
+
isFile(path) {
|
|
167
|
+
return this.stat(path).pipe((0, rxjs_1.map)((stat) => stat.isFile()));
|
|
168
|
+
}
|
|
169
|
+
// Some hosts may not support stat.
|
|
170
|
+
stat(path) {
|
|
171
|
+
return new rxjs_1.Observable((obs) => {
|
|
172
|
+
obs.next((0, node_fs_1.statSync)((0, src_1.getSystemPath)(path)));
|
|
173
|
+
obs.complete();
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
// Some hosts may not support watching.
|
|
177
|
+
watch(path, _options) {
|
|
178
|
+
return new rxjs_1.Observable((obs) => {
|
|
179
|
+
loadFSWatcher();
|
|
180
|
+
const watcher = new FSWatcher({ persistent: false });
|
|
181
|
+
watcher.add((0, src_1.getSystemPath)(path));
|
|
182
|
+
watcher
|
|
183
|
+
.on('change', (path) => {
|
|
184
|
+
obs.next({
|
|
185
|
+
path: (0, src_1.normalize)(path),
|
|
186
|
+
time: new Date(),
|
|
187
|
+
type: src_1.virtualFs.HostWatchEventType.Changed,
|
|
188
|
+
});
|
|
189
|
+
})
|
|
190
|
+
.on('add', (path) => {
|
|
191
|
+
obs.next({
|
|
192
|
+
path: (0, src_1.normalize)(path),
|
|
193
|
+
time: new Date(),
|
|
194
|
+
type: src_1.virtualFs.HostWatchEventType.Created,
|
|
195
|
+
});
|
|
196
|
+
})
|
|
197
|
+
.on('unlink', (path) => {
|
|
198
|
+
obs.next({
|
|
199
|
+
path: (0, src_1.normalize)(path),
|
|
200
|
+
time: new Date(),
|
|
201
|
+
type: src_1.virtualFs.HostWatchEventType.Deleted,
|
|
202
|
+
});
|
|
203
|
+
});
|
|
204
|
+
return () => {
|
|
205
|
+
void watcher.close();
|
|
206
|
+
};
|
|
207
|
+
}).pipe((0, rxjs_1.publish)(), (0, rxjs_1.refCount)());
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
exports.NodeJsSyncHost = NodeJsSyncHost;
|
|
211
|
+
//# sourceMappingURL=host.js.map
|
package/node/host.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["host.ts"],"names":[],"mappings":"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"}
|
package/node/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
export * from './cli-logger';
|
|
9
|
+
export * from './host';
|
package/node/index.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
21
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
__exportStar(require("./cli-logger"), exports);
|
|
25
|
+
__exportStar(require("./host"), exports);
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;AAEH,+CAA6B;AAC7B,yCAAuB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import * as fs from 'node:fs';
|
|
9
|
+
import { Path, virtualFs } from '../../src';
|
|
10
|
+
/**
|
|
11
|
+
* A Sync Scoped Host that creates a temporary directory and scope to it.
|
|
12
|
+
*/
|
|
13
|
+
export declare class TempScopedNodeJsSyncHost extends virtualFs.ScopedHost<fs.Stats> {
|
|
14
|
+
protected _sync?: virtualFs.SyncDelegateHost<fs.Stats>;
|
|
15
|
+
protected _root: Path;
|
|
16
|
+
constructor();
|
|
17
|
+
get files(): Path[];
|
|
18
|
+
get root(): Path;
|
|
19
|
+
get sync(): virtualFs.SyncDelegateHost<fs.Stats>;
|
|
20
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
exports.TempScopedNodeJsSyncHost = void 0;
|
|
44
|
+
const crypto = __importStar(require("node:crypto"));
|
|
45
|
+
const fs = __importStar(require("node:fs"));
|
|
46
|
+
const os = __importStar(require("node:os"));
|
|
47
|
+
const path = __importStar(require("node:path"));
|
|
48
|
+
const src_1 = require("../../src");
|
|
49
|
+
const host_1 = require("../host");
|
|
50
|
+
/**
|
|
51
|
+
* A Sync Scoped Host that creates a temporary directory and scope to it.
|
|
52
|
+
*/
|
|
53
|
+
class TempScopedNodeJsSyncHost extends src_1.virtualFs.ScopedHost {
|
|
54
|
+
_sync;
|
|
55
|
+
_root;
|
|
56
|
+
constructor() {
|
|
57
|
+
const root = (0, src_1.normalize)(path.join(os.tmpdir(), `devkit-host-${crypto.randomUUID()}-${process.pid}`));
|
|
58
|
+
fs.mkdirSync((0, src_1.getSystemPath)(root));
|
|
59
|
+
super(new host_1.NodeJsSyncHost(), root);
|
|
60
|
+
this._root = root;
|
|
61
|
+
}
|
|
62
|
+
get files() {
|
|
63
|
+
const sync = this.sync;
|
|
64
|
+
function _visit(p) {
|
|
65
|
+
return sync
|
|
66
|
+
.list(p)
|
|
67
|
+
.map((fragment) => (0, src_1.join)(p, fragment))
|
|
68
|
+
.reduce((files, path) => {
|
|
69
|
+
if (sync.isDirectory(path)) {
|
|
70
|
+
return files.concat(_visit(path));
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
return files.concat(path);
|
|
74
|
+
}
|
|
75
|
+
}, []);
|
|
76
|
+
}
|
|
77
|
+
return _visit((0, src_1.normalize)('/'));
|
|
78
|
+
}
|
|
79
|
+
get root() {
|
|
80
|
+
return this._root;
|
|
81
|
+
}
|
|
82
|
+
get sync() {
|
|
83
|
+
if (!this._sync) {
|
|
84
|
+
this._sync = new src_1.virtualFs.SyncDelegateHost(this);
|
|
85
|
+
}
|
|
86
|
+
return this._sync;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
exports.TempScopedNodeJsSyncHost = TempScopedNodeJsSyncHost;
|
|
90
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,oDAAsC;AACtC,4CAA8B;AAC9B,4CAA8B;AAC9B,gDAAkC;AAClC,mCAA4E;AAC5E,kCAAyC;AAEzC;;GAEG;AACH,MAAa,wBAAyB,SAAQ,eAAS,CAAC,UAAoB;IAChE,KAAK,CAAwC;IACpC,KAAK,CAAO;IAE/B;QACE,MAAM,IAAI,GAAG,IAAA,eAAS,EACpB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,eAAe,MAAM,CAAC,UAAU,EAAE,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAC5E,CAAC;QACF,EAAE,CAAC,SAAS,CAAC,IAAA,mBAAa,EAAC,IAAI,CAAC,CAAC,CAAC;QAElC,KAAK,CAAC,IAAI,qBAAc,EAAE,EAAE,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,IAAI,KAAK;QACP,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,SAAS,MAAM,CAAC,CAAO;YACrB,OAAO,IAAI;iBACR,IAAI,CAAC,CAAC,CAAC;iBACP,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAA,UAAI,EAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;iBACpC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3B,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpC,CAAC;qBAAM,CAAC;oBACN,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC,EAAE,EAAY,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,MAAM,CAAC,IAAA,eAAS,EAAC,GAAG,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IACD,IAAI,IAAI;QACN,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,IAAI,eAAS,CAAC,gBAAgB,CAAW,IAAI,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AA1CD,4DA0CC"}
|