@xyo-network/http-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.
Files changed (102) hide show
  1. package/dist/neutral/Payload/Schema.d.ts +5 -0
  2. package/dist/neutral/Payload/Schema.d.ts.map +1 -0
  3. package/dist/neutral/Payload/identity/asHttpCall.d.ts +5 -0
  4. package/dist/neutral/Payload/identity/asHttpCall.d.ts.map +1 -0
  5. package/dist/neutral/Payload/identity/asHttpCallBase64Result.d.ts +5 -0
  6. package/dist/neutral/Payload/identity/asHttpCallBase64Result.d.ts.map +1 -0
  7. package/dist/neutral/Payload/identity/asHttpCallResult.d.ts +5 -0
  8. package/dist/neutral/Payload/identity/asHttpCallResult.d.ts.map +1 -0
  9. package/dist/neutral/Payload/identity/asHttpCallXmlResult.d.ts +5 -0
  10. package/dist/neutral/Payload/identity/asHttpCallXmlResult.d.ts.map +1 -0
  11. package/dist/neutral/Payload/identity/asHttpUriCall.d.ts +5 -0
  12. package/dist/neutral/Payload/identity/asHttpUriCall.d.ts.map +1 -0
  13. package/dist/neutral/Payload/identity/asHttpUriTemplateCall.d.ts +5 -0
  14. package/dist/neutral/Payload/identity/asHttpUriTemplateCall.d.ts.map +1 -0
  15. package/dist/neutral/Payload/identity/index.d.ts +14 -0
  16. package/dist/neutral/Payload/identity/index.d.ts.map +1 -0
  17. package/dist/neutral/Payload/identity/isHttpCall.d.ts +3 -0
  18. package/dist/neutral/Payload/identity/isHttpCall.d.ts.map +1 -0
  19. package/dist/neutral/Payload/identity/isHttpCallBase64Result.d.ts +3 -0
  20. package/dist/neutral/Payload/identity/isHttpCallBase64Result.d.ts.map +1 -0
  21. package/dist/neutral/Payload/identity/isHttpCallErrorResult.d.ts +3 -0
  22. package/dist/neutral/Payload/identity/isHttpCallErrorResult.d.ts.map +1 -0
  23. package/dist/neutral/Payload/identity/isHttpCallResult.d.ts +3 -0
  24. package/dist/neutral/Payload/identity/isHttpCallResult.d.ts.map +1 -0
  25. package/dist/neutral/Payload/identity/isHttpCallXmlResult.d.ts +3 -0
  26. package/dist/neutral/Payload/identity/isHttpCallXmlResult.d.ts.map +1 -0
  27. package/dist/neutral/Payload/identity/isHttpUriCall.d.ts +3 -0
  28. package/dist/neutral/Payload/identity/isHttpUriCall.d.ts.map +1 -0
  29. package/dist/neutral/Payload/identity/isHttpUriTemplateCall.d.ts +3 -0
  30. package/dist/neutral/Payload/identity/isHttpUriTemplateCall.d.ts.map +1 -0
  31. package/dist/neutral/Payload/index.d.ts +4 -0
  32. package/dist/neutral/Payload/index.d.ts.map +1 -0
  33. package/dist/neutral/Payload/types/HttpCall.d.ts +4 -0
  34. package/dist/neutral/Payload/types/HttpCall.d.ts.map +1 -0
  35. package/dist/neutral/Payload/types/HttpCallBase64Result.d.ts +11 -0
  36. package/dist/neutral/Payload/types/HttpCallBase64Result.d.ts.map +1 -0
  37. package/dist/neutral/Payload/types/HttpCallErrorResult.d.ts +9 -0
  38. package/dist/neutral/Payload/types/HttpCallErrorResult.d.ts.map +1 -0
  39. package/dist/neutral/Payload/types/HttpCallFields.d.ts +8 -0
  40. package/dist/neutral/Payload/types/HttpCallFields.d.ts.map +1 -0
  41. package/dist/neutral/Payload/types/HttpCallHtmlResult.d.ts +9 -0
  42. package/dist/neutral/Payload/types/HttpCallHtmlResult.d.ts.map +1 -0
  43. package/dist/neutral/Payload/types/HttpCallJsonResult.d.ts +16 -0
  44. package/dist/neutral/Payload/types/HttpCallJsonResult.d.ts.map +1 -0
  45. package/dist/neutral/Payload/types/HttpCallResult.d.ts +8 -0
  46. package/dist/neutral/Payload/types/HttpCallResult.d.ts.map +1 -0
  47. package/dist/neutral/Payload/types/HttpCallXmlResult.d.ts +9 -0
  48. package/dist/neutral/Payload/types/HttpCallXmlResult.d.ts.map +1 -0
  49. package/dist/neutral/Payload/types/HttpMeta.d.ts +5 -0
  50. package/dist/neutral/Payload/types/HttpMeta.d.ts.map +1 -0
  51. package/dist/neutral/Payload/types/HttpUriCall.d.ts +7 -0
  52. package/dist/neutral/Payload/types/HttpUriCall.d.ts.map +1 -0
  53. package/dist/neutral/Payload/types/HttpUriTemplateCall.d.ts +8 -0
  54. package/dist/neutral/Payload/types/HttpUriTemplateCall.d.ts.map +1 -0
  55. package/dist/neutral/Payload/types/MimeTypes.d.ts +2 -0
  56. package/dist/neutral/Payload/types/MimeTypes.d.ts.map +1 -0
  57. package/dist/neutral/Payload/types/Queries.d.ts +2 -0
  58. package/dist/neutral/Payload/types/Queries.d.ts.map +1 -0
  59. package/dist/neutral/Payload/types/Verb.d.ts +2 -0
  60. package/dist/neutral/Payload/types/Verb.d.ts.map +1 -0
  61. package/dist/neutral/Payload/types/index.d.ts +15 -0
  62. package/dist/neutral/Payload/types/index.d.ts.map +1 -0
  63. package/dist/neutral/Witness/Config.d.ts +35 -0
  64. package/dist/neutral/Witness/Config.d.ts.map +1 -0
  65. package/dist/neutral/Witness/Params.d.ts +7 -0
  66. package/dist/neutral/Witness/Params.d.ts.map +1 -0
  67. package/dist/neutral/Witness/Schema.d.ts +3 -0
  68. package/dist/neutral/Witness/Schema.d.ts.map +1 -0
  69. package/dist/neutral/Witness/Witness.d.ts +16 -0
  70. package/dist/neutral/Witness/Witness.d.ts.map +1 -0
  71. package/dist/neutral/Witness/index.d.ts +5 -0
  72. package/dist/neutral/Witness/index.d.ts.map +1 -0
  73. package/dist/neutral/index.d.ts +3 -176
  74. package/dist/neutral/index.d.ts.map +1 -0
  75. package/dist/neutral/index.mjs +5 -3
  76. package/dist/neutral/index.mjs.map +1 -1
  77. package/dist/neutral/lib/checkIpfsUrl.d.ts +8 -0
  78. package/dist/neutral/lib/checkIpfsUrl.d.ts.map +1 -0
  79. package/dist/neutral/lib/index.d.ts +2 -0
  80. package/dist/neutral/lib/index.d.ts.map +1 -0
  81. package/package.json +16 -16
  82. package/src/Payload/identity/isHttpCall.ts +1 -1
  83. package/src/Payload/identity/isHttpCallBase64Result.ts +1 -1
  84. package/src/Payload/identity/isHttpCallErrorResult.ts +1 -1
  85. package/src/Payload/identity/isHttpCallResult.ts +1 -1
  86. package/src/Payload/identity/isHttpCallXmlResult.ts +1 -1
  87. package/src/Payload/identity/isHttpUriCall.ts +1 -1
  88. package/src/Payload/identity/isHttpUriTemplateCall.ts +1 -1
  89. package/src/Payload/types/HttpCall.ts +2 -2
  90. package/src/Payload/types/HttpCallBase64Result.ts +5 -5
  91. package/src/Payload/types/HttpCallErrorResult.ts +4 -4
  92. package/src/Payload/types/HttpCallFields.ts +2 -2
  93. package/src/Payload/types/HttpCallHtmlResult.ts +3 -3
  94. package/src/Payload/types/HttpCallJsonResult.ts +6 -6
  95. package/src/Payload/types/HttpCallResult.ts +4 -4
  96. package/src/Payload/types/HttpCallXmlResult.ts +3 -3
  97. package/src/Payload/types/HttpUriCall.ts +3 -3
  98. package/src/Payload/types/HttpUriTemplateCall.ts +3 -3
  99. package/src/Witness/Config.ts +2 -2
  100. package/src/Witness/Params.ts +2 -2
  101. package/src/Witness/Witness.ts +12 -16
  102. package/xy.config.ts +1 -1
@@ -1,176 +1,3 @@
1
- import * as _xylabs_object from '@xylabs/object';
2
- import { JsonArray, JsonObject } from '@xylabs/object';
3
- import * as _store__xylabs_promise_npm_4_5_1_97d36b712b_package from '.store/@xylabs-promise-npm-4.5.1-97d36b712b/package';
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 asApiCall: {
10
- <TType extends HttpCall>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
11
- <TType extends HttpCall>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpCall>, config?: _xylabs_object.TypeCheckConfig): TType;
12
- };
13
-
14
- declare const asHttpCallBase64Result: {
15
- <TType extends HttpCallBase64Result>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
16
- <TType extends HttpCallBase64Result>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpCallBase64Result>, config?: _xylabs_object.TypeCheckConfig): TType;
17
- };
18
-
19
- declare const asHttpCallResult: {
20
- <TType extends HttpCallResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
21
- <TType extends HttpCallResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpCallResult>, config?: _xylabs_object.TypeCheckConfig): TType;
22
- };
23
-
24
- declare const asHttpCallXmlResult: {
25
- <TType extends HttpCallXmlResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
26
- <TType extends HttpCallXmlResult>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpCallXmlResult>, config?: _xylabs_object.TypeCheckConfig): TType;
27
- };
28
-
29
- declare const asHttpUriCall: {
30
- <TType extends HttpUriCall>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
31
- <TType extends HttpUriCall>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpUriCall>, config?: _xylabs_object.TypeCheckConfig): TType;
32
- };
33
-
34
- declare const asHttpUriTemplateCall: {
35
- <TType extends HttpUriTemplateCall>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
36
- <TType extends HttpUriTemplateCall>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpUriTemplateCall>, config?: _xylabs_object.TypeCheckConfig): TType;
37
- };
38
-
39
- declare const HttpCallSchema = "network.xyo.http.call";
40
- type HttpCallSchema = typeof HttpCallSchema;
41
- declare const HttpCallResultSchema = "network.xyo.http.call.result";
42
- type HttpCallResultSchema = typeof HttpCallResultSchema;
43
-
44
- type Queries = Record<string, string>;
45
-
46
- type Verb = 'get' | 'post';
47
-
48
- interface HttpCallFields {
49
- headers?: Record<string, string | undefined>;
50
- queries?: Queries;
51
- verb?: Verb;
52
- }
53
-
54
- type HttpUriCall = Payload<HttpCallFields & {
55
- uri: string;
56
- }, HttpCallSchema>;
57
-
58
- type HttpUriTemplateCall = Payload<HttpCallFields & {
59
- params?: Record<string, string>;
60
- uriTemplate?: string;
61
- }, HttpCallSchema>;
62
-
63
- type HttpCall = HttpUriCall | HttpUriTemplateCall;
64
-
65
- type HttpCallJsonResultType = JsonArray | JsonObject;
66
- type HttpCallJsonResult<T extends HttpCallJsonResultType = HttpCallJsonResultType> = Payload<{
67
- call: Hash;
68
- contentType: 'application/json';
69
- data: T;
70
- }, HttpCallResultSchema>;
71
- declare const isHttpCallJsonResult: <T extends HttpCallJsonResultType = HttpCallJsonResultType>(x?: unknown | null) => x is HttpCallJsonResult<T>;
72
- declare const asHttpCallJsonResult: {
73
- <TType extends HttpCallJsonResult<HttpCallJsonResultType>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
74
- <TType extends HttpCallJsonResult<HttpCallJsonResultType>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpCallJsonResult<HttpCallJsonResultType>>, config?: _xylabs_object.TypeCheckConfig): TType;
75
- };
76
-
77
- type HttpCallXmlResult = Payload<{
78
- call: Hash;
79
- contentType: 'application/xml' | 'text/xml';
80
- data: string;
81
- }, HttpCallResultSchema>;
82
-
83
- type HttpCallBase64Result = Payload<{
84
- call: Hash;
85
- contentType: Exclude<Exclude<string, HttpCallJsonResult['contentType']>, HttpCallXmlResult['contentType']>;
86
- data: string;
87
- }, HttpCallResultSchema>;
88
-
89
- interface HttpMeta {
90
- code?: string;
91
- status?: number;
92
- }
93
-
94
- type HttpCallErrorResult = Payload<{
95
- call: Hash;
96
- http?: HttpMeta;
97
- }, HttpCallResultSchema>;
98
-
99
- type HttpCallHtmlResult = Payload<{
100
- call: Hash;
101
- contentType: 'text/html';
102
- data: string;
103
- }, HttpCallResultSchema>;
104
-
105
- type NewType = JsonObject;
106
- type HttpCallResult<TJson extends JsonArray | JsonObject = JsonArray | NewType> = HttpCallBase64Result | HttpCallJsonResult<TJson> | HttpCallErrorResult;
107
-
108
- 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';
109
-
110
- declare const isHttpCall: (x?: unknown | null) => x is HttpCall;
111
-
112
- declare const isHttpCallBase64Result: (x?: unknown | null) => x is HttpCallBase64Result;
113
-
114
- declare const isHttpCallErrorResult: (value: unknown) => value is HttpCallErrorResult;
115
-
116
- declare const isHttpCallResult: (x?: unknown | null) => x is HttpCallResult;
117
-
118
- declare const isHttpCallXmlResult: (x?: unknown | null) => x is HttpCallXmlResult;
119
-
120
- declare const isHttpUriCall: (value?: unknown) => value is HttpUriCall;
121
-
122
- declare const isHttpUriTemplateCall: (value?: unknown) => value is HttpUriTemplateCall;
123
-
124
- declare const HttpCallWitnessConfigSchema = "network.xyo.http.call.witness.config";
125
- type HttpCallWitnessConfigSchema = typeof HttpCallWitnessConfigSchema;
126
-
127
- type HttpCallWitnessConfigBase = WitnessConfig<{
128
- accept?: MimeTypes;
129
- headers?: Record<string, string | undefined>;
130
- queries?: HttpCall['queries'];
131
- schema: HttpCallWitnessConfigSchema;
132
- timeout?: number;
133
- verb?: HttpCall['verb'];
134
- }>;
135
- type HttpUriCallWitnessConfig = WitnessConfig<HttpCallWitnessConfigBase & {
136
- uri: HttpUriCall['uri'];
137
- }>;
138
- type HttpUriTemplateCallWitnessConfig = WitnessConfig<HttpCallWitnessConfigBase & {
139
- params?: Record<string, string>;
140
- uriTemplate: HttpUriTemplateCall['uriTemplate'];
141
- }>;
142
- type HttpCallWitnessConfig = HttpUriCallWitnessConfig | HttpUriTemplateCallWitnessConfig | HttpCallWitnessConfigBase;
143
- declare const isHttpCallWitnessConfig: (x?: unknown | null) => x is HttpCallWitnessConfig;
144
- declare const asHttpCallWitnessConfig: {
145
- <TType extends HttpCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
146
- <TType extends HttpCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpCallWitnessConfig>, config?: _xylabs_object.TypeCheckConfig): TType;
147
- };
148
- declare const isHttpUriCallWitnessConfig: (value?: unknown) => value is HttpUriCallWitnessConfig;
149
- declare const asHttpUriCallWitnessConfig: {
150
- <TType extends HttpUriCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
151
- <TType extends HttpUriCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpUriCallWitnessConfig>, config?: _xylabs_object.TypeCheckConfig): TType;
152
- };
153
- declare const isHttpUriTemplateCallWitnessConfig: (value?: unknown) => value is HttpUriTemplateCallWitnessConfig;
154
- declare const asHttpUriTemplateCallWitnessConfig: {
155
- <TType extends HttpUriTemplateCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, config?: _xylabs_object.TypeCheckConfig): TType | undefined;
156
- <TType extends HttpUriTemplateCallWitnessConfig>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise, assert: _xylabs_object.StringOrAlertFunction<HttpUriTemplateCallWitnessConfig>, config?: _xylabs_object.TypeCheckConfig): TType;
157
- };
158
-
159
- type HttpCallWitnessParams = WitnessParams<HttpCallWitnessConfig, {
160
- headers?: Record<string, string | undefined>;
161
- ipfsGateway?: string;
162
- }>;
163
-
164
- declare class HttpCallWitness<TParams extends HttpCallWitnessParams = HttpCallWitnessParams> extends AbstractWitness<TParams, HttpCall, HttpCallResult> {
165
- static readonly configSchemas: Schema[];
166
- static readonly defaultConfigSchema: Schema;
167
- get accept(): MimeTypes;
168
- get ipfsGateway(): string | undefined;
169
- get timeout(): number | undefined;
170
- getFullUri(call?: HttpCall): string;
171
- getHeaders(headers?: Record<string, string | undefined>): Record<string, string | undefined>;
172
- protected observeHandler(inPayloads?: HttpCall[]): Promise<HttpCallResult[]>;
173
- private httpGet;
174
- }
175
-
176
- export { type HttpCall, type HttpCallBase64Result, type HttpCallErrorResult, type HttpCallFields, type HttpCallHtmlResult, type HttpCallJsonResult, type HttpCallJsonResultType, type HttpCallResult, HttpCallResultSchema, HttpCallSchema, HttpCallWitness, type HttpCallWitnessConfig, type HttpCallWitnessConfigBase, HttpCallWitnessConfigSchema, type HttpCallWitnessParams, type HttpCallXmlResult, type HttpMeta, type HttpUriCall, type HttpUriCallWitnessConfig, type HttpUriTemplateCall, type HttpUriTemplateCallWitnessConfig, type MimeTypes, type Queries, type Verb, asApiCall, asHttpCallBase64Result, asHttpCallJsonResult, asHttpCallResult, asHttpCallWitnessConfig, asHttpCallXmlResult, asHttpUriCall, asHttpUriCallWitnessConfig, asHttpUriTemplateCall, asHttpUriTemplateCallWitnessConfig, isHttpCall, isHttpCallBase64Result, isHttpCallErrorResult, isHttpCallJsonResult, isHttpCallResult, isHttpCallWitnessConfig, isHttpCallXmlResult, isHttpUriCall, isHttpUriCallWitnessConfig, isHttpUriTemplateCall, isHttpUriTemplateCallWitnessConfig };
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"}
@@ -71,7 +71,9 @@ import { isPayloadOfSchemaType as isPayloadOfSchemaType5 } from "@xyo-network/pa
71
71
  var isHttpCallErrorResult = (value) => !!isPayloadOfSchemaType5(HttpCallResultSchema) && (value.http?.status ?? 200) >= 400;
72
72
 
73
73
  // src/Payload/types/HttpCallJsonResult.ts
74
- import { AsObjectFactory as AsObjectFactory7 } from "@xylabs/object";
74
+ import {
75
+ AsObjectFactory as AsObjectFactory7
76
+ } from "@xylabs/object";
75
77
  import { isPayloadOfSchemaType as isPayloadOfSchemaType6 } from "@xyo-network/payload-model";
76
78
  var isHttpCallJsonResult = (x) => {
77
79
  return isPayloadOfSchemaType6(HttpCallResultSchema)(x) && x?.contentType === "application/json";
@@ -98,7 +100,7 @@ import { assertEx as assertEx2 } from "@xylabs/assert";
98
100
  import { AxiosJson } from "@xylabs/axios";
99
101
  import { URL as URL2 } from "@xylabs/url";
100
102
  import { AbstractWitness } from "@xyo-network/abstract-witness";
101
- import { PayloadHasher } from "@xyo-network/hash";
103
+ import { ObjectHasher } from "@xyo-network/hash";
102
104
  import { PayloadBuilder } from "@xyo-network/payload-builder";
103
105
  import { isPayloadOfSchemaType as isPayloadOfSchemaType8 } from "@xyo-network/payload-model";
104
106
  import { Axios } from "axios";
@@ -207,7 +209,7 @@ var HttpCallWitness = class extends AbstractWitness {
207
209
  return this.httpGet(validatedUri, await PayloadBuilder.dataHash(call));
208
210
  }
209
211
  const observation = {
210
- call: await PayloadHasher.hash(call),
212
+ call: await ObjectHasher.hash(call),
211
213
  schema: HttpCallResultSchema
212
214
  };
213
215
  return observation;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Payload/identity/asHttpCall.ts","../../src/Payload/identity/isHttpCall.ts","../../src/Payload/Schema.ts","../../src/Payload/identity/asHttpCallBase64Result.ts","../../src/Payload/identity/isHttpCallBase64Result.ts","../../src/Payload/identity/asHttpCallResult.ts","../../src/Payload/identity/isHttpCallResult.ts","../../src/Payload/identity/asHttpCallXmlResult.ts","../../src/Payload/identity/isHttpCallXmlResult.ts","../../src/Payload/identity/asHttpUriCall.ts","../../src/Payload/identity/isHttpUriCall.ts","../../src/Payload/identity/asHttpUriTemplateCall.ts","../../src/Payload/identity/isHttpUriTemplateCall.ts","../../src/Payload/identity/isHttpCallErrorResult.ts","../../src/Payload/types/HttpCallJsonResult.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 { isHttpCall } from './isHttpCall.ts'\n\nexport const asApiCall = AsObjectFactory.create(isHttpCall)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallSchema } from '../Schema.ts'\nimport type { HttpCall } from '../types/index.ts'\n\nexport const isHttpCall = isPayloadOfSchemaType<HttpCall>(HttpCallSchema)\n","export const HttpCallSchema = 'network.xyo.http.call'\nexport type HttpCallSchema = typeof HttpCallSchema\n\nexport const HttpCallResultSchema = `${HttpCallSchema}.result`\nexport type HttpCallResultSchema = typeof HttpCallResultSchema\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpCallBase64Result } from './isHttpCallBase64Result.ts'\n\nexport const asHttpCallBase64Result = AsObjectFactory.create(isHttpCallBase64Result)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport type { HttpCallBase64Result, HttpCallResult } from '../types/index.ts'\n\nexport const isHttpCallBase64Result = (x?: unknown | null): x is HttpCallBase64Result => {\n return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && typeof (x as HttpCallBase64Result)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpCallResult } from './isHttpCallResult.ts'\n\nexport const asHttpCallResult = AsObjectFactory.create(isHttpCallResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport type { HttpCallResult } from '../types/index.ts'\n\nexport const isHttpCallResult = isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpCallXmlResult } from './isHttpCallXmlResult.ts'\n\nexport const asHttpCallXmlResult = AsObjectFactory.create(isHttpCallXmlResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport type { HttpCallResult, HttpCallXmlResult } from '../types/index.ts'\n\nexport const isHttpCallXmlResult = (x?: unknown | null): x is HttpCallXmlResult => {\n return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && typeof (x as HttpCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpUriCall } from './isHttpUriCall.ts'\n\nexport const asHttpUriCall = AsObjectFactory.create(isHttpUriCall)\n","import type { HttpUriCall } from '../types/index.ts'\nimport { isHttpCall } from './isHttpCall.ts'\n\nexport const isHttpUriCall = (value?: unknown): value is HttpUriCall => isHttpCall(value) && !!(value as HttpUriCall).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpUriTemplateCall } from './isHttpUriTemplateCall.ts'\n\nexport const asHttpUriTemplateCall = AsObjectFactory.create(isHttpUriTemplateCall)\n","import type { HttpUriTemplateCall } from '../types/index.ts'\nimport { isHttpCall } from './isHttpCall.ts'\n\nexport const isHttpUriTemplateCall = (value?: unknown): value is HttpUriTemplateCall =>\n isHttpCall(value) && !!((value as HttpUriTemplateCall).uriTemplate || (value as HttpUriTemplateCall).params)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport type { HttpCallErrorResult, HttpCallResult } from '../types/index.ts'\n\nexport const isHttpCallErrorResult = (value: unknown): value is HttpCallErrorResult =>\n !!isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema) && ((value as HttpCallErrorResult).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 { HttpCallResultSchema } from '../Schema.ts'\nimport type { HttpCallResult } from './HttpCallResult.ts'\n\nexport type HttpCallJsonResultType = JsonArray | JsonObject\n\nexport type HttpCallJsonResult<T extends HttpCallJsonResultType = HttpCallJsonResultType> = Payload<\n {\n call: Hash\n contentType: 'application/json'\n data: T\n },\n HttpCallResultSchema\n>\n\nexport const isHttpCallJsonResult = <T extends HttpCallJsonResultType = HttpCallJsonResultType>(x?: unknown | null): x is HttpCallJsonResult<T> => {\n return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && (x as HttpCallJsonResult)?.contentType === 'application/json'\n}\nexport const asHttpCallJsonResult = AsObjectFactory.create(isHttpCallJsonResult)\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 HttpCall, HttpUriCall, HttpUriTemplateCall, MimeTypes,\n} from '../Payload/index.ts'\nimport { HttpCallWitnessConfigSchema } from './Schema.ts'\n\nexport type HttpCallWitnessConfigBase = WitnessConfig<{\n accept?: MimeTypes\n headers?: Record<string, string | undefined>\n queries?: HttpCall['queries']\n schema: HttpCallWitnessConfigSchema\n timeout?: number\n verb?: HttpCall['verb']\n}>\n\nexport type HttpUriCallWitnessConfig = WitnessConfig<\n HttpCallWitnessConfigBase & {\n uri: HttpUriCall['uri']\n }\n>\n\nexport type HttpUriTemplateCallWitnessConfig = WitnessConfig<\n HttpCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: HttpUriTemplateCall['uriTemplate']\n }\n>\n\nexport type HttpCallWitnessConfig = HttpUriCallWitnessConfig | HttpUriTemplateCallWitnessConfig | HttpCallWitnessConfigBase\n\nexport const isHttpCallWitnessConfig = isPayloadOfSchemaType<HttpCallWitnessConfig>(HttpCallWitnessConfigSchema)\nexport const asHttpCallWitnessConfig = AsObjectFactory.create(isHttpCallWitnessConfig)\n\nexport const isHttpUriCallWitnessConfig = (value?: unknown): value is HttpUriCallWitnessConfig =>\n isHttpCallWitnessConfig(value) && !!(value as HttpUriCallWitnessConfig).uri\nexport const asHttpUriCallWitnessConfig = AsObjectFactory.create(isHttpUriCallWitnessConfig)\n\nexport const isHttpUriTemplateCallWitnessConfig = (value?: unknown): value is HttpUriTemplateCallWitnessConfig =>\n isHttpCallWitnessConfig(value) && !!(value as HttpUriTemplateCallWitnessConfig).uriTemplate\nexport const asHttpUriTemplateCallWitnessConfig = AsObjectFactory.create(isHttpUriTemplateCallWitnessConfig)\n","export const HttpCallWitnessConfigSchema = 'network.xyo.http.call.witness.config'\nexport type HttpCallWitnessConfigSchema = typeof HttpCallWitnessConfigSchema\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 { PayloadHasher } from '@xyo-network/hash'\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 HttpCall,\n HttpCallBase64Result,\n HttpCallErrorResult,\n HttpCallJsonResult,\n HttpCallJsonResultType,\n HttpCallResult,\n HttpCallXmlResult,\n MimeTypes,\n} from '../Payload/index.ts'\nimport {\n asHttpUriCall,\n asHttpUriTemplateCall,\n HttpCallResultSchema,\n HttpCallSchema,\n} from '../Payload/index.ts'\nimport type { HttpCallHtmlResult } from '../Payload/types/index.ts'\nimport { asHttpUriCallWitnessConfig, asHttpUriTemplateCallWitnessConfig } from './Config.ts'\nimport type { HttpCallWitnessParams } from './Params.ts'\nimport { HttpCallWitnessConfigSchema } from './Schema.ts'\n\nexport class HttpCallWitness<TParams extends HttpCallWitnessParams = HttpCallWitnessParams> extends AbstractWitness<TParams, HttpCall, HttpCallResult> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, HttpCallWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = HttpCallWitnessConfigSchema\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?: HttpCall): string {\n const { uri: callUri } = asHttpUriCall(call) ?? {}\n const {\n uriTemplate: callUriTemplate, params: callParams, queries: callQueries,\n } = asHttpUriTemplateCall(call) ?? {}\n const { uri: configUri } = asHttpUriCallWitnessConfig(this.config) ?? {}\n const {\n uriTemplate: configUriTemplate, params: configParams, queries: configQueries,\n } = asHttpUriTemplateCallWitnessConfig(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) {\n url?.searchParams.set(key, value)\n }\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: HttpCall[] = []): Promise<HttpCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType<HttpCall>(HttpCallSchema)).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: HttpCallResult = {\n call: await PayloadHasher.hash(call),\n schema: HttpCallResultSchema,\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<HttpCallResult> {\n const result: HttpCallResult = {\n call,\n schema: HttpCallResultSchema,\n }\n try {\n switch (this.accept) {\n case 'application/json': {\n const axios = new AxiosJson({\n headers: { ...this.getHeaders(headers), Accept: 'application/json' }, timeout: this.timeout, decompress: true,\n })\n const response = await axios.get<HttpCallJsonResultType>(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as HttpCallJsonResult\n jsonResult.data = response.data\n jsonResult.contentType = 'application/json'\n } else {\n const errorResult = result as HttpCallErrorResult\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 decompress: true,\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 HttpCallXmlResult\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 HttpCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n case 'text/html':{\n const axios = new Axios({\n headers: { ...this.getHeaders(headers), Accept: this.accept },\n responseType: 'text',\n decompress: true,\n timeout: this.timeout,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const htmlResult = result as HttpCallHtmlResult\n htmlResult.data = response.data\n htmlResult.contentType = response.headers['content-type']?.toString() ?? 'text/html'\n } else {\n const errorResult = result as HttpCallErrorResult\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, decompress: true,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as HttpCallBase64Result\n jsonResult.data = fromByteArray(response.data)\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as HttpCallErrorResult\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/asHttpCall.ts","../../src/Payload/identity/isHttpCall.ts","../../src/Payload/Schema.ts","../../src/Payload/identity/asHttpCallBase64Result.ts","../../src/Payload/identity/isHttpCallBase64Result.ts","../../src/Payload/identity/asHttpCallResult.ts","../../src/Payload/identity/isHttpCallResult.ts","../../src/Payload/identity/asHttpCallXmlResult.ts","../../src/Payload/identity/isHttpCallXmlResult.ts","../../src/Payload/identity/asHttpUriCall.ts","../../src/Payload/identity/isHttpUriCall.ts","../../src/Payload/identity/asHttpUriTemplateCall.ts","../../src/Payload/identity/isHttpUriTemplateCall.ts","../../src/Payload/identity/isHttpCallErrorResult.ts","../../src/Payload/types/HttpCallJsonResult.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 { isHttpCall } from './isHttpCall.ts'\n\nexport const asApiCall = AsObjectFactory.create(isHttpCall)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallSchema } from '../Schema.ts'\nimport { HttpCall } from '../types/index.ts'\n\nexport const isHttpCall = isPayloadOfSchemaType<HttpCall>(HttpCallSchema)\n","export const HttpCallSchema = 'network.xyo.http.call'\nexport type HttpCallSchema = typeof HttpCallSchema\n\nexport const HttpCallResultSchema = `${HttpCallSchema}.result`\nexport type HttpCallResultSchema = typeof HttpCallResultSchema\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpCallBase64Result } from './isHttpCallBase64Result.ts'\n\nexport const asHttpCallBase64Result = AsObjectFactory.create(isHttpCallBase64Result)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport { HttpCallBase64Result, HttpCallResult } from '../types/index.ts'\n\nexport const isHttpCallBase64Result = (x?: unknown | null): x is HttpCallBase64Result => {\n return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && typeof (x as HttpCallBase64Result)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpCallResult } from './isHttpCallResult.ts'\n\nexport const asHttpCallResult = AsObjectFactory.create(isHttpCallResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport { HttpCallResult } from '../types/index.ts'\n\nexport const isHttpCallResult = isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpCallXmlResult } from './isHttpCallXmlResult.ts'\n\nexport const asHttpCallXmlResult = AsObjectFactory.create(isHttpCallXmlResult)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport { HttpCallResult, HttpCallXmlResult } from '../types/index.ts'\n\nexport const isHttpCallXmlResult = (x?: unknown | null): x is HttpCallXmlResult => {\n return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && typeof (x as HttpCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpUriCall } from './isHttpUriCall.ts'\n\nexport const asHttpUriCall = AsObjectFactory.create(isHttpUriCall)\n","import { HttpUriCall } from '../types/index.ts'\nimport { isHttpCall } from './isHttpCall.ts'\n\nexport const isHttpUriCall = (value?: unknown): value is HttpUriCall => isHttpCall(value) && !!(value as HttpUriCall).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isHttpUriTemplateCall } from './isHttpUriTemplateCall.ts'\n\nexport const asHttpUriTemplateCall = AsObjectFactory.create(isHttpUriTemplateCall)\n","import { HttpUriTemplateCall } from '../types/index.ts'\nimport { isHttpCall } from './isHttpCall.ts'\n\nexport const isHttpUriTemplateCall = (value?: unknown): value is HttpUriTemplateCall =>\n isHttpCall(value) && !!((value as HttpUriTemplateCall).uriTemplate || (value as HttpUriTemplateCall).params)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { HttpCallResultSchema } from '../Schema.ts'\nimport { HttpCallErrorResult, HttpCallResult } from '../types/index.ts'\n\nexport const isHttpCallErrorResult = (value: unknown): value is HttpCallErrorResult =>\n !!isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema) && ((value as HttpCallErrorResult).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 { HttpCallResultSchema } from '../Schema.ts'\nimport { HttpCallResult } from './HttpCallResult.ts'\n\nexport type HttpCallJsonResultType = JsonArray | JsonObject\n\nexport type HttpCallJsonResult<T extends HttpCallJsonResultType = HttpCallJsonResultType> = Payload<\n {\n call: Hash\n contentType: 'application/json'\n data: T\n },\n HttpCallResultSchema\n>\n\nexport const isHttpCallJsonResult = <T extends HttpCallJsonResultType = HttpCallJsonResultType>(x?: unknown | null): x is HttpCallJsonResult<T> => {\n return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && (x as HttpCallJsonResult)?.contentType === 'application/json'\n}\nexport const asHttpCallJsonResult = AsObjectFactory.create(isHttpCallJsonResult)\n","import { AsObjectFactory } from '@xylabs/object'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport { WitnessConfig } from '@xyo-network/witness-model'\n\nimport {\n HttpCall, HttpUriCall, HttpUriTemplateCall, MimeTypes,\n} from '../Payload/index.ts'\nimport { HttpCallWitnessConfigSchema } from './Schema.ts'\n\nexport type HttpCallWitnessConfigBase = WitnessConfig<{\n accept?: MimeTypes\n headers?: Record<string, string | undefined>\n queries?: HttpCall['queries']\n schema: HttpCallWitnessConfigSchema\n timeout?: number\n verb?: HttpCall['verb']\n}>\n\nexport type HttpUriCallWitnessConfig = WitnessConfig<\n HttpCallWitnessConfigBase & {\n uri: HttpUriCall['uri']\n }\n>\n\nexport type HttpUriTemplateCallWitnessConfig = WitnessConfig<\n HttpCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: HttpUriTemplateCall['uriTemplate']\n }\n>\n\nexport type HttpCallWitnessConfig = HttpUriCallWitnessConfig | HttpUriTemplateCallWitnessConfig | HttpCallWitnessConfigBase\n\nexport const isHttpCallWitnessConfig = isPayloadOfSchemaType<HttpCallWitnessConfig>(HttpCallWitnessConfigSchema)\nexport const asHttpCallWitnessConfig = AsObjectFactory.create(isHttpCallWitnessConfig)\n\nexport const isHttpUriCallWitnessConfig = (value?: unknown): value is HttpUriCallWitnessConfig =>\n isHttpCallWitnessConfig(value) && !!(value as HttpUriCallWitnessConfig).uri\nexport const asHttpUriCallWitnessConfig = AsObjectFactory.create(isHttpUriCallWitnessConfig)\n\nexport const isHttpUriTemplateCallWitnessConfig = (value?: unknown): value is HttpUriTemplateCallWitnessConfig =>\n isHttpCallWitnessConfig(value) && !!(value as HttpUriTemplateCallWitnessConfig).uriTemplate\nexport const asHttpUriTemplateCallWitnessConfig = AsObjectFactory.create(isHttpUriTemplateCallWitnessConfig)\n","export const HttpCallWitnessConfigSchema = 'network.xyo.http.call.witness.config'\nexport type HttpCallWitnessConfigSchema = typeof HttpCallWitnessConfigSchema\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 { ObjectHasher } from '@xyo-network/hash'\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 asHttpUriCall,\n asHttpUriTemplateCall,\n HttpCall,\n HttpCallBase64Result,\n HttpCallErrorResult,\n HttpCallJsonResult,\n HttpCallJsonResultType,\n HttpCallResult,\n HttpCallResultSchema,\n HttpCallSchema,\n HttpCallXmlResult,\n MimeTypes,\n} from '../Payload/index.ts'\nimport { HttpCallHtmlResult } from '../Payload/types/index.ts'\nimport { asHttpUriCallWitnessConfig, asHttpUriTemplateCallWitnessConfig } from './Config.ts'\nimport { HttpCallWitnessParams } from './Params.ts'\nimport { HttpCallWitnessConfigSchema } from './Schema.ts'\n\nexport class HttpCallWitness<TParams extends HttpCallWitnessParams = HttpCallWitnessParams> extends AbstractWitness<TParams, HttpCall, HttpCallResult> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, HttpCallWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = HttpCallWitnessConfigSchema\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?: HttpCall): string {\n const { uri: callUri } = asHttpUriCall(call) ?? {}\n const {\n uriTemplate: callUriTemplate, params: callParams, queries: callQueries,\n } = asHttpUriTemplateCall(call) ?? {}\n const { uri: configUri } = asHttpUriCallWitnessConfig(this.config) ?? {}\n const {\n uriTemplate: configUriTemplate, params: configParams, queries: configQueries,\n } = asHttpUriTemplateCallWitnessConfig(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) {\n url?.searchParams.set(key, value)\n }\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: HttpCall[] = []): Promise<HttpCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType<HttpCall>(HttpCallSchema)).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: HttpCallResult = {\n call: await ObjectHasher.hash(call),\n schema: HttpCallResultSchema,\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<HttpCallResult> {\n const result: HttpCallResult = {\n call,\n schema: HttpCallResultSchema,\n }\n try {\n switch (this.accept) {\n case 'application/json': {\n const axios = new AxiosJson({\n headers: { ...this.getHeaders(headers), Accept: 'application/json' }, timeout: this.timeout, decompress: true,\n })\n const response = await axios.get<HttpCallJsonResultType>(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as HttpCallJsonResult\n jsonResult.data = response.data\n jsonResult.contentType = 'application/json'\n } else {\n const errorResult = result as HttpCallErrorResult\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 decompress: true,\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 HttpCallXmlResult\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 HttpCallErrorResult\n errorResult.http = { status: response.status }\n }\n break\n }\n case 'text/html':{\n const axios = new Axios({\n headers: { ...this.getHeaders(headers), Accept: this.accept },\n responseType: 'text',\n decompress: true,\n timeout: this.timeout,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const htmlResult = result as HttpCallHtmlResult\n htmlResult.data = response.data\n htmlResult.contentType = response.headers['content-type']?.toString() ?? 'text/html'\n } else {\n const errorResult = result as HttpCallErrorResult\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, decompress: true,\n })\n const response = await axios.get(url)\n if (response.status >= 200 && response.status < 300) {\n const jsonResult = result as HttpCallBase64Result\n jsonResult.data = fromByteArray(response.data)\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as HttpCallErrorResult\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":";AAAA,SAAS,uBAAuB;;;ACAhC,SAAS,6BAA6B;;;ACA/B,IAAM,iBAAiB;AAGvB,IAAM,uBAAuB,GAAG,cAAc;;;ADE9C,IAAM,aAAa,sBAAgC,cAAc;;;ADDjE,IAAM,YAAY,gBAAgB,OAAO,UAAU;;;AGJ1D,SAAS,mBAAAA,wBAAuB;;;ACAhC,SAAS,yBAAAC,8BAA6B;AAK/B,IAAM,yBAAyB,CAAC,MAAkD;AACvF,SAAOC,uBAAsC,oBAAoB,EAAE,CAAC,KAAK,OAAQ,GAA4B,SAAS;AACxH;;;ADHO,IAAM,yBAAyBC,iBAAgB,OAAO,sBAAsB;;;AEJnF,SAAS,mBAAAC,wBAAuB;;;ACAhC,SAAS,yBAAAC,8BAA6B;AAK/B,IAAM,mBAAmBC,uBAAsC,oBAAoB;;;ADDnF,IAAM,mBAAmBC,iBAAgB,OAAO,gBAAgB;;;AEJvE,SAAS,mBAAAC,wBAAuB;;;ACAhC,SAAS,yBAAAC,8BAA6B;AAK/B,IAAM,sBAAsB,CAAC,MAA+C;AACjF,SAAOC,uBAAsC,oBAAoB,EAAE,CAAC,KAAK,OAAQ,GAAyB,SAAS;AACrH;;;ADHO,IAAM,sBAAsBC,iBAAgB,OAAO,mBAAmB;;;AEJ7E,SAAS,mBAAAC,wBAAuB;;;ACGzB,IAAM,gBAAgB,CAAC,UAA0C,WAAW,KAAK,KAAK,CAAC,CAAE,MAAsB;;;ADC/G,IAAM,gBAAgBC,iBAAgB,OAAO,aAAa;;;AEJjE,SAAS,mBAAAC,wBAAuB;;;ACGzB,IAAM,wBAAwB,CAAC,UACpC,WAAW,KAAK,KAAK,CAAC,EAAG,MAA8B,eAAgB,MAA8B;;;ADAhG,IAAM,wBAAwBC,iBAAgB,OAAO,qBAAqB;;;AEJjF,SAAS,yBAAAC,8BAA6B;AAK/B,IAAM,wBAAwB,CAAC,UACpC,CAAC,CAACC,uBAAsC,oBAAoB,MAAO,MAA8B,MAAM,UAAU,QAAQ;;;ACL3H;AAAA,EACE,mBAAAC;AAAA,OACK;AACP,SAAS,yBAAAC,8BAAsC;AAgBxC,IAAM,uBAAuB,CAA4D,MAAmD;AACjJ,SAAOC,uBAAsC,oBAAoB,EAAE,CAAC,KAAM,GAA0B,gBAAgB;AACtH;AACO,IAAM,uBAAuBC,iBAAgB,OAAO,oBAAoB;;;ACvB/E,SAAS,mBAAAC,wBAAuB;AAChC,SAAS,yBAAAC,8BAA6B;;;ACD/B,IAAM,8BAA8B;;;ADiCpC,IAAM,0BAA0BC,uBAA6C,2BAA2B;AACxG,IAAM,0BAA0BC,iBAAgB,OAAO,uBAAuB;AAE9E,IAAM,6BAA6B,CAAC,UACzC,wBAAwB,KAAK,KAAK,CAAC,CAAE,MAAmC;AACnE,IAAM,6BAA6BA,iBAAgB,OAAO,0BAA0B;AAEpF,IAAM,qCAAqC,CAAC,UACjD,wBAAwB,KAAK,KAAK,CAAC,CAAE,MAA2C;AAC3E,IAAM,qCAAqCA,iBAAgB,OAAO,kCAAkC;;;AEzC3G,SAAS,YAAAC,iBAAgB;AACzB,SAAS,iBAAiB;AAE1B,SAAS,OAAAC,YAAW;AACpB,SAAS,uBAAuB;AAChC,SAAS,oBAAoB;AAC7B,SAAS,sBAAsB;AAC/B,SAAS,yBAAAC,8BAAqC;AAC9C,SAAS,aAAyB;AAClC,SAAS,qBAAqB;AAC9B,OAAO,kBAAkB;;;ACXzB,SAAS,gBAAgB;AACzB,SAAS,WAAW;AAEpB,IAAM,oBAAoB;AAQnB,IAAM,eAAe,CAAC,YAAoB,gBAAiC;AAChF,MAAI;AACF,UAAM,MAAM,IAAI,IAAI,UAAU;AAC9B,QAAI,WAAW,IAAI;AACnB,QAAI,OAAO,IAAI;AACf,QAAI,OAAO,IAAI;AACf,UAAM,QAAQ,IAAI;AAClB,QAAI,aAAa,SAAS;AACxB,iBAAW;AACX,aAAO,SAAS,aAAa,MAAM,yBAAyB;AAC5D,aAAO,IAAI,SAAS,SAAS,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,GAAG,IAAI;AACpE,YAAM,OAAO,GAAG,QAAQ,KAAK,IAAI,IAAI,IAAI;AACzC,aAAO,OAAO,SAAS,IAAI,GAAG,IAAI,IAAI,KAAK,KAAK;AAAA,IAClD,WAAW,qBAAqB,aAAa,WAAW,SAAS,WAAW;AAC1E,iBAAW;AACX,aAAO,SAAS,aAAa,MAAM,yBAAyB;AAC5D,YAAM,YAAY,KAAK,MAAM,GAAG;AAChC,UAAI,UAAU,CAAC,MAAM,QAAQ;AAC3B,kBAAU,MAAM;AAAA,MAClB;AACA,aAAO,UAAU,KAAK,GAAG;AACzB,YAAM,OAAO,GAAG,QAAQ,KAAK,IAAI,IAAI,IAAI;AACzC,aAAO,OAAO,SAAS,IAAI,GAAG,IAAI,IAAI,KAAK,KAAK;AAAA,IAClD,OAAO;AACL,aAAO;AAAA,IACT;AAAA,EACF,QAAQ;AAIN,WAAO;AAAA,EACT;AACF;;;ADVO,IAAM,kBAAN,cAA6F,gBAAmD;AAAA,EACrJ,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,2BAA2B;AAAA,EACvG,OAAyB,sBAA8B;AAAA,EAEvD,IAAI,SAAoB;AACtB,WAAO,KAAK,OAAO,UAAU;AAAA,EAC/B;AAAA,EAEA,IAAI,cAAc;AAChB,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA,EAEA,IAAI,UAAU;AACZ,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA,EAEA,WAAW,MAAyB;AAClC,UAAM,EAAE,KAAK,QAAQ,IAAI,cAAc,IAAI,KAAK,CAAC;AACjD,UAAM;AAAA,MACJ,aAAa;AAAA,MAAiB,QAAQ;AAAA,MAAY,SAAS;AAAA,IAC7D,IAAI,sBAAsB,IAAI,KAAK,CAAC;AACpC,UAAM,EAAE,KAAK,UAAU,IAAI,2BAA2B,KAAK,MAAM,KAAK,CAAC;AACvE,UAAM;AAAA,MACJ,aAAa;AAAA,MAAmB,QAAQ;AAAA,MAAc,SAAS;AAAA,IACjE,IAAI,mCAAmC,KAAK,MAAM,KAAK,CAAC;AAExD,UAAM,SAAS,EAAE,GAAG,cAAc,GAAG,WAAW;AAEhD,QAAI,MAAuB;AAE3B,QAAI,SAAS;AACX,YAAM,IAAIC,KAAI,OAAO;AAAA,IACvB,WAAW,iBAAiB;AAC1B,YAAM,IAAIA,KAAI,aAAa,iBAAiB,MAAM,CAAC;AAAA,IACrD,WAAW,WAAW;AACpB,YAAM,IAAIA,KAAI,SAAS;AAAA,IACzB,WAAW,mBAAmB;AAC5B,YAAM,IAAIA,KAAI,aAAa,mBAAmB,MAAM,CAAC;AAAA,IACvD;AAEA,QAAI,KAAK;AACP,YAAM,UAAU,OAAO,QAAQ,EAAE,GAAG,eAAe,GAAG,YAAY,CAAC;AACnE,eAAS,CAAC,KAAK,KAAK,KAAK,SAAS;AAChC,aAAK,aAAa,IAAI,KAAK,KAAK;AAAA,MAClC;AACA,aAAO,IAAI;AAAA,IACb;AAEA,UAAM,IAAI,MAAM,qFAAqF;AAAA,EACvG;AAAA,EAEA,WAAW,SAAkF;AAC3F,WAAO;AAAA,MACL,GAAG,KAAK,OAAO;AAAA,MAAS,GAAG,KAAK,OAAO;AAAA,MAAS,GAAG;AAAA,IACrD;AAAA,EACF;AAAA,EAEA,MAAyB,eAAe,aAAyB,CAAC,GAA8B;AAC9F,UAAM,KAAK,QAAQ,OAAO;AAC1B,QAAI;AACF,YAAM,eAAe,MAAM,QAAQ;AAAA,QACjC,WAAW,OAAOC,uBAAgC,cAAc,CAAC,EAAE,IAAI,OAAO,SAAS;AACrF,gBAAM,EAAE,MAAM,SAAS,IAAI;AAC3B,gBAAM,EAAE,MAAM,WAAW,IAAI,KAAK;AAClC,gBAAM,OAAO,YAAY,cAAc;AACvC,gBAAM,MAAM,KAAK,WAAW,IAAI;AAEhC,gBAAM,eAAeC,UAAS,aAAa,KAAK,KAAK,WAAW,GAAG,MAAM,aAAa;AAEtF,cAAI,SAAS,OAAO;AAClB,mBAAO,KAAK,QAAQ,cAAe,MAAM,eAAe,SAAS,IAAI,CAAE;AAAA,UACzE;AAEA,gBAAM,cAA8B;AAAA,YAClC,MAAM,MAAM,aAAa,KAAK,IAAI;AAAA,YAClC,QAAQ;AAAA,UACV;AACA,iBAAO;AAAA,QACT,CAAC;AAAA,MACH;AACA,aAAO;AAAA,IACT,SAAS,IAAI;AACX,YAAM,QAAQ;AACd,cAAQ,MAAM,UAAU,KAAK,OAAO,IAAI,MAAM,MAAM,OAAO,EAAE;AAC7D,cAAQ,IAAI,MAAM,KAAK;AACvB,YAAM;AAAA,IACR;AAAA,EACF;AAAA;AAAA,EAGA,MAAc,QAAQ,KAAa,MAAY,SAAuE;AACpH,UAAM,SAAyB;AAAA,MAC7B;AAAA,MACA,QAAQ;AAAA,IACV;AACA,QAAI;AACF,cAAQ,KAAK,QAAQ;AAAA,QACnB,KAAK,oBAAoB;AACvB,gBAAM,QAAQ,IAAI,UAAU;AAAA,YAC1B,SAAS,EAAE,GAAG,KAAK,WAAW,OAAO,GAAG,QAAQ,mBAAmB;AAAA,YAAG,SAAS,KAAK;AAAA,YAAS,YAAY;AAAA,UAC3G,CAAC;AACD,gBAAM,WAAW,MAAM,MAAM,IAA4B,GAAG;AAC5D,cAAI,SAAS,UAAU,OAAO,SAAS,SAAS,KAAK;AACnD,kBAAM,aAAa;AACnB,uBAAW,OAAO,SAAS;AAC3B,uBAAW,cAAc;AAAA,UAC3B,OAAO;AACL,kBAAM,cAAc;AACpB,wBAAY,OAAO,EAAE,QAAQ,SAAS,OAAO;AAAA,UAC/C;AACA;AAAA,QACF;AAAA,QACA,KAAK;AAAA,QACL,KAAK,YAAY;AACf,gBAAM,QAAQ,IAAI,MAAM;AAAA,YACtB,SAAS,EAAE,GAAG,KAAK,WAAW,OAAO,GAAG,QAAQ,KAAK,OAAO;AAAA,YAC5D,cAAc;AAAA,YACd,YAAY;AAAA,YACZ,SAAS,KAAK;AAAA,UAChB,CAAC;AACD,gBAAM,WAAW,MAAM,MAAM,IAAI,GAAG;AACpC,cAAI,SAAS,UAAU,OAAO,SAAS,SAAS,KAAK;AACnD,kBAAM,YAAY;AAClB,sBAAU,OAAO,OAAO,KAAK,SAAS,MAAM,QAAQ,EAAE,SAAS,MAAM;AACrE,sBAAU,cAAc,SAAS,QAAQ,cAAc,GAAG,SAAS,KAAK;AAAA,UAC1E,OAAO;AACL,kBAAM,cAAc;AACpB,wBAAY,OAAO,EAAE,QAAQ,SAAS,OAAO;AAAA,UAC/C;AACA;AAAA,QACF;AAAA,QACA,KAAK,aAAY;AACf,gBAAM,QAAQ,IAAI,MAAM;AAAA,YACtB,SAAS,EAAE,GAAG,KAAK,WAAW,OAAO,GAAG,QAAQ,KAAK,OAAO;AAAA,YAC5D,cAAc;AAAA,YACd,YAAY;AAAA,YACZ,SAAS,KAAK;AAAA,UAChB,CAAC;AACD,gBAAM,WAAW,MAAM,MAAM,IAAI,GAAG;AACpC,cAAI,SAAS,UAAU,OAAO,SAAS,SAAS,KAAK;AACnD,kBAAM,aAAa;AACnB,uBAAW,OAAO,SAAS;AAC3B,uBAAW,cAAc,SAAS,QAAQ,cAAc,GAAG,SAAS,KAAK;AAAA,UAC3E,OAAO;AACL,kBAAM,cAAc;AACpB,wBAAY,OAAO,EAAE,QAAQ,SAAS,OAAO;AAAA,UAC/C;AACA;AAAA,QACF;AAAA,QACA,SAAS;AACP,gBAAM,QAAQ,IAAI,MAAM;AAAA,YACtB,SAAS,KAAK,OAAO;AAAA,YAAS,cAAc;AAAA,YAAe,SAAS,KAAK;AAAA,YAAS,YAAY;AAAA,UAChG,CAAC;AACD,gBAAM,WAAW,MAAM,MAAM,IAAI,GAAG;AACpC,cAAI,SAAS,UAAU,OAAO,SAAS,SAAS,KAAK;AACnD,kBAAM,aAAa;AACnB,uBAAW,OAAO,cAAc,SAAS,IAAI;AAC7C,uBAAW,cAAc,SAAS,QAAQ,cAAc,GAAG,SAAS,KAAK;AAAA,UAC3E,OAAO;AACL,kBAAM,cAAc;AACpB,wBAAY,OAAO,EAAE,QAAQ,SAAS,OAAO;AAAA,UAC/C;AACA;AAAA,QACF;AAAA,MACF;AAAA,IACF,SAAS,IAAI;AACX,YAAM,aAAa;AACnB,UAAI,WAAW,cAAc;AAC3B,YAAI,YAAY,UAAU,WAAW,QAAW;AAC9C,iBAAO,OAAO,OAAO,QAAQ,CAAC;AAC9B,iBAAO,KAAK,SAAS,YAAY,UAAU;AAAA,QAC7C;AACA,YAAI,YAAY,SAAS,QAAW;AAClC,iBAAO,OAAO,OAAO,QAAQ,CAAC;AAC9B,iBAAO,KAAK,OAAO,YAAY;AAAA,QACjC;AACA,eAAO;AAAA,MACT,OAAO;AACL,cAAM;AAAA,MACR;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;","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,2 @@
1
+ export * from './checkIpfsUrl.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -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/http-call-witness",
3
- "version": "3.4.2",
3
+ "version": "3.4.3",
4
4
  "description": "Typescript/Javascript Plugins for XYO Platform",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -34,27 +34,27 @@
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.16",
38
- "@xyo-network/hash": "^3.9.16",
39
- "@xyo-network/payload-builder": "^3.9.16",
40
- "@xyo-network/payload-model": "^3.9.16",
41
- "@xyo-network/witness-model": "^3.9.16",
42
- "axios": "^1.7.9",
37
+ "@xyo-network/abstract-witness": "^3.9.23",
38
+ "@xyo-network/hash": "^3.9.23",
39
+ "@xyo-network/payload-builder": "^3.9.23",
40
+ "@xyo-network/payload-model": "^3.9.23",
41
+ "@xyo-network/witness-model": "^3.9.23",
42
+ "axios": "^1.8.1",
43
43
  "base64-js": "^1.5.1",
44
44
  "es6-dynamic-template": "^2.0.0"
45
45
  },
46
46
  "devDependencies": {
47
- "@xylabs/ts-scripts-yarn3": "^5.0.24",
48
- "@xylabs/tsconfig": "^5.0.24",
47
+ "@xylabs/ts-scripts-yarn3": "^5.0.39",
48
+ "@xylabs/tsconfig": "^5.0.39",
49
49
  "@xylabs/vitest-extended": "^4.5.1",
50
- "@xyo-network/account": "^3.9.16",
51
- "@xyo-network/manifest": "^3.9.16",
52
- "@xyo-network/module-factory-locator": "^3.9.16",
53
- "@xyo-network/module-model": "^3.9.16",
54
- "@xyo-network/sentinel-model": "^3.9.16",
50
+ "@xyo-network/account": "^3.9.23",
51
+ "@xyo-network/manifest": "^3.9.23",
52
+ "@xyo-network/module-factory-locator": "^3.9.23",
53
+ "@xyo-network/module-model": "^3.9.23",
54
+ "@xyo-network/sentinel-model": "^3.9.23",
55
55
  "ethers": "^6.13.5",
56
- "typescript": "^5.7.3",
57
- "vitest": "^3.0.6"
56
+ "typescript": "^5.8.2",
57
+ "vitest": "^3.0.7"
58
58
  },
59
59
  "publishConfig": {
60
60
  "access": "public"
@@ -1,6 +1,6 @@
1
1
  import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
2
2
 
3
3
  import { HttpCallSchema } from '../Schema.ts'
4
- import type { HttpCall } from '../types/index.ts'
4
+ import { HttpCall } from '../types/index.ts'
5
5
 
6
6
  export const isHttpCall = isPayloadOfSchemaType<HttpCall>(HttpCallSchema)
@@ -1,7 +1,7 @@
1
1
  import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
2
2
 
3
3
  import { HttpCallResultSchema } from '../Schema.ts'
4
- import type { HttpCallBase64Result, HttpCallResult } from '../types/index.ts'
4
+ import { HttpCallBase64Result, HttpCallResult } from '../types/index.ts'
5
5
 
6
6
  export const isHttpCallBase64Result = (x?: unknown | null): x is HttpCallBase64Result => {
7
7
  return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && typeof (x as HttpCallBase64Result)?.data === 'string'
@@ -1,7 +1,7 @@
1
1
  import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
2
2
 
3
3
  import { HttpCallResultSchema } from '../Schema.ts'
4
- import type { HttpCallErrorResult, HttpCallResult } from '../types/index.ts'
4
+ import { HttpCallErrorResult, HttpCallResult } from '../types/index.ts'
5
5
 
6
6
  export const isHttpCallErrorResult = (value: unknown): value is HttpCallErrorResult =>
7
7
  !!isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema) && ((value as HttpCallErrorResult).http?.status ?? 200) >= 400
@@ -1,6 +1,6 @@
1
1
  import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
2
2
 
3
3
  import { HttpCallResultSchema } from '../Schema.ts'
4
- import type { HttpCallResult } from '../types/index.ts'
4
+ import { HttpCallResult } from '../types/index.ts'
5
5
 
6
6
  export const isHttpCallResult = isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)
@@ -1,7 +1,7 @@
1
1
  import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
2
2
 
3
3
  import { HttpCallResultSchema } from '../Schema.ts'
4
- import type { HttpCallResult, HttpCallXmlResult } from '../types/index.ts'
4
+ import { HttpCallResult, HttpCallXmlResult } from '../types/index.ts'
5
5
 
6
6
  export const isHttpCallXmlResult = (x?: unknown | null): x is HttpCallXmlResult => {
7
7
  return isPayloadOfSchemaType<HttpCallResult>(HttpCallResultSchema)(x) && typeof (x as HttpCallXmlResult)?.data === 'string'
@@ -1,4 +1,4 @@
1
- import type { HttpUriCall } from '../types/index.ts'
1
+ import { HttpUriCall } from '../types/index.ts'
2
2
  import { isHttpCall } from './isHttpCall.ts'
3
3
 
4
4
  export const isHttpUriCall = (value?: unknown): value is HttpUriCall => isHttpCall(value) && !!(value as HttpUriCall).uri
@@ -1,4 +1,4 @@
1
- import type { HttpUriTemplateCall } from '../types/index.ts'
1
+ import { HttpUriTemplateCall } from '../types/index.ts'
2
2
  import { isHttpCall } from './isHttpCall.ts'
3
3
 
4
4
  export const isHttpUriTemplateCall = (value?: unknown): value is HttpUriTemplateCall =>
@@ -1,4 +1,4 @@
1
- import type { HttpUriCall } from './HttpUriCall.ts'
2
- import type { HttpUriTemplateCall } from './HttpUriTemplateCall.ts'
1
+ import { HttpUriCall } from './HttpUriCall.ts'
2
+ import { HttpUriTemplateCall } from './HttpUriTemplateCall.ts'
3
3
 
4
4
  export type HttpCall = HttpUriCall | HttpUriTemplateCall
@@ -1,9 +1,9 @@
1
- import type { Hash } from '@xylabs/hex'
2
- import type { Payload } from '@xyo-network/payload-model'
1
+ import { Hash } from '@xylabs/hex'
2
+ import { Payload } from '@xyo-network/payload-model'
3
3
 
4
- import type { HttpCallResultSchema } from '../Schema.ts'
5
- import type { HttpCallJsonResult } from './HttpCallJsonResult.ts'
6
- import type { HttpCallXmlResult } from './HttpCallXmlResult.ts'
4
+ import { HttpCallResultSchema } from '../Schema.ts'
5
+ import { HttpCallJsonResult } from './HttpCallJsonResult.ts'
6
+ import { HttpCallXmlResult } from './HttpCallXmlResult.ts'
7
7
 
8
8
  export type HttpCallBase64Result = Payload<
9
9
  {
@@ -1,8 +1,8 @@
1
- import type { Hash } from '@xylabs/hex'
2
- import type { Payload } from '@xyo-network/payload-model'
1
+ import { Hash } from '@xylabs/hex'
2
+ import { Payload } from '@xyo-network/payload-model'
3
3
 
4
- import type { HttpCallResultSchema } from '../Schema.ts'
5
- import type { HttpMeta } from './HttpMeta.ts'
4
+ import { HttpCallResultSchema } from '../Schema.ts'
5
+ import { HttpMeta } from './HttpMeta.ts'
6
6
 
7
7
  export type HttpCallErrorResult = Payload<
8
8
  {
@@ -1,5 +1,5 @@
1
- import type { Queries } from './Queries.ts'
2
- import type { Verb } from './Verb.ts'
1
+ import { Queries } from './Queries.ts'
2
+ import { Verb } from './Verb.ts'
3
3
 
4
4
  export interface HttpCallFields {
5
5
  headers?: Record<string, string | undefined>
@@ -1,7 +1,7 @@
1
- import type { Hash } from '@xylabs/hex'
2
- import type { Payload } from '@xyo-network/payload-model'
1
+ import { Hash } from '@xylabs/hex'
2
+ import { Payload } from '@xyo-network/payload-model'
3
3
 
4
- import type { HttpCallResultSchema } from '../Schema.ts'
4
+ import { HttpCallResultSchema } from '../Schema.ts'
5
5
 
6
6
  export type HttpCallHtmlResult = Payload<
7
7
  {
@@ -1,11 +1,11 @@
1
- import type { Hash } from '@xylabs/hex'
2
- import type { JsonArray, JsonObject } from '@xylabs/object'
3
- import { AsObjectFactory } from '@xylabs/object'
4
- import type { Payload } from '@xyo-network/payload-model'
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 { HttpCallResultSchema } from '../Schema.ts'
8
- import type { HttpCallResult } from './HttpCallResult.ts'
8
+ import { HttpCallResult } from './HttpCallResult.ts'
9
9
 
10
10
  export type HttpCallJsonResultType = JsonArray | JsonObject
11
11
 
@@ -1,8 +1,8 @@
1
- import type { JsonArray, JsonObject } from '@xylabs/object'
1
+ import { JsonArray, JsonObject } from '@xylabs/object'
2
2
 
3
- import type { HttpCallBase64Result } from './HttpCallBase64Result.ts'
4
- import type { HttpCallErrorResult } from './HttpCallErrorResult.ts'
5
- import type { HttpCallJsonResult } from './HttpCallJsonResult.ts'
3
+ import { HttpCallBase64Result } from './HttpCallBase64Result.ts'
4
+ import { HttpCallErrorResult } from './HttpCallErrorResult.ts'
5
+ import { HttpCallJsonResult } from './HttpCallJsonResult.ts'
6
6
 
7
7
  type NewType = JsonObject
8
8
 
@@ -1,7 +1,7 @@
1
- import type { Hash } from '@xylabs/hex'
2
- import type { Payload } from '@xyo-network/payload-model'
1
+ import { Hash } from '@xylabs/hex'
2
+ import { Payload } from '@xyo-network/payload-model'
3
3
 
4
- import type { HttpCallResultSchema } from '../Schema.ts'
4
+ import { HttpCallResultSchema } from '../Schema.ts'
5
5
 
6
6
  export type HttpCallXmlResult = Payload<
7
7
  {
@@ -1,7 +1,7 @@
1
- import type { Payload } from '@xyo-network/payload-model'
1
+ import { Payload } from '@xyo-network/payload-model'
2
2
 
3
- import type { HttpCallSchema } from '../Schema.ts'
4
- import type { HttpCallFields } from './HttpCallFields.ts'
3
+ import { HttpCallSchema } from '../Schema.ts'
4
+ import { HttpCallFields } from './HttpCallFields.ts'
5
5
 
6
6
  export type HttpUriCall = Payload<
7
7
  HttpCallFields & {
@@ -1,7 +1,7 @@
1
- import type { Payload } from '@xyo-network/payload-model'
1
+ import { Payload } from '@xyo-network/payload-model'
2
2
 
3
- import type { HttpCallSchema } from '../Schema.ts'
4
- import type { HttpCallFields } from './HttpCallFields.ts'
3
+ import { HttpCallSchema } from '../Schema.ts'
4
+ import { HttpCallFields } from './HttpCallFields.ts'
5
5
 
6
6
  export type HttpUriTemplateCall = Payload<
7
7
  HttpCallFields & {
@@ -1,8 +1,8 @@
1
1
  import { AsObjectFactory } from '@xylabs/object'
2
2
  import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
3
- import type { WitnessConfig } from '@xyo-network/witness-model'
3
+ import { WitnessConfig } from '@xyo-network/witness-model'
4
4
 
5
- import type {
5
+ import {
6
6
  HttpCall, HttpUriCall, HttpUriTemplateCall, MimeTypes,
7
7
  } from '../Payload/index.ts'
8
8
  import { HttpCallWitnessConfigSchema } from './Schema.ts'