@xyo-network/xns-record-payload-plugins 5.3.1 → 5.3.3
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/Address/Payload.d.ts +1 -1
- package/dist/browser/Address/Payload.d.ts.map +1 -1
- package/dist/browser/DNS/Witness/Payload/Request.d.ts +2 -2
- package/dist/browser/DNS/Witness/Payload/Response.d.ts +2 -2
- package/dist/browser/Domain/Domain.d.ts +2 -2
- package/dist/browser/Domain/DomainLease.d.ts +2 -2
- package/dist/browser/DomainRegistration/DomainRegistration.d.ts +3 -3
- package/dist/browser/DomainRegistration/DomainRegistration.d.ts.map +1 -1
- package/dist/browser/DomainRegistration/DomainRegistrationLease.d.ts +2 -2
- package/dist/browser/Duration/validation/validateBoundWitnessAndDuration.d.ts.map +1 -1
- package/dist/browser/Hash/Payload.d.ts +1 -1
- package/dist/browser/Hash/Payload.d.ts.map +1 -1
- package/dist/browser/diviner/lib/parseEstimatesFromArray.d.ts.map +1 -1
- package/dist/browser/index.mjs +9 -10
- package/dist/browser/index.mjs.map +1 -1
- package/dist/neutral/Address/Payload.d.ts +1 -1
- package/dist/neutral/Address/Payload.d.ts.map +1 -1
- package/dist/neutral/DNS/Witness/Payload/Request.d.ts +2 -2
- package/dist/neutral/DNS/Witness/Payload/Response.d.ts +2 -2
- package/dist/neutral/Domain/Domain.d.ts +2 -2
- package/dist/neutral/Domain/DomainLease.d.ts +2 -2
- package/dist/neutral/DomainRegistration/DomainRegistration.d.ts +3 -3
- package/dist/neutral/DomainRegistration/DomainRegistration.d.ts.map +1 -1
- package/dist/neutral/DomainRegistration/DomainRegistrationLease.d.ts +2 -2
- package/dist/neutral/Duration/validation/validateBoundWitnessAndDuration.d.ts.map +1 -1
- package/dist/neutral/Hash/Payload.d.ts +1 -1
- package/dist/neutral/Hash/Payload.d.ts.map +1 -1
- package/dist/neutral/diviner/lib/parseEstimatesFromArray.d.ts.map +1 -1
- package/dist/neutral/index.mjs +9 -10
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/node/Address/Payload.d.ts +1 -1
- package/dist/node/Address/Payload.d.ts.map +1 -1
- package/dist/node/DNS/Witness/Payload/Request.d.ts +2 -2
- package/dist/node/DNS/Witness/Payload/Response.d.ts +2 -2
- package/dist/node/Domain/Domain.d.ts +2 -2
- package/dist/node/Domain/DomainLease.d.ts +2 -2
- package/dist/node/DomainRegistration/DomainRegistration.d.ts +3 -3
- package/dist/node/DomainRegistration/DomainRegistration.d.ts.map +1 -1
- package/dist/node/DomainRegistration/DomainRegistrationLease.d.ts +2 -2
- package/dist/node/Duration/validation/validateBoundWitnessAndDuration.d.ts.map +1 -1
- package/dist/node/Hash/Payload.d.ts +1 -1
- package/dist/node/Hash/Payload.d.ts.map +1 -1
- package/dist/node/diviner/lib/parseEstimatesFromArray.d.ts.map +1 -1
- package/dist/node/index.mjs +9 -10
- package/dist/node/index.mjs.map +1 -1
- package/package.json +32 -26
- package/src/Address/Payload.ts +0 -22
- package/src/Address/index.ts +0 -1
- package/src/DNS/Witness/Config.ts +0 -28
- package/src/DNS/Witness/Params.ts +0 -6
- package/src/DNS/Witness/Payload/Payload.ts +0 -4
- package/src/DNS/Witness/Payload/Request.ts +0 -39
- package/src/DNS/Witness/Payload/Response.ts +0 -28
- package/src/DNS/Witness/Payload/index.ts +0 -3
- package/src/DNS/Witness/Schema.ts +0 -4
- package/src/DNS/Witness/index.ts +0 -4
- package/src/DNS/index.ts +0 -2
- package/src/DNS/types/Answer.ts +0 -5
- package/src/DNS/types/Header.ts +0 -96
- package/src/DNS/types/OperationCodes.ts +0 -13
- package/src/DNS/types/Record.ts +0 -9
- package/src/DNS/types/Request.ts +0 -39
- package/src/DNS/types/ResourceRecord.ts +0 -229
- package/src/DNS/types/Response.ts +0 -12
- package/src/DNS/types/ResponseCodes.ts +0 -34
- package/src/DNS/types/index.ts +0 -8
- package/src/Domain/Domain.ts +0 -47
- package/src/Domain/DomainLease.ts +0 -35
- package/src/Domain/index.ts +0 -2
- package/src/DomainEstimate/DomainEstimate.ts +0 -11
- package/src/DomainEstimate/index.ts +0 -1
- package/src/DomainRegistration/DomainRegistration.ts +0 -42
- package/src/DomainRegistration/DomainRegistrationLease.ts +0 -39
- package/src/DomainRegistration/index.ts +0 -2
- package/src/Duration/Duration.ts +0 -11
- package/src/Duration/index.ts +0 -2
- package/src/Duration/validation/index.ts +0 -2
- package/src/Duration/validation/validateBoundWitness.ts +0 -13
- package/src/Duration/validation/validateBoundWitnessAndDuration.ts +0 -24
- package/src/Duration/validation/validateBoundWitnessWithDuration.ts +0 -16
- package/src/Duration/validation/validateDuration.ts +0 -14
- package/src/Hash/Payload.ts +0 -22
- package/src/Hash/index.ts +0 -1
- package/src/diviner/DomainLeaseEstimateDiviner/ErrorDetails/ErrorCodes.ts +0 -38
- package/src/diviner/DomainLeaseEstimateDiviner/ErrorDetails/Payload.ts +0 -46
- package/src/diviner/DomainLeaseEstimateDiviner/ErrorDetails/index.ts +0 -2
- package/src/diviner/DomainLeaseEstimateDiviner/Schema.ts +0 -6
- package/src/diviner/DomainLeaseEstimateDiviner/index.ts +0 -2
- package/src/diviner/index.ts +0 -2
- package/src/diviner/lib/index.ts +0 -1
- package/src/diviner/lib/parseEstimatesFromArray.ts +0 -82
- package/src/index.ts +0 -8
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { DomainLeaseEstimateDivinerValidationErrorDetailsSchema } from '../Schema.ts'
|
|
2
|
-
import type { DomainLeaseEstimateDivinerValidationErrorDetails, ErrorDetailsDictionary } from './Payload.ts'
|
|
3
|
-
|
|
4
|
-
// export type DomainLeaseEstimateDivinerErrorDetailsDictionaryErrorCode = keyof typeof DomainLeaseEstimateDivinerErrorDetailsDictionary
|
|
5
|
-
export type DomainLeaseEstimateDivinerErrorDetailsDictionaryErrorCode = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
|
|
6
|
-
|
|
7
|
-
export const DomainLeaseEstimateDivinerErrorDetailsDictionary: Readonly<
|
|
8
|
-
Readonly<Record<DomainLeaseEstimateDivinerErrorDetailsDictionaryErrorCode, DomainLeaseEstimateDivinerValidationErrorDetails>>
|
|
9
|
-
& ErrorDetailsDictionary
|
|
10
|
-
> = {
|
|
11
|
-
0: {
|
|
12
|
-
code: '0', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Success',
|
|
13
|
-
},
|
|
14
|
-
1: {
|
|
15
|
-
code: '1', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Invalid casing',
|
|
16
|
-
},
|
|
17
|
-
2: {
|
|
18
|
-
code: '2', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Invalid coin signature',
|
|
19
|
-
},
|
|
20
|
-
3: {
|
|
21
|
-
code: '3', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Invalid length',
|
|
22
|
-
},
|
|
23
|
-
4: {
|
|
24
|
-
code: '4', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Invalid name',
|
|
25
|
-
},
|
|
26
|
-
5: {
|
|
27
|
-
code: '5', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Reserved fragment',
|
|
28
|
-
},
|
|
29
|
-
6: {
|
|
30
|
-
code: '6', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Reserved name',
|
|
31
|
-
},
|
|
32
|
-
7: {
|
|
33
|
-
code: '7', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Reserved string',
|
|
34
|
-
},
|
|
35
|
-
8: {
|
|
36
|
-
code: '8', schema: DomainLeaseEstimateDivinerValidationErrorDetailsSchema, title: 'Invalid TLD',
|
|
37
|
-
},
|
|
38
|
-
} as const
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import type { Payload } from '@xyo-network/payload-model'
|
|
2
|
-
import { isPayloadOfSchemaType, isPayloadOfSchemaTypeWithSources } from '@xyo-network/payload-model'
|
|
3
|
-
|
|
4
|
-
import { DomainLeaseEstimateDivinerValidationErrorDetailsSchema } from '../Schema.ts'
|
|
5
|
-
|
|
6
|
-
export interface ErrorDetails<TErrorCode extends string | undefined = string | undefined> {
|
|
7
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
8
|
-
[key: string]: any // Index signature for any other additional properties
|
|
9
|
-
/**
|
|
10
|
-
* A string code indicating the error type.
|
|
11
|
-
*/
|
|
12
|
-
code: TErrorCode
|
|
13
|
-
/**
|
|
14
|
-
* A human-readable explanation specific to this occurrence of the problem
|
|
15
|
-
*/
|
|
16
|
-
detail?: string
|
|
17
|
-
/**
|
|
18
|
-
* A short, human-readable summary of the problem type.
|
|
19
|
-
*/
|
|
20
|
-
title?: string
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export type ErrorDetailsDictionary<T extends number = number> = {
|
|
24
|
-
readonly [K in T]: ErrorDetails<`${K}`>
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* A payment authorization token payload
|
|
29
|
-
*/
|
|
30
|
-
export type DomainLeaseEstimateDivinerValidationErrorDetails<TErrorCode extends string | undefined = string> = Payload<
|
|
31
|
-
ErrorDetails<TErrorCode>,
|
|
32
|
-
DomainLeaseEstimateDivinerValidationErrorDetailsSchema
|
|
33
|
-
>
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Identity function for DomainLeaseEstimateDivinerValidationErrorDetails payload
|
|
37
|
-
*/
|
|
38
|
-
export const isDomainLeaseEstimateDivinerValidationErrorDetails = isPayloadOfSchemaType<DomainLeaseEstimateDivinerValidationErrorDetails>(
|
|
39
|
-
DomainLeaseEstimateDivinerValidationErrorDetailsSchema,
|
|
40
|
-
)
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Identity function for DomainLeaseEstimateDivinerValidationErrorDetails payload with sources
|
|
44
|
-
*/
|
|
45
|
-
export const isDomainLeaseEstimateDivinerValidationErrorDetailsWithSources
|
|
46
|
-
= isPayloadOfSchemaTypeWithSources<DomainLeaseEstimateDivinerValidationErrorDetails>(DomainLeaseEstimateDivinerValidationErrorDetailsSchema)
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { asSchema } from '@xyo-network/payload-model'
|
|
2
|
-
|
|
3
|
-
export const DomainLeaseEstimateDivinerValidationErrorDetailsSchema
|
|
4
|
-
= asSchema('network.xyo.diviner.ns.domain.registration.lease.estimate.validation.error.details', true)
|
|
5
|
-
|
|
6
|
-
export type DomainLeaseEstimateDivinerValidationErrorDetailsSchema = typeof DomainLeaseEstimateDivinerValidationErrorDetailsSchema
|
package/src/diviner/index.ts
DELETED
package/src/diviner/lib/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './parseEstimatesFromArray.ts'
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { findAs } from '@xylabs/array'
|
|
2
|
-
import { exists } from '@xylabs/exists'
|
|
3
|
-
import type { BoundWitness } from '@xyo-network/boundwitness-model'
|
|
4
|
-
import { isBoundWitness } from '@xyo-network/boundwitness-model'
|
|
5
|
-
import type { HashLeaseEstimate } from '@xyo-network/diviner-hash-lease'
|
|
6
|
-
import { asHashLeaseEstimate, HashLeaseEstimateSchema } from '@xyo-network/diviner-hash-lease'
|
|
7
|
-
import { PayloadBuilder } from '@xyo-network/payload-builder'
|
|
8
|
-
import type {
|
|
9
|
-
Payload, Schema, WithSources,
|
|
10
|
-
} from '@xyo-network/payload-model'
|
|
11
|
-
|
|
12
|
-
import type { DomainRegistrationLease } from '../../DomainRegistration/index.ts'
|
|
13
|
-
import { asDomainRegistrationLeaseWithSources, DomainRegistrationLeaseSchema } from '../../DomainRegistration/index.ts'
|
|
14
|
-
|
|
15
|
-
export type Estimate = [
|
|
16
|
-
BoundWitness,
|
|
17
|
-
WithSources<HashLeaseEstimate>,
|
|
18
|
-
WithSources<DomainRegistrationLease>,
|
|
19
|
-
]
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Parses a generic array of payloads into estimates
|
|
23
|
-
* @param payloads An array of payloads
|
|
24
|
-
* @returns Parsed estimates
|
|
25
|
-
*/
|
|
26
|
-
export const parseEstimatesFromArray = async (payloads?: Payload[]): Promise<Estimate[]> => {
|
|
27
|
-
if (!payloads) return []
|
|
28
|
-
const bws = payloads
|
|
29
|
-
// Find all bound witnesses
|
|
30
|
-
.filter(isBoundWitness)
|
|
31
|
-
// that have the required estimate payloads
|
|
32
|
-
.filter(hasEstimatePayloads) ?? []
|
|
33
|
-
if (bws.length === 0) return []
|
|
34
|
-
const hashMap = await PayloadBuilder.toAllHashMap(payloads)
|
|
35
|
-
return bws.map<Estimate | undefined>((bw) => {
|
|
36
|
-
const hashLeaseEstimate = getPayloadBySchemaFromBoundWitness<WithSources<HashLeaseEstimate>>(
|
|
37
|
-
bw,
|
|
38
|
-
HashLeaseEstimateSchema,
|
|
39
|
-
hashMap,
|
|
40
|
-
asHashLeaseEstimate,
|
|
41
|
-
)
|
|
42
|
-
if (!hashLeaseEstimate) return
|
|
43
|
-
const domainLease = getPayloadBySchemaFromBoundWitness<WithSources<DomainRegistrationLease>>(
|
|
44
|
-
bw,
|
|
45
|
-
DomainRegistrationLeaseSchema,
|
|
46
|
-
hashMap,
|
|
47
|
-
asDomainRegistrationLeaseWithSources,
|
|
48
|
-
)
|
|
49
|
-
if (!domainLease) return
|
|
50
|
-
return [bw, hashLeaseEstimate, domainLease]
|
|
51
|
-
}).filter(exists)
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Tests if a BoundWitness has the required estimate payloads
|
|
56
|
-
* @param bw The BoundWitness to check for estimate payloads
|
|
57
|
-
* @returns True if the BoundWitness has the required estimate payloads, false otherwise
|
|
58
|
-
*/
|
|
59
|
-
const hasEstimatePayloads = (bw: BoundWitness): boolean => {
|
|
60
|
-
return bw.payload_schemas.includes(DomainRegistrationLeaseSchema)
|
|
61
|
-
&& bw.payload_schemas.includes(HashLeaseEstimateSchema)
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* Finds the first instance of a payload in a BoundWitness by schema
|
|
66
|
-
* @param bw The BoundWitness to extract the payload from
|
|
67
|
-
* @param schema The schema of the payload to extract
|
|
68
|
-
* @param hashMap The hashmap of the payloads
|
|
69
|
-
* @param identity An identity function to check if the payload is of the correct type
|
|
70
|
-
* @returns The payload if it exists or undefined
|
|
71
|
-
*/
|
|
72
|
-
const getPayloadBySchemaFromBoundWitness = <T extends Payload = Payload>(
|
|
73
|
-
bw: BoundWitness,
|
|
74
|
-
schema: Schema,
|
|
75
|
-
hashMap: Awaited<ReturnType<typeof PayloadBuilder.toHashMap>>,
|
|
76
|
-
identity: (payload: Payload) => T,
|
|
77
|
-
): T | undefined => {
|
|
78
|
-
const schemaIndex = bw.payload_schemas.indexOf(schema)
|
|
79
|
-
if (schemaIndex === -1) return
|
|
80
|
-
const hash = bw.payload_hashes[schemaIndex]
|
|
81
|
-
return findAs([hashMap[hash]], identity)
|
|
82
|
-
}
|
package/src/index.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export * from './Address/index.ts'
|
|
2
|
-
export * from './diviner/index.ts'
|
|
3
|
-
export * from './DNS/index.ts'
|
|
4
|
-
export * from './Domain/index.ts'
|
|
5
|
-
export * from './DomainEstimate/index.ts'
|
|
6
|
-
export * from './DomainRegistration/index.ts'
|
|
7
|
-
export * from './Duration/index.ts'
|
|
8
|
-
export * from './Hash/index.ts'
|