field-redactor 1.6.2 → 1.6.3
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/.github/workflows/publish.yml +55 -0
- package/CHANGELOG.md +17 -0
- package/CONTRIBUTING.md +23 -2
- package/README.md +1 -0
- package/dist/api/fieldRedactor.d.ts +3 -3
- package/dist/api/fieldRedactor.js +4 -4
- package/dist/api/fieldRedactor.js.map +1 -1
- package/dist/config/configValidator.d.ts.map +1 -1
- package/dist/config/configValidator.js +16 -0
- package/dist/config/configValidator.js.map +1 -1
- package/dist/types.d.ts +27 -9
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/docs/guides/migration-1.5-to-1.6.md +4 -3
- package/docs/release-notes/README.md +4 -1
- package/docs/release-notes/v1.6.3.md +25 -0
- package/examples/README.md +14 -0
- package/examples/dry-run.ts +21 -0
- package/examples/logging-metadata.ts +18 -0
- package/examples/path-rules.ts +23 -0
- package/examples/value-patterns.ts +16 -0
- package/package.json +1 -1
- package/dist/arrayRedaction.d.ts +0 -12
- package/dist/arrayRedaction.d.ts.map +0 -1
- package/dist/arrayRedaction.js +0 -70
- package/dist/arrayRedaction.js.map +0 -1
- package/dist/configValidator.d.ts +0 -9
- package/dist/configValidator.d.ts.map +0 -1
- package/dist/configValidator.js +0 -77
- package/dist/configValidator.js.map +0 -1
- package/dist/copyOnWriteHelpers.d.ts +0 -20
- package/dist/copyOnWriteHelpers.d.ts.map +0 -1
- package/dist/copyOnWriteHelpers.js +0 -58
- package/dist/copyOnWriteHelpers.js.map +0 -1
- package/dist/customObjectFieldHandler.d.ts +0 -21
- package/dist/customObjectFieldHandler.d.ts.map +0 -1
- package/dist/customObjectFieldHandler.js +0 -159
- package/dist/customObjectFieldHandler.js.map +0 -1
- package/dist/customObjectManager.d.ts +0 -28
- package/dist/customObjectManager.d.ts.map +0 -1
- package/dist/customObjectManager.js +0 -60
- package/dist/customObjectManager.js.map +0 -1
- package/dist/customObjectSchemas.d.ts +0 -7
- package/dist/customObjectSchemas.d.ts.map +0 -1
- package/dist/customObjectSchemas.js +0 -35
- package/dist/customObjectSchemas.js.map +0 -1
- package/dist/dryRun.d.ts +0 -9
- package/dist/dryRun.d.ts.map +0 -1
- package/dist/dryRun.js +0 -75
- package/dist/dryRun.js.map +0 -1
- package/dist/dryRunAttribution.d.ts +0 -10
- package/dist/dryRunAttribution.d.ts.map +0 -1
- package/dist/dryRunAttribution.js +0 -14
- package/dist/dryRunAttribution.js.map +0 -1
- package/dist/dryrun/dryRunAttribution.d.ts +0 -10
- package/dist/dryrun/dryRunAttribution.d.ts.map +0 -1
- package/dist/dryrun/dryRunAttribution.js +0 -14
- package/dist/dryrun/dryRunAttribution.js.map +0 -1
- package/dist/engine/objectRedactor.d.ts +0 -18
- package/dist/engine/objectRedactor.d.ts.map +0 -1
- package/dist/engine/objectRedactor.js +0 -38
- package/dist/engine/objectRedactor.js.map +0 -1
- package/dist/engine/objectRedactorSync.d.ts +0 -2
- package/dist/engine/objectRedactorSync.d.ts.map +0 -1
- package/dist/engine/objectRedactorSync.js +0 -7
- package/dist/engine/objectRedactorSync.js.map +0 -1
- package/dist/fieldDisposition.d.ts +0 -3
- package/dist/fieldDisposition.d.ts.map +0 -1
- package/dist/fieldDisposition.js +0 -6
- package/dist/fieldDisposition.js.map +0 -1
- package/dist/fieldRedactor.d.ts +0 -51
- package/dist/fieldRedactor.d.ts.map +0 -1
- package/dist/fieldRedactor.js +0 -165
- package/dist/fieldRedactor.js.map +0 -1
- package/dist/fieldRedactorConfigBuilder.d.ts +0 -55
- package/dist/fieldRedactorConfigBuilder.d.ts.map +0 -1
- package/dist/fieldRedactorConfigBuilder.js +0 -111
- package/dist/fieldRedactorConfigBuilder.js.map +0 -1
- package/dist/fieldRedactorDeps.d.ts +0 -19
- package/dist/fieldRedactorDeps.d.ts.map +0 -1
- package/dist/fieldRedactorDeps.js +0 -43
- package/dist/fieldRedactorDeps.js.map +0 -1
- package/dist/jsonWalk.d.ts +0 -11
- package/dist/jsonWalk.d.ts.map +0 -1
- package/dist/jsonWalk.js +0 -55
- package/dist/jsonWalk.js.map +0 -1
- package/dist/maybeAsync.d.ts +0 -7
- package/dist/maybeAsync.d.ts.map +0 -1
- package/dist/maybeAsync.js +0 -56
- package/dist/maybeAsync.js.map +0 -1
- package/dist/objectRedactor.d.ts +0 -18
- package/dist/objectRedactor.d.ts.map +0 -1
- package/dist/objectRedactor.js +0 -38
- package/dist/objectRedactor.js.map +0 -1
- package/dist/objectRedactorCow.d.ts +0 -35
- package/dist/objectRedactorCow.d.ts.map +0 -1
- package/dist/objectRedactorCow.js +0 -300
- package/dist/objectRedactorCow.js.map +0 -1
- package/dist/objectRedactorCustomObject.d.ts +0 -28
- package/dist/objectRedactorCustomObject.d.ts.map +0 -1
- package/dist/objectRedactorCustomObject.js +0 -57
- package/dist/objectRedactorCustomObject.js.map +0 -1
- package/dist/objectRedactorHelpers.d.ts +0 -9
- package/dist/objectRedactorHelpers.d.ts.map +0 -1
- package/dist/objectRedactorHelpers.js +0 -61
- package/dist/objectRedactorHelpers.js.map +0 -1
- package/dist/objectRedactorMutation.d.ts +0 -10
- package/dist/objectRedactorMutation.d.ts.map +0 -1
- package/dist/objectRedactorMutation.js +0 -89
- package/dist/objectRedactorMutation.js.map +0 -1
- package/dist/objectRedactorSync.d.ts +0 -2
- package/dist/objectRedactorSync.d.ts.map +0 -1
- package/dist/objectRedactorSync.js +0 -7
- package/dist/objectRedactorSync.js.map +0 -1
- package/dist/objectRedactorTraversal.d.ts +0 -41
- package/dist/objectRedactorTraversal.d.ts.map +0 -1
- package/dist/objectRedactorTraversal.js +0 -201
- package/dist/objectRedactorTraversal.js.map +0 -1
- package/dist/pathParsing.d.ts +0 -11
- package/dist/pathParsing.d.ts.map +0 -1
- package/dist/pathParsing.js +0 -53
- package/dist/pathParsing.js.map +0 -1
- package/dist/pathRuleMatcher.d.ts +0 -19
- package/dist/pathRuleMatcher.d.ts.map +0 -1
- package/dist/pathRuleMatcher.js +0 -42
- package/dist/pathRuleMatcher.js.map +0 -1
- package/dist/presets.d.ts +0 -22
- package/dist/presets.d.ts.map +0 -1
- package/dist/presets.js +0 -50
- package/dist/presets.js.map +0 -1
- package/dist/primitiveRedactor.d.ts +0 -33
- package/dist/primitiveRedactor.d.ts.map +0 -1
- package/dist/primitiveRedactor.js +0 -75
- package/dist/primitiveRedactor.js.map +0 -1
- package/dist/redactionRules.d.ts +0 -22
- package/dist/redactionRules.d.ts.map +0 -1
- package/dist/redactionRules.js +0 -74
- package/dist/redactionRules.js.map +0 -1
- package/dist/regexUtils.d.ts +0 -3
- package/dist/regexUtils.d.ts.map +0 -1
- package/dist/regexUtils.js +0 -8
- package/dist/regexUtils.js.map +0 -1
- package/dist/ruleResolver.d.ts +0 -65
- package/dist/ruleResolver.d.ts.map +0 -1
- package/dist/ruleResolver.js +0 -193
- package/dist/ruleResolver.js.map +0 -1
- package/dist/rules/fieldDisposition.d.ts +0 -3
- package/dist/rules/fieldDisposition.d.ts.map +0 -1
- package/dist/rules/fieldDisposition.js +0 -6
- package/dist/rules/fieldDisposition.js.map +0 -1
- package/dist/secretManager.d.ts +0 -32
- package/dist/secretManager.d.ts.map +0 -1
- package/dist/secretManager.js +0 -85
- package/dist/secretManager.js.map +0 -1
- package/dist/traversalServices.d.ts +0 -21
- package/dist/traversalServices.d.ts.map +0 -1
- package/dist/traversalServices.js +0 -3
- package/dist/traversalServices.js.map +0 -1
- package/dist/valuePatternMatcher.d.ts +0 -15
- package/dist/valuePatternMatcher.d.ts.map +0 -1
- package/dist/valuePatternMatcher.js +0 -30
- package/dist/valuePatternMatcher.js.map +0 -1
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { CustomObjectMatchType } from './types';
|
|
2
|
-
import { MaybeAsync } from './maybeAsync';
|
|
3
|
-
type CustomObjectArrayHandlers = {
|
|
4
|
-
deleteKey(): MaybeAsync<void>;
|
|
5
|
-
redactFull(): MaybeAsync<void>;
|
|
6
|
-
redactDeep(): MaybeAsync<void>;
|
|
7
|
-
redactShallow(): MaybeAsync<void>;
|
|
8
|
-
passThrough(): MaybeAsync<void>;
|
|
9
|
-
};
|
|
10
|
-
type CustomObjectObjectHandlers = {
|
|
11
|
-
deleteKey(): MaybeAsync<void>;
|
|
12
|
-
redactFull(): MaybeAsync<void>;
|
|
13
|
-
redactDeep(): MaybeAsync<void>;
|
|
14
|
-
redactShallowOrPass(): MaybeAsync<void>;
|
|
15
|
-
ignore(): MaybeAsync<void>;
|
|
16
|
-
};
|
|
17
|
-
type CustomObjectPrimitiveHandlers = {
|
|
18
|
-
deleteKey(): MaybeAsync<void>;
|
|
19
|
-
redactFull(): MaybeAsync<void>;
|
|
20
|
-
redactScalar(): MaybeAsync<void>;
|
|
21
|
-
passThrough(): MaybeAsync<void>;
|
|
22
|
-
};
|
|
23
|
-
export declare const applyCustomObjectArrayMatchType: (matchType: CustomObjectMatchType, handlers: CustomObjectArrayHandlers) => MaybeAsync<void>;
|
|
24
|
-
export declare const applyCustomObjectObjectMatchType: (matchType: CustomObjectMatchType, handlers: CustomObjectObjectHandlers) => MaybeAsync<void>;
|
|
25
|
-
export declare const applyCustomObjectPrimitiveMatchType: (matchType: CustomObjectMatchType, handlers: CustomObjectPrimitiveHandlers) => MaybeAsync<void>;
|
|
26
|
-
export declare const awaitCustomObjectMatchType: (result: MaybeAsync<void>, asyncMode?: boolean) => MaybeAsync<void>;
|
|
27
|
-
export {};
|
|
28
|
-
//# sourceMappingURL=objectRedactorCustomObject.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorCustomObject.d.ts","sourceRoot":"","sources":["../src/objectRedactorCustomObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,cAAc,CAAC;AAI7D,KAAK,yBAAyB,GAAG;IAC/B,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,aAAa,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAClC,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,mBAAmB,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACnC,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,YAAY,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,+BAA+B,cAC/B,qBAAqB,YACtB,yBAAyB,KAClC,UAAU,CAAC,IAAI,CAejB,CAAC;AAEF,eAAO,MAAM,gCAAgC,cAChC,qBAAqB,YACtB,0BAA0B,KACnC,UAAU,CAAC,IAAI,CAcjB,CAAC;AAEF,eAAO,MAAM,mCAAmC,cACnC,qBAAqB,YACtB,6BAA6B,KACtC,UAAU,CAAC,IAAI,CAajB,CAAC;AAEF,eAAO,MAAM,0BAA0B,WAAY,UAAU,CAAC,IAAI,CAAC,0BAAqB,UAAU,CAAC,IAAI,CACjE,CAAC"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.awaitCustomObjectMatchType = exports.applyCustomObjectPrimitiveMatchType = exports.applyCustomObjectObjectMatchType = exports.applyCustomObjectArrayMatchType = void 0;
|
|
4
|
-
const types_1 = require("./types");
|
|
5
|
-
const maybeAsync_1 = require("./maybeAsync");
|
|
6
|
-
const run = (handler) => handler();
|
|
7
|
-
const applyCustomObjectArrayMatchType = (matchType, handlers) => {
|
|
8
|
-
switch (matchType) {
|
|
9
|
-
case types_1.CustomObjectMatchType.Delete:
|
|
10
|
-
return run(handlers.deleteKey);
|
|
11
|
-
case types_1.CustomObjectMatchType.Full:
|
|
12
|
-
return run(handlers.redactFull);
|
|
13
|
-
case types_1.CustomObjectMatchType.Deep:
|
|
14
|
-
return run(handlers.redactDeep);
|
|
15
|
-
case types_1.CustomObjectMatchType.Shallow:
|
|
16
|
-
return run(handlers.redactShallow);
|
|
17
|
-
case types_1.CustomObjectMatchType.Pass:
|
|
18
|
-
return run(handlers.passThrough);
|
|
19
|
-
default:
|
|
20
|
-
return undefined;
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
exports.applyCustomObjectArrayMatchType = applyCustomObjectArrayMatchType;
|
|
24
|
-
const applyCustomObjectObjectMatchType = (matchType, handlers) => {
|
|
25
|
-
switch (matchType) {
|
|
26
|
-
case types_1.CustomObjectMatchType.Delete:
|
|
27
|
-
return run(handlers.deleteKey);
|
|
28
|
-
case types_1.CustomObjectMatchType.Full:
|
|
29
|
-
return run(handlers.redactFull);
|
|
30
|
-
case types_1.CustomObjectMatchType.Deep:
|
|
31
|
-
return run(handlers.redactDeep);
|
|
32
|
-
case types_1.CustomObjectMatchType.Shallow:
|
|
33
|
-
case types_1.CustomObjectMatchType.Pass:
|
|
34
|
-
return run(handlers.redactShallowOrPass);
|
|
35
|
-
case types_1.CustomObjectMatchType.Ignore:
|
|
36
|
-
return run(handlers.ignore);
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
exports.applyCustomObjectObjectMatchType = applyCustomObjectObjectMatchType;
|
|
40
|
-
const applyCustomObjectPrimitiveMatchType = (matchType, handlers) => {
|
|
41
|
-
switch (matchType) {
|
|
42
|
-
case types_1.CustomObjectMatchType.Delete:
|
|
43
|
-
return run(handlers.deleteKey);
|
|
44
|
-
case types_1.CustomObjectMatchType.Full:
|
|
45
|
-
return run(handlers.redactFull);
|
|
46
|
-
case types_1.CustomObjectMatchType.Deep:
|
|
47
|
-
case types_1.CustomObjectMatchType.Shallow:
|
|
48
|
-
return run(handlers.redactScalar);
|
|
49
|
-
case types_1.CustomObjectMatchType.Pass:
|
|
50
|
-
default:
|
|
51
|
-
return run(handlers.passThrough);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
exports.applyCustomObjectPrimitiveMatchType = applyCustomObjectPrimitiveMatchType;
|
|
55
|
-
const awaitCustomObjectMatchType = (result, asyncMode = true) => (0, maybeAsync_1.resolveMaybeAsync)(result, asyncMode);
|
|
56
|
-
exports.awaitCustomObjectMatchType = awaitCustomObjectMatchType;
|
|
57
|
-
//# sourceMappingURL=objectRedactorCustomObject.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorCustomObject.js","sourceRoot":"","sources":["../src/objectRedactorCustomObject.ts"],"names":[],"mappings":";;;AAAA,mCAAgD;AAChD,6CAA6D;AAE7D,MAAM,GAAG,GAAG,CAAI,OAA4B,EAAiB,EAAE,CAAC,OAAO,EAAE,CAAC;AAyBnE,MAAM,+BAA+B,GAAG,CAC7C,SAAgC,EAChC,QAAmC,EACjB,EAAE;IACpB,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,6BAAqB,CAAC,MAAM;YAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACjC,KAAK,6BAAqB,CAAC,IAAI;YAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClC,KAAK,6BAAqB,CAAC,IAAI;YAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClC,KAAK,6BAAqB,CAAC,OAAO;YAChC,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACrC,KAAK,6BAAqB,CAAC,IAAI;YAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACnC;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC,CAAC;AAlBW,QAAA,+BAA+B,mCAkB1C;AAEK,MAAM,gCAAgC,GAAG,CAC9C,SAAgC,EAChC,QAAoC,EAClB,EAAE;IACpB,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,6BAAqB,CAAC,MAAM;YAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACjC,KAAK,6BAAqB,CAAC,IAAI;YAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClC,KAAK,6BAAqB,CAAC,IAAI;YAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClC,KAAK,6BAAqB,CAAC,OAAO,CAAC;QACnC,KAAK,6BAAqB,CAAC,IAAI;YAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QAC3C,KAAK,6BAAqB,CAAC,MAAM;YAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;AACH,CAAC,CAAC;AAjBW,QAAA,gCAAgC,oCAiB3C;AAEK,MAAM,mCAAmC,GAAG,CACjD,SAAgC,EAChC,QAAuC,EACrB,EAAE;IACpB,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,6BAAqB,CAAC,MAAM;YAC/B,OAAO,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACjC,KAAK,6BAAqB,CAAC,IAAI;YAC7B,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClC,KAAK,6BAAqB,CAAC,IAAI,CAAC;QAChC,KAAK,6BAAqB,CAAC,OAAO;YAChC,OAAO,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACpC,KAAK,6BAAqB,CAAC,IAAI,CAAC;QAChC;YACE,OAAO,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC;AAhBW,QAAA,mCAAmC,uCAgB9C;AAEK,MAAM,0BAA0B,GAAG,CAAC,MAAwB,EAAE,SAAS,GAAG,IAAI,EAAoB,EAAE,CACzG,IAAA,8BAAiB,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAD1B,QAAA,0BAA0B,8BACA"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { CustomObject, JsonLeafValue, JsonObject, JsonValue, RedactablePrimitive, SecretSpecifierValue } from './types';
|
|
2
|
-
import { SecretManager } from './secretManager';
|
|
3
|
-
import { ValuePatternMatcher } from './valuePatternMatcher';
|
|
4
|
-
export type RedactPrimitiveFn<T> = (value: RedactablePrimitive) => T;
|
|
5
|
-
export declare function toRedactablePrimitive(value: JsonLeafValue | undefined): RedactablePrimitive;
|
|
6
|
-
export declare function getStringValue(val: JsonValue | undefined): RedactablePrimitive;
|
|
7
|
-
export declare function getStringSpecifiedCustomObjectSecretKeyValueIfExists(value: JsonObject, customObject: CustomObject, key: string): SecretSpecifierValue | undefined;
|
|
8
|
-
export declare function redactPrimitiveValueIfSecret<T>(secretManager: SecretManager, valuePatternMatcher: ValuePatternMatcher, redact: RedactPrimitiveFn<T>, key: SecretSpecifierValue, value: JsonLeafValue | undefined, forceDeepRedaction: boolean): JsonValue | undefined | T;
|
|
9
|
-
//# sourceMappingURL=objectRedactorHelpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorHelpers.d.ts","sourceRoot":"","sources":["../src/objectRedactorHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAEZ,aAAa,EACb,UAAU,EACV,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,mBAAmB,KAAK,CAAC,CAAC;AAErE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,GAAG,mBAAmB,CAM3F;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,mBAAmB,CAU9E;AAED,wBAAgB,oDAAoD,CAClE,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,MAAM,GACV,oBAAoB,GAAG,SAAS,CAgBlC;AAED,wBAAgB,4BAA4B,CAAC,CAAC,EAC5C,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,mBAAmB,EACxC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC5B,GAAG,EAAE,oBAAoB,EACzB,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,kBAAkB,EAAE,OAAO,GAC1B,SAAS,GAAG,SAAS,GAAG,CAAC,CA+B3B"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.toRedactablePrimitive = toRedactablePrimitive;
|
|
4
|
-
exports.getStringValue = getStringValue;
|
|
5
|
-
exports.getStringSpecifiedCustomObjectSecretKeyValueIfExists = getStringSpecifiedCustomObjectSecretKeyValueIfExists;
|
|
6
|
-
exports.redactPrimitiveValueIfSecret = redactPrimitiveValueIfSecret;
|
|
7
|
-
const types_1 = require("./types");
|
|
8
|
-
function toRedactablePrimitive(value) {
|
|
9
|
-
if (value instanceof Date || typeof value === 'function') {
|
|
10
|
-
return getStringValue(value);
|
|
11
|
-
}
|
|
12
|
-
return value;
|
|
13
|
-
}
|
|
14
|
-
function getStringValue(val) {
|
|
15
|
-
if ((0, types_1.isJsonObject)(val) || Array.isArray(val)) {
|
|
16
|
-
return JSON.stringify(val);
|
|
17
|
-
}
|
|
18
|
-
if (val instanceof Date || typeof val === 'function') {
|
|
19
|
-
return val.toString();
|
|
20
|
-
}
|
|
21
|
-
return val;
|
|
22
|
-
}
|
|
23
|
-
function getStringSpecifiedCustomObjectSecretKeyValueIfExists(value, customObject, key) {
|
|
24
|
-
const siblingKeyName = customObject[key];
|
|
25
|
-
if (typeof siblingKeyName !== 'string') {
|
|
26
|
-
return undefined;
|
|
27
|
-
}
|
|
28
|
-
if (!Object.prototype.hasOwnProperty.call(value, siblingKeyName)) {
|
|
29
|
-
return undefined;
|
|
30
|
-
}
|
|
31
|
-
const siblingValue = value[siblingKeyName];
|
|
32
|
-
if (typeof siblingValue === 'string' || typeof siblingValue === 'number' || typeof siblingValue === 'boolean') {
|
|
33
|
-
return siblingValue;
|
|
34
|
-
}
|
|
35
|
-
return undefined;
|
|
36
|
-
}
|
|
37
|
-
function redactPrimitiveValueIfSecret(secretManager, valuePatternMatcher, redact, key, value, forceDeepRedaction) {
|
|
38
|
-
if (value instanceof Date || typeof value === 'function') {
|
|
39
|
-
if (secretManager.isFullSecretKey(key) ||
|
|
40
|
-
forceDeepRedaction ||
|
|
41
|
-
secretManager.isSecretKey(key) ||
|
|
42
|
-
secretManager.isDeepSecretKey(key)) {
|
|
43
|
-
return redact(getStringValue(value));
|
|
44
|
-
}
|
|
45
|
-
return value;
|
|
46
|
-
}
|
|
47
|
-
if (secretManager.isFullSecretKey(key)) {
|
|
48
|
-
return redact(getStringValue(value));
|
|
49
|
-
}
|
|
50
|
-
if (forceDeepRedaction || secretManager.isSecretKey(key) || secretManager.isDeepSecretKey(key)) {
|
|
51
|
-
if (secretManager.isPassKey(key)) {
|
|
52
|
-
return value;
|
|
53
|
-
}
|
|
54
|
-
return redact(value);
|
|
55
|
-
}
|
|
56
|
-
if (valuePatternMatcher.findMatching(toRedactablePrimitive(value))) {
|
|
57
|
-
return redact(value);
|
|
58
|
-
}
|
|
59
|
-
return value;
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=objectRedactorHelpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorHelpers.js","sourceRoot":"","sources":["../src/objectRedactorHelpers.ts"],"names":[],"mappings":";;AAcA,sDAMC;AAED,wCAUC;AAED,oHAoBC;AAED,oEAsCC;AA9FD,mCAQiB;AAMjB,SAAgB,qBAAqB,CAAC,KAAgC;IACpE,IAAI,KAAK,YAAY,IAAI,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QACzD,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,cAAc,CAAC,GAA0B;IACvD,IAAI,IAAA,oBAAY,EAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,GAAG,YAAY,IAAI,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;QACrD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,oDAAoD,CAClE,KAAiB,EACjB,YAA0B,EAC1B,GAAW;IAEX,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC;QACjE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;IAC3C,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,OAAO,YAAY,KAAK,SAAS,EAAE,CAAC;QAC9G,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,4BAA4B,CAC1C,aAA4B,EAC5B,mBAAwC,EACxC,MAA4B,EAC5B,GAAyB,EACzB,KAAgC,EAChC,kBAA2B;IAE3B,IAAI,KAAK,YAAY,IAAI,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QACzD,IACE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC;YAClC,kBAAkB;YAClB,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC;YAC9B,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,EAClC,CAAC;YACD,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,kBAAkB,IAAI,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/F,IAAI,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,MAAM,CAAC,KAA4B,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,mBAAmB,CAAC,YAAY,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACnE,OAAO,MAAM,CAAC,KAA4B,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { JsonArray, JsonObject, JsonValue } from './types';
|
|
2
|
-
export type ContainerMutation<T extends JsonObject | JsonArray> = {
|
|
3
|
-
readonly copyOnWrite: boolean;
|
|
4
|
-
readonly source: T;
|
|
5
|
-
set(key: string, value: JsonValue | undefined): void;
|
|
6
|
-
remove(key: string): void;
|
|
7
|
-
result(): T;
|
|
8
|
-
};
|
|
9
|
-
export declare const createContainerMutation: <T extends JsonObject | JsonArray>(source: T, copyOnWrite: boolean) => ContainerMutation<T>;
|
|
10
|
-
//# sourceMappingURL=objectRedactorMutation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorMutation.d.ts","sourceRoot":"","sources":["../src/objectRedactorMutation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAc,SAAS,EAAE,MAAM,SAAS,CAAC;AAcvE,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,SAAS,IAAI;IAChE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC;IACrD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,IAAI,CAAC,CAAC;CACb,CAAC;AAsCF,eAAO,MAAM,uBAAuB,GAAI,CAAC,SAAS,UAAU,GAAG,SAAS,UAC9D,CAAC,eACI,OAAO,KACnB,iBAAiB,CAAC,CAAC,CA2DrB,CAAC"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createContainerMutation = void 0;
|
|
4
|
-
const createObjectCopyState = (source) => ({
|
|
5
|
-
source,
|
|
6
|
-
current: source,
|
|
7
|
-
copied: false
|
|
8
|
-
});
|
|
9
|
-
const createArrayCopyState = (source) => ({
|
|
10
|
-
source,
|
|
11
|
-
current: source,
|
|
12
|
-
copied: false
|
|
13
|
-
});
|
|
14
|
-
const finishObjectCopy = (state) => state.copied ? state.current : state.source;
|
|
15
|
-
const finishArrayCopy = (state) => state.copied ? state.current : state.source;
|
|
16
|
-
const ensureObjectCopy = (state) => {
|
|
17
|
-
if (!state.copied) {
|
|
18
|
-
state.current = Object.assign({}, state.source);
|
|
19
|
-
state.copied = true;
|
|
20
|
-
}
|
|
21
|
-
return state.current;
|
|
22
|
-
};
|
|
23
|
-
const ensureArrayCopy = (state) => {
|
|
24
|
-
if (!state.copied) {
|
|
25
|
-
state.current = state.source.slice();
|
|
26
|
-
state.copied = true;
|
|
27
|
-
}
|
|
28
|
-
return state.current;
|
|
29
|
-
};
|
|
30
|
-
const createContainerMutation = (source, copyOnWrite) => {
|
|
31
|
-
if (!copyOnWrite) {
|
|
32
|
-
const record = source;
|
|
33
|
-
return {
|
|
34
|
-
copyOnWrite: false,
|
|
35
|
-
source,
|
|
36
|
-
set(key, value) {
|
|
37
|
-
record[key] = value;
|
|
38
|
-
},
|
|
39
|
-
remove(key) {
|
|
40
|
-
delete record[key];
|
|
41
|
-
},
|
|
42
|
-
result() {
|
|
43
|
-
return source;
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
if (Array.isArray(source)) {
|
|
48
|
-
const state = createArrayCopyState(source);
|
|
49
|
-
return {
|
|
50
|
-
copyOnWrite: true,
|
|
51
|
-
source,
|
|
52
|
-
set(key, value) {
|
|
53
|
-
const index = Number(key);
|
|
54
|
-
if (source[index] !== value) {
|
|
55
|
-
ensureArrayCopy(state)[index] = value;
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
remove(key) {
|
|
59
|
-
const index = Number(key);
|
|
60
|
-
if (index < source.length) {
|
|
61
|
-
delete ensureArrayCopy(state)[index];
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
result() {
|
|
65
|
-
return finishArrayCopy(state);
|
|
66
|
-
}
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
const state = createObjectCopyState(source);
|
|
70
|
-
return {
|
|
71
|
-
copyOnWrite: true,
|
|
72
|
-
source,
|
|
73
|
-
set(key, value) {
|
|
74
|
-
if (source[key] !== value) {
|
|
75
|
-
ensureObjectCopy(state)[key] = value;
|
|
76
|
-
}
|
|
77
|
-
},
|
|
78
|
-
remove(key) {
|
|
79
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
80
|
-
delete ensureObjectCopy(state)[key];
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
result() {
|
|
84
|
-
return finishObjectCopy(state);
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
};
|
|
88
|
-
exports.createContainerMutation = createContainerMutation;
|
|
89
|
-
//# sourceMappingURL=objectRedactorMutation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorMutation.js","sourceRoot":"","sources":["../src/objectRedactorMutation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorSync.d.ts","sourceRoot":"","sources":["../src/objectRedactorSync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,IAAI,2BAA2B,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ObjectRedactorSyncTraversal = exports.ObjectRedactorTraversal = void 0;
|
|
4
|
-
var objectRedactorTraversal_1 = require("./objectRedactorTraversal");
|
|
5
|
-
Object.defineProperty(exports, "ObjectRedactorTraversal", { enumerable: true, get: function () { return objectRedactorTraversal_1.ObjectRedactorTraversal; } });
|
|
6
|
-
Object.defineProperty(exports, "ObjectRedactorSyncTraversal", { enumerable: true, get: function () { return objectRedactorTraversal_1.ObjectRedactorTraversal; } });
|
|
7
|
-
//# sourceMappingURL=objectRedactorSync.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorSync.js","sourceRoot":"","sources":["../src/objectRedactorSync.ts"],"names":[],"mappings":";;;AAAA,qEAA4H;AAAnH,kIAAA,uBAAuB,OAAA;AAAE,sIAAA,uBAAuB,OAA+B"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { TraversableJson } from './types';
|
|
2
|
-
import { SecretManager } from './secretManager';
|
|
3
|
-
import { CustomObjectManager } from './customObjectManager';
|
|
4
|
-
import { PrimitiveRedactor } from './primitiveRedactor';
|
|
5
|
-
import { ValuePatternMatcher } from './valuePatternMatcher';
|
|
6
|
-
import { PathRuleMatcher } from './pathRuleMatcher';
|
|
7
|
-
/**
|
|
8
|
-
* Unified JSON traversal for in-place and copy-on-write redaction.
|
|
9
|
-
* Sync and async paths share one implementation; async mode propagates Promises only when configured.
|
|
10
|
-
*/
|
|
11
|
-
export declare class ObjectRedactorTraversal {
|
|
12
|
-
private readonly primitiveRedactor;
|
|
13
|
-
private readonly secretManager;
|
|
14
|
-
private readonly valuePatternMatcher;
|
|
15
|
-
private readonly ruleResolver;
|
|
16
|
-
private readonly arrayRedactor;
|
|
17
|
-
private readonly customObjectHandler;
|
|
18
|
-
private readonly services;
|
|
19
|
-
constructor(primitiveRedactor: PrimitiveRedactor, secretManager: SecretManager, customObjManager: CustomObjectManager, valuePatternMatcher: ValuePatternMatcher, pathRuleMatcher: PathRuleMatcher);
|
|
20
|
-
usesAsyncRedactor(): boolean;
|
|
21
|
-
redactInPlace<T extends TraversableJson>(value: T): T;
|
|
22
|
-
redactCopyOnWrite<T extends TraversableJson>(value: T): T;
|
|
23
|
-
redactInPlaceAsync<T extends TraversableJson>(value: T): Promise<T>;
|
|
24
|
-
private get asyncMode();
|
|
25
|
-
private traverseRedact;
|
|
26
|
-
private handleCustomObject;
|
|
27
|
-
private redactArrayInObject;
|
|
28
|
-
private redactAllArrayValues;
|
|
29
|
-
private redactPrimitive;
|
|
30
|
-
private setPrimitive;
|
|
31
|
-
private setPrimitiveFromValue;
|
|
32
|
-
private chainHandled;
|
|
33
|
-
private applyFieldDisposition;
|
|
34
|
-
private redactFieldValue;
|
|
35
|
-
private redactSecretFields;
|
|
36
|
-
private processSecretField;
|
|
37
|
-
private applyDefaultSecretRules;
|
|
38
|
-
private redactNestedObject;
|
|
39
|
-
private setPrimitiveValueIfSecret;
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=objectRedactorTraversal.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorTraversal.d.ts","sourceRoot":"","sources":["../src/objectRedactorTraversal.ts"],"names":[],"mappings":"AAAA,OAAO,EAUL,eAAe,EAChB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAYpD;;;GAGG;AACH,qBAAa,uBAAuB;IAOhC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IATtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA2B;IAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;gBAG1B,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,aAAa,EAC7C,gBAAgB,EAAE,mBAAmB,EACpB,mBAAmB,EAAE,mBAAmB,EACzD,eAAe,EAAE,eAAe;IAiClC,iBAAiB,IAAI,OAAO;IAI5B,aAAa,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;IASrD,iBAAiB,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;IASzD,kBAAkB,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAInE,OAAO,KAAK,SAAS,GAEpB;IAED,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,qBAAqB;IAkC7B,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,kBAAkB;IAyC1B,OAAO,CAAC,uBAAuB;IA2B/B,OAAO,CAAC,kBAAkB;IA4B1B,OAAO,CAAC,yBAAyB;CAwBlC"}
|
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ObjectRedactorTraversal = void 0;
|
|
4
|
-
const types_1 = require("./types");
|
|
5
|
-
const objectRedactorMutation_1 = require("./objectRedactorMutation");
|
|
6
|
-
const objectRedactorHelpers_1 = require("./objectRedactorHelpers");
|
|
7
|
-
const ruleResolver_1 = require("./ruleResolver");
|
|
8
|
-
const maybeAsync_1 = require("./maybeAsync");
|
|
9
|
-
const arrayRedaction_1 = require("./arrayRedaction");
|
|
10
|
-
const customObjectFieldHandler_1 = require("./customObjectFieldHandler");
|
|
11
|
-
/**
|
|
12
|
-
* Unified JSON traversal for in-place and copy-on-write redaction.
|
|
13
|
-
* Sync and async paths share one implementation; async mode propagates Promises only when configured.
|
|
14
|
-
*/
|
|
15
|
-
class ObjectRedactorTraversal {
|
|
16
|
-
constructor(primitiveRedactor, secretManager, customObjManager, valuePatternMatcher, pathRuleMatcher) {
|
|
17
|
-
this.primitiveRedactor = primitiveRedactor;
|
|
18
|
-
this.secretManager = secretManager;
|
|
19
|
-
this.valuePatternMatcher = valuePatternMatcher;
|
|
20
|
-
this.ruleResolver = new ruleResolver_1.RuleResolver(secretManager, pathRuleMatcher, valuePatternMatcher, customObjManager);
|
|
21
|
-
this.services = {
|
|
22
|
-
get asyncMode() {
|
|
23
|
-
return primitiveRedactor.usesAsyncRedactor();
|
|
24
|
-
},
|
|
25
|
-
ruleResolver: this.ruleResolver,
|
|
26
|
-
secretManager,
|
|
27
|
-
valuePatternMatcher,
|
|
28
|
-
setPrimitive: (container, key, primitive) => this.setPrimitive(container, key, primitive),
|
|
29
|
-
setPrimitiveFromValue: (container, key, value) => this.setPrimitiveFromValue(container, key, value),
|
|
30
|
-
setPrimitiveValueIfSecret: (container, key, secretKey, value, forceDeepRedaction) => this.setPrimitiveValueIfSecret(container, key, secretKey, value, forceDeepRedaction),
|
|
31
|
-
redactSecretFields: (container, forceDeepRedaction, pathSegments) => this.redactSecretFields(container, forceDeepRedaction, pathSegments),
|
|
32
|
-
handleCustomObject: (container, customObject) => this.handleCustomObject(container, customObject),
|
|
33
|
-
redactArrayInObject: (array, key, forceDeepRedaction, parent, pathSegments) => this.redactArrayInObject(array, key, forceDeepRedaction, parent, pathSegments),
|
|
34
|
-
redactAllArrayValues: (array, forceDeepRedaction, copyOnWrite, pathSegments) => this.redactAllArrayValues(array, forceDeepRedaction, copyOnWrite, pathSegments)
|
|
35
|
-
};
|
|
36
|
-
this.arrayRedactor = new arrayRedaction_1.ArrayRedactor(this.services);
|
|
37
|
-
this.customObjectHandler = new customObjectFieldHandler_1.CustomObjectFieldHandler(this.services);
|
|
38
|
-
}
|
|
39
|
-
usesAsyncRedactor() {
|
|
40
|
-
return this.primitiveRedactor.usesAsyncRedactor();
|
|
41
|
-
}
|
|
42
|
-
redactInPlace(value) {
|
|
43
|
-
const result = this.traverseRedact(value, false);
|
|
44
|
-
if (result instanceof Promise) {
|
|
45
|
-
throw new Error('Unexpected async work on sync traversal path');
|
|
46
|
-
}
|
|
47
|
-
return result;
|
|
48
|
-
}
|
|
49
|
-
redactCopyOnWrite(value) {
|
|
50
|
-
const result = this.traverseRedact(value, true);
|
|
51
|
-
if (result instanceof Promise) {
|
|
52
|
-
throw new Error('Unexpected async work on sync traversal path');
|
|
53
|
-
}
|
|
54
|
-
return result;
|
|
55
|
-
}
|
|
56
|
-
redactInPlaceAsync(value) {
|
|
57
|
-
return Promise.resolve(this.traverseRedact(value, false));
|
|
58
|
-
}
|
|
59
|
-
get asyncMode() {
|
|
60
|
-
return this.primitiveRedactor.usesAsyncRedactor();
|
|
61
|
-
}
|
|
62
|
-
traverseRedact(value, copyOnWrite) {
|
|
63
|
-
const container = (0, objectRedactorMutation_1.createContainerMutation)(value, copyOnWrite);
|
|
64
|
-
const customObject = this.ruleResolver.getMatchingSchema(value);
|
|
65
|
-
const work = customObject && (0, types_1.isJsonObject)(value)
|
|
66
|
-
? this.handleCustomObject(container, customObject)
|
|
67
|
-
: this.redactSecretFields(container, false, []);
|
|
68
|
-
return (0, maybeAsync_1.finalizeMaybeAsync)(work, () => (copyOnWrite ? container.result() : value), this.asyncMode);
|
|
69
|
-
}
|
|
70
|
-
handleCustomObject(container, customObject) {
|
|
71
|
-
return this.customObjectHandler.handleCustomObject(container, customObject);
|
|
72
|
-
}
|
|
73
|
-
redactArrayInObject(array, key, forceDeepRedaction, parent, pathSegments) {
|
|
74
|
-
return this.arrayRedactor.redactArrayInObject(array, key, forceDeepRedaction, parent, pathSegments);
|
|
75
|
-
}
|
|
76
|
-
redactAllArrayValues(array, forceDeepRedaction, copyOnWrite, pathSegments) {
|
|
77
|
-
return this.arrayRedactor.redactAllArrayValues(array, forceDeepRedaction, copyOnWrite, pathSegments);
|
|
78
|
-
}
|
|
79
|
-
redactPrimitive(value) {
|
|
80
|
-
return this.asyncMode ? this.primitiveRedactor.redactValue(value) : this.primitiveRedactor.redactValueSync(value);
|
|
81
|
-
}
|
|
82
|
-
setPrimitive(container, key, primitive) {
|
|
83
|
-
const redacted = this.redactPrimitive(primitive);
|
|
84
|
-
if (redacted instanceof Promise) {
|
|
85
|
-
return redacted.then((result) => {
|
|
86
|
-
container.set(key, result);
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
container.set(key, redacted);
|
|
90
|
-
}
|
|
91
|
-
setPrimitiveFromValue(container, key, value) {
|
|
92
|
-
return this.setPrimitive(container, key, (0, objectRedactorHelpers_1.getStringValue)(value));
|
|
93
|
-
}
|
|
94
|
-
chainHandled(work) {
|
|
95
|
-
if (work instanceof Promise) {
|
|
96
|
-
return work.then(() => 'handled');
|
|
97
|
-
}
|
|
98
|
-
return 'handled';
|
|
99
|
-
}
|
|
100
|
-
applyFieldDisposition(disposition, value, key, fieldPath, container) {
|
|
101
|
-
switch (disposition.action) {
|
|
102
|
-
case 'skip':
|
|
103
|
-
return 'handled';
|
|
104
|
-
case 'remove':
|
|
105
|
-
container.remove(key);
|
|
106
|
-
return 'handled';
|
|
107
|
-
case 'opaque':
|
|
108
|
-
return this.chainHandled(this.setPrimitiveFromValue(container, key, value));
|
|
109
|
-
case 'deep':
|
|
110
|
-
return this.chainHandled(this.redactFieldValue(value, key, true, container, fieldPath));
|
|
111
|
-
case 'shallow':
|
|
112
|
-
if (Array.isArray(value) || (0, types_1.isJsonObject)(value)) {
|
|
113
|
-
return this.chainHandled(this.redactFieldValue(value, key, false, container, fieldPath));
|
|
114
|
-
}
|
|
115
|
-
return this.chainHandled(this.setPrimitive(container, key, (0, objectRedactorHelpers_1.toRedactablePrimitive)(value)));
|
|
116
|
-
case 'pass-key-recurse':
|
|
117
|
-
if (Array.isArray(value) || (0, types_1.isJsonObject)(value)) {
|
|
118
|
-
return this.chainHandled(this.redactFieldValue(value, key, false, container, fieldPath));
|
|
119
|
-
}
|
|
120
|
-
return 'handled';
|
|
121
|
-
default:
|
|
122
|
-
return 'default';
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
redactFieldValue(value, key, forceDeepRedaction, container, fieldPath) {
|
|
126
|
-
if (Array.isArray(value)) {
|
|
127
|
-
return this.redactArrayInObject(value, key, forceDeepRedaction, container, fieldPath);
|
|
128
|
-
}
|
|
129
|
-
if ((0, types_1.isJsonObject)(value)) {
|
|
130
|
-
return this.redactNestedObject(value, key, forceDeepRedaction, container, fieldPath);
|
|
131
|
-
}
|
|
132
|
-
return this.setPrimitiveValueIfSecret(container, key, key, value, forceDeepRedaction);
|
|
133
|
-
}
|
|
134
|
-
redactSecretFields(container, forceDeepRedaction, pathSegments) {
|
|
135
|
-
const record = container.source;
|
|
136
|
-
return (0, maybeAsync_1.runSequential)(Object.keys(record), (key) => this.processSecretField(record, key, forceDeepRedaction, pathSegments, container), this.asyncMode);
|
|
137
|
-
}
|
|
138
|
-
processSecretField(record, key, forceDeepRedaction, pathSegments, container) {
|
|
139
|
-
const fieldValue = record[key];
|
|
140
|
-
const fieldPath = [...pathSegments, key];
|
|
141
|
-
const customObject = (0, types_1.isJsonObject)(fieldValue) ? this.ruleResolver.getMatchingSchema(fieldValue) : undefined;
|
|
142
|
-
if (customObject && (0, types_1.isJsonObject)(fieldValue)) {
|
|
143
|
-
const child = (0, objectRedactorMutation_1.createContainerMutation)(fieldValue, container.copyOnWrite);
|
|
144
|
-
return (0, maybeAsync_1.finalizeMaybeAsync)(this.handleCustomObject(child, customObject), () => {
|
|
145
|
-
if (container.copyOnWrite) {
|
|
146
|
-
container.set(key, child.result());
|
|
147
|
-
}
|
|
148
|
-
}, this.asyncMode);
|
|
149
|
-
}
|
|
150
|
-
const disposition = this.ruleResolver.resolvePathDisposition(pathSegments, key, forceDeepRedaction);
|
|
151
|
-
const dispositionResult = this.applyFieldDisposition(disposition, fieldValue, key, fieldPath, container);
|
|
152
|
-
if (dispositionResult instanceof Promise) {
|
|
153
|
-
return dispositionResult.then((handled) => handled === 'handled'
|
|
154
|
-
? undefined
|
|
155
|
-
: this.applyDefaultSecretRules(fieldValue, key, forceDeepRedaction, container, fieldPath));
|
|
156
|
-
}
|
|
157
|
-
if (dispositionResult === 'handled') {
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
return this.applyDefaultSecretRules(fieldValue, key, forceDeepRedaction, container, fieldPath);
|
|
161
|
-
}
|
|
162
|
-
applyDefaultSecretRules(fieldValue, key, forceDeepRedaction, container, fieldPath) {
|
|
163
|
-
if (this.ruleResolver.shouldRemoveByKey(key)) {
|
|
164
|
-
container.remove(key);
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
if (this.ruleResolver.shouldOpaqueByKey(key)) {
|
|
168
|
-
return this.setPrimitiveFromValue(container, key, fieldValue);
|
|
169
|
-
}
|
|
170
|
-
if (Array.isArray(fieldValue)) {
|
|
171
|
-
return this.redactArrayInObject(fieldValue, key, forceDeepRedaction, container, fieldPath);
|
|
172
|
-
}
|
|
173
|
-
if ((0, types_1.isJsonObject)(fieldValue)) {
|
|
174
|
-
return this.redactNestedObject(fieldValue, key, forceDeepRedaction, container, fieldPath);
|
|
175
|
-
}
|
|
176
|
-
return this.setPrimitiveValueIfSecret(container, key, key, fieldValue, forceDeepRedaction);
|
|
177
|
-
}
|
|
178
|
-
redactNestedObject(value, key, forceDeepRedaction, parent, pathSegments) {
|
|
179
|
-
const child = (0, objectRedactorMutation_1.createContainerMutation)(value, parent.copyOnWrite);
|
|
180
|
-
const customObject = this.ruleResolver.getMatchingSchema(value);
|
|
181
|
-
const work = customObject
|
|
182
|
-
? this.handleCustomObject(child, customObject)
|
|
183
|
-
: this.redactSecretFields(child, this.ruleResolver.nestedObjectForceDeepRedaction(key, forceDeepRedaction), pathSegments);
|
|
184
|
-
return (0, maybeAsync_1.finalizeMaybeAsync)(work, () => {
|
|
185
|
-
if (parent.copyOnWrite) {
|
|
186
|
-
parent.set(key, child.result());
|
|
187
|
-
}
|
|
188
|
-
}, this.asyncMode);
|
|
189
|
-
}
|
|
190
|
-
setPrimitiveValueIfSecret(container, key, secretKey, value, forceDeepRedaction) {
|
|
191
|
-
const redacted = (0, objectRedactorHelpers_1.redactPrimitiveValueIfSecret)(this.secretManager, this.valuePatternMatcher, (primitive) => this.redactPrimitive(primitive), secretKey, value, forceDeepRedaction);
|
|
192
|
-
if (redacted instanceof Promise) {
|
|
193
|
-
return redacted.then((result) => {
|
|
194
|
-
container.set(key, result);
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
container.set(key, redacted);
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
exports.ObjectRedactorTraversal = ObjectRedactorTraversal;
|
|
201
|
-
//# sourceMappingURL=objectRedactorTraversal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorTraversal.js","sourceRoot":"","sources":["../src/objectRedactorTraversal.ts"],"names":[],"mappings":"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"}
|
package/dist/pathParsing.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export type JsonPathSegment = string | number;
|
|
2
|
-
export type PathPatternSegment = string | number | '*';
|
|
3
|
-
export type ParsePathOptions = {
|
|
4
|
-
allowWildcard?: boolean;
|
|
5
|
-
coerceNumericSegments?: boolean;
|
|
6
|
-
};
|
|
7
|
-
/** Parse dot/bracket path syntax shared by JSON paths and path-rule patterns. */
|
|
8
|
-
export declare const parsePathSegments: (path: string, options?: ParsePathOptions) => PathPatternSegment[];
|
|
9
|
-
export declare const parseJsonPath: (path: string) => JsonPathSegment[];
|
|
10
|
-
export declare const parsePathRulePattern: (pattern: string) => PathPatternSegment[];
|
|
11
|
-
//# sourceMappingURL=pathParsing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pathParsing.d.ts","sourceRoot":"","sources":["../src/pathParsing.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AAC9C,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,GAAG,CAAC;AAEvD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAmBF,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,SAAU,MAAM,YAAW,gBAAgB,KAAQ,kBAAkB,EAuClG,CAAC;AAEF,eAAO,MAAM,aAAa,SAAU,MAAM,KAAG,eAAe,EACoB,CAAC;AAEjF,eAAO,MAAM,oBAAoB,YAAa,MAAM,KAAG,kBAAkB,EACS,CAAC"}
|