@c9up/rune 0.1.12 → 0.1.14

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/formats.js CHANGED
@@ -26,8 +26,9 @@ function isIpV6(v) {
26
26
  if (halves.length > 2)
27
27
  return false;
28
28
  const expand = (part) => part === "" ? [] : part.split(":");
29
- const head = expand(halves[0]);
30
- const tail = halves.length === 2 ? expand(halves[1]) : [];
29
+ const [headPart = "", tailPart] = halves;
30
+ const head = expand(headPart);
31
+ const tail = tailPart === undefined ? [] : expand(tailPart);
31
32
  const groups = [...head, ...tail];
32
33
  // A trailing IPv4 literal occupies two groups.
33
34
  const last = groups.at(-1);
@@ -87,8 +88,11 @@ export function isCoordinates(v) {
87
88
  const parts = v.split(",");
88
89
  if (parts.length !== 2)
89
90
  return false;
90
- const lat = Number(parts[0].trim());
91
- const lng = Number(parts[1].trim());
91
+ const [latRaw, lngRaw] = parts;
92
+ if (latRaw === undefined || lngRaw === undefined)
93
+ return false;
94
+ const lat = Number(latRaw.trim());
95
+ const lng = Number(lngRaw.trim());
92
96
  if (!Number.isFinite(lat) || !Number.isFinite(lng))
93
97
  return false;
94
98
  return lat >= -90 && lat <= 90 && lng >= -180 && lng <= 180;
@@ -186,12 +190,12 @@ export function normalizeEmail(value, options = {}) {
186
190
  local = local.toLowerCase();
187
191
  if (GMAIL_DOMAINS.has(domain)) {
188
192
  if (removeSubaddress)
189
- local = local.split("+")[0];
193
+ local = local.split("+")[0] ?? local;
190
194
  if (removeDots)
191
195
  local = local.replace(/\./g, "");
192
196
  }
193
197
  else if (removeSubaddress) {
194
- local = local.split("+")[0];
198
+ local = local.split("+")[0] ?? local;
195
199
  }
196
200
  return `${local}@${domain}`;
197
201
  }
@@ -518,7 +522,7 @@ export function isEmail(value, options = {}) {
518
522
  if (labels.length < 2)
519
523
  return false;
520
524
  // A TLD is alphabetic and at least two characters.
521
- const tld = labels[labels.length - 1];
525
+ const tld = labels.at(-1) ?? "";
522
526
  if (tld.length < 2 || !/^[a-zA-Z]+$/.test(tld))
523
527
  return false;
524
528
  }
@@ -528,7 +532,7 @@ export function isEmail(value, options = {}) {
528
532
  GMAIL_DOMAINS.has(domain.toLowerCase())) {
529
533
  // Gmail: 6..30 chars, letters/digits/dots only, no leading/trailing dot,
530
534
  // no doubled dot — and dots are ignored for the length check.
531
- const username = local.split("+")[0];
535
+ const username = local.split("+")[0] ?? local;
532
536
  if (!/^[a-zA-Z0-9.]+$/.test(username))
533
537
  return false;
534
538
  if (username.startsWith(".") || username.endsWith("."))
@@ -646,8 +650,8 @@ function luhnLike(digits) {
646
650
  function swissUidChecksum(digits) {
647
651
  const weights = [5, 4, 3, 2, 7, 6, 5, 4];
648
652
  let sum = 0;
649
- for (let i = 0; i < 8; i++) {
650
- sum += (digits.charCodeAt(i) - 48) * weights[i];
653
+ for (const [i, weight] of weights.entries()) {
654
+ sum += (digits.charCodeAt(i) - 48) * weight;
651
655
  }
652
656
  const remainder = sum % 11;
653
657
  if (remainder === 10)
@@ -1 +1 @@
1
- {"version":3,"file":"formats.js","sourceRoot":"","sources":["../src/formats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formats.js","sourceRoot":"","sources":["../src/formats.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/native.d.ts CHANGED
@@ -18,7 +18,7 @@ export declare function validateNative(requestJson: string): {
18
18
  export declare function isNativeAvailable(): boolean;
19
19
  /** Raised when a schema needs the Rust engine and it is not there. */
20
20
  export declare class RuneNativeRequiredError extends Error {
21
- readonly code: "RUNE_NAPI_REQUIRED";
21
+ readonly code: "E_RUNE_NAPI_REQUIRED";
22
22
  constructor();
23
23
  }
24
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuCH;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG;IACpD,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAaA;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAaD,sEAAsE;AACtE,qBAAa,uBAAwB,SAAQ,KAAK;IACjD,QAAQ,CAAC,IAAI,EAAG,oBAAoB,CAAU;;CAQ9C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
1
+ {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuCH;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG;IACpD,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAaA;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAaD,sEAAsE;AACtE,qBAAa,uBAAwB,SAAQ,KAAK;IACjD,QAAQ,CAAC,IAAI,EAAG,sBAAsB,CAAU;;CAQhD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
package/dist/native.js CHANGED
@@ -32,11 +32,11 @@ catch (e) {
32
32
  */
33
33
  export function validateNative(requestJson) {
34
34
  if (!native) {
35
- throw new Error(`[RUNE_NAPI_NOT_FOUND] Rust validation engine not available: ${loadError ?? "binary not found"}`);
35
+ throw new Error(`[E_RUNE_NAPI_NOT_FOUND] Rust validation engine not available: ${loadError ?? "binary not found"}`);
36
36
  }
37
37
  const result = JSON.parse(native.validate(requestJson));
38
38
  if (typeof result.valid !== "boolean" || !Array.isArray(result.errors)) {
39
- throw new Error(`[RUNE_NAPI_INVALID_RESPONSE] Rust engine returned unexpected shape: ${JSON.stringify(result)}`);
39
+ throw new Error(`[E_RUNE_NAPI_INVALID_RESPONSE] Rust engine returned unexpected shape: ${JSON.stringify(result)}`);
40
40
  }
41
41
  return result;
42
42
  }
@@ -55,9 +55,9 @@ function unavailableReason() {
55
55
  }
56
56
  /** Raised when a schema needs the Rust engine and it is not there. */
57
57
  export class RuneNativeRequiredError extends Error {
58
- code = "RUNE_NAPI_REQUIRED";
58
+ code = "E_RUNE_NAPI_REQUIRED";
59
59
  constructor() {
60
- super(`[RUNE_NAPI_REQUIRED] The Rust validation engine is required but not loaded — ${unavailableReason()}.\n` +
60
+ super(`[E_RUNE_NAPI_REQUIRED] The Rust validation engine is required but not loaded — ${unavailableReason()}.\n` +
61
61
  "Install the prebuilt binary for this platform, or build it with `pnpm build:napi`.");
62
62
  this.name = "RuneNativeRequiredError";
63
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"native.js","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE3D,MAAM,WAAW,GAA2B;IAC3C,WAAW,EAAE,eAAe;IAC5B,aAAa,EAAE,iBAAiB;IAChC,YAAY,EAAE,YAAY;IAC1B,cAAc,EAAE,cAAc;IAC9B,WAAW,EAAE,gBAAgB;CAC7B,CAAC;AAWF,IAAI,MAA8B,CAAC;AACnC,IAAI,SAAkB,CAAC;AAEvB,IAAI,CAAC;IACJ,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC,CAAC;IAClD,IAAI,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,MAAM,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;AACF,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACZ,SAAS,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB;IAKjD,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACd,+DAA+D,SAAS,IAAI,kBAAkB,EAAE,CAChG,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACxD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CACd,uEAAuE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAC/F,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iBAAiB;IAChC,OAAO,MAAM,KAAK,SAAS,CAAC;AAC7B,CAAC;AAED,6EAA6E;AAC7E,SAAS,iBAAiB;IACzB,MAAM,MAAM,GAAG,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC;IACrC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,mBAAmB,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;IACjG,CAAC;IACD,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,SAAS;QACvC,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,0BAA0B,MAAM,EAAE,CAAC;AACvC,CAAC;AAED,sEAAsE;AACtE,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IACxC,IAAI,GAAG,oBAA6B,CAAC;IAC9C;QACC,KAAK,CACJ,gFAAgF,iBAAiB,EAAE,KAAK;YACvG,oFAAoF,CACrF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACvC,CAAC;CACD;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,qBAAqB;IACpC,IAAI,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,uBAAuB,EAAE,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"native.js","sourceRoot":"","sources":["../src/native.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE3D,MAAM,WAAW,GAA2B;IAC3C,WAAW,EAAE,eAAe;IAC5B,aAAa,EAAE,iBAAiB;IAChC,YAAY,EAAE,YAAY;IAC1B,cAAc,EAAE,cAAc;IAC9B,WAAW,EAAE,gBAAgB;CAC7B,CAAC;AAWF,IAAI,MAA8B,CAAC;AACnC,IAAI,SAAkB,CAAC;AAEvB,IAAI,CAAC;IACJ,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC,CAAC;IAClD,IAAI,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,MAAM,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;AACF,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACZ,SAAS,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB;IAKjD,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACd,iEAAiE,SAAS,IAAI,kBAAkB,EAAE,CAClG,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACxD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CACd,yEAAyE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CACjG,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iBAAiB;IAChC,OAAO,MAAM,KAAK,SAAS,CAAC;AAC7B,CAAC;AAED,6EAA6E;AAC7E,SAAS,iBAAiB;IACzB,MAAM,MAAM,GAAG,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC;IACrC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,mBAAmB,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;IACjG,CAAC;IACD,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,SAAS;QACvC,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,0BAA0B,MAAM,EAAE,CAAC;AACvC,CAAC;AAED,sEAAsE;AACtE,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IACxC,IAAI,GAAG,sBAA+B,CAAC;IAChD;QACC,KAAK,CACJ,kFAAkF,iBAAiB,EAAE,KAAK;YACzG,oFAAoF,CACrF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACvC,CAAC;CACD;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,qBAAqB;IACpC,IAAI,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,uBAAuB,EAAE,CAAC;AAC/D,CAAC"}
Binary file
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@c9up/rune",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "description": "Rune — Validation engine for the Ream framework",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -7,9 +7,12 @@
7
7
  * cargo a `/tmp/...` path the native proc-macro cannot write to, so the
8
8
  * type-def file comes back empty and the build fails for no visible reason.
9
9
  *
10
- * One crate at a time on purpose: napi-derive APPENDS to `TYPE_DEF_TMP_PATH`
11
- * while cargo compiles, and a parallel build interleaves the writes
12
- * definitions go missing, silently, and the generated file comes out short.
10
+ * One crate at a time on purpose: with napi-derive 2 the writes all went to a
11
+ * single `TYPE_DEF_TMP_PATH` and a parallel build interleaved them
12
+ * definitions went missing, silently, and the generated file came out short.
13
+ * napi-derive 3 writes one file per crate into `NAPI_TYPE_DEF_TMP_FOLDER`
14
+ * instead, so the collision is gone; the loop stays because it also gives a
15
+ * per-crate error when a crate emits nothing.
13
16
  */
14
17
 
15
18
  import { execFileSync } from 'node:child_process'
@@ -28,11 +31,14 @@ const scratch = mkdtempSync(join(tmpdir(), 'napi-types-'))
28
31
  try {
29
32
  const lines = []
30
33
  for (const crate of CRATES) {
31
- const perCrate = join(scratch, `${crate}.jsonl`)
34
+ // napi-derive 3 names the file after CARGO_PKG_NAME inside the folder, and
35
+ // panics outright if it sees the old `TYPE_DEF_TMP_PATH` — that variable is
36
+ // how it detects an out-of-date toolchain.
37
+ const perCrate = join(scratch, crate)
32
38
  writeFileSync(perCrate, '')
33
39
  execFileSync('cargo', ['build', '-p', crate], {
34
40
  cwd: packageRoot,
35
- env: { ...process.env, TYPE_DEF_TMP_PATH: perCrate },
41
+ env: { ...process.env, NAPI_TYPE_DEF_TMP_FOLDER: scratch },
36
42
  stdio: ['ignore', 'ignore', 'inherit'],
37
43
  })
38
44
  const emitted = readFileSync(perCrate, 'utf8').split('\n').filter(Boolean)
@@ -128,14 +128,17 @@ for (const struct of structs) {
128
128
  for (const fn of fns) {
129
129
  out.push(docBlock(fn.js_doc))
130
130
  // napi-derive emits the whole declaration for a function, unlike a struct
131
- // where `def` holds only the members.
131
+ // where `def` holds only the members — and it has emitted it three ways:
132
+ // fully qualified, bare `function name(...)` (napi-derive 3), and just the
133
+ // signature after the name (napi-derive 2). Concatenating the name onto the
134
+ // napi 3 shape produced `function validatefunction validate(...)`.
132
135
  const declaration = fn.def.trim()
133
- out.push(
134
- declaration.startsWith('export declare function')
135
- ? `${declaration};`
136
- : `export declare function ${fn.name}${declaration};`,
137
- '',
138
- )
136
+ const rendered = declaration.startsWith('export declare function')
137
+ ? declaration
138
+ : declaration.startsWith('function ')
139
+ ? `export declare ${declaration}`
140
+ : `export declare function ${fn.name}${declaration}`
141
+ out.push(`${rendered};`, '')
139
142
  }
140
143
 
141
144
  const stale = Object.keys(CALLBACK_REFINEMENTS).filter((k) => !used.has(k))
package/src/Schema.ts CHANGED
@@ -552,6 +552,37 @@ export function setGlobalErrorReporter(
552
552
  globalErrorReporter = reporter;
553
553
  }
554
554
 
555
+ /**
556
+ * Copy an object's own keys, minus `__proto__`.
557
+ *
558
+ * Only the paths that keep keys the schema never declared need this —
559
+ * `allowUnknownProperties()` and `record()`, whose keys are data. `JSON.parse`
560
+ * is happy to produce a real own `__proto__` key, and while spreading it here
561
+ * leaves rune's own object alone, it hands the consumer a payload that poisons
562
+ * whatever it is assigned to: `Object.assign(model, validated)` writes through
563
+ * the inherited setter and replaces the target's prototype. Dropping undeclared
564
+ * keys is what makes a validated payload safe to hand to a mass assignment, so
565
+ * this is that same rule applied to the one key name that is never data.
566
+ *
567
+ * NAMED DEVIATION (hardening): VineJS keeps it — its compiler emits a
568
+ * `for…in` copy that assigns straight into the output, which replaces that
569
+ * output's prototype outright. Parity here would mean shipping the bug.
570
+ *
571
+ * `constructor` and `prototype` are left alone deliberately: they are only
572
+ * reachable through a recursive third-party merge, and unlike `__proto__` they
573
+ * are plausible dictionary keys that a `record()` has every right to carry.
574
+ */
575
+ function copyWithoutProtoKey(
576
+ source: Record<string, unknown>,
577
+ ): Record<string, unknown> {
578
+ const out: Record<string, unknown> = {};
579
+ for (const key of Object.keys(source)) {
580
+ if (key === "__proto__") continue;
581
+ out[key] = source[key];
582
+ }
583
+ return out;
584
+ }
585
+
555
586
  /** Read the process-wide error reporter. */
556
587
  export function getGlobalErrorReporter():
557
588
  | ErrorReporterFactory
@@ -767,7 +798,15 @@ export function parseByteSize(size: number | string): number {
767
798
  hint: 'Use a byte count, or "2mb" / "512kb" / "1gb".',
768
799
  });
769
800
  }
770
- return Math.round(Number(match[1]) * BYTE_UNITS[match[2].toLowerCase()]);
801
+ const [, amount, unit] = match;
802
+ const multiplier =
803
+ unit === undefined ? undefined : BYTE_UNITS[unit.toLowerCase()];
804
+ if (amount === undefined || multiplier === undefined) {
805
+ throw new RuneError("INVALID_SIZE", `file(): cannot read size '${size}'.`, {
806
+ hint: 'Use a byte count, or "2mb" / "512kb" / "1gb".',
807
+ });
808
+ }
809
+ return Math.round(Number(amount) * multiplier);
771
810
  }
772
811
 
773
812
  /**
@@ -1925,6 +1964,15 @@ export class RuleChain<Output = unknown> {
1925
1964
  for (const chain of [
1926
1965
  ...(this.#tupleChains ?? []),
1927
1966
  ...(this.#unionChains ?? []).map((b) => b.chain),
1967
+ // A conditional group's branches are merged into the shape at
1968
+ // validation time exactly like the nested schema above, so a rule
1969
+ // declared in one is as real as any other. Leaving them out here left
1970
+ // the sync path seeing a schema with nothing to await: it did not
1971
+ // refuse, and the rule never ran — a `unique`/`exists`/`verifyContent`
1972
+ // inside a `group.if(...)` silently checked nothing.
1973
+ ...this.#groups.flatMap((group) =>
1974
+ group.branches.flatMap((branch) => Object.values(branch.shape)),
1975
+ ),
1928
1976
  ]) {
1929
1977
  if (chain.hasAsyncRulesDeep) return true;
1930
1978
  }
@@ -4008,7 +4056,7 @@ export class RuleChain<Output = unknown> {
4008
4056
  // is the opt-in, as in VineJS.
4009
4057
  const source: Record<string, unknown> = transformed;
4010
4058
  const obj: Record<string, unknown> = this.#allowUnknown
4011
- ? { ...source }
4059
+ ? copyWithoutProtoKey(source)
4012
4060
  : {};
4013
4061
  transformed = obj;
4014
4062
  // A conditional group contributes its branch's properties for THIS
@@ -4072,7 +4120,7 @@ export class RuleChain<Output = unknown> {
4072
4120
  );
4073
4121
  }
4074
4122
  if (this.#recordValueChain && isPlainObject(transformed)) {
4075
- const obj: Record<string, unknown> = { ...transformed };
4123
+ const obj: Record<string, unknown> = copyWithoutProtoKey(transformed);
4076
4124
  transformed = obj;
4077
4125
  for (const key of Object.keys(obj)) {
4078
4126
  const res = this.#recordValueChain._validateWithTransform(
package/src/date.ts CHANGED
@@ -149,7 +149,7 @@ export function parseWithFormat(value: string, format: string): Date | null {
149
149
  pattern += token[1];
150
150
  i += token[0].length;
151
151
  } else {
152
- pattern += format[i].replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
152
+ pattern += (format[i] ?? "").replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
153
153
  i += 1;
154
154
  }
155
155
  }
@@ -162,6 +162,9 @@ export function parseWithFormat(value: string, format: string): Date | null {
162
162
  let offset: string | undefined;
163
163
  order.forEach((t, idx) => {
164
164
  const raw = m[idx + 1];
165
+ // Every token in `order` contributed a capture group to the pattern that
166
+ // just matched, so each one has a value.
167
+ if (raw === undefined) return;
165
168
  if (t === "A" || t === "a") {
166
169
  meridiem = raw.toLowerCase() as "am" | "pm";
167
170
  return;
package/src/errors.ts CHANGED
@@ -8,7 +8,13 @@ export class RuneError extends Error {
8
8
  constructor(code: string, message: string, options?: { hint?: string }) {
9
9
  super(message);
10
10
  this.name = "RuneError";
11
- this.code = `RUNE_${code}`;
11
+ // One namespace, one prefix. `E_` is what every framework code carries,
12
+ // and the package name after it says which package raised it — without
13
+ // it, `E_FORBIDDEN` would mean three different things across the
14
+ // ecosystem and an application could not tell them apart. A code that
15
+ // already starts with `E_` is passed through untouched: that is how the
16
+ // AdonisJS identifiers keep the exact spelling a consumer branches on.
17
+ this.code = code.startsWith("E_") ? code : `E_RUNE_${code}`;
12
18
  this.hint = options?.hint;
13
19
  }
14
20
  }
package/src/formats.ts CHANGED
@@ -30,8 +30,9 @@ function isIpV6(v: string): boolean {
30
30
  if (halves.length > 2) return false;
31
31
  const expand = (part: string): string[] =>
32
32
  part === "" ? [] : part.split(":");
33
- const head = expand(halves[0]);
34
- const tail = halves.length === 2 ? expand(halves[1]) : [];
33
+ const [headPart = "", tailPart] = halves;
34
+ const head = expand(headPart);
35
+ const tail = tailPart === undefined ? [] : expand(tailPart);
35
36
  const groups = [...head, ...tail];
36
37
  // A trailing IPv4 literal occupies two groups.
37
38
  const last = groups.at(-1);
@@ -87,8 +88,10 @@ export function isIban(v: string): boolean {
87
88
  export function isCoordinates(v: string): boolean {
88
89
  const parts = v.split(",");
89
90
  if (parts.length !== 2) return false;
90
- const lat = Number(parts[0].trim());
91
- const lng = Number(parts[1].trim());
91
+ const [latRaw, lngRaw] = parts;
92
+ if (latRaw === undefined || lngRaw === undefined) return false;
93
+ const lat = Number(latRaw.trim());
94
+ const lng = Number(lngRaw.trim());
92
95
  if (!Number.isFinite(lat) || !Number.isFinite(lng)) return false;
93
96
  return lat >= -90 && lat <= 90 && lng >= -180 && lng <= 180;
94
97
  }
@@ -210,10 +213,10 @@ export function normalizeEmail(
210
213
  const removeDots = options.gmail_remove_dots ?? options.gmailRemoveDots;
211
214
  if (allLowercase !== false) local = local.toLowerCase();
212
215
  if (GMAIL_DOMAINS.has(domain)) {
213
- if (removeSubaddress) local = local.split("+")[0];
216
+ if (removeSubaddress) local = local.split("+")[0] ?? local;
214
217
  if (removeDots) local = local.replace(/\./g, "");
215
218
  } else if (removeSubaddress) {
216
- local = local.split("+")[0];
219
+ local = local.split("+")[0] ?? local;
217
220
  }
218
221
  return `${local}@${domain}`;
219
222
  }
@@ -615,7 +618,7 @@ export function isEmail(value: string, options: EmailOptions = {}): boolean {
615
618
  if (options.require_tld !== false) {
616
619
  if (labels.length < 2) return false;
617
620
  // A TLD is alphabetic and at least two characters.
618
- const tld = labels[labels.length - 1];
621
+ const tld = labels.at(-1) ?? "";
619
622
  if (tld.length < 2 || !/^[a-zA-Z]+$/.test(tld)) return false;
620
623
  }
621
624
  if (!labels.every(isDnsLabel)) return false;
@@ -626,7 +629,7 @@ export function isEmail(value: string, options: EmailOptions = {}): boolean {
626
629
  ) {
627
630
  // Gmail: 6..30 chars, letters/digits/dots only, no leading/trailing dot,
628
631
  // no doubled dot — and dots are ignored for the length check.
629
- const username = local.split("+")[0];
632
+ const username = local.split("+")[0] ?? local;
630
633
  if (!/^[a-zA-Z0-9.]+$/.test(username)) return false;
631
634
  if (username.startsWith(".") || username.endsWith(".")) return false;
632
635
  if (username.includes("..")) return false;
@@ -755,8 +758,8 @@ function luhnLike(digits: string): boolean {
755
758
  function swissUidChecksum(digits: string): boolean {
756
759
  const weights = [5, 4, 3, 2, 7, 6, 5, 4];
757
760
  let sum = 0;
758
- for (let i = 0; i < 8; i++) {
759
- sum += (digits.charCodeAt(i) - 48) * weights[i];
761
+ for (const [i, weight] of weights.entries()) {
762
+ sum += (digits.charCodeAt(i) - 48) * weight;
760
763
  }
761
764
  const remainder = sum % 11;
762
765
  if (remainder === 10) return false;
package/src/native.ts CHANGED
@@ -51,13 +51,13 @@ export function validateNative(requestJson: string): {
51
51
  } {
52
52
  if (!native) {
53
53
  throw new Error(
54
- `[RUNE_NAPI_NOT_FOUND] Rust validation engine not available: ${loadError ?? "binary not found"}`,
54
+ `[E_RUNE_NAPI_NOT_FOUND] Rust validation engine not available: ${loadError ?? "binary not found"}`,
55
55
  );
56
56
  }
57
57
  const result = JSON.parse(native.validate(requestJson));
58
58
  if (typeof result.valid !== "boolean" || !Array.isArray(result.errors)) {
59
59
  throw new Error(
60
- `[RUNE_NAPI_INVALID_RESPONSE] Rust engine returned unexpected shape: ${JSON.stringify(result)}`,
60
+ `[E_RUNE_NAPI_INVALID_RESPONSE] Rust engine returned unexpected shape: ${JSON.stringify(result)}`,
61
61
  );
62
62
  }
63
63
  return result;
@@ -80,10 +80,10 @@ function unavailableReason(): string {
80
80
 
81
81
  /** Raised when a schema needs the Rust engine and it is not there. */
82
82
  export class RuneNativeRequiredError extends Error {
83
- readonly code = "RUNE_NAPI_REQUIRED" as const;
83
+ readonly code = "E_RUNE_NAPI_REQUIRED" as const;
84
84
  constructor() {
85
85
  super(
86
- `[RUNE_NAPI_REQUIRED] The Rust validation engine is required but not loaded — ${unavailableReason()}.\n` +
86
+ `[E_RUNE_NAPI_REQUIRED] The Rust validation engine is required but not loaded — ${unavailableReason()}.\n` +
87
87
  "Install the prebuilt binary for this platform, or build it with `pnpm build:napi`.",
88
88
  );
89
89
  this.name = "RuneNativeRequiredError";