@schema-hub/stryker-zod-mutator 0.0.1 → 0.0.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.
Files changed (36) hide show
  1. package/LICENSE +21 -0
  2. package/package.json +44 -6
  3. package/readme.md +171 -5
  4. package/sbom.cdx.json +84 -0
  5. package/stryker-zod-mutator/ast.js +75 -0
  6. package/stryker-zod-mutator/ast.js.map +1 -0
  7. package/stryker-zod-mutator/behavior-mutations.js +64 -0
  8. package/stryker-zod-mutator/behavior-mutations.js.map +1 -0
  9. package/stryker-zod-mutator/check-mutations.js +159 -0
  10. package/stryker-zod-mutator/check-mutations.js.map +1 -0
  11. package/stryker-zod-mutator/collection-mutations.js +153 -0
  12. package/stryker-zod-mutator/collection-mutations.js.map +1 -0
  13. package/stryker-zod-mutator/entry-point.d.ts +11 -0
  14. package/stryker-zod-mutator/entry-point.d.ts.map +1 -0
  15. package/stryker-zod-mutator/entry-point.js +19 -0
  16. package/stryker-zod-mutator/entry-point.js.map +1 -0
  17. package/stryker-zod-mutator/mutation-definition.js +17 -0
  18. package/stryker-zod-mutator/mutation-definition.js.map +1 -0
  19. package/stryker-zod-mutator/mutations.js +24 -0
  20. package/stryker-zod-mutator/mutations.js.map +1 -0
  21. package/stryker-zod-mutator/object-mutations.js +96 -0
  22. package/stryker-zod-mutator/object-mutations.js.map +1 -0
  23. package/stryker-zod-mutator/operator.d.ts +6 -0
  24. package/stryker-zod-mutator/operator.d.ts.map +1 -0
  25. package/stryker-zod-mutator/operator.js +93 -0
  26. package/stryker-zod-mutator/operator.js.map +1 -0
  27. package/stryker-zod-mutator/presence-mutations.js +35 -0
  28. package/stryker-zod-mutator/presence-mutations.js.map +1 -0
  29. package/stryker-zod-mutator/primitive-mutations.js +27 -0
  30. package/stryker-zod-mutator/primitive-mutations.js.map +1 -0
  31. package/stryker-zod-mutator/registry.js +59 -0
  32. package/stryker-zod-mutator/registry.js.map +1 -0
  33. package/stryker-zod-mutator/schema-call-mutations.js +81 -0
  34. package/stryker-zod-mutator/schema-call-mutations.js.map +1 -0
  35. package/stryker-zod-mutator/zod-bindings.js +222 -0
  36. package/stryker-zod-mutator/zod-bindings.js.map +1 -0
@@ -0,0 +1,153 @@
1
+ import * as babel from '@babel/types';
2
+ import { cloneExpression, isExpressionNode, numericArgumentMutations, replaceArrayItem } from "./ast.js";
3
+ import { callNode, createDefinition } from "./mutation-definition.js";
4
+ import { removeMethod } from "./schema-call-mutations.js";
5
+ import { buildZodCall, expressionStyle, getZodCallName, replaceZodCallee } from "./zod-bindings.js";
6
+ function replaceFactory(path, bindings, replacement) {
7
+ const call = callNode(path);
8
+ if (call === null || getZodCallName(bindings, call) !== replacement.sourceName) {
9
+ return [];
10
+ }
11
+ const style = expressionStyle(bindings, call);
12
+ const args = replacement.mapArguments(call);
13
+ if (style === null || args === null) {
14
+ return [];
15
+ }
16
+ const replacementCall = buildZodCall(bindings, style, replacement.targetName, args);
17
+ return replacementCall === null ? [] : [replacementCall];
18
+ }
19
+ function tupleArray(call) {
20
+ const argument = call.arguments[0];
21
+ return babel.isArrayExpression(argument) ? argument : null;
22
+ }
23
+ function removeTupleItems(path, bindings) {
24
+ const call = callNode(path);
25
+ if (call === null || getZodCallName(bindings, call) !== 'tuple') {
26
+ return [];
27
+ }
28
+ const items = tupleArray(call);
29
+ if (items === null) {
30
+ return [];
31
+ }
32
+ return items.elements.flatMap(function (element, index) {
33
+ if (!isExpressionNode(element)) {
34
+ return [];
35
+ }
36
+ const clone = babel.cloneNode(call, true);
37
+ clone.arguments[0] = replaceArrayItem(items, index);
38
+ return [clone];
39
+ });
40
+ }
41
+ function addTupleRest(path, bindings) {
42
+ const call = callNode(path);
43
+ if (call === null || getZodCallName(bindings, call) !== 'tuple' || call.arguments.length > 1) {
44
+ return [];
45
+ }
46
+ const items = tupleArray(call);
47
+ const restSchema = items?.elements.find(isExpressionNode);
48
+ if (restSchema === undefined) {
49
+ return [];
50
+ }
51
+ const clone = babel.cloneNode(call, true);
52
+ clone.arguments.push(cloneExpression(restSchema));
53
+ return [clone];
54
+ }
55
+ function removeTupleRest(path, bindings) {
56
+ const call = callNode(path);
57
+ if (call === null) {
58
+ return [];
59
+ }
60
+ if (getZodCallName(bindings, call) !== 'tuple' || call.arguments.length <= 1) {
61
+ return removeMethod(call, bindings, new Set(['rest']));
62
+ }
63
+ const clone = babel.cloneNode(call, true);
64
+ clone.arguments = clone.arguments.slice(0, 1);
65
+ return [clone];
66
+ }
67
+ function swapRecordFactory(path, bindings) {
68
+ const call = callNode(path);
69
+ const currentName = call === null ? null : getZodCallName(bindings, call);
70
+ if (call === null || currentName === null || !['record', 'partialRecord', 'looseRecord'].includes(currentName)) {
71
+ return [];
72
+ }
73
+ return ['record', 'partialRecord', 'looseRecord']
74
+ .filter(function (target) {
75
+ return target !== currentName;
76
+ })
77
+ .flatMap(function (target) {
78
+ return replaceZodCallee(bindings, call, target) ?? [];
79
+ });
80
+ }
81
+ function removeArrayOptions(path, bindings, callNames, argumentIndex) {
82
+ const call = callNode(path);
83
+ if (call === null || !callNames.has(getZodCallName(bindings, call) ?? '')) {
84
+ return [];
85
+ }
86
+ const options = call.arguments[argumentIndex];
87
+ if (!babel.isArrayExpression(options)) {
88
+ return [];
89
+ }
90
+ return options.elements.flatMap(function (element, index) {
91
+ if (!isExpressionNode(element)) {
92
+ return [];
93
+ }
94
+ const clone = babel.cloneNode(call, true);
95
+ clone.arguments[argumentIndex] = replaceArrayItem(options, index);
96
+ return [clone];
97
+ });
98
+ }
99
+ function mutateNumericLiteral(path, bindings) {
100
+ const call = callNode(path);
101
+ if (call === null || getZodCallName(bindings, call) !== 'literal') {
102
+ return [];
103
+ }
104
+ return numericArgumentMutations(call, 0);
105
+ }
106
+ function arrayItemArgument(call) {
107
+ const item = call.arguments[0];
108
+ return item !== undefined && isExpressionNode(item)
109
+ ? [babel.arrayExpression([cloneExpression(item)])]
110
+ : null;
111
+ }
112
+ function hasSingleTupleItem(call, items) {
113
+ return items?.elements.length === 1 && call.arguments.length === 1;
114
+ }
115
+ function singleTupleItem(call) {
116
+ const items = tupleArray(call);
117
+ const item = items?.elements[0];
118
+ if (!hasSingleTupleItem(call, items) || item === undefined || !isExpressionNode(item)) {
119
+ return null;
120
+ }
121
+ return [cloneExpression(item)];
122
+ }
123
+ export const collectionMutationDefinitions = [
124
+ createDefinition('ZodArrayToTuple', function (path, bindings) {
125
+ return replaceFactory(path, bindings, {
126
+ sourceName: 'array',
127
+ targetName: 'tuple',
128
+ mapArguments: arrayItemArgument
129
+ });
130
+ }),
131
+ createDefinition('ZodTupleToArray', function (path, bindings) {
132
+ return replaceFactory(path, bindings, {
133
+ sourceName: 'tuple',
134
+ targetName: 'array',
135
+ mapArguments: singleTupleItem
136
+ });
137
+ }),
138
+ createDefinition('ZodTupleItemRemove', removeTupleItems),
139
+ createDefinition('ZodTupleRestAdd', addTupleRest),
140
+ createDefinition('ZodTupleRestRemove', removeTupleRest),
141
+ createDefinition('ZodRecordFactorySwap', swapRecordFactory),
142
+ createDefinition('ZodUnionOptionRemove', function (path, bindings) {
143
+ return [
144
+ ...removeArrayOptions(path, bindings, new Set(['union']), 0),
145
+ ...removeArrayOptions(path, bindings, new Set(['discriminatedUnion']), 1)
146
+ ];
147
+ }),
148
+ createDefinition('ZodEnumValueRemove', function (path, bindings) {
149
+ return removeArrayOptions(path, bindings, new Set(['enum']), 0);
150
+ }),
151
+ createDefinition('ZodNumericLiteralChange', mutateNumericLiteral)
152
+ ];
153
+ //# sourceMappingURL=collection-mutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-mutations.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/collection-mutations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { PartialStrykerOptions } from '@stryker-mutator/api/core';
2
+ import { type ZodMutationCategory, type ZodMutationOperator } from './operator.ts';
3
+ export type ZodMutatorSettings = {
4
+ readonly includedCategories: readonly ZodMutationCategory[] | undefined;
5
+ readonly includedOperators: readonly ZodMutationOperator[] | undefined;
6
+ };
7
+ export declare const defaultZodMutatorSettings: ZodMutatorSettings;
8
+ export declare function withZodMutators<Config extends PartialStrykerOptions>(strykerConfig: Config, settings: ZodMutatorSettings): Promise<Config>;
9
+ export declare function withDefaultZodMutators<Config extends PartialStrykerOptions>(strykerConfig: Config): Promise<Config>;
10
+ export { zodMutationCategories, zodMutationOperatorCategories, zodMutationOperators, type ZodMutationCategory, type ZodMutationOperator } from './operator.ts';
11
+ //# sourceMappingURL=entry-point.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entry-point.d.ts","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEvE,OAAO,EAGH,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAC3B,MAAM,eAAe,CAAC;AAGvB,MAAM,MAAM,kBAAkB,GAAG;IAC7B,QAAQ,CAAC,kBAAkB,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,CAAC;IACxE,QAAQ,CAAC,iBAAiB,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,CAAC;CAC1E,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,kBAGvC,CAAC;AAEF,wBAAsB,eAAe,CAAC,MAAM,SAAS,qBAAqB,EACtE,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,kBAAkB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,wBAAsB,sBAAsB,CAAC,MAAM,SAAS,qBAAqB,EAC7E,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,CAEjB;AAED,OAAO,EACH,qBAAqB,EACrB,6BAA6B,EAC7B,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAC3B,MAAM,eAAe,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { createInstrumenter } from '@stryker-mutator/instrumenter';
2
+ import { zodMutationCategories, zodMutationOperators } from "./operator.js";
3
+ import { installZodMutators } from "./registry.js";
4
+ export const defaultZodMutatorSettings = {
5
+ includedCategories: zodMutationCategories,
6
+ includedOperators: zodMutationOperators
7
+ };
8
+ export async function withZodMutators(strykerConfig, settings) {
9
+ if (typeof createInstrumenter !== 'function') {
10
+ throw new TypeError('Expected @stryker-mutator/instrumenter to expose createInstrumenter.');
11
+ }
12
+ await installZodMutators(settings);
13
+ return strykerConfig;
14
+ }
15
+ export async function withDefaultZodMutators(strykerConfig) {
16
+ return withZodMutators(strykerConfig, defaultZodMutatorSettings);
17
+ }
18
+ export { zodMutationCategories, zodMutationOperatorCategories, zodMutationOperators } from "./operator.js";
19
+ //# sourceMappingURL=entry-point.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entry-point.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/entry-point.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACH,qBAAqB,EACrB,oBAAoB,EAGvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAOnD,MAAM,CAAC,MAAM,yBAAyB,GAAuB;IACzD,kBAAkB,EAAE,qBAAqB;IACzC,iBAAiB,EAAE,oBAAoB;CAC1C,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,eAAe,CACjC,aAAqB,EACrB,QAA4B;IAE5B,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE,CAAC;QAC3C,MAAM,IAAI,SAAS,CAAC,sEAAsE,CAAC,CAAC;IAChG,CAAC;IAED,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CACxC,aAAqB;IAErB,OAAO,eAAe,CAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;AACrE,CAAC;AAED,OAAO,EACH,qBAAqB,EACrB,6BAA6B,EAC7B,oBAAoB,EAGvB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ import * as babel from '@babel/types';
2
+ import { readZodBindings } from "./zod-bindings.js";
3
+ export function createDefinition(name, mutate) {
4
+ return { name, mutate };
5
+ }
6
+ export function callNode(path) {
7
+ return babel.isCallExpression(path.node) ? path.node : null;
8
+ }
9
+ export function createZodMutator(definition) {
10
+ return {
11
+ name: definition.name,
12
+ mutate(path) {
13
+ return definition.mutate(path, readZodBindings(path));
14
+ }
15
+ };
16
+ }
17
+ //# sourceMappingURL=mutation-definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-definition.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/mutation-definition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAItC,OAAO,EAAE,eAAe,EAAoB,MAAM,mBAAmB,CAAC;AAYtE,MAAM,UAAU,gBAAgB,CAC5B,IAAyB,EACzB,MAA2E;IAE3E,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAkB;IACvC,OAAO,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,UAA8B;IAC3D,OAAO;QACH,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,MAAM,CAAC,IAAkB;YACrB,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { behaviorMutationDefinitions } from "./behavior-mutations.js";
2
+ import { checkMutationDefinitions } from "./check-mutations.js";
3
+ import { collectionMutationDefinitions } from "./collection-mutations.js";
4
+ import { createZodMutator } from "./mutation-definition.js";
5
+ import { objectMutationDefinitions } from "./object-mutations.js";
6
+ import { presenceMutationDefinitions } from "./presence-mutations.js";
7
+ import { primitiveMutationDefinitions } from "./primitive-mutations.js";
8
+ const mutationDefinitions = [
9
+ ...primitiveMutationDefinitions,
10
+ ...presenceMutationDefinitions,
11
+ ...objectMutationDefinitions,
12
+ ...checkMutationDefinitions,
13
+ ...collectionMutationDefinitions,
14
+ ...behaviorMutationDefinitions
15
+ ];
16
+ export function createZodMutators(operators) {
17
+ const selectedOperators = new Set(operators);
18
+ return mutationDefinitions
19
+ .filter(function (definition) {
20
+ return selectedOperators.has(definition.name);
21
+ })
22
+ .map(createZodMutator);
23
+ }
24
+ //# sourceMappingURL=mutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutations.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/mutations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EACH,gBAAgB,EAGnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAExE,MAAM,mBAAmB,GAAkC;IACvD,GAAG,4BAA4B;IAC/B,GAAG,2BAA2B;IAC9B,GAAG,yBAAyB;IAC5B,GAAG,wBAAwB;IAC3B,GAAG,6BAA6B;IAChC,GAAG,2BAA2B;CACjC,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,SAAyC;IACvE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAE7C,OAAO,mBAAmB;SACrB,MAAM,CAAC,UAAU,UAAU;QACxB,OAAO,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC;SACD,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,96 @@
1
+ import * as babel from '@babel/types';
2
+ import { cloneExpression, isExpressionNode, memberCall, removeObjectProperty, replaceObjectProperty } from "./ast.js";
3
+ import { callNode, createDefinition } from "./mutation-definition.js";
4
+ import { buildZodCall, expressionStyle, getZodCallName, isObjectLikeFactory, isZodSchemaExpression, replaceZodCallee } from "./zod-bindings.js";
5
+ import { removeMethodOrWrapper } from "./schema-call-mutations.js";
6
+ function mutateObjectFactory(path, bindings) {
7
+ const call = callNode(path);
8
+ const callName = call === null ? null : getZodCallName(bindings, call);
9
+ if (call === null || callName === null || !isObjectLikeFactory(callName)) {
10
+ return [];
11
+ }
12
+ return ['object', 'strictObject', 'looseObject']
13
+ .filter(function (replacement) {
14
+ return replacement !== callName;
15
+ })
16
+ .flatMap(function (replacement) {
17
+ return replaceZodCallee(bindings, call, replacement) ?? [];
18
+ });
19
+ }
20
+ function mutateObjectFields(path, bindings, fieldMutation) {
21
+ const call = callNode(path);
22
+ if (call === null || !isObjectLikeFactory(getZodCallName(bindings, call) ?? '')) {
23
+ return [];
24
+ }
25
+ const shape = call.arguments[0];
26
+ if (!babel.isObjectExpression(shape)) {
27
+ return [];
28
+ }
29
+ return shape.properties.flatMap(function (property, index) {
30
+ if (!babel.isObjectProperty(property)) {
31
+ return [];
32
+ }
33
+ const mutatedShape = fieldMutation(shape, index);
34
+ if (mutatedShape === null) {
35
+ return [];
36
+ }
37
+ const clone = babel.cloneNode(call, true);
38
+ clone.arguments[0] = mutatedShape;
39
+ return [clone];
40
+ });
41
+ }
42
+ function buildFieldWrapper(bindings, value, style, wrapperName) {
43
+ return style === 'classic'
44
+ ? memberCall(cloneExpression(value), wrapperName, [])
45
+ : buildZodCall(bindings, style, wrapperName, [cloneExpression(value)]);
46
+ }
47
+ function objectFieldValue(objectExpression, index) {
48
+ const property = objectExpression.properties[index];
49
+ return babel.isObjectProperty(property) && isExpressionNode(property.value)
50
+ ? property.value
51
+ : null;
52
+ }
53
+ function wrapObjectField(bindings, objectExpression, index, wrapperName) {
54
+ const value = objectFieldValue(objectExpression, index);
55
+ const style = value === null ? null : expressionStyle(bindings, value);
56
+ if (value === null || style === null || !isZodSchemaExpression(bindings, value)) {
57
+ return null;
58
+ }
59
+ const wrapper = buildFieldWrapper(bindings, value, style, wrapperName);
60
+ return wrapper === null ? null : replaceObjectProperty(objectExpression, index, wrapper);
61
+ }
62
+ function addObjectPolicy(path, bindings) {
63
+ const expression = isExpressionNode(path.node) ? path.node : null;
64
+ if (expression === null ||
65
+ expressionStyle(bindings, expression) !== 'classic' ||
66
+ !isZodSchemaExpression(bindings, expression)) {
67
+ return [];
68
+ }
69
+ return ['strict', 'passthrough', 'strip'].map(function (name) {
70
+ return memberCall(cloneExpression(expression), name, []);
71
+ });
72
+ }
73
+ export const objectMutationDefinitions = [
74
+ createDefinition('ZodObjectPolicyAdd', addObjectPolicy),
75
+ createDefinition('ZodObjectPolicyRemove', function (path, bindings) {
76
+ return removeMethodOrWrapper(path, bindings, new Set(['strict', 'passthrough', 'strip']));
77
+ }),
78
+ createDefinition('ZodObjectFactorySwap', mutateObjectFactory),
79
+ createDefinition('ZodObjectCatchallRemove', function (path, bindings) {
80
+ return removeMethodOrWrapper(path, bindings, new Set(['catchall']));
81
+ }),
82
+ createDefinition('ZodObjectFieldRemove', function (path, bindings) {
83
+ return mutateObjectFields(path, bindings, removeObjectProperty);
84
+ }),
85
+ createDefinition('ZodObjectFieldOptionalAdd', function (path, bindings) {
86
+ return mutateObjectFields(path, bindings, function (objectExpression, index) {
87
+ return wrapObjectField(bindings, objectExpression, index, 'optional');
88
+ });
89
+ }),
90
+ createDefinition('ZodObjectFieldNullableAdd', function (path, bindings) {
91
+ return mutateObjectFields(path, bindings, function (objectExpression, index) {
92
+ return wrapObjectField(bindings, objectExpression, index, 'nullable');
93
+ });
94
+ })
95
+ ];
96
+ //# sourceMappingURL=object-mutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-mutations.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/object-mutations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare const zodMutationCategories: readonly ["primitive", "presence", "readonly", "object", "string", "number", "collection", "union", "fallback", "coercion"];
2
+ export type ZodMutationCategory = typeof zodMutationCategories[number];
3
+ export declare const zodMutationOperators: readonly ["ZodPrimitiveFactorySwap", "ZodOptionalAdd", "ZodOptionalRemove", "ZodNullableAdd", "ZodNullableRemove", "ZodNullishRemove", "ZodNullishToNullable", "ZodNullishToOptional", "ZodNonoptionalRemove", "ZodReadonlyAdd", "ZodReadonlyRemove", "ZodObjectPolicyAdd", "ZodObjectPolicyRemove", "ZodObjectFactorySwap", "ZodObjectCatchallRemove", "ZodObjectFieldRemove", "ZodObjectFieldOptionalAdd", "ZodObjectFieldNullableAdd", "ZodStringCheckRemove", "ZodStringBoundaryChange", "ZodStringFormatToString", "ZodNumberCheckRemove", "ZodNumberBoundaryChange", "ZodNumberStrictnessSwap", "ZodCollectionCheckRemove", "ZodCollectionBoundaryChange", "ZodArrayToTuple", "ZodTupleToArray", "ZodTupleItemRemove", "ZodTupleRestAdd", "ZodTupleRestRemove", "ZodRecordFactorySwap", "ZodUnionOptionRemove", "ZodEnumValueRemove", "ZodNumericLiteralChange", "ZodFallbackRemove", "ZodCustomBehaviorRemove", "ZodCoercionRemove"];
4
+ export type ZodMutationOperator = typeof zodMutationOperators[number];
5
+ export declare const zodMutationOperatorCategories: Record<ZodMutationOperator, ZodMutationCategory>;
6
+ //# sourceMappingURL=operator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/operator.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,6HAWxB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAEvE,eAAO,MAAM,oBAAoB,64BAuCvB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAEtE,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAuC1F,CAAC"}
@@ -0,0 +1,93 @@
1
+ export const zodMutationCategories = [
2
+ 'primitive',
3
+ 'presence',
4
+ 'readonly',
5
+ 'object',
6
+ 'string',
7
+ 'number',
8
+ 'collection',
9
+ 'union',
10
+ 'fallback',
11
+ 'coercion'
12
+ ];
13
+ export const zodMutationOperators = [
14
+ 'ZodPrimitiveFactorySwap',
15
+ 'ZodOptionalAdd',
16
+ 'ZodOptionalRemove',
17
+ 'ZodNullableAdd',
18
+ 'ZodNullableRemove',
19
+ 'ZodNullishRemove',
20
+ 'ZodNullishToNullable',
21
+ 'ZodNullishToOptional',
22
+ 'ZodNonoptionalRemove',
23
+ 'ZodReadonlyAdd',
24
+ 'ZodReadonlyRemove',
25
+ 'ZodObjectPolicyAdd',
26
+ 'ZodObjectPolicyRemove',
27
+ 'ZodObjectFactorySwap',
28
+ 'ZodObjectCatchallRemove',
29
+ 'ZodObjectFieldRemove',
30
+ 'ZodObjectFieldOptionalAdd',
31
+ 'ZodObjectFieldNullableAdd',
32
+ 'ZodStringCheckRemove',
33
+ 'ZodStringBoundaryChange',
34
+ 'ZodStringFormatToString',
35
+ 'ZodNumberCheckRemove',
36
+ 'ZodNumberBoundaryChange',
37
+ 'ZodNumberStrictnessSwap',
38
+ 'ZodCollectionCheckRemove',
39
+ 'ZodCollectionBoundaryChange',
40
+ 'ZodArrayToTuple',
41
+ 'ZodTupleToArray',
42
+ 'ZodTupleItemRemove',
43
+ 'ZodTupleRestAdd',
44
+ 'ZodTupleRestRemove',
45
+ 'ZodRecordFactorySwap',
46
+ 'ZodUnionOptionRemove',
47
+ 'ZodEnumValueRemove',
48
+ 'ZodNumericLiteralChange',
49
+ 'ZodFallbackRemove',
50
+ 'ZodCustomBehaviorRemove',
51
+ 'ZodCoercionRemove'
52
+ ];
53
+ export const zodMutationOperatorCategories = {
54
+ ZodPrimitiveFactorySwap: 'primitive',
55
+ ZodOptionalAdd: 'presence',
56
+ ZodOptionalRemove: 'presence',
57
+ ZodNullableAdd: 'presence',
58
+ ZodNullableRemove: 'presence',
59
+ ZodNullishRemove: 'presence',
60
+ ZodNullishToNullable: 'presence',
61
+ ZodNullishToOptional: 'presence',
62
+ ZodNonoptionalRemove: 'presence',
63
+ ZodReadonlyAdd: 'readonly',
64
+ ZodReadonlyRemove: 'readonly',
65
+ ZodObjectPolicyAdd: 'object',
66
+ ZodObjectPolicyRemove: 'object',
67
+ ZodObjectFactorySwap: 'object',
68
+ ZodObjectCatchallRemove: 'object',
69
+ ZodObjectFieldRemove: 'object',
70
+ ZodObjectFieldOptionalAdd: 'object',
71
+ ZodObjectFieldNullableAdd: 'object',
72
+ ZodStringCheckRemove: 'string',
73
+ ZodStringBoundaryChange: 'string',
74
+ ZodStringFormatToString: 'string',
75
+ ZodNumberCheckRemove: 'number',
76
+ ZodNumberBoundaryChange: 'number',
77
+ ZodNumberStrictnessSwap: 'number',
78
+ ZodCollectionCheckRemove: 'collection',
79
+ ZodCollectionBoundaryChange: 'collection',
80
+ ZodArrayToTuple: 'collection',
81
+ ZodTupleToArray: 'collection',
82
+ ZodTupleItemRemove: 'collection',
83
+ ZodTupleRestAdd: 'collection',
84
+ ZodTupleRestRemove: 'collection',
85
+ ZodRecordFactorySwap: 'collection',
86
+ ZodUnionOptionRemove: 'union',
87
+ ZodEnumValueRemove: 'union',
88
+ ZodNumericLiteralChange: 'union',
89
+ ZodFallbackRemove: 'fallback',
90
+ ZodCustomBehaviorRemove: 'fallback',
91
+ ZodCoercionRemove: 'coercion'
92
+ };
93
+ //# sourceMappingURL=operator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operator.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/operator.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACjC,WAAW;IACX,UAAU;IACV,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,UAAU;IACV,UAAU;CACJ,CAAC;AAIX,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,yBAAyB;IACzB,gBAAgB;IAChB,mBAAmB;IACnB,gBAAgB;IAChB,mBAAmB;IACnB,kBAAkB;IAClB,sBAAsB;IACtB,sBAAsB;IACtB,sBAAsB;IACtB,gBAAgB;IAChB,mBAAmB;IACnB,oBAAoB;IACpB,uBAAuB;IACvB,sBAAsB;IACtB,yBAAyB;IACzB,sBAAsB;IACtB,2BAA2B;IAC3B,2BAA2B;IAC3B,sBAAsB;IACtB,yBAAyB;IACzB,yBAAyB;IACzB,sBAAsB;IACtB,yBAAyB;IACzB,yBAAyB;IACzB,0BAA0B;IAC1B,6BAA6B;IAC7B,iBAAiB;IACjB,iBAAiB;IACjB,oBAAoB;IACpB,iBAAiB;IACjB,oBAAoB;IACpB,sBAAsB;IACtB,sBAAsB;IACtB,oBAAoB;IACpB,yBAAyB;IACzB,mBAAmB;IACnB,yBAAyB;IACzB,mBAAmB;CACb,CAAC;AAIX,MAAM,CAAC,MAAM,6BAA6B,GAAqD;IAC3F,uBAAuB,EAAE,WAAW;IACpC,cAAc,EAAE,UAAU;IAC1B,iBAAiB,EAAE,UAAU;IAC7B,cAAc,EAAE,UAAU;IAC1B,iBAAiB,EAAE,UAAU;IAC7B,gBAAgB,EAAE,UAAU;IAC5B,oBAAoB,EAAE,UAAU;IAChC,oBAAoB,EAAE,UAAU;IAChC,oBAAoB,EAAE,UAAU;IAChC,cAAc,EAAE,UAAU;IAC1B,iBAAiB,EAAE,UAAU;IAC7B,kBAAkB,EAAE,QAAQ;IAC5B,qBAAqB,EAAE,QAAQ;IAC/B,oBAAoB,EAAE,QAAQ;IAC9B,uBAAuB,EAAE,QAAQ;IACjC,oBAAoB,EAAE,QAAQ;IAC9B,yBAAyB,EAAE,QAAQ;IACnC,yBAAyB,EAAE,QAAQ;IACnC,oBAAoB,EAAE,QAAQ;IAC9B,uBAAuB,EAAE,QAAQ;IACjC,uBAAuB,EAAE,QAAQ;IACjC,oBAAoB,EAAE,QAAQ;IAC9B,uBAAuB,EAAE,QAAQ;IACjC,uBAAuB,EAAE,QAAQ;IACjC,wBAAwB,EAAE,YAAY;IACtC,2BAA2B,EAAE,YAAY;IACzC,eAAe,EAAE,YAAY;IAC7B,eAAe,EAAE,YAAY;IAC7B,kBAAkB,EAAE,YAAY;IAChC,eAAe,EAAE,YAAY;IAC7B,kBAAkB,EAAE,YAAY;IAChC,oBAAoB,EAAE,YAAY;IAClC,oBAAoB,EAAE,OAAO;IAC7B,kBAAkB,EAAE,OAAO;IAC3B,uBAAuB,EAAE,OAAO;IAChC,iBAAiB,EAAE,UAAU;IAC7B,uBAAuB,EAAE,UAAU;IACnC,iBAAiB,EAAE,UAAU;CAChC,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { addWrapperOrMethod, removeMethodOrWrapper, replaceNullish } from "./schema-call-mutations.js";
2
+ import { createDefinition } from "./mutation-definition.js";
3
+ export const presenceMutationDefinitions = [
4
+ createDefinition('ZodOptionalAdd', function (path, bindings) {
5
+ return addWrapperOrMethod(path, bindings, 'optional');
6
+ }),
7
+ createDefinition('ZodOptionalRemove', function (path, bindings) {
8
+ return removeMethodOrWrapper(path, bindings, new Set(['optional']));
9
+ }),
10
+ createDefinition('ZodNullableAdd', function (path, bindings) {
11
+ return addWrapperOrMethod(path, bindings, 'nullable');
12
+ }),
13
+ createDefinition('ZodNullableRemove', function (path, bindings) {
14
+ return removeMethodOrWrapper(path, bindings, new Set(['nullable']));
15
+ }),
16
+ createDefinition('ZodNullishRemove', function (path, bindings) {
17
+ return removeMethodOrWrapper(path, bindings, new Set(['nullish']));
18
+ }),
19
+ createDefinition('ZodNullishToNullable', function (path, bindings) {
20
+ return replaceNullish(path, bindings, 'nullable');
21
+ }),
22
+ createDefinition('ZodNullishToOptional', function (path, bindings) {
23
+ return replaceNullish(path, bindings, 'optional');
24
+ }),
25
+ createDefinition('ZodNonoptionalRemove', function (path, bindings) {
26
+ return removeMethodOrWrapper(path, bindings, new Set(['nonoptional']));
27
+ }),
28
+ createDefinition('ZodReadonlyAdd', function (path, bindings) {
29
+ return addWrapperOrMethod(path, bindings, 'readonly');
30
+ }),
31
+ createDefinition('ZodReadonlyRemove', function (path, bindings) {
32
+ return removeMethodOrWrapper(path, bindings, new Set(['readonly']));
33
+ })
34
+ ];
35
+ //# sourceMappingURL=presence-mutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presence-mutations.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/presence-mutations.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,kBAAkB,EAClB,qBAAqB,EACrB,cAAc,EACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAA2B,MAAM,0BAA0B,CAAC;AAErF,MAAM,CAAC,MAAM,2BAA2B,GAAkC;IACtE,gBAAgB,CAAC,gBAAgB,EAAE,UAAU,IAAI,EAAE,QAAQ;QACvD,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,gBAAgB,CAAC,mBAAmB,EAAE,UAAU,IAAI,EAAE,QAAQ;QAC1D,OAAO,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAE,UAAU,CAAE,CAAC,CAAC,CAAC;IAC1E,CAAC,CAAC;IACF,gBAAgB,CAAC,gBAAgB,EAAE,UAAU,IAAI,EAAE,QAAQ;QACvD,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,gBAAgB,CAAC,mBAAmB,EAAE,UAAU,IAAI,EAAE,QAAQ;QAC1D,OAAO,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAE,UAAU,CAAE,CAAC,CAAC,CAAC;IAC1E,CAAC,CAAC;IACF,gBAAgB,CAAC,kBAAkB,EAAE,UAAU,IAAI,EAAE,QAAQ;QACzD,OAAO,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAE,SAAS,CAAE,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC;IACF,gBAAgB,CAAC,sBAAsB,EAAE,UAAU,IAAI,EAAE,QAAQ;QAC7D,OAAO,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACtD,CAAC,CAAC;IACF,gBAAgB,CAAC,sBAAsB,EAAE,UAAU,IAAI,EAAE,QAAQ;QAC7D,OAAO,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACtD,CAAC,CAAC;IACF,gBAAgB,CAAC,sBAAsB,EAAE,UAAU,IAAI,EAAE,QAAQ;QAC7D,OAAO,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAE,aAAa,CAAE,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC;IACF,gBAAgB,CAAC,gBAAgB,EAAE,UAAU,IAAI,EAAE,QAAQ;QACvD,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,gBAAgB,CAAC,mBAAmB,EAAE,UAAU,IAAI,EAAE,QAAQ;QAC1D,OAAO,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAE,UAAU,CAAE,CAAC,CAAC,CAAC;IAC1E,CAAC,CAAC;CACL,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { callNode, createDefinition } from "./mutation-definition.js";
2
+ import { getZodCallName, isCoerceCall, primitiveFactoryNames, replaceZodCallee } from "./zod-bindings.js";
3
+ const primitiveFactoryNameSet = new Set(primitiveFactoryNames);
4
+ function isPrimitiveFactoryCall(callName) {
5
+ return callName !== null && primitiveFactoryNameSet.has(callName);
6
+ }
7
+ function mutatePrimitiveFactory(path, bindings) {
8
+ const call = callNode(path);
9
+ const callName = call === null ? null : getZodCallName(bindings, call);
10
+ if (call === null ||
11
+ call.arguments.length > 0 ||
12
+ isCoerceCall(bindings, call) ||
13
+ !isPrimitiveFactoryCall(callName)) {
14
+ return [];
15
+ }
16
+ return primitiveFactoryNames
17
+ .filter(function (target) {
18
+ return target !== callName;
19
+ })
20
+ .flatMap(function (target) {
21
+ return replaceZodCallee(bindings, call, target) ?? [];
22
+ });
23
+ }
24
+ export const primitiveMutationDefinitions = [
25
+ createDefinition('ZodPrimitiveFactorySwap', mutatePrimitiveFactory)
26
+ ];
27
+ //# sourceMappingURL=primitive-mutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"primitive-mutations.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/primitive-mutations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAA2B,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EACH,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,gBAAgB,EAEnB,MAAM,mBAAmB,CAAC;AAG3B,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAS,qBAAqB,CAAC,CAAC;AAEvE,SAAS,sBAAsB,CAAC,QAAuB;IACnD,OAAO,QAAQ,KAAK,IAAI,IAAI,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAkB,EAAE,QAAqB;IACrE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAEvE,IACI,IAAI,KAAK,IAAI;QACb,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;QACzB,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC;QAC5B,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EACnC,CAAC;QACC,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,qBAAqB;SACvB,MAAM,CAAC,UAAU,MAAM;QACpB,OAAO,MAAM,KAAK,QAAQ,CAAC;IAC/B,CAAC,CAAC;SACD,OAAO,CAAC,UAAU,MAAM;QACrB,OAAO,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IAC1D,CAAC,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAkC;IACvE,gBAAgB,CAAC,yBAAyB,EAAE,sBAAsB,CAAC;CACtE,CAAC"}
@@ -0,0 +1,59 @@
1
+ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
2
+ if (typeof path === "string" && /^\.\.?\//.test(path)) {
3
+ return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
4
+ return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
5
+ });
6
+ }
7
+ return path;
8
+ };
9
+ import { createZodMutators } from "./mutations.js";
10
+ import { zodMutationOperatorCategories, zodMutationOperators } from "./operator.js";
11
+ function selectOperators(settings) {
12
+ const categoryFilter = settings.includedCategories === undefined
13
+ ? new Set(Object.values(zodMutationOperatorCategories))
14
+ : new Set(settings.includedCategories);
15
+ const operatorFilter = settings.includedOperators === undefined
16
+ ? new Set(zodMutationOperators)
17
+ : new Set(settings.includedOperators);
18
+ return zodMutationOperators.filter(function (operator) {
19
+ return categoryFilter.has(zodMutationOperatorCategories[operator]) && operatorFilter.has(operator);
20
+ });
21
+ }
22
+ function isMutatorRegistryModule(value) {
23
+ const descriptor = typeof value === 'object' && value !== null
24
+ ? Object.getOwnPropertyDescriptor(value, 'allMutators')
25
+ : undefined;
26
+ const allMutators = descriptor?.value;
27
+ return typeof value === 'object'
28
+ && value !== null
29
+ && Array.isArray(allMutators);
30
+ }
31
+ export function readMutatorRegistryModule(registry) {
32
+ if (!isMutatorRegistryModule(registry)) {
33
+ const message = [
34
+ "@schema-hub/stryker-zod-mutator could not find Stryker's mutable allMutators registry.",
35
+ 'Use @stryker-mutator/instrumenter >=9.6.0 <10.'
36
+ ]
37
+ .join(' ');
38
+ throw new TypeError(message);
39
+ }
40
+ return registry;
41
+ }
42
+ async function loadMutatorRegistry() {
43
+ const manifestUrl = import.meta.resolve('@stryker-mutator/instrumenter/package.json');
44
+ const mutatorIndexUrl = new URL('dist/src/mutators/index.js', manifestUrl);
45
+ const registry = await import(__rewriteRelativeImportExtension(mutatorIndexUrl.href));
46
+ return readMutatorRegistryModule(registry);
47
+ }
48
+ export async function installZodMutators(settings) {
49
+ const registry = await loadMutatorRegistry();
50
+ const selectedOperators = selectOperators(settings);
51
+ const existingNames = new Set(Array.from(registry.allMutators, function (mutator) {
52
+ return mutator.name;
53
+ }));
54
+ const mutators = createZodMutators(selectedOperators);
55
+ registry.allMutators.push(...mutators.filter(function (mutator) {
56
+ return !existingNames.has(mutator.name);
57
+ }));
58
+ }
59
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../source/stryker-zod-mutator/registry.ts"],"names":[],"mappings":";;;;;;;;AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EACH,6BAA6B,EAC7B,oBAAoB,EAEvB,MAAM,eAAe,CAAC;AAsBvB,SAAS,eAAe,CAAC,QAA4B;IACjD,MAAM,cAAc,GAAG,QAAQ,CAAC,kBAAkB,KAAK,SAAS;QAC5D,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;QACvD,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAG,QAAQ,CAAC,iBAAiB,KAAK,SAAS;QAC3D,CAAC,CAAC,IAAI,GAAG,CAAC,oBAAoB,CAAC;QAC/B,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAE1C,OAAO,oBAAoB,CAAC,MAAM,CAAC,UAAU,QAAQ;QACjD,OAAO,cAAc,CAAC,GAAG,CAAC,6BAA6B,CAAC,QAAQ,CAAC,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACvG,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC3C,MAAM,UAAU,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAC1D,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,aAAa,CAAC;QACvD,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,WAAW,GAAY,UAAU,EAAE,KAAK,CAAC;IAE/C,OAAO,OAAO,KAAK,KAAK,QAAQ;WACzB,KAAK,KAAK,IAAI;WACd,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAiB;IACvD,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG;YACZ,wFAAwF;YACxF,gDAAgD;SACnD;aACI,IAAI,CAAC,GAAG,CAAC,CAAC;QAEf,MAAM,IAAI,SAAS,CACf,OAAO,CACV,CAAC;IACN,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,mBAAmB;IAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;IACtF,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,4BAA4B,EAAE,WAAW,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,MAAM,MAAM,kCAAC,eAAe,CAAC,IAAI,EAAY,CAAC;IAE/D,OAAO,yBAAyB,CAAC,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAA4B;IACjE,MAAM,QAAQ,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAC7C,MAAM,iBAAiB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,OAAO;QAC5E,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC,CAAC,CAAC,CAAC;IACJ,MAAM,QAAQ,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IAEtD,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,OAAO;QAC1D,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC,CAAC;AACR,CAAC"}