bupkis 0.18.1 → 0.18.2
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/CHANGELOG.md +7 -0
- package/package.json +1 -4
- package/src/assertion/assertion-types.ts +4 -4
- package/src/assertion/impl/sync-parametric.ts +1 -1
- package/src/expect.ts +0 -4
- package/src/guards.ts +24 -24
- package/src/internal-schema.ts +16 -32
- package/src/value-to-schema.ts +1 -1
- package/dist/assertion/assertion-async.cjs +0 -268
- package/dist/assertion/assertion-async.cjs.map +0 -1
- package/dist/assertion/assertion-async.d.cts +0 -40
- package/dist/assertion/assertion-async.d.cts.map +0 -1
- package/dist/assertion/assertion-async.d.ts +0 -40
- package/dist/assertion/assertion-async.d.ts.map +0 -1
- package/dist/assertion/assertion-async.js +0 -259
- package/dist/assertion/assertion-async.js.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.cjs +0 -132
- package/dist/assertion/assertion-standard-schema-async.cjs.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.d.cts +0 -52
- package/dist/assertion/assertion-standard-schema-async.d.cts.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.d.ts +0 -52
- package/dist/assertion/assertion-standard-schema-async.d.ts.map +0 -1
- package/dist/assertion/assertion-standard-schema-async.js +0 -128
- package/dist/assertion/assertion-standard-schema-async.js.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.cjs +0 -141
- package/dist/assertion/assertion-standard-schema-sync.cjs.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.d.cts +0 -52
- package/dist/assertion/assertion-standard-schema-sync.d.cts.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.d.ts +0 -52
- package/dist/assertion/assertion-standard-schema-sync.d.ts.map +0 -1
- package/dist/assertion/assertion-standard-schema-sync.js +0 -137
- package/dist/assertion/assertion-standard-schema-sync.js.map +0 -1
- package/dist/assertion/assertion-sync.cjs +0 -284
- package/dist/assertion/assertion-sync.cjs.map +0 -1
- package/dist/assertion/assertion-sync.d.cts +0 -60
- package/dist/assertion/assertion-sync.d.cts.map +0 -1
- package/dist/assertion/assertion-sync.d.ts +0 -60
- package/dist/assertion/assertion-sync.d.ts.map +0 -1
- package/dist/assertion/assertion-sync.js +0 -275
- package/dist/assertion/assertion-sync.js.map +0 -1
- package/dist/assertion/assertion-types.cjs +0 -20
- package/dist/assertion/assertion-types.cjs.map +0 -1
- package/dist/assertion/assertion-types.d.cts +0 -1086
- package/dist/assertion/assertion-types.d.cts.map +0 -1
- package/dist/assertion/assertion-types.d.ts +0 -1086
- package/dist/assertion/assertion-types.d.ts.map +0 -1
- package/dist/assertion/assertion-types.js +0 -19
- package/dist/assertion/assertion-types.js.map +0 -1
- package/dist/assertion/assertion.cjs +0 -382
- package/dist/assertion/assertion.cjs.map +0 -1
- package/dist/assertion/assertion.d.cts +0 -109
- package/dist/assertion/assertion.d.cts.map +0 -1
- package/dist/assertion/assertion.d.ts +0 -109
- package/dist/assertion/assertion.d.ts.map +0 -1
- package/dist/assertion/assertion.js +0 -375
- package/dist/assertion/assertion.js.map +0 -1
- package/dist/assertion/create.cjs +0 -148
- package/dist/assertion/create.cjs.map +0 -1
- package/dist/assertion/create.d.cts +0 -85
- package/dist/assertion/create.d.cts.map +0 -1
- package/dist/assertion/create.d.ts +0 -85
- package/dist/assertion/create.d.ts.map +0 -1
- package/dist/assertion/create.js +0 -143
- package/dist/assertion/create.js.map +0 -1
- package/dist/assertion/format-assertion-failure.cjs +0 -63
- package/dist/assertion/format-assertion-failure.cjs.map +0 -1
- package/dist/assertion/format-assertion-failure.d.cts +0 -21
- package/dist/assertion/format-assertion-failure.d.cts.map +0 -1
- package/dist/assertion/format-assertion-failure.d.ts +0 -21
- package/dist/assertion/format-assertion-failure.d.ts.map +0 -1
- package/dist/assertion/format-assertion-failure.js +0 -59
- package/dist/assertion/format-assertion-failure.js.map +0 -1
- package/dist/assertion/impl/assertion-util.cjs +0 -68
- package/dist/assertion/impl/assertion-util.cjs.map +0 -1
- package/dist/assertion/impl/assertion-util.d.cts +0 -36
- package/dist/assertion/impl/assertion-util.d.cts.map +0 -1
- package/dist/assertion/impl/assertion-util.d.ts +0 -36
- package/dist/assertion/impl/assertion-util.d.ts.map +0 -1
- package/dist/assertion/impl/assertion-util.js +0 -62
- package/dist/assertion/impl/assertion-util.js.map +0 -1
- package/dist/assertion/impl/async-iterable.cjs +0 -627
- package/dist/assertion/impl/async-iterable.cjs.map +0 -1
- package/dist/assertion/impl/async-iterable.d.cts +0 -406
- package/dist/assertion/impl/async-iterable.d.cts.map +0 -1
- package/dist/assertion/impl/async-iterable.d.ts +0 -406
- package/dist/assertion/impl/async-iterable.d.ts.map +0 -1
- package/dist/assertion/impl/async-iterable.js +0 -624
- package/dist/assertion/impl/async-iterable.js.map +0 -1
- package/dist/assertion/impl/async-parametric.cjs +0 -412
- package/dist/assertion/impl/async-parametric.cjs.map +0 -1
- package/dist/assertion/impl/async-parametric.d.cts +0 -278
- package/dist/assertion/impl/async-parametric.d.cts.map +0 -1
- package/dist/assertion/impl/async-parametric.d.ts +0 -278
- package/dist/assertion/impl/async-parametric.d.ts.map +0 -1
- package/dist/assertion/impl/async-parametric.js +0 -409
- package/dist/assertion/impl/async-parametric.js.map +0 -1
- package/dist/assertion/impl/async.cjs +0 -56
- package/dist/assertion/impl/async.cjs.map +0 -1
- package/dist/assertion/impl/async.d.cts +0 -179
- package/dist/assertion/impl/async.d.cts.map +0 -1
- package/dist/assertion/impl/async.d.ts +0 -179
- package/dist/assertion/impl/async.d.ts.map +0 -1
- package/dist/assertion/impl/async.js +0 -39
- package/dist/assertion/impl/async.js.map +0 -1
- package/dist/assertion/impl/index.cjs +0 -37
- package/dist/assertion/impl/index.cjs.map +0 -1
- package/dist/assertion/impl/index.d.cts +0 -21
- package/dist/assertion/impl/index.d.cts.map +0 -1
- package/dist/assertion/impl/index.d.ts +0 -21
- package/dist/assertion/impl/index.d.ts.map +0 -1
- package/dist/assertion/impl/index.js +0 -21
- package/dist/assertion/impl/index.js.map +0 -1
- package/dist/assertion/impl/iteration-util.cjs +0 -297
- package/dist/assertion/impl/iteration-util.cjs.map +0 -1
- package/dist/assertion/impl/iteration-util.d.cts +0 -12
- package/dist/assertion/impl/iteration-util.d.cts.map +0 -1
- package/dist/assertion/impl/iteration-util.d.ts +0 -12
- package/dist/assertion/impl/iteration-util.d.ts.map +0 -1
- package/dist/assertion/impl/iteration-util.js +0 -282
- package/dist/assertion/impl/iteration-util.js.map +0 -1
- package/dist/assertion/impl/snapshot.cjs +0 -276
- package/dist/assertion/impl/snapshot.cjs.map +0 -1
- package/dist/assertion/impl/snapshot.d.cts +0 -278
- package/dist/assertion/impl/snapshot.d.cts.map +0 -1
- package/dist/assertion/impl/snapshot.d.ts +0 -278
- package/dist/assertion/impl/snapshot.d.ts.map +0 -1
- package/dist/assertion/impl/snapshot.js +0 -273
- package/dist/assertion/impl/snapshot.js.map +0 -1
- package/dist/assertion/impl/sync-basic.cjs +0 -553
- package/dist/assertion/impl/sync-basic.cjs.map +0 -1
- package/dist/assertion/impl/sync-basic.d.cts +0 -528
- package/dist/assertion/impl/sync-basic.d.cts.map +0 -1
- package/dist/assertion/impl/sync-basic.d.ts +0 -528
- package/dist/assertion/impl/sync-basic.d.ts.map +0 -1
- package/dist/assertion/impl/sync-basic.js +0 -550
- package/dist/assertion/impl/sync-basic.js.map +0 -1
- package/dist/assertion/impl/sync-collection.cjs +0 -856
- package/dist/assertion/impl/sync-collection.cjs.map +0 -1
- package/dist/assertion/impl/sync-collection.d.cts +0 -607
- package/dist/assertion/impl/sync-collection.d.cts.map +0 -1
- package/dist/assertion/impl/sync-collection.d.ts +0 -607
- package/dist/assertion/impl/sync-collection.d.ts.map +0 -1
- package/dist/assertion/impl/sync-collection.js +0 -850
- package/dist/assertion/impl/sync-collection.js.map +0 -1
- package/dist/assertion/impl/sync-date.cjs +0 -341
- package/dist/assertion/impl/sync-date.cjs.map +0 -1
- package/dist/assertion/impl/sync-date.d.cts +0 -209
- package/dist/assertion/impl/sync-date.d.cts.map +0 -1
- package/dist/assertion/impl/sync-date.d.ts +0 -209
- package/dist/assertion/impl/sync-date.d.ts.map +0 -1
- package/dist/assertion/impl/sync-date.js +0 -338
- package/dist/assertion/impl/sync-date.js.map +0 -1
- package/dist/assertion/impl/sync-esoteric.cjs +0 -214
- package/dist/assertion/impl/sync-esoteric.cjs.map +0 -1
- package/dist/assertion/impl/sync-esoteric.d.cts +0 -191
- package/dist/assertion/impl/sync-esoteric.d.cts.map +0 -1
- package/dist/assertion/impl/sync-esoteric.d.ts +0 -191
- package/dist/assertion/impl/sync-esoteric.d.ts.map +0 -1
- package/dist/assertion/impl/sync-esoteric.js +0 -211
- package/dist/assertion/impl/sync-esoteric.js.map +0 -1
- package/dist/assertion/impl/sync-iterable.cjs +0 -512
- package/dist/assertion/impl/sync-iterable.cjs.map +0 -1
- package/dist/assertion/impl/sync-iterable.d.cts +0 -334
- package/dist/assertion/impl/sync-iterable.d.cts.map +0 -1
- package/dist/assertion/impl/sync-iterable.d.ts +0 -334
- package/dist/assertion/impl/sync-iterable.d.ts.map +0 -1
- package/dist/assertion/impl/sync-iterable.js +0 -509
- package/dist/assertion/impl/sync-iterable.js.map +0 -1
- package/dist/assertion/impl/sync-parametric.cjs +0 -805
- package/dist/assertion/impl/sync-parametric.cjs.map +0 -1
- package/dist/assertion/impl/sync-parametric.d.cts +0 -560
- package/dist/assertion/impl/sync-parametric.d.cts.map +0 -1
- package/dist/assertion/impl/sync-parametric.d.ts +0 -560
- package/dist/assertion/impl/sync-parametric.d.ts.map +0 -1
- package/dist/assertion/impl/sync-parametric.js +0 -802
- package/dist/assertion/impl/sync-parametric.js.map +0 -1
- package/dist/assertion/impl/sync.cjs +0 -214
- package/dist/assertion/impl/sync.cjs.map +0 -1
- package/dist/assertion/impl/sync.d.cts +0 -512
- package/dist/assertion/impl/sync.d.cts.map +0 -1
- package/dist/assertion/impl/sync.d.ts +0 -512
- package/dist/assertion/impl/sync.d.ts.map +0 -1
- package/dist/assertion/impl/sync.js +0 -197
- package/dist/assertion/impl/sync.js.map +0 -1
- package/dist/assertion/index.cjs +0 -38
- package/dist/assertion/index.cjs.map +0 -1
- package/dist/assertion/index.d.cts +0 -18
- package/dist/assertion/index.d.cts.map +0 -1
- package/dist/assertion/index.d.ts +0 -18
- package/dist/assertion/index.d.ts.map +0 -1
- package/dist/assertion/index.js +0 -17
- package/dist/assertion/index.js.map +0 -1
- package/dist/assertion/slotify.cjs +0 -165
- package/dist/assertion/slotify.cjs.map +0 -1
- package/dist/assertion/slotify.d.cts +0 -11
- package/dist/assertion/slotify.d.cts.map +0 -1
- package/dist/assertion/slotify.d.ts +0 -11
- package/dist/assertion/slotify.d.ts.map +0 -1
- package/dist/assertion/slotify.js +0 -161
- package/dist/assertion/slotify.js.map +0 -1
- package/dist/bootstrap.cjs +0 -43
- package/dist/bootstrap.cjs.map +0 -1
- package/dist/bootstrap.d.cts +0 -27
- package/dist/bootstrap.d.cts.map +0 -1
- package/dist/bootstrap.d.ts +0 -27
- package/dist/bootstrap.d.ts.map +0 -1
- package/dist/bootstrap.js +0 -40
- package/dist/bootstrap.js.map +0 -1
- package/dist/constant.cjs +0 -82
- package/dist/constant.cjs.map +0 -1
- package/dist/constant.d.cts +0 -69
- package/dist/constant.d.cts.map +0 -1
- package/dist/constant.d.ts +0 -69
- package/dist/constant.d.ts.map +0 -1
- package/dist/constant.js +0 -79
- package/dist/constant.js.map +0 -1
- package/dist/diff.cjs +0 -340
- package/dist/diff.cjs.map +0 -1
- package/dist/diff.d.cts +0 -51
- package/dist/diff.d.cts.map +0 -1
- package/dist/diff.d.ts +0 -51
- package/dist/diff.d.ts.map +0 -1
- package/dist/diff.js +0 -334
- package/dist/diff.js.map +0 -1
- package/dist/error.cjs +0 -204
- package/dist/error.cjs.map +0 -1
- package/dist/error.d.cts +0 -212
- package/dist/error.d.cts.map +0 -1
- package/dist/error.d.ts +0 -212
- package/dist/error.d.ts.map +0 -1
- package/dist/error.js +0 -191
- package/dist/error.js.map +0 -1
- package/dist/expect.cjs +0 -590
- package/dist/expect.cjs.map +0 -1
- package/dist/expect.d.cts +0 -138
- package/dist/expect.d.cts.map +0 -1
- package/dist/expect.d.ts +0 -138
- package/dist/expect.d.ts.map +0 -1
- package/dist/expect.js +0 -582
- package/dist/expect.js.map +0 -1
- package/dist/guards.cjs +0 -297
- package/dist/guards.cjs.map +0 -1
- package/dist/guards.d.cts +0 -231
- package/dist/guards.d.cts.map +0 -1
- package/dist/guards.d.ts +0 -231
- package/dist/guards.d.ts.map +0 -1
- package/dist/guards.js +0 -277
- package/dist/guards.js.map +0 -1
- package/dist/index.cjs +0 -111
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -448
- package/dist/index.d.cts.map +0 -1
- package/dist/index.d.ts +0 -448
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -71
- package/dist/index.js.map +0 -1
- package/dist/internal-schema.cjs +0 -253
- package/dist/internal-schema.cjs.map +0 -1
- package/dist/internal-schema.d.cts +0 -8
- package/dist/internal-schema.d.cts.map +0 -1
- package/dist/internal-schema.d.ts +0 -8
- package/dist/internal-schema.d.ts.map +0 -1
- package/dist/internal-schema.js +0 -248
- package/dist/internal-schema.js.map +0 -1
- package/dist/metadata.cjs +0 -57
- package/dist/metadata.cjs.map +0 -1
- package/dist/metadata.d.cts +0 -27
- package/dist/metadata.d.cts.map +0 -1
- package/dist/metadata.d.ts +0 -27
- package/dist/metadata.d.ts.map +0 -1
- package/dist/metadata.js +0 -54
- package/dist/metadata.js.map +0 -1
- package/dist/schema.cjs +0 -1522
- package/dist/schema.cjs.map +0 -1
- package/dist/schema.d.cts +0 -1196
- package/dist/schema.d.cts.map +0 -1
- package/dist/schema.d.ts +0 -1196
- package/dist/schema.d.ts.map +0 -1
- package/dist/schema.js +0 -1516
- package/dist/schema.js.map +0 -1
- package/dist/snapshot/adapter.cjs +0 -31
- package/dist/snapshot/adapter.cjs.map +0 -1
- package/dist/snapshot/adapter.d.cts +0 -258
- package/dist/snapshot/adapter.d.cts.map +0 -1
- package/dist/snapshot/adapter.d.ts +0 -258
- package/dist/snapshot/adapter.d.ts.map +0 -1
- package/dist/snapshot/adapter.js +0 -27
- package/dist/snapshot/adapter.js.map +0 -1
- package/dist/snapshot/adapters/fallback.cjs +0 -453
- package/dist/snapshot/adapters/fallback.cjs.map +0 -1
- package/dist/snapshot/adapters/fallback.d.cts +0 -185
- package/dist/snapshot/adapters/fallback.d.cts.map +0 -1
- package/dist/snapshot/adapters/fallback.d.ts +0 -185
- package/dist/snapshot/adapters/fallback.d.ts.map +0 -1
- package/dist/snapshot/adapters/fallback.js +0 -446
- package/dist/snapshot/adapters/fallback.js.map +0 -1
- package/dist/snapshot/adapters/node-test.cjs +0 -301
- package/dist/snapshot/adapters/node-test.cjs.map +0 -1
- package/dist/snapshot/adapters/node-test.d.cts +0 -131
- package/dist/snapshot/adapters/node-test.d.cts.map +0 -1
- package/dist/snapshot/adapters/node-test.d.ts +0 -131
- package/dist/snapshot/adapters/node-test.d.ts.map +0 -1
- package/dist/snapshot/adapters/node-test.js +0 -297
- package/dist/snapshot/adapters/node-test.js.map +0 -1
- package/dist/snapshot/index.cjs +0 -61
- package/dist/snapshot/index.cjs.map +0 -1
- package/dist/snapshot/index.d.cts +0 -40
- package/dist/snapshot/index.d.cts.map +0 -1
- package/dist/snapshot/index.d.ts +0 -40
- package/dist/snapshot/index.d.ts.map +0 -1
- package/dist/snapshot/index.js +0 -44
- package/dist/snapshot/index.js.map +0 -1
- package/dist/snapshot/node-version.cjs +0 -49
- package/dist/snapshot/node-version.cjs.map +0 -1
- package/dist/snapshot/node-version.d.cts +0 -34
- package/dist/snapshot/node-version.d.cts.map +0 -1
- package/dist/snapshot/node-version.d.ts +0 -34
- package/dist/snapshot/node-version.d.ts.map +0 -1
- package/dist/snapshot/node-version.js +0 -44
- package/dist/snapshot/node-version.js.map +0 -1
- package/dist/snapshot/select-adapter.cjs +0 -170
- package/dist/snapshot/select-adapter.cjs.map +0 -1
- package/dist/snapshot/select-adapter.d.cts +0 -128
- package/dist/snapshot/select-adapter.d.cts.map +0 -1
- package/dist/snapshot/select-adapter.d.ts +0 -128
- package/dist/snapshot/select-adapter.d.ts.map +0 -1
- package/dist/snapshot/select-adapter.js +0 -164
- package/dist/snapshot/select-adapter.js.map +0 -1
- package/dist/snapshot/serializer.cjs +0 -246
- package/dist/snapshot/serializer.cjs.map +0 -1
- package/dist/snapshot/serializer.d.cts +0 -126
- package/dist/snapshot/serializer.d.cts.map +0 -1
- package/dist/snapshot/serializer.d.ts +0 -126
- package/dist/snapshot/serializer.d.ts.map +0 -1
- package/dist/snapshot/serializer.js +0 -238
- package/dist/snapshot/serializer.js.map +0 -1
- package/dist/standard-schema.cjs +0 -13
- package/dist/standard-schema.cjs.map +0 -1
- package/dist/standard-schema.d.cts +0 -192
- package/dist/standard-schema.d.cts.map +0 -1
- package/dist/standard-schema.d.ts +0 -192
- package/dist/standard-schema.d.ts.map +0 -1
- package/dist/standard-schema.js +0 -12
- package/dist/standard-schema.js.map +0 -1
- package/dist/types.cjs +0 -22
- package/dist/types.cjs.map +0 -1
- package/dist/types.d.cts +0 -905
- package/dist/types.d.cts.map +0 -1
- package/dist/types.d.ts +0 -905
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -21
- package/dist/types.js.map +0 -1
- package/dist/use.cjs +0 -240
- package/dist/use.cjs.map +0 -1
- package/dist/use.d.cts +0 -8
- package/dist/use.d.cts.map +0 -1
- package/dist/use.d.ts +0 -8
- package/dist/use.d.ts.map +0 -1
- package/dist/use.js +0 -236
- package/dist/use.js.map +0 -1
- package/dist/util.cjs +0 -255
- package/dist/util.cjs.map +0 -1
- package/dist/util.d.cts +0 -141
- package/dist/util.d.cts.map +0 -1
- package/dist/util.d.ts +0 -141
- package/dist/util.d.ts.map +0 -1
- package/dist/util.js +0 -234
- package/dist/util.js.map +0 -1
- package/dist/value-to-schema.cjs +0 -537
- package/dist/value-to-schema.cjs.map +0 -1
- package/dist/value-to-schema.d.cts +0 -144
- package/dist/value-to-schema.d.cts.map +0 -1
- package/dist/value-to-schema.d.ts +0 -144
- package/dist/value-to-schema.d.ts.map +0 -1
- package/dist/value-to-schema.js +0 -533
- package/dist/value-to-schema.js.map +0 -1
package/dist/index.js
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Main entry point for the Bupkis assertion library.
|
|
3
|
-
*
|
|
4
|
-
* This module exports all public APIs including the main `expect` function,
|
|
5
|
-
* asynchronous `expectAsync` function, assertion creation utilities, type
|
|
6
|
-
* guards, schema definitions, utility functions, and error types.
|
|
7
|
-
*
|
|
8
|
-
* @module bupkis
|
|
9
|
-
* @category API
|
|
10
|
-
* @example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { expect, expectAsync, z, createAssertion } from 'bupkis';
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* {@link https://zod.dev | Zod v4} is exported as `z` if you aren't already
|
|
17
|
-
* using a {@link https://standardschema.dev | Standard Schema V1}-compatible
|
|
18
|
-
* validation library.
|
|
19
|
-
*/
|
|
20
|
-
import { z } from 'zod';
|
|
21
|
-
import { expect as sacrificialExpect } from "./bootstrap.js";
|
|
22
|
-
export * as assertions from "./assertion/impl/index.js";
|
|
23
|
-
export { expect, expectAsync } from "./bootstrap.js";
|
|
24
|
-
export * from "./error.js";
|
|
25
|
-
export * as schema from "./schema.js";
|
|
26
|
-
/**
|
|
27
|
-
* Re-export of {@link https://zod.dev Zod v4} for use in custom assertion
|
|
28
|
-
* implementations.
|
|
29
|
-
*/
|
|
30
|
-
export { z };
|
|
31
|
-
export { createAssertion, createAsyncAssertion, fail, use };
|
|
32
|
-
const {
|
|
33
|
-
/**
|
|
34
|
-
* The main factory function for creating asynchronous assertions.
|
|
35
|
-
*
|
|
36
|
-
* Exported from the entry point; is also a property of {@link Expect} and
|
|
37
|
-
* {@link ExpectAsync}.
|
|
38
|
-
*
|
|
39
|
-
* @function
|
|
40
|
-
* @primaryExport
|
|
41
|
-
* @group Core API
|
|
42
|
-
*/
|
|
43
|
-
createAssertion,
|
|
44
|
-
/**
|
|
45
|
-
* The main factory function for creating asynchronous assertions.
|
|
46
|
-
*
|
|
47
|
-
* Exported from the entry point; is also a property of {@link Expect} and
|
|
48
|
-
* {@link ExpectAsync}.
|
|
49
|
-
*
|
|
50
|
-
* @function
|
|
51
|
-
* @primaryExport
|
|
52
|
-
* @group Core API
|
|
53
|
-
*/
|
|
54
|
-
createAsyncAssertion,
|
|
55
|
-
/**
|
|
56
|
-
* {@inheritDoc FailFn}
|
|
57
|
-
*
|
|
58
|
-
* @function
|
|
59
|
-
* @primaryExport
|
|
60
|
-
* @group Core API
|
|
61
|
-
*/
|
|
62
|
-
fail,
|
|
63
|
-
/**
|
|
64
|
-
* {@inheritDoc UseFn}
|
|
65
|
-
*
|
|
66
|
-
* @function
|
|
67
|
-
* @primaryExport
|
|
68
|
-
* @group Core API
|
|
69
|
-
*/
|
|
70
|
-
use, ..._rest } = sacrificialExpect;
|
|
71
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,IAAI,iBAAiB,EAAE,uBAAuB;AAC7D,OAAO,KAAK,UAAU,kCAAkC;AACxD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,uBAAuB;AAQrD,2BAA2B;AAE3B,OAAO,KAAK,MAAM,oBAAoB;AActC;;;GAGG;AACH,OAAO,EAAE,CAAC,EAAE,CAAC;AAwCb,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AAC5D,MAAM;AACJ;;;;;;;;;GASG;AACH,eAAe;AACf;;;;;;;;;GASG;AACH,oBAAoB;AACpB;;;;;;GAMG;AACH,IAAI;AACJ;;;;;;GAMG;AACH,GAAG,EACH,GAAG,KAAK,EACT,GAAG,iBAAiB,CAAC"}
|
package/dist/internal-schema.cjs
DELETED
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Internal schemas
|
|
4
|
-
*
|
|
5
|
-
* @internal
|
|
6
|
-
* @packageDocumentation
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.CreateAssertionInputSchemaAsync = exports.CreateAssertionInputSchema = exports.isAssertionParseRequest = exports.isAssertionFailure = void 0;
|
|
10
|
-
const zod_1 = require("zod");
|
|
11
|
-
const guards_js_1 = require("./guards.cjs");
|
|
12
|
-
/**
|
|
13
|
-
* Schema for {@link AssertionFailure}.
|
|
14
|
-
*
|
|
15
|
-
* @internal
|
|
16
|
-
*/
|
|
17
|
-
// Note: We use a loose type here because z.function() has complex
|
|
18
|
-
// inference that doesn't exactly match our AssertionFailure interface.
|
|
19
|
-
// This schema is only used for validation (safeParse), not for type inference.
|
|
20
|
-
const AssertionFailureSchema = zod_1.z
|
|
21
|
-
.object({
|
|
22
|
-
actual: zod_1.z
|
|
23
|
-
.unknown()
|
|
24
|
-
.optional()
|
|
25
|
-
.meta({
|
|
26
|
-
description: 'The actual value or description of what actually occurred',
|
|
27
|
-
}),
|
|
28
|
-
diff: zod_1.z
|
|
29
|
-
.string()
|
|
30
|
-
.optional()
|
|
31
|
-
.meta({
|
|
32
|
-
description: 'Pre-computed diff string that bypasses jest-diff',
|
|
33
|
-
}),
|
|
34
|
-
diffOptions: zod_1.z
|
|
35
|
-
.record(zod_1.z.string(), zod_1.z.unknown())
|
|
36
|
-
.optional()
|
|
37
|
-
.meta({ description: 'Override options for jest-diff' }),
|
|
38
|
-
expected: zod_1.z
|
|
39
|
-
.unknown()
|
|
40
|
-
.optional()
|
|
41
|
-
.meta({
|
|
42
|
-
description: 'The expected value or description of what was expected to occur',
|
|
43
|
-
}),
|
|
44
|
-
formatActual: zod_1.z
|
|
45
|
-
.function()
|
|
46
|
-
.optional()
|
|
47
|
-
.meta({
|
|
48
|
-
description: 'Custom formatter for actual value in diff output',
|
|
49
|
-
}),
|
|
50
|
-
formatExpected: zod_1.z
|
|
51
|
-
.function()
|
|
52
|
-
.optional()
|
|
53
|
-
.meta({
|
|
54
|
-
description: 'Custom formatter for expected value in diff output',
|
|
55
|
-
}),
|
|
56
|
-
message: zod_1.z
|
|
57
|
-
.string()
|
|
58
|
-
.optional()
|
|
59
|
-
.meta({ description: 'A human-readable message describing the failure' }),
|
|
60
|
-
})
|
|
61
|
-
.meta({
|
|
62
|
-
description: 'Potential return type of an assertion implementation function',
|
|
63
|
-
});
|
|
64
|
-
/**
|
|
65
|
-
* @internal
|
|
66
|
-
*/
|
|
67
|
-
const ZodTypeSchema = zod_1.z
|
|
68
|
-
.custom(guards_js_1.isZodType, {
|
|
69
|
-
error: 'Must be a Zod schema',
|
|
70
|
-
})
|
|
71
|
-
.meta({ description: 'A Zod schema within AssertionParts' });
|
|
72
|
-
/**
|
|
73
|
-
* @internal
|
|
74
|
-
*/
|
|
75
|
-
const StandardSchemaSchema = zod_1.z
|
|
76
|
-
.custom(guards_js_1.isStandardSchema, {
|
|
77
|
-
error: 'Must be a Standard Schema v1',
|
|
78
|
-
})
|
|
79
|
-
.meta({ description: 'A Standard Schema v1 within AssertionParts' });
|
|
80
|
-
/**
|
|
81
|
-
* Schema that accepts either Zod or Standard Schema validators.
|
|
82
|
-
*
|
|
83
|
-
* @internal
|
|
84
|
-
*/
|
|
85
|
-
const SchemaSchema = zod_1.z
|
|
86
|
-
.union([ZodTypeSchema, StandardSchemaSchema])
|
|
87
|
-
.meta({ description: 'A Zod schema or Standard Schema v1' });
|
|
88
|
-
/** @internal */
|
|
89
|
-
const BaseAssertionParseRequestSchema = zod_1.z.object({
|
|
90
|
-
subject: zod_1.z
|
|
91
|
-
.unknown()
|
|
92
|
-
.meta({ description: 'The subject value to be validated' }),
|
|
93
|
-
});
|
|
94
|
-
/**
|
|
95
|
-
* @internal
|
|
96
|
-
*/
|
|
97
|
-
const AssertionParseRequestSchema = zod_1.z.union([
|
|
98
|
-
zod_1.z.object({
|
|
99
|
-
...BaseAssertionParseRequestSchema.shape,
|
|
100
|
-
schema: SchemaSchema.describe('The sync schema to validate against'),
|
|
101
|
-
}),
|
|
102
|
-
zod_1.z.object({
|
|
103
|
-
...BaseAssertionParseRequestSchema.shape,
|
|
104
|
-
asyncSchema: SchemaSchema.describe('The async schema to validate against'),
|
|
105
|
-
}),
|
|
106
|
-
]);
|
|
107
|
-
/**
|
|
108
|
-
* @internal
|
|
109
|
-
*/
|
|
110
|
-
const PhraseLiteralSchema = zod_1.z
|
|
111
|
-
.stringFormat('PhraseLiteral', (value) => !value.startsWith('not '), {
|
|
112
|
-
error: 'Phrase literals may not begin with "not "',
|
|
113
|
-
})
|
|
114
|
-
.min(1, { error: 'Phrase literals must be at least 1 character long' })
|
|
115
|
-
.meta({ description: 'A phrase literal within AssertionParts' });
|
|
116
|
-
/**
|
|
117
|
-
* @internal
|
|
118
|
-
*/
|
|
119
|
-
const PhraseLiteralChoiceSchema = zod_1.z
|
|
120
|
-
.array(PhraseLiteralSchema)
|
|
121
|
-
.min(1, { error: 'Phrase literal choices must have at least one option' })
|
|
122
|
-
.meta({
|
|
123
|
-
description: 'A choice of phrase literals, represented as an array of strings, within AssertionParts',
|
|
124
|
-
});
|
|
125
|
-
/**
|
|
126
|
-
* @internal
|
|
127
|
-
*/
|
|
128
|
-
const AssertionImplSchemaSync = zod_1.z
|
|
129
|
-
.union([
|
|
130
|
-
SchemaSchema,
|
|
131
|
-
zod_1.z.function({
|
|
132
|
-
input: zod_1.z.tuple([zod_1.z.unknown()], zod_1.z.unknown()),
|
|
133
|
-
output: zod_1.z.union([
|
|
134
|
-
zod_1.z.void(),
|
|
135
|
-
zod_1.z.boolean(),
|
|
136
|
-
SchemaSchema,
|
|
137
|
-
AssertionFailureSchema,
|
|
138
|
-
AssertionParseRequestSchema,
|
|
139
|
-
]),
|
|
140
|
-
}),
|
|
141
|
-
])
|
|
142
|
-
.meta({ description: 'A synchronous assertion implementation function' });
|
|
143
|
-
const AssertionImplSchemaAsync = zod_1.z
|
|
144
|
-
.union([
|
|
145
|
-
SchemaSchema,
|
|
146
|
-
zod_1.z.function({
|
|
147
|
-
input: zod_1.z.tuple([zod_1.z.unknown()], zod_1.z.unknown()),
|
|
148
|
-
output: zod_1.z.union([
|
|
149
|
-
zod_1.z.void(),
|
|
150
|
-
zod_1.z.boolean(),
|
|
151
|
-
SchemaSchema,
|
|
152
|
-
AssertionFailureSchema,
|
|
153
|
-
AssertionParseRequestSchema,
|
|
154
|
-
zod_1.z.promise(zod_1.z.void()),
|
|
155
|
-
zod_1.z.promise(zod_1.z.boolean()),
|
|
156
|
-
zod_1.z.promise(SchemaSchema),
|
|
157
|
-
zod_1.z.promise(AssertionFailureSchema),
|
|
158
|
-
zod_1.z.promise(AssertionParseRequestSchema),
|
|
159
|
-
]),
|
|
160
|
-
}),
|
|
161
|
-
])
|
|
162
|
-
.meta({ description: 'An async assertion implementation function' });
|
|
163
|
-
/**
|
|
164
|
-
* Checks if a value is a schema (Zod or StandardSchema)
|
|
165
|
-
*
|
|
166
|
-
* @function
|
|
167
|
-
* @param value - Value to check
|
|
168
|
-
* @returns True if the value is a schema
|
|
169
|
-
*/
|
|
170
|
-
const isSchema = (value) => (0, guards_js_1.isZodType)(value) || (0, guards_js_1.isStandardSchema)(value);
|
|
171
|
-
/**
|
|
172
|
-
* @internal
|
|
173
|
-
*/
|
|
174
|
-
const AssertionPartsSchema = zod_1.z
|
|
175
|
-
.array(zod_1.z.union([PhraseLiteralSchema, PhraseLiteralChoiceSchema, SchemaSchema]))
|
|
176
|
-
.min(1, { error: 'At least one part is required for an assertion' })
|
|
177
|
-
.refine((parts) => {
|
|
178
|
-
// Special validation for 'and': it can only appear if followed by a schema
|
|
179
|
-
for (let i = 0; i < parts.length; i++) {
|
|
180
|
-
if (parts[i] === 'and') {
|
|
181
|
-
// 'and' must be followed by another part, and that part must be a schema
|
|
182
|
-
const nextPart = parts[i + 1];
|
|
183
|
-
if (i === parts.length - 1 ||
|
|
184
|
-
!((0, guards_js_1.isZodType)(nextPart) || (0, guards_js_1.isStandardSchema)(nextPart))) {
|
|
185
|
-
return false;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
return true;
|
|
190
|
-
}, { error: '"and" can only appear when followed by a schema' })
|
|
191
|
-
.refine((parts) => {
|
|
192
|
-
const first = parts[0];
|
|
193
|
-
// Position 0 must be a schema or phrase
|
|
194
|
-
if ((0, guards_js_1.isPhrase)(first)) {
|
|
195
|
-
// Shorthand: phrase-first means subject is implicitly z.unknown()
|
|
196
|
-
return true;
|
|
197
|
-
}
|
|
198
|
-
if (isSchema(first)) {
|
|
199
|
-
// Subject-first: position 1 must be a phrase
|
|
200
|
-
const second = parts[1];
|
|
201
|
-
return second !== undefined && (0, guards_js_1.isPhrase)(second);
|
|
202
|
-
}
|
|
203
|
-
// Position 0 is neither schema nor phrase (shouldn't happen after array validation)
|
|
204
|
-
return false;
|
|
205
|
-
}, {
|
|
206
|
-
error: 'Assertions must have a phrase at position 0 (phrase-first shorthand) or position 1 (after subject schema)',
|
|
207
|
-
})
|
|
208
|
-
.meta({
|
|
209
|
-
description: 'Assertion "parts" which define the input of an assertion',
|
|
210
|
-
});
|
|
211
|
-
/**
|
|
212
|
-
* Type guard for a {@link AssertionFailure}.
|
|
213
|
-
*
|
|
214
|
-
* This cannot live in `guards.ts` because it would create a cycle.
|
|
215
|
-
*
|
|
216
|
-
* @function
|
|
217
|
-
* @param value Value to check
|
|
218
|
-
* @returns `true` if value is an AssertionFailure
|
|
219
|
-
* @internal
|
|
220
|
-
*/
|
|
221
|
-
const isAssertionFailure = (value) => {
|
|
222
|
-
return AssertionFailureSchema.safeParse(value).success;
|
|
223
|
-
};
|
|
224
|
-
exports.isAssertionFailure = isAssertionFailure;
|
|
225
|
-
/**
|
|
226
|
-
* Type guard for an {@link AssertionParseRequest}.
|
|
227
|
-
*
|
|
228
|
-
* @function
|
|
229
|
-
* @param value Value to check
|
|
230
|
-
* @returns `true` if value is an AssertionParseRequest
|
|
231
|
-
* @internal
|
|
232
|
-
*/
|
|
233
|
-
const isAssertionParseRequest = (value) => {
|
|
234
|
-
return AssertionParseRequestSchema.safeParse(value).success;
|
|
235
|
-
};
|
|
236
|
-
exports.isAssertionParseRequest = isAssertionParseRequest;
|
|
237
|
-
/**
|
|
238
|
-
* Schema for the input parameters of {@link createAssertion}.
|
|
239
|
-
*
|
|
240
|
-
* @internal
|
|
241
|
-
*/
|
|
242
|
-
exports.CreateAssertionInputSchema = zod_1.z
|
|
243
|
-
.tuple([AssertionPartsSchema, AssertionImplSchemaSync])
|
|
244
|
-
.meta({ description: 'Parameters for createAssertion()' });
|
|
245
|
-
/**
|
|
246
|
-
* Schema for the input parameters of {@link createAsyncAssertion}.
|
|
247
|
-
*
|
|
248
|
-
* @internal
|
|
249
|
-
*/
|
|
250
|
-
exports.CreateAssertionInputSchemaAsync = zod_1.z
|
|
251
|
-
.tuple([AssertionPartsSchema, AssertionImplSchemaAsync])
|
|
252
|
-
.meta({ description: 'Parameters for createAsyncAssertion()' });
|
|
253
|
-
//# sourceMappingURL=internal-schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"internal-schema.js","sourceRoot":"","sources":["../src/internal-schema.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,6BAAwB;AAIxB,4CAAoE;AAEpE;;;;GAIG;AAEH,kEAAkE;AAClE,uEAAuE;AACvE,+EAA+E;AAC/E,MAAM,sBAAsB,GAAG,OAAC;KAC7B,MAAM,CAAC;IACN,MAAM,EAAE,OAAC;SACN,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EACT,2DAA2D;KAC9D,CAAC;IACJ,IAAI,EAAE,OAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EAAE,kDAAkD;KAChE,CAAC;IACJ,WAAW,EAAE,OAAC;SACX,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;SAC/B,QAAQ,EAAE;SACV,IAAI,CAAC,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;IAC1D,QAAQ,EAAE,OAAC;SACR,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EACT,iEAAiE;KACpE,CAAC;IACJ,YAAY,EAAE,OAAC;SACZ,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EAAE,kDAAkD;KAChE,CAAC;IACJ,cAAc,EAAE,OAAC;SACd,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EAAE,oDAAoD;KAClE,CAAC;IACJ,OAAO,EAAE,OAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,IAAI,CAAC,EAAE,WAAW,EAAE,iDAAiD,EAAE,CAAC;CAC5E,CAAC;KACD,IAAI,CAAC;IACJ,WAAW,EACT,+DAA+D;CAClE,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,aAAa,GAAG,OAAC;KACpB,MAAM,CAAY,qBAAS,EAAE;IAC5B,KAAK,EAAE,sBAAsB;CAC9B,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC,CAAC;AAE/D;;GAEG;AACH,MAAM,oBAAoB,GAAG,OAAC;KAC3B,MAAM,CAAC,4BAAgB,EAAE;IACxB,KAAK,EAAE,8BAA8B;CACtC,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,4CAA4C,EAAE,CAAC,CAAC;AAEvE;;;;GAIG;AACH,MAAM,YAAY,GAAG,OAAC;KACnB,KAAK,CAAC,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;KAC5C,IAAI,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC,CAAC;AAE/D,gBAAgB;AAChB,MAAM,+BAA+B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,OAAC;SACP,OAAO,EAAE;SACT,IAAI,CAAC,EAAE,WAAW,EAAE,mCAAmC,EAAE,CAAC;CAC9D,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,2BAA2B,GAAqC,OAAC,CAAC,KAAK,CAAC;IAC5E,OAAC,CAAC,MAAM,CAAC;QACP,GAAG,+BAA+B,CAAC,KAAK;QACxC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,qCAAqC,CAAC;KACrE,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,GAAG,+BAA+B,CAAC,KAAK;QACxC,WAAW,EAAE,YAAY,CAAC,QAAQ,CAAC,sCAAsC,CAAC;KAC3E,CAAC;CACH,CAAqC,CAAC;AAEvC;;GAEG;AACH,MAAM,mBAAmB,GAAG,OAAC;KAC1B,YAAY,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;IACnE,KAAK,EAAE,2CAA2C;CACnD,CAAC;KACD,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,mDAAmD,EAAE,CAAC;KACtE,IAAI,CAAC,EAAE,WAAW,EAAE,wCAAwC,EAAE,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,yBAAyB,GAAG,OAAC;KAChC,KAAK,CAAC,mBAAmB,CAAC;KAC1B,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,sDAAsD,EAAE,CAAC;KACzE,IAAI,CAAC;IACJ,WAAW,EACT,wFAAwF;CAC3F,CAAC,CAAC;AACL;;GAEG;AACH,MAAM,uBAAuB,GAAG,OAAC;KAC9B,KAAK,CAAC;IACL,YAAY;IACZ,OAAC,CAAC,QAAQ,CAAC;QACT,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC;YACd,OAAC,CAAC,IAAI,EAAE;YACR,OAAC,CAAC,OAAO,EAAE;YACX,YAAY;YACZ,sBAAsB;YACtB,2BAA2B;SAC5B,CAAC;KACH,CAAC;CACH,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,iDAAiD,EAAE,CAAC,CAAC;AAE5E,MAAM,wBAAwB,GAAG,OAAC;KAC/B,KAAK,CAAC;IACL,YAAY;IACZ,OAAC,CAAC,QAAQ,CAAC;QACT,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC;YACd,OAAC,CAAC,IAAI,EAAE;YACR,OAAC,CAAC,OAAO,EAAE;YACX,YAAY;YACZ,sBAAsB;YACtB,2BAA2B;YAC3B,OAAC,CAAC,OAAO,CAAC,OAAC,CAAC,IAAI,EAAE,CAAC;YACnB,OAAC,CAAC,OAAO,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;YACtB,OAAC,CAAC,OAAO,CAAC,YAAY,CAAC;YACvB,OAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC;YACjC,OAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC;SACvC,CAAC;KACH,CAAC;CACH,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,4CAA4C,EAAE,CAAC,CAAC;AAEvE;;;;;;GAMG;AACH,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAW,EAAE,CAC3C,IAAA,qBAAS,EAAC,KAAK,CAAC,IAAI,IAAA,4BAAgB,EAAC,KAAK,CAAC,CAAC;AAE9C;;GAEG;AACH,MAAM,oBAAoB,GAAG,OAAC;KAC3B,KAAK,CACJ,OAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,EAAE,yBAAyB,EAAE,YAAY,CAAC,CAAC,CACxE;KACA,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,gDAAgD,EAAE,CAAC;KACnE,MAAM,CACL,CAAC,KAAK,EAAE,EAAE;IACR,2EAA2E;IAC3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YACvB,yEAAyE;YACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9B,IACE,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC;gBACtB,CAAC,CAAC,IAAA,qBAAS,EAAC,QAAQ,CAAC,IAAI,IAAA,4BAAgB,EAAC,QAAQ,CAAC,CAAC,EACpD,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,EACD,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAC7D;KACA,MAAM,CACL,CAAC,KAAK,EAAE,EAAE;IACR,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACvB,wCAAwC;IACxC,IAAI,IAAA,oBAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;QACpB,kEAAkE;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,6CAA6C;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,MAAM,KAAK,SAAS,IAAI,IAAA,oBAAQ,EAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,oFAAoF;IACpF,OAAO,KAAK,CAAC;AACf,CAAC,EACD;IACE,KAAK,EACH,2GAA2G;CAC9G,CACF;KACA,IAAI,CAAC;IACJ,WAAW,EAAE,0DAA0D;CACxE,CAAC,CAAC;AAEL;;;;;;;;;GASG;AACI,MAAM,kBAAkB,GAAG,CAChC,KAAc,EACa,EAAE;IAC7B,OAAO,sBAAsB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AACzD,CAAC,CAAC;AAJW,QAAA,kBAAkB,sBAI7B;AAEF;;;;;;;GAOG;AACI,MAAM,uBAAuB,GAAG,CACrC,KAAc,EACkB,EAAE;IAClC,OAAO,2BAA2B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AAC9D,CAAC,CAAC;AAJW,QAAA,uBAAuB,2BAIlC;AAEF;;;;GAIG;AACU,QAAA,0BAA0B,GAAG,OAAC;KACxC,KAAK,CAAC,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,CAAC;KACtD,IAAI,CAAC,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC,CAAC;AAE7D;;;;GAIG;AACU,QAAA,+BAA+B,GAAG,OAAC;KAC7C,KAAK,CAAC,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,CAAC;KACvD,IAAI,CAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"internal-schema.d.ts","sourceRoot":"","sources":["../src/internal-schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"internal-schema.d.ts","sourceRoot":"","sources":["../src/internal-schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
package/dist/internal-schema.js
DELETED
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Internal schemas
|
|
3
|
-
*
|
|
4
|
-
* @internal
|
|
5
|
-
* @packageDocumentation
|
|
6
|
-
*/
|
|
7
|
-
import { z } from 'zod';
|
|
8
|
-
import { isPhrase, isStandardSchema, isZodType } from "./guards.js";
|
|
9
|
-
/**
|
|
10
|
-
* Schema for {@link AssertionFailure}.
|
|
11
|
-
*
|
|
12
|
-
* @internal
|
|
13
|
-
*/
|
|
14
|
-
// Note: We use a loose type here because z.function() has complex
|
|
15
|
-
// inference that doesn't exactly match our AssertionFailure interface.
|
|
16
|
-
// This schema is only used for validation (safeParse), not for type inference.
|
|
17
|
-
const AssertionFailureSchema = z
|
|
18
|
-
.object({
|
|
19
|
-
actual: z
|
|
20
|
-
.unknown()
|
|
21
|
-
.optional()
|
|
22
|
-
.meta({
|
|
23
|
-
description: 'The actual value or description of what actually occurred',
|
|
24
|
-
}),
|
|
25
|
-
diff: z
|
|
26
|
-
.string()
|
|
27
|
-
.optional()
|
|
28
|
-
.meta({
|
|
29
|
-
description: 'Pre-computed diff string that bypasses jest-diff',
|
|
30
|
-
}),
|
|
31
|
-
diffOptions: z
|
|
32
|
-
.record(z.string(), z.unknown())
|
|
33
|
-
.optional()
|
|
34
|
-
.meta({ description: 'Override options for jest-diff' }),
|
|
35
|
-
expected: z
|
|
36
|
-
.unknown()
|
|
37
|
-
.optional()
|
|
38
|
-
.meta({
|
|
39
|
-
description: 'The expected value or description of what was expected to occur',
|
|
40
|
-
}),
|
|
41
|
-
formatActual: z
|
|
42
|
-
.function()
|
|
43
|
-
.optional()
|
|
44
|
-
.meta({
|
|
45
|
-
description: 'Custom formatter for actual value in diff output',
|
|
46
|
-
}),
|
|
47
|
-
formatExpected: z
|
|
48
|
-
.function()
|
|
49
|
-
.optional()
|
|
50
|
-
.meta({
|
|
51
|
-
description: 'Custom formatter for expected value in diff output',
|
|
52
|
-
}),
|
|
53
|
-
message: z
|
|
54
|
-
.string()
|
|
55
|
-
.optional()
|
|
56
|
-
.meta({ description: 'A human-readable message describing the failure' }),
|
|
57
|
-
})
|
|
58
|
-
.meta({
|
|
59
|
-
description: 'Potential return type of an assertion implementation function',
|
|
60
|
-
});
|
|
61
|
-
/**
|
|
62
|
-
* @internal
|
|
63
|
-
*/
|
|
64
|
-
const ZodTypeSchema = z
|
|
65
|
-
.custom(isZodType, {
|
|
66
|
-
error: 'Must be a Zod schema',
|
|
67
|
-
})
|
|
68
|
-
.meta({ description: 'A Zod schema within AssertionParts' });
|
|
69
|
-
/**
|
|
70
|
-
* @internal
|
|
71
|
-
*/
|
|
72
|
-
const StandardSchemaSchema = z
|
|
73
|
-
.custom(isStandardSchema, {
|
|
74
|
-
error: 'Must be a Standard Schema v1',
|
|
75
|
-
})
|
|
76
|
-
.meta({ description: 'A Standard Schema v1 within AssertionParts' });
|
|
77
|
-
/**
|
|
78
|
-
* Schema that accepts either Zod or Standard Schema validators.
|
|
79
|
-
*
|
|
80
|
-
* @internal
|
|
81
|
-
*/
|
|
82
|
-
const SchemaSchema = z
|
|
83
|
-
.union([ZodTypeSchema, StandardSchemaSchema])
|
|
84
|
-
.meta({ description: 'A Zod schema or Standard Schema v1' });
|
|
85
|
-
/** @internal */
|
|
86
|
-
const BaseAssertionParseRequestSchema = z.object({
|
|
87
|
-
subject: z
|
|
88
|
-
.unknown()
|
|
89
|
-
.meta({ description: 'The subject value to be validated' }),
|
|
90
|
-
});
|
|
91
|
-
/**
|
|
92
|
-
* @internal
|
|
93
|
-
*/
|
|
94
|
-
const AssertionParseRequestSchema = z.union([
|
|
95
|
-
z.object({
|
|
96
|
-
...BaseAssertionParseRequestSchema.shape,
|
|
97
|
-
schema: SchemaSchema.describe('The sync schema to validate against'),
|
|
98
|
-
}),
|
|
99
|
-
z.object({
|
|
100
|
-
...BaseAssertionParseRequestSchema.shape,
|
|
101
|
-
asyncSchema: SchemaSchema.describe('The async schema to validate against'),
|
|
102
|
-
}),
|
|
103
|
-
]);
|
|
104
|
-
/**
|
|
105
|
-
* @internal
|
|
106
|
-
*/
|
|
107
|
-
const PhraseLiteralSchema = z
|
|
108
|
-
.stringFormat('PhraseLiteral', (value) => !value.startsWith('not '), {
|
|
109
|
-
error: 'Phrase literals may not begin with "not "',
|
|
110
|
-
})
|
|
111
|
-
.min(1, { error: 'Phrase literals must be at least 1 character long' })
|
|
112
|
-
.meta({ description: 'A phrase literal within AssertionParts' });
|
|
113
|
-
/**
|
|
114
|
-
* @internal
|
|
115
|
-
*/
|
|
116
|
-
const PhraseLiteralChoiceSchema = z
|
|
117
|
-
.array(PhraseLiteralSchema)
|
|
118
|
-
.min(1, { error: 'Phrase literal choices must have at least one option' })
|
|
119
|
-
.meta({
|
|
120
|
-
description: 'A choice of phrase literals, represented as an array of strings, within AssertionParts',
|
|
121
|
-
});
|
|
122
|
-
/**
|
|
123
|
-
* @internal
|
|
124
|
-
*/
|
|
125
|
-
const AssertionImplSchemaSync = z
|
|
126
|
-
.union([
|
|
127
|
-
SchemaSchema,
|
|
128
|
-
z.function({
|
|
129
|
-
input: z.tuple([z.unknown()], z.unknown()),
|
|
130
|
-
output: z.union([
|
|
131
|
-
z.void(),
|
|
132
|
-
z.boolean(),
|
|
133
|
-
SchemaSchema,
|
|
134
|
-
AssertionFailureSchema,
|
|
135
|
-
AssertionParseRequestSchema,
|
|
136
|
-
]),
|
|
137
|
-
}),
|
|
138
|
-
])
|
|
139
|
-
.meta({ description: 'A synchronous assertion implementation function' });
|
|
140
|
-
const AssertionImplSchemaAsync = z
|
|
141
|
-
.union([
|
|
142
|
-
SchemaSchema,
|
|
143
|
-
z.function({
|
|
144
|
-
input: z.tuple([z.unknown()], z.unknown()),
|
|
145
|
-
output: z.union([
|
|
146
|
-
z.void(),
|
|
147
|
-
z.boolean(),
|
|
148
|
-
SchemaSchema,
|
|
149
|
-
AssertionFailureSchema,
|
|
150
|
-
AssertionParseRequestSchema,
|
|
151
|
-
z.promise(z.void()),
|
|
152
|
-
z.promise(z.boolean()),
|
|
153
|
-
z.promise(SchemaSchema),
|
|
154
|
-
z.promise(AssertionFailureSchema),
|
|
155
|
-
z.promise(AssertionParseRequestSchema),
|
|
156
|
-
]),
|
|
157
|
-
}),
|
|
158
|
-
])
|
|
159
|
-
.meta({ description: 'An async assertion implementation function' });
|
|
160
|
-
/**
|
|
161
|
-
* Checks if a value is a schema (Zod or StandardSchema)
|
|
162
|
-
*
|
|
163
|
-
* @function
|
|
164
|
-
* @param value - Value to check
|
|
165
|
-
* @returns True if the value is a schema
|
|
166
|
-
*/
|
|
167
|
-
const isSchema = (value) => isZodType(value) || isStandardSchema(value);
|
|
168
|
-
/**
|
|
169
|
-
* @internal
|
|
170
|
-
*/
|
|
171
|
-
const AssertionPartsSchema = z
|
|
172
|
-
.array(z.union([PhraseLiteralSchema, PhraseLiteralChoiceSchema, SchemaSchema]))
|
|
173
|
-
.min(1, { error: 'At least one part is required for an assertion' })
|
|
174
|
-
.refine((parts) => {
|
|
175
|
-
// Special validation for 'and': it can only appear if followed by a schema
|
|
176
|
-
for (let i = 0; i < parts.length; i++) {
|
|
177
|
-
if (parts[i] === 'and') {
|
|
178
|
-
// 'and' must be followed by another part, and that part must be a schema
|
|
179
|
-
const nextPart = parts[i + 1];
|
|
180
|
-
if (i === parts.length - 1 ||
|
|
181
|
-
!(isZodType(nextPart) || isStandardSchema(nextPart))) {
|
|
182
|
-
return false;
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
return true;
|
|
187
|
-
}, { error: '"and" can only appear when followed by a schema' })
|
|
188
|
-
.refine((parts) => {
|
|
189
|
-
const first = parts[0];
|
|
190
|
-
// Position 0 must be a schema or phrase
|
|
191
|
-
if (isPhrase(first)) {
|
|
192
|
-
// Shorthand: phrase-first means subject is implicitly z.unknown()
|
|
193
|
-
return true;
|
|
194
|
-
}
|
|
195
|
-
if (isSchema(first)) {
|
|
196
|
-
// Subject-first: position 1 must be a phrase
|
|
197
|
-
const second = parts[1];
|
|
198
|
-
return second !== undefined && isPhrase(second);
|
|
199
|
-
}
|
|
200
|
-
// Position 0 is neither schema nor phrase (shouldn't happen after array validation)
|
|
201
|
-
return false;
|
|
202
|
-
}, {
|
|
203
|
-
error: 'Assertions must have a phrase at position 0 (phrase-first shorthand) or position 1 (after subject schema)',
|
|
204
|
-
})
|
|
205
|
-
.meta({
|
|
206
|
-
description: 'Assertion "parts" which define the input of an assertion',
|
|
207
|
-
});
|
|
208
|
-
/**
|
|
209
|
-
* Type guard for a {@link AssertionFailure}.
|
|
210
|
-
*
|
|
211
|
-
* This cannot live in `guards.ts` because it would create a cycle.
|
|
212
|
-
*
|
|
213
|
-
* @function
|
|
214
|
-
* @param value Value to check
|
|
215
|
-
* @returns `true` if value is an AssertionFailure
|
|
216
|
-
* @internal
|
|
217
|
-
*/
|
|
218
|
-
export const isAssertionFailure = (value) => {
|
|
219
|
-
return AssertionFailureSchema.safeParse(value).success;
|
|
220
|
-
};
|
|
221
|
-
/**
|
|
222
|
-
* Type guard for an {@link AssertionParseRequest}.
|
|
223
|
-
*
|
|
224
|
-
* @function
|
|
225
|
-
* @param value Value to check
|
|
226
|
-
* @returns `true` if value is an AssertionParseRequest
|
|
227
|
-
* @internal
|
|
228
|
-
*/
|
|
229
|
-
export const isAssertionParseRequest = (value) => {
|
|
230
|
-
return AssertionParseRequestSchema.safeParse(value).success;
|
|
231
|
-
};
|
|
232
|
-
/**
|
|
233
|
-
* Schema for the input parameters of {@link createAssertion}.
|
|
234
|
-
*
|
|
235
|
-
* @internal
|
|
236
|
-
*/
|
|
237
|
-
export const CreateAssertionInputSchema = z
|
|
238
|
-
.tuple([AssertionPartsSchema, AssertionImplSchemaSync])
|
|
239
|
-
.meta({ description: 'Parameters for createAssertion()' });
|
|
240
|
-
/**
|
|
241
|
-
* Schema for the input parameters of {@link createAsyncAssertion}.
|
|
242
|
-
*
|
|
243
|
-
* @internal
|
|
244
|
-
*/
|
|
245
|
-
export const CreateAssertionInputSchemaAsync = z
|
|
246
|
-
.tuple([AssertionPartsSchema, AssertionImplSchemaAsync])
|
|
247
|
-
.meta({ description: 'Parameters for createAsyncAssertion()' });
|
|
248
|
-
//# sourceMappingURL=internal-schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"internal-schema.js","sourceRoot":"","sources":["../src/internal-schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,oBAAoB;AAEpE;;;;GAIG;AAEH,kEAAkE;AAClE,uEAAuE;AACvE,+EAA+E;AAC/E,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,MAAM,EAAE,CAAC;SACN,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EACT,2DAA2D;KAC9D,CAAC;IACJ,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EAAE,kDAAkD;KAChE,CAAC;IACJ,WAAW,EAAE,CAAC;SACX,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC/B,QAAQ,EAAE;SACV,IAAI,CAAC,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;IAC1D,QAAQ,EAAE,CAAC;SACR,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EACT,iEAAiE;KACpE,CAAC;IACJ,YAAY,EAAE,CAAC;SACZ,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EAAE,kDAAkD;KAChE,CAAC;IACJ,cAAc,EAAE,CAAC;SACd,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,IAAI,CAAC;QACJ,WAAW,EAAE,oDAAoD;KAClE,CAAC;IACJ,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,IAAI,CAAC,EAAE,WAAW,EAAE,iDAAiD,EAAE,CAAC;CAC5E,CAAC;KACD,IAAI,CAAC;IACJ,WAAW,EACT,+DAA+D;CAClE,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,aAAa,GAAG,CAAC;KACpB,MAAM,CAAY,SAAS,EAAE;IAC5B,KAAK,EAAE,sBAAsB;CAC9B,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC,CAAC;AAE/D;;GAEG;AACH,MAAM,oBAAoB,GAAG,CAAC;KAC3B,MAAM,CAAC,gBAAgB,EAAE;IACxB,KAAK,EAAE,8BAA8B;CACtC,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,4CAA4C,EAAE,CAAC,CAAC;AAEvE;;;;GAIG;AACH,MAAM,YAAY,GAAG,CAAC;KACnB,KAAK,CAAC,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;KAC5C,IAAI,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE,CAAC,CAAC;AAE/D,gBAAgB;AAChB,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,IAAI,CAAC,EAAE,WAAW,EAAE,mCAAmC,EAAE,CAAC;CAC9D,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,2BAA2B,GAAqC,CAAC,CAAC,KAAK,CAAC;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,GAAG,+BAA+B,CAAC,KAAK;QACxC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,qCAAqC,CAAC;KACrE,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,GAAG,+BAA+B,CAAC,KAAK;QACxC,WAAW,EAAE,YAAY,CAAC,QAAQ,CAAC,sCAAsC,CAAC;KAC3E,CAAC;CACH,CAAqC,CAAC;AAEvC;;GAEG;AACH,MAAM,mBAAmB,GAAG,CAAC;KAC1B,YAAY,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;IACnE,KAAK,EAAE,2CAA2C;CACnD,CAAC;KACD,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,mDAAmD,EAAE,CAAC;KACtE,IAAI,CAAC,EAAE,WAAW,EAAE,wCAAwC,EAAE,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,yBAAyB,GAAG,CAAC;KAChC,KAAK,CAAC,mBAAmB,CAAC;KAC1B,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,sDAAsD,EAAE,CAAC;KACzE,IAAI,CAAC;IACJ,WAAW,EACT,wFAAwF;CAC3F,CAAC,CAAC;AACL;;GAEG;AACH,MAAM,uBAAuB,GAAG,CAAC;KAC9B,KAAK,CAAC;IACL,YAAY;IACZ,CAAC,CAAC,QAAQ,CAAC;QACT,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC;YACd,CAAC,CAAC,IAAI,EAAE;YACR,CAAC,CAAC,OAAO,EAAE;YACX,YAAY;YACZ,sBAAsB;YACtB,2BAA2B;SAC5B,CAAC;KACH,CAAC;CACH,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,iDAAiD,EAAE,CAAC,CAAC;AAE5E,MAAM,wBAAwB,GAAG,CAAC;KAC/B,KAAK,CAAC;IACL,YAAY;IACZ,CAAC,CAAC,QAAQ,CAAC;QACT,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC;YACd,CAAC,CAAC,IAAI,EAAE;YACR,CAAC,CAAC,OAAO,EAAE;YACX,YAAY;YACZ,sBAAsB;YACtB,2BAA2B;YAC3B,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACnB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACtB,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;YACvB,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC;YACjC,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC;SACvC,CAAC;KACH,CAAC;CACH,CAAC;KACD,IAAI,CAAC,EAAE,WAAW,EAAE,4CAA4C,EAAE,CAAC,CAAC;AAEvE;;;;;;GAMG;AACH,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAW,EAAE,CAC3C,SAAS,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC;AAE9C;;GAEG;AACH,MAAM,oBAAoB,GAAG,CAAC;KAC3B,KAAK,CACJ,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,EAAE,yBAAyB,EAAE,YAAY,CAAC,CAAC,CACxE;KACA,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,gDAAgD,EAAE,CAAC;KACnE,MAAM,CACL,CAAC,KAAK,EAAE,EAAE;IACR,2EAA2E;IAC3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YACvB,yEAAyE;YACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9B,IACE,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC;gBACtB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC,EACpD,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,EACD,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAC7D;KACA,MAAM,CACL,CAAC,KAAK,EAAE,EAAE;IACR,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACvB,wCAAwC;IACxC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,kEAAkE;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,6CAA6C;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,MAAM,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,oFAAoF;IACpF,OAAO,KAAK,CAAC;AACf,CAAC,EACD;IACE,KAAK,EACH,2GAA2G;CAC9G,CACF;KACA,IAAI,CAAC;IACJ,WAAW,EAAE,0DAA0D;CACxE,CAAC,CAAC;AAEL;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,KAAc,EACa,EAAE;IAC7B,OAAO,sBAAsB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AACzD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,KAAc,EACkB,EAAE;IAClC,OAAO,2BAA2B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AAC9D,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,KAAK,CAAC,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,CAAC;KACtD,IAAI,CAAC,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC;KAC7C,KAAK,CAAC,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,CAAC;KACvD,IAAI,CAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC,CAAC"}
|
package/dist/metadata.cjs
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Defines Bupkis' Zod metadata registry
|
|
4
|
-
*
|
|
5
|
-
* @packageDocumentation
|
|
6
|
-
*/
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.BupkisRegistry = void 0;
|
|
9
|
-
const zod_1 = require("zod");
|
|
10
|
-
const constant_js_1 = require("./constant.cjs");
|
|
11
|
-
/**
|
|
12
|
-
* Zod metadata registry for Bupkis
|
|
13
|
-
*/
|
|
14
|
-
exports.BupkisRegistry = zod_1.z.registry();
|
|
15
|
-
/**
|
|
16
|
-
* Base schema for all metadata
|
|
17
|
-
*/
|
|
18
|
-
const BaseBupkisMetadataSchema = zod_1.z.object({
|
|
19
|
-
description: zod_1.z
|
|
20
|
-
.string()
|
|
21
|
-
.optional()
|
|
22
|
-
.meta({ description: 'Human-friendly description' }),
|
|
23
|
-
name: zod_1.z
|
|
24
|
-
.string()
|
|
25
|
-
.optional()
|
|
26
|
-
.meta({ description: 'Name used when rendering Assertion as a string' }),
|
|
27
|
-
parameter: zod_1.z
|
|
28
|
-
.string()
|
|
29
|
-
.optional()
|
|
30
|
-
.meta({ description: 'Parameter "type" to use in documentation' }),
|
|
31
|
-
});
|
|
32
|
-
/**
|
|
33
|
-
* Base schema for metadata referring to string literal flag
|
|
34
|
-
*/
|
|
35
|
-
const PhraseLiteralMetadataSchema = zod_1.z.object({
|
|
36
|
-
...BaseBupkisMetadataSchema.shape,
|
|
37
|
-
[constant_js_1.kStringLiteral]: zod_1.z.literal(true),
|
|
38
|
-
});
|
|
39
|
-
/**
|
|
40
|
-
* Final schema for Bupkis registry
|
|
41
|
-
*/
|
|
42
|
-
// TODO: Figure out how to make this rule allow type-only usage. Or just export it and tag it.
|
|
43
|
-
const _BupkisRegistrySchema = zod_1.z.union([
|
|
44
|
-
zod_1.z.object({ ...BaseBupkisMetadataSchema.shape }),
|
|
45
|
-
zod_1.z.object({
|
|
46
|
-
...PhraseLiteralMetadataSchema.shape,
|
|
47
|
-
value: zod_1.z.string(),
|
|
48
|
-
values: zod_1.z.never().optional(),
|
|
49
|
-
}),
|
|
50
|
-
zod_1.z.object({
|
|
51
|
-
...PhraseLiteralMetadataSchema.shape,
|
|
52
|
-
value: zod_1.z.never().optional(),
|
|
53
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
54
|
-
values: zod_1.z.tuple([zod_1.z.string()]).rest(zod_1.z.string()).readonly(),
|
|
55
|
-
}),
|
|
56
|
-
]);
|
|
57
|
-
//# sourceMappingURL=metadata.js.map
|
package/dist/metadata.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,6BAAwB;AAExB,gDAA+C;AAO/C;;GAEG;AACU,QAAA,cAAc,GAAG,OAAC,CAAC,QAAQ,EAAc,CAAC;AAEvD;;GAEG;AACH,MAAM,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,IAAI,CAAC,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;IACtD,IAAI,EAAE,OAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,IAAI,CAAC,EAAE,WAAW,EAAE,gDAAgD,EAAE,CAAC;IAC1E,SAAS,EAAE,OAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,IAAI,CAAC,EAAE,WAAW,EAAE,0CAA0C,EAAE,CAAC;CACrE,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,2BAA2B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,GAAG,wBAAwB,CAAC,KAAK;IACjC,CAAC,4BAAc,CAAC,EAAE,OAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAClC,CAAC,CAAC;AAEH;;GAEG;AACH,8FAA8F;AAE9F,MAAM,qBAAqB,GAAG,OAAC,CAAC,KAAK,CAAC;IACpC,OAAC,CAAC,MAAM,CAAC,EAAE,GAAG,wBAAwB,CAAC,KAAK,EAAE,CAAC;IAC/C,OAAC,CAAC,MAAM,CAAC;QACP,GAAG,2BAA2B,CAAC,KAAK;QACpC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,OAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,GAAG,2BAA2B,CAAC,KAAK;QACpC,KAAK,EAAE,OAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;QAC3B,gDAAgD;QAChD,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;KAC1D,CAAC;CACH,CAAC,CAAC"}
|