@xyo-network/api-call-witness 3.4.2 → 3.4.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/neutral/Payload/Schema.d.ts +5 -0
- package/dist/neutral/Payload/Schema.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/asApiCall.d.ts +5 -0
- package/dist/neutral/Payload/identity/asApiCall.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/asApiCallBase64Result.d.ts +5 -0
- package/dist/neutral/Payload/identity/asApiCallBase64Result.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/asApiCallResult.d.ts +5 -0
- package/dist/neutral/Payload/identity/asApiCallResult.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/asApiCallXmlResult.d.ts +5 -0
- package/dist/neutral/Payload/identity/asApiCallXmlResult.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/asApiUriCall.d.ts +5 -0
- package/dist/neutral/Payload/identity/asApiUriCall.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.ts +5 -0
- package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/index.d.ts +14 -0
- package/dist/neutral/Payload/identity/index.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/isApiCall.d.ts +3 -0
- package/dist/neutral/Payload/identity/isApiCall.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/isApiCallBase64Result.d.ts +3 -0
- package/dist/neutral/Payload/identity/isApiCallBase64Result.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/isApiCallErrorResult.d.ts +3 -0
- package/dist/neutral/Payload/identity/isApiCallErrorResult.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/isApiCallResult.d.ts +3 -0
- package/dist/neutral/Payload/identity/isApiCallResult.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/isApiCallXmlResult.d.ts +3 -0
- package/dist/neutral/Payload/identity/isApiCallXmlResult.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/isApiUriCall.d.ts +3 -0
- package/dist/neutral/Payload/identity/isApiUriCall.d.ts.map +1 -0
- package/dist/neutral/Payload/identity/isApiUriTemplateCall.d.ts +3 -0
- package/dist/neutral/Payload/identity/isApiUriTemplateCall.d.ts.map +1 -0
- package/dist/neutral/Payload/index.d.ts +4 -0
- package/dist/neutral/Payload/index.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiCall.d.ts +4 -0
- package/dist/neutral/Payload/types/ApiCall.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiCallBase64Result.d.ts +11 -0
- package/dist/neutral/Payload/types/ApiCallBase64Result.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiCallErrorResult.d.ts +9 -0
- package/dist/neutral/Payload/types/ApiCallErrorResult.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiCallFields.d.ts +8 -0
- package/dist/neutral/Payload/types/ApiCallFields.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiCallJsonResult.d.ts +16 -0
- package/dist/neutral/Payload/types/ApiCallJsonResult.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiCallResult.d.ts +8 -0
- package/dist/neutral/Payload/types/ApiCallResult.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiCallXmlResult.d.ts +9 -0
- package/dist/neutral/Payload/types/ApiCallXmlResult.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiUriCall.d.ts +7 -0
- package/dist/neutral/Payload/types/ApiUriCall.d.ts.map +1 -0
- package/dist/neutral/Payload/types/ApiUriTemplateCall.d.ts +8 -0
- package/dist/neutral/Payload/types/ApiUriTemplateCall.d.ts.map +1 -0
- package/dist/neutral/Payload/types/HttpMeta.d.ts +5 -0
- package/dist/neutral/Payload/types/HttpMeta.d.ts.map +1 -0
- package/dist/neutral/Payload/types/MimeTypes.d.ts +2 -0
- package/dist/neutral/Payload/types/MimeTypes.d.ts.map +1 -0
- package/dist/neutral/Payload/types/Queries.d.ts +2 -0
- package/dist/neutral/Payload/types/Queries.d.ts.map +1 -0
- package/dist/neutral/Payload/types/Verb.d.ts +2 -0
- package/dist/neutral/Payload/types/Verb.d.ts.map +1 -0
- package/dist/neutral/Payload/types/index.d.ts +14 -0
- package/dist/neutral/Payload/types/index.d.ts.map +1 -0
- package/dist/neutral/Witness/Config.d.ts +35 -0
- package/dist/neutral/Witness/Config.d.ts.map +1 -0
- package/dist/neutral/Witness/Params.d.ts +7 -0
- package/dist/neutral/Witness/Params.d.ts.map +1 -0
- package/dist/neutral/Witness/Schema.d.ts +3 -0
- package/dist/neutral/Witness/Schema.d.ts.map +1 -0
- package/dist/neutral/Witness/Witness.d.ts +16 -0
- package/dist/neutral/Witness/Witness.d.ts.map +1 -0
- package/dist/neutral/Witness/index.d.ts +5 -0
- package/dist/neutral/Witness/index.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +3 -170
- package/dist/neutral/index.d.ts.map +1 -0
- package/dist/neutral/index.mjs +4 -2
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/lib/checkIpfsUrl.d.ts +8 -0
- package/dist/neutral/lib/checkIpfsUrl.d.ts.map +1 -0
- package/dist/neutral/lib/index.d.ts +2 -0
- package/dist/neutral/lib/index.d.ts.map +1 -0
- package/package.json +15 -15
- package/src/Payload/identity/isApiCall.ts +1 -1
- package/src/Payload/identity/isApiCallBase64Result.ts +1 -1
- package/src/Payload/identity/isApiCallErrorResult.ts +1 -1
- package/src/Payload/identity/isApiCallResult.ts +1 -1
- package/src/Payload/identity/isApiCallXmlResult.ts +1 -1
- package/src/Payload/identity/isApiUriCall.ts +1 -1
- package/src/Payload/identity/isApiUriTemplateCall.ts +1 -1
- package/src/Payload/types/ApiCall.ts +2 -2
- package/src/Payload/types/ApiCallBase64Result.ts +5 -5
- package/src/Payload/types/ApiCallErrorResult.ts +4 -4
- package/src/Payload/types/ApiCallFields.ts +2 -2
- package/src/Payload/types/ApiCallJsonResult.ts +6 -6
- package/src/Payload/types/ApiCallResult.ts +4 -4
- package/src/Payload/types/ApiCallXmlResult.ts +3 -3
- package/src/Payload/types/ApiUriCall.ts +3 -3
- package/src/Payload/types/ApiUriTemplateCall.ts +3 -3
- package/src/Witness/Config.ts +2 -2
- package/src/Witness/Params.ts +2 -2
- package/src/Witness/Witness.ts +8 -12
- package/xy.config.ts +1 -1
package/dist/neutral/index.d.ts
CHANGED
|
@@ -1,170 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import { Payload, Schema } from '@xyo-network/payload-model';
|
|
5
|
-
import { Hash } from '@xylabs/hex';
|
|
6
|
-
import { WitnessConfig, WitnessParams } from '@xyo-network/witness-model';
|
|
7
|
-
import { AbstractWitness } from '@xyo-network/abstract-witness';
|
|
8
|
-
|
|
9
|
-
declare const asApiCallPayload: {
|
|
10
|
-
<TType extends ApiCallPayload>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
11
|
-
<TType extends ApiCallPayload>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiCallPayload>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
declare const asApiCallBase64Result: {
|
|
15
|
-
<TType extends ApiCallBase64Result>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
16
|
-
<TType extends ApiCallBase64Result>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiCallBase64Result>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
declare const asApiCallResult: {
|
|
20
|
-
<TType extends ApiCallResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
21
|
-
<TType extends ApiCallResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiCallResult>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
declare const asApiCallXmlResult: {
|
|
25
|
-
<TType extends ApiCallXmlResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
26
|
-
<TType extends ApiCallXmlResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiCallXmlResult>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
declare const asApiUriCallPayload: {
|
|
30
|
-
<TType extends ApiUriCallPayload>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
31
|
-
<TType extends ApiUriCallPayload>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiUriCallPayload>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
declare const asApiUriTemplateCall: {
|
|
35
|
-
<TType extends ApiUriTemplateCallPayload>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
36
|
-
<TType extends ApiUriTemplateCallPayload>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiUriTemplateCallPayload>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
declare const ApiCallSchema = "network.xyo.api.call";
|
|
40
|
-
type ApiCallSchema = typeof ApiCallSchema;
|
|
41
|
-
declare const ApiCallResultSchema = "network.xyo.api.call.result";
|
|
42
|
-
type ApiCallResultSchema = typeof ApiCallResultSchema;
|
|
43
|
-
|
|
44
|
-
type Queries = Record<string, string>;
|
|
45
|
-
|
|
46
|
-
type Verb = 'get' | 'post';
|
|
47
|
-
|
|
48
|
-
interface ApiCallFields {
|
|
49
|
-
headers?: Record<string, string | undefined>;
|
|
50
|
-
queries?: Queries;
|
|
51
|
-
verb?: Verb;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
type ApiUriCallPayload = Payload<ApiCallFields & {
|
|
55
|
-
uri: string;
|
|
56
|
-
}, ApiCallSchema>;
|
|
57
|
-
|
|
58
|
-
type ApiUriTemplateCallPayload = Payload<ApiCallFields & {
|
|
59
|
-
params?: Record<string, string>;
|
|
60
|
-
uriTemplate?: string;
|
|
61
|
-
}, ApiCallSchema>;
|
|
62
|
-
|
|
63
|
-
type ApiCallPayload = ApiUriCallPayload | ApiUriTemplateCallPayload;
|
|
64
|
-
|
|
65
|
-
type ApiCallJsonResultType = JsonArray | JsonObject;
|
|
66
|
-
type ApiCallJsonResult<T extends ApiCallJsonResultType = ApiCallJsonResultType> = Payload<{
|
|
67
|
-
call: Hash;
|
|
68
|
-
contentType: 'application/json';
|
|
69
|
-
data: T;
|
|
70
|
-
}, ApiCallResultSchema>;
|
|
71
|
-
declare const isApiCallJsonResult: <T extends ApiCallJsonResultType = ApiCallJsonResultType>(x?: unknown | null) => x is ApiCallJsonResult<T>;
|
|
72
|
-
declare const asApiCallJsonResult: {
|
|
73
|
-
<TType extends ApiCallJsonResult<ApiCallJsonResultType>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
74
|
-
<TType extends ApiCallJsonResult<ApiCallJsonResultType>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiCallJsonResult<ApiCallJsonResultType>>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
type ApiCallXmlResult = Payload<{
|
|
78
|
-
call: Hash;
|
|
79
|
-
contentType: 'application/xml' | 'text/xml';
|
|
80
|
-
data: string;
|
|
81
|
-
}, ApiCallResultSchema>;
|
|
82
|
-
|
|
83
|
-
type ApiCallBase64Result = Payload<{
|
|
84
|
-
call: Hash;
|
|
85
|
-
contentType: Exclude<Exclude<string, ApiCallJsonResult['contentType']>, ApiCallXmlResult['contentType']>;
|
|
86
|
-
data: string;
|
|
87
|
-
}, ApiCallResultSchema>;
|
|
88
|
-
|
|
89
|
-
interface HttpMeta {
|
|
90
|
-
code?: string;
|
|
91
|
-
status?: number;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
type ApiCallErrorResult = Payload<{
|
|
95
|
-
call: Hash;
|
|
96
|
-
http?: HttpMeta;
|
|
97
|
-
}, ApiCallResultSchema>;
|
|
98
|
-
|
|
99
|
-
type NewType = JsonObject;
|
|
100
|
-
type ApiCallResult<TJson extends JsonArray | JsonObject = JsonArray | NewType> = ApiCallBase64Result | ApiCallJsonResult<TJson> | ApiCallErrorResult;
|
|
101
|
-
|
|
102
|
-
type MimeTypes = 'application/json' | 'application/octet-stream' | 'application/pdf' | 'application/xhtml+xml' | 'application/xml' | 'image/gif' | 'image/jpeg' | 'image/png' | 'text/html' | 'text/plain' | 'text/xml';
|
|
103
|
-
|
|
104
|
-
declare const isApiCallPayload: (x?: unknown | null) => x is ApiCallPayload;
|
|
105
|
-
|
|
106
|
-
declare const isApiCallBase64Result: (x?: unknown | null) => x is ApiCallBase64Result;
|
|
107
|
-
|
|
108
|
-
declare const isApiCallErrorResult: (value: unknown) => value is ApiCallErrorResult;
|
|
109
|
-
|
|
110
|
-
declare const isApiCallResult: (x?: unknown | null) => x is ApiCallResult;
|
|
111
|
-
|
|
112
|
-
declare const isApiCallXmlResult: (x?: unknown | null) => x is ApiCallXmlResult;
|
|
113
|
-
|
|
114
|
-
declare const isApiUriCallPayload: (value?: unknown) => value is ApiUriCallPayload;
|
|
115
|
-
|
|
116
|
-
declare const isApiUriTemplateCallPayload: (value?: unknown) => value is ApiUriTemplateCallPayload;
|
|
117
|
-
|
|
118
|
-
declare const ApiCallWitnessConfigSchema = "network.xyo.api.call.witness.config";
|
|
119
|
-
type ApiCallWitnessConfigSchema = typeof ApiCallWitnessConfigSchema;
|
|
120
|
-
|
|
121
|
-
type ApiCallWitnessConfigBase = WitnessConfig<{
|
|
122
|
-
accept?: MimeTypes;
|
|
123
|
-
headers?: Record<string, string | undefined>;
|
|
124
|
-
queries?: ApiCallPayload['queries'];
|
|
125
|
-
schema: ApiCallWitnessConfigSchema;
|
|
126
|
-
timeout?: number;
|
|
127
|
-
verb?: ApiCallPayload['verb'];
|
|
128
|
-
}>;
|
|
129
|
-
type ApiUriCallWitnessConfig = WitnessConfig<ApiCallWitnessConfigBase & {
|
|
130
|
-
uri: ApiUriCallPayload['uri'];
|
|
131
|
-
}>;
|
|
132
|
-
type ApiUriTemplateCallWitnessConfig = WitnessConfig<ApiCallWitnessConfigBase & {
|
|
133
|
-
params?: Record<string, string>;
|
|
134
|
-
uriTemplate: ApiUriTemplateCallPayload['uriTemplate'];
|
|
135
|
-
}>;
|
|
136
|
-
type ApiCallWitnessConfig = ApiUriCallWitnessConfig | ApiUriTemplateCallWitnessConfig | ApiCallWitnessConfigBase;
|
|
137
|
-
declare const isApiCallWitnessConfig: (x?: unknown | null) => x is ApiCallWitnessConfig;
|
|
138
|
-
declare const asApiCallWitnessConfig: {
|
|
139
|
-
<TType extends ApiCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
140
|
-
<TType extends ApiCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiCallWitnessConfig>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
141
|
-
};
|
|
142
|
-
declare const isApiUriCallWitnessConfig: (value?: unknown) => value is ApiUriCallWitnessConfig;
|
|
143
|
-
declare const asApiUriCallWitnessConfig: {
|
|
144
|
-
<TType extends ApiUriCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
145
|
-
<TType extends ApiUriCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiUriCallWitnessConfig>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
146
|
-
};
|
|
147
|
-
declare const isApiUriTemplateCallWitnessConfig: (value?: unknown) => value is ApiUriTemplateCallWitnessConfig;
|
|
148
|
-
declare const asApiUriTemplateCallWitnessConfig: {
|
|
149
|
-
<TType extends ApiUriTemplateCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
|
|
150
|
-
<TType extends ApiUriTemplateCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<ApiUriTemplateCallWitnessConfig>, config?: _xylabs_object.TypeCheckConfig): TType;
|
|
151
|
-
};
|
|
152
|
-
|
|
153
|
-
type ApiCallWitnessParams = WitnessParams<ApiCallWitnessConfig, {
|
|
154
|
-
headers?: Record<string, string | undefined>;
|
|
155
|
-
ipfsGateway?: string;
|
|
156
|
-
}>;
|
|
157
|
-
|
|
158
|
-
declare class ApiCallWitness<TParams extends ApiCallWitnessParams = ApiCallWitnessParams> extends AbstractWitness<TParams, ApiCallPayload, ApiCallResult> {
|
|
159
|
-
static readonly configSchemas: Schema[];
|
|
160
|
-
static readonly defaultConfigSchema: Schema;
|
|
161
|
-
get accept(): MimeTypes;
|
|
162
|
-
get ipfsGateway(): string | undefined;
|
|
163
|
-
get timeout(): number | undefined;
|
|
164
|
-
getFullUri(call?: ApiCallPayload): string;
|
|
165
|
-
getHeaders(headers?: Record<string, string | undefined>): Record<string, string | undefined>;
|
|
166
|
-
protected observeHandler(inPayloads?: ApiCallPayload[]): Promise<ApiCallResult[]>;
|
|
167
|
-
private httpGet;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
export { type ApiCallBase64Result, type ApiCallErrorResult, type ApiCallFields, type ApiCallJsonResult, type ApiCallJsonResultType, type ApiCallPayload, type ApiCallResult, ApiCallResultSchema, ApiCallSchema, ApiCallWitness, type ApiCallWitnessConfig, type ApiCallWitnessConfigBase, ApiCallWitnessConfigSchema, type ApiCallWitnessParams, type ApiCallXmlResult, type ApiUriCallPayload, type ApiUriCallWitnessConfig, type ApiUriTemplateCallPayload, type ApiUriTemplateCallWitnessConfig, type HttpMeta, type MimeTypes, type Queries, type Verb, asApiCallBase64Result, asApiCallJsonResult, asApiCallPayload, asApiCallResult, asApiCallWitnessConfig, asApiCallXmlResult, asApiUriCallPayload, asApiUriCallWitnessConfig, asApiUriTemplateCall, asApiUriTemplateCallWitnessConfig, isApiCallBase64Result, isApiCallErrorResult, isApiCallJsonResult, isApiCallPayload, isApiCallResult, isApiCallWitnessConfig, isApiCallXmlResult, isApiUriCallPayload, isApiUriCallWitnessConfig, isApiUriTemplateCallPayload, isApiUriTemplateCallWitnessConfig };
|
|
1
|
+
export * from './Payload/index.ts';
|
|
2
|
+
export * from './Witness/index.ts';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA"}
|
package/dist/neutral/index.mjs
CHANGED
|
@@ -71,7 +71,9 @@ import { isPayloadOfSchemaType as isPayloadOfSchemaType5 } from "@xyo-network/pa
|
|
|
71
71
|
var isApiCallErrorResult = (value) => !!isPayloadOfSchemaType5(ApiCallResultSchema) && (value.http?.status ?? 200) >= 400;
|
|
72
72
|
|
|
73
73
|
// src/Payload/types/ApiCallJsonResult.ts
|
|
74
|
-
import {
|
|
74
|
+
import {
|
|
75
|
+
AsObjectFactory as AsObjectFactory7
|
|
76
|
+
} from "@xylabs/object";
|
|
75
77
|
import { isPayloadOfSchemaType as isPayloadOfSchemaType6 } from "@xyo-network/payload-model";
|
|
76
78
|
var isApiCallJsonResult = (x) => {
|
|
77
79
|
return isPayloadOfSchemaType6(ApiCallResultSchema)(x) && x?.contentType === "application/json";
|
|
@@ -218,7 +220,7 @@ var ApiCallWitness = class extends AbstractWitness {
|
|
|
218
220
|
throw error;
|
|
219
221
|
}
|
|
220
222
|
}
|
|
221
|
-
// eslint-disable-next-line complexity
|
|
223
|
+
// eslint-disable-next-line complexity
|
|
222
224
|
async httpGet(url, call, headers) {
|
|
223
225
|
const result = {
|
|
224
226
|
call,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Payload/identity/asApiCall.ts","../../src/Payload/identity/isApiCall.ts","../../src/Payload/Schema.ts","../../src/Payload/identity/asApiCallBase64Result.ts","../../src/Payload/identity/isApiCallBase64Result.ts","../../src/Payload/identity/asApiCallResult.ts","../../src/Payload/identity/isApiCallResult.ts","../../src/Payload/identity/asApiCallXmlResult.ts","../../src/Payload/identity/isApiCallXmlResult.ts","../../src/Payload/identity/asApiUriCall.ts","../../src/Payload/identity/isApiUriCall.ts","../../src/Payload/identity/asApiUriTemplateCall.ts","../../src/Payload/identity/isApiUriTemplateCall.ts","../../src/Payload/identity/isApiCallErrorResult.ts","../../src/Payload/types/ApiCallJsonResult.ts","../../src/Witness/Config.ts","../../src/Witness/Schema.ts","../../src/Witness/Witness.ts","../../src/lib/checkIpfsUrl.ts"],"sourcesContent":["import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallPayload } from './isApiCall.ts'\n\nexport const asApiCallPayload = AsObjectFactory.create(isApiCallPayload)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallSchema } from '../Schema.ts'\nimport type { ApiCallPayload } from '../types/index.ts'\n\nexport const isApiCallPayload = isPayloadOfSchemaType<ApiCallPayload>(ApiCallSchema)\n","export const ApiCallSchema = 'network.xyo.api.call'\nexport type ApiCallSchema = typeof ApiCallSchema\n\nexport const ApiCallResultSchema = `${ApiCallSchema}.result`\nexport type ApiCallResultSchema = typeof ApiCallResultSchema\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallBase64Result } from './isApiCallBase64Result.ts'\n\nexport const asApiCallBase64Result = AsObjectFactory.create(isApiCallBase64Result)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport type { ApiCallBase64Result, ApiCallResult } from '../types/index.ts'\n\nexport const isApiCallBase64Result = (x?: unknown | null): x is ApiCallBase64Result => {\n return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && typeof (x as ApiCallBase64Result)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallResult } from './isApiCallResult.ts'\n\nexport const asApiCallResult = AsObjectFactory.create(isApiCallResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport type { ApiCallResult } from '../types/index.ts'\n\nexport const isApiCallResult = isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallXmlResult } from './isApiCallXmlResult.ts'\n\nexport const asApiCallXmlResult = AsObjectFactory.create(isApiCallXmlResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport type { ApiCallResult, ApiCallXmlResult } from '../types/index.ts'\n\nexport const isApiCallXmlResult = (x?: unknown | null): x is ApiCallXmlResult => {\n return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && typeof (x as ApiCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriCallPayload } from './isApiUriCall.ts'\n\nexport const asApiUriCallPayload = AsObjectFactory.create(isApiUriCallPayload)\n","import type { ApiUriCallPayload } from '../types/index.ts'\nimport { isApiCallPayload } from './isApiCall.ts'\n\nexport const isApiUriCallPayload = (value?: unknown): value is ApiUriCallPayload => isApiCallPayload(value) && !!(value as ApiUriCallPayload).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriTemplateCallPayload } from './isApiUriTemplateCall.ts'\n\nexport const asApiUriTemplateCall = AsObjectFactory.create(isApiUriTemplateCallPayload)\n","import type { ApiUriTemplateCallPayload } from '../types/index.ts'\nimport { isApiCallPayload } from './isApiCall.ts'\n\nexport const isApiUriTemplateCallPayload = (value?: unknown): value is ApiUriTemplateCallPayload =>\n isApiCallPayload(value) && !!((value as ApiUriTemplateCallPayload).uriTemplate || (value as ApiUriTemplateCallPayload).params)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport type { ApiCallErrorResult, ApiCallResult } from '../types/index.ts'\n\nexport const isApiCallErrorResult = (value: unknown): value is ApiCallErrorResult =>\n !!isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema) && ((value as ApiCallErrorResult).http?.status ?? 200) >= 400\n","import type { Hash } from '@xylabs/hex'\nimport type { JsonArray, JsonObject } from '@xylabs/object'\nimport { AsObjectFactory } from '@xylabs/object'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport type { ApiCallResult } from './ApiCallResult.ts'\n\nexport type ApiCallJsonResultType = JsonArray | JsonObject\n\nexport type ApiCallJsonResult<T extends ApiCallJsonResultType = ApiCallJsonResultType> = Payload<\n {\n call: Hash\n contentType: 'application/json'\n data: T\n },\n ApiCallResultSchema\n>\n\nexport const isApiCallJsonResult = <T extends ApiCallJsonResultType = ApiCallJsonResultType>(x?: unknown | null): x is ApiCallJsonResult<T> => {\n return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && (x as ApiCallJsonResult)?.contentType === 'application/json'\n}\nexport const asApiCallJsonResult = AsObjectFactory.create(isApiCallJsonResult)\n","import { AsObjectFactory } from '@xylabs/object'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport type { WitnessConfig } from '@xyo-network/witness-model'\n\nimport type {\n ApiCallPayload, ApiUriCallPayload, ApiUriTemplateCallPayload, MimeTypes,\n} from '../Payload/index.ts'\nimport { ApiCallWitnessConfigSchema } from './Schema.ts'\n\nexport type ApiCallWitnessConfigBase = WitnessConfig<{\n accept?: MimeTypes\n headers?: Record<string, string | undefined>\n queries?: ApiCallPayload['queries']\n schema: ApiCallWitnessConfigSchema\n timeout?: number\n verb?: ApiCallPayload['verb']\n}>\n\nexport type ApiUriCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n uri: ApiUriCallPayload['uri']\n }\n>\n\nexport type ApiUriTemplateCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: ApiUriTemplateCallPayload['uriTemplate']\n }\n>\n\nexport type ApiCallWitnessConfig = ApiUriCallWitnessConfig | ApiUriTemplateCallWitnessConfig | ApiCallWitnessConfigBase\n\nexport const isApiCallWitnessConfig = isPayloadOfSchemaType<ApiCallWitnessConfig>(ApiCallWitnessConfigSchema)\nexport const asApiCallWitnessConfig = AsObjectFactory.create(isApiCallWitnessConfig)\n\nexport const isApiUriCallWitnessConfig = (value?: unknown): value is ApiUriCallWitnessConfig =>\n isApiCallWitnessConfig(value) && !!(value as ApiUriCallWitnessConfig).uri\nexport const asApiUriCallWitnessConfig = AsObjectFactory.create(isApiUriCallWitnessConfig)\n\nexport const isApiUriTemplateCallWitnessConfig = (value?: unknown): value is ApiUriTemplateCallWitnessConfig =>\n isApiCallWitnessConfig(value) && !!(value as ApiUriTemplateCallWitnessConfig).uriTemplate\nexport const asApiUriTemplateCallWitnessConfig = AsObjectFactory.create(isApiUriTemplateCallWitnessConfig)\n","export const ApiCallWitnessConfigSchema = 'network.xyo.api.call.witness.config'\nexport type ApiCallWitnessConfigSchema = typeof ApiCallWitnessConfigSchema\n","/* eslint-disable max-statements */\nimport { assertEx } from '@xylabs/assert'\nimport { AxiosJson } from '@xylabs/axios'\nimport type { Hash } from '@xylabs/hex'\nimport { URL } from '@xylabs/url'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Schema } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport type { AxiosError } from 'axios'\nimport { Axios } from 'axios'\nimport { fromByteArray } from 'base64-js'\nimport fillTemplate from 'es6-dynamic-template'\n\nimport { checkIpfsUrl } from '../lib/index.ts'\nimport type {\n ApiCallBase64Result,\n ApiCallErrorResult,\n ApiCallJsonResult,\n ApiCallJsonResultType,\n ApiCallPayload,\n ApiCallResult,\n ApiCallXmlResult,\n MimeTypes,\n} from '../Payload/index.ts'\nimport {\n ApiCallResultSchema,\n ApiCallSchema,\n asApiUriCallPayload,\n asApiUriTemplateCall,\n} from '../Payload/index.ts'\nimport { asApiUriCallWitnessConfig, asApiUriTemplateCallWitnessConfig } from './Config.ts'\nimport type { ApiCallWitnessParams } from './Params.ts'\nimport { ApiCallWitnessConfigSchema } from './Schema.ts'\n\nexport class ApiCallWitness<TParams extends ApiCallWitnessParams = ApiCallWitnessParams> extends AbstractWitness<TParams, ApiCallPayload, ApiCallResult> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, ApiCallWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = ApiCallWitnessConfigSchema\n\n get accept(): MimeTypes {\n return this.config.accept ?? 'application/json'\n }\n\n get ipfsGateway() {\n return this.params.ipfsGateway\n }\n\n get timeout() {\n return this.config.timeout\n }\n\n getFullUri(call?: ApiCallPayload): string {\n const { uri: callUri } = asApiUriCallPayload(call) ?? {}\n const {\n uriTemplate: callUriTemplate, params: callParams, queries: callQueries,\n } = asApiUriTemplateCall(call) ?? {}\n const { uri: configUri } = asApiUriCallWitnessConfig(this.config) ?? {}\n const {\n uriTemplate: configUriTemplate, params: configParams, queries: configQueries,\n } = asApiUriTemplateCallWitnessConfig(this.config) ?? {}\n\n const params = { ...configParams, ...callParams }\n\n let url: URL | undefined = undefined\n\n if (callUri) {\n url = new URL(callUri)\n } else if (callUriTemplate) {\n url = new URL(fillTemplate(callUriTemplate, params))\n } else if (configUri) {\n url = new URL(configUri)\n } else if (configUriTemplate) {\n url = new URL(fillTemplate(configUriTemplate, params))\n }\n\n if (url) {\n const queries = Object.entries({ ...configQueries, ...callQueries })\n for (let [key, value] of queries) url?.searchParams.set(key, value)\n return url.href\n }\n\n throw new Error('Unable to determine uri. No uri/uriTemplate specified in either the call or config.')\n }\n\n getHeaders(headers?: Record<string, string | undefined>): Record<string, string | undefined> {\n return {\n ...this.params.headers, ...this.config.headers, ...headers,\n }\n }\n\n protected override async observeHandler(inPayloads: ApiCallPayload[] = []): Promise<ApiCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType<ApiCallPayload>(ApiCallSchema)).map(async (call) => {\n const { verb: callVerb } = call\n const { verb: configVerb } = this.config\n const verb = callVerb ?? configVerb ?? 'get'\n const uri = this.getFullUri(call)\n\n const validatedUri = assertEx(checkIpfsUrl(uri, this.ipfsGateway), () => 'Invalid URI')\n\n if (verb === 'get') {\n return this.httpGet(validatedUri, (await PayloadBuilder.dataHash(call)))\n }\n\n const observation: ApiCallResult = {\n call: await PayloadBuilder.hash(call),\n schema: ApiCallResultSchema,\n }\n return observation\n }),\n )\n return observations\n } catch (ex) {\n const error = ex as Error\n console.error(`Error [${this.config.name}]: ${error.message}`)\n console.log(error.stack)\n throw error\n }\n }\n\n // eslint-disable-next-line complexity, sonarjs/cognitive-complexity\n private async httpGet(url: string, call: Hash, headers?: Record<string, string | undefined>): Promise<ApiCallResult> {\n const result: ApiCallResult = {\n call,\n schema: ApiCallResultSchema,\n }\n try {\n switch (this.accept) {\n case 'application/json': {\n const axios = new AxiosJson({ headers: { ...this.getHeaders(headers), Accept: 'application/json' }, timeout: this.timeout })\n const response = await axios.get<ApiCallJsonResultType>(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as ApiCallJsonResult\n jsonResult.data = response.data\n jsonResult.contentType = 'application/json'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n case 'application/xml':\n case 'text/xml': {\n const axios = new Axios({\n headers: { ...this.getHeaders(headers), Accept: this.accept },\n responseType: 'arraybuffer',\n timeout: this.timeout,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const xmlResult = result as ApiCallXmlResult\n xmlResult.data = Buffer.from(response.data, 'binary').toString('utf8')\n xmlResult.contentType = response.headers['content-type']?.toString() ?? 'application/xml'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n default: {\n const axios = new Axios({\n headers: this.params.headers, responseType: 'arraybuffer', timeout: this.timeout,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as ApiCallBase64Result\n jsonResult.data = fromByteArray(response.data)\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n }\n } catch (ex) {\n const axiosError = ex as AxiosError\n if (axiosError.isAxiosError) {\n if (axiosError?.response?.status !== undefined) {\n result.http = result.http ?? {}\n result.http.status = axiosError?.response?.status\n }\n if (axiosError?.code !== undefined) {\n result.http = result.http ?? {}\n result.http.code = axiosError?.code\n }\n return result\n } else {\n throw ex\n }\n }\n return result\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { URL } from '@xylabs/url'\n\nconst allowIpfsIoRepair = true\n\n/**\n * Returns the equivalent IPFS gateway URL for the supplied URL.\n * @param urlToCheck The URL to check\n * @returns If the supplied URL is an IPFS URL, it converts the URL to the\n * equivalent IPFS gateway URL. Otherwise, returns the original URL.\n */\nexport const checkIpfsUrl = (urlToCheck: string, ipfsGateway?: string): string => {\n try {\n const url = new URL(urlToCheck)\n let protocol = url.protocol\n let host = url.host\n let path = url.pathname\n const query = url.search\n if (protocol === 'ipfs:') {\n protocol = 'https:'\n host = assertEx(ipfsGateway, () => 'No ipfsGateway provided')\n path = url.host === 'ipfs' ? `ipfs${path}` : `ipfs/${url.host}${path}`\n const root = `${protocol}//${host}/${path}`\n return query?.length > 0 ? `${root}?${query}` : root\n } else if (allowIpfsIoRepair && protocol === 'https' && host === 'ipfs.io') {\n protocol = 'https:'\n host = assertEx(ipfsGateway, () => 'No ipfsGateway provided')\n const pathParts = path.split('/')\n if (pathParts[0] === 'ipfs') {\n pathParts.shift()\n }\n path = pathParts.join('/')\n const root = `${protocol}//${host}/${path}`\n return query?.length > 0 ? `${root}?${query}` : root\n } else {\n return urlToCheck\n }\n } catch {\n // const error = ex as Error\n // console.error(`${error.name}:${error.message} [${urlToCheck}]`)\n // console.log(error.stack)\n return urlToCheck\n }\n}\n"],"mappings":"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","names":["AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","AsObjectFactory","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","assertEx","URL","isPayloadOfSchemaType","URL","isPayloadOfSchemaType","assertEx"]}
|
|
1
|
+
{"version":3,"sources":["../../src/Payload/identity/asApiCall.ts","../../src/Payload/identity/isApiCall.ts","../../src/Payload/Schema.ts","../../src/Payload/identity/asApiCallBase64Result.ts","../../src/Payload/identity/isApiCallBase64Result.ts","../../src/Payload/identity/asApiCallResult.ts","../../src/Payload/identity/isApiCallResult.ts","../../src/Payload/identity/asApiCallXmlResult.ts","../../src/Payload/identity/isApiCallXmlResult.ts","../../src/Payload/identity/asApiUriCall.ts","../../src/Payload/identity/isApiUriCall.ts","../../src/Payload/identity/asApiUriTemplateCall.ts","../../src/Payload/identity/isApiUriTemplateCall.ts","../../src/Payload/identity/isApiCallErrorResult.ts","../../src/Payload/types/ApiCallJsonResult.ts","../../src/Witness/Config.ts","../../src/Witness/Schema.ts","../../src/Witness/Witness.ts","../../src/lib/checkIpfsUrl.ts"],"sourcesContent":["import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallPayload } from './isApiCall.ts'\n\nexport const asApiCallPayload = AsObjectFactory.create(isApiCallPayload)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallSchema } from '../Schema.ts'\nimport { ApiCallPayload } from '../types/index.ts'\n\nexport const isApiCallPayload = isPayloadOfSchemaType<ApiCallPayload>(ApiCallSchema)\n","export const ApiCallSchema = 'network.xyo.api.call'\nexport type ApiCallSchema = typeof ApiCallSchema\n\nexport const ApiCallResultSchema = `${ApiCallSchema}.result`\nexport type ApiCallResultSchema = typeof ApiCallResultSchema\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallBase64Result } from './isApiCallBase64Result.ts'\n\nexport const asApiCallBase64Result = AsObjectFactory.create(isApiCallBase64Result)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport { ApiCallBase64Result, ApiCallResult } from '../types/index.ts'\n\nexport const isApiCallBase64Result = (x?: unknown | null): x is ApiCallBase64Result => {\n return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && typeof (x as ApiCallBase64Result)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallResult } from './isApiCallResult.ts'\n\nexport const asApiCallResult = AsObjectFactory.create(isApiCallResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport { ApiCallResult } from '../types/index.ts'\n\nexport const isApiCallResult = isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCallXmlResult } from './isApiCallXmlResult.ts'\n\nexport const asApiCallXmlResult = AsObjectFactory.create(isApiCallXmlResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport { ApiCallResult, ApiCallXmlResult } from '../types/index.ts'\n\nexport const isApiCallXmlResult = (x?: unknown | null): x is ApiCallXmlResult => {\n return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && typeof (x as ApiCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriCallPayload } from './isApiUriCall.ts'\n\nexport const asApiUriCallPayload = AsObjectFactory.create(isApiUriCallPayload)\n","import { ApiUriCallPayload } from '../types/index.ts'\nimport { isApiCallPayload } from './isApiCall.ts'\n\nexport const isApiUriCallPayload = (value?: unknown): value is ApiUriCallPayload => isApiCallPayload(value) && !!(value as ApiUriCallPayload).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriTemplateCallPayload } from './isApiUriTemplateCall.ts'\n\nexport const asApiUriTemplateCall = AsObjectFactory.create(isApiUriTemplateCallPayload)\n","import { ApiUriTemplateCallPayload } from '../types/index.ts'\nimport { isApiCallPayload } from './isApiCall.ts'\n\nexport const isApiUriTemplateCallPayload = (value?: unknown): value is ApiUriTemplateCallPayload =>\n isApiCallPayload(value) && !!((value as ApiUriTemplateCallPayload).uriTemplate || (value as ApiUriTemplateCallPayload).params)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport { ApiCallErrorResult, ApiCallResult } from '../types/index.ts'\n\nexport const isApiCallErrorResult = (value: unknown): value is ApiCallErrorResult =>\n !!isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema) && ((value as ApiCallErrorResult).http?.status ?? 200) >= 400\n","import { Hash } from '@xylabs/hex'\nimport {\n AsObjectFactory, JsonArray, JsonObject,\n} from '@xylabs/object'\nimport { isPayloadOfSchemaType, Payload } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.ts'\nimport { ApiCallResult } from './ApiCallResult.ts'\n\nexport type ApiCallJsonResultType = JsonArray | JsonObject\n\nexport type ApiCallJsonResult<T extends ApiCallJsonResultType = ApiCallJsonResultType> = Payload<\n {\n call: Hash\n contentType: 'application/json'\n data: T\n },\n ApiCallResultSchema\n>\n\nexport const isApiCallJsonResult = <T extends ApiCallJsonResultType = ApiCallJsonResultType>(x?: unknown | null): x is ApiCallJsonResult<T> => {\n return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && (x as ApiCallJsonResult)?.contentType === 'application/json'\n}\nexport const asApiCallJsonResult = AsObjectFactory.create(isApiCallJsonResult)\n","import { AsObjectFactory } from '@xylabs/object'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport { WitnessConfig } from '@xyo-network/witness-model'\n\nimport {\n ApiCallPayload, ApiUriCallPayload, ApiUriTemplateCallPayload, MimeTypes,\n} from '../Payload/index.ts'\nimport { ApiCallWitnessConfigSchema } from './Schema.ts'\n\nexport type ApiCallWitnessConfigBase = WitnessConfig<{\n accept?: MimeTypes\n headers?: Record<string, string | undefined>\n queries?: ApiCallPayload['queries']\n schema: ApiCallWitnessConfigSchema\n timeout?: number\n verb?: ApiCallPayload['verb']\n}>\n\nexport type ApiUriCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n uri: ApiUriCallPayload['uri']\n }\n>\n\nexport type ApiUriTemplateCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: ApiUriTemplateCallPayload['uriTemplate']\n }\n>\n\nexport type ApiCallWitnessConfig = ApiUriCallWitnessConfig | ApiUriTemplateCallWitnessConfig | ApiCallWitnessConfigBase\n\nexport const isApiCallWitnessConfig = isPayloadOfSchemaType<ApiCallWitnessConfig>(ApiCallWitnessConfigSchema)\nexport const asApiCallWitnessConfig = AsObjectFactory.create(isApiCallWitnessConfig)\n\nexport const isApiUriCallWitnessConfig = (value?: unknown): value is ApiUriCallWitnessConfig =>\n isApiCallWitnessConfig(value) && !!(value as ApiUriCallWitnessConfig).uri\nexport const asApiUriCallWitnessConfig = AsObjectFactory.create(isApiUriCallWitnessConfig)\n\nexport const isApiUriTemplateCallWitnessConfig = (value?: unknown): value is ApiUriTemplateCallWitnessConfig =>\n isApiCallWitnessConfig(value) && !!(value as ApiUriTemplateCallWitnessConfig).uriTemplate\nexport const asApiUriTemplateCallWitnessConfig = AsObjectFactory.create(isApiUriTemplateCallWitnessConfig)\n","export const ApiCallWitnessConfigSchema = 'network.xyo.api.call.witness.config'\nexport type ApiCallWitnessConfigSchema = typeof ApiCallWitnessConfigSchema\n","/* eslint-disable max-statements */\nimport { assertEx } from '@xylabs/assert'\nimport { AxiosJson } from '@xylabs/axios'\nimport { Hash } from '@xylabs/hex'\nimport { URL } from '@xylabs/url'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { isPayloadOfSchemaType, Schema } from '@xyo-network/payload-model'\nimport { Axios, AxiosError } from 'axios'\nimport { fromByteArray } from 'base64-js'\nimport fillTemplate from 'es6-dynamic-template'\n\nimport { checkIpfsUrl } from '../lib/index.ts'\nimport {\n ApiCallBase64Result,\n ApiCallErrorResult,\n ApiCallJsonResult,\n ApiCallJsonResultType,\n ApiCallPayload,\n ApiCallResult,\n ApiCallResultSchema,\n ApiCallSchema,\n ApiCallXmlResult,\n asApiUriCallPayload,\n asApiUriTemplateCall,\n MimeTypes,\n} from '../Payload/index.ts'\nimport { asApiUriCallWitnessConfig, asApiUriTemplateCallWitnessConfig } from './Config.ts'\nimport { ApiCallWitnessParams } from './Params.ts'\nimport { ApiCallWitnessConfigSchema } from './Schema.ts'\n\nexport class ApiCallWitness<TParams extends ApiCallWitnessParams = ApiCallWitnessParams> extends AbstractWitness<TParams, ApiCallPayload, ApiCallResult> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, ApiCallWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = ApiCallWitnessConfigSchema\n\n get accept(): MimeTypes {\n return this.config.accept ?? 'application/json'\n }\n\n get ipfsGateway() {\n return this.params.ipfsGateway\n }\n\n get timeout() {\n return this.config.timeout\n }\n\n getFullUri(call?: ApiCallPayload): string {\n const { uri: callUri } = asApiUriCallPayload(call) ?? {}\n const {\n uriTemplate: callUriTemplate, params: callParams, queries: callQueries,\n } = asApiUriTemplateCall(call) ?? {}\n const { uri: configUri } = asApiUriCallWitnessConfig(this.config) ?? {}\n const {\n uriTemplate: configUriTemplate, params: configParams, queries: configQueries,\n } = asApiUriTemplateCallWitnessConfig(this.config) ?? {}\n\n const params = { ...configParams, ...callParams }\n\n let url: URL | undefined = undefined\n\n if (callUri) {\n url = new URL(callUri)\n } else if (callUriTemplate) {\n url = new URL(fillTemplate(callUriTemplate, params))\n } else if (configUri) {\n url = new URL(configUri)\n } else if (configUriTemplate) {\n url = new URL(fillTemplate(configUriTemplate, params))\n }\n\n if (url) {\n const queries = Object.entries({ ...configQueries, ...callQueries })\n for (let [key, value] of queries) url?.searchParams.set(key, value)\n return url.href\n }\n\n throw new Error('Unable to determine uri. No uri/uriTemplate specified in either the call or config.')\n }\n\n getHeaders(headers?: Record<string, string | undefined>): Record<string, string | undefined> {\n return {\n ...this.params.headers, ...this.config.headers, ...headers,\n }\n }\n\n protected override async observeHandler(inPayloads: ApiCallPayload[] = []): Promise<ApiCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType<ApiCallPayload>(ApiCallSchema)).map(async (call) => {\n const { verb: callVerb } = call\n const { verb: configVerb } = this.config\n const verb = callVerb ?? configVerb ?? 'get'\n const uri = this.getFullUri(call)\n\n const validatedUri = assertEx(checkIpfsUrl(uri, this.ipfsGateway), () => 'Invalid URI')\n\n if (verb === 'get') {\n return this.httpGet(validatedUri, (await PayloadBuilder.dataHash(call)))\n }\n\n const observation: ApiCallResult = {\n call: await PayloadBuilder.hash(call),\n schema: ApiCallResultSchema,\n }\n return observation\n }),\n )\n return observations\n } catch (ex) {\n const error = ex as Error\n console.error(`Error [${this.config.name}]: ${error.message}`)\n console.log(error.stack)\n throw error\n }\n }\n\n // eslint-disable-next-line complexity\n private async httpGet(url: string, call: Hash, headers?: Record<string, string | undefined>): Promise<ApiCallResult> {\n const result: ApiCallResult = {\n call,\n schema: ApiCallResultSchema,\n }\n try {\n switch (this.accept) {\n case 'application/json': {\n const axios = new AxiosJson({ headers: { ...this.getHeaders(headers), Accept: 'application/json' }, timeout: this.timeout })\n const response = await axios.get<ApiCallJsonResultType>(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as ApiCallJsonResult\n jsonResult.data = response.data\n jsonResult.contentType = 'application/json'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n case 'application/xml':\n case 'text/xml': {\n const axios = new Axios({\n headers: { ...this.getHeaders(headers), Accept: this.accept },\n responseType: 'arraybuffer',\n timeout: this.timeout,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const xmlResult = result as ApiCallXmlResult\n xmlResult.data = Buffer.from(response.data, 'binary').toString('utf8')\n xmlResult.contentType = response.headers['content-type']?.toString() ?? 'application/xml'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n default: {\n const axios = new Axios({\n headers: this.params.headers, responseType: 'arraybuffer', timeout: this.timeout,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as ApiCallBase64Result\n jsonResult.data = fromByteArray(response.data)\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n }\n } catch (ex) {\n const axiosError = ex as AxiosError\n if (axiosError.isAxiosError) {\n if (axiosError?.response?.status !== undefined) {\n result.http = result.http ?? {}\n result.http.status = axiosError?.response?.status\n }\n if (axiosError?.code !== undefined) {\n result.http = result.http ?? {}\n result.http.code = axiosError?.code\n }\n return result\n } else {\n throw ex\n }\n }\n return result\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { URL } from '@xylabs/url'\n\nconst allowIpfsIoRepair = true\n\n/**\n * Returns the equivalent IPFS gateway URL for the supplied URL.\n * @param urlToCheck The URL to check\n * @returns If the supplied URL is an IPFS URL, it converts the URL to the\n * equivalent IPFS gateway URL. Otherwise, returns the original URL.\n */\nexport const checkIpfsUrl = (urlToCheck: string, ipfsGateway?: string): string => {\n try {\n const url = new URL(urlToCheck)\n let protocol = url.protocol\n let host = url.host\n let path = url.pathname\n const query = url.search\n if (protocol === 'ipfs:') {\n protocol = 'https:'\n host = assertEx(ipfsGateway, () => 'No ipfsGateway provided')\n path = url.host === 'ipfs' ? `ipfs${path}` : `ipfs/${url.host}${path}`\n const root = `${protocol}//${host}/${path}`\n return query?.length > 0 ? `${root}?${query}` : root\n } else if (allowIpfsIoRepair && protocol === 'https' && host === 'ipfs.io') {\n protocol = 'https:'\n host = assertEx(ipfsGateway, () => 'No ipfsGateway provided')\n const pathParts = path.split('/')\n if (pathParts[0] === 'ipfs') {\n pathParts.shift()\n }\n path = pathParts.join('/')\n const root = `${protocol}//${host}/${path}`\n return query?.length > 0 ? `${root}?${query}` : root\n } else {\n return urlToCheck\n }\n } catch {\n // const error = ex as Error\n // console.error(`${error.name}:${error.message} [${urlToCheck}]`)\n // console.log(error.stack)\n return urlToCheck\n }\n}\n"],"mappings":"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","names":["AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","AsObjectFactory","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","AsObjectFactory","isPayloadOfSchemaType","isPayloadOfSchemaType","AsObjectFactory","assertEx","URL","isPayloadOfSchemaType","URL","isPayloadOfSchemaType","assertEx"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the equivalent IPFS gateway URL for the supplied URL.
|
|
3
|
+
* @param urlToCheck The URL to check
|
|
4
|
+
* @returns If the supplied URL is an IPFS URL, it converts the URL to the
|
|
5
|
+
* equivalent IPFS gateway URL. Otherwise, returns the original URL.
|
|
6
|
+
*/
|
|
7
|
+
export declare const checkIpfsUrl: (urlToCheck: string, ipfsGateway?: string) => string;
|
|
8
|
+
//# sourceMappingURL=checkIpfsUrl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkIpfsUrl.d.ts","sourceRoot":"","sources":["../../../src/lib/checkIpfsUrl.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,YAAY,MAAM,EAAE,cAAc,MAAM,KAAG,MAgCvE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/api-call-witness",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.3",
|
|
4
4
|
"description": "Typescript/Javascript Plugins for XYO Platform",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -34,26 +34,26 @@
|
|
|
34
34
|
"@xylabs/hex": "^4.5.1",
|
|
35
35
|
"@xylabs/object": "^4.5.1",
|
|
36
36
|
"@xylabs/url": "^4.5.1",
|
|
37
|
-
"@xyo-network/abstract-witness": "^3.9.
|
|
38
|
-
"@xyo-network/payload-builder": "^3.9.
|
|
39
|
-
"@xyo-network/payload-model": "^3.9.
|
|
40
|
-
"@xyo-network/witness-model": "^3.9.
|
|
41
|
-
"axios": "^1.
|
|
37
|
+
"@xyo-network/abstract-witness": "^3.9.23",
|
|
38
|
+
"@xyo-network/payload-builder": "^3.9.23",
|
|
39
|
+
"@xyo-network/payload-model": "^3.9.23",
|
|
40
|
+
"@xyo-network/witness-model": "^3.9.23",
|
|
41
|
+
"axios": "^1.8.1",
|
|
42
42
|
"base64-js": "^1.5.1",
|
|
43
43
|
"es6-dynamic-template": "^2.0.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@xylabs/ts-scripts-yarn3": "^5.0.
|
|
47
|
-
"@xylabs/tsconfig": "^5.0.
|
|
46
|
+
"@xylabs/ts-scripts-yarn3": "^5.0.39",
|
|
47
|
+
"@xylabs/tsconfig": "^5.0.39",
|
|
48
48
|
"@xylabs/vitest-extended": "^4.5.1",
|
|
49
|
-
"@xyo-network/account": "^3.9.
|
|
50
|
-
"@xyo-network/manifest": "^3.9.
|
|
51
|
-
"@xyo-network/module-factory-locator": "^3.9.
|
|
52
|
-
"@xyo-network/module-model": "^3.9.
|
|
53
|
-
"@xyo-network/sentinel-model": "^3.9.
|
|
49
|
+
"@xyo-network/account": "^3.9.23",
|
|
50
|
+
"@xyo-network/manifest": "^3.9.23",
|
|
51
|
+
"@xyo-network/module-factory-locator": "^3.9.23",
|
|
52
|
+
"@xyo-network/module-model": "^3.9.23",
|
|
53
|
+
"@xyo-network/sentinel-model": "^3.9.23",
|
|
54
54
|
"ethers": "^6.13.5",
|
|
55
|
-
"typescript": "^5.
|
|
56
|
-
"vitest": "^3.0.
|
|
55
|
+
"typescript": "^5.8.2",
|
|
56
|
+
"vitest": "^3.0.7"
|
|
57
57
|
},
|
|
58
58
|
"publishConfig": {
|
|
59
59
|
"access": "public"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
2
2
|
|
|
3
3
|
import { ApiCallSchema } from '../Schema.ts'
|
|
4
|
-
import
|
|
4
|
+
import { ApiCallPayload } from '../types/index.ts'
|
|
5
5
|
|
|
6
6
|
export const isApiCallPayload = isPayloadOfSchemaType<ApiCallPayload>(ApiCallSchema)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
2
2
|
|
|
3
3
|
import { ApiCallResultSchema } from '../Schema.ts'
|
|
4
|
-
import
|
|
4
|
+
import { ApiCallBase64Result, ApiCallResult } from '../types/index.ts'
|
|
5
5
|
|
|
6
6
|
export const isApiCallBase64Result = (x?: unknown | null): x is ApiCallBase64Result => {
|
|
7
7
|
return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && typeof (x as ApiCallBase64Result)?.data === 'string'
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
2
2
|
|
|
3
3
|
import { ApiCallResultSchema } from '../Schema.ts'
|
|
4
|
-
import
|
|
4
|
+
import { ApiCallErrorResult, ApiCallResult } from '../types/index.ts'
|
|
5
5
|
|
|
6
6
|
export const isApiCallErrorResult = (value: unknown): value is ApiCallErrorResult =>
|
|
7
7
|
!!isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema) && ((value as ApiCallErrorResult).http?.status ?? 200) >= 400
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
2
2
|
|
|
3
3
|
import { ApiCallResultSchema } from '../Schema.ts'
|
|
4
|
-
import
|
|
4
|
+
import { ApiCallResult } from '../types/index.ts'
|
|
5
5
|
|
|
6
6
|
export const isApiCallResult = isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
2
2
|
|
|
3
3
|
import { ApiCallResultSchema } from '../Schema.ts'
|
|
4
|
-
import
|
|
4
|
+
import { ApiCallResult, ApiCallXmlResult } from '../types/index.ts'
|
|
5
5
|
|
|
6
6
|
export const isApiCallXmlResult = (x?: unknown | null): x is ApiCallXmlResult => {
|
|
7
7
|
return isPayloadOfSchemaType<ApiCallResult>(ApiCallResultSchema)(x) && typeof (x as ApiCallXmlResult)?.data === 'string'
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { ApiUriCallPayload } from '../types/index.ts'
|
|
2
2
|
import { isApiCallPayload } from './isApiCall.ts'
|
|
3
3
|
|
|
4
4
|
export const isApiUriCallPayload = (value?: unknown): value is ApiUriCallPayload => isApiCallPayload(value) && !!(value as ApiUriCallPayload).uri
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { ApiUriTemplateCallPayload } from '../types/index.ts'
|
|
2
2
|
import { isApiCallPayload } from './isApiCall.ts'
|
|
3
3
|
|
|
4
4
|
export const isApiUriTemplateCallPayload = (value?: unknown): value is ApiUriTemplateCallPayload =>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { ApiUriCallPayload } from './ApiUriCall.ts'
|
|
2
|
+
import { ApiUriTemplateCallPayload } from './ApiUriTemplateCall.ts'
|
|
3
3
|
|
|
4
4
|
export type ApiCallPayload = ApiUriCallPayload | ApiUriTemplateCallPayload
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { Hash } from '@xylabs/hex'
|
|
2
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
3
3
|
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
4
|
+
import { ApiCallResultSchema } from '../Schema.ts'
|
|
5
|
+
import { ApiCallJsonResult } from './ApiCallJsonResult.ts'
|
|
6
|
+
import { ApiCallXmlResult } from './ApiCallXmlResult.ts'
|
|
7
7
|
|
|
8
8
|
export type ApiCallBase64Result = Payload<
|
|
9
9
|
{
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { Hash } from '@xylabs/hex'
|
|
2
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
3
3
|
|
|
4
|
-
import
|
|
5
|
-
import
|
|
4
|
+
import { ApiCallResultSchema } from '../Schema.ts'
|
|
5
|
+
import { HttpMeta } from './HttpMeta.ts'
|
|
6
6
|
|
|
7
7
|
export type ApiCallErrorResult = Payload<
|
|
8
8
|
{
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
1
|
+
import { Hash } from '@xylabs/hex'
|
|
2
|
+
import {
|
|
3
|
+
AsObjectFactory, JsonArray, JsonObject,
|
|
4
|
+
} from '@xylabs/object'
|
|
5
|
+
import { isPayloadOfSchemaType, Payload } from '@xyo-network/payload-model'
|
|
6
6
|
|
|
7
7
|
import { ApiCallResultSchema } from '../Schema.ts'
|
|
8
|
-
import
|
|
8
|
+
import { ApiCallResult } from './ApiCallResult.ts'
|
|
9
9
|
|
|
10
10
|
export type ApiCallJsonResultType = JsonArray | JsonObject
|
|
11
11
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { JsonArray, JsonObject } from '@xylabs/object'
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
3
|
+
import { ApiCallBase64Result } from './ApiCallBase64Result.ts'
|
|
4
|
+
import { ApiCallErrorResult } from './ApiCallErrorResult.ts'
|
|
5
|
+
import { ApiCallJsonResult } from './ApiCallJsonResult.ts'
|
|
6
6
|
|
|
7
7
|
type NewType = JsonObject
|
|
8
8
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { Hash } from '@xylabs/hex'
|
|
2
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import { ApiCallResultSchema } from '../Schema.ts'
|
|
5
5
|
|
|
6
6
|
export type ApiCallXmlResult = Payload<
|
|
7
7
|
{
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import
|
|
3
|
+
import { ApiCallSchema } from '../Schema.ts'
|
|
4
|
+
import { ApiCallFields } from './ApiCallFields.ts'
|
|
5
5
|
|
|
6
6
|
export type ApiUriCallPayload = Payload<
|
|
7
7
|
ApiCallFields & {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import
|
|
3
|
+
import { ApiCallSchema } from '../Schema.ts'
|
|
4
|
+
import { ApiCallFields } from './ApiCallFields.ts'
|
|
5
5
|
|
|
6
6
|
export type ApiUriTemplateCallPayload = Payload<
|
|
7
7
|
ApiCallFields & {
|
package/src/Witness/Config.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { AsObjectFactory } from '@xylabs/object'
|
|
2
2
|
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
3
|
-
import
|
|
3
|
+
import { WitnessConfig } from '@xyo-network/witness-model'
|
|
4
4
|
|
|
5
|
-
import
|
|
5
|
+
import {
|
|
6
6
|
ApiCallPayload, ApiUriCallPayload, ApiUriTemplateCallPayload, MimeTypes,
|
|
7
7
|
} from '../Payload/index.ts'
|
|
8
8
|
import { ApiCallWitnessConfigSchema } from './Schema.ts'
|
package/src/Witness/Params.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { WitnessParams } from '@xyo-network/witness-model'
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { ApiCallWitnessConfig } from './Config.ts'
|
|
4
4
|
|
|
5
5
|
export type ApiCallWitnessParams = WitnessParams<
|
|
6
6
|
ApiCallWitnessConfig,
|