@decaf-ts/for-fabric 0.5.7 → 0.7.0

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 (826) hide show
  1. package/dist/for-fabric.cjs +2 -3797
  2. package/dist/for-fabric.cjs.map +1 -0
  3. package/dist/for-fabric.js +2 -3901
  4. package/dist/for-fabric.js.map +1 -0
  5. package/lib/cjs/bin/cli.cjs +9 -0
  6. package/lib/cjs/bin/cli.js.map +1 -0
  7. package/lib/cjs/cli-module.cjs +479 -0
  8. package/lib/cjs/cli-module.js.map +1 -0
  9. package/lib/cjs/cli-utils.cjs +309 -0
  10. package/lib/cjs/cli-utils.js.map +1 -0
  11. package/lib/cjs/client/FabricClientAdapter.cjs +1362 -0
  12. package/lib/cjs/client/FabricClientAdapter.js.map +1 -0
  13. package/lib/cjs/client/FabricClientDispatch.cjs +290 -0
  14. package/lib/cjs/client/FabricClientDispatch.js.map +1 -0
  15. package/lib/cjs/client/FabricClientPaginator.cjs +21 -0
  16. package/lib/cjs/client/FabricClientPaginator.js.map +1 -0
  17. package/lib/cjs/client/FabricClientRepository.cjs +259 -0
  18. package/lib/cjs/client/FabricClientRepository.js.map +1 -0
  19. package/lib/cjs/client/FabricClientStatement.cjs +451 -0
  20. package/lib/cjs/client/FabricClientStatement.js.map +1 -0
  21. package/lib/cjs/client/collections/generation.cjs +113 -0
  22. package/lib/cjs/client/collections/generation.js.map +1 -0
  23. package/lib/{client/indexes → cjs/client/collections}/index.cjs +1 -1
  24. package/lib/cjs/client/collections/index.js.map +1 -0
  25. package/lib/cjs/client/constants.cjs +16 -0
  26. package/lib/cjs/client/constants.js.map +1 -0
  27. package/lib/cjs/client/crypto.cjs +368 -0
  28. package/lib/cjs/client/crypto.js.map +1 -0
  29. package/lib/{esm/client/erc20/FabricERC20ClientRepository.d.ts → cjs/client/erc20/FabricERC20ClientRepository.cjs} +139 -30
  30. package/lib/cjs/client/erc20/FabricERC20ClientRepository.js.map +1 -0
  31. package/lib/{client → cjs/client}/erc20/index.cjs +1 -1
  32. package/lib/cjs/client/erc20/index.js.map +1 -0
  33. package/lib/cjs/client/fabric-fs.cjs +234 -0
  34. package/lib/cjs/client/fabric-fs.js.map +1 -0
  35. package/lib/cjs/client/fabric-hsm.cjs +165 -0
  36. package/lib/cjs/client/fabric-hsm.js.map +1 -0
  37. package/lib/cjs/client/ids/id-extraction.cjs +30 -0
  38. package/lib/cjs/client/ids/id-extraction.js.map +1 -0
  39. package/lib/{client → cjs/client}/ids/index.cjs +1 -1
  40. package/lib/cjs/client/ids/index.js.map +1 -0
  41. package/lib/{client → cjs/client}/index.cjs +1 -1
  42. package/lib/cjs/client/index.js.map +1 -0
  43. package/lib/cjs/client/indexes/generation.cjs +95 -0
  44. package/lib/cjs/client/indexes/generation.js.map +1 -0
  45. package/lib/{client/collections → cjs/client/indexes}/index.cjs +1 -1
  46. package/lib/cjs/client/indexes/index.js.map +1 -0
  47. package/lib/{esm/client/logging.d.ts → cjs/client/logging.cjs} +51 -9
  48. package/lib/cjs/client/logging.js.map +1 -0
  49. package/lib/cjs/client/services/FabricEnrollmentService.cjs +363 -0
  50. package/lib/cjs/client/services/FabricEnrollmentService.js.map +1 -0
  51. package/lib/cjs/client/services/FabricIdentityService.cjs +324 -0
  52. package/lib/cjs/client/services/FabricIdentityService.js.map +1 -0
  53. package/lib/cjs/client/services/RegistrationRequestBuilder.cjs +91 -0
  54. package/lib/cjs/client/services/RegistrationRequestBuilder.js.map +1 -0
  55. package/lib/{esm/client/services/constants.d.ts → cjs/client/services/constants.cjs} +10 -5
  56. package/lib/cjs/client/services/constants.js.map +1 -0
  57. package/lib/cjs/client/services/index.cjs +21 -0
  58. package/lib/cjs/client/services/index.js.map +1 -0
  59. package/lib/cjs/client/types.cjs +3 -0
  60. package/lib/cjs/client/types.js.map +1 -0
  61. package/lib/cjs/client/utils.cjs +262 -0
  62. package/lib/cjs/client/utils.js.map +1 -0
  63. package/lib/{contract → cjs/contract}/Address.cjs +1 -1
  64. package/lib/cjs/contract/Address.js.map +1 -0
  65. package/lib/{contract → cjs/contract}/AddressContract.cjs +1 -1
  66. package/lib/cjs/contract/AddressContract.js.map +1 -0
  67. package/lib/{contract → cjs/contract}/AuditContract.cjs +1 -1
  68. package/lib/cjs/contract/AuditContract.js.map +1 -0
  69. package/lib/{contract → cjs/contract}/BatchContract.cjs +1 -1
  70. package/lib/cjs/contract/BatchContract.js.map +1 -0
  71. package/lib/{contract → cjs/contract}/MarketContract.cjs +1 -1
  72. package/lib/cjs/contract/MarketContract.js.map +1 -0
  73. package/lib/{contract → cjs/contract}/OtherAuditContract.cjs +1 -1
  74. package/lib/cjs/contract/OtherAuditContract.js.map +1 -0
  75. package/lib/{contract → cjs/contract}/OtherBatchContract.cjs +1 -1
  76. package/lib/cjs/contract/OtherBatchContract.js.map +1 -0
  77. package/lib/{contract → cjs/contract}/OtherMarketContract.cjs +1 -1
  78. package/lib/cjs/contract/OtherMarketContract.js.map +1 -0
  79. package/lib/{contract → cjs/contract}/OtherProductContract.cjs +1 -1
  80. package/lib/cjs/contract/OtherProductContract.js.map +1 -0
  81. package/lib/{contract → cjs/contract}/OtherProductImageContract.cjs +1 -1
  82. package/lib/cjs/contract/OtherProductImageContract.js.map +1 -0
  83. package/lib/{contract → cjs/contract}/OtherProductSharedContract.cjs +1 -1
  84. package/lib/cjs/contract/OtherProductSharedContract.js.map +1 -0
  85. package/lib/{contract → cjs/contract}/OtherProductStrengthContract.cjs +1 -1
  86. package/lib/cjs/contract/OtherProductStrengthContract.js.map +1 -0
  87. package/lib/{contract → cjs/contract}/Product.cjs +1 -1
  88. package/lib/cjs/contract/Product.js.map +1 -0
  89. package/lib/{contract → cjs/contract}/ProductContract.cjs +1 -1
  90. package/lib/cjs/contract/ProductContract.js.map +1 -0
  91. package/lib/{contract → cjs/contract}/ProductStrengthContract.cjs +1 -1
  92. package/lib/cjs/contract/ProductStrengthContract.js.map +1 -0
  93. package/lib/{contract → cjs/contract}/SegregatedPrivateDocumentContract.cjs +1 -1
  94. package/lib/cjs/contract/SegregatedPrivateDocumentContract.js.map +1 -0
  95. package/lib/{contract → cjs/contract}/SegregatedSharedDocumentContract.cjs +1 -1
  96. package/lib/cjs/contract/SegregatedSharedDocumentContract.js.map +1 -0
  97. package/lib/{contract → cjs/contract}/User.cjs +1 -1
  98. package/lib/cjs/contract/User.js.map +1 -0
  99. package/lib/{contract → cjs/contract}/UserContract.cjs +1 -1
  100. package/lib/cjs/contract/UserContract.js.map +1 -0
  101. package/lib/cjs/contract/index.cjs +36 -0
  102. package/lib/cjs/contract/index.js.map +1 -0
  103. package/lib/cjs/contract/logging-context.cjs +77 -0
  104. package/lib/cjs/contract/logging-context.js.map +1 -0
  105. package/lib/cjs/contract/models/Audit.cjs +106 -0
  106. package/lib/cjs/contract/models/Audit.js.map +1 -0
  107. package/lib/{contract → cjs/contract}/models/BaseIdentifiedModel.cjs +1 -1
  108. package/lib/cjs/contract/models/BaseIdentifiedModel.js.map +1 -0
  109. package/lib/{contract → cjs/contract}/models/BaseModel.cjs +1 -1
  110. package/lib/cjs/contract/models/BaseModel.js.map +1 -0
  111. package/lib/cjs/contract/models/Batch.cjs +174 -0
  112. package/lib/cjs/contract/models/Batch.js.map +1 -0
  113. package/lib/cjs/contract/models/GtinOwner.cjs +59 -0
  114. package/lib/cjs/contract/models/GtinOwner.js.map +1 -0
  115. package/lib/cjs/contract/models/History.cjs +75 -0
  116. package/lib/cjs/contract/models/History.js.map +1 -0
  117. package/lib/cjs/contract/models/Leaflet.cjs +95 -0
  118. package/lib/cjs/contract/models/Leaflet.js.map +1 -0
  119. package/lib/cjs/contract/models/LeafletFile.cjs +58 -0
  120. package/lib/cjs/contract/models/LeafletFile.js.map +1 -0
  121. package/lib/cjs/contract/models/Market.cjs +75 -0
  122. package/lib/cjs/contract/models/Market.js.map +1 -0
  123. package/lib/cjs/contract/models/OtherAudit.cjs +118 -0
  124. package/lib/cjs/contract/models/OtherAudit.js.map +1 -0
  125. package/lib/cjs/contract/models/OtherBatchShared.cjs +127 -0
  126. package/lib/cjs/contract/models/OtherBatchShared.js.map +1 -0
  127. package/lib/cjs/contract/models/OtherLeaflet.cjs +115 -0
  128. package/lib/cjs/contract/models/OtherLeaflet.js.map +1 -0
  129. package/lib/cjs/contract/models/OtherLeafletFile.cjs +65 -0
  130. package/lib/cjs/contract/models/OtherLeafletFile.js.map +1 -0
  131. package/lib/cjs/contract/models/OtherMarket.cjs +84 -0
  132. package/lib/cjs/contract/models/OtherMarket.js.map +1 -0
  133. package/lib/cjs/contract/models/OtherProduct.cjs +77 -0
  134. package/lib/cjs/contract/models/OtherProduct.js.map +1 -0
  135. package/lib/cjs/contract/models/OtherProductImage.cjs +59 -0
  136. package/lib/cjs/contract/models/OtherProductImage.js.map +1 -0
  137. package/lib/cjs/contract/models/OtherProductShared.cjs +99 -0
  138. package/lib/cjs/contract/models/OtherProductShared.js.map +1 -0
  139. package/lib/cjs/contract/models/OtherProductStrength.cjs +87 -0
  140. package/lib/cjs/contract/models/OtherProductStrength.js.map +1 -0
  141. package/lib/cjs/contract/models/Product.cjs +78 -0
  142. package/lib/cjs/contract/models/Product.js.map +1 -0
  143. package/lib/cjs/contract/models/ProductStrength.cjs +78 -0
  144. package/lib/cjs/contract/models/ProductStrength.js.map +1 -0
  145. package/lib/{contract → cjs/contract}/models/SegregatedDocument.cjs +1 -1
  146. package/lib/cjs/contract/models/SegregatedDocument.js.map +1 -0
  147. package/lib/cjs/contract/models/constants.cjs +30 -0
  148. package/lib/cjs/contract/models/constants.js.map +1 -0
  149. package/lib/cjs/contract/models/decorators-private.cjs +158 -0
  150. package/lib/cjs/contract/models/decorators-private.js.map +1 -0
  151. package/lib/cjs/contract/models/decorators.cjs +182 -0
  152. package/lib/cjs/contract/models/decorators.js.map +1 -0
  153. package/lib/cjs/contract/models/gtin.cjs +88 -0
  154. package/lib/cjs/contract/models/gtin.js.map +1 -0
  155. package/lib/cjs/contract/models/history-dec.cjs +83 -0
  156. package/lib/cjs/contract/models/history-dec.js.map +1 -0
  157. package/lib/cjs/contracts/ContractAdapter.cjs +1193 -0
  158. package/lib/cjs/contracts/ContractAdapter.js.map +1 -0
  159. package/lib/cjs/contracts/ContractContext.cjs +157 -0
  160. package/lib/cjs/contracts/ContractContext.js.map +1 -0
  161. package/lib/cjs/contracts/FabricContractDispatch.cjs +79 -0
  162. package/lib/cjs/contracts/FabricContractDispatch.js.map +1 -0
  163. package/lib/{esm/contracts/FabricContractPaginator.d.ts → cjs/contracts/FabricContractPaginator.cjs} +77 -9
  164. package/lib/cjs/contracts/FabricContractPaginator.js.map +1 -0
  165. package/lib/cjs/contracts/FabricContractRepository.cjs +322 -0
  166. package/lib/cjs/contracts/FabricContractRepository.js.map +1 -0
  167. package/lib/{esm/contracts/FabricContractRepositoryObservableHandler.d.ts → cjs/contracts/FabricContractRepositoryObservableHandler.cjs} +42 -8
  168. package/lib/cjs/contracts/FabricContractRepositoryObservableHandler.js.map +1 -0
  169. package/lib/cjs/contracts/FabricContractSequence.cjs +338 -0
  170. package/lib/cjs/contracts/FabricContractSequence.js.map +1 -0
  171. package/lib/cjs/contracts/FabricContractStatement.cjs +180 -0
  172. package/lib/cjs/contracts/FabricContractStatement.js.map +1 -0
  173. package/lib/cjs/contracts/MigrationContract.cjs +147 -0
  174. package/lib/cjs/contracts/MigrationContract.js.map +1 -0
  175. package/lib/{contracts → cjs/contracts}/PrivateSequence.cjs +1 -1
  176. package/lib/cjs/contracts/PrivateSequence.js.map +1 -0
  177. package/lib/cjs/contracts/auth/decorators.cjs +84 -0
  178. package/lib/cjs/contracts/auth/decorators.js.map +1 -0
  179. package/lib/{contracts → cjs/contracts}/auth/index.cjs +1 -1
  180. package/lib/cjs/contracts/auth/index.js.map +1 -0
  181. package/lib/cjs/contracts/crud/crud-contract.cjs +416 -0
  182. package/lib/cjs/contracts/crud/crud-contract.js.map +1 -0
  183. package/lib/{contracts → cjs/contracts}/crud/index.cjs +1 -1
  184. package/lib/cjs/contracts/crud/index.js.map +1 -0
  185. package/lib/cjs/contracts/crud/serialized-crud-contract.cjs +284 -0
  186. package/lib/cjs/contracts/crud/serialized-crud-contract.js.map +1 -0
  187. package/lib/cjs/contracts/erc20/erc20contract.cjs +581 -0
  188. package/lib/cjs/contracts/erc20/erc20contract.js.map +1 -0
  189. package/lib/cjs/contracts/erc20/index.cjs +21 -0
  190. package/lib/cjs/contracts/erc20/index.js.map +1 -0
  191. package/lib/cjs/contracts/erc20/models.cjs +209 -0
  192. package/lib/cjs/contracts/erc20/models.js.map +1 -0
  193. package/lib/{contracts → cjs/contracts}/index.cjs +1 -1
  194. package/lib/cjs/contracts/index.js.map +1 -0
  195. package/lib/cjs/contracts/logging.cjs +118 -0
  196. package/lib/cjs/contracts/logging.js.map +1 -0
  197. package/lib/cjs/contracts/overrides.cjs +8 -0
  198. package/lib/cjs/contracts/overrides.js.map +1 -0
  199. package/lib/cjs/contracts/types.cjs +3 -0
  200. package/lib/cjs/contracts/types.js.map +1 -0
  201. package/lib/cjs/contracts/uuid.cjs +75 -0
  202. package/lib/cjs/contracts/uuid.js.map +1 -0
  203. package/lib/{index.cjs → cjs/index.cjs} +1 -1
  204. package/lib/cjs/index.js.map +1 -0
  205. package/lib/{shared/ClientSerializer.d.ts → cjs/shared/ClientSerializer.cjs} +35 -6
  206. package/lib/cjs/shared/ClientSerializer.js.map +1 -0
  207. package/lib/cjs/shared/DeterministicSerializer.cjs +106 -0
  208. package/lib/cjs/shared/DeterministicSerializer.js.map +1 -0
  209. package/lib/cjs/shared/SimpleDeterministicSerializer.cjs +69 -0
  210. package/lib/cjs/shared/SimpleDeterministicSerializer.js.map +1 -0
  211. package/lib/{shared/constants.d.ts → cjs/shared/constants.cjs} +18 -12
  212. package/lib/cjs/shared/constants.js.map +1 -0
  213. package/lib/cjs/shared/decorators.cjs +595 -0
  214. package/lib/cjs/shared/decorators.js.map +1 -0
  215. package/lib/{shared/erc20/erc20-constants.d.ts → cjs/shared/erc20/erc20-constants.cjs} +9 -4
  216. package/lib/cjs/shared/erc20/erc20-constants.js.map +1 -0
  217. package/lib/{shared → cjs/shared}/erc20/index.cjs +1 -1
  218. package/lib/cjs/shared/erc20/index.js.map +1 -0
  219. package/lib/cjs/shared/errors.cjs +190 -0
  220. package/lib/cjs/shared/errors.js.map +1 -0
  221. package/lib/{shared/events.d.ts → cjs/shared/events.cjs} +21 -7
  222. package/lib/cjs/shared/events.js.map +1 -0
  223. package/lib/cjs/shared/fabric-types.cjs +3 -0
  224. package/lib/cjs/shared/fabric-types.js.map +1 -0
  225. package/lib/{shared → cjs/shared}/index.cjs +1 -1
  226. package/lib/cjs/shared/index.js.map +1 -0
  227. package/lib/cjs/shared/interfaces/Checkable.cjs +3 -0
  228. package/lib/cjs/shared/interfaces/Checkable.js.map +1 -0
  229. package/lib/{shared → cjs/shared}/interfaces/index.cjs +1 -1
  230. package/lib/cjs/shared/interfaces/index.js.map +1 -0
  231. package/lib/cjs/shared/math.cjs +66 -0
  232. package/lib/cjs/shared/math.js.map +1 -0
  233. package/lib/{shared → cjs/shared}/model/FabricBaseModel.cjs +1 -1
  234. package/lib/cjs/shared/model/FabricBaseModel.js.map +1 -0
  235. package/lib/{shared → cjs/shared}/model/FabricIdentifiedBaseModel.cjs +1 -1
  236. package/lib/cjs/shared/model/FabricIdentifiedBaseModel.js.map +1 -0
  237. package/lib/cjs/shared/model/Identity.cjs +71 -0
  238. package/lib/cjs/shared/model/Identity.js.map +1 -0
  239. package/lib/cjs/shared/model/IdentityCredentials.cjs +66 -0
  240. package/lib/cjs/shared/model/IdentityCredentials.js.map +1 -0
  241. package/lib/cjs/shared/model/index.cjs +21 -0
  242. package/lib/cjs/shared/model/index.js.map +1 -0
  243. package/lib/cjs/shared/overrides/Model.cjs +4 -0
  244. package/lib/cjs/shared/overrides/Model.js.map +1 -0
  245. package/lib/{shared → cjs/shared}/overrides/index.cjs +1 -1
  246. package/lib/cjs/shared/overrides/index.js.map +1 -0
  247. package/lib/cjs/shared/overrides/overrides.cjs +93 -0
  248. package/lib/cjs/shared/overrides/overrides.js.map +1 -0
  249. package/lib/cjs/shared/types.cjs +3 -0
  250. package/lib/cjs/shared/types.js.map +1 -0
  251. package/lib/cjs/version.cjs +8 -0
  252. package/lib/cjs/version.js.map +1 -0
  253. package/lib/esm/bin/cli.js +1 -1
  254. package/lib/esm/bin/cli.js.map +1 -0
  255. package/lib/esm/cli-module.js +1 -1
  256. package/lib/esm/cli-module.js.map +1 -0
  257. package/lib/esm/cli-utils.js +1 -1
  258. package/lib/esm/cli-utils.js.map +1 -0
  259. package/lib/esm/client/FabricClientAdapter.js +1 -1
  260. package/lib/esm/client/FabricClientAdapter.js.map +1 -0
  261. package/lib/esm/client/FabricClientDispatch.js +1 -1
  262. package/lib/esm/client/FabricClientDispatch.js.map +1 -0
  263. package/lib/esm/client/FabricClientPaginator.js +1 -1
  264. package/lib/esm/client/FabricClientPaginator.js.map +1 -0
  265. package/lib/esm/client/FabricClientRepository.js +1 -1
  266. package/lib/esm/client/FabricClientRepository.js.map +1 -0
  267. package/lib/esm/client/FabricClientStatement.js +1 -1
  268. package/lib/esm/client/FabricClientStatement.js.map +1 -0
  269. package/lib/esm/client/collections/generation.js +1 -1
  270. package/lib/esm/client/collections/generation.js.map +1 -0
  271. package/lib/esm/client/collections/index.js +1 -1
  272. package/lib/esm/client/collections/index.js.map +1 -0
  273. package/lib/esm/client/constants.js +1 -1
  274. package/lib/esm/client/constants.js.map +1 -0
  275. package/lib/esm/client/crypto.js +1 -1
  276. package/lib/esm/client/crypto.js.map +1 -0
  277. package/lib/esm/client/erc20/FabricERC20ClientRepository.js +1 -1
  278. package/lib/esm/client/erc20/FabricERC20ClientRepository.js.map +1 -0
  279. package/lib/esm/client/erc20/index.js +1 -1
  280. package/lib/esm/client/erc20/index.js.map +1 -0
  281. package/lib/esm/client/fabric-fs.js +1 -1
  282. package/lib/esm/client/fabric-fs.js.map +1 -0
  283. package/lib/esm/client/fabric-hsm.js +1 -1
  284. package/lib/esm/client/fabric-hsm.js.map +1 -0
  285. package/lib/esm/client/ids/id-extraction.js +1 -1
  286. package/lib/esm/client/ids/id-extraction.js.map +1 -0
  287. package/lib/esm/client/ids/index.js +1 -1
  288. package/lib/esm/client/ids/index.js.map +1 -0
  289. package/lib/esm/client/index.js +1 -1
  290. package/lib/esm/client/index.js.map +1 -0
  291. package/lib/esm/client/indexes/generation.js +1 -1
  292. package/lib/esm/client/indexes/generation.js.map +1 -0
  293. package/lib/esm/client/indexes/index.js +1 -1
  294. package/lib/esm/client/indexes/index.js.map +1 -0
  295. package/lib/esm/client/logging.js +1 -1
  296. package/lib/esm/client/logging.js.map +1 -0
  297. package/lib/esm/client/services/FabricEnrollmentService.js +1 -1
  298. package/lib/esm/client/services/FabricEnrollmentService.js.map +1 -0
  299. package/lib/esm/client/services/FabricIdentityService.js +1 -1
  300. package/lib/esm/client/services/FabricIdentityService.js.map +1 -0
  301. package/lib/esm/client/services/RegistrationRequestBuilder.js +1 -1
  302. package/lib/esm/client/services/RegistrationRequestBuilder.js.map +1 -0
  303. package/lib/esm/client/services/constants.js +1 -1
  304. package/lib/esm/client/services/constants.js.map +1 -0
  305. package/lib/esm/client/services/index.js +1 -1
  306. package/lib/esm/client/services/index.js.map +1 -0
  307. package/lib/esm/client/types.js +1 -1
  308. package/lib/esm/client/types.js.map +1 -0
  309. package/lib/esm/client/utils.js +1 -1
  310. package/lib/esm/client/utils.js.map +1 -0
  311. package/lib/esm/contract/Address.js +1 -1
  312. package/lib/esm/contract/Address.js.map +1 -0
  313. package/lib/esm/contract/AddressContract.js +1 -1
  314. package/lib/esm/contract/AddressContract.js.map +1 -0
  315. package/lib/esm/contract/AuditContract.js +1 -1
  316. package/lib/esm/contract/AuditContract.js.map +1 -0
  317. package/lib/esm/contract/BatchContract.js +1 -1
  318. package/lib/esm/contract/BatchContract.js.map +1 -0
  319. package/lib/esm/contract/MarketContract.js +1 -1
  320. package/lib/esm/contract/MarketContract.js.map +1 -0
  321. package/lib/esm/contract/OtherAuditContract.js +1 -1
  322. package/lib/esm/contract/OtherAuditContract.js.map +1 -0
  323. package/lib/esm/contract/OtherBatchContract.js +1 -1
  324. package/lib/esm/contract/OtherBatchContract.js.map +1 -0
  325. package/lib/esm/contract/OtherMarketContract.js +1 -1
  326. package/lib/esm/contract/OtherMarketContract.js.map +1 -0
  327. package/lib/esm/contract/OtherProductContract.js +1 -1
  328. package/lib/esm/contract/OtherProductContract.js.map +1 -0
  329. package/lib/esm/contract/OtherProductImageContract.js +1 -1
  330. package/lib/esm/contract/OtherProductImageContract.js.map +1 -0
  331. package/lib/esm/contract/OtherProductSharedContract.js +1 -1
  332. package/lib/esm/contract/OtherProductSharedContract.js.map +1 -0
  333. package/lib/esm/contract/OtherProductStrengthContract.js +1 -1
  334. package/lib/esm/contract/OtherProductStrengthContract.js.map +1 -0
  335. package/lib/esm/contract/Product.js +1 -1
  336. package/lib/esm/contract/Product.js.map +1 -0
  337. package/lib/esm/contract/ProductContract.js +1 -1
  338. package/lib/esm/contract/ProductContract.js.map +1 -0
  339. package/lib/esm/contract/ProductStrengthContract.js +1 -1
  340. package/lib/esm/contract/ProductStrengthContract.js.map +1 -0
  341. package/lib/esm/contract/SegregatedPrivateDocumentContract.js +1 -1
  342. package/lib/esm/contract/SegregatedPrivateDocumentContract.js.map +1 -0
  343. package/lib/esm/contract/SegregatedSharedDocumentContract.js +1 -1
  344. package/lib/esm/contract/SegregatedSharedDocumentContract.js.map +1 -0
  345. package/lib/esm/contract/User.js +1 -1
  346. package/lib/esm/contract/User.js.map +1 -0
  347. package/lib/esm/contract/UserContract.js +1 -1
  348. package/lib/esm/contract/UserContract.js.map +1 -0
  349. package/lib/esm/contract/index.js +1 -1
  350. package/lib/esm/contract/index.js.map +1 -0
  351. package/lib/esm/contract/logging-context.js +1 -1
  352. package/lib/esm/contract/logging-context.js.map +1 -0
  353. package/lib/esm/contract/models/Audit.js +1 -1
  354. package/lib/esm/contract/models/Audit.js.map +1 -0
  355. package/lib/esm/contract/models/BaseIdentifiedModel.js +1 -1
  356. package/lib/esm/contract/models/BaseIdentifiedModel.js.map +1 -0
  357. package/lib/esm/contract/models/BaseModel.js +1 -1
  358. package/lib/esm/contract/models/BaseModel.js.map +1 -0
  359. package/lib/esm/contract/models/Batch.js +1 -1
  360. package/lib/esm/contract/models/Batch.js.map +1 -0
  361. package/lib/esm/contract/models/GtinOwner.js +1 -1
  362. package/lib/esm/contract/models/GtinOwner.js.map +1 -0
  363. package/lib/esm/contract/models/History.js +1 -1
  364. package/lib/esm/contract/models/History.js.map +1 -0
  365. package/lib/esm/contract/models/Leaflet.js +1 -1
  366. package/lib/esm/contract/models/Leaflet.js.map +1 -0
  367. package/lib/esm/contract/models/LeafletFile.js +1 -1
  368. package/lib/esm/contract/models/LeafletFile.js.map +1 -0
  369. package/lib/esm/contract/models/Market.js +1 -1
  370. package/lib/esm/contract/models/Market.js.map +1 -0
  371. package/lib/esm/contract/models/OtherAudit.js +1 -1
  372. package/lib/esm/contract/models/OtherAudit.js.map +1 -0
  373. package/lib/esm/contract/models/OtherBatchShared.js +1 -1
  374. package/lib/esm/contract/models/OtherBatchShared.js.map +1 -0
  375. package/lib/esm/contract/models/OtherLeaflet.js +1 -1
  376. package/lib/esm/contract/models/OtherLeaflet.js.map +1 -0
  377. package/lib/esm/contract/models/OtherLeafletFile.js +1 -1
  378. package/lib/esm/contract/models/OtherLeafletFile.js.map +1 -0
  379. package/lib/esm/contract/models/OtherMarket.js +1 -1
  380. package/lib/esm/contract/models/OtherMarket.js.map +1 -0
  381. package/lib/esm/contract/models/OtherProduct.js +1 -1
  382. package/lib/esm/contract/models/OtherProduct.js.map +1 -0
  383. package/lib/esm/contract/models/OtherProductImage.js +1 -1
  384. package/lib/esm/contract/models/OtherProductImage.js.map +1 -0
  385. package/lib/esm/contract/models/OtherProductShared.js +1 -1
  386. package/lib/esm/contract/models/OtherProductShared.js.map +1 -0
  387. package/lib/esm/contract/models/OtherProductStrength.js +1 -1
  388. package/lib/esm/contract/models/OtherProductStrength.js.map +1 -0
  389. package/lib/esm/contract/models/Product.js +1 -1
  390. package/lib/esm/contract/models/Product.js.map +1 -0
  391. package/lib/esm/contract/models/ProductStrength.js +1 -1
  392. package/lib/esm/contract/models/ProductStrength.js.map +1 -0
  393. package/lib/esm/contract/models/SegregatedDocument.js +1 -1
  394. package/lib/esm/contract/models/SegregatedDocument.js.map +1 -0
  395. package/lib/esm/contract/models/constants.js +1 -1
  396. package/lib/esm/contract/models/constants.js.map +1 -0
  397. package/lib/esm/contract/models/decorators-private.js +1 -1
  398. package/lib/esm/contract/models/decorators-private.js.map +1 -0
  399. package/lib/esm/contract/models/decorators.js +1 -1
  400. package/lib/esm/contract/models/decorators.js.map +1 -0
  401. package/lib/esm/contract/models/gtin.js +1 -1
  402. package/lib/esm/contract/models/gtin.js.map +1 -0
  403. package/lib/esm/contract/models/history-dec.js +1 -1
  404. package/lib/esm/contract/models/history-dec.js.map +1 -0
  405. package/lib/esm/contracts/ContractAdapter.js +1 -1
  406. package/lib/esm/contracts/ContractAdapter.js.map +1 -0
  407. package/lib/esm/contracts/ContractContext.js +1 -1
  408. package/lib/esm/contracts/ContractContext.js.map +1 -0
  409. package/lib/esm/contracts/FabricContractDispatch.js +1 -1
  410. package/lib/esm/contracts/FabricContractDispatch.js.map +1 -0
  411. package/lib/esm/contracts/FabricContractPaginator.js +1 -1
  412. package/lib/esm/contracts/FabricContractPaginator.js.map +1 -0
  413. package/lib/esm/contracts/FabricContractRepository.js +1 -1
  414. package/lib/esm/contracts/FabricContractRepository.js.map +1 -0
  415. package/lib/esm/contracts/FabricContractRepositoryObservableHandler.js +1 -1
  416. package/lib/esm/contracts/FabricContractRepositoryObservableHandler.js.map +1 -0
  417. package/lib/esm/contracts/FabricContractSequence.js +1 -1
  418. package/lib/esm/contracts/FabricContractSequence.js.map +1 -0
  419. package/lib/esm/contracts/FabricContractStatement.js +1 -1
  420. package/lib/esm/contracts/FabricContractStatement.js.map +1 -0
  421. package/lib/esm/contracts/MigrationContract.js +1 -1
  422. package/lib/esm/contracts/MigrationContract.js.map +1 -0
  423. package/lib/esm/contracts/PrivateSequence.js +1 -1
  424. package/lib/esm/contracts/PrivateSequence.js.map +1 -0
  425. package/lib/esm/contracts/auth/decorators.js +1 -1
  426. package/lib/esm/contracts/auth/decorators.js.map +1 -0
  427. package/lib/esm/contracts/auth/index.js +1 -1
  428. package/lib/esm/contracts/auth/index.js.map +1 -0
  429. package/lib/esm/contracts/crud/crud-contract.js +1 -1
  430. package/lib/esm/contracts/crud/crud-contract.js.map +1 -0
  431. package/lib/esm/contracts/crud/index.js +1 -1
  432. package/lib/esm/contracts/crud/index.js.map +1 -0
  433. package/lib/esm/contracts/crud/serialized-crud-contract.js +1 -1
  434. package/lib/esm/contracts/crud/serialized-crud-contract.js.map +1 -0
  435. package/lib/esm/contracts/erc20/erc20contract.js +1 -1
  436. package/lib/esm/contracts/erc20/erc20contract.js.map +1 -0
  437. package/lib/esm/contracts/erc20/index.js +1 -1
  438. package/lib/esm/contracts/erc20/index.js.map +1 -0
  439. package/lib/esm/contracts/erc20/models.js +1 -1
  440. package/lib/esm/contracts/erc20/models.js.map +1 -0
  441. package/lib/esm/contracts/index.js +1 -1
  442. package/lib/esm/contracts/index.js.map +1 -0
  443. package/lib/esm/contracts/logging.js +1 -1
  444. package/lib/esm/contracts/logging.js.map +1 -0
  445. package/lib/esm/contracts/overrides.js +1 -1
  446. package/lib/esm/contracts/overrides.js.map +1 -0
  447. package/lib/esm/contracts/types.js +1 -1
  448. package/lib/esm/contracts/types.js.map +1 -0
  449. package/lib/esm/contracts/uuid.js +1 -1
  450. package/lib/esm/contracts/uuid.js.map +1 -0
  451. package/lib/esm/index.js +1 -1
  452. package/lib/esm/index.js.map +1 -0
  453. package/lib/esm/shared/ClientSerializer.js +1 -1
  454. package/lib/esm/shared/ClientSerializer.js.map +1 -0
  455. package/lib/esm/shared/DeterministicSerializer.js +1 -1
  456. package/lib/esm/shared/DeterministicSerializer.js.map +1 -0
  457. package/lib/esm/shared/SimpleDeterministicSerializer.js +1 -1
  458. package/lib/esm/shared/SimpleDeterministicSerializer.js.map +1 -0
  459. package/lib/esm/shared/constants.js +1 -1
  460. package/lib/esm/shared/constants.js.map +1 -0
  461. package/lib/esm/shared/decorators.js +1 -1
  462. package/lib/esm/shared/decorators.js.map +1 -0
  463. package/lib/esm/shared/erc20/erc20-constants.js +1 -1
  464. package/lib/esm/shared/erc20/erc20-constants.js.map +1 -0
  465. package/lib/esm/shared/erc20/index.js +1 -1
  466. package/lib/esm/shared/erc20/index.js.map +1 -0
  467. package/lib/esm/shared/errors.js +1 -1
  468. package/lib/esm/shared/errors.js.map +1 -0
  469. package/lib/esm/shared/events.js +1 -1
  470. package/lib/esm/shared/events.js.map +1 -0
  471. package/lib/esm/shared/fabric-types.js +1 -1
  472. package/lib/esm/shared/fabric-types.js.map +1 -0
  473. package/lib/esm/shared/index.js +1 -1
  474. package/lib/esm/shared/index.js.map +1 -0
  475. package/lib/esm/shared/interfaces/Checkable.js +1 -1
  476. package/lib/esm/shared/interfaces/Checkable.js.map +1 -0
  477. package/lib/esm/shared/interfaces/index.js +1 -1
  478. package/lib/esm/shared/interfaces/index.js.map +1 -0
  479. package/lib/esm/shared/math.js +1 -1
  480. package/lib/esm/shared/math.js.map +1 -0
  481. package/lib/esm/shared/model/FabricBaseModel.js +1 -1
  482. package/lib/esm/shared/model/FabricBaseModel.js.map +1 -0
  483. package/lib/esm/shared/model/FabricIdentifiedBaseModel.js +1 -1
  484. package/lib/esm/shared/model/FabricIdentifiedBaseModel.js.map +1 -0
  485. package/lib/esm/shared/model/Identity.js +1 -1
  486. package/lib/esm/shared/model/Identity.js.map +1 -0
  487. package/lib/esm/shared/model/IdentityCredentials.js +1 -1
  488. package/lib/esm/shared/model/IdentityCredentials.js.map +1 -0
  489. package/lib/esm/shared/model/index.js +1 -1
  490. package/lib/esm/shared/model/index.js.map +1 -0
  491. package/lib/esm/shared/overrides/Model.js +1 -1
  492. package/lib/esm/shared/overrides/Model.js.map +1 -0
  493. package/lib/esm/shared/overrides/index.js +1 -1
  494. package/lib/esm/shared/overrides/index.js.map +1 -0
  495. package/lib/esm/shared/overrides/overrides.js +1 -1
  496. package/lib/esm/shared/overrides/overrides.js.map +1 -0
  497. package/lib/esm/shared/types.js +1 -1
  498. package/lib/esm/shared/types.js.map +1 -0
  499. package/lib/esm/version.js +2 -2
  500. package/lib/esm/version.js.map +1 -0
  501. package/lib/{esm → types}/version.d.ts +1 -1
  502. package/package.json +22 -18
  503. package/lib/bin/cli.cjs +0 -9
  504. package/lib/cli-module.cjs +0 -479
  505. package/lib/cli-utils.cjs +0 -309
  506. package/lib/client/FabricClientAdapter.cjs +0 -1362
  507. package/lib/client/FabricClientDispatch.cjs +0 -290
  508. package/lib/client/FabricClientPaginator.cjs +0 -21
  509. package/lib/client/FabricClientRepository.cjs +0 -259
  510. package/lib/client/FabricClientStatement.cjs +0 -451
  511. package/lib/client/collections/generation.cjs +0 -113
  512. package/lib/client/constants.cjs +0 -16
  513. package/lib/client/crypto.cjs +0 -368
  514. package/lib/client/erc20/FabricERC20ClientRepository.cjs +0 -363
  515. package/lib/client/fabric-fs.cjs +0 -234
  516. package/lib/client/fabric-hsm.cjs +0 -165
  517. package/lib/client/ids/id-extraction.cjs +0 -30
  518. package/lib/client/indexes/generation.cjs +0 -95
  519. package/lib/client/logging.cjs +0 -102
  520. package/lib/client/services/FabricEnrollmentService.cjs +0 -363
  521. package/lib/client/services/FabricIdentityService.cjs +0 -324
  522. package/lib/client/services/RegistrationRequestBuilder.cjs +0 -91
  523. package/lib/client/services/constants.cjs +0 -20
  524. package/lib/client/services/index.cjs +0 -21
  525. package/lib/client/types.cjs +0 -3
  526. package/lib/client/utils.cjs +0 -262
  527. package/lib/contract/index.cjs +0 -36
  528. package/lib/contract/logging-context.cjs +0 -77
  529. package/lib/contract/models/Audit.cjs +0 -106
  530. package/lib/contract/models/Batch.cjs +0 -174
  531. package/lib/contract/models/GtinOwner.cjs +0 -59
  532. package/lib/contract/models/History.cjs +0 -75
  533. package/lib/contract/models/Leaflet.cjs +0 -95
  534. package/lib/contract/models/LeafletFile.cjs +0 -58
  535. package/lib/contract/models/Market.cjs +0 -75
  536. package/lib/contract/models/OtherAudit.cjs +0 -118
  537. package/lib/contract/models/OtherBatchShared.cjs +0 -127
  538. package/lib/contract/models/OtherLeaflet.cjs +0 -115
  539. package/lib/contract/models/OtherLeafletFile.cjs +0 -65
  540. package/lib/contract/models/OtherMarket.cjs +0 -84
  541. package/lib/contract/models/OtherProduct.cjs +0 -77
  542. package/lib/contract/models/OtherProductImage.cjs +0 -59
  543. package/lib/contract/models/OtherProductShared.cjs +0 -99
  544. package/lib/contract/models/OtherProductStrength.cjs +0 -87
  545. package/lib/contract/models/Product.cjs +0 -78
  546. package/lib/contract/models/ProductStrength.cjs +0 -78
  547. package/lib/contract/models/constants.cjs +0 -30
  548. package/lib/contract/models/decorators-private.cjs +0 -158
  549. package/lib/contract/models/decorators.cjs +0 -182
  550. package/lib/contract/models/gtin.cjs +0 -88
  551. package/lib/contract/models/history-dec.cjs +0 -83
  552. package/lib/contracts/ContractAdapter.cjs +0 -1193
  553. package/lib/contracts/ContractContext.cjs +0 -157
  554. package/lib/contracts/FabricContractDispatch.cjs +0 -79
  555. package/lib/contracts/FabricContractPaginator.cjs +0 -173
  556. package/lib/contracts/FabricContractRepository.cjs +0 -322
  557. package/lib/contracts/FabricContractRepositoryObservableHandler.cjs +0 -96
  558. package/lib/contracts/FabricContractSequence.cjs +0 -338
  559. package/lib/contracts/FabricContractStatement.cjs +0 -180
  560. package/lib/contracts/MigrationContract.cjs +0 -147
  561. package/lib/contracts/auth/decorators.cjs +0 -84
  562. package/lib/contracts/crud/crud-contract.cjs +0 -416
  563. package/lib/contracts/crud/serialized-crud-contract.cjs +0 -284
  564. package/lib/contracts/erc20/erc20contract.cjs +0 -581
  565. package/lib/contracts/erc20/index.cjs +0 -21
  566. package/lib/contracts/erc20/models.cjs +0 -209
  567. package/lib/contracts/logging.cjs +0 -118
  568. package/lib/contracts/overrides.cjs +0 -8
  569. package/lib/contracts/types.cjs +0 -3
  570. package/lib/contracts/uuid.cjs +0 -75
  571. package/lib/esm/bin/cli.d.ts +0 -1
  572. package/lib/esm/cli-module.d.ts +0 -3
  573. package/lib/esm/cli-utils.d.ts +0 -21
  574. package/lib/esm/client/FabricClientAdapter.d.ts +0 -404
  575. package/lib/esm/client/FabricClientDispatch.d.ts +0 -133
  576. package/lib/esm/client/FabricClientPaginator.d.ts +0 -12
  577. package/lib/esm/client/FabricClientRepository.d.ts +0 -71
  578. package/lib/esm/client/FabricClientStatement.d.ts +0 -64
  579. package/lib/esm/client/collections/generation.d.ts +0 -46
  580. package/lib/esm/client/collections/index.d.ts +0 -1
  581. package/lib/esm/client/constants.d.ts +0 -2
  582. package/lib/esm/client/crypto.d.ts +0 -107
  583. package/lib/esm/client/erc20/index.d.ts +0 -1
  584. package/lib/esm/client/fabric-fs.d.ts +0 -92
  585. package/lib/esm/client/fabric-hsm.d.ts +0 -24
  586. package/lib/esm/client/ids/id-extraction.d.ts +0 -4
  587. package/lib/esm/client/ids/index.d.ts +0 -1
  588. package/lib/esm/client/index.d.ts +0 -23
  589. package/lib/esm/client/indexes/generation.d.ts +0 -10
  590. package/lib/esm/client/indexes/index.d.ts +0 -1
  591. package/lib/esm/client/services/FabricEnrollmentService.d.ts +0 -176
  592. package/lib/esm/client/services/FabricIdentityService.d.ts +0 -98
  593. package/lib/esm/client/services/RegistrationRequestBuilder.d.ts +0 -19
  594. package/lib/esm/client/services/index.d.ts +0 -4
  595. package/lib/esm/client/types.d.ts +0 -20
  596. package/lib/esm/client/utils.d.ts +0 -71
  597. package/lib/esm/contract/Address.d.ts +0 -13
  598. package/lib/esm/contract/AddressContract.d.ts +0 -5
  599. package/lib/esm/contract/AuditContract.d.ts +0 -5
  600. package/lib/esm/contract/BatchContract.d.ts +0 -5
  601. package/lib/esm/contract/MarketContract.d.ts +0 -5
  602. package/lib/esm/contract/OtherAuditContract.d.ts +0 -5
  603. package/lib/esm/contract/OtherBatchContract.d.ts +0 -5
  604. package/lib/esm/contract/OtherMarketContract.d.ts +0 -5
  605. package/lib/esm/contract/OtherProductContract.d.ts +0 -5
  606. package/lib/esm/contract/OtherProductImageContract.d.ts +0 -5
  607. package/lib/esm/contract/OtherProductSharedContract.d.ts +0 -5
  608. package/lib/esm/contract/OtherProductStrengthContract.d.ts +0 -5
  609. package/lib/esm/contract/Product.d.ts +0 -7
  610. package/lib/esm/contract/ProductContract.d.ts +0 -5
  611. package/lib/esm/contract/ProductStrengthContract.d.ts +0 -5
  612. package/lib/esm/contract/SegregatedPrivateDocumentContract.d.ts +0 -5
  613. package/lib/esm/contract/SegregatedSharedDocumentContract.d.ts +0 -5
  614. package/lib/esm/contract/User.d.ts +0 -7
  615. package/lib/esm/contract/UserContract.d.ts +0 -5
  616. package/lib/esm/contract/index.d.ts +0 -2
  617. package/lib/esm/contract/logging-context.d.ts +0 -8
  618. package/lib/esm/contract/models/Audit.d.ts +0 -13
  619. package/lib/esm/contract/models/BaseIdentifiedModel.d.ts +0 -7
  620. package/lib/esm/contract/models/BaseModel.d.ts +0 -7
  621. package/lib/esm/contract/models/Batch.d.ts +0 -18
  622. package/lib/esm/contract/models/GtinOwner.d.ts +0 -8
  623. package/lib/esm/contract/models/History.d.ts +0 -9
  624. package/lib/esm/contract/models/Leaflet.d.ts +0 -12
  625. package/lib/esm/contract/models/LeafletFile.d.ts +0 -9
  626. package/lib/esm/contract/models/Market.d.ts +0 -12
  627. package/lib/esm/contract/models/OtherAudit.d.ts +0 -15
  628. package/lib/esm/contract/models/OtherBatchShared.d.ts +0 -18
  629. package/lib/esm/contract/models/OtherLeaflet.d.ts +0 -16
  630. package/lib/esm/contract/models/OtherLeafletFile.d.ts +0 -10
  631. package/lib/esm/contract/models/OtherMarket.d.ts +0 -13
  632. package/lib/esm/contract/models/OtherProduct.d.ts +0 -12
  633. package/lib/esm/contract/models/OtherProductImage.d.ts +0 -9
  634. package/lib/esm/contract/models/OtherProductShared.d.ts +0 -18
  635. package/lib/esm/contract/models/OtherProductStrength.d.ts +0 -12
  636. package/lib/esm/contract/models/Product.d.ts +0 -15
  637. package/lib/esm/contract/models/ProductStrength.d.ts +0 -11
  638. package/lib/esm/contract/models/SegregatedDocument.d.ts +0 -18
  639. package/lib/esm/contract/models/constants.d.ts +0 -24
  640. package/lib/esm/contract/models/decorators-private.d.ts +0 -16
  641. package/lib/esm/contract/models/decorators.d.ts +0 -28
  642. package/lib/esm/contract/models/gtin.d.ts +0 -8
  643. package/lib/esm/contract/models/history-dec.d.ts +0 -6
  644. package/lib/esm/contracts/ContractAdapter.d.ts +0 -287
  645. package/lib/esm/contracts/ContractContext.d.ts +0 -89
  646. package/lib/esm/contracts/FabricContractDispatch.d.ts +0 -7
  647. package/lib/esm/contracts/FabricContractRepository.d.ts +0 -119
  648. package/lib/esm/contracts/FabricContractSequence.d.ts +0 -87
  649. package/lib/esm/contracts/FabricContractStatement.d.ts +0 -36
  650. package/lib/esm/contracts/MigrationContract.d.ts +0 -22
  651. package/lib/esm/contracts/PrivateSequence.d.ts +0 -15
  652. package/lib/esm/contracts/auth/decorators.d.ts +0 -6
  653. package/lib/esm/contracts/auth/index.d.ts +0 -1
  654. package/lib/esm/contracts/crud/crud-contract.d.ts +0 -199
  655. package/lib/esm/contracts/crud/index.d.ts +0 -2
  656. package/lib/esm/contracts/crud/serialized-crud-contract.d.ts +0 -42
  657. package/lib/esm/contracts/erc20/erc20contract.d.ts +0 -152
  658. package/lib/esm/contracts/erc20/index.d.ts +0 -2
  659. package/lib/esm/contracts/erc20/models.d.ts +0 -114
  660. package/lib/esm/contracts/index.d.ts +0 -19
  661. package/lib/esm/contracts/logging.d.ts +0 -54
  662. package/lib/esm/contracts/types.d.ts +0 -38
  663. package/lib/esm/contracts/uuid.d.ts +0 -2
  664. package/lib/esm/shared/overrides/overrides.d.ts +0 -1
  665. package/lib/index.d.ts +0 -8
  666. package/lib/shared/ClientSerializer.cjs +0 -81
  667. package/lib/shared/DeterministicSerializer.cjs +0 -106
  668. package/lib/shared/DeterministicSerializer.d.ts +0 -47
  669. package/lib/shared/SimpleDeterministicSerializer.cjs +0 -69
  670. package/lib/shared/SimpleDeterministicSerializer.d.ts +0 -7
  671. package/lib/shared/constants.cjs +0 -41
  672. package/lib/shared/decorators.cjs +0 -595
  673. package/lib/shared/decorators.d.ts +0 -81
  674. package/lib/shared/erc20/erc20-constants.cjs +0 -30
  675. package/lib/shared/erc20/index.d.ts +0 -1
  676. package/lib/shared/errors.cjs +0 -190
  677. package/lib/shared/errors.d.ts +0 -140
  678. package/lib/shared/events.cjs +0 -51
  679. package/lib/shared/fabric-types.cjs +0 -3
  680. package/lib/shared/fabric-types.d.ts +0 -32
  681. package/lib/shared/index.d.ts +0 -20
  682. package/lib/shared/interfaces/Checkable.cjs +0 -3
  683. package/lib/shared/interfaces/Checkable.d.ts +0 -23
  684. package/lib/shared/interfaces/index.d.ts +0 -1
  685. package/lib/shared/math.cjs +0 -66
  686. package/lib/shared/math.d.ts +0 -34
  687. package/lib/shared/model/FabricBaseModel.d.ts +0 -7
  688. package/lib/shared/model/FabricIdentifiedBaseModel.d.ts +0 -7
  689. package/lib/shared/model/Identity.cjs +0 -71
  690. package/lib/shared/model/Identity.d.ts +0 -42
  691. package/lib/shared/model/IdentityCredentials.cjs +0 -66
  692. package/lib/shared/model/IdentityCredentials.d.ts +0 -41
  693. package/lib/shared/model/index.cjs +0 -21
  694. package/lib/shared/model/index.d.ts +0 -4
  695. package/lib/shared/overrides/Model.cjs +0 -4
  696. package/lib/shared/overrides/Model.d.ts +0 -22
  697. package/lib/shared/overrides/index.d.ts +0 -2
  698. package/lib/shared/overrides/overrides.cjs +0 -93
  699. package/lib/shared/overrides/overrides.d.ts +0 -1
  700. package/lib/shared/types.cjs +0 -3
  701. package/lib/shared/types.d.ts +0 -125
  702. package/lib/version.cjs +0 -8
  703. package/lib/version.d.ts +0 -2
  704. /package/lib/{bin → types/bin}/cli.d.ts +0 -0
  705. /package/lib/{cli-module.d.ts → types/cli-module.d.ts} +0 -0
  706. /package/lib/{cli-utils.d.ts → types/cli-utils.d.ts} +0 -0
  707. /package/lib/{client → types/client}/FabricClientAdapter.d.ts +0 -0
  708. /package/lib/{client → types/client}/FabricClientDispatch.d.ts +0 -0
  709. /package/lib/{client → types/client}/FabricClientPaginator.d.ts +0 -0
  710. /package/lib/{client → types/client}/FabricClientRepository.d.ts +0 -0
  711. /package/lib/{client → types/client}/FabricClientStatement.d.ts +0 -0
  712. /package/lib/{client → types/client}/collections/generation.d.ts +0 -0
  713. /package/lib/{client → types/client}/collections/index.d.ts +0 -0
  714. /package/lib/{client → types/client}/constants.d.ts +0 -0
  715. /package/lib/{client → types/client}/crypto.d.ts +0 -0
  716. /package/lib/{client → types/client}/erc20/FabricERC20ClientRepository.d.ts +0 -0
  717. /package/lib/{client → types/client}/erc20/index.d.ts +0 -0
  718. /package/lib/{client → types/client}/fabric-fs.d.ts +0 -0
  719. /package/lib/{client → types/client}/fabric-hsm.d.ts +0 -0
  720. /package/lib/{client → types/client}/ids/id-extraction.d.ts +0 -0
  721. /package/lib/{client → types/client}/ids/index.d.ts +0 -0
  722. /package/lib/{client → types/client}/index.d.ts +0 -0
  723. /package/lib/{client → types/client}/indexes/generation.d.ts +0 -0
  724. /package/lib/{client → types/client}/indexes/index.d.ts +0 -0
  725. /package/lib/{client → types/client}/logging.d.ts +0 -0
  726. /package/lib/{client → types/client}/services/FabricEnrollmentService.d.ts +0 -0
  727. /package/lib/{client → types/client}/services/FabricIdentityService.d.ts +0 -0
  728. /package/lib/{client → types/client}/services/RegistrationRequestBuilder.d.ts +0 -0
  729. /package/lib/{client → types/client}/services/constants.d.ts +0 -0
  730. /package/lib/{client → types/client}/services/index.d.ts +0 -0
  731. /package/lib/{client → types/client}/types.d.ts +0 -0
  732. /package/lib/{client → types/client}/utils.d.ts +0 -0
  733. /package/lib/{contract → types/contract}/Address.d.ts +0 -0
  734. /package/lib/{contract → types/contract}/AddressContract.d.ts +0 -0
  735. /package/lib/{contract → types/contract}/AuditContract.d.ts +0 -0
  736. /package/lib/{contract → types/contract}/BatchContract.d.ts +0 -0
  737. /package/lib/{contract → types/contract}/MarketContract.d.ts +0 -0
  738. /package/lib/{contract → types/contract}/OtherAuditContract.d.ts +0 -0
  739. /package/lib/{contract → types/contract}/OtherBatchContract.d.ts +0 -0
  740. /package/lib/{contract → types/contract}/OtherMarketContract.d.ts +0 -0
  741. /package/lib/{contract → types/contract}/OtherProductContract.d.ts +0 -0
  742. /package/lib/{contract → types/contract}/OtherProductImageContract.d.ts +0 -0
  743. /package/lib/{contract → types/contract}/OtherProductSharedContract.d.ts +0 -0
  744. /package/lib/{contract → types/contract}/OtherProductStrengthContract.d.ts +0 -0
  745. /package/lib/{contract → types/contract}/Product.d.ts +0 -0
  746. /package/lib/{contract → types/contract}/ProductContract.d.ts +0 -0
  747. /package/lib/{contract → types/contract}/ProductStrengthContract.d.ts +0 -0
  748. /package/lib/{contract → types/contract}/SegregatedPrivateDocumentContract.d.ts +0 -0
  749. /package/lib/{contract → types/contract}/SegregatedSharedDocumentContract.d.ts +0 -0
  750. /package/lib/{contract → types/contract}/User.d.ts +0 -0
  751. /package/lib/{contract → types/contract}/UserContract.d.ts +0 -0
  752. /package/lib/{contract → types/contract}/index.d.ts +0 -0
  753. /package/lib/{contract → types/contract}/logging-context.d.ts +0 -0
  754. /package/lib/{contract → types/contract}/models/Audit.d.ts +0 -0
  755. /package/lib/{contract → types/contract}/models/BaseIdentifiedModel.d.ts +0 -0
  756. /package/lib/{contract → types/contract}/models/BaseModel.d.ts +0 -0
  757. /package/lib/{contract → types/contract}/models/Batch.d.ts +0 -0
  758. /package/lib/{contract → types/contract}/models/GtinOwner.d.ts +0 -0
  759. /package/lib/{contract → types/contract}/models/History.d.ts +0 -0
  760. /package/lib/{contract → types/contract}/models/Leaflet.d.ts +0 -0
  761. /package/lib/{contract → types/contract}/models/LeafletFile.d.ts +0 -0
  762. /package/lib/{contract → types/contract}/models/Market.d.ts +0 -0
  763. /package/lib/{contract → types/contract}/models/OtherAudit.d.ts +0 -0
  764. /package/lib/{contract → types/contract}/models/OtherBatchShared.d.ts +0 -0
  765. /package/lib/{contract → types/contract}/models/OtherLeaflet.d.ts +0 -0
  766. /package/lib/{contract → types/contract}/models/OtherLeafletFile.d.ts +0 -0
  767. /package/lib/{contract → types/contract}/models/OtherMarket.d.ts +0 -0
  768. /package/lib/{contract → types/contract}/models/OtherProduct.d.ts +0 -0
  769. /package/lib/{contract → types/contract}/models/OtherProductImage.d.ts +0 -0
  770. /package/lib/{contract → types/contract}/models/OtherProductShared.d.ts +0 -0
  771. /package/lib/{contract → types/contract}/models/OtherProductStrength.d.ts +0 -0
  772. /package/lib/{contract → types/contract}/models/Product.d.ts +0 -0
  773. /package/lib/{contract → types/contract}/models/ProductStrength.d.ts +0 -0
  774. /package/lib/{contract → types/contract}/models/SegregatedDocument.d.ts +0 -0
  775. /package/lib/{contract → types/contract}/models/constants.d.ts +0 -0
  776. /package/lib/{contract → types/contract}/models/decorators-private.d.ts +0 -0
  777. /package/lib/{contract → types/contract}/models/decorators.d.ts +0 -0
  778. /package/lib/{contract → types/contract}/models/gtin.d.ts +0 -0
  779. /package/lib/{contract → types/contract}/models/history-dec.d.ts +0 -0
  780. /package/lib/{contracts → types/contracts}/ContractAdapter.d.ts +0 -0
  781. /package/lib/{contracts → types/contracts}/ContractContext.d.ts +0 -0
  782. /package/lib/{contracts → types/contracts}/FabricContractDispatch.d.ts +0 -0
  783. /package/lib/{contracts → types/contracts}/FabricContractPaginator.d.ts +0 -0
  784. /package/lib/{contracts → types/contracts}/FabricContractRepository.d.ts +0 -0
  785. /package/lib/{contracts → types/contracts}/FabricContractRepositoryObservableHandler.d.ts +0 -0
  786. /package/lib/{contracts → types/contracts}/FabricContractSequence.d.ts +0 -0
  787. /package/lib/{contracts → types/contracts}/FabricContractStatement.d.ts +0 -0
  788. /package/lib/{contracts → types/contracts}/MigrationContract.d.ts +0 -0
  789. /package/lib/{contracts → types/contracts}/PrivateSequence.d.ts +0 -0
  790. /package/lib/{contracts → types/contracts}/auth/decorators.d.ts +0 -0
  791. /package/lib/{contracts → types/contracts}/auth/index.d.ts +0 -0
  792. /package/lib/{contracts → types/contracts}/crud/crud-contract.d.ts +0 -0
  793. /package/lib/{contracts → types/contracts}/crud/index.d.ts +0 -0
  794. /package/lib/{contracts → types/contracts}/crud/serialized-crud-contract.d.ts +0 -0
  795. /package/lib/{contracts → types/contracts}/erc20/erc20contract.d.ts +0 -0
  796. /package/lib/{contracts → types/contracts}/erc20/index.d.ts +0 -0
  797. /package/lib/{contracts → types/contracts}/erc20/models.d.ts +0 -0
  798. /package/lib/{contracts → types/contracts}/index.d.ts +0 -0
  799. /package/lib/{contracts → types/contracts}/logging.d.ts +0 -0
  800. /package/lib/{contracts → types/contracts}/overrides.d.ts +0 -0
  801. /package/lib/{contracts → types/contracts}/types.d.ts +0 -0
  802. /package/lib/{contracts → types/contracts}/uuid.d.ts +0 -0
  803. /package/lib/{esm → types}/index.d.ts +0 -0
  804. /package/lib/{esm → types}/shared/ClientSerializer.d.ts +0 -0
  805. /package/lib/{esm → types}/shared/DeterministicSerializer.d.ts +0 -0
  806. /package/lib/{esm → types}/shared/SimpleDeterministicSerializer.d.ts +0 -0
  807. /package/lib/{esm → types}/shared/constants.d.ts +0 -0
  808. /package/lib/{esm → types}/shared/decorators.d.ts +0 -0
  809. /package/lib/{esm → types}/shared/erc20/erc20-constants.d.ts +0 -0
  810. /package/lib/{esm → types}/shared/erc20/index.d.ts +0 -0
  811. /package/lib/{esm → types}/shared/errors.d.ts +0 -0
  812. /package/lib/{esm → types}/shared/events.d.ts +0 -0
  813. /package/lib/{esm → types}/shared/fabric-types.d.ts +0 -0
  814. /package/lib/{esm → types}/shared/index.d.ts +0 -0
  815. /package/lib/{esm → types}/shared/interfaces/Checkable.d.ts +0 -0
  816. /package/lib/{esm → types}/shared/interfaces/index.d.ts +0 -0
  817. /package/lib/{esm → types}/shared/math.d.ts +0 -0
  818. /package/lib/{esm → types}/shared/model/FabricBaseModel.d.ts +0 -0
  819. /package/lib/{esm → types}/shared/model/FabricIdentifiedBaseModel.d.ts +0 -0
  820. /package/lib/{esm → types}/shared/model/Identity.d.ts +0 -0
  821. /package/lib/{esm → types}/shared/model/IdentityCredentials.d.ts +0 -0
  822. /package/lib/{esm → types}/shared/model/index.d.ts +0 -0
  823. /package/lib/{esm → types}/shared/overrides/Model.d.ts +0 -0
  824. /package/lib/{esm → types}/shared/overrides/index.d.ts +0 -0
  825. /package/lib/{esm/contracts → types/shared/overrides}/overrides.d.ts +0 -0
  826. /package/lib/{esm → types}/shared/types.d.ts +0 -0
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuditOperations = exports.TableNames = exports.BatchPattern = exports.DatePattern = void 0;
4
+ exports.DatePattern = "yyyy-MM-dd";
5
+ exports.BatchPattern = /^[a-zA-Z0-9/-]{1,20}$/;
6
+ var TableNames;
7
+ (function (TableNames) {
8
+ TableNames["Audit"] = "audit";
9
+ TableNames["Batch"] = "batch";
10
+ TableNames["GtinOwner"] = "gtin_owner";
11
+ TableNames["Leaflet"] = "leaflet";
12
+ TableNames["LeafletFile"] = "leaflet_file";
13
+ TableNames["Product"] = "product";
14
+ TableNames["Market"] = "market";
15
+ TableNames["ProductStrength"] = "product_strength";
16
+ })(TableNames || (exports.TableNames = TableNames = {}));
17
+ var AuditOperations;
18
+ (function (AuditOperations) {
19
+ AuditOperations["REMOVE"] = "Remove user";
20
+ AuditOperations["ADD"] = "Add user";
21
+ AuditOperations["DEACTIVATE"] = "Deactivate user";
22
+ AuditOperations["LOGIN"] = "Access wallet";
23
+ AuditOperations["SHARED_ENCLAVE_CREATE"] = "Create identity";
24
+ AuditOperations["BREAK_GLASS_RECOVERY"] = "Wallet recovered with the break Glass Recovery Code";
25
+ AuditOperations["AUTHORIZE"] = "Authorize integration user";
26
+ AuditOperations["REVOKE"] = "Revoke integration user";
27
+ AuditOperations["DATA_RECOVERY"] = "Use of the Data Recovery Key";
28
+ AuditOperations["RECOVERY_KEY_COPIED"] = "Copy Data Recovery Key";
29
+ })(AuditOperations || (exports.AuditOperations = AuditOperations = {}));
30
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/contract/models/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG,YAAY,CAAC;AAE3B,QAAA,YAAY,GAAG,uBAAuB,CAAC;AAEpD,IAAY,UASX;AATD,WAAY,UAAU;IACpB,6BAAe,CAAA;IACf,6BAAe,CAAA;IACf,sCAAwB,CAAA;IACxB,iCAAmB,CAAA;IACnB,0CAA4B,CAAA;IAC5B,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;IACjB,kDAAoC,CAAA;AACtC,CAAC,EATW,UAAU,0BAAV,UAAU,QASrB;AAED,IAAY,eAWX;AAXD,WAAY,eAAe;IACzB,yCAAsB,CAAA;IACtB,mCAAgB,CAAA;IAChB,iDAA8B,CAAA;IAC9B,0CAAuB,CAAA;IACvB,4DAAyC,CAAA;IACzC,+FAA4E,CAAA;IAC5E,2DAAwC,CAAA;IACxC,qDAAkC,CAAA;IAClC,iEAA8C,CAAA;IAC9C,iEAA8C,CAAA;AAChD,CAAC,EAXW,eAAe,+BAAf,eAAe,QAW1B"}
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rebuildForMatchingCollection = rebuildForMatchingCollection;
4
+ exports.createAuditHandler = createAuditHandler;
5
+ exports.updateAuditHandler = updateAuditHandler;
6
+ exports.deleteAuditHandler = deleteAuditHandler;
7
+ exports.audit = audit;
8
+ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
9
+ const decoration_1 = require("@decaf-ts/decoration");
10
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
11
+ const OtherAudit_1 = require("./OtherAudit.cjs");
12
+ const core_1 = require("@decaf-ts/core");
13
+ const decorators_1 = require("./decorators.cjs");
14
+ async function rebuildForMatchingCollection(model, context, collections) {
15
+ const mapToCollections = collections && (collections.privateCols || collections.sharedCols);
16
+ let cols = undefined;
17
+ if (mapToCollections) {
18
+ const msp = decorator_validation_1.Model.ownerOf(model) || (await context.stub.getCreator()).mspid;
19
+ cols = [
20
+ ...new Set([...collections.privateCols, ...collections.sharedCols].map((col) => {
21
+ return typeof col === "string"
22
+ ? col
23
+ : col(model, msp);
24
+ })),
25
+ ];
26
+ const pk = decorator_validation_1.Model.pk(model);
27
+ cols.forEach((col) => {
28
+ let segData;
29
+ try {
30
+ segData = context.get("segregatedData");
31
+ }
32
+ catch {
33
+ return; // segregatedData not present in this context (e.g. cascade child)
34
+ }
35
+ if (!segData || !segData[col] || !(model[pk] in segData[col]))
36
+ return;
37
+ Object.assign(model, segData[col][model[pk]]);
38
+ });
39
+ }
40
+ return model;
41
+ }
42
+ async function createAuditHandler(context, data, key, model) {
43
+ const repo = core_1.Repository.forModel(OtherAudit_1.OtherAudit);
44
+ if (!context.identity || !context.identity.getID)
45
+ throw new db_decorators_1.InternalError(`Lost context apparently for audit`);
46
+ model = await (0, decorators_1.populateRelations)(model, context, this._overrides);
47
+ let roles = [];
48
+ try {
49
+ roles = JSON.parse(context.identity.getAttributeValue("roles"));
50
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
51
+ }
52
+ catch (e) {
53
+ roles = ["unknown"];
54
+ }
55
+ const toCreate = new OtherAudit_1.OtherAudit({
56
+ recordId: decorator_validation_1.Model.pk(model, true),
57
+ userGroup: roles.join(", "),
58
+ userId: context.identity.getID(),
59
+ model: decorator_validation_1.Model.tableName(data.class),
60
+ transaction: context.stub.getTxID(),
61
+ action: db_decorators_1.OperationKeys.CREATE,
62
+ diffs: model.compare(new this.class()),
63
+ });
64
+ const audit = await repo.override(this._overrides).create(toCreate, context);
65
+ context.logger.info(`Audit log for ${db_decorators_1.OperationKeys.CREATE} of ${decorator_validation_1.Model.tableName(this.class)} created: ${audit.id}: ${JSON.stringify(audit, undefined, 2)}`);
66
+ }
67
+ /**
68
+ * Returns a shallow-cloned copy of the model where each relation array item
69
+ * is normalised to its string ID. This ensures that `{ id: "x" }` and `"x"`
70
+ * compare as equal so that unchanged relations produce no diff.
71
+ */
72
+ function normalizeRelationsForAudit(model) {
73
+ const copy = Object.assign(Object.create(Object.getPrototypeOf(model)), model);
74
+ const relProps = decorator_validation_1.Model.relations(model);
75
+ if (!relProps || !relProps.length)
76
+ return copy;
77
+ for (const propKey of relProps) {
78
+ const value = copy[propKey];
79
+ if (Array.isArray(value)) {
80
+ copy[propKey] = value.map((item) => {
81
+ if (item == null)
82
+ return item;
83
+ if (typeof item === "string" || typeof item === "number")
84
+ return String(item);
85
+ if (item.id != null)
86
+ return String(item.id);
87
+ return item; // new object without id — keep as-is
88
+ });
89
+ }
90
+ else if (value != null) {
91
+ if (typeof value === "string" || typeof value === "number") {
92
+ copy[propKey] = String(value);
93
+ }
94
+ else if (value.id != null) {
95
+ copy[propKey] = String(value.id);
96
+ }
97
+ }
98
+ }
99
+ return copy;
100
+ }
101
+ async function updateAuditHandler(context, data, key, model, oldModel) {
102
+ const repo = core_1.Repository.forModel(OtherAudit_1.OtherAudit);
103
+ if (!context.identity || !context.identity.getID)
104
+ throw new db_decorators_1.InternalError(`Lost context apparently for audit`);
105
+ const normalizedModel = normalizeRelationsForAudit(model);
106
+ const normalizedOldModel = normalizeRelationsForAudit(oldModel);
107
+ let roles = [];
108
+ try {
109
+ roles = JSON.parse(context.identity.getAttributeValue("roles"));
110
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
111
+ }
112
+ catch (e) {
113
+ roles = ["unknown"];
114
+ }
115
+ const toCreate = new OtherAudit_1.OtherAudit({
116
+ recordId: decorator_validation_1.Model.pk(model, true),
117
+ userGroup: roles.join(", "),
118
+ userId: context.identity.getID(),
119
+ model: decorator_validation_1.Model.tableName(data.class),
120
+ transaction: context.stub.getTxID(),
121
+ action: db_decorators_1.OperationKeys.UPDATE,
122
+ diffs: normalizedModel.compare(normalizedOldModel),
123
+ });
124
+ const audit = await repo.override(this._overrides).create(toCreate, context);
125
+ context.logger.info(`Audit log for ${db_decorators_1.OperationKeys.UPDATE} of ${decorator_validation_1.Model.tableName(this.class)} created: ${JSON.stringify(audit, undefined, 2)}`);
126
+ }
127
+ async function deleteAuditHandler(context, data, key, model) {
128
+ if (!context.identity || !context.identity.getID)
129
+ throw new db_decorators_1.InternalError(`Lost context apparently. no getId in identity`);
130
+ model = await (0, decorators_1.populateRelations)(model, context, this._overrides);
131
+ let roles = [];
132
+ try {
133
+ roles = JSON.parse(context.identity.getAttributeValue("roles"));
134
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
135
+ }
136
+ catch (e) {
137
+ roles = ["unknown"];
138
+ }
139
+ const toCreate = new OtherAudit_1.OtherAudit({
140
+ recordId: decorator_validation_1.Model.pk(model, true),
141
+ userGroup: roles.join(", "),
142
+ userId: context.identity.getID(),
143
+ model: decorator_validation_1.Model.tableName(data.class),
144
+ transaction: context.stub.getTxID(),
145
+ action: db_decorators_1.OperationKeys.DELETE,
146
+ diffs: new this.class().compare(model),
147
+ });
148
+ const repo = core_1.Repository.forModel(OtherAudit_1.OtherAudit);
149
+ const audit = await repo.override(this._overrides).create(toCreate, context);
150
+ context.logger.info(`Audit log for ${db_decorators_1.OperationKeys.DELETE} of ${decorator_validation_1.Model.tableName(this.class)} created: ${JSON.stringify(audit, undefined, 2)}`);
151
+ }
152
+ function audit(model) {
153
+ const meta = {
154
+ class: model,
155
+ };
156
+ return (0, decoration_1.apply)((0, db_decorators_1.afterCreate)(createAuditHandler, meta), (0, db_decorators_1.onUpdate)(updateAuditHandler, meta), (0, db_decorators_1.afterDelete)(deleteAuditHandler, meta), (0, decoration_1.metadata)("audit", true));
157
+ }
158
+ //# sourceMappingURL=decorators-private.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators-private.js","sourceRoot":"","sources":["../../../../src/contract/models/decorators-private.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rebuildForMatchingCollection = rebuildForMatchingCollection;
4
+ exports.populateRelations = populateRelations;
5
+ exports.createAuditHandler = createAuditHandler;
6
+ exports.updateAuditHandler = updateAuditHandler;
7
+ exports.deleteAuditHandler = deleteAuditHandler;
8
+ exports.audit = audit;
9
+ exports.createAssignGtinOwnerHandler = createAssignGtinOwnerHandler;
10
+ exports.deleteAssignGtinOwnerHandler = deleteAssignGtinOwnerHandler;
11
+ exports.assignProductOwner = assignProductOwner;
12
+ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
13
+ const decoration_1 = require("@decaf-ts/decoration");
14
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
15
+ const Audit_1 = require("./Audit.cjs");
16
+ const core_1 = require("@decaf-ts/core");
17
+ const GtinOwner_1 = require("./GtinOwner.cjs");
18
+ async function rebuildForMatchingCollection(model, context, collections) {
19
+ const mapToCollections = collections && (collections.privateCols || collections.sharedCols);
20
+ let cols = undefined;
21
+ if (mapToCollections) {
22
+ const msp = decorator_validation_1.Model.ownerOf(model) || (await context.stub.getCreator()).mspid;
23
+ cols = [
24
+ ...new Set([...collections.privateCols, ...collections.sharedCols].map((col) => {
25
+ return typeof col === "string"
26
+ ? col
27
+ : col(model, msp);
28
+ })),
29
+ ];
30
+ const pk = decorator_validation_1.Model.pk(model);
31
+ cols.forEach((col) => {
32
+ let segData;
33
+ try {
34
+ segData = context.get("segregatedData");
35
+ }
36
+ catch {
37
+ return; // segregatedData not present in this context (e.g. cascade child)
38
+ }
39
+ if (!segData || !segData[col] || !(model[pk] in segData[col]))
40
+ return;
41
+ Object.assign(model, segData[col][model[pk]]);
42
+ });
43
+ }
44
+ return model;
45
+ }
46
+ /**
47
+ * Returns a shallow-cloned copy of the model with relation properties resolved
48
+ * to their full instances. The original model is NOT mutated.
49
+ */
50
+ async function populateRelations(model, context, overrides) {
51
+ // Create a shallow copy preserving the prototype so compare() etc. still work
52
+ const copy = Object.assign(Object.create(Object.getPrototypeOf(model)), model);
53
+ const relProps = decorator_validation_1.Model.relations(model);
54
+ if (!relProps || !relProps.length)
55
+ return copy;
56
+ for (const propKey of relProps) {
57
+ const meta = decorator_validation_1.Model.relations(model, propKey);
58
+ const clazzOrFn = meta.class;
59
+ const clazz = typeof clazzOrFn === "function" && clazzOrFn.name
60
+ ? clazzOrFn
61
+ : clazzOrFn();
62
+ const value = copy[propKey];
63
+ if (value === null || value === undefined)
64
+ continue;
65
+ const repo = core_1.Repository.forModel(clazz).override(overrides || {});
66
+ if (Array.isArray(value)) {
67
+ const resolved = [];
68
+ for (const item of value) {
69
+ if (typeof item === "string" || typeof item === "number") {
70
+ try {
71
+ resolved.push(await repo.read(String(item), context));
72
+ }
73
+ catch {
74
+ resolved.push(item);
75
+ }
76
+ }
77
+ else {
78
+ resolved.push(item);
79
+ }
80
+ }
81
+ copy[propKey] = resolved;
82
+ }
83
+ else if (typeof value === "string" || typeof value === "number") {
84
+ try {
85
+ copy[propKey] = await repo.read(String(value), context);
86
+ }
87
+ catch {
88
+ // keep original value if read fails
89
+ }
90
+ }
91
+ }
92
+ return copy;
93
+ }
94
+ async function createAuditHandler(context, data, key, model) {
95
+ const repo = core_1.Repository.forModel(Audit_1.Audit);
96
+ if (!context.identity || !context.identity.getID)
97
+ throw new db_decorators_1.InternalError(`Lost context apparently for audit`);
98
+ model = await populateRelations(model, context, this._overrides);
99
+ const toCreate = new Audit_1.Audit({
100
+ userGroup: context.identity.getID(),
101
+ userId: context.identity.getID(),
102
+ model: decorator_validation_1.Model.tableName(data.class),
103
+ transaction: context.stub.getTxID(),
104
+ action: db_decorators_1.OperationKeys.CREATE,
105
+ diffs: new this.class().compare(model),
106
+ });
107
+ const audit = await repo.override(this._overrides).create(toCreate, context);
108
+ context.logger.info(`Audit log for ${db_decorators_1.OperationKeys.CREATE} of ${decorator_validation_1.Model.tableName(this.class)} created: ${audit.id}: ${JSON.stringify(audit, undefined, 2)}`);
109
+ }
110
+ async function updateAuditHandler(context, data, key, model, oldModel) {
111
+ const repo = core_1.Repository.forModel(Audit_1.Audit);
112
+ const collections = decorator_validation_1.Model.collectionsFor(Audit_1.Audit);
113
+ //
114
+ // model = await rebuildForMatchingCollection(model, context, collections);
115
+ if (!context.identity || !context.identity.getID)
116
+ throw new db_decorators_1.InternalError(`Lost context apparently for audit`);
117
+ const populatedModel = await populateRelations(model, context, this._overrides);
118
+ const populatedOldModel = await populateRelations(oldModel, context, this._overrides);
119
+ const toCreate = new Audit_1.Audit({
120
+ userGroup: context.identity.getID(),
121
+ userId: context.identity.getID(),
122
+ model: decorator_validation_1.Model.tableName(data.class),
123
+ transaction: context.stub.getTxID(),
124
+ action: db_decorators_1.OperationKeys.UPDATE,
125
+ diffs: populatedModel.compare(populatedOldModel),
126
+ });
127
+ const audit = await repo.override(this._overrides).create(toCreate, context);
128
+ context.logger.info(`Audit log for ${db_decorators_1.OperationKeys.UPDATE} of ${decorator_validation_1.Model.tableName(this.class)} created: ${JSON.stringify(audit, undefined, 2)}`);
129
+ }
130
+ async function deleteAuditHandler(context, data, key, model) {
131
+ if (!context.identity || !context.identity.getID)
132
+ throw new db_decorators_1.InternalError(`Lost context apprently. no getId in identity`);
133
+ model = await populateRelations(model, context, this._overrides);
134
+ const toCreate = new Audit_1.Audit({
135
+ userGroup: context.identity.getID(),
136
+ userId: context.identity.getID(),
137
+ model: decorator_validation_1.Model.tableName(data.class),
138
+ transaction: context.stub.getTxID(),
139
+ action: db_decorators_1.OperationKeys.DELETE,
140
+ diffs: model.compare(new this.class()),
141
+ });
142
+ const repo = core_1.Repository.forModel(Audit_1.Audit);
143
+ const audit = await repo.override(this._overrides).create(toCreate, context);
144
+ context.logger.info(`Audit log for ${db_decorators_1.OperationKeys.DELETE} of ${decorator_validation_1.Model.tableName(this.class)} created: ${JSON.stringify(audit, undefined, 2)}`);
145
+ }
146
+ function audit(model) {
147
+ const meta = {
148
+ class: model,
149
+ };
150
+ return (0, decoration_1.apply)((0, db_decorators_1.afterCreate)(createAuditHandler, meta), (0, db_decorators_1.afterUpdate)(updateAuditHandler, meta), (0, db_decorators_1.afterDelete)(deleteAuditHandler, meta), (0, decoration_1.metadata)("audit", true));
151
+ }
152
+ async function createAssignGtinOwnerHandler(context, data, key, model) {
153
+ if (!model.productCode)
154
+ throw new core_1.UnsupportedError(`Gtin owner can only be assigned to products`);
155
+ const repo = core_1.Repository.forModel(GtinOwner_1.GtinOwner);
156
+ const toCreate = new GtinOwner_1.GtinOwner({
157
+ productCode: model.productCode,
158
+ });
159
+ const owner = await repo.create(toCreate, publicContext(context));
160
+ context.logger.info(`GTIN owner assigned for product ${model.productCode}: ${owner.ownedBy}`);
161
+ }
162
+ async function deleteAssignGtinOwnerHandler(context, data, key, model) {
163
+ if (!model.productCode)
164
+ throw new core_1.UnsupportedError(`Gtin owner can only be assigned to products`);
165
+ const repo = core_1.Repository.forModel(GtinOwner_1.GtinOwner);
166
+ const owner = await repo.delete(model.productCode, publicContext(context));
167
+ context.logger.info(`GTIN owner assigned for product ${model.productCode}: ${owner.ownedBy}`);
168
+ }
169
+ function assignProductOwner() {
170
+ return (0, decoration_1.apply)((0, db_decorators_1.onCreate)(createAssignGtinOwnerHandler, {}), (0, db_decorators_1.afterDelete)(deleteAssignGtinOwnerHandler, {}));
171
+ }
172
+ function publicContext(ctx) {
173
+ return new ctx.constructor(ctx).accumulate({
174
+ fullySegregated: false,
175
+ segregated: undefined,
176
+ segregatedData: undefined,
177
+ segregateRead: undefined,
178
+ segregateWrite: undefined,
179
+ segregateReadStack: undefined,
180
+ });
181
+ }
182
+ //# sourceMappingURL=decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../../src/contract/models/decorators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.gtin = exports.GtinValidator = void 0;
13
+ exports.generateGtin = generateGtin;
14
+ exports.getBatch = getBatch;
15
+ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
16
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
17
+ const decoration_1 = require("@decaf-ts/decoration");
18
+ const GTIN_VALIDATION_KEY = "gtin";
19
+ const GTIN_VALIDATION_ERROR_MESSAGE = "Not a valid Gtin";
20
+ let GtinValidator = class GtinValidator extends decorator_validation_1.Validator {
21
+ constructor(message = GTIN_VALIDATION_ERROR_MESSAGE) {
22
+ super(message, "string", "number");
23
+ }
24
+ hasErrors(value, options) {
25
+ if (value === undefined)
26
+ return;
27
+ const { message } = options || {};
28
+ const gtin = value + "";
29
+ if (!gtin.match(/\d{14}/g))
30
+ return this.getMessage(message || this.message);
31
+ const digits = gtin.slice(0, 13);
32
+ const checksum = calculateGtinCheckSum(digits);
33
+ return parseInt(checksum) === parseInt(gtin.charAt(13))
34
+ ? undefined
35
+ : this.getMessage(message || this.message);
36
+ }
37
+ };
38
+ exports.GtinValidator = GtinValidator;
39
+ exports.GtinValidator = GtinValidator = __decorate([
40
+ (0, decorator_validation_1.validator)(GTIN_VALIDATION_KEY),
41
+ __metadata("design:paramtypes", [String])
42
+ ], GtinValidator);
43
+ const gtin = (message = GTIN_VALIDATION_ERROR_MESSAGE) => {
44
+ return (0, decoration_1.apply)((0, decorator_validation_1.required)(), (0, db_decorators_1.readonly)(), (0, decorator_validation_1.innerValidationDecorator)(exports.gtin, GTIN_VALIDATION_KEY, {
45
+ message: message,
46
+ async: false,
47
+ }));
48
+ };
49
+ exports.gtin = gtin;
50
+ // https://www.gs1.org/services/how-calculate-check-digit-manually
51
+ function calculateGtinCheckSum(digits) {
52
+ digits = "" + digits;
53
+ if (digits.length !== 13)
54
+ throw new Error("needs to received 13 digits");
55
+ const multiplier = [3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3];
56
+ let sum = 0;
57
+ try {
58
+ // multiply each digit for its multiplier according to the table
59
+ for (let i = 0; i < 13; i++)
60
+ sum += parseInt(digits.charAt(i)) * multiplier[i];
61
+ // Find the nearest equal or higher multiple of ten
62
+ const remainder = sum % 10;
63
+ let nearest;
64
+ if (remainder === 0)
65
+ nearest = sum;
66
+ else
67
+ nearest = sum - remainder + 10;
68
+ return nearest - sum + "";
69
+ }
70
+ catch (e) {
71
+ throw new Error(`Did this received numbers? ${e}`);
72
+ }
73
+ }
74
+ function generateGtin() {
75
+ function pad(num, width, padding = "0") {
76
+ const n = num + "";
77
+ return n.length >= width
78
+ ? n
79
+ : new Array(width - n.length + 1).join(padding) + n;
80
+ }
81
+ const beforeChecksum = pad(Math.floor(Math.random() * 9999999999999), 13); // has to be 13. the checksum is the 4th digit
82
+ const checksum = calculateGtinCheckSum(beforeChecksum);
83
+ return `${beforeChecksum}${checksum}`;
84
+ }
85
+ function getBatch() {
86
+ return Math.random().toString(36).replace(".", "").toUpperCase().slice(5);
87
+ }
88
+ //# sourceMappingURL=gtin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gtin.js","sourceRoot":"","sources":["../../../../src/contract/models/gtin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateHistoryHandler = updateHistoryHandler;
4
+ exports.deleteHistoryHandler = deleteHistoryHandler;
5
+ exports.historyDec = historyDec;
6
+ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
7
+ const core_1 = require("@decaf-ts/core");
8
+ const decoration_1 = require("@decaf-ts/decoration");
9
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
10
+ const decorators_1 = require("./decorators.cjs");
11
+ const History_1 = require("./History.cjs");
12
+ async function updateHistoryHandler(context, data, key, model, oldModel) {
13
+ if (!context.identity || !context.identity.getID)
14
+ throw new db_decorators_1.InternalError(`Lost context apparently for history`);
15
+ const table = decorator_validation_1.Model.tableName(oldModel);
16
+ const pk = decorator_validation_1.Model.pk(oldModel, true);
17
+ let version;
18
+ try {
19
+ version = decorator_validation_1.Model.versionOf(oldModel);
20
+ }
21
+ catch {
22
+ context.logger.warn(`History for ${table}'s ${pk.toString()} could not be created due to missing version`);
23
+ return; // model has no @version field — skip history
24
+ }
25
+ // Populate relations on a non-mutating copy of oldModel, then convert to a
26
+ // plain object so no model-anchor (__model) keys appear in the stored JSON.
27
+ const populated = await (0, decorators_1.populateRelations)(oldModel, context, this._overrides);
28
+ const record = JSON.parse(JSON.stringify(populated));
29
+ const repo = core_1.Repository.forModel(History_1.History).override(this._overrides);
30
+ const toCreate = new History_1.History({
31
+ table,
32
+ key: pk,
33
+ version,
34
+ record,
35
+ });
36
+ const overrides = {
37
+ stub: context.stub,
38
+ identity: context.identity,
39
+ logger: context.logger,
40
+ fullySegregated: true,
41
+ };
42
+ const historyCtx = await this.adapter.context(db_decorators_1.OperationKeys.CREATE, overrides, History_1.History);
43
+ const history = await repo.create(toCreate, historyCtx);
44
+ context.logger.info(`History for ${table}'s ${pk.toString()} version ${version} stored with id ${history.id}`);
45
+ }
46
+ async function deleteHistoryHandler(context, data, key, model) {
47
+ if (!context.identity || !context.identity.getID)
48
+ throw new db_decorators_1.InternalError(`Lost context apparently for history`);
49
+ const table = decorator_validation_1.Model.tableName(model);
50
+ const pk = decorator_validation_1.Model.pk(model, true);
51
+ let version;
52
+ try {
53
+ version = decorator_validation_1.Model.versionOf(model);
54
+ }
55
+ catch {
56
+ context.logger.warn(`History for ${table}'s ${pk.toString()} could not be created due to missing version`);
57
+ return; // model has no @version field — skip history
58
+ }
59
+ // Populate relations on a non-mutating copy of model, then convert to a
60
+ // plain object so no model-anchor (__model) keys appear in the stored JSON.
61
+ const populated = await (0, decorators_1.populateRelations)(model, context, this._overrides);
62
+ const record = JSON.parse(JSON.stringify(populated));
63
+ const repo = core_1.Repository.forModel(History_1.History).override(this._overrides);
64
+ const toCreate = new History_1.History({
65
+ table,
66
+ key: pk,
67
+ version,
68
+ record,
69
+ });
70
+ const overrides = {
71
+ stub: context.stub,
72
+ identity: context.identity,
73
+ logger: context.logger,
74
+ fullySegregated: true,
75
+ };
76
+ const historyCtx = await this.adapter.context(db_decorators_1.OperationKeys.CREATE, overrides, History_1.History);
77
+ const history = await repo.create(toCreate, historyCtx);
78
+ context.logger.info(`History for ${table}'s ${pk.toString()} version ${version} stored with id ${history.id}`);
79
+ }
80
+ function historyDec() {
81
+ return (0, decoration_1.apply)((0, db_decorators_1.onUpdate)(updateHistoryHandler, {}, { priority: 99 }), (0, db_decorators_1.afterDelete)(deleteHistoryHandler, {}, { priority: 99 }), (0, decoration_1.metadata)("history", true));
82
+ }
83
+ //# sourceMappingURL=history-dec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-dec.js","sourceRoot":"","sources":["../../../../src/contract/models/history-dec.ts"],"names":[],"mappings":"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"}