@porulle/plugin-marketplace 0.64.0 → 0.65.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 (57) hide show
  1. package/README.md +11 -59
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +3 -11
  4. package/dist/routes/b2b.d.ts +1 -3
  5. package/dist/routes/b2b.d.ts.map +1 -1
  6. package/dist/routes/b2b.js +2 -70
  7. package/dist/routes/sub-orders.js +3 -3
  8. package/dist/routes/vendor-portal.js +6 -6
  9. package/dist/schema.d.ts +0 -194
  10. package/dist/schema.d.ts.map +1 -1
  11. package/dist/schema.js +0 -14
  12. package/dist/schemas/b2b.d.ts +0 -986
  13. package/dist/schemas/b2b.d.ts.map +1 -1
  14. package/dist/schemas/b2b.js +1 -184
  15. package/dist/schemas/commission.d.ts +0 -495
  16. package/dist/schemas/commission.d.ts.map +1 -1
  17. package/dist/schemas/commission.js +1 -78
  18. package/dist/schemas/disputes-returns-reviews.d.ts +0 -1354
  19. package/dist/schemas/disputes-returns-reviews.d.ts.map +1 -1
  20. package/dist/schemas/disputes-returns-reviews.js +1 -208
  21. package/dist/schemas/sub-orders.d.ts +0 -290
  22. package/dist/schemas/sub-orders.d.ts.map +1 -1
  23. package/dist/schemas/sub-orders.js +1 -59
  24. package/dist/schemas/vendor-portal.d.ts +0 -1755
  25. package/dist/schemas/vendor-portal.d.ts.map +1 -1
  26. package/dist/schemas/vendor-portal.js +1 -247
  27. package/dist/schemas/vendors.d.ts +0 -1321
  28. package/dist/schemas/vendors.d.ts.map +1 -1
  29. package/dist/schemas/vendors.js +1 -205
  30. package/dist/services/sub-order.d.ts +1 -31
  31. package/dist/services/sub-order.d.ts.map +1 -1
  32. package/dist/services/sub-order.js +14 -22
  33. package/dist/types.d.ts +0 -17
  34. package/dist/types.d.ts.map +1 -1
  35. package/dist/types.js +0 -4
  36. package/package.json +2 -2
  37. package/src/index.ts +3 -11
  38. package/src/routes/b2b.ts +1 -76
  39. package/src/routes/sub-orders.ts +3 -3
  40. package/src/routes/vendor-portal.ts +6 -6
  41. package/src/schema.ts +0 -16
  42. package/src/schemas/b2b.ts +1 -208
  43. package/src/schemas/commission.ts +1 -86
  44. package/src/schemas/disputes-returns-reviews.ts +1 -225
  45. package/src/schemas/sub-orders.ts +1 -65
  46. package/src/schemas/vendor-portal.ts +1 -269
  47. package/src/schemas/vendors.ts +1 -222
  48. package/src/services/sub-order.ts +16 -18
  49. package/src/types.ts +0 -28
  50. package/dist/schemas/payouts.d.ts +0 -375
  51. package/dist/schemas/payouts.d.ts.map +0 -1
  52. package/dist/schemas/payouts.js +0 -78
  53. package/dist/services/contract-price.d.ts +0 -64
  54. package/dist/services/contract-price.d.ts.map +0 -1
  55. package/dist/services/contract-price.js +0 -57
  56. package/src/schemas/payouts.ts +0 -90
  57. package/src/services/contract-price.ts +0 -80
@@ -1,21 +1,4 @@
1
- import { z, createRoute } from "@hono/zod-openapi";
2
-
3
- const ErrorSchema = z.object({
4
- error: z.object({
5
- code: z.string(),
6
- message: z.string(),
7
- }),
8
- });
9
-
10
- const errorResponses = {
11
- 401: { content: { "application/json": { schema: ErrorSchema } }, description: "Authentication required." },
12
- 403: { content: { "application/json": { schema: ErrorSchema } }, description: "Insufficient permissions." },
13
- 404: { content: { "application/json": { schema: ErrorSchema } }, description: "Not found." },
14
- 422: { content: { "application/json": { schema: ErrorSchema } }, description: "Validation error." },
15
- 500: { content: { "application/json": { schema: ErrorSchema } }, description: "Server error." },
16
- } as const;
17
-
18
- const DataResponseSchema = z.object({ data: z.any() });
1
+ import { z } from "@hono/zod-openapi";
19
2
 
20
3
  // ═══════════════════════════════════════════════════════════════════════════════
21
4
  // DISPUTES
@@ -30,20 +13,6 @@ export const OpenDisputeBodySchema = z.object({
30
13
  description: z.string().optional(),
31
14
  }).openapi("OpenDisputeRequest");
32
15
 
33
- export const openDisputeRoute = createRoute({
34
- method: "post",
35
- path: "/api/marketplace/disputes",
36
- tags: ["Marketplace - Disputes"],
37
- summary: "Open a dispute",
38
- request: {
39
- body: { content: { "application/json": { schema: OpenDisputeBodySchema } }, required: true },
40
- },
41
- responses: {
42
- 201: { content: { "application/json": { schema: DataResponseSchema } }, description: "Dispute opened." },
43
- ...errorResponses,
44
- },
45
- });
46
-
47
16
  // ─── Respond to Dispute ─────────────────────────────────────────────────────
48
17
 
49
18
  export const RespondDisputeBodySchema = z.object({
@@ -52,21 +21,6 @@ export const RespondDisputeBodySchema = z.object({
52
21
  url: z.string().url().optional().openapi({ example: "https://example.com/evidence.pdf" }),
53
22
  }).openapi("RespondDisputeRequest");
54
23
 
55
- export const respondDisputeRoute = createRoute({
56
- method: "post",
57
- path: "/api/marketplace/disputes/{id}/respond",
58
- tags: ["Marketplace - Disputes"],
59
- summary: "Respond to a dispute",
60
- request: {
61
- params: z.object({ id: z.string() }),
62
- body: { content: { "application/json": { schema: RespondDisputeBodySchema } }, required: true },
63
- },
64
- responses: {
65
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Response recorded." },
66
- ...errorResponses,
67
- },
68
- });
69
-
70
24
  // ─── Resolve Dispute ────────────────────────────────────────────────────────
71
25
 
72
26
  export const ResolveDisputeBodySchema = z.object({
@@ -78,21 +32,6 @@ export const ResolveDisputeBodySchema = z.object({
78
32
  refundAmountCents: z.number().int().optional().openapi({ example: 1500 }),
79
33
  }).openapi("ResolveDisputeRequest");
80
34
 
81
- export const resolveDisputeRoute = createRoute({
82
- method: "post",
83
- path: "/api/marketplace/disputes/{id}/resolve",
84
- tags: ["Marketplace - Disputes"],
85
- summary: "Resolve a dispute",
86
- request: {
87
- params: z.object({ id: z.string() }),
88
- body: { content: { "application/json": { schema: ResolveDisputeBodySchema } }, required: true },
89
- },
90
- responses: {
91
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Dispute resolved." },
92
- ...errorResponses,
93
- },
94
- });
95
-
96
35
  // ═══════════════════════════════════════════════════════════════════════════════
97
36
  // RETURNS
98
37
  // ═══════════════════════════════════════════════════════════════════════════════
@@ -107,41 +46,12 @@ export const RequestReturnBodySchema = z.object({
107
46
  lineItems: z.array(z.record(z.string(), z.unknown())).optional(),
108
47
  }).openapi("RequestReturnRequest");
109
48
 
110
- export const requestReturnRoute = createRoute({
111
- method: "post",
112
- path: "/api/marketplace/returns",
113
- tags: ["Marketplace - Returns"],
114
- summary: "Request a return",
115
- request: {
116
- body: { content: { "application/json": { schema: RequestReturnBodySchema } }, required: true },
117
- },
118
- responses: {
119
- 201: { content: { "application/json": { schema: DataResponseSchema } }, description: "Return requested." },
120
- ...errorResponses,
121
- },
122
- });
123
-
124
49
  // ─── Ship Back ──────────────────────────────────────────────────────────────
125
50
 
126
51
  export const ShipBackReturnBodySchema = z.object({
127
52
  trackingNumber: z.string().min(1).openapi({ example: "TRACK123456" }),
128
53
  }).openapi("ShipBackReturnRequest");
129
54
 
130
- export const shipBackReturnRoute = createRoute({
131
- method: "post",
132
- path: "/api/marketplace/returns/{id}/ship-back",
133
- tags: ["Marketplace - Returns"],
134
- summary: "Ship back a return",
135
- request: {
136
- params: z.object({ id: z.string() }),
137
- body: { content: { "application/json": { schema: ShipBackReturnBodySchema } }, required: true },
138
- },
139
- responses: {
140
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Return shipped back." },
141
- ...errorResponses,
142
- },
143
- });
144
-
145
55
  // ═══════════════════════════════════════════════════════════════════════════════
146
56
  // REVIEWS
147
57
  // ═══════════════════════════════════════════════════════════════════════════════
@@ -156,156 +66,22 @@ export const CreateReviewBodySchema = z.object({
156
66
  body: z.string().optional(),
157
67
  }).openapi("CreateVendorReviewRequest");
158
68
 
159
- export const createReviewRoute = createRoute({
160
- method: "post",
161
- path: "/api/marketplace/vendors/{id}/reviews",
162
- tags: ["Marketplace - Reviews"],
163
- summary: "Create a vendor review",
164
- request: {
165
- params: z.object({ id: z.string() }),
166
- body: { content: { "application/json": { schema: CreateReviewBodySchema } }, required: true },
167
- },
168
- responses: {
169
- 201: { content: { "application/json": { schema: DataResponseSchema } }, description: "Review created." },
170
- ...errorResponses,
171
- },
172
- });
173
-
174
69
  // ─── Moderate Review ────────────────────────────────────────────────────────
175
70
 
176
71
  export const ModerateReviewBodySchema = z.object({
177
72
  status: z.enum(["pending", "published", "hidden", "flagged"]).openapi({ example: "published" }),
178
73
  }).openapi("ModerateReviewRequest");
179
74
 
180
- export const moderateReviewRoute = createRoute({
181
- method: "patch",
182
- path: "/api/marketplace/reviews/{id}",
183
- tags: ["Marketplace - Reviews"],
184
- summary: "Moderate a review (update status)",
185
- request: {
186
- params: z.object({ id: z.string() }),
187
- body: { content: { "application/json": { schema: ModerateReviewBodySchema } }, required: true },
188
- },
189
- responses: {
190
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Review moderated." },
191
- ...errorResponses,
192
- },
193
- });
194
-
195
75
  // ─── List Disputes ──────────────────────────────────────────────────────────
196
76
 
197
- export const listDisputesRoute = createRoute({
198
- method: "get",
199
- path: "/api/marketplace/disputes",
200
- tags: ["Marketplace - Disputes"],
201
- summary: "List disputes",
202
- request: {
203
- query: z.object({
204
- status: z.string().optional(),
205
- subOrderId: z.string().optional(),
206
- }),
207
- },
208
- responses: {
209
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Success" },
210
- ...errorResponses,
211
- },
212
- });
213
-
214
77
  // ─── Get Dispute ────────────────────────────────────────────────────────────
215
78
 
216
- export const getDisputeRoute = createRoute({
217
- method: "get",
218
- path: "/api/marketplace/disputes/{id}",
219
- tags: ["Marketplace - Disputes"],
220
- summary: "Get dispute by ID",
221
- request: {
222
- params: z.object({ id: z.string() }),
223
- },
224
- responses: {
225
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Success" },
226
- ...errorResponses,
227
- },
228
- });
229
-
230
79
  // ─── Escalate Dispute ───────────────────────────────────────────────────────
231
80
 
232
- export const escalateDisputeRoute = createRoute({
233
- method: "post",
234
- path: "/api/marketplace/disputes/{id}/escalate",
235
- tags: ["Marketplace - Disputes"],
236
- summary: "Escalate a dispute",
237
- request: {
238
- params: z.object({ id: z.string() }),
239
- },
240
- responses: {
241
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Dispute escalated." },
242
- ...errorResponses,
243
- },
244
- });
245
-
246
81
  // ─── List Returns ───────────────────────────────────────────────────────────
247
82
 
248
- export const listReturnsRoute = createRoute({
249
- method: "get",
250
- path: "/api/marketplace/returns",
251
- tags: ["Marketplace - Returns"],
252
- summary: "List returns",
253
- request: {
254
- query: z.object({
255
- subOrderId: z.string().optional(),
256
- status: z.string().optional(),
257
- }),
258
- },
259
- responses: {
260
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Success" },
261
- ...errorResponses,
262
- },
263
- });
264
-
265
83
  // ─── Get Return ─────────────────────────────────────────────────────────────
266
84
 
267
- export const getReturnRoute = createRoute({
268
- method: "get",
269
- path: "/api/marketplace/returns/{id}",
270
- tags: ["Marketplace - Returns"],
271
- summary: "Get return by ID",
272
- request: {
273
- params: z.object({ id: z.string() }),
274
- },
275
- responses: {
276
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Success" },
277
- ...errorResponses,
278
- },
279
- });
280
-
281
85
  // ─── Receive Return ─────────────────────────────────────────────────────────
282
86
 
283
- export const receiveReturnRoute = createRoute({
284
- method: "post",
285
- path: "/api/marketplace/returns/{id}/receive",
286
- tags: ["Marketplace - Returns"],
287
- summary: "Mark a return as received",
288
- request: {
289
- params: z.object({ id: z.string() }),
290
- },
291
- responses: {
292
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Return received." },
293
- ...errorResponses,
294
- },
295
- });
296
-
297
87
  // ─── List Vendor Reviews ────────────────────────────────────────────────────
298
-
299
- export const listVendorReviewsRoute = createRoute({
300
- method: "get",
301
- path: "/api/marketplace/vendors/{id}/reviews",
302
- tags: ["Marketplace - Reviews"],
303
- summary: "List reviews for a vendor",
304
- request: {
305
- params: z.object({ id: z.string() }),
306
- },
307
- responses: {
308
- 200: { content: { "application/json": { schema: DataResponseSchema } }, description: "Success" },
309
- ...errorResponses,
310
- },
311
- });
@@ -1,21 +1,4 @@
1
- import { z, createRoute } from "@hono/zod-openapi";
2
-
3
- const ErrorSchema = z.object({
4
- error: z.object({
5
- code: z.string(),
6
- message: z.string(),
7
- }),
8
- });
9
-
10
- const errorResponses = {
11
- 401: { content: { "application/json": { schema: ErrorSchema } }, description: "Authentication required." },
12
- 403: { content: { "application/json": { schema: ErrorSchema } }, description: "Insufficient permissions." },
13
- 404: { content: { "application/json": { schema: ErrorSchema } }, description: "Not found." },
14
- 422: { content: { "application/json": { schema: ErrorSchema } }, description: "Validation error." },
15
- 500: { content: { "application/json": { schema: ErrorSchema } }, description: "Server error." },
16
- } as const;
17
-
18
- const SubOrderResponseSchema = z.object({ data: z.any() });
1
+ import { z } from "@hono/zod-openapi";
19
2
 
20
3
  // ─── Update Sub-Order Status ─────────────────────────────────────────────────
21
4
 
@@ -25,53 +8,6 @@ export const UpdateSubOrderStatusBodySchema = z.object({
25
8
  reason: z.string().optional().openapi({ example: "Admin force status change" }),
26
9
  }).openapi("UpdateSubOrderStatusRequest");
27
10
 
28
- export const updateSubOrderStatusRoute = createRoute({
29
- method: "patch",
30
- path: "/api/marketplace/sub-orders/{id}/status",
31
- tags: ["Marketplace - Sub-Orders"],
32
- summary: "Force a sub-order status change",
33
- request: {
34
- params: z.object({ id: z.uuid() }),
35
- body: { content: { "application/json": { schema: UpdateSubOrderStatusBodySchema } }, required: true },
36
- },
37
- responses: {
38
- 200: { content: { "application/json": { schema: SubOrderResponseSchema } }, description: "Sub-order status updated." },
39
- ...errorResponses,
40
- },
41
- });
42
-
43
11
  // ─── List Sub-Orders ────────────────────────────────────────────────────────
44
12
 
45
- export const listSubOrdersRoute = createRoute({
46
- method: "get",
47
- path: "/api/marketplace/sub-orders",
48
- tags: ["Marketplace - Sub-Orders"],
49
- summary: "List sub-orders",
50
- request: {
51
- query: z.object({
52
- orderId: z.string().optional(),
53
- vendorId: z.string().optional(),
54
- status: z.string().optional(),
55
- }),
56
- },
57
- responses: {
58
- 200: { content: { "application/json": { schema: SubOrderResponseSchema } }, description: "Success" },
59
- ...errorResponses,
60
- },
61
- });
62
-
63
13
  // ─── Get Sub-Order ──────────────────────────────────────────────────────────
64
-
65
- export const getSubOrderRoute = createRoute({
66
- method: "get",
67
- path: "/api/marketplace/sub-orders/{id}",
68
- tags: ["Marketplace - Sub-Orders"],
69
- summary: "Get sub-order by ID",
70
- request: {
71
- params: z.object({ id: z.uuid() }),
72
- },
73
- responses: {
74
- 200: { content: { "application/json": { schema: SubOrderResponseSchema } }, description: "Success" },
75
- ...errorResponses,
76
- },
77
- });