@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.
Files changed (92) hide show
  1. package/dist/browser/Address/Payload.d.ts +1 -1
  2. package/dist/browser/Address/Payload.d.ts.map +1 -1
  3. package/dist/browser/DNS/Witness/Payload/Request.d.ts +2 -2
  4. package/dist/browser/DNS/Witness/Payload/Response.d.ts +2 -2
  5. package/dist/browser/Domain/Domain.d.ts +2 -2
  6. package/dist/browser/Domain/DomainLease.d.ts +2 -2
  7. package/dist/browser/DomainRegistration/DomainRegistration.d.ts +3 -3
  8. package/dist/browser/DomainRegistration/DomainRegistration.d.ts.map +1 -1
  9. package/dist/browser/DomainRegistration/DomainRegistrationLease.d.ts +2 -2
  10. package/dist/browser/Duration/validation/validateBoundWitnessAndDuration.d.ts.map +1 -1
  11. package/dist/browser/Hash/Payload.d.ts +1 -1
  12. package/dist/browser/Hash/Payload.d.ts.map +1 -1
  13. package/dist/browser/diviner/lib/parseEstimatesFromArray.d.ts.map +1 -1
  14. package/dist/browser/index.mjs +9 -10
  15. package/dist/browser/index.mjs.map +1 -1
  16. package/dist/neutral/Address/Payload.d.ts +1 -1
  17. package/dist/neutral/Address/Payload.d.ts.map +1 -1
  18. package/dist/neutral/DNS/Witness/Payload/Request.d.ts +2 -2
  19. package/dist/neutral/DNS/Witness/Payload/Response.d.ts +2 -2
  20. package/dist/neutral/Domain/Domain.d.ts +2 -2
  21. package/dist/neutral/Domain/DomainLease.d.ts +2 -2
  22. package/dist/neutral/DomainRegistration/DomainRegistration.d.ts +3 -3
  23. package/dist/neutral/DomainRegistration/DomainRegistration.d.ts.map +1 -1
  24. package/dist/neutral/DomainRegistration/DomainRegistrationLease.d.ts +2 -2
  25. package/dist/neutral/Duration/validation/validateBoundWitnessAndDuration.d.ts.map +1 -1
  26. package/dist/neutral/Hash/Payload.d.ts +1 -1
  27. package/dist/neutral/Hash/Payload.d.ts.map +1 -1
  28. package/dist/neutral/diviner/lib/parseEstimatesFromArray.d.ts.map +1 -1
  29. package/dist/neutral/index.mjs +9 -10
  30. package/dist/neutral/index.mjs.map +1 -1
  31. package/dist/node/Address/Payload.d.ts +1 -1
  32. package/dist/node/Address/Payload.d.ts.map +1 -1
  33. package/dist/node/DNS/Witness/Payload/Request.d.ts +2 -2
  34. package/dist/node/DNS/Witness/Payload/Response.d.ts +2 -2
  35. package/dist/node/Domain/Domain.d.ts +2 -2
  36. package/dist/node/Domain/DomainLease.d.ts +2 -2
  37. package/dist/node/DomainRegistration/DomainRegistration.d.ts +3 -3
  38. package/dist/node/DomainRegistration/DomainRegistration.d.ts.map +1 -1
  39. package/dist/node/DomainRegistration/DomainRegistrationLease.d.ts +2 -2
  40. package/dist/node/Duration/validation/validateBoundWitnessAndDuration.d.ts.map +1 -1
  41. package/dist/node/Hash/Payload.d.ts +1 -1
  42. package/dist/node/Hash/Payload.d.ts.map +1 -1
  43. package/dist/node/diviner/lib/parseEstimatesFromArray.d.ts.map +1 -1
  44. package/dist/node/index.mjs +9 -10
  45. package/dist/node/index.mjs.map +1 -1
  46. package/package.json +32 -26
  47. package/src/Address/Payload.ts +0 -22
  48. package/src/Address/index.ts +0 -1
  49. package/src/DNS/Witness/Config.ts +0 -28
  50. package/src/DNS/Witness/Params.ts +0 -6
  51. package/src/DNS/Witness/Payload/Payload.ts +0 -4
  52. package/src/DNS/Witness/Payload/Request.ts +0 -39
  53. package/src/DNS/Witness/Payload/Response.ts +0 -28
  54. package/src/DNS/Witness/Payload/index.ts +0 -3
  55. package/src/DNS/Witness/Schema.ts +0 -4
  56. package/src/DNS/Witness/index.ts +0 -4
  57. package/src/DNS/index.ts +0 -2
  58. package/src/DNS/types/Answer.ts +0 -5
  59. package/src/DNS/types/Header.ts +0 -96
  60. package/src/DNS/types/OperationCodes.ts +0 -13
  61. package/src/DNS/types/Record.ts +0 -9
  62. package/src/DNS/types/Request.ts +0 -39
  63. package/src/DNS/types/ResourceRecord.ts +0 -229
  64. package/src/DNS/types/Response.ts +0 -12
  65. package/src/DNS/types/ResponseCodes.ts +0 -34
  66. package/src/DNS/types/index.ts +0 -8
  67. package/src/Domain/Domain.ts +0 -47
  68. package/src/Domain/DomainLease.ts +0 -35
  69. package/src/Domain/index.ts +0 -2
  70. package/src/DomainEstimate/DomainEstimate.ts +0 -11
  71. package/src/DomainEstimate/index.ts +0 -1
  72. package/src/DomainRegistration/DomainRegistration.ts +0 -42
  73. package/src/DomainRegistration/DomainRegistrationLease.ts +0 -39
  74. package/src/DomainRegistration/index.ts +0 -2
  75. package/src/Duration/Duration.ts +0 -11
  76. package/src/Duration/index.ts +0 -2
  77. package/src/Duration/validation/index.ts +0 -2
  78. package/src/Duration/validation/validateBoundWitness.ts +0 -13
  79. package/src/Duration/validation/validateBoundWitnessAndDuration.ts +0 -24
  80. package/src/Duration/validation/validateBoundWitnessWithDuration.ts +0 -16
  81. package/src/Duration/validation/validateDuration.ts +0 -14
  82. package/src/Hash/Payload.ts +0 -22
  83. package/src/Hash/index.ts +0 -1
  84. package/src/diviner/DomainLeaseEstimateDiviner/ErrorDetails/ErrorCodes.ts +0 -38
  85. package/src/diviner/DomainLeaseEstimateDiviner/ErrorDetails/Payload.ts +0 -46
  86. package/src/diviner/DomainLeaseEstimateDiviner/ErrorDetails/index.ts +0 -2
  87. package/src/diviner/DomainLeaseEstimateDiviner/Schema.ts +0 -6
  88. package/src/diviner/DomainLeaseEstimateDiviner/index.ts +0 -2
  89. package/src/diviner/index.ts +0 -2
  90. package/src/diviner/lib/index.ts +0 -1
  91. package/src/diviner/lib/parseEstimatesFromArray.ts +0 -82
  92. 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,2 +0,0 @@
1
- export * from './ErrorCodes.ts'
2
- export * from './Payload.ts'
@@ -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
@@ -1,2 +0,0 @@
1
- export * from './ErrorDetails/index.ts'
2
- export * from './Schema.ts'
@@ -1,2 +0,0 @@
1
- export * from './DomainLeaseEstimateDiviner/index.ts'
2
- export * from './lib/index.ts'
@@ -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'