schematch 0.1.0 → 0.2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/standard-schema/validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAE,8BAA8B,EAAC,MAAM,YAAY,CAAA;AAElF,MAAM,UAAU,oBAAoB,CAAC,MAAe;IAClD,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAA;IACtF,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAc,EAA6B,EAAE;IACzE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU,CAAC,IAAI,MAAM,IAAI,KAAK,CAAA;AACjG,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,MAAyC,EACzC,KAAc,EACmB,EAAE;IACnC,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAClD,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAA;IACrG,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,MAAyC,EACzC,KAAc,EAC4B,EAAE;IAC5C,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAClD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,MAAuC,EACW,EAAE;IACpD,OAAO,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAA;AAChD,CAAC,CAAA"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/standard-schema/validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAE,8BAA8B,EAAC,MAAM,YAAY,CAAA;AAElF,MAAM,UAAU,oBAAoB,CAAC,MAAe;IAClD,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAA;IACtF,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAc,EAA6B,EAAE;IACzE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,UAAU,CAAC,IAAI,MAAM,IAAI,KAAK,CAAA;AACjG,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,MAAyC,EACzC,KAAc,EACmB,EAAE;IACnC,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAClD,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;IAC1F,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,MAAyC,EACzC,KAAc,EAC4B,EAAE;IAC5C,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAClD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,MAAuC,EACW,EAAE;IACpD,OAAO,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAA;AAChD,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "schematch",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Schema-first pattern matching for TypeScript — use zod, valibot, arktype, or any Standard Schema validator as match/case clauses",
5
5
  "type": "module",
6
6
  "exports": {
@@ -13,6 +13,13 @@
13
13
  "dist"
14
14
  ],
15
15
  "sideEffects": false,
16
+ "scripts": {
17
+ "build": "rm -rf dist && tsc -p tsconfig.build.json",
18
+ "prepare": "pnpm build",
19
+ "attw": "attw --pack . --ignore-rules cjs-resolves-to-esm no-resolution",
20
+ "test": "vitest run --typecheck",
21
+ "test:watch": "vitest --typecheck"
22
+ },
16
23
  "keywords": [
17
24
  "pattern-matching",
18
25
  "match",
@@ -37,6 +44,7 @@
37
44
  "bugs": {
38
45
  "url": "https://github.com/mmkal/schematch/issues"
39
46
  },
47
+ "packageManager": "pnpm@10.28.1",
40
48
  "devDependencies": {
41
49
  "@arethetypeswrong/cli": "0.18.2",
42
50
  "@types/node": "25.2.2",
@@ -47,11 +55,5 @@
47
55
  "valibot": "1.2.0",
48
56
  "vitest": "4.0.18",
49
57
  "zod": "4.3.6"
50
- },
51
- "scripts": {
52
- "build": "rm -rf dist && tsc -p tsconfig.build.json",
53
- "attw": "attw --pack . --ignore-rules cjs-resolves-to-esm no-resolution",
54
- "test": "vitest run --typecheck",
55
- "test:watch": "vitest --typecheck"
56
58
  }
57
- }
59
+ }
@@ -1,6 +0,0 @@
1
- import type { StandardSchemaV1 } from './standard-schema/contract.js';
2
- import type { InferOutput } from './types.js';
3
- export declare function isMatching<const schema extends StandardSchemaV1>(schema: schema): (value: unknown) => value is InferOutput<schema>;
4
- export declare function isMatching<const schema extends StandardSchemaV1>(schema: schema, value: unknown): value is InferOutput<schema>;
5
- export declare function isMatchingAsync<const schema extends StandardSchemaV1>(schema: schema): (value: unknown) => Promise<boolean>;
6
- export declare function isMatchingAsync<const schema extends StandardSchemaV1>(schema: schema, value: unknown): Promise<boolean>;
@@ -1,28 +0,0 @@
1
- import { ASYNC_REQUIRED, NO_MATCH, matchSchemaAsync, matchSchemaSync } from './standard-schema/compiled.js';
2
- import { assertStandardSchema } from './standard-schema/validation.js';
3
- export function isMatching(schema, value) {
4
- assertStandardSchema(schema);
5
- if (arguments.length === 1) {
6
- return (next) => isMatchingValue(schema, next);
7
- }
8
- return isMatchingValue(schema, value);
9
- }
10
- export function isMatchingAsync(schema, value) {
11
- assertStandardSchema(schema);
12
- if (arguments.length === 1) {
13
- return async (next) => {
14
- return (await matchSchemaAsync(schema, next)) !== NO_MATCH;
15
- };
16
- }
17
- return (async () => {
18
- return (await matchSchemaAsync(schema, value)) !== NO_MATCH;
19
- })();
20
- }
21
- const isMatchingValue = (schema, value) => {
22
- const result = matchSchemaSync(schema, value);
23
- if (result === ASYNC_REQUIRED) {
24
- throw new Error('Schema validation returned a Promise. Use isMatchingAsync instead.');
25
- }
26
- return result !== NO_MATCH;
27
- };
28
- //# sourceMappingURL=is-matching.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-matching.js","sourceRoot":"","sources":["../src/is-matching.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,eAAe,EAAC,MAAM,+BAA+B,CAAA;AACzG,OAAO,EAAC,oBAAoB,EAAC,MAAM,iCAAiC,CAAA;AAUpE,MAAM,UAAU,UAAU,CACxB,MAAc,EACd,KAAe;IAEf,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC5B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAa,EAA+B,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACtF,CAAC;IACD,OAAO,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AACvC,CAAC;AASD,MAAM,UAAU,eAAe,CAC7B,MAAc,EACd,KAAe;IAEf,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC5B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,EAAE,IAAa,EAAE,EAAE;YAC7B,OAAO,CAAC,MAAM,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,QAAQ,CAAA;QAC5D,CAAC,CAAA;IACH,CAAC;IACD,OAAO,CAAC,KAAK,IAAI,EAAE;QACjB,OAAO,CAAC,MAAM,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAA;IAC7D,CAAC,CAAC,EAAE,CAAA;AACN,CAAC;AAED,MAAM,eAAe,GAAG,CACtB,MAAc,EACd,KAAc,EACgB,EAAE;IAChC,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7C,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;IACvF,CAAC;IACD,OAAO,MAAM,KAAK,QAAQ,CAAA;AAC5B,CAAC,CAAA"}