@xyo-network/api-call-witness 2.99.5 → 2.99.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/dist/browser/Payload/identity/asApiCall.d.cts +2 -2
  2. package/dist/browser/Payload/identity/asApiCall.d.cts.map +1 -1
  3. package/dist/browser/Payload/identity/asApiCall.d.mts +2 -2
  4. package/dist/browser/Payload/identity/asApiCall.d.mts.map +1 -1
  5. package/dist/browser/Payload/identity/asApiCall.d.ts +2 -2
  6. package/dist/browser/Payload/identity/asApiCall.d.ts.map +1 -1
  7. package/dist/browser/Payload/identity/asApiCallBase64Result.d.cts +2 -2
  8. package/dist/browser/Payload/identity/asApiCallBase64Result.d.cts.map +1 -1
  9. package/dist/browser/Payload/identity/asApiCallBase64Result.d.mts +2 -2
  10. package/dist/browser/Payload/identity/asApiCallBase64Result.d.mts.map +1 -1
  11. package/dist/browser/Payload/identity/asApiCallBase64Result.d.ts +2 -2
  12. package/dist/browser/Payload/identity/asApiCallBase64Result.d.ts.map +1 -1
  13. package/dist/browser/Payload/identity/asApiCallResult.d.cts +2 -2
  14. package/dist/browser/Payload/identity/asApiCallResult.d.cts.map +1 -1
  15. package/dist/browser/Payload/identity/asApiCallResult.d.mts +2 -2
  16. package/dist/browser/Payload/identity/asApiCallResult.d.mts.map +1 -1
  17. package/dist/browser/Payload/identity/asApiCallResult.d.ts +2 -2
  18. package/dist/browser/Payload/identity/asApiCallResult.d.ts.map +1 -1
  19. package/dist/browser/Payload/identity/asApiCallXmlResult.d.cts +2 -2
  20. package/dist/browser/Payload/identity/asApiCallXmlResult.d.cts.map +1 -1
  21. package/dist/browser/Payload/identity/asApiCallXmlResult.d.mts +2 -2
  22. package/dist/browser/Payload/identity/asApiCallXmlResult.d.mts.map +1 -1
  23. package/dist/browser/Payload/identity/asApiCallXmlResult.d.ts +2 -2
  24. package/dist/browser/Payload/identity/asApiCallXmlResult.d.ts.map +1 -1
  25. package/dist/browser/Payload/identity/asApiUriCall.d.cts +2 -2
  26. package/dist/browser/Payload/identity/asApiUriCall.d.cts.map +1 -1
  27. package/dist/browser/Payload/identity/asApiUriCall.d.mts +2 -2
  28. package/dist/browser/Payload/identity/asApiUriCall.d.mts.map +1 -1
  29. package/dist/browser/Payload/identity/asApiUriCall.d.ts +2 -2
  30. package/dist/browser/Payload/identity/asApiUriCall.d.ts.map +1 -1
  31. package/dist/browser/Payload/identity/asApiUriTemplateCall.d.cts +2 -2
  32. package/dist/browser/Payload/identity/asApiUriTemplateCall.d.cts.map +1 -1
  33. package/dist/browser/Payload/identity/asApiUriTemplateCall.d.mts +2 -2
  34. package/dist/browser/Payload/identity/asApiUriTemplateCall.d.mts.map +1 -1
  35. package/dist/browser/Payload/identity/asApiUriTemplateCall.d.ts +2 -2
  36. package/dist/browser/Payload/identity/asApiUriTemplateCall.d.ts.map +1 -1
  37. package/dist/browser/Payload/types/ApiCallJsonResult.d.cts +2 -2
  38. package/dist/browser/Payload/types/ApiCallJsonResult.d.cts.map +1 -1
  39. package/dist/browser/Payload/types/ApiCallJsonResult.d.mts +2 -2
  40. package/dist/browser/Payload/types/ApiCallJsonResult.d.mts.map +1 -1
  41. package/dist/browser/Payload/types/ApiCallJsonResult.d.ts +2 -2
  42. package/dist/browser/Payload/types/ApiCallJsonResult.d.ts.map +1 -1
  43. package/dist/browser/Witness/Config.d.cts +16 -16
  44. package/dist/browser/Witness/Config.d.cts.map +1 -1
  45. package/dist/browser/Witness/Config.d.mts +16 -16
  46. package/dist/browser/Witness/Config.d.mts.map +1 -1
  47. package/dist/browser/Witness/Config.d.ts +16 -16
  48. package/dist/browser/Witness/Config.d.ts.map +1 -1
  49. package/dist/browser/Witness/Witness.d.cts.map +1 -1
  50. package/dist/browser/Witness/Witness.d.mts.map +1 -1
  51. package/dist/browser/Witness/Witness.d.ts.map +1 -1
  52. package/dist/browser/index.cjs +46 -71
  53. package/dist/browser/index.cjs.map +1 -1
  54. package/dist/browser/index.mjs +45 -72
  55. package/dist/browser/index.mjs.map +1 -1
  56. package/dist/browser/lib/checkIpfsUrl.d.cts.map +1 -1
  57. package/dist/browser/lib/checkIpfsUrl.d.mts.map +1 -1
  58. package/dist/browser/lib/checkIpfsUrl.d.ts.map +1 -1
  59. package/dist/neutral/Payload/identity/asApiCall.d.cts +2 -2
  60. package/dist/neutral/Payload/identity/asApiCall.d.cts.map +1 -1
  61. package/dist/neutral/Payload/identity/asApiCall.d.mts +2 -2
  62. package/dist/neutral/Payload/identity/asApiCall.d.mts.map +1 -1
  63. package/dist/neutral/Payload/identity/asApiCall.d.ts +2 -2
  64. package/dist/neutral/Payload/identity/asApiCall.d.ts.map +1 -1
  65. package/dist/neutral/Payload/identity/asApiCallBase64Result.d.cts +2 -2
  66. package/dist/neutral/Payload/identity/asApiCallBase64Result.d.cts.map +1 -1
  67. package/dist/neutral/Payload/identity/asApiCallBase64Result.d.mts +2 -2
  68. package/dist/neutral/Payload/identity/asApiCallBase64Result.d.mts.map +1 -1
  69. package/dist/neutral/Payload/identity/asApiCallBase64Result.d.ts +2 -2
  70. package/dist/neutral/Payload/identity/asApiCallBase64Result.d.ts.map +1 -1
  71. package/dist/neutral/Payload/identity/asApiCallResult.d.cts +2 -2
  72. package/dist/neutral/Payload/identity/asApiCallResult.d.cts.map +1 -1
  73. package/dist/neutral/Payload/identity/asApiCallResult.d.mts +2 -2
  74. package/dist/neutral/Payload/identity/asApiCallResult.d.mts.map +1 -1
  75. package/dist/neutral/Payload/identity/asApiCallResult.d.ts +2 -2
  76. package/dist/neutral/Payload/identity/asApiCallResult.d.ts.map +1 -1
  77. package/dist/neutral/Payload/identity/asApiCallXmlResult.d.cts +2 -2
  78. package/dist/neutral/Payload/identity/asApiCallXmlResult.d.cts.map +1 -1
  79. package/dist/neutral/Payload/identity/asApiCallXmlResult.d.mts +2 -2
  80. package/dist/neutral/Payload/identity/asApiCallXmlResult.d.mts.map +1 -1
  81. package/dist/neutral/Payload/identity/asApiCallXmlResult.d.ts +2 -2
  82. package/dist/neutral/Payload/identity/asApiCallXmlResult.d.ts.map +1 -1
  83. package/dist/neutral/Payload/identity/asApiUriCall.d.cts +2 -2
  84. package/dist/neutral/Payload/identity/asApiUriCall.d.cts.map +1 -1
  85. package/dist/neutral/Payload/identity/asApiUriCall.d.mts +2 -2
  86. package/dist/neutral/Payload/identity/asApiUriCall.d.mts.map +1 -1
  87. package/dist/neutral/Payload/identity/asApiUriCall.d.ts +2 -2
  88. package/dist/neutral/Payload/identity/asApiUriCall.d.ts.map +1 -1
  89. package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.cts +2 -2
  90. package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.cts.map +1 -1
  91. package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.mts +2 -2
  92. package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.mts.map +1 -1
  93. package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.ts +2 -2
  94. package/dist/neutral/Payload/identity/asApiUriTemplateCall.d.ts.map +1 -1
  95. package/dist/neutral/Payload/types/ApiCallJsonResult.d.cts +2 -2
  96. package/dist/neutral/Payload/types/ApiCallJsonResult.d.cts.map +1 -1
  97. package/dist/neutral/Payload/types/ApiCallJsonResult.d.mts +2 -2
  98. package/dist/neutral/Payload/types/ApiCallJsonResult.d.mts.map +1 -1
  99. package/dist/neutral/Payload/types/ApiCallJsonResult.d.ts +2 -2
  100. package/dist/neutral/Payload/types/ApiCallJsonResult.d.ts.map +1 -1
  101. package/dist/neutral/Witness/Config.d.cts +16 -16
  102. package/dist/neutral/Witness/Config.d.cts.map +1 -1
  103. package/dist/neutral/Witness/Config.d.mts +16 -16
  104. package/dist/neutral/Witness/Config.d.mts.map +1 -1
  105. package/dist/neutral/Witness/Config.d.ts +16 -16
  106. package/dist/neutral/Witness/Config.d.ts.map +1 -1
  107. package/dist/neutral/Witness/Witness.d.cts.map +1 -1
  108. package/dist/neutral/Witness/Witness.d.mts.map +1 -1
  109. package/dist/neutral/Witness/Witness.d.ts.map +1 -1
  110. package/dist/neutral/index.cjs +46 -71
  111. package/dist/neutral/index.cjs.map +1 -1
  112. package/dist/neutral/index.mjs +45 -72
  113. package/dist/neutral/index.mjs.map +1 -1
  114. package/dist/neutral/lib/checkIpfsUrl.d.cts.map +1 -1
  115. package/dist/neutral/lib/checkIpfsUrl.d.mts.map +1 -1
  116. package/dist/neutral/lib/checkIpfsUrl.d.ts.map +1 -1
  117. package/dist/node/Payload/identity/asApiCall.d.cts +2 -2
  118. package/dist/node/Payload/identity/asApiCall.d.cts.map +1 -1
  119. package/dist/node/Payload/identity/asApiCall.d.mts +2 -2
  120. package/dist/node/Payload/identity/asApiCall.d.mts.map +1 -1
  121. package/dist/node/Payload/identity/asApiCall.d.ts +2 -2
  122. package/dist/node/Payload/identity/asApiCall.d.ts.map +1 -1
  123. package/dist/node/Payload/identity/asApiCallBase64Result.d.cts +2 -2
  124. package/dist/node/Payload/identity/asApiCallBase64Result.d.cts.map +1 -1
  125. package/dist/node/Payload/identity/asApiCallBase64Result.d.mts +2 -2
  126. package/dist/node/Payload/identity/asApiCallBase64Result.d.mts.map +1 -1
  127. package/dist/node/Payload/identity/asApiCallBase64Result.d.ts +2 -2
  128. package/dist/node/Payload/identity/asApiCallBase64Result.d.ts.map +1 -1
  129. package/dist/node/Payload/identity/asApiCallResult.d.cts +2 -2
  130. package/dist/node/Payload/identity/asApiCallResult.d.cts.map +1 -1
  131. package/dist/node/Payload/identity/asApiCallResult.d.mts +2 -2
  132. package/dist/node/Payload/identity/asApiCallResult.d.mts.map +1 -1
  133. package/dist/node/Payload/identity/asApiCallResult.d.ts +2 -2
  134. package/dist/node/Payload/identity/asApiCallResult.d.ts.map +1 -1
  135. package/dist/node/Payload/identity/asApiCallXmlResult.d.cts +2 -2
  136. package/dist/node/Payload/identity/asApiCallXmlResult.d.cts.map +1 -1
  137. package/dist/node/Payload/identity/asApiCallXmlResult.d.mts +2 -2
  138. package/dist/node/Payload/identity/asApiCallXmlResult.d.mts.map +1 -1
  139. package/dist/node/Payload/identity/asApiCallXmlResult.d.ts +2 -2
  140. package/dist/node/Payload/identity/asApiCallXmlResult.d.ts.map +1 -1
  141. package/dist/node/Payload/identity/asApiUriCall.d.cts +2 -2
  142. package/dist/node/Payload/identity/asApiUriCall.d.cts.map +1 -1
  143. package/dist/node/Payload/identity/asApiUriCall.d.mts +2 -2
  144. package/dist/node/Payload/identity/asApiUriCall.d.mts.map +1 -1
  145. package/dist/node/Payload/identity/asApiUriCall.d.ts +2 -2
  146. package/dist/node/Payload/identity/asApiUriCall.d.ts.map +1 -1
  147. package/dist/node/Payload/identity/asApiUriTemplateCall.d.cts +2 -2
  148. package/dist/node/Payload/identity/asApiUriTemplateCall.d.cts.map +1 -1
  149. package/dist/node/Payload/identity/asApiUriTemplateCall.d.mts +2 -2
  150. package/dist/node/Payload/identity/asApiUriTemplateCall.d.mts.map +1 -1
  151. package/dist/node/Payload/identity/asApiUriTemplateCall.d.ts +2 -2
  152. package/dist/node/Payload/identity/asApiUriTemplateCall.d.ts.map +1 -1
  153. package/dist/node/Payload/types/ApiCallJsonResult.d.cts +2 -2
  154. package/dist/node/Payload/types/ApiCallJsonResult.d.cts.map +1 -1
  155. package/dist/node/Payload/types/ApiCallJsonResult.d.mts +2 -2
  156. package/dist/node/Payload/types/ApiCallJsonResult.d.mts.map +1 -1
  157. package/dist/node/Payload/types/ApiCallJsonResult.d.ts +2 -2
  158. package/dist/node/Payload/types/ApiCallJsonResult.d.ts.map +1 -1
  159. package/dist/node/Witness/Config.d.cts +16 -16
  160. package/dist/node/Witness/Config.d.cts.map +1 -1
  161. package/dist/node/Witness/Config.d.mts +16 -16
  162. package/dist/node/Witness/Config.d.mts.map +1 -1
  163. package/dist/node/Witness/Config.d.ts +16 -16
  164. package/dist/node/Witness/Config.d.ts.map +1 -1
  165. package/dist/node/Witness/Witness.d.cts.map +1 -1
  166. package/dist/node/Witness/Witness.d.mts.map +1 -1
  167. package/dist/node/Witness/Witness.d.ts.map +1 -1
  168. package/dist/node/index.cjs +49 -77
  169. package/dist/node/index.cjs.map +1 -1
  170. package/dist/node/index.mjs +48 -79
  171. package/dist/node/index.mjs.map +1 -1
  172. package/dist/node/lib/checkIpfsUrl.d.cts.map +1 -1
  173. package/dist/node/lib/checkIpfsUrl.d.mts.map +1 -1
  174. package/dist/node/lib/checkIpfsUrl.d.ts.map +1 -1
  175. package/package.json +20 -18
  176. package/src/Witness/Witness.ts +3 -1
  177. package/src/lib/checkIpfsUrl.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../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":["export * from './Payload/index.ts'\nexport * from './Witness/index.ts'\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCall } from './isApiCall.ts'\n\nexport const asApiCall = AsObjectFactory.create(isApiCall)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallSchema } from '../Schema.ts'\nimport { ApiCall } from '../types/index.ts'\n\nexport const isApiCall = isPayloadOfSchemaType<ApiCall>(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 } from '../types/index.ts'\n\nexport const isApiCallBase64Result = (x?: unknown | null): x is ApiCallBase64Result => {\n return isPayloadOfSchemaType(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 { ApiCallXmlResult } from '../types/index.ts'\n\nexport const isApiCallXmlResult = (x?: unknown | null): x is ApiCallXmlResult => {\n return isPayloadOfSchemaType(ApiCallResultSchema)(x) && typeof (x as ApiCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriCall } from './isApiUriCall.ts'\n\nexport const asApiUriCall = AsObjectFactory.create(isApiUriCall)\n","import { ApiUriCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriCall = (value?: unknown): value is ApiUriCall => isApiCall(value) && !!(value as ApiUriCall).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriTemplateCall } from './isApiUriTemplateCall.ts'\n\nexport const asApiUriTemplateCall = AsObjectFactory.create(isApiUriTemplateCall)\n","import { ApiUriTemplateCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriTemplateCall = (value?: unknown): value is ApiUriTemplateCall =>\n isApiCall(value) && !!((value as ApiUriTemplateCall).uriTemplate || (value as ApiUriTemplateCall).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 { AsObjectFactory, JsonArray, JsonObject } from '@xylabs/object'\nimport { isPayloadOfSchemaType, Payload } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.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(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 { ApiCall, ApiUriCall, ApiUriTemplateCall, MimeTypes } 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?: ApiCall['queries']\n schema: ApiCallWitnessConfigSchema\n timeout?: number\n verb?: ApiCall['verb']\n}>\n\nexport type ApiUriCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n uri: ApiUriCall['uri']\n }\n>\n\nexport type ApiUriTemplateCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: ApiUriTemplateCall['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 { Axios, AxiosError, AxiosJson } from '@xylabs/axios'\nimport { Hash } from '@xylabs/hex'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { PayloadHasher } from '@xyo-network/hash'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { isPayloadOfSchemaType, Schema } from '@xyo-network/payload-model'\nimport { fromByteArray } from 'base64-js'\nimport fillTemplate from 'es6-dynamic-template'\n\nimport { checkIpfsUrl } from '../lib/index.ts'\nimport {\n ApiCall,\n ApiCallBase64Result,\n ApiCallErrorResult,\n ApiCallJsonResult,\n ApiCallJsonResultType,\n ApiCallResult,\n ApiCallResultSchema,\n ApiCallSchema,\n ApiCallXmlResult,\n asApiUriCall,\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, ApiCall, 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?: ApiCall): string {\n const { uri: callUri } = asApiUriCall(call) ?? {}\n const { uriTemplate: callUriTemplate, params: callParams, queries: callQueries } = asApiUriTemplateCall(call) ?? {}\n const { uri: configUri } = asApiUriCallWitnessConfig(this.config) ?? {}\n const { uriTemplate: configUriTemplate, params: configParams, queries: configQueries } = 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 queries.map(([key, value]) => 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 { ...this.params.headers, ...this.config.headers, ...headers }\n }\n\n protected override async observeHandler(inPayloads: ApiCall[] = []): Promise<ApiCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType(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.build(call)).$hash)\n }\n\n const observation: ApiCallResult = {\n call: await PayloadHasher.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 = {\n status: response.status,\n }\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 = {\n status: response.status,\n }\n }\n break\n }\n default: {\n const axios = new Axios({ headers: this.params.headers, responseType: 'arraybuffer', timeout: this.timeout })\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(Buffer.from(response.data, 'binary'))\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = {\n status: response.status,\n }\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'\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":["ApiCallSchema","ApiCallResultSchema","isApiCall","isPayloadOfSchemaType","ApiCallSchema","asApiCall","AsObjectFactory","create","isApiCall","import_object","import_payload_model","isApiCallBase64Result","x","isPayloadOfSchemaType","ApiCallResultSchema","data","asApiCallBase64Result","AsObjectFactory","create","isApiCallBase64Result","import_object","import_payload_model","isApiCallResult","isPayloadOfSchemaType","ApiCallResultSchema","asApiCallResult","AsObjectFactory","create","isApiCallResult","import_object","import_payload_model","isApiCallXmlResult","x","isPayloadOfSchemaType","ApiCallResultSchema","data","asApiCallXmlResult","AsObjectFactory","create","isApiCallXmlResult","import_object","isApiUriCall","value","isApiCall","uri","asApiUriCall","AsObjectFactory","create","isApiUriCall","import_object","isApiUriTemplateCall","value","isApiCall","uriTemplate","params","asApiUriTemplateCall","AsObjectFactory","create","isApiUriTemplateCall","import_payload_model","isApiCallErrorResult","value","isPayloadOfSchemaType","ApiCallResultSchema","http","status","import_object","import_payload_model","isApiCallJsonResult","x","isPayloadOfSchemaType","ApiCallResultSchema","contentType","asApiCallJsonResult","AsObjectFactory","create","import_object","import_payload_model","ApiCallWitnessConfigSchema","isApiCallWitnessConfig","isPayloadOfSchemaType","ApiCallWitnessConfigSchema","asApiCallWitnessConfig","AsObjectFactory","create","isApiUriCallWitnessConfig","value","uri","asApiUriCallWitnessConfig","isApiUriTemplateCallWitnessConfig","uriTemplate","asApiUriTemplateCallWitnessConfig","import_assert","import_payload_model","allowIpfsIoRepair","checkIpfsUrl","urlToCheck","ipfsGateway","url","URL","protocol","host","path","pathname","query","search","assertEx","root","length","pathParts","split","shift","join","ApiCallWitness","AbstractWitness","configSchemas","ApiCallWitnessConfigSchema","defaultConfigSchema","accept","config","ipfsGateway","params","timeout","getFullUri","call","uri","callUri","asApiUriCall","uriTemplate","callUriTemplate","callParams","queries","callQueries","asApiUriTemplateCall","configUri","asApiUriCallWitnessConfig","configUriTemplate","configParams","configQueries","asApiUriTemplateCallWitnessConfig","url","undefined","URL","fillTemplate","Object","entries","map","key","value","searchParams","set","href","Error","getHeaders","headers","observeHandler","inPayloads","started","observations","Promise","all","filter","isPayloadOfSchemaType","ApiCallSchema","verb","callVerb","configVerb","validatedUri","assertEx","checkIpfsUrl","httpGet","PayloadBuilder","build","$hash","observation","PayloadHasher","hash","schema","ApiCallResultSchema","ex","error","console","name","message","log","stack","result","axios","AxiosJson","Accept","response","get","status","jsonResult","data","contentType","errorResult","http","Axios","responseType","xmlResult","Buffer","from","toString","fromByteArray","axiosError","isAxiosError","code"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../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":["export * from './Payload/index.ts'\nexport * from './Witness/index.ts'\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiCall } from './isApiCall.ts'\n\nexport const asApiCall = AsObjectFactory.create(isApiCall)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallSchema } from '../Schema.ts'\nimport { ApiCall } from '../types/index.ts'\n\nexport const isApiCall = isPayloadOfSchemaType<ApiCall>(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 } from '../types/index.ts'\n\nexport const isApiCallBase64Result = (x?: unknown | null): x is ApiCallBase64Result => {\n return isPayloadOfSchemaType(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 { ApiCallXmlResult } from '../types/index.ts'\n\nexport const isApiCallXmlResult = (x?: unknown | null): x is ApiCallXmlResult => {\n return isPayloadOfSchemaType(ApiCallResultSchema)(x) && typeof (x as ApiCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriCall } from './isApiUriCall.ts'\n\nexport const asApiUriCall = AsObjectFactory.create(isApiUriCall)\n","import { ApiUriCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriCall = (value?: unknown): value is ApiUriCall => isApiCall(value) && !!(value as ApiUriCall).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriTemplateCall } from './isApiUriTemplateCall.ts'\n\nexport const asApiUriTemplateCall = AsObjectFactory.create(isApiUriTemplateCall)\n","import { ApiUriTemplateCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriTemplateCall = (value?: unknown): value is ApiUriTemplateCall =>\n isApiCall(value) && !!((value as ApiUriTemplateCall).uriTemplate || (value as ApiUriTemplateCall).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 { AsObjectFactory, JsonArray, JsonObject } from '@xylabs/object'\nimport { isPayloadOfSchemaType, Payload } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.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(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 { ApiCall, ApiUriCall, ApiUriTemplateCall, MimeTypes } 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?: ApiCall['queries']\n schema: ApiCallWitnessConfigSchema\n timeout?: number\n verb?: ApiCall['verb']\n}>\n\nexport type ApiUriCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n uri: ApiUriCall['uri']\n }\n>\n\nexport type ApiUriTemplateCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: ApiUriTemplateCall['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 { PayloadHasher } 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 ApiCall,\n ApiCallBase64Result,\n ApiCallErrorResult,\n ApiCallJsonResult,\n ApiCallJsonResultType,\n ApiCallResult,\n ApiCallResultSchema,\n ApiCallSchema,\n ApiCallXmlResult,\n asApiUriCall,\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, ApiCall, 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?: ApiCall): string {\n const { uri: callUri } = asApiUriCall(call) ?? {}\n const { uriTemplate: callUriTemplate, params: callParams, queries: callQueries } = asApiUriTemplateCall(call) ?? {}\n const { uri: configUri } = asApiUriCallWitnessConfig(this.config) ?? {}\n const { uriTemplate: configUriTemplate, params: configParams, queries: configQueries } = 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 queries.map(([key, value]) => 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 { ...this.params.headers, ...this.config.headers, ...headers }\n }\n\n protected override async observeHandler(inPayloads: ApiCall[] = []): Promise<ApiCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType(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.build(call)).$hash)\n }\n\n const observation: ApiCallResult = {\n call: await PayloadHasher.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 = {\n status: response.status,\n }\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 = {\n status: response.status,\n }\n }\n break\n }\n default: {\n const axios = new Axios({ headers: this.params.headers, responseType: 'arraybuffer', timeout: this.timeout })\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(Buffer.from(response.data, 'binary'))\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = {\n status: response.status,\n }\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":["import_object","import_payload_model","import_object","import_payload_model","import_object","import_payload_model","import_object","import_object","import_payload_model","import_object","import_payload_model","import_object","import_payload_model","import_assert","import_url","import_payload_model","import_axios","fillTemplate"]}
@@ -1,6 +1,3 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
1
  // src/Payload/identity/asApiCall.ts
5
2
  import { AsObjectFactory } from "@xylabs/object";
6
3
 
@@ -22,9 +19,9 @@ import { AsObjectFactory as AsObjectFactory2 } from "@xylabs/object";
22
19
 
23
20
  // src/Payload/identity/isApiCallBase64Result.ts
24
21
  import { isPayloadOfSchemaType as isPayloadOfSchemaType2 } from "@xyo-network/payload-model";
25
- var isApiCallBase64Result = /* @__PURE__ */ __name((x) => {
22
+ var isApiCallBase64Result = (x) => {
26
23
  return isPayloadOfSchemaType2(ApiCallResultSchema)(x) && typeof x?.data === "string";
27
- }, "isApiCallBase64Result");
24
+ };
28
25
 
29
26
  // src/Payload/identity/asApiCallBase64Result.ts
30
27
  var asApiCallBase64Result = AsObjectFactory2.create(isApiCallBase64Result);
@@ -44,9 +41,9 @@ import { AsObjectFactory as AsObjectFactory4 } from "@xylabs/object";
44
41
 
45
42
  // src/Payload/identity/isApiCallXmlResult.ts
46
43
  import { isPayloadOfSchemaType as isPayloadOfSchemaType4 } from "@xyo-network/payload-model";
47
- var isApiCallXmlResult = /* @__PURE__ */ __name((x) => {
44
+ var isApiCallXmlResult = (x) => {
48
45
  return isPayloadOfSchemaType4(ApiCallResultSchema)(x) && typeof x?.data === "string";
49
- }, "isApiCallXmlResult");
46
+ };
50
47
 
51
48
  // src/Payload/identity/asApiCallXmlResult.ts
52
49
  var asApiCallXmlResult = AsObjectFactory4.create(isApiCallXmlResult);
@@ -55,7 +52,7 @@ var asApiCallXmlResult = AsObjectFactory4.create(isApiCallXmlResult);
55
52
  import { AsObjectFactory as AsObjectFactory5 } from "@xylabs/object";
56
53
 
57
54
  // src/Payload/identity/isApiUriCall.ts
58
- var isApiUriCall = /* @__PURE__ */ __name((value) => isApiCall(value) && !!value.uri, "isApiUriCall");
55
+ var isApiUriCall = (value) => isApiCall(value) && !!value.uri;
59
56
 
60
57
  // src/Payload/identity/asApiUriCall.ts
61
58
  var asApiUriCall = AsObjectFactory5.create(isApiUriCall);
@@ -64,21 +61,21 @@ var asApiUriCall = AsObjectFactory5.create(isApiUriCall);
64
61
  import { AsObjectFactory as AsObjectFactory6 } from "@xylabs/object";
65
62
 
66
63
  // src/Payload/identity/isApiUriTemplateCall.ts
67
- var isApiUriTemplateCall = /* @__PURE__ */ __name((value) => isApiCall(value) && !!(value.uriTemplate || value.params), "isApiUriTemplateCall");
64
+ var isApiUriTemplateCall = (value) => isApiCall(value) && !!(value.uriTemplate || value.params);
68
65
 
69
66
  // src/Payload/identity/asApiUriTemplateCall.ts
70
67
  var asApiUriTemplateCall = AsObjectFactory6.create(isApiUriTemplateCall);
71
68
 
72
69
  // src/Payload/identity/isApiCallErrorResult.ts
73
70
  import { isPayloadOfSchemaType as isPayloadOfSchemaType5 } from "@xyo-network/payload-model";
74
- var isApiCallErrorResult = /* @__PURE__ */ __name((value) => !!isPayloadOfSchemaType5(ApiCallResultSchema) && (value.http?.status ?? 200) >= 400, "isApiCallErrorResult");
71
+ var isApiCallErrorResult = (value) => !!isPayloadOfSchemaType5(ApiCallResultSchema) && (value.http?.status ?? 200) >= 400;
75
72
 
76
73
  // src/Payload/types/ApiCallJsonResult.ts
77
74
  import { AsObjectFactory as AsObjectFactory7 } from "@xylabs/object";
78
75
  import { isPayloadOfSchemaType as isPayloadOfSchemaType6 } from "@xyo-network/payload-model";
79
- var isApiCallJsonResult = /* @__PURE__ */ __name((x) => {
76
+ var isApiCallJsonResult = (x) => {
80
77
  return isPayloadOfSchemaType6(ApiCallResultSchema)(x) && x?.contentType === "application/json";
81
- }, "isApiCallJsonResult");
78
+ };
82
79
  var asApiCallJsonResult = AsObjectFactory7.create(isApiCallJsonResult);
83
80
 
84
81
  // src/Witness/Config.ts
@@ -91,25 +88,28 @@ var ApiCallWitnessConfigSchema = "network.xyo.api.call.witness.config";
91
88
  // src/Witness/Config.ts
92
89
  var isApiCallWitnessConfig = isPayloadOfSchemaType7(ApiCallWitnessConfigSchema);
93
90
  var asApiCallWitnessConfig = AsObjectFactory8.create(isApiCallWitnessConfig);
94
- var isApiUriCallWitnessConfig = /* @__PURE__ */ __name((value) => isApiCallWitnessConfig(value) && !!value.uri, "isApiUriCallWitnessConfig");
91
+ var isApiUriCallWitnessConfig = (value) => isApiCallWitnessConfig(value) && !!value.uri;
95
92
  var asApiUriCallWitnessConfig = AsObjectFactory8.create(isApiUriCallWitnessConfig);
96
- var isApiUriTemplateCallWitnessConfig = /* @__PURE__ */ __name((value) => isApiCallWitnessConfig(value) && !!value.uriTemplate, "isApiUriTemplateCallWitnessConfig");
93
+ var isApiUriTemplateCallWitnessConfig = (value) => isApiCallWitnessConfig(value) && !!value.uriTemplate;
97
94
  var asApiUriTemplateCallWitnessConfig = AsObjectFactory8.create(isApiUriTemplateCallWitnessConfig);
98
95
 
99
96
  // src/Witness/Witness.ts
100
97
  import { assertEx as assertEx2 } from "@xylabs/assert";
101
- import { Axios, AxiosJson } from "@xylabs/axios";
98
+ import { AxiosJson } from "@xylabs/axios";
99
+ import { URL as URL2 } from "@xylabs/url";
102
100
  import { AbstractWitness } from "@xyo-network/abstract-witness";
103
101
  import { PayloadHasher } from "@xyo-network/hash";
104
102
  import { PayloadBuilder } from "@xyo-network/payload-builder";
105
103
  import { isPayloadOfSchemaType as isPayloadOfSchemaType8 } from "@xyo-network/payload-model";
104
+ import { Axios } from "axios";
106
105
  import { fromByteArray } from "base64-js";
107
106
  import fillTemplate from "es6-dynamic-template";
108
107
 
109
108
  // src/lib/checkIpfsUrl.ts
110
109
  import { assertEx } from "@xylabs/assert";
110
+ import { URL } from "@xylabs/url";
111
111
  var allowIpfsIoRepair = true;
112
- var checkIpfsUrl = /* @__PURE__ */ __name((urlToCheck, ipfsGateway) => {
112
+ var checkIpfsUrl = (urlToCheck, ipfsGateway) => {
113
113
  try {
114
114
  const url = new URL(urlToCheck);
115
115
  let protocol = url.protocol;
@@ -138,17 +138,11 @@ var checkIpfsUrl = /* @__PURE__ */ __name((urlToCheck, ipfsGateway) => {
138
138
  } catch {
139
139
  return urlToCheck;
140
140
  }
141
- }, "checkIpfsUrl");
141
+ };
142
142
 
143
143
  // src/Witness/Witness.ts
144
144
  var ApiCallWitness = class extends AbstractWitness {
145
- static {
146
- __name(this, "ApiCallWitness");
147
- }
148
- static configSchemas = [
149
- ...super.configSchemas,
150
- ApiCallWitnessConfigSchema
151
- ];
145
+ static configSchemas = [...super.configSchemas, ApiCallWitnessConfigSchema];
152
146
  static defaultConfigSchema = ApiCallWitnessConfigSchema;
153
147
  get accept() {
154
148
  return this.config.accept ?? "application/json";
@@ -164,55 +158,47 @@ var ApiCallWitness = class extends AbstractWitness {
164
158
  const { uriTemplate: callUriTemplate, params: callParams, queries: callQueries } = asApiUriTemplateCall(call) ?? {};
165
159
  const { uri: configUri } = asApiUriCallWitnessConfig(this.config) ?? {};
166
160
  const { uriTemplate: configUriTemplate, params: configParams, queries: configQueries } = asApiUriTemplateCallWitnessConfig(this.config) ?? {};
167
- const params = {
168
- ...configParams,
169
- ...callParams
170
- };
161
+ const params = { ...configParams, ...callParams };
171
162
  let url = void 0;
172
163
  if (callUri) {
173
- url = new URL(callUri);
164
+ url = new URL2(callUri);
174
165
  } else if (callUriTemplate) {
175
- url = new URL(fillTemplate(callUriTemplate, params));
166
+ url = new URL2(fillTemplate(callUriTemplate, params));
176
167
  } else if (configUri) {
177
- url = new URL(configUri);
168
+ url = new URL2(configUri);
178
169
  } else if (configUriTemplate) {
179
- url = new URL(fillTemplate(configUriTemplate, params));
170
+ url = new URL2(fillTemplate(configUriTemplate, params));
180
171
  }
181
172
  if (url) {
182
- const queries = Object.entries({
183
- ...configQueries,
184
- ...callQueries
185
- });
173
+ const queries = Object.entries({ ...configQueries, ...callQueries });
186
174
  queries.map(([key, value]) => url?.searchParams.set(key, value));
187
175
  return url.href;
188
176
  }
189
177
  throw new Error("Unable to determine uri. No uri/uriTemplate specified in either the call or config.");
190
178
  }
191
179
  getHeaders(headers) {
192
- return {
193
- ...this.params.headers,
194
- ...this.config.headers,
195
- ...headers
196
- };
180
+ return { ...this.params.headers, ...this.config.headers, ...headers };
197
181
  }
198
182
  async observeHandler(inPayloads = []) {
199
183
  await this.started("throw");
200
184
  try {
201
- const observations = await Promise.all(inPayloads.filter(isPayloadOfSchemaType8(ApiCallSchema)).map(async (call) => {
202
- const { verb: callVerb } = call;
203
- const { verb: configVerb } = this.config;
204
- const verb = callVerb ?? configVerb ?? "get";
205
- const uri = this.getFullUri(call);
206
- const validatedUri = assertEx2(checkIpfsUrl(uri, this.ipfsGateway), () => "Invalid URI");
207
- if (verb === "get") {
208
- return this.httpGet(validatedUri, (await PayloadBuilder.build(call)).$hash);
209
- }
210
- const observation = {
211
- call: await PayloadHasher.hash(call),
212
- schema: ApiCallResultSchema
213
- };
214
- return observation;
215
- }));
185
+ const observations = await Promise.all(
186
+ inPayloads.filter(isPayloadOfSchemaType8(ApiCallSchema)).map(async (call) => {
187
+ const { verb: callVerb } = call;
188
+ const { verb: configVerb } = this.config;
189
+ const verb = callVerb ?? configVerb ?? "get";
190
+ const uri = this.getFullUri(call);
191
+ const validatedUri = assertEx2(checkIpfsUrl(uri, this.ipfsGateway), () => "Invalid URI");
192
+ if (verb === "get") {
193
+ return this.httpGet(validatedUri, (await PayloadBuilder.build(call)).$hash);
194
+ }
195
+ const observation = {
196
+ call: await PayloadHasher.hash(call),
197
+ schema: ApiCallResultSchema
198
+ };
199
+ return observation;
200
+ })
201
+ );
216
202
  return observations;
217
203
  } catch (ex) {
218
204
  const error = ex;
@@ -230,13 +216,7 @@ var ApiCallWitness = class extends AbstractWitness {
230
216
  try {
231
217
  switch (this.accept) {
232
218
  case "application/json": {
233
- const axios = new AxiosJson({
234
- headers: {
235
- ...this.getHeaders(headers),
236
- Accept: "application/json"
237
- },
238
- timeout: this.timeout
239
- });
219
+ const axios = new AxiosJson({ headers: { ...this.getHeaders(headers), Accept: "application/json" }, timeout: this.timeout });
240
220
  const response = await axios.get(url);
241
221
  if (response.status >= 200 && response.status < 300) {
242
222
  const jsonResult = result;
@@ -253,10 +233,7 @@ var ApiCallWitness = class extends AbstractWitness {
253
233
  case "application/xml":
254
234
  case "text/xml": {
255
235
  const axios = new Axios({
256
- headers: {
257
- ...this.getHeaders(headers),
258
- Accept: this.accept
259
- },
236
+ headers: { ...this.getHeaders(headers), Accept: this.accept },
260
237
  responseType: "arraybuffer",
261
238
  timeout: this.timeout
262
239
  });
@@ -274,11 +251,7 @@ var ApiCallWitness = class extends AbstractWitness {
274
251
  break;
275
252
  }
276
253
  default: {
277
- const axios = new Axios({
278
- headers: this.params.headers,
279
- responseType: "arraybuffer",
280
- timeout: this.timeout
281
- });
254
+ const axios = new Axios({ headers: this.params.headers, responseType: "arraybuffer", timeout: this.timeout });
282
255
  const response = await axios.get(url);
283
256
  if (response.status >= 200 && response.status < 300) {
284
257
  const jsonResult = result;
@@ -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 { isApiCall } from './isApiCall.ts'\n\nexport const asApiCall = AsObjectFactory.create(isApiCall)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallSchema } from '../Schema.ts'\nimport { ApiCall } from '../types/index.ts'\n\nexport const isApiCall = isPayloadOfSchemaType<ApiCall>(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 } from '../types/index.ts'\n\nexport const isApiCallBase64Result = (x?: unknown | null): x is ApiCallBase64Result => {\n return isPayloadOfSchemaType(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 { ApiCallXmlResult } from '../types/index.ts'\n\nexport const isApiCallXmlResult = (x?: unknown | null): x is ApiCallXmlResult => {\n return isPayloadOfSchemaType(ApiCallResultSchema)(x) && typeof (x as ApiCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriCall } from './isApiUriCall.ts'\n\nexport const asApiUriCall = AsObjectFactory.create(isApiUriCall)\n","import { ApiUriCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriCall = (value?: unknown): value is ApiUriCall => isApiCall(value) && !!(value as ApiUriCall).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriTemplateCall } from './isApiUriTemplateCall.ts'\n\nexport const asApiUriTemplateCall = AsObjectFactory.create(isApiUriTemplateCall)\n","import { ApiUriTemplateCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriTemplateCall = (value?: unknown): value is ApiUriTemplateCall =>\n isApiCall(value) && !!((value as ApiUriTemplateCall).uriTemplate || (value as ApiUriTemplateCall).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 { AsObjectFactory, JsonArray, JsonObject } from '@xylabs/object'\nimport { isPayloadOfSchemaType, Payload } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.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(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 { ApiCall, ApiUriCall, ApiUriTemplateCall, MimeTypes } 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?: ApiCall['queries']\n schema: ApiCallWitnessConfigSchema\n timeout?: number\n verb?: ApiCall['verb']\n}>\n\nexport type ApiUriCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n uri: ApiUriCall['uri']\n }\n>\n\nexport type ApiUriTemplateCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: ApiUriTemplateCall['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 { Axios, AxiosError, AxiosJson } from '@xylabs/axios'\nimport { Hash } from '@xylabs/hex'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { PayloadHasher } from '@xyo-network/hash'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { isPayloadOfSchemaType, Schema } from '@xyo-network/payload-model'\nimport { fromByteArray } from 'base64-js'\nimport fillTemplate from 'es6-dynamic-template'\n\nimport { checkIpfsUrl } from '../lib/index.ts'\nimport {\n ApiCall,\n ApiCallBase64Result,\n ApiCallErrorResult,\n ApiCallJsonResult,\n ApiCallJsonResultType,\n ApiCallResult,\n ApiCallResultSchema,\n ApiCallSchema,\n ApiCallXmlResult,\n asApiUriCall,\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, ApiCall, 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?: ApiCall): string {\n const { uri: callUri } = asApiUriCall(call) ?? {}\n const { uriTemplate: callUriTemplate, params: callParams, queries: callQueries } = asApiUriTemplateCall(call) ?? {}\n const { uri: configUri } = asApiUriCallWitnessConfig(this.config) ?? {}\n const { uriTemplate: configUriTemplate, params: configParams, queries: configQueries } = 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 queries.map(([key, value]) => 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 { ...this.params.headers, ...this.config.headers, ...headers }\n }\n\n protected override async observeHandler(inPayloads: ApiCall[] = []): Promise<ApiCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType(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.build(call)).$hash)\n }\n\n const observation: ApiCallResult = {\n call: await PayloadHasher.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 = {\n status: response.status,\n }\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 = {\n status: response.status,\n }\n }\n break\n }\n default: {\n const axios = new Axios({ headers: this.params.headers, responseType: 'arraybuffer', timeout: this.timeout })\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(Buffer.from(response.data, 'binary'))\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = {\n status: response.status,\n }\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'\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","ApiCallSchema","ApiCallResultSchema","isApiCall","isPayloadOfSchemaType","ApiCallSchema","asApiCall","AsObjectFactory","create","isApiCall","AsObjectFactory","isPayloadOfSchemaType","isApiCallBase64Result","x","isPayloadOfSchemaType","ApiCallResultSchema","data","asApiCallBase64Result","AsObjectFactory","create","isApiCallBase64Result","AsObjectFactory","isPayloadOfSchemaType","isApiCallResult","isPayloadOfSchemaType","ApiCallResultSchema","asApiCallResult","AsObjectFactory","create","isApiCallResult","AsObjectFactory","isPayloadOfSchemaType","isApiCallXmlResult","x","isPayloadOfSchemaType","ApiCallResultSchema","data","asApiCallXmlResult","AsObjectFactory","create","isApiCallXmlResult","AsObjectFactory","isApiUriCall","value","isApiCall","uri","asApiUriCall","AsObjectFactory","create","isApiUriCall","AsObjectFactory","isApiUriTemplateCall","value","isApiCall","uriTemplate","params","asApiUriTemplateCall","AsObjectFactory","create","isApiUriTemplateCall","isPayloadOfSchemaType","isApiCallErrorResult","value","isPayloadOfSchemaType","ApiCallResultSchema","http","status","AsObjectFactory","isPayloadOfSchemaType","isApiCallJsonResult","x","isPayloadOfSchemaType","ApiCallResultSchema","contentType","asApiCallJsonResult","AsObjectFactory","create","AsObjectFactory","isPayloadOfSchemaType","ApiCallWitnessConfigSchema","isApiCallWitnessConfig","isPayloadOfSchemaType","ApiCallWitnessConfigSchema","asApiCallWitnessConfig","AsObjectFactory","create","isApiUriCallWitnessConfig","value","uri","asApiUriCallWitnessConfig","isApiUriTemplateCallWitnessConfig","uriTemplate","asApiUriTemplateCallWitnessConfig","assertEx","Axios","AxiosJson","AbstractWitness","PayloadHasher","PayloadBuilder","isPayloadOfSchemaType","fromByteArray","fillTemplate","assertEx","allowIpfsIoRepair","checkIpfsUrl","urlToCheck","ipfsGateway","url","URL","protocol","host","path","pathname","query","search","assertEx","root","length","pathParts","split","shift","join","ApiCallWitness","AbstractWitness","configSchemas","ApiCallWitnessConfigSchema","defaultConfigSchema","accept","config","ipfsGateway","params","timeout","getFullUri","call","uri","callUri","asApiUriCall","uriTemplate","callUriTemplate","callParams","queries","callQueries","asApiUriTemplateCall","configUri","asApiUriCallWitnessConfig","configUriTemplate","configParams","configQueries","asApiUriTemplateCallWitnessConfig","url","undefined","URL","fillTemplate","Object","entries","map","key","value","searchParams","set","href","Error","getHeaders","headers","observeHandler","inPayloads","started","observations","Promise","all","filter","isPayloadOfSchemaType","ApiCallSchema","verb","callVerb","configVerb","validatedUri","assertEx","checkIpfsUrl","httpGet","PayloadBuilder","build","$hash","observation","PayloadHasher","hash","schema","ApiCallResultSchema","ex","error","console","name","message","log","stack","result","axios","AxiosJson","Accept","response","get","status","jsonResult","data","contentType","errorResult","http","Axios","responseType","xmlResult","Buffer","from","toString","fromByteArray","axiosError","isAxiosError","code"]}
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 { isApiCall } from './isApiCall.ts'\n\nexport const asApiCall = AsObjectFactory.create(isApiCall)\n","import { isPayloadOfSchemaType } from '@xyo-network/payload-model'\n\nimport { ApiCallSchema } from '../Schema.ts'\nimport { ApiCall } from '../types/index.ts'\n\nexport const isApiCall = isPayloadOfSchemaType<ApiCall>(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 } from '../types/index.ts'\n\nexport const isApiCallBase64Result = (x?: unknown | null): x is ApiCallBase64Result => {\n return isPayloadOfSchemaType(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 { ApiCallXmlResult } from '../types/index.ts'\n\nexport const isApiCallXmlResult = (x?: unknown | null): x is ApiCallXmlResult => {\n return isPayloadOfSchemaType(ApiCallResultSchema)(x) && typeof (x as ApiCallXmlResult)?.data === 'string'\n}\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriCall } from './isApiUriCall.ts'\n\nexport const asApiUriCall = AsObjectFactory.create(isApiUriCall)\n","import { ApiUriCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriCall = (value?: unknown): value is ApiUriCall => isApiCall(value) && !!(value as ApiUriCall).uri\n","import { AsObjectFactory } from '@xylabs/object'\n\nimport { isApiUriTemplateCall } from './isApiUriTemplateCall.ts'\n\nexport const asApiUriTemplateCall = AsObjectFactory.create(isApiUriTemplateCall)\n","import { ApiUriTemplateCall } from '../types/index.ts'\nimport { isApiCall } from './isApiCall.ts'\n\nexport const isApiUriTemplateCall = (value?: unknown): value is ApiUriTemplateCall =>\n isApiCall(value) && !!((value as ApiUriTemplateCall).uriTemplate || (value as ApiUriTemplateCall).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 { AsObjectFactory, JsonArray, JsonObject } from '@xylabs/object'\nimport { isPayloadOfSchemaType, Payload } from '@xyo-network/payload-model'\n\nimport { ApiCallResultSchema } from '../Schema.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(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 { ApiCall, ApiUriCall, ApiUriTemplateCall, MimeTypes } 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?: ApiCall['queries']\n schema: ApiCallWitnessConfigSchema\n timeout?: number\n verb?: ApiCall['verb']\n}>\n\nexport type ApiUriCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n uri: ApiUriCall['uri']\n }\n>\n\nexport type ApiUriTemplateCallWitnessConfig = WitnessConfig<\n ApiCallWitnessConfigBase & {\n params?: Record<string, string>\n uriTemplate: ApiUriTemplateCall['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 { PayloadHasher } 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 ApiCall,\n ApiCallBase64Result,\n ApiCallErrorResult,\n ApiCallJsonResult,\n ApiCallJsonResultType,\n ApiCallResult,\n ApiCallResultSchema,\n ApiCallSchema,\n ApiCallXmlResult,\n asApiUriCall,\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, ApiCall, 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?: ApiCall): string {\n const { uri: callUri } = asApiUriCall(call) ?? {}\n const { uriTemplate: callUriTemplate, params: callParams, queries: callQueries } = asApiUriTemplateCall(call) ?? {}\n const { uri: configUri } = asApiUriCallWitnessConfig(this.config) ?? {}\n const { uriTemplate: configUriTemplate, params: configParams, queries: configQueries } = 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 queries.map(([key, value]) => 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 { ...this.params.headers, ...this.config.headers, ...headers }\n }\n\n protected override async observeHandler(inPayloads: ApiCall[] = []): Promise<ApiCallResult[]> {\n await this.started('throw')\n try {\n const observations = await Promise.all(\n inPayloads.filter(isPayloadOfSchemaType(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.build(call)).$hash)\n }\n\n const observation: ApiCallResult = {\n call: await PayloadHasher.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 = {\n status: response.status,\n }\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 = {\n status: response.status,\n }\n }\n break\n }\n default: {\n const axios = new Axios({ headers: this.params.headers, responseType: 'arraybuffer', timeout: this.timeout })\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(Buffer.from(response.data, 'binary'))\n jsonResult.contentType = response.headers['content-type']?.toString() ?? 'application/octet-stream'\n } else {\n const errorResult = result as ApiCallErrorResult\n errorResult.http = {\n status: response.status,\n }\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 +1 @@
1
- {"version":3,"file":"checkIpfsUrl.d.ts","sourceRoot":"","sources":["../../../src/lib/checkIpfsUrl.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY,eAAgB,MAAM,gBAAgB,MAAM,KAAG,MAgCvE,CAAA"}
1
+ {"version":3,"file":"checkIpfsUrl.d.ts","sourceRoot":"","sources":["../../../src/lib/checkIpfsUrl.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,YAAY,eAAgB,MAAM,gBAAgB,MAAM,KAAG,MAgCvE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkIpfsUrl.d.ts","sourceRoot":"","sources":["../../../src/lib/checkIpfsUrl.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY,eAAgB,MAAM,gBAAgB,MAAM,KAAG,MAgCvE,CAAA"}
1
+ {"version":3,"file":"checkIpfsUrl.d.ts","sourceRoot":"","sources":["../../../src/lib/checkIpfsUrl.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,YAAY,eAAgB,MAAM,gBAAgB,MAAM,KAAG,MAgCvE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkIpfsUrl.d.ts","sourceRoot":"","sources":["../../../src/lib/checkIpfsUrl.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY,eAAgB,MAAM,gBAAgB,MAAM,KAAG,MAgCvE,CAAA"}
1
+ {"version":3,"file":"checkIpfsUrl.d.ts","sourceRoot":"","sources":["../../../src/lib/checkIpfsUrl.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,YAAY,eAAgB,MAAM,gBAAgB,MAAM,KAAG,MAgCvE,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export declare const asApiCall: {
2
- <TType extends import("../index.ts").ApiCall>(value: import("@xylabs/promise").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
3
- <TType extends import("../index.ts").ApiCall>(value: import("@xylabs/promise").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("../index.ts").ApiCall>, config?: import("@xylabs/object").TypeCheckConfig): TType;
2
+ <TType extends import("../index.ts").ApiCall>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
3
+ <TType extends import("../index.ts").ApiCall>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("../index.ts").ApiCall>, config?: import("@xylabs/object").TypeCheckConfig): TType;
4
4
  };
5
5
  //# sourceMappingURL=asApiCall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"asApiCall.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCall.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;gEACkE,iBAAiB,iCAAiC,gBAAoB;gEAA+E,iBAAiB,wHAAgG,gBAAoB;CADxT,CAAA"}
1
+ {"version":3,"file":"asApiCall.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCall.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;gEACkE,sDAAiB,iCAAiC,gBAAoB;gEAA+E,sDAAiB,wHAAgG,gBAAoB;CADxT,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export declare const asApiCall: {
2
- <TType extends import("../index.ts").ApiCall>(value: import("@xylabs/promise").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
3
- <TType extends import("../index.ts").ApiCall>(value: import("@xylabs/promise").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("../index.ts").ApiCall>, config?: import("@xylabs/object").TypeCheckConfig): TType;
2
+ <TType extends import("../index.ts").ApiCall>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
3
+ <TType extends import("../index.ts").ApiCall>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("../index.ts").ApiCall>, config?: import("@xylabs/object").TypeCheckConfig): TType;
4
4
  };
5
5
  //# sourceMappingURL=asApiCall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"asApiCall.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCall.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;gEACkE,iBAAiB,iCAAiC,gBAAoB;gEAA+E,iBAAiB,wHAAgG,gBAAoB;CADxT,CAAA"}
1
+ {"version":3,"file":"asApiCall.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCall.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;gEACkE,sDAAiB,iCAAiC,gBAAoB;gEAA+E,sDAAiB,wHAAgG,gBAAoB;CADxT,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export declare const asApiCall: {
2
- <TType extends import("../index.ts").ApiCall>(value: import("@xylabs/promise").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
3
- <TType extends import("../index.ts").ApiCall>(value: import("@xylabs/promise").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("../index.ts").ApiCall>, config?: import("@xylabs/object").TypeCheckConfig): TType;
2
+ <TType extends import("../index.ts").ApiCall>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
3
+ <TType extends import("../index.ts").ApiCall>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("../index.ts").ApiCall>, config?: import("@xylabs/object").TypeCheckConfig): TType;
4
4
  };
5
5
  //# sourceMappingURL=asApiCall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"asApiCall.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCall.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;gEACkE,iBAAiB,iCAAiC,gBAAoB;gEAA+E,iBAAiB,wHAAgG,gBAAoB;CADxT,CAAA"}
1
+ {"version":3,"file":"asApiCall.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCall.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;gEACkE,sDAAiB,iCAAiC,gBAAoB;gEAA+E,sDAAiB,wHAAgG,gBAAoB;CADxT,CAAA"}
@@ -5,14 +5,14 @@ export declare const asApiCallBase64Result: {
5
5
  data: string;
6
6
  } & {
7
7
  schema: "network.xyo.api.call.result";
8
- }>(value: import("@xylabs/promise").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
8
+ }>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
9
9
  <TType extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
10
10
  call: import("@xylabs/hex").Hash;
11
11
  contentType: Exclude<Exclude<string, import("../index.ts").ApiCallJsonResult["contentType"]>, import("../index.ts").ApiCallXmlResult["contentType"]>;
12
12
  data: string;
13
13
  } & {
14
14
  schema: "network.xyo.api.call.result";
15
- }>(value: import("@xylabs/promise").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
15
+ }>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
16
16
  call: import("@xylabs/hex").Hash;
17
17
  contentType: Exclude<Exclude<string, import("../index.ts").ApiCallJsonResult["contentType"]>, import("../index.ts").ApiCallXmlResult["contentType"]>;
18
18
  data: string;
@@ -1 +1 @@
1
- {"version":3,"file":"asApiCallBase64Result.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCallBase64Result.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,qBAAqB;;;;;;;qBACM,iBAAiB,iCAAiC,gBAAoB;;;;;;;qBAA+E,iBAAiB;;;;;;wBAAgG,gBAAoB;CADhP,CAAA"}
1
+ {"version":3,"file":"asApiCallBase64Result.d.ts","sourceRoot":"","sources":["../../../../src/Payload/identity/asApiCallBase64Result.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,qBAAqB;;;;;;;qBACM,sDAAiB,iCAAiC,gBAAoB;;;;;;;qBAA+E,sDAAiB;;;;;;wBAAgG,gBAAoB;CADhP,CAAA"}
@@ -5,14 +5,14 @@ export declare const asApiCallBase64Result: {
5
5
  data: string;
6
6
  } & {
7
7
  schema: "network.xyo.api.call.result";
8
- }>(value: import("@xylabs/promise").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
8
+ }>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, config?: import("@xylabs/object").TypeCheckConfig): TType | undefined;
9
9
  <TType extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
10
10
  call: import("@xylabs/hex").Hash;
11
11
  contentType: Exclude<Exclude<string, import("../index.ts").ApiCallJsonResult["contentType"]>, import("../index.ts").ApiCallXmlResult["contentType"]>;
12
12
  data: string;
13
13
  } & {
14
14
  schema: "network.xyo.api.call.result";
15
- }>(value: import("@xylabs/promise").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
15
+ }>(value: import(".store/@xylabs-promise-npm-3.6.12-b2766b2a25/package").AnyNonPromise, assert: import("@xylabs/object").StringOrAlertFunction<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
16
16
  call: import("@xylabs/hex").Hash;
17
17
  contentType: Exclude<Exclude<string, import("../index.ts").ApiCallJsonResult["contentType"]>, import("../index.ts").ApiCallXmlResult["contentType"]>;
18
18
  data: string;