@xyo-network/boundwitness-model 5.1.24 → 5.2.1
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/browser/BoundWitness/BoundWitness.d.ts +112 -47
- package/dist/browser/BoundWitness/BoundWitness.d.ts.map +1 -1
- package/dist/browser/QueryBoundWitness.d.ts +2 -2
- package/dist/browser/QueryBoundWitness.d.ts.map +1 -1
- package/dist/browser/index.mjs +50 -8
- package/dist/browser/index.mjs.map +1 -1
- package/dist/browser/isBoundWitness.d.ts +41 -7
- package/dist/browser/isBoundWitness.d.ts.map +1 -1
- package/dist/neutral/BoundWitness/BoundWitness.d.ts +112 -47
- package/dist/neutral/BoundWitness/BoundWitness.d.ts.map +1 -1
- package/dist/neutral/QueryBoundWitness.d.ts +2 -2
- package/dist/neutral/QueryBoundWitness.d.ts.map +1 -1
- package/dist/neutral/index.mjs +50 -8
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/isBoundWitness.d.ts +41 -7
- package/dist/neutral/isBoundWitness.d.ts.map +1 -1
- package/dist/node/BoundWitness/BoundWitness.d.ts +112 -47
- package/dist/node/BoundWitness/BoundWitness.d.ts.map +1 -1
- package/dist/node/QueryBoundWitness.d.ts +2 -2
- package/dist/node/QueryBoundWitness.d.ts.map +1 -1
- package/dist/node/index.mjs +50 -8
- package/dist/node/index.mjs.map +1 -1
- package/dist/node/isBoundWitness.d.ts +41 -7
- package/dist/node/isBoundWitness.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/BoundWitness/BoundWitness.ts +64 -66
- package/src/QueryBoundWitness.ts +2 -2
- package/src/isBoundWitness.ts +2 -2
|
@@ -1,14 +1,48 @@
|
|
|
1
1
|
import type { WithStorageMeta } from '@xyo-network/payload-model';
|
|
2
2
|
import type { BoundWitness, Signed, Unsigned } from './BoundWitness/index.ts';
|
|
3
3
|
export declare const isBoundWitness: (value: unknown) => value is BoundWitness;
|
|
4
|
-
export declare const notBoundWitness: (x?: unknown | null) => x is
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
export declare const notBoundWitness: (x?: unknown | null) => x is {
|
|
5
|
+
schema: "network.xyo.boundwitness";
|
|
6
|
+
addresses: import("@xylabs/sdk-js").Address[];
|
|
7
|
+
payload_hashes: import("@xylabs/sdk-js").Hash[];
|
|
8
|
+
payload_schemas: string[];
|
|
9
|
+
previous_hashes: (import("@xylabs/sdk-js").Hash | null)[];
|
|
10
|
+
$signatures: (import("@xylabs/sdk-js").Hex | null)[];
|
|
11
|
+
$destination?: import("@xylabs/sdk-js").Address | undefined;
|
|
12
|
+
$sourceQuery?: import("@xylabs/sdk-js").Hash | undefined;
|
|
13
|
+
};
|
|
14
|
+
export declare const asBoundWitness: <T extends BoundWitness = BoundWitness>(payload?: unknown) => T | undefined;
|
|
15
|
+
export declare const asOptionalBoundWitness: (value: import("@xylabs/sdk-js").AnyNonPromise) => {
|
|
16
|
+
schema: "network.xyo.boundwitness";
|
|
17
|
+
addresses: import("@xylabs/sdk-js").Address[];
|
|
18
|
+
payload_hashes: import("@xylabs/sdk-js").Hash[];
|
|
19
|
+
payload_schemas: string[];
|
|
20
|
+
previous_hashes: (import("@xylabs/sdk-js").Hash | null)[];
|
|
21
|
+
$signatures: (import("@xylabs/sdk-js").Hex | null)[];
|
|
22
|
+
$destination?: import("@xylabs/sdk-js").Address | undefined;
|
|
23
|
+
$sourceQuery?: import("@xylabs/sdk-js").Hash | undefined;
|
|
24
|
+
} | undefined;
|
|
9
25
|
export declare const isBoundWitnessWithStorageMeta: (value: unknown) => value is WithStorageMeta<BoundWitness>;
|
|
10
|
-
export declare const asBoundWitnessWithStorageMeta: (value: import("
|
|
11
|
-
|
|
26
|
+
export declare const asBoundWitnessWithStorageMeta: (value: import("@xylabs/sdk-js").AnyNonPromise) => WithStorageMeta<{
|
|
27
|
+
schema: "network.xyo.boundwitness";
|
|
28
|
+
addresses: import("@xylabs/sdk-js").Address[];
|
|
29
|
+
payload_hashes: import("@xylabs/sdk-js").Hash[];
|
|
30
|
+
payload_schemas: string[];
|
|
31
|
+
previous_hashes: (import("@xylabs/sdk-js").Hash | null)[];
|
|
32
|
+
$signatures: (import("@xylabs/sdk-js").Hex | null)[];
|
|
33
|
+
$destination?: import("@xylabs/sdk-js").Address | undefined;
|
|
34
|
+
$sourceQuery?: import("@xylabs/sdk-js").Hash | undefined;
|
|
35
|
+
}> | undefined;
|
|
36
|
+
export declare const asOptionalBoundWitnessWithStorageMeta: (value: import("@xylabs/sdk-js").AnyNonPromise) => WithStorageMeta<{
|
|
37
|
+
schema: "network.xyo.boundwitness";
|
|
38
|
+
addresses: import("@xylabs/sdk-js").Address[];
|
|
39
|
+
payload_hashes: import("@xylabs/sdk-js").Hash[];
|
|
40
|
+
payload_schemas: string[];
|
|
41
|
+
previous_hashes: (import("@xylabs/sdk-js").Hash | null)[];
|
|
42
|
+
$signatures: (import("@xylabs/sdk-js").Hex | null)[];
|
|
43
|
+
$destination?: import("@xylabs/sdk-js").Address | undefined;
|
|
44
|
+
$sourceQuery?: import("@xylabs/sdk-js").Hash | undefined;
|
|
45
|
+
}> | undefined;
|
|
12
46
|
export declare function isSigned(value: unknown): value is Signed;
|
|
13
47
|
export declare function isSigned<T extends Unsigned>(value: T): value is Signed<T>;
|
|
14
48
|
export declare function isUnsigned(value: unknown): value is Unsigned;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isBoundWitness.d.ts","sourceRoot":"","sources":["../../src/isBoundWitness.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAKjE,OAAO,KAAK,EACV,YAAY,EAAE,MAAM,EAAE,QAAQ,EAC/B,MAAM,yBAAyB,CAAA;AAGhC,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,YAA8E,CAAA;AAEvI,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"isBoundWitness.d.ts","sourceRoot":"","sources":["../../src/isBoundWitness.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAKjE,OAAO,KAAK,EACV,YAAY,EAAE,MAAM,EAAE,QAAQ,EAC/B,MAAM,yBAAyB,CAAA;AAGhC,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,YAA8E,CAAA;AAEvI,eAAO,MAAM,eAAe;;;;;;;;;CAA2D,CAAA;AAIvF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,UAAU,OAAO,kBACjC,CAAA;AAEtD,eAAO,MAAM,sBAAsB;;;;;;;;;aAA+D,CAAA;AAElG,eAAO,MAAM,6BAA6B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,eAAe,CAAC,YAAY,CACZ,CAAA;AACxF,eAAO,MAAM,6BAA6B;;;;;;;;;cAA+F,CAAA;AACzI,eAAO,MAAM,qCAAqC;;;;;;;;;cAA+F,CAAA;AAEjJ,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAA;AACzD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,QAAQ,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;AAO1E,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAAA;AAC7D,wBAAgB,UAAU,CAAC,CAAC,SAAS,YAAY,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/boundwitness-model",
|
|
3
|
-
"version": "5.1
|
|
3
|
+
"version": "5.2.1",
|
|
4
4
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
"!**/*.test.*"
|
|
37
37
|
],
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@xylabs/
|
|
40
|
-
"@
|
|
41
|
-
"
|
|
39
|
+
"@xylabs/sdk-js": "~5.0.39",
|
|
40
|
+
"@xyo-network/payload-model": "~5.2.1",
|
|
41
|
+
"zod": "~4.1.12"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@types/node": "~24.10.1",
|
|
@@ -1,66 +1,64 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
} from '@xylabs/
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
$
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
export type
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
export
|
|
63
|
-
|
|
64
|
-
export type
|
|
65
|
-
|
|
66
|
-
export type AnyBoundWitness = BoundWitness<JsonObject>
|
|
1
|
+
import {
|
|
2
|
+
AddressZod, HashZod, HexZod,
|
|
3
|
+
} from '@xylabs/sdk-js'
|
|
4
|
+
import {
|
|
5
|
+
PayloadZod, SchemaZod, StorageMetaZod,
|
|
6
|
+
} from '@xyo-network/payload-model'
|
|
7
|
+
import * as z from 'zod'
|
|
8
|
+
|
|
9
|
+
import { BoundWitnessSchema } from './BoundWitnessSchema.ts'
|
|
10
|
+
|
|
11
|
+
const BoundWitnessRequiredFieldsZod = z.object({
|
|
12
|
+
addresses: z.array(AddressZod),
|
|
13
|
+
payload_hashes: z.array(HashZod),
|
|
14
|
+
payload_schemas: z.array(SchemaZod),
|
|
15
|
+
previous_hashes: z.array(HashZod.nullable()),
|
|
16
|
+
})
|
|
17
|
+
|
|
18
|
+
const BoundWitnessMetaZod = z.object({
|
|
19
|
+
$destination: AddressZod.optional(),
|
|
20
|
+
$sourceQuery: HashZod.optional(),
|
|
21
|
+
$signatures: z.array(z.union([HexZod, z.null()])),
|
|
22
|
+
})
|
|
23
|
+
|
|
24
|
+
export const BoundWitnessZod = PayloadZod
|
|
25
|
+
.extend({ schema: z.literal(BoundWitnessSchema) })
|
|
26
|
+
.extend(BoundWitnessRequiredFieldsZod.shape)
|
|
27
|
+
.extend(BoundWitnessMetaZod.shape)
|
|
28
|
+
.refine(data => data.$signatures.length === data.addresses.length, { message: '$signatures length must equal addresses length' })
|
|
29
|
+
|
|
30
|
+
export type BoundWitness = z.infer<typeof BoundWitnessZod>
|
|
31
|
+
|
|
32
|
+
export const AnyBoundWitnessZod = BoundWitnessZod
|
|
33
|
+
.catchall(z.any())
|
|
34
|
+
|
|
35
|
+
export type AnyBoundWitness = z.infer<typeof AnyBoundWitnessZod>
|
|
36
|
+
|
|
37
|
+
export const UnsignedBoundWitnessZod = BoundWitnessZod.refine(data => data.$signatures.includes(null), { message: 'all $signatures must be null' })
|
|
38
|
+
|
|
39
|
+
export type UnsignedBoundWitness = z.infer<typeof UnsignedBoundWitnessZod>
|
|
40
|
+
|
|
41
|
+
export const AnyUnsignedBoundWitnessZod = UnsignedBoundWitnessZod
|
|
42
|
+
.catchall(z.any())
|
|
43
|
+
|
|
44
|
+
export type AnyUnsignedBoundWitness = z.infer<typeof AnyUnsignedBoundWitnessZod>
|
|
45
|
+
|
|
46
|
+
export const UnsignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessZod
|
|
47
|
+
.safeExtend(BoundWitnessRequiredFieldsZod.shape)
|
|
48
|
+
.safeExtend(BoundWitnessMetaZod.shape)
|
|
49
|
+
.safeExtend(StorageMetaZod.shape)
|
|
50
|
+
|
|
51
|
+
export const SignedZod = z.object({ $signatures: z.array(HexZod) })
|
|
52
|
+
export const UnsignedZod = z.object({ $signatures: z.array(z.null()) })
|
|
53
|
+
|
|
54
|
+
export const SignedBoundWitnessZod = BoundWitnessZod.refine(data => !data.$signatures.includes(null), { message: 'all $signatures must not be null' })
|
|
55
|
+
|
|
56
|
+
export const SignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod
|
|
57
|
+
|
|
58
|
+
export const AnySignedBoundWitnessZod = UnsignedBoundWitnessZod.catchall(z.any())
|
|
59
|
+
|
|
60
|
+
export const AnySignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod.catchall(z.any())
|
|
61
|
+
|
|
62
|
+
export type Unsigned<T extends UnsignedBoundWitness = UnsignedBoundWitness> = T & z.infer<typeof UnsignedZod>
|
|
63
|
+
|
|
64
|
+
export type Signed<T extends UnsignedBoundWitness = UnsignedBoundWitness> = T & z.infer<typeof SignedZod>
|
package/src/QueryBoundWitness.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Hash } from '@xylabs/
|
|
1
|
+
import type { Hash } from '@xylabs/sdk-js'
|
|
2
2
|
import type { WithStorageMeta } from '@xyo-network/payload-model'
|
|
3
3
|
import { isStorageMeta } from '@xyo-network/payload-model'
|
|
4
4
|
|
|
@@ -10,7 +10,7 @@ export type QueryBoundWitnessFields = {
|
|
|
10
10
|
query: Hash
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
export type UnsignedQueryBoundWitness = BoundWitness
|
|
13
|
+
export type UnsignedQueryBoundWitness = BoundWitness & QueryBoundWitnessFields
|
|
14
14
|
|
|
15
15
|
export type QueryBoundWitness = UnsignedQueryBoundWitness
|
|
16
16
|
|
package/src/isBoundWitness.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AsObjectFactory } from '@xylabs/
|
|
1
|
+
import { AsObjectFactory } from '@xylabs/sdk-js'
|
|
2
2
|
import type { WithStorageMeta } from '@xyo-network/payload-model'
|
|
3
3
|
import {
|
|
4
4
|
isPayloadOfSchemaType, isStorageMeta, notPayloadOfSchemaType,
|
|
@@ -15,7 +15,7 @@ export const notBoundWitness = notPayloadOfSchemaType<BoundWitness>(BoundWitness
|
|
|
15
15
|
|
|
16
16
|
// TODO: Use AsObjectFactory here to match standard pattern
|
|
17
17
|
// TODO: Other as identity functions throw if not valid, this one returns undefined with is more of a asOptional behavior
|
|
18
|
-
export const asBoundWitness = <T extends BoundWitness
|
|
18
|
+
export const asBoundWitness = <T extends BoundWitness = BoundWitness>(payload?: unknown) =>
|
|
19
19
|
isBoundWitness(payload) ? (payload as T) : undefined
|
|
20
20
|
|
|
21
21
|
export const asOptionalBoundWitness = AsObjectFactory.createOptional<BoundWitness>(isBoundWitness)
|