@endora-commerce/mod-returns 0.100.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 (211) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +60 -0
  3. package/dist/admin/api/returns-client.d.ts +69 -0
  4. package/dist/admin/api/returns-client.d.ts.map +1 -0
  5. package/dist/admin/api/returns-client.js +36 -0
  6. package/dist/admin/api/returns-client.js.map +1 -0
  7. package/dist/admin/index.d.ts +37 -0
  8. package/dist/admin/index.d.ts.map +1 -0
  9. package/dist/admin/index.js +57 -0
  10. package/dist/admin/index.js.map +1 -0
  11. package/dist/admin/pages/ReturnDeliveryMethodsPage.d.ts +5 -0
  12. package/dist/admin/pages/ReturnDeliveryMethodsPage.d.ts.map +1 -0
  13. package/dist/admin/pages/ReturnDeliveryMethodsPage.js +44 -0
  14. package/dist/admin/pages/ReturnDeliveryMethodsPage.js.map +1 -0
  15. package/dist/admin/pages/ReturnDetail.d.ts +5 -0
  16. package/dist/admin/pages/ReturnDetail.d.ts.map +1 -0
  17. package/dist/admin/pages/ReturnDetail.js +115 -0
  18. package/dist/admin/pages/ReturnDetail.js.map +1 -0
  19. package/dist/admin/pages/ReturnReasonsPage.d.ts +5 -0
  20. package/dist/admin/pages/ReturnReasonsPage.d.ts.map +1 -0
  21. package/dist/admin/pages/ReturnReasonsPage.js +44 -0
  22. package/dist/admin/pages/ReturnReasonsPage.js.map +1 -0
  23. package/dist/admin/pages/ReturnStatusesConfigPage.d.ts +5 -0
  24. package/dist/admin/pages/ReturnStatusesConfigPage.d.ts.map +1 -0
  25. package/dist/admin/pages/ReturnStatusesConfigPage.js +71 -0
  26. package/dist/admin/pages/ReturnStatusesConfigPage.js.map +1 -0
  27. package/dist/admin/pages/ReturnsList.d.ts +5 -0
  28. package/dist/admin/pages/ReturnsList.d.ts.map +1 -0
  29. package/dist/admin/pages/ReturnsList.js +189 -0
  30. package/dist/admin/pages/ReturnsList.js.map +1 -0
  31. package/dist/backend/domain/default-reasons.d.ts +14 -0
  32. package/dist/backend/domain/default-reasons.d.ts.map +1 -0
  33. package/dist/backend/domain/default-reasons.js +9 -0
  34. package/dist/backend/domain/default-reasons.js.map +1 -0
  35. package/dist/backend/domain/free-return-window.d.ts +2 -0
  36. package/dist/backend/domain/free-return-window.d.ts.map +1 -0
  37. package/dist/backend/domain/free-return-window.js +19 -0
  38. package/dist/backend/domain/free-return-window.js.map +1 -0
  39. package/dist/backend/domain/refund-math.d.ts +19 -0
  40. package/dist/backend/domain/refund-math.d.ts.map +1 -0
  41. package/dist/backend/domain/refund-math.js +27 -0
  42. package/dist/backend/domain/refund-math.js.map +1 -0
  43. package/dist/backend/domain/return-status-graph.d.ts +91 -0
  44. package/dist/backend/domain/return-status-graph.d.ts.map +1 -0
  45. package/dist/backend/domain/return-status-graph.js +143 -0
  46. package/dist/backend/domain/return-status-graph.js.map +1 -0
  47. package/dist/backend/email-templates/return-authorized.d.ts +11 -0
  48. package/dist/backend/email-templates/return-authorized.d.ts.map +1 -0
  49. package/dist/backend/email-templates/return-authorized.js +18 -0
  50. package/dist/backend/email-templates/return-authorized.js.map +1 -0
  51. package/dist/backend/email-templates/return-rejected.d.ts +11 -0
  52. package/dist/backend/email-templates/return-rejected.d.ts.map +1 -0
  53. package/dist/backend/email-templates/return-rejected.js +20 -0
  54. package/dist/backend/email-templates/return-rejected.js.map +1 -0
  55. package/dist/backend/email-templates/transactional-defaults.d.ts +11 -0
  56. package/dist/backend/email-templates/transactional-defaults.d.ts.map +1 -0
  57. package/dist/backend/email-templates/transactional-defaults.js +64 -0
  58. package/dist/backend/email-templates/transactional-defaults.js.map +1 -0
  59. package/dist/backend/entities/refund.entity.d.ts +41 -0
  60. package/dist/backend/entities/refund.entity.d.ts.map +1 -0
  61. package/dist/backend/entities/refund.entity.js +122 -0
  62. package/dist/backend/entities/refund.entity.js.map +1 -0
  63. package/dist/backend/entities/return-case-attachment.entity.d.ts +16 -0
  64. package/dist/backend/entities/return-case-attachment.entity.d.ts.map +1 -0
  65. package/dist/backend/entities/return-case-attachment.entity.js +53 -0
  66. package/dist/backend/entities/return-case-attachment.entity.js.map +1 -0
  67. package/dist/backend/entities/return-case-comment.entity.d.ts +20 -0
  68. package/dist/backend/entities/return-case-comment.entity.d.ts.map +1 -0
  69. package/dist/backend/entities/return-case-comment.entity.js +70 -0
  70. package/dist/backend/entities/return-case-comment.entity.js.map +1 -0
  71. package/dist/backend/entities/return-case-item.entity.d.ts +25 -0
  72. package/dist/backend/entities/return-case-item.entity.d.ts.map +1 -0
  73. package/dist/backend/entities/return-case-item.entity.js +87 -0
  74. package/dist/backend/entities/return-case-item.entity.js.map +1 -0
  75. package/dist/backend/entities/return-case.entity.d.ts +41 -0
  76. package/dist/backend/entities/return-case.entity.d.ts.map +1 -0
  77. package/dist/backend/entities/return-case.entity.js +155 -0
  78. package/dist/backend/entities/return-case.entity.js.map +1 -0
  79. package/dist/backend/entities/return-delivery-method.entity.d.ts +18 -0
  80. package/dist/backend/entities/return-delivery-method.entity.d.ts.map +1 -0
  81. package/dist/backend/entities/return-delivery-method.entity.js +63 -0
  82. package/dist/backend/entities/return-delivery-method.entity.js.map +1 -0
  83. package/dist/backend/entities/return-list-saved-view.entity.d.ts +24 -0
  84. package/dist/backend/entities/return-list-saved-view.entity.d.ts.map +1 -0
  85. package/dist/backend/entities/return-list-saved-view.entity.js +74 -0
  86. package/dist/backend/entities/return-list-saved-view.entity.js.map +1 -0
  87. package/dist/backend/entities/return-reason.entity.d.ts +21 -0
  88. package/dist/backend/entities/return-reason.entity.d.ts.map +1 -0
  89. package/dist/backend/entities/return-reason.entity.js +65 -0
  90. package/dist/backend/entities/return-reason.entity.js.map +1 -0
  91. package/dist/backend/entities/return-shipment.entity.d.ts +22 -0
  92. package/dist/backend/entities/return-shipment.entity.d.ts.map +1 -0
  93. package/dist/backend/entities/return-shipment.entity.js +71 -0
  94. package/dist/backend/entities/return-shipment.entity.js.map +1 -0
  95. package/dist/backend/entities/return-status-transition.entity.d.ts +17 -0
  96. package/dist/backend/entities/return-status-transition.entity.d.ts.map +1 -0
  97. package/dist/backend/entities/return-status-transition.entity.js +55 -0
  98. package/dist/backend/entities/return-status-transition.entity.js.map +1 -0
  99. package/dist/backend/entities/return-status.entity.d.ts +29 -0
  100. package/dist/backend/entities/return-status.entity.d.ts.map +1 -0
  101. package/dist/backend/entities/return-status.entity.js +90 -0
  102. package/dist/backend/entities/return-status.entity.js.map +1 -0
  103. package/dist/backend/events/return-status-events.d.ts +44 -0
  104. package/dist/backend/events/return-status-events.d.ts.map +1 -0
  105. package/dist/backend/events/return-status-events.js +50 -0
  106. package/dist/backend/events/return-status-events.js.map +1 -0
  107. package/dist/backend/index.d.ts +106 -0
  108. package/dist/backend/index.d.ts.map +1 -0
  109. package/dist/backend/index.js +116 -0
  110. package/dist/backend/index.js.map +1 -0
  111. package/dist/backend/plugin.d.ts +33 -0
  112. package/dist/backend/plugin.d.ts.map +1 -0
  113. package/dist/backend/plugin.js +124 -0
  114. package/dist/backend/plugin.js.map +1 -0
  115. package/dist/backend/routes.admin.d.ts +38 -0
  116. package/dist/backend/routes.admin.d.ts.map +1 -0
  117. package/dist/backend/routes.admin.js +181 -0
  118. package/dist/backend/routes.admin.js.map +1 -0
  119. package/dist/backend/routes.customer.d.ts +22 -0
  120. package/dist/backend/routes.customer.d.ts.map +1 -0
  121. package/dist/backend/routes.customer.js +56 -0
  122. package/dist/backend/routes.customer.js.map +1 -0
  123. package/dist/backend/services/notification-context.d.ts +47 -0
  124. package/dist/backend/services/notification-context.d.ts.map +1 -0
  125. package/dist/backend/services/notification-context.js +49 -0
  126. package/dist/backend/services/notification-context.js.map +1 -0
  127. package/dist/backend/services/return-attachment-service.d.ts +20 -0
  128. package/dist/backend/services/return-attachment-service.d.ts.map +1 -0
  129. package/dist/backend/services/return-attachment-service.js +48 -0
  130. package/dist/backend/services/return-attachment-service.js.map +1 -0
  131. package/dist/backend/services/return-authorization-service.d.ts +53 -0
  132. package/dist/backend/services/return-authorization-service.d.ts.map +1 -0
  133. package/dist/backend/services/return-authorization-service.js +72 -0
  134. package/dist/backend/services/return-authorization-service.js.map +1 -0
  135. package/dist/backend/services/return-case-service.d.ts +44 -0
  136. package/dist/backend/services/return-case-service.d.ts.map +1 -0
  137. package/dist/backend/services/return-case-service.js +260 -0
  138. package/dist/backend/services/return-case-service.js.map +1 -0
  139. package/dist/backend/services/return-comment-service.d.ts +43 -0
  140. package/dist/backend/services/return-comment-service.d.ts.map +1 -0
  141. package/dist/backend/services/return-comment-service.js +109 -0
  142. package/dist/backend/services/return-comment-service.js.map +1 -0
  143. package/dist/backend/services/return-delivery-method-service.d.ts +44 -0
  144. package/dist/backend/services/return-delivery-method-service.d.ts.map +1 -0
  145. package/dist/backend/services/return-delivery-method-service.js +114 -0
  146. package/dist/backend/services/return-delivery-method-service.js.map +1 -0
  147. package/dist/backend/services/return-email-notifier.d.ts +89 -0
  148. package/dist/backend/services/return-email-notifier.d.ts.map +1 -0
  149. package/dist/backend/services/return-email-notifier.js +128 -0
  150. package/dist/backend/services/return-email-notifier.js.map +1 -0
  151. package/dist/backend/services/return-export-service.d.ts +16 -0
  152. package/dist/backend/services/return-export-service.d.ts.map +1 -0
  153. package/dist/backend/services/return-export-service.js +29 -0
  154. package/dist/backend/services/return-export-service.js.map +1 -0
  155. package/dist/backend/services/return-list-service.d.ts +27 -0
  156. package/dist/backend/services/return-list-service.d.ts.map +1 -0
  157. package/dist/backend/services/return-list-service.js +114 -0
  158. package/dist/backend/services/return-list-service.js.map +1 -0
  159. package/dist/backend/services/return-list-view-service.d.ts +36 -0
  160. package/dist/backend/services/return-list-view-service.d.ts.map +1 -0
  161. package/dist/backend/services/return-list-view-service.js +82 -0
  162. package/dist/backend/services/return-list-view-service.js.map +1 -0
  163. package/dist/backend/services/return-reason-service.d.ts +33 -0
  164. package/dist/backend/services/return-reason-service.d.ts.map +1 -0
  165. package/dist/backend/services/return-reason-service.js +90 -0
  166. package/dist/backend/services/return-reason-service.js.map +1 -0
  167. package/dist/backend/services/return-settlement-service.d.ts +67 -0
  168. package/dist/backend/services/return-settlement-service.d.ts.map +1 -0
  169. package/dist/backend/services/return-settlement-service.js +295 -0
  170. package/dist/backend/services/return-settlement-service.js.map +1 -0
  171. package/dist/backend/services/return-shipment-service.d.ts +40 -0
  172. package/dist/backend/services/return-shipment-service.d.ts.map +1 -0
  173. package/dist/backend/services/return-shipment-service.js +113 -0
  174. package/dist/backend/services/return-shipment-service.js.map +1 -0
  175. package/dist/backend/services/return-status-graph-service.d.ts +59 -0
  176. package/dist/backend/services/return-status-graph-service.d.ts.map +1 -0
  177. package/dist/backend/services/return-status-graph-service.js +197 -0
  178. package/dist/backend/services/return-status-graph-service.js.map +1 -0
  179. package/dist/backend/services/return-transition-service.d.ts +48 -0
  180. package/dist/backend/services/return-transition-service.d.ts.map +1 -0
  181. package/dist/backend/services/return-transition-service.js +116 -0
  182. package/dist/backend/services/return-transition-service.js.map +1 -0
  183. package/dist/backend/services/returns-seeder.d.ts +18 -0
  184. package/dist/backend/services/returns-seeder.d.ts.map +1 -0
  185. package/dist/backend/services/returns-seeder.js +63 -0
  186. package/dist/backend/services/returns-seeder.js.map +1 -0
  187. package/dist/backend/services/rma-number-generator.d.ts +35 -0
  188. package/dist/backend/services/rma-number-generator.d.ts.map +1 -0
  189. package/dist/backend/services/rma-number-generator.js +45 -0
  190. package/dist/backend/services/rma-number-generator.js.map +1 -0
  191. package/dist/manifest.d.ts +182 -0
  192. package/dist/manifest.d.ts.map +1 -0
  193. package/dist/manifest.js +216 -0
  194. package/dist/manifest.js.map +1 -0
  195. package/dist/migrations/20260625T144227_returns_init.d.ts +15 -0
  196. package/dist/migrations/20260625T144227_returns_init.d.ts.map +1 -0
  197. package/dist/migrations/20260625T144227_returns_init.js +241 -0
  198. package/dist/migrations/20260625T144227_returns_init.js.map +1 -0
  199. package/dist/migrations/20260817T203206_returns_refund_corrective_invoice_outcome.d.ts +25 -0
  200. package/dist/migrations/20260817T203206_returns_refund_corrective_invoice_outcome.d.ts.map +1 -0
  201. package/dist/migrations/20260817T203206_returns_refund_corrective_invoice_outcome.js +46 -0
  202. package/dist/migrations/20260817T203206_returns_refund_corrective_invoice_outcome.js.map +1 -0
  203. package/dist/migrations/index.d.ts +28 -0
  204. package/dist/migrations/index.d.ts.map +1 -0
  205. package/dist/migrations/index.js +31 -0
  206. package/dist/migrations/index.js.map +1 -0
  207. package/docs/returns.md +103 -0
  208. package/i18n/en.json +28 -0
  209. package/i18n/pl.json +28 -0
  210. package/package.json +101 -0
  211. package/tailwind.css +14 -0
@@ -0,0 +1,70 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Entity, Index, OptionalProps, PrimaryKey, Property } from '@mikro-orm/core';
11
+ import { GlobalEntity } from '@endora-commerce/platform/tenancy';
12
+ import { randomUUID } from 'crypto';
13
+ /**
14
+ * ReturnCaseComment — feature 046 (US4).
15
+ *
16
+ * A message on a case. Mirrors `order_comments`: admin comments carry a
17
+ * visibility choice (`isCustomerVisible`) and a `notifyCustomer` flag; customer
18
+ * comments are always visible. Exactly one author id is set.
19
+ */
20
+ let ReturnCaseComment = class ReturnCaseComment {
21
+ [OptionalProps];
22
+ id = randomUUID();
23
+ returnCaseId;
24
+ authorAdminUserId;
25
+ authorCustomerAccountId;
26
+ body;
27
+ isCustomerVisible = true;
28
+ notifyCustomer = false;
29
+ createdAt = new Date();
30
+ };
31
+ __decorate([
32
+ PrimaryKey({ type: 'uuid' }),
33
+ __metadata("design:type", String)
34
+ ], ReturnCaseComment.prototype, "id", void 0);
35
+ __decorate([
36
+ Property({ type: 'uuid' }),
37
+ Index(),
38
+ __metadata("design:type", String)
39
+ ], ReturnCaseComment.prototype, "returnCaseId", void 0);
40
+ __decorate([
41
+ Property({ type: 'uuid', nullable: true }),
42
+ __metadata("design:type", Object)
43
+ ], ReturnCaseComment.prototype, "authorAdminUserId", void 0);
44
+ __decorate([
45
+ Property({ type: 'uuid', nullable: true }),
46
+ __metadata("design:type", Object)
47
+ ], ReturnCaseComment.prototype, "authorCustomerAccountId", void 0);
48
+ __decorate([
49
+ Property({ type: 'text' }),
50
+ __metadata("design:type", String)
51
+ ], ReturnCaseComment.prototype, "body", void 0);
52
+ __decorate([
53
+ Property({ type: 'boolean' }),
54
+ __metadata("design:type", Boolean)
55
+ ], ReturnCaseComment.prototype, "isCustomerVisible", void 0);
56
+ __decorate([
57
+ Property({ type: 'boolean' }),
58
+ __metadata("design:type", Boolean)
59
+ ], ReturnCaseComment.prototype, "notifyCustomer", void 0);
60
+ __decorate([
61
+ Property({ type: 'datetime', onCreate: () => new Date() }),
62
+ Index(),
63
+ __metadata("design:type", Date)
64
+ ], ReturnCaseComment.prototype, "createdAt", void 0);
65
+ ReturnCaseComment = __decorate([
66
+ GlobalEntity(),
67
+ Entity({ tableName: 'return_case_comments' })
68
+ ], ReturnCaseComment);
69
+ export { ReturnCaseComment };
70
+ //# sourceMappingURL=return-case-comment.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-case-comment.entity.js","sourceRoot":"","sources":["../../../src/backend/entities/return-case-comment.entity.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;;;GAMG;AAGI,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,CAAC,aAAa,CAAC,CAMC;IAGhB,EAAE,GAAW,UAAU,EAAE,CAAC;IAI1B,YAAY,CAAU;IAGtB,iBAAiB,CAAiB;IAGlC,uBAAuB,CAAiB;IAGxC,IAAI,CAAU;IAGd,iBAAiB,GAAY,IAAI,CAAC;IAGlC,cAAc,GAAY,KAAK,CAAC;IAIhC,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;CAC9B,CAAA;AAxBC;IADC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;6CACH;AAI1B;IAFC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE;;uDACc;AAGtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4DACT;AAGlC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kEACH;AAGxC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;+CACb;AAGd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;4DACI;AAGlC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;yDACE;AAIhC;IAFC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;IAC1D,KAAK,EAAE;8BACG,IAAI;oDAAc;AAjClB,iBAAiB;IAF7B,YAAY,EAAE;IACd,MAAM,CAAC,EAAE,SAAS,EAAE,sBAAsB,EAAE,CAAC;GACjC,iBAAiB,CAkC7B"}
@@ -0,0 +1,25 @@
1
+ import { OptionalProps } from '@mikro-orm/core';
2
+ /**
3
+ * ReturnCaseItem — feature 046.
4
+ *
5
+ * A returned/complained order line (full or partial quantity). `defaultRefundAmount`
6
+ * is the amount paid for the returned quantity in the original order (incl.
7
+ * proportional tax); `approvedRefundAmount` is the admin-adjustable settled value,
8
+ * which MUST NOT exceed the default (FR-031/032).
9
+ */
10
+ export declare class ReturnCaseItem {
11
+ [OptionalProps]?: 'id' | 'reasonId' | 'description' | 'inspectionOutcome' | 'approvedRefundAmount';
12
+ id: string;
13
+ returnCaseId: string;
14
+ orderItemId: string;
15
+ productId: string;
16
+ productName: string;
17
+ quantity: number;
18
+ reasonId?: string | null;
19
+ description?: string | null;
20
+ /** `pending` | `passed` | `failed`; set at Received. */
21
+ inspectionOutcome?: 'pending' | 'passed' | 'failed' | null;
22
+ defaultRefundAmount: string;
23
+ approvedRefundAmount: string;
24
+ }
25
+ //# sourceMappingURL=return-case-item.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-case-item.entity.d.ts","sourceRoot":"","sources":["../../../src/backend/entities/return-case-item.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AAIrF;;;;;;;GAOG;AACH,qBAEa,cAAc;IACzB,CAAC,aAAa,CAAC,CAAC,EACZ,IAAI,GACJ,UAAU,GACV,aAAa,GACb,mBAAmB,GACnB,sBAAsB,CAAC;IAG3B,EAAE,EAAE,MAAM,CAAgB;IAI1B,YAAY,EAAG,MAAM,CAAC;IAItB,WAAW,EAAG,MAAM,CAAC;IAGrB,SAAS,EAAG,MAAM,CAAC;IAGnB,WAAW,EAAG,MAAM,CAAC;IAGrB,QAAQ,EAAG,MAAM,CAAC;IAGlB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,wDAAwD;IAExD,iBAAiB,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAAC;IAG3D,mBAAmB,EAAG,MAAM,CAAC;IAG7B,oBAAoB,EAAE,MAAM,CAAU;CACvC"}
@@ -0,0 +1,87 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Entity, Index, OptionalProps, PrimaryKey, Property } from '@mikro-orm/core';
11
+ import { GlobalEntity } from '@endora-commerce/platform/tenancy';
12
+ import { randomUUID } from 'crypto';
13
+ /**
14
+ * ReturnCaseItem — feature 046.
15
+ *
16
+ * A returned/complained order line (full or partial quantity). `defaultRefundAmount`
17
+ * is the amount paid for the returned quantity in the original order (incl.
18
+ * proportional tax); `approvedRefundAmount` is the admin-adjustable settled value,
19
+ * which MUST NOT exceed the default (FR-031/032).
20
+ */
21
+ let ReturnCaseItem = class ReturnCaseItem {
22
+ [OptionalProps];
23
+ id = randomUUID();
24
+ returnCaseId;
25
+ orderItemId;
26
+ productId;
27
+ productName;
28
+ quantity;
29
+ reasonId;
30
+ description;
31
+ /** `pending` | `passed` | `failed`; set at Received. */
32
+ inspectionOutcome;
33
+ defaultRefundAmount;
34
+ approvedRefundAmount = '0.00';
35
+ };
36
+ __decorate([
37
+ PrimaryKey({ type: 'uuid' }),
38
+ __metadata("design:type", String)
39
+ ], ReturnCaseItem.prototype, "id", void 0);
40
+ __decorate([
41
+ Property({ type: 'uuid' }),
42
+ Index(),
43
+ __metadata("design:type", String)
44
+ ], ReturnCaseItem.prototype, "returnCaseId", void 0);
45
+ __decorate([
46
+ Property({ type: 'uuid' }),
47
+ Index(),
48
+ __metadata("design:type", String)
49
+ ], ReturnCaseItem.prototype, "orderItemId", void 0);
50
+ __decorate([
51
+ Property({ type: 'uuid' }),
52
+ __metadata("design:type", String)
53
+ ], ReturnCaseItem.prototype, "productId", void 0);
54
+ __decorate([
55
+ Property({ type: 'string', length: 512 }),
56
+ __metadata("design:type", String)
57
+ ], ReturnCaseItem.prototype, "productName", void 0);
58
+ __decorate([
59
+ Property({ type: 'integer' }),
60
+ __metadata("design:type", Number)
61
+ ], ReturnCaseItem.prototype, "quantity", void 0);
62
+ __decorate([
63
+ Property({ type: 'uuid', nullable: true }),
64
+ __metadata("design:type", Object)
65
+ ], ReturnCaseItem.prototype, "reasonId", void 0);
66
+ __decorate([
67
+ Property({ type: 'text', nullable: true }),
68
+ __metadata("design:type", Object)
69
+ ], ReturnCaseItem.prototype, "description", void 0);
70
+ __decorate([
71
+ Property({ type: 'string', length: 16, nullable: true }),
72
+ __metadata("design:type", Object)
73
+ ], ReturnCaseItem.prototype, "inspectionOutcome", void 0);
74
+ __decorate([
75
+ Property({ type: 'decimal', precision: 14, scale: 2 }),
76
+ __metadata("design:type", String)
77
+ ], ReturnCaseItem.prototype, "defaultRefundAmount", void 0);
78
+ __decorate([
79
+ Property({ type: 'decimal', precision: 14, scale: 2 }),
80
+ __metadata("design:type", String)
81
+ ], ReturnCaseItem.prototype, "approvedRefundAmount", void 0);
82
+ ReturnCaseItem = __decorate([
83
+ GlobalEntity(),
84
+ Entity({ tableName: 'return_case_items' })
85
+ ], ReturnCaseItem);
86
+ export { ReturnCaseItem };
87
+ //# sourceMappingURL=return-case-item.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-case-item.entity.js","sourceRoot":"","sources":["../../../src/backend/entities/return-case-item.entity.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;;;;GAOG;AAGI,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,CAAC,aAAa,CAAC,CAKY;IAG3B,EAAE,GAAW,UAAU,EAAE,CAAC;IAI1B,YAAY,CAAU;IAItB,WAAW,CAAU;IAGrB,SAAS,CAAU;IAGnB,WAAW,CAAU;IAGrB,QAAQ,CAAU;IAGlB,QAAQ,CAAiB;IAGzB,WAAW,CAAiB;IAE5B,wDAAwD;IAExD,iBAAiB,CAA0C;IAG3D,mBAAmB,CAAU;IAG7B,oBAAoB,GAAW,MAAM,CAAC;CACvC,CAAA;AAlCC;IADC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;0CACH;AAI1B;IAFC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE;;oDACc;AAItB;IAFC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE;;mDACa;AAGrB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;iDACR;AAGnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;mDACrB;AAGrB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;gDACZ;AAGlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAClB;AAGzB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACf;AAI5B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACE;AAG3D;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;;2DAC1B;AAG7B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;;4DACjB;AA1C3B,cAAc;IAF1B,YAAY,EAAE;IACd,MAAM,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;GAC9B,cAAc,CA2C1B"}
@@ -0,0 +1,41 @@
1
+ import { OptionalProps } from '@mikro-orm/core';
2
+ /**
3
+ * ReturnCase — feature 046 (RMA case).
4
+ *
5
+ * One per customer return/complaint submission against an order. `kind`
6
+ * distinguishes a withdrawal-style Return from a warranty Complaint (the
7
+ * free-return window applies only to `return`). `rmaNumber` is assigned on
8
+ * authorization (`${prefix}${seq}${suffix}`) and unique; `statusCode` references
9
+ * `return_statuses.code` and is governed by the configurable workflow.
10
+ */
11
+ export declare class ReturnCase {
12
+ [OptionalProps]?: 'id' | 'rmaNumber' | 'organizationId' | 'returnDeliveryMethodId' | 'appliedReturnCost' | 'returnCostBearer' | 'freeReturnEligible' | 'resolutionType' | 'refundPaymentMethodId' | 'totalRefundAmount' | 'rejectionReason' | 'authorizedAt' | 'resolvedAt' | 'closedAt' | 'createdAt' | 'updatedAt';
13
+ id: string;
14
+ /** `return` (withdrawal) or `complaint` (defect/warranty). */
15
+ kind: 'return' | 'complaint';
16
+ /** Assigned on authorization; null until then. */
17
+ rmaNumber?: string | null;
18
+ orderId: string;
19
+ salesChannelId: string;
20
+ customerAccountId: string;
21
+ organizationId?: string | null;
22
+ statusCode: string;
23
+ currency: string;
24
+ returnDeliveryMethodId?: string | null;
25
+ appliedReturnCost: string;
26
+ /** Who bears the return shipping cost: `shop` or `customer`. */
27
+ returnCostBearer: 'shop' | 'customer';
28
+ freeReturnEligible: boolean;
29
+ /** `refund` | `credit` | `replacement` | `repair`; null until settlement. */
30
+ resolutionType?: 'refund' | 'credit' | 'replacement' | 'repair' | null;
31
+ refundPaymentMethodId?: string | null;
32
+ totalRefundAmount: string;
33
+ rejectionReason?: string | null;
34
+ submittedAt: Date;
35
+ authorizedAt?: Date | null;
36
+ resolvedAt?: Date | null;
37
+ closedAt?: Date | null;
38
+ createdAt: Date;
39
+ updatedAt: Date;
40
+ }
41
+ //# sourceMappingURL=return-case.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-case.entity.d.ts","sourceRoot":"","sources":["../../../src/backend/entities/return-case.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAgC,MAAM,iBAAiB,CAAC;AAI7F;;;;;;;;GAQG;AACH,qBAEa,UAAU;IACrB,CAAC,aAAa,CAAC,CAAC,EACZ,IAAI,GACJ,WAAW,GACX,gBAAgB,GAChB,wBAAwB,GACxB,mBAAmB,GACnB,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,GAChB,uBAAuB,GACvB,mBAAmB,GACnB,iBAAiB,GACjB,cAAc,GACd,YAAY,GACZ,UAAU,GACV,WAAW,GACX,WAAW,CAAC;IAGhB,EAAE,EAAE,MAAM,CAAgB;IAE1B,8DAA8D;IAE9D,IAAI,EAAG,QAAQ,GAAG,WAAW,CAAC;IAE9B,kDAAkD;IAGlD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI1B,OAAO,EAAG,MAAM,CAAC;IAIjB,cAAc,EAAG,MAAM,CAAC;IAIxB,iBAAiB,EAAG,MAAM,CAAC;IAI3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAI/B,UAAU,EAAG,MAAM,CAAC;IAGpB,QAAQ,EAAG,MAAM,CAAC;IAGlB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGvC,iBAAiB,EAAE,MAAM,CAAU;IAEnC,gEAAgE;IAEhE,gBAAgB,EAAE,MAAM,GAAG,UAAU,CAAc;IAGnD,kBAAkB,EAAE,OAAO,CAAS;IAEpC,6EAA6E;IAE7E,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,QAAQ,GAAG,IAAI,CAAC;IAGvE,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGtC,iBAAiB,EAAE,MAAM,CAAU;IAGnC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGhC,WAAW,EAAG,IAAI,CAAC;IAGnB,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAG3B,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAGzB,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAGvB,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;CAC9B"}
@@ -0,0 +1,155 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Entity, Index, OptionalProps, PrimaryKey, Property, Unique } from '@mikro-orm/core';
11
+ import { randomUUID } from 'crypto';
12
+ import { OrgScoped } from '@endora-commerce/platform/tenancy';
13
+ /**
14
+ * ReturnCase — feature 046 (RMA case).
15
+ *
16
+ * One per customer return/complaint submission against an order. `kind`
17
+ * distinguishes a withdrawal-style Return from a warranty Complaint (the
18
+ * free-return window applies only to `return`). `rmaNumber` is assigned on
19
+ * authorization (`${prefix}${seq}${suffix}`) and unique; `statusCode` references
20
+ * `return_statuses.code` and is governed by the configurable workflow.
21
+ */
22
+ let ReturnCase = class ReturnCase {
23
+ [OptionalProps];
24
+ id = randomUUID();
25
+ /** `return` (withdrawal) or `complaint` (defect/warranty). */
26
+ kind;
27
+ /** Assigned on authorization; null until then. */
28
+ rmaNumber;
29
+ orderId;
30
+ salesChannelId;
31
+ customerAccountId;
32
+ organizationId;
33
+ statusCode;
34
+ currency;
35
+ returnDeliveryMethodId;
36
+ appliedReturnCost = '0.00';
37
+ /** Who bears the return shipping cost: `shop` or `customer`. */
38
+ returnCostBearer = 'customer';
39
+ freeReturnEligible = false;
40
+ /** `refund` | `credit` | `replacement` | `repair`; null until settlement. */
41
+ resolutionType;
42
+ refundPaymentMethodId;
43
+ totalRefundAmount = '0.00';
44
+ rejectionReason;
45
+ submittedAt;
46
+ authorizedAt;
47
+ resolvedAt;
48
+ closedAt;
49
+ createdAt = new Date();
50
+ updatedAt = new Date();
51
+ };
52
+ __decorate([
53
+ PrimaryKey({ type: 'uuid' }),
54
+ __metadata("design:type", String)
55
+ ], ReturnCase.prototype, "id", void 0);
56
+ __decorate([
57
+ Property({ type: 'string', length: 16 }),
58
+ __metadata("design:type", String)
59
+ ], ReturnCase.prototype, "kind", void 0);
60
+ __decorate([
61
+ Property({ type: 'string', length: 64, nullable: true }),
62
+ Unique(),
63
+ __metadata("design:type", Object)
64
+ ], ReturnCase.prototype, "rmaNumber", void 0);
65
+ __decorate([
66
+ Property({ type: 'uuid' }),
67
+ Index(),
68
+ __metadata("design:type", String)
69
+ ], ReturnCase.prototype, "orderId", void 0);
70
+ __decorate([
71
+ Property({ type: 'uuid' }),
72
+ Index(),
73
+ __metadata("design:type", String)
74
+ ], ReturnCase.prototype, "salesChannelId", void 0);
75
+ __decorate([
76
+ Property({ type: 'uuid' }),
77
+ Index(),
78
+ __metadata("design:type", String)
79
+ ], ReturnCase.prototype, "customerAccountId", void 0);
80
+ __decorate([
81
+ Property({ type: 'uuid', nullable: true }),
82
+ Index(),
83
+ __metadata("design:type", Object)
84
+ ], ReturnCase.prototype, "organizationId", void 0);
85
+ __decorate([
86
+ Property({ type: 'string', length: 64 }),
87
+ Index(),
88
+ __metadata("design:type", String)
89
+ ], ReturnCase.prototype, "statusCode", void 0);
90
+ __decorate([
91
+ Property({ type: 'string', length: 3 }),
92
+ __metadata("design:type", String)
93
+ ], ReturnCase.prototype, "currency", void 0);
94
+ __decorate([
95
+ Property({ type: 'uuid', nullable: true }),
96
+ __metadata("design:type", Object)
97
+ ], ReturnCase.prototype, "returnDeliveryMethodId", void 0);
98
+ __decorate([
99
+ Property({ type: 'decimal', precision: 14, scale: 2 }),
100
+ __metadata("design:type", String)
101
+ ], ReturnCase.prototype, "appliedReturnCost", void 0);
102
+ __decorate([
103
+ Property({ type: 'string', length: 16 }),
104
+ __metadata("design:type", String)
105
+ ], ReturnCase.prototype, "returnCostBearer", void 0);
106
+ __decorate([
107
+ Property({ type: 'boolean' }),
108
+ __metadata("design:type", Boolean)
109
+ ], ReturnCase.prototype, "freeReturnEligible", void 0);
110
+ __decorate([
111
+ Property({ type: 'string', length: 16, nullable: true }),
112
+ __metadata("design:type", Object)
113
+ ], ReturnCase.prototype, "resolutionType", void 0);
114
+ __decorate([
115
+ Property({ type: 'uuid', nullable: true }),
116
+ __metadata("design:type", Object)
117
+ ], ReturnCase.prototype, "refundPaymentMethodId", void 0);
118
+ __decorate([
119
+ Property({ type: 'decimal', precision: 14, scale: 2 }),
120
+ __metadata("design:type", String)
121
+ ], ReturnCase.prototype, "totalRefundAmount", void 0);
122
+ __decorate([
123
+ Property({ type: 'text', nullable: true }),
124
+ __metadata("design:type", Object)
125
+ ], ReturnCase.prototype, "rejectionReason", void 0);
126
+ __decorate([
127
+ Property({ type: 'datetime' }),
128
+ __metadata("design:type", Date)
129
+ ], ReturnCase.prototype, "submittedAt", void 0);
130
+ __decorate([
131
+ Property({ type: 'datetime', nullable: true }),
132
+ __metadata("design:type", Object)
133
+ ], ReturnCase.prototype, "authorizedAt", void 0);
134
+ __decorate([
135
+ Property({ type: 'datetime', nullable: true }),
136
+ __metadata("design:type", Object)
137
+ ], ReturnCase.prototype, "resolvedAt", void 0);
138
+ __decorate([
139
+ Property({ type: 'datetime', nullable: true }),
140
+ __metadata("design:type", Object)
141
+ ], ReturnCase.prototype, "closedAt", void 0);
142
+ __decorate([
143
+ Property({ type: 'datetime', onCreate: () => new Date() }),
144
+ __metadata("design:type", Date)
145
+ ], ReturnCase.prototype, "createdAt", void 0);
146
+ __decorate([
147
+ Property({ type: 'datetime', onUpdate: () => new Date() }),
148
+ __metadata("design:type", Date)
149
+ ], ReturnCase.prototype, "updatedAt", void 0);
150
+ ReturnCase = __decorate([
151
+ OrgScoped(),
152
+ Entity({ tableName: 'return_cases' })
153
+ ], ReturnCase);
154
+ export { ReturnCase };
155
+ //# sourceMappingURL=return-case.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-case.entity.js","sourceRoot":"","sources":["../../../src/backend/entities/return-case.entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { OptionalProps } from '@mikro-orm/core';
2
+ /**
3
+ * ReturnDeliveryMethod — feature 046 (US6, FR-021).
4
+ *
5
+ * An allowed return delivery method with its return shipping cost (0 = free /
6
+ * shop-paid). References an existing `delivery_methods.id` by value.
7
+ */
8
+ export declare class ReturnDeliveryMethod {
9
+ [OptionalProps]?: 'id' | 'isActive' | 'createdAt' | 'updatedAt';
10
+ id: string;
11
+ deliveryMethodId: string;
12
+ returnCost: string;
13
+ currency: string;
14
+ isActive: boolean;
15
+ createdAt: Date;
16
+ updatedAt: Date;
17
+ }
18
+ //# sourceMappingURL=return-delivery-method.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-delivery-method.entity.d.ts","sourceRoot":"","sources":["../../../src/backend/entities/return-delivery-method.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AAIrF;;;;;GAKG;AACH,qBAEa,oBAAoB;IAC/B,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC;IAGhE,EAAE,EAAE,MAAM,CAAgB;IAI1B,gBAAgB,EAAG,MAAM,CAAC;IAG1B,UAAU,EAAG,MAAM,CAAC;IAGpB,QAAQ,EAAG,MAAM,CAAC;IAGlB,QAAQ,EAAE,OAAO,CAAQ;IAGzB,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;CAC9B"}
@@ -0,0 +1,63 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Entity, Index, OptionalProps, PrimaryKey, Property } from '@mikro-orm/core';
11
+ import { GlobalEntity } from '@endora-commerce/platform/tenancy';
12
+ import { randomUUID } from 'crypto';
13
+ /**
14
+ * ReturnDeliveryMethod — feature 046 (US6, FR-021).
15
+ *
16
+ * An allowed return delivery method with its return shipping cost (0 = free /
17
+ * shop-paid). References an existing `delivery_methods.id` by value.
18
+ */
19
+ let ReturnDeliveryMethod = class ReturnDeliveryMethod {
20
+ [OptionalProps];
21
+ id = randomUUID();
22
+ deliveryMethodId;
23
+ returnCost;
24
+ currency;
25
+ isActive = true;
26
+ createdAt = new Date();
27
+ updatedAt = new Date();
28
+ };
29
+ __decorate([
30
+ PrimaryKey({ type: 'uuid' }),
31
+ __metadata("design:type", String)
32
+ ], ReturnDeliveryMethod.prototype, "id", void 0);
33
+ __decorate([
34
+ Property({ type: 'uuid' }),
35
+ Index(),
36
+ __metadata("design:type", String)
37
+ ], ReturnDeliveryMethod.prototype, "deliveryMethodId", void 0);
38
+ __decorate([
39
+ Property({ type: 'decimal', precision: 14, scale: 2 }),
40
+ __metadata("design:type", String)
41
+ ], ReturnDeliveryMethod.prototype, "returnCost", void 0);
42
+ __decorate([
43
+ Property({ type: 'string', length: 3 }),
44
+ __metadata("design:type", String)
45
+ ], ReturnDeliveryMethod.prototype, "currency", void 0);
46
+ __decorate([
47
+ Property({ type: 'boolean' }),
48
+ __metadata("design:type", Boolean)
49
+ ], ReturnDeliveryMethod.prototype, "isActive", void 0);
50
+ __decorate([
51
+ Property({ type: 'datetime', onCreate: () => new Date() }),
52
+ __metadata("design:type", Date)
53
+ ], ReturnDeliveryMethod.prototype, "createdAt", void 0);
54
+ __decorate([
55
+ Property({ type: 'datetime', onUpdate: () => new Date() }),
56
+ __metadata("design:type", Date)
57
+ ], ReturnDeliveryMethod.prototype, "updatedAt", void 0);
58
+ ReturnDeliveryMethod = __decorate([
59
+ GlobalEntity(),
60
+ Entity({ tableName: 'return_delivery_methods' })
61
+ ], ReturnDeliveryMethod);
62
+ export { ReturnDeliveryMethod };
63
+ //# sourceMappingURL=return-delivery-method.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-delivery-method.entity.js","sourceRoot":"","sources":["../../../src/backend/entities/return-delivery-method.entity.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;;GAKG;AAGI,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC/B,CAAC,aAAa,CAAC,CAAiD;IAGhE,EAAE,GAAW,UAAU,EAAE,CAAC;IAI1B,gBAAgB,CAAU;IAG1B,UAAU,CAAU;IAGpB,QAAQ,CAAU;IAGlB,QAAQ,GAAY,IAAI,CAAC;IAGzB,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;IAG7B,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;CAC9B,CAAA;AApBC;IADC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;gDACH;AAI1B;IAFC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE;;8DACkB;AAG1B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;;wDACnC;AAGpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;;sDACtB;AAGlB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;sDACL;AAGzB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;8BAChD,IAAI;uDAAc;AAG7B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;8BAChD,IAAI;uDAAc;AAvBlB,oBAAoB;IAFhC,YAAY,EAAE;IACd,MAAM,CAAC,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAAC;GACpC,oBAAoB,CAwBhC"}
@@ -0,0 +1,24 @@
1
+ import { OptionalProps } from '@mikro-orm/core';
2
+ /**
3
+ * ReturnListSavedView — feature 046 (US8).
4
+ *
5
+ * A reusable admin returns-list preset (filters + sort + visible columns),
6
+ * private to its owner or shared with everyone with list access. Mirrors
7
+ * `order_list_saved_views`.
8
+ */
9
+ export declare class ReturnListSavedView {
10
+ [OptionalProps]?: 'id' | 'shared' | 'visibleColumns' | 'createdAt' | 'updatedAt';
11
+ id: string;
12
+ ownerAdminUserId: string;
13
+ name: string;
14
+ shared: boolean;
15
+ filters: Record<string, unknown>;
16
+ sort: {
17
+ field: string;
18
+ dir: 'asc' | 'desc';
19
+ };
20
+ visibleColumns?: string[] | null;
21
+ createdAt: Date;
22
+ updatedAt: Date;
23
+ }
24
+ //# sourceMappingURL=return-list-saved-view.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-list-saved-view.entity.d.ts","sourceRoot":"","sources":["../../../src/backend/entities/return-list-saved-view.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AAIrF;;;;;;GAMG;AACH,qBAEa,mBAAmB;IAC9B,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,QAAQ,GAAG,gBAAgB,GAAG,WAAW,GAAG,WAAW,CAAC;IAGjF,EAAE,EAAE,MAAM,CAAgB;IAI1B,gBAAgB,EAAG,MAAM,CAAC;IAG1B,IAAI,EAAG,MAAM,CAAC;IAGd,MAAM,EAAE,OAAO,CAAS;IAGxB,OAAO,EAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAGlC,IAAI,EAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,KAAK,GAAG,MAAM,CAAA;KAAE,CAAC;IAG9C,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAGjC,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;CAC9B"}
@@ -0,0 +1,74 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Entity, Index, OptionalProps, PrimaryKey, Property } from '@mikro-orm/core';
11
+ import { GlobalEntity } from '@endora-commerce/platform/tenancy';
12
+ import { randomUUID } from 'crypto';
13
+ /**
14
+ * ReturnListSavedView — feature 046 (US8).
15
+ *
16
+ * A reusable admin returns-list preset (filters + sort + visible columns),
17
+ * private to its owner or shared with everyone with list access. Mirrors
18
+ * `order_list_saved_views`.
19
+ */
20
+ let ReturnListSavedView = class ReturnListSavedView {
21
+ [OptionalProps];
22
+ id = randomUUID();
23
+ ownerAdminUserId;
24
+ name;
25
+ shared = false;
26
+ filters;
27
+ sort;
28
+ visibleColumns;
29
+ createdAt = new Date();
30
+ updatedAt = new Date();
31
+ };
32
+ __decorate([
33
+ PrimaryKey({ type: 'uuid' }),
34
+ __metadata("design:type", String)
35
+ ], ReturnListSavedView.prototype, "id", void 0);
36
+ __decorate([
37
+ Property({ type: 'uuid' }),
38
+ Index(),
39
+ __metadata("design:type", String)
40
+ ], ReturnListSavedView.prototype, "ownerAdminUserId", void 0);
41
+ __decorate([
42
+ Property({ type: 'string', length: 200 }),
43
+ __metadata("design:type", String)
44
+ ], ReturnListSavedView.prototype, "name", void 0);
45
+ __decorate([
46
+ Property({ type: 'boolean' }),
47
+ __metadata("design:type", Boolean)
48
+ ], ReturnListSavedView.prototype, "shared", void 0);
49
+ __decorate([
50
+ Property({ type: 'json' }),
51
+ __metadata("design:type", Object)
52
+ ], ReturnListSavedView.prototype, "filters", void 0);
53
+ __decorate([
54
+ Property({ type: 'json' }),
55
+ __metadata("design:type", Object)
56
+ ], ReturnListSavedView.prototype, "sort", void 0);
57
+ __decorate([
58
+ Property({ type: 'json', nullable: true }),
59
+ __metadata("design:type", Object)
60
+ ], ReturnListSavedView.prototype, "visibleColumns", void 0);
61
+ __decorate([
62
+ Property({ type: 'datetime', onCreate: () => new Date() }),
63
+ __metadata("design:type", Date)
64
+ ], ReturnListSavedView.prototype, "createdAt", void 0);
65
+ __decorate([
66
+ Property({ type: 'datetime', onUpdate: () => new Date() }),
67
+ __metadata("design:type", Date)
68
+ ], ReturnListSavedView.prototype, "updatedAt", void 0);
69
+ ReturnListSavedView = __decorate([
70
+ GlobalEntity(),
71
+ Entity({ tableName: 'return_list_saved_views' })
72
+ ], ReturnListSavedView);
73
+ export { ReturnListSavedView };
74
+ //# sourceMappingURL=return-list-saved-view.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-list-saved-view.entity.js","sourceRoot":"","sources":["../../../src/backend/entities/return-list-saved-view.entity.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;;;GAMG;AAGI,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,CAAC,aAAa,CAAC,CAAkE;IAGjF,EAAE,GAAW,UAAU,EAAE,CAAC;IAI1B,gBAAgB,CAAU;IAG1B,IAAI,CAAU;IAGd,MAAM,GAAY,KAAK,CAAC;IAGxB,OAAO,CAA2B;IAGlC,IAAI,CAA0C;IAG9C,cAAc,CAAmB;IAGjC,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;IAG7B,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;CAC9B,CAAA;AA1BC;IADC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;+CACH;AAI1B;IAFC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE;;6DACkB;AAG1B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;iDAC5B;AAGd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;mDACN;AAGxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDACO;AAGlC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;iDACmB;AAG9C;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2DACV;AAGjC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;8BAChD,IAAI;sDAAc;AAG7B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;8BAChD,IAAI;sDAAc;AA7BlB,mBAAmB;IAF/B,YAAY,EAAE;IACd,MAAM,CAAC,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAAC;GACpC,mBAAmB,CA8B/B"}
@@ -0,0 +1,21 @@
1
+ import { OptionalProps } from '@mikro-orm/core';
2
+ /**
3
+ * ReturnReason — feature 046 (US7, FR-030).
4
+ *
5
+ * A managed return/complaint reason presented on the storefront form. `appliesTo`
6
+ * restricts a reason to Returns, Complaints, or both; `isActive` + `weight`
7
+ * control visibility and order.
8
+ */
9
+ export declare class ReturnReason {
10
+ [OptionalProps]?: 'id' | 'isActive' | 'weight' | 'createdAt' | 'updatedAt';
11
+ id: string;
12
+ /** Localized labels, e.g. { en: 'Damaged in transit', pl: 'Uszkodzone w transporcie' }. */
13
+ label: Record<string, string>;
14
+ /** `return` | `complaint` | `both`. */
15
+ appliesTo: 'return' | 'complaint' | 'both';
16
+ isActive: boolean;
17
+ weight: number;
18
+ createdAt: Date;
19
+ updatedAt: Date;
20
+ }
21
+ //# sourceMappingURL=return-reason.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return-reason.entity.d.ts","sourceRoot":"","sources":["../../../src/backend/entities/return-reason.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AAI9E;;;;;;GAMG;AACH,qBAEa,YAAY;IACvB,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC;IAG3E,EAAE,EAAE,MAAM,CAAgB;IAE1B,2FAA2F;IAE3F,KAAK,EAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/B,uCAAuC;IAEvC,SAAS,EAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC;IAG5C,QAAQ,EAAE,OAAO,CAAQ;IAGzB,MAAM,EAAE,MAAM,CAAO;IAGrB,SAAS,EAAE,IAAI,CAAc;IAG7B,SAAS,EAAE,IAAI,CAAc;CAC9B"}