@explorins/pers-shared 2.1.35 → 2.1.37

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 (332) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/cjs/index.d.ts +2 -0
  3. package/dist/cjs/index.d.ts.map +1 -1
  4. package/dist/cjs/index.js +5 -2
  5. package/dist/cjs/index.js.map +1 -1
  6. package/dist/cjs/shared-lib/dto/auth.dto.d.ts +1 -2
  7. package/dist/cjs/shared-lib/dto/auth.dto.d.ts.map +1 -1
  8. package/dist/cjs/shared-lib/dto/auth.dto.js +1 -10
  9. package/dist/cjs/shared-lib/dto/auth.dto.js.map +1 -1
  10. package/dist/cjs/shared-lib/errors/base/error-classification-enums.d.ts +157 -1
  11. package/dist/cjs/shared-lib/errors/base/error-classification-enums.d.ts.map +1 -1
  12. package/dist/cjs/shared-lib/errors/base/error-classification-enums.js +20 -1
  13. package/dist/cjs/shared-lib/errors/base/error-classification-enums.js.map +1 -1
  14. package/dist/cjs/shared-lib/errors/base-business-error.d.ts +56 -2
  15. package/dist/cjs/shared-lib/errors/base-business-error.d.ts.map +1 -1
  16. package/dist/cjs/shared-lib/errors/base-business-error.js +110 -11
  17. package/dist/cjs/shared-lib/errors/base-business-error.js.map +1 -1
  18. package/dist/cjs/shared-lib/errors/domains/authentication-errors.d.ts +7 -7
  19. package/dist/cjs/shared-lib/errors/domains/authentication-errors.d.ts.map +1 -1
  20. package/dist/cjs/shared-lib/errors/domains/authentication-errors.js +6 -6
  21. package/dist/cjs/shared-lib/errors/domains/authentication-errors.js.map +1 -1
  22. package/dist/cjs/shared-lib/errors/domains/balance-errors.d.ts +2 -2
  23. package/dist/cjs/shared-lib/errors/domains/balance-errors.d.ts.map +1 -1
  24. package/dist/cjs/shared-lib/errors/domains/balance-errors.js +2 -2
  25. package/dist/cjs/shared-lib/errors/domains/balance-errors.js.map +1 -1
  26. package/dist/cjs/shared-lib/errors/domains/business-errors.d.ts +24 -3
  27. package/dist/cjs/shared-lib/errors/domains/business-errors.d.ts.map +1 -1
  28. package/dist/cjs/shared-lib/errors/domains/business-errors.js +42 -3
  29. package/dist/cjs/shared-lib/errors/domains/business-errors.js.map +1 -1
  30. package/dist/cjs/shared-lib/errors/domains/contract-errors.d.ts +2 -2
  31. package/dist/cjs/shared-lib/errors/domains/contract-errors.d.ts.map +1 -1
  32. package/dist/cjs/shared-lib/errors/domains/contract-errors.js +1 -1
  33. package/dist/cjs/shared-lib/errors/domains/contract-errors.js.map +1 -1
  34. package/dist/cjs/shared-lib/errors/domains/signing-account-errors.d.ts +7 -7
  35. package/dist/cjs/shared-lib/errors/domains/signing-account-errors.d.ts.map +1 -1
  36. package/dist/cjs/shared-lib/errors/domains/signing-account-errors.js +12 -10
  37. package/dist/cjs/shared-lib/errors/domains/signing-account-errors.js.map +1 -1
  38. package/dist/cjs/shared-lib/errors/domains/system-errors.d.ts +7 -4
  39. package/dist/cjs/shared-lib/errors/domains/system-errors.d.ts.map +1 -1
  40. package/dist/cjs/shared-lib/errors/domains/system-errors.js +13 -6
  41. package/dist/cjs/shared-lib/errors/domains/system-errors.js.map +1 -1
  42. package/dist/cjs/shared-lib/errors/domains/token-errors.d.ts +10 -4
  43. package/dist/cjs/shared-lib/errors/domains/token-errors.d.ts.map +1 -1
  44. package/dist/cjs/shared-lib/errors/domains/token-errors.js +19 -5
  45. package/dist/cjs/shared-lib/errors/domains/token-errors.js.map +1 -1
  46. package/dist/cjs/shared-lib/errors/domains/transaction-errors.d.ts +8 -5
  47. package/dist/cjs/shared-lib/errors/domains/transaction-errors.d.ts.map +1 -1
  48. package/dist/cjs/shared-lib/errors/domains/transaction-errors.js +14 -7
  49. package/dist/cjs/shared-lib/errors/domains/transaction-errors.js.map +1 -1
  50. package/dist/cjs/shared-lib/errors/domains/user-errors.d.ts +2 -2
  51. package/dist/cjs/shared-lib/errors/domains/user-errors.d.ts.map +1 -1
  52. package/dist/cjs/shared-lib/errors/domains/user-errors.js +1 -1
  53. package/dist/cjs/shared-lib/errors/domains/user-errors.js.map +1 -1
  54. package/dist/cjs/shared-lib/errors/domains/validation-errors.d.ts +4 -4
  55. package/dist/cjs/shared-lib/errors/domains/validation-errors.d.ts.map +1 -1
  56. package/dist/cjs/shared-lib/errors/domains/validation-errors.js +6 -7
  57. package/dist/cjs/shared-lib/errors/domains/validation-errors.js.map +1 -1
  58. package/dist/cjs/shared-lib/errors/domains/wallet-errors.d.ts +4 -4
  59. package/dist/cjs/shared-lib/errors/domains/wallet-errors.d.ts.map +1 -1
  60. package/dist/cjs/shared-lib/errors/domains/wallet-errors.js +5 -4
  61. package/dist/cjs/shared-lib/errors/domains/wallet-errors.js.map +1 -1
  62. package/dist/cjs/shared-lib/errors/index.d.ts +1 -1
  63. package/dist/cjs/shared-lib/errors/index.d.ts.map +1 -1
  64. package/dist/cjs/shared-lib/errors/index.js +9 -1
  65. package/dist/cjs/shared-lib/errors/index.js.map +1 -1
  66. package/dist/cjs/shared-patterns/database/index.d.ts +6 -0
  67. package/dist/cjs/shared-patterns/database/index.d.ts.map +1 -0
  68. package/dist/cjs/shared-patterns/database/index.js +24 -0
  69. package/dist/cjs/shared-patterns/database/index.js.map +1 -0
  70. package/dist/cjs/shared-patterns/database/models/base.model.d.ts +7 -0
  71. package/dist/cjs/shared-patterns/database/models/base.model.d.ts.map +1 -0
  72. package/dist/cjs/shared-patterns/database/models/base.model.js +11 -0
  73. package/dist/cjs/shared-patterns/database/models/base.model.js.map +1 -0
  74. package/dist/cjs/shared-patterns/database/models/fixture.model.d.ts +4 -0
  75. package/dist/cjs/shared-patterns/database/models/fixture.model.d.ts.map +1 -0
  76. package/dist/cjs/shared-patterns/database/models/fixture.model.js +8 -0
  77. package/dist/cjs/shared-patterns/database/models/fixture.model.js.map +1 -0
  78. package/dist/cjs/shared-patterns/database/schemas/fixture-fields.schema.d.ts +5 -0
  79. package/dist/cjs/shared-patterns/database/schemas/fixture-fields.schema.d.ts.map +1 -0
  80. package/dist/cjs/shared-patterns/database/schemas/fixture-fields.schema.js +11 -0
  81. package/dist/cjs/shared-patterns/database/schemas/fixture-fields.schema.js.map +1 -0
  82. package/dist/cjs/shared-patterns/database/schemas/shared-fields.schema.d.ts +44 -0
  83. package/dist/cjs/shared-patterns/database/schemas/shared-fields.schema.d.ts.map +1 -0
  84. package/dist/cjs/shared-patterns/database/schemas/shared-fields.schema.js +64 -0
  85. package/dist/cjs/shared-patterns/database/schemas/shared-fields.schema.js.map +1 -0
  86. package/dist/cjs/shared-patterns/database/schemas/tenant-fields.schema.d.ts +51 -0
  87. package/dist/cjs/shared-patterns/database/schemas/tenant-fields.schema.d.ts.map +1 -0
  88. package/dist/cjs/shared-patterns/database/schemas/tenant-fields.schema.js +57 -0
  89. package/dist/cjs/shared-patterns/database/schemas/tenant-fields.schema.js.map +1 -0
  90. package/dist/cjs/shared-patterns/enums/lambda.enum.d.ts +28 -0
  91. package/dist/cjs/shared-patterns/enums/lambda.enum.d.ts.map +1 -0
  92. package/dist/cjs/shared-patterns/enums/lambda.enum.js +34 -0
  93. package/dist/cjs/shared-patterns/enums/lambda.enum.js.map +1 -0
  94. package/dist/cjs/shared-patterns/errors/error-factory.d.ts +150 -0
  95. package/dist/cjs/shared-patterns/errors/error-factory.d.ts.map +1 -0
  96. package/dist/cjs/shared-patterns/errors/error-factory.js +257 -0
  97. package/dist/cjs/shared-patterns/errors/error-factory.js.map +1 -0
  98. package/dist/cjs/shared-patterns/exceptions/base/error-classification-enums.d.ts +118 -0
  99. package/dist/cjs/shared-patterns/exceptions/base/error-classification-enums.d.ts.map +1 -0
  100. package/dist/cjs/shared-patterns/exceptions/base/error-classification-enums.js +111 -0
  101. package/dist/cjs/shared-patterns/exceptions/base/error-classification-enums.js.map +1 -0
  102. package/dist/cjs/shared-patterns/exceptions/base/error-classifier.d.ts +23 -0
  103. package/dist/cjs/shared-patterns/exceptions/base/error-classifier.d.ts.map +1 -0
  104. package/dist/cjs/shared-patterns/exceptions/base/error-classifier.js +165 -0
  105. package/dist/cjs/shared-patterns/exceptions/base/error-classifier.js.map +1 -0
  106. package/dist/cjs/shared-patterns/exceptions/index.d.ts +3 -0
  107. package/dist/cjs/shared-patterns/exceptions/index.d.ts.map +1 -0
  108. package/dist/cjs/shared-patterns/exceptions/index.js +24 -0
  109. package/dist/cjs/shared-patterns/exceptions/index.js.map +1 -0
  110. package/dist/cjs/shared-patterns/functions/crypto.functions.d.ts +16 -0
  111. package/dist/cjs/shared-patterns/functions/crypto.functions.d.ts.map +1 -0
  112. package/dist/cjs/shared-patterns/functions/crypto.functions.js +110 -0
  113. package/dist/cjs/shared-patterns/functions/crypto.functions.js.map +1 -0
  114. package/dist/cjs/shared-patterns/functions/helper.functions.d.ts +10 -0
  115. package/dist/cjs/shared-patterns/functions/helper.functions.d.ts.map +1 -0
  116. package/dist/cjs/shared-patterns/functions/helper.functions.js +38 -0
  117. package/dist/cjs/shared-patterns/functions/helper.functions.js.map +1 -0
  118. package/dist/cjs/shared-patterns/functions/index.d.ts +4 -0
  119. package/dist/cjs/shared-patterns/functions/index.d.ts.map +1 -0
  120. package/dist/cjs/shared-patterns/functions/index.js +21 -0
  121. package/dist/cjs/shared-patterns/functions/index.js.map +1 -0
  122. package/dist/cjs/shared-patterns/functions/request.functions.d.ts +14 -0
  123. package/dist/cjs/shared-patterns/functions/request.functions.d.ts.map +1 -0
  124. package/dist/cjs/shared-patterns/functions/request.functions.js +69 -0
  125. package/dist/cjs/shared-patterns/functions/request.functions.js.map +1 -0
  126. package/dist/cjs/shared-patterns/index.d.ts +15 -0
  127. package/dist/cjs/shared-patterns/index.d.ts.map +1 -0
  128. package/dist/cjs/shared-patterns/index.js +44 -0
  129. package/dist/cjs/shared-patterns/index.js.map +1 -0
  130. package/dist/cjs/shared-patterns/interfaces/index.d.ts +3 -0
  131. package/dist/cjs/shared-patterns/interfaces/index.d.ts.map +1 -0
  132. package/dist/cjs/shared-patterns/interfaces/index.js +19 -0
  133. package/dist/cjs/shared-patterns/interfaces/index.js.map +1 -0
  134. package/dist/cjs/shared-patterns/interfaces/request.interface.d.ts +21 -0
  135. package/dist/cjs/shared-patterns/interfaces/request.interface.d.ts.map +1 -0
  136. package/dist/cjs/shared-patterns/interfaces/request.interface.js +15 -0
  137. package/dist/cjs/shared-patterns/interfaces/request.interface.js.map +1 -0
  138. package/dist/cjs/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.d.ts +9 -0
  139. package/dist/cjs/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.d.ts.map +1 -0
  140. package/dist/cjs/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.js +3 -0
  141. package/dist/cjs/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.js.map +1 -0
  142. package/dist/cjs/shared-patterns/orchestrators/base-orchestrator.d.ts +90 -0
  143. package/dist/cjs/shared-patterns/orchestrators/base-orchestrator.d.ts.map +1 -0
  144. package/dist/cjs/shared-patterns/orchestrators/base-orchestrator.js +124 -0
  145. package/dist/cjs/shared-patterns/orchestrators/base-orchestrator.js.map +1 -0
  146. package/dist/cjs/shared-patterns/orchestrators/base-workflow.d.ts +50 -0
  147. package/dist/cjs/shared-patterns/orchestrators/base-workflow.d.ts.map +1 -0
  148. package/dist/cjs/shared-patterns/orchestrators/base-workflow.js +68 -0
  149. package/dist/cjs/shared-patterns/orchestrators/base-workflow.js.map +1 -0
  150. package/dist/cjs/shared-patterns/orchestrators/index.d.ts +26 -0
  151. package/dist/cjs/shared-patterns/orchestrators/index.d.ts.map +1 -0
  152. package/dist/cjs/shared-patterns/orchestrators/index.js +46 -0
  153. package/dist/cjs/shared-patterns/orchestrators/index.js.map +1 -0
  154. package/dist/cjs/shared-patterns/utils/error-message.utils.d.ts +175 -0
  155. package/dist/cjs/shared-patterns/utils/error-message.utils.d.ts.map +1 -0
  156. package/dist/cjs/shared-patterns/utils/error-message.utils.js +258 -0
  157. package/dist/cjs/shared-patterns/utils/error-message.utils.js.map +1 -0
  158. package/dist/cjs/shared-patterns/utils/index.d.ts +3 -0
  159. package/dist/cjs/shared-patterns/utils/index.d.ts.map +1 -0
  160. package/dist/cjs/shared-patterns/utils/index.js +20 -0
  161. package/dist/cjs/shared-patterns/utils/index.js.map +1 -0
  162. package/dist/cjs/shared-patterns/utils/validation.utils.d.ts +49 -0
  163. package/dist/cjs/shared-patterns/utils/validation.utils.d.ts.map +1 -0
  164. package/dist/cjs/shared-patterns/utils/validation.utils.js +76 -0
  165. package/dist/cjs/shared-patterns/utils/validation.utils.js.map +1 -0
  166. package/dist/esm/index.d.ts +2 -0
  167. package/dist/esm/index.d.ts.map +1 -1
  168. package/dist/esm/index.js +5 -2
  169. package/dist/esm/index.js.map +1 -1
  170. package/dist/esm/shared-lib/dto/auth.dto.d.ts +1 -2
  171. package/dist/esm/shared-lib/dto/auth.dto.d.ts.map +1 -1
  172. package/dist/esm/shared-lib/dto/auth.dto.js +1 -9
  173. package/dist/esm/shared-lib/dto/auth.dto.js.map +1 -1
  174. package/dist/esm/shared-lib/errors/base/error-classification-enums.d.ts +157 -1
  175. package/dist/esm/shared-lib/errors/base/error-classification-enums.d.ts.map +1 -1
  176. package/dist/esm/shared-lib/errors/base/error-classification-enums.js +11 -0
  177. package/dist/esm/shared-lib/errors/base/error-classification-enums.js.map +1 -1
  178. package/dist/esm/shared-lib/errors/base-business-error.d.ts +56 -2
  179. package/dist/esm/shared-lib/errors/base-business-error.d.ts.map +1 -1
  180. package/dist/esm/shared-lib/errors/base-business-error.js +101 -10
  181. package/dist/esm/shared-lib/errors/base-business-error.js.map +1 -1
  182. package/dist/esm/shared-lib/errors/domains/authentication-errors.d.ts +7 -7
  183. package/dist/esm/shared-lib/errors/domains/authentication-errors.d.ts.map +1 -1
  184. package/dist/esm/shared-lib/errors/domains/authentication-errors.js +7 -7
  185. package/dist/esm/shared-lib/errors/domains/authentication-errors.js.map +1 -1
  186. package/dist/esm/shared-lib/errors/domains/balance-errors.d.ts +2 -2
  187. package/dist/esm/shared-lib/errors/domains/balance-errors.d.ts.map +1 -1
  188. package/dist/esm/shared-lib/errors/domains/balance-errors.js +3 -3
  189. package/dist/esm/shared-lib/errors/domains/balance-errors.js.map +1 -1
  190. package/dist/esm/shared-lib/errors/domains/business-errors.d.ts +24 -3
  191. package/dist/esm/shared-lib/errors/domains/business-errors.d.ts.map +1 -1
  192. package/dist/esm/shared-lib/errors/domains/business-errors.js +37 -3
  193. package/dist/esm/shared-lib/errors/domains/business-errors.js.map +1 -1
  194. package/dist/esm/shared-lib/errors/domains/contract-errors.d.ts +2 -2
  195. package/dist/esm/shared-lib/errors/domains/contract-errors.d.ts.map +1 -1
  196. package/dist/esm/shared-lib/errors/domains/contract-errors.js +2 -2
  197. package/dist/esm/shared-lib/errors/domains/contract-errors.js.map +1 -1
  198. package/dist/esm/shared-lib/errors/domains/signing-account-errors.d.ts +7 -7
  199. package/dist/esm/shared-lib/errors/domains/signing-account-errors.d.ts.map +1 -1
  200. package/dist/esm/shared-lib/errors/domains/signing-account-errors.js +13 -11
  201. package/dist/esm/shared-lib/errors/domains/signing-account-errors.js.map +1 -1
  202. package/dist/esm/shared-lib/errors/domains/system-errors.d.ts +7 -4
  203. package/dist/esm/shared-lib/errors/domains/system-errors.d.ts.map +1 -1
  204. package/dist/esm/shared-lib/errors/domains/system-errors.js +12 -6
  205. package/dist/esm/shared-lib/errors/domains/system-errors.js.map +1 -1
  206. package/dist/esm/shared-lib/errors/domains/token-errors.d.ts +10 -4
  207. package/dist/esm/shared-lib/errors/domains/token-errors.d.ts.map +1 -1
  208. package/dist/esm/shared-lib/errors/domains/token-errors.js +17 -5
  209. package/dist/esm/shared-lib/errors/domains/token-errors.js.map +1 -1
  210. package/dist/esm/shared-lib/errors/domains/transaction-errors.d.ts +8 -5
  211. package/dist/esm/shared-lib/errors/domains/transaction-errors.d.ts.map +1 -1
  212. package/dist/esm/shared-lib/errors/domains/transaction-errors.js +13 -7
  213. package/dist/esm/shared-lib/errors/domains/transaction-errors.js.map +1 -1
  214. package/dist/esm/shared-lib/errors/domains/user-errors.d.ts +2 -2
  215. package/dist/esm/shared-lib/errors/domains/user-errors.d.ts.map +1 -1
  216. package/dist/esm/shared-lib/errors/domains/user-errors.js +2 -2
  217. package/dist/esm/shared-lib/errors/domains/user-errors.js.map +1 -1
  218. package/dist/esm/shared-lib/errors/domains/validation-errors.d.ts +4 -4
  219. package/dist/esm/shared-lib/errors/domains/validation-errors.d.ts.map +1 -1
  220. package/dist/esm/shared-lib/errors/domains/validation-errors.js +7 -8
  221. package/dist/esm/shared-lib/errors/domains/validation-errors.js.map +1 -1
  222. package/dist/esm/shared-lib/errors/domains/wallet-errors.d.ts +4 -4
  223. package/dist/esm/shared-lib/errors/domains/wallet-errors.d.ts.map +1 -1
  224. package/dist/esm/shared-lib/errors/domains/wallet-errors.js +6 -5
  225. package/dist/esm/shared-lib/errors/domains/wallet-errors.js.map +1 -1
  226. package/dist/esm/shared-lib/errors/index.d.ts +1 -1
  227. package/dist/esm/shared-lib/errors/index.d.ts.map +1 -1
  228. package/dist/esm/shared-lib/errors/index.js +1 -1
  229. package/dist/esm/shared-lib/errors/index.js.map +1 -1
  230. package/dist/esm/shared-lib/interfaces/wallet-signing-scenario.interface.d.ts +0 -2
  231. package/dist/esm/shared-lib/interfaces/wallet-signing-scenario.interface.d.ts.map +1 -1
  232. package/dist/esm/shared-patterns/database/index.d.ts +6 -0
  233. package/dist/esm/shared-patterns/database/index.d.ts.map +1 -0
  234. package/dist/esm/shared-patterns/database/index.js +8 -0
  235. package/dist/esm/shared-patterns/database/index.js.map +1 -0
  236. package/dist/esm/shared-patterns/database/models/base.model.d.ts +7 -0
  237. package/dist/esm/shared-patterns/database/models/base.model.d.ts.map +1 -0
  238. package/dist/esm/shared-patterns/database/models/base.model.js +7 -0
  239. package/dist/esm/shared-patterns/database/models/base.model.js.map +1 -0
  240. package/dist/esm/shared-patterns/database/models/fixture.model.d.ts +4 -0
  241. package/dist/esm/shared-patterns/database/models/fixture.model.d.ts.map +1 -0
  242. package/dist/esm/shared-patterns/database/models/fixture.model.js +4 -0
  243. package/dist/esm/shared-patterns/database/models/fixture.model.js.map +1 -0
  244. package/dist/esm/shared-patterns/database/schemas/fixture-fields.schema.d.ts +5 -0
  245. package/dist/esm/shared-patterns/database/schemas/fixture-fields.schema.d.ts.map +1 -0
  246. package/dist/esm/shared-patterns/database/schemas/fixture-fields.schema.js +8 -0
  247. package/dist/esm/shared-patterns/database/schemas/fixture-fields.schema.js.map +1 -0
  248. package/dist/esm/shared-patterns/database/schemas/shared-fields.schema.d.ts +44 -0
  249. package/dist/esm/shared-patterns/database/schemas/shared-fields.schema.d.ts.map +1 -0
  250. package/dist/esm/shared-patterns/database/schemas/shared-fields.schema.js +61 -0
  251. package/dist/esm/shared-patterns/database/schemas/shared-fields.schema.js.map +1 -0
  252. package/dist/esm/shared-patterns/database/schemas/tenant-fields.schema.d.ts +51 -0
  253. package/dist/esm/shared-patterns/database/schemas/tenant-fields.schema.d.ts.map +1 -0
  254. package/dist/esm/shared-patterns/database/schemas/tenant-fields.schema.js +54 -0
  255. package/dist/esm/shared-patterns/database/schemas/tenant-fields.schema.js.map +1 -0
  256. package/dist/esm/shared-patterns/enums/lambda.enum.d.ts +28 -0
  257. package/dist/esm/shared-patterns/enums/lambda.enum.d.ts.map +1 -0
  258. package/dist/esm/shared-patterns/enums/lambda.enum.js +31 -0
  259. package/dist/esm/shared-patterns/enums/lambda.enum.js.map +1 -0
  260. package/dist/esm/shared-patterns/errors/error-factory.d.ts +150 -0
  261. package/dist/esm/shared-patterns/errors/error-factory.d.ts.map +1 -0
  262. package/dist/esm/shared-patterns/errors/error-factory.js +254 -0
  263. package/dist/esm/shared-patterns/errors/error-factory.js.map +1 -0
  264. package/dist/esm/shared-patterns/exceptions/base/error-classification-enums.d.ts +118 -0
  265. package/dist/esm/shared-patterns/exceptions/base/error-classification-enums.d.ts.map +1 -0
  266. package/dist/esm/shared-patterns/exceptions/base/error-classification-enums.js +108 -0
  267. package/dist/esm/shared-patterns/exceptions/base/error-classification-enums.js.map +1 -0
  268. package/dist/esm/shared-patterns/exceptions/base/error-classifier.d.ts +23 -0
  269. package/dist/esm/shared-patterns/exceptions/base/error-classifier.d.ts.map +1 -0
  270. package/dist/esm/shared-patterns/exceptions/base/error-classifier.js +161 -0
  271. package/dist/esm/shared-patterns/exceptions/base/error-classifier.js.map +1 -0
  272. package/dist/esm/shared-patterns/exceptions/index.d.ts +3 -0
  273. package/dist/esm/shared-patterns/exceptions/index.d.ts.map +1 -0
  274. package/dist/esm/shared-patterns/exceptions/index.js +6 -0
  275. package/dist/esm/shared-patterns/exceptions/index.js.map +1 -0
  276. package/dist/esm/shared-patterns/functions/crypto.functions.d.ts +16 -0
  277. package/dist/esm/shared-patterns/functions/crypto.functions.d.ts.map +1 -0
  278. package/dist/esm/shared-patterns/functions/crypto.functions.js +67 -0
  279. package/dist/esm/shared-patterns/functions/crypto.functions.js.map +1 -0
  280. package/dist/esm/shared-patterns/functions/helper.functions.d.ts +10 -0
  281. package/dist/esm/shared-patterns/functions/helper.functions.d.ts.map +1 -0
  282. package/dist/esm/shared-patterns/functions/helper.functions.js +32 -0
  283. package/dist/esm/shared-patterns/functions/helper.functions.js.map +1 -0
  284. package/dist/esm/shared-patterns/functions/index.d.ts +4 -0
  285. package/dist/esm/shared-patterns/functions/index.d.ts.map +1 -0
  286. package/dist/esm/shared-patterns/functions/index.js +5 -0
  287. package/dist/esm/shared-patterns/functions/index.js.map +1 -0
  288. package/dist/esm/shared-patterns/functions/request.functions.d.ts +14 -0
  289. package/dist/esm/shared-patterns/functions/request.functions.d.ts.map +1 -0
  290. package/dist/esm/shared-patterns/functions/request.functions.js +61 -0
  291. package/dist/esm/shared-patterns/functions/request.functions.js.map +1 -0
  292. package/dist/esm/shared-patterns/index.d.ts +15 -0
  293. package/dist/esm/shared-patterns/index.d.ts.map +1 -0
  294. package/dist/esm/shared-patterns/index.js +28 -0
  295. package/dist/esm/shared-patterns/index.js.map +1 -0
  296. package/dist/esm/shared-patterns/interfaces/index.d.ts +3 -0
  297. package/dist/esm/shared-patterns/interfaces/index.d.ts.map +1 -0
  298. package/dist/esm/shared-patterns/interfaces/index.js +3 -0
  299. package/dist/esm/shared-patterns/interfaces/index.js.map +1 -0
  300. package/dist/esm/shared-patterns/interfaces/request.interface.d.ts +21 -0
  301. package/dist/esm/shared-patterns/interfaces/request.interface.d.ts.map +1 -0
  302. package/dist/esm/shared-patterns/interfaces/request.interface.js +11 -0
  303. package/dist/esm/shared-patterns/interfaces/request.interface.js.map +1 -0
  304. package/dist/esm/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.d.ts +9 -0
  305. package/dist/esm/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.d.ts.map +1 -0
  306. package/dist/esm/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.js +2 -0
  307. package/dist/esm/shared-patterns/interfaces/stripe-payment-intent-metadata.interface.js.map +1 -0
  308. package/dist/esm/shared-patterns/orchestrators/base-orchestrator.d.ts +90 -0
  309. package/dist/esm/shared-patterns/orchestrators/base-orchestrator.d.ts.map +1 -0
  310. package/dist/esm/shared-patterns/orchestrators/base-orchestrator.js +116 -0
  311. package/dist/esm/shared-patterns/orchestrators/base-orchestrator.js.map +1 -0
  312. package/dist/esm/shared-patterns/orchestrators/base-workflow.d.ts +50 -0
  313. package/dist/esm/shared-patterns/orchestrators/base-workflow.d.ts.map +1 -0
  314. package/dist/esm/shared-patterns/orchestrators/base-workflow.js +64 -0
  315. package/dist/esm/shared-patterns/orchestrators/base-workflow.js.map +1 -0
  316. package/dist/esm/shared-patterns/orchestrators/index.d.ts +26 -0
  317. package/dist/esm/shared-patterns/orchestrators/index.d.ts.map +1 -0
  318. package/dist/esm/shared-patterns/orchestrators/index.js +30 -0
  319. package/dist/esm/shared-patterns/orchestrators/index.js.map +1 -0
  320. package/dist/esm/shared-patterns/utils/error-message.utils.d.ts +175 -0
  321. package/dist/esm/shared-patterns/utils/error-message.utils.d.ts.map +1 -0
  322. package/dist/esm/shared-patterns/utils/error-message.utils.js +244 -0
  323. package/dist/esm/shared-patterns/utils/error-message.utils.js.map +1 -0
  324. package/dist/esm/shared-patterns/utils/index.d.ts +3 -0
  325. package/dist/esm/shared-patterns/utils/index.d.ts.map +1 -0
  326. package/dist/esm/shared-patterns/utils/index.js +4 -0
  327. package/dist/esm/shared-patterns/utils/index.js.map +1 -0
  328. package/dist/esm/shared-patterns/utils/validation.utils.d.ts +49 -0
  329. package/dist/esm/shared-patterns/utils/validation.utils.d.ts.map +1 -0
  330. package/dist/esm/shared-patterns/utils/validation.utils.js +70 -0
  331. package/dist/esm/shared-patterns/utils/validation.utils.js.map +1 -0
  332. package/package.json +2 -25
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tenantFields = void 0;
4
+ /**
5
+ * Multi-Tenant TypeORM Entity Fields
6
+ *
7
+ * MANDATORY for tenant-specific data in PERS Loyalty Backend
8
+ *
9
+ * ✅ ALWAYS INCLUDE tenantFields for:
10
+ * - User-specific data: SigningAccount, UserWallet, UserProfile, UserPreferences
11
+ * - Business domain data: Campaign, Redemption, Transaction, TokenBalance
12
+ * - API keys and authentication: ApiKey, RefreshToken, UserSession
13
+ * - Tenant-specific configuration: BusinessSettings, CampaignTemplates
14
+ * - Any data that varies by tenant/client
15
+ *
16
+ * ❌ EXCLUDE tenantFields for:
17
+ * - System-wide shared data: TokenContract, GeolocationData, SystemSettings
18
+ * - Static reference data: Country codes, currency rates, blockchain configs
19
+ * - Cross-tenant shared resources (explicitly designed to be shared)
20
+ *
21
+ * Usage Pattern:
22
+ * ```typescript
23
+ * export const MySchema = new EntitySchema<MyModel>({
24
+ * columns: {
25
+ * ...sharedFields, // Base fields (id, timestamps, soft delete)
26
+ * ...tenantFields, // Multi-tenant support (tenantId with RLS)
27
+ * // entity-specific fields below
28
+ * }
29
+ * });
30
+ * ```
31
+ *
32
+ * CRITICAL: When using tenantFields, MUST include RLS module:
33
+ * ```typescript
34
+ * @Module({
35
+ * imports: [
36
+ * TypeOrmModule.forFeature([MySchema]),
37
+ * RLSModule.forFeature([MySchema]), // REQUIRED for Row Level Security
38
+ * ],
39
+ * })
40
+ * ```
41
+ *
42
+ * Technical Details:
43
+ * - Provides: tenantId with RLS (Row Level Security) automatic population
44
+ * - RLS Function: Uses current_setting('rls.tenant_id') for automatic tenant isolation
45
+ * - Database-level security: Prevents cross-tenant data leaks automatically
46
+ * - Transparent filtering: All queries automatically filter by current tenant
47
+ *
48
+ * See: /documentation/domain-model-best-practices.md for complete patterns
49
+ */
50
+ exports.tenantFields = {
51
+ tenantId: {
52
+ type: String,
53
+ nullable: true,
54
+ default: () => "current_setting('rls.tenant_id')",
55
+ },
56
+ };
57
+ //# sourceMappingURL=tenant-fields.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenant-fields.schema.js","sourceRoot":"","sources":["../../../../../src/shared-patterns/database/schemas/tenant-fields.schema.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACU,QAAA,YAAY,GAAmD;IAC1E,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,GAAG,EAAE,CAAC,kCAAkC;KAClD;CACF,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Lambda function enums for internal microservice communication
3
+ * Used across multiple domains for lambda-based orchestration
4
+ */
5
+ /**
6
+ * Domain enum for Lambda function names
7
+ * Contains business-meaningful function categories
8
+ */
9
+ export declare enum LambdaFunctionName {
10
+ TRANSACTION = "transaction"
11
+ }
12
+ /**
13
+ * Domain enum for specific invokable Lambda functions
14
+ * Represents the business operations available through Lambda
15
+ */
16
+ export declare enum LambdaInvokableFunctionName {
17
+ RUN_TRANSACTION_ASYNC = "runTransactionAsync",
18
+ SUBMIT_SIGNED_TRANSACTION = "submitSignedTransaction"
19
+ }
20
+ /**
21
+ * Domain enum for Lambda invocation types
22
+ * Business perspective on synchronous vs asynchronous operations
23
+ */
24
+ export declare enum LambdaInvocationType {
25
+ SYNCHRONOUS = "RequestResponse",
26
+ ASYNCHRONOUS = "Event"
27
+ }
28
+ //# sourceMappingURL=lambda.enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lambda.enum.d.ts","sourceRoot":"","sources":["../../../../src/shared-patterns/enums/lambda.enum.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,oBAAY,kBAAkB;IAC5B,WAAW,gBAAgB;CAC5B;AAED;;;GAGG;AACH,oBAAY,2BAA2B;IACrC,qBAAqB,wBAAwB;IAC7C,yBAAyB,4BAA4B;CACtD;AAED;;;GAGG;AACH,oBAAY,oBAAoB;IAC9B,WAAW,oBAAoB;IAC/B,YAAY,UAAU;CACvB"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ /**
3
+ * Lambda function enums for internal microservice communication
4
+ * Used across multiple domains for lambda-based orchestration
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.LambdaInvocationType = exports.LambdaInvokableFunctionName = exports.LambdaFunctionName = void 0;
8
+ /**
9
+ * Domain enum for Lambda function names
10
+ * Contains business-meaningful function categories
11
+ */
12
+ var LambdaFunctionName;
13
+ (function (LambdaFunctionName) {
14
+ LambdaFunctionName["TRANSACTION"] = "transaction";
15
+ })(LambdaFunctionName || (exports.LambdaFunctionName = LambdaFunctionName = {}));
16
+ /**
17
+ * Domain enum for specific invokable Lambda functions
18
+ * Represents the business operations available through Lambda
19
+ */
20
+ var LambdaInvokableFunctionName;
21
+ (function (LambdaInvokableFunctionName) {
22
+ LambdaInvokableFunctionName["RUN_TRANSACTION_ASYNC"] = "runTransactionAsync";
23
+ LambdaInvokableFunctionName["SUBMIT_SIGNED_TRANSACTION"] = "submitSignedTransaction";
24
+ })(LambdaInvokableFunctionName || (exports.LambdaInvokableFunctionName = LambdaInvokableFunctionName = {}));
25
+ /**
26
+ * Domain enum for Lambda invocation types
27
+ * Business perspective on synchronous vs asynchronous operations
28
+ */
29
+ var LambdaInvocationType;
30
+ (function (LambdaInvocationType) {
31
+ LambdaInvocationType["SYNCHRONOUS"] = "RequestResponse";
32
+ LambdaInvocationType["ASYNCHRONOUS"] = "Event";
33
+ })(LambdaInvocationType || (exports.LambdaInvocationType = LambdaInvocationType = {}));
34
+ //# sourceMappingURL=lambda.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lambda.enum.js","sourceRoot":"","sources":["../../../../src/shared-patterns/enums/lambda.enum.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;;GAGG;AACH,IAAY,kBAEX;AAFD,WAAY,kBAAkB;IAC5B,iDAA2B,CAAA;AAC7B,CAAC,EAFW,kBAAkB,kCAAlB,kBAAkB,QAE7B;AAED;;;GAGG;AACH,IAAY,2BAGX;AAHD,WAAY,2BAA2B;IACrC,4EAA6C,CAAA;IAC7C,oFAAqD,CAAA;AACvD,CAAC,EAHW,2BAA2B,2CAA3B,2BAA2B,QAGtC;AAED;;;GAGG;AACH,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC9B,uDAA+B,CAAA;IAC/B,8CAAsB,CAAA;AACxB,CAAC,EAHW,oBAAoB,oCAApB,oBAAoB,QAG/B"}
@@ -0,0 +1,150 @@
1
+ import { UserNotFoundError, BusinessNotFoundError, TokenNotFoundError, TransactionNotFoundError, AuthenticationRequiredError, InvalidTokenError, TokenExpiredError, AuthorizationFailedError, InsufficientBalanceError, InvalidInputError, RequiredFieldError, InvalidFormatError, SystemError, ExternalServiceError, ConfigurationMissingError, TokenNotActiveError, TokenIdRequiredError, TokenTypeNotFoundError, TokenUnitNotFoundError, TransactionAlreadyCompletedError, TransactionNotPendingError, TransactionValidationError, SigningAccountValidationError, SigningAccountNotFoundError, SigningAccountAlreadyExistsError, KeyGenerationError, CampaignNotFoundError, GeographicRestrictionError, LocationVerificationRequiredError, RedemptionLimitReachedError, UserStatusRestrictedError, WalletNotFoundError, WalletMissingSigningError, SmartWalletProcessingError, BusinessNotMinterError, UnexpectedValidationScenarioError } from '../../shared-lib/errors';
2
+ /**
3
+ * Universal Error Factory for NestJS Applications
4
+ *
5
+ * This factory provides a clean, discoverable API for creating errors while
6
+ * maintaining the domain error classes as the single source of truth.
7
+ *
8
+ * Architecture:
9
+ * - Domain files define canonical error classes (exported as types for frontend)
10
+ * - Factory methods instantiate these domain classes (no duplication)
11
+ * - NestJS apps use factory for clean developer experience
12
+ * - Frontend devs import types from domain classes
13
+ */
14
+ export declare class ErrorFactory {
15
+ /**
16
+ * Resource "not found" patterns
17
+ * Uses domain classes internally for consistency
18
+ */
19
+ static userNotFound(identifier: string): UserNotFoundError;
20
+ static businessNotFound(identifier: string): BusinessNotFoundError;
21
+ static tokenNotFound(tokenId: string): TokenNotFoundError;
22
+ static transactionNotFound(transactionId: string): TransactionNotFoundError;
23
+ static campaignNotFound(campaignId: string): CampaignNotFoundError;
24
+ static tokenUnitNotFound(tokenUnitId?: string): TokenUnitNotFoundError;
25
+ /**
26
+ * Authentication & Authorization patterns
27
+ */
28
+ static authRequired(resource?: string): AuthenticationRequiredError;
29
+ static invalidToken(reason?: string): InvalidTokenError;
30
+ static tokenExpired(): TokenExpiredError;
31
+ static forbidden(action: string, resource: string): AuthorizationFailedError;
32
+ /**
33
+ * Business rule patterns
34
+ */
35
+ static geographicRestriction(countryCode: string, resource?: string): GeographicRestrictionError;
36
+ static locationRequired(resource?: string): LocationVerificationRequiredError;
37
+ static limitReached(limitType: 'max_redemption' | 'user_limit'): RedemptionLimitReachedError;
38
+ static userStatusRestricted(): UserStatusRestrictedError;
39
+ /**
40
+ * Validation patterns
41
+ */
42
+ static invalidInput(field: string, reason?: string): InvalidInputError;
43
+ static requiredField(field: string): RequiredFieldError;
44
+ static invalidFormat(field: string, expectedFormat: string): InvalidFormatError;
45
+ /**
46
+ * Financial/Balance patterns
47
+ */
48
+ static insufficientBalance(required: string, available: string): InsufficientBalanceError;
49
+ /**
50
+ * Technical/Infrastructure patterns
51
+ */
52
+ static systemError(operation: string, details: string): SystemError;
53
+ static externalServiceError(serviceName: string, operation: string): ExternalServiceError;
54
+ static configMissing(configKey: string): ConfigurationMissingError;
55
+ /**
56
+ * Token-specific patterns
57
+ */
58
+ static tokenNotActive(tokenId: string): TokenNotActiveError;
59
+ static tokenIdRequired(tokenType: string): TokenIdRequiredError;
60
+ static tokenTypeNotFound(tokenType: string): TokenTypeNotFoundError;
61
+ /**
62
+ * Transaction-specific patterns
63
+ */
64
+ static transactionAlreadyCompleted(transactionId: string, currentStatus: string): TransactionAlreadyCompletedError;
65
+ static transactionNotPending(transactionId: string, currentStatus: string): TransactionNotPendingError;
66
+ static transactionValidation(field: string, reason: string): TransactionValidationError;
67
+ /**
68
+ * Signing account patterns
69
+ */
70
+ static signingAccountValidation(field: string, reason: string): SigningAccountValidationError;
71
+ static signingAccountNotFound(identifier: string): SigningAccountNotFoundError;
72
+ static signingAccountAlreadyExists(accountAddress: string): SigningAccountAlreadyExistsError;
73
+ static keyGeneration(reason: string): KeyGenerationError;
74
+ /**
75
+ * Wallet patterns
76
+ */
77
+ static walletNotFound(ownerAddress: string): WalletNotFoundError;
78
+ static walletMissingSigning(walletAddress: string, reason: string): WalletMissingSigningError;
79
+ static smartWalletProcessing(reason: string): SmartWalletProcessingError;
80
+ /**
81
+ * Business patterns
82
+ */
83
+ static businessNotMinter(businessId: string, tokenAddress: string): BusinessNotMinterError;
84
+ /**
85
+ * Validation patterns
86
+ */
87
+ static unexpectedValidationScenario(context: string): UnexpectedValidationScenarioError;
88
+ }
89
+ /**
90
+ * Convenient shortcut object for the most commonly used error patterns
91
+ * Provides clean, discoverable API for NestJS applications
92
+ */
93
+ export declare const Errors: {
94
+ userNotFound: (id: string) => UserNotFoundError;
95
+ businessNotFound: (id: string) => BusinessNotFoundError;
96
+ tokenNotFound: (id: string) => TokenNotFoundError;
97
+ tokenUnitNotFound: (id?: string) => TokenUnitNotFoundError;
98
+ transactionNotFound: (id: string) => TransactionNotFoundError;
99
+ campaignNotFound: (id: string) => CampaignNotFoundError;
100
+ authRequired: (resource?: string) => AuthenticationRequiredError;
101
+ invalidToken: (reason?: string) => InvalidTokenError;
102
+ tokenExpired: () => TokenExpiredError;
103
+ forbidden: (action: string, resource: string) => AuthorizationFailedError;
104
+ geographicRestriction: (countryCode: string, resource?: string) => GeographicRestrictionError;
105
+ locationRequired: (resource?: string) => LocationVerificationRequiredError;
106
+ limitReached: (limitType: "max_redemption" | "user_limit") => RedemptionLimitReachedError;
107
+ userStatusRestricted: () => UserStatusRestrictedError;
108
+ invalidInput: (field: string, reason?: string) => InvalidInputError;
109
+ requiredField: (field: string) => RequiredFieldError;
110
+ invalidFormat: (field: string, format: string) => InvalidFormatError;
111
+ insufficientBalance: (required: string, available: string) => InsufficientBalanceError;
112
+ systemError: (operation: string, details: string) => SystemError;
113
+ externalServiceError: (service: string, operation: string) => ExternalServiceError;
114
+ configMissing: (key: string) => ConfigurationMissingError;
115
+ tokenNotActive: (id: string) => TokenNotActiveError;
116
+ tokenIdRequired: (type: string) => TokenIdRequiredError;
117
+ tokenTypeNotFound: (type: string) => TokenTypeNotFoundError;
118
+ transactionAlreadyCompleted: (id: string, status: string) => TransactionAlreadyCompletedError;
119
+ transactionNotPending: (id: string, status: string) => TransactionNotPendingError;
120
+ transactionValidation: (field: string, reason: string) => TransactionValidationError;
121
+ signingAccountValidation: (field: string, reason: string) => SigningAccountValidationError;
122
+ signingAccountNotFound: (id: string) => SigningAccountNotFoundError;
123
+ signingAccountAlreadyExists: (address: string) => SigningAccountAlreadyExistsError;
124
+ keyGeneration: (reason: string) => KeyGenerationError;
125
+ walletNotFound: (address: string) => WalletNotFoundError;
126
+ walletMissingSigning: (address: string, reason: string) => WalletMissingSigningError;
127
+ smartWalletProcessing: (reason: string) => SmartWalletProcessingError;
128
+ businessNotMinter: (businessId: string, tokenAddress: string) => BusinessNotMinterError;
129
+ unexpectedValidationScenario: (context: string) => UnexpectedValidationScenarioError;
130
+ };
131
+ /**
132
+ * Advanced Error Builder for complex scenarios
133
+ * Still references domain classes when possible
134
+ */
135
+ export declare class ErrorBuilder {
136
+ private config;
137
+ static create(): ErrorBuilder;
138
+ /**
139
+ * Use a specific domain error class
140
+ */
141
+ useClass(errorClass: any, ...params: any[]): ErrorBuilder;
142
+ /**
143
+ * Build the error instance
144
+ */
145
+ build(): Error;
146
+ buildUserNotFound(id: string): UserNotFoundError;
147
+ buildBusinessNotFound(id: string): BusinessNotFoundError;
148
+ buildAuthRequired(resource: string): AuthenticationRequiredError;
149
+ }
150
+ //# sourceMappingURL=error-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-factory.d.ts","sourceRoot":"","sources":["../../../../src/shared-patterns/errors/error-factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,257 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ErrorBuilder = exports.Errors = exports.ErrorFactory = void 0;
4
+ const errors_1 = require("../../shared-lib/errors");
5
+ /**
6
+ * Universal Error Factory for NestJS Applications
7
+ *
8
+ * This factory provides a clean, discoverable API for creating errors while
9
+ * maintaining the domain error classes as the single source of truth.
10
+ *
11
+ * Architecture:
12
+ * - Domain files define canonical error classes (exported as types for frontend)
13
+ * - Factory methods instantiate these domain classes (no duplication)
14
+ * - NestJS apps use factory for clean developer experience
15
+ * - Frontend devs import types from domain classes
16
+ */
17
+ class ErrorFactory {
18
+ /**
19
+ * Resource "not found" patterns
20
+ * Uses domain classes internally for consistency
21
+ */
22
+ static userNotFound(identifier) {
23
+ return new errors_1.UserNotFoundError(identifier);
24
+ }
25
+ static businessNotFound(identifier) {
26
+ return new errors_1.BusinessNotFoundError(identifier);
27
+ }
28
+ static tokenNotFound(tokenId) {
29
+ return new errors_1.TokenNotFoundError(tokenId);
30
+ }
31
+ static transactionNotFound(transactionId) {
32
+ return new errors_1.TransactionNotFoundError(transactionId);
33
+ }
34
+ static campaignNotFound(campaignId) {
35
+ return new errors_1.CampaignNotFoundError(campaignId);
36
+ }
37
+ static tokenUnitNotFound(tokenUnitId) {
38
+ return new errors_1.TokenUnitNotFoundError(tokenUnitId);
39
+ }
40
+ /**
41
+ * Authentication & Authorization patterns
42
+ */
43
+ static authRequired(resource) {
44
+ return new errors_1.AuthenticationRequiredError(resource || 'this resource');
45
+ }
46
+ static invalidToken(reason) {
47
+ return new errors_1.InvalidTokenError(reason);
48
+ }
49
+ static tokenExpired() {
50
+ return new errors_1.TokenExpiredError();
51
+ }
52
+ static forbidden(action, resource) {
53
+ return new errors_1.AuthorizationFailedError(action, resource);
54
+ }
55
+ /**
56
+ * Business rule patterns
57
+ */
58
+ static geographicRestriction(countryCode, resource) {
59
+ return new errors_1.GeographicRestrictionError(countryCode, resource);
60
+ }
61
+ static locationRequired(resource) {
62
+ return new errors_1.LocationVerificationRequiredError(resource);
63
+ }
64
+ static limitReached(limitType) {
65
+ return new errors_1.RedemptionLimitReachedError(limitType);
66
+ }
67
+ static userStatusRestricted() {
68
+ return new errors_1.UserStatusRestrictedError();
69
+ }
70
+ /**
71
+ * Validation patterns
72
+ */
73
+ static invalidInput(field, reason) {
74
+ return new errors_1.InvalidInputError(field, reason);
75
+ }
76
+ static requiredField(field) {
77
+ return new errors_1.RequiredFieldError(field);
78
+ }
79
+ static invalidFormat(field, expectedFormat) {
80
+ return new errors_1.InvalidFormatError(field, expectedFormat);
81
+ }
82
+ /**
83
+ * Financial/Balance patterns
84
+ */
85
+ static insufficientBalance(required, available) {
86
+ return new errors_1.InsufficientBalanceError(required, available);
87
+ }
88
+ /**
89
+ * Technical/Infrastructure patterns
90
+ */
91
+ static systemError(operation, details) {
92
+ return new errors_1.SystemError(operation, details);
93
+ }
94
+ static externalServiceError(serviceName, operation) {
95
+ return new errors_1.ExternalServiceError(serviceName, operation);
96
+ }
97
+ static configMissing(configKey) {
98
+ return new errors_1.ConfigurationMissingError(configKey);
99
+ }
100
+ /**
101
+ * Token-specific patterns
102
+ */
103
+ static tokenNotActive(tokenId) {
104
+ return new errors_1.TokenNotActiveError(tokenId);
105
+ }
106
+ static tokenIdRequired(tokenType) {
107
+ return new errors_1.TokenIdRequiredError(tokenType);
108
+ }
109
+ static tokenTypeNotFound(tokenType) {
110
+ return new errors_1.TokenTypeNotFoundError(tokenType);
111
+ }
112
+ /**
113
+ * Transaction-specific patterns
114
+ */
115
+ static transactionAlreadyCompleted(transactionId, currentStatus) {
116
+ return new errors_1.TransactionAlreadyCompletedError(transactionId, currentStatus);
117
+ }
118
+ static transactionNotPending(transactionId, currentStatus) {
119
+ return new errors_1.TransactionNotPendingError(transactionId, currentStatus);
120
+ }
121
+ static transactionValidation(field, reason) {
122
+ return new errors_1.TransactionValidationError(field, reason);
123
+ }
124
+ /**
125
+ * Signing account patterns
126
+ */
127
+ static signingAccountValidation(field, reason) {
128
+ return new errors_1.SigningAccountValidationError(field, reason);
129
+ }
130
+ static signingAccountNotFound(identifier) {
131
+ return new errors_1.SigningAccountNotFoundError(identifier);
132
+ }
133
+ static signingAccountAlreadyExists(accountAddress) {
134
+ return new errors_1.SigningAccountAlreadyExistsError(accountAddress);
135
+ }
136
+ static keyGeneration(reason) {
137
+ return new errors_1.KeyGenerationError(reason);
138
+ }
139
+ /**
140
+ * Wallet patterns
141
+ */
142
+ static walletNotFound(ownerAddress) {
143
+ return new errors_1.WalletNotFoundError(ownerAddress);
144
+ }
145
+ static walletMissingSigning(walletAddress, reason) {
146
+ return new errors_1.WalletMissingSigningError(walletAddress, reason);
147
+ }
148
+ static smartWalletProcessing(reason) {
149
+ return new errors_1.SmartWalletProcessingError(reason);
150
+ }
151
+ /**
152
+ * Business patterns
153
+ */
154
+ static businessNotMinter(businessId, tokenAddress) {
155
+ return new errors_1.BusinessNotMinterError(businessId, tokenAddress);
156
+ }
157
+ /**
158
+ * Validation patterns
159
+ */
160
+ static unexpectedValidationScenario(context) {
161
+ return new errors_1.UnexpectedValidationScenarioError(context);
162
+ }
163
+ }
164
+ exports.ErrorFactory = ErrorFactory;
165
+ /**
166
+ * Convenient shortcut object for the most commonly used error patterns
167
+ * Provides clean, discoverable API for NestJS applications
168
+ */
169
+ exports.Errors = {
170
+ // Resource not found
171
+ userNotFound: (id) => ErrorFactory.userNotFound(id),
172
+ businessNotFound: (id) => ErrorFactory.businessNotFound(id),
173
+ tokenNotFound: (id) => ErrorFactory.tokenNotFound(id),
174
+ tokenUnitNotFound: (id) => ErrorFactory.tokenUnitNotFound(id),
175
+ transactionNotFound: (id) => ErrorFactory.transactionNotFound(id),
176
+ campaignNotFound: (id) => ErrorFactory.campaignNotFound(id),
177
+ // Authentication
178
+ authRequired: (resource) => ErrorFactory.authRequired(resource),
179
+ invalidToken: (reason) => ErrorFactory.invalidToken(reason),
180
+ tokenExpired: () => ErrorFactory.tokenExpired(),
181
+ forbidden: (action, resource) => ErrorFactory.forbidden(action, resource),
182
+ // Business rules
183
+ geographicRestriction: (countryCode, resource) => ErrorFactory.geographicRestriction(countryCode, resource),
184
+ locationRequired: (resource) => ErrorFactory.locationRequired(resource),
185
+ limitReached: (limitType) => ErrorFactory.limitReached(limitType),
186
+ userStatusRestricted: () => ErrorFactory.userStatusRestricted(),
187
+ // Validation
188
+ invalidInput: (field, reason) => ErrorFactory.invalidInput(field, reason),
189
+ requiredField: (field) => ErrorFactory.requiredField(field),
190
+ invalidFormat: (field, format) => ErrorFactory.invalidFormat(field, format),
191
+ // Financial
192
+ insufficientBalance: (required, available) => ErrorFactory.insufficientBalance(required, available),
193
+ // Technical
194
+ systemError: (operation, details) => ErrorFactory.systemError(operation, details),
195
+ externalServiceError: (service, operation) => ErrorFactory.externalServiceError(service, operation),
196
+ configMissing: (key) => ErrorFactory.configMissing(key),
197
+ // Token specific
198
+ tokenNotActive: (id) => ErrorFactory.tokenNotActive(id),
199
+ tokenIdRequired: (type) => ErrorFactory.tokenIdRequired(type),
200
+ tokenTypeNotFound: (type) => ErrorFactory.tokenTypeNotFound(type),
201
+ // Transaction specific
202
+ transactionAlreadyCompleted: (id, status) => ErrorFactory.transactionAlreadyCompleted(id, status),
203
+ transactionNotPending: (id, status) => ErrorFactory.transactionNotPending(id, status),
204
+ transactionValidation: (field, reason) => ErrorFactory.transactionValidation(field, reason),
205
+ // Signing account
206
+ signingAccountValidation: (field, reason) => ErrorFactory.signingAccountValidation(field, reason),
207
+ signingAccountNotFound: (id) => ErrorFactory.signingAccountNotFound(id),
208
+ signingAccountAlreadyExists: (address) => ErrorFactory.signingAccountAlreadyExists(address),
209
+ keyGeneration: (reason) => ErrorFactory.keyGeneration(reason),
210
+ // Wallet
211
+ walletNotFound: (address) => ErrorFactory.walletNotFound(address),
212
+ walletMissingSigning: (address, reason) => ErrorFactory.walletMissingSigning(address, reason),
213
+ smartWalletProcessing: (reason) => ErrorFactory.smartWalletProcessing(reason),
214
+ // Business
215
+ businessNotMinter: (businessId, tokenAddress) => ErrorFactory.businessNotMinter(businessId, tokenAddress),
216
+ // Validation
217
+ unexpectedValidationScenario: (context) => ErrorFactory.unexpectedValidationScenario(context)
218
+ };
219
+ /**
220
+ * Advanced Error Builder for complex scenarios
221
+ * Still references domain classes when possible
222
+ */
223
+ class ErrorBuilder {
224
+ config = {};
225
+ static create() {
226
+ return new ErrorBuilder();
227
+ }
228
+ /**
229
+ * Use a specific domain error class
230
+ */
231
+ useClass(errorClass, ...params) {
232
+ this.config.errorClass = errorClass;
233
+ this.config.params = params;
234
+ return this;
235
+ }
236
+ /**
237
+ * Build the error instance
238
+ */
239
+ build() {
240
+ if (this.config.errorClass && this.config.params) {
241
+ return new this.config.errorClass(...this.config.params);
242
+ }
243
+ throw new Error('ErrorBuilder: No error class specified');
244
+ }
245
+ // Convenience methods for common error types
246
+ buildUserNotFound(id) {
247
+ return new errors_1.UserNotFoundError(id);
248
+ }
249
+ buildBusinessNotFound(id) {
250
+ return new errors_1.BusinessNotFoundError(id);
251
+ }
252
+ buildAuthRequired(resource) {
253
+ return new errors_1.AuthenticationRequiredError(resource);
254
+ }
255
+ }
256
+ exports.ErrorBuilder = ErrorBuilder;
257
+ //# sourceMappingURL=error-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-factory.js","sourceRoot":"","sources":["../../../../src/shared-patterns/errors/error-factory.ts"],"names":[],"mappings":"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"}