@decaf-ts/for-fabric 0.1.26 → 0.1.28

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 (317) hide show
  1. package/dist/for-fabric.cjs +2 -1726
  2. package/dist/for-fabric.cjs.map +1 -0
  3. package/dist/for-fabric.js +2 -1831
  4. package/dist/for-fabric.js.map +1 -0
  5. package/lib/bin/build-contract.cjs +1 -2
  6. package/lib/bin/build-contract.js.map +1 -0
  7. package/lib/bin/build-contracts.cjs +1 -2
  8. package/lib/bin/build-contracts.js.map +1 -0
  9. package/lib/bin/build-contracts2.cjs +1 -2
  10. package/lib/bin/build-contracts2.js.map +1 -0
  11. package/lib/bin/compile-indexes.cjs +1 -2
  12. package/lib/bin/compile-indexes.js.map +1 -0
  13. package/lib/cli-module.cjs +1 -1
  14. package/lib/cli-module.js.map +1 -0
  15. package/lib/client/FabricClientAdapter.cjs +43 -38
  16. package/lib/client/FabricClientAdapter.d.ts +28 -27
  17. package/lib/client/FabricClientAdapter.js.map +1 -0
  18. package/lib/client/FabricClientDispatch.cjs +7 -3
  19. package/lib/client/FabricClientDispatch.d.ts +4 -4
  20. package/lib/client/FabricClientDispatch.js.map +1 -0
  21. package/lib/client/FabricClientPaginator.cjs +1 -1
  22. package/lib/client/FabricClientPaginator.js.map +1 -0
  23. package/lib/client/FabricClientRepository.cjs +25 -3
  24. package/lib/client/FabricClientRepository.d.ts +2 -1
  25. package/lib/client/FabricClientRepository.js.map +1 -0
  26. package/lib/client/FabricClientStatement.cjs +1 -1
  27. package/lib/client/FabricClientStatement.js.map +1 -0
  28. package/lib/client/constants.cjs +10 -0
  29. package/lib/client/constants.d.ts +2 -0
  30. package/lib/client/constants.js.map +1 -0
  31. package/lib/client/erc20/FabricERC20ClientRepository.cjs +49 -23
  32. package/lib/client/erc20/FabricERC20ClientRepository.js.map +1 -0
  33. package/lib/client/erc20/index.cjs +1 -1
  34. package/lib/client/erc20/index.js.map +1 -0
  35. package/lib/client/fabric-fs.cjs +1 -1
  36. package/lib/client/fabric-fs.js.map +1 -0
  37. package/lib/client/fabric-hsm.cjs +1 -1
  38. package/lib/client/fabric-hsm.js.map +1 -0
  39. package/lib/client/index.cjs +1 -1
  40. package/lib/client/index.js.map +1 -0
  41. package/lib/client/indexes/generation.cjs +1 -1
  42. package/lib/client/indexes/generation.js.map +1 -0
  43. package/lib/client/indexes/index.cjs +1 -1
  44. package/lib/client/indexes/index.js.map +1 -0
  45. package/lib/client/logging.cjs +1 -1
  46. package/lib/client/logging.js.map +1 -0
  47. package/lib/client/services/FabricEnrollmentService.cjs +1 -1
  48. package/lib/client/services/FabricEnrollmentService.js.map +1 -0
  49. package/lib/client/services/constants.cjs +1 -1
  50. package/lib/client/services/constants.js.map +1 -0
  51. package/lib/client/services/index.cjs +1 -1
  52. package/lib/client/services/index.js.map +1 -0
  53. package/lib/client/types.cjs +3 -0
  54. package/lib/client/types.d.ts +7 -0
  55. package/lib/client/types.js.map +1 -0
  56. package/lib/contract/Address.cjs +2 -2
  57. package/lib/contract/Address.js.map +1 -0
  58. package/lib/contract/AddressContract.cjs +1 -1
  59. package/lib/contract/AddressContract.js.map +1 -0
  60. package/lib/contract/Product.cjs +1 -1
  61. package/lib/contract/Product.js.map +1 -0
  62. package/lib/contract/ProductContract.cjs +1 -1
  63. package/lib/contract/ProductContract.js.map +1 -0
  64. package/lib/contract/User.cjs +1 -1
  65. package/lib/contract/User.js.map +1 -0
  66. package/lib/contract/UserContract.cjs +1 -1
  67. package/lib/contract/UserContract.js.map +1 -0
  68. package/lib/contract/index.cjs +1 -1
  69. package/lib/contract/index.js.map +1 -0
  70. package/lib/contracts/ContractAdapter.cjs +84 -47
  71. package/lib/contracts/ContractAdapter.js.map +1 -0
  72. package/lib/contracts/ContractContext.cjs +1 -1
  73. package/lib/contracts/ContractContext.js.map +1 -0
  74. package/lib/contracts/ContractPrivateDataAdapter.cjs +1 -1
  75. package/lib/contracts/ContractPrivateDataAdapter.js.map +1 -0
  76. package/lib/contracts/FabricConstruction.cjs +1 -1
  77. package/lib/contracts/FabricConstruction.js.map +1 -0
  78. package/lib/contracts/FabricContractRepository.cjs +8 -1
  79. package/lib/contracts/FabricContractRepository.d.ts +12 -0
  80. package/lib/contracts/FabricContractRepository.js.map +1 -0
  81. package/lib/contracts/FabricContractRepositoryObservableHandler.cjs +1 -1
  82. package/lib/contracts/FabricContractRepositoryObservableHandler.js.map +1 -0
  83. package/lib/contracts/FabricContractStatement.cjs +1 -1
  84. package/lib/contracts/FabricContractStatement.js.map +1 -0
  85. package/lib/contracts/PrivateSequence.cjs +1 -1
  86. package/lib/contracts/PrivateSequence.js.map +1 -0
  87. package/lib/contracts/crud/crud-contract.cjs +3 -5
  88. package/lib/contracts/crud/crud-contract.d.ts +6 -6
  89. package/lib/contracts/crud/crud-contract.js.map +1 -0
  90. package/lib/contracts/crud/index.cjs +1 -1
  91. package/lib/contracts/crud/index.js.map +1 -0
  92. package/lib/contracts/crud/serialized-crud-contract.cjs +19 -13
  93. package/lib/contracts/crud/serialized-crud-contract.d.ts +5 -6
  94. package/lib/contracts/crud/serialized-crud-contract.js.map +1 -0
  95. package/lib/contracts/erc20/erc20contract.cjs +1 -1
  96. package/lib/contracts/erc20/erc20contract.js.map +1 -0
  97. package/lib/contracts/erc20/index.cjs +1 -1
  98. package/lib/contracts/erc20/index.js.map +1 -0
  99. package/lib/contracts/erc20/models.cjs +1 -1
  100. package/lib/contracts/erc20/models.js.map +1 -0
  101. package/lib/contracts/index.cjs +1 -1
  102. package/lib/contracts/index.js.map +1 -0
  103. package/lib/contracts/logging.cjs +1 -1
  104. package/lib/contracts/logging.js.map +1 -0
  105. package/lib/contracts/private-data.cjs +1 -1
  106. package/lib/contracts/private-data.js.map +1 -0
  107. package/lib/contracts/types.cjs +1 -1
  108. package/lib/contracts/types.js.map +1 -0
  109. package/lib/esm/bin/build-contract.js +1 -1
  110. package/lib/esm/bin/build-contract.js.map +1 -0
  111. package/lib/esm/bin/build-contracts.js +1 -1
  112. package/lib/esm/bin/build-contracts.js.map +1 -0
  113. package/lib/esm/bin/build-contracts2.js +1 -1
  114. package/lib/esm/bin/build-contracts2.js.map +1 -0
  115. package/lib/esm/bin/compile-indexes.js +1 -1
  116. package/lib/esm/bin/compile-indexes.js.map +1 -0
  117. package/lib/esm/cli-module.js +1 -1
  118. package/lib/esm/cli-module.js.map +1 -0
  119. package/lib/esm/client/FabricClientAdapter.d.ts +28 -27
  120. package/lib/esm/client/FabricClientAdapter.js +43 -38
  121. package/lib/esm/client/FabricClientAdapter.js.map +1 -0
  122. package/lib/esm/client/FabricClientDispatch.d.ts +4 -4
  123. package/lib/esm/client/FabricClientDispatch.js +7 -3
  124. package/lib/esm/client/FabricClientDispatch.js.map +1 -0
  125. package/lib/esm/client/FabricClientPaginator.js +1 -1
  126. package/lib/esm/client/FabricClientPaginator.js.map +1 -0
  127. package/lib/esm/client/FabricClientRepository.d.ts +2 -1
  128. package/lib/esm/client/FabricClientRepository.js +25 -3
  129. package/lib/esm/client/FabricClientRepository.js.map +1 -0
  130. package/lib/esm/client/FabricClientStatement.js +1 -1
  131. package/lib/esm/client/FabricClientStatement.js.map +1 -0
  132. package/lib/esm/client/constants.d.ts +2 -0
  133. package/lib/esm/client/constants.js +7 -0
  134. package/lib/esm/client/constants.js.map +1 -0
  135. package/lib/esm/client/erc20/FabricERC20ClientRepository.js +50 -24
  136. package/lib/esm/client/erc20/FabricERC20ClientRepository.js.map +1 -0
  137. package/lib/esm/client/erc20/index.js +1 -1
  138. package/lib/esm/client/erc20/index.js.map +1 -0
  139. package/lib/esm/client/fabric-fs.js +1 -1
  140. package/lib/esm/client/fabric-fs.js.map +1 -0
  141. package/lib/esm/client/fabric-hsm.js +1 -1
  142. package/lib/esm/client/fabric-hsm.js.map +1 -0
  143. package/lib/esm/client/index.js +1 -1
  144. package/lib/esm/client/index.js.map +1 -0
  145. package/lib/esm/client/indexes/generation.js +1 -1
  146. package/lib/esm/client/indexes/generation.js.map +1 -0
  147. package/lib/esm/client/indexes/index.js +1 -1
  148. package/lib/esm/client/indexes/index.js.map +1 -0
  149. package/lib/esm/client/logging.js +1 -1
  150. package/lib/esm/client/logging.js.map +1 -0
  151. package/lib/esm/client/services/FabricEnrollmentService.js +1 -1
  152. package/lib/esm/client/services/FabricEnrollmentService.js.map +1 -0
  153. package/lib/esm/client/services/constants.js +1 -1
  154. package/lib/esm/client/services/constants.js.map +1 -0
  155. package/lib/esm/client/services/index.js +1 -1
  156. package/lib/esm/client/services/index.js.map +1 -0
  157. package/lib/esm/client/types.d.ts +7 -0
  158. package/lib/esm/client/types.js +2 -0
  159. package/lib/esm/client/types.js.map +1 -0
  160. package/lib/esm/contract/Address.js +2 -2
  161. package/lib/esm/contract/Address.js.map +1 -0
  162. package/lib/esm/contract/AddressContract.js +1 -1
  163. package/lib/esm/contract/AddressContract.js.map +1 -0
  164. package/lib/esm/contract/Product.js +1 -1
  165. package/lib/esm/contract/Product.js.map +1 -0
  166. package/lib/esm/contract/ProductContract.js +1 -1
  167. package/lib/esm/contract/ProductContract.js.map +1 -0
  168. package/lib/esm/contract/User.js +1 -1
  169. package/lib/esm/contract/User.js.map +1 -0
  170. package/lib/esm/contract/UserContract.js +1 -1
  171. package/lib/esm/contract/UserContract.js.map +1 -0
  172. package/lib/esm/contract/index.js +1 -1
  173. package/lib/esm/contract/index.js.map +1 -0
  174. package/lib/esm/contracts/ContractAdapter.js +88 -51
  175. package/lib/esm/contracts/ContractAdapter.js.map +1 -0
  176. package/lib/esm/contracts/ContractContext.js +1 -1
  177. package/lib/esm/contracts/ContractContext.js.map +1 -0
  178. package/lib/esm/contracts/ContractPrivateDataAdapter.js +1 -1
  179. package/lib/esm/contracts/ContractPrivateDataAdapter.js.map +1 -0
  180. package/lib/esm/contracts/FabricConstruction.js +1 -1
  181. package/lib/esm/contracts/FabricConstruction.js.map +1 -0
  182. package/lib/esm/contracts/FabricContractRepository.d.ts +12 -0
  183. package/lib/esm/contracts/FabricContractRepository.js +8 -1
  184. package/lib/esm/contracts/FabricContractRepository.js.map +1 -0
  185. package/lib/esm/contracts/FabricContractRepositoryObservableHandler.js +1 -1
  186. package/lib/esm/contracts/FabricContractRepositoryObservableHandler.js.map +1 -0
  187. package/lib/esm/contracts/FabricContractStatement.js +1 -1
  188. package/lib/esm/contracts/FabricContractStatement.js.map +1 -0
  189. package/lib/esm/contracts/PrivateSequence.js +1 -1
  190. package/lib/esm/contracts/PrivateSequence.js.map +1 -0
  191. package/lib/esm/contracts/crud/crud-contract.d.ts +6 -6
  192. package/lib/esm/contracts/crud/crud-contract.js +3 -5
  193. package/lib/esm/contracts/crud/crud-contract.js.map +1 -0
  194. package/lib/esm/contracts/crud/index.js +1 -1
  195. package/lib/esm/contracts/crud/index.js.map +1 -0
  196. package/lib/esm/contracts/crud/serialized-crud-contract.d.ts +5 -6
  197. package/lib/esm/contracts/crud/serialized-crud-contract.js +19 -13
  198. package/lib/esm/contracts/crud/serialized-crud-contract.js.map +1 -0
  199. package/lib/esm/contracts/erc20/erc20contract.js +1 -1
  200. package/lib/esm/contracts/erc20/erc20contract.js.map +1 -0
  201. package/lib/esm/contracts/erc20/index.js +1 -1
  202. package/lib/esm/contracts/erc20/index.js.map +1 -0
  203. package/lib/esm/contracts/erc20/models.js +1 -1
  204. package/lib/esm/contracts/erc20/models.js.map +1 -0
  205. package/lib/esm/contracts/index.js +1 -1
  206. package/lib/esm/contracts/index.js.map +1 -0
  207. package/lib/esm/contracts/logging.js +1 -1
  208. package/lib/esm/contracts/logging.js.map +1 -0
  209. package/lib/esm/contracts/private-data.js +1 -1
  210. package/lib/esm/contracts/private-data.js.map +1 -0
  211. package/lib/esm/contracts/types.js +1 -1
  212. package/lib/esm/contracts/types.js.map +1 -0
  213. package/lib/esm/index.js +1 -1
  214. package/lib/esm/index.js.map +1 -0
  215. package/lib/esm/shared/ClientSerializer.js +1 -1
  216. package/lib/esm/shared/ClientSerializer.js.map +1 -0
  217. package/lib/esm/shared/DeterministicSerializer.js +1 -1
  218. package/lib/esm/shared/DeterministicSerializer.js.map +1 -0
  219. package/lib/esm/shared/SimpleDeterministicSerializer.js +1 -1
  220. package/lib/esm/shared/SimpleDeterministicSerializer.js.map +1 -0
  221. package/lib/esm/shared/constants.js +1 -1
  222. package/lib/esm/shared/constants.js.map +1 -0
  223. package/lib/esm/shared/crypto.js +1 -1
  224. package/lib/esm/shared/crypto.js.map +1 -0
  225. package/lib/esm/shared/decorators.js +1 -1
  226. package/lib/esm/shared/decorators.js.map +1 -0
  227. package/lib/esm/shared/erc20/erc20-constants.js +1 -1
  228. package/lib/esm/shared/erc20/erc20-constants.js.map +1 -0
  229. package/lib/esm/shared/errors.js +1 -1
  230. package/lib/esm/shared/errors.js.map +1 -0
  231. package/lib/esm/shared/events.js +1 -1
  232. package/lib/esm/shared/events.js.map +1 -0
  233. package/lib/esm/shared/fabric-types.d.ts +0 -1
  234. package/lib/esm/shared/fabric-types.js +2 -2
  235. package/lib/esm/shared/fabric-types.js.map +1 -0
  236. package/lib/esm/shared/index.js +1 -1
  237. package/lib/esm/shared/index.js.map +1 -0
  238. package/lib/esm/shared/interfaces/Checkable.js +1 -1
  239. package/lib/esm/shared/interfaces/Checkable.js.map +1 -0
  240. package/lib/esm/shared/math.js +1 -1
  241. package/lib/esm/shared/math.js.map +1 -0
  242. package/lib/esm/shared/model/FabricBaseModel.js +1 -1
  243. package/lib/esm/shared/model/FabricBaseModel.js.map +1 -0
  244. package/lib/esm/shared/model/FabricIdentifiedBaseModel.js +1 -1
  245. package/lib/esm/shared/model/FabricIdentifiedBaseModel.js.map +1 -0
  246. package/lib/esm/shared/model/Identity.js +1 -1
  247. package/lib/esm/shared/model/Identity.js.map +1 -0
  248. package/lib/esm/shared/model/IdentityCredentials.js +1 -1
  249. package/lib/esm/shared/model/IdentityCredentials.js.map +1 -0
  250. package/lib/esm/shared/model/index.js +1 -1
  251. package/lib/esm/shared/model/index.js.map +1 -0
  252. package/lib/esm/shared/overrides/Model.js +1 -1
  253. package/lib/esm/shared/overrides/Model.js.map +1 -0
  254. package/lib/esm/shared/overrides/index.js +1 -1
  255. package/lib/esm/shared/overrides/index.js.map +1 -0
  256. package/lib/esm/shared/overrides/overrides.js +1 -1
  257. package/lib/esm/shared/overrides/overrides.js.map +1 -0
  258. package/lib/esm/shared/types.js +1 -1
  259. package/lib/esm/shared/types.js.map +1 -0
  260. package/lib/esm/shared/utils.js +1 -1
  261. package/lib/esm/shared/utils.js.map +1 -0
  262. package/lib/esm/version.d.ts +1 -1
  263. package/lib/esm/version.js +2 -2
  264. package/lib/esm/version.js.map +1 -0
  265. package/lib/index.cjs +1 -1
  266. package/lib/index.js.map +1 -0
  267. package/lib/shared/ClientSerializer.cjs +1 -1
  268. package/lib/shared/ClientSerializer.js.map +1 -0
  269. package/lib/shared/DeterministicSerializer.cjs +1 -1
  270. package/lib/shared/DeterministicSerializer.js.map +1 -0
  271. package/lib/shared/SimpleDeterministicSerializer.cjs +1 -1
  272. package/lib/shared/SimpleDeterministicSerializer.js.map +1 -0
  273. package/lib/shared/constants.cjs +1 -1
  274. package/lib/shared/constants.js.map +1 -0
  275. package/lib/shared/crypto.cjs +1 -1
  276. package/lib/shared/crypto.js.map +1 -0
  277. package/lib/shared/decorators.cjs +1 -1
  278. package/lib/shared/decorators.js.map +1 -0
  279. package/lib/shared/erc20/erc20-constants.cjs +1 -1
  280. package/lib/shared/erc20/erc20-constants.js.map +1 -0
  281. package/lib/shared/errors.cjs +1 -1
  282. package/lib/shared/errors.js.map +1 -0
  283. package/lib/shared/events.cjs +1 -1
  284. package/lib/shared/events.js.map +1 -0
  285. package/lib/shared/fabric-types.cjs +1 -2
  286. package/lib/shared/fabric-types.d.ts +0 -1
  287. package/lib/shared/fabric-types.js.map +1 -0
  288. package/lib/shared/index.cjs +1 -1
  289. package/lib/shared/index.js.map +1 -0
  290. package/lib/shared/interfaces/Checkable.cjs +1 -1
  291. package/lib/shared/interfaces/Checkable.js.map +1 -0
  292. package/lib/shared/math.cjs +1 -1
  293. package/lib/shared/math.js.map +1 -0
  294. package/lib/shared/model/FabricBaseModel.cjs +1 -1
  295. package/lib/shared/model/FabricBaseModel.js.map +1 -0
  296. package/lib/shared/model/FabricIdentifiedBaseModel.cjs +1 -1
  297. package/lib/shared/model/FabricIdentifiedBaseModel.js.map +1 -0
  298. package/lib/shared/model/Identity.cjs +1 -1
  299. package/lib/shared/model/Identity.js.map +1 -0
  300. package/lib/shared/model/IdentityCredentials.cjs +1 -1
  301. package/lib/shared/model/IdentityCredentials.js.map +1 -0
  302. package/lib/shared/model/index.cjs +1 -1
  303. package/lib/shared/model/index.js.map +1 -0
  304. package/lib/shared/overrides/Model.cjs +1 -1
  305. package/lib/shared/overrides/Model.js.map +1 -0
  306. package/lib/shared/overrides/index.cjs +1 -1
  307. package/lib/shared/overrides/index.js.map +1 -0
  308. package/lib/shared/overrides/overrides.cjs +1 -1
  309. package/lib/shared/overrides/overrides.js.map +1 -0
  310. package/lib/shared/types.cjs +1 -1
  311. package/lib/shared/types.js.map +1 -0
  312. package/lib/shared/utils.cjs +1 -1
  313. package/lib/shared/utils.js.map +1 -0
  314. package/lib/version.cjs +2 -2
  315. package/lib/version.d.ts +1 -1
  316. package/lib/version.js.map +1 -0
  317. package/package.json +1 -1
@@ -2,12 +2,13 @@ import "../shared/overrides";
2
2
  import { type MangoQuery } from "@decaf-ts/for-couchdb";
3
3
  import { Client } from "@grpc/grpc-js";
4
4
  import { Model, type ModelConstructor, type Serializer } from "@decaf-ts/decorator-validation";
5
- import { type FabricFlags, type PeerConfig, type SegregatedModel } from "../shared/types";
5
+ import { type PeerConfig, type SegregatedModel } from "../shared/types";
6
6
  import { Gateway, Network, Contract as Contrakt } from "@hyperledger/fabric-gateway";
7
7
  import { BaseError, OperationKeys, type PrimaryKeyType } from "@decaf-ts/db-decorators";
8
8
  import { Context, Adapter, type AdapterFlags, Repository, Statement, type PreparedStatement, Paginator, MaybeContextualArg, ContextualArgs, type PreparedModel } from "@decaf-ts/core";
9
9
  import { FabricClientDispatch } from "./FabricClientDispatch";
10
10
  import { type Constructor } from "@decaf-ts/decoration";
11
+ import { FabricClientFlags } from "./types";
11
12
  /**
12
13
  * @description Adapter for interacting with Hyperledger Fabric networks
13
14
  * @summary The FabricAdapter extends CouchDBAdapter to provide a seamless interface for interacting with Hyperledger Fabric networks.
@@ -59,7 +60,7 @@ import { type Constructor } from "@decaf-ts/decoration";
59
60
  * FabricAdapter->>FabricAdapter: serializer.deserialize(decodedResult)
60
61
  * FabricAdapter-->>Client: deserializedResult
61
62
  */
62
- export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, MangoQuery, Context<FabricFlags>> {
63
+ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, MangoQuery, Context<FabricClientFlags>> {
63
64
  /**
64
65
  * @description Static text decoder for converting Uint8Array to string
65
66
  */
@@ -76,7 +77,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
76
77
  constructor(config: PeerConfig, alias?: string);
77
78
  Statement<M extends Model>(overrides?: Partial<AdapterFlags>): Statement<M, FabricClientAdapter, any, MangoQuery>;
78
79
  Paginator<M extends Model>(query: PreparedStatement<any> | MangoQuery, size: number, clazz: Constructor<M>): Paginator<M, any, MangoQuery>;
79
- context<M extends Model>(operation: OperationKeys.CREATE | OperationKeys.READ | OperationKeys.UPDATE | OperationKeys.DELETE | string, overrides: Partial<FabricFlags>, model: Constructor<M> | Constructor<M>[], ...args: any[]): Promise<Context<FabricFlags>>;
80
+ context<M extends Model>(operation: OperationKeys.CREATE | OperationKeys.READ | OperationKeys.UPDATE | OperationKeys.DELETE | string, overrides: Partial<FabricClientFlags>, model: Constructor<M> | Constructor<M>[], ...args: any[]): Promise<Context<FabricClientFlags>>;
80
81
  /**
81
82
  * @description Decodes a Uint8Array to a string
82
83
  * @summary Converts binary data received from Fabric to a string using UTF-8 encoding
@@ -84,8 +85,8 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
84
85
  * @return {string} The decoded string
85
86
  */
86
87
  decode(data: Uint8Array): string;
87
- repository<R extends Repository<any, Adapter<PeerConfig, Client, MangoQuery, Context<FabricFlags>>>>(): Constructor<R>;
88
- protected createPrefix<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: MaybeContextualArg<Context<FabricFlags>>): [Constructor<M>, PrimaryKeyType, Record<string, any>, ...any[], Context];
88
+ repository<R extends Repository<any, Adapter<PeerConfig, Client, MangoQuery, Context<FabricClientFlags>>>>(): Constructor<R>;
89
+ protected createPrefix<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: MaybeContextualArg<Context<FabricClientFlags>>): [Constructor<M>, PrimaryKeyType, Record<string, any>, ...any[], Context];
89
90
  /**
90
91
  * @description Prepares multiple records for creation
91
92
  * @summary Adds necessary CouchDB fields to multiple records before creation
@@ -95,8 +96,8 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
95
96
  * @return A tuple containing the tableName, ids, and prepared records
96
97
  * @throws {InternalError} If ids and models arrays have different lengths
97
98
  */
98
- protected createAllPrefix<M extends Model>(clazz: Constructor<M>, ids: string[] | number[], models: Record<string, any>[], ...args: MaybeContextualArg<Context<FabricFlags>>): any[];
99
- protected updateAllPrefix<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: MaybeContextualArg<Context<FabricFlags>>): any[];
99
+ protected createAllPrefix<M extends Model>(clazz: Constructor<M>, ids: string[] | number[], models: Record<string, any>[], ...args: MaybeContextualArg<Context<FabricClientFlags>>): any[];
100
+ protected updateAllPrefix<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: MaybeContextualArg<Context<FabricClientFlags>>): any[];
100
101
  /**
101
102
  * @description Creates multiple records in a single transaction
102
103
  * @summary Submits a transaction to create multiple records in the Fabric ledger
@@ -106,7 +107,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
106
107
  * @param {Record<string, any>} transient - Transient data for the transaction
107
108
  * @return {Promise<Array<Record<string, any>>>} Promise resolving to the created records
108
109
  */
109
- createAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>[]>;
110
+ createAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>[]>;
110
111
  /**
111
112
  * @description Reads multiple records in a single transaction
112
113
  * @summary Submits a transaction to read multiple records from the Fabric ledger
@@ -114,7 +115,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
114
115
  * @param {string[] | number[]} ids - Array of record identifiers to read
115
116
  * @return {Promise<Array<Record<string, any>>>} Promise resolving to the retrieved records
116
117
  */
117
- readAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>[]>;
118
+ readAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>[]>;
118
119
  /**
119
120
  * @description Updates multiple records in a single transaction
120
121
  * @summary Submits a transaction to update multiple records in the Fabric ledger
@@ -124,7 +125,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
124
125
  * @param {Record<string, any>} transient - Transient data for the transaction
125
126
  * @return {Promise<Array<Record<string, any>>>} Promise resolving to the updated records
126
127
  */
127
- updateAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>[]>;
128
+ updateAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>[]>;
128
129
  /**
129
130
  * @description Deletes multiple records in a single transaction
130
131
  * @summary Submits a transaction to delete multiple records from the Fabric ledger
@@ -133,7 +134,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
133
134
  * @param {Serializer<any>} serializer - Serializer for the model data
134
135
  * @return {Promise<Array<Record<string, any>>>} Promise resolving to the deleted records
135
136
  */
136
- deleteAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>[]>;
137
+ deleteAll<M extends Model>(clazz: Constructor<M>, ids: PrimaryKeyType[], ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>[]>;
137
138
  /**
138
139
  * @description Prepares a model for persistence
139
140
  * @summary Converts a model instance into a format suitable for database storage,
@@ -143,8 +144,8 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
143
144
  * @param pk - The primary key property name
144
145
  * @return The prepared data
145
146
  */
146
- prepare<M extends Model>(model: M, ...args: ContextualArgs<Context<FabricFlags>>): SegregatedModel<M> & PreparedModel;
147
- revert<M extends Model>(obj: Record<string, any>, clazz: Constructor<M>, id: PrimaryKeyType, transient?: Record<string, any>, ...args: ContextualArgs<Context<FabricFlags>>): M;
147
+ prepare<M extends Model>(model: M, ...args: ContextualArgs<Context<FabricClientFlags>>): SegregatedModel<M> & PreparedModel;
148
+ revert<M extends Model>(obj: Record<string, any>, clazz: Constructor<M>, id: PrimaryKeyType, transient?: Record<string, any>, ...args: ContextualArgs<Context<FabricClientFlags>>): M;
148
149
  /**
149
150
  * @description Creates indexes for the given models
150
151
  * @summary Abstract method that must be implemented to create database indexes for the specified models
@@ -152,7 +153,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
152
153
  * @param {...Constructor<M>} models - The model constructors to create indexes for
153
154
  * @return {Promise<void>} A promise that resolves when all indexes are created
154
155
  */
155
- protected index<M extends Model>(...args: MaybeContextualArg<Context<FabricFlags>, [
156
+ protected index<M extends Model>(...args: MaybeContextualArg<Context<FabricClientFlags>, [
156
157
  string,
157
158
  ...(Constructor<M> | string)[]
158
159
  ]>): Promise<void>;
@@ -165,7 +166,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
165
166
  * @param {Record<string, any>} transient - Transient data for the transaction
166
167
  * @return {Promise<Record<string, any>>} Promise resolving to the created record
167
168
  */
168
- create<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, transient?: Record<string, any>, ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>>;
169
+ create<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, transient?: Record<string, any>, ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>>;
169
170
  /**
170
171
  * @description Reads a single record
171
172
  * @summary Evaluates a transaction to read a record from the Fabric ledger
@@ -173,8 +174,8 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
173
174
  * @param {string | number} id - The record identifier
174
175
  * @return {Promise<Record<string, any>>} Promise resolving to the retrieved record
175
176
  */
176
- read<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>>;
177
- updatePrefix<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: MaybeContextualArg<Context<FabricFlags>>): any[];
177
+ read<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>>;
178
+ updatePrefix<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: MaybeContextualArg<Context<FabricClientFlags>>): any[];
178
179
  /**
179
180
  * @description Updates a single record
180
181
  * @summary Submits a transaction to update a record in the Fabric ledger
@@ -184,7 +185,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
184
185
  * @param {Record<string, any>} transient - Transient data for the transaction
185
186
  * @return {Promise<Record<string, any>>} Promise resolving to the updated record
186
187
  */
187
- update<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, transient?: Record<string, any>, ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>>;
188
+ update<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, transient?: Record<string, any>, ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>>;
188
189
  /**
189
190
  * @description Deletes a single record
190
191
  * @summary Submits a transaction to delete a record from the Fabric ledger
@@ -192,7 +193,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
192
193
  * @param {string | number} id - The record identifier to delete
193
194
  * @return {Promise<Record<string, any>>} Promise resolving to the deleted record
194
195
  */
195
- delete<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<Context<FabricFlags>>): Promise<Record<string, any>>;
196
+ delete<M extends Model>(clazz: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<Record<string, any>>;
196
197
  /**
197
198
  * @description Executes a raw query against the Fabric ledger
198
199
  * @summary Evaluates a transaction to perform a query using Mango Query syntax
@@ -218,7 +219,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
218
219
  * FabricAdapter->>FabricAdapter: Process result based on type
219
220
  * FabricAdapter-->>Client: processed result
220
221
  */
221
- raw<V, D extends boolean>(rawInput: MangoQuery, docsOnly: D | undefined, clazz: ModelConstructor<any>, ...args: ContextualArgs<Context<FabricFlags>>): Promise<V>;
222
+ raw<V, D extends boolean>(rawInput: MangoQuery, docsOnly: D | undefined, clazz: ModelConstructor<any>, ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<V>;
222
223
  /**
223
224
  * @description Gets or creates a gRPC client for the Fabric peer
224
225
  * @summary Returns a cached client or creates a new one if none exists
@@ -230,14 +231,14 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
230
231
  * @summary Creates a new Gateway instance using the current client
231
232
  * @return {Promise<Gateway>} Promise resolving to the Gateway instance
232
233
  */
233
- protected Gateway(): Promise<Gateway>;
234
+ protected Gateway(ctx: Context<FabricClientFlags>): Promise<Gateway>;
234
235
  private getContractName;
235
236
  /**
236
237
  * @description Gets a Contract instance for the Fabric chaincode
237
238
  * @summary Creates a new Contract instance using the current Gateway
238
239
  * @return {Promise<Contrakt>} Promise resolving to the Contract instance
239
240
  */
240
- protected Contract(contractName?: string): Promise<Contrakt>;
241
+ protected Contract(ctx: Context<FabricClientFlags>, contractName?: string): Promise<Contrakt>;
241
242
  /**
242
243
  * @description Executes a transaction on the Fabric network
243
244
  * @summary Submits or evaluates a transaction on the Fabric chaincode
@@ -266,7 +267,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
266
267
  * Contract-->>FabricAdapter: result
267
268
  * FabricAdapter->>Gateway: close()
268
269
  */
269
- protected transaction(api: string, submit?: boolean, args?: any[], transientData?: Record<string, string>, endorsingOrganizations?: Array<string>, className?: string): Promise<Uint8Array>;
270
+ protected transaction(ctx: Context<FabricClientFlags>, api: string, submit?: boolean, args?: any[], transientData?: Record<string, string>, endorsingOrganizations?: Array<string>, className?: string): Promise<Uint8Array>;
270
271
  /**
271
272
  * @description Parses an error into a BaseError
272
273
  * @summary Converts any error into a standardized BaseError
@@ -284,7 +285,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
284
285
  * @param {Array<string>} [endorsingOrganizations] - Organizations that must endorse the transaction
285
286
  * @return {Promise<Uint8Array>} Promise resolving to the transaction result
286
287
  */
287
- submitTransaction(api: string, args?: any[], transientData?: Record<string, string>, endorsingOrganizations?: Array<string>, className?: string): Promise<Uint8Array>;
288
+ submitTransaction(ctx: Context<FabricClientFlags>, api: string, args?: any[], transientData?: Record<string, string>, endorsingOrganizations?: Array<string>, className?: string): Promise<Uint8Array>;
288
289
  /**
289
290
  * @description Evaluates a transaction on the Fabric network
290
291
  * @summary Executes a transaction that does not modify the ledger state
@@ -294,7 +295,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
294
295
  * @param {Array<string>} [endorsingOrganizations] - Organizations that must endorse the transaction
295
296
  * @return {Promise<Uint8Array>} Promise resolving to the transaction result
296
297
  */
297
- evaluateTransaction(api: string, args?: any[], transientData?: Record<string, string>, endorsingOrganizations?: Array<string>, className?: string): Promise<Uint8Array>;
298
+ evaluateTransaction(ctx: Context<FabricClientFlags>, api: string, args?: any[], transientData?: Record<string, string>, endorsingOrganizations?: Array<string>, className?: string): Promise<Uint8Array>;
298
299
  /**
299
300
  * @description Closes the connection to the Fabric network
300
301
  * @summary Closes the gRPC client if it exists
@@ -324,7 +325,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
324
325
  * @param {Client} [client] - Optional gRPC client, will be created if not provided
325
326
  * @return {Promise<Gateway>} Promise resolving to the Gateway instance
326
327
  */
327
- static getGateway(config: PeerConfig, client?: Client): Promise<Gateway>;
328
+ static getGateway(ctx: Context<FabricClientFlags>, config: PeerConfig, client?: Client): Promise<Gateway>;
328
329
  /**
329
330
  * @description Creates a gRPC client for connecting to a Fabric peer
330
331
  * @summary Initializes a client with TLS credentials for secure communication
@@ -356,7 +357,7 @@ export declare class FabricClientAdapter extends Adapter<PeerConfig, Client, Man
356
357
  * Gateway-->>FabricAdapter: gateway
357
358
  * FabricAdapter-->>Caller: gateway
358
359
  */
359
- static getConnection(client: Client, config: PeerConfig): Promise<Gateway>;
360
+ static getConnection(client: Client, config: PeerConfig, ctx: Context<FabricClientFlags>): Promise<Gateway>;
360
361
  /**
361
362
  * @description Creates a new Dispatch instance for the Fabric client.
362
363
  * @summary This function is responsible for creating a new FabricClientDispatch instance that can be used to interact with the Fabric network.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FabricClientAdapter.js","sourceRoot":"","sources":["../../src/client/FabricClientAdapter.ts"],"names":[],"mappings":"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"}
@@ -182,15 +182,19 @@ class FabricClientDispatch extends core_1.Dispatch {
182
182
  async initialize() {
183
183
  if (!this.adapter)
184
184
  throw new db_decorators_1.InternalError(`No adapter or config observed for dispatch`);
185
- const gateway = await FabricClientAdapter_1.FabricClientAdapter.getGateway(this.adapter.config, this.client);
185
+ const context = this.adapter.context("dispatch", {
186
+ correlationId: this.adapter.config.chaincodeName,
187
+ }, decorator_validation_1.Model);
188
+ const { ctx } = this.logCtx([context], this.initialize);
189
+ const gateway = await FabricClientAdapter_1.FabricClientAdapter.getGateway(ctx, this.adapter.config, this.client);
186
190
  const network = gateway.getNetwork(this.adapter.config.channel);
187
191
  if (!this.adapter)
188
192
  throw new db_decorators_1.InternalError(`No adapter observed for dispatch`);
189
193
  this.listeningStack = await network.getChaincodeEvents(this.adapter.config.chaincodeName);
190
- this.handleEvents();
194
+ this.handleEvents(ctx);
191
195
  }
192
196
  }
193
197
  exports.FabricClientDispatch = FabricClientDispatch;
194
198
  if (FabricClientAdapter_1.FabricClientAdapter)
195
199
  FabricClientAdapter_1.FabricClientAdapter["_baseDispatch"] = FabricClientDispatch;
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmFicmljQ2xpZW50RGlzcGF0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L0ZhYnJpY0NsaWVudERpc3BhdGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQU93QjtBQUd4QixtRUFBNEQ7QUFDNUQsMkRBSWlDO0FBS2pDLG1EQUFrRDtBQUNsRCx5RUFBdUQ7QUFHdkQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0NHO0FBQ0gsTUFBYSxvQkFBcUIsU0FBUSxlQUE2QjtJQVdyRTs7OztPQUlHO0lBQ0gsWUFBc0IsTUFBYztRQUNsQyxLQUFLLEVBQUUsQ0FBQztRQURZLFdBQU0sR0FBTixNQUFNLENBQVE7UUFWcEM7O1dBRUc7UUFDSyxZQUFPLEdBQUcsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7SUFTMUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDTSxLQUFLLENBQUMsS0FBSztRQUNsQixJQUFJLElBQUksQ0FBQyxjQUFjO1lBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxZQUFZLENBQUMsU0FBcUI7UUFDeEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNNLE9BQU8sQ0FBQyxRQUFnQztRQUMvQyxJQUFJLENBQUMsQ0FBQyxRQUFRLFlBQVkseUNBQW1CLENBQUM7WUFDNUMsTUFBTSxJQUFJLHVCQUFnQixDQUN4QixzREFBc0QsQ0FDdkQsQ0FBQztRQUNKLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBK0IsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lB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a0MsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxPQUFPLENBQUMsa0JBQWtCLENBQ3BELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FDbEMsQ0FBQztRQUNGLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0NBQ0Y7QUFqTEQsb0RBaUxDO0FBRUQsSUFBSSx5Q0FBbUI7SUFDckIseUNBQW1CLENBQUMsZUFBZSxDQUFDLEdBQUcsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZGFwdGVyLFxuICBDb250ZXh0dWFsQXJncyxcbiAgRGlzcGF0Y2gsXG4gIEV2ZW50SWRzLFxuICBVbnN1cHBvcnRlZEVycm9yLFxuICBDb250ZXh0LFxufSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IEZhYnJpY0ZsYWdzLCBQZWVyQ29uZmlnIH0gZnJvbSBcIi4uL3NoYXJlZC90eXBlc1wiO1xuaW1wb3J0IHsgQ2xpZW50IH0gZnJvbSBcIkBncnBjL2dycGMtanNcIjtcbmltcG9ydCB7IEZhYnJpY0NsaWVudEFkYXB0ZXIgfSBmcm9tIFwiLi9GYWJyaWNDbGllbnRBZGFwdGVyXCI7XG5pbXBvcnQge1xuICBCdWxrQ3J1ZE9wZXJhdGlvbktleXMsXG4gIEludGVybmFsRXJyb3IsXG4gIE9wZXJhdGlvbktleXMsXG59IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHtcbiAgQ2hhaW5jb2RlRXZlbnQsXG4gIENsb3NlYWJsZUFzeW5jSXRlcmFibGUsXG59IGZyb20gXCJAaHlwZXJsZWRnZXIvZmFicmljLWdhdGV3YXlcIjtcbmltcG9ydCB7IHBhcnNlRXZlbnROYW1lIH0gZnJvbSBcIi4uL3NoYXJlZC9ldmVudHNcIjtcbmltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gRXZlbnQgZGlzcGF0Y2hlciBmb3IgSHlwZXJsZWRnZXIgRmFicmljIGNoYWluY29kZSBldmVudHNcbiAqIEBzdW1tYXJ5IExpc3RlbnMgZm9yIGFuZCBwcm9jZXNzZXMgZXZlbnRzIGVtaXR0ZWQgYnkgRmFicmljIGNoYWluY29kZSwgZGlzcGF0Y2hpbmcgdGhlbSB0byByZWdpc3RlcmVkIG9ic2VydmVyc1xuICogQHRlbXBsYXRlIFBlZXJDb25maWcgLSBDb25maWd1cmF0aW9uIHR5cGUgZm9yIGNvbm5lY3RpbmcgdG8gYSBGYWJyaWMgcGVlclxuICogQHBhcmFtIGNsaWVudCAtIGdSUEMgY2xpZW50IGZvciBjb25uZWN0aW5nIHRvIHRoZSBGYWJyaWMgbmV0d29ya1xuICogQGNsYXNzIEZhYnJpY0NsaWVudERpc3BhdGNoXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogLy8gQ3JlYXRlIGEgbmV3IEZhYnJpY0Rpc3BhdGNoIGluc3RhbmNlXG4gKiBjb25zdCBjbGllbnQgPSBhd2FpdCBGYWJyaWNBZGFwdGVyLmdldENsaWVudChwZWVyQ29uZmlnKTtcbiAqIGNvbnN0IGRpc3BhdGNoID0gbmV3IEZhYnJpY0Rpc3BhdGNoKGNsaWVudCk7XG4gKlxuICogLy8gQ29uZmlndXJlIHRoZSBkaXNwYXRjaCB3aXRoIHBlZXIgY29uZmlndXJhdGlvblxuICogZGlzcGF0Y2guY29uZmlndXJlKHBlZXJDb25maWcpO1xuICpcbiAqIC8vIFJlZ2lzdGVyIGFuIG9ic2VydmVyIGZvciBhIHNwZWNpZmljIHRhYmxlIGFuZCBldmVudFxuICogZGlzcGF0Y2gub2JzZXJ2ZSgndXNlcnMnLCAnY3JlYXRlJywgKGlkKSA9PiB7XG4gKiAgIGNvbnNvbGUubG9nKGBVc2VyIGNyZWF0ZWQ6ICR7aWR9YCk7XG4gKiB9KTtcbiAqXG4gKiAvLyBTdGFydCBsaXN0ZW5pbmcgZm9yIGV2ZW50c1xuICogYXdhaXQgZGlzcGF0Y2guc3RhcnQoKTtcbiAqIGBgYFxuICogQG1lcm1haWRcbiAqIHNlcXVlbmNlRGlhZ3JhbVxuICogICBwYXJ0aWNpcGFudCBDbGllbnRcbiAqICAgcGFydGljaXBhbnQgRmFicmljRGlzcGF0Y2hcbiAqICAgcGFydGljaXBhbnQgR2F0ZXdheVxuICogICBwYXJ0aWNpcGFudCBOZXR3b3JrXG4gKiAgIHBhcnRpY2lwYW50IENoYWluY29kZVxuICpcbiAqICAgQ2xpZW50LT4+RmFicmljRGlzcGF0Y2g6IG5ldyBGYWJyaWNEaXNwYXRjaChjbGllbnQpXG4gKiAgIENsaWVudC0+PkZhYnJpY0Rpc3BhdGNoOiBjb25maWd1cmUocGVlckNvbmZpZylcbiAqICAgQ2xpZW50LT4+RmFicmljRGlzcGF0Y2g6IG9ic2VydmUodGFibGUsIGV2ZW50LCBjYWxsYmFjaylcbiAqICAgQ2xpZW50LT4+RmFicmljRGlzcGF0Y2g6IHN0YXJ0KClcbiAqICAgRmFicmljRGlzcGF0Y2gtPj5GYWJyaWNEaXNwYXRjaDogaW5pdGlhbGl6ZSgpXG4gKiAgIEZhYnJpY0Rpc3BhdGNoLT4+R2F0ZXdheTogZ2V0R2F0ZXdheShjb25maWcsIGNsaWVudClcbiAqICAgR2F0ZXdheS0+Pk5ldHdvcms6IGdldE5ldHdvcmsoY2hhbm5lbClcbiAqICAgTmV0d29yay0+Pk5ldHdvcms6IGdldENoYWluY29kZUV2ZW50cyhjaGFpbmNvZGVOYW1lKVxuICogICBGYWJyaWNEaXNwYXRjaC0+PkZhYnJpY0Rpc3BhdGNoOiBoYW5kbGVFdmVudHMoKVxuICogICBsb29wIEZvciBlYWNoIGV2ZW50XG4gKiAgICAgQ2hhaW5jb2RlLS0+PkZhYnJpY0Rpc3BhdGNoOiBDaGFpbmNvZGVFdmVudFxuICogICAgIEZhYnJpY0Rpc3BhdGNoLT4+RmFicmljRGlzcGF0Y2g6IHBhcnNlRXZlbnROYW1lKGV2ZW50TmFtZSlcbiAqICAgICBGYWJyaWNEaXNwYXRjaC0+PkZhYnJpY0Rpc3BhdGNoOiBwYXJzZVBheWxvYWQocGF5bG9hZClcbiAqICAgICBGYWJyaWNEaXNwYXRjaC0+PkZhYnJpY0Rpc3BhdGNoOiB1cGRhdGVPYnNlcnZlcnModGFibGUsIGV2ZW50LCBpZClcbiAqICAgICBGYWJyaWNEaXNwYXRjaC0tPj5DbGllbnQ6IGNhbGxiYWNrKGlkKVxuICogICBlbmRcbiAqL1xuZXhwb3J0IGNsYXNzIEZhYnJpY0NsaWVudERpc3BhdGNoIGV4dGVuZHMgRGlzcGF0Y2g8RmFicmljQ2xpZW50QWRhcHRlcj4ge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEV2ZW50IGxpc3RlbmluZyBzdGFjayBmb3IgY2hhaW5jb2RlIGV2ZW50c1xuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5pbmdTdGFjaz86IENsb3NlYWJsZUFzeW5jSXRlcmFibGU8Q2hhaW5jb2RlRXZlbnQ+O1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGV4dCBkZWNvZGVyIGZvciBjb252ZXJ0aW5nIGV2ZW50IHBheWxvYWRzIGZyb20gYnl0ZXMgdG8gc3RyaW5nc1xuICAgKi9cbiAgcHJpdmF0ZSBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKFwidXRmOFwiKTtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYSBuZXcgRmFicmljRGlzcGF0Y2ggaW5zdGFuY2VcbiAgICogQHN1bW1hcnkgSW5pdGlhbGl6ZXMgYSBkaXNwYXRjaGVyIGZvciBGYWJyaWMgY2hhaW5jb2RlIGV2ZW50c1xuICAgKiBAcGFyYW0ge0NsaWVudH0gY2xpZW50IC0gZ1JQQyBjbGllbnQgZm9yIGNvbm5lY3RpbmcgdG8gdGhlIEZhYnJpYyBuZXR3b3JrXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgY2xpZW50OiBDbGllbnQpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDbG9zZXMgdGhlIGV2ZW50IGxpc3RlbmluZyBjb25uZWN0aW9uXG4gICAqIEBzdW1tYXJ5IFN0b3BzIGxpc3RlbmluZyBmb3IgY2hhaW5jb2RlIGV2ZW50cyBhbmQgcmVsZWFzZXMgcmVzb3VyY2VzXG4gICAqIEByZXR1cm4ge1Byb21pc2U8dm9pZD59IFByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBjb25uZWN0aW9uIGlzIGNsb3NlZFxuICAgKi9cbiAgb3ZlcnJpZGUgYXN5bmMgY2xvc2UoKSB7XG4gICAgaWYgKHRoaXMubGlzdGVuaW5nU3RhY2spIHRoaXMubGlzdGVuaW5nU3RhY2suY2xvc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUGFyc2VzIGV2ZW50IHBheWxvYWQgZnJvbSBiaW5hcnkgZm9ybWF0XG4gICAqIEBzdW1tYXJ5IENvbnZlcnRzIGEgVWludDhBcnJheSBjb250YWluaW5nIEpTT04gdG8gYW4gb2JqZWN0IHdpdGggYW4gaWQgcHJvcGVydHlcbiAgICogQHBhcmFtIHtVaW50OEFycmF5fSBqc29uQnl0ZXMgLSBUaGUgYmluYXJ5IHBheWxvYWQgZnJvbSB0aGUgY2hhaW5jb2RlIGV2ZW50XG4gICAqIEByZXR1cm4ge3sgaWQ6IHN0cmluZyB9fSBUaGUgcGFyc2VkIHBheWxvYWQgY29udGFpbmluZyB0aGUgcmVjb3JkIElEXG4gICAqL1xuICBwcml2YXRlIHBhcnNlUGF5bG9hZChqc29uQnl0ZXM6IFVpbnQ4QXJyYXkpOiB7IGlkOiBzdHJpbmcgfSB7XG4gICAgY29uc3QganNvbiA9IHRoaXMuZGVjb2Rlci5kZWNvZGUoanNvbkJ5dGVzKTtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShqc29uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gU3RhcnRzIG9ic2VydmluZyBhbiBhZGFwdGVyXG4gICAqIEBzdW1tYXJ5IENvbm5lY3RzIHRoaXMgZGlzcGF0Y2ggdG8gYW4gYWRhcHRlciB0byBtb25pdG9yIGl0cyBvcGVyYXRpb25zXG4gICAqIEBwYXJhbSB7QWRhcHRlcjxhbnksIGFueSwgYW55LCBhbnk+fSBvYnNlcnZlciAtIFRoZSBhZGFwdGVyIHRvIG9ic2VydmVcbiAgICogQHJldHVybiB7dm9pZH1cbiAgICovXG4gIG92ZXJyaWRlIG9ic2VydmUob2JzZXJ2ZXI6IEFkYXB0ZXI8YW55LCBhbnksIGFueT4pOiB2b2lkIHtcbiAgICBpZiAoIShvYnNlcnZlciBpbnN0YW5jZW9mIEZhYnJpY0NsaWVudEFkYXB0ZXIpKVxuICAgICAgdGhyb3cgbmV3IFVuc3VwcG9ydGVkRXJyb3IoXG4gICAgICAgIFwiT25seSBGYWJyaWNDbGllbnRBZGFwdGVyIGNhbiBiZSBvYnNlcnZlZCBieSBkaXNwYXRjaFwiXG4gICAgICApO1xuICAgIHN1cGVyLm9ic2VydmUob2JzZXJ2ZXIgYXMgRmFicmljQ2xpZW50QWRhcHRlcik7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFVwZGF0ZXMgb2JzZXJ2ZXJzIGFib3V0IGEgZGF0YWJhc2UgZXZlbnRcbiAgICogQHN1bW1hcnkgTm90aWZpZXMgb2JzZXJ2ZXJzIGFib3V0IGEgY2hhbmdlIGluIHRoZSBkYXRhYmFzZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGFibGUgLSBUaGUgbmFtZSBvZiB0aGUgdGFibGUgd2hlcmUgdGhlIGNoYW5nZSBvY2N1cnJlZFxuICAgKiBAcGFyYW0ge09wZXJhdGlvbktleXN8QnVsa0NydWRPcGVyYXRpb25LZXlzfHN0cmluZ30gZXZlbnQgLSBUaGUgdHlwZSBvZiBvcGVyYXRpb24gdGhhdCBvY2N1cnJlZFxuICAgKiBAcGFyYW0ge2FueX0gcGF5bG9hZCAtIFRoZSBldmVudCBwYXlsb2FkXG4gICAqIEByZXR1cm4ge1Byb21pc2U8dm9pZD59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gYWxsIG9ic2VydmVycyBoYXZlIGJlZW4gbm90aWZpZWRcbiAgICovXG4gIG92ZXJyaWRlIGFzeW5jIHVwZGF0ZU9ic2VydmVycyhcbiAgICBtb2RlbDogQ29uc3RydWN0b3I8YW55PiB8IHN0cmluZyxcbiAgICBldmVudDogT3BlcmF0aW9uS2V5cyB8IEJ1bGtDcnVkT3BlcmF0aW9uS2V5cyB8IHN0cmluZyxcbiAgICBpZDogRXZlbnRJZHMsXG4gICAgLi4uYXJnczogQ29udGV4dHVhbEFyZ3M8Q29udGV4dDxGYWJyaWNGbGFncz4+XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgbG9nLCBjdHhBcmdzIH0gPSB0aGlzLmxvZ0N0eChhcmdzLCB0aGlzLnVwZGF0ZU9ic2VydmVycyk7XG4gICAgaWYgKCF0aGlzLmFkYXB0ZXIpIHtcbiAgICAgIGxvZy52ZXJib3NlKFxuICAgICAgICBgTm8gYWRhcHRlciBvYnNlcnZlZCBmb3IgZGlzcGF0Y2g7IHNraXBwaW5nIG9ic2VydmVyIHVwZGF0ZSBmb3IgJHt0eXBlb2YgbW9kZWwgPT09IFwic3RyaW5nXCIgPyBtb2RlbCA6IE1vZGVsLnRhYmxlTmFtZShtb2RlbCl9OiR7ZXZlbnR9YFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMuYWRhcHRlci5yZWZyZXNoKG1vZGVsLCBldmVudCwgaWQsIC4uLmN0eEFyZ3MpO1xuICAgIH0gY2F0Y2ggKGU6IHVua25vd24pIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBGYWlsZWQgdG8gcmVmcmVzaCBkaXNwYXRjaDogJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUHJvY2Vzc2VzIGluY29taW5nIGNoYWluY29kZSBldmVudHNcbiAgICogQHN1bW1hcnkgTGlzdGVucyBmb3IgZXZlbnRzIGZyb20gdGhlIGNoYWluY29kZSBhbmQgZGlzcGF0Y2hlcyB0aGVtIHRvIHJlZ2lzdGVyZWQgb2JzZXJ2ZXJzXG4gICAqIEByZXR1cm4ge1Byb21pc2U8dm9pZD59IFByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIGV2ZW50IGhhbmRsaW5nIHN0b3BzXG4gICAqIEBtZXJtYWlkXG4gICAqIHNlcXVlbmNlRGlhZ3JhbVxuICAgKiAgIHBhcnRpY2lwYW50IEZhYnJpY0Rpc3BhdGNoXG4gICAqICAgcGFydGljaXBhbnQgRXZlbnRTdGFja1xuICAgKiAgIHBhcnRpY2lwYW50IEV2ZW50UGFyc2VyXG4gICAqICAgcGFydGljaXBhbnQgT2JzZXJ2ZXJzXG4gICAqXG4gICAqICAgRmFicmljRGlzcGF0Y2gtPj5GYWJyaWNEaXNwYXRjaDogaGFuZGxlRXZlbnRzKClcbiAgICogICBGYWJyaWNEaXNwYXRjaC0+PkV2ZW50U3RhY2s6IGZvciBhd2FpdCAoY29uc3QgZXZ0IG9mIGxpc3RlbmluZ1N0YWNrKVxuICAgKiAgIEV2ZW50U3RhY2stLT4+RmFicmljRGlzcGF0Y2g6IENoYWluY29kZUV2ZW50XG4gICAqICAgRmFicmljRGlzcGF0Y2gtPj5FdmVudFBhcnNlcjogcGFyc2VFdmVudE5hbWUoZXZ0LmV2ZW50TmFtZSlcbiAgICogICBFdmVudFBhcnNlci0tPj5GYWJyaWNEaXNwYXRjaDogeyB0YWJsZSwgZXZlbnQsIG93bmVyIH1cbiAgICogICBGYWJyaWNEaXNwYXRjaC0+PkZhYnJpY0Rpc3BhdGNoOiBDaGVjayBpZiBldmVudCBpcyBmb3IgdGhpcyBNU1BcbiAgICogICBGYWJyaWNEaXNwYXRjaC0+PkZhYnJpY0Rpc3BhdGNoOiBwYXJzZVBheWxvYWQoZXZ0LnBheWxvYWQpXG4gICAqICAgRmFicmljRGlzcGF0Y2gtPj5PYnNlcnZlcnM6IHVwZGF0ZU9ic2VydmVycyh0YWJsZSwgZXZlbnQsIHBheWxvYWQuaWQpXG4gICAqICAgT2JzZXJ2ZXJzLS0+PkZhYnJpY0Rpc3BhdGNoOiBDYWxsYmFja3MgZXhlY3V0ZWRcbiAgICovXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVFdmVudHMoY3R4QXJnPzogQ29udGV4dDxGYWJyaWNGbGFncz4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXRoaXMubGlzdGVuaW5nU3RhY2spXG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgYEV2ZW50IHN0YWNrIG5vdCBpbml0aWFsaXplZC4gRW5zdXJlIHRoYXQgXCJzdGFydExpc3RlbmluZ1wiIGlzIGNhbGxlZCBiZWZvcmUgYXR0ZW1wdGluZyB0aGlzIG9wZXJhdGlvbi5gXG4gICAgICApO1xuXG4gICAgaWYgKCF0aGlzLmFkYXB0ZXIgfHwgIXRoaXMuYWRhcHRlci5jb25maWcpXG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgTm8gYWRhcHRlciBmb3VuZC4gc2hvdWxkIGJlIGltcG9zc2libGVgKTtcblxuICAgIGNvbnN0IGN0eCA9XG4gICAgICBjdHhBcmcgfHxcbiAgICAgIChhd2FpdCB0aGlzLmFkYXB0ZXIuY29udGV4dChcbiAgICAgICAgT3BlcmF0aW9uS2V5cy5SRUFELFxuICAgICAgICB7XG4gICAgICAgICAgY29ycmVsYXRpb25JZDogdGhpcy5hZGFwdGVyLmNvbmZpZy5jaGFpbmNvZGVOYW1lLFxuICAgICAgICB9LFxuICAgICAgICAodGhpcy5tb2RlbHMgJiYgdGhpcy5tb2RlbHNbMF0pIHx8IChNb2RlbCBhcyB1bmtub3duIGFzIENvbnN0cnVjdG9yKVxuICAgICAgKSk7XG4gICAgY29uc3QgbG9nID0gdGhpcy5sb2cuZm9yKHRoaXMuaGFuZGxlRXZlbnRzKTtcblxuICAgIGxvZy5pbmZvKFxuICAgICAgYExpc3RlbmluZyBmb3IgaW5jb21pbmcgZXZlbnRzIG9uIGNoYWluY29kZSBcIiR7dGhpcy5hZGFwdGVyLmNvbmZpZy5jaGFpbmNvZGVOYW1lfVwiIG9uIGNoYW5uZWwgXCIke3RoaXMuYWRhcHRlci5jb25maWcuY2hhbm5lbH1cIi4uLmBcbiAgICApO1xuXG4gICAgdHJ5IHtcbiAgICAgIGZvciBhd2FpdCAoY29uc3QgZXZ0IG9mIHRoaXMubGlzdGVuaW5nU3RhY2spIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZSwgZXZlbnQsIG93bmVyIH0gPSBwYXJzZUV2ZW50TmFtZShldnQuZXZlbnROYW1lKTtcbiAgICAgICAgaWYgKG93bmVyICYmIG93bmVyICE9PSB0aGlzLmFkYXB0ZXIuY29uZmlnPy5tc3BJZCkgY29udGludWU7XG4gICAgICAgIGNvbnN0IHBheWxvYWQ6IHsgaWQ6IHN0cmluZyB9ID0gdGhpcy5wYXJzZVBheWxvYWQoZXZ0LnBheWxvYWQpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IHRhcmdldE1vZGVsID0gdGFibGVcbiAgICAgICAgICAgID8gTW9kZWwuZ2V0KHRhYmxlKVxuICAgICAgICAgICAgOiBNb2RlbC5nZXQodGhpcy5tb2RlbHNbMF0ubmFtZSk7XG4gICAgICAgICAgY29uc3QgbW9kZWxSZWYgPSB0YXJnZXRNb2RlbCA/PyAodGFibGUgfHwgdGhpcy5tb2RlbHNbMF0/Lm5hbWUpO1xuICAgICAgICAgIGF3YWl0IHRoaXMudXBkYXRlT2JzZXJ2ZXJzKFxuICAgICAgICAgICAgbW9kZWxSZWYgYXMgQ29uc3RydWN0b3IgfCBzdHJpbmcsXG4gICAgICAgICAgICBldmVudCxcbiAgICAgICAgICAgIHBheWxvYWQuaWQgYXMgc3RyaW5nLFxuICAgICAgICAgICAgY3R4XG4gICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgICAgIGxvZy5lcnJvcihcbiAgICAgICAgICAgIGBGYWlsZWQgdXBkYXRlIG9ic2VydmFibGVzIGZvciB0YWJsZSAke3RhYmxlfSBldmVudCAke2V2ZW50fSBpZDogJHtwYXlsb2FkLmlkfTogJHtlfWBcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICBsb2cuZXJyb3IoXG4gICAgICAgIGBGYWlsZWQgdG8gcmVhZCBldmVudCBmb3IgY2hhaW5jb2RlIFwiJHt0aGlzLmFkYXB0ZXIuY29uZmlnLmNoYWluY29kZU5hbWV9XCIgb24gY2hhbm5lbCBcIiR7dGhpcy5hZGFwdGVyLmNvbmZpZy5jaGFubmVsfVwiOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGF3YWl0IHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEluaXRpYWxpemVzIHRoZSBldmVudCBsaXN0ZW5lclxuICAgKiBAc3VtbWFyeSBTZXRzIHVwIHRoZSBjb25uZWN0aW9uIHRvIHRoZSBGYWJyaWMgbmV0d29yayBhbmQgc3RhcnRzIGxpc3RlbmluZyBmb3IgY2hhaW5jb2RlIGV2ZW50c1xuICAgKiBAcmV0dXJuIHtQcm9taXNlPHZvaWQ+fSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiBpbml0aWFsaXphdGlvbiBpcyBjb21wbGV0ZVxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGluaXRpYWxpemUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLmFkYXB0ZXIpXG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgTm8gYWRhcHRlciBvciBjb25maWcgb2JzZXJ2ZWQgZm9yIGRpc3BhdGNoYCk7XG4gICAgY29uc3QgZ2F0ZXdheSA9IGF3YWl0IEZhYnJpY0NsaWVudEFkYXB0ZXIuZ2V0R2F0ZXdheShcbiAgICAgIHRoaXMuYWRhcHRlci5jb25maWcgYXMgUGVlckNvbmZpZyxcbiAgICAgIHRoaXMuY2xpZW50XG4gICAgKTtcbiAgICBjb25zdCBuZXR3b3JrID0gZ2F0ZXdheS5nZXROZXR3b3JrKHRoaXMuYWRhcHRlci5jb25maWcuY2hhbm5lbCk7XG4gICAgaWYgKCF0aGlzLmFkYXB0ZXIpXG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgTm8gYWRhcHRlciBvYnNlcnZlZCBmb3IgZGlzcGF0Y2hgKTtcbiAgICB0aGlzLmxpc3RlbmluZ1N0YWNrID0gYXdhaXQgbmV0d29yay5nZXRDaGFpbmNvZGVFdmVudHMoXG4gICAgICB0aGlzLmFkYXB0ZXIuY29uZmlnLmNoYWluY29kZU5hbWVcbiAgICApO1xuICAgIHRoaXMuaGFuZGxlRXZlbnRzKCk7XG4gIH1cbn1cblxuaWYgKEZhYnJpY0NsaWVudEFkYXB0ZXIpXG4gIEZhYnJpY0NsaWVudEFkYXB0ZXJbXCJfYmFzZURpc3BhdGNoXCJdID0gRmFicmljQ2xpZW50RGlzcGF0Y2g7XG4iXX0=
200
+ //# sourceMappingURL=FabricClientDispatch.js.map
@@ -1,9 +1,9 @@
1
1
  import { Adapter, ContextualArgs, Dispatch, EventIds, Context } from "@decaf-ts/core";
2
- import { FabricFlags } from "../shared/types";
3
2
  import { Client } from "@grpc/grpc-js";
4
3
  import { FabricClientAdapter } from "./FabricClientAdapter";
5
4
  import { BulkCrudOperationKeys, OperationKeys } from "@decaf-ts/db-decorators";
6
5
  import { Constructor } from "@decaf-ts/decoration";
6
+ import { FabricClientFlags } from "./types";
7
7
  /**
8
8
  * @description Event dispatcher for Hyperledger Fabric chaincode events
9
9
  * @summary Listens for and processes events emitted by Fabric chaincode, dispatching them to registered observers
@@ -87,7 +87,7 @@ export declare class FabricClientDispatch extends Dispatch<FabricClientAdapter>
87
87
  * @param {Adapter<any, any, any, any>} observer - The adapter to observe
88
88
  * @return {void}
89
89
  */
90
- observe(observer: Adapter<any, any, any>): void;
90
+ observe(observer: Adapter<any, any, any, any>): void;
91
91
  /**
92
92
  * @description Updates observers about a database event
93
93
  * @summary Notifies observers about a change in the database
@@ -96,7 +96,7 @@ export declare class FabricClientDispatch extends Dispatch<FabricClientAdapter>
96
96
  * @param {any} payload - The event payload
97
97
  * @return {Promise<void>} A promise that resolves when all observers have been notified
98
98
  */
99
- updateObservers(model: Constructor<any> | string, event: OperationKeys | BulkCrudOperationKeys | string, id: EventIds, ...args: ContextualArgs<Context<FabricFlags>>): Promise<void>;
99
+ updateObservers(model: Constructor<any> | string, event: OperationKeys | BulkCrudOperationKeys | string, id: EventIds, ...args: ContextualArgs<Context<FabricClientFlags>>): Promise<void>;
100
100
  /**
101
101
  * @description Processes incoming chaincode events
102
102
  * @summary Listens for events from the chaincode and dispatches them to registered observers
@@ -118,7 +118,7 @@ export declare class FabricClientDispatch extends Dispatch<FabricClientAdapter>
118
118
  * FabricDispatch->>Observers: updateObservers(table, event, payload.id)
119
119
  * Observers-->>FabricDispatch: Callbacks executed
120
120
  */
121
- protected handleEvents(ctxArg?: Context<FabricFlags>): Promise<void>;
121
+ protected handleEvents(ctxArg?: Context<FabricClientFlags>): Promise<void>;
122
122
  /**
123
123
  * @description Initializes the event listener
124
124
  * @summary Sets up the connection to the Fabric network and starts listening for chaincode events
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FabricClientDispatch.js","sourceRoot":"","sources":["../../src/client/FabricClientDispatch.ts"],"names":[],"mappings":"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"}
@@ -15,4 +15,4 @@ class FabricClientPaginator extends core_1.Paginator {
15
15
  }
16
16
  }
17
17
  exports.FabricClientPaginator = FabricClientPaginator;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmFicmljQ2xpZW50UGFnaW5hdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9GYWJyaWNDbGllbnRQYWdpbmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUNBS3dCO0FBTXhCLE1BQWEscUJBQXVDLFNBQVEsZ0JBSTNEO0lBQ0MsWUFDRSxPQUE0QixFQUM1QixLQUEwQyxFQUMxQyxJQUFZLEVBQ1osS0FBcUI7UUFFckIsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCw2REFBNkQ7SUFDbkQsT0FBTyxDQUFDLFlBQXdCO1FBQ3hDLE1BQU0sSUFBSSx1QkFBZ0IsQ0FDeEIscUdBQXFHLENBQ3RHLENBQUM7SUFDSixDQUFDO0lBRVEsSUFBSSxDQUNYLE9BQWUsQ0FBQyxFQUNoQixHQUFHLElBQTZCO1FBRWhDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLDZDQUE2QztJQUNqRixDQUFDO0NBQ0Y7QUEzQkQsc0RBMkJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTWF5YmVDb250ZXh0dWFsQXJnLFxuICBQYWdpbmF0b3IsXG4gIFByZXBhcmVkU3RhdGVtZW50LFxuICBVbnN1cHBvcnRlZEVycm9yLFxufSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcbmltcG9ydCB7IEZhYnJpY0NsaWVudEFkYXB0ZXIgfSBmcm9tIFwiLi9GYWJyaWNDbGllbnRBZGFwdGVyXCI7XG5pbXBvcnQgeyBNYW5nb1F1ZXJ5IH0gZnJvbSBcIkBkZWNhZi10cy9mb3ItY291Y2hkYlwiO1xuXG5leHBvcnQgY2xhc3MgRmFicmljQ2xpZW50UGFnaW5hdG9yPE0gZXh0ZW5kcyBNb2RlbD4gZXh0ZW5kcyBQYWdpbmF0b3I8XG4gIE0sXG4gIE0sXG4gIE1hbmdvUXVlcnlcbj4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBhZGFwdGVyOiBGYWJyaWNDbGllbnRBZGFwdGVyLFxuICAgIHF1ZXJ5OiBNYW5nb1F1ZXJ5IHwgUHJlcGFyZWRTdGF0ZW1lbnQ8YW55PixcbiAgICBzaXplOiBudW1iZXIsXG4gICAgY2xheno6IENvbnN0cnVjdG9yPE0+XG4gICkge1xuICAgIHN1cGVyKGFkYXB0ZXIsIHF1ZXJ5LCBzaXplLCBjbGF6eik7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHByb3RlY3RlZCBwcmVwYXJlKHJhd1N0YXRlbWVudDogTWFuZ29RdWVyeSk6IE1hbmdvUXVlcnkge1xuICAgIHRocm93IG5ldyBVbnN1cHBvcnRlZEVycm9yKFxuICAgICAgYFJhdyBxdWVyeSBhY2Nlc3MgbXVzdCBiZSBpbXBsZW1lbnRlZCBieSBhIHN1YmNsYXNzLiBvbmx5IHByZXBhcmVkIHN0YXRlbWVudHMgYXJlIG5hdGl2ZWx5IGF2YWlsYWJsZWBcbiAgICApO1xuICB9XG5cbiAgb3ZlcnJpZGUgcGFnZShcbiAgICBwYWdlOiBudW1iZXIgPSAxLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxhbnk+XG4gICk6IFByb21pc2U8TVtdPiB7XG4gICAgcmV0dXJuIHN1cGVyLnBhZ2UocGFnZSwgLi4uYXJncyk7IC8vIHRoaXMgd2lsbCBmYWlsIGZvciBub24tcHJlcGFyZWQgc3RhdGVtZW50c1xuICB9XG59XG4iXX0=
18
+ //# sourceMappingURL=FabricClientPaginator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FabricClientPaginator.js","sourceRoot":"","sources":["../../src/client/FabricClientPaginator.ts"],"names":[],"mappings":";;;AAAA,yCAKwB;AAMxB,MAAa,qBAAuC,SAAQ,gBAI3D;IACC,YACE,OAA4B,EAC5B,KAA0C,EAC1C,IAAY,EACZ,KAAqB;QAErB,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,6DAA6D;IACnD,OAAO,CAAC,YAAwB;QACxC,MAAM,IAAI,uBAAgB,CACxB,qGAAqG,CACtG,CAAC;IACJ,CAAC;IAEQ,IAAI,CACX,OAAe,CAAC,EAChB,GAAG,IAA6B;QAEhC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,6CAA6C;IACjF,CAAC;CACF;AA3BD,sDA2BC"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FabricClientRepository = void 0;
4
4
  const core_1 = require("@decaf-ts/core");
5
5
  const decorator_validation_1 = require("@decaf-ts/decorator-validation");
6
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
6
7
  /**
7
8
  * @description Repository implementation for Fabric client operations
8
9
  * @summary Extends the generic Repository to prepare context and arguments for CRUD operations executed via a Fabric client Adapter, wiring RepositoryFlags and Fabric-specific overrides.
@@ -70,9 +71,9 @@ class FabricClientRepository extends core_1.Repository {
70
71
  }
71
72
  async statement(name, ...args) {
72
73
  const contextArgs = await core_1.Context.args(core_1.PersistenceKeys.STATEMENT, this.class, args, this.adapter, this._overrides || {});
73
- const { log } = this.logCtx(contextArgs.args, this.statement);
74
+ const { log, ctx } = this.logCtx(contextArgs.args, this.statement);
74
75
  log.verbose(`Executing prepared statement ${name}`);
75
- return this.adapter.evaluateTransaction(core_1.PersistenceKeys.STATEMENT, contextArgs.args);
76
+ return this.adapter.evaluateTransaction(ctx, core_1.PersistenceKeys.STATEMENT, contextArgs.args);
76
77
  }
77
78
  async create(model, ...args) {
78
79
  const { ctx, log, ctxArgs } = this.logCtx(args, this.create);
@@ -90,6 +91,27 @@ class FabricClientRepository extends core_1.Repository {
90
91
  record = await this.adapter.update(this.class, id, record, transient, ...ctxArgs);
91
92
  return this.adapter.revert(record, this.class, id, transient, ctx);
92
93
  }
94
+ async createAllPrefix(models, ...args) {
95
+ const contextArgs = await core_1.Context.args(db_decorators_1.OperationKeys.CREATE, this.class, args, this.adapter, this._overrides || {});
96
+ const ignoreHandlers = contextArgs.context.get("ignoreHandlers");
97
+ const ignoreValidate = contextArgs.context.get("ignoreValidation");
98
+ if (!models.length)
99
+ return [models, ...contextArgs.args];
100
+ models = await Promise.all(models.map(async (m) => {
101
+ m = new this.class(m);
102
+ if (!ignoreHandlers)
103
+ await (0, db_decorators_1.enforceDBDecorators)(this, contextArgs.context, m, db_decorators_1.OperationKeys.CREATE, db_decorators_1.OperationKeys.ON);
104
+ return m;
105
+ }));
106
+ if (!ignoreValidate) {
107
+ const ignoredProps = contextArgs.context.get("ignoredValidationProperties") || [];
108
+ const errors = await Promise.all(models.map((m) => Promise.resolve(m.hasErrors(...ignoredProps))));
109
+ const errorMessages = (0, db_decorators_1.reduceErrorsToPrint)(errors);
110
+ if (errorMessages)
111
+ throw new db_decorators_1.ValidationError(errorMessages);
112
+ }
113
+ return [models, ...contextArgs.args];
114
+ }
93
115
  async createAll(models, ...args) {
94
116
  if (!models.length)
95
117
  return models;
@@ -111,4 +133,4 @@ class FabricClientRepository extends core_1.Repository {
111
133
  }
112
134
  }
113
135
  exports.FabricClientRepository = FabricClientRepository;
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmFicmljQ2xpZW50UmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvRmFicmljQ2xpZW50UmVwb3NpdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5Q0FPd0I7QUFFeEIseUVBQXVEO0FBS3ZEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQkc7QUFDSCxNQUFhLHNCQUdYLFNBQVEsaUJBQWdCO0lBU3hCLFlBQVksT0FBVyxFQUFFLEtBQXNCO1FBQzdDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFUTCxlQUFVLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ3JFLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsY0FBYyxFQUFFLElBQUk7WUFDcEIsa0JBQWtCLEVBQUUsS0FBSztZQUN6Qix5QkFBeUIsRUFBRSxJQUFJO1lBQy9CLDBCQUEwQixFQUFFLElBQUk7U0FDakMsQ0FBQyxDQUFDO0lBSUgsQ0FBQztJQUVRLEtBQUssQ0FBQyxVQUFVLENBQ3ZCLEdBQVksRUFDWixLQUFxQixFQUNyQixJQUFZLEVBQ1osR0FBRyxJQUFzQztRQUV6QyxNQUFNLFdBQVcsR0FBRyxNQUFNLGNBQU8sQ0FBQyxJQUFJLENBQ3BDLDRCQUFxQixDQUFDLE9BQU8sRUFDN0IsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLEVBQ0osSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FDdEIsQ0FBQztRQUNGLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4RSxHQUFHLENBQUMsT0FBTyxDQUNULGNBQWMsNEJBQUssQ0FBQyxTQUFTLENBQUMsSUFB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QUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQy9CLEdBQUcsT0FBTyxDQUNYLENBQUM7UUFDRixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ2pCLENBQUMsRUFDRCxJQUFJLENBQUMsS0FBSyxFQUNWLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQ2IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQ2xFLEdBQUcsQ0FDSixDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF0T0Qsd0RBc09DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgT3JkZXJEaXJlY3Rpb24sXG4gIFBlcnNpc3RlbmNlS2V5cyxcbiAgUmVwb3NpdG9yeSxcbiAgQ29udGV4dCxcbiAgQ29udGV4dE9mLFxuICBQcmVwYXJlZFN0YXRlbWVudEtleXMsXG59IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHR5cGUgeyBNYXliZUNvbnRleHR1YWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRpb25cIjtcbmltcG9ydCB7IHR5cGUgRmFicmljQ2xpZW50QWRhcHRlciB9IGZyb20gXCIuL0ZhYnJpY0NsaWVudEFkYXB0ZXJcIjtcbmltcG9ydCB7IFByaW1hcnlLZXlUeXBlIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFJlcG9zaXRvcnkgaW1wbGVtZW50YXRpb24gZm9yIEZhYnJpYyBjbGllbnQgb3BlcmF0aW9uc1xuICogQHN1bW1hcnkgRXh0ZW5kcyB0aGUgZ2VuZXJpYyBSZXBvc2l0b3J5IHRvIHByZXBhcmUgY29udGV4dCBhbmQgYXJndW1lbnRzIGZvciBDUlVEIG9wZXJhdGlvbnMgZXhlY3V0ZWQgdmlhIGEgRmFicmljIGNsaWVudCBBZGFwdGVyLCB3aXJpbmcgUmVwb3NpdG9yeUZsYWdzIGFuZCBGYWJyaWMtc3BlY2lmaWMgb3ZlcnJpZGVzLlxuICogQHRlbXBsYXRlIE0gZXh0ZW5kcyBNb2RlbCAtIFRoZSBtb2RlbCB0eXBlIGhhbmRsZWQgYnkgdGhpcyByZXBvc2l0b3J5XG4gKiBAcGFyYW0ge0FkYXB0ZXI8YW55LCBNYW5nb1F1ZXJ5LCBGYWJyaWNGbGFncywgQ29udGV4dDxGYWJyaWNGbGFncz4+fSBbYWRhcHRlcl0gLSBPcHRpb25hbCBhZGFwdGVyIGluc3RhbmNlIHVzZWQgdG8gZXhlY3V0ZSBvcGVyYXRpb25zXG4gKiBAcGFyYW0ge0NvbnN0cnVjdG9yPE0+fSBbY2xhenpdIC0gT3B0aW9uYWwgbW9kZWwgY29uc3RydWN0b3IgdXNlZCBieSB0aGUgcmVwb3NpdG9yeVxuICogQHJldHVybiB7dm9pZH1cbiAqIEBjbGFzcyBGYWJyaWNDbGllbnRSZXBvc2l0b3J5XG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgUmVwb3NpdG9yeSB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuICogaW1wb3J0IHsgRmFicmljQ2xpZW50UmVwb3NpdG9yeSB9IGZyb20gXCJAZGVjYWYtdHMvZm9yLWZhYnJpY1wiO1xuICpcbiAqIGNsYXNzIFVzZXIgZXh0ZW5kcyBNb2RlbCB7IGlkITogc3RyaW5nOyBuYW1lITogc3RyaW5nOyB9XG4gKiBjb25zdCByZXBvID0gbmV3IEZhYnJpY0NsaWVudFJlcG9zaXRvcnk8VXNlcj4oKTtcbiAqIGNvbnN0IGNyZWF0ZWQgPSBhd2FpdCByZXBvLmNyZWF0ZShuZXcgVXNlcih7IGlkOiBcIjFcIiwgbmFtZTogXCJBbGljZVwiIH0pKTtcbiAqIGNvbnN0IGxvYWRlZCA9IGF3YWl0IHJlcG8ucmVhZChcIjFcIik7XG4gKlxuICogQG1lcm1haWRcbiAqIHNlcXVlbmNlRGlhZ3JhbVxuICogICBwYXJ0aWNpcGFudCBBcHBcbiAqICAgcGFydGljaXBhbnQgUmVwbyBhcyBGYWJyaWNDbGllbnRSZXBvc2l0b3J5XG4gKiAgIHBhcnRpY2lwYW50IEFkYXB0ZXJcbiAqICAgQXBwLT4+UmVwbzogY3JlYXRlKG1vZGVsKVxuICogICBSZXBvLT4+UmVwbzogY3JlYXRlUHJlZml4KG1vZGVsLCAuLi5hcmdzKVxuICogICBSZXBvLT4+QWRhcHRlcjogY3JlYXRlKHRhYmxlLCBpZCwgbW9kZWwsIGZsYWdzKVxuICogICBBZGFwdGVyLS0+PlJlcG86IHJlc3VsdFxuICogICBSZXBvLS0+PkFwcDogbW9kZWxcbiAqL1xuZXhwb3J0IGNsYXNzIEZhYnJpY0NsaWVudFJlcG9zaXRvcnk8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgQSBleHRlbmRzIEZhYnJpY0NsaWVudEFkYXB0ZXIsXG4+IGV4dGVuZHMgUmVwb3NpdG9yeTxNLCBBPiB7XG4gIHByb3RlY3RlZCBvdmVycmlkZSBfb3ZlcnJpZGVzID0gT2JqZWN0LmFzc2lnbih7fSwgc3VwZXJbXCJfb3ZlcnJpZGVzXCJdLCB7XG4gICAgaWdub3JlVmFsaWRhdGlvbjogdHJ1ZSxcbiAgICBpZ25vcmVIYW5kbGVyczogdHJ1ZSxcbiAgICBhbGxvd1Jhd1N0YXRlbWVudHM6IGZhbHNlLFxuICAgIGZvcmNlUHJlcGFyZVNpbXBsZVF1ZXJpZXM6IHRydWUsXG4gICAgZm9yY2VQcmVwYXJlQ29tcGxleFF1ZXJpZXM6IHRydWUsXG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKGFkYXB0ZXI/OiBBLCBjbGF6ej86IENvbnN0cnVjdG9yPE0+KSB7XG4gICAgc3VwZXIoYWRhcHRlciwgY2xhenopO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgcGFnaW5hdGVCeShcbiAgICBrZXk6IGtleW9mIE0sXG4gICAgb3JkZXI6IE9yZGVyRGlyZWN0aW9uLFxuICAgIHNpemU6IG51bWJlcixcbiAgICAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+PlxuICApIHtcbiAgICBjb25zdCBjb250ZXh0QXJncyA9IGF3YWl0IENvbnRleHQuYXJncyhcbiAgICAgIFByZXBhcmVkU3RhdGVtZW50S2V5cy5QQUdFX0JZLFxuICAgICAgdGhpcy5jbGFzcyxcbiAgICAgIGFyZ3MsXG4gICAgICB0aGlzLmFkYXB0ZXIsXG4gICAgICB0aGlzLl9vdmVycmlkZXMgfHwge31cbiAgICApO1xuICAgIGNvbnN0IHsgbG9nLCBjdHhBcmdzIH0gPSB0aGlzLmxvZ0N0eChjb250ZXh0QXJncy5hcmdzLCB0aGlzLnBhZ2luYXRlQnkpO1xuICAgIGxvZy52ZXJib3NlKFxuICAgICAgYHBhZ2luYXRpbmcgJHtNb2RlbC50YWJsZU5hbWUodGhpcy5jbGFzcyl9IHdpdGggcGFnZSBzaXplICR7c2l6ZX1gXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3QoKVxuICAgICAgLm9yZGVyQnkoW2tleSwgb3JkZXJdKVxuICAgICAgLnBhZ2luYXRlKHNpemUsIC4uLmN0eEFyZ3MpO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgbGlzdEJ5KFxuICAgIGtleToga2V5b2YgTSxcbiAgICBvcmRlcjogT3JkZXJEaXJlY3Rpb24sXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKSB7XG4gICAgY29uc3QgY29udGV4dEFyZ3MgPSBhd2FpdCBDb250ZXh0LmFyZ3MoXG4gICAgICBcImxpc3RcIixcbiAgICAgIHRoaXMuY2xhc3MsXG4gICAgICBhcmdzLFxuICAgICAgdGhpcy5hZGFwdGVyLFxuICAgICAgdGhpcy5fb3ZlcnJpZGVzIHx8IHt9XG4gICAgKTtcbiAgICBjb25zdCB7IGxvZywgY3R4QXJncyB9ID0gdGhpcy5sb2dDdHgoY29udGV4dEFyZ3MuYXJncywgdGhpcy5saXN0QnkpO1xuICAgIGxvZy52ZXJib3NlKFxuICAgICAgYGxpc3RpbmcgJHtNb2RlbC50YWJsZU5hbWUodGhpcy5jbGFzcyl9IGJ5ICR7a2V5IGFzIHN0cmluZ30gJHtvcmRlcn1gXG4gICAgKTtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuc3RhdGVtZW50KFxuICAgICAgdGhpcy5saXN0QnkubmFtZSxcbiAgICAgIGtleSxcbiAgICAgIHsgZGlyZWN0aW9uOiBvcmRlciB9LFxuICAgICAgLi4uY3R4QXJnc1xuICAgICkpIGFzIGFueTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIGZpbmRCeShcbiAgICBrZXk6IGtleW9mIE0sXG4gICAgdmFsdWU6IGFueSxcbiAgICAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+PlxuICApOiBQcm9taXNlPE1bXT4ge1xuICAgIGNvbnN0IGNvbnRleHRBcmdzID0gYXdhaXQgQ29udGV4dC5hcmdzKFxuICAgICAgUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkZJTkRfQlksXG4gICAgICB0aGlzLmNsYXNzLFxuICAgICAgYXJncyxcbiAgICAgIHRoaXMuYWRhcHRlcixcbiAgICAgIHRoaXMuX292ZXJyaWRlcyB8fCB7fVxuICAgICk7XG4gICAgY29uc3QgeyBsb2csIGN0eEFyZ3MgfSA9IHRoaXMubG9nQ3R4KGNvbnRleHRBcmdzLmFyZ3MsIHRoaXMuZmluZEJ5KTtcbiAgICBsb2cudmVyYm9zZShcbiAgICAgIGBmaW5kaW5nIGFsbCAke01vZGVsLnRhYmxlTmFtZSh0aGlzLmNsYXNzKX0gd2l0aCAke2tleSBhcyBzdHJpbmd9ICR7dmFsdWV9YFxuICAgICk7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLnN0YXRlbWVudChcbiAgICAgIHRoaXMuZmluZEJ5Lm5hbWUsXG4gICAgICBrZXksXG4gICAgICB2YWx1ZSxcbiAgICAgIHt9LFxuICAgICAgLi4uY3R4QXJnc1xuICAgICkpIGFzIGFueTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFzeW5jIGZpbmRPbmVCeShcbiAgICBrZXk6IGtleW9mIE0sXG4gICAgdmFsdWU6IGFueSxcbiAgICAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+PlxuICApOiBQcm9taXNlPE0+IHtcbiAgICBjb25zdCBjb250ZXh0QXJncyA9IGF3YWl0IENvbnRleHQuYXJncyhcbiAgICAgIFByZXBhcmVkU3RhdGVtZW50S2V5cy5GSU5EX09ORV9CWSxcbiAgICAgIHRoaXMuY2xhc3MsXG4gICAgICBhcmdzLFxuICAgICAgdGhpcy5hZGFwdGVyLFxuICAgICAgdGhpcy5fb3ZlcnJpZGVzIHx8IHt9XG4gICAgKTtcbiAgICBjb25zdCB7IGxvZywgY3R4QXJncyB9ID0gdGhpcy5sb2dDdHgoY29udGV4dEFyZ3MuYXJncywgdGhpcy5maW5kT25lQnkpO1xuICAgIGxvZy52ZXJib3NlKFxuICAgICAgYGZpbmRpbmcgT25lICR7TW9kZWwudGFibGVOYW1lKHRoaXMuY2xhc3MpfSB3aXRoICR7a2V5IGFzIHN0cmluZ30gJHt2YWx1ZX1gXG4gICAgKTtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuc3RhdGVtZW50KFxuICAgICAgdGhpcy5maW5kT25lQnkubmFtZSxcbiAgICAgIGtleSxcbiAgICAgIHZhbHVlLFxuICAgICAge30sXG4gICAgICAuLi5jdHhBcmdzXG4gICAgKSkgYXMgYW55O1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgc3RhdGVtZW50KFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICAuLi5hcmdzOiBNYXliZUNvbnRleHR1YWxBcmc8Q29udGV4dE9mPEE+PlxuICApOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IGNvbnRleHRBcmdzID0gYXdhaXQgQ29udGV4dC5hcmdzKFxuICAgICAgUGVyc2lzdGVuY2VLZXlzLlNUQVRFTUVOVCxcbiAgICAgIHRoaXMuY2xhc3MsXG4gICAgICBhcmdzLFxuICAgICAgdGhpcy5hZGFwdGVyLFxuICAgICAgdGhpcy5fb3ZlcnJpZGVzIHx8IHt9XG4gICAgKTtcbiAgICBjb25zdCB7IGxvZyB9ID0gdGhpcy5sb2dDdHgoY29udGV4dEFyZ3MuYXJncywgdGhpcy5zdGF0ZW1lbnQpO1xuICAgIGxvZy52ZXJib3NlKGBFeGVjdXRpbmcgcHJlcGFyZWQgc3RhdGVtZW50ICR7bmFtZX1gKTtcbiAgICByZXR1cm4gdGhpcy5hZGFwdGVyLmV2YWx1YXRlVHJhbnNhY3Rpb24oXG4gICAgICBQZXJzaXN0ZW5jZUtleXMuU1RBVEVNRU5ULFxuICAgICAgY29udGV4dEFyZ3MuYXJnc1xuICAgICk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyBjcmVhdGUoXG4gICAgbW9kZWw6IE0sXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKTogUHJvbWlzZTxNPiB7XG4gICAgY29uc3QgeyBjdHgsIGxvZywgY3R4QXJncyB9ID0gdGhpcy5sb2dDdHgoYXJncywgdGhpcy5jcmVhdGUpO1xuICAgIGxvZy5kZWJ1ZyhcbiAgICAgIGBDcmVhdGluZyBuZXcgJHt0aGlzLmNsYXNzLm5hbWV9IGluIHRhYmxlICR7TW9kZWwudGFibGVOYW1lKHRoaXMuY2xhc3MpfWBcbiAgICApO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBsZXQgeyByZWNvcmQsIGlkLCB0cmFuc2llbnQgfSA9IHRoaXMuYWRhcHRlci5wcmVwYXJlKG1vZGVsLCBjdHgpO1xuICAgIHJlY29yZCA9IGF3YWl0IHRoaXMuYWRhcHRlci5jcmVhdGUoXG4gICAgICB0aGlzLmNsYXNzLFxuICAgICAgaWQsXG4gICAgICByZWNvcmQsXG4gICAgICB0cmFuc2llbnQsXG4gICAgICAuLi5jdHhBcmdzXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5hZGFwdGVyLnJldmVydDxNPihyZWNvcmQsIHRoaXMuY2xhc3MsIGlkLCB0cmFuc2llbnQsIGN0eCk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyB1cGRhdGUoXG4gICAgbW9kZWw6IE0sXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKTogUHJvbWlzZTxNPiB7XG4gICAgY29uc3QgeyBjdHhBcmdzLCBsb2csIGN0eCB9ID0gdGhpcy5sb2dDdHgoYXJncywgdGhpcy51cGRhdGUpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBsZXQgeyByZWNvcmQsIGlkLCB0cmFuc2llbnQgfSA9IHRoaXMuYWRhcHRlci5wcmVwYXJlKG1vZGVsLCBjdHgpO1xuICAgIGxvZy5kZWJ1ZyhcbiAgICAgIGB1cGRhdGluZyAke3RoaXMuY2xhc3MubmFtZX0gaW4gdGFibGUgJHtNb2RlbC50YWJsZU5hbWUodGhpcy5jbGFzcyl9IHdpdGggaWQgJHtpZH1gXG4gICAgKTtcbiAgICByZWNvcmQgPSBhd2FpdCB0aGlzLmFkYXB0ZXIudXBkYXRlKFxuICAgICAgdGhpcy5jbGFzcyxcbiAgICAgIGlkLFxuICAgICAgcmVjb3JkLFxuICAgICAgdHJhbnNpZW50LFxuICAgICAgLi4uY3R4QXJnc1xuICAgICk7XG4gICAgcmV0dXJuIHRoaXMuYWRhcHRlci5yZXZlcnQ8TT4ocmVjb3JkLCB0aGlzLmNsYXNzLCBpZCwgdHJhbnNpZW50LCBjdHgpO1xuICB9XG5cbiAgb3ZlcnJpZGUgYXN5bmMgY3JlYXRlQWxsKFxuICAgIG1vZGVsczogTVtdLFxuICAgIC4uLmFyZ3M6IE1heWJlQ29udGV4dHVhbEFyZzxDb250ZXh0T2Y8QT4+XG4gICk6IFByb21pc2U8TVtdPiB7XG4gICAgaWYgKCFtb2RlbHMubGVuZ3RoKSByZXR1cm4gbW9kZWxzO1xuICAgIGNvbnN0IHsgY3R4LCBsb2csIGN0eEFyZ3MgfSA9IHRoaXMubG9nQ3R4KGFyZ3MsIHRoaXMuY3JlYXRlQWxsKTtcbiAgICBsb2cuZGVidWcoXG4gICAgICBgQ3JlYXRpbmcgJHttb2RlbHMubGVuZ3RofSBuZXcgJHt0aGlzLmNsYXNzLm5hbWV9IGluIHRhYmxlICR7TW9kZWwudGFibGVOYW1lKHRoaXMuY2xhc3MpfWBcbiAgICApO1xuXG4gICAgY29uc3QgcHJlcGFyZWQgPSBtb2RlbHMubWFwKChtKSA9PiB0aGlzLmFkYXB0ZXIucHJlcGFyZShtLCBjdHgpKTtcbiAgICBjb25zdCBpZHMgPSBwcmVwYXJlZC5tYXAoKHApID0+IHAuaWQpO1xuICAgIGxldCByZWNvcmRzID0gcHJlcGFyZWQubWFwKChwKSA9PiBwLnJlY29yZCk7XG4gICAgY29uc3QgdHJhbnNpZW50ID0gcHJlcGFyZWQubWFwKChwKSA9PiBwLnRyYW5zaWVudCk7XG4gICAgcmVjb3JkcyA9IGF3YWl0IHRoaXMuYWRhcHRlci5jcmVhdGVBbGwoXG4gICAgICB0aGlzLmNsYXNzLFxuICAgICAgaWRzIGFzIFByaW1hcnlLZXlUeXBlW10sXG4gICAgICByZWNvcmRzLFxuICAgICAgdHJhbnNpZW50LFxuICAgICAgLi4uY3R4QXJnc1xuICAgICk7XG4gICAgcmV0dXJuIHJlY29yZHMubWFwKChyLCBpKSA9PlxuICAgICAgdGhpcy5hZGFwdGVyLnJldmVydChcbiAgICAgICAgcixcbiAgICAgICAgdGhpcy5jbGFzcyxcbiAgICAgICAgaWRzW2ldLFxuICAgICAgICBjdHguZ2V0KFwicmVidWlsZFdpdGhUcmFuc2llbnRcIikgPyBwcmVwYXJlZFtpXS50cmFuc2llbnQgOiB1bmRlZmluZWQsXG4gICAgICAgIGN0eFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBvdmVycmlkZSBhc3luYyB1cGRhdGVBbGwoXG4gICAgbW9kZWxzOiBNW10sXG4gICAgLi4uYXJnczogTWF5YmVDb250ZXh0dWFsQXJnPENvbnRleHRPZjxBPj5cbiAgKTogUHJvbWlzZTxNW10+IHtcbiAgICBjb25zdCB7IGN0eCwgbG9nLCBjdHhBcmdzIH0gPSB0aGlzLmxvZ0N0eChhcmdzLCB0aGlzLnVwZGF0ZUFsbCk7XG4gICAgbG9nLmRlYnVnKFxuICAgICAgYFVwZGF0aW5nICR7bW9kZWxzLmxlbmd0aH0gbmV3ICR7dGhpcy5jbGFzcy5uYW1lfSBpbiB0YWJsZSAke01vZGVsLnRhYmxlTmFtZSh0aGlzLmNsYXNzKX1gXG4gICAgKTtcblxuICAgIGNvbnN0IHJlY29yZHMgPSBtb2RlbHMubWFwKChtKSA9PiB0aGlzLmFkYXB0ZXIucHJlcGFyZShtLCBjdHgpKTtcbiAgICBjb25zdCB1cGRhdGVkID0gYXdhaXQgdGhpcy5hZGFwdGVyLnVwZGF0ZUFsbChcbiAgICAgIHRoaXMuY2xhc3MsXG4gICAgICByZWNvcmRzLm1hcCgocikgPT4gci5pZCksXG4gICAgICByZWNvcmRzLm1hcCgocikgPT4gci5yZWNvcmQpLFxuICAgICAgcmVjb3Jkcy5tYXAoKHIpID0+IHIudHJhbnNpZW50KSxcbiAgICAgIC4uLmN0eEFyZ3NcbiAgICApO1xuICAgIHJldHVybiB1cGRhdGVkLm1hcCgodSwgaSkgPT5cbiAgICAgIHRoaXMuYWRhcHRlci5yZXZlcnQoXG4gICAgICAgIHUsXG4gICAgICAgIHRoaXMuY2xhc3MsXG4gICAgICAgIHJlY29yZHNbaV0uaWQsXG4gICAgICAgIGN0eC5nZXQoXCJyZWJ1aWxkV2l0aFRyYW5zaWVudFwiKSA/IHJlY29yZHNbaV0udHJhbnNpZW50IDogdW5kZWZpbmVkLFxuICAgICAgICBjdHhcbiAgICAgIClcbiAgICApO1xuICB9XG59XG4iXX0=
136
+ //# sourceMappingURL=FabricClientRepository.js.map
@@ -31,7 +31,7 @@ import { type FabricClientAdapter } from "./FabricClientAdapter";
31
31
  * Adapter-->>Repo: result
32
32
  * Repo-->>App: model
33
33
  */
34
- export declare class FabricClientRepository<M extends Model, A extends FabricClientAdapter> extends Repository<M, A> {
34
+ export declare class FabricClientRepository<M extends Model, A extends FabricClientAdapter = FabricClientAdapter> extends Repository<M, A> {
35
35
  protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<ContextOf<A>>> & Partial<import("@decaf-ts/db-decorators").FlagsOf<ContextOf<A>>> & {
36
36
  ignoreValidation: boolean;
37
37
  ignoreHandlers: boolean;
@@ -47,6 +47,7 @@ export declare class FabricClientRepository<M extends Model, A extends FabricCli
47
47
  statement(name: string, ...args: MaybeContextualArg<ContextOf<A>>): Promise<any>;
48
48
  create(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
49
49
  update(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
50
+ protected createAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...any[], ContextOf<A>]>;
50
51
  createAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
51
52
  updateAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
52
53
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FabricClientRepository.js","sourceRoot":"","sources":["../../src/client/FabricClientRepository.ts"],"names":[],"mappings":";;;AAAA,yCAOwB;AAExB,yEAAuD;AAIvD,2DAMiC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAa,sBAGX,SAAQ,iBAAgB;IASxB,YAAY,OAAW,EAAE,KAAsB;QAC7C,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QATL,eAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE;YACrE,gBAAgB,EAAE,IAAI;YACtB,cAAc,EAAE,IAAI;YACpB,kBAAkB,EAAE,KAAK;YACzB,yBAAyB,EAAE,IAAI;YAC/B,0BAA0B,EAAE,IAAI;SACjC,CAAC,CAAC;IAIH,CAAC;IAEQ,KAAK,CAAC,UAAU,CACvB,GAAY,EACZ,KAAqB,EACrB,IAAY,EACZ,GAAG,IAAsC;QAEzC,MAAM,WAAW,GAAG,MAAM,cAAO,CAAC,IAAI,CACpC,4BAAqB,CAAC,OAAO,EAC7B,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,IAAI,EAAE,CACtB,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACxE,GAAG,CAAC,OAAO,CACT,cAAc,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,IAAI,EAAE,CACnE,CAAC;QACF,OAAO,IAAI,CAAC,MAAM,EAAE;aACjB,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aACrB,QAAQ,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC;IAChC,CAAC;IAEQ,KAAK,CAAC,MAAM,CACnB,GAAY,EACZ,KAAqB,EACrB,GAAG,IAAsC;QAEzC,MAAM,WAAW,GAAG,MAAM,cAAO,CAAC,IAAI,CACpC,MAAM,EACN,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,IAAI,EAAE,CACtB,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,GAAG,CAAC,OAAO,CACT,WAAW,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAa,IAAI,KAAK,EAAE,CACtE,CAAC;QACF,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,GAAG,EACH,EAAE,SAAS,EAAE,KAAK,EAAE,EACpB,GAAG,OAAO,CACX,CAAQ,CAAC;IACZ,CAAC;IAEQ,KAAK,CAAC,MAAM,CACnB,GAAY,EACZ,KAAU,EACV,GAAG,IAAsC;QAEzC,MAAM,WAAW,GAAG,MAAM,cAAO,CAAC,IAAI,CACpC,4BAAqB,CAAC,OAAO,EAC7B,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,IAAI,EAAE,CACtB,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,GAAG,CAAC,OAAO,CACT,eAAe,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAa,IAAI,KAAK,EAAE,CAC5E,CAAC;QACF,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,GAAG,EACH,KAAK,EACL,EAAE,EACF,GAAG,OAAO,CACX,CAAQ,CAAC;IACZ,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,GAAY,EACZ,KAAU,EACV,GAAG,IAAsC;QAEzC,MAAM,WAAW,GAAG,MAAM,cAAO,CAAC,IAAI,CACpC,4BAAqB,CAAC,WAAW,EACjC,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,IAAI,EAAE,CACtB,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACvE,GAAG,CAAC,OAAO,CACT,eAAe,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAa,IAAI,KAAK,EAAE,CAC5E,CAAC;QACF,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,GAAG,EACH,KAAK,EACL,EAAE,EACF,GAAG,OAAO,CACX,CAAQ,CAAC;IACZ,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,IAAY,EACZ,GAAG,IAAsC;QAEzC,MAAM,WAAW,GAAG,MAAM,cAAO,CAAC,IAAI,CACpC,sBAAe,CAAC,SAAS,EACzB,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,IAAI,EAAE,CACtB,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACnE,GAAG,CAAC,OAAO,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CACrC,GAAG,EACH,sBAAe,CAAC,SAAS,EACzB,WAAW,CAAC,IAAI,CACjB,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,MAAM,CACnB,KAAQ,EACR,GAAG,IAAsC;QAEzC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,GAAG,CAAC,KAAK,CACP,gBAAgB,IAAI,CAAC,KAAK,CAAC,IAAI,aAAa,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAC1E,CAAC;QACF,wCAAwC;QACxC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAChC,IAAI,CAAC,KAAK,EACV,EAAE,EACF,MAAM,EACN,SAAS,EACT,GAAG,OAAO,CACX,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAI,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IACxE,CAAC;IAEQ,KAAK,CAAC,MAAM,CACnB,KAAQ,EACR,GAAG,IAAsC;QAEzC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,wCAAwC;QACxC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACjE,GAAG,CAAC,KAAK,CACP,YAAY,IAAI,CAAC,KAAK,CAAC,IAAI,aAAa,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CACpF,CAAC;QACF,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAChC,IAAI,CAAC,KAAK,EACV,EAAE,EACF,MAAM,EACN,SAAS,EACT,GAAG,OAAO,CACX,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAI,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IACxE,CAAC;IAEkB,KAAK,CAAC,eAAe,CACtC,MAAW,EACX,GAAG,IAAsC;QAEzC,MAAM,WAAW,GAAG,MAAM,cAAO,CAAC,IAAI,CACpC,6BAAa,CAAC,MAAM,EACpB,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,IAAI,EAAE,CACtB,CAAC;QACF,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACjE,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAQ,CAAC;QAEhE,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CACxB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACrB,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,cAAc;gBACjB,MAAM,IAAA,mCAAmB,EACvB,IAAI,EACJ,WAAW,CAAC,OAAO,EACnB,CAAC,EACD,6BAAa,CAAC,MAAM,EACpB,6BAAa,CAAC,EAAE,CACjB,CAAC;YACJ,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CACH,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,YAAY,GAChB,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAC;YAE/D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CACjE,CAAC;YAEF,MAAM,aAAa,GAAG,IAAA,mCAAmB,EAAC,MAAM,CAAC,CAAC;YAElD,IAAI,aAAa;gBAAE,MAAM,IAAI,+BAAe,CAAC,aAAa,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAQ,CAAC;IAC9C,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,MAAW,EACX,GAAG,IAAsC;QAEzC,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,MAAM,CAAC;QAClC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAChE,GAAG,CAAC,KAAK,CACP,YAAY,MAAM,CAAC,MAAM,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,aAAa,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAC3F,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACnD,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CACpC,IAAI,CAAC,KAAK,EACV,GAAuB,EACvB,OAAO,EACP,SAAS,EACT,GAAG,OAAO,CACX,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CACjB,CAAC,EACD,IAAI,CAAC,KAAK,EACV,GAAG,CAAC,CAAC,CAAC,EACN,GAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EACnE,GAAG,CACJ,CACF,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,MAAW,EACX,GAAG,IAAsC;QAEzC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAChE,GAAG,CAAC,KAAK,CACP,YAAY,MAAM,CAAC,MAAM,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,aAAa,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAC3F,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAC1C,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACxB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAC5B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAC/B,GAAG,OAAO,CACX,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CACjB,CAAC,EACD,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EACb,GAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAClE,GAAG,CACJ,CACF,CAAC;IACJ,CAAC;CACF;AApRD,wDAoRC"}
@@ -18,4 +18,4 @@ class FabricClientStatement extends core_1.Statement {
18
18
  }
19
19
  }
20
20
  exports.FabricClientStatement = FabricClientStatement;
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmFicmljQ2xpZW50U3RhdGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9GYWJyaWNDbGllbnRTdGF0ZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUNBS3dCO0FBS3hCLE1BQWEscUJBQTBDLFNBQVEsZ0JBSzlEO0lBQ0MsWUFBWSxPQUE0QixFQUFFLFNBQWlDO1FBQ3pFLEtBQUssQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVrQixLQUFLO1FBQ3RCLE1BQU0sSUFBSSx1QkFBZ0IsQ0FDeEIsMklBQTJJLENBQzVJLENBQUM7SUFDSixDQUFDO0lBRWtCLGNBQWM7SUFDL0IsNkRBQTZEO0lBQzdELFNBQXVCO0lBQ3ZCLDZEQUE2RDtJQUM3RCxHQUFHLElBQVc7UUFFZCxNQUFNLElBQUksdUJBQWdCLENBQ3hCLDJJQUEySSxDQUM1SSxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBMUJELHNEQTBCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFkYXB0ZXJGbGFncyxcbiAgQ29uZGl0aW9uLFxuICBTdGF0ZW1lbnQsXG4gIFVuc3VwcG9ydGVkRXJyb3IsXG59IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBGYWJyaWNDbGllbnRBZGFwdGVyIH0gZnJvbSBcIi4vRmFicmljQ2xpZW50QWRhcHRlclwiO1xuaW1wb3J0IHsgTWFuZ29RdWVyeSB9IGZyb20gXCJAZGVjYWYtdHMvZm9yLWNvdWNoZGJcIjtcblxuZXhwb3J0IGNsYXNzIEZhYnJpY0NsaWVudFN0YXRlbWVudDxNIGV4dGVuZHMgTW9kZWwsIFI+IGV4dGVuZHMgU3RhdGVtZW50PFxuICBNLFxuICBGYWJyaWNDbGllbnRBZGFwdGVyLFxuICBSLFxuICBNYW5nb1F1ZXJ5XG4+IHtcbiAgY29uc3RydWN0b3IoYWRhcHRlcjogRmFicmljQ2xpZW50QWRhcHRlciwgb3ZlcnJpZGVzPzogUGFydGlhbDxBZGFwdGVyRmxhZ3M+KSB7XG4gICAgc3VwZXIoYWRhcHRlciwgb3ZlcnJpZGVzKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBidWlsZCgpOiBNYW5nb1F1ZXJ5IHtcbiAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWRFcnJvcihcbiAgICAgIGBUaGlzIG1ldGhvZCBpcyBvbmx5IGNhbGxlZCBpcyBwcmVwYXJlZCBzdGF0ZW1lbnRzIGFyZSBub3QgdXNlZC4gSWYgc28sIGEgZGVkaWNhdGVkIGltcGxlbWVudGF0aW9uIGZvciB0aGUgbmF0aXZlIHF1ZXJpZXMgdXNlZCBpcyByZXF1aXJlZGBcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHBhcnNlQ29uZGl0aW9uKFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBjb25kaXRpb246IENvbmRpdGlvbjxNPixcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogTWFuZ29RdWVyeSB7XG4gICAgdGhyb3cgbmV3IFVuc3VwcG9ydGVkRXJyb3IoXG4gICAgICBgVGhpcyBtZXRob2QgaXMgb25seSBjYWxsZWQgaXMgcHJlcGFyZWQgc3RhdGVtZW50cyBhcmUgbm90IHVzZWQuIElzIHNvLCBhIGRlZGljYXRlZCBpbXBsZW1lbnRhdGlvbiBmb3IgdGhlIG5hdGl2ZSBxdWVyaWVzIHVzZWQgaXMgcmVxdWlyZWRgXG4gICAgKTtcbiAgfVxufVxuIl19
21
+ //# sourceMappingURL=FabricClientStatement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FabricClientStatement.js","sourceRoot":"","sources":["../../src/client/FabricClientStatement.ts"],"names":[],"mappings":";;;AAAA,yCAKwB;AAKxB,MAAa,qBAA0C,SAAQ,gBAK9D;IACC,YAAY,OAA4B,EAAE,SAAiC;QACzE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5B,CAAC;IAEkB,KAAK;QACtB,MAAM,IAAI,uBAAgB,CACxB,2IAA2I,CAC5I,CAAC;IACJ,CAAC;IAEkB,cAAc;IAC/B,6DAA6D;IAC7D,SAAuB;IACvB,6DAA6D;IAC7D,GAAG,IAAW;QAEd,MAAM,IAAI,uBAAgB,CACxB,2IAA2I,CAC5I,CAAC;IACJ,CAAC;CACF;AA1BD,sDA0BC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultFabricClientFlags = void 0;
4
+ exports.DefaultFabricClientFlags = {
5
+ evaluateTimeout: 5,
6
+ endorseTimeout: 15,
7
+ submitTimeout: 5,
8
+ commitTimeout: 60,
9
+ };
10
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1,2 @@
1
+ import { FabricClientFlags } from "./types";
2
+ export declare const DefaultFabricClientFlags: FabricClientFlags;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/client/constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAsB;IACzD,eAAe,EAAE,CAAC;IAClB,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,EAAE;CACX,CAAC"}