@veruna/api-contracts 1.0.39 → 1.0.41

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 (68) hide show
  1. package/build/controllers/index.d.ts +2 -0
  2. package/build/controllers/index.js +5 -1
  3. package/build/controllers/sitemap.controllers.d.ts +1 -0
  4. package/build/controllers/sitemap.controllers.js +4 -0
  5. package/build/controllers/wallet.controllers.d.ts +7 -0
  6. package/build/controllers/wallet.controllers.js +10 -0
  7. package/build/rest-api.d.ts +3 -0
  8. package/build/rest-api.js +4 -0
  9. package/build/routes/index.d.ts +2 -0
  10. package/build/routes/index.js +5 -1
  11. package/build/routes/sitemap.routes.d.ts +3 -0
  12. package/build/routes/sitemap.routes.js +6 -0
  13. package/build/routes/wallet.routes.d.ts +11 -0
  14. package/build/routes/wallet.routes.js +14 -0
  15. package/build/shared/common-schemas.d.ts +5 -0
  16. package/build/shared/common-schemas.js +9 -4
  17. package/build/shared/regex.d.ts +1 -0
  18. package/build/shared/regex.js +3 -1
  19. package/build/v1/blog/admin/commands/create-post.command.d.ts +4 -2
  20. package/build/v1/blog/admin/commands/update-post.command.d.ts +4 -2
  21. package/build/v1/blog/admin/queries/get-post.query.d.ts +2 -1
  22. package/build/v1/blog/admin/queries/get-posts.query.d.ts +2 -1
  23. package/build/v1/blog/public/queries/get-post-by-alias.query.d.ts +6 -1
  24. package/build/v1/blog/public/queries/get-post-by-alias.query.js +1 -1
  25. package/build/v1/blog/public/queries/get-posts.query.d.ts +2 -1
  26. package/build/v1/blog/schemas/blog-post-mark.enum.d.ts +7 -0
  27. package/build/v1/blog/schemas/blog-post-mark.enum.js +11 -0
  28. package/build/v1/blog/schemas/create-post-request.schema.d.ts +3 -1
  29. package/build/v1/blog/schemas/create-post-request.schema.js +6 -4
  30. package/build/v1/blog/schemas/index.d.ts +2 -0
  31. package/build/v1/blog/schemas/index.js +2 -0
  32. package/build/v1/blog/schemas/post-response.schema.d.ts +3 -1
  33. package/build/v1/blog/schemas/post-response.schema.js +3 -1
  34. package/build/v1/blog/schemas/public-post-response.schema.d.ts +44 -0
  35. package/build/v1/blog/schemas/public-post-response.schema.js +20 -0
  36. package/build/v1/blog/schemas/update-post-request.schema.d.ts +3 -1
  37. package/build/v1/blog/schemas/update-post-request.schema.js +6 -3
  38. package/build/v1/index.d.ts +2 -0
  39. package/build/v1/index.js +2 -0
  40. package/build/v1/sitemap/index.d.ts +1 -0
  41. package/build/v1/sitemap/index.js +5 -0
  42. package/build/v1/sitemap/sitemap-changefreq.enum.d.ts +9 -0
  43. package/build/v1/sitemap/sitemap-changefreq.enum.js +13 -0
  44. package/build/v1/wallet/index.d.ts +5 -0
  45. package/build/v1/wallet/index.js +25 -0
  46. package/build/v1/wallet/queries/get-balance-summary.query.d.ts +29 -0
  47. package/build/v1/wallet/queries/get-balance-summary.query.js +18 -0
  48. package/build/v1/wallet/queries/index.d.ts +1 -0
  49. package/build/v1/wallet/queries/index.js +5 -0
  50. package/build/v1/wallet/schemas/balance-response.schema.d.ts +40 -0
  51. package/build/v1/wallet/schemas/balance-response.schema.js +32 -0
  52. package/build/v1/wallet/schemas/balance-status.enum.d.ts +11 -0
  53. package/build/v1/wallet/schemas/balance-status.enum.js +15 -0
  54. package/build/v1/wallet/schemas/hold-status.enum.d.ts +10 -0
  55. package/build/v1/wallet/schemas/hold-status.enum.js +14 -0
  56. package/build/v1/wallet/schemas/index.d.ts +7 -0
  57. package/build/v1/wallet/schemas/index.js +25 -0
  58. package/build/v1/wallet/schemas/initiator-type.enum.d.ts +12 -0
  59. package/build/v1/wallet/schemas/initiator-type.enum.js +16 -0
  60. package/build/v1/wallet/schemas/metadata.schema.d.ts +29 -0
  61. package/build/v1/wallet/schemas/metadata.schema.js +105 -0
  62. package/build/v1/wallet/schemas/source-type.enum.d.ts +13 -0
  63. package/build/v1/wallet/schemas/source-type.enum.js +17 -0
  64. package/build/v1/wallet/schemas/transaction-type.enum.d.ts +17 -0
  65. package/build/v1/wallet/schemas/transaction-type.enum.js +21 -0
  66. package/build/v1/wallet/wallet.errors.d.ts +37 -0
  67. package/build/v1/wallet/wallet.errors.js +171 -0
  68. package/package.json +1 -1
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WALLET_ERRORS = exports.WalletErrorCode = void 0;
4
+ /**
5
+ * Wallet Error Codes
6
+ * See WALLET_API.md section 7 for error specifications
7
+ */
8
+ var WalletErrorCode;
9
+ (function (WalletErrorCode) {
10
+ // Balance errors
11
+ WalletErrorCode["INSUFFICIENT_BALANCE"] = "INSUFFICIENT_BALANCE";
12
+ WalletErrorCode["BALANCE_NOT_FOUND"] = "BALANCE_NOT_FOUND";
13
+ WalletErrorCode["BALANCE_TYPE_NOT_FOUND"] = "BALANCE_TYPE_NOT_FOUND";
14
+ WalletErrorCode["BALANCE_NOT_ACTIVE"] = "BALANCE_NOT_ACTIVE";
15
+ WalletErrorCode["BALANCE_HAS_PENDING_HOLD"] = "BALANCE_HAS_PENDING_HOLD";
16
+ // Hold errors
17
+ WalletErrorCode["HOLD_NOT_FOUND"] = "HOLD_NOT_FOUND";
18
+ WalletErrorCode["HOLD_ALREADY_PROCESSED"] = "HOLD_ALREADY_PROCESSED";
19
+ WalletErrorCode["HOLD_NOT_PENDING"] = "HOLD_NOT_PENDING";
20
+ WalletErrorCode["HOLD_EXPIRED"] = "HOLD_EXPIRED";
21
+ WalletErrorCode["DUPLICATE_HOLD"] = "DUPLICATE_HOLD";
22
+ // Available balance errors
23
+ WalletErrorCode["INSUFFICIENT_AVAILABLE_BALANCE"] = "INSUFFICIENT_AVAILABLE_BALANCE";
24
+ WalletErrorCode["BALANCE_STATE_CHANGED"] = "BALANCE_STATE_CHANGED";
25
+ // Validation errors
26
+ WalletErrorCode["INVALID_AMOUNT"] = "INVALID_AMOUNT";
27
+ WalletErrorCode["AMOUNT_OVERFLOW"] = "AMOUNT_OVERFLOW";
28
+ WalletErrorCode["INVALID_TTL"] = "INVALID_TTL";
29
+ WalletErrorCode["INVALID_METADATA"] = "INVALID_METADATA";
30
+ WalletErrorCode["INVALID_INITIATOR_TYPE"] = "INVALID_INITIATOR_TYPE";
31
+ WalletErrorCode["INVALID_BALANCE_STATUS"] = "INVALID_BALANCE_STATUS";
32
+ WalletErrorCode["INVALID_HOLD_STATUS"] = "INVALID_HOLD_STATUS";
33
+ WalletErrorCode["INVALID_TRANSACTION_TYPE"] = "INVALID_TRANSACTION_TYPE";
34
+ WalletErrorCode["INVALID_SOURCE_TYPE"] = "INVALID_SOURCE_TYPE";
35
+ WalletErrorCode["INVALID_VERSION"] = "INVALID_VERSION";
36
+ WalletErrorCode["INVALID_OPERATION_TYPE"] = "INVALID_OPERATION_TYPE";
37
+ WalletErrorCode["INVALID_OPERATION_ID"] = "INVALID_OPERATION_ID";
38
+ WalletErrorCode["INVALID_HOLD_ID"] = "INVALID_HOLD_ID";
39
+ WalletErrorCode["INVALID_BALANCE_ID"] = "INVALID_BALANCE_ID";
40
+ // Data integrity errors
41
+ WalletErrorCode["DATA_INTEGRITY_ERROR"] = "DATA_INTEGRITY_ERROR";
42
+ // Concurrency errors
43
+ WalletErrorCode["CONCURRENT_MODIFICATION"] = "CONCURRENT_MODIFICATION";
44
+ // Idempotency
45
+ WalletErrorCode["DUPLICATE_IDEMPOTENCY_KEY"] = "DUPLICATE_IDEMPOTENCY_KEY";
46
+ })(WalletErrorCode || (exports.WalletErrorCode = WalletErrorCode = {}));
47
+ exports.WALLET_ERRORS = {
48
+ // Balance errors - 4xx
49
+ [WalletErrorCode.INSUFFICIENT_BALANCE]: {
50
+ code: WalletErrorCode.INSUFFICIENT_BALANCE,
51
+ statusCode: 402,
52
+ },
53
+ [WalletErrorCode.BALANCE_NOT_FOUND]: {
54
+ code: WalletErrorCode.BALANCE_NOT_FOUND,
55
+ statusCode: 404,
56
+ },
57
+ [WalletErrorCode.BALANCE_TYPE_NOT_FOUND]: {
58
+ code: WalletErrorCode.BALANCE_TYPE_NOT_FOUND,
59
+ statusCode: 400,
60
+ },
61
+ [WalletErrorCode.BALANCE_NOT_ACTIVE]: {
62
+ code: WalletErrorCode.BALANCE_NOT_ACTIVE,
63
+ statusCode: 409,
64
+ },
65
+ [WalletErrorCode.BALANCE_HAS_PENDING_HOLD]: {
66
+ code: WalletErrorCode.BALANCE_HAS_PENDING_HOLD,
67
+ statusCode: 409,
68
+ },
69
+ // Hold errors
70
+ [WalletErrorCode.HOLD_NOT_FOUND]: {
71
+ code: WalletErrorCode.HOLD_NOT_FOUND,
72
+ statusCode: 404,
73
+ },
74
+ [WalletErrorCode.HOLD_ALREADY_PROCESSED]: {
75
+ code: WalletErrorCode.HOLD_ALREADY_PROCESSED,
76
+ statusCode: 409,
77
+ },
78
+ [WalletErrorCode.HOLD_NOT_PENDING]: {
79
+ code: WalletErrorCode.HOLD_NOT_PENDING,
80
+ statusCode: 409,
81
+ },
82
+ [WalletErrorCode.HOLD_EXPIRED]: {
83
+ code: WalletErrorCode.HOLD_EXPIRED,
84
+ statusCode: 410,
85
+ },
86
+ [WalletErrorCode.DUPLICATE_HOLD]: {
87
+ code: WalletErrorCode.DUPLICATE_HOLD,
88
+ statusCode: 409,
89
+ },
90
+ // Available balance errors
91
+ [WalletErrorCode.INSUFFICIENT_AVAILABLE_BALANCE]: {
92
+ code: WalletErrorCode.INSUFFICIENT_AVAILABLE_BALANCE,
93
+ statusCode: 402,
94
+ },
95
+ [WalletErrorCode.BALANCE_STATE_CHANGED]: {
96
+ code: WalletErrorCode.BALANCE_STATE_CHANGED,
97
+ statusCode: 409,
98
+ },
99
+ // Validation errors
100
+ [WalletErrorCode.INVALID_AMOUNT]: {
101
+ code: WalletErrorCode.INVALID_AMOUNT,
102
+ statusCode: 400,
103
+ },
104
+ [WalletErrorCode.AMOUNT_OVERFLOW]: {
105
+ code: WalletErrorCode.AMOUNT_OVERFLOW,
106
+ statusCode: 400,
107
+ },
108
+ [WalletErrorCode.INVALID_TTL]: {
109
+ code: WalletErrorCode.INVALID_TTL,
110
+ statusCode: 400,
111
+ },
112
+ [WalletErrorCode.INVALID_METADATA]: {
113
+ code: WalletErrorCode.INVALID_METADATA,
114
+ statusCode: 400,
115
+ },
116
+ // Concurrency errors
117
+ [WalletErrorCode.CONCURRENT_MODIFICATION]: {
118
+ code: WalletErrorCode.CONCURRENT_MODIFICATION,
119
+ statusCode: 409,
120
+ },
121
+ // Idempotency
122
+ [WalletErrorCode.DUPLICATE_IDEMPOTENCY_KEY]: {
123
+ code: WalletErrorCode.DUPLICATE_IDEMPOTENCY_KEY,
124
+ statusCode: 409,
125
+ },
126
+ // Value Object validation errors
127
+ [WalletErrorCode.INVALID_INITIATOR_TYPE]: {
128
+ code: WalletErrorCode.INVALID_INITIATOR_TYPE,
129
+ statusCode: 400,
130
+ },
131
+ [WalletErrorCode.INVALID_BALANCE_STATUS]: {
132
+ code: WalletErrorCode.INVALID_BALANCE_STATUS,
133
+ statusCode: 400,
134
+ },
135
+ [WalletErrorCode.INVALID_HOLD_STATUS]: {
136
+ code: WalletErrorCode.INVALID_HOLD_STATUS,
137
+ statusCode: 400,
138
+ },
139
+ [WalletErrorCode.INVALID_TRANSACTION_TYPE]: {
140
+ code: WalletErrorCode.INVALID_TRANSACTION_TYPE,
141
+ statusCode: 400,
142
+ },
143
+ [WalletErrorCode.INVALID_SOURCE_TYPE]: {
144
+ code: WalletErrorCode.INVALID_SOURCE_TYPE,
145
+ statusCode: 400,
146
+ },
147
+ [WalletErrorCode.INVALID_VERSION]: {
148
+ code: WalletErrorCode.INVALID_VERSION,
149
+ statusCode: 400,
150
+ },
151
+ [WalletErrorCode.INVALID_OPERATION_TYPE]: {
152
+ code: WalletErrorCode.INVALID_OPERATION_TYPE,
153
+ statusCode: 400,
154
+ },
155
+ [WalletErrorCode.INVALID_OPERATION_ID]: {
156
+ code: WalletErrorCode.INVALID_OPERATION_ID,
157
+ statusCode: 400,
158
+ },
159
+ [WalletErrorCode.INVALID_HOLD_ID]: {
160
+ code: WalletErrorCode.INVALID_HOLD_ID,
161
+ statusCode: 400,
162
+ },
163
+ [WalletErrorCode.INVALID_BALANCE_ID]: {
164
+ code: WalletErrorCode.INVALID_BALANCE_ID,
165
+ statusCode: 400,
166
+ },
167
+ [WalletErrorCode.DATA_INTEGRITY_ERROR]: {
168
+ code: WalletErrorCode.DATA_INTEGRITY_ERROR,
169
+ statusCode: 500,
170
+ },
171
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veruna/api-contracts",
3
- "version": "1.0.39",
3
+ "version": "1.0.41",
4
4
  "description": "API contracts for Veruna project - Zod schemas, types, and paths",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",