@xyo-network/api 2.50.5 → 2.50.6

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 (107) hide show
  1. package/dist/cjs/Api/Archive/Api.js +0 -27
  2. package/dist/cjs/Api/Archive/Api.js.map +1 -1
  3. package/dist/cjs/Api/Archive/index.js +0 -2
  4. package/dist/cjs/Api/Archive/index.js.map +1 -1
  5. package/dist/cjs/Api/Block/Api.js +1 -8
  6. package/dist/cjs/Api/Block/Api.js.map +1 -1
  7. package/dist/cjs/Api/index.js +0 -1
  8. package/dist/cjs/Api/index.js.map +1 -1
  9. package/dist/cjs/index.js +0 -1
  10. package/dist/cjs/index.js.map +1 -1
  11. package/dist/docs.json +5802 -29563
  12. package/dist/esm/Api/Archive/Api.js +0 -38
  13. package/dist/esm/Api/Archive/Api.js.map +1 -1
  14. package/dist/esm/Api/Archive/index.js +0 -2
  15. package/dist/esm/Api/Archive/index.js.map +1 -1
  16. package/dist/esm/Api/Block/Api.js +1 -11
  17. package/dist/esm/Api/Block/Api.js.map +1 -1
  18. package/dist/esm/Api/index.js +0 -1
  19. package/dist/esm/Api/index.js.map +1 -1
  20. package/dist/esm/index.js +0 -1
  21. package/dist/esm/index.js.map +1 -1
  22. package/dist/types/Api/Archive/Api.d.ts +0 -17
  23. package/dist/types/Api/Archive/Api.d.ts.map +1 -1
  24. package/dist/types/Api/Archive/index.d.ts +0 -2
  25. package/dist/types/Api/Archive/index.d.ts.map +1 -1
  26. package/dist/types/Api/Block/Api.d.ts +1 -9
  27. package/dist/types/Api/Block/Api.d.ts.map +1 -1
  28. package/dist/types/Api/index.d.ts +0 -1
  29. package/dist/types/Api/index.d.ts.map +1 -1
  30. package/dist/types/index.d.ts +0 -1
  31. package/dist/types/index.d.ts.map +1 -1
  32. package/package.json +15 -20
  33. package/src/Api/Archive/Api.ts +0 -41
  34. package/src/Api/Archive/index.ts +0 -2
  35. package/src/Api/Block/Api.ts +3 -17
  36. package/src/Api/index.ts +0 -1
  37. package/src/index.ts +0 -1
  38. package/dist/cjs/Api/Archive/Schema/Api.js +0 -18
  39. package/dist/cjs/Api/Archive/Schema/Api.js.map +0 -1
  40. package/dist/cjs/Api/Archive/Schema/index.js +0 -5
  41. package/dist/cjs/Api/Archive/Schema/index.js.map +0 -1
  42. package/dist/cjs/Api/Archive/Schemas/Api.js +0 -17
  43. package/dist/cjs/Api/Archive/Schemas/Api.js.map +0 -1
  44. package/dist/cjs/Api/Archive/Schemas/index.js +0 -5
  45. package/dist/cjs/Api/Archive/Schemas/index.js.map +0 -1
  46. package/dist/cjs/Api/Payload/Api.js +0 -32
  47. package/dist/cjs/Api/Payload/Api.js.map +0 -1
  48. package/dist/cjs/Api/Payload/index.js +0 -5
  49. package/dist/cjs/Api/Payload/index.js.map +0 -1
  50. package/dist/cjs/Archivist/RemoteArchivistError.js +0 -14
  51. package/dist/cjs/Archivist/RemoteArchivistError.js.map +0 -1
  52. package/dist/cjs/Archivist/XyoRemoteArchivist.js +0 -135
  53. package/dist/cjs/Archivist/XyoRemoteArchivist.js.map +0 -1
  54. package/dist/cjs/Archivist/XyoRemoteArchivistConfig.js +0 -5
  55. package/dist/cjs/Archivist/XyoRemoteArchivistConfig.js.map +0 -1
  56. package/dist/cjs/Archivist/index.js +0 -7
  57. package/dist/cjs/Archivist/index.js.map +0 -1
  58. package/dist/esm/Api/Archive/Schema/Api.js +0 -18
  59. package/dist/esm/Api/Archive/Schema/Api.js.map +0 -1
  60. package/dist/esm/Api/Archive/Schema/index.js +0 -2
  61. package/dist/esm/Api/Archive/Schema/index.js.map +0 -1
  62. package/dist/esm/Api/Archive/Schemas/Api.js +0 -17
  63. package/dist/esm/Api/Archive/Schemas/Api.js.map +0 -1
  64. package/dist/esm/Api/Archive/Schemas/index.js +0 -2
  65. package/dist/esm/Api/Archive/Schemas/index.js.map +0 -1
  66. package/dist/esm/Api/Payload/Api.js +0 -32
  67. package/dist/esm/Api/Payload/Api.js.map +0 -1
  68. package/dist/esm/Api/Payload/index.js +0 -2
  69. package/dist/esm/Api/Payload/index.js.map +0 -1
  70. package/dist/esm/Archivist/RemoteArchivistError.js +0 -10
  71. package/dist/esm/Archivist/RemoteArchivistError.js.map +0 -1
  72. package/dist/esm/Archivist/XyoRemoteArchivist.js +0 -115
  73. package/dist/esm/Archivist/XyoRemoteArchivist.js.map +0 -1
  74. package/dist/esm/Archivist/XyoRemoteArchivistConfig.js +0 -2
  75. package/dist/esm/Archivist/XyoRemoteArchivistConfig.js.map +0 -1
  76. package/dist/esm/Archivist/index.js +0 -4
  77. package/dist/esm/Archivist/index.js.map +0 -1
  78. package/dist/types/Api/Archive/Schema/Api.d.ts +0 -11
  79. package/dist/types/Api/Archive/Schema/Api.d.ts.map +0 -1
  80. package/dist/types/Api/Archive/Schema/index.d.ts +0 -2
  81. package/dist/types/Api/Archive/Schema/index.d.ts.map +0 -1
  82. package/dist/types/Api/Archive/Schemas/Api.d.ts +0 -10
  83. package/dist/types/Api/Archive/Schemas/Api.d.ts.map +0 -1
  84. package/dist/types/Api/Archive/Schemas/index.d.ts +0 -2
  85. package/dist/types/Api/Archive/Schemas/index.d.ts.map +0 -1
  86. package/dist/types/Api/Payload/Api.d.ts +0 -23
  87. package/dist/types/Api/Payload/Api.d.ts.map +0 -1
  88. package/dist/types/Api/Payload/index.d.ts +0 -2
  89. package/dist/types/Api/Payload/index.d.ts.map +0 -1
  90. package/dist/types/Archivist/RemoteArchivistError.d.ts +0 -6
  91. package/dist/types/Archivist/RemoteArchivistError.d.ts.map +0 -1
  92. package/dist/types/Archivist/XyoRemoteArchivist.d.ts +0 -23
  93. package/dist/types/Archivist/XyoRemoteArchivist.d.ts.map +0 -1
  94. package/dist/types/Archivist/XyoRemoteArchivistConfig.d.ts +0 -12
  95. package/dist/types/Archivist/XyoRemoteArchivistConfig.d.ts.map +0 -1
  96. package/dist/types/Archivist/index.d.ts +0 -4
  97. package/dist/types/Archivist/index.d.ts.map +0 -1
  98. package/src/Api/Archive/Schema/Api.ts +0 -20
  99. package/src/Api/Archive/Schema/index.ts +0 -1
  100. package/src/Api/Archive/Schemas/Api.ts +0 -19
  101. package/src/Api/Archive/Schemas/index.ts +0 -1
  102. package/src/Api/Payload/Api.ts +0 -46
  103. package/src/Api/Payload/index.ts +0 -1
  104. package/src/Archivist/RemoteArchivistError.ts +0 -9
  105. package/src/Archivist/XyoRemoteArchivist.ts +0 -130
  106. package/src/Archivist/XyoRemoteArchivistConfig.ts +0 -16
  107. package/src/Archivist/index.ts +0 -3
@@ -1,19 +0,0 @@
1
- import { XyoSchemaPayload } from '@xyo-network/schema-payload-plugin'
2
-
3
- import { XyoApiSimple } from '../../../Simple'
4
-
5
- export class XyoArchivistArchiveSchemasApi extends XyoApiSimple<XyoSchemaPayload[]> {
6
- private _recent?: XyoApiSimple<XyoSchemaPayload[]>
7
- /**
8
- * @deprecated Use module API
9
- */
10
- get recent(): XyoApiSimple<XyoSchemaPayload[]> {
11
- this._recent =
12
- this._recent ??
13
- new XyoApiSimple<XyoSchemaPayload[]>({
14
- ...this.config,
15
- root: `${this.root}recent/`,
16
- })
17
- return this._recent
18
- }
19
- }
@@ -1 +0,0 @@
1
- export * from './Api'
@@ -1,46 +0,0 @@
1
- import { XyoApiConfig } from '@xyo-network/api-models'
2
- import { PayloadFindFilter, XyoPayload } from '@xyo-network/payload-model'
3
-
4
- import { XyoApiSimple } from '../../Simple'
5
- import { WithArchive } from '../../WithArchive'
6
-
7
- export interface XyoPayloadStats {
8
- count: number
9
- }
10
-
11
- export class XyoArchivistPayloadApi<
12
- T extends XyoPayload = XyoPayload,
13
- C extends WithArchive<XyoApiConfig> = WithArchive<XyoApiConfig>,
14
- > extends XyoApiSimple<T[], T[], PayloadFindFilter, C> {
15
- private _stats?: XyoApiSimple<XyoPayloadStats>
16
-
17
- /**
18
- * @deprecated Use module API
19
- */
20
- get stats(): XyoApiSimple<XyoPayloadStats> {
21
- this._stats =
22
- this._stats ??
23
- new XyoApiSimple<XyoPayloadStats>({
24
- ...this.config,
25
- root: `${this.root}stats/`,
26
- })
27
- return this._stats
28
- }
29
-
30
- /**
31
- * @deprecated Use module API
32
- */
33
- hash(hash: string): XyoApiSimple<XyoPayload[]> {
34
- return new XyoApiSimple<XyoPayload[]>({
35
- ...this.config,
36
- root: `${this.root}hash/${hash}/`,
37
- })
38
- }
39
-
40
- /**
41
- * @deprecated Use module API
42
- */
43
- async repair(hash: string) {
44
- return await this.getEndpoint<T[]>(`hash/${hash}/repair`)
45
- }
46
- }
@@ -1 +0,0 @@
1
- export * from './Api'
@@ -1,9 +0,0 @@
1
- export class RemoteArchivistError extends Error {
2
- isRemoteArchivistError = true
3
- constructor(action: string, error: Error['cause'], message?: string) {
4
- super(`Remote Archivist [${action}] failed${message ? ` (${message})` : ''}`, { cause: error })
5
- }
6
- static isRemoteArchivistError(error: unknown): RemoteArchivistError | undefined {
7
- return (error as RemoteArchivistError).isRemoteArchivistError ? (error as RemoteArchivistError) : undefined
8
- }
9
- }
@@ -1,130 +0,0 @@
1
- import { AbstractArchivist, ArchivistFindQuerySchema, ArchivistInsertQuerySchema, ArchivistParams } from '@xyo-network/archivist'
2
- import { isXyoBoundWitnessPayload, XyoBoundWitness } from '@xyo-network/boundwitness-model'
3
- import { ModuleParams } from '@xyo-network/module'
4
- import { PayloadFindFilter, XyoPayload } from '@xyo-network/payload-model'
5
- import { PayloadWrapper } from '@xyo-network/payload-wrapper'
6
- import compact from 'lodash/compact'
7
-
8
- import { XyoArchivistApi } from '../Api'
9
- import { RemoteArchivistError } from './RemoteArchivistError'
10
- import { XyoRemoteArchivistConfig, XyoRemoteArchivistConfigSchema } from './XyoRemoteArchivistConfig'
11
-
12
- export type XyoRemoteArchivistParams = ModuleParams<XyoRemoteArchivistConfig> & { api?: XyoArchivistApi }
13
-
14
- /** @description Archivist Context that connects to a remote archivist using the API */
15
- export class XyoRemoteArchivist extends AbstractArchivist<ArchivistParams<XyoRemoteArchivistConfig>> {
16
- static override configSchema = XyoRemoteArchivistConfigSchema
17
- protected _api?: XyoArchivistApi
18
-
19
- constructor(params: XyoRemoteArchivistParams) {
20
- super(params)
21
- this._api = params?.api
22
- }
23
-
24
- get api() {
25
- if (this._api) {
26
- return this._api
27
- }
28
- // eslint-disable-next-line deprecation/deprecation
29
- if (this.config?.api) {
30
- this.logger?.warn('api specified in config but should be specified in params')
31
- // eslint-disable-next-line deprecation/deprecation
32
- return this.config?.api
33
- }
34
- throw Error('No api specified')
35
- }
36
-
37
- get archive() {
38
- return this.config?.archive
39
- }
40
-
41
- override get queries(): string[] {
42
- return [ArchivistFindQuerySchema, ArchivistInsertQuerySchema, ...super.queries]
43
- }
44
-
45
- static override async create(params?: XyoRemoteArchivistParams): Promise<XyoRemoteArchivist> {
46
- return (await super.create(params)) as XyoRemoteArchivist
47
- }
48
-
49
- override async find<R extends XyoPayload = XyoPayload>(filter: PayloadFindFilter): Promise<R[]> {
50
- try {
51
- const [payloads = [], payloadEnvelope, payloadResponse] = await this.api.archive(this.archive).payload.find(filter, 'tuple')
52
- if (payloadEnvelope?.errors?.length) {
53
- throw new RemoteArchivistError('find', payloadEnvelope.errors.shift(), 'payloads')
54
- }
55
- if (payloadResponse?.status >= 300) {
56
- throw new RemoteArchivistError('find', `Invalid payload status [${payloadResponse.status}]`, 'payloads')
57
- }
58
- const [blocks = [], blockEnvelope, blockResponse] = await this.api.archive(this.archive).block.find(filter, 'tuple')
59
- if (blockEnvelope?.errors?.length) {
60
- throw new RemoteArchivistError('find', blockEnvelope.errors.shift(), 'payloads')
61
- }
62
- if (blockResponse?.status >= 300) {
63
- throw new RemoteArchivistError('find', `Invalid block status [${blockResponse.status}]`, 'payloads')
64
- }
65
- return payloads.concat(blocks) as R[]
66
- } catch (ex) {
67
- console.error(ex)
68
- throw ex
69
- }
70
- }
71
-
72
- override async get(hashes: string[]): Promise<XyoPayload[]> {
73
- return compact(
74
- await Promise.all(
75
- hashes.map(async (hash) => {
76
- try {
77
- const [payloads = [], payloadEnvelope, payloadResponse] = await this.api.archive(this.archive).payload.hash(hash).get('tuple')
78
- if (payloadResponse?.status >= 400) {
79
- throw new RemoteArchivistError('get', `Invalid payload status [${payloadResponse.status}]`, 'payloads')
80
- }
81
- if (payloadEnvelope?.errors?.length) {
82
- throw new RemoteArchivistError('get', payloadEnvelope.errors.shift(), 'payloads')
83
- }
84
- const [blocks = [], blockEnvelope, blockResponse] = await this.api.archive(this.archive).block.hash(hash).get('tuple')
85
- if (blockResponse?.status >= 400) {
86
- throw new RemoteArchivistError('get', `Invalid block status [${blockResponse.status}]`, 'payloads')
87
- }
88
- if (blockEnvelope?.errors?.length) {
89
- throw new RemoteArchivistError('get', blockEnvelope.errors.shift(), 'blocks')
90
- }
91
- return payloads?.[0] ?? blocks?.[0]
92
- } catch (ex) {
93
- console.error(ex)
94
- throw ex
95
- }
96
- }),
97
- ),
98
- )
99
- }
100
-
101
- async insert(payloads: XyoPayload[]): Promise<XyoBoundWitness[]> {
102
- try {
103
- const boundWitnesses: XyoBoundWitness[] = payloads.filter(isXyoBoundWitnessPayload)
104
- boundWitnesses.forEach((boundwitness) => {
105
- // doing this here to prevent breaking code (for now)
106
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
107
- const anyBoundwitness: any = boundwitness
108
- anyBoundwitness._payloads ===
109
- payloads.filter((payload) => {
110
- const hash = new PayloadWrapper(payload).hash
111
- return boundwitness.payload_hashes.includes(hash)
112
- })
113
- })
114
- const [boundwitness] = await this.bindResult(payloads)
115
- const bwWithMeta: XyoBoundWitness & { _payloads: XyoPayload[] } = { ...boundwitness, _payloads: payloads }
116
- const bwResult = await this.api.archive(this.archive).block.post([bwWithMeta], 'tuple')
117
- const [, response, error] = bwResult
118
- if (error?.status >= 400) {
119
- throw new RemoteArchivistError('insert', `${error.statusText} [${error.status}]`)
120
- }
121
- if (response?.errors?.length) {
122
- throw new RemoteArchivistError('insert', response?.errors)
123
- }
124
- return [boundwitness]
125
- } catch (ex) {
126
- console.error(ex)
127
- throw ex
128
- }
129
- }
130
- }
@@ -1,16 +0,0 @@
1
- import { ArchivistConfig } from '@xyo-network/archivist'
2
- import { XyoPayload } from '@xyo-network/payload-model'
3
-
4
- import { XyoArchivistApi } from '../Api'
5
-
6
- export type XyoRemoteArchivistConfigSchema = 'network.xyo.archivist.remote.config'
7
- export const XyoRemoteArchivistConfigSchema: XyoRemoteArchivistConfigSchema = 'network.xyo.archivist.remote.config'
8
-
9
- export type XyoRemoteArchivistConfig<T extends XyoPayload = XyoPayload> = ArchivistConfig<
10
- {
11
- /** @deprecated pass api in params instead */
12
- api?: XyoArchivistApi
13
- archive?: string
14
- schema: XyoRemoteArchivistConfigSchema
15
- } & T
16
- >
@@ -1,3 +0,0 @@
1
- export * from './RemoteArchivistError'
2
- export * from './XyoRemoteArchivist'
3
- export * from './XyoRemoteArchivistConfig'