@maroonedog/luq 2.4.3 → 2.5.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.
Files changed (60) hide show
  1. package/README.md +199 -9
  2. package/dist/chain/field-chain.types.d.ts +11 -1
  3. package/dist/chain/index.d.ts +2 -0
  4. package/dist/chain/plugin-not-imported.types.d.ts +40 -0
  5. package/dist/chain/plugin-not-imported.types.js +2 -0
  6. package/dist/chain/plugin-not-imported.types.mjs +1 -0
  7. package/dist/chain/slot-catalog.generated.d.ts +265 -0
  8. package/dist/chain/slot-catalog.generated.js +4 -0
  9. package/dist/chain/slot-catalog.generated.mjs +3 -0
  10. package/dist/core/type-erasure.d.ts +20 -0
  11. package/dist/core/type-erasure.js +23 -0
  12. package/dist/core/type-erasure.mjs +22 -0
  13. package/dist/field-rule/use-field.d.ts +2 -1
  14. package/dist/field-rule/use-field.js +9 -2
  15. package/dist/field-rule/use-field.mjs +9 -2
  16. package/dist/json-schema/array-keyword-guards.d.ts +31 -0
  17. package/dist/json-schema/array-keyword-guards.js +120 -0
  18. package/dist/json-schema/array-keyword-guards.mjs +114 -0
  19. package/dist/json-schema/assert-object-keyword-values.d.ts +59 -0
  20. package/dist/json-schema/assert-object-keyword-values.js +149 -0
  21. package/dist/json-schema/assert-object-keyword-values.mjs +141 -0
  22. package/dist/json-schema/collect-definitions.d.ts +7 -0
  23. package/dist/json-schema/collect-definitions.js +9 -0
  24. package/dist/json-schema/collect-definitions.mjs +10 -1
  25. package/dist/json-schema/declare-additional-properties.d.ts +11 -1
  26. package/dist/json-schema/declare-additional-properties.js +13 -1
  27. package/dist/json-schema/declare-additional-properties.mjs +13 -1
  28. package/dist/json-schema/declare-object-keywords.d.ts +4 -0
  29. package/dist/json-schema/declare-object-keywords.js +11 -4
  30. package/dist/json-schema/declare-object-keywords.mjs +11 -4
  31. package/dist/json-schema/declare-required-properties.js +6 -0
  32. package/dist/json-schema/declare-required-properties.mjs +6 -0
  33. package/dist/json-schema/declare-value-keywords.d.ts +10 -1
  34. package/dist/json-schema/declare-value-keywords.js +43 -4
  35. package/dist/json-schema/declare-value-keywords.mjs +43 -4
  36. package/dist/json-schema/extensions/json-schema/index.d.ts +1 -1
  37. package/dist/json-schema/extensions/json-schema/index.js +2 -1
  38. package/dist/json-schema/extensions/json-schema/index.mjs +1 -1
  39. package/dist/json-schema/flatten-array-schema.d.ts +11 -1
  40. package/dist/json-schema/flatten-array-schema.js +20 -7
  41. package/dist/json-schema/flatten-array-schema.mjs +20 -7
  42. package/dist/json-schema/index.d.ts +1 -0
  43. package/dist/json-schema/index.js +3 -1
  44. package/dist/json-schema/index.mjs +1 -0
  45. package/dist/json-schema/keyword-map-string.js +30 -1
  46. package/dist/json-schema/keyword-map-string.mjs +30 -1
  47. package/dist/json-schema/keyword-map.js +2 -0
  48. package/dist/json-schema/keyword-map.mjs +2 -0
  49. package/dist/json-schema/malformed-schema-error.d.ts +38 -0
  50. package/dist/json-schema/malformed-schema-error.js +103 -0
  51. package/dist/json-schema/malformed-schema-error.mjs +98 -0
  52. package/dist/plugins/manifest.generated.d.ts +18 -0
  53. package/dist/plugins/manifest.generated.js +77 -77
  54. package/dist/plugins/manifest.generated.mjs +77 -77
  55. package/dist/plugins/one-of/one-of.js +18 -4
  56. package/dist/plugins/one-of/one-of.mjs +18 -4
  57. package/dist/schema-tooling/index.d.ts +11 -0
  58. package/dist/schema-tooling/index.js +12 -1
  59. package/dist/schema-tooling/index.mjs +10 -0
  60. package/package.json +8 -6
@@ -4,81 +4,81 @@
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.PLUGIN_MANIFEST = void 0;
6
6
  exports.PLUGIN_MANIFEST = [
7
- { directoryName: "array-contains", subpathName: "arrayContains", tier: "isolated", entryFile: "src/plugins/array-contains/index.ts", exportedSymbols: ["arrayContainsPlugin"] },
8
- { directoryName: "array-each", subpathName: "arrayEach", tier: "isolated", entryFile: "src/plugins/array-each/index.ts", exportedSymbols: ["arrayEachPlugin"] },
9
- { directoryName: "array-includes", subpathName: "arrayIncludes", tier: "isolated", entryFile: "src/plugins/array-includes/index.ts", exportedSymbols: ["arrayIncludesPlugin"] },
10
- { directoryName: "array-max-length", subpathName: "arrayMaxLength", tier: "isolated", entryFile: "src/plugins/array-max-length/index.ts", exportedSymbols: ["arrayMaxLengthPlugin"] },
11
- { directoryName: "array-min-length", subpathName: "arrayMinLength", tier: "isolated", entryFile: "src/plugins/array-min-length/index.ts", exportedSymbols: ["arrayMinLengthPlugin"] },
12
- { directoryName: "array-unique", subpathName: "arrayUnique", tier: "isolated", entryFile: "src/plugins/array-unique/index.ts", exportedSymbols: ["arrayUniquePlugin"] },
13
- { directoryName: "boolean-falsy", subpathName: "booleanFalsy", tier: "isolated", entryFile: "src/plugins/boolean-falsy/index.ts", exportedSymbols: ["booleanFalsyPlugin"] },
14
- { directoryName: "boolean-truthy", subpathName: "booleanTruthy", tier: "isolated", entryFile: "src/plugins/boolean-truthy/index.ts", exportedSymbols: ["booleanTruthyPlugin"] },
15
- { directoryName: "compare-field", subpathName: "compareField", tier: "isolated", entryFile: "src/plugins/compare-field/index.ts", exportedSymbols: ["compareFieldPlugin"] },
16
- { directoryName: "conditional-schema", subpathName: "conditionalSchema", tier: "isolated", entryFile: "src/plugins/conditional-schema/index.ts", exportedSymbols: ["conditionalSchemaPlugin"] },
17
- { directoryName: "custom", subpathName: "custom", tier: "isolated", entryFile: "src/plugins/custom/index.ts", exportedSymbols: ["customPlugin"] },
18
- { directoryName: "from-context", subpathName: "fromContext", tier: "isolated", entryFile: "src/plugins/from-context/index.ts", exportedSymbols: ["fromContextPlugin"] },
19
- { directoryName: "json-schema", subpathName: "jsonSchema", tier: "extension", entryFile: "src/json-schema/extensions/json-schema/index.ts", exportedSymbols: ["jsonSchemaPlugin"] },
20
- { directoryName: "json-schema-full-feature", subpathName: "jsonSchemaFullFeature", tier: "extension", entryFile: "src/json-schema/extensions/json-schema-full-feature/index.ts", exportedSymbols: ["jsonSchemaFullFeaturePlugin"] },
21
- { directoryName: "literal", subpathName: "literal", tier: "isolated", entryFile: "src/plugins/literal/index.ts", exportedSymbols: ["literalPlugin"] },
22
- { directoryName: "nullable", subpathName: "nullable", tier: "isolated", entryFile: "src/plugins/nullable/index.ts", exportedSymbols: ["nullablePlugin"] },
23
- { directoryName: "number-finite", subpathName: "numberFinite", tier: "isolated", entryFile: "src/plugins/number-finite/index.ts", exportedSymbols: ["numberFinitePlugin"] },
24
- { directoryName: "number-integer", subpathName: "numberInteger", tier: "isolated", entryFile: "src/plugins/number-integer/index.ts", exportedSymbols: ["numberIntegerPlugin"] },
25
- { directoryName: "number-max", subpathName: "numberMax", tier: "isolated", entryFile: "src/plugins/number-max/index.ts", exportedSymbols: ["numberMaxPlugin"] },
26
- { directoryName: "number-min", subpathName: "numberMin", tier: "isolated", entryFile: "src/plugins/number-min/index.ts", exportedSymbols: ["numberMinPlugin"] },
27
- { directoryName: "number-multiple-of", subpathName: "numberMultipleOf", tier: "isolated", entryFile: "src/plugins/number-multiple-of/index.ts", exportedSymbols: ["numberMultipleOfPlugin"] },
28
- { directoryName: "number-negative", subpathName: "numberNegative", tier: "isolated", entryFile: "src/plugins/number-negative/index.ts", exportedSymbols: ["numberNegativePlugin"] },
29
- { directoryName: "number-positive", subpathName: "numberPositive", tier: "isolated", entryFile: "src/plugins/number-positive/index.ts", exportedSymbols: ["numberPositivePlugin"] },
30
- { directoryName: "number-range", subpathName: "numberRange", tier: "isolated", entryFile: "src/plugins/number-range/index.ts", exportedSymbols: ["numberRangePlugin"] },
31
- { directoryName: "object", subpathName: "object", tier: "isolated", entryFile: "src/plugins/object/index.ts", exportedSymbols: ["objectPlugin"] },
32
- { directoryName: "object-additional-properties", subpathName: "objectAdditionalProperties", tier: "isolated", entryFile: "src/plugins/object-additional-properties/index.ts", exportedSymbols: ["objectAdditionalPropertiesPlugin", "objectAdditionalPropertiesSchemaPlugin"] },
33
- { directoryName: "object-dependent-required", subpathName: "objectDependentRequired", tier: "isolated", entryFile: "src/plugins/object-dependent-required/index.ts", exportedSymbols: ["objectDependentRequiredPlugin"] },
34
- { directoryName: "object-dependent-schemas", subpathName: "objectDependentSchemas", tier: "isolated", entryFile: "src/plugins/object-dependent-schemas/index.ts", exportedSymbols: ["objectDependentSchemasPlugin"] },
35
- { directoryName: "object-max-properties", subpathName: "objectMaxProperties", tier: "isolated", entryFile: "src/plugins/object-max-properties/index.ts", exportedSymbols: ["objectMaxPropertiesPlugin"] },
36
- { directoryName: "object-min-properties", subpathName: "objectMinProperties", tier: "isolated", entryFile: "src/plugins/object-min-properties/index.ts", exportedSymbols: ["objectMinPropertiesPlugin"] },
37
- { directoryName: "object-pattern-properties", subpathName: "objectPatternProperties", tier: "isolated", entryFile: "src/plugins/object-pattern-properties/index.ts", exportedSymbols: ["objectPatternPropertiesPlugin"] },
38
- { directoryName: "object-property-names", subpathName: "objectPropertyNames", tier: "isolated", entryFile: "src/plugins/object-property-names/index.ts", exportedSymbols: ["objectPropertyNamesPlugin"] },
39
- { directoryName: "object-recursively", subpathName: "objectRecursively", tier: "isolated", entryFile: "src/plugins/object-recursively/index.ts", exportedSymbols: ["objectRecursivelyPlugin"] },
40
- { directoryName: "one-of", subpathName: "oneOf", tier: "isolated", entryFile: "src/plugins/one-of/index.ts", exportedSymbols: ["oneOfPlugin"] },
41
- { directoryName: "optional", subpathName: "optional", tier: "isolated", entryFile: "src/plugins/optional/index.ts", exportedSymbols: ["optionalPlugin"] },
42
- { directoryName: "optional-if", subpathName: "optionalIf", tier: "isolated", entryFile: "src/plugins/optional-if/index.ts", exportedSymbols: ["optionalIfPlugin"] },
43
- { directoryName: "or-fail", subpathName: "orFail", tier: "isolated", entryFile: "src/plugins/or-fail/index.ts", exportedSymbols: ["orFailPlugin"] },
44
- { directoryName: "read-only", subpathName: "readOnly", tier: "isolated", entryFile: "src/plugins/read-only/index.ts", exportedSymbols: ["readOnlyPlugin"] },
45
- { directoryName: "required", subpathName: "required", tier: "isolated", entryFile: "src/plugins/required/index.ts", exportedSymbols: ["requiredPlugin"] },
46
- { directoryName: "required-if", subpathName: "requiredIf", tier: "isolated", entryFile: "src/plugins/required-if/index.ts", exportedSymbols: ["requiredIfPlugin"] },
47
- { directoryName: "skip", subpathName: "skip", tier: "isolated", entryFile: "src/plugins/skip/index.ts", exportedSymbols: ["skipPlugin"] },
48
- { directoryName: "stitch", subpathName: "stitch", tier: "isolated", entryFile: "src/plugins/stitch/index.ts", exportedSymbols: ["stitchPlugin"] },
49
- { directoryName: "stitch-with", subpathName: "stitchWith", tier: "isolated", entryFile: "src/plugins/stitch-with/index.ts", exportedSymbols: ["stitchWithPlugin"] },
50
- { directoryName: "string-alphanumeric", subpathName: "stringAlphanumeric", tier: "isolated", entryFile: "src/plugins/string-alphanumeric/index.ts", exportedSymbols: ["stringAlphanumericPlugin"] },
51
- { directoryName: "string-base64", subpathName: "stringBase64", tier: "isolated", entryFile: "src/plugins/string-base64/index.ts", exportedSymbols: ["stringBase64Plugin"] },
52
- { directoryName: "string-content-encoding", subpathName: "stringContentEncoding", tier: "isolated", entryFile: "src/plugins/string-content-encoding/index.ts", exportedSymbols: ["stringContentEncodingPlugin"] },
53
- { directoryName: "string-content-media-type", subpathName: "stringContentMediaType", tier: "isolated", entryFile: "src/plugins/string-content-media-type/index.ts", exportedSymbols: ["stringContentMediaTypePlugin"] },
54
- { directoryName: "string-date", subpathName: "stringDate", tier: "isolated", entryFile: "src/plugins/string-date/index.ts", exportedSymbols: ["stringDatePlugin"] },
55
- { directoryName: "string-datetime", subpathName: "stringDatetime", tier: "isolated", entryFile: "src/plugins/string-datetime/index.ts", exportedSymbols: ["stringDatetimePlugin"] },
56
- { directoryName: "string-duration", subpathName: "stringDuration", tier: "isolated", entryFile: "src/plugins/string-duration/index.ts", exportedSymbols: ["stringDurationPlugin"] },
57
- { directoryName: "string-email", subpathName: "stringEmail", tier: "isolated", entryFile: "src/plugins/string-email/index.ts", exportedSymbols: ["stringEmailPlugin"] },
58
- { directoryName: "string-ends-with", subpathName: "stringEndsWith", tier: "isolated", entryFile: "src/plugins/string-ends-with/index.ts", exportedSymbols: ["stringEndsWithPlugin"] },
59
- { directoryName: "string-exact-length", subpathName: "stringExactLength", tier: "isolated", entryFile: "src/plugins/string-exact-length/index.ts", exportedSymbols: ["stringExactLengthPlugin"] },
60
- { directoryName: "string-hostname", subpathName: "stringHostname", tier: "isolated", entryFile: "src/plugins/string-hostname/index.ts", exportedSymbols: ["stringHostnamePlugin"] },
61
- { directoryName: "string-idn-email", subpathName: "stringIdnEmail", tier: "isolated", entryFile: "src/plugins/string-idn-email/index.ts", exportedSymbols: ["stringIdnEmailPlugin"] },
62
- { directoryName: "string-idn-hostname", subpathName: "stringIdnHostname", tier: "isolated", entryFile: "src/plugins/string-idn-hostname/index.ts", exportedSymbols: ["stringIdnHostnamePlugin"] },
63
- { directoryName: "string-ipv4", subpathName: "stringIpv4", tier: "isolated", entryFile: "src/plugins/string-ipv4/index.ts", exportedSymbols: ["stringIpv4Plugin"] },
64
- { directoryName: "string-ipv6", subpathName: "stringIpv6", tier: "isolated", entryFile: "src/plugins/string-ipv6/index.ts", exportedSymbols: ["stringIpv6Plugin"] },
65
- { directoryName: "string-iri", subpathName: "stringIri", tier: "isolated", entryFile: "src/plugins/string-iri/index.ts", exportedSymbols: ["stringIriPlugin"] },
66
- { directoryName: "string-iri-reference", subpathName: "stringIriReference", tier: "isolated", entryFile: "src/plugins/string-iri-reference/index.ts", exportedSymbols: ["stringIriReferencePlugin"] },
67
- { directoryName: "string-json-pointer", subpathName: "stringJsonPointer", tier: "isolated", entryFile: "src/plugins/string-json-pointer/index.ts", exportedSymbols: ["stringJsonPointerPlugin"] },
68
- { directoryName: "string-max", subpathName: "stringMax", tier: "isolated", entryFile: "src/plugins/string-max/index.ts", exportedSymbols: ["stringMaxPlugin"] },
69
- { directoryName: "string-min", subpathName: "stringMin", tier: "isolated", entryFile: "src/plugins/string-min/index.ts", exportedSymbols: ["stringMinPlugin"] },
70
- { directoryName: "string-pattern", subpathName: "stringPattern", tier: "isolated", entryFile: "src/plugins/string-pattern/index.ts", exportedSymbols: ["stringPatternPlugin"] },
71
- { directoryName: "string-regex", subpathName: "stringRegex", tier: "isolated", entryFile: "src/plugins/string-regex/index.ts", exportedSymbols: ["stringRegexPlugin"] },
72
- { directoryName: "string-relative-json-pointer", subpathName: "stringRelativeJsonPointer", tier: "isolated", entryFile: "src/plugins/string-relative-json-pointer/index.ts", exportedSymbols: ["stringRelativeJsonPointerPlugin"] },
73
- { directoryName: "string-starts-with", subpathName: "stringStartsWith", tier: "isolated", entryFile: "src/plugins/string-starts-with/index.ts", exportedSymbols: ["stringStartsWithPlugin"] },
74
- { directoryName: "string-time", subpathName: "stringTime", tier: "isolated", entryFile: "src/plugins/string-time/index.ts", exportedSymbols: ["stringTimePlugin"] },
75
- { directoryName: "string-uri-reference", subpathName: "stringUriReference", tier: "isolated", entryFile: "src/plugins/string-uri-reference/index.ts", exportedSymbols: ["stringUriReferencePlugin"] },
76
- { directoryName: "string-uri-template", subpathName: "stringUriTemplate", tier: "isolated", entryFile: "src/plugins/string-uri-template/index.ts", exportedSymbols: ["stringUriTemplatePlugin"] },
77
- { directoryName: "string-url", subpathName: "stringUrl", tier: "isolated", entryFile: "src/plugins/string-url/index.ts", exportedSymbols: ["stringUrlPlugin"] },
78
- { directoryName: "transform", subpathName: "transform", tier: "isolated", entryFile: "src/plugins/transform/index.ts", exportedSymbols: ["transformPlugin"] },
79
- { directoryName: "tuple-builder", subpathName: "tupleBuilder", tier: "isolated", entryFile: "src/plugins/tuple-builder/index.ts", exportedSymbols: ["tupleBuilderPlugin"] },
80
- { directoryName: "union-guard", subpathName: "unionGuard", tier: "isolated", entryFile: "src/plugins/union-guard/index.ts", exportedSymbols: ["unionGuardPlugin"] },
81
- { directoryName: "uuid", subpathName: "uuid", tier: "isolated", entryFile: "src/plugins/uuid/index.ts", exportedSymbols: ["uuidPlugin"] },
82
- { directoryName: "validate-if", subpathName: "validateIf", tier: "isolated", entryFile: "src/plugins/validate-if/index.ts", exportedSymbols: ["validateIfPlugin"] },
83
- { directoryName: "write-only", subpathName: "writeOnly", tier: "isolated", entryFile: "src/plugins/write-only/index.ts", exportedSymbols: ["writeOnlyPlugin"] },
7
+ { directoryName: "array-contains", subpathName: "arrayContains", tier: "isolated", entryFile: "src/plugins/array-contains/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayContains", exportedSymbols: ["arrayContainsPlugin"], surfaces: [{ "symbol": "arrayContainsPlugin", "method": "contains", "slots": ["array", "tuple"] }] },
8
+ { directoryName: "array-each", subpathName: "arrayEach", tier: "isolated", entryFile: "src/plugins/array-each/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayEach", exportedSymbols: ["arrayEachPlugin"], surfaces: [{ "symbol": "arrayEachPlugin", "method": "each", "slots": ["array", "tuple"] }] },
9
+ { directoryName: "array-includes", subpathName: "arrayIncludes", tier: "isolated", entryFile: "src/plugins/array-includes/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayIncludes", exportedSymbols: ["arrayIncludesPlugin"], surfaces: [{ "symbol": "arrayIncludesPlugin", "method": "includes", "slots": ["array", "tuple"] }] },
10
+ { directoryName: "array-max-length", subpathName: "arrayMaxLength", tier: "isolated", entryFile: "src/plugins/array-max-length/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayMaxLength", exportedSymbols: ["arrayMaxLengthPlugin"], surfaces: [{ "symbol": "arrayMaxLengthPlugin", "method": "maxLength", "slots": ["array", "tuple"] }] },
11
+ { directoryName: "array-min-length", subpathName: "arrayMinLength", tier: "isolated", entryFile: "src/plugins/array-min-length/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayMinLength", exportedSymbols: ["arrayMinLengthPlugin"], surfaces: [{ "symbol": "arrayMinLengthPlugin", "method": "minLength", "slots": ["array", "tuple"] }] },
12
+ { directoryName: "array-unique", subpathName: "arrayUnique", tier: "isolated", entryFile: "src/plugins/array-unique/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayUnique", exportedSymbols: ["arrayUniquePlugin"], surfaces: [{ "symbol": "arrayUniquePlugin", "method": "unique", "slots": ["array", "tuple"] }] },
13
+ { directoryName: "boolean-falsy", subpathName: "booleanFalsy", tier: "isolated", entryFile: "src/plugins/boolean-falsy/index.ts", entryPoint: "@maroonedog/luq/plugins/booleanFalsy", exportedSymbols: ["booleanFalsyPlugin"], surfaces: [{ "symbol": "booleanFalsyPlugin", "method": "falsy", "slots": ["boolean"] }] },
14
+ { directoryName: "boolean-truthy", subpathName: "booleanTruthy", tier: "isolated", entryFile: "src/plugins/boolean-truthy/index.ts", entryPoint: "@maroonedog/luq/plugins/booleanTruthy", exportedSymbols: ["booleanTruthyPlugin"], surfaces: [{ "symbol": "booleanTruthyPlugin", "method": "truthy", "slots": ["boolean"] }] },
15
+ { directoryName: "compare-field", subpathName: "compareField", tier: "isolated", entryFile: "src/plugins/compare-field/index.ts", entryPoint: "@maroonedog/luq/plugins/compareField", exportedSymbols: ["compareFieldPlugin"], surfaces: [{ "symbol": "compareFieldPlugin", "method": "compareField", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
16
+ { directoryName: "conditional-schema", subpathName: "conditionalSchema", tier: "isolated", entryFile: "src/plugins/conditional-schema/index.ts", entryPoint: "@maroonedog/luq/plugins/conditionalSchema", exportedSymbols: ["conditionalSchemaPlugin"], surfaces: [{ "symbol": "conditionalSchemaPlugin", "method": "conditionalSchema", "slots": ["object", "array", "string", "number", "boolean"] }] },
17
+ { directoryName: "custom", subpathName: "custom", tier: "isolated", entryFile: "src/plugins/custom/index.ts", entryPoint: "@maroonedog/luq/plugins/custom", exportedSymbols: ["customPlugin"], surfaces: [{ "symbol": "customPlugin", "method": "custom", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
18
+ { directoryName: "from-context", subpathName: "fromContext", tier: "isolated", entryFile: "src/plugins/from-context/index.ts", entryPoint: "@maroonedog/luq/plugins/fromContext", exportedSymbols: ["fromContextPlugin"], surfaces: [{ "symbol": "fromContextPlugin", "method": "fromContext", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
19
+ { directoryName: "json-schema", subpathName: "jsonSchema", tier: "extension", entryFile: "src/json-schema/extensions/json-schema/index.ts", entryPoint: "@maroonedog/luq/plugins/jsonSchema", exportedSymbols: ["jsonSchemaPlugin"], surfaces: [{ "symbol": "jsonSchemaPlugin", "method": "jsonSchema", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
20
+ { directoryName: "json-schema-full-feature", subpathName: "jsonSchemaFullFeature", tier: "extension", entryFile: "src/json-schema/extensions/json-schema-full-feature/index.ts", entryPoint: "@maroonedog/luq/plugins/jsonSchemaFullFeature", exportedSymbols: ["jsonSchemaFullFeaturePlugin"], surfaces: [{ "symbol": "jsonSchemaFullFeaturePlugin", "method": "jsonSchemaFullFeature", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
21
+ { directoryName: "literal", subpathName: "literal", tier: "isolated", entryFile: "src/plugins/literal/index.ts", entryPoint: "@maroonedog/luq/plugins/literal", exportedSymbols: ["literalPlugin"], surfaces: [{ "symbol": "literalPlugin", "method": "literal", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
22
+ { directoryName: "nullable", subpathName: "nullable", tier: "isolated", entryFile: "src/plugins/nullable/index.ts", entryPoint: "@maroonedog/luq/plugins/nullable", exportedSymbols: ["nullablePlugin"], surfaces: [{ "symbol": "nullablePlugin", "method": "nullable", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
23
+ { directoryName: "number-finite", subpathName: "numberFinite", tier: "isolated", entryFile: "src/plugins/number-finite/index.ts", entryPoint: "@maroonedog/luq/plugins/numberFinite", exportedSymbols: ["numberFinitePlugin"], surfaces: [{ "symbol": "numberFinitePlugin", "method": "finite", "slots": ["number"] }] },
24
+ { directoryName: "number-integer", subpathName: "numberInteger", tier: "isolated", entryFile: "src/plugins/number-integer/index.ts", entryPoint: "@maroonedog/luq/plugins/numberInteger", exportedSymbols: ["numberIntegerPlugin"], surfaces: [{ "symbol": "numberIntegerPlugin", "method": "integer", "slots": ["number"] }] },
25
+ { directoryName: "number-max", subpathName: "numberMax", tier: "isolated", entryFile: "src/plugins/number-max/index.ts", entryPoint: "@maroonedog/luq/plugins/numberMax", exportedSymbols: ["numberMaxPlugin"], surfaces: [{ "symbol": "numberMaxPlugin", "method": "max", "slots": ["number"] }] },
26
+ { directoryName: "number-min", subpathName: "numberMin", tier: "isolated", entryFile: "src/plugins/number-min/index.ts", entryPoint: "@maroonedog/luq/plugins/numberMin", exportedSymbols: ["numberMinPlugin"], surfaces: [{ "symbol": "numberMinPlugin", "method": "min", "slots": ["number"] }] },
27
+ { directoryName: "number-multiple-of", subpathName: "numberMultipleOf", tier: "isolated", entryFile: "src/plugins/number-multiple-of/index.ts", entryPoint: "@maroonedog/luq/plugins/numberMultipleOf", exportedSymbols: ["numberMultipleOfPlugin"], surfaces: [{ "symbol": "numberMultipleOfPlugin", "method": "multipleOf", "slots": ["number"] }] },
28
+ { directoryName: "number-negative", subpathName: "numberNegative", tier: "isolated", entryFile: "src/plugins/number-negative/index.ts", entryPoint: "@maroonedog/luq/plugins/numberNegative", exportedSymbols: ["numberNegativePlugin"], surfaces: [{ "symbol": "numberNegativePlugin", "method": "negative", "slots": ["number"] }] },
29
+ { directoryName: "number-positive", subpathName: "numberPositive", tier: "isolated", entryFile: "src/plugins/number-positive/index.ts", entryPoint: "@maroonedog/luq/plugins/numberPositive", exportedSymbols: ["numberPositivePlugin"], surfaces: [{ "symbol": "numberPositivePlugin", "method": "positive", "slots": ["number"] }] },
30
+ { directoryName: "number-range", subpathName: "numberRange", tier: "isolated", entryFile: "src/plugins/number-range/index.ts", entryPoint: "@maroonedog/luq/plugins/numberRange", exportedSymbols: ["numberRangePlugin"], surfaces: [{ "symbol": "numberRangePlugin", "method": "range", "slots": ["number"] }] },
31
+ { directoryName: "object", subpathName: "object", tier: "isolated", entryFile: "src/plugins/object/index.ts", entryPoint: "@maroonedog/luq/plugins/object", exportedSymbols: ["objectPlugin"], surfaces: [{ "symbol": "objectPlugin", "method": "object", "slots": ["object"] }] },
32
+ { directoryName: "object-additional-properties", subpathName: "objectAdditionalProperties", tier: "isolated", entryFile: "src/plugins/object-additional-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectAdditionalProperties", exportedSymbols: ["objectAdditionalPropertiesPlugin", "objectAdditionalPropertiesSchemaPlugin"], surfaces: [{ "symbol": "objectAdditionalPropertiesPlugin", "method": "additionalProperties", "slots": ["object"] }, { "symbol": "objectAdditionalPropertiesSchemaPlugin", "method": "additionalPropertiesSchema", "slots": ["object"] }] },
33
+ { directoryName: "object-dependent-required", subpathName: "objectDependentRequired", tier: "isolated", entryFile: "src/plugins/object-dependent-required/index.ts", entryPoint: "@maroonedog/luq/plugins/objectDependentRequired", exportedSymbols: ["objectDependentRequiredPlugin"], surfaces: [{ "symbol": "objectDependentRequiredPlugin", "method": "dependentRequired", "slots": ["object"] }] },
34
+ { directoryName: "object-dependent-schemas", subpathName: "objectDependentSchemas", tier: "isolated", entryFile: "src/plugins/object-dependent-schemas/index.ts", entryPoint: "@maroonedog/luq/plugins/objectDependentSchemas", exportedSymbols: ["objectDependentSchemasPlugin"], surfaces: [{ "symbol": "objectDependentSchemasPlugin", "method": "dependentSchemas", "slots": ["object"] }] },
35
+ { directoryName: "object-max-properties", subpathName: "objectMaxProperties", tier: "isolated", entryFile: "src/plugins/object-max-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectMaxProperties", exportedSymbols: ["objectMaxPropertiesPlugin"], surfaces: [{ "symbol": "objectMaxPropertiesPlugin", "method": "maxProperties", "slots": ["object"] }] },
36
+ { directoryName: "object-min-properties", subpathName: "objectMinProperties", tier: "isolated", entryFile: "src/plugins/object-min-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectMinProperties", exportedSymbols: ["objectMinPropertiesPlugin"], surfaces: [{ "symbol": "objectMinPropertiesPlugin", "method": "minProperties", "slots": ["object"] }] },
37
+ { directoryName: "object-pattern-properties", subpathName: "objectPatternProperties", tier: "isolated", entryFile: "src/plugins/object-pattern-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectPatternProperties", exportedSymbols: ["objectPatternPropertiesPlugin"], surfaces: [{ "symbol": "objectPatternPropertiesPlugin", "method": "patternProperties", "slots": ["object"] }] },
38
+ { directoryName: "object-property-names", subpathName: "objectPropertyNames", tier: "isolated", entryFile: "src/plugins/object-property-names/index.ts", entryPoint: "@maroonedog/luq/plugins/objectPropertyNames", exportedSymbols: ["objectPropertyNamesPlugin"], surfaces: [{ "symbol": "objectPropertyNamesPlugin", "method": "propertyNames", "slots": ["object"] }] },
39
+ { directoryName: "object-recursively", subpathName: "objectRecursively", tier: "isolated", entryFile: "src/plugins/object-recursively/index.ts", entryPoint: "@maroonedog/luq/plugins/objectRecursively", exportedSymbols: ["objectRecursivelyPlugin"], surfaces: [{ "symbol": "objectRecursivelyPlugin", "method": "recursively", "slots": ["object", "array"] }] },
40
+ { directoryName: "one-of", subpathName: "oneOf", tier: "isolated", entryFile: "src/plugins/one-of/index.ts", entryPoint: "@maroonedog/luq/plugins/oneOf", exportedSymbols: ["oneOfPlugin"], surfaces: [{ "symbol": "oneOfPlugin", "method": "oneOf", "slots": ["string", "number", "boolean"] }] },
41
+ { directoryName: "optional", subpathName: "optional", tier: "isolated", entryFile: "src/plugins/optional/index.ts", entryPoint: "@maroonedog/luq/plugins/optional", exportedSymbols: ["optionalPlugin"], surfaces: [{ "symbol": "optionalPlugin", "method": "optional", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
42
+ { directoryName: "optional-if", subpathName: "optionalIf", tier: "isolated", entryFile: "src/plugins/optional-if/index.ts", entryPoint: "@maroonedog/luq/plugins/optionalIf", exportedSymbols: ["optionalIfPlugin"], surfaces: [{ "symbol": "optionalIfPlugin", "method": "optionalIf", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
43
+ { directoryName: "or-fail", subpathName: "orFail", tier: "isolated", entryFile: "src/plugins/or-fail/index.ts", entryPoint: "@maroonedog/luq/plugins/orFail", exportedSymbols: ["orFailPlugin"], surfaces: [{ "symbol": "orFailPlugin", "method": "orFail", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
44
+ { directoryName: "read-only", subpathName: "readOnly", tier: "isolated", entryFile: "src/plugins/read-only/index.ts", entryPoint: "@maroonedog/luq/plugins/readOnly", exportedSymbols: ["readOnlyPlugin"], surfaces: [{ "symbol": "readOnlyPlugin", "method": "readOnly", "slots": ["string", "number", "boolean", "date", "array", "object"] }] },
45
+ { directoryName: "required", subpathName: "required", tier: "isolated", entryFile: "src/plugins/required/index.ts", entryPoint: "@maroonedog/luq/plugins/required", exportedSymbols: ["requiredPlugin"], surfaces: [{ "symbol": "requiredPlugin", "method": "required", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
46
+ { directoryName: "required-if", subpathName: "requiredIf", tier: "isolated", entryFile: "src/plugins/required-if/index.ts", entryPoint: "@maroonedog/luq/plugins/requiredIf", exportedSymbols: ["requiredIfPlugin"], surfaces: [{ "symbol": "requiredIfPlugin", "method": "requiredIf", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
47
+ { directoryName: "skip", subpathName: "skip", tier: "isolated", entryFile: "src/plugins/skip/index.ts", entryPoint: "@maroonedog/luq/plugins/skip", exportedSymbols: ["skipPlugin"], surfaces: [{ "symbol": "skipPlugin", "method": "skip", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
48
+ { directoryName: "stitch", subpathName: "stitch", tier: "isolated", entryFile: "src/plugins/stitch/index.ts", entryPoint: "@maroonedog/luq/plugins/stitch", exportedSymbols: ["stitchPlugin"], surfaces: [{ "symbol": "stitchPlugin", "method": "stitch", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
49
+ { directoryName: "stitch-with", subpathName: "stitchWith", tier: "isolated", entryFile: "src/plugins/stitch-with/index.ts", entryPoint: "@maroonedog/luq/plugins/stitchWith", exportedSymbols: ["stitchWithPlugin"], surfaces: [{ "symbol": "stitchWithPlugin", "method": "stitchWith", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
50
+ { directoryName: "string-alphanumeric", subpathName: "stringAlphanumeric", tier: "isolated", entryFile: "src/plugins/string-alphanumeric/index.ts", entryPoint: "@maroonedog/luq/plugins/stringAlphanumeric", exportedSymbols: ["stringAlphanumericPlugin"], surfaces: [{ "symbol": "stringAlphanumericPlugin", "method": "alphanumeric", "slots": ["string"] }] },
51
+ { directoryName: "string-base64", subpathName: "stringBase64", tier: "isolated", entryFile: "src/plugins/string-base64/index.ts", entryPoint: "@maroonedog/luq/plugins/stringBase64", exportedSymbols: ["stringBase64Plugin"], surfaces: [{ "symbol": "stringBase64Plugin", "method": "base64", "slots": ["string"] }] },
52
+ { directoryName: "string-content-encoding", subpathName: "stringContentEncoding", tier: "isolated", entryFile: "src/plugins/string-content-encoding/index.ts", entryPoint: "@maroonedog/luq/plugins/stringContentEncoding", exportedSymbols: ["stringContentEncodingPlugin"], surfaces: [{ "symbol": "stringContentEncodingPlugin", "method": "contentEncoding", "slots": ["string"] }] },
53
+ { directoryName: "string-content-media-type", subpathName: "stringContentMediaType", tier: "isolated", entryFile: "src/plugins/string-content-media-type/index.ts", entryPoint: "@maroonedog/luq/plugins/stringContentMediaType", exportedSymbols: ["stringContentMediaTypePlugin"], surfaces: [{ "symbol": "stringContentMediaTypePlugin", "method": "contentMediaType", "slots": ["string"] }] },
54
+ { directoryName: "string-date", subpathName: "stringDate", tier: "isolated", entryFile: "src/plugins/string-date/index.ts", entryPoint: "@maroonedog/luq/plugins/stringDate", exportedSymbols: ["stringDatePlugin"], surfaces: [{ "symbol": "stringDatePlugin", "method": "date", "slots": ["string"] }] },
55
+ { directoryName: "string-datetime", subpathName: "stringDatetime", tier: "isolated", entryFile: "src/plugins/string-datetime/index.ts", entryPoint: "@maroonedog/luq/plugins/stringDatetime", exportedSymbols: ["stringDatetimePlugin"], surfaces: [{ "symbol": "stringDatetimePlugin", "method": "datetime", "slots": ["string"] }] },
56
+ { directoryName: "string-duration", subpathName: "stringDuration", tier: "isolated", entryFile: "src/plugins/string-duration/index.ts", entryPoint: "@maroonedog/luq/plugins/stringDuration", exportedSymbols: ["stringDurationPlugin"], surfaces: [{ "symbol": "stringDurationPlugin", "method": "duration", "slots": ["string"] }] },
57
+ { directoryName: "string-email", subpathName: "stringEmail", tier: "isolated", entryFile: "src/plugins/string-email/index.ts", entryPoint: "@maroonedog/luq/plugins/stringEmail", exportedSymbols: ["stringEmailPlugin"], surfaces: [{ "symbol": "stringEmailPlugin", "method": "email", "slots": ["string"] }] },
58
+ { directoryName: "string-ends-with", subpathName: "stringEndsWith", tier: "isolated", entryFile: "src/plugins/string-ends-with/index.ts", entryPoint: "@maroonedog/luq/plugins/stringEndsWith", exportedSymbols: ["stringEndsWithPlugin"], surfaces: [{ "symbol": "stringEndsWithPlugin", "method": "endsWith", "slots": ["string"] }] },
59
+ { directoryName: "string-exact-length", subpathName: "stringExactLength", tier: "isolated", entryFile: "src/plugins/string-exact-length/index.ts", entryPoint: "@maroonedog/luq/plugins/stringExactLength", exportedSymbols: ["stringExactLengthPlugin"], surfaces: [{ "symbol": "stringExactLengthPlugin", "method": "exactLength", "slots": ["string"] }] },
60
+ { directoryName: "string-hostname", subpathName: "stringHostname", tier: "isolated", entryFile: "src/plugins/string-hostname/index.ts", entryPoint: "@maroonedog/luq/plugins/stringHostname", exportedSymbols: ["stringHostnamePlugin"], surfaces: [{ "symbol": "stringHostnamePlugin", "method": "hostname", "slots": ["string"] }] },
61
+ { directoryName: "string-idn-email", subpathName: "stringIdnEmail", tier: "isolated", entryFile: "src/plugins/string-idn-email/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIdnEmail", exportedSymbols: ["stringIdnEmailPlugin"], surfaces: [{ "symbol": "stringIdnEmailPlugin", "method": "idnEmail", "slots": ["string"] }] },
62
+ { directoryName: "string-idn-hostname", subpathName: "stringIdnHostname", tier: "isolated", entryFile: "src/plugins/string-idn-hostname/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIdnHostname", exportedSymbols: ["stringIdnHostnamePlugin"], surfaces: [{ "symbol": "stringIdnHostnamePlugin", "method": "idnHostname", "slots": ["string"] }] },
63
+ { directoryName: "string-ipv4", subpathName: "stringIpv4", tier: "isolated", entryFile: "src/plugins/string-ipv4/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIpv4", exportedSymbols: ["stringIpv4Plugin"], surfaces: [{ "symbol": "stringIpv4Plugin", "method": "ipv4", "slots": ["string"] }] },
64
+ { directoryName: "string-ipv6", subpathName: "stringIpv6", tier: "isolated", entryFile: "src/plugins/string-ipv6/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIpv6", exportedSymbols: ["stringIpv6Plugin"], surfaces: [{ "symbol": "stringIpv6Plugin", "method": "ipv6", "slots": ["string"] }] },
65
+ { directoryName: "string-iri", subpathName: "stringIri", tier: "isolated", entryFile: "src/plugins/string-iri/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIri", exportedSymbols: ["stringIriPlugin"], surfaces: [{ "symbol": "stringIriPlugin", "method": "iri", "slots": ["string"] }] },
66
+ { directoryName: "string-iri-reference", subpathName: "stringIriReference", tier: "isolated", entryFile: "src/plugins/string-iri-reference/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIriReference", exportedSymbols: ["stringIriReferencePlugin"], surfaces: [{ "symbol": "stringIriReferencePlugin", "method": "iriReference", "slots": ["string"] }] },
67
+ { directoryName: "string-json-pointer", subpathName: "stringJsonPointer", tier: "isolated", entryFile: "src/plugins/string-json-pointer/index.ts", entryPoint: "@maroonedog/luq/plugins/stringJsonPointer", exportedSymbols: ["stringJsonPointerPlugin"], surfaces: [{ "symbol": "stringJsonPointerPlugin", "method": "jsonPointer", "slots": ["string"] }] },
68
+ { directoryName: "string-max", subpathName: "stringMax", tier: "isolated", entryFile: "src/plugins/string-max/index.ts", entryPoint: "@maroonedog/luq/plugins/stringMax", exportedSymbols: ["stringMaxPlugin"], surfaces: [{ "symbol": "stringMaxPlugin", "method": "max", "slots": ["string"] }] },
69
+ { directoryName: "string-min", subpathName: "stringMin", tier: "isolated", entryFile: "src/plugins/string-min/index.ts", entryPoint: "@maroonedog/luq/plugins/stringMin", exportedSymbols: ["stringMinPlugin"], surfaces: [{ "symbol": "stringMinPlugin", "method": "min", "slots": ["string"] }] },
70
+ { directoryName: "string-pattern", subpathName: "stringPattern", tier: "isolated", entryFile: "src/plugins/string-pattern/index.ts", entryPoint: "@maroonedog/luq/plugins/stringPattern", exportedSymbols: ["stringPatternPlugin"], surfaces: [{ "symbol": "stringPatternPlugin", "method": "pattern", "slots": ["string"] }] },
71
+ { directoryName: "string-regex", subpathName: "stringRegex", tier: "isolated", entryFile: "src/plugins/string-regex/index.ts", entryPoint: "@maroonedog/luq/plugins/stringRegex", exportedSymbols: ["stringRegexPlugin"], surfaces: [{ "symbol": "stringRegexPlugin", "method": "regex", "slots": ["string"] }] },
72
+ { directoryName: "string-relative-json-pointer", subpathName: "stringRelativeJsonPointer", tier: "isolated", entryFile: "src/plugins/string-relative-json-pointer/index.ts", entryPoint: "@maroonedog/luq/plugins/stringRelativeJsonPointer", exportedSymbols: ["stringRelativeJsonPointerPlugin"], surfaces: [{ "symbol": "stringRelativeJsonPointerPlugin", "method": "relativeJsonPointer", "slots": ["string"] }] },
73
+ { directoryName: "string-starts-with", subpathName: "stringStartsWith", tier: "isolated", entryFile: "src/plugins/string-starts-with/index.ts", entryPoint: "@maroonedog/luq/plugins/stringStartsWith", exportedSymbols: ["stringStartsWithPlugin"], surfaces: [{ "symbol": "stringStartsWithPlugin", "method": "startsWith", "slots": ["string"] }] },
74
+ { directoryName: "string-time", subpathName: "stringTime", tier: "isolated", entryFile: "src/plugins/string-time/index.ts", entryPoint: "@maroonedog/luq/plugins/stringTime", exportedSymbols: ["stringTimePlugin"], surfaces: [{ "symbol": "stringTimePlugin", "method": "time", "slots": ["string"] }] },
75
+ { directoryName: "string-uri-reference", subpathName: "stringUriReference", tier: "isolated", entryFile: "src/plugins/string-uri-reference/index.ts", entryPoint: "@maroonedog/luq/plugins/stringUriReference", exportedSymbols: ["stringUriReferencePlugin"], surfaces: [{ "symbol": "stringUriReferencePlugin", "method": "uriReference", "slots": ["string"] }] },
76
+ { directoryName: "string-uri-template", subpathName: "stringUriTemplate", tier: "isolated", entryFile: "src/plugins/string-uri-template/index.ts", entryPoint: "@maroonedog/luq/plugins/stringUriTemplate", exportedSymbols: ["stringUriTemplatePlugin"], surfaces: [{ "symbol": "stringUriTemplatePlugin", "method": "uriTemplate", "slots": ["string"] }] },
77
+ { directoryName: "string-url", subpathName: "stringUrl", tier: "isolated", entryFile: "src/plugins/string-url/index.ts", entryPoint: "@maroonedog/luq/plugins/stringUrl", exportedSymbols: ["stringUrlPlugin"], surfaces: [{ "symbol": "stringUrlPlugin", "method": "url", "slots": ["string"] }] },
78
+ { directoryName: "transform", subpathName: "transform", tier: "isolated", entryFile: "src/plugins/transform/index.ts", entryPoint: "@maroonedog/luq/plugins/transform", exportedSymbols: ["transformPlugin"], surfaces: [{ "symbol": "transformPlugin", "method": "transform", "slots": ["string", "number", "boolean", "date", "array", "object", "union"] }] },
79
+ { directoryName: "tuple-builder", subpathName: "tupleBuilder", tier: "isolated", entryFile: "src/plugins/tuple-builder/index.ts", entryPoint: "@maroonedog/luq/plugins/tupleBuilder", exportedSymbols: ["tupleBuilderPlugin"], surfaces: [{ "symbol": "tupleBuilderPlugin", "method": "builder", "slots": ["tuple"] }] },
80
+ { directoryName: "union-guard", subpathName: "unionGuard", tier: "isolated", entryFile: "src/plugins/union-guard/index.ts", entryPoint: "@maroonedog/luq/plugins/unionGuard", exportedSymbols: ["unionGuardPlugin"], surfaces: [{ "symbol": "unionGuardPlugin", "method": "guard", "slots": ["union"] }] },
81
+ { directoryName: "uuid", subpathName: "uuid", tier: "isolated", entryFile: "src/plugins/uuid/index.ts", entryPoint: "@maroonedog/luq/plugins/uuid", exportedSymbols: ["uuidPlugin"], surfaces: [{ "symbol": "uuidPlugin", "method": "uuid", "slots": ["string"] }] },
82
+ { directoryName: "validate-if", subpathName: "validateIf", tier: "isolated", entryFile: "src/plugins/validate-if/index.ts", entryPoint: "@maroonedog/luq/plugins/validateIf", exportedSymbols: ["validateIfPlugin"], surfaces: [{ "symbol": "validateIfPlugin", "method": "validateIf", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
83
+ { directoryName: "write-only", subpathName: "writeOnly", tier: "isolated", entryFile: "src/plugins/write-only/index.ts", entryPoint: "@maroonedog/luq/plugins/writeOnly", exportedSymbols: ["writeOnlyPlugin"], surfaces: [{ "symbol": "writeOnlyPlugin", "method": "writeOnly", "slots": ["string", "number", "boolean", "date", "array", "object"] }] },
84
84
  ];
@@ -1,81 +1,81 @@
1
1
  // GENERATED FILE - do not edit by hand.
2
2
  // Generated by scripts/catalog/build-plugin-catalog.ts out of the plugin directory structure.
3
3
  export const PLUGIN_MANIFEST = [
4
- { directoryName: "array-contains", subpathName: "arrayContains", tier: "isolated", entryFile: "src/plugins/array-contains/index.ts", exportedSymbols: ["arrayContainsPlugin"] },
5
- { directoryName: "array-each", subpathName: "arrayEach", tier: "isolated", entryFile: "src/plugins/array-each/index.ts", exportedSymbols: ["arrayEachPlugin"] },
6
- { directoryName: "array-includes", subpathName: "arrayIncludes", tier: "isolated", entryFile: "src/plugins/array-includes/index.ts", exportedSymbols: ["arrayIncludesPlugin"] },
7
- { directoryName: "array-max-length", subpathName: "arrayMaxLength", tier: "isolated", entryFile: "src/plugins/array-max-length/index.ts", exportedSymbols: ["arrayMaxLengthPlugin"] },
8
- { directoryName: "array-min-length", subpathName: "arrayMinLength", tier: "isolated", entryFile: "src/plugins/array-min-length/index.ts", exportedSymbols: ["arrayMinLengthPlugin"] },
9
- { directoryName: "array-unique", subpathName: "arrayUnique", tier: "isolated", entryFile: "src/plugins/array-unique/index.ts", exportedSymbols: ["arrayUniquePlugin"] },
10
- { directoryName: "boolean-falsy", subpathName: "booleanFalsy", tier: "isolated", entryFile: "src/plugins/boolean-falsy/index.ts", exportedSymbols: ["booleanFalsyPlugin"] },
11
- { directoryName: "boolean-truthy", subpathName: "booleanTruthy", tier: "isolated", entryFile: "src/plugins/boolean-truthy/index.ts", exportedSymbols: ["booleanTruthyPlugin"] },
12
- { directoryName: "compare-field", subpathName: "compareField", tier: "isolated", entryFile: "src/plugins/compare-field/index.ts", exportedSymbols: ["compareFieldPlugin"] },
13
- { directoryName: "conditional-schema", subpathName: "conditionalSchema", tier: "isolated", entryFile: "src/plugins/conditional-schema/index.ts", exportedSymbols: ["conditionalSchemaPlugin"] },
14
- { directoryName: "custom", subpathName: "custom", tier: "isolated", entryFile: "src/plugins/custom/index.ts", exportedSymbols: ["customPlugin"] },
15
- { directoryName: "from-context", subpathName: "fromContext", tier: "isolated", entryFile: "src/plugins/from-context/index.ts", exportedSymbols: ["fromContextPlugin"] },
16
- { directoryName: "json-schema", subpathName: "jsonSchema", tier: "extension", entryFile: "src/json-schema/extensions/json-schema/index.ts", exportedSymbols: ["jsonSchemaPlugin"] },
17
- { directoryName: "json-schema-full-feature", subpathName: "jsonSchemaFullFeature", tier: "extension", entryFile: "src/json-schema/extensions/json-schema-full-feature/index.ts", exportedSymbols: ["jsonSchemaFullFeaturePlugin"] },
18
- { directoryName: "literal", subpathName: "literal", tier: "isolated", entryFile: "src/plugins/literal/index.ts", exportedSymbols: ["literalPlugin"] },
19
- { directoryName: "nullable", subpathName: "nullable", tier: "isolated", entryFile: "src/plugins/nullable/index.ts", exportedSymbols: ["nullablePlugin"] },
20
- { directoryName: "number-finite", subpathName: "numberFinite", tier: "isolated", entryFile: "src/plugins/number-finite/index.ts", exportedSymbols: ["numberFinitePlugin"] },
21
- { directoryName: "number-integer", subpathName: "numberInteger", tier: "isolated", entryFile: "src/plugins/number-integer/index.ts", exportedSymbols: ["numberIntegerPlugin"] },
22
- { directoryName: "number-max", subpathName: "numberMax", tier: "isolated", entryFile: "src/plugins/number-max/index.ts", exportedSymbols: ["numberMaxPlugin"] },
23
- { directoryName: "number-min", subpathName: "numberMin", tier: "isolated", entryFile: "src/plugins/number-min/index.ts", exportedSymbols: ["numberMinPlugin"] },
24
- { directoryName: "number-multiple-of", subpathName: "numberMultipleOf", tier: "isolated", entryFile: "src/plugins/number-multiple-of/index.ts", exportedSymbols: ["numberMultipleOfPlugin"] },
25
- { directoryName: "number-negative", subpathName: "numberNegative", tier: "isolated", entryFile: "src/plugins/number-negative/index.ts", exportedSymbols: ["numberNegativePlugin"] },
26
- { directoryName: "number-positive", subpathName: "numberPositive", tier: "isolated", entryFile: "src/plugins/number-positive/index.ts", exportedSymbols: ["numberPositivePlugin"] },
27
- { directoryName: "number-range", subpathName: "numberRange", tier: "isolated", entryFile: "src/plugins/number-range/index.ts", exportedSymbols: ["numberRangePlugin"] },
28
- { directoryName: "object", subpathName: "object", tier: "isolated", entryFile: "src/plugins/object/index.ts", exportedSymbols: ["objectPlugin"] },
29
- { directoryName: "object-additional-properties", subpathName: "objectAdditionalProperties", tier: "isolated", entryFile: "src/plugins/object-additional-properties/index.ts", exportedSymbols: ["objectAdditionalPropertiesPlugin", "objectAdditionalPropertiesSchemaPlugin"] },
30
- { directoryName: "object-dependent-required", subpathName: "objectDependentRequired", tier: "isolated", entryFile: "src/plugins/object-dependent-required/index.ts", exportedSymbols: ["objectDependentRequiredPlugin"] },
31
- { directoryName: "object-dependent-schemas", subpathName: "objectDependentSchemas", tier: "isolated", entryFile: "src/plugins/object-dependent-schemas/index.ts", exportedSymbols: ["objectDependentSchemasPlugin"] },
32
- { directoryName: "object-max-properties", subpathName: "objectMaxProperties", tier: "isolated", entryFile: "src/plugins/object-max-properties/index.ts", exportedSymbols: ["objectMaxPropertiesPlugin"] },
33
- { directoryName: "object-min-properties", subpathName: "objectMinProperties", tier: "isolated", entryFile: "src/plugins/object-min-properties/index.ts", exportedSymbols: ["objectMinPropertiesPlugin"] },
34
- { directoryName: "object-pattern-properties", subpathName: "objectPatternProperties", tier: "isolated", entryFile: "src/plugins/object-pattern-properties/index.ts", exportedSymbols: ["objectPatternPropertiesPlugin"] },
35
- { directoryName: "object-property-names", subpathName: "objectPropertyNames", tier: "isolated", entryFile: "src/plugins/object-property-names/index.ts", exportedSymbols: ["objectPropertyNamesPlugin"] },
36
- { directoryName: "object-recursively", subpathName: "objectRecursively", tier: "isolated", entryFile: "src/plugins/object-recursively/index.ts", exportedSymbols: ["objectRecursivelyPlugin"] },
37
- { directoryName: "one-of", subpathName: "oneOf", tier: "isolated", entryFile: "src/plugins/one-of/index.ts", exportedSymbols: ["oneOfPlugin"] },
38
- { directoryName: "optional", subpathName: "optional", tier: "isolated", entryFile: "src/plugins/optional/index.ts", exportedSymbols: ["optionalPlugin"] },
39
- { directoryName: "optional-if", subpathName: "optionalIf", tier: "isolated", entryFile: "src/plugins/optional-if/index.ts", exportedSymbols: ["optionalIfPlugin"] },
40
- { directoryName: "or-fail", subpathName: "orFail", tier: "isolated", entryFile: "src/plugins/or-fail/index.ts", exportedSymbols: ["orFailPlugin"] },
41
- { directoryName: "read-only", subpathName: "readOnly", tier: "isolated", entryFile: "src/plugins/read-only/index.ts", exportedSymbols: ["readOnlyPlugin"] },
42
- { directoryName: "required", subpathName: "required", tier: "isolated", entryFile: "src/plugins/required/index.ts", exportedSymbols: ["requiredPlugin"] },
43
- { directoryName: "required-if", subpathName: "requiredIf", tier: "isolated", entryFile: "src/plugins/required-if/index.ts", exportedSymbols: ["requiredIfPlugin"] },
44
- { directoryName: "skip", subpathName: "skip", tier: "isolated", entryFile: "src/plugins/skip/index.ts", exportedSymbols: ["skipPlugin"] },
45
- { directoryName: "stitch", subpathName: "stitch", tier: "isolated", entryFile: "src/plugins/stitch/index.ts", exportedSymbols: ["stitchPlugin"] },
46
- { directoryName: "stitch-with", subpathName: "stitchWith", tier: "isolated", entryFile: "src/plugins/stitch-with/index.ts", exportedSymbols: ["stitchWithPlugin"] },
47
- { directoryName: "string-alphanumeric", subpathName: "stringAlphanumeric", tier: "isolated", entryFile: "src/plugins/string-alphanumeric/index.ts", exportedSymbols: ["stringAlphanumericPlugin"] },
48
- { directoryName: "string-base64", subpathName: "stringBase64", tier: "isolated", entryFile: "src/plugins/string-base64/index.ts", exportedSymbols: ["stringBase64Plugin"] },
49
- { directoryName: "string-content-encoding", subpathName: "stringContentEncoding", tier: "isolated", entryFile: "src/plugins/string-content-encoding/index.ts", exportedSymbols: ["stringContentEncodingPlugin"] },
50
- { directoryName: "string-content-media-type", subpathName: "stringContentMediaType", tier: "isolated", entryFile: "src/plugins/string-content-media-type/index.ts", exportedSymbols: ["stringContentMediaTypePlugin"] },
51
- { directoryName: "string-date", subpathName: "stringDate", tier: "isolated", entryFile: "src/plugins/string-date/index.ts", exportedSymbols: ["stringDatePlugin"] },
52
- { directoryName: "string-datetime", subpathName: "stringDatetime", tier: "isolated", entryFile: "src/plugins/string-datetime/index.ts", exportedSymbols: ["stringDatetimePlugin"] },
53
- { directoryName: "string-duration", subpathName: "stringDuration", tier: "isolated", entryFile: "src/plugins/string-duration/index.ts", exportedSymbols: ["stringDurationPlugin"] },
54
- { directoryName: "string-email", subpathName: "stringEmail", tier: "isolated", entryFile: "src/plugins/string-email/index.ts", exportedSymbols: ["stringEmailPlugin"] },
55
- { directoryName: "string-ends-with", subpathName: "stringEndsWith", tier: "isolated", entryFile: "src/plugins/string-ends-with/index.ts", exportedSymbols: ["stringEndsWithPlugin"] },
56
- { directoryName: "string-exact-length", subpathName: "stringExactLength", tier: "isolated", entryFile: "src/plugins/string-exact-length/index.ts", exportedSymbols: ["stringExactLengthPlugin"] },
57
- { directoryName: "string-hostname", subpathName: "stringHostname", tier: "isolated", entryFile: "src/plugins/string-hostname/index.ts", exportedSymbols: ["stringHostnamePlugin"] },
58
- { directoryName: "string-idn-email", subpathName: "stringIdnEmail", tier: "isolated", entryFile: "src/plugins/string-idn-email/index.ts", exportedSymbols: ["stringIdnEmailPlugin"] },
59
- { directoryName: "string-idn-hostname", subpathName: "stringIdnHostname", tier: "isolated", entryFile: "src/plugins/string-idn-hostname/index.ts", exportedSymbols: ["stringIdnHostnamePlugin"] },
60
- { directoryName: "string-ipv4", subpathName: "stringIpv4", tier: "isolated", entryFile: "src/plugins/string-ipv4/index.ts", exportedSymbols: ["stringIpv4Plugin"] },
61
- { directoryName: "string-ipv6", subpathName: "stringIpv6", tier: "isolated", entryFile: "src/plugins/string-ipv6/index.ts", exportedSymbols: ["stringIpv6Plugin"] },
62
- { directoryName: "string-iri", subpathName: "stringIri", tier: "isolated", entryFile: "src/plugins/string-iri/index.ts", exportedSymbols: ["stringIriPlugin"] },
63
- { directoryName: "string-iri-reference", subpathName: "stringIriReference", tier: "isolated", entryFile: "src/plugins/string-iri-reference/index.ts", exportedSymbols: ["stringIriReferencePlugin"] },
64
- { directoryName: "string-json-pointer", subpathName: "stringJsonPointer", tier: "isolated", entryFile: "src/plugins/string-json-pointer/index.ts", exportedSymbols: ["stringJsonPointerPlugin"] },
65
- { directoryName: "string-max", subpathName: "stringMax", tier: "isolated", entryFile: "src/plugins/string-max/index.ts", exportedSymbols: ["stringMaxPlugin"] },
66
- { directoryName: "string-min", subpathName: "stringMin", tier: "isolated", entryFile: "src/plugins/string-min/index.ts", exportedSymbols: ["stringMinPlugin"] },
67
- { directoryName: "string-pattern", subpathName: "stringPattern", tier: "isolated", entryFile: "src/plugins/string-pattern/index.ts", exportedSymbols: ["stringPatternPlugin"] },
68
- { directoryName: "string-regex", subpathName: "stringRegex", tier: "isolated", entryFile: "src/plugins/string-regex/index.ts", exportedSymbols: ["stringRegexPlugin"] },
69
- { directoryName: "string-relative-json-pointer", subpathName: "stringRelativeJsonPointer", tier: "isolated", entryFile: "src/plugins/string-relative-json-pointer/index.ts", exportedSymbols: ["stringRelativeJsonPointerPlugin"] },
70
- { directoryName: "string-starts-with", subpathName: "stringStartsWith", tier: "isolated", entryFile: "src/plugins/string-starts-with/index.ts", exportedSymbols: ["stringStartsWithPlugin"] },
71
- { directoryName: "string-time", subpathName: "stringTime", tier: "isolated", entryFile: "src/plugins/string-time/index.ts", exportedSymbols: ["stringTimePlugin"] },
72
- { directoryName: "string-uri-reference", subpathName: "stringUriReference", tier: "isolated", entryFile: "src/plugins/string-uri-reference/index.ts", exportedSymbols: ["stringUriReferencePlugin"] },
73
- { directoryName: "string-uri-template", subpathName: "stringUriTemplate", tier: "isolated", entryFile: "src/plugins/string-uri-template/index.ts", exportedSymbols: ["stringUriTemplatePlugin"] },
74
- { directoryName: "string-url", subpathName: "stringUrl", tier: "isolated", entryFile: "src/plugins/string-url/index.ts", exportedSymbols: ["stringUrlPlugin"] },
75
- { directoryName: "transform", subpathName: "transform", tier: "isolated", entryFile: "src/plugins/transform/index.ts", exportedSymbols: ["transformPlugin"] },
76
- { directoryName: "tuple-builder", subpathName: "tupleBuilder", tier: "isolated", entryFile: "src/plugins/tuple-builder/index.ts", exportedSymbols: ["tupleBuilderPlugin"] },
77
- { directoryName: "union-guard", subpathName: "unionGuard", tier: "isolated", entryFile: "src/plugins/union-guard/index.ts", exportedSymbols: ["unionGuardPlugin"] },
78
- { directoryName: "uuid", subpathName: "uuid", tier: "isolated", entryFile: "src/plugins/uuid/index.ts", exportedSymbols: ["uuidPlugin"] },
79
- { directoryName: "validate-if", subpathName: "validateIf", tier: "isolated", entryFile: "src/plugins/validate-if/index.ts", exportedSymbols: ["validateIfPlugin"] },
80
- { directoryName: "write-only", subpathName: "writeOnly", tier: "isolated", entryFile: "src/plugins/write-only/index.ts", exportedSymbols: ["writeOnlyPlugin"] },
4
+ { directoryName: "array-contains", subpathName: "arrayContains", tier: "isolated", entryFile: "src/plugins/array-contains/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayContains", exportedSymbols: ["arrayContainsPlugin"], surfaces: [{ "symbol": "arrayContainsPlugin", "method": "contains", "slots": ["array", "tuple"] }] },
5
+ { directoryName: "array-each", subpathName: "arrayEach", tier: "isolated", entryFile: "src/plugins/array-each/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayEach", exportedSymbols: ["arrayEachPlugin"], surfaces: [{ "symbol": "arrayEachPlugin", "method": "each", "slots": ["array", "tuple"] }] },
6
+ { directoryName: "array-includes", subpathName: "arrayIncludes", tier: "isolated", entryFile: "src/plugins/array-includes/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayIncludes", exportedSymbols: ["arrayIncludesPlugin"], surfaces: [{ "symbol": "arrayIncludesPlugin", "method": "includes", "slots": ["array", "tuple"] }] },
7
+ { directoryName: "array-max-length", subpathName: "arrayMaxLength", tier: "isolated", entryFile: "src/plugins/array-max-length/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayMaxLength", exportedSymbols: ["arrayMaxLengthPlugin"], surfaces: [{ "symbol": "arrayMaxLengthPlugin", "method": "maxLength", "slots": ["array", "tuple"] }] },
8
+ { directoryName: "array-min-length", subpathName: "arrayMinLength", tier: "isolated", entryFile: "src/plugins/array-min-length/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayMinLength", exportedSymbols: ["arrayMinLengthPlugin"], surfaces: [{ "symbol": "arrayMinLengthPlugin", "method": "minLength", "slots": ["array", "tuple"] }] },
9
+ { directoryName: "array-unique", subpathName: "arrayUnique", tier: "isolated", entryFile: "src/plugins/array-unique/index.ts", entryPoint: "@maroonedog/luq/plugins/arrayUnique", exportedSymbols: ["arrayUniquePlugin"], surfaces: [{ "symbol": "arrayUniquePlugin", "method": "unique", "slots": ["array", "tuple"] }] },
10
+ { directoryName: "boolean-falsy", subpathName: "booleanFalsy", tier: "isolated", entryFile: "src/plugins/boolean-falsy/index.ts", entryPoint: "@maroonedog/luq/plugins/booleanFalsy", exportedSymbols: ["booleanFalsyPlugin"], surfaces: [{ "symbol": "booleanFalsyPlugin", "method": "falsy", "slots": ["boolean"] }] },
11
+ { directoryName: "boolean-truthy", subpathName: "booleanTruthy", tier: "isolated", entryFile: "src/plugins/boolean-truthy/index.ts", entryPoint: "@maroonedog/luq/plugins/booleanTruthy", exportedSymbols: ["booleanTruthyPlugin"], surfaces: [{ "symbol": "booleanTruthyPlugin", "method": "truthy", "slots": ["boolean"] }] },
12
+ { directoryName: "compare-field", subpathName: "compareField", tier: "isolated", entryFile: "src/plugins/compare-field/index.ts", entryPoint: "@maroonedog/luq/plugins/compareField", exportedSymbols: ["compareFieldPlugin"], surfaces: [{ "symbol": "compareFieldPlugin", "method": "compareField", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
13
+ { directoryName: "conditional-schema", subpathName: "conditionalSchema", tier: "isolated", entryFile: "src/plugins/conditional-schema/index.ts", entryPoint: "@maroonedog/luq/plugins/conditionalSchema", exportedSymbols: ["conditionalSchemaPlugin"], surfaces: [{ "symbol": "conditionalSchemaPlugin", "method": "conditionalSchema", "slots": ["object", "array", "string", "number", "boolean"] }] },
14
+ { directoryName: "custom", subpathName: "custom", tier: "isolated", entryFile: "src/plugins/custom/index.ts", entryPoint: "@maroonedog/luq/plugins/custom", exportedSymbols: ["customPlugin"], surfaces: [{ "symbol": "customPlugin", "method": "custom", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
15
+ { directoryName: "from-context", subpathName: "fromContext", tier: "isolated", entryFile: "src/plugins/from-context/index.ts", entryPoint: "@maroonedog/luq/plugins/fromContext", exportedSymbols: ["fromContextPlugin"], surfaces: [{ "symbol": "fromContextPlugin", "method": "fromContext", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
16
+ { directoryName: "json-schema", subpathName: "jsonSchema", tier: "extension", entryFile: "src/json-schema/extensions/json-schema/index.ts", entryPoint: "@maroonedog/luq/plugins/jsonSchema", exportedSymbols: ["jsonSchemaPlugin"], surfaces: [{ "symbol": "jsonSchemaPlugin", "method": "jsonSchema", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
17
+ { directoryName: "json-schema-full-feature", subpathName: "jsonSchemaFullFeature", tier: "extension", entryFile: "src/json-schema/extensions/json-schema-full-feature/index.ts", entryPoint: "@maroonedog/luq/plugins/jsonSchemaFullFeature", exportedSymbols: ["jsonSchemaFullFeaturePlugin"], surfaces: [{ "symbol": "jsonSchemaFullFeaturePlugin", "method": "jsonSchemaFullFeature", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
18
+ { directoryName: "literal", subpathName: "literal", tier: "isolated", entryFile: "src/plugins/literal/index.ts", entryPoint: "@maroonedog/luq/plugins/literal", exportedSymbols: ["literalPlugin"], surfaces: [{ "symbol": "literalPlugin", "method": "literal", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
19
+ { directoryName: "nullable", subpathName: "nullable", tier: "isolated", entryFile: "src/plugins/nullable/index.ts", entryPoint: "@maroonedog/luq/plugins/nullable", exportedSymbols: ["nullablePlugin"], surfaces: [{ "symbol": "nullablePlugin", "method": "nullable", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
20
+ { directoryName: "number-finite", subpathName: "numberFinite", tier: "isolated", entryFile: "src/plugins/number-finite/index.ts", entryPoint: "@maroonedog/luq/plugins/numberFinite", exportedSymbols: ["numberFinitePlugin"], surfaces: [{ "symbol": "numberFinitePlugin", "method": "finite", "slots": ["number"] }] },
21
+ { directoryName: "number-integer", subpathName: "numberInteger", tier: "isolated", entryFile: "src/plugins/number-integer/index.ts", entryPoint: "@maroonedog/luq/plugins/numberInteger", exportedSymbols: ["numberIntegerPlugin"], surfaces: [{ "symbol": "numberIntegerPlugin", "method": "integer", "slots": ["number"] }] },
22
+ { directoryName: "number-max", subpathName: "numberMax", tier: "isolated", entryFile: "src/plugins/number-max/index.ts", entryPoint: "@maroonedog/luq/plugins/numberMax", exportedSymbols: ["numberMaxPlugin"], surfaces: [{ "symbol": "numberMaxPlugin", "method": "max", "slots": ["number"] }] },
23
+ { directoryName: "number-min", subpathName: "numberMin", tier: "isolated", entryFile: "src/plugins/number-min/index.ts", entryPoint: "@maroonedog/luq/plugins/numberMin", exportedSymbols: ["numberMinPlugin"], surfaces: [{ "symbol": "numberMinPlugin", "method": "min", "slots": ["number"] }] },
24
+ { directoryName: "number-multiple-of", subpathName: "numberMultipleOf", tier: "isolated", entryFile: "src/plugins/number-multiple-of/index.ts", entryPoint: "@maroonedog/luq/plugins/numberMultipleOf", exportedSymbols: ["numberMultipleOfPlugin"], surfaces: [{ "symbol": "numberMultipleOfPlugin", "method": "multipleOf", "slots": ["number"] }] },
25
+ { directoryName: "number-negative", subpathName: "numberNegative", tier: "isolated", entryFile: "src/plugins/number-negative/index.ts", entryPoint: "@maroonedog/luq/plugins/numberNegative", exportedSymbols: ["numberNegativePlugin"], surfaces: [{ "symbol": "numberNegativePlugin", "method": "negative", "slots": ["number"] }] },
26
+ { directoryName: "number-positive", subpathName: "numberPositive", tier: "isolated", entryFile: "src/plugins/number-positive/index.ts", entryPoint: "@maroonedog/luq/plugins/numberPositive", exportedSymbols: ["numberPositivePlugin"], surfaces: [{ "symbol": "numberPositivePlugin", "method": "positive", "slots": ["number"] }] },
27
+ { directoryName: "number-range", subpathName: "numberRange", tier: "isolated", entryFile: "src/plugins/number-range/index.ts", entryPoint: "@maroonedog/luq/plugins/numberRange", exportedSymbols: ["numberRangePlugin"], surfaces: [{ "symbol": "numberRangePlugin", "method": "range", "slots": ["number"] }] },
28
+ { directoryName: "object", subpathName: "object", tier: "isolated", entryFile: "src/plugins/object/index.ts", entryPoint: "@maroonedog/luq/plugins/object", exportedSymbols: ["objectPlugin"], surfaces: [{ "symbol": "objectPlugin", "method": "object", "slots": ["object"] }] },
29
+ { directoryName: "object-additional-properties", subpathName: "objectAdditionalProperties", tier: "isolated", entryFile: "src/plugins/object-additional-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectAdditionalProperties", exportedSymbols: ["objectAdditionalPropertiesPlugin", "objectAdditionalPropertiesSchemaPlugin"], surfaces: [{ "symbol": "objectAdditionalPropertiesPlugin", "method": "additionalProperties", "slots": ["object"] }, { "symbol": "objectAdditionalPropertiesSchemaPlugin", "method": "additionalPropertiesSchema", "slots": ["object"] }] },
30
+ { directoryName: "object-dependent-required", subpathName: "objectDependentRequired", tier: "isolated", entryFile: "src/plugins/object-dependent-required/index.ts", entryPoint: "@maroonedog/luq/plugins/objectDependentRequired", exportedSymbols: ["objectDependentRequiredPlugin"], surfaces: [{ "symbol": "objectDependentRequiredPlugin", "method": "dependentRequired", "slots": ["object"] }] },
31
+ { directoryName: "object-dependent-schemas", subpathName: "objectDependentSchemas", tier: "isolated", entryFile: "src/plugins/object-dependent-schemas/index.ts", entryPoint: "@maroonedog/luq/plugins/objectDependentSchemas", exportedSymbols: ["objectDependentSchemasPlugin"], surfaces: [{ "symbol": "objectDependentSchemasPlugin", "method": "dependentSchemas", "slots": ["object"] }] },
32
+ { directoryName: "object-max-properties", subpathName: "objectMaxProperties", tier: "isolated", entryFile: "src/plugins/object-max-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectMaxProperties", exportedSymbols: ["objectMaxPropertiesPlugin"], surfaces: [{ "symbol": "objectMaxPropertiesPlugin", "method": "maxProperties", "slots": ["object"] }] },
33
+ { directoryName: "object-min-properties", subpathName: "objectMinProperties", tier: "isolated", entryFile: "src/plugins/object-min-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectMinProperties", exportedSymbols: ["objectMinPropertiesPlugin"], surfaces: [{ "symbol": "objectMinPropertiesPlugin", "method": "minProperties", "slots": ["object"] }] },
34
+ { directoryName: "object-pattern-properties", subpathName: "objectPatternProperties", tier: "isolated", entryFile: "src/plugins/object-pattern-properties/index.ts", entryPoint: "@maroonedog/luq/plugins/objectPatternProperties", exportedSymbols: ["objectPatternPropertiesPlugin"], surfaces: [{ "symbol": "objectPatternPropertiesPlugin", "method": "patternProperties", "slots": ["object"] }] },
35
+ { directoryName: "object-property-names", subpathName: "objectPropertyNames", tier: "isolated", entryFile: "src/plugins/object-property-names/index.ts", entryPoint: "@maroonedog/luq/plugins/objectPropertyNames", exportedSymbols: ["objectPropertyNamesPlugin"], surfaces: [{ "symbol": "objectPropertyNamesPlugin", "method": "propertyNames", "slots": ["object"] }] },
36
+ { directoryName: "object-recursively", subpathName: "objectRecursively", tier: "isolated", entryFile: "src/plugins/object-recursively/index.ts", entryPoint: "@maroonedog/luq/plugins/objectRecursively", exportedSymbols: ["objectRecursivelyPlugin"], surfaces: [{ "symbol": "objectRecursivelyPlugin", "method": "recursively", "slots": ["object", "array"] }] },
37
+ { directoryName: "one-of", subpathName: "oneOf", tier: "isolated", entryFile: "src/plugins/one-of/index.ts", entryPoint: "@maroonedog/luq/plugins/oneOf", exportedSymbols: ["oneOfPlugin"], surfaces: [{ "symbol": "oneOfPlugin", "method": "oneOf", "slots": ["string", "number", "boolean"] }] },
38
+ { directoryName: "optional", subpathName: "optional", tier: "isolated", entryFile: "src/plugins/optional/index.ts", entryPoint: "@maroonedog/luq/plugins/optional", exportedSymbols: ["optionalPlugin"], surfaces: [{ "symbol": "optionalPlugin", "method": "optional", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
39
+ { directoryName: "optional-if", subpathName: "optionalIf", tier: "isolated", entryFile: "src/plugins/optional-if/index.ts", entryPoint: "@maroonedog/luq/plugins/optionalIf", exportedSymbols: ["optionalIfPlugin"], surfaces: [{ "symbol": "optionalIfPlugin", "method": "optionalIf", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
40
+ { directoryName: "or-fail", subpathName: "orFail", tier: "isolated", entryFile: "src/plugins/or-fail/index.ts", entryPoint: "@maroonedog/luq/plugins/orFail", exportedSymbols: ["orFailPlugin"], surfaces: [{ "symbol": "orFailPlugin", "method": "orFail", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
41
+ { directoryName: "read-only", subpathName: "readOnly", tier: "isolated", entryFile: "src/plugins/read-only/index.ts", entryPoint: "@maroonedog/luq/plugins/readOnly", exportedSymbols: ["readOnlyPlugin"], surfaces: [{ "symbol": "readOnlyPlugin", "method": "readOnly", "slots": ["string", "number", "boolean", "date", "array", "object"] }] },
42
+ { directoryName: "required", subpathName: "required", tier: "isolated", entryFile: "src/plugins/required/index.ts", entryPoint: "@maroonedog/luq/plugins/required", exportedSymbols: ["requiredPlugin"], surfaces: [{ "symbol": "requiredPlugin", "method": "required", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
43
+ { directoryName: "required-if", subpathName: "requiredIf", tier: "isolated", entryFile: "src/plugins/required-if/index.ts", entryPoint: "@maroonedog/luq/plugins/requiredIf", exportedSymbols: ["requiredIfPlugin"], surfaces: [{ "symbol": "requiredIfPlugin", "method": "requiredIf", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
44
+ { directoryName: "skip", subpathName: "skip", tier: "isolated", entryFile: "src/plugins/skip/index.ts", entryPoint: "@maroonedog/luq/plugins/skip", exportedSymbols: ["skipPlugin"], surfaces: [{ "symbol": "skipPlugin", "method": "skip", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
45
+ { directoryName: "stitch", subpathName: "stitch", tier: "isolated", entryFile: "src/plugins/stitch/index.ts", entryPoint: "@maroonedog/luq/plugins/stitch", exportedSymbols: ["stitchPlugin"], surfaces: [{ "symbol": "stitchPlugin", "method": "stitch", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
46
+ { directoryName: "stitch-with", subpathName: "stitchWith", tier: "isolated", entryFile: "src/plugins/stitch-with/index.ts", entryPoint: "@maroonedog/luq/plugins/stitchWith", exportedSymbols: ["stitchWithPlugin"], surfaces: [{ "symbol": "stitchWithPlugin", "method": "stitchWith", "slots": ["string", "number", "boolean", "date", "object", "array", "tuple", "union"] }] },
47
+ { directoryName: "string-alphanumeric", subpathName: "stringAlphanumeric", tier: "isolated", entryFile: "src/plugins/string-alphanumeric/index.ts", entryPoint: "@maroonedog/luq/plugins/stringAlphanumeric", exportedSymbols: ["stringAlphanumericPlugin"], surfaces: [{ "symbol": "stringAlphanumericPlugin", "method": "alphanumeric", "slots": ["string"] }] },
48
+ { directoryName: "string-base64", subpathName: "stringBase64", tier: "isolated", entryFile: "src/plugins/string-base64/index.ts", entryPoint: "@maroonedog/luq/plugins/stringBase64", exportedSymbols: ["stringBase64Plugin"], surfaces: [{ "symbol": "stringBase64Plugin", "method": "base64", "slots": ["string"] }] },
49
+ { directoryName: "string-content-encoding", subpathName: "stringContentEncoding", tier: "isolated", entryFile: "src/plugins/string-content-encoding/index.ts", entryPoint: "@maroonedog/luq/plugins/stringContentEncoding", exportedSymbols: ["stringContentEncodingPlugin"], surfaces: [{ "symbol": "stringContentEncodingPlugin", "method": "contentEncoding", "slots": ["string"] }] },
50
+ { directoryName: "string-content-media-type", subpathName: "stringContentMediaType", tier: "isolated", entryFile: "src/plugins/string-content-media-type/index.ts", entryPoint: "@maroonedog/luq/plugins/stringContentMediaType", exportedSymbols: ["stringContentMediaTypePlugin"], surfaces: [{ "symbol": "stringContentMediaTypePlugin", "method": "contentMediaType", "slots": ["string"] }] },
51
+ { directoryName: "string-date", subpathName: "stringDate", tier: "isolated", entryFile: "src/plugins/string-date/index.ts", entryPoint: "@maroonedog/luq/plugins/stringDate", exportedSymbols: ["stringDatePlugin"], surfaces: [{ "symbol": "stringDatePlugin", "method": "date", "slots": ["string"] }] },
52
+ { directoryName: "string-datetime", subpathName: "stringDatetime", tier: "isolated", entryFile: "src/plugins/string-datetime/index.ts", entryPoint: "@maroonedog/luq/plugins/stringDatetime", exportedSymbols: ["stringDatetimePlugin"], surfaces: [{ "symbol": "stringDatetimePlugin", "method": "datetime", "slots": ["string"] }] },
53
+ { directoryName: "string-duration", subpathName: "stringDuration", tier: "isolated", entryFile: "src/plugins/string-duration/index.ts", entryPoint: "@maroonedog/luq/plugins/stringDuration", exportedSymbols: ["stringDurationPlugin"], surfaces: [{ "symbol": "stringDurationPlugin", "method": "duration", "slots": ["string"] }] },
54
+ { directoryName: "string-email", subpathName: "stringEmail", tier: "isolated", entryFile: "src/plugins/string-email/index.ts", entryPoint: "@maroonedog/luq/plugins/stringEmail", exportedSymbols: ["stringEmailPlugin"], surfaces: [{ "symbol": "stringEmailPlugin", "method": "email", "slots": ["string"] }] },
55
+ { directoryName: "string-ends-with", subpathName: "stringEndsWith", tier: "isolated", entryFile: "src/plugins/string-ends-with/index.ts", entryPoint: "@maroonedog/luq/plugins/stringEndsWith", exportedSymbols: ["stringEndsWithPlugin"], surfaces: [{ "symbol": "stringEndsWithPlugin", "method": "endsWith", "slots": ["string"] }] },
56
+ { directoryName: "string-exact-length", subpathName: "stringExactLength", tier: "isolated", entryFile: "src/plugins/string-exact-length/index.ts", entryPoint: "@maroonedog/luq/plugins/stringExactLength", exportedSymbols: ["stringExactLengthPlugin"], surfaces: [{ "symbol": "stringExactLengthPlugin", "method": "exactLength", "slots": ["string"] }] },
57
+ { directoryName: "string-hostname", subpathName: "stringHostname", tier: "isolated", entryFile: "src/plugins/string-hostname/index.ts", entryPoint: "@maroonedog/luq/plugins/stringHostname", exportedSymbols: ["stringHostnamePlugin"], surfaces: [{ "symbol": "stringHostnamePlugin", "method": "hostname", "slots": ["string"] }] },
58
+ { directoryName: "string-idn-email", subpathName: "stringIdnEmail", tier: "isolated", entryFile: "src/plugins/string-idn-email/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIdnEmail", exportedSymbols: ["stringIdnEmailPlugin"], surfaces: [{ "symbol": "stringIdnEmailPlugin", "method": "idnEmail", "slots": ["string"] }] },
59
+ { directoryName: "string-idn-hostname", subpathName: "stringIdnHostname", tier: "isolated", entryFile: "src/plugins/string-idn-hostname/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIdnHostname", exportedSymbols: ["stringIdnHostnamePlugin"], surfaces: [{ "symbol": "stringIdnHostnamePlugin", "method": "idnHostname", "slots": ["string"] }] },
60
+ { directoryName: "string-ipv4", subpathName: "stringIpv4", tier: "isolated", entryFile: "src/plugins/string-ipv4/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIpv4", exportedSymbols: ["stringIpv4Plugin"], surfaces: [{ "symbol": "stringIpv4Plugin", "method": "ipv4", "slots": ["string"] }] },
61
+ { directoryName: "string-ipv6", subpathName: "stringIpv6", tier: "isolated", entryFile: "src/plugins/string-ipv6/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIpv6", exportedSymbols: ["stringIpv6Plugin"], surfaces: [{ "symbol": "stringIpv6Plugin", "method": "ipv6", "slots": ["string"] }] },
62
+ { directoryName: "string-iri", subpathName: "stringIri", tier: "isolated", entryFile: "src/plugins/string-iri/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIri", exportedSymbols: ["stringIriPlugin"], surfaces: [{ "symbol": "stringIriPlugin", "method": "iri", "slots": ["string"] }] },
63
+ { directoryName: "string-iri-reference", subpathName: "stringIriReference", tier: "isolated", entryFile: "src/plugins/string-iri-reference/index.ts", entryPoint: "@maroonedog/luq/plugins/stringIriReference", exportedSymbols: ["stringIriReferencePlugin"], surfaces: [{ "symbol": "stringIriReferencePlugin", "method": "iriReference", "slots": ["string"] }] },
64
+ { directoryName: "string-json-pointer", subpathName: "stringJsonPointer", tier: "isolated", entryFile: "src/plugins/string-json-pointer/index.ts", entryPoint: "@maroonedog/luq/plugins/stringJsonPointer", exportedSymbols: ["stringJsonPointerPlugin"], surfaces: [{ "symbol": "stringJsonPointerPlugin", "method": "jsonPointer", "slots": ["string"] }] },
65
+ { directoryName: "string-max", subpathName: "stringMax", tier: "isolated", entryFile: "src/plugins/string-max/index.ts", entryPoint: "@maroonedog/luq/plugins/stringMax", exportedSymbols: ["stringMaxPlugin"], surfaces: [{ "symbol": "stringMaxPlugin", "method": "max", "slots": ["string"] }] },
66
+ { directoryName: "string-min", subpathName: "stringMin", tier: "isolated", entryFile: "src/plugins/string-min/index.ts", entryPoint: "@maroonedog/luq/plugins/stringMin", exportedSymbols: ["stringMinPlugin"], surfaces: [{ "symbol": "stringMinPlugin", "method": "min", "slots": ["string"] }] },
67
+ { directoryName: "string-pattern", subpathName: "stringPattern", tier: "isolated", entryFile: "src/plugins/string-pattern/index.ts", entryPoint: "@maroonedog/luq/plugins/stringPattern", exportedSymbols: ["stringPatternPlugin"], surfaces: [{ "symbol": "stringPatternPlugin", "method": "pattern", "slots": ["string"] }] },
68
+ { directoryName: "string-regex", subpathName: "stringRegex", tier: "isolated", entryFile: "src/plugins/string-regex/index.ts", entryPoint: "@maroonedog/luq/plugins/stringRegex", exportedSymbols: ["stringRegexPlugin"], surfaces: [{ "symbol": "stringRegexPlugin", "method": "regex", "slots": ["string"] }] },
69
+ { directoryName: "string-relative-json-pointer", subpathName: "stringRelativeJsonPointer", tier: "isolated", entryFile: "src/plugins/string-relative-json-pointer/index.ts", entryPoint: "@maroonedog/luq/plugins/stringRelativeJsonPointer", exportedSymbols: ["stringRelativeJsonPointerPlugin"], surfaces: [{ "symbol": "stringRelativeJsonPointerPlugin", "method": "relativeJsonPointer", "slots": ["string"] }] },
70
+ { directoryName: "string-starts-with", subpathName: "stringStartsWith", tier: "isolated", entryFile: "src/plugins/string-starts-with/index.ts", entryPoint: "@maroonedog/luq/plugins/stringStartsWith", exportedSymbols: ["stringStartsWithPlugin"], surfaces: [{ "symbol": "stringStartsWithPlugin", "method": "startsWith", "slots": ["string"] }] },
71
+ { directoryName: "string-time", subpathName: "stringTime", tier: "isolated", entryFile: "src/plugins/string-time/index.ts", entryPoint: "@maroonedog/luq/plugins/stringTime", exportedSymbols: ["stringTimePlugin"], surfaces: [{ "symbol": "stringTimePlugin", "method": "time", "slots": ["string"] }] },
72
+ { directoryName: "string-uri-reference", subpathName: "stringUriReference", tier: "isolated", entryFile: "src/plugins/string-uri-reference/index.ts", entryPoint: "@maroonedog/luq/plugins/stringUriReference", exportedSymbols: ["stringUriReferencePlugin"], surfaces: [{ "symbol": "stringUriReferencePlugin", "method": "uriReference", "slots": ["string"] }] },
73
+ { directoryName: "string-uri-template", subpathName: "stringUriTemplate", tier: "isolated", entryFile: "src/plugins/string-uri-template/index.ts", entryPoint: "@maroonedog/luq/plugins/stringUriTemplate", exportedSymbols: ["stringUriTemplatePlugin"], surfaces: [{ "symbol": "stringUriTemplatePlugin", "method": "uriTemplate", "slots": ["string"] }] },
74
+ { directoryName: "string-url", subpathName: "stringUrl", tier: "isolated", entryFile: "src/plugins/string-url/index.ts", entryPoint: "@maroonedog/luq/plugins/stringUrl", exportedSymbols: ["stringUrlPlugin"], surfaces: [{ "symbol": "stringUrlPlugin", "method": "url", "slots": ["string"] }] },
75
+ { directoryName: "transform", subpathName: "transform", tier: "isolated", entryFile: "src/plugins/transform/index.ts", entryPoint: "@maroonedog/luq/plugins/transform", exportedSymbols: ["transformPlugin"], surfaces: [{ "symbol": "transformPlugin", "method": "transform", "slots": ["string", "number", "boolean", "date", "array", "object", "union"] }] },
76
+ { directoryName: "tuple-builder", subpathName: "tupleBuilder", tier: "isolated", entryFile: "src/plugins/tuple-builder/index.ts", entryPoint: "@maroonedog/luq/plugins/tupleBuilder", exportedSymbols: ["tupleBuilderPlugin"], surfaces: [{ "symbol": "tupleBuilderPlugin", "method": "builder", "slots": ["tuple"] }] },
77
+ { directoryName: "union-guard", subpathName: "unionGuard", tier: "isolated", entryFile: "src/plugins/union-guard/index.ts", entryPoint: "@maroonedog/luq/plugins/unionGuard", exportedSymbols: ["unionGuardPlugin"], surfaces: [{ "symbol": "unionGuardPlugin", "method": "guard", "slots": ["union"] }] },
78
+ { directoryName: "uuid", subpathName: "uuid", tier: "isolated", entryFile: "src/plugins/uuid/index.ts", entryPoint: "@maroonedog/luq/plugins/uuid", exportedSymbols: ["uuidPlugin"], surfaces: [{ "symbol": "uuidPlugin", "method": "uuid", "slots": ["string"] }] },
79
+ { directoryName: "validate-if", subpathName: "validateIf", tier: "isolated", entryFile: "src/plugins/validate-if/index.ts", entryPoint: "@maroonedog/luq/plugins/validateIf", exportedSymbols: ["validateIfPlugin"], surfaces: [{ "symbol": "validateIfPlugin", "method": "validateIf", "slots": ["string", "number", "boolean", "date", "array", "tuple", "object", "union", "any"] }] },
80
+ { directoryName: "write-only", subpathName: "writeOnly", tier: "isolated", entryFile: "src/plugins/write-only/index.ts", entryPoint: "@maroonedog/luq/plugins/writeOnly", exportedSymbols: ["writeOnlyPlugin"], surfaces: [{ "symbol": "writeOnlyPlugin", "method": "writeOnly", "slots": ["string", "number", "boolean", "date", "array", "object"] }] },
81
81
  ];
@@ -36,7 +36,10 @@ function describeAllowed(allowed) {
36
36
  function areAllMembersPrimitive(allowed) {
37
37
  return allowed.every((member) => member === null || typeof member !== "object");
38
38
  }
39
- /** One membership test, decided ONCE at build time and never re-decided. */
39
+ /** One membership test, decided ONCE at build time and never re-decided. The
40
+ * list must already be a snapshot: the linear path CLOSES OVER it rather than
41
+ * copying it into a Set, so a caller-owned array reaching here would stay
42
+ * readable — and mutable — through the returned validator. */
40
43
  function createMembershipTest(allowed) {
41
44
  if (allowed.length > SET_MEMBERSHIP_THRESHOLD &&
42
45
  areAllMembersPrimitive(allowed)) {
@@ -53,13 +56,24 @@ exports.oneOfPlugin = (0, plugin_definition_1.definePlugin)()({
53
56
  if (!(0, types_1.isArray)(allowed) || allowed.length === 0) {
54
57
  throw new plugin_definition_1.PluginArgumentError(ctx.pluginName, "allowed", allowed);
55
58
  }
56
- const isMember = createMembershipTest(allowed);
57
- const rendered = describeAllowed(allowed);
59
+ // A built validator is a SNAPSHOT of what it was built from, and this list
60
+ // arrives BY REFERENCE: reached through the `enum` keyword it is the very
61
+ // array inside the caller's schema document. Without this copy, appending
62
+ // to that array in place after build() — a config reload that mutates the
63
+ // document rather than replacing it — silently widens a validator that is
64
+ // already serving traffic. It would also do so only SOMETIMES: the Set
65
+ // path in createMembershipTest copies and the linear path does not, so the
66
+ // behaviour would flip at a member count the caller has no reason to know
67
+ // about. Copying here, at the one point where the caller's array enters
68
+ // the plugin, is what makes both paths and the reported `expected` agree.
69
+ const members = Object.freeze(allowed.slice());
70
+ const isMember = createMembershipTest(members);
71
+ const rendered = describeAllowed(members);
58
72
  return (0, create_rule_1.check)({
59
73
  code: ctx.code,
60
74
  messageFactory: ctx.messageFactory,
61
75
  severity: ctx.severity,
62
- run: (value) => isMember(value) ? types_1.PASS : (0, types_1.fail)({ expected: allowed, actual: value }),
76
+ run: (value) => isMember(value) ? types_1.PASS : (0, types_1.fail)({ expected: members, actual: value }),
63
77
  describe: () => `Value must be one of: ${rendered}`,
64
78
  buildMessageContext: () => ({}),
65
79
  });