@c9up/rune 0.1.8 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/Schema.d.ts CHANGED
@@ -118,6 +118,12 @@ export interface CreateRuleOptions {
118
118
  */
119
119
  isAsync?: boolean;
120
120
  }
121
+ export declare function createRule(validator: AsyncRuleValidator<undefined>, options: CreateRuleOptions & {
122
+ isAsync: true;
123
+ }): () => AsyncCompiledRule;
124
+ export declare function createRule<Options>(validator: AsyncRuleValidator<Options>, options: CreateRuleOptions & {
125
+ isAsync: true;
126
+ }): (options: Options) => AsyncCompiledRule;
121
127
  export declare function createRule(validator: RuleValidator<undefined>, options?: CreateRuleOptions): () => CompiledRule;
122
128
  export declare function createRule<Options>(validator: RuleValidator<Options>, options?: CreateRuleOptions): (options: Options) => CompiledRule;
123
129
  /**
@@ -392,6 +398,16 @@ export interface ConditionalGroup {
392
398
  shape: Record<string, RuleChain>;
393
399
  }>;
394
400
  }
401
+ /**
402
+ * Called when no union branch matched (VineJS `UnionNoMatchCallback`). Report
403
+ * through the field context; reporting nothing suppresses the generic error.
404
+ */
405
+ export type UnionNoMatchCallback = (value: unknown, field: FieldContext) => void;
406
+ /**
407
+ * Called with a record's keys (VineJS `RecordKeysCallback`). Report through the
408
+ * field context; reporting nothing accepts the key set.
409
+ */
410
+ export type RecordKeysCallback = (keys: string[], field: FieldContext) => void;
395
411
  /** Per-field introspection returned inside `toJSON().schema`. */
396
412
  export type SchemaIntrospection = Record<string, {
397
413
  rules: string[];
@@ -490,7 +506,12 @@ export interface RuleDef {
490
506
  param?: number;
491
507
  /** Interpolation args exposed to i18n/messages providers (e.g. `{ min: 3 }`). */
492
508
  args?: Record<string, unknown>;
493
- validate: (value: unknown) => boolean;
509
+ /**
510
+ * `field` is the context VineJS hands a rule — a callback-valued rule
511
+ * (`in`, `notIn`, `enum`) reads `meta`/`parent` off it to compute its list
512
+ * per request. Rules that do not need it simply declare one parameter.
513
+ */
514
+ validate: (value: unknown, field: FieldContext) => boolean;
494
515
  message: string;
495
516
  /** Set when `.message()` overrode this rule's default text. */
496
517
  hasCustomMessage?: boolean;
@@ -518,7 +539,7 @@ declare const OUTPUT: unique symbol;
518
539
  * The value list accepted by `in` / `notIn` / `enum` — static, or computed at
519
540
  * validation time (VineJS parity).
520
541
  */
521
- export type AllowedValues = ReadonlyArray<string | number | boolean> | (() => ReadonlyArray<string | number | boolean>);
542
+ export type AllowedValues = ReadonlyArray<string | number | boolean> | ((field: FieldContext) => ReadonlyArray<string | number | boolean>);
522
543
  export declare class RuleChain<Output = unknown> {
523
544
  #private;
524
545
  /** Phantom output type — drives {@link Infer}; never read at runtime. */
@@ -669,6 +690,14 @@ export declare class RuleChain<Output = unknown> {
669
690
  * (VineJS `record`).
670
691
  */
671
692
  record<Item extends RuleChain>(valueChain: Item): RuleChain<Record<string, OutputOf<Item>>>;
693
+ /**
694
+ * Check the record's KEYS, not its values (VineJS `record().validateKeys()`).
695
+ *
696
+ * The callback receives every key at once and reports through the field
697
+ * context — the set is what matters when keys must be exclusive, exhaustive,
698
+ * or drawn from a list only known at runtime.
699
+ */
700
+ validateKeys(callback: RecordKeysCallback): this;
672
701
  /**
673
702
  * Fixed-length array with a schema per position (VineJS `tuple`). Extra
674
703
  * items are rejected — a tuple that silently ignores a trailing element is
@@ -689,6 +718,16 @@ export declare class RuleChain<Output = unknown> {
689
718
  * - bare chains: tried in order, first match wins, and a total miss reports a
690
719
  * single `union` error rather than every losing branch's noise.
691
720
  */
721
+ /**
722
+ * What to do when NO union branch matched (VineJS `union().otherwise()`).
723
+ *
724
+ * The callback receives the value and the field, and reports the error it
725
+ * wants — the point being that "matches nothing" is a useless message when
726
+ * the caller knows which shapes were on offer. Reporting nothing from the
727
+ * callback suppresses the generic error entirely, which is how a union
728
+ * folded into a larger check stays quiet.
729
+ */
730
+ otherwise(callback: UnionNoMatchCallback): this;
692
731
  union(chains: readonly UnionBranch[]): this;
693
732
  /**
694
733
  * Must be an uploaded file (VineJS/Adonis `vine.file()`).
@@ -744,8 +783,22 @@ export declare class RuleChain<Output = unknown> {
744
783
  * run must never look like one that passed.
745
784
  */
746
785
  verifyContent(): this;
747
- /** Must equal one of `values` (enum). Narrows the output to the union. */
748
- enum<const V extends readonly (string | number | boolean)[]>(values: V): RuleChain<V[number]>;
786
+ /**
787
+ * Must equal one of `values` (enum). Narrows the output to the union.
788
+ *
789
+ * `values` may be a callback receiving the field, which is how a list that
790
+ * depends on the request — the roles this tenant allows, the statuses this
791
+ * user may set — is computed per validation instead of frozen at import.
792
+ */
793
+ enum<const V extends readonly (string | number | boolean)[]>(values: V | ((field: FieldContext) => V)): RuleChain<V[number]>;
794
+ /**
795
+ * The choices this enum was declared with (VineJS `getChoices()`) — the list
796
+ * itself, or the callback when it is computed per request.
797
+ *
798
+ * Reading them back is what lets a form render the same options the
799
+ * validator will accept, from one declaration instead of two.
800
+ */
801
+ getChoices(): ReadonlyArray<string | number | boolean> | ((field: FieldContext) => ReadonlyArray<string | number | boolean>) | undefined;
749
802
  /** Must equal a literal value. */
750
803
  literal<V extends string | number | boolean>(value: V): RuleChain<V>;
751
804
  /** Minimum length (string) or minimum value (number). Alias of min/minLength. */
@@ -800,8 +853,13 @@ export declare class RuleChain<Output = unknown> {
800
853
  /** Must be a `"lat,lng"` pair within the valid ranges. */
801
854
  coordinates(): this;
802
855
  /**
803
- * Must be a mobile number in E.164 form. Named deviation from VineJS: rune
804
- * carries no per-locale numbering plans, so there is no `locale` option.
856
+ * Must be a mobile number (VineJS/Adonis `mobile()`).
857
+ *
858
+ * With no `locale`, the number must be in E.164 form. With one or more,
859
+ * it must match one of their numbering plans, as in VineJS. rune carries
860
+ * its own plans rather than validator.js', so it knows fewer locales — an
861
+ * unknown one raises `UNSUPPORTED_LOCALE` at schema build, naming the ones
862
+ * it does know, rather than silently accepting anything at request time.
805
863
  */
806
864
  mobile(options?: {
807
865
  locale?: string | string[];
@@ -1048,7 +1106,7 @@ export declare const rules: {
1048
1106
  unionOfTypes: (chains: readonly RuleChain[]) => RuleChain;
1049
1107
  object: <Sh extends Record<string, RuleChain>>(shape: Sh) => RuleChain<Infer<Sh>>;
1050
1108
  array: <Item extends RuleChain>(item?: Item) => RuleChain<OutputOf<Item>[]>;
1051
- enum: <const V extends readonly (string | number | boolean)[]>(values: V) => RuleChain<V[number]>;
1109
+ enum: <const V extends readonly (string | number | boolean)[]>(values: V | ((field: FieldContext) => V)) => RuleChain<V[number]>;
1052
1110
  literal: <V extends string | number | boolean>(value: V) => RuleChain<V>;
1053
1111
  };
1054
1112
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
package/dist/Schema.js CHANGED
@@ -9,13 +9,16 @@ import { RuneError, RuneValidationError } from "./errors.js";
9
9
  import { alphaPattern, escapeHtml, isAscii, isCoordinates, isCreditCard, isEmail, isHexCode, isIban, isIpAddress, isJwt, isMobile, isMobileForLocale, isPassport, isPostalCode, isUlid, isUrlWithOptions, isVat, normalizeEmail, normalizeUrl, SUPPORTED_MOBILE_LOCALES, SUPPORTED_PASSPORTS, SUPPORTED_POSTAL_CODES, SUPPORTED_VAT_COUNTRIES, toCamelCase, } from "./formats.js";
10
10
  import { toWildcardPath } from "./MessagesProvider.js";
11
11
  import { detectFileType, extensionMatches, MAGIC_HEAD_BYTES, readHead, } from "./magic.js";
12
- import { isNativeAvailable, validateNative, warnNativeUnavailableOnce, } from "./native.js";
12
+ import { assertNativeAvailable, isNativeAvailable, validateNative, } from "./native.js";
13
13
  export function createRule(validator, ruleOptions) {
14
14
  if (ruleOptions?.isAsync) {
15
15
  // VineJS expresses "async" as an option on createRule, so honour it by
16
16
  // BUILDING the async rule rather than refusing: `.use()` routes an
17
17
  // async-marked rule to the awaited register.
18
- const asyncBuilder = createAsyncRule(validator, { ...ruleOptions, isAsync: undefined });
18
+ const asyncBuilder = createAsyncRule(validator, {
19
+ ...ruleOptions,
20
+ isAsync: undefined,
21
+ });
19
22
  return asyncBuilder;
20
23
  }
21
24
  return (options) => ({
@@ -733,10 +736,10 @@ export function schema(fields, objectChain) {
733
736
  reporterError = nativeReporter?.createError;
734
737
  return native;
735
738
  }
736
- // This schema would have used the native engine, but it isn't loaded —
737
- // surface the platform-dependent TS fallback once instead of diverging
738
- // silently.
739
- warnNativeUnavailableOnce();
739
+ // This schema carries nothing the engine cannot run, so the engine is
740
+ // what must run it. Falling back to the TypeScript validator here made
741
+ // the verdict depend on whether a binary loaded.
742
+ assertNativeAvailable();
740
743
  }
741
744
  const errors = [];
742
745
  const validated = {};
@@ -1020,8 +1023,11 @@ export class RuleChain {
1020
1023
  #camelCaseKeys = false;
1021
1024
  #groups = [];
1022
1025
  #recordValueChain = null;
1026
+ #enumChoices = null;
1027
+ #recordKeysCheck = null;
1023
1028
  #tupleChains = null;
1024
1029
  #unionChains = null;
1030
+ #unionNoMatch = null;
1025
1031
  #useRules = [];
1026
1032
  #asyncRules = [];
1027
1033
  /** Last rule added, whichever register it landed in — the `message()` target. */
@@ -1136,8 +1142,11 @@ export class RuleChain {
1136
1142
  next.#camelCaseKeys = this.#camelCaseKeys;
1137
1143
  next.#groups = [...this.#groups];
1138
1144
  next.#recordValueChain = this.#recordValueChain;
1145
+ next.#enumChoices = this.#enumChoices;
1146
+ next.#recordKeysCheck = this.#recordKeysCheck;
1139
1147
  next.#tupleChains = this.#tupleChains;
1140
1148
  next.#unionChains = this.#unionChains;
1149
+ next.#unionNoMatch = this.#unionNoMatch;
1141
1150
  next.#ruleMessages = new Map(this.#ruleMessages);
1142
1151
  next.#lastRule = this.#lastRule;
1143
1152
  next.#preTransforms = [...this.#preTransforms];
@@ -1485,6 +1494,17 @@ export class RuleChain {
1485
1494
  this.#recordValueChain = valueChain;
1486
1495
  return this.#retype();
1487
1496
  }
1497
+ /**
1498
+ * Check the record's KEYS, not its values (VineJS `record().validateKeys()`).
1499
+ *
1500
+ * The callback receives every key at once and reports through the field
1501
+ * context — the set is what matters when keys must be exclusive, exhaustive,
1502
+ * or drawn from a list only known at runtime.
1503
+ */
1504
+ validateKeys(callback) {
1505
+ this.#recordKeysCheck = callback;
1506
+ return this;
1507
+ }
1488
1508
  /**
1489
1509
  * Fixed-length array with a schema per position (VineJS `tuple`). Extra
1490
1510
  * items are rejected — a tuple that silently ignores a trailing element is
@@ -1512,6 +1532,19 @@ export class RuleChain {
1512
1532
  * - bare chains: tried in order, first match wins, and a total miss reports a
1513
1533
  * single `union` error rather than every losing branch's noise.
1514
1534
  */
1535
+ /**
1536
+ * What to do when NO union branch matched (VineJS `union().otherwise()`).
1537
+ *
1538
+ * The callback receives the value and the field, and reports the error it
1539
+ * wants — the point being that "matches nothing" is a useless message when
1540
+ * the caller knows which shapes were on offer. Reporting nothing from the
1541
+ * callback suppresses the generic error entirely, which is how a union
1542
+ * folded into a larger check stays quiet.
1543
+ */
1544
+ otherwise(callback) {
1545
+ this.#unionNoMatch = callback;
1546
+ return this;
1547
+ }
1515
1548
  union(chains) {
1516
1549
  this.#unionChains = chains.map(toUnionBranch);
1517
1550
  // Marker rule: its name is not in NATIVE_RULES, which is what keeps a
@@ -1715,17 +1748,38 @@ export class RuleChain {
1715
1748
  });
1716
1749
  return this;
1717
1750
  }
1718
- /** Must equal one of `values` (enum). Narrows the output to the union. */
1751
+ /**
1752
+ * Must equal one of `values` (enum). Narrows the output to the union.
1753
+ *
1754
+ * `values` may be a callback receiving the field, which is how a list that
1755
+ * depends on the request — the roles this tenant allows, the statuses this
1756
+ * user may set — is computed per validation instead of frozen at import.
1757
+ */
1719
1758
  enum(values) {
1720
- const allowed = [...values];
1759
+ const lazy = typeof values === "function";
1760
+ const resolve = allowedValuesResolver(values);
1761
+ this.#enumChoices = lazy ? values : [...values];
1721
1762
  this.#pushRule({
1722
1763
  name: "enum",
1723
- args: { values: allowed },
1724
- validate: (v) => allowed.includes(asPrimitive(v)),
1764
+ args: lazy ? {} : { values: [...values] },
1765
+ // A computed list is per-call; the native engine only ever sees a
1766
+ // static array, so it must not run this rule.
1767
+ tsOnly: lazy,
1768
+ validate: (v, field) => resolve(field).includes(asPrimitive(v)),
1725
1769
  message: "Invalid value",
1726
1770
  });
1727
1771
  return this.#retype();
1728
1772
  }
1773
+ /**
1774
+ * The choices this enum was declared with (VineJS `getChoices()`) — the list
1775
+ * itself, or the callback when it is computed per request.
1776
+ *
1777
+ * Reading them back is what lets a form render the same options the
1778
+ * validator will accept, from one declaration instead of two.
1779
+ */
1780
+ getChoices() {
1781
+ return this.#enumChoices ?? undefined;
1782
+ }
1729
1783
  /** Must equal a literal value. */
1730
1784
  literal(value) {
1731
1785
  this.#pushRule({
@@ -1918,8 +1972,13 @@ export class RuleChain {
1918
1972
  return this.#stringRule("coordinates", isCoordinates, "Must be valid coordinates");
1919
1973
  }
1920
1974
  /**
1921
- * Must be a mobile number in E.164 form. Named deviation from VineJS: rune
1922
- * carries no per-locale numbering plans, so there is no `locale` option.
1975
+ * Must be a mobile number (VineJS/Adonis `mobile()`).
1976
+ *
1977
+ * With no `locale`, the number must be in E.164 form. With one or more,
1978
+ * it must match one of their numbering plans, as in VineJS. rune carries
1979
+ * its own plans rather than validator.js', so it knows fewer locales — an
1980
+ * unknown one raises `UNSUPPORTED_LOCALE` at schema build, naming the ones
1981
+ * it does know, rather than silently accepting anything at request time.
1923
1982
  */
1924
1983
  mobile(options) {
1925
1984
  const locales = options?.locale ? [options.locale].flat() : null;
@@ -2226,7 +2285,7 @@ export class RuleChain {
2226
2285
  // A callback list is computed per call — the native engine only ever
2227
2286
  // sees a static array, so it must not run this rule.
2228
2287
  tsOnly: typeof values === "function",
2229
- validate: (v) => resolve().includes(asPrimitive(v)),
2288
+ validate: (v, field) => resolve(field).includes(asPrimitive(v)),
2230
2289
  message: "Invalid value",
2231
2290
  });
2232
2291
  return this;
@@ -2238,7 +2297,7 @@ export class RuleChain {
2238
2297
  name: "notIn",
2239
2298
  args: typeof values === "function" ? {} : { values: [...values] },
2240
2299
  tsOnly: typeof values === "function",
2241
- validate: (v) => !resolve().includes(asPrimitive(v)),
2300
+ validate: (v, field) => !resolve(field).includes(asPrimitive(v)),
2242
2301
  message: "Invalid value",
2243
2302
  });
2244
2303
  return this;
@@ -2690,6 +2749,11 @@ export class RuleChain {
2690
2749
  }
2691
2750
  }
2692
2751
  // 4b. Record values — same shape as the nested-object walk, arbitrary keys.
2752
+ if (this.#recordKeysCheck && isPlainObject(transformed)) {
2753
+ // Keys first: a key-level rule that rejects the shape makes the
2754
+ // per-value errors that would follow noise.
2755
+ this.#recordKeysCheck(Object.keys(transformed), this.#makeFieldContext(field, transformed, ctx, errors, () => { }));
2756
+ }
2693
2757
  if (this.#recordValueChain && isPlainObject(transformed)) {
2694
2758
  const obj = { ...transformed };
2695
2759
  transformed = obj;
@@ -2747,15 +2811,24 @@ export class RuleChain {
2747
2811
  }
2748
2812
  }
2749
2813
  if (!matched) {
2750
- errors.push({
2751
- field,
2752
- rule: "union",
2753
- message: resolveRuleMessage(field, {
2754
- name: "union",
2755
- validate: () => false,
2756
- message: "Does not match any allowed shape",
2757
- }, ctx),
2758
- });
2814
+ if (this.#unionNoMatch) {
2815
+ // The callback owns the reporting: whatever it pushes is the
2816
+ // error, and pushing nothing means it handled the case itself.
2817
+ const reported = [];
2818
+ this.#unionNoMatch(transformed, this.#makeFieldContext(field, transformed, ctx, reported, () => { }));
2819
+ errors.push(...reported);
2820
+ }
2821
+ else {
2822
+ errors.push({
2823
+ field,
2824
+ rule: "union",
2825
+ message: resolveRuleMessage(field, {
2826
+ name: "union",
2827
+ validate: () => false,
2828
+ message: "Does not match any allowed shape",
2829
+ }, ctx),
2830
+ });
2831
+ }
2759
2832
  }
2760
2833
  }
2761
2834
  // 5. Array item validation
@@ -2844,8 +2917,11 @@ export class RuleChain {
2844
2917
  }
2845
2918
  /** Run the type rules (string/number/…) on the raw value; first failure bails. */
2846
2919
  #runTypeRules(field, value, ctx) {
2920
+ let context;
2921
+ const fieldContext = () => (context ??= this.#makeFieldContext(field, value, ctx, [], () => { }));
2847
2922
  for (const rule of this.#rules) {
2848
- if (TYPE_RULE_NAMES.has(rule.name) && !rule.validate(value)) {
2923
+ if (TYPE_RULE_NAMES.has(rule.name) &&
2924
+ !rule.validate(value, fieldContext())) {
2849
2925
  return {
2850
2926
  field,
2851
2927
  rule: rule.name,
@@ -2859,12 +2935,16 @@ export class RuleChain {
2859
2935
  /** Run the non-type rules (min/max/email/…) on the transformed value. */
2860
2936
  #runValueRules(field, transformed, ctx) {
2861
2937
  const errors = [];
2938
+ // Built once and only if a rule actually reads it: most rules take the
2939
+ // value alone, and a context per rule per field is pure waste.
2940
+ let context;
2941
+ const fieldContext = () => (context ??= this.#makeFieldContext(field, transformed, ctx, [], () => { }));
2862
2942
  for (const rule of this.#rules) {
2863
2943
  if (TYPE_RULE_NAMES.has(rule.name))
2864
2944
  continue;
2865
2945
  if (this.#bail && errors.length > 0)
2866
2946
  break;
2867
- if (!rule.validate(transformed)) {
2947
+ if (!rule.validate(transformed, fieldContext())) {
2868
2948
  errors.push({
2869
2949
  field,
2870
2950
  rule: rule.name,
@@ -3068,7 +3148,7 @@ export const rules = {
3068
3148
  }
3069
3149
  return new RuleChain().union(chains.map((chain) => {
3070
3150
  const typeRule = chain.rules.find((rule) => TYPE_RULE_NAMES.has(rule.name));
3071
- return unionIf((value) => typeRule?.validate(value) === true, chain);
3151
+ return unionIf((value, field) => typeRule?.validate(value, field) === true, chain);
3072
3152
  }));
3073
3153
  },
3074
3154
  object: (shape) => new RuleChain().object(shape),