@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
|
@@ -0,0 +1,12 @@
|
|
|
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 { JsonValue } from '../utils';
|
|
9
|
+
import { JsonPointer } from './interface';
|
|
10
|
+
import { JsonSchema } from './schema';
|
|
11
|
+
export declare function addUndefinedObjectDefaults(value: JsonValue, _pointer: JsonPointer, schema?: JsonSchema): JsonValue;
|
|
12
|
+
export declare function addUndefinedDefaults(value: JsonValue, _pointer: JsonPointer, schema?: JsonSchema): JsonValue;
|
|
@@ -0,0 +1,101 @@
|
|
|
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.addUndefinedObjectDefaults = addUndefinedObjectDefaults;
|
|
11
|
+
exports.addUndefinedDefaults = addUndefinedDefaults;
|
|
12
|
+
const utils_1 = require("../utils");
|
|
13
|
+
const utility_1 = require("./utility");
|
|
14
|
+
function addUndefinedObjectDefaults(value, _pointer, schema) {
|
|
15
|
+
return transformUndefined(value, _pointer, schema, true);
|
|
16
|
+
}
|
|
17
|
+
function addUndefinedDefaults(value, _pointer, schema) {
|
|
18
|
+
return transformUndefined(value, _pointer, schema, false);
|
|
19
|
+
}
|
|
20
|
+
function transformUndefined(value, _pointer, schema, onlyObjects) {
|
|
21
|
+
if (typeof schema === 'boolean' || schema === undefined) {
|
|
22
|
+
return value;
|
|
23
|
+
}
|
|
24
|
+
value ??= schema.default;
|
|
25
|
+
const types = (0, utility_1.getTypesOfSchema)(schema);
|
|
26
|
+
if (types.size === 0) {
|
|
27
|
+
return value;
|
|
28
|
+
}
|
|
29
|
+
let type;
|
|
30
|
+
if (types.size === 1) {
|
|
31
|
+
// only one potential type
|
|
32
|
+
type = Array.from(types)[0];
|
|
33
|
+
}
|
|
34
|
+
else if (types.size === 2 && types.has('array') && types.has('object')) {
|
|
35
|
+
// need to create one of them and array is simpler
|
|
36
|
+
type = 'array';
|
|
37
|
+
}
|
|
38
|
+
else if (schema.properties && types.has('object')) {
|
|
39
|
+
// assume object
|
|
40
|
+
type = 'object';
|
|
41
|
+
}
|
|
42
|
+
else if (schema.items && types.has('array')) {
|
|
43
|
+
// assume array
|
|
44
|
+
type = 'array';
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
// anything else needs to be checked by the consumer anyway
|
|
48
|
+
return value;
|
|
49
|
+
}
|
|
50
|
+
if (!onlyObjects && type === 'array') {
|
|
51
|
+
return value == undefined ? [] : value;
|
|
52
|
+
}
|
|
53
|
+
if (type === 'object') {
|
|
54
|
+
let newValue;
|
|
55
|
+
if (value == undefined) {
|
|
56
|
+
newValue = {};
|
|
57
|
+
}
|
|
58
|
+
else if ((0, utils_1.isJsonObject)(value)) {
|
|
59
|
+
newValue = value;
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
return value;
|
|
63
|
+
}
|
|
64
|
+
if (!(0, utils_1.isJsonObject)(schema.properties)) {
|
|
65
|
+
return newValue;
|
|
66
|
+
}
|
|
67
|
+
for (const [propName, schemaObject] of Object.entries(schema.properties)) {
|
|
68
|
+
if (propName === '$schema' || !(0, utils_1.isJsonObject)(schemaObject)) {
|
|
69
|
+
continue;
|
|
70
|
+
}
|
|
71
|
+
const value = newValue[propName];
|
|
72
|
+
if (value === undefined) {
|
|
73
|
+
newValue[propName] = schemaObject.default;
|
|
74
|
+
}
|
|
75
|
+
else if ((0, utils_1.isJsonObject)(value)) {
|
|
76
|
+
// Basic support for oneOf and anyOf.
|
|
77
|
+
const propertySchemas = schemaObject.oneOf || schemaObject.anyOf;
|
|
78
|
+
const allProperties = Object.keys(value);
|
|
79
|
+
// Locate a schema which declares all the properties that the object contains.
|
|
80
|
+
const adjustedSchema = (0, utils_1.isJsonArray)(propertySchemas) &&
|
|
81
|
+
propertySchemas.find((s) => {
|
|
82
|
+
if (!(0, utils_1.isJsonObject)(s)) {
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
const schemaType = (0, utility_1.getTypesOfSchema)(s);
|
|
86
|
+
if (schemaType.size === 1 && schemaType.has('object') && (0, utils_1.isJsonObject)(s.properties)) {
|
|
87
|
+
const properties = Object.keys(s.properties);
|
|
88
|
+
return allProperties.every((key) => properties.includes(key));
|
|
89
|
+
}
|
|
90
|
+
return false;
|
|
91
|
+
});
|
|
92
|
+
if (adjustedSchema && (0, utils_1.isJsonObject)(adjustedSchema)) {
|
|
93
|
+
newValue[propName] = transformUndefined(value, _pointer, adjustedSchema, onlyObjects);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return newValue;
|
|
98
|
+
}
|
|
99
|
+
return value;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=transforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transforms.js","sourceRoot":"","sources":["transforms.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
+
import { JsonSchema } from './schema';
|
|
9
|
+
export declare function getTypesOfSchema(schema: JsonSchema): Set<string>;
|
|
@@ -0,0 +1,88 @@
|
|
|
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.getTypesOfSchema = getTypesOfSchema;
|
|
11
|
+
const utils_1 = require("../utils");
|
|
12
|
+
const allTypes = ['string', 'integer', 'number', 'object', 'array', 'boolean', 'null'];
|
|
13
|
+
function getTypesOfSchema(schema) {
|
|
14
|
+
if (!schema) {
|
|
15
|
+
return new Set();
|
|
16
|
+
}
|
|
17
|
+
if (schema === true) {
|
|
18
|
+
return new Set(allTypes);
|
|
19
|
+
}
|
|
20
|
+
let potentials;
|
|
21
|
+
if (typeof schema.type === 'string') {
|
|
22
|
+
potentials = new Set([schema.type]);
|
|
23
|
+
}
|
|
24
|
+
else if (Array.isArray(schema.type)) {
|
|
25
|
+
potentials = new Set(schema.type);
|
|
26
|
+
}
|
|
27
|
+
else if ((0, utils_1.isJsonArray)(schema.enum)) {
|
|
28
|
+
potentials = new Set();
|
|
29
|
+
// Gather the type of each enum values, and use that as a starter for potential types.
|
|
30
|
+
for (const v of schema.enum) {
|
|
31
|
+
switch (typeof v) {
|
|
32
|
+
case 'string':
|
|
33
|
+
case 'number':
|
|
34
|
+
case 'boolean':
|
|
35
|
+
potentials.add(typeof v);
|
|
36
|
+
break;
|
|
37
|
+
case 'object':
|
|
38
|
+
if (Array.isArray(v)) {
|
|
39
|
+
potentials.add('array');
|
|
40
|
+
}
|
|
41
|
+
else if (v === null) {
|
|
42
|
+
potentials.add('null');
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
potentials.add('object');
|
|
46
|
+
}
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
potentials = new Set(allTypes);
|
|
53
|
+
}
|
|
54
|
+
if ((0, utils_1.isJsonObject)(schema.not)) {
|
|
55
|
+
const notTypes = getTypesOfSchema(schema.not);
|
|
56
|
+
potentials = new Set([...potentials].filter((p) => !notTypes.has(p)));
|
|
57
|
+
}
|
|
58
|
+
if (Array.isArray(schema.allOf)) {
|
|
59
|
+
for (const sub of schema.allOf) {
|
|
60
|
+
const types = getTypesOfSchema(sub);
|
|
61
|
+
potentials = new Set([...types].filter((t) => potentials.has(t)));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (Array.isArray(schema.oneOf)) {
|
|
65
|
+
let options = new Set();
|
|
66
|
+
for (const sub of schema.oneOf) {
|
|
67
|
+
const types = getTypesOfSchema(sub);
|
|
68
|
+
options = new Set([...options, ...types]);
|
|
69
|
+
}
|
|
70
|
+
potentials = new Set([...options].filter((o) => potentials.has(o)));
|
|
71
|
+
}
|
|
72
|
+
if (Array.isArray(schema.anyOf)) {
|
|
73
|
+
let options = new Set();
|
|
74
|
+
for (const sub of schema.anyOf) {
|
|
75
|
+
const types = getTypesOfSchema(sub);
|
|
76
|
+
options = new Set([...options, ...types]);
|
|
77
|
+
}
|
|
78
|
+
potentials = new Set([...options].filter((o) => potentials.has(o)));
|
|
79
|
+
}
|
|
80
|
+
if (schema.properties) {
|
|
81
|
+
potentials.add('object');
|
|
82
|
+
}
|
|
83
|
+
else if (schema.items) {
|
|
84
|
+
potentials.add('array');
|
|
85
|
+
}
|
|
86
|
+
return potentials;
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=utility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utility.js","sourceRoot":"","sources":["utility.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAOH,4CA6EC;AAlFD,oCAAiE;AAGjE,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AAEvF,SAAgB,gBAAgB,CAAC,MAAkB;IACjD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;IACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,UAAuB,CAAC;IAC5B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpC,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACtC,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAgB,CAAC,CAAC;IAChD,CAAC;SAAM,IAAI,IAAA,mBAAW,EAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QAEvB,sFAAsF;QACtF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5B,QAAQ,OAAO,CAAC,EAAE,CAAC;gBACjB,KAAK,QAAQ,CAAC;gBACd,KAAK,QAAQ,CAAC;gBACd,KAAK,SAAS;oBACZ,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;oBACzB,MAAM;gBAER,KAAK,QAAQ;oBACX,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrB,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC1B,CAAC;yBAAM,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;wBACtB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACzB,CAAC;yBAAM,CAAC;wBACN,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAC3B,CAAC;oBACD,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,IAAA,oBAAY,EAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9C,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAiB,CAAC,CAAC;YAClD,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,IAAI,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAiB,CAAC,CAAC;YAClD,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,IAAI,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAiB,CAAC,CAAC;YAClD,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;SAAM,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACxB,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
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 { Observable } from 'rxjs';
|
|
9
|
+
import { JsonObject, JsonValue } from '../utils';
|
|
10
|
+
import { JsonSchemaVisitor, JsonVisitor } from './interface';
|
|
11
|
+
import { JsonSchema } from './schema';
|
|
12
|
+
export interface ReferenceResolver<ContextT> {
|
|
13
|
+
(ref: string, context?: ContextT): {
|
|
14
|
+
context?: ContextT;
|
|
15
|
+
schema?: JsonObject;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Visit all the properties in a JSON object, allowing to transform them. It supports calling
|
|
20
|
+
* properties synchronously or asynchronously (through Observables).
|
|
21
|
+
* The original object can be mutated or replaced entirely. In case where it's replaced, the new
|
|
22
|
+
* value is returned. When it's mutated though the original object will be changed.
|
|
23
|
+
*
|
|
24
|
+
* Please note it is possible to have an infinite loop here (which will result in a stack overflow)
|
|
25
|
+
* if you return 2 objects that references each others (or the same object all the time).
|
|
26
|
+
*
|
|
27
|
+
* @param {JsonValue} json The Json value to visit.
|
|
28
|
+
* @param {JsonVisitor} visitor A function that will be called on every items.
|
|
29
|
+
* @param {JsonObject} schema A JSON schema to pass through to the visitor (where possible).
|
|
30
|
+
* @param refResolver a function to resolve references in the schema.
|
|
31
|
+
* @returns {Observable< | undefined>} The observable of the new root, if the root changed.
|
|
32
|
+
*/
|
|
33
|
+
export declare function visitJson<ContextT>(json: JsonValue, visitor: JsonVisitor, schema?: JsonSchema, refResolver?: ReferenceResolver<ContextT>, context?: ContextT): Observable<JsonValue>;
|
|
34
|
+
export declare function visitJsonSchema(schema: JsonSchema, visitor: JsonSchemaVisitor): void;
|
|
@@ -0,0 +1,147 @@
|
|
|
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.visitJson = visitJson;
|
|
11
|
+
exports.visitJsonSchema = visitJsonSchema;
|
|
12
|
+
const rxjs_1 = require("rxjs");
|
|
13
|
+
const pointer_1 = require("./pointer");
|
|
14
|
+
function _getObjectSubSchema(schema, key) {
|
|
15
|
+
if (typeof schema !== 'object' || schema === null) {
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
// Is it an object schema?
|
|
19
|
+
if (typeof schema.properties == 'object' || schema.type == 'object') {
|
|
20
|
+
if (typeof schema.properties == 'object' &&
|
|
21
|
+
typeof schema.properties[key] == 'object') {
|
|
22
|
+
return schema.properties[key];
|
|
23
|
+
}
|
|
24
|
+
if (typeof schema.additionalProperties == 'object') {
|
|
25
|
+
return schema.additionalProperties;
|
|
26
|
+
}
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
// Is it an array schema?
|
|
30
|
+
if (typeof schema.items == 'object' || schema.type == 'array') {
|
|
31
|
+
return typeof schema.items == 'object' ? schema.items : undefined;
|
|
32
|
+
}
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
function _visitJsonRecursive(json, visitor, ptr, schema, refResolver, context, root) {
|
|
36
|
+
if (schema === true || schema === false) {
|
|
37
|
+
// There's no schema definition, so just visit the JSON recursively.
|
|
38
|
+
schema = undefined;
|
|
39
|
+
}
|
|
40
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
41
|
+
if (schema && schema.hasOwnProperty('$ref') && typeof schema['$ref'] == 'string') {
|
|
42
|
+
if (refResolver) {
|
|
43
|
+
const resolved = refResolver(schema['$ref'], context);
|
|
44
|
+
schema = resolved.schema;
|
|
45
|
+
context = resolved.context;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
const value = visitor(json, ptr, schema, root);
|
|
49
|
+
return ((0, rxjs_1.isObservable)(value) ? value : (0, rxjs_1.of)(value)).pipe((0, rxjs_1.concatMap)((value) => {
|
|
50
|
+
if (Array.isArray(value)) {
|
|
51
|
+
return (0, rxjs_1.concat)((0, rxjs_1.from)(value).pipe((0, rxjs_1.mergeMap)((item, i) => {
|
|
52
|
+
return _visitJsonRecursive(item, visitor, (0, pointer_1.joinJsonPointer)(ptr, '' + i), _getObjectSubSchema(schema, '' + i), refResolver, context, root || value).pipe((0, rxjs_1.tap)((x) => (value[i] = x)));
|
|
53
|
+
}), (0, rxjs_1.ignoreElements)()), (0, rxjs_1.of)(value));
|
|
54
|
+
}
|
|
55
|
+
else if (typeof value == 'object' && value !== null) {
|
|
56
|
+
return (0, rxjs_1.concat)((0, rxjs_1.from)(Object.getOwnPropertyNames(value)).pipe((0, rxjs_1.mergeMap)((key) => {
|
|
57
|
+
return _visitJsonRecursive(value[key], visitor, (0, pointer_1.joinJsonPointer)(ptr, key), _getObjectSubSchema(schema, key), refResolver, context, root || value).pipe((0, rxjs_1.tap)((x) => {
|
|
58
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, key);
|
|
59
|
+
if (descriptor && descriptor.writable && value[key] !== x) {
|
|
60
|
+
value[key] = x;
|
|
61
|
+
}
|
|
62
|
+
}));
|
|
63
|
+
}), (0, rxjs_1.ignoreElements)()), (0, rxjs_1.of)(value));
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
return (0, rxjs_1.of)(value);
|
|
67
|
+
}
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Visit all the properties in a JSON object, allowing to transform them. It supports calling
|
|
72
|
+
* properties synchronously or asynchronously (through Observables).
|
|
73
|
+
* The original object can be mutated or replaced entirely. In case where it's replaced, the new
|
|
74
|
+
* value is returned. When it's mutated though the original object will be changed.
|
|
75
|
+
*
|
|
76
|
+
* Please note it is possible to have an infinite loop here (which will result in a stack overflow)
|
|
77
|
+
* if you return 2 objects that references each others (or the same object all the time).
|
|
78
|
+
*
|
|
79
|
+
* @param {JsonValue} json The Json value to visit.
|
|
80
|
+
* @param {JsonVisitor} visitor A function that will be called on every items.
|
|
81
|
+
* @param {JsonObject} schema A JSON schema to pass through to the visitor (where possible).
|
|
82
|
+
* @param refResolver a function to resolve references in the schema.
|
|
83
|
+
* @returns {Observable< | undefined>} The observable of the new root, if the root changed.
|
|
84
|
+
*/
|
|
85
|
+
function visitJson(json, visitor, schema, refResolver, context) {
|
|
86
|
+
return _visitJsonRecursive(json, visitor, (0, pointer_1.buildJsonPointer)([]), schema, refResolver, context);
|
|
87
|
+
}
|
|
88
|
+
function visitJsonSchema(schema, visitor) {
|
|
89
|
+
if (schema === false || schema === true) {
|
|
90
|
+
// Nothing to visit.
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const keywords = {
|
|
94
|
+
additionalItems: true,
|
|
95
|
+
items: true,
|
|
96
|
+
contains: true,
|
|
97
|
+
additionalProperties: true,
|
|
98
|
+
propertyNames: true,
|
|
99
|
+
not: true,
|
|
100
|
+
};
|
|
101
|
+
const arrayKeywords = {
|
|
102
|
+
items: true,
|
|
103
|
+
allOf: true,
|
|
104
|
+
anyOf: true,
|
|
105
|
+
oneOf: true,
|
|
106
|
+
};
|
|
107
|
+
const propsKeywords = {
|
|
108
|
+
definitions: true,
|
|
109
|
+
properties: true,
|
|
110
|
+
patternProperties: true,
|
|
111
|
+
additionalProperties: true,
|
|
112
|
+
dependencies: true,
|
|
113
|
+
items: true,
|
|
114
|
+
};
|
|
115
|
+
function _traverse(schema, jsonPtr, rootSchema, parentSchema, keyIndex) {
|
|
116
|
+
if (schema && typeof schema == 'object' && !Array.isArray(schema)) {
|
|
117
|
+
visitor(schema, jsonPtr, parentSchema, keyIndex);
|
|
118
|
+
for (const key of Object.keys(schema)) {
|
|
119
|
+
const sch = schema[key];
|
|
120
|
+
if (key in propsKeywords) {
|
|
121
|
+
if (sch && typeof sch == 'object') {
|
|
122
|
+
for (const prop of Object.keys(sch)) {
|
|
123
|
+
_traverse(sch[prop], (0, pointer_1.joinJsonPointer)(jsonPtr, key, prop), rootSchema, schema, prop);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
else if (key in keywords) {
|
|
128
|
+
_traverse(sch, (0, pointer_1.joinJsonPointer)(jsonPtr, key), rootSchema, schema, key);
|
|
129
|
+
}
|
|
130
|
+
else if (key in arrayKeywords) {
|
|
131
|
+
if (Array.isArray(sch)) {
|
|
132
|
+
for (let i = 0; i < sch.length; i++) {
|
|
133
|
+
_traverse(sch[i], (0, pointer_1.joinJsonPointer)(jsonPtr, key, '' + i), rootSchema, sch, '' + i);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
else if (Array.isArray(sch)) {
|
|
138
|
+
for (let i = 0; i < sch.length; i++) {
|
|
139
|
+
_traverse(sch[i], (0, pointer_1.joinJsonPointer)(jsonPtr, key, '' + i), rootSchema, sch, '' + i);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
_traverse(schema, (0, pointer_1.buildJsonPointer)([]), schema);
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=visitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visitor.js","sourceRoot":"","sources":["visitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
+
export interface JsonArray extends Array<JsonValue> {
|
|
9
|
+
}
|
|
10
|
+
export interface JsonObject {
|
|
11
|
+
[prop: string]: JsonValue;
|
|
12
|
+
}
|
|
13
|
+
export type JsonValue = boolean | string | number | JsonArray | JsonObject | null;
|
|
14
|
+
export declare function isJsonObject(value: JsonValue): value is JsonObject;
|
|
15
|
+
export declare function isJsonArray(value: JsonValue): value is JsonArray;
|
|
@@ -0,0 +1,18 @@
|
|
|
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.isJsonObject = isJsonObject;
|
|
11
|
+
exports.isJsonArray = isJsonArray;
|
|
12
|
+
function isJsonObject(value) {
|
|
13
|
+
return value != null && typeof value === 'object' && !Array.isArray(value);
|
|
14
|
+
}
|
|
15
|
+
function isJsonArray(value) {
|
|
16
|
+
return Array.isArray(value);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAWH,oCAEC;AAED,kCAEC;AAND,SAAgB,YAAY,CAAC,KAAgB;IAC3C,OAAO,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC;AAED,SAAgB,WAAW,CAAC,KAAgB;IAC1C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
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 { Logger } from './logger';
|
|
9
|
+
export declare class IndentLogger extends Logger {
|
|
10
|
+
constructor(name: string, parent?: Logger | null, indentation?: string);
|
|
11
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
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.IndentLogger = void 0;
|
|
11
|
+
const rxjs_1 = require("rxjs");
|
|
12
|
+
const logger_1 = require("./logger");
|
|
13
|
+
/**
|
|
14
|
+
* Keep an map of indentation => array of indentations based on the level.
|
|
15
|
+
* This is to optimize calculating the prefix based on the indentation itself. Since most logs
|
|
16
|
+
* come from similar levels, and with similar indentation strings, this will be shared by all
|
|
17
|
+
* loggers. Also, string concatenation is expensive so performing concats for every log entries
|
|
18
|
+
* is expensive; this alleviates it.
|
|
19
|
+
*/
|
|
20
|
+
const indentationMap = {};
|
|
21
|
+
class IndentLogger extends logger_1.Logger {
|
|
22
|
+
constructor(name, parent = null, indentation = ' ') {
|
|
23
|
+
super(name, parent);
|
|
24
|
+
indentationMap[indentation] = indentationMap[indentation] || [''];
|
|
25
|
+
const indentMap = indentationMap[indentation];
|
|
26
|
+
this._observable = this._observable.pipe((0, rxjs_1.map)((entry) => {
|
|
27
|
+
const l = entry.path.filter((x) => !!x).length;
|
|
28
|
+
if (l >= indentMap.length) {
|
|
29
|
+
let current = indentMap[indentMap.length - 1];
|
|
30
|
+
while (l >= indentMap.length) {
|
|
31
|
+
current += indentation;
|
|
32
|
+
indentMap.push(current);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
entry.message = indentMap[l] + entry.message.split(/\n/).join('\n' + indentMap[l]);
|
|
36
|
+
return entry;
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.IndentLogger = IndentLogger;
|
|
41
|
+
//# sourceMappingURL=indent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indent.js","sourceRoot":"","sources":["indent.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,+BAA2B;AAC3B,qCAAkC;AAElC;;;;;;GAMG;AACH,MAAM,cAAc,GAA4C,EAAE,CAAC;AAEnE,MAAa,YAAa,SAAQ,eAAM;IACtC,YAAY,IAAY,EAAE,SAAwB,IAAI,EAAE,WAAW,GAAG,IAAI;QACxE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEpB,cAAc,CAAC,WAAW,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAE9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CACtC,IAAA,UAAG,EAAC,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC/C,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gBAC1B,IAAI,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC9C,OAAO,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;oBAC7B,OAAO,IAAI,WAAW,CAAC;oBACvB,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnF,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF;AAxBD,oCAwBC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
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 './indent';
|
|
9
|
+
export * from './level';
|
|
10
|
+
export * from './logger';
|
|
11
|
+
export * from './null-logger';
|
|
12
|
+
export * from './transform-logger';
|
|
@@ -0,0 +1,29 @@
|
|
|
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("./indent"), exports);
|
|
25
|
+
__exportStar(require("./level"), exports);
|
|
26
|
+
__exportStar(require("./logger"), exports);
|
|
27
|
+
__exportStar(require("./null-logger"), exports);
|
|
28
|
+
__exportStar(require("./transform-logger"), exports);
|
|
29
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,gDAA8B;AAC9B,qDAAmC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
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 { JsonObject } from '../json/utils';
|
|
9
|
+
import { LogLevel, Logger } from './logger';
|
|
10
|
+
export declare class LevelTransformLogger extends Logger {
|
|
11
|
+
readonly name: string;
|
|
12
|
+
readonly parent: Logger | null;
|
|
13
|
+
readonly levelTransform: (level: LogLevel) => LogLevel;
|
|
14
|
+
constructor(name: string, parent: Logger | null, levelTransform: (level: LogLevel) => LogLevel);
|
|
15
|
+
log(level: LogLevel, message: string, metadata?: JsonObject): void;
|
|
16
|
+
createChild(name: string): Logger;
|
|
17
|
+
}
|
|
18
|
+
export declare class LevelCapLogger extends LevelTransformLogger {
|
|
19
|
+
readonly name: string;
|
|
20
|
+
readonly parent: Logger | null;
|
|
21
|
+
readonly levelCap: LogLevel;
|
|
22
|
+
static levelMap: {
|
|
23
|
+
[cap: string]: {
|
|
24
|
+
[level: string]: string;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
constructor(name: string, parent: Logger | null, levelCap: LogLevel);
|
|
28
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
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.LevelCapLogger = exports.LevelTransformLogger = void 0;
|
|
11
|
+
const logger_1 = require("./logger");
|
|
12
|
+
class LevelTransformLogger extends logger_1.Logger {
|
|
13
|
+
name;
|
|
14
|
+
parent;
|
|
15
|
+
levelTransform;
|
|
16
|
+
constructor(name, parent, levelTransform) {
|
|
17
|
+
super(name, parent);
|
|
18
|
+
this.name = name;
|
|
19
|
+
this.parent = parent;
|
|
20
|
+
this.levelTransform = levelTransform;
|
|
21
|
+
}
|
|
22
|
+
log(level, message, metadata = {}) {
|
|
23
|
+
return super.log(this.levelTransform(level), message, metadata);
|
|
24
|
+
}
|
|
25
|
+
createChild(name) {
|
|
26
|
+
return new LevelTransformLogger(name, this, this.levelTransform);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.LevelTransformLogger = LevelTransformLogger;
|
|
30
|
+
class LevelCapLogger extends LevelTransformLogger {
|
|
31
|
+
name;
|
|
32
|
+
parent;
|
|
33
|
+
levelCap;
|
|
34
|
+
static levelMap = {
|
|
35
|
+
debug: { debug: 'debug', info: 'debug', warn: 'debug', error: 'debug', fatal: 'debug' },
|
|
36
|
+
info: { debug: 'debug', info: 'info', warn: 'info', error: 'info', fatal: 'info' },
|
|
37
|
+
warn: { debug: 'debug', info: 'info', warn: 'warn', error: 'warn', fatal: 'warn' },
|
|
38
|
+
error: { debug: 'debug', info: 'info', warn: 'warn', error: 'error', fatal: 'error' },
|
|
39
|
+
fatal: { debug: 'debug', info: 'info', warn: 'warn', error: 'error', fatal: 'fatal' },
|
|
40
|
+
};
|
|
41
|
+
constructor(name, parent, levelCap) {
|
|
42
|
+
super(name, parent, (level) => {
|
|
43
|
+
return (LevelCapLogger.levelMap[levelCap][level] || level);
|
|
44
|
+
});
|
|
45
|
+
this.name = name;
|
|
46
|
+
this.parent = parent;
|
|
47
|
+
this.levelCap = levelCap;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.LevelCapLogger = LevelCapLogger;
|
|
51
|
+
//# sourceMappingURL=level.js.map
|